/* generated by tools/build-tokens.py from tokens.json — do not edit */
:root {
  color-scheme: light dark;
  --bg: #ffffff;
  --bg-soft: #ffffff;
  --bg-sink: #f1f2f4;
  --surface: #ffffff;
  --ink: #14181f;
  --muted: #5b626c;
  --faint: #676d77;
  --line: #d7d9de;
  --line-2: #c4c6cc;
  --red: #1f5fa6;
  --red-ink: #184d85;
  --spec: #c0392b;
  --focus: #1f5fa6;
  --on-ink: #ffffff;
  --ink-strong: #000000;
  --header-bg: rgba(255,255,255,.92);
  --grid-line: rgba(20,24,31,.045);
  --ok: #1a7f45;
  --panel: #14181f;
  --shadow-card: 0 1px 2px rgba(0,0,0,.04), 0 6px 18px rgba(0,0,0,.05);
  --space-3xs: 3px;
  --space-2xs: 5px;
  --space-xs: 8px;
  --space-sm: 13px;
  --space-md: 21px;
  --space-lg: 34px;
  --space-xl: 55px;
  --space-2xl: 89px;
  --space-3xl: 144px;
  --space-xs-md: clamp(8px, 2vw, 21px);
  --space-md-lg: clamp(21px, 3.5vw, 34px);
  --space-lg-xl: clamp(34px, 5vw, 55px);
  --space-md-xl: clamp(21px, 4vw, 55px);
  --space-lg-2xl: clamp(34px, 6vw, 89px);
  --text-sm: 0.786rem;
  --text-base: 1rem;
  --text-md: 1.272rem;
  --text-lg: 1.618rem;
  --text-xl: clamp(1.618rem, 1.2rem + 1.6vw, 2.058rem);
  --text-2xl: clamp(2.058rem, 1.4rem + 2.6vw, 2.618rem);
  --text-display: clamp(2.618rem, 1.6rem + 4vw, 3.330rem);
  --leading-body: 1.618;
  --leading-tight: 1.2;
  --tracking-heading: -.02em;
  --tracking-caps: .08em;
  --weight-regular: 400;
  --weight-semibold: 600;
  --weight-bold: 700;
  --font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --layout-measure: 65ch;
  --layout-measure-narrow: 34ch;
  --layout-measure-heading: 21ch;
  --layout-container: 1144px;
  --layout-split: 1.618fr 1fr;
  --layout-split-reverse: 1fr 1.618fr;
  --layout-split-3: 1.618fr 1fr 1fr;
  --layout-header-h: 55px;
  --layout-card-min: 89px;
  --layout-field-min: 144px;
  --layout-photo-col: 144px;
  --layout-photo-ratio: 1 / 1.618;
  --radius-sm: 3px;
  --radius-md: 5px;
  --radius-lg: 8px;
  --radius-pill: 999px;
  --line-hairline: 1px;
  --line-focus: 2px;
  --line-accent: 3px;
  --size-tap-min: 44px;
  --size-tap-lg: 55px;
  --size-icon: 21px;
  --size-logo: 34px;
  --size-thumb: 144px;
  --size-hero-img: 610px;
  --size-flag-w: 21px;
  --size-flag-h: 13px;
  --size-lift: -2px;
  --z-header: 50;
  --z-table-head: 5;
  --z-table-row: 4;
  --motion-fast: .15s;
  --panel-bg: radial-gradient(120% 140% at 0% 0%, #2a3038 0%, transparent 55%), var(--panel);
  --panel-ink: #ffffff;
  --panel-text: #a6acb6;
  --panel-eyebrow: #8dbbf0;
  --panel-label: #a6acb6;
  --panel-divider: rgba(255,255,255,.14);
  --panel-chip-border: rgba(255,255,255,.24);
  --panel-chip-hover-border: #6ea8ea;
  --panel-chip-hover-bg: rgba(110,168,234,.2);
  --panel-btn-bg: #c0392b;
  --panel-btn-bg-hover: #a93226;
  --panel-shadow: 0 21px 55px rgba(27,28,30,.22);
  --flag-edge: rgba(0,0,0,.2);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --bg: #0f1216;
    --bg-soft: #0f1216;
    --bg-sink: #1b2027;
    --surface: #161a20;
    --ink: #e8eaee;
    --muted: #a6acb6;
    --faint: #80868f;
    --line: #2a3038;
    --line-2: #3a414b;
    --red: #6ea8ea;
    --red-ink: #8dbbf0;
    --spec: #e8665a;
    --focus: #6ea8ea;
    --on-ink: #0f1216;
    --ink-strong: #ffffff;
    --header-bg: rgba(15,18,22,.92);
    --grid-line: rgba(255,255,255,.04);
    --ok: #4cc382;
    --panel: #1b2027;
    --shadow-card: 0 1px 2px rgba(0,0,0,.4), 0 6px 18px rgba(0,0,0,.35);
  }
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0f1216;
  --bg-soft: #0f1216;
  --bg-sink: #1b2027;
  --surface: #161a20;
  --ink: #e8eaee;
  --muted: #a6acb6;
  --faint: #80868f;
  --line: #2a3038;
  --line-2: #3a414b;
  --red: #6ea8ea;
  --red-ink: #8dbbf0;
  --spec: #e8665a;
  --focus: #6ea8ea;
  --on-ink: #0f1216;
  --ink-strong: #ffffff;
  --header-bg: rgba(15,18,22,.92);
  --grid-line: rgba(255,255,255,.04);
  --ok: #4cc382;
  --panel: #1b2027;
  --shadow-card: 0 1px 2px rgba(0,0,0,.4), 0 6px 18px rgba(0,0,0,.35);
}
:root[data-theme="light"] { color-scheme: light; }
