
:root{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--muted);border-radius:24px;background:var(--paper);color:var(--ink);font:600 13px/1.3 'DM Sans',Arial,sans-serif;white-space:nowrap;cursor:pointer;touch-action:manipulation}
.theme-toggle[aria-pressed="true"]{border-color:var(--ink)}
.theme-toggle:focus-visible{outline:3px solid #c36b25;outline-offset:4px}
.theme-toggle[hidden]{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:root[data-theme="dark"]{
--ink:#e5eee5;--paper:#111e1a;--line:#42564c;--muted:#b7c9bd;--lime:#e4fa83;--pink:#eea7b9;
}

:root[data-theme="dark"] .search,:root[data-theme="dark"] select{background:#1b2d25;color:var(--ink)}
:root[data-theme="dark"] .events-section,:root[data-theme="dark"] .conference-section{background:#182820}
:root[data-theme="dark"] .guide{background:#233329}
:root[data-theme="dark"] .guide:nth-child(2){background:#372b30}
:root[data-theme="dark"] .guide:nth-child(3){background:#29362b}
:root[data-theme="dark"] .guide .number{color:#b7c9bd}
:root[data-theme="dark"] .venue-notice{background:#3b3020;color:#f4d7a1}
:root[data-theme="dark"] .feature-list li{background:#2b4032}
:root[data-theme="dark"] .quick-paths button:hover{background:#263b2d}
:root[data-theme="dark"] .primary:hover{background:#c8dbc9;color:#111e1a}
:root[data-theme="dark"] .save,:root[data-theme="dark"] .conference-save[aria-pressed=true]{color:#193b34}
:root[data-theme="dark"] .editorial-strip,:root[data-theme="dark"] .hero-ticket{color:#193b34}
:root[data-theme="dark"] .preview{background:#193b34}
:root[data-theme="dark"] .weekender{background:#193b34;color:#f7f5ed}
:root[data-theme="dark"] .weekender .primary{color:#193b34}
:root[data-theme="dark"] .skip,:root[data-theme="dark"] #toast{background:#e5eee5;color:#111e1a}
:root[data-theme="dark"] :focus-visible{outline-color:#f2b0c8}
.header-actions{display:flex;align-items:center;gap:12px}
@media(max-width:760px){header{flex-wrap:wrap}.header-actions{gap:8px}.theme-toggle{padding:10px;font-size:12px}header nav{order:2;flex-basis:100%;justify-content:center}.header-actions .picks-button{min-height:44px}}
@media(max-width:380px){header nav{display:none}.header-actions{gap:6px}.theme-toggle{font-size:11px}}
@media print{.theme-toggle{display:none}}
