/* ============================================================================
   Zeroe Design System — GENERATED TOKENS  ·  DO NOT EDIT
   Generated from tokens/zeroe.tokens.json by tokens/build.mjs.
   Source version 3.3.0. Re-run `node tokens/build.mjs` after editing the JSON.
   ========================================================================== */
:root {

  /* ---- Primitive · color ---- */
  --coral: #E5686F;
  --blue: #2267EA;
  --plum: #5F4A7D;
  --rose: #B56B76;
  --charcoal-900: #121314;
  --charcoal-800: #1B1D20;
  --graphite: #282E33;
  --mist-grey: #D9DADF;
  --soft-white: #F2F1EE;
  --white: #FAFAF8;
  --true-white: #FFFFFF;
  --success: #1F8A5B;
  --danger: #C5524F;
  --amber: #B5791E;
  --terracotta: #BE5B52;

  /* ---- Primitive · tonal elevation ---- */
  --tonal-0: var(--charcoal-900);
  --tonal-1: var(--charcoal-800);
  --tonal-2: #23262C;
  --tonal-3: #2C3138;

  /* ---- Primitive · spacing ---- */
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 24px;
  --s-6: 32px;
  --s-7: 48px;
  --s-8: 64px;
  --s-9: 96px;
  --s-10: 128px;

  /* ---- Primitive · radius ---- */
  --r-xs: 4px;
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 16px;
  --r-pill: 9999px;

  /* ---- Primitive · breakpoint ---- */
  --bp-sm: 640px; /* @kind other */
  --bp-md: 768px; /* @kind other */
  --bp-lg: 1024px; /* @kind other */
  --bp-xl: 1280px; /* @kind other */
  --bp-2xl: 1536px; /* @kind other */

  /* ---- Primitive · layout ---- */
  --layout-columns: 12; /* @kind other */
  --layout-gutter: 24px;
  --layout-gutter-tight: 16px;
  --layout-max-prose: 68ch;
  --layout-max-narrow: 640px;
  --layout-max-content: 1080px;
  --layout-max-wide: 1320px;
  --layout-max-full: 1600px;

  /* ---- Primitive · slide ---- */
  --slide-w: 1920px;
  --slide-h: 1080px;
  --slide-margin: 100px;
  --slide-gutter: 48px;
  --slide-display: 160px;
  --slide-section: 128px;
  --slide-title: 84px;
  --slide-heading: 44px;
  --slide-body-lg: 36px;
  --slide-body: 30px;
  --slide-caption: 24px;
  --slide-eyebrow: 24px;

  /* ---- Primitive · type ---- */
  --font-display: Outfit, system-ui, -apple-system, sans-serif; /* @kind font */
  --font-body: Geist, system-ui, -apple-system, sans-serif; /* @kind font */
  --font-mono: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, monospace; /* @kind font */
  --fw-regular: 400; /* @kind font */
  --fw-medium: 500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold: 700; /* @kind font */
  --fs-hero: clamp(40px, 5.2vw, 68px); /* @kind font */
  --fs-h1: clamp(34px, 4vw, 52px); /* @kind font */
  --fs-h2: clamp(26px, 2.6vw, 34px); /* @kind font */
  --fs-h3: 22px; /* @kind font */
  --fs-h4: 18px; /* @kind font */
  --fs-body-lg: 18px; /* @kind font */
  --fs-body: 16px; /* @kind font */
  --fs-small: 14px; /* @kind font */
  --fs-label: 12px; /* @kind font */

  /* ---- Primitive · line-height ---- */
  --lh-tight: 1.05; /* @kind font */
  --lh-snug: 1.2; /* @kind font */
  --lh-normal: 1.6; /* @kind font */

  /* ---- Primitive · tracking ---- */
  --ls-tight: -0.025em; /* @kind font */
  --ls-label: 0.16em; /* @kind font */

  /* ---- Primitive · duration ---- */
  --dur-instant: 90ms; /* @kind other */
  --dur-fast: 150ms; /* @kind other */
  --dur-base: 240ms; /* @kind other */
  --dur-slow: 360ms; /* @kind other */
  --dur-slowest: 560ms; /* @kind other */

  /* ---- Primitive · easing ---- */
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1); /* @kind other */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1); /* @kind other */
  --ease-in: cubic-bezier(0.4, 0, 1, 1); /* @kind other */
  --ease-settle: linear(0, 0.018, 0.069, 0.152, 0.265, 0.401, 0.55, 0.7, 0.832, 0.93, 0.99, 1.018, 1.022, 1.012, 1.002, 0.999, 1); /* @kind other */

  /* ---- Primitive · stagger ---- */
  --stagger-step: 70ms; /* @kind other */

  /* ---- Primitive · elevation ---- */
  --shadow-1: 0 1px 2px rgba(20,22,32,0.05);
  --shadow-2: 0 2px 8px rgba(20,22,32,0.07);
  --shadow-3: 0 12px 32px -6px rgba(20,22,32,0.18);
  --shadow-none: none;
  --shadow-slide-2: 0 2px 6px rgba(20,22,32,0.10);
  --shadow-slide-3: 0 6px 16px rgba(20,22,32,0.14);

  /* ---- Primitive · stroke ---- */
  --hairline: 1px solid var(--border);
  --hairline-strong: 1px solid var(--border-strong);

  /* ---- Primitive · effect ---- */
  --inner-top-highlight: inset 0 1px 0 rgba(255,255,255,.06); /* @kind other */
  --scrim: rgba(18,19,20,.55);

  /* ---- Primitive · glass ---- */
  --glass-tint: rgba(18,19,20,.52);
  --glass-blur: blur(18px) saturate(115%); /* @kind other */
  --glass-border: 1px solid rgba(255,255,255,.12); /* @kind other */
  --glass-highlight: inset 0 1px 0 rgba(255,255,255,.18); /* @kind other */

  /* ---- Primitive · glow ---- */
  --glow-coral: 0 3px 16px rgba(229,104,111,.42);
  --glow-coral-hover: 0 5px 22px rgba(229,104,111,.55);
  --glow-data-color: var(--color-action);
  --glow-data: 0 0 22px color-mix(in srgb, var(--glow-data-color) 55%, transparent), 0 0 7px color-mix(in srgb, var(--glow-data-color) 85%, transparent);
  --glow-data-soft: 0 0 14px color-mix(in srgb, var(--glow-data-color) 45%, transparent);

  /* ---- Primitive · gradient ---- */
  --gradient-brand: linear-gradient(90deg, #2267EA 0%, #5F4A7D 40%, #E5686F 96%); /* @kind other */
  --gradient-brand-135: linear-gradient(135deg, #2267EA 0%, #5F4A7D 40%, #E5686F 96%); /* @kind other */

  /* ---- Primitive · line system ---- */
  --line-action: var(--coral);
  --line-system: var(--blue);
  --line-ai: var(--plum);
  --line-insight: #8C8F94;
  --line-inactive: #3A4046;

  /* ---- Primitive · z-index ---- */
  --z-base: 0; /* @kind other */
  --z-raised: 10; /* @kind other */
  --z-sticky: 100; /* @kind other */
  --z-nav: 200; /* @kind other */
  --z-dropdown: 300; /* @kind other */
  --z-drawer: 400; /* @kind other */
  --z-modal: 500; /* @kind other */
  --z-toast: 600; /* @kind other */
  --z-tooltip: 700; /* @kind other */
  --z-command: 800; /* @kind other */

  /* ---- Primitive · data-viz ---- */
  --viz-1: var(--blue);
  --viz-2: var(--plum);
  --viz-3: var(--coral);
  --viz-4: var(--rose);
  --viz-5: #5E737F;
  --viz-6: #C99A5B;
  --viz-seq-1: #FBE3E4;
  --viz-seq-2: #F2B8BC;
  --viz-seq-3: #E5686F;
  --viz-seq-4: #C1525A;
  --viz-seq-5: #8E3B41;
  --viz-grid: rgba(20,22,32,.07);
  --viz-axis: var(--color-border-strong);
  --viz-track: rgba(20,22,32,.06);
  --viz-point: var(--coral);

  /* ---- Primitive · focus ---- */
  --focus-color: var(--charcoal-900);
  --focus-ring: 0 0 0 2px var(--bg), 0 0 0 4px var(--focus-color);
  --focus-ring-inset: inset 0 0 0 2px var(--focus-color);
  --focus-offset: 2px;

  /* ---- Semantic · roles ---- */
  --color-bg: var(--white);
  --color-surface: var(--soft-white);
  --color-surface-raised: var(--true-white);
  --color-surface-inverse: var(--charcoal-900);
  --color-text: var(--charcoal-900);
  --color-text-muted: #5B6066;
  --color-text-subtle: #8C8F94;
  --color-text-on-dark: var(--white);
  --color-text-on-action: #FFFFFF;
  --color-on-inverse: #FFFFFF;
  --color-border: var(--mist-grey);
  --color-border-strong: #C3C5CB;
  --color-action: var(--coral);
  --color-action-hover: #D3565D;
  --color-action-active: #C24D54;
  --color-trust: var(--blue);
  --color-trust-hover: #1C57C4;
  --color-ai: var(--plum);
  --color-ai-hover: #5B4A68;
  --color-link: var(--blue);
  --color-focus: var(--focus-color);
  --color-success: var(--success);
  --color-danger: var(--danger);
  --tint-coral: rgba(229,104,111,.12);
  --tint-blue: rgba(34,103,234,.12);
  --tint-plum: rgba(95,74,125,.14);
  --tint-rose: rgba(181,107,118,.16);
  --tint-success: rgba(31,138,91,.14);
  --on-tint-coral: #A83C44;
  --on-tint-blue: #1C57C4;
  --on-tint-plum: #5B4A68;
  --on-tint-rose: #8E4F5A;
  --on-tint-success: #176B47;
  --confidence-high: var(--blue);
  --confidence-medium: var(--amber);
  --confidence-low: var(--terracotta);
  --confidence-high-tint: rgba(34,103,234,.12);
  --confidence-medium-tint: rgba(201,154,91,.18);
  --confidence-low-tint: rgba(190,91,82,.14);
  --source-system: var(--line-system);
  --source-context: var(--line-ai);
  --source-doc: var(--line-insight);
  --source-human: var(--rose);
  --shimmer-base: var(--soft-white);
  --shimmer-sheen: rgba(34,103,234,.10);
  --surface-shadow-raised: var(--shadow-2);
  --surface-shadow-floating: var(--shadow-3);
  --space-section: var(--s-8);
  --space-block: var(--s-6);
  --space-inset: var(--s-5);
  --space-tight: var(--s-3);
  --radius-control: var(--r-sm);
  --radius-card: var(--r-lg);
  --control-py: 11px;
  --control-cell-py: 13px;
  --control-cell-px: 18px;
  --control-row-py: 9px;
  --control-stack-gap: 16px;
  --motion-ui: var(--dur-fast) var(--ease-standard); /* @kind other */
  --motion-enter: var(--dur-slow) var(--ease-out); /* @kind other */

  /* ---- Semantic · short aliases ---- */
  --fg: var(--color-text);
  --fg-muted: var(--color-text-muted);
  --fg-subtle: var(--color-text-subtle);
  --bg: var(--color-bg);
  --bg-alt: var(--color-surface);
  --surface: var(--color-surface);
  --border: var(--color-border);
  --border-strong: var(--color-border-strong);
  --link: var(--color-link);

  /* ---- Component ---- */
  --button-radius: var(--r-pill);
  --button-font: var(--font-display);
  --button-bg-primary: var(--color-action);
  --button-bg-primary-hover: var(--color-action-hover);
  --button-bg-primary-active: var(--color-action-active);
  --button-fg-primary: var(--color-text-on-action);
  --button-glow-primary: var(--glow-coral);
  --button-glow-primary-hover: var(--glow-coral-hover);
  --button-bg-trust: var(--color-trust);
  --button-bg-ai: var(--color-ai);
  --button-border-outline: var(--color-border-strong);
  --button-fg-outline: var(--color-text);
  --button-fg-ghost: var(--color-link);
  --card-bg: var(--color-surface);
  --card-border: var(--color-border);
  --card-radius: var(--r-lg);

  /* ---- Component · toast (fixed-dark inverse chip) ---- */
  --toast-bg: var(--charcoal-800);
  --toast-border: var(--graphite);
  --toast-fg: var(--white);
  --toast-fg-muted: #7E848A;
  --toast-icon-ok: #5BBE8E;
  --toast-icon-ok-bg: rgba(31,138,91,.18);
  --toast-icon-info: #6EA0FF;
  --toast-icon-info-bg: rgba(110,160,255,.18);
}

/* ---- Theme · dark ---- */
[data-theme="dark"] {
  --color-bg: var(--tonal-0);
  --color-surface: var(--tonal-1);
  --color-surface-raised: var(--tonal-2);
  --color-surface-inverse: var(--soft-white);
  --color-text: var(--white);
  --color-text-muted: #9AA0A6;
  --color-text-subtle: #7E848A;
  --color-text-on-dark: var(--white);
  --color-on-inverse: var(--charcoal-900);
  --color-border: var(--graphite);
  --color-border-strong: #3A4046;
  --color-action-hover: #EF8A8F;
  --color-action-active: #D3565D;
  --color-trust: #6EA0FF;
  --color-trust-hover: #8FB6FF;
  --color-ai: #B9A6C6;
  --color-link: #6EA0FF;
  --color-focus: var(--white);
  --focus-color: var(--white);
  --focus-ring: 0 0 0 2px var(--charcoal-900), 0 0 0 4px var(--focus-color);
  --tint-coral: rgba(229,104,111,.20);
  --tint-blue: rgba(110,160,255,.16);
  --tint-plum: rgba(185,166,198,.18);
  --tint-rose: rgba(199,138,148,.20);
  --tint-success: rgba(111,210,162,.16);
  --on-tint-coral: #EF8A8F;
  --on-tint-blue: #6EA0FF;
  --on-tint-plum: #B9A6C6;
  --on-tint-rose: #D89AA4;
  --on-tint-success: #6FD2A2;
  --confidence-high: #6EA0FF;
  --confidence-medium: #E0B05E;
  --confidence-low: #E58B80;
  --confidence-high-tint: rgba(110,160,255,.16);
  --confidence-medium-tint: rgba(224,176,94,.18);
  --confidence-low-tint: rgba(229,139,128,.18);
  --shimmer-base: var(--charcoal-800);
  --shimmer-sheen: rgba(110,160,255,.12);
  --viz-1: #6EA0FF;
  --viz-2: #B9A6C6;
  --viz-3: #EF8A8F;
  --viz-5: #8AA0AC;
  --viz-grid: rgba(255,255,255,.08);
  --viz-axis: var(--graphite);
  --viz-track: rgba(255,255,255,.07);
}

/* ---- Density · comfortable ---- */
[data-density="comfortable"] {
  --control-py: 11px;
  --control-cell-py: 13px;
  --control-cell-px: 18px;
  --control-row-py: 9px;
  --control-stack-gap: 16px;
}

/* ---- Density · compact ---- */
[data-density="compact"] {
  --control-py: 7px;
  --control-cell-py: 8px;
  --control-cell-px: 14px;
  --control-row-py: 6px;
  --control-stack-gap: 12px;
}
