/* Design tokens "Festlich-modern": warm light theme, royal-blue dark theme with gold accents. */
:root {
  --bg:#fbf7f1;
  --surface:#ffffff;
  --ink:#23181a;
  --muted:#6e625e;
  --line:#ece2d7;
  --tint:#f8ece4;
  --tint-line:#f0dccf;
  --input:#fffdfa;
  --danger:#b42318;
  --on-danger:#ffffff;
  --gold:#d4a72c;
  --gold-soft:#fbf0d2;
  --gold-line:#efd99a;
  --gold-ink:#3a2a05;
  --ok-bg:#e5f2ea;
  --ok-ink:#2c7247;
  --warn-bg:#fbefd2;
  --warn-ink:#8a5d00;
  --full-bg:#f1ebe5;
  --full-ink:#6e625e;
  --chip-strong-bg:#23181a;
  --chip-strong-ink:#ffffff;
  --backdrop:radial-gradient(640px 320px at 100% -8%,rgba(212,167,44,.16),transparent 60%),radial-gradient(640px 340px at -12% 18%,rgba(194,54,79,.09),transparent 60%);
  --shadow-1:0 1px 2px rgba(60,30,20,.05),0 8px 24px rgba(60,30,20,.06);
  --shadow-2:0 4px 8px rgba(60,30,20,.06),0 22px 44px rgba(60,30,20,.13);
  --radius-card:20px;
  --radius-pill:999px;
  --berry:#c2364f; --berry-soft:#fbe3e7;
  --plum:#8a5cc2; --plum-soft:#efe5f8;
  --sage:#3f8f6b; --sage-soft:#e1f1e8;
  --saffron:#b87d06; --saffron-soft:#fbefd2;
  --ocean:#2479a8; --ocean-soft:#dceefa;
  --coral:#d9573a; --coral-soft:#fde5dc;
  --lavender:#5f63cc; --lavender-soft:#e7e8fb;
  --slate:#55657a; --slate-soft:#e6eaef;
  color-scheme:light
}
/* Keep identical to the system dark block below; a test compares both. */
:root[data-theme=dark] {
  --bg:#0c1430;
  --surface:#162147;
  --ink:#f6f0e8;
  --muted:#aab4d6;
  --line:#2a3a6e;
  --tint:#1d2b5c;
  --tint-line:#34488a;
  --input:#111a3a;
  --danger:#f18b7e;
  --on-danger:#0c1430;
  --gold:#e3c15a;
  --gold-soft:#2b2a2f;
  --gold-line:#6b5a25;
  --gold-ink:#2a1f00;
  --ok-bg:#1d3b35;
  --ok-ink:#8fdcb5;
  --warn-bg:#3f300e;
  --warn-ink:#ffdf8c;
  --full-bg:#22305c;
  --full-ink:#aab4d6;
  --chip-strong-bg:#e3c15a;
  --chip-strong-ink:#1a1400;
  --backdrop:radial-gradient(640px 320px at 100% -8%,rgba(65,105,225,.42),transparent 60%),radial-gradient(520px 280px at -10% 28%,rgba(227,193,90,.10),transparent 60%);
  --shadow-1:0 1px 2px rgba(0,0,0,.2),0 10px 28px rgba(0,0,0,.28);
  --shadow-2:0 4px 10px rgba(0,0,0,.3),0 22px 44px rgba(65,105,225,.28);
  --theme-accent:#4169e1;
  --berry:#ff8fa3; --berry-soft:#3a2340;
  --plum:#c3a2ef; --plum-soft:#2f2a5c;
  --sage:#7fd3a8; --sage-soft:#173d44;
  --saffron:#f2c45a; --saffron-soft:#3a3218;
  --ocean:#7cc4f0; --ocean-soft:#15365a;
  --coral:#ff9f80; --coral-soft:#3d2638;
  --lavender:#a9adff; --lavender-soft:#272c62;
  --slate:#b4c0d6; --slate-soft:#24304f;
  color-scheme:dark
}
@media(prefers-color-scheme:dark) {
  :root[data-theme=system] {
    --bg:#0c1430;
    --surface:#162147;
    --ink:#f6f0e8;
    --muted:#aab4d6;
    --line:#2a3a6e;
    --tint:#1d2b5c;
    --tint-line:#34488a;
    --input:#111a3a;
    --danger:#f18b7e;
    --on-danger:#0c1430;
    --gold:#e3c15a;
    --gold-soft:#2b2a2f;
    --gold-line:#6b5a25;
    --gold-ink:#2a1f00;
    --ok-bg:#1d3b35;
    --ok-ink:#8fdcb5;
    --warn-bg:#3f300e;
    --warn-ink:#ffdf8c;
    --full-bg:#22305c;
    --full-ink:#aab4d6;
    --chip-strong-bg:#e3c15a;
    --chip-strong-ink:#1a1400;
    --backdrop:radial-gradient(640px 320px at 100% -8%,rgba(65,105,225,.42),transparent 60%),radial-gradient(520px 280px at -10% 28%,rgba(227,193,90,.10),transparent 60%);
    --shadow-1:0 1px 2px rgba(0,0,0,.2),0 10px 28px rgba(0,0,0,.28);
    --shadow-2:0 4px 10px rgba(0,0,0,.3),0 22px 44px rgba(65,105,225,.28);
    --theme-accent:#4169e1;
    --berry:#ff8fa3; --berry-soft:#3a2340;
    --plum:#c3a2ef; --plum-soft:#2f2a5c;
    --sage:#7fd3a8; --sage-soft:#173d44;
    --saffron:#f2c45a; --saffron-soft:#3a3218;
    --ocean:#7cc4f0; --ocean-soft:#15365a;
    --coral:#ff9f80; --coral-soft:#3d2638;
    --lavender:#a9adff; --lavender-soft:#272c62;
    --slate:#b4c0d6; --slate-soft:#24304f;
    color-scheme:dark
  }
}
