/* Hallmark · genre: modern-minimal · macrostructure: Narrative Workflow
 * theme: custom Linux TUI (phosphor-on-graphite) · enrichment: none
 * nav: statusline + Ctrl+K · footer: Ft5 Statement
 * audience: people hiring experienced developers · use: contact · tone: technical
 * Axes: paper=dark · display=mono · accent=green
 */

:root {
  --color-paper: oklch(18% 0.012 150);
  --color-paper-2: oklch(21% 0.014 150);
  --color-ink: oklch(93% 0.02 145);
  --color-ink-2: oklch(78% 0.03 145);
  --color-ink-3: oklch(58% 0.03 145);
  --color-rule: oklch(32% 0.02 150);
  --color-rule-2: oklch(42% 0.03 150);
  --color-accent: oklch(78% 0.19 145);
  --color-accent-ink: oklch(16% 0.02 150);
  --color-accent-soft: oklch(78% 0.19 145 / 0.14);
  --color-graphite: oklch(14% 0.012 150);
  --color-graphite-ink: oklch(90% 0.03 145);
  --color-graphite-muted: oklch(62% 0.04 145);
  --color-focus: oklch(78% 0.19 145);
  --color-ok: oklch(78% 0.19 145);
  --color-err: oklch(68% 0.18 25);

  --font-display: "IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;
  --font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;

  --text-display: clamp(2.4rem, 5.5vw + 0.4rem, 4.25rem);
  --text-display-s: clamp(1.75rem, 3vw + 0.4rem, 2.85rem);
  --text-4xl: clamp(1.5rem, 2.2vw + 0.4rem, 2.25rem);
  --text-2xl: 1.35rem;
  --text-xl: 1.2rem;
  --text-lg: 1.05rem;
  --text-md: 1rem;
  --text-sm: 0.875rem;
  --text-xs: 0.75rem;

  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-2xl: 4.5rem;
  --space-3xl: 7rem;

  --page-gutter: clamp(1.25rem, 4vw, 3.5rem);
  --page-max: 72rem;
  --radius-sm: 2px;
  --radius-md: 2px;
  --rule-hair: 1px;

  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --dur-micro: 100ms;
  --dur-short: 180ms;
  --dur-long: 360ms;
  --dur-reveal: 480ms;
}
