:root{--bg:#f7f1e6;--surface:#fffdf7;--surface2:#f1e8d8;--fg:#2a2320;--muted:#6e635a;--line:#e6dac7;--coral:#ec6242;--teal:#0f9e8b;--coral-soft:#fbddd2;color-scheme:light}html[data-theme=dark]{--bg:#211a2b;--surface:#2b2338;--surface2:#372c46;--fg:#f4ece0;--muted:#b6a6b8;--line:#3e3249;--coral:#ff7a54;--teal:#37c7b2;--coral-soft:#3e2a34;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;margin:0;font-family:Hanken Grotesk,system-ui,sans-serif}a{color:var(--teal)}.skip-link{z-index:100;background:var(--fg);color:var(--bg);border-radius:8px;padding:9px 13px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:none}body>header{z-index:50;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);align-items:center;height:66px;padding:0 26px;display:flex;position:sticky;top:0}.wordmark{color:var(--fg);letter-spacing:-.04em;align-items:center;font:800 23px Bricolage Grotesque;text-decoration:none;display:inline-flex}.wordmark span{background:var(--coral);border-radius:1px;width:9px;height:22px;margin-left:4px}body>header>b{border-left:1px solid var(--line);color:var(--muted);margin-left:12px;padding-left:12px;font:700 13px Space Mono}.header-links{align-items:center;gap:18px;margin-left:auto;display:flex}.header-links a{min-height:44px;color:var(--muted);align-items:center;font-weight:600;text-decoration:none;display:flex}.theme-toggle{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--fg);cursor:pointer;border-radius:10px;font:700 15px Space Mono,monospace}.docs-shell{grid-template-columns:285px minmax(0,1fr);min-height:calc(100vh - 66px);display:grid}aside{overscroll-behavior:contain;border-right:1px solid var(--line);background:var(--surface);height:calc(100dvh - 66px);padding:26px 22px;position:sticky;top:66px;overflow:auto}aside label{color:var(--muted);text-transform:uppercase;margin-bottom:7px;font:700 11px Space Mono;display:block}aside input{border:1px solid var(--line);background:var(--bg);width:100%;min-height:44px;color:var(--fg);border-radius:9px;padding:10px 12px;font:16px inherit}aside nav{flex-direction:column;margin-top:18px;display:flex}aside nav details+details{margin-top:5px}aside nav summary{min-height:44px;color:var(--muted);cursor:pointer;text-transform:uppercase;letter-spacing:.04em;touch-action:manipulation;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;font:700 11px Space Mono;list-style:none;display:flex}aside nav summary::-webkit-details-marker{display:none}aside nav summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;flex:none;width:7px;height:7px;transition:transform .16s;transform:rotate(-45deg)}aside nav details[open]>summary:after{transform:rotate(45deg)}aside nav summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px}aside nav details>div{flex-direction:column;gap:1px;padding:3px 0 6px 8px;display:flex}aside nav a{min-height:44px;color:var(--muted);border-radius:8px;align-items:center;padding:8px 10px;font-size:14px;text-decoration:none;display:flex}aside nav a.active{color:var(--coral);outline:1px solid var(--coral);outline-offset:-1px;background:0 0;font-weight:700}#doc-content{width:min(900px,100% - 48px);min-width:0;margin:0 auto;padding:55px 0 90px}.prose{overflow-wrap:anywhere}.prose h1,.prose h2,.prose h3{letter-spacing:-.025em;overflow-wrap:normal;scroll-margin-top:90px;font-family:Bricolage Grotesque,sans-serif}.prose h1{margin:0 0 22px;font-size:clamp(38px,6vw,60px);line-height:1}.prose h2{border-top:1px solid var(--line);margin:48px 0 16px;padding-top:8px;font-size:30px}.prose h3{margin-top:30px;font-size:22px}.prose p,.prose li{font-size:17px;line-height:1.7}.prose p{max-width:75ch}.prose li+li{margin-top:7px}.prose strong{font-weight:700}.prose blockquote{border-left:4px solid var(--coral);background:var(--surface);color:var(--muted);margin:24px 0;padding:4px 20px}.prose code{background:var(--surface2);border-radius:5px;padding:.12em .35em;font:14px Space Mono,monospace}.prose pre{overscroll-behavior-inline:contain;border:1px solid var(--line);color:#f4ece0;background:#211a2b;border-radius:12px;max-width:100%;padding:20px;overflow:auto}.prose pre code{color:inherit;overflow-wrap:normal;background:0 0;padding:0;font-size:13px;line-height:1.7}.prose table{overscroll-behavior-inline:contain;border-collapse:collapse;width:100%;max-width:100%;display:block;overflow:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:11px 13px}.prose th{background:var(--surface2)}.prose img,.prose video,.prose iframe{max-width:100%;height:auto}.prose iframe{aspect-ratio:16/9;width:100%}.prose hr{border:0;border-top:1px solid var(--line)}#doc-content>footer{border-top:1px solid var(--line);margin-top:70px;padding-top:20px;font-size:14px}#doc-content>footer a{align-items:center;min-height:44px;display:inline-flex}.menu-button,.sidebar-scrim{display:none}:where(a,button,input,summary):focus-visible{outline:2px solid var(--teal);outline-offset:3px}@media (hover:hover) and (pointer:fine){.header-links a:hover,aside nav summary:hover,aside nav a:hover{color:var(--coral)}}@media (width<=1100px) and (width>=821px){.docs-shell{grid-template-columns:250px minmax(0,1fr)}aside{padding-inline:16px}#doc-content{width:min(820px,100% - 40px);padding-top:46px}}@media (width<=820px){html{scroll-padding-top:132px}body>header{padding:0 16px}.header-links a:first-child{display:none}.menu-button{z-index:44;border:0;border-bottom:1px solid var(--line);background:var(--surface);width:100%;min-height:48px;color:var(--fg);text-align:left;touch-action:manipulation;justify-content:space-between;align-items:center;padding:9px 16px;font:700 13px Space Mono;display:flex;position:sticky;top:66px}.menu-button span{border-bottom:1.5px solid;border-right:1.5px solid;width:8px;height:8px;margin-right:4px;transition:transform .16s;transform:rotate(45deg)}.menu-button[aria-expanded=true] span{transform:rotate(225deg)}.docs-shell{display:block}.sidebar-scrim{z-index:42;opacity:0;pointer-events:none;background:#140e186b;transition:opacity .18s;display:block;position:fixed;inset:114px 0 0}.sidebar-scrim.open{opacity:1;pointer-events:auto}aside{z-index:45;width:min(360px,92vw);height:calc(100dvh - 114px);transition:transform .18s;position:fixed;top:114px;bottom:0;left:0;transform:translate(-105%);box-shadow:18px 0 40px #0003}aside.open{transform:none}#doc-content{width:min(100% - 30px,900px);padding-top:38px}.prose h1{font-size:clamp(38px,10vw,46px)}.prose h2{scroll-margin-top:132px;font-size:27px}.prose h3{scroll-margin-top:132px}}@media (width<=480px){body>header>b{margin-left:9px;padding-left:9px}.header-links{gap:8px}.header-links a{display:none}#doc-content{width:calc(100% - 28px)}.prose p,.prose li{font-size:16px}.prose pre{padding:15px}.prose blockquote{padding-left:14px}.prose table{font-size:14px}}@media (pointer:coarse){aside nav summary,aside nav a{min-height:48px}.theme-toggle{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.menu-button span,aside,.sidebar-scrim,aside nav summary:after{transition:none}}
