/* =============================================================================
   Agentics — tokens.css  (single source of truth, per FRONTEND-UI-OVERHAUL-SPEC §3)
   Aurora Control Plane. Sovereign. Provable. Calm.
   Load order:  tokens.css → site.css → (page CSS).  Never redefine a token below.
   Fonts are loaded ONCE here so pages do not double-load Inter/JetBrains/Space Mono.
   ============================================================================= */

@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap");

/* ---------------------------------------------------------------------------
   1. DARK THEME (default)
   --------------------------------------------------------------------------- */
:root,
[data-theme="dark"]{
  /* ---- surfaces (from the locked --ag-* set) ---- */
  --bg:        #04040a;   /* page canvas */
  --bg-well:   #04040a;   /* inset code/ledger wells (== bg, framed by a border) */
  --surface:   #0d0e15;   /* default card */
  --elev-2:    #11131c;   /* raised card / popover / mega-menu column */
  --elev-3:    #171a26;   /* modal / drawer / mega-menu panel */

  /* ---- ink (warm ramp, 4 steps) ---- */
  --ink:       #F0EFEA;   /* primary text */
  --ink-dim:   #AEB1C6;   /* secondary */
  --ink-mute:  #8A8DA6;   /* tertiary — raised from #71748A for WCAG AA (§9) */
  --ink-faint: #606479;   /* disabled only — never body text */

  /* ---- brand: ONE accent (aurora violet) ---- */
  --accent:        #B69CFF;            /* brand + all interactivity */
  --accent-strong: #C9B6FF;            /* hover */
  --accent-deep:   #7C5CFF;            /* pressed / gradient end */
  --accent-glow:   rgba(182,156,255,.45);
  --accent-soft:   rgba(182,156,255,.14);

  /* ---- signal spectrum: STATUS / DATA ONLY, never decoration ---- */
  --info:    #7AD8FF; --info-glow:    rgba(122,216,255,.40);
  --success: #6FE3C0; --success-glow: rgba(111,227,192,.40);
  --warn:    #FFB87A; --warn-glow:    rgba(255,184,122,.40);
  --danger:  #FF7A92; --danger-glow:  rgba(255,122,146,.45);
  --proof:   #B69CFF;                  /* "verified / anchored" == accent (semantic alias) */

  /* ---- lines ---- */
  --line:    rgba(255,255,255,.085);   /* default hairline */
  --line-2:  rgba(255,255,255,.05);    /* faintest */
  --line-3:  rgba(255,255,255,.13);    /* emphasized / focus-adjacent */

  /* ---- gradients ---- */
  --grad-brand:  linear-gradient(100deg, #7AD8FF 0%, #B69CFF 52%, #FFB87A 100%); /* headline clip */
  --grad-accent: linear-gradient(135deg, #B69CFF 0%, #7C5CFF 100%);             /* primary button */
  --grad-proof:  linear-gradient(90deg, rgba(182,156,255,0) 0%, #B69CFF 60%, #7AD8FF 100%); /* mesh shimmer */
  --grad-mask-r: linear-gradient(to right, #04040a 0%, transparent 8%, transparent 92%, #04040a 100%); /* marquee edge fade */

  /* ---- elevation: whisper-soft, layered hairline + ambient ---- */
  --sh-1: 0 1px 0 rgba(255,255,255,.03) inset, 0 1px 2px rgba(0,0,0,.4);
  --sh-2: 0 1px 0 rgba(255,255,255,.04) inset, 0 12px 32px -20px rgba(0,0,0,.85);
  --sh-3: 0 1px 0 rgba(255,255,255,.05) inset, 0 28px 60px -28px rgba(0,0,0,.9);
  --glow-accent:  0 0 0 1px rgba(182,156,255,.30), 0 0 28px rgba(182,156,255,.20);
  --glow-success: 0 0 0 1px rgba(111,227,192,.25), 0 0 24px rgba(111,227,192,.16);

  color-scheme: dark;
}

/* ---------------------------------------------------------------------------
   2. LIGHT / PRINT THEME (board reports & auditor binders)
   --------------------------------------------------------------------------- */
[data-theme="light"]{
  --bg:        #FBFAF7;   /* warm paper, not pure white */
  --bg-well:   #11131c;   /* code/ledger STAY dark in light theme (instrument cue) */
  --surface:   #FFFFFF;
  --elev-2:    #FFFFFF;
  --elev-3:    #FFFFFF;

  --ink:       #1A1B2E;
  --ink-dim:   #4A4D63;
  --ink-mute:  #6B6E85;
  --ink-faint: #9A9DB2;

  --accent:        #6C4CF0;  /* darker violet for AA on white */
  --accent-strong: #5A3CE0;
  --accent-deep:   #4A2CD0;
  --accent-glow:   rgba(108,76,240,.30);
  --accent-soft:   rgba(108,76,240,.10);

  --info:    #1E78C8; --info-glow:    rgba(30,120,200,.25);
  --success: #128A6A; --success-glow: rgba(18,138,106,.22);
  --warn:    #B26A1E; --warn-glow:    rgba(178,106,30,.22);
  --danger:  #C8324C; --danger-glow:  rgba(200,50,76,.25);
  --proof:   #6C4CF0;

  --line:    rgba(20,21,40,.10);
  --line-2:  rgba(20,21,40,.06);
  --line-3:  rgba(20,21,40,.16);

  --grad-brand:  linear-gradient(100deg, #5A3CE0 0%, #6C4CF0 55%, #C76A2E 100%);
  --grad-accent: linear-gradient(135deg, #6C4CF0 0%, #4A2CD0 100%);

  --sh-1: 0 1px 2px rgba(20,21,40,.06);
  --sh-2: 0 4px 16px rgba(20,21,40,.08);
  --sh-3: 0 18px 48px rgba(20,21,40,.12);
  --glow-accent:  0 0 0 1px rgba(108,76,240,.30), 0 0 20px rgba(108,76,240,.14);
  --glow-success: 0 0 0 1px rgba(18,138,106,.25);

  color-scheme: light;
}

/* ---------------------------------------------------------------------------
   3. TYPOGRAPHY, SPACING, RADIUS, MOTION, Z-INDEX  (theme-independent)
   --------------------------------------------------------------------------- */
:root{
  /* ---- font families. FIX the --brand font-vs-color collision:
         font  → --font-brand ;  color → --accent (above). ---- */
  --font-sans:  'Inter', -apple-system, 'Segoe UI', system-ui, sans-serif;
  --font-mono:  'JetBrains Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  --font-brand: 'Space Mono', var(--font-mono);   /* eyebrows, wordmark, stat numbers */

  /* ---- type scale (rem, base 16px) ---- */
  --t-display: clamp(2.25rem, 1.2rem + 4.2vw, 4rem);   /* hero H1, 64px cap */
  --t-h1:      clamp(2rem, 1.4rem + 2.4vw, 3rem);      /* page title, 48px cap */
  --t-h2:      clamp(1.65rem, 1.2rem + 1.6vw, 2.25rem);/* section head, 36px cap */
  --t-h3:      1.5rem;     /* card / sub-head */
  --t-h4:      1.25rem;    /* minor head */
  --t-lead:    1.25rem;    /* hero subhead / intro */
  --t-body:    1rem;       /* body */
  --t-sm:      0.875rem;   /* dense UI, table cells */
  --t-xs:      0.75rem;    /* captions, meta */
  --t-eyebrow: 0.6875rem;  /* Space Mono uppercase eyebrow */
  --t-stat:    clamp(3rem, 2rem + 3.6vw, 4.5rem);      /* count-up stat, 72px cap */
  --t-hash:    0.8125rem;  /* JetBrains Mono hashes / code */

  --lh-tight:  1.02;
  --lh-snug:   1.2;
  --lh-body:   1.6;

  --tr-display: -0.03em;
  --tr-head:    -0.025em;
  --tr-eyebrow: 0.18em;

  /* ---- spacing scale (4px base) ---- */
  --s-1:4px;  --s-2:8px;   --s-3:12px; --s-4:16px; --s-5:20px; --s-6:24px;
  --s-8:32px; --s-10:40px; --s-12:48px; --s-14:56px; --s-16:64px; --s-20:80px;
  --s-24:96px; --s-30:120px;
  --section-y:    var(--s-24);   /* desktop section rhythm */
  --section-y-sm: var(--s-14);   /* mobile section rhythm */

  /* ---- radius ---- */
  --r-xs:6px; --r-sm:9px; --r:14px; --r-lg:20px; --r-pill:999px;

  /* ---- motion ---- */
  --dur-1:120ms; --dur-2:200ms; --dur-3:320ms; --dur-4:560ms;
  --ease:        cubic-bezier(.22,.61,.36,1);    /* standard ease-out */
  --ease-inout:  cubic-bezier(.65,.05,.36,1);
  --ease-spring: cubic-bezier(.34,1.56,.64,1);   /* pop */

  /* ---- z-index (single ladder) ---- */
  --z-atmos:-2; --z-base:0; --z-rail:40; --z-topbar:50; --z-dropdown:60;
  --z-drawer:70; --z-modal:80; --z-cmdk:90; --z-toast:100;

  /* ---- layout widths ---- */
  --w-container: 1200px;
  --w-measure:   720px;
  --w-console:   1320px;

  /* ---- breakpoints (documentary — used via @media literals) ---- */
  --bp-sm: 640px; --bp-md: 900px; --bp-lg: 1200px; --bp-xl: 1320px;
}

/* ---------------------------------------------------------------------------
   4. BACK-COMPAT ALIASES (one release; remove in Phase 5)
   So existing .e-* / .p-* / --ag-* pages do not break mid-migration.
   --------------------------------------------------------------------------- */
:root{
  --ag-bg:var(--bg); --ag-surface:var(--surface); --ag-elev-2:var(--elev-2); --ag-elev-3:var(--elev-3);
  --ag-purple:var(--accent); --violet:var(--accent);
  --ag-blue:var(--info); --brand-2:var(--info);
  --ag-green:var(--success); --good:var(--success);
  --ag-amber:var(--warn); --ag-red:var(--danger); --bad:var(--danger);
  --ag-ink:var(--ink); --tx:var(--ink); --tx-dim:var(--ink-dim); --tx-mute:var(--ink-mute); --tx-faint:var(--ink-faint);
  --ag-glow-purple:var(--accent-glow); --ag-glow-blue:var(--info-glow);
  --ag-glow-green:var(--success-glow); --ag-glow-amber:var(--warn-glow); --ag-glow-red:var(--danger-glow);
  --panel:var(--surface); --panel-2:var(--elev-2); --radius:var(--r);
  --mono:var(--font-mono); --sans:var(--font-sans);
  --sh:var(--sh-2);
  --maxw:var(--w-container);
}

/* ---------------------------------------------------------------------------
   5. PREFERENCE OVERRIDES
   --------------------------------------------------------------------------- */
@media (prefers-reduced-transparency: reduce){
  :root{ --line:rgba(255,255,255,.12); }
}
@media print{
  :root{ --bg:#FBFAF7; }
}
