:root{color-scheme:dark;--bg:#0f1013;--bg-sidebar:#0b0c0f;--bg-code:#08090b;--bg-raised:#121317;--bg-hover:#14161a;--bg-row-hover:#131418;--bg-inline-code:#181b1f;--border:#1d1f24;--border-strong:#262a31;--border-faint:#16181c;--text:#c6cad0;--text-strong:#f2f4f6;--text-bright:#f7f8fa;--text-muted:#8b909a;--text-lead:#a3a8b0;--text-dim:#7c8189;--text-faint:#4e535c;--text-code-name:#e7e9ec;--dot:#3a3f47;--accent:#818cf8;--accent-soft:#c3c8fb;--accent-tint:#191a24;--accent-tint-border:#2a2d4a;--comment-green:#6a9955;--ok:#93dfb0;--warn:#e0b95f;--danger:#f0788a;--warn-bg:#191308;--warn-border:#3d3121;--warn-text:#e6d3ba;--danger-bg:#1a0e11;--danger-border:#4a2429;--danger-text:#e8c9cd;--diff-add-bg:#0e1a13;--diff-add:#93dfb0;--diff-del-bg:#1c1114;--diff-del:#f0a5ae;--radius:4px;--sidebar-w:232px;--gutter:36px;--measure:980px;--measure-wide:980px;--measure-callout:980px}@supports (color:color-mix(in oklab, red 50%, blue)){:root{--accent-soft:color-mix(in oklab, var(--accent) 72%, #fff);--accent-tint:color-mix(in oklab, var(--accent) 9%, var(--bg));--accent-tint-border:color-mix(in oklab, var(--accent) 24%, var(--bg))}}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%}body{font-family:var(--font-text);color:var(--text);background:var(--bg);overflow-wrap:break-word;margin:0;font-size:16.5px;line-height:1.7}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}svg{flex:none}img{border-radius:var(--radius);max-width:100%;height:auto}.mono{font-family:var(--font-mono)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;font-family:var(--font-mono);color:var(--accent-soft);background:var(--bg-sidebar);border:1px solid var(--accent-tint-border);border-radius:var(--radius);padding:8px 12px;font-size:12.5px;position:absolute;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus{transform:none}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border);padding:18px 14px;font-size:14px}.sidebar>.brand{align-items:center;padding:0 6px 18px;display:flex}.sidebar>.brand .wordmark{padding:4px 10px;font-size:16px}.sidebar .nav.primary{border-top:1px solid var(--border);padding-top:14px}.sidebar .groups{color:var(--text-muted);flex-direction:column;gap:18px;display:flex}.sidebar .group{border-top:1px solid var(--border);padding-top:16px}.sidebar .group-head{justify-content:space-between;align-items:baseline;padding:0 8px 8px;display:flex}.sidebar .group-name{color:var(--text-strong);padding:0 8px 8px;font-size:13.5px}.label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin:0;font-size:11px;font-weight:400}.label.accent{letter-spacing:.1em;color:var(--accent)}.nav{flex-direction:column;gap:1px;display:flex}.nav a,.nav .current{border-radius:var(--radius);color:var(--text);align-items:center;gap:8px;padding:6px 8px;display:flex}.nav a:hover{background:var(--bg-hover);color:var(--text-strong)}.nav .current,.nav a.current:hover{background:var(--accent-tint);color:var(--accent-soft)}.nav .bar{background:0 0;border-radius:2px;width:3px;height:14px;display:inline-block}.nav .current .bar{background:var(--accent)}.topics a,.topics .current{gap:9px;padding:5px 8px}.topics .dot{background:var(--dot);border-radius:1px;width:4px;height:4px;display:inline-block}.topics .current .dot{background:var(--accent)}.series-nav{font-size:13.5px}.series-nav a,.series-nav .current{border-radius:var(--radius);color:var(--text-muted);gap:9px;padding:5px 8px;display:flex}.series-nav a:hover{background:var(--bg-hover);color:var(--text)}.series-nav .current{background:var(--accent-tint);color:var(--accent-soft)}.series-nav .n{font-family:var(--font-mono);padding-top:1px;font-size:11.5px}.series-nav .title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.series-nav .between{color:var(--text);justify-content:space-between}.series-nav .count{font-family:var(--font-mono);color:var(--text-dim);font-size:11.5px}.wordmark{font-family:var(--font-mono);color:var(--text-strong);white-space:nowrap;background:var(--accent-tint);border:1px solid var(--accent-tint-border);border-radius:var(--radius);align-items:baseline;gap:1.2em;padding:3px 8px;font-size:13px;display:inline-flex}.wordmark .bang{color:var(--accent)}.wordmark .comment{color:var(--comment-green);font-size:.77em}.wordmark.inline{letter-spacing:0;vertical-align:.08em;gap:0;padding:.04em .32em;font-size:.7em;font-weight:400}.topbar{padding:13px var(--gutter);font-family:var(--font-mono);color:var(--text-dim);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;font-size:12px;display:flex}.crumbs{align-items:center;gap:8px;min-width:0;display:flex}.crumbs.text{font-family:var(--font-text);color:var(--text-muted);font-size:13.5px}.crumbs a:hover{color:var(--text-strong)}.crumbs .sep{color:var(--text-faint)}.crumbs .here{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.social{font-family:var(--font-mono);align-items:center;gap:20px;font-size:12px;display:flex}.social a{color:var(--text);align-items:center;gap:7px;display:flex}.social a:hover{color:var(--text-strong)}.mobile-bar{display:none}main{width:100%;max-width:min(1000px,100%);padding:48px var(--gutter) 96px;margin:0 auto}main.post{max-width:none;padding:40px var(--gutter) 72px;justify-content:center;display:flex}h1.title{letter-spacing:-.03em;color:var(--text-bright);text-wrap:balance;margin:0 0 12px;font-size:34px;font-weight:700;line-height:1.14}h1.title.big{font-size:40px;line-height:1.1}h1.title .hash{color:var(--accent)}.lead{color:var(--text-lead);max-width:660px;margin:0 0 16px;font-size:18.5px}.lead.intro{border-left:2px solid var(--border-strong);padding-left:16px}.lead.deck{color:var(--text-muted);max-width:640px;margin-bottom:12px;font-size:19px}.note{font-family:var(--font-mono);color:var(--text-dim);margin:10px 0 0;font-size:11.5px}.section{padding-top:36px}.section-head{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.section-head .more{font-family:var(--font-mono);color:var(--text-dim);font-size:12px}.section-head .more:hover{color:var(--text-strong)}.page-head{border-bottom:1px solid var(--border);padding-bottom:24px}.meta{font-family:var(--font-mono);color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;display:flex}.meta .tags{gap:10px;margin-left:4px;display:flex}.meta .tags a{color:var(--accent)}.meta .tags a:hover{color:var(--accent-soft)}.chips{font-family:var(--font-mono);color:var(--text-dim);flex-wrap:wrap;gap:10px;font-size:11.5px;display:flex}.chip{border:1px solid var(--border-strong);border-radius:var(--radius);padding:3px 10px}.chip a,.chip.accent{color:var(--accent-soft)}.btn{font-family:var(--font-mono);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);align-items:center;gap:8px;padding:9px 16px;font-size:12.5px;display:inline-flex}.btn:hover{background:var(--bg-hover);color:var(--text-strong)}.btn.primary{color:var(--accent-soft);background:var(--accent-tint);border-color:var(--accent-tint-border)}.btn.disabled{color:var(--text-faint);pointer-events:none;border-color:#1a1c21}.btn-row{flex-wrap:wrap;gap:10px;display:flex}.rows{flex-direction:column;display:flex}.row{border-top:1px solid var(--border);grid-template-columns:96px minmax(0,1fr);gap:20px;padding:18px 8px 18px 0;display:grid}.rows.compact .row{grid-template-columns:80px minmax(0,1fr);padding:16px 8px 16px 0}.row:last-child{border-bottom:1px solid var(--border)}.row:hover{background:var(--bg-row-hover)}.row .date{font-family:var(--font-mono);color:var(--text-dim);padding-top:4px;font-size:12.5px}.row .t{letter-spacing:-.02em;color:var(--text-strong);margin-bottom:2px;font-size:19px;font-weight:600;display:block}.rows.compact .row .t{font-size:18.5px}.row .d{color:var(--text-muted);margin-bottom:6px;font-size:16px;display:block}.row .m{font-family:var(--font-mono);color:var(--text-dim);flex-wrap:wrap;gap:12px;font-size:11.5px;display:flex}.row .m .series{color:var(--accent-soft)}.row.empty{font-family:var(--font-mono);color:var(--text-dim);grid-template-columns:1fr;font-size:12.5px}.row.empty:hover{background:0 0}.year-head{align-items:baseline;gap:14px;margin-bottom:2px;display:flex}.year-head .count{font-family:var(--font-mono);color:var(--text-dim);font-size:11px}.list-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:20px;display:flex}.list-head .title{margin-bottom:6px}.list-head .blurb{color:var(--text-muted);margin:0;font-size:16.5px}.filters{flex-wrap:wrap;gap:6px;display:flex}.filters button{font-family:var(--font-mono);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:4px 10px;font-size:11.5px}.filters button:hover{background:var(--bg-hover);color:var(--text-strong)}.filters button.on{color:var(--accent-soft);background:var(--accent-tint);border-color:#0000}.year{padding-top:28px}.row .m .when{display:none}.grid-table{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.grid-table .tr{font-family:var(--font-mono);color:var(--text-muted);border-top:1px solid var(--border-faint);gap:16px;padding:11px 16px;font-size:12.5px;display:grid}.grid-table .th{letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);background:var(--bg-raised);border-top:0;border-bottom:1px solid var(--border);padding:9px 16px;font-size:11px}.grid-table .tr+.tr:not(.th){border-top:1px solid var(--border-faint)}.grid-table .th+.tr{border-top:0}.grid-table .k{color:var(--text-code-name)}.grid-table .r{text-align:right;white-space:nowrap}.grid-table .ok{color:var(--ok)}.grid-table .warn{color:var(--warn)}.grid-table .danger{color:var(--danger)}.grid-table .empty{color:var(--text-dim);grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.card{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-code-name);flex-direction:column;gap:4px;padding:14px 16px;display:flex}a.card:hover{background:var(--bg-hover)}.card .k{font-family:var(--font-mono);color:var(--text-dim);font-size:11px}.card.right{text-align:right}.card.big{padding:16px 18px}.card.big .t{color:var(--text-strong);margin-bottom:4px;font-size:17px}.card.big p{color:var(--text-muted);margin:0;font-size:16px}.pager{font-family:var(--font-mono);border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:32px;padding-top:20px;font-size:12.5px;display:flex}.pager .nums{align-items:center;gap:4px;display:flex}.pager .nums a,.pager .nums .current{border-radius:var(--radius);color:var(--text-muted);padding:8px 13px}.pager .nums a:hover{background:var(--bg-hover);color:var(--text-strong)}.pager .nums .current{color:var(--accent-soft);background:var(--accent-tint);border:1px solid var(--accent-tint-border)}.pager .nums .gap{color:var(--text-faint);padding:0 4px}.pager .btn{padding:8px 14px}.banner{padding:10px var(--gutter);font-family:var(--font-mono);border-bottom:1px solid var(--border);align-items:center;gap:14px;font-size:11.5px;display:flex}.banner .badge{letter-spacing:.1em}.banner .why{color:var(--text-muted)}.banner.draft{background:var(--accent-tint);color:var(--accent-soft)}.banner.maintenance{background:var(--warn-bg);color:var(--warn)}.banner.coming-soon{background:var(--bg-raised);color:var(--text)}.facts{border:1px solid var(--border);border-radius:var(--radius);max-width:520px;margin-bottom:32px;overflow:hidden}.facts .tr{font-family:var(--font-mono);color:var(--text-muted);grid-template-columns:130px minmax(0,1fr);gap:16px;padding:10px 16px;font-size:12.5px;display:grid}.facts .tr+.tr{border-top:1px solid var(--border-faint)}.facts .k{color:var(--text-dim)}.facts .v{color:var(--text-code-name)}.prose{font-size:16.5px}.prose>*{max-width:var(--measure)}.prose>p{margin:0 0 26px}.prose .label{letter-spacing:.08em;font-size:11px;line-height:1.7}.prose .label.accent{letter-spacing:.1em;color:var(--accent)}.prose h2{letter-spacing:-.02em;color:var(--text-bright);margin:40px 0 14px;font-size:25px;font-weight:600;line-height:1.25}.prose h2.label{letter-spacing:.1em;color:var(--accent);margin:0 0 12px;font-size:11px;font-weight:400;line-height:1.7}.prose h3{letter-spacing:-.015em;color:var(--text-bright);margin:32px 0 12px;font-size:20px;font-weight:600}.prose h4{color:var(--text-strong);margin:24px 0 8px;font-size:17px;font-weight:600}.prose a{color:var(--accent-soft);text-decoration:underline;text-decoration-color:var(--accent-tint-border);text-underline-offset:3px}.prose a:hover{text-decoration-color:var(--accent)}.prose strong{color:var(--text-strong);font-weight:600}.prose ul,.prose ol{margin:0 0 26px;padding-left:22px}.prose li+li{margin-top:6px}.prose hr{max-width:var(--measure);border:0;border-top:1px solid var(--border);margin:36px 0}.prose blockquote{color:#a9aeb6;border-left:2px solid var(--border-strong);margin:0 0 36px;padding:0 0 0 16px;font-size:19px;line-height:1.5}.prose blockquote p{margin:0}.prose :not(pre)>code{font-family:var(--font-mono);color:var(--accent-soft);background:var(--bg-inline-code);border-radius:3px;padding:2px 6px;font-size:14px}.prose img{border:1px solid var(--border);display:block}.prose figure{margin:0 0 36px}.prose figure>figcaption:last-child{font-family:var(--font-mono);color:var(--text-dim);margin-top:8px;font-size:11.5px}.prose>figure.code,.prose>.wide,.prose>.prev-next{max-width:var(--measure-wide)}.prose>.callout{max-width:var(--measure-callout)}.prose table{border-collapse:collapse;font-family:var(--font-mono);width:fit-content;max-width:min(var(--measure-wide), 100%);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 36px;font-size:14px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;border-top:1px solid var(--border);padding:9px 14px}.prose thead th{color:var(--text-muted);background:var(--bg-raised);border-top:0;font-weight:400}.prose .footnotes{color:var(--text-muted);border-top:1px solid var(--border);margin-top:48px;padding-top:0;font-size:15px}.prose .footnotes h2{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.prose .footnotes ol{counter-reset:fn;margin:0;padding:0;list-style:none}.prose .footnotes li{border-bottom:1px solid var(--border);counter-increment:fn;gap:12px;margin:0;padding:10px 0;display:flex}.prose .footnotes li:before{content:counter(fn);font-family:var(--font-mono);color:var(--accent-soft);font-size:12px}.prose .footnotes li p{margin:0}.prose .footnotes .data-footnote-backref{color:var(--text-dim);text-decoration:none}.prose sup a{font-family:var(--font-mono);color:var(--accent-soft);font-size:.75em;text-decoration:none}figure.code{background:var(--bg-code);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 26px;position:relative;overflow:hidden}figure.code>figcaption{font-family:var(--font-mono);color:var(--text-muted);background:var(--bg-raised);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:9px 14px;font-size:12px;display:flex}figure.code .name{color:var(--text-code-name)}figure.code .copy{font-family:var(--font-mono);color:var(--accent);font-size:12px}figure.code .copy:hover{color:var(--accent-soft)}figure.code .copy.floating{background:var(--bg-code);opacity:0;border-radius:3px;padding:2px 6px;position:absolute;top:8px;right:10px}figure.code:hover .copy.floating,figure.code .copy.floating:focus-visible{opacity:1}figure.code pre{font-family:var(--font-mono);tab-size:4;margin:0;padding:16px 0;font-size:13px;line-height:1.75;overflow-x:auto;background:0 0!important}figure.code pre code{min-width:max-content;font:inherit;flex-direction:column;display:flex}figure.code .line{min-height:1lh;padding:0 14px;display:block}figure.code .line.hl{background:var(--accent-tint);border-left:2px solid var(--accent);padding-left:12px}figure.code .line.add{background:var(--diff-add-bg)}figure.code .line.add,figure.code .line.add span{color:var(--diff-add)!important}figure.code .line.del{background:var(--diff-del-bg)}figure.code .line.del,figure.code .line.del span{color:var(--diff-del)!important}figure.code.lang-console pre,figure.code.lang-log pre,figure.code.lang-shellsession pre{color:var(--text-muted);line-height:1.8}figure.code.lang-console .line span,figure.code.lang-shellsession .line span,figure.code.lang-log .line span,figure.code.lang-console .line,figure.code.lang-shellsession .line,figure.code.lang-log .line{color:var(--text-muted)!important}figure.code .line.cmd,figure.code .line.cmd span{color:var(--text-code-name)!important}figure.code .line.cmd:before{content:"$ ";color:var(--accent)}figure.code .line.stamp:first-line{color:var(--text-dim)}figure.code .line.lvl-info,figure.code .line.lvl-info span{color:var(--text-muted)!important}figure.code .line.lvl-warn,figure.code .line.lvl-warn span{color:var(--warn)!important}figure.code .line.lvl-erro,figure.code .line.lvl-erro span{color:var(--danger)!important}.callout{color:#bec4cb;background:var(--accent-tint);border:1px solid var(--accent-tint-border);border-radius:var(--radius);gap:12px;margin:0 0 26px;padding:14px 16px;font-size:15.5px;display:flex}.callout .kind{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);flex:none;padding-top:3px;font-size:11px}.callout p{margin:0}.callout p+p{margin-top:8px}.callout code{background:0 0;padding:0;font-size:13.5px}.callout.warning{color:var(--warn-text);background:var(--warn-bg);border-color:var(--warn-border)}.callout.warning .kind{color:var(--warn)}.callout.gotcha{color:var(--danger-text);background:var(--danger-bg);border-color:var(--danger-border)}.callout.gotcha .kind{color:var(--danger)}.callout.gotcha code{color:var(--diff-del)}.summary{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 8px;padding:16px 18px}.summary .label{margin-bottom:8px}.summary ul{flex-direction:column;gap:6px;margin:0;padding-left:18px;font-size:16px;display:flex}.summary ul li+li{margin:0}.quick-read{background:var(--accent-tint);border:1px solid var(--accent-tint-border);border-radius:var(--radius);margin:0 0 8px;padding:18px 20px 6px}.quick-read>.label{margin:0 0 12px}.quick-read .summary{background:0 0;border:0;padding:0}.quick-read .summary .label{display:none}.quick-read figure.video{margin-top:18px}.full-read{align-items:center;gap:14px;margin:34px 0 26px;display:flex}.full-read:before,.full-read:after{content:"";background:var(--border);flex:1;height:1px}.updated{font-family:var(--font-mono);color:var(--text-dim);align-items:center;gap:10px;margin:0 0 36px;font-size:11.5px;display:flex}.updated .badge{color:var(--accent-soft);border:1px solid var(--border-strong);border-radius:3px;padding:1px 7px}.tabs{background:var(--bg-code);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 36px;overflow:hidden}.tabs .tablist{font-family:var(--font-mono);background:var(--bg-raised);border-bottom:1px solid var(--border);justify-content:space-between;align-items:stretch;font-size:12px;display:flex}.tabs .tablist>div{display:flex}.tabs [role=tab]{font-family:var(--font-mono);color:var(--text-muted);border-right:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:-1px;padding:8px 14px;font-size:12px}.tabs [role=tab][aria-selected=true]{color:var(--text-strong);background:var(--bg-code);border-bottom-color:#0000}.tabs [role=tabpanel][hidden]{display:none}.tabs figure.code{border:0;border-radius:0;margin:0}.tabs figure.code>figcaption{display:none}.tabs{position:relative}.tabs [role=tab]{height:35px}.tabs figure.code .copy.floating{opacity:1;border-left:1px solid var(--border);background:0 0;border-radius:0;height:35px;padding:0 14px;top:0;right:0}.tabs .tools{display:flex}details.snippet{background:var(--bg-sidebar);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 36px}details.snippet>summary{font-family:var(--font-mono);color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;padding:11px 14px;font-size:12.5px;list-style:none;display:flex}details.snippet>summary::-webkit-details-marker{display:none}details.snippet>summary .caret{color:var(--accent);margin-right:10px}details.snippet>summary .hint{color:var(--text-dim)}details.snippet>summary .hint:after{content:"show"}details.snippet[open]>summary .hint:after{content:"hide"}details.snippet>summary .caret:before{content:"▸"}details.snippet[open]>summary .caret:before{content:"▾"}details.snippet>:not(summary){border-top:1px solid var(--border)}details.snippet figure.code{border:0;border-radius:0;margin:0}.spec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 12px;display:grid}.spec{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;font-size:12.5px;line-height:2}.spec .label{margin-bottom:4px}.spec .kv{justify-content:space-between;gap:16px;display:flex}.spec .kv .v{color:var(--text-code-name);text-align:right}.spec .kv .v.accent{color:var(--accent-soft)}ol.steps{margin:0 0 36px;padding:0;list-style:none}ol.steps>li{border-top:1px solid var(--border);grid-template-columns:34px minmax(0,1fr);gap:14px;margin:0;padding:14px 0;display:grid}ol.steps>li:last-child{border-bottom:1px solid var(--border)}ol.steps .n{font-family:var(--font-mono);color:var(--accent-soft);font-size:12.5px}ol.steps .t{color:var(--text-strong)}ol.steps .d{color:var(--text-muted);font-size:15.5px}ol.steps .d p{margin:0}.flow{font-family:var(--font-mono);background:var(--bg-sidebar);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 36px;padding:20px;font-size:12.5px;display:flex}.flow .box{color:var(--text-code-name);border:1px solid var(--border-strong);border-radius:3px;padding:8px 12px}.flow .box.accent{color:var(--accent-soft);background:var(--accent-tint);border-color:var(--accent-tint-border)}.flow .arrow{color:var(--text-dim)}.placeholder{min-height:220px;font-family:var(--font-mono);text-align:center;color:var(--text-dim);border:1px solid var(--border);border-radius:var(--radius);background-image:repeating-linear-gradient(135deg,#14161a 0 10px,#0d0e11 10px 20px);justify-content:center;align-items:center;padding:0 12px;font-size:12.5px;display:flex}ol.annotations{color:#a9aeb6;flex-direction:column;gap:6px;margin:0 0 36px;padding:0;font-size:15.5px;list-style:none;display:flex}ol.annotations li{gap:10px;margin:0;display:flex}ol.annotations .n{font-family:var(--font-mono);color:var(--accent-soft);padding-top:2px;font-size:12.5px}.prev-next{grid-template-columns:1fr 1fr;gap:12px;margin-top:36px;display:grid}.toc{font-family:var(--font-mono);color:var(--text);border-bottom:1px solid var(--border);margin:0 0 18px;font-size:12px}.toc summary{cursor:pointer;justify-content:space-between;padding:12px 0;list-style:none;display:flex}.toc summary::-webkit-details-marker{display:none}.toc summary .hint{color:var(--text-dim)}.toc ol{margin:0;padding:0 0 12px;list-style:none}.toc li{padding:6px 0}.toc li.d3{padding-left:16px}.toc a:hover{color:var(--text-strong)}main.about{grid-template-columns:minmax(0,1fr) 260px;gap:56px;display:grid}.rail{font-family:var(--font-mono);color:var(--text-muted);font-size:12.5px;line-height:1.9}.rail .sticky{flex-direction:column;gap:24px;display:flex;position:sticky;top:24px}.portrait{border:1px solid var(--border);border-radius:var(--radius);width:100%;height:auto;display:block}.rail .text.current{color:#f0369f}.lumos{color:inherit;align-items:center;gap:5px;text-decoration:none;display:inline-flex}.lumos svg{color:#b14bf4;opacity:.85;flex:none;transition:opacity .15s}.lumos:hover svg,.lumos:focus-visible svg{opacity:1}@supports (background-clip:text){.rail .text.current{background:linear-gradient(95deg,#ff7a18 0%,#f0369f 52%,#b14bf4 100%);color:#0000;-webkit-background-clip:text;background-clip:text}}.lumos:hover .lumos-name,.lumos:focus-visible .lumos-name{text-underline-offset:3px;text-decoration:underline #f0369f}.since{color:var(--text-muted);font-size:.6em}.rail .block+.block{border-top:1px solid var(--border);padding-top:20px}.rail .block .label{margin-bottom:6px}.rail .text{font-family:var(--font-text);color:var(--text);font-size:15.5px;line-height:1.6}.rail .chips{gap:6px;font-size:11.5px}.rail .chip{padding:2px 8px}.terms{flex-direction:column;margin-bottom:28px;display:flex}.terms .tr{border-top:1px solid var(--border);grid-template-columns:150px minmax(0,1fr);gap:18px;padding:12px 0;display:grid}.terms .tr:last-child{border-bottom:1px solid var(--border)}.terms .k{font-family:var(--font-mono);color:var(--accent-soft);font-size:12.5px}.log{font-family:var(--font-mono);flex-direction:column;font-size:13px;display:flex}.log .tr{border-top:1px solid var(--border);grid-template-columns:96px minmax(0,1fr);gap:20px;padding:12px 0;display:grid}.log .tr:last-child{border-bottom:1px solid var(--border)}.log .date{color:var(--text-dim)}.log .text{font-family:var(--font-text);color:var(--text);font-size:16px}.log .text code{font-family:var(--font-mono);color:var(--accent-soft);font-size:13.5px}main.status{padding:88px var(--gutter)}main.status .code{font-family:var(--font-mono);letter-spacing:.1em;color:var(--accent);margin-bottom:16px;font-size:12px}main.status h1.title{max-width:640px;margin-bottom:14px;font-size:38px;line-height:1.12}main.status .lead,main.status figure.code{max-width:600px;margin-bottom:36px}@media (width<=999px){:root{--sidebar-w:200px}.prose>figure.code,.prose>.wide,.prose>.prev-next{max-width:none}.prose>table{max-width:100%}main.about{grid-template-columns:minmax(0,1fr)}main.about .rail{display:none}}@media (width<=759px){:root{--gutter:16px}body{font-size:15.5px;line-height:1.65}.shell{display:block}.sidebar,.topbar{display:none}.mobile-bar{z-index:50;background:var(--bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:11px 16px;display:flex;position:sticky;top:0}.mobile-bar .wordmark .comment{font-size:9.5px}.mobile-bar .context{font-family:var(--font-mono);color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.mobile-bar .left{align-items:center;gap:10px;min-width:0;display:flex}.mobile-bar.post .wordmark .comment{display:none}.mobile-bar.post .wordmark{gap:0;padding:3px 7px}.menu-btn{width:40px;height:40px;color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);justify-content:center;align-items:center;display:flex}.menu-btn[aria-expanded=true]{color:var(--accent-soft);background:var(--accent-tint);border-color:var(--accent-tint-border)}.sheet{z-index:40;background:var(--bg-sidebar);padding:16px;position:fixed;inset:63px 0 0;overflow-y:auto}.sheet .nav{gap:2px;margin-bottom:22px}.sheet .nav a,.sheet .nav .current{gap:10px;padding:12px;font-size:17px}.sheet .nav .bar{height:16px}.sheet .group{border-top:1px solid var(--border);padding-top:18px}.sheet .group .label{padding:0 12px 8px}.sheet .topic-chips{flex-wrap:wrap;gap:8px;padding:0 12px 22px;display:flex}.sheet .topic-chips a{min-height:44px;font-family:var(--font-mono);border:1px solid var(--border-strong);border-radius:var(--radius);align-items:center;padding:8px 12px;font-size:12.5px;display:inline-flex}.sheet .topic-chips a.current{color:var(--accent-soft);background:var(--accent-tint);border-color:var(--accent-tint-border)}.sheet .series-nav a{color:var(--text);padding:10px 12px;font-size:16px}.sheet .social{border-top:1px solid var(--border);flex-direction:column;align-items:stretch;gap:2px;padding-top:18px;font-size:13px}.sheet .social a{gap:10px;padding:11px 12px}body.sheet-open{overflow:hidden}main,main.post,main.status{padding:24px var(--gutter) 64px}h1.title,h1.title.big{letter-spacing:-.025em;font-size:26px;line-height:1.16}.lead,.lead.deck{font-size:16.5px}.row,.rows.compact .row{padding:13px 0;display:block}.row .date,.row .d{display:none}.row .m .when{display:inline}.row .m{order:-1;margin-bottom:3px}.row .t{font-size:17px}.cards,.spec-grid{grid-template-columns:1fr}.grid-table .tr{gap:2px;grid-template-columns:1fr!important}.grid-table .th{display:none}.grid-table .r{text-align:left}.prev-next{grid-template-columns:1fr}.prose>figure.code,.prose>.tabs,.prose>astro-island>.tabs,.prose>details.snippet{border-left:0;border-right:0;border-radius:0;margin-left:-16px;margin-right:-16px}.terms .tr{grid-template-columns:1fr;gap:4px}.pager{flex-wrap:wrap;gap:12px}.topbar-only{display:none}}@media (width>=760px){.toc{display:none}}
