/* V10.16 — visual tokens sampled from groundbricks.com, 7 October 2026.
   Loaded last. Unit-type colours and the blue model selection remain data cues. */
:root {
  --gb-navy: #123b5c;
  --gb-primary: #123b5d;
  --gb-hover: #23435c;
  --gb-paper: #faf7f2;
  --gb-ink: #282522;
  --gb-muted: #52677b;
  --gb-line: #cfd9e3;
  --gb-tint: #edf3f8;
  --ink: var(--gb-ink);
  --accent: var(--gb-primary);
  --ui-ink: var(--gb-ink);
  --ui-muted: var(--gb-muted);
  --ui-line: var(--gb-line);
  --ui-green: var(--gb-primary);
  --ui-bg: var(--gb-paper);
}
body, .gb-ui { font-family: Manrope, Arial, sans-serif; color: var(--gb-ink); }
body { background: var(--gb-paper); }
button, input, select, textarea { font-family: inherit; }
header { background: var(--gb-navy); color: #f8fafc; border-bottom: 1px solid #335875; }
header .project { font-weight: 600; letter-spacing: -.35px; }
.project > span, .brand small { color: #c5d6e5; }
.badge { color: #e2edf6; border-color: #567791; background: #ffffff08; }
.section-nav { background: #fff; border-color: var(--gb-line); }
.section-nav a { color: var(--gb-primary); }
.section-nav a:hover, .section-nav span { background: var(--gb-tint); }
.maphead h1 { font-weight: 500; letter-spacing: -.8px; color: var(--gb-primary); }
h2, h3, .chart-title h3, .unitType, .gb-enhanced .dialog-head h2 { color: var(--gb-primary); }
.eyebrow { color: var(--gb-muted); font-weight: 600; letter-spacing: .1em; }
.stage { border-color: var(--gb-line); box-shadow: 0 8px 24px #123b5c12; border-radius: 12px; }
.views { background: #e8eef4; }
.views button { color: var(--gb-primary); border-radius: 7px; }
.views button.active, .block-tabs button.active, #playSun, .compare-balcony,
.open-unit, .quick-unit > button, .room-done {
  background: var(--gb-primary); border-color: var(--gb-primary); color: #f8fafc;
}
.views button.active:hover, .open-unit:hover, .compare-balcony:hover { background: var(--gb-hover); }
.tools button, .context-tools button, .context-tools button[aria-pressed],
.view-unit-button, .unit-view-controls button:not([data-look=exit]), .nearby-place {
  color: var(--gb-primary); background: #fff; border-color: #b5c7d8; border-radius: 8px;
}
.context-tools button[aria-pressed=true] { background: #e8f1fa; border-color: #28679b; box-shadow: inset 0 -2px 0 #28679b; }
#modelSection > .tools > button { color: var(--gb-primary); border-color: #b5c7d8; box-shadow: 0 2px 8px #123b5c18; }
#contextPlace { color: var(--gb-primary); border-color: #b5c7d8; }
.explore-toggle input:checked { background: #28679b; }
.explore-toggle:has(input:checked) { background: #e8f1fa; border-color: #28679b; }
.compare-current, .compare-options button { color: var(--gb-primary); }
.compare-options button, .compare-picker input[type=search], .facility-photo { border-color: var(--gb-line); }
.compare-options button:hover, .compare-options button:focus-visible,
.compare-options button[aria-pressed=true] { background: #e8f1fa; outline-color: #397fb8; }
.compare-match-count, .compare-hint { color: var(--gb-muted); }
.google-settings { background: #f2f5f8; color: var(--gb-ink); border-color: var(--gb-line); }
.tools button:hover, .context-tools button:hover, .view-unit-button:hover, .nearby-place:hover { background: var(--gb-tint); }
.context-tools select, .map-options .explore-toggle, .sun-presets button,
.sunbar, .tools-panel, .unit-view-controls, .block-tabs button, aside > .detail {
  border-color: var(--gb-line);
}
.context-note, .context-tools > span, .stack-context dt, #landmarkContent dt,
.unit-view-controls small, .unit-view-controls .balcony-controls small,
.pricing-breakdown div, .pricing-breakdown b > small, .legend small { color: var(--gb-muted); }
.unit-view-controls, .unit-view-controls strong, .pricing-breakdown b { color: var(--gb-ink); }
.context-label.project { background: var(--gb-primary); color: #f8fafc; border-color: #7097b7; }
.context-label:not(.park):not(.mrt):not(.project) { color: var(--gb-primary); }
.context-label:before, .context-label:after { background: #53758f; }
aside#unitDetails { border-color: var(--gb-line); }
.gb-enhanced aside .stats, .landmark-distance { background: var(--gb-tint); }
.unit-chart, .gb-enhanced .unit-chart { border-color: var(--gb-line); box-shadow: 0 3px 14px #123b5c06; }
.unit-grid thead th, .unit-grid tbody th, .comparable-table th { background: var(--gb-tint); color: var(--gb-primary); }
.unit-cell.selected { outline-color: var(--gb-primary); }
.unit-cell.budget-match { border-bottom-color: #28679b !important; }
.unit-cell, .unit-cell span, .unit-cell.selected span { color: #172b3e !important; }
.match-card { background: #e8f1fa; border-color: #a9c5df; }
.match-card:hover { background: #dae9f7; }
.match-card strong, .match-card span, .match-card small { color: var(--gb-primary); }
.budget-finder, .budget-summary { color: var(--gb-primary); border-color: var(--gb-line); }
.budget-finder { background: var(--gb-tint); }
.gb-filter-bar { border-color: var(--gb-line); box-shadow: 0 4px 16px #123b5c09; }
.gb-ui button:not([role=checkbox]):not([data-radix-collection-item]) { border-radius: 8px; }
.gb-ui input, select { border-color: #b5c7d8; }
.dialog-head, .gb-enhanced .dialog-head { background: var(--gb-paper); border-color: var(--gb-line); }
.plan-panel { background: #f2f5f8; }
dialog, .gb-enhanced #unitDialog { color: var(--gb-ink); border-color: var(--gb-line); }
dialog::backdrop, #landmarkDialog::backdrop { background: #123b5cc9; }
.action-feedback { background: var(--gb-primary); }
input[type=checkbox], input[type=range], .map-options input, .shadow-toggle input,
.budget-finder .check input { accent-color: #28679b; }
button:focus-visible, a:focus-visible, summary:focus-visible, input:focus-visible,
select:focus-visible { outline-color: #397fb8; }
@media (prefers-reduced-transparency: reduce) { .gb-filter-bar { background: #fff; } }
