:root{--ink: #111;--ink-2: #444;--ink-3: #777;--rule: #ddd;--bg: #fff;--bg-soft: #f4f4f4;--text: "Cambria Math", Cambria, Caladea, Georgia, serif;--mono: ui-monospace, "SF Mono", Consolas, monospace}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:16px}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 var(--text)}h1,h2,h3,h6{line-height:1.25}h2{font-size:1.45rem;margin:2.5rem 0 1rem}h3{font-size:1.2rem;margin:1.75rem 0 .75rem}.tag{display:inline-block;min-width:1.33em;padding-right:1rem}p{margin:0 0 1rem}ul,ol{padding-left:2em;margin:0 0 1rem}li{margin-bottom:4px}a{color:#1a0dab;text-decoration:none}a:hover{text-decoration:underline}img,svg{max-width:100%;height:auto}code{font:.88em var(--mono)}.muted{color:var(--ink-3)}.small{font-size:15px}.todo{font:13px var(--mono);background:#ffc;padding:0 4px}body{display:grid;grid-template-columns:17rem minmax(0,1fr);grid-template-rows:auto 1fr auto}.nav,.site-footer{grid-column:1 / -1}.page{grid-column:2;padding:2.5rem max(16px,4vw) 0 2rem;min-width:0}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 20px;padding:10px max(16px,2vw);background:var(--bg-soft);border-bottom:1px solid var(--rule);font-size:15px}.brand{font-weight:700;color:var(--ink);margin-right:auto}.nav-links{display:flex;flex-wrap:wrap;gap:4px 18px;list-style:none;margin:0;padding:0}.nav-links li{margin:0}.nav-links a[aria-current=page]{color:var(--ink);font-weight:600}.toc{grid-column:1;grid-row:2;position:sticky;top:0;align-self:start;max-height:100vh;overflow-y:auto;padding:2.5rem 1rem 2rem max(16px,2vw);border-right:1px solid var(--rule);font-size:.85rem}.toc p{font-size:1.1rem;font-weight:700;margin-bottom:.75rem}.toc ol{list-style:none;padding:0;margin:0}.toc li{margin-bottom:.4rem}.toc li.sub{margin-left:1.5rem}.toc a{color:var(--ink)}.toc a:hover{color:#1a0dab;text-decoration:none}.toc .tag{min-width:2.2em;padding-right:.4rem}@media(max-width:1000px){body{display:block}.toc{display:none}.page{padding:1.5rem 16px 0}}.site-footer{margin-top:4rem;padding:1rem 16px 2.5rem;border-top:1px solid var(--rule);text-align:center;font-size:13px;color:var(--ink-3)}.hero{text-align:center;margin-bottom:2rem}.hero h1{font-size:1.9rem;font-weight:400;margin:0 0 1rem}.byline strong{font-weight:400}.abstract{margin:0 auto 2.5rem;max-width:90%}.abstract h6{font-size:1.1rem;text-align:center;margin:0 0 .75rem}figure{margin:2rem 0}.fig-body{overflow-x:auto}.fig-body svg,.fig-body>img{display:block;margin:0 auto}figcaption{font-size:15px;margin-top:.75rem;text-align:center}figcaption b{font-weight:400;margin-right:4px}.eq{position:relative;margin:1.25rem 0;overflow-x:auto;overflow-y:hidden}.eq-num{position:absolute;right:0;top:50%;transform:translateY(-50%)}.code{margin:1.25rem 0}.code-head{font:13px var(--mono);color:var(--ink-3)}.code pre{margin:4px 0 0;padding:12px 14px;background:var(--bg-soft);overflow-x:auto;font:14px/1.5 var(--mono)}.code .c{color:var(--ink-3)}.table-wrap{margin:1.5rem auto;overflow-x:auto;width:fit-content;max-width:100%}table{border-collapse:collapse;font-size:15px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}th,td{text-align:left;padding:4px 12px;vertical-align:top}thead th{border-bottom:1px solid var(--ink);font-weight:600}.num{text-align:right;font-variant-numeric:tabular-nums}tfoot td{font-weight:600;border-top:1px solid var(--ink)}.bar{height:10px;background:var(--ink-3)}.note{margin:1.25rem 0;padding-left:16px;border-left:3px solid var(--rule)}.note p:last-child{margin:0}sup.fn a{font-size:12px}.refs{font-size:15px;list-style:none;padding-left:2.5em;counter-reset:ref}.refs li{counter-increment:ref;position:relative}.refs li:before{content:"[" counter(ref) "]";position:absolute;left:-2.5em}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:1.25rem 0}.grid-2 figure{margin:0}.grid-2 img{display:block;width:100%;image-rendering:pixelated}.dg text{font-family:var(--text);fill:var(--ink)}.dg .t-sm{font-size:11px;fill:var(--ink-3)}.dg .box{fill:var(--bg);stroke:var(--ink-3);stroke-width:1.2}.dg .box-soft{fill:var(--bg-soft);stroke:var(--ink-3);stroke-width:1.2}.dg .box-strong{fill:var(--bg-soft);stroke:var(--ink);stroke-width:2}.dg .ln{stroke:var(--ink-3);stroke-width:1.4;fill:none}.dg .ln-strong{stroke:var(--ink);stroke-width:1.6;fill:none}.dg .dash{stroke-dasharray:4 4}.dg .fill-ink{fill:var(--ink-3)}.dg .fill-strong{fill:var(--ink)}.pipe{display:grid;grid-template-columns:minmax(0,2.2fr) auto minmax(0,1fr) auto minmax(0,1.6fr);align-items:center;gap:10px}.pipe-step img{display:block;width:100%}.pipe-step p{font:12.5px/1.4 var(--text);color:var(--ink-3);margin:8px 0 0}.pipe-step p b{display:block;color:var(--ink)}.pipe-arrow{font-size:20px;color:var(--ink-3)}.probs{display:grid;gap:5px}.prob{display:grid;grid-template-columns:84px 1fr 44px;align-items:center;gap:6px;font:11px var(--mono);color:var(--ink-3)}.prob i{display:block;height:9px;min-width:1px;background:var(--ink-3)}.prob em{font-style:normal;text-align:right;font-variant-numeric:tabular-nums}.prob.top{color:var(--ink);font-weight:600}.prob.top i{background:var(--ink)}@media(max-width:640px){.pipe{grid-template-columns:minmax(0,1fr)}.pipe-arrow{transform:rotate(90deg);justify-self:center}.pipe-crop img{max-width:160px}}.rot-row{display:flex;justify-content:center;gap:28px;flex-wrap:wrap}.rot-row div{text-align:center}.rot-row img{display:block;width:120px;height:120px;margin:14px}.rot-row span{font:13px var(--mono);color:var(--ink-3)}.cm td{background:rgb(17 17 17 / calc(var(--a) * .85))}.cm td[style*="--a:0.00"]{color:var(--ink-3)}.cm td.dark{color:var(--bg);font-weight:600}.cm th{font-weight:500}.video-section h2{font-size:2rem}.video{position:relative;aspect-ratio:16 / 9;margin:1rem 0 .5rem;background:#000}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
