/* The approved light palette remains in styles.css. */
:root { color-scheme: light; }
.topbar-actions { display:flex; align-items:center; gap:18px; flex-shrink:0; }
.topbar .theme-toggle {
  display:inline-flex; align-items:center; justify-content:center; gap:7px;
  min-width:44px; min-height:44px; padding:6px 9px;
  border-radius:7px; text-decoration:none;
}
.topbar .theme-toggle:hover { background:#ffffff18; }
.theme-toggle svg { width:17px; height:17px; }
@media (max-width:700px) {
  .topbar-actions { gap:7px; }
  .theme-toggle span { display:none; }
}

@media screen {
  html[data-theme="dark"] {
    color-scheme:dark;
    --ink:#e6ebe5;
    --ink2:#c8d5cb;
    --paper:#0f1916;
    --white:#18251f;
    --muted:#acbcb2;
    --line:#344a3e;
    --mint:#22382d;
    --sand:#3b3226;
    --gold:#dbb478;
    --danger:#ffb4a6;
    --shadow:0 16px 50px #0005;
    --surface:#18251f;
    --raised:#203328;
    --control:#111f19;
    --action:#c1d4b3;
    --on-action:#10221a;
  }
  html[data-theme="dark"] .topbar { background:#09120e; color:var(--ink2); }
  html[data-theme="dark"] .header { background:#0f1916f5; }
  html[data-theme="dark"] :is(.card,.dropdown,.search-shell,.photo-card,.doc-chip,.badge-number,.skip) { background:var(--surface); }
  html[data-theme="dark"] .soft { background:var(--mint); }
  html[data-theme="dark"] .sand { background:var(--sand); }
  html[data-theme="dark"] :is(.dark,.hero,.hero-narrow,.comparison-tray) { background:#173a2c; color:#f2f5ee; border-color:var(--line); }
  html[data-theme="dark"] .dark .muted { color:#c8d5cb; }
  html[data-theme="dark"] .dark .line { border-color:#436150; }
  html[data-theme="dark"] .btn { background:var(--action); border-color:var(--action); color:var(--on-action); }
  html[data-theme="dark"] .btn:hover { background:#d6e5ca; border-color:#d6e5ca; }
  html[data-theme="dark"] .btn.secondary { background:transparent; border-color:#5b7464; color:var(--ink); }
  html[data-theme="dark"] .btn.secondary:hover { background:var(--mint); border-color:#809987; }
  html[data-theme="dark"] :is(.btn.light,.dark .btn,.comparison-tray .btn) { background:#e3eadb; color:var(--on-action); border-color:#e3eadb; }
  html[data-theme="dark"] .btn.gold { background:var(--gold); color:var(--on-action); border-color:var(--gold); }
  html[data-theme="dark"] .btn.danger { background:transparent; color:var(--danger); border-color:#98655a; }
  html[data-theme="dark"] .btn.danger:hover { background:#3c2722; }
  html[data-theme="dark"] .count { color:var(--on-action); }
  html[data-theme="dark"] .pill.gold { background:#493922; color:#f3d398; }
  html[data-theme="dark"] .pill.red { background:#432c26; color:var(--danger); }
  html[data-theme="dark"] .pill.white { background:#14241feb; color:#eff3e9; }
  html[data-theme="dark"] .pill.gray { background:#2b3730; color:#bdc8bf; }
  html[data-theme="dark"] :is(.dot,.rate-dot) { background:#9bc89b; }
  html[data-theme="dark"] .search-shell { box-shadow:var(--shadow); }
  html[data-theme="dark"] .service-card:hover { background:var(--surface); }
  html[data-theme="dark"] .journey-banner { background:#1b2e24; }
  html[data-theme="dark"] .journey-step { background:var(--surface); border-color:var(--line); }
  html[data-theme="dark"] :is(input,select,textarea) { background:var(--control); border-color:#607365; color:var(--ink); }
  html[data-theme="dark"] :is(input,textarea)::placeholder { color:var(--muted); opacity:1; }
  html[data-theme="dark"] :is(input[type="checkbox"],input[type="radio"]) { accent-color:var(--action); }
  html[data-theme="dark"] .search-fields :is(select,input) { background:var(--surface); }
  html[data-theme="dark"] .currency-row select { background:var(--surface); }
  html[data-theme="dark"] .segmented { background:var(--control); }
  html[data-theme="dark"] .segmented .active { background:var(--raised); box-shadow:0 1px 4px #0004; }
  html[data-theme="dark"] .rating b { background:var(--action); color:var(--on-action); }
  html[data-theme="dark"] .room.sold { background:#222923; }
  html[data-theme="dark"] .notice { background:var(--mint); border-color:#49604e; }
  html[data-theme="dark"] .notice.warning { background:#3b301f; border-color:#77613d; color:#f0d49e; }
  html[data-theme="dark"] .notice.error { background:#382722; border-color:#805248; color:var(--danger); }
  html[data-theme="dark"] .notice.info { background:#1d3028; border-color:#3f594a; color:var(--ink2); }
  html[data-theme="dark"] .steps i { background:var(--surface); }
  html[data-theme="dark"] :is(.steps .active i,.steps .done i) { background:var(--action); border-color:var(--action); color:var(--on-action); }
  html[data-theme="dark"] .seat-map { background:var(--control); }
  html[data-theme="dark"] :is(.seat,.swatch) { background:var(--raised); border-color:#7d9683; }
  html[data-theme="dark"] :is(.seat.selected,.swatch.chosen) { background:var(--action); color:var(--on-action); border-color:var(--action); }
  html[data-theme="dark"] .seat:disabled { background:#37453a; color:#b4bdb2; }
  html[data-theme="dark"] .swatch.taken { background:#37453a; }
  html[data-theme="dark"] .choice-card:has(:checked) { background:var(--mint); border-color:var(--action); }
  html[data-theme="dark"] .pay-logo.telebirr { color:#b2dc7b; }
  html[data-theme="dark"] .pay-logo.mpesa { color:#8fdaa0; }
  html[data-theme="dark"] .pay-logo.cbe { color:#d9afe8; }
  html[data-theme="dark"] .recommend { border-color:#66816d; }
  html[data-theme="dark"] .upload-zone { background:var(--control); border-color:#6e8875; }
  html[data-theme="dark"] .upload-zone input { background:var(--surface); }
  html[data-theme="dark"] .account-tabs a.active { background:var(--action); border-color:var(--action); color:var(--on-action); }
  html[data-theme="dark"] .timeline:before { background:#49604e; }
  html[data-theme="dark"] .timeline>div:before { background:var(--action); border-color:#49604e; }
  html[data-theme="dark"] .success-mark { border-color:#66816d; }
  html[data-theme="dark"] th { background:var(--raised); }
  html[data-theme="dark"] .chart-col span { background:#72987b; }
  html[data-theme="dark"] .chart-col:nth-child(2n) span { background:var(--action); }
  html[data-theme="dark"] .modal-backdrop { background:#020905b3; }
  html[data-theme="dark"] .modal { box-shadow:0 30px 80px #0008; }
  html[data-theme="dark"] #toast { background:#d6e5ca; color:var(--on-action); }
  html[data-theme="dark"] :is(button,a,input,select,textarea):focus-visible { outline-color:#e8bb71; }
}
