:root{color-scheme:light dark;--bg:light-dark(#f4f1ea,#14120f);--fg:light-dark(#16130f,#ece6da);--muted:light-dark(#6b6458,#a39a8a);--border:light-dark(#d9d2c3,#3a342b);--surface:light-dark(#fbf9f4,#1c1915);--ink:light-dark(#16130f,#ece6da);--accent:light-dark(#c63a12,#ff6a3d);--accent-fg:light-dark(#fff8f2,#14120f);--star:light-dark(#f2a516,#f5b638);--danger:light-dark(#b42318,#ff7a66);--positive:light-dark(#2f7d4f,#7fd1a0);--serif:var(--font-serif);--sans:var(--font-sans);--mono:var(--font-mono);--radius:6px}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--fg);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0;transition:background-color .25s,color .25s}::selection{background:var(--accent);color:var(--accent-fg)}h1,h2,h3{line-height:1.15}h1,h2{font-family:var(--serif);letter-spacing:-.01em;font-weight:400}h1{font-size:clamp(40px,7vw,76px)}h2{font-size:clamp(30px,4.5vw,44px)}h3{font-size:18px;font-weight:600}em{font-style:italic}h1 em,h2 em{color:var(--accent)}a{color:var(--fg);text-decoration-color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent)}code,pre{font-family:var(--mono);font-size:.88em}:not(pre)>code{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:1px 5px}pre{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;line-height:1.55;overflow-x:auto}table{border-collapse:collapse;width:100%;margin:16px 0;font-size:15px}th{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:500}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 8px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{max-width:1120px;margin:0 auto;padding:0 16px}.nav{justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px;display:flex}.nav nav{align-items:center;gap:18px;display:flex}.nav-link{white-space:nowrap;font-size:15px;text-decoration:none}.nav-link[aria-current=page]{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px}.brand,.footer-brand{font-family:var(--mono);color:var(--fg);white-space:nowrap;font-size:17px;font-weight:500;text-decoration:none}.brand-star{color:var(--star);margin-right:6px;transition:transform .4s;display:inline-block}.brand:hover .brand-star{transform:rotate(72deg)}.brand-slash{color:var(--accent)}.lang{position:relative}.lang summary{cursor:pointer;white-space:nowrap;font:500 13px var(--mono);border-radius:4px;padding:4px 6px;list-style:none}.lang summary::-webkit-details-marker{display:none}.lang summary:after{content:" ▾";color:var(--muted)}.lang summary:hover{color:var(--accent)}.lang ul{z-index:10;background:var(--surface);border:1px solid var(--ink);border-radius:var(--radius);min-width:150px;box-shadow:4px 4px 0 var(--ink);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);right:0}.lang a{border-radius:4px;padding:6px 10px;font-size:14px;text-decoration:none;display:block}.lang a:hover{background:var(--bg)}.lang a[aria-current=true]{color:var(--accent)}.theme{cursor:pointer;width:32px;height:32px;color:var(--fg);background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;transition:border-color .2s,transform .4s;display:grid}.theme:hover{border-color:var(--border);transform:rotate(-20deg)}.icon-sun{display:none}:root[data-theme=dark] .icon-sun{display:block}:root[data-theme=dark] .icon-moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .icon-sun{display:block}:root:not([data-theme=light]) .icon-moon{display:none}}@media (width<=640px){.nav{flex-wrap:wrap;row-gap:10px;padding-top:14px;padding-bottom:14px}.nav nav{gap:12px;width:100%}.nav nav .button{margin-left:auto}}.footer{border-top:1px solid var(--border);margin-top:96px;padding:40px 0 24px;font-size:14px}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:32px;display:flex}.footer-inner nav{grid-template-columns:repeat(2,auto);align-content:start;gap:8px 32px;display:grid}.footer-inner nav a{text-decoration:none}.footer-brand{margin:0 0 8px}.footer-legal{flex-wrap:wrap;gap:8px 20px;margin-top:32px;font-size:13px;display:flex}.footer-legal a{color:var(--muted);text-decoration:none}.footer-legal a:hover{color:var(--accent)}.footer-copy{font-family:var(--mono);margin-top:16px;font-size:12px}.consent{z-index:20;background:var(--surface);border:1px solid var(--ink);border-radius:var(--radius);max-width:560px;box-shadow:6px 6px 0 var(--ink);align-items:center;gap:16px;margin-left:auto;padding:16px;font-size:14px;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.consent[hidden]{display:none}.consent p{flex:1;margin:0}.consent div{flex-shrink:0;gap:8px;display:flex}@media (width<=520px){.consent{flex-direction:column;align-items:stretch}}.button{border:1px solid var(--ink);border-radius:var(--radius);cursor:pointer;background:var(--accent);font:inherit;box-shadow:3px 3px 0 var(--ink);padding:10px 18px;font-weight:600;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-block;color:var(--accent-fg)!important}.button:hover{box-shadow:4px 4px 0 var(--ink);transform:translate(-1px,-1px)}.button:active{box-shadow:0 0 0 var(--ink);transform:translate(3px,3px)}.button.secondary{background:var(--surface);color:var(--fg)!important}.button.small{box-shadow:2px 2px 0 var(--ink);white-space:nowrap;padding:5px 12px;font-size:14px}.button.small:active{transform:translate(2px,2px)}.button:disabled{opacity:.6;cursor:wait;transform:none}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:24px}.muted{color:var(--muted)}.error{color:var(--danger)}.badge{background:var(--ink);color:var(--bg);font-family:var(--mono);vertical-align:middle;border-radius:4px;padding:1px 8px;font-size:12px;font-weight:500;display:inline-block}.eyebrow{font-family:var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.js [data-reveal]{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(16px)}.js [data-reveal].revealed{opacity:1;transform:none}
