:root{
/* ── Base palette ─────────────────────────────────────────────
   Gold is sampled pixel-exact from the Camelot lion lockup. Navy is the lockup's
   #040B3B desaturated and lifted to #1A2340 — the original reads as saturated
   ultramarine on screen; the softer slate navy carries the quiet-luxury brief. */
--navy-900:#1A2340;/* brand navy, softened from the logo's #040B3B — see readme */
--navy-800:#222C4D;
--navy-700:#2C3760;
--navy-600:#3E4A78;
--navy-400:#7C86AB;
--navy-200:#C8CCDD;
--navy-100:#E1E4EE;
--navy-50:#F1F2F7;

--gold-700:#8A5407;/* the only gold that passes 4.5:1 on light ground */
--gold-600:#B8740A;
--gold-500:#FCA311;/* brand gold, sampled from logo */
--gold-400:#FDBB4E;
--gold-200:#FBE3B4;
--gold-100:#FDEFD2;
--gold-50:#FDF8EC;

--oxblood-800:#4A141A;
--oxblood-700:#5E1A20;
--oxblood-500:#7C2630;
--oxblood-200:#E8CFD1;
--oxblood-50:#FAF1F1;

--ink-900:#14161C;/* near-black tier for dense UI */
--ink-800:#23262E;
--ink-700:#333741;
--ink-600:#474C58;
--ink-500:#5A5F6B;
--ink-400:#878C98;
--ink-300:#B6BAC4;
--ink-200:#D9DCE3;
--ink-100:#ECEEF2;
--ink-50:#F5F6F9;

--parchment-400:#DED6C3;
--parchment-300:#E8E2D3;
--parchment-200:#F4F0E6;
--parchment-100:#FBF9F4;
--white:#FFFFFF;

--forest-600:#1F5D3F;
--forest-100:#E1EDE7;

/* ── Semantic aliases ───────────────────────────────────────── */
--text-display:var(--navy-900);
--text-strong:var(--navy-900);
--text-body:var(--ink-700);
--text-muted:var(--ink-500);
--text-faint:var(--ink-400);
--text-gold:var(--gold-700);
--text-link:var(--navy-700);
--text-link-hover:var(--gold-700);
--text-on-navy:var(--parchment-200);
--text-on-navy-muted:var(--navy-200);
--text-on-gold:var(--navy-900);

--surface-page:var(--parchment-100);
--surface-card:var(--white);
--surface-sunken:var(--ink-50);
--surface-raised:var(--white);
--surface-inverse:var(--navy-900);
--surface-inverse-soft:var(--navy-800);
--surface-accent-soft:var(--gold-50);
--surface-selected:var(--navy-50);
--surface-hover:var(--ink-50);

--border-hairline:var(--parchment-300);
--border-default:var(--ink-200);
--border-strong:var(--ink-300);
--border-inverse:rgba(244,240,230,.18);
--rule-gold:var(--gold-500);
--focus-ring:var(--navy-600);

--status-positive:var(--forest-600);
--status-positive-soft:var(--forest-100);
--status-caution:var(--gold-700);
--status-caution-soft:var(--gold-100);
--status-negative:var(--oxblood-500);
--status-negative-soft:var(--oxblood-50);
--status-neutral:var(--ink-500);
--status-neutral-soft:var(--ink-100);
}
