:root{
--plate:#FFFFFF;
--linen:#F5F4F0;
--board:#ECEAE4;
--cast-iron:#1A1A1A;
--pepper:#5F5E5A;
--paprika:#C8400D;
--paprika-soft:#FDEBE2;
--salt:#FAF9F6;
--seam:#E4E2DC;
--seam-strong:#D6D3CB;
--ash:#8C8A84;
--paprika-deep:#A93509;
--paprika-tint:#F8D5C4;
--tape:rgba(222,120,64,.24);
--tape-edge:rgba(222,120,64,.34);
--tape-ink:#8E3210;
--basil:#2E7D58;--basil-soft:#E2F2E9;
--brine:#2F5FC4;--brine-soft:#E7EEFB;
--saffron:#8F6410;--saffron-soft:#FBEFD6;
--chili:#B9302A;--chili-soft:#FBE4E1;
--surface-page:var(--plate);
--surface-sidebar:var(--linen);
--surface-sunken:var(--linen);
--surface-card:var(--plate);
--surface-placeholder:var(--board);
--surface-raised:var(--plate);
--surface-inverse:var(--cast-iron);
--text-strong:var(--cast-iron);
--text-body:var(--cast-iron);
--text-muted:var(--pepper);
--text-faint:var(--ash);
--text-inverse:var(--plate);
--text-accent:var(--paprika);
--border-subtle:var(--seam);
--border-default:var(--seam-strong);
--border-strong:var(--cast-iron);
--accent:var(--paprika);
--accent-hover:var(--paprika-deep);
--accent-soft:var(--paprika-soft);
--action-primary:var(--cast-iron);
--action-primary-hover:#333331;
--focus-ring:rgba(200,64,13,.35);
--overlay:rgba(26,26,26,.32);
}
[data-theme="dark"]{
--surface-page:#111111;
--surface-sidebar:#161615;
--surface-sunken:#1A1A19;
--surface-card:#1A1A19;
--surface-placeholder:#242422;
--surface-raised:#222220;
--surface-inverse:#F5F4F0;
--text-strong:#F5F4F0;
--text-body:#E9E7E1;
--text-muted:#A3A19B;
--text-faint:#76746F;
--text-inverse:#111111;
--text-accent:#E5622F;
--border-subtle:#262624;
--border-default:#34332F;
--border-strong:#F5F4F0;
--accent:#D9501C;
--accent-hover:#E5622F;
--accent-soft:#3A1E12;
--action-primary:#F5F4F0;
--action-primary-hover:#FFFFFF;
--overlay:rgba(0,0,0,.6);
--tape:rgba(229,98,47,.22);
--tape-edge:rgba(229,98,47,.32);
--tape-ink:#F2A585;
}
:root{
--font-ui:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
--font-body:var(--font-ui);
--font-heading:'Bricolage Grotesque','Inter',system-ui,sans-serif;
--font-display:var(--font-heading);
--font-mono:'IBM Plex Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;
--font-wordmark:var(--font-heading);
--text-2xs:11px;
--text-xs:12px;
--text-sm:13px;
--text-base:14px;
--text-md:15px;
--text-lg:17px;
--text-xl:20px;
--text-2xl:24px;
--text-3xl:32px;
--text-4xl:44px;
--text-5xl:64px;
--text-6xl:88px;
--weight-regular:400;
--weight-medium:500;
--weight-semibold:600;
--weight-bold:700;
--leading-tight:1.1;
--leading-snug:1.25;
--leading-normal:1.45;
--leading-relaxed:1.6;
--tracking-display:-0.035em;
--tracking-heading:-0.02em;
--tracking-normal:0;
--tracking-label:0.09em;
--tracking-wordmark:0.06em;
--type-display:700 var(--text-5xl)/1.02 var(--font-heading);
--type-h2:700 36px/1.1 var(--font-heading);
--type-h3:500 18px/1.3 var(--font-heading);
--type-page-title:700 var(--text-3xl)/1.05 var(--font-heading);
--type-section-title:600 var(--text-2xl)/1.2 var(--font-heading);
--type-card-title:600 var(--text-md)/1.3 var(--font-heading);
--type-body:400 var(--text-base)/var(--leading-normal) var(--font-ui);
--type-body-long:400 16px/1.6 var(--font-ui);
--type-label:500 var(--text-sm)/var(--leading-snug) var(--font-ui);
--type-label-mono:500 11px/1.2 var(--font-mono);
--type-meta:400 var(--text-sm)/var(--leading-snug) var(--font-mono);
}
:root{
--radius-xs:4px;
--radius-sm:6px;
--radius-md:8px;
--radius-lg:12px;
--radius-xl:16px;
--radius-2xl:24px;
--radius-pill:999px;
--border-hair:1px solid var(--border-subtle);
--border-control:1px solid var(--border-default);
--shadow-none:none;
--shadow-xs:0 1px 2px rgba(26,26,26,.05);
--shadow-sm:0 1px 2px rgba(26,26,26,.05),0 2px 6px rgba(26,26,26,.04);
--shadow-md:0 2px 4px rgba(26,26,26,.04),0 8px 24px rgba(26,26,26,.08);
--shadow-lg:0 4px 8px rgba(26,26,26,.04),0 20px 48px rgba(26,26,26,.14);
--shadow-focus:0 0 0 3px var(--focus-ring);
}
:root{
--space-0:0;
--space-px:1px;
--space-0-5:2px;
--space-1:4px;
--space-1-5:6px;
--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;
--space-32:128px;
--sidebar-width:208px;
--rail-width:320px;
--content-max:1280px;
--site-max:1200px;
--page-gutter:40px;
--grid-gap:16px;
--control-h-sm:28px;
--control-h-md:36px;
--control-h-lg:44px;
}
:root{
--ease-set:cubic-bezier(.2,.7,.2,1);
--ease-lift:cubic-bezier(.4,0,1,1);
--ease-move:cubic-bezier(.45,0,.2,1);
--dur-instant:80ms;
--dur-quick:140ms;
--dur-base:200ms;
--dur-calm:320ms;
--dur-slow:520ms;
--stagger:40ms;
--set-distance:6px;
}
@media (prefers-reduced-motion:reduce){:root{--dur-quick:0ms;--dur-base:0ms;--dur-calm:0ms;--dur-slow:0ms;--set-distance:0px}}
