/* ═══════════════════════════════════════════════════════════
   AUTO-GENERATED from pipeline/shared/design-tokens.json
   by asym-intel-internal:engine-tools/render-design-tokens.py
   DO NOT EDIT BY HAND — regen with: python3 engine-tools/render-design-tokens.py
   ═══════════════════════════════════════════════════════════ */


:root {
  /* layout */
  --max-w: 1280px;
  --grid-cols: 12;
  --grid-gap: 24px;
  --px: clamp(16px, 3vw, 24px);
  /* palette */
  --accent: #0d7878;
  --accent-dim: rgba(13,120,120,0.08);
  --accent2: #b45309;
  --amber: #b45309;
  --bg: #f8fafc;
  --card: #ffffff;
  --card-hover: #f1f5f9;
  --green: #047857;
  --line: #e2e8f0;
  --line-subtle: #f1f5f9;
  --red: #b91c1c;
  --surface: #ffffff;
  --text: #0f172a;
  --text-faint: #94a3b8;
  --text-muted: #475569;
  /* typography */
  --mono: 'IBM Plex Mono', 'Fira Code', monospace;
  --sans: 'Inter', system-ui, -apple-system, sans-serif;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.6;
  --line-height-tight: 1.2;
  --font-size-base: 15px;
  --font-size-h1: 36px;
  --font-size-h2: 28px;
  --font-size-h3: 20px;
  --font-size-lg: 20px;
  --font-size-md: 17px;
  --font-size-sm: 13px;
  --font-size-xl: 24px;
  --font-size-xs: 11px;
  --font-weight-bold: 700;
  --font-weight-medium: 500;
  --font-weight-regular: 400;
  --font-weight-semibold: 600;
  /* spacing */
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  /* radius */
  --radius-lg: 8px;
  --radius-md: 6px;
  --radius-pill: 9999px;
  --radius-sm: 4px;
  --radius-xl: 12px;
  /* elevation */
  --shadow-0: none;
  --shadow-1: 0 1px 2px rgba(0,0,0,0.06);
  --shadow-2: 0 2px 8px rgba(0,0,0,0.08);
  --shadow-3: 0 4px 16px rgba(0,0,0,0.12);
  /* motion */
  --motion-base: 200ms;
  --motion-easing: cubic-bezier(0.4, 0, 0.2, 1);
  --motion-fast: 120ms;
  --motion-slow: 320ms;
  /* compat-aliases: commons-primitive-v1 — do not edit; regenerate via render-design-tokens.py */
  --color-surface: var(--surface);
  --color-text: var(--text);
  --color-text-muted: var(--text-muted);
  --color-text-secondary: var(--text-faint);
  --color-border: var(--line);
  --font-sans: var(--sans);
  --text-xs: var(--font-size-xs);
  --text-sm: var(--font-size-sm);
  --text-md: var(--font-size-md);
  --text-xl: var(--font-size-xl);
  --radius: var(--radius-md);
  --monitor-accent: var(--accent);
  /* semantic-roles */
  --freshness-fresh: #047857;
  --freshness-bg-fresh: #f0efe7;
  --freshness-stale: #b45309;
  --freshness-bg-stale: #f5f0e6;
  --freshness-aged: #94a3b8;
  --freshness-bg-aged: #ffffff;
  --chip-bg: #ffffff;
  --chip-bg-hover: #f1f5f9;
  --chip-bg-selected: #0d7878;
  --chip-border: #e2e8f0;
  --chip-border-selected: #0d7878;
  --chip-text: #0f172a;
  --chip-text-selected: #f8fafc;
  /* Missing tokens added by LIFT-5b (Defect-9 strict cure) */
  /* Card surface tokens (consumed by .signal-card, .card--exec-overview) */
  --card-bg:        #1a1a1a;
  --text-primary:   #e5e5e5;
  --surface-subtle: #f9fafb;
  /* Traffic-light tone tokens (consumed by .confidence-badge--*, .hero-chip__value--*, .verdict--*, .penalty-amount) */
  --tl-green-text:  #166534;
  --tl-green-bg:    #dcfce7;
  --tl-green-bd:    #86efac;
  --tl-amber-text:  #92400e;
  --tl-amber-bg:    #fef3c7;
  --tl-amber-bd:    #fcd34d;
  --tl-red-text:    #991b1b;
  --tl-red-bg:      #fee2e2;
  --tl-red-bd:      #fca5a5;
}


[data-theme="dark"] {
  /* palette */
  --accent: #58a6a6;
  --accent-dim: rgba(88,166,166,0.13);
  --accent2: #e0a94a;
  --amber: #f0a63b;
  --bg: #111315;
  --card: #1b1e22;
  --card-hover: #1f2329;
  --green: #5dbb63;
  --line: #2d343b;
  --line-subtle: #232a31;
  --red: #e36a86;
  --surface: #171a1d;
  --text: #edf1f4;
  --text-faint: #5a6a7a;
  --text-muted: #8b9bab;
  /* compat-aliases: commons-primitive-v1 — do not edit; regenerate via render-design-tokens.py */
  --color-surface: var(--surface);
  --color-text: var(--text);
  --color-text-muted: var(--text-muted);
  --color-text-secondary: var(--text-faint);
  --color-border: var(--line);
  --font-sans: var(--sans);
  --text-xs: var(--font-size-xs);
  --text-sm: var(--font-size-sm);
  --text-md: var(--font-size-md);
  --text-xl: var(--font-size-xl);
  --radius: var(--radius-md);
  --monitor-accent: var(--accent);
  /* semantic-roles */
  --freshness-fresh: #5dbb63;
  --freshness-bg-fresh: #1b272f;
  --freshness-stale: #f0a63b;
  --freshness-bg-stale: #1c2930;
  --freshness-aged: #5a6a7a;
  --freshness-bg-aged: #171a1d;
  --chip-bg: #171a1d;
  --chip-bg-hover: #1f2329;
  --chip-bg-selected: #58a6a6;
  --chip-border: #2d343b;
  --chip-border-selected: #58a6a6;
  --chip-text: #edf1f4;
  --chip-text-selected: #111315;
}
