/* Victory Archery — color tokens. Base values first, then semantic aliases.
   Dark is the default theme; .vx-light / [data-theme="light"] flips the aliases. */
:root{
/* Victory red — PMS 186. CTAs, accents, active states ONLY. */
--red-500:#C8102E;
--red-600:#A50D26;
--red-700:#860A1F;
--red-400:#F0475A; /* red TEXT on dark surfaces (AA 5.2:1 on carbon-950) */
--red-logo:#C4161C; /* sampled from logo; reference only, never re-color the logo */
/* Carbon scale */
--carbon-1000:#08090A;
--carbon-950:#0E0F11;
--carbon-900:#16181B;
--carbon-850:#1C1F23;
--carbon-800:#24272C;
--carbon-700:#33373D;
--carbon-600:#4A4F57;
--carbon-500:#6B717A;
--carbon-400:#8E949C;
--carbon-300:#B4B9C0;
--carbon-200:#D5D8DC;
--carbon-100:#E9EBED;
--carbon-50:#F4F5F6;
--white:#FFFFFF;
--paper:#F4F4F2; /* light neutral for spec tables and long-form reading */
/* Product tier accents — sampled from shaft graphics (VX27 gold band, HLR/VX27 silver). Sparingly. */
--gold-400:#CCA649;
--gold-700:#7D5F14; /* gold text on light */
--silver-300:#C9D1DD;
--silver-600:#5F6670; /* silver text on light */
/* Semantic — dark-surface (fg) and light-surface (ink) variants */
--success-fg:#3CC27A; --success-ink:#1B6E40; --success-tint-dark:rgba(60,194,122,.12); --success-tint-light:#E6F4EC;
--warning-fg:#F0B429; --warning-ink:#8A5A00; --warning-tint-dark:rgba(240,180,41,.12); --warning-tint-light:#FBF1DC;
--error-fg:#FF7466;  --error-ink:#B42318;  --error-tint-dark:rgba(255,116,102,.12); --error-tint-light:#FBE9E7;
--info-fg:#6CB4F0;   --info-ink:#1D5B94;   --info-tint-dark:rgba(108,180,240,.12); --info-tint-light:#E6F0FA;

/* ---- Semantic aliases (dark default) ---- */
--surface-page:var(--carbon-950);
--surface-1:var(--carbon-900);
--surface-2:var(--carbon-850);
--surface-3:var(--carbon-800);
--surface-sunken:var(--carbon-1000);
--surface-inverse:var(--paper);
--surface-overlay:rgba(8,9,10,.72);
--text-primary:var(--white);
--text-secondary:var(--carbon-200);
--text-muted:var(--carbon-400);
--text-disabled:var(--carbon-500);
--text-inverse:var(--carbon-950);
--text-on-accent:var(--white);
--text-accent:var(--red-400);
--text-link:var(--white);
--text-gold:var(--gold-400);
--text-silver:var(--silver-300);
--border-subtle:rgba(255,255,255,.08);
--border-default:rgba(255,255,255,.14);
--border-strong:var(--carbon-500);
--accent:var(--red-500);
--accent-hover:var(--red-600);
--accent-pressed:var(--red-700);
--accent-line:var(--red-500);
--focus-color:var(--white);
--success:var(--success-fg); --success-tint:var(--success-tint-dark);
--warning:var(--warning-fg); --warning-tint:var(--warning-tint-dark);
--error:var(--error-fg);     --error-tint:var(--error-tint-dark);
--info:var(--info-fg);       --info-tint:var(--info-tint-dark);
--disabled-bg:var(--carbon-800);
}
.vx-light{
--surface-page:var(--white);
--surface-1:var(--paper);
--surface-2:var(--carbon-50);
--surface-3:var(--carbon-100);
--surface-sunken:var(--carbon-100);
--surface-inverse:var(--carbon-950);
--text-primary:var(--carbon-950);
--text-secondary:var(--carbon-700);
--text-muted:var(--carbon-600);
--text-disabled:var(--carbon-500);
--text-inverse:var(--white);
--text-accent:var(--red-500);
--text-link:var(--carbon-950);
--text-gold:var(--gold-700);
--text-silver:var(--silver-600);
--border-subtle:rgba(14,15,17,.08);
--border-default:rgba(14,15,17,.16);
--border-strong:var(--carbon-400);
--focus-color:var(--carbon-950);
--success:var(--success-ink); --success-tint:var(--success-tint-light);
--warning:var(--warning-ink); --warning-tint:var(--warning-tint-light);
--error:var(--error-ink);     --error-tint:var(--error-tint-light);
--info:var(--info-ink);       --info-tint:var(--info-tint-light);
--disabled-bg:var(--carbon-100);
color:var(--text-primary);
}
