:root{color-scheme:light dark;
--color-bg:#fbfaf8;--color-fg:#1c1a17;--color-muted:#5d5852;--color-line:#e2ddd5;--color-card:#ffffff;--color-accent:#1f7a4d;--color-accent-fg:#ffffff;
--color-warning:#a4561a;--color-danger:#b91c1c;
--color-accent-soft:#e9f3ed;--color-warning-soft:#f8ede3;--color-danger-soft:#f9e8e6;--color-muted-soft:#f1eee9;
--surface-page:var(--color-bg);--surface-card:var(--color-card);--surface-raised:var(--color-card);--surface-input:var(--color-card);
--text-body:var(--color-fg);--text-muted:var(--color-muted);--text-link:var(--color-accent);--text-on-accent:var(--color-accent-fg);--text-warning:var(--color-warning);--text-danger:var(--color-danger);
--border-hairline:1px solid var(--color-line);--border-color:var(--color-line);--border-focus:var(--color-accent);
--action-primary:var(--color-accent);--action-primary-fg:var(--color-accent-fg);--action-primary-hover:#1a6841;
--focus-ring:0 0 0 3px var(--color-accent-soft);
--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
--text-xs:13px;--text-sm:15px;--text-base:17px;--text-lg:20px;--text-xl:24px;--text-2xl:30px;
--leading-body:1.6;--leading-tight:1.15;
--tracking-display:-0.02em;--tracking-heading:-0.01em;
--weight-regular:400;--weight-semibold:600;
--font-body:var(--weight-regular) var(--text-base)/var(--leading-body) var(--font-sans);--font-caps:var(--weight-semibold) var(--text-xs)/1.2 var(--font-sans);
--ease-standard:cubic-bezier(.2,0,0,1);}
@media (prefers-color-scheme:dark){:root{color-scheme:dark;
--color-bg:#14130f;--color-fg:#ece8e1;--color-muted:#a29b91;--color-line:#2e2b25;--color-card:#1c1a16;--color-accent:#5cc78d;--color-accent-fg:#14130f;
--color-warning:#e0a060;--color-danger:#f08a80;
--color-accent-soft:#1d2d24;--color-warning-soft:#2d2419;--color-danger-soft:#2f1d1b;--color-muted-soft:#232019;
--action-primary-hover:#6fd49c;}}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font:var(--font-body);text-wrap:pretty}
a{color:var(--text-link);text-decoration:underline;text-underline-offset:2px}
a:hover{color:var(--text-body)}
h1,h2,h3{margin:0;letter-spacing:var(--tracking-heading);line-height:var(--leading-tight);font-weight:var(--weight-semibold)}
h1{font-size:var(--text-2xl);letter-spacing:var(--tracking-display)}
h2{font-size:var(--text-lg)}
h3{font-size:var(--text-base)}
::selection{background:var(--color-accent);color:var(--color-accent-fg)}
:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}
