/* Generated from docs/design-system/tokens.json. Edit JSON, then run tools/compile_design_tokens.py. */
:root, [data-theme="night"] {
  color-scheme: dark;
  --surface: #070808;
  --surface-raised: #111313;
  --surface-deep: #050606;
  --ink: #f4f2ec;
  --ink-muted: #b7b5af;
  --ink-soft: #8d8c86;
  --line: rgba(244,242,236,.19);
  --on-ink: var(--surface);
  --accent-cool: #a3e7da;
  --accent-warm: #efc38b;
}
[data-theme="paper"] {
  color-scheme: light;
  --surface: #e9e7df;
  --surface-raised: #f4f2ec;
  --surface-deep: #e9e7df;
  --ink: #171917;
  --ink-muted: #4d544d;
  --ink-soft: #5f655e;
  --line: rgba(23,25,23,.24);
  --on-ink: var(--surface);
  --accent-cool: #15534e;
  --accent-warm: #683a25;
}
:root {
  --space-2xs: 10px;
  --space-xs: 14px;
  --space-sm: 20px;
  --space-md: 28px;
  --space-lg: 48px;
  --space-xl: 72px;
  --space-section: 112px;
  --gutter: 24px;
  --radius-none: 0px;
  --radius-round: 50%;
  --container: 1180px;
  --header-height: 72px;
  --measure: 72ch;
  --font-serif: Newsreader, Georgia, serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;
  --type-display-hero-size: 105.6px;
  --type-display-hero-line: 1.08;
  --type-display-hero-weight: 400;
  --type-display-hero-tracking: -0.035em;
  --type-display-hero-fluid: clamp(3.4rem, 6.6vw, 6.6rem);
  --type-display-hero-family: var(--font-serif);
  --type-display-page-size: 96px;
  --type-display-page-line: 1.08;
  --type-display-page-weight: 400;
  --type-display-page-fluid: clamp(3.5rem, 6vw, 6rem);
  --type-display-page-family: var(--font-serif);
  --type-heading-section-size: 73.6px;
  --type-heading-section-line: 1.08;
  --type-heading-section-weight: 400;
  --type-heading-section-tracking: -0.025em;
  --type-heading-section-fluid: clamp(2.7rem, 4.6vw, 4.6rem);
  --type-heading-section-family: var(--font-serif);
  --type-heading-card-size: 35.2px;
  --type-heading-card-line: 1.08;
  --type-heading-card-weight: 400;
  --type-heading-card-family: var(--font-serif);
  --type-heading-item-size: 28px;
  --type-heading-item-line: 1.08;
  --type-heading-item-weight: 400;
  --type-heading-item-family: var(--font-serif);
  --type-figure-size: 48px;
  --type-figure-line: 1.1;
  --type-figure-weight: 400;
  --type-figure-family: var(--font-serif);
  --type-lede-size: 17.28px;
  --type-lede-line: 1.85;
  --type-lede-weight: 400;
  --type-lede-family: var(--font-mono);
  --type-body-size: 15px;
  --type-body-line: 1.7;
  --type-body-weight: 400;
  --type-body-family: var(--font-mono);
  --type-small-size: 13.12px;
  --type-small-line: 1.7;
  --type-small-weight: 400;
  --type-small-family: var(--font-mono);
  --type-caption-size: 11.68px;
  --type-caption-line: 1.6;
  --type-caption-weight: 400;
  --type-caption-family: var(--font-mono);
  --type-eyebrow-size: 11.68px;
  --type-eyebrow-line: 1.5;
  --type-eyebrow-weight: 500;
  --type-eyebrow-tracking: 0.2em;
  --type-eyebrow-family: var(--font-mono);
  --type-nav-size: 13.12px;
  --type-nav-line: 1.5;
  --type-nav-weight: 400;
  --type-nav-tracking: 0.08em;
  --type-nav-family: var(--font-mono);
  --type-button-size: 12.16px;
  --type-button-line: 1.4;
  --type-button-weight: 500;
  --type-button-tracking: 0.12em;
  --type-button-family: var(--font-mono);
  --type-status-size: 11.68px;
  --type-status-line: 1.25;
  --type-status-weight: 400;
  --type-status-tracking: 0.13em;
  --type-status-family: var(--font-mono);
  --control-min-height: 48px;
  --mark-size: 28px;
  --focus-width: 2px;
  --focus-offset: 4px;
  --border-width: 1px;
  --motion-fast: 200ms;
  --motion-standard: 320ms;
}
.t-display-hero { font-family: var(--type-display-hero-family); font-size: var(--type-display-hero-fluid); line-height: var(--type-display-hero-line); font-weight: var(--type-display-hero-weight); letter-spacing: var(--type-display-hero-tracking); }
.t-display-page { font-family: var(--type-display-page-family); font-size: var(--type-display-page-fluid); line-height: var(--type-display-page-line); font-weight: var(--type-display-page-weight); }
.t-heading-section { font-family: var(--type-heading-section-family); font-size: var(--type-heading-section-fluid); line-height: var(--type-heading-section-line); font-weight: var(--type-heading-section-weight); letter-spacing: var(--type-heading-section-tracking); }
.t-heading-card { font-family: var(--type-heading-card-family); font-size: var(--type-heading-card-size); line-height: var(--type-heading-card-line); font-weight: var(--type-heading-card-weight); }
.t-heading-item { font-family: var(--type-heading-item-family); font-size: var(--type-heading-item-size); line-height: var(--type-heading-item-line); font-weight: var(--type-heading-item-weight); }
.t-figure { font-family: var(--type-figure-family); font-size: var(--type-figure-size); line-height: var(--type-figure-line); font-weight: var(--type-figure-weight); }
.t-lede { font-family: var(--type-lede-family); font-size: var(--type-lede-size); line-height: var(--type-lede-line); font-weight: var(--type-lede-weight); }
.t-body { font-family: var(--type-body-family); font-size: var(--type-body-size); line-height: var(--type-body-line); font-weight: var(--type-body-weight); }
.t-small { font-family: var(--type-small-family); font-size: var(--type-small-size); line-height: var(--type-small-line); font-weight: var(--type-small-weight); }
.t-caption { font-family: var(--type-caption-family); font-size: var(--type-caption-size); line-height: var(--type-caption-line); font-weight: var(--type-caption-weight); }
.t-eyebrow { font-family: var(--type-eyebrow-family); font-size: var(--type-eyebrow-size); line-height: var(--type-eyebrow-line); font-weight: var(--type-eyebrow-weight); letter-spacing: var(--type-eyebrow-tracking); }
.t-nav { font-family: var(--type-nav-family); font-size: var(--type-nav-size); line-height: var(--type-nav-line); font-weight: var(--type-nav-weight); letter-spacing: var(--type-nav-tracking); }
.t-button { font-family: var(--type-button-family); font-size: var(--type-button-size); line-height: var(--type-button-line); font-weight: var(--type-button-weight); letter-spacing: var(--type-button-tracking); }
.t-status { font-family: var(--type-status-family); font-size: var(--type-status-size); line-height: var(--type-status-line); font-weight: var(--type-status-weight); letter-spacing: var(--type-status-tracking); }
