:root{
--font-ui:'Geist',system-ui,-apple-system,sans-serif;
--font-mono:'Geist Mono',ui-monospace,'SFMono-Regular',monospace;
/* ═══ Repo type scale (theme.css --text-*): role tiers; weight/color applied per use ═══ */
--text-display-xl:400 64px/70px var(--font-ui);
--text-display-lg:400 60px/66px var(--font-ui);
--text-display-md:400 44px/48px var(--font-ui);
--text-heading-1:600 32px/38px var(--font-ui);
--text-heading-2:600 20px/26px var(--font-ui);
--text-heading-3:600 18px/25px var(--font-ui);
--text-body-lg:400 18px/25px var(--font-ui);
--text-body-md:400 16px/23px var(--font-ui);
--text-body-xs:400 13px/19px var(--font-ui);
--text-code:400 13px/20.8px var(--font-mono);
--text-label:400 14px/20px var(--font-ui);
--text-caption:400 12px/16px var(--font-ui);
--text-footnote:400 11px/16px var(--font-ui);
/* Control-internal text (walled to controls: input/button/select internals only) */
--text-control-sm:400 13px/normal var(--font-ui);
--text-control-md:400 14px/normal var(--font-ui);
--text-control-lg:400 15px/normal var(--font-ui);
/* ═══ Compat roles (earlier names in this project) ═══ */
--text-display-h3:var(--text-heading-1);
--text-h4:var(--text-heading-2);
--text-h5:var(--text-heading-3);
--text-body-sm:var(--text-label);
--text-nav:500 14px/20px var(--font-ui);
--text-tiny:var(--text-footnote);
--text-page-title:600 18px/25px var(--font-ui);
--text-stat-value:600 20px/26px var(--font-ui);
--text-stat-label:400 14px/20px var(--font-ui);
--text-table-header:400 12px/16px var(--font-ui);
--text-table-cell:400 12px/16px var(--font-ui);
--text-card-title:600 14px/20px var(--font-ui);
}
body{font-family:var(--font-ui);color:var(--text-body);-webkit-font-smoothing:antialiased}
