:root{--paper:#f4f3f0;--paper-2:#eceae6;--ink:#0b0b0b;--ink-70:rgba(11,11,11,.7);--ink-55:rgba(11,11,11,.55);--ink-40:rgba(11,11,11,.4);--line:rgba(11,11,11,.16);--fd:"Archivo Expanded","Archivo",sans-serif;--ft:"Archivo",system-ui,sans-serif;--fm:"IBM Plex Mono",ui-monospace,monospace}
*{box-sizing:border-box}html{zoom:1.25}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--ft);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}
::selection{background:var(--ink);color:var(--paper)}
a{text-decoration:none;color:inherit}
.layout{display:grid;grid-template-columns:264px 1fr;min-height:100vh}
.sidebar{position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto;border-right:1px solid var(--ink);padding:20px 16px 48px;background:var(--paper)}
.sb-brand{display:block;font-family:var(--fd);font-weight:900;font-size:20px;text-transform:lowercase;color:var(--ink);text-decoration:none;margin-bottom:18px;letter-spacing:-.01em}
.sb-brand .sb-int{font-family:var(--fm);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-55);font-weight:400}
.sb-group{font-family:var(--fm);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40);margin:18px 0 4px;padding-top:10px;border-top:1px solid var(--line)}
.sb-link{display:block;padding:5px 8px;font-size:13.5px;color:var(--ink-70);text-decoration:none;border-radius:3px;border-left:2px solid transparent;line-height:1.3}
.sb-link:hover{color:var(--ink);background:var(--paper-2)}
.sb-link.active{color:var(--ink);font-weight:700;border-left-color:var(--ink);background:var(--paper-2)}
.sb-link .ext{font-family:var(--fm);font-size:9px;color:var(--ink-40)}
.content{padding:48px 56px 80px;min-width:0}
.doc{max-width:780px}
.doc h1{font-family:var(--fd);font-weight:900;font-size:clamp(2rem,4vw,2.8rem);line-height:1.04;letter-spacing:-.03em;margin:0 0 .5em}
.doc h2{font-family:var(--fd);font-weight:800;font-size:1.45rem;letter-spacing:-.01em;margin:1.8em 0 .6em;padding-top:.6em;border-top:1px solid var(--line)}
.doc h3{font-family:var(--fd);font-weight:700;font-size:1.12rem;margin:1.4em 0 .4em}
.doc p{margin:0 0 1em;color:var(--ink-70)}.doc strong{color:var(--ink);font-weight:700}
.doc a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
.doc ul,.doc ol{margin:0 0 1em;padding-left:1.4em;color:var(--ink-70)}.doc li{margin:.3em 0}
.doc blockquote{margin:1em 0;padding:.4em 1em;border-left:3px solid var(--ink);color:var(--ink-70)}
.doc code{font-family:var(--fm);font-size:.85em;background:rgba(11,11,11,.06);padding:1px 5px;border-radius:2px}
.doc pre{background:var(--ink);color:var(--paper);padding:16px 18px;overflow:auto;font-family:var(--fm);font-size:.82em;line-height:1.5;white-space:pre-wrap}
.doc pre code{background:none;color:inherit;padding:0}
.doc table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.9em;border:1px solid var(--ink)}
.doc th{text-align:left;font-family:var(--fm);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-55);padding:8px 12px;border-bottom:1px solid var(--ink);font-weight:500}
.doc td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-70)}
.doc hr{border:0;border-top:1px solid var(--line);margin:2em 0}.doc img{max-width:100%}
@media (max-width:900px){.layout{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--ink)}.content{padding:32px 24px 60px}}
@media (max-width:760px){.doc table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}}