/* The look of the cusad declaration page (sizes and colours measured from it), without the site's header and menus */
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { overflow-y: scroll; }
body { margin: 0; background: #f5f5f5; color: #333; font: 14px/1.42857143 "Helvetica Neue", Arial, Helvetica, sans-serif; }
label { display: inline-block; max-width: 100%; margin: 0; font-weight: normal; }
button, input, select { font: inherit; color: inherit; margin: 0; }

.page { max-width: 930px; margin: 0 auto; padding: 12px 15px 60px; }
h4 { font-size: 18px; font-weight: 500; line-height: 1.1; margin: 10px 0; }

/* toolbar */
.lcp-operations-container { display: flex; flex-wrap: wrap; gap: 2px; align-items: center; list-style: none; margin: 0 0 10px;
  padding: 2px; border: 1px solid #e5e5e5; border-radius: 4px; background-image: linear-gradient(#ffffff, #e6e6e6);
  position: sticky; top: 0; z-index: 1; }
.btn { display: inline-block; padding: 5px 12px; font-size: 14px; line-height: 1.42857143; white-space: nowrap; cursor: pointer;
  color: #333; background: #fff; border: 1px solid #bbbbbb; border-radius: 4px; }
.btn:hover { background: #e6e6e6; border-color: #adadad; }
.btn[disabled] { opacity: .65; cursor: not-allowed; }
.lcp-pencil { padding: 5px 10px; color: #333; }
#status { font-size: 12px; color: #777; padding: 0 8px; }

/* tabs */
.nav-tabs { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.nav-tabs a { display: block; margin: 0 2px 2px 0; padding: 8px; background: #dddddd; color: #777777; font-size: 13px;
  text-decoration: none; border-radius: 4px 4px 0 0; cursor: pointer; }
.nav-tabs a:hover { background: #eee; }
.nav-tabs li.active a { background: #fff; color: #555; cursor: default; }
.nav-tabs li.off a { cursor: not-allowed; }
.tab-content { background: #fff; padding: 7px; border-top-right-radius: 9px; border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px; }
.tab-pane { display: none; }
.tab-pane.active { display: block; }

/* sections */
.form-group.form-inline { background: #ededed; margin: 0 1px 2px; }
.lcp-label-controls-heading { font-weight: bold; padding: 5px; font-size: 13px; }
.lcp-control-group { display: flex; align-items: center; }
.lcp-control-label, .lcp-control-label-sub { flex: 0 0 260px; width: 260px; font-size: 13px; }
.lcp-control-label { padding-left: 10px; font-weight: bold; }
.lcp-control-label-sub { padding-left: 30px; }
.lcp-codsc { font-size: 11px; padding-left: 5px; }
.lcp-control-as-label { line-height: 2.7; font-size: 11px; padding-left: 6px; min-height: 30px; }
.accordion-group-div { border: 1px solid #999999; border-radius: 6px; margin: 5px; padding: 3px; background: #ededed; }
.accordion-group-div > .lcp-label-controls-heading:first-child { display: block; }

/* inputs */
.form-control { display: inline-block; vertical-align: middle; width: 140px; max-width: 140px; height: 28px; padding: 2px 6px;
  margin: 1px 0; font-size: 11px; color: #555; background: #fff; border: 1px solid #ccc; border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075); }
select.form-control { min-width: 140px; }
.form-control:focus { border-color: #66afe9; outline: 0; box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6); }
.form-control[disabled] { background: #eee; cursor: not-allowed; }
.form-control[readonly] { background: #eee; }
.form-control.half { width: 70px; min-width: 70px; max-width: 70px; }
.form-control.amount { text-align: right; }
.form-control.changed { background: #fff8dc; }

/* tables */
.table { width: 100%; border-collapse: collapse; text-align: center; margin: 0; font-size: 11px; }
.table thead th { height: 30px; font-size: 10px; font-weight: bold; color: #fff; text-align: center; border: 1px solid #ddd;
  background: #666; background-image: linear-gradient(#888888, #666666); padding: 2px; }
.table td { border: 1px solid #ddd; padding: 2px; vertical-align: middle; background: #fff; }
.table tbody tr:nth-of-type(even) td { background: #f5f5f5; }
.table tbody tr:hover td { background: #ebebeb; }
.table td .form-control { width: 100%; max-width: 100%; }
.table td.num { text-align: right; }
.table-items { margin-top: 10px; }
.lcp-table-header-thin { width: 3%; }
.lcp-table-actions-header::before { content: "⚙"; font-weight: normal; font-size: 17px; }

.version { font-size: 12px; margin-top: 30px; }

@media (max-width: 640px) {
  .lcp-control-group { display: block; }
  .lcp-control-label, .lcp-control-label-sub { display: block; flex: none; width: auto; padding-left: 10px; }
  .lcp-control-group .form-control { margin-left: 10px; }
  .table { display: block; overflow-x: auto; }
}

/* start and extra info pages */
a.btn { text-decoration: none; }
.wide { width: 100%; max-width: 100%; }
.form-control.text { width: 320px; max-width: 320px; }
.table td.left, .table th.left { text-align: left; }
.table td select.form-control { min-width: 0; width: 100%; max-width: 100%; }
.note { font-size: 11px; color: #777; padding: 0 5px 5px 30px; }
.alert { margin: 0 1px 6px; padding: 8px 12px; border-radius: 4px; font-size: 13px; }
.alert-danger { color: #a94442; background: #f2dede; border: 1px solid #ebccd1; }
.alert-warning { color: #8a6d3b; background: #fcf8e3; border: 1px solid #faebcc; }
.alert-info { color: #31708f; background: #d9edf7; border: 1px solid #bce8f1; }
.alert-success { color: #3c763d; background: #dff0d8; border: 1px solid #d6e9c6; }
.alert ul { margin: 4px 0 0; padding-left: 20px; }
.drop { margin: 4px 0 8px 30px; padding: 18px; border: 2px dashed #bbb; border-radius: 6px; text-align: center;
  font-size: 12px; color: #777; background: #fafafa; cursor: pointer; }
.drop.over { border-color: #66afe9; background: #eef6fd; }
.actions { display: flex; gap: 4px; justify-content: center; }
.actions .btn { padding: 2px 8px; font-size: 11px; }
.buttons { display: flex; flex-wrap: wrap; gap: 6px; padding: 8px 5px; }
.reason { font-size: 10px; color: #777; text-align: left; }
pre.log { font-size: 11px; max-height: 300px; overflow: auto; background: #fff; border: 1px solid #ddd; padding: 6px;
  margin: 0 5px 5px; white-space: pre-wrap; }
details > summary { cursor: pointer; padding: 5px; font-weight: bold; font-size: 13px; }
.scroll { overflow-x: auto; }
.items td { vertical-align: top; }
.items td .form-control { min-width: 70px; }
.items td.hs { min-width: 230px; }
.items td.hs select.form-control { min-width: 220px; }
.items td.desc .form-control { min-width: 200px; }
.items td.src { min-width: 160px; font-size: 10px; }
.items td select.form-control { min-width: 95px; }
.spacer { flex: 1; }
.login { max-width: 520px; padding-top: 60px; }
.projects tbody tr { cursor: pointer; }
.btn-start { font-size: 16px; padding: 8px 24px; }
ol.steps { margin: 4px 0 10px; padding-left: 50px; font-size: 13px; }
ol.steps li { color: #999; padding: 2px 0; }
ol.steps li.done { color: #3c763d; }
ol.steps li.done::after { content: " ✓"; }
ol.steps li.now { color: #333; font-weight: bold; }
ol.steps li.now::after { content: " …"; }
.accordion-group-div.closed > .lcp-label-controls-heading::before { content: "▸ "; color: #999; }
.accordion-group-div.closed { cursor: not-allowed; }
#toolbar li.group { display: flex; gap: 2px; }
