/* Cost Book project tabs: views, packages, checks, tracking, drawings, settings. MSE tokens only. */

/* Views */
.vw-body, .st-body { display: grid; gap: var(--sp-4); }
.vw-bar { row-gap: 12px; }
.vw-depth { display: inline-flex; align-items: center; gap: 8px; }
.vw-totals { margin-top: var(--sp-4); padding-top: var(--sp-3); border-top: 1px solid var(--rule); }
.vw-sum { margin-top: 6px; }
tr.vw-row > td { font-weight: 600; }
tr.vw-child > td { background: oklch(from var(--text-3) l c h / .04); }
tr.vw-child > td:nth-child(2) { padding-left: 22px; }
tr.vw-item > td { font-size: var(--fs-sm); color: var(--text-2); }
tr.vw-item > td:nth-child(2) { padding-left: 38px; }
span.vw-item { display: inline-flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; white-space: normal; }
span.vw-item small { font-family: "Geist Mono", ui-monospace, monospace; font-size: 11px; }
.vw-share { display: inline-flex; align-items: center; gap: 8px; justify-content: flex-end; }
.vw-share-track { width: 72px; height: 6px; border-radius: 999px; background: var(--work-2); overflow: hidden; display: inline-block; }
.vw-share-fill { display: block; height: 100%; width: 0; background: linear-gradient(90deg, var(--blue-2), var(--blue)); border-radius: inherit; }
.vw-houses-wrap { margin-top: var(--sp-4); display: grid; gap: var(--sp-3); }
.vw-h2, .pk-h3 { font-size: var(--fs-sm); font-weight: 650; letter-spacing: .08em; text-transform: uppercase; color: var(--text-3); margin: var(--sp-4) 0 var(--sp-2); }
.vw-h2 { margin: 0; }
.vw-house-total { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 4px; }
.vw-house-total b { font-size: var(--fs-xl); font-weight: 650; }

/* Packages */
.pk-picker { display: grid; gap: 8px; }
.pk-chips { max-height: 160px; overflow: auto; padding: 2px; }
.pk-head { margin-bottom: var(--sp-2); }
.pk-trades { box-shadow: var(--e-1); }
.pk-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.pk-list li { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; align-items: center; font-size: var(--fs-sm); }
.pk-list li > .chip { justify-self: start; }
.pk-item { display: inline-flex; flex-wrap: wrap; gap: 4px 8px; align-items: center; white-space: normal; }
.pk-cov { margin-bottom: var(--sp-2); }

/* Checks */
.ck-summary { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: var(--sp-3); }
.ck-list { display: grid; gap: 8px; }
.ck-sum { display: grid; grid-template-columns: auto auto minmax(0, 1fr) auto; gap: 12px; align-items: center; flex: 1; min-width: 0; }
.ck-id { color: var(--text-3); font-size: 12px; }
.ck-title { display: grid; gap: 2px; min-width: 0; }
.ck-title b { font-weight: 600; }
.ck-title small { white-space: normal; }
.ck-count { color: var(--text-2); font-size: var(--fs-sm); white-space: nowrap; }
.ck-row.ck-bad { border-left: 3px solid var(--bad); }
.ck-row.ck-warn { border-left: 3px solid var(--plum); }
.ck-kv { padding: 8px 4px; }
@media (max-width: 640px) {
  .ck-sum { grid-template-columns: auto minmax(0, 1fr); }
  .ck-sum .pill { grid-column: 2; justify-self: start; }
  .ck-title { grid-column: 1 / -1; }
}

/* Tracking */
.tr-bar { margin-top: var(--sp-3); margin-bottom: 0; }
.tr-pick { display: inline-flex; align-items: center; gap: 10px; }
.tr-tiles { margin-bottom: var(--sp-2); }
.tr-up { color: var(--bad-ink); }
.tr-down { color: var(--good-ink); }
tfoot td { font-weight: 650; border-top: 1px solid var(--rule); padding: 9px 10px; }
tfoot td.num { font-family: "Geist Mono", ui-monospace, monospace; font-size: var(--fs-sm); text-align: right; }

/* Settings */
.st-nav { row-gap: 6px; }
.st-qs { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.st-q { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; align-items: center; padding: 8px 4px; border-bottom: 1px solid var(--rule); }
.st-q:last-child { border-bottom: 0; }
.st-sel { padding: 6px 30px 6px 9px; font-size: var(--fs-xs); min-height: 32px; max-width: 100%; }
input.st-sel { padding-right: 9px; }
.st-cell { display: grid; gap: 4px; min-width: 136px; }
.st-board td { vertical-align: top; }
.st-state.sg-working { color: var(--blue-ink); }
.st-state.sg-stuck { color: var(--coral-ink); }
.st-state.sg-critical { color: var(--bad-ink); font-weight: 650; }
.st-state.sg-done { color: var(--good-ink); }
.st-legend { margin-bottom: var(--sp-3); }
.st-mp { display: grid; gap: 1px; font-size: var(--fs-xs); white-space: normal; }
@media (max-width: 640px) {
  .st-q { grid-template-columns: minmax(0, 1fr) auto; }
  .st-q > small { grid-column: 1; }
  .st-cell { grid-template-columns: minmax(0, 1fr); min-width: 0; }
}

.vw-hlist { list-style: none; margin: 4px 0 0; padding: 0; display: grid; }
.vw-hlist li { display: grid; grid-template-columns: 2.2em minmax(0, 1fr) auto; gap: 8px; align-items: baseline; padding: 7px 2px; border-bottom: 1px solid var(--rule); font-size: var(--fs-sm); }
.vw-hlist li:last-child { border-bottom: 0; }
.vw-hlist b { font-weight: 550; font-size: 13px; }

/* m7: the baseline select's chevron never overlaps its text. */
.tr-pick select { padding-right: 32px; min-width: 0; max-width: 100%; }
@media (max-width: 640px) { .tr-pick { display: grid; gap: 6px; width: 100%; } .tr-pick select { width: 100%; } }
