/* Hallmark · tokens (ALT) — custom atmospheric dark theme
 * axes: paper-band=dark · display-style=display-grotesk · accent-hue=warm(78)
 * brand anchors: navy #0a1f44 (hue ~264) · amber #f5a623 (hue ~78)
 */
:root {
  /* Colour — dark canvas, warm accent */
  --color-paper:        oklch(16% 0.028 264);  /* base canvas */
  --color-paper-2:      oklch(21% 0.032 264);  /* raised tile */
  --color-paper-3:      oklch(26% 0.036 264);  /* hover / higher elevation */
  --color-rule:         oklch(34% 0.028 264);
  --color-rule-soft:    oklch(30% 0.024 264);
  --color-ink:          oklch(96% 0.008 264);
  --color-muted:        oklch(75% 0.016 264);
  --color-muted-2:      oklch(64% 0.018 264);
  --color-icon-badge:   oklch(95% 0.012 262);  /* light chip so the navy icon reads on dark */

  --color-accent:       oklch(80% 0.145 78);   /* amber, lifted for dark */
  --color-accent-2:     oklch(84% 0.14 82);    /* hover */
  --color-accent-ink:   oklch(22% 0.05 70);    /* dark text on amber fills */
  --color-focus:        oklch(82% 0.145 80);

  --color-ok:           oklch(72% 0.13 155);
  --color-error:        oklch(70% 0.16 25);

  /* Blooms — warm radial atmosphere (fixed, no animation) */
  --bloom-1: radial-gradient(60% 55% at 78% 8%, oklch(80% 0.145 78 / 0.16), transparent 70%);
  --bloom-2: radial-gradient(55% 50% at 8% 42%, oklch(72% 0.12 40 / 0.10), transparent 70%);

  /* Type — matches the V1 pairing for a single brand voice */
  --font-display: "Space Grotesk", "Avenir Next", system-ui, sans-serif;
  --font-body:    "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;
  --font-mono:    "JetBrains Mono", ui-monospace, monospace;

  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-md:   1.125rem;
  --text-lg:   1.3125rem;
  --text-xl:   1.625rem;
  --text-2xl:  2.0625rem;
  --text-3xl:  2.625rem;
  --text-display: clamp(2.5rem, 4vw + 1rem, 4.25rem);

  /* Space — 4pt scale */
  --space-2xs: 0.25rem;
  --space-xs:  0.5rem;
  --space-sm:  0.75rem;
  --space-md:  1rem;
  --space-lg:  1.5rem;
  --space-xl:  2.5rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;
  --space-4xl: 9rem;

  /* Motion */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:     cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-micro: 120ms;
  --dur-short: 200ms;

  /* Shadow — warm glow on dark */
  --shadow-tile:  0 18px 40px -24px oklch(0% 0 0 / 0.6);
  --shadow-glow:  0 20px 46px -22px oklch(80% 0.145 78 / 0.28);
  --shadow-nav:   0 8px 28px -18px oklch(0% 0 0 / 0.5);

  /* Shape */
  --rule-hair:    1px;
  --radius-input: 10px;
  --radius-tile:  18px;
  --radius-pill:  999px;

  /* Layout */
  --container: 1140px;
  --z-raised: 10;
  --z-sticky-nav: 300;
}
