/* Hatchway — generated from tokens.json */
:root, [data-theme="light"] {
  --surface-000: #ffffff;
  --surface-100: #f3f5f8;
  --surface-200: #e7ebf1;
  --line: #d3d9e3;
  --line-strong: #79849a;
  --ink: #121a2b;
  --ink-muted: #525d72;
  --brand: #1b2a4a;
  --beacon: #f0a202;
  --on-beacon: #121a2b;
  --link: #1f55c9;
  --focus: #1f55c9;
  --ok: #0b7a64;
  --ok-tint: #e1f4ef;
  --warn: #9a5800;
  --warn-tint: #fbefd9;
  --danger: #bf3528;
  --danger-tint: #fbe5e2;
  --off: #7d8799;
  --shadow-raised: 0 1px 2px rgba(18,26,43,0.06), 0 4px 12px rgba(18,26,43,0.05);
}
[data-theme="dark"] {
  --surface-000: #161d2b;
  --surface-100: #0e131d;
  --surface-200: #1f2839;
  --line: #2c3649;
  --line-strong: #64718a;
  --ink: #e8edf5;
  --ink-muted: #9ba7bb;
  --brand: #2f4778;
  --beacon: #f5b023;
  --link: #93b2ff;
  --focus: #93b2ff;
  --ok: #3fcfa9;
  --ok-tint: #123a33;
  --warn: #f5b84a;
  --warn-tint: #3b2c10;
  --danger: #ff8f7f;
  --danger-tint: #45201c;
  --off: #6b778c;
  --shadow-raised: 0 1px 2px rgba(0,0,0,0.5);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 10px;
  --radius-pill: 999px;
  --font-display: "Bricolage Grotesque", "IBM Plex Sans", system-ui, sans-serif;
  --font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.display { font-family: var(--font-display); font-size: 40px; line-height: 44px; font-weight: 700; letter-spacing: -0.01em; }
.title { font-family: var(--font-display); font-size: 22px; line-height: 28px; font-weight: 700; }
.heading { font-family: var(--font-sans); font-size: 16px; line-height: 22px; font-weight: 600; }
.body { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 400; }
.small { font-family: var(--font-sans); font-size: 12.5px; line-height: 18px; font-weight: 400; }
.label { font-family: var(--font-sans); font-size: 11px; line-height: 14px; font-weight: 600; letter-spacing: 0.06em; }
.mono { font-family: var(--font-mono); font-size: 13px; line-height: 19px; font-weight: 400; }
.mono-small { font-family: var(--font-mono); font-size: 12px; line-height: 16px; font-weight: 500; }
