:root {
  --flap-face-top: #20262a;
  --flap-face-bottom: #080b0e;
  --flap-frame: #394044;
  --flap-text: #f3b84f;
  --flap-seam: #000;
}
:root[data-theme="light"] {
  color-scheme: light;
  --bg: #f4f6f7;
  --panel: rgba(255,255,255,.96);
  --text: #172025;
  --muted: #4c5d65;
  --line: rgba(23,32,37,.2);
  --amber: #9b5d00;
  --blue: #166886;
  --green: #287e40;
  --shadow: 0 16px 40px rgba(0,0,0,.08);
  --flap-face-top: #fff;
  --flap-face-bottom: #e5eaed;
  --flap-frame: #a5b0b6;
  --flap-text: #26343d;
  --flap-seam: #b8c2c8;
}
.theme-control { width: auto; min-width: 90px; min-height: 38px; font-size: 12px; padding: 0 8px; border: 1px solid var(--line); background: var(--panel); color: var(--text); }
.site-header { flex-wrap: wrap; }
@media (max-width: 760px) {
  .site-header { flex-direction: row; align-items: center; gap: 8px; }
  .site-header .brand { order: 0; font-size: 14px; }
  .site-header .theme-control { order: 1; max-width: 112px; min-width: 78px; }
  .site-header .site-nav { order: 2; width: 100%; justify-content: space-between; }
  .site-header .site-nav a { padding: 6px; font-size: 12px; }
}
.split-flap, .home-page .board-flap { background: linear-gradient(var(--flap-face-top), var(--flap-face-bottom)); color: var(--flap-text); border-color: var(--flap-frame); }
.split-flap::after { background: linear-gradient(var(--flap-face-top), var(--flap-face-bottom)); }
.split-flap .flap-character, .home-page .board-flap .flap-character { background: linear-gradient(var(--flap-face-top) 49.5%, var(--flap-face-bottom) 50%); border-color: var(--flap-frame); color: var(--flap-text); }
.split-flap .flap-character::after { background: var(--flap-seam); }
.split-flap .flap-space { background: transparent; border-color: transparent; }
:root[data-theme="light"] body { background: var(--bg); }
:root[data-theme="light"] input, :root[data-theme="light"] select, :root[data-theme="light"] textarea { background: #fff; border-color: var(--line); }
:root[data-theme="light"] .button.primary, :root[data-theme="light"] .primary-action { background: #f3b84f; border-color: #f3b84f; color: #172025; }
:root[data-theme="light"] .site-nav { background: transparent; }
:root[data-theme="light"] .site-nav a:hover { background: #e2e8ec; }
:root[data-theme="light"] .brand-mark { background: #e5eaed; color: #26343d; }
:root[data-theme="light"] .planner-page .control-panel,
:root[data-theme="light"] .planner-page .results-panel,
:root[data-theme="light"] .planner-page .trip-builder-panel,
:root[data-theme="light"] .planner-page .loader-card,
:root[data-theme="light"] .planner-page .route-key-popover,
:root[data-theme="light"] .planner-page .suggestions,
:root[data-theme="light"] .planner-page .desktop-panel-toggle { background: var(--panel); }
:root[data-theme="light"] .planner-page .map-stage,
:root[data-theme="light"] .planner-page #map { background: #e5eaed; }
:root[data-theme="light"] .planner-page .app-shell { background: #e5eaed; }
:root[data-theme="light"] .planner-page .wizard-dot,
:root[data-theme="light"] .planner-page .sheet-handle,
:root[data-theme="light"] .planner-page .loader-track { background: #bac5cb; }
:root[data-theme="light"] .planner-page .wizard-dot.is-active,
:root[data-theme="light"] .planner-page .wizard-dot.is-complete { background: var(--amber); }
:root[data-theme="light"] .planner-page .suggestion:hover { background: #e5eaed; }
:root[data-theme="light"] .planner-page .form-error { color: #b02c20; }
:root[data-theme="light"] .planner-page .H_ib_body,
:root[data-theme="light"] .planner-page .H_ib_tail,
:root[data-theme="light"] .planner-page .H_btn,
:root[data-theme="light"] .planner-page .H_l_horizontal,
:root[data-theme="light"] .planner-page .H_l_vertical { background: #fff !important; border-color: var(--line) !important; color: var(--text) !important; }
