:root{
/* --- Base: navy (seal ink, footer band) --- */
--navy-900:#01174a;--navy-800:#0e1d3f;--navy-700:#192445;--navy-600:#26325a;--navy-500:#3a4771;
/* --- Base: slate blue (seal ground, brand mid-tone) --- */
--slate-600:#3f4c6c;--slate-500:#546387;--slate-400:#6f7da0;--slate-300:#9aa4bf;--slate-200:#c8cedd;--slate-100:#e6e9f1;--slate-050:#f4f6fa;
/* --- Base: orange (shield + laurel accent) --- */
--orange-700:#a63f16;--orange-600:#c8501f;--orange-500:#ef6b35;--orange-400:#f58f63;--orange-200:#fbc7b1;--orange-100:#fde5da;
/* --- Base: neutral --- */
--white:#ffffff;--black:#0a0f1e;
/* --- Base: status --- */
--green-600:#2e7d5b;--green-100:#e2f1ea;--amber-600:#a8760a;--amber-100:#fbf0d6;--red-600:#b4351f;--red-100:#fbe4df;--blue-600:#3a6ea5;--blue-100:#e4eef7;

/* --- Semantic: text --- */
--text-heading:var(--navy-900);--text-body:var(--navy-700);--text-muted:var(--slate-500);--text-subtle:var(--slate-400);
--text-inverse:var(--white);--text-inverse-muted:rgba(255,255,255,.78);--text-accent:var(--orange-600);--text-on-accent:var(--white);
/* --- Semantic: surface --- */
--surface-page:var(--white);--surface-subtle:var(--slate-050);--surface-muted:var(--slate-100);--surface-card:var(--white);
--surface-inverse:var(--navy-900);--surface-band:var(--slate-500);--surface-accent:var(--orange-500);--surface-accent-soft:var(--orange-100);
--surface-scrim:rgba(1,23,74,.62);
/* --- Semantic: border --- */
--border-subtle:var(--slate-200);--border-strong:var(--slate-300);--border-accent:var(--orange-500);--border-inverse:rgba(255,255,255,.24);
--rule-hairline:1px;--rule-heavy:3px;
/* --- Semantic: interactive --- */
--action-primary:var(--orange-500);--action-primary-hover:var(--orange-600);--action-primary-active:var(--orange-700);
--action-secondary:var(--navy-900);--action-secondary-hover:var(--navy-700);
--link:var(--orange-600);--link-hover:var(--navy-900);--focus-ring:var(--orange-500);
/* --- Semantic: status --- */
--success:var(--green-600);--success-soft:var(--green-100);--warning:var(--amber-600);--warning-soft:var(--amber-100);
--danger:var(--red-600);--danger-soft:var(--red-100);--info:var(--blue-600);--info-soft:var(--blue-100);
}
