/* tokens.css — GENERATED from define.php (php define.php --tokens). Do not edit. */
:root {
  /* colour */
  --paper: #faf7f0;
  --paper-soft: #f4f0e6;
  --ink: #111111;
  --ink-60: rgba(17, 17, 17, 0.66);
  --ink-40: rgba(17, 17, 17, 0.58);
  --ink-30: rgba(17, 17, 17, 0.34);
  --ink-05: rgba(17, 17, 17, 0.05);
  --hairline: rgba(17, 17, 17, 0.16);
  --hairline-soft: rgba(17, 17, 17, 0.08);
  --link: #3f5875;
  --select: rgba(192, 138, 62, 0.25);
  --pulse: rgba(192, 138, 62, 0.35);
  --shadow: rgba(17, 17, 17, 0.06);
  --glass: rgba(255, 255, 255, 0.5);
  --glass-soft: rgba(255, 255, 255, 0.35);
  --glass-strong: rgba(255, 255, 255, 0.6);
  --ok: #5a7a4f;
  --warn: #c08a3e;
  --bad: #7d4550;
  --info: #3f5875;

  /* group hues — .gN below binds one to --gc */
  --g1: #3f5875;
  --g2: #9e5b3a;
  --g3: #c08a3e;
  --g4: #6e8f8d;
  --g5: #8a5a72;
  --g6: #5a7a4f;
  --g7: #957951;
  --g8: #56707f;
  --g9: #8c8976;
  --g10: #5c5f84;
  --g11: #7d4550;
  --g12: #b08d4f;

  /* type */
  --mono: "Fragment Mono", "Courier Prime", "Courier New", monospace;
  --serif: "Georgia", "Iowan Old Style", "Times New Roman", serif;
  --fs-pico: 8px;
  --fs-nano: 9px;
  --fs-micro: 10px;
  --fs-label: 11px;
  --fs-meta: 12px;
  --fs-code: 12.5px;
  --fs-ui: 13px;
  --fs-md: 14px;
  --fs-serif: 14.5px;
  --fs-body: 15px;
  --fs-prose: 16px;
  --fs-lede: 17px;
  --fs-card: 19px;
  --fs-symbol: 20px;
  --fs-h2: 22px;
  --fs-stat: 24px;
  --fs-price: 26px;
  --fs-symbol-md: 54px;
  --fs-symbol-lg: 64px;
  --fs-subhead: clamp(19px, 2.4vw, 24px);
  --fs-headline: clamp(24px, 3.4vw, 38px);
  --fs-title: clamp(26px, 3.6vw, 40px);
  --fs-display: clamp(30px, 4.6vw, 52px);
  --lh-tight: 1.25;
  --lh-snug: 1.5;
  --lh-body: 1.7;
  --lh-prose: 1.8;
  --tracking-caps: 0.12em;
  --tracking-caps-wide: 0.14em;
  --tracking-caps-sm: 0.1em;
  --tracking-caps-xs: 0.08em;
  --tracking-snug: -0.02em;
  --tracking-tight: -0.03em;
  --tracking-tighter: -0.04em;
  --tracking-tightest: -0.05em;

  /* motion */
  --dur-fast: 140ms;
  --dur-slow: 250ms;
  --dur-exit: 180ms;
  --ease-out: cubic-bezier(0.25, 1, 0.5, 1);

  /* layout */
  --wrap: 1160px;
  --wrap-narrow: 720px;
  --gutter: 28px;
  --nav-height: 58px;
  --logo-size: 32px;
  --radius: 2px;
  --app-side: 220px;
  --grid-min: 1104px;
  --grid-gap: 4px;
  --grid-axis: 20px;
  --tile-min-w: 56px;
  --tile-min-h: 104px;
  --tile-pad-b: 17px;
  --tile-nm-lines: 3;

  /* glyphs — used as content: var(--glyph-x) */
  --glyph-essential: "●";
  --glyph-arrow: "→";
  --glyph-arrow-down: "↓";
  --glyph-arrow-left: "←";
  --glyph-bullet: "·";
  --glyph-times: "×";
  --glyph-check: "✓";
  --glyph-warn: "△";
  --glyph-cross: "✕";
  --glyph-dash: "—";
  --glyph-ellipsis: "…";
  --glyph-human: "✻";
  --glyph-workbench: "◆";
  --glyph-unknown: "??";
}

.g1 { --gc: var(--g1); }
.g2 { --gc: var(--g2); }
.g3 { --gc: var(--g3); }
.g4 { --gc: var(--g4); }
.g5 { --gc: var(--g5); }
.g6 { --gc: var(--g6); }
.g7 { --gc: var(--g7); }
.g8 { --gc: var(--g8); }
.g9 { --gc: var(--g9); }
.g10 { --gc: var(--g10); }
.g11 { --gc: var(--g11); }
.g12 { --gc: var(--g12); }
