/* Neatsparks: generated from tokens.json */
:root, [data-theme="night"] {
  --night: #120b16;
  --night-raised: #1b1220;
  --night-high: #251829;
  --night-line: #3b2a3d;
  --night-edge: #574058;
  --night-line-strong: #7a5f7c;
  --dusk: #4a1a2a;
  --starlight: #f6ece6;
  --starlight-muted: #c9b7bb;
  --starlight-faint: #9a8890;
  --neat: #f79022;
  --spark: #ef4b47;
  --ember: #f37336;
  --flare: #ec5e25;
  --signal-ok: #63d69a;
  --ground: var(--night);
  --ground-raised: var(--night-raised);
  --ground-sunken: #0c070f;
  --line: var(--night-line);
  --line-strong: var(--night-line-strong);
  --ink: var(--starlight);
  --ink-muted: var(--starlight-muted);
  --ink-faint: var(--starlight-faint);
  --neat-text: var(--neat);
  --spark-text: var(--spark);
  --on-neat: var(--night);
  --focus: var(--neat);
  --link: var(--neat-text);
  --glow-neat: 0 0 0 1px #f7902259, 0 0 28px -6px #f7902280;
  --shadow-float: 0 16px 40px -8px #000000b3;
  --focus-ring: 0 0 0 2px #120b16, 0 0 0 4px #f79022;
}
[data-theme="starlight"] {
  --ground: #f8f1ec;
  --ground-raised: #fffaf7;
  --ground-sunken: #efe4dd;
  --line: #e2d3cc;
  --line-strong: #8a7580;
  --ink: #1e1222;
  --ink-muted: #56424c;
  --ink-faint: #6e5b65;
  --neat-text: #9a4a00;
  --spark-text: #b3261f;
  --focus: var(--neat-text);
  --shadow-float: 0 16px 40px -8px #1e122233;
  --focus-ring: 0 0 0 2px #f8f1ec, 0 0 0 4px #9a4a00;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-18: 72px;
  --space-24: 96px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-pill: 999px;
  --content-max: 1180px;
  --measure: 65ch;
  --header-h: 64px;
  --dur-hover: 200ms;
  --dur-pop: 560ms;
  --dur-stagger: 85ms;
  --dur-rise: 520ms;
  --dur-fade: 500ms;
  --ease-spark: cubic-bezier(.2,.8,.3,1);
  --font-display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
  --font-body: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;
}
@font-face { font-family: "Bricolage Grotesque"; src: url("/fonts/BricolageGrotesque-Variable.woff2") format("woff2"); font-weight: 200 800; font-style: normal; font-display: swap; }
@font-face { font-family: "IBM Plex Sans"; src: url("/fonts/IBMPlexSans-Variable.woff2") format("woff2"); font-weight: 400 600; font-style: normal; font-display: swap; }
@font-face { font-family: "IBM Plex Sans"; src: url("/fonts/IBMPlexSans-Italic.woff2") format("woff2"); font-weight: 400; 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; }
@font-face { font-family: "IBM Plex Mono"; src: url("/fonts/IBMPlexMono-Medium.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
