/* GENERATED FILE — do not hand-edit.
 * Projected from specs/DESIGN_SYSTEM.md by scripts/gen-design-tokens.mjs (FR-LDS-002).
 * Change the SSOT and re-run the generator; an edit made here is overwritten and, until it
 * is, the running page disagrees with the contract it is measured against.
 */

:root {
  /* Colors */
  --iep-text-strong: #18181b;
  --iep-text-muted: #52525b;
  --iep-canvas: #ffffff;
  --iep-surface: #ffffff;
  --iep-primary: #0066cc;
  --iep-primary-hover: #0052a3;
  --iep-on-primary: #ffffff;
  --iep-primary-soft: #eaf2fb;
  --iep-danger-text: #dc2626;
  --iep-danger-fill: #ef4444;
  --iep-success-text: #15803d;
  --iep-success-fill: #22c55e;
  --iep-warn-text: #a16207;
  --iep-warn-fill: #eab308;
  --iep-accent-fill: #f97316;
  --iep-brand-cyan: #38bdf8;
  --iep-focus-ring: #2563eb;

  /* Type scale */
  --iep-text-body-size: 0.875rem;
  --iep-text-body-lh: 1.25rem;
  --iep-text-meta-size: 0.75rem;
  --iep-text-meta-lh: 1rem;
  --iep-text-body-lg-size: 1rem;
  --iep-text-body-lg-lh: 1.5rem;
  --iep-text-subhead-size: 1.125rem;
  --iep-text-subhead-lh: 1.75rem;
  --iep-text-title-size: 1.5rem;
  --iep-text-title-lh: 2rem;
  --iep-text-title-sm-size: 1.25rem;
  --iep-text-title-sm-lh: 1.75rem;
  --iep-text-display-size: 2.25rem;
  --iep-text-display-lh: 2.5rem;
  --iep-text-display-sm-size: 1.875rem;
  --iep-text-display-sm-lh: 2.25rem;

  /* Spacing */
  --iep-space-1: 0.25rem;
  --iep-space-2: 0.5rem;
  --iep-space-3: 0.75rem;
  --iep-space-4: 1rem;
  --iep-space-6: 1.5rem;
  --iep-space-8: 2rem;
  --iep-space-12: 3rem;
  --iep-space-16: 4rem;

  /* Radii */
  --iep-radius: 0.5rem;
  --iep-radius-pill: 9999px;
  --iep-radius-lg: 0.75rem;
  --iep-radius-sm: 0.375rem;
  --iep-radius-xl: 1rem;

  /* Elevation */
  --iep-shadow-card: 0 1px 3px rgba(0,0,0,0.05), 0 1px 1px rgba(0,0,0,0.03);
  --iep-shadow-float: 0 8px 24px -6px rgba(0,0,0,0.10), 0 2px 8px -2px rgba(0,0,0,0.04);
  --iep-shadow-input: 0 1px 2px rgba(0,0,0,0.04);
  --iep-shadow-input-focus: 0 0 0 1px rgba(0,102,204,0.10), 0 2px 8px -2px rgba(0,0,0,0.06);

  /* Motion */
  --iep-ease-spring: cubic-bezier(0.22, 1, 0.36, 1);
  --iep-duration-entrance: 0.5s;
  --iep-duration-control: 150ms;
  --iep-duration-ambient: 24s;
  --iep-duration-ring: 4s;
}

[data-theme="dark"] {
  /* The SAME property names, re-pointed (DESIGN.md §3.2) — a component cites the light name
     once and themes for free. color-scheme lets native controls follow. */
  color-scheme: dark;

  --iep-canvas: #18181b;
  --iep-text-strong: #e4e4e7;
  --iep-text-muted: #a1a1aa;
  --iep-surface: #27272a;
  --iep-primary: #60a5fa;
  --iep-on-primary: #18181b;
  --iep-danger-text: #f87171;
  --iep-success-text: #4ade80;
  --iep-warn-text: #fbbf24;
  --iep-focus-ring: #60a5fa;
  --iep-primary-hover: #93c5fd;
  --iep-primary-soft: #1e3a8a;
}
