:root{--bg:#fffdf7;--ink:#16171a;--muted:#6f6a5f;--faint:#8a857a;--line:#ece7db;--surface:#fff;--bg-blur:#fffdf7db;--quote:#2e2e2a;--link:#be4270;--link-hover:var(--ink);--logo-filter:grayscale(1);--logo-hover:none;--w-poppy:#e2513a;--w-clay:#9c6b47;--w-ochre:#e0973f;--w-mustard:#e4b13c;--w-olive:#aebb55;--w-sage:#5e9a63;--w-teal:#2f8b9e;--w-sky:#3d8dc4;--w-indigo:#3d5a9e;--w-slate:#5f7392;--w-lilac:#8e8bc9;--w-plum:#7e68a6;--w-pink:#d14d82;--state-ready:#3f6b4a;--state-building:#e2513a;--state-exploring:#d14d82;--state-draft:#8a857a;--fg:var(--ink);--panel:var(--surface);--accent:var(--link);--focus:var(--link);--font-sans:"Mg12", system-ui, -apple-system, sans-serif;--font-serif:"Novela", Georgia, serif;--font-display:"Novela Display", Georgia, serif;--text-xs:clamp(.75rem, .72rem + .15vw, .8125rem);--text-sm:clamp(.8125rem, .78rem + .18vw, .875rem);--text-base:clamp(1rem, .96rem + .2vw, 1.0625rem);--text-lg:clamp(1.125rem, 1.05rem + .4vw, 1.25rem);--text-xl:clamp(1.375rem, 1.2rem + .9vw, 1.75rem);--text-2xl:clamp(1.75rem, 1.4rem + 1.8vw, 2.5rem);--text-3xl:clamp(2.25rem, 1.7rem + 2.8vw, 3.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--radius:12px;--radius-sm:8px;--radius-pill:20px;--measure:68ch;--content-max:720px;--wide-max:1080px;--reveal:.42s;--ease:cubic-bezier(.22, .61, .36, 1);color-scheme:light}:root[data-theme=dark]{--bg:#232019;--ink:#f2eee3;--muted:#b8b2a3;--faint:#948d7d;--line:#37332b;--surface:#2a2620;--bg-blur:#232019e6;--quote:#ded8ca;--link:#de8fad;--link-hover:var(--ink);--logo-filter:grayscale(1) brightness(0) invert(1);--logo-hover:grayscale(1) brightness(0) invert(1);--state-draft:#948d7d;color-scheme:dark}:root{--t-lab-display:400 clamp(40px, 5.2vw, 64px)/1.04 "Novela Display", Georgia, serif;--t-lab-lede:400 clamp(18px, 1.6vw, 22px)/1.5 "Novela", Georgia, serif;--t-lab-prose:400 clamp(16.5px, .9vw + 6px, 19px)/1.62 "Novela", Georgia, serif;--t-lab-head:500 clamp(21px, 1.9vw, 26px)/1.2 "Mg12", system-ui, sans-serif;--t-lab-title:500 16px/1.3 "Mg12", system-ui, sans-serif;--t-lab-body:400 14px/1.6 "Mg12", system-ui, sans-serif;--rail-w:17rem;--bp-rail:900px;--topbar-h:51px}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100vh;color:var(--fg);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6;transition:background-color .3s,color .3s}h1,h2,h3{letter-spacing:-.015em;font-weight:600;line-height:1.15}h1{font-size:var(--text-3xl);margin:0 0 var(--space-4)}h2{font-size:var(--text-2xl);margin:0 0 var(--space-3)}h3{font-size:var(--text-xl);margin:0 0 var(--space-3)}p{margin:0 0 var(--space-4)}ul,ol{margin:0 0 var(--space-4);padding-left:1.3em}li{margin:.35em 0}blockquote{margin:0 0 var(--space-4);padding:var(--space-2) var(--space-4);border-left:2px solid var(--line);color:var(--muted);font-style:italic}hr{border:0;border-top:1px solid var(--line);margin:var(--space-6) 0}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--ink)}img{max-width:100%;height:auto}.wrap{max-width:var(--content-max);padding-inline:var(--space-5);margin-inline:auto}.wrap-wide{max-width:var(--wide-max);padding-inline:var(--space-5);margin-inline:auto}.page{padding-block:var(--space-6) var(--space-8)}.prose{font-size:var(--text-lg)}.prose>:first-child{margin-top:0}.prose h2{font-size:var(--text-xl);margin-top:var(--space-6)}.prose h3{font-size:var(--text-lg);margin-top:var(--space-5)}code{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9em}pre{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);padding:var(--space-4);overflow-x:auto}pre code{background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}
