:root{--code-share:62%;--code-size:calc(var(--fs) * .82);--code-lead:1.55}.flow{column-gap:calc(var(--mu) * 4);font-size:var(--fs);line-height:var(--lh)}.flow>:first-child{margin-top:0}.flow p{margin:0 0 var(--lh)}.flow p:last-child{margin-bottom:0}.flow strong{font-weight:600}.flow em{font-style:italic}.flow ul,.flow ol{padding-inline-start:calc(var(--mu) * 3)}.flow a{color:inherit;text-underline-offset:.18em;text-decoration-line:underline;text-decoration-thickness:from-font}.sq[data-figure] .flow{flex-direction:column;display:flex}.lead{font-family:var(--mono);font-size:calc(var(--mu) * 1.5);letter-spacing:.17em;color:var(--faint);text-transform:uppercase;margin-bottom:calc(var(--mu) * 3);flex:none}.flow h1{font-size:calc(var(--mu) * 5.2);letter-spacing:-.023em;margin:0 0 calc(var(--mu) * 3);font-weight:600;line-height:1.08}.sq[data-display] .flow>h1+p{font-size:calc(var(--mu) * 2.4);color:var(--faint);line-height:1.42}.flow h2{font-size:calc(var(--mu) * 2.6);letter-spacing:-.012em;margin:0 0 calc(var(--mu) * 2.5);font-weight:600;line-height:1.2}.flow code{font-family:var(--mono);font-size:.88em}.flow pre{border:1px solid var(--rule);padding:calc(var(--mu) * 2);min-height:0;margin:0;overflow:auto}.sq[data-template=code] .flow>h2{column-span:all}.sq[data-template=code] .flow .code-viewer{height:var(--code-share)}.code-viewer{border:1px solid var(--rule);column-span:all;min-height:0;margin-block:0 var(--lh);flex-direction:column;display:flex;overflow:hidden}.code-head{padding:calc(var(--mu) * 1) calc(var(--mu) * 2);border-bottom:1px solid var(--rule);font-family:var(--mono);font-size:calc(var(--mu) * 1.3);letter-spacing:.16em;text-transform:uppercase;color:var(--faint);flex:none;justify-content:space-between;align-items:center;display:flex}.code-copy{color:var(--faint);cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.code-copy:hover{color:var(--ink)}.code-copy[data-copied]:after{content:"copied";font-size:calc(var(--mu) * 1.2);letter-spacing:.14em;margin-inline-start:calc(var(--mu) * 1)}.code-copy[data-copied] svg{display:none}.code-viewer pre{min-height:0;padding:calc(var(--mu) * 2);border:0;flex:1;margin:0;overflow:auto}.code-viewer pre code{font-size:var(--code-size);line-height:var(--code-lead);color:var(--ink)}.flow blockquote{font-size:calc(var(--mu) * 3.1);letter-spacing:-.012em;margin:auto 0;font-weight:600;line-height:1.28}.flow blockquote cite{font-family:var(--mono);font-style:normal;font-size:calc(var(--mu) * 1.4);letter-spacing:.14em;color:var(--faint);margin-top:calc(var(--mu) * 2.5);display:block}.flow figure{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;margin:0;display:flex}.flow figure svg,.flow figure img{width:auto;max-width:100%;height:auto;max-height:100%;color:var(--ink)}.flow figcaption{font-family:var(--mono);font-size:calc(var(--mu) * 1.4);letter-spacing:.13em;color:var(--faint);text-transform:uppercase;margin-top:calc(var(--mu) * 2);flex:none}.flow pre.diagram-source{border:1px dashed var(--rule);color:var(--faint);font-size:calc(var(--mu) * 1.3);flex:1;line-height:1.6}.comic-strip{gap:calc(var(--mu) * 2);align-items:center;width:100%;display:flex}.comic-cell{aspect-ratio:1;border:1px dashed var(--rule);flex:1}.sq[data-figure] .comic svg{max-height:100%}.flow .shape{color:var(--red)}:root{--sq:520px;--mu:8.125px;--fs:21.8px;--lh:32.5px;--across:1;--pad:48px;--u:65px}*,:before,:after{box-sizing:border-box}html{background:var(--ground);color:var(--ink);-webkit-text-size-adjust:none}body{font-family:var(--prose);margin:0}::selection{background:#ffffff29}:root[data-ground=light] ::selection{background:#0000001f}.meta{font-family:var(--mono);font-size:calc(var(--mu) * 1.5);letter-spacing:.06em;color:var(--faint);text-transform:lowercase;margin:0}.meta a{color:inherit;text-decoration:none}.meta a:hover{color:var(--ink)}.site-footer{padding:calc(var(--mu) * 3) var(--pad);max-width:1800px;margin-inline:auto}.console-dock{height:var(--u);z-index:40;background:var(--ground);border-top:1px solid var(--rule);position:fixed;bottom:0;left:0;right:0;overflow:clip visible}.read{padding:calc(var(--mu) * 8) var(--pad) calc(var(--mu) * 20)}.spreads{grid-template-columns:repeat(var(--across), var(--sq));gap:calc(var(--mu) * 4);justify-content:center;margin:0 auto;display:grid}.sq{width:var(--sq);height:var(--sq);padding:calc(var(--mu) * 2);flex-direction:column;display:flex;position:relative;overflow:hidden}.sq.wide{width:100%;height:var(--sq);grid-column:1/-1}.flow{column-fill:auto;flex:1;min-height:0}.chargrid{font-family:var(--mono);font-size:var(--cell-size);letter-spacing:var(--cell-tracking);pointer-events:none;user-select:none;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;bottom:0;left:0;right:0}.chargrid-row{height:var(--cell-h);line-height:var(--cell-h);white-space:pre;transform-origin:50% 100%;--k:min(1, calc(var(--depth) / 6));opacity:calc(1 - .42 * var(--k));filter:contrast(calc(1 - .2 * var(--k)));position:relative}.chargrid [data-tone=faint]{color:var(--faint)}.chargrid [data-tone=ink]{color:var(--ink)}.chargrid [data-tone=blue]{color:var(--blue)}.chargrid [data-tone=red]{color:var(--red)}.chargrid [data-tone=invert]{color:var(--ground);background:var(--ink)}.chargrid [data-pick]{pointer-events:auto;cursor:pointer}.chargrid [data-pick]:hover,.chargrid [data-pick]:focus-visible{color:var(--ground);background:var(--ink);outline:none}.chargrid-cursor{left:calc(var(--col) * var(--cell-w));width:var(--cell-w);height:var(--cell-h);background:var(--ink);animation:1.1s step-end infinite chargrid-blink;position:absolute}@keyframes chargrid-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.chargrid-cursor{animation:none}}.console{height:var(--u);position:absolute;bottom:0;left:0;right:0;overflow:visible}.console-input{width:100%;height:100%;font-family:var(--mono);font-size:var(--cell-size);color:#0000;caret-color:#0000;background:0 0;border:0;outline:0;padding:0;position:absolute;inset:0}.console-input::selection{background:0 0}.console-grid{z-index:1}.console[data-medium=site]{width:calc(var(--u) * 16);margin-left:calc(var(--u) * -8);left:50%;right:auto}.console-stack{height:calc(var(--u) * 9);perspective:calc(var(--u) * var(--perspective-u));perspective-origin:50%;transform-style:preserve-3d;z-index:2;pointer-events:none;position:absolute;bottom:0;left:0;right:0}.console-hit{height:calc(var(--u) * 9);width:calc(var(--card-columns) * var(--cell-w));margin-left:calc(var(--card-columns) * var(--cell-w) / -2);z-index:1;pointer-events:none;position:absolute;bottom:0;left:50%}.console-hit[data-open=""]{pointer-events:auto}.console-card .chargrid-row{height:var(--card-lead);line-height:var(--card-lead)}.console-body{left:calc(var(--card-text) * var(--cell-w));top:var(--card-lead);width:calc(var(--card-measure) * var(--cell-w));height:calc(var(--room,1) * var(--card-lead));font-family:var(--prose);font-size:calc(var(--card-size) * var(--mu));line-height:var(--card-lead);color:var(--ink);pointer-events:none;-webkit-font-smoothing:antialiased;position:absolute;overflow:hidden}.console-body p{margin:0}.console-body p+p{margin-top:var(--card-lead)}.console-ruler{visibility:hidden;height:auto;top:0}.console-card{left:50%;bottom:calc(var(--bottom,0) * var(--mu));width:calc(var(--card-columns) * var(--cell-w));height:calc(var(--h,8) * var(--mu));pointer-events:auto;cursor:pointer;transform:translateX(-50%) translateZ(calc(var(--z) * var(--u)));will-change:transform;background:var(--ground);opacity:var(--fade,1);border:0;position:absolute;overflow:hidden}.console-shape{top:calc(var(--mu) * -2);left:calc(var(--mu) * -2);width:calc(100% + var(--mu) * 4);height:calc(100% + var(--mu) * 4);pointer-events:none;z-index:0;position:absolute;overflow:visible}.console-shape path{fill:none;stroke:var(--rule);shape-rendering:crispedges}.console-card[data-hit=off]{pointer-events:none}.console-card .chargrid{position:static}html[data-embed] .site-header,html[data-embed] .console-dock{display:none}html[data-embed] .read{padding-bottom:calc(var(--mu) * 8)}
