.diagram{--dg-bg:var(--raised);--dg-plane:var(--raised);--dg-frame:var(--line);--dg-ink:var(--ink);--dg-muted:var(--muted);--dg-line:var(--fig-axis);--dg-hair:var(--fig-hair);--dg-accent:var(--fig-gold);--dg-accent-2:var(--fig-blue);--dg-pos:var(--fig-blue);--dg-neg:var(--fig-red);--dg-teal:var(--fig-teal);--dg-green:var(--fig-green);--dg-yellow:var(--fig-yellow);--dg-red:var(--fig-red);--dg-h0:color-mix(in srgb, var(--fig-blue) 38%, var(--raised));--dg-h1:color-mix(in srgb, var(--fig-hair) 60%, var(--raised));--dg-h2:color-mix(in srgb, var(--fig-gold) 38%, var(--raised));--dg-mesh:color-mix(in srgb, var(--ink) 18%, transparent);--dg-w-hair:1;--dg-w-line:1.5;--dg-w-mark:2;--dg-w-accent:2.5;--c-slope:var(--dg-accent);--c-fn:var(--dg-accent-2);--c-point:var(--dg-ink);color:var(--dg-ink)}.dg-plate{flex-direction:column;gap:.75rem;max-width:56rem;padding:clamp(1rem,3vw,1.75rem);display:flex;overflow:hidden;container-type:inline-size}.dg-eq{text-align:center;color:var(--dg-ink);min-height:1.6em;font-size:clamp(.8rem,3.4cqi,1.7rem);overflow-x:auto}.dg-eq .katex{font-size:1em}.dg-svg{width:100%;height:auto;display:block;overflow:visible}.dg-label{font-family:KaTeX_Main,Times New Roman,serif;font-size:calc(14px * var(--dg-k,1));fill:var(--dg-muted)}.dg-label[data-tone=ink]{fill:var(--dg-ink)}.dg-label[data-tone=accent]{fill:var(--dg-accent)}.dg-label[data-tone=accent-2]{fill:var(--dg-accent-2)}.dg-label[data-tone=teal]{fill:var(--dg-teal)}.dg-label[data-tone=green]{fill:var(--dg-green)}.dg-label[data-tone=yellow]{fill:var(--dg-yellow)}.dg-label[data-tone=red]{fill:var(--dg-red)}.dg-var{font-family:KaTeX_Math,KaTeX_Main,serif;font-style:italic}.dg-sub{font-size:.7em}.dg-label[data-size=lg]{font-size:calc(18px * var(--dg-k,1))}.dg-stroke{fill:none;stroke:var(--dg-line);stroke-width:var(--dg-w-line);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.dg-stroke[data-tone=ink]{stroke:var(--dg-ink)}.dg-stroke[data-tone=hair]{stroke:var(--dg-hair);stroke-width:var(--dg-w-hair)}.dg-stroke[data-tone=accent]{stroke:var(--dg-accent);stroke-width:var(--dg-w-accent)}.dg-stroke[data-tone=accent-2]{stroke:var(--dg-accent-2);stroke-width:var(--dg-w-mark)}.dg-stroke[data-tone=pos]{stroke:var(--dg-pos)}.dg-stroke[data-tone=neg]{stroke:var(--dg-neg)}.dg-stroke[data-tone=teal]{stroke:var(--dg-teal);stroke-width:var(--dg-w-mark)}.dg-stroke[data-tone=green]{stroke:var(--dg-green);stroke-width:var(--dg-w-mark)}.dg-stroke[data-tone=yellow]{stroke:var(--dg-yellow);stroke-width:var(--dg-w-mark)}.dg-stroke[data-tone=red]{stroke:var(--dg-red);stroke-width:var(--dg-w-mark)}.dg-stroke[data-weight=hair]{stroke-width:var(--dg-w-hair)}.dg-stroke[data-weight=mark]{stroke-width:var(--dg-w-mark)}.dg-fill-ink{fill:var(--dg-ink)}.dg-fill-accent{fill:var(--dg-accent)}.dg-fill-accent-2{fill:var(--dg-accent-2)}.dg-fill-ground{fill:var(--dg-bg)}.dg-fill-plane{fill:var(--dg-plane)}.dg-mesh{stroke:var(--dg-mesh);stroke-width:.6px;stroke-linejoin:round}.dg-states{font-family:var(--font-label);letter-spacing:.02em;flex-wrap:wrap;align-items:baseline;gap:.35rem 1.1rem;font-size:.72rem;display:flex}.dg-states button{color:var(--dg-muted);cursor:pointer;transition:color .16s var(--ease-out), border-color .16s var(--ease-out);border-bottom:1px solid #0000;padding:.15rem 0}.dg-states button:hover{color:var(--dg-ink)}.dg-states button[aria-current=step]{color:var(--dg-ink);border-bottom-color:var(--dg-accent)}.dg-states .dg-num{color:var(--dg-muted);margin-right:.4em}.dg-states .dg-replay{margin-left:auto}.dg-figure{gap:.5rem}.dg-caption{color:var(--dg-muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.35rem 1rem;font-size:.9rem;line-height:1.5;display:flex}.dg-caption-text{flex:18rem}.dg-caption-actions{font-family:var(--font-label);letter-spacing:.02em;gap:1rem;font-size:.72rem;display:flex}.dg-caption-actions button{color:var(--dg-muted);cursor:pointer;transition:color .16s var(--ease-out), border-color .16s var(--ease-out);border-bottom:1px solid #0000;padding:.15rem 0}.dg-caption-actions button:hover{color:var(--dg-ink);border-bottom-color:var(--dg-accent)}