/* Generated by design/build_tokens.py from design/tokens.json. Do not edit. */

:root {
  --surface-000: #ffffff;
  --surface-100: #f2f4f3;
  --surface-200: #e4e8e6;
  --ink-900: #10191a;
  --ink-700: #2f3e40;
  --ink-500: #586869;
  --line-200: #d3dbd9;
  --line-300: #b8c3c1;
  --line-400: #6c7a78;
  --brand-700: #0c5154;
  --brand-500: #10797c;
  --brand-100: #dcebea;
  --on-brand: #f4faf9;
  --ember-600: #a84b12;
  --ember-100: #fbe8dc;
  --ev-strong: var(--brand-700);
  --ev-moderate: #3a7e7a;
  --ev-limited: #6e807e;
  --ev-preliminary: #877f78;
  --signal-good: #1f6b44;
  --signal-good-100: #deede4;
  --signal-caution: #8a6410;
  --signal-caution-100: #f6ebd3;
  --signal-risk: #a32c24;
  --signal-risk-100: #f7e1de;
  --focus: var(--brand-700);
  --shadow-raise: 0 1px 2px rgba(16,25,26,0.07), 0 2px 10px rgba(16,25,26,0.05);
  --shadow-overlay: 0 8px 28px rgba(16,25,26,0.16);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --surface-000: #151d1e;
    --surface-100: #0b1112;
    --surface-200: #1e2829;
    --ink-900: #e9f0ee;
    --ink-700: #c2cecc;
    --ink-500: #859593;
    --line-200: #283334;
    --line-300: #3a4849;
    --line-400: #667573;
    --brand-700: #3fb5af;
    --brand-500: #5fcfc8;
    --brand-100: #12302f;
    --on-brand: #05201f;
    --ember-600: #e0854a;
    --ember-100: #3a2113;
    --ev-strong: var(--brand-700);
    --ev-moderate: #59a8a0;
    --ev-limited: #7e918f;
    --ev-preliminary: #9a918a;
    --signal-good: #4fb07c;
    --signal-good-100: #10301f;
    --signal-caution: #d3a23f;
    --signal-caution-100: #332711;
    --signal-risk: #e3736a;
    --signal-risk-100: #3a1a17;
    --focus: var(--brand-500);
    --shadow-raise: 0 1px 2px rgba(0,0,0,0.5), 0 2px 10px rgba(0,0,0,0.4);
    --shadow-overlay: 0 8px 28px rgba(0,0,0,0.6);
  }
}

:root[data-theme="dark"] {
  --surface-000: #151d1e;
  --surface-100: #0b1112;
  --surface-200: #1e2829;
  --ink-900: #e9f0ee;
  --ink-700: #c2cecc;
  --ink-500: #859593;
  --line-200: #283334;
  --line-300: #3a4849;
  --line-400: #667573;
  --brand-700: #3fb5af;
  --brand-500: #5fcfc8;
  --brand-100: #12302f;
  --on-brand: #05201f;
  --ember-600: #e0854a;
  --ember-100: #3a2113;
  --ev-strong: var(--brand-700);
  --ev-moderate: #59a8a0;
  --ev-limited: #7e918f;
  --ev-preliminary: #9a918a;
  --signal-good: #4fb07c;
  --signal-good-100: #10301f;
  --signal-caution: #d3a23f;
  --signal-caution-100: #332711;
  --signal-risk: #e3736a;
  --signal-risk-100: #3a1a17;
  --focus: var(--brand-500);
  --shadow-raise: 0 1px 2px rgba(0,0,0,0.5), 0 2px 10px rgba(0,0,0,0.4);
  --shadow-overlay: 0 8px 28px rgba(0,0,0,0.6);
}

:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --radius-sm: 3px;
  --radius-md: 6px;
  --radius-lg: 10px;
  --radius-pill: 999px;
  --measure-prose: 66ch;
  --container-article: 760px;
  --container-max: 1120px;
  --rail-width: 264px;
  --font-display: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --font-body: "Spectral", Georgia, "Times New Roman", serif;
  --font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;
}

.display-xl {
  font-family: var(--font-display);
  font-size: 52px;
  line-height: 54px;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.display-lg {
  font-family: var(--font-display);
  font-size: 38px;
  line-height: 42px;
  font-weight: 600;
  letter-spacing: -0.015em;
}

.display-md {
  font-family: var(--font-display);
  font-size: 28px;
  line-height: 34px;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.heading-lg {
  font-family: var(--font-sans);
  font-size: 21px;
  line-height: 28px;
  font-weight: 600;
  letter-spacing: -0.005em;
}

.heading-md {
  font-family: var(--font-sans);
  font-size: 17px;
  line-height: 24px;
  font-weight: 600;
}

.heading-sm {
  font-family: var(--font-sans);
  font-size: 15px;
  line-height: 20px;
  font-weight: 600;
}

.body-lg {
  font-family: var(--font-body);
  font-size: 19px;
  line-height: 32px;
  font-weight: 400;
}

.body {
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 28px;
  font-weight: 400;
}

.body-sm {
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 24px;
  font-weight: 400;
}

.caption {
  font-family: var(--font-body);
  font-size: 13px;
  line-height: 18px;
  font-weight: 400;
}

.label {
  font-family: var(--font-mono);
  font-size: 11px;
  line-height: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.data-lg {
  font-family: var(--font-mono);
  font-size: 28px;
  line-height: 32px;
  font-weight: 500;
}

.data {
  font-family: var(--font-mono);
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.cite {
  font-family: var(--font-mono);
  font-size: 12px;
  line-height: 18px;
  font-weight: 400;
}
