:root {
  --native-scheme: dark;
  --bg: #07111f;
  --surface: #102033;
  --surface-strong: #182d44;
  --surface-raised: #223950;
  --surface-input: #0b192a;
  --button-surface: #f4efdf;
  --overlay: rgb(5 12 24 / 72%);
  --text: #f4f7fc;
  --muted: #b4c3d4;
  --stroke: #64778e;
  --stroke-bright: #84bfff;
  --accent: #84bfff;
  --accent-soft: #163653;
  --positive: #8de6b4;
  --positive-soft: #123a2b;
  --warning: #f3d47b;
  --warning-soft: #453714;
  --danger: #ffacb2;
  --danger-soft: #4c202b;
  --on-accent: #07111f;
  --shadow-color: rgb(0 0 0 / 20%);
  --neon: var(--accent);
  --neon-soft: var(--accent-soft);
  --gold: var(--warning);
  --shadow: 0 18px 50px var(--shadow-color);
}
:root[data-theme="light"] {
  --native-scheme: light;
  --bg: #f4f7fb;
  --surface: #ffffff;
  --surface-strong: #eaf0f7;
  --surface-raised: #e0e9f4;
  --surface-input: #ffffff;
  --button-surface: #16324f;
  --overlay: rgb(226 234 244 / 85%);
  --text: #132a43;
  --muted: #405771;
  --stroke: #718299;
  --stroke-bright: #075ca5;
  --accent: #075ca5;
  --accent-soft: #e1efff;
  --positive: #166534;
  --positive-soft: #e3f5e9;
  --warning: #785000;
  --warning-soft: #fff3d3;
  --danger: #b42336;
  --danger-soft: #ffebed;
  --on-accent: #ffffff;
  --shadow-color: rgb(18 42 67 / 12%);
}
:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}
.landing-page .brand,
.legal-document h1,
.legal-document h2,
.faq-group summary {
  color: var(--text);
}
.landing-cta {
  color: var(--on-accent);
}
.site-footer,
.legal-update {
  color: var(--muted);
}
.settings-form p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}
.landing-page {
  background: var(--bg);
}
