/* Hallmark · design-tokens · theme: cobalt · genre: modern-minimal */
:root {
  /* Paper Canvas (Cool engineered near-white, hue 250) */
  --color-paper: oklch(98.5% 0.004 250);
  --color-paper-subtle: oklch(96.5% 0.006 250);
  --color-paper-elevated: oklch(100% 0 0);
  --color-paper-hover: oklch(94.5% 0.008 250);

  /* Graphite Dark Band & Code Surfaces (Cobalt Signature Move 8) */
  --color-graphite: oklch(20% 0.016 260);
  --color-graphite-surface: oklch(24% 0.018 260);
  --color-graphite-border: oklch(32% 0.02 260);
  --color-graphite-ink: oklch(96% 0.005 250);
  --color-graphite-muted: oklch(72% 0.012 255);

  /* Inks & Text */
  --color-ink: oklch(24% 0.02 258);
  --color-ink-primary: oklch(24% 0.02 258);
  --color-ink-secondary: oklch(40% 0.018 257);
  --color-ink-muted: oklch(58% 0.015 255);
  --color-ink-faint: oklch(78% 0.01 252);

  /* Hairline Rules & Borders */
  --color-rule: oklch(88% 0.008 250);
  --color-rule-subtle: oklch(92% 0.006 250);
  --color-rule-hover: oklch(76% 0.015 255);

  /* Electric Cobalt Signal Accent (Precision < 5% area) */
  --color-accent: oklch(58% 0.20 256);
  --color-accent-hover: oklch(52% 0.22 256);
  --color-accent-active: oklch(46% 0.23 256);
  --color-accent-subtle: oklch(95% 0.04 256);
  --color-accent-ink: oklch(99% 0.002 250);
  --color-focus: oklch(58% 0.20 256);

  /* Semantic Status Signals */
  --color-success: oklch(62% 0.18 145);
  --color-success-bg: oklch(96% 0.04 145);
  --color-success-border: oklch(82% 0.08 145);
  --color-warning: oklch(72% 0.16 75);

  /* Typography Stack */
  --font-display: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* Typographic Scale */
  --text-xs: 0.75rem;     /* 12px */
  --text-sm: 0.875rem;    /* 14px */
  --text-base: 1rem;      /* 16px */
  --text-md: 1.125rem;    /* 18px */
  --text-lg: 1.25rem;     /* 20px */
  --text-xl: 1.625rem;    /* 26px */
  --text-2xl: 2.25rem;    /* 36px */
  --text-3xl: 3rem;       /* 48px */
  --text-display: clamp(2.25rem, 4.2vw + 0.8rem, 3.85rem);

  /* Line Heights */
  --lh-display: 1.08;
  --lh-heading: 1.2;
  --lh-body: 1.55;
  --lh-mono: 1.45;

  /* Spacing Scale (strict 4-pt grid) */
  --space-3xs: 0.25rem;  /* 4px */
  --space-2xs: 0.5rem;   /* 8px */
  --space-xs: 0.75rem;   /* 12px */
  --space-sm: 1rem;      /* 16px */
  --space-md: 1.5rem;    /* 24px */
  --space-lg: 2rem;      /* 32px */
  --space-xl: 3rem;      /* 48px */
  --space-2xl: 4rem;     /* 64px */
  --space-3xl: 6rem;     /* 96px */

  /* Technical Radii (Ruler-drawn 6px and 10px) */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --radius-xl: 12px;

  /* Shadows */
  --shadow-subtle: 0 1px 2px oklch(24% 0.02 258 / 0.06);
  --shadow-card: 0 2px 4px oklch(24% 0.02 258 / 0.05), 0 1px 2px oklch(24% 0.02 258 / 0.03);
  --shadow-modal: 0 20px 40px oklch(20% 0.02 260 / 0.2), 0 1px 3px oklch(20% 0.02 260 / 0.1);

  /* Transitions & Easings */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 140ms;
  --dur-med: 280ms;

  /* Layout */
  --container-max: 1240px;
  --container-wide: 1360px;
  --nav-height: 64px;

  /* Z-indices */
  --z-base: 1;
  --z-nav: 100;
  --z-modal-backdrop: 500;
  --z-modal: 600;
  --z-toast: 1000;
}
