/* Shared semantic palette; light styles retain their existing fallback colors. */
html[data-theme="dark"] {
  color-scheme: dark;
  --theme-surface:#162333; --theme-raised:#1c2c3e; --theme-ink:#e8eff5;
  --theme-muted:#a7b7c7; --theme-line:#34485b; --theme-green:#79dfb8;
  --theme-mint:#173b32; --theme-info-bg:#1a334b;
  --theme-amber:#f2c777; --theme-amber-bg:#392f1c;
  --theme-red:#ffa5aa; --theme-red-bg:#402932;
  --paper:#0b131e; --bg:#0b131e; --white:var(--theme-surface); --surface:var(--theme-surface);
  --ink:var(--theme-ink); --ink2:#bbc9d5; --muted:var(--theme-muted); --faint:#94a5b6;
  --line:var(--theme-line); --line-soft:#283a4b; --line-input:#40556a;
  --green:var(--theme-green); --green-dark:#a4eed1; --accent:var(--theme-green); --accent-dark:#a4eed1;
  --mint:var(--theme-mint); --mint-soft:#142f29; --mint-line:#2e6953; --pale:var(--theme-mint);
  --chip:var(--theme-raised); --avatar:#243b50;
  --amber:var(--theme-amber); --amber-bg:var(--theme-amber-bg); --warn:var(--theme-amber-bg);
  --red:var(--theme-red); --red-bg:var(--theme-red-bg); --shadow:0 2px 8px #0003;
}
html[data-theme="dark"] body { background:var(--bg); color:var(--ink); }
html[data-theme="dark"] dialog { background:var(--surface); color:var(--ink); }
html[data-theme="dark"] :is(button.primary,.primary,.fanduel-continue,.brand-mark,.result-hit .result-badge,.workspace-nav button small) {
  background:#087052; border-color:#319b79; color:#fff;
}
html[data-theme="dark"] :is(button.primary,.primary,.fanduel-continue):hover { background:#09644d; color:#fff; }
html[data-theme="dark"] .result-miss .result-badge { background:#9c3f4c; color:#fff; }
html[data-theme="dark"] :is(.bar,.chart-legend i.miss,.mini-bars i:not(.hit),.hit-bar,.l10-bar) { background:#42596b; }
html[data-theme="dark"] :is(.bar.hit,.mini-bars i.hit) { background:var(--green); }
html[data-theme="dark"] :is(input,textarea)::placeholder { color:#96a9bb; }
html[data-theme="dark"] .secondary { background:var(--surface); color:var(--ink); border-color:var(--line); }
html[data-theme="dark"] :is(.fine-print,.field-help) { color:var(--muted); }
html[data-theme="dark"] .line-guide span { color:var(--ink); }
html[data-theme="dark"] svg text { fill:var(--ink); }
.theme-control { display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap; }
.theme-control select { min-height:38px;max-width:110px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--theme-surface,#fff);color:var(--ink);font:inherit;cursor:pointer; }
.theme-control select:focus-visible { outline:3px solid #6fc7ab;outline-offset:3px; }
.form-wrap>.theme-control { justify-content:flex-end;margin-bottom:24px; }
@media(max-width:720px) { .page-header .theme-control { margin-left:auto; } .theme-control { gap:5px; } }
