/* ===== design tokens ===== */
:root{
--navy-900:#050A2C;
--navy-800:#0B1440;
--blue-600:#1D4ED8;
--blue-500:#3B63E8;
--blue-100:#E4EBFC;
--white:#FFFFFF;
--gray-100:#F5F7FA;
--gray-300:#E2E5EB;
--gray-500:#6B7280;
--gray-700:#374151;
--green-600:#16A34A;
--green-100:#E7F7ED;
--red-600:#DC2626;
--red-100:#FDE9E9;

--bg-page:var(--white);
--bg-surface:var(--white);
--bg-sunken:var(--gray-100);
--bg-inverse:var(--navy-900);
--bg-brand:var(--blue-600);
--bg-brand-hover:#1A43BE;
--bg-brand-press:#163897;

--text-primary:var(--navy-900);
--text-secondary:var(--gray-500);
--text-inverse:var(--white);
--text-brand:var(--blue-600);
--text-success:var(--green-600);
--text-danger:var(--red-600);

--border-default:var(--gray-300);
--border-strong:var(--navy-900);
--border-focus:var(--blue-600);

--accent-success-bg:var(--green-100);
--accent-success-fg:var(--green-600);
--accent-danger-bg:var(--red-100);
--accent-danger-fg:var(--red-600);
--accent-info-bg:var(--blue-100);
--accent-info-fg:var(--blue-600);

--font-display:'Plus Jakarta Sans Display',system-ui,sans-serif;
--font-logo:'Plus Jakarta Sans Display',system-ui,sans-serif;
--font-body:'Plus Jakarta Sans Text','Inter',system-ui,sans-serif;

--text-hero:56px;
--text-h1:40px;
--text-h2:32px;
--text-h3:24px;
--text-h4:20px;
--text-body-lg:18px;
--text-body:16px;
--text-body-sm:14px;
--text-caption:12px;

--leading-tight:1.1;
--leading-snug:1.25;
--leading-normal:1.5;
--leading-relaxed:1.6;

--weight-light:300;
--weight-regular:400;
--weight-medium:500;
--weight-bold:700;

--space-1:4px;
--space-2:8px;
--space-3:12px;
--space-4:16px;
--space-5:20px;
--space-6:24px;
--space-8:32px;
--space-10:40px;
--space-12:48px;
--space-16:64px;
--space-20:80px;
--space-24:96px;

--radius-sm:8px;
--radius-md:12px;
--radius-lg:20px;
--radius-xl:28px;
--radius-pill:999px;

--shadow-sm:0 1px 2px rgba(5,10,44,0.06),0 1px 3px rgba(5,10,44,0.08);
--shadow-md:0 4px 12px rgba(5,10,44,0.08),0 2px 4px rgba(5,10,44,0.06);
--shadow-lg:0 12px 32px rgba(5,10,44,0.12),0 4px 8px rgba(5,10,44,0.06);
--shadow-focus:0 0 0 3px rgba(29,78,216,0.25);

--container-max:1120px;
}
