/* Hallmark · genre: atmospheric · theme: custom
 * vibe: "industrial precision, cold, metallic, automotive"
 * paper: oklch(14% 0.013 255) · accent: oklch(62% 0.19 253)  (electric blue, from logo)
 * display: Archivo · body: Geist · outlier: Geist Mono
 * axes: dark / geometric-sans / cool · studied: no · context: user-provided
 * ---
 * Glanzwerk Becker — Fahrzeugaufbereitung · design tokens
 */

:root {
  /* ---- Surfaces (near-black, cool-tinted — never pure #000) ---- */
  --paper-0: oklch(9.5% 0.010 255);   /* darkest — reveal footer, deep bands */
  --paper:   oklch(14%  0.013 255);   /* base page surface */
  --paper-2: oklch(18.5% 0.015 253);  /* raised panels, cards */
  --paper-3: oklch(24%  0.016 250);   /* hover / highest surface, inputs */

  /* ---- Text (chrome-white → silver, cool-tinted) ---- */
  --ink:     oklch(95%  0.006 250);   /* primary text */
  --ink-2:   oklch(80%  0.010 250);   /* strong secondary */
  --silver:  oklch(72%  0.013 250);   /* silver labels, captions */
  --muted:   oklch(62%  0.014 252);   /* muted / supporting text */

  /* ---- Rules / hairlines (panel-gap feel) ---- */
  --rule:    oklch(30%  0.014 250);
  --rule-2:  oklch(24%  0.013 252);
  --rule-hair: 1px;

  /* ---- Accent — electric blue, used as a signal only (<=5% footprint) ---- */
  --accent:        oklch(62% 0.19 253);   /* #0486f4 — marks, edges, glows, links */
  --accent-bright: oklch(70% 0.16 250);   /* readable accent text on dark */
  --accent-fill:   oklch(55% 0.17 255);   /* solid CTA fill (white text 4.9:1) */
  --accent-ink:    oklch(98% 0.004 250);  /* text on accent fill */
  --accent-soft:   oklch(62% 0.19 253 / 0.14); /* faint blue wash */
  --accent-line:   oklch(62% 0.19 253 / 0.42); /* blue hairline */
  --focus:         oklch(72% 0.20 250);

  /* ---- Type ---- */
  --font-display: "Archivo", ui-sans-serif, system-ui, "Segoe UI", sans-serif;
  --font-body:    "Geist", ui-sans-serif, system-ui, "Segoe UI", Roboto, sans-serif;
  --font-mono:    "Geist Mono", ui-monospace, "SFMono-Regular", "Cascadia Code", Consolas, monospace;

  /* Type scale — perfect fourth-ish, clamped for fluid display */
  --text-xs:   0.75rem;    /* 12px */
  --text-sm:   0.8125rem;  /* 13px */
  --text-base: 1rem;       /* 16px */
  --text-md:   1.125rem;   /* 18px */
  --text-lg:   clamp(1.25rem, 0.9rem + 1.1vw, 1.6rem);
  --text-xl:   clamp(1.6rem, 1.1rem + 1.8vw, 2.25rem);
  --text-2xl:  clamp(2.1rem, 1.3rem + 3.1vw, 3.25rem);
  --text-3xl:  clamp(2.6rem, 1.4rem + 4.6vw, 4.25rem);
  --text-display: clamp(3rem, 1.2rem + 7vw, 6rem);

  /* ---- Spacing — 4pt scale ---- */
  --space-3xs: 0.125rem;
  --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;

  /* ---- Structure ---- */
  --page-gutter: clamp(1.15rem, 5vw, 4.5rem);
  --wrap-max: 78rem;      /* ~1248px — not too wide */
  --wrap-narrow: 46rem;   /* prose measure */
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-pill: 999px;

  /* ---- 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: 220ms;
  --dur-long:  420ms;

  /* ---- Z-scale ---- */
  --z-base: 1;
  --z-raised: 10;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-modal: 400;
  --z-toast: 500;

  /* ---- Shadows (tight, dark — no coloured glow on light) ---- */
  --shadow-panel: 0 1px 0 oklch(100% 0 0 / 0.03) inset, 0 18px 40px -24px oklch(0% 0 0 / 0.8);
  --glow-accent: 0 0 0 1px var(--accent-line), 0 8px 30px -10px oklch(62% 0.19 253 / 0.35);

  color-scheme: dark;
}
