:root{
  --bg:#ffffff; --surface:#f6f7f9; --text:#14151a; --muted:#6b7280; --primary:#3b82f6; --primary-contrast:#ffffff; --border:#e5e7eb; --success:#10b981; --warning:#f59e0b; --danger:#ef4444;
}
@media (prefers-color-scheme: dark){
  :root{ --bg:#0b0d12; --surface:#12141b; --text:#e6e8ee; --muted:#9aa3b2; --primary:#60a5fa; --primary-contrast:#0b0d12; --border:#1f2430; --success:#34d399; --warning:#fbbf24; --danger:#f87171; }
}
/* Explicit overrides when user toggles theme */
html[data-theme="dark"]{ --bg:#0b0d12 !important; --surface:#12141b !important; --text:#e6e8ee !important; --muted:#9aa3b2 !important; --primary:#60a5fa !important; --primary-contrast:#0b0d12 !important; --border:#1f2430 !important; --success:#34d399 !important; --warning:#fbbf24 !important; --danger:#f87171 !important; }
html[data-theme="light"]{ --bg:#ffffff !important; --surface:#f6f7f9 !important; --text:#14151a !important; --muted:#6b7280 !important; --primary:#3b82f6 !important; --primary-contrast:#ffffff !important; --border:#e5e7eb !important; --success:#10b981 !important; --warning:#f59e0b !important; --danger:#ef4444 !important; }

body{ background:var(--bg); color:var(--text); }
.navbar, .card{ background:var(--surface); border-color:var(--border); }
.btn-primary{ background:var(--primary); border-color:var(--primary); color:var(--primary-contrast); }
.form-control, .form-select{ background:var(--bg); color:var(--text); border-color:var(--border); }
a{ color:var(--primary); }
.text-muted{ color:var(--muted)!important; }

/* Focus visibility */
*:focus{ outline:2px solid var(--primary); outline-offset:2px; }

/* Slideshow */
.slideshow{ position:relative; }
.slideshow img{ max-width:100%; height:auto; display:block; }
.slideshow .controls{ position:absolute; bottom:8px; right:8px; }

/* Utilities */
.price{ font-weight:600; }
.theme-toggle{ cursor:pointer; }
