@font-face {
  font-family: "Atkinson Hyperlegible Next";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("fonts/atkinson-hyperlegible-next.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Atkinson Hyperlegible Next";
  font-style: italic;
  font-weight: 400 800;
  font-display: swap;
  src: url("fonts/atkinson-hyperlegible-next-italic.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root,
[data-theme="light"] {
  color-scheme: light;
  --paper: #f1f3f0;
  --paper-raised: #fbfcfa;
  --paper-sunk: #e6e9e5;
  --ink: #0f1f33;
  --ink-muted: #4a5868;
  --ink-faint: #5a6773;
  --rule: #d4d9d6;
  --rule-strong: #75818c;
  --lacre: #7c2335;
  --lacre-soft: #f4e4e6;
  --on-lacre: #fbfcfa;
  --gain: #08505d;
  --gain-soft: #ddedf0;
  --loss: #ae480b;
  --loss-soft: #fbeadf;
  --action: var(--ink);
  --on-action: var(--paper-raised);
  --focus: var(--ink);
  --guilloche: rgba(124, 35, 53, 0.16);
  --scrim: rgba(15, 31, 51, 0.48);
  --veil: rgba(241, 243, 240, 0.88);
  --shadow-hairline: 0 0 0 1px rgba(15, 31, 51, 0.08), 0 1px 2px rgba(15, 31, 51, 0.06);
  --shadow-lift: 0 0 0 1px rgba(15, 31, 51, 0.08), 0 18px 40px -18px rgba(15, 31, 51, 0.32);
  --logo-light: block;
  --logo-dark: none;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --paper: #0c141e;
    --paper-raised: #131d29;
    --paper-sunk: #09101a;
    --ink: #e9ecea;
    --ink-muted: #a6b0b8;
    --ink-faint: #8c97a1;
    --rule: #24303c;
    --rule-strong: #66737f;
    --lacre: #e08a97;
    --lacre-soft: #3a1a21;
    --on-lacre: #0c141e;
    --gain: #7dd5e1;
    --gain-soft: #0e2f37;
    --loss: #e07b3c;
    --loss-soft: #36200f;
    --action: var(--ink);
    --on-action: var(--paper-raised);
    --focus: var(--ink);
    --guilloche: rgba(224, 138, 151, 0.14);
    --scrim: rgba(3, 6, 10, 0.66);
    --veil: rgba(12, 20, 30, 0.86);
    --shadow-hairline: 0 0 0 1px rgba(233, 236, 234, 0.07), 0 1px 2px rgba(0, 0, 0, 0.4);
    --shadow-lift: 0 0 0 1px rgba(233, 236, 234, 0.08), 0 22px 48px -18px rgba(0, 0, 0, 0.75);
    --logo-light: none;
    --logo-dark: block;
  }
}

[data-theme="dark"] {
  color-scheme: dark;
  --paper: #0c141e;
  --paper-raised: #131d29;
  --paper-sunk: #09101a;
  --ink: #e9ecea;
  --ink-muted: #a6b0b8;
  --ink-faint: #8c97a1;
  --rule: #24303c;
  --rule-strong: #66737f;
  --lacre: #e08a97;
  --lacre-soft: #3a1a21;
  --on-lacre: #0c141e;
  --gain: #7dd5e1;
  --gain-soft: #0e2f37;
  --loss: #e07b3c;
  --loss-soft: #36200f;
  --action: var(--ink);
  --on-action: var(--paper-raised);
  --focus: var(--ink);
  --guilloche: rgba(224, 138, 151, 0.14);
  --scrim: rgba(3, 6, 10, 0.66);
  --veil: rgba(12, 20, 30, 0.86);
  --shadow-hairline: 0 0 0 1px rgba(233, 236, 234, 0.07), 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-lift: 0 0 0 1px rgba(233, 236, 234, 0.08), 0 22px 48px -18px rgba(0, 0, 0, 0.75);
  --logo-light: none;
  --logo-dark: block;
}

:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 72px;
  --space-9: 120px;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --radius-pill: 999px;
  --dur-tap: 120ms;
  --dur-quick: 200ms;
  --dur-move: 360ms;
  --dur-count: 900ms;
  --dur-draw: 1400ms;
  --dur-shimmer: 1600ms;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-stamp: cubic-bezier(0.34, 1.56, 0.64, 1);
  --font-ui: "Atkinson Hyperlegible Next", "Helvetica Neue", Arial, sans-serif;
  --font-display: var(--font-ui);
}
