/*
 * Vakna design tokens. A calm public-service look: warm paper, white square cards,
 * strong blue actions, charcoal footer and pastel bands. All text/background pairs
 * are at least 4.5:1. --sun is for graphics only, never for body text.
 */
:root {
  color-scheme: light;
  --paper: #f5f3ee;
  --surface: #ffffff;
  --surface-2: #ebe8e0;
  --sky: #d6e9fb;
  --ink: #24282c;
  --text: #2f3337;
  --muted: #565b60;
  --line: #d3cfc5;
  --line-strong: #6f7479; /* 3:1+ against paper and surface: form control borders */
  --primary: #0a5fa6;
  --primary-hover: #074a82;
  --on-primary: #ffffff;
  --sun: #d9660b;
  --sun-soft: #fbe6cd;
  --band-1: #cfe6fb;
  --band-2: #ffdcbd;
  --band-3: #c8ece2;
  --band-4: #e6d8f4;
  --band-5: #f9d3e3;
  --band-6: #fbeec2;
  --art-line: #24282c;
  --footer-bg: #2f3236;
  --footer-text: #ffffff;
  --focus: #101214;
  --focus-halo: #ffffff;
  --success: #17603a;
  --success-soft: #e1f2e8;
  --warning: #6f4400;
  --warning-soft: #fdf0d5;
  --danger: #a4231c;
  --danger-soft: #fbe6e4;
  --radius: 2px;
  --radius-lg: 2px;
  --font-body: "Atkinson Hyperlegible Next Variable", "Atkinson Hyperlegible Next", Verdana, system-ui, sans-serif;
  --font-display: "Figtree Variable", "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]):not([data-theme="contrast"]) {
    color-scheme: dark;
    --paper: #17191b;
    --surface: #212427;
    --surface-2: #2b2f33;
    --sky: #1b3347;
    --ink: #f4f5f6;
    --text: #e8eaec;
    --muted: #b9bec3;
    --line: #41464b;
    --line-strong: #8e949a;
    --primary: #8cc8f5;
    --primary-hover: #b6dcf9;
    --on-primary: #08253c;
    --sun: #f6b24a;
    --sun-soft: #3a2c15;
    --band-1: #1f3b52;
    --band-2: #4a3220;
    --band-3: #1d4038;
    --band-4: #392d4d;
    --band-5: #4a2a3a;
    --band-6: #443a1c;
    --art-line: #f4f5f6;
    --footer-bg: #0e0f10;
    --footer-text: #ffffff;
    --focus: #ffd166;
    --focus-halo: #17191b;
    --success: #7fdca6;
    --success-soft: #12331f;
    --warning: #f3c677;
    --warning-soft: #362710;
    --danger: #ffa79f;
    --danger-soft: #3d1a17;
  }
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --paper: #17191b;
  --surface: #212427;
  --surface-2: #2b2f33;
  --sky: #1b3347;
  --ink: #f4f5f6;
  --text: #e8eaec;
  --muted: #b9bec3;
  --line: #41464b;
  --line-strong: #8e949a;
  --primary: #8cc8f5;
  --primary-hover: #b6dcf9;
  --on-primary: #08253c;
  --sun: #f6b24a;
  --sun-soft: #3a2c15;
  --band-1: #1f3b52;
  --band-2: #4a3220;
  --band-3: #1d4038;
  --band-4: #392d4d;
  --band-5: #4a2a3a;
  --band-6: #443a1c;
  --art-line: #f4f5f6;
  --footer-bg: #0e0f10;
  --footer-text: #ffffff;
  --focus: #ffd166;
  --focus-halo: #17191b;
  --success: #7fdca6;
  --success-soft: #12331f;
  --warning: #f3c677;
  --warning-soft: #362710;
  --danger: #ffa79f;
  --danger-soft: #3d1a17;
}

:root[data-theme="contrast"] {
  color-scheme: light;
  --paper: #ffffff;
  --surface: #ffffff;
  --surface-2: #ffffff;
  --sky: #ffffff;
  --ink: #000000;
  --text: #000000;
  --muted: #000000;
  --line: #000000;
  --line-strong: #000000;
  --primary: #00338d;
  --primary-hover: #001f5c;
  --on-primary: #ffffff;
  --sun: #000000;
  --sun-soft: #ffffff;
  --band-1: #ffffff;
  --band-2: #ffffff;
  --band-3: #ffffff;
  --band-4: #ffffff;
  --band-5: #ffffff;
  --band-6: #ffffff;
  --art-line: #000000;
  --footer-bg: #000000;
  --footer-text: #ffffff;
  --focus: #b00020;
  --focus-halo: #ffffff;
  --success: #004d1f;
  --success-soft: #ffffff;
  --warning: #000000;
  --warning-soft: #ffffff;
  --danger: #8a0000;
  --danger-soft: #ffffff;
}
