.iso{--anatomy-page:#0b0b0b;--anatomy-card:#131313;--anatomy-text:#a3a3a3;--anatomy-strong:#e6e6e6;--anatomy-muted:#6e6e6e;--anatomy-paper:#131313;--anatomy-face:#1b1b1b;--anatomy-top:#1c1c1c;--anatomy-shade-0:#0f0f0f;--anatomy-shade-1:#121212;--anatomy-shade-2:#151515;--anatomy-shade-3:#181818;--anatomy-lit-top:#262626;--anatomy-lit-shade:#1d1d1d;--anatomy-hi:#d4d4d4;--anatomy-mid:#6a6a6a;--anatomy-lo:#3e3e3e;--anatomy-faint:#2a2a2a;--anatomy-lit:#ffffff;--anatomy-halo:#050505;--anatomy-halo-opacity:.9;--anatomy-dot:#e6e6e6;--anatomy-red:#ff6b6b;--anatomy-green:#6be0a0;--anatomy-blue:#6b9bff;--anatomy-weight:.6px;--anatomy-ease:cubic-bezier(.32,.72,0,1);--anatomy-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--anatomy-lift:inset 0 1px 0 0 #ffffff0a,inset 0 0 0 1px #ffffff06,0 0 0 1px #00000026,0 1px 1px -.5px #00000014,0 3px 3px -1.5px #00000014,0 6px 6px -3px #00000014,0 12px 12px -6px #00000014}.iso[data-theme=light]{--anatomy-page:#f2f2ef;--anatomy-card:#fbfbfa;--anatomy-text:#57575a;--anatomy-strong:#18181a;--anatomy-muted:#8c8c90;--anatomy-paper:#fbfbfa;--anatomy-face:#ffffff;--anatomy-top:#ffffff;--anatomy-shade-0:#dcdcd9;--anatomy-shade-1:#e5e5e2;--anatomy-shade-2:#ededea;--anatomy-shade-3:#f4f4f1;--anatomy-lit-top:#ffffff;--anatomy-lit-shade:#eeeeeb;--anatomy-hi:#26262a;--anatomy-mid:#8a8a8f;--anatomy-lo:#b4b4b8;--anatomy-faint:#d4d4d6;--anatomy-lit:#000000;--anatomy-halo:#8a8a80;--anatomy-halo-opacity:.32;--anatomy-dot:#3a3a3e;--anatomy-red:#e5484d;--anatomy-green:#30a46c;--anatomy-blue:#3e63dd;--anatomy-lift:inset 0 1px 0 0 #ffffff,0 0 0 1px #0000000f,0 1px 1px -.5px #0000000a,0 3px 3px -1.5px #0000000a,0 6px 6px -3px #0000000a,0 12px 12px -6px #0000000a}.iso-svg{display:block;width:100%;height:auto;overflow:visible}.iso-svg circle,.iso-svg path{vector-effect:non-scaling-stroke}.iso-fill{fill:var(--anatomy-paper);stroke:none}.iso-solid[data-lit]>.iso-fill{fill:var(--anatomy-face)}.iso-shade,.iso-top{stroke:none}.iso-shade[data-shade="0"]{fill:var(--anatomy-shade-0)}.iso-shade[data-shade="1"]{fill:var(--anatomy-shade-1)}.iso-shade[data-shade="2"]{fill:var(--anatomy-shade-2)}.iso-shade[data-shade="3"]{fill:var(--anatomy-shade-3)}.iso-top{fill:var(--anatomy-top)}.iso-solid[data-lit]>.iso-top{fill:var(--anatomy-lit-top)}.iso-solid[data-lit]>.iso-shade{fill:var(--anatomy-lit-shade)}.iso-solid[data-seamless]>.iso-shade,.iso-solid[data-seamless]>.iso-top{stroke-width:.4;stroke-linejoin:round}.iso-solid[data-seamless]>.iso-shade[data-shade="0"]{stroke:var(--anatomy-shade-0)}.iso-solid[data-seamless]>.iso-shade[data-shade="1"]{stroke:var(--anatomy-shade-1)}.iso-solid[data-seamless]>.iso-shade[data-shade="2"]{stroke:var(--anatomy-shade-2)}.iso-solid[data-seamless]>.iso-shade[data-shade="3"]{stroke:var(--anatomy-shade-3)}.iso-solid[data-seamless]>.iso-top{stroke:var(--anatomy-top)}.iso-solid[data-seamless][data-lit]>.iso-top{stroke:var(--anatomy-lit-top)}.iso-solid[data-seamless][data-lit]>.iso-shade{stroke:var(--anatomy-lit-shade)}.iso-solid[data-lit]>.iso-edge{stroke:var(--anatomy-lit)}.iso-halo{fill:var(--anatomy-halo);stroke:none;filter:blur(9px);opacity:var(--anatomy-halo-opacity);transform:translateY(3px)}.iso-line{fill:none;stroke:var(--anatomy-lo);stroke-width:var(--anatomy-weight);stroke-linecap:round;stroke-linejoin:round}.iso-line[data-tone=hi]{stroke:var(--anatomy-hi)}.iso-line[data-tone=mid]{stroke:var(--anatomy-mid)}.iso-line[data-tone=lo]{stroke:var(--anatomy-lo)}.iso-line[data-tone=faint]{stroke:var(--anatomy-faint)}.iso-line[data-tone=lit]{stroke:var(--anatomy-lit)}.iso-line[data-tone=red]{stroke:var(--anatomy-red)}.iso-line[data-tone=green]{stroke:var(--anatomy-green)}.iso-line[data-tone=blue]{stroke:var(--anatomy-blue)}.iso-line[data-dotted]{stroke-dasharray:.01 3.5;stroke-width:1}.iso-line[data-dashed]{stroke-dasharray:3 3}.iso-line[data-flow]{stroke-dasharray:2 6}.iso-wire-end{fill:var(--anatomy-paper);stroke:var(--anatomy-lo);stroke-width:var(--anatomy-weight)}.iso-wire[data-tone=hi] .iso-wire-end{stroke:var(--anatomy-hi)}.iso-wire[data-tone=mid] .iso-wire-end{stroke:var(--anatomy-mid)}.iso-wire[data-tone=faint] .iso-wire-end{stroke:var(--anatomy-faint)}.iso-wire[data-tone=lit] .iso-wire-end{stroke:var(--anatomy-lit)}.iso-dots circle{fill:var(--anatomy-dot);stroke:none;opacity:.32}.iso-dots[data-tone=hi] circle{opacity:.85}.iso-dots[data-tone=mid] circle{opacity:.45}.iso-dots[data-tone=lo] circle{opacity:.22}.iso-dots[data-tone=faint] circle{opacity:.12}.iso-face-text{fill:var(--anatomy-mid);font-family:var(--anatomy-mono);letter-spacing:.04em}.iso-face-text[data-tone=hi]{fill:var(--anatomy-hi)}.iso-face-text[data-tone=lo]{fill:var(--anatomy-lo)}.iso-face-text[data-tone=faint]{fill:var(--anatomy-faint)}.tb-body{fill:var(--anatomy-shade-2);stroke:none}.tb-shine{fill:var(--anatomy-top);stroke:none}.tb-shade{fill:var(--anatomy-shade-0);stroke:none}.tb-ring{fill:none;stroke:var(--anatomy-lo);stroke-width:.45;stroke-linecap:butt;stroke-linejoin:round}.tb-ring[data-tone=mid]{stroke:var(--anatomy-mid)}.tb-ring[data-tone=faint]{stroke:var(--anatomy-faint)}.tb-ring[data-tone=hi]{stroke:var(--anatomy-hi)}@keyframes iso-flow{to{stroke-dashoffset:-32}}@keyframes iso-pulse{0%,to{opacity:.18}12%{opacity:1}40%{opacity:.18}}.iso-line[data-flow]{animation:iso-flow 1.6s linear infinite}.iso-dots circle[data-pulse]{animation:iso-pulse 1.6s step-end infinite;animation-delay:var(--pulse-at,0s)}.iso-figure{margin:32px 0 36px}.iso-plate{position:relative;padding:52px 24px;border-radius:0;background:var(--anatomy-card);box-shadow:0 0 0 1px var(--anatomy-mid);--anatomy-paper:var(--anatomy-card)}.iso-plate-corners{position:absolute;inset:18px 20px;pointer-events:none}.iso-plate-corner{position:absolute;color:var(--anatomy-muted);font-family:var(--anatomy-mono);font-size:10.5px;line-height:1;letter-spacing:.04em;white-space:nowrap}.iso-plate-corner[data-corner=fig]{top:0;left:0;color:var(--anatomy-text)}.iso-plate-corner[data-corner=title]{top:0;right:0;text-transform:uppercase;letter-spacing:.1em}.iso-plate-corner[data-corner=hint]{bottom:0;left:0;text-transform:uppercase;letter-spacing:.1em}.iso-plate-corner[data-corner=readout]{right:0;bottom:0;color:var(--anatomy-text);font-variant-numeric:tabular-nums}.iso-plate .iso-svg{margin:0 auto}.iso-legend{display:grid;gap:8px;margin-top:12px;color:var(--anatomy-muted);font-size:13px;line-height:1.55}.iso-keys{display:flex;flex-wrap:wrap;gap:6px 18px}.iso-key{display:inline-flex;align-items:center;gap:7px}.iso-swatch{width:16px;height:10px;flex:none;overflow:visible}.iso-swatch path{fill:none;stroke:var(--anatomy-hi);stroke-width:1;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.iso-swatch[data-mark=flat] path,.iso-swatch[data-mark=raised] path{stroke:var(--anatomy-mid)}.iso-swatch[data-mark=lit] path{stroke:var(--anatomy-lit)}.iso-swatch[data-mark=dim] path{stroke:var(--anatomy-lo)}.iso-swatch[data-mark=dotted] path{stroke-dasharray:.01 3;stroke-width:1.4}.iso-swatch[data-mark=dashed] path{stroke-dasharray:3 2.5}.iso-swatch[data-mark=red] path{stroke:var(--anatomy-red)}.iso-swatch[data-mark=green] path{stroke:var(--anatomy-green)}.iso-swatch[data-mark=blue] path{stroke:var(--anatomy-blue)}.iso-swatch-crease{stroke:var(--anatomy-lo)!important}@media (max-width:560px){.iso-plate{padding:48px 12px 70px}.iso-plate-corner[data-corner=hint]{bottom:18px}}@media (prefers-reduced-motion:reduce){.iso-dots circle[data-pulse],.iso-line[data-flow]{animation:none}}.bk{--anatomy-paper:var(--paper,#faf9f7);--anatomy-hi:#2a2522;--anatomy-mid:#8d867c;--anatomy-lo:#b9b2a7;--anatomy-faint:#d9d2c6;--anatomy-halo:#6f675b;--anatomy-weight:0.7px;--bk-paper:var(--paper,#faf9f7);--bk-paper-lo:#bdb3a3;--bk-edge:#f1ebe0;--bk-edge-lo:#b4a993;--bk-cloth:#34302c;--bk-cloth-lo:#0e0c0b;--bk-end:#ede5d6;--bk-end-lo:#b2a68f;--bk-ribbon:oklch(0.5 0.11 262);--bk-ribbon-lo:oklch(0.28 0.08 262);--bk-band-a:#ece4d4;--bk-band-a-lo:#a2967f;--bk-band-b:#4a423b;--bk-band-b-lo:#1a1714;--bk-ink:var(--ink,#211d1a);--bk-soft:var(--ink-2,#5c564f);--bk-rule:#dcd5ca;--bk-faint:#cdc5b8;--bk-pencil:#8f8a84;--bk-marble-a:#c7b99c;--bk-marble-b:#998d77;--bk-marble-c:#ddd2bd;--bk-foil:#efe7d6;--bk-deboss:#12100e;--bk-edgeline:#d6cdbd}.bk-f{stroke-width:.6px;stroke-linejoin:round}.bk-f[data-m=paper],.bk-p[data-ink=plate]{fill:color-mix(in oklab,var(--bk-paper-lo) calc(var(--s) * 100%),var(--bk-paper));stroke:color-mix(in oklab,var(--bk-paper-lo) calc(var(--s) * 100%),var(--bk-paper))}.bk-p[data-ink=plate]{stroke:none}.bk-p[data-ink=flap]{fill:color-mix(in oklab,var(--bk-paper-lo) calc((var(--s) + .22) * 100%),var(--bk-paper))}.bk-f[data-m=edge]{fill:color-mix(in oklab,var(--bk-edge-lo) calc(var(--s) * 100%),var(--bk-edge));stroke:color-mix(in oklab,var(--bk-edge-lo) calc(var(--s) * 100%),var(--bk-edge))}.bk-f[data-m=cloth]{fill:color-mix(in oklab,var(--bk-cloth-lo) calc(var(--s) * 100%),var(--bk-cloth));stroke:color-mix(in oklab,var(--bk-cloth-lo) calc(var(--s) * 100%),var(--bk-cloth))}.bk-f[data-m=endpaper]{fill:color-mix(in oklab,var(--bk-end-lo) calc(var(--s) * 100%),var(--bk-end));stroke:color-mix(in oklab,var(--bk-end-lo) calc(var(--s) * 100%),var(--bk-end))}.bk-f[data-m=ribbon]{fill:color-mix(in oklab,var(--bk-ribbon-lo) calc(var(--s) * 100%),var(--bk-ribbon));stroke:color-mix(in oklab,var(--bk-ribbon-lo) calc(var(--s) * 100%),var(--bk-ribbon))}.bk-f[data-m=bandA]{fill:color-mix(in oklab,var(--bk-band-a-lo) calc(var(--s) * 100%),var(--bk-band-a));stroke:color-mix(in oklab,var(--bk-band-a-lo) calc(var(--s) * 100%),var(--bk-band-a))}.bk-f[data-m=bandB]{fill:color-mix(in oklab,var(--bk-band-b-lo) calc(var(--s) * 100%),var(--bk-band-b));stroke:color-mix(in oklab,var(--bk-band-b-lo) calc(var(--s) * 100%),var(--bk-band-b))}.bk .bk-edge[data-tone=hi]{stroke:#0b0a09}.bk .bk-leaf-edge{stroke:#a39b8f;stroke-width:.6px}.bk .bk-ribbon-edge{stroke:oklch(.3 .08 262);stroke-width:.5px}.bk-l{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:max(.4px,calc(var(--k) * .22px))}.bk-l[data-ink=rule]{stroke:var(--bk-rule);stroke-linecap:butt;stroke-width:max(.5px,calc(var(--k) * 1.2px))}.bk-l[data-ink=ink]{stroke:var(--bk-ink)}.bk-l[data-ink=soft]{stroke:var(--bk-soft)}.bk-l[data-ink=faint]{stroke:var(--bk-faint)}.bk-l[data-ink=pencil]{stroke:var(--bk-pencil);stroke-width:max(.45px,calc(var(--k) * .32px))}.bk-l[data-ink^=marble]{stroke-width:max(.5px,calc(var(--k) * .95px));stroke-linecap:butt}.bk-l[data-ink=marbleA]{stroke:var(--bk-marble-a)}.bk-l[data-ink=marbleB]{stroke:var(--bk-marble-b)}.bk-l[data-ink=marbleC]{stroke:var(--bk-marble-c)}.bk-l[data-ink=foil]{stroke:var(--bk-foil);stroke-width:max(.4px,calc(var(--k) * .3px))}.bk-l[data-ink=deboss]{stroke:var(--bk-deboss);stroke-width:max(.45px,calc(var(--k) * .5px))}.bk-l[data-ink=weave]{stroke:#ffffff;stroke-opacity:.035;stroke-width:max(.3px,calc(var(--k) * .25px));stroke-linecap:butt}.bk-l[data-ink=edgeline]{stroke:var(--bk-edgeline);stroke-width:.5px;stroke-linecap:butt}.bk-d[data-ink=soft]{fill:var(--bk-soft)}.bk-d[data-ink=foil]{fill:var(--bk-foil)}.bk-d[data-ink=ink]{fill:var(--bk-ink)}.bk-p[data-ink=foil]{fill:var(--bk-foil)}.bk-p[data-ink=soft]{fill:var(--bk-soft)}.bk-t{stroke:none;text-rendering:geometricPrecision}.bk-t[data-font=sans]{font-family:var(--font-geist-sans),ui-sans-serif,system-ui,sans-serif}.bk-t[data-font=display]{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:500}.bk-t[data-font=mono]{font-family:var(--font-geist-mono),ui-monospace,monospace}.bk-t[data-ink=ink]{fill:var(--bk-ink)}.bk-t[data-ink=soft]{fill:var(--bk-soft)}.bk-t[data-ink=foil]{fill:var(--bk-foil)}.bk-t[data-ink=deboss]{fill:var(--bk-deboss)}.intro{position:fixed;inset:0;z-index:60;background:var(--paper,#faf9f7);cursor:pointer;touch-action:none}.intro svg{display:block;width:100%;height:100%;overflow:visible}.intro-hint{position:absolute;left:0;right:0;bottom:22px;text-align:center;font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.08em;color:var(--ink-3,#a09a91);pointer-events:none;transition:opacity .3s ease}.sh{--anatomy-halo:#6f675b;--sh-dark:#1c1714;--sh-edge:#221d19}.sh-f{--fill:color-mix(in oklab,color-mix(in oklab,var(--sh-dark) calc(var(--s) * 100%),var(--c)),#fffaf0 calc(var(--h) * 100%));fill:var(--fill);stroke:var(--fill);stroke-width:.5px;stroke-linejoin:round}.sh-edge{fill:none;stroke:var(--sh-edge);stroke-width:.7px;stroke-linejoin:round;stroke-linecap:round}.sh-edge.sh-thin{stroke-width:.45px}.sh-crease{fill:none;stroke:#1c1612;stroke-opacity:.4;stroke-width:.5px;stroke-linecap:round}.sh-l{fill:none;stroke-linecap:butt;stroke-width:max(.3px,calc(var(--k) * var(--w) * 1px))}.sh-t{stroke:none;text-rendering:geometricPrecision}.sh-t[data-font=sans]{font-family:var(--font-geist-sans),ui-sans-serif,system-ui,sans-serif}.sh-t[data-font=display]{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:500}.sh-t[data-font=mono]{font-family:var(--font-geist-mono),ui-monospace,monospace}code[class*=language-],pre[class*=language-]{color:black;background:none;text-shadow:0 1px white;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:slategray}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#DD4A68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}