/* Design Tokens - AnalystAI (The Modern Financial Ledger) */
:root {
  /* Light Theme Palette */
  --paper: #F8FAFD;
  --paper-rgb: 248, 250, 253;
  --paper-2: #FFFFFF;
  --paper-3: #EDF2F7;
  --ink: #0F172A;
  --ink-2: #475569;
  --rule: #E2E8F0;
  --rule-light: rgba(226, 232, 240, 0.6);
  --accent: #0D7A86;
  --accent-hover: #095F69;
  --accent-light: rgba(13, 122, 134, 0.08);
  --accent-ink: #FFFFFF;
  --highlight: #D97706;
  --highlight-bg: #FEF3C7;
  --good: #15803D;
  --good-bg: #DCFCE7;
  --warn: #B45309;
  --warn-bg: #FEF3C7;
  --bad: #B91C1C;
  --bad-bg: #FEE2E2;

  /* Ambient Glow & Lighting */
  --glow-accent: rgba(13, 122, 134, 0.12);
  --glow-highlight: rgba(217, 119, 6, 0.08);
  --grid-line: rgba(15, 23, 42, 0.035);

  /* Typography */
  --font-serif: "Newsreader", Georgia, serif;
  --font-sans: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* Spacing Scale */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 72px;
  --space-9: 112px;

  /* Radius */
  --radius-input: 8px;
  --radius-button: 8px;
  --radius-panel: 14px;
  --radius-answer: 10px;
  --radius-pill: 9999px;

  /* Layout Containers */
  --container-max: 1160px;
  --article-max: 720px;

  /* Shadows & Depth */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.05);
  --shadow-card: 0 4px 20px -2px rgba(15, 23, 42, 0.06), 0 2px 6px -1px rgba(15, 23, 42, 0.04);
  --shadow-card-hover: 0 16px 36px -4px rgba(15, 23, 42, 0.12), 0 4px 12px -2px rgba(15, 23, 42, 0.06);
  --shadow-sticky: 0 -4px 20px rgba(15, 23, 42, 0.08);
  --glow-button: 0 4px 14px rgba(13, 122, 134, 0.3);
}

[data-theme="dark"] {
  --paper: #090E17;
  --paper-rgb: 9, 14, 23;
  --paper-2: #111A27;
  --paper-3: #182334;
  --ink: #F1F5F9;
  --ink-2: #94A3B8;
  --rule: #1E293B;
  --rule-light: rgba(30, 41, 59, 0.6);
  --accent: #2DD4BF;
  --accent-hover: #5EEAD4;
  --accent-light: rgba(45, 212, 191, 0.12);
  --accent-ink: #042F2E;
  --highlight: #F59E0B;
  --highlight-bg: #271E0B;
  --good: #34D399;
  --good-bg: #064E3B;
  --warn: #FBBF24;
  --warn-bg: #451A03;
  --bad: #F87171;
  --bad-bg: #450A0A;

  /* Ambient Glow & Lighting */
  --glow-accent: rgba(45, 212, 191, 0.15);
  --glow-highlight: rgba(245, 158, 11, 0.1);
  --grid-line: rgba(255, 255, 255, 0.035);

  /* Shadows & Depth */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
  --shadow-card: 0 10px 30px -5px rgba(0, 0, 0, 0.5), 0 0 1px rgba(255, 255, 255, 0.1);
  --shadow-card-hover: 0 20px 45px -8px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(45, 212, 191, 0.4);
  --shadow-sticky: 0 -4px 24px rgba(0, 0, 0, 0.6);
  --glow-button: 0 4px 18px rgba(45, 212, 191, 0.35);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --paper: #090E17;
    --paper-rgb: 9, 14, 23;
    --paper-2: #111A27;
    --paper-3: #182334;
    --ink: #F1F5F9;
    --ink-2: #94A3B8;
    --rule: #1E293B;
    --rule-light: rgba(30, 41, 59, 0.6);
    --accent: #2DD4BF;
    --accent-hover: #5EEAD4;
    --accent-light: rgba(45, 212, 191, 0.12);
    --accent-ink: #042F2E;
    --highlight: #F59E0B;
    --highlight-bg: #271E0B;
    --good: #34D399;
    --good-bg: #064E3B;
    --warn: #FBBF24;
    --warn-bg: #451A03;
    --bad: #F87171;
    --bad-bg: #450A0A;

    --glow-accent: rgba(45, 212, 191, 0.15);
    --glow-highlight: rgba(245, 158, 11, 0.1);
    --grid-line: rgba(255, 255, 255, 0.035);

    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --shadow-card: 0 10px 30px -5px rgba(0, 0, 0, 0.5), 0 0 1px rgba(255, 255, 255, 0.1);
    --shadow-card-hover: 0 20px 45px -8px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(45, 212, 191, 0.4);
    --shadow-sticky: 0 -4px 24px rgba(0, 0, 0, 0.6);
    --glow-button: 0 4px 18px rgba(45, 212, 191, 0.35);
  }
}
