/* ════════════════════════════════════════════════════════════════════
   State by State — Design Tokens (v3 — Modern, elegant light)
   ════════════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  /* ── Surfaces ──────────────────────────────────────────────────── */
  --bg:          #f8f9fa;
  --surface:     #ffffff;
  --surface-2:   #f2f4f5;
  --surface-hover: #eef0f2;

  /* ── Text ──────────────────────────────────────────────────────── */
  --ink:         #0f1a1c;
  --ink-2:       #576f76;
  --muted:       #9ca3af;

  /* ── Borders ───────────────────────────────────────────────────── */
  --line:        #e5e7eb;
  --line-hover:  #d1d5db;

  /* ── Accent (Reddit orange) ────────────────────────────────────── */
  --accent:      #ff4500;
  --accent-soft: #fff1eb;

  /* ── Blue ───────────────────────────────────────────────────────── */
  --blue:        #0079d3;

  /* ── Semantic ──────────────────────────────────────────────────── */
  --danger:      #d93025;
  --danger-bg:   #fef2f2;
  --good:        #188038;
  --good-bg:     #f0fdf4;

  /* ── Map ───────────────────────────────────────────────────────── */
  --water:       #f0f4f8;

  /* ── Typography ────────────────────────────────────────────────── */
  --font:        'IBM Plex Sans', -apple-system, system-ui, sans-serif;
  --font-mono:   'JetBrains Mono', ui-monospace, monospace;

  /* ── Radii ─────────────────────────────────────────────────────── */
  --radius:      8px;
  --radius-sm:   4px;
  --radius-lg:   12px;
  --radius-full: 9999px;

  /* ── Shadows ───────────────────────────────────────────────────── */
  --shadow:      0 1px 2px rgba(0,0,0,0.04);
  --shadow-md:   0 2px 8px rgba(0,0,0,0.06);

  /* ════════════════════════════════════════════════════════════════
     PERCEPTUALLY UNIFORM STATE PALETTE (OKLCH)
     ─────────────────────────────────────────────────────────────
     50 categorical colors generated with golden-angle hue spacing
     in OKLCH color space for perceptual uniformity. Geographic
     ordering ensures neighboring states get maximally different hues.

     L ∈ {0.70, 0.72, 0.74} — slight variation for depth
     C = 0.10 — muted, elegant tones
     H = golden angle (137.508°) stepping
     ══════════════════════════════════════════════════════════════ */
  --state-AL: oklch(0.74 0.10 80.3);
  --state-AK: oklch(0.70 0.10 52.5);
  --state-AZ: oklch(0.74 0.10 72.6);
  --state-AR: oklch(0.72 0.10 145.2);
  --state-CA: oklch(0.74 0.10 275.0);
  --state-CO: oklch(0.72 0.10 295.1);
  --state-CT: oklch(0.74 0.10 290.4);
  --state-DE: oklch(0.70 0.10 15.3);
  --state-FL: oklch(0.72 0.10 355.3);
  --state-GA: oklch(0.70 0.10 217.8);
  --state-HI: oklch(0.72 0.10 190.0);
  --state-ID: oklch(0.70 0.10 105.0);
  --state-IL: oklch(0.72 0.10 197.7);
  --state-IN: oklch(0.72 0.10 250.2);
  --state-IA: oklch(0.74 0.10 230.2);
  --state-KS: oklch(0.72 0.10 40.1);
  --state-KY: oklch(0.70 0.10 165.2);
  --state-LA: oklch(0.74 0.10 282.7);
  --state-ME: oklch(0.72 0.10 257.9);
  --state-MD: oklch(0.72 0.10 152.8);
  --state-MA: oklch(0.72 0.10 205.4);
  --state-MI: oklch(0.70 0.10 112.7);
  --state-MN: oklch(0.72 0.10 92.7);
  --state-MS: oklch(0.74 0.10 335.2);
  --state-MO: oklch(0.70 0.10 7.7);
  --state-MT: oklch(0.72 0.10 242.6);
  --state-NE: oklch(0.70 0.10 262.6);
  --state-NV: oklch(0.74 0.10 327.5);
  --state-NH: oklch(0.70 0.10 120.4);
  --state-NJ: oklch(0.74 0.10 237.8);
  --state-NM: oklch(0.70 0.10 210.1);
  --state-NY: oklch(0.72 0.10 100.3);
  --state-NC: oklch(0.70 0.10 270.3);
  --state-ND: oklch(0.72 0.10 347.6);
  --state-OH: oklch(0.74 0.10 27.7);
  --state-OK: oklch(0.74 0.10 177.6);
  --state-OR: oklch(0.72 0.10 137.5);
  --state-PA: oklch(0.70 0.10 322.8);
  --state-RI: oklch(0.70 0.10 67.9);
  --state-SC: oklch(0.74 0.10 132.8);
  --state-SD: oklch(0.74 0.10 125.1);
  --state-TN: oklch(0.72 0.10 302.7);
  --state-TX: oklch(0.70 0.10 315.1);
  --state-UT: oklch(0.70 0.10 157.6);
  --state-VT: oklch(0.74 0.10 342.9);
  --state-VA: oklch(0.72 0.10 47.8);
  --state-WA: oklch(0.70 0.10 0.0);
  --state-WV: oklch(0.74 0.10 185.3);
  --state-WI: oklch(0.70 0.10 60.2);
  --state-WY: oklch(0.74 0.10 20.1);

  /* ── Chart / Infographic Colors (8-step categorical) ───────────── */
  --chart-1: oklch(0.70 0.10 0);
  --chart-2: oklch(0.70 0.10 45);
  --chart-3: oklch(0.70 0.10 90);
  --chart-4: oklch(0.70 0.10 135);
  --chart-5: oklch(0.70 0.10 180);
  --chart-6: oklch(0.70 0.10 225);
  --chart-7: oklch(0.70 0.10 270);
  --chart-8: oklch(0.70 0.10 315);

  /* ── Sequential Ramp (5-stop, warm hue 25°) ────────────────────── */
  --seq-1: oklch(0.35 0.18 25);
  --seq-2: oklch(0.47 0.16 25);
  --seq-3: oklch(0.59 0.14 25);
  --seq-4: oklch(0.71 0.12 25);
  --seq-5: oklch(0.83 0.10 25);
}
