.a-cover[data-astro-cid-pqy33q6t]{margin:0}.a-cover-slot[data-astro-cid-pqy33q6t]{aspect-ratio:1200/630;width:100%;max-height:78svh;position:relative}.a-cover-frame[data-astro-cid-pqy33q6t]{background:var(--paper);position:absolute;inset:0;overflow:hidden}.a-cover-frame[data-astro-cid-pqy33q6t] img[data-astro-cid-pqy33q6t]{object-fit:cover;width:100%;height:100%;display:block}.fly[data-astro-cid-pqy33q6t] .a-cover-frame[data-astro-cid-pqy33q6t]{z-index:5;position:fixed;inset:auto}figcaption[data-astro-cid-pqy33q6t]{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding-block:.8rem;display:flex}.explainer{scroll-margin-top:calc(var(--barh) + 1rem);flex-direction:column;gap:.6rem;margin:0;display:flex}.ex-frame{border:1px solid var(--line);background:#09090b;position:relative}.ex-frame video{aspect-ratio:16/9;width:100%;height:auto;display:block}.ex-toggle{color:#e5eef0;cursor:pointer;background:#0f1a1dd1;border:0;place-items:center;width:2.75rem;height:2.75rem;display:grid;position:absolute;top:.75rem;right:.75rem}.ex-toggle:hover{color:#beff33}.ex-toggle .i-pause,.ex-toggle[data-playing=true] .i-play{display:none}.ex-toggle[data-playing=true] .i-pause{display:inline}.prose .explainer{max-width:none;margin-block:2em}.a-head{flex-direction:column;gap:1.4rem;padding-block:clamp(2rem,5vw,4.5rem) clamp(1.5rem,3vw,2.5rem);display:flex}.a-head h1{overflow-wrap:break-word;hyphens:auto;max-width:16ch;font-size:clamp(2.8rem,1rem + 7vw,8.5rem);font-weight:900;line-height:.84}.a-meta{flex-direction:column;gap:.35rem;display:flex}.a-tags{flex-wrap:wrap;gap:.25rem .55rem;margin:0;padding:0;list-style:none;display:flex}.a-tags li{color:var(--ink);white-space:nowrap}.a-tags li:not(:last-child):after{content:"·";color:var(--muted);margin-left:.55rem}.a-tags a{color:var(--accent);text-decoration:none}.a-tags a:hover{text-decoration:underline}.a-head .lede{font-size:var(--step-1);max-width:42ch;color:var(--muted);line-height:1.35}.a-grid{grid-template-columns:13rem minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);padding-block:clamp(2rem,5vw,4rem) clamp(3rem,6vw,6rem);display:grid}.a-grid.no-rail{grid-template-columns:minmax(0,1fr)}.rail{top:calc(var(--barh) + 1.5rem);max-height:calc(100svh - var(--barh) - 3rem);max-height:calc(100dvh - var(--barh) - 3rem);flex-direction:column;align-self:start;gap:.7rem;display:flex;position:sticky}.rail nav{flex-direction:column;gap:.7rem;min-height:0;display:flex}.rail ol{scrollbar-width:none;overscroll-behavior:contain;flex-direction:column;gap:.55rem;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.rail ol::-webkit-scrollbar{display:none}.rail ol.scrolls{padding-block:1rem;mask-image:linear-gradient(#0000,#000 1.5rem calc(100% - 1.5rem),#0000)}.rail a{font-family:var(--mono);color:var(--muted);border-left:2px solid var(--line);padding-left:.7rem;font-size:.8rem;line-height:1.35;text-decoration:none;display:block}.rail a:hover{color:var(--ink)}.rail a[aria-current]{color:var(--ink);border-color:var(--dot)}.toc-toggle,.toc-progress{display:none}.a-body{flex-direction:column;gap:2.5rem;min-width:0;display:flex}.a-explainer{max-width:65ch}.a-dock{aspect-ratio:1200/630;flex:none;width:100%;margin-bottom:.8rem}.a-dock:not(.on){display:none}.a-hero,.a-title{flex-direction:column;gap:1.4rem;display:flex}.a-hero .a-cover{order:1;margin-inline:calc(50% - 50vw)}@media (width>=768px){.a-hero{--over:clamp(3rem, 9vw, 10rem);grid-template-columns:minmax(0,10fr) minmax(0,13fr);align-items:center;gap:0 clamp(1.5rem,3vw,3rem);display:grid}.a-hero .a-cover{order:0;grid-area:1/1;margin-inline:0}.a-hero .a-cover figcaption{padding-inline:0}.a-title{z-index:6;margin-left:calc(-1 * var(--over));grid-area:1/2;position:relative}.a-title>:not(h1){margin-left:var(--over)}.a-title h1{max-width:none}}@media (width>=768px) and (orientation:landscape) and (height<=500px){.a-title h1{-webkit-text-stroke:.1em var(--paper);paint-order:stroke fill}}.a-next{border-top:2px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:65ch;padding-top:1rem;display:grid}.a-next a{color:var(--ink);flex-direction:column;gap:.4rem;text-decoration:none;display:flex}.a-next a+a{text-align:right;grid-column:2}.a-next .t{font-family:var(--display);text-transform:uppercase;font-size:1.5rem;font-weight:800;line-height:.95}.a-next a:hover .t{color:var(--accent)}@media (width<=980px){.a-grid{grid-template-columns:11rem minmax(0,1fr)}}@media (width<=767px){.a-head .lede{font-size:1.2rem}.a-grid{grid-template-columns:minmax(0,1fr)}.rail{max-height:none;position:static}.rail ol{scrollbar-width:none;flex-direction:row;gap:1rem;overflow:auto visible}.rail ol.scrolls{padding-block:0;mask-image:none}.rail a{white-space:nowrap}.rail.toc-js{top:calc(var(--barh) + env(safe-area-inset-top,0px));z-index:20;padding-inline:max(16px, env(safe-area-inset-left,0px)) max(16px, env(safe-area-inset-right,0px));background:var(--paper);border-bottom:1px solid var(--line);margin-inline:calc(50% - 50vw);position:sticky}.rail.toc-js .toc-head{display:none}.rail.toc-js .toc-toggle{width:100%;min-height:2.9rem;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.7rem;padding:0;display:flex}.toc-count{font-variant-numeric:tabular-nums;flex:none}.toc-cur{min-width:0;font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.8rem;overflow:hidden}.toc-chev{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:.5rem;height:.5rem;transform:translateY(-25%)rotate(45deg)}.toc-toggle[aria-expanded=true] .toc-chev{transform:translateY(25%)rotate(-135deg)}.rail.toc-js .toc-progress{background:var(--dot);transform-origin:0;height:2px;transform:scaleX(var(--read,0));display:block;position:absolute;bottom:-1px;left:0;right:0}.rail.toc-js ol{max-height:min(60dvh,26rem);padding:.6rem max(16px, env(safe-area-inset-right,0px)) 1rem max(16px, env(safe-area-inset-left,0px));background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:.2rem;display:none;position:absolute;inset:100% 0 auto;overflow:hidden auto;box-shadow:0 1.5rem 2rem -1.5rem #0f1a1d59}.rail.toc-js.open ol{display:flex}.rail.toc-js ol.scrolls{mask-image:none}.rail.toc-js a{white-space:normal;padding-block:.55rem;font-size:.85rem}.prose h2,.prose h3{scroll-margin-top:calc(var(--barh) + 4.5rem)}}
