:root{--def-ease:cubic-bezier(0.16, 1, 0.3, 1)}.term{appearance:none;background:0 0;border:0;padding:0;margin:0;font:inherit;cursor:pointer;color:rgb(var(--c-accent));border-radius:3px;transition:color .12s}.term:hover{text-decoration:underline;text-underline-offset:2px}.term[aria-expanded=true]{text-decoration:underline;text-underline-offset:2px}.term:focus-visible{outline:2px solid rgb(var(--c-accent));outline-offset:2px}.def-windows{position:fixed;inset:0;z-index:60;pointer-events:none}@media(max-width:1023px){.def-windows{display:none}}.def-win{box-sizing:border-box;position:fixed;width:20rem;max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);display:flex;flex-direction:column;pointer-events:auto;border-radius:.875rem;background:rgb(var(--glass-bg)/.94);border:1px solid rgb(var(--c-border));-webkit-backdrop-filter:blur(14px)saturate(160%);backdrop-filter:blur(14px)saturate(160%);box-shadow:inset 0 1px rgb(var(--glass-hi)/.5),0 18px 44px -16px rgb(0 0 0/.28);opacity:0;transform:scale(.82);transition:opacity 120ms var(--def-ease),transform 200ms var(--def-ease)}.def-win.is-open{opacity:1;transform:scale(1)}.def-win:focus-visible{outline:2px solid rgb(var(--c-accent));outline-offset:2px}.def-win.is-dragging{transition:none;box-shadow:0 26px 60px -18px rgb(0 0 0/.4)}@media(prefers-color-scheme:dark){.def-fig{--fig-blue:#60a5fa;--fig-blue-rgb:96 165 250;--fig-violet:#a78bfa;--fig-violet-rgb:167 139 250;--fig-true:#60a5fa;--fig-true-rgb:96 165 250;--fig-false:#f87171;--fig-false-rgb:248 113 113}}@media(prefers-color-scheme:dark){.def-win{box-shadow:inset 0 1px rgb(var(--glass-hi)/.1),0 18px 44px -16px rgb(0 0 0/.75)}}.def-win__head>*,.def-win__body{opacity:0;transition:opacity 170ms var(--def-ease)}.def-win.is-filled .def-win__head>*,.def-win.is-filled .def-win__body{opacity:1}.def-win__body{transition-delay:40ms;overflow-y:auto;padding:14px 16px 16px}.def-win__head{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 10px 16px;border-bottom:1px solid rgb(var(--c-border)/.7);cursor:grab;touch-action:none;user-select:none}.def-win.is-dragging .def-win__head{cursor:grabbing}.def-win__label{margin:0;font:600 .66rem var(--font-mono,ui-monospace,monospace);letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c-accent))}.def-win__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;border:1px solid rgb(var(--c-border));background:rgb(var(--c-bg)/.6);color:rgb(var(--c-muted));cursor:pointer;transition:color .12s,border-color .12s}.def-win__close:hover{color:rgb(var(--c-accent));border-color:rgb(var(--c-accent))}.def-win__close:focus-visible{outline:2px solid rgb(var(--c-accent));outline-offset:2px}@media(prefers-reduced-motion:reduce){.def-win{transition:opacity .01s;transform:none}.def-win.is-open{transform:none}.def-win__head>*,.def-win__body{transition:opacity .01s}}.def-body{margin:0;font-size:.95rem;line-height:1.6;color:rgb(var(--c-fg))}.def-body strong{font-weight:700}.def-body+.def-body{margin-top:.6rem}.def-bullets{margin:.6rem 0 0;padding-left:1.15rem;list-style:disc;font-size:.95rem;line-height:1.6;color:rgb(var(--c-fg))}.def-bullets>li+li{margin-top:.4rem}.def-bullets>li::marker{color:rgb(var(--c-accent)/.7)}.def-ref{appearance:none;background:0 0;border:0;padding:0;margin:0;font:inherit;cursor:pointer;color:rgb(var(--c-accent));text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;border-radius:3px;transition:color .12s}.def-ref:hover{text-decoration-style:solid}.def-ref:focus-visible{outline:2px solid rgb(var(--c-accent));outline-offset:2px}.def-words{margin-top:12px}.def-words__label{margin:0 0 6px;font:600 .6rem var(--font-mono,ui-monospace,monospace);letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c-muted))}.def-words__list{display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none}.def-words__list li{padding:2px 8px;border-radius:999px;border:1px solid rgb(var(--c-border));background:rgb(var(--c-muted)/.06);font-size:.78rem;line-height:1.45;color:rgb(var(--c-fg));transition:color 200ms var(--def-ease),border-color 200ms var(--def-ease),background-color 200ms var(--def-ease)}.def-words__list li.is-on{color:rgb(var(--c-accent));border-color:rgb(var(--c-accent));background:rgb(var(--c-accent)/.1)}.def-table{width:100%;margin-top:12px;border-collapse:collapse;table-layout:fixed;font-size:.8rem;line-height:1.5}.def-table th{padding:0 8px 5px;text-align:left;font:600 .6rem var(--font-mono,ui-monospace,monospace);letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c-muted));border-bottom:1px solid rgb(var(--c-border))}.def-table td{padding:4px 8px;color:rgb(var(--c-fg));border-bottom:1px solid rgb(var(--c-border)/.45);transition:color 200ms var(--def-ease),background-color 200ms var(--def-ease)}.def-table tr:last-child td{border-bottom:0}.def-table td.is-on{color:rgb(var(--c-accent));background:rgb(var(--c-accent)/.1)}.def-table td+td,.def-table th+th{border-left:1px solid rgb(var(--c-border)/.45)}.def-table--terms td{padding:3px 8px}.def-table--terms .def-ref{font-size:.8rem}.def-fig{margin:12px 0 0;padding:0;--fig-ok:#22c55e;--fig-bad:#ef4444;--fig-blue:#2563eb;--fig-blue-rgb:37 99 235;--fig-violet:#7c3aed;--fig-violet-rgb:124 58 237;--fig-true:#2563eb;--fig-true-rgb:37 99 235;--fig-false:#dc2626;--fig-false-rgb:220 38 38}.fig-map{display:block;width:100%;max-width:190px;height:auto;margin:0 auto}.fig-node__ring{fill:rgb(var(--c-muted)/.07);stroke:rgb(var(--c-border));stroke-width:1.5;transition:fill 200ms var(--def-ease),stroke 200ms var(--def-ease)}.fig-node__label{font:600 13px var(--font-mono,ui-monospace,monospace);fill:rgb(var(--c-muted));transition:fill 200ms var(--def-ease)}.fig-link{stroke:rgb(var(--c-border));stroke-width:2;stroke-linecap:round;stroke-dasharray:5 7;animation:fig-flow 1.4s linear infinite;transition:stroke 200ms var(--def-ease)}.fig-node.is-lit .fig-node__ring{fill:rgb(var(--c-accent)/.12);stroke:rgb(var(--c-accent))}.fig-node.is-lit .fig-node__label{fill:rgb(var(--c-accent))}.fig-link.is-lit{stroke:rgb(var(--c-accent))}.fig-node.is-dim,.fig-link.is-dim{opacity:.34}@keyframes fig-flow{to{stroke-dashoffset:-24}}.def-fig--madlib{margin-top:14px}.fig-line{margin:0;font-size:.88rem;line-height:1.7;color:rgb(var(--c-muted))}.fig-tok{position:relative;display:inline-block;white-space:nowrap}.fig-tok__t{display:inline-block}.fig-slot{box-sizing:border-box;padding:1px 7px;border:1px dashed rgb(var(--c-accent)/.6);border-radius:6px;background:rgb(var(--c-accent)/.08);font-weight:600;color:rgb(var(--c-accent))}.fig-ghost{position:absolute;left:0;top:0;padding:inherit;white-space:nowrap;pointer-events:none;user-select:none;-webkit-user-select:none}.fig-tv{display:block;width:100%;max-width:200px;height:auto;margin:0 auto}.tv-node__ring{fill:rgb(var(--c-muted)/.07);stroke:rgb(var(--c-border));stroke-width:1.5;transition:fill 300ms var(--def-ease),stroke 300ms var(--def-ease)}.tv-node__label{font:600 13px var(--font-mono,ui-monospace,monospace);fill:rgb(var(--c-muted));transition:fill 300ms var(--def-ease),opacity 300ms var(--def-ease)}.tv-node--reveal .tv-node__label{opacity:0}.tv-node--reveal.is-on .tv-node__label{opacity:1}.tv-node--source.is-on .tv-node__ring{fill:rgb(var(--c-accent)/.14);stroke:rgb(var(--c-accent))}.tv-node--source.is-on .tv-node__label{fill:rgb(var(--c-accent))}.tv-node--true.is-on .tv-node__ring{fill:rgb(var(--fig-true-rgb)/.16);stroke:var(--fig-true)}.tv-node--true.is-on .tv-node__label{fill:var(--fig-true)}.tv-node--false.is-on .tv-node__ring{fill:rgb(var(--fig-false-rgb)/.16);stroke:var(--fig-false)}.tv-node--false.is-on .tv-node__label{fill:var(--fig-false)}.tv-track{stroke:rgb(var(--c-border));stroke-width:2}.tv-fill{stroke:rgb(var(--c-accent));stroke-width:2;stroke-linecap:round;transform-box:fill-box;transform-origin:left center;transform:scaleX(0);transition:transform 380ms var(--def-ease)}.tv-fill.is-on{transform:scaleX(1)}.fig-glow{display:block;width:100%;max-width:200px;height:auto;margin:0 auto}.gl-node__ring{fill:rgb(var(--c-muted)/.07);stroke:rgb(var(--c-border));stroke-width:1.5;transition:fill 400ms var(--def-ease),stroke 400ms var(--def-ease)}.gl-node.is-on .gl-node__ring{fill:rgb(var(--glow-rgb)/.16);stroke:var(--glow)}.gl-link{stroke:rgb(var(--c-border));stroke-width:2;stroke-linecap:round;transition:stroke 400ms var(--def-ease),opacity 400ms var(--def-ease)}.gl-link.is-on{stroke:var(--glow);stroke-dasharray:5 7;animation:fig-flow 1.4s linear infinite}.gl-link:not(.is-on){opacity:.4}.gl-crown{fill:rgb(var(--c-muted)/.5)}.gl-values{display:flex;justify-content:center;gap:18px;margin:2px 0 0}.gl-struck{font:600 .72rem var(--font-mono,ui-monospace,monospace);color:rgb(var(--c-muted)/.8);text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:rgb(var(--c-muted)/.8)}.fig-bx{display:block;width:100%;max-width:200px;height:auto;margin:0 auto}.bx-node__ring{fill:rgb(var(--c-muted)/.07);stroke:rgb(var(--c-border));stroke-width:1.5;transition:fill 320ms var(--def-ease),stroke 320ms var(--def-ease)}.bx-node__label{font:600 13px var(--font-mono,ui-monospace,monospace);fill:rgb(var(--c-muted));transition:fill 320ms var(--def-ease)}.bx-node.is-on .bx-node__ring{fill:rgb(var(--c-accent)/.14);stroke:rgb(var(--c-accent))}.bx-node.is-on .bx-node__label{fill:rgb(var(--c-accent))}.bx-glyph{fill:none;stroke:rgb(var(--c-muted));stroke-width:1.4;transition:stroke 320ms var(--def-ease)}.bx-node.is-on .bx-glyph{stroke:rgb(var(--c-accent))}.bx-mark{fill:none;stroke:rgb(var(--c-muted)/.8);stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round;opacity:0;transition:opacity 320ms var(--def-ease)}.bx-mark.is-on{opacity:1}.bx-track{stroke:rgb(var(--c-border));stroke-width:2;fill:none}.bx-line{stroke:rgb(var(--c-accent));stroke-width:2;stroke-linecap:round;fill:none;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 460ms var(--def-ease)}.bx-panel{fill:rgb(var(--c-muted)/.06);stroke:rgb(var(--c-border));stroke-width:1.5;opacity:0;transition:opacity 320ms var(--def-ease)}.bx-panel.is-on{opacity:1}.bx-textline{fill:rgb(var(--c-muted)/.55);opacity:0;transform:translateX(-6px);transition:opacity 300ms var(--def-ease),transform 300ms var(--def-ease)}.bx-textline.is-on{opacity:1;transform:none}.def-fig--infer{display:flex;flex-direction:column;align-items:center}.fig-infer{display:block;width:64px;height:64px}.if-value{margin:5px 0 0;font:600 .76rem var(--font-mono,ui-monospace,monospace);transition:color 320ms var(--def-ease)}.if-value.is-true{color:var(--fig-true)}.if-value.is-false{color:var(--fig-false)}.def-fig--glow .gl-node.is-accent .gl-node__ring{fill:rgb(var(--c-accent)/.14);stroke:rgb(var(--c-accent))}.def-fig--glow .gl-link.is-accent{stroke:rgb(var(--c-accent))}.gl-values--under{position:relative;height:1.1em;max-width:200px;margin-left:auto;margin-right:auto}.gl-mark{position:absolute;left:var(--at,50%);transform:translateX(-50%);font:600 .72rem var(--font-mono,ui-monospace,monospace);color:rgb(var(--c-accent))}.gl-warn{fill:none;stroke:rgb(var(--c-accent));stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.fig-ev{display:block;width:100%;height:auto;margin:0 auto}.ev-link{fill:none;stroke:rgb(var(--c-accent));stroke-width:2;stroke-linecap:round;stroke-dasharray:5 7;animation:fig-flow 1.4s linear infinite;opacity:0;transition:opacity 340ms var(--def-ease)}.ev-link.is-on{opacity:1}.ev-arc{fill:none;stroke:var(--fig-false);stroke-width:2.4;stroke-linecap:round;transition:stroke-dashoffset 620ms var(--def-ease),stroke 300ms var(--def-ease)}.ev-arc.is-over{stroke:var(--fig-ok)}.ev-arc.is-empty{opacity:0}.def-fig--sf{font-size:.85rem;line-height:1.5}.sf-lines{margin:0;padding:0;list-style:none}.sf-line{display:flex;align-items:baseline;gap:8px;margin:0 0 3px;color:rgb(var(--c-fg))}.sf-tag{flex-shrink:0;width:1.2rem;font:600 .62rem var(--font-mono,ui-monospace,monospace);color:rgb(var(--c-muted))}.sf-rule{margin:6px 0;border:0;border-top:1px solid rgb(var(--c-border))}.sf-concl{margin:0;font-weight:500}.sf-concl .sf-tag{color:rgb(var(--c-accent));font-size:.8rem}.fig-pipe{display:block;width:100%;max-width:200px;height:auto;margin:0 auto}.fig-step__ring{fill:rgb(var(--c-muted)/.07);stroke:rgb(var(--c-border));stroke-width:1.5;transition:fill 260ms var(--def-ease),stroke 260ms var(--def-ease)}.fig-step__label{font:600 13px var(--font-mono,ui-monospace,monospace);fill:rgb(var(--c-muted));transition:opacity 200ms var(--def-ease)}.fig-step__check{stroke:var(--fig-ok);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 300ms var(--def-ease)}.fig-step.is-done .fig-step__ring{fill:rgb(34 197 94/.14);stroke:var(--fig-ok)}.fig-step.is-done .fig-step__label{opacity:0}.fig-step.is-done .fig-step__check{stroke-dashoffset:0}.fig-pipe__track{stroke:rgb(var(--c-border));stroke-width:2}.fig-pipe__fill{stroke:var(--fig-ok);stroke-width:2;stroke-linecap:round;transform-box:fill-box;transform-origin:left center;transform:scaleX(0);transition:transform 320ms var(--def-ease)}.fig-pipe__fill.is-done{transform:scaleX(1)}.fig-step__arc{fill:none;stroke:var(--fig-bad);stroke-width:2.4;stroke-linecap:round;transition:stroke 220ms var(--def-ease)}.fig-step__arc.is-over{stroke:var(--fig-ok)}.fig-step--ring .fig-step__check{display:none}@media(prefers-reduced-motion:reduce){.fig-link,.ev-link{animation:none}.ev-link,.ev-arc{transition:none}.tv-node__ring,.tv-node__label,.tv-fill{transition:none}.gl-node__ring,.gl-link{transition:none}.gl-link.is-on{animation:none}.bx-node__ring,.bx-node__label,.bx-glyph,.bx-mark,.bx-line,.bx-panel,.bx-textline,.if-value{transition:none}.bx-textline{transform:none}.fig-node__ring,.fig-node__label,.fig-link,.fig-line,.fig-step__ring,.fig-step__label,.fig-step__check,.fig-pipe__fill,.fig-step__arc{transition:none}}[data-definition-body] .def-body{font-size:inherit;line-height:inherit}