/* SAGE — generated from tokens.json by scripts/ds_build.py; do not edit */
:root, [data-theme="light"] {
  --logo-forest: #13221b;
  --logo-mint: #eef2ec;
  --logo-sage: #5f8b6a;
  --logo-amber: #e2a33b;
  --logo-moss: #3e5446;
  --logo-sage-light: #a9bfae;
  --bg: #f7f9f6;
  --surface: #fcfdfc;
  --surface-sunken: #eef2ec;
  --line: #d1dcd2;
  --line-strong: #7a9080;
  --ink: #13221b;
  --ink-muted: #3e5446;
  --ink-subtle: #5c7263;
  --action: #13221b;
  --action-hover: #26382e;
  --on-action: #eef2ec;
  --sage: #5f8b6a;
  --sage-strong: #45674f;
  --sage-soft: #d6e1d6;
  --amber: #e2a33b;
  --amber-strong: #8f5400;
  --amber-soft: #fcf2e6;
  --on-amber: #13221b;
  --rust: #9f4325;
  --rust-soft: #faeeea;
  --link: var(--sage-strong);
  --focus: var(--sage-strong);
  --success: var(--sage-strong);
  --success-soft: var(--sage-soft);
  --warning: var(--amber-strong);
  --warning-soft: var(--amber-soft);
  --danger: var(--rust);
  --danger-soft: var(--rust-soft);
  --chart-1: #3d8e53;
  --chart-2: #873761;
  --chart-3: #4c89cc;
  --chart-4: #6d7607;
  --chart-5: #614691;
  --chart-6: #03999f;
  --chart-grid: var(--line);
  --chart-axis: var(--line-strong);
  --shadow-sm: 0 1px 2px #13221b0f, 0 1px 3px #13221b14;
  --shadow-md: 0 2px 4px #13221b0d, 0 6px 16px -4px #13221b1f;
  --shadow-lg: 0 16px 40px -8px #13221b2e;
  color-scheme: light;
}
[data-theme="dark"] {
  --bg: #13221b;
  --surface: #1d2c24;
  --surface-sunken: #091711;
  --line: #2f3d35;
  --line-strong: #687b6e;
  --ink: #eef2ec;
  --ink-muted: #a9bfae;
  --ink-subtle: #85998a;
  --action: #eef2ec;
  --action-hover: #cfdbd0;
  --on-action: #13221b;
  --sage: #5f8b6a;
  --sage-strong: #87a78f;
  --sage-soft: #24392c;
  --amber: #e2a33b;
  --amber-strong: #e2a33b;
  --amber-soft: #38280f;
  --on-amber: #13221b;
  --rust: #eb8f72;
  --rust-soft: #3f231b;
  --link: var(--sage-strong);
  --focus: var(--sage-strong);
  --success: var(--sage-strong);
  --success-soft: var(--sage-soft);
  --warning: var(--amber-strong);
  --warning-soft: var(--amber-soft);
  --danger: var(--rust);
  --danger-soft: var(--rust-soft);
  --chart-1: #439458;
  --chart-2: #c8729c;
  --chart-3: #5896d9;
  --chart-4: #7e8826;
  --chart-5: #896fbe;
  --chart-6: #10a6ad;
  --chart-grid: var(--line);
  --chart-axis: var(--line-strong);
  --shadow-sm: 0 1px 2px #00000066;
  --shadow-md: 0 6px 16px -4px #00000080;
  --shadow-lg: 0 18px 44px -10px #000000a6;
  color-scheme: dark;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;
  --container: 1152px;
  --measure: 680px;
  --nav-height: 64px;
  --control-height: 44px;
  --control-height-sm: 36px;
  --font-display: "Sora", ui-sans-serif, system-ui, sans-serif;
  --font-sans: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
}
.display { font-family: var(--font-display); font-size: 56px; line-height: 60px; font-weight: 700; letter-spacing: -0.02em; }
.h1 { font-family: var(--font-display); font-size: 40px; line-height: 48px; font-weight: 700; letter-spacing: -0.015em; }
.h2 { font-family: var(--font-display); font-size: 30px; line-height: 38px; font-weight: 600; letter-spacing: -0.01em; }
.h3 { font-family: var(--font-display); font-size: 22px; line-height: 30px; font-weight: 600; letter-spacing: -0.005em; }
.stat { font-family: var(--font-display); font-size: 36px; line-height: 40px; font-weight: 600; letter-spacing: -0.02em; }
.lead { font-family: var(--font-sans); font-size: 19px; line-height: 30px; font-weight: 400; }
.body { font-family: var(--font-sans); font-size: 16px; line-height: 26px; font-weight: 400; }
.body-sm { font-family: var(--font-sans); font-size: 14px; line-height: 22px; font-weight: 400; }
.label { font-family: var(--font-sans); font-size: 14px; line-height: 20px; font-weight: 500; }
.caption { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 400; letter-spacing: 0.01em; }
.eyebrow { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; }
.code { font-family: var(--font-mono); font-size: 14px; line-height: 22px; font-weight: 400; }
@font-face { font-family: 'Sora'; src: url('fonts/Sora-Variable.woff2') format('woff2'); font-weight: 100 800; font-style: normal; font-display: swap; }
@font-face { font-family: 'IBM Plex Sans'; src: url('fonts/IBMPlexSans-Variable.woff2') format('woff2'); font-weight: 100 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'IBM Plex Sans'; src: url('fonts/IBMPlexSans-Italic-Variable.woff2') format('woff2'); font-weight: 100 700; font-style: italic; font-display: swap; }
@font-face { font-family: 'IBM Plex Mono'; src: url('fonts/IBMPlexMono-Regular.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
