/* Shared site palette. Select a theme with <html data-theme="light|dark">.
   Light is the no-JavaScript fallback; theme.js owns the runtime default. */
:root {
  color-scheme: light;
  --bg: #f3f5fa;
  --surface: #fff;
  --line: #cdd5e3;
  --text: #19243a;
  --muted: #52627c;
  --accent: #345eb0;
  --ink: #fff;
  --control-line: #78869d;
  --shadow: 0 6px 28px #0003;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  background: var(--bg);
  color: var(--text);
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #10131c;
  --surface: #191f2d;
  --line: #303b51;
  --text: #f2f4fc;
  --muted: #a4afc4;
  --accent: #a2baff;
  --ink: #14213e;
  --control-line: #73829c;
}

/* Keep privacy decisions visible while their explanations scroll. */
.privacy-banner:has(.privacy-options) { display: flex; flex-direction: column; overflow: hidden; }
.privacy-banner .privacy-options { overflow: auto; min-height: 0; }
.privacy-banner .privacy-actions { flex-shrink: 0; }
.privacy-banner .check-label { flex-direction: row; align-items: flex-start; min-height: 44px; gap: 10px; }
.privacy-banner .check-label input { flex: 0 0 auto; width: 16px; height: 16px; padding: 0; margin-top: 4px; }
.privacy-banner .check-label span { min-width: 0; }
