/* ─────────────────────────────────────────────────────────────
   Prospector — color tokens (Paleta A · Dev-tool evolved)
   Locked as project default on 2026-04-24.

   SPRINT 01 LOAD ORDER NOTE:
     This file is <link>ed BEFORE legacy style.css in base.html.
     style.css also defines :root { --accent, --success, --text-*, ... }.
     Because style.css loads AFTER, its :root WINS the cascade for every
     token name that exists in both files — this is intentional. Sprint 01
     is pixel-identical; new color VALUES from this file don't activate
     until Sprint 06 deletes style.css's :root + [data-theme="dark"]
     blocks.
     Net effect in Sprint 01: only NEW keys propagate (there are none
     in this file — new keys live in typography.css and spacing.css).
     Keep this file as the TARGET source of truth; do not edit values
     to match legacy.

   WCAG AA verified (2026-04-24) on pairs:
     - text / bg            17.0:1 light · 13.2:1 dark
     - text-secondary / sfc  7.6:1 light ·  6.5:1 dark  (AAA)
     - accent / surface      5.25:1 light ·  6.3:1 dark (AA)
     - text-tertiary / sfc   5.0:1 light ·  4.7:1 dark  (AA large / body-dim)
   ───────────────────────────────────────────────────────────── */

:root {
  /* Surfaces */
  --bg-deep: #eef2f7;
  --bg: #f7f9fc;
  --surface: #ffffff;
  --surface-hover: #f3f5f9;
  --surface-raised: #ffffff;

  /* Accent (teal-700 on slate) */
  --accent: #0f766e;
  --accent-hover: #115e59;
  --accent-muted: rgba(15, 118, 110, 0.08);
  --accent-border: rgba(15, 118, 110, 0.25);

  /* Spotlight (amber — reserved for seller notes & client-safe highlights) */
  --gold: #b45309;
  --gold-muted: rgba(180, 83, 9, 0.08);

  /* Semantic status */
  --success: #047857;
  --success-bg: rgba(4, 120, 87, 0.08);
  --warning: #b45309;
  --warning-bg: rgba(180, 83, 9, 0.09);
  --error: #b91c1c;
  --error-bg: rgba(185, 28, 28, 0.07);
  --info: #1d4ed8;
  --info-bg: rgba(29, 78, 216, 0.07);

  /* Text */
  --text: #0b1324;
  --text-secondary: #475569;
  --text-tertiary: #64748b;

  /* Borders */
  --border: rgba(15, 23, 42, 0.09);
  --border-visible: rgba(15, 23, 42, 0.14);

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05);
  --shadow: 0 1px 3px rgba(15, 23, 42, 0.08), 0 1px 2px rgba(15, 23, 42, 0.04);
  --shadow-lg: 0 12px 30px rgba(15, 23, 42, 0.12), 0 4px 10px rgba(15, 23, 42, 0.06);
}

[data-theme="dark"] {
  --bg-deep: #020617;
  --bg: #0b1220;
  --surface: #111a2e;
  --surface-hover: #162038;
  --surface-raised: #1a2642;

  --accent: #2dd4bf;
  --accent-hover: #5eead4;
  --accent-muted: rgba(45, 212, 191, 0.12);
  --accent-border: rgba(45, 212, 191, 0.30);

  --gold: #fbbf24;
  --gold-muted: rgba(251, 191, 36, 0.10);

  --success: #34d399;
  --success-bg: rgba(52, 211, 153, 0.12);
  --warning: #fbbf24;
  --warning-bg: rgba(251, 191, 36, 0.12);
  --error: #f87171;
  --error-bg: rgba(248, 113, 113, 0.10);
  --info: #60a5fa;
  --info-bg: rgba(96, 165, 250, 0.10);

  --text: #e6ecf5;
  --text-secondary: #a3afc2;
  --text-tertiary: #6f7d94;

  --border: rgba(255, 255, 255, 0.07);
  --border-visible: rgba(255, 255, 255, 0.12);

  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 4px 12px rgba(0, 0, 0, 0.30);
  --shadow-lg: 0 12px 40px rgba(0, 0, 0, 0.45);
}
