:root{--maxw:880px}:root,.terminal,.code,pre.astro-code{color-scheme:dark;--bg:#0b0e11;--bg-lift:#141a20;--panel:#12161b;--line:#232a31;--line-strong:#5e6a75;--text:#e6e8ea;--body-text:#d4d9de;--nav-text:#c4cad0;--muted:#9aa4ae;--faint:#78838d;--gold:#e8b84b;--gold-text:#e8b84b;--gold-line:#e8b84b;--steel:#7ca6b8;--steel-text:#7ca6b8;--on-accent:#0b0e11;--bad:#e0777c;--good:#7fb88a;--p1:#e5534b;--dr-p1:#e9635b;--dr-p2:#e8b84b;--dr-p3:#7ca6b8;--dr-p4:#859198;--dr-p1-fill:#e5534b;--dr-p2-fill:#e8b84b;--dr-p3-fill:#7ca6b8;--dr-p4-fill:#6b7680;--dr-p1-quiet:#e5534b24;--dr-p2-quiet:#e8b84b24;--dr-p3-quiet:#7ca6b824;--dr-p4-quiet:#6b768029}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--bg:#f4f6f7;--bg-lift:#fff;--panel:#fff;--line:#e0e5e9;--line-strong:#818c97;--text:#12171c;--body-text:#262d33;--nav-text:#3a434c;--muted:#59656f;--faint:#646f78;--gold-text:#7d5a08;--gold-line:#b38229;--steel-text:#34637a;--bad:#b22f29;--good:#26682c;--p1:#b22f29;--dr-p1:#b02a52;--dr-p2:#7c5f0e;--dr-p3:#34637a;--dr-p4:#5f646e;--dr-p1-quiet:#c0342b1c;--dr-p2-quiet:#e8b84b42;--dr-p3-quiet:#7ca6b838;--dr-p4-quiet:#6b76801c}}:root[data-theme=light]{color-scheme:light;--bg:#f4f6f7;--bg-lift:#fff;--panel:#fff;--line:#e0e5e9;--line-strong:#818c97;--text:#12171c;--body-text:#262d33;--nav-text:#3a434c;--muted:#59656f;--faint:#646f78;--gold-text:#7d5a08;--gold-line:#b38229;--steel-text:#34637a;--bad:#b22f29;--good:#26682c;--p1:#b22f29;--dr-p1:#b02a52;--dr-p2:#7c5f0e;--dr-p3:#34637a;--dr-p4:#5f646e;--dr-p1-quiet:#c0342b1c;--dr-p2-quiet:#e8b84b42;--dr-p3-quiet:#7ca6b838;--dr-p4-quiet:#6b76801c}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:radial-gradient(1200px 600px at 50% -10%, var(--bg-lift) 0%, var(--bg) 55%);color:var(--text);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100vh;margin:0;font-family:Space Grotesk,system-ui,Segoe UI,sans-serif;line-height:1.65;display:flex}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}a{color:var(--gold-text);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline}.content a,.muted-note a,.foot a,.page-sub a,.card p a{text-underline-offset:3px;text-decoration:underline 1px}.content a:has(>code){text-decoration:none}.content a:has(>code):after{content:"";vertical-align:-.05em;background:var(--gold-text);--glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 9.5l3-3'/%3E%3Cpath d='M7 4.5l1.2-1.2a2.6 2.6 0 0 1 3.7 3.7L10.7 8.2'/%3E%3Cpath d='M9 11.5l-1.2 1.2a2.6 2.6 0 0 1-3.7-3.7L5.3 7.8'/%3E%3C/svg%3E");width:.8em;height:.8em;-webkit-mask:var(--glyph) center / contain no-repeat;mask:var(--glyph) center / contain no-repeat;margin-left:3px;display:inline-block}.content a:has(>code):hover>code,.content a:has(>code):focus-visible>code{text-underline-offset:3px;text-decoration:underline}@media (forced-colors:active){.content a:has(>code){text-decoration:underline}.content a:has(>code):after{display:none}}.skip-link{z-index:100;background:var(--gold);color:var(--on-accent);border-radius:4px;padding:8px 14px;font-weight:600;position:absolute;top:-60px;left:12px}.skip-link:focus{text-decoration:none;top:12px}main:focus{outline:none}.site-header{border-bottom:1px solid var(--line)}.site-header .bar{align-items:center;gap:14px;padding-top:20px;padding-bottom:20px;display:flex}.site-header .logo{align-items:center;gap:12px;display:flex}.site-header .logo:hover{text-decoration:none}.site-header .logo img{height:34px}.site-header .logo .name{letter-spacing:4px;color:var(--text);font-size:18px;font-weight:700}.site-header nav{gap:22px;margin-left:auto;display:flex}.site-header nav a{color:var(--muted);font-size:15px}.site-header nav a:hover{color:var(--text);text-decoration:none}.theme-switch{border:1px solid var(--line);border-radius:999px;gap:2px;margin-left:18px;padding:2px;display:inline-flex}.theme-switch button{width:28px;height:26px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid}.theme-switch button:hover{color:var(--text)}.theme-switch button[aria-pressed=true]{background:var(--panel);color:var(--gold-text);box-shadow:0 0 0 1px var(--line)}.theme-switch button:focus-visible{outline:2px solid var(--gold-line);outline-offset:1px}@media (width<=600px){.wrap{padding:0 16px}.site-header .bar{flex-wrap:wrap;gap:10px;padding-top:16px;padding-bottom:16px}.site-header nav{flex-wrap:wrap;order:2;gap:8px 18px;width:100%;margin-left:0}.theme-switch{order:1;margin-left:auto}.site-header nav a{font-size:14px}.site-header .logo img{height:28px}.site-header .logo .name{letter-spacing:3px;font-size:16px}}.content :not(pre)>code,.content a{overflow-wrap:anywhere}.site-header nav a{padding:4px 0;display:inline-block}@media (width<=760px){.toc li a{padding-top:6px;padding-bottom:6px}.learn-sidebar-title,.site-footer a,.learn-onward a,.post-nav a{padding:4px 0;display:inline-block}}@media (width<=600px){.band .code pre{font-size:12.5px}.band .code .c-trail{padding-left:6ch;display:block}}.gh-icon{display:none}@media (width<=600px){.site-header nav{flex-wrap:nowrap;justify-content:space-between;gap:4px 16px;min-width:0}.site-header nav .nav-gh{display:none}.gh-icon{color:var(--muted);order:1;margin-left:6px;padding:6px;display:inline-flex}.gh-icon:hover{color:var(--text)}.theme-switch[hidden]+.gh-icon{margin-left:auto}}@media (width<=380px){.site-header nav{gap:4px 12px}}.toc-inline{display:none}@media (width<=860px){.post-layout .toc,.learn-layout .toc{display:none}.toc-inline{border:1px solid var(--line);background:var(--panel);border-radius:10px;margin:0 0 24px;display:block}.toc-inline>summary{cursor:pointer;min-height:44px;color:var(--text);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:14px;font-weight:600;list-style:none;display:flex}.toc-inline>summary::-webkit-details-marker{display:none}.toc-inline>summary:after{content:"▾";color:var(--muted);font-size:12px;transition:transform .12s}.toc-inline[open]>summary:after{transform:rotate(180deg)}.toc-inline ul{margin:0;padding:0 14px 10px;list-style:none}.toc-inline li a{color:var(--nav-text);border-top:1px solid var(--line);padding:9px 0;font-size:14px;text-decoration:none;display:block}.toc-inline li a:hover{color:var(--text)}}.page{flex:1 0 auto;padding:56px 0}.site-footer{border-top:1px solid var(--line);color:var(--muted);font-size:13px}.site-footer .bar{flex-wrap:wrap;gap:18px;padding-top:26px;padding-bottom:40px;display:flex}.btn{border:1px solid var(--line);color:var(--text);border-radius:10px;padding:12px 20px;font-weight:500;transition:all .15s;display:inline-block}.btn:hover{border-color:var(--gold-line);text-decoration:none}.btn.primary{background:var(--gold);color:var(--on-accent);border-color:var(--gold);font-weight:700}.hero h1{letter-spacing:-.5px;margin:0 0 18px;font-size:clamp(34px,6vw,58px);line-height:1.08}.hero h1 .accent{color:var(--gold-text)}.hero p.lead{color:var(--muted);max-width:640px;margin:0;font-size:clamp(17px,2.4vw,21px)}.hero p.lead+p.lead{margin-top:16px}.hero p.lead .accent{color:var(--gold-text)}.cta{flex-wrap:wrap;gap:14px;margin:32px 0 8px;display:flex}.try{color:var(--muted);margin:28px 0 8px;font-size:15px}.try-code{margin:0 0 28px}.dr-p1,.dr-p2,.dr-p3,.dr-p4,.dr-crit,.dr-high,.dr-med,.dr-low{white-space:nowrap;border-radius:2px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.85em;display:inline-block}.dr-p1,.dr-p2,.dr-p3,.dr-p4{text-align:center;min-width:2.4em;padding:1px 0;font-weight:600}.dr-p1{color:var(--dr-p1);background:var(--dr-p1-quiet)}.dr-p2{color:var(--dr-p2);background:var(--dr-p2-quiet)}.dr-p3{color:var(--dr-p3);background:var(--dr-p3-quiet)}.dr-p4{color:var(--dr-p4);background:var(--dr-p4-quiet)}.dr-crit,.dr-high,.dr-med,.dr-low{color:var(--text);border:1px solid var(--line-strong);padding:1px 7px}.dr-crit{border-color:var(--dr-p1-fill)}.dr-high{border-color:var(--dr-p2-fill)}.dr-med{border-color:var(--dr-p3-fill)}.dr-low{border-color:var(--dr-p4-fill)}.dr-up,.dr-down{white-space:nowrap}.demo-out{max-width:820px;margin:24px 0 8px}.demo-out pre{white-space:pre}.t-crit{color:#e0777c;font-weight:600}.t-high{color:#d98c6a}.t-warn{color:#e8b84b}.t-pass{color:#7fb88a}.t-dim{color:#6b7680}.t-prompt{color:#7ca6b8}.grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:48px 0;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}.card h3{margin:0 0 6px;font-size:16px}.card p{color:var(--muted);margin:0;font-size:14px}.code{background:var(--panel);border:1px solid var(--line);border-radius:14px;margin:32px 0;padding:20px;overflow-x:auto}.code pre{color:#c9d1d9;margin:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13.5px;line-height:1.7}.eyebrow{text-transform:uppercase;letter-spacing:3px;color:var(--gold-text);margin:0 0 14px;font-size:12px;font-weight:500}.cta-note{color:var(--muted);margin:14px 0 0;font-size:13px}.feature{border-top:1px solid var(--line);margin:0;padding:38px 0}.feature .lead,.closing .lead{color:var(--muted);max-width:640px;font-size:clamp(16px,2.2vw,19px)}.feature .accent,.closing .accent{color:var(--gold-text)}.section-head{letter-spacing:-.3px;margin:0 0 14px;font-size:clamp(24px,4vw,34px);line-height:1.15}.muted-note{color:var(--muted);max-width:640px;margin:0;font-size:14px}.closing{border-top:1px solid var(--line);margin:72px 0 8px;padding-top:48px}pre{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px;overflow-x:auto}code{font-family:JetBrains Mono,ui-monospace,monospace;font-size:.9em}.code-wrap{position:relative}.copy-btn{width:28px;height:28px;color:var(--muted);background:var(--bg);border:1px solid var(--line);cursor:pointer;opacity:.75;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,opacity .15s;display:inline-flex;position:absolute;top:8px;right:8px}.code-wrap:hover .copy-btn{opacity:1}.copy-btn:hover,.copy-btn:focus-visible{color:var(--text);border-color:var(--gold-line);opacity:1;outline:none}.copy-btn.copied{color:var(--gold-text);border-color:var(--gold-line);opacity:1}.copy-btn.failed{color:var(--bad);border-color:var(--bad);opacity:1}@media (hover:none){.copy-btn{opacity:1}}:not(pre)>code{color:var(--steel-text);background:#7ca6b821;border-radius:5px;padding:1px 6px;font-size:.88em}.page-title{letter-spacing:-.5px;margin:0 0 8px;font-size:34px}.page-sub{color:var(--muted);margin:0 0 36px}.post-list{flex-direction:column;gap:22px;margin:0;padding:0;list-style:none;display:flex}.post-list li{border-bottom:1px solid var(--line);padding-bottom:22px}.post-list h2{margin:0 0 4px;font-size:22px}.post-list h2 a{color:var(--text)}.post-list .meta,.post .meta{color:var(--muted);font-size:13px}.post-list p{color:var(--muted);margin:8px 0 0}.tags{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.tag{color:var(--gold-text);border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:12px;text-decoration:none}.tag:hover,.tag:focus-visible{border-color:var(--gold-line);background:color-mix(in srgb, var(--gold) 10%, transparent)}.post-nav,.learn-onward{border-top:1px solid var(--line);margin-top:40px;padding-top:24px}.learn-onward h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:20px 0 10px;font-size:15px}.learn-onward ul{flex-direction:column;gap:8px;margin:0 0 20px;padding:0;list-style:none;display:flex}.learn-onward p{color:var(--muted)}.post-nav h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 10px;font-size:15px}.post-nav-related ul{flex-direction:column;gap:8px;margin:0 0 26px;padding:0;list-style:none;display:flex}.post-nav-seq{flex-wrap:wrap;justify-content:space-between;gap:14px 26px;margin-bottom:20px;display:flex}.post-nav-seq .seq{color:var(--muted);max-width:46ch;font-size:14px}.post-nav-seq .seq:hover{color:var(--text)}.post-nav-seq .next{text-align:right;margin-left:auto}.post article{max-width:720px}.post h1{margin:6px 0 10px;font-size:clamp(28px,5vw,40px);line-height:1.15}.post .content{margin-top:28px}.post .content h2{margin-top:36px;font-size:24px}.post .content h3{margin-top:26px;font-size:19px}.post .content p,.post .content li{color:var(--body-text)}.post .content blockquote{border-left:3px solid var(--gold-line);color:var(--muted);margin:20px 0;padding:4px 16px}.form{flex-direction:column;gap:16px;max-width:560px;margin-top:24px;display:flex}.form .field{flex-direction:column;gap:4px;display:flex}.form .field[hidden]{display:none}.form label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.form input,.form textarea,.form select{background:var(--panel);border:1px solid var(--line-strong);width:100%;color:var(--text);font:inherit;border-radius:4px;padding:9px 11px;font-size:15px}.form select{appearance:auto}.form input::placeholder,.form textarea::placeholder{color:var(--faint)}.form input:focus-visible,.form textarea:focus-visible,.form select:focus-visible{outline:2px solid var(--gold-line);outline-offset:2px}.form .hint{color:var(--faint);margin:2px 0 0;font-size:12px}.form .btn{border-radius:4px;align-self:flex-start;padding:10px 22px}.form .cf-turnstile:empty{display:none}.contact-methods{color:var(--muted);flex-wrap:wrap;gap:24px;margin-top:28px;font-size:14px;display:flex}.learn-lead{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:14px;margin:32px 0 20px;padding:24px;text-decoration:none;transition:border-color .15s;display:block}.learn-lead:hover{border-color:var(--gold-line)}.learn-lead-kicker{text-transform:uppercase;letter-spacing:3px;color:var(--gold-text);margin:0 0 10px;font-size:12px;font-weight:500;display:block}.learn-lead strong{margin:0 0 8px;font-size:19px;line-height:1.3;display:block}.learn-lead>span:not(.learn-lead-kicker){color:var(--muted);max-width:640px;font-size:14px;line-height:1.6;display:block}.learn-path{color:var(--muted);margin:0 0 32px}.learn-path-sep{color:var(--muted);opacity:.6}.learn-group{margin:40px 0}.learn-group .grid{margin:16px 0 0}a.card{color:inherit;text-decoration:none;transition:border-color .15s;display:block}a.card:hover{border-color:var(--gold-line)}a.card h3{align-items:center;gap:8px;display:flex}a.card h3 .tag{font-size:11px}.content img{max-width:100%;height:auto}.post .content table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:10px;width:100%;margin:24px 0;font-size:14.5px;line-height:1.5;overflow:hidden}.post .content th,.post .content td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 14px}.post .content thead th{background:var(--panel);color:var(--text);font-weight:600}.post .content tbody td:first-child{color:var(--text);font-weight:500}.post .content tbody tr:nth-child(2n) td{background:#ffffff06}.post .content tbody tr:last-child td{border-bottom:none}.post .content table code{background:0 0;padding:0}.post .content .table-scroll{margin:24px 0;overflow-x:auto}.post .content .table-scroll>table{margin:0}.post .content td code,.post .content th code{white-space:nowrap;overflow-wrap:normal}.post .content td,.post .content th,.post .content td a,.post .content th a{overflow-wrap:normal}.post .content table.cmp{table-layout:fixed;font-size:14px}.post .content table.cmp thead th:first-child{width:40%}.post .content table.cmp thead th{vertical-align:bottom}.post .content table.cmp .cmp-draugr{background:color-mix(in srgb, var(--gold) 7%, var(--panel))}.post .content table.cmp thead th.cmp-draugr{color:var(--gold-text);box-shadow:inset 0 -2px 0 var(--gold-line)}.post .content table.cmp td.cmp-mark,.post .content table.cmp thead th:not(:first-child){text-align:center}.post .content table.cmp tr.cmp-group th{background:var(--bg-lift);border-left:3px solid var(--gold-line);padding:16px 14px 8px;font-weight:400}.cmp-kind{text-transform:uppercase;letter-spacing:1.2px;color:var(--gold-text);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;font-weight:600}.cmp-what{color:var(--muted);margin-left:10px;font-size:13px}.mk{vertical-align:middle;justify-content:center;align-items:center;display:inline-flex}.mk-yes{background:color-mix(in srgb, var(--steel) 22%, transparent);width:22px;height:22px;color:var(--steel-text);border-radius:50%;font-size:13px;font-weight:700}.cmp-draugr .mk-yes,.cmp-legend .mk-yes.mk-draugr{background:var(--gold);color:var(--on-accent)}.mk-partly{border:1px solid var(--line-strong);color:var(--muted);border-radius:999px;padding:0 8px;font-size:12px;line-height:20px}.mk-no{color:var(--faint);font-weight:600}.cmp-note{color:var(--muted);margin-top:4px;font-size:12.5px;display:block}.cmp-legend{color:var(--muted);flex-wrap:wrap;gap:6px 18px;margin:-8px 0 24px;font-size:13px;display:flex}.cmp-legend span.item{align-items:center;gap:6px;display:inline-flex}.vh{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wrap.wide{max-width:1120px}.learn-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:48px;display:grid}.learn-layout .post{max-width:760px}.learn-sidebar,.docs-sidebar{font-size:13px;line-height:1.4;position:sticky;top:24px}.learn-sidebar .learn-sidebar-title{color:var(--muted);margin-bottom:18px;text-decoration:none;display:inline-block}.learn-sidebar .learn-sidebar-title:hover{color:var(--gold-text)}.learn-sidebar .nav-group,.docs-sidebar .nav-group{margin-bottom:24px}.learn-sidebar .nav-group-title,.docs-sidebar .nav-group-title{color:var(--steel-text);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px}.learn-sidebar ul,.docs-sidebar ul{border-left:1px solid var(--line);flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.learn-sidebar li a,.docs-sidebar li a{color:var(--nav-text);border-left:2px solid #0000;border-radius:0 6px 6px 0;margin-left:-1.5px;padding:4px 10px;text-decoration:none;display:block}.learn-sidebar li a:hover,.docs-sidebar li a:hover{color:var(--text);background:var(--panel)}.learn-sidebar li a.active,.docs-sidebar li a.active{color:var(--gold-text);border-left-color:var(--gold-line);background:var(--panel)}.learn-back{display:none}.learn-layout>.learn-hub{min-width:0}.learn-hub .page-title{margin-top:0}.learn-hub .grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin:18px 0 40px}.hubrow{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:4px 20px;padding:20px 0;text-decoration:none;display:grid}.hubrow:last-of-type{border-bottom:1px solid var(--line)}.hubrow:hover{text-decoration:none}.hubrow strong{color:var(--text);grid-column:1;font-size:18px;font-weight:600}.hubrow:hover strong{color:var(--gold-text)}.hubrow span{color:var(--muted);grid-column:1;font-size:14px}.hubrow em{color:var(--steel-text);white-space:nowrap;grid-area:1/2/3;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-style:normal}@media (width<=520px){.hubrow{grid-template-columns:1fr}.hubrow em{grid-area:auto/1}}.docs-version{margin-bottom:18px}.docs-version label{color:var(--steel-text);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:6px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;display:block}.docs-version select{background:var(--panel);width:100%;color:var(--text);border:1px solid var(--line);font:inherit;border-radius:8px;padding:6px 8px;font-size:13px}.docs-banner{background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:10px;margin:0 0 20px;padding:10px 14px;font-size:13.5px}.docs-banner a{margin-left:6px}.wrap.wide:has(.toc){max-width:1320px}.learn-layout:has(.toc){grid-template-columns:240px minmax(0,1fr) 200px}.learn-layout .toc{scrollbar-width:thin;max-height:calc(100vh - 48px);font-size:13px;line-height:1.4;position:sticky;top:24px;overflow-y:auto}.toc-title{color:var(--steel-text);text-transform:uppercase;letter-spacing:1.2px;margin:0 0 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px}.toc ul{border-left:1px solid var(--line);flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.toc li a{color:var(--nav-text);border-left:2px solid #0000;border-radius:0 6px 6px 0;margin-left:-1.5px;padding:4px 10px;text-decoration:none;display:block}.toc li a:hover{color:var(--text);background:var(--panel);border-left-color:var(--gold-line)}.toc li a.active{color:var(--gold-text);border-left-color:var(--gold-line);background:var(--panel)}.post-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:48px;display:grid}.post-layout:has(.toc){grid-template-columns:minmax(0,1fr) 200px}.post-layout .post{max-width:760px}.post-layout .toc{scrollbar-width:thin;max-height:calc(100vh - 48px);font-size:13px;line-height:1.4;position:sticky;top:24px;overflow-y:auto}.wrap.wide:has(.post-layout){max-width:1060px}.wrap.wide:has(.post-layout) .post-nav{max-width:760px}.content h2,.content h3{scroll-margin-top:24px}.content .heading-anchor{color:var(--muted);opacity:0;margin-left:8px;text-decoration:none;transition:opacity .12s}.content h2:hover .heading-anchor,.content h3:hover .heading-anchor,.content .heading-anchor:focus,.content .heading-anchor:focus-visible{opacity:1;color:var(--gold-text)}@media (width<=1200px){.wrap.wide:has(.toc){max-width:1120px}.learn-layout:has(.toc){grid-template-columns:240px minmax(0,1fr)}.learn-layout:has(.toc)>:first-child{grid-row:1/span 2}.learn-layout .toc{grid-area:1/2;max-width:760px;max-height:none;position:static;overflow-y:visible}.learn-layout:has(.toc) .post{grid-area:2/2}}.nav-disclosure>summary{display:none}.nav-disclosure{position:sticky;top:24px}@media (width>=861px){.nav-disclosure::details-content{content-visibility:visible;display:contents}}@media (width<=860px){.wrap.wide{max-width:var(--maxw)}.learn-layout{grid-template-columns:minmax(0,1fr);gap:0}.learn-back{margin-bottom:12px;display:inline-block}.post-layout:has(.toc){grid-template-columns:minmax(0,1fr);gap:0}.post-layout .toc{grid-row:1;max-width:760px;max-height:none;margin-bottom:24px;position:static;overflow-y:visible}.post-layout .post{grid-row:2}.learn-layout:has(.toc){grid-template-columns:minmax(0,1fr)}.learn-layout:has(.toc)>:first-child{grid-row:1}.learn-layout .toc{grid-area:2/1;margin-bottom:20px}.learn-layout:has(.toc) .post{grid-area:3/1}.nav-disclosure{border:1px solid var(--line);background:var(--panel);border-radius:10px;margin:0 0 20px;position:static}.nav-disclosure>summary{cursor:pointer;color:var(--text);justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:12px 14px;font-size:14px;font-weight:600;list-style:none;display:flex}.nav-disclosure>summary::-webkit-details-marker{display:none}.nav-disclosure>summary:after{content:"▾";color:var(--muted);font-size:12px;transition:transform .12s}.nav-disclosure[open]>summary:after{transform:rotate(180deg)}.nav-disclosure[open]>summary{border-bottom:1px solid var(--line)}.nav-disclosure .docs-sidebar,.nav-disclosure .learn-sidebar{padding:12px 14px;position:static}.nav-disclosure li a{padding:8px 10px}}.post .content .draugr-fit{border:1px solid var(--line);border-left:3px solid var(--gold-line);background:var(--panel);border-radius:10px;margin:24px 0;padding:16px 18px}.post .content .draugr-fit p:first-child{margin-top:0}.post .content .draugr-fit p:last-child{margin-bottom:0}.post .content .draugr-fit strong{color:var(--gold-text)}figure.diagram{margin:28px 0}figure.diagram svg{height:auto;display:block}figure.diagram figcaption{color:var(--muted);text-align:center;margin-top:10px;font-size:13px}.terminal{border:1px solid var(--line);background:#0a0d10;border-radius:10px;margin:22px 0;overflow-x:auto}.terminal pre{color:#c9d1d9;margin:0;padding:16px 18px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;line-height:1.65}.terminal .t-fail{color:#e5534b;font-weight:600}.terminal .t-pass{color:#57ab5a;font-weight:600}.terminal .t-p1{color:#e5534b;font-weight:600}.terminal .t-p2{color:var(--gold-text);font-weight:600}.terminal .t-p3{color:var(--steel-text)}.terminal .t-p4{color:var(--muted)}.terminal .t-sev-critical,.terminal .t-sev-high{color:#e5534b}.terminal .t-sev-medium{color:var(--gold-text)}.terminal .t-sev-low{color:var(--steel-text)}.terminal .t-kev{color:var(--gold-text)}.terminal .t-epss,.terminal .t-unreachable{color:var(--steel-text)}.terminal .t-fix{color:#57ab5a;font-weight:600}.punch{max-width:60ch;margin:0 0 26px;font-size:19px;line-height:1.6}.punch strong{color:var(--gold-text);font-weight:600}.foot{color:var(--muted);margin:14px 0 0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;line-height:1.6}.band{border-top:1px solid var(--line);padding:38px 0}.band .lab{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 16px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:600;line-height:1.65}.band .lab b{color:var(--gold-text);font-weight:600}.reveal{max-width:62ch;margin:20px 0 0;font-size:18px;line-height:1.6}.reveal.small{color:var(--muted);font-size:16px}.reveal strong{color:var(--gold-text);font-weight:600}.drill{color:var(--muted);border-top:1px solid var(--line);margin-top:26px;padding-top:14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;line-height:1.9}.drill a{color:var(--steel-text);margin-right:20px;text-decoration:none}.drill a:hover{color:var(--gold-text)}.sig{grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 0;display:grid}.sig>div{background:var(--panel);border:1px solid var(--line);border-left-width:3px;border-radius:8px;padding:13px 15px}.sig .up{border-left-color:var(--p1)}.sig .dn{border-left-color:var(--steel)}.sig .go{border-left-color:var(--gold-line)}.sig h3,.sig h5{margin:0 0 4px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:600;line-height:1.65}.sig .up h3,.sig .up h5{color:var(--p1)}.sig .dn h3,.sig .dn h5{color:var(--steel-text)}.sig .go h3,.sig .go h5{color:var(--gold-text)}.sig p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.55}.sig .how{margin-top:10px;font-size:13px;font-weight:600;text-decoration:none;display:block}.sig .go .how{color:var(--gold-text)}.sig .dn .how{color:var(--steel-text)}.sig .how:hover{text-decoration:underline}.sig b{color:var(--text);font-weight:600}.code .k{color:var(--steel-text)}.code .g{color:var(--gold-text)}.code .c{color:#8a939c}@media (width<=720px){.sig{grid-template-columns:1fr}}.two-col{grid-template-columns:1fr 1fr;gap:10px 26px;margin:14px 0 0;display:grid}.two-col a{color:var(--text);border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:7px 0;font-size:14.5px;text-decoration:none;display:flex}.two-col a:hover{color:var(--gold-text)}.two-col em{color:var(--muted);white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;font-style:normal}@media (width<=720px){.two-col{grid-template-columns:1fr}}.compare-entry{margin:44px 0}.compare-entry .section-head{margin-bottom:6px}.compare-entry .section-head a{color:var(--text)}.compare-entry .section-head a:hover{color:var(--gold-text);text-decoration:none}.compare-entry .muted-note{margin-bottom:16px}.compare-entry .sig+.muted-note{margin-top:16px}.tiles{gap:14px;margin:26px 0;display:grid}.tiles.t2{grid-template-columns:1fr 1fr}.tiles.t3{grid-template-columns:repeat(3,1fr)}.tile{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--line);border-radius:8px;padding:16px 18px}.tile.hot{border-left-color:var(--gold-line)}.tile .v{color:var(--text);font-family:JetBrains Mono,ui-monospace,monospace;font-size:30px;font-weight:600;line-height:1.05}.tile.hot .v{color:var(--gold-text)}.tile .k{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.45}.tile .k b{color:var(--text);font-weight:600}.ratio{border:1px solid var(--line);background:var(--panel);border-radius:10px;margin:28px 0;padding:18px 20px}.ratio h5{letter-spacing:1.5px;text-transform:uppercase;color:var(--steel-text);margin:0 0 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600}.ratio .r{margin-bottom:14px}.ratio .r:last-of-type{margin-bottom:0}.ratio .rl{color:var(--muted);justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:5px;font-size:13.5px;display:flex}.ratio .rl b{color:var(--text);font-weight:600}.ratio .rn{color:var(--text);white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13.5px}.ratio .rb{background:var(--bg);border:1px solid var(--line);border-radius:3px;height:10px}.ratio .rb i{background:var(--steel);border-radius:2px;height:100%;display:block}.ratio .r.hot .rb i{background:var(--gold)}.ratio .r.hot .rn{color:var(--gold-text)}.ratio .rnote{border-top:1px solid var(--line);color:var(--muted);margin:14px 0 0;padding-top:12px;font-size:13px}.ratio .rnote b{color:var(--text);font-weight:600}.verdict{border:1px solid var(--line);border-left:3px solid var(--gold-line);background:var(--panel);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:22px;margin:30px 0;padding:20px 22px;display:flex}.verdict .v{color:var(--gold-text);font-family:JetBrains Mono,ui-monospace,monospace;font-size:46px;font-weight:600;line-height:1}.verdict .k{color:var(--muted);flex:260px;font-size:14px;line-height:1.55}.verdict .k b{color:var(--text);font-weight:600}@media (width<=760px){.tiles.t2,.tiles.t3{grid-template-columns:1fr}.verdict .v{font-size:38px}}.pipe{border:1px solid var(--line);border-radius:10px;margin:28px 0;overflow:hidden}.pipe .step{border-top:1px solid var(--line);background:var(--panel);grid-template-columns:26px 34px 1fr auto;align-items:baseline;gap:12px;padding:14px 18px;display:grid}.pipe .step:first-child{border-top:0}.pipe .n{color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.pipe .arrow{text-align:center;font-size:22px;font-weight:600;line-height:1}.pipe .up .arrow{color:var(--gold-text)}.pipe .down .arrow{color:var(--steel-text)}.pipe .out .arrow{color:var(--text)}.pipe .what strong{color:var(--text);margin-bottom:3px;font-size:15px;display:block}.pipe .what span{color:var(--muted);font-size:13.5px;line-height:1.5}.pipe .who{color:var(--steel-text);white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px}.pipe .out{background:color-mix(in srgb, var(--gold) 7%, var(--panel))}.pipe .out .who{color:var(--gold-text)}@media (width<=640px){.pipe .step{grid-template-columns:22px 28px 1fr}.pipe .who{grid-column:3;padding-top:4px}}.worked{border:1px solid var(--line);background:var(--panel);border-radius:10px;margin:28px 0;overflow:hidden}.worked .subject{border-bottom:1px solid var(--line);color:var(--text);padding:13px 18px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}.worked .subject span{color:var(--muted)}.worked .row{color:var(--muted);justify-content:space-between;align-items:baseline;gap:16px;padding:11px 18px;font-size:14px;display:flex}.worked .row .v{color:var(--text);white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace}.worked .row.moved{color:var(--text)}.worked .row.moved .v{color:var(--gold-text)}.worked .row.cross{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);background:var(--bg)}.worked .row.answer{background:color-mix(in srgb, var(--gold) 9%, var(--panel));padding-top:14px;padding-bottom:14px}.worked .row.answer .label{color:var(--text);font-weight:600}.worked .row.answer .v{color:var(--gold-text);font-size:20px;font-weight:600}.worked .row .was{color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12.5px}.blocked{background:var(--panel);border:1.5px solid var(--gold-line);border-radius:10px;margin:22px 0;padding:16px 18px}.blocked .head{justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 10px;display:flex}.blocked h5{letter-spacing:.1em;color:var(--gold-text);margin:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:600}.blocked .src{color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.blocked .row{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:16px;padding:9px 0;display:grid}.blocked .head+.row{border-top:0}.blocked .what{color:var(--text);overflow-wrap:anywhere;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}.blocked .what span{color:var(--muted);margin-top:2px;font-family:Space Grotesk,system-ui,sans-serif;font-size:12px;display:block}.blocked .do{color:var(--muted);font-size:13.5px}.blocked .do code{color:var(--text)}@media (width<=720px){.blocked .row{grid-template-columns:1fr;gap:4px}}.code .cmd{color:var(--steel-text)}.code .cmd:before{content:"$ ";color:var(--muted)}.code .o{color:#c9d1d9}.code.tight pre{background:0 0;border:0;border-radius:0;padding:0;font-size:13px}.code.tight{margin:14px 0;padding:14px 16px}.code .code-wrap .copy-btn{top:-4px;right:-6px}.tabs{margin:4px 0 0}.tabs>input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.tabs>label{cursor:pointer;color:var(--muted);border:1px solid #0000;border-bottom:0;border-radius:8px 8px 0 0;margin:0 4px -1px 0;padding:8px 14px 9px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:600;display:inline-block}.tabs>label:hover{color:var(--text)}.tabs>input:checked+label{color:var(--gold-text);background:var(--panel);border-color:var(--line);box-shadow:inset 0 2px 0 var(--gold-line)}.tabs>input:focus-visible+label{outline:2px solid var(--gold-line);outline-offset:-2px}.tabs>.tab-panel{border-top:1px solid var(--line);padding:18px 0 0;display:none}.tabs>input:first-of-type:checked~.tab-panel:first-of-type,.tabs>input:nth-of-type(2):checked~.tab-panel:nth-of-type(2),.tabs>input:nth-of-type(3):checked~.tab-panel:nth-of-type(3){display:block}.tab-panel>p{max-width:66ch;color:var(--body-text);margin:0 0 12px;font-size:15.5px;line-height:1.6}.tab-panel>p.wide{max-width:none}.tab-panel>p.reveal{color:var(--text);margin:20px 0 0;font-size:18px}.tab-panel>p.reveal.small{color:var(--muted);font-size:16px}.tab-panel .how{color:var(--steel-text);font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}.tab-panel .how:hover{color:var(--gold-text)}.tab-panel h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:18px 0 6px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600}.plat{flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin:14px 0 0;display:flex}.tab-panel .plat h3{margin:0}.plat>span{color:var(--muted);font-size:13.5px}.plat>span code{white-space:nowrap}.plat>span a{text-underline-offset:3px;text-decoration:underline 1px}.plat>.how{margin-left:auto}.plat+.code.tight{margin:6px 0 0;padding:10px 14px}.plat+.code.tight pre{font-size:12.5px;line-height:1.6}
