:root{
/* Ink — deep navy, near-black blue. Primary brand colour. */
--ink-900:#0A0F28;--ink-800:#10183A;--ink-700:#19234D;--ink-600:#253164;--ink-500:#38447A;
/* Blue — institutional deep blue. Links, focus, data, brand tints. */
--blue-700:#1A2F73;--blue-600:#213D94;--blue-500:#2F51B8;--blue-400:#6B85D1;--blue-200:#C7D2F0;--blue-100:#E8EDF9;
/* Violet — deep purple. Secondary brand surface and the single accent. */
--violet-900:#1A1238;--violet-800:#251A52;--violet-700:#35256F;--violet-600:#4A338F;--violet-500:#6548B0;--violet-400:#8B72CC;--violet-300:#AE9FDB;--violet-200:#D6CDEE;--violet-100:#EFEBF9;
/* Slate — cool neutrals for structure and secondary text */
--slate-500:#5B6773;--slate-400:#7D8896;--slate-300:#A7B0BA;--slate-200:#CBD2D9;--slate-100:#E4E8EC;--slate-050:#EFF2F4;
/* Paper — warm document whites */
--paper-000:#FFFFFF;--paper-050:#F8F7F4;--paper-100:#F0EEE9;--paper-200:#E5E2DA;
/* Status */
--verified-600:#25583F;--verified-500:#2F6B4F;--verified-100:#E2EDE7;
--caution-600:#8F5A12;--caution-500:#B0721A;--caution-100:#F6EBD9;
--alert-600:#872626;--alert-500:#A32E2E;--alert-100:#F6E4E4;
--steel-600:#2A4E68;--steel-500:#35607F;--steel-100:#E3EBF1;

/* Semantic aliases — prefer these in components */
--text-primary:var(--ink-900);--text-body:var(--ink-700);--text-secondary:var(--slate-500);
--text-muted:var(--slate-400);--text-inverse:var(--paper-050);--text-accent:var(--violet-600);
--text-link:var(--blue-600);--text-brand:var(--blue-700);--text-violet:var(--violet-600);--text-link-hover:var(--ink-900);
--surface-page:var(--paper-050);--surface-card:var(--paper-000);--surface-sunken:var(--paper-100);
--surface-ink:var(--ink-900);--surface-ink-raised:var(--ink-700);--surface-accent-tint:var(--violet-100);
--surface-violet:var(--violet-800);--surface-violet-raised:var(--violet-700);--surface-brand-tint:var(--blue-100);--surface-violet-tint:var(--violet-100);
--border-hairline:#E2E0DA;--border-subtle:var(--paper-200);--border-strong:var(--slate-300);
--border-ink:var(--ink-900);--border-accent:var(--violet-500);--border-inverse:#2A3563;--border-inverse-violet:#3F3170;--border-brand:var(--blue-500);
--accent:var(--violet-500);--accent-hover:var(--violet-600);--accent-press:var(--violet-700);--text-on-accent:var(--paper-000);
--focus-ring:var(--blue-500);
--status-verified-fg:var(--verified-600);--status-verified-bg:var(--verified-100);
--status-caution-fg:var(--caution-600);--status-caution-bg:var(--caution-100);
--status-alert-fg:var(--alert-600);--status-alert-bg:var(--alert-100);
--status-open-fg:var(--steel-600);--status-open-bg:var(--steel-100);
--overlay-scrim:rgba(10,15,40,.62);
}
