:root{color-scheme:dark;--bg:#000;--ink:#f3efe8;--ink-2:#f3efe8c2;--ink-3:#f3efe88f;--line:#f3efe81f;--panel:#f3efe80a;--copper:#e78a53;--copper-ink:#f0a578;--sans:"Inter", "Segoe UI", system-ui, sans-serif;--serif:"Instrument Serif", Georgia, serif;--mono:"DM Mono", "Cascadia Mono", ui-monospace, monospace}*{box-sizing:border-box}html{scroll-padding-top:24px}body{background:var(--bg);color:var(--ink-2);font:400 16px/1.7 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--copper-ink);text-underline-offset:3px}a:hover{color:var(--ink)}.top{justify-content:space-between;align-items:center;gap:16px;max-width:1120px;margin:0 auto;padding:28px 24px 0;display:flex}.brand{color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand img{width:30px;height:30px}.brand__name{font:500 14px/1 var(--mono);letter-spacing:.16em}.brand__name b{color:var(--copper);font-weight:500}.top nav{font:400 13px/1 var(--mono);align-items:center;gap:20px;display:flex}.top nav a{color:var(--ink-3);text-decoration:none}.top nav a:hover{color:var(--ink)}.wrap{grid-template-columns:240px minmax(0,720px);gap:72px;max-width:1120px;margin:0 auto;padding:64px 24px 120px;display:grid}.side{align-self:start;position:sticky;top:32px}.side p{color:var(--ink-3);font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px}.side ul{border-left:1px solid var(--line);margin:0;padding:0;list-style:none}.side a{color:var(--ink-2);border-left:1px solid #0000;margin-left:-1px;padding:7px 0 7px 16px;font-size:14px;line-height:1.45;text-decoration:none;display:block}.side a:hover{color:var(--ink)}.side a[aria-current=page]{border-left-color:var(--copper);color:var(--ink);font-weight:500}.crumbs{color:var(--ink-3);font:400 13px/1.4 var(--mono);margin:0 0 18px}.crumbs a{color:var(--ink-3);text-decoration:none}.crumbs a:hover{color:var(--ink)}h1{color:var(--ink);font:400 clamp(40px, 6vw, 56px)/1.08 var(--serif);margin:0}.updated{color:var(--ink-3);font:400 13px/1.4 var(--mono);margin:16px 0 40px}article{counter-reset:part}article>p,article>.summary{margin:0 0 16px}article section{counter-increment:part;border-top:1px solid var(--line);margin-top:28px;padding:28px 0 4px}article h2{color:var(--ink);font:600 18px/1.45 var(--sans);margin:0 0 12px}article section h2:before{content:counter(part) ". ";color:var(--copper);font-family:var(--mono);font-weight:500}article h3{color:var(--ink);font:600 15px/1.5 var(--sans);margin:20px 0 8px}article p,article li{margin:0 0 12px}article ul{margin:0 0 12px;padding-left:20px}article li::marker{color:var(--copper)}.summary{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:22px 24px}.summary h2{margin-bottom:10px;font-size:16px}.summary ul{margin:0}.summary li:last-child{margin-bottom:0}dl{border:1px solid var(--line);border-radius:12px;grid-template-columns:max-content 1fr;gap:8px 24px;margin:4px 0 16px;padding:18px 20px;display:grid}dt{color:var(--ink-3);font:400 13px/1.7 var(--mono)}dd{color:var(--ink);margin:0}.docs{gap:12px;margin:8px 0 0;padding:0;list-style:none;display:grid}.docs li{margin:0}.docs a{border:1px solid var(--line);color:var(--ink-2);border-radius:12px;padding:20px 22px;text-decoration:none;transition:border-color .15s,background .15s;display:block}.docs a:hover{background:var(--panel);border-color:#e78a5380}.docs strong{color:var(--ink);margin-bottom:4px;font-weight:600;display:block}.docs span{font-size:15px}footer{border-top:1px solid var(--line);max-width:1120px;color:var(--ink-3);font:400 13px/1.5 var(--mono);flex-wrap:wrap;justify-content:space-between;gap:12px 24px;margin:0 auto;padding:28px 24px 48px;display:flex}footer b{color:var(--copper);font-weight:500}footer nav{flex-wrap:wrap;gap:8px 20px;display:flex}footer a{color:var(--ink-3);text-decoration:none}footer a:hover{color:var(--ink)}@media (width<=900px){.wrap{grid-template-columns:1fr;gap:0;padding-top:40px}.side{margin-bottom:40px;position:static}.side ul{border:0;flex-wrap:wrap;gap:8px;display:flex}.side a{border:1px solid var(--line);border-radius:999px;margin:0;padding:6px 12px;font-size:13px}.side a[aria-current=page]{border-color:var(--copper)}}@media (width<=560px){.top{padding:20px 16px 0}.top nav .back{display:none}.wrap{padding:32px 16px 80px}dl{grid-template-columns:1fr;gap:0}dd{margin-bottom:10px}footer{padding:24px 16px 40px}}
