:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#eef1f5;--text:#1b1f24;--text-2:#4a5360;--line:#c9d0d9;--line-strong:#8a94a3;--accent:#2457c5;--accent-text:#fff;--focus:#2457c5;--c-active:#2457c5;--c-compare:#a35a00;--c-visit:#0b7285;--c-new:#1e7d3c;--c-done:#1e7d3c;--c-remove:#b8480f;--c-found:#7a3db8;--c-error:#c0262d;--c-stale:#6b7480;--cell-live:#fff;--cell-empty:#f1f3f6;--code-hl:#dfe8fb;--radius:10px;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=contrast]){--bg:#0f1216;--surface:#171b21;--surface-2:#1f252d;--text:#e6e9ee;--text-2:#a9b2bf;--line:#333b46;--line-strong:#5d6878;--accent:#7aa2ff;--accent-text:#0f1216;--focus:#7aa2ff;--c-active:#7aa2ff;--c-compare:#f0b45a;--c-visit:#4fc7d9;--c-new:#5ccf7f;--c-done:#5ccf7f;--c-remove:#ff9a5c;--c-found:#c49bff;--c-error:#ff7b7b;--c-stale:#8b95a3;--cell-live:#1d232b;--cell-empty:#141820;--code-hl:#23324f;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1216;--surface:#171b21;--surface-2:#1f252d;--text:#e6e9ee;--text-2:#a9b2bf;--line:#333b46;--line-strong:#5d6878;--accent:#7aa2ff;--accent-text:#0f1216;--focus:#7aa2ff;--c-active:#7aa2ff;--c-compare:#f0b45a;--c-visit:#4fc7d9;--c-new:#5ccf7f;--c-done:#5ccf7f;--c-remove:#ff9a5c;--c-found:#c49bff;--c-error:#ff7b7b;--c-stale:#8b95a3;--cell-live:#1d232b;--cell-empty:#141820;--code-hl:#23324f;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=contrast]{--bg:#000;--surface:#000;--surface-2:#111;--text:#fff;--text-2:#e0e0e0;--line:#fff;--line-strong:#fff;--accent:#ffd400;--accent-text:#000;--focus:#ffd400;--c-active:#00e5ff;--c-compare:#ffd400;--c-visit:#00e5ff;--c-new:#0f6;--c-done:#0f6;--c-remove:#ff9a00;--c-found:#f6f;--c-error:#ff4d4d;--c-stale:#b0b0b0;--cell-live:#000;--cell-empty:#000;--code-hl:#330;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:16px/1.5 var(--font);margin:0}a{color:var(--accent)}code,kbd,pre{font-family:var(--mono);font-size:.92em}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.btn{border:1px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--text);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:500;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn.primary:hover{filter:brightness(1.08)}.btn.small{min-height:32px;padding:0 10px;font-size:.9rem}.btn:disabled{opacity:.45;cursor:default}.icon-btn{border:1px solid var(--line-strong);background:var(--surface);width:44px;height:44px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--surface-2)}.icon-btn:disabled{opacity:.4;cursor:default}.icon-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.field{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;min-height:40px;padding:0 10px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow)}.muted{color:var(--text-2)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important}}:root.presenting header.site,:root.presenting footer.site,:root.presenting .viz .back,:root.presenting .viz .blurb,:root.presenting .viz .compare-menu,:root.presenting .viz details.options,:root.presenting .viz .tabs,:root.presenting .viz .feedback{display:none}:root.presenting .viz{max-width:none}:root.presenting .viz h1{font-size:1.4rem}:root.presenting .narration p{font-size:1.6rem;line-height:1.4}:root.presenting .code .lines,:root.presenting .code .source{font-size:1.2rem}:root.presenting .vars dl{font-size:1.15rem}@media (min-width:1024px){:root.presenting .viz{grid-template-columns:minmax(0,1fr) minmax(360px,520px)}}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff!important;--surface:#fff!important;--surface-2:#f1f3f6!important;--text:#000!important;--text-2:#3a414b!important;--line:#b9c1cc!important;--accent:#1f4fb3!important;--c-new:#1e7d3c!important;--c-found:#7a3db8!important;--c-error:#c0262d!important;--code-hl:#e8eefc!important;--shadow:none!important}header.site,footer.site,.skip,.notices,.viz .back,.viz .actions,.viz .main,.viz .side,.viz .tablist,.viz .feedback,.learn-tools{display:none!important}body{background:#fff}.viz{display:block!important}.viz .card{box-shadow:none;border:0}.viz .panel{max-width:none;padding:0}.learn h2,.learn h3{break-after:avoid}.learn .check,.learn pre,.learn table{break-inside:avoid}.learn a{color:inherit!important;font-weight:inherit!important;text-decoration:none!important}.learn a:before{content:none!important}}.catalog.svelte-17chri9{max-width:1200px;margin:0 auto;padding:20px 16px 32px}.intro.svelte-17chri9 h1:where(.svelte-17chri9){margin:0 0 8px;font-size:clamp(1.5rem,4vw,2.2rem);line-height:1.2}.intro.svelte-17chri9 p:where(.svelte-17chri9){max-width:62ch;margin:0 0 8px}.filters.svelte-17chri9{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:16px;display:flex}.search.svelte-17chri9 input:where(.svelte-17chri9){width:min(100%,320px);min-height:42px}.search.svelte-17chri9{flex:240px}.pathways.svelte-17chri9{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}.pathways.svelte-17chri9 label:where(.svelte-17chri9){border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:0 12px;display:inline-flex}.pathways.svelte-17chri9 label.on:where(.svelte-17chri9){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:600}.check.svelte-17chri9{align-items:center;gap:6px;min-height:36px;display:inline-flex}.count.svelte-17chri9{margin:8px 0 0}.families.svelte-17chri9{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px;margin-top:20px;display:grid}.family.svelte-17chri9{padding:14px 16px}h2.svelte-17chri9{margin:0 0 8px;font-size:1.05rem}ul.svelte-17chri9{margin:0;padding:0;list-style:none}li.svelte-17chri9{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 8px;padding:5px 0;display:flex}li.live.svelte-17chri9{display:block}li.live.svelte-17chri9 a:where(.svelte-17chri9){font-weight:700}.planned.svelte-17chri9{color:var(--text-2)}.tag.svelte-17chri9{color:var(--text-2);border:1px solid var(--line);border-radius:999px;padding:0 8px;font-size:.75rem}.narration.svelte-urjvic{border-left:5px solid var(--accent);padding:12px 16px}.narration.error.svelte-urjvic{border-left-color:var(--c-error)}.meta.svelte-urjvic{flex-wrap:wrap;align-items:center;gap:10px;font-size:.9rem;display:flex}.chip.svelte-urjvic{background:var(--surface-2);border-radius:999px;padding:2px 8px}p.svelte-urjvic{min-height:3em;margin:6px 0 2px;font-size:1.08rem;line-height:1.5}.controls.svelte-pdu1th{flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;display:flex}label.svelte-pdu1th{font-weight:600}input.svelte-pdu1th{flex:140px;min-width:0;max-width:260px}input.wide.svelte-pdu1th{flex-basis:320px;max-width:640px}input[aria-invalid=true].svelte-pdu1th{border-color:var(--c-error);box-shadow:inset 0 0 0 1px var(--c-error)}.buttons.svelte-pdu1th{flex-wrap:wrap;gap:6px;display:flex}.secondary.svelte-pdu1th{border-top:1px solid var(--line);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:6px 18px;padding-top:8px;display:flex}.more[open].svelte-pdu1th{flex-basis:100%;order:2}.more.svelte-pdu1th summary:where(.svelte-pdu1th){cursor:pointer;color:var(--text-2);padding:4px 0;font-size:.92rem}.more.svelte-pdu1th .buttons:where(.svelte-pdu1th){padding-top:6px}.presets.svelte-pdu1th{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:6px;font-size:.92rem;display:flex}.presets.svelte-pdu1th select:where(.svelte-pdu1th){min-height:36px;color:var(--text)}.error.svelte-pdu1th{color:var(--c-error);flex-basis:100%;margin:0;font-weight:600}@media (max-width:520px){input.svelte-pdu1th{max-width:none}}.options.svelte-1cz2k7{padding:0}summary.svelte-1cz2k7{cursor:pointer;padding:10px 14px;font-weight:600}.body.svelte-1cz2k7{gap:12px;padding:0 14px 12px;display:grid}fieldset.svelte-1cz2k7{border:1px solid var(--line);border-radius:8px;margin:0;padding:8px 12px 10px}legend.svelte-1cz2k7{padding:0 4px;font-weight:600}.choice.svelte-1cz2k7{align-items:center;gap:8px;min-height:32px;display:flex}.number.svelte-1cz2k7{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.number.svelte-1cz2k7 input:where(.svelte-1cz2k7){width:5.5em}.help.svelte-1cz2k7,.note.svelte-1cz2k7{margin:4px 0 0;font-size:.88rem}.shape.svelte-weenyw{transition:fill var(--tween) ease, stroke var(--tween) ease}.rect.svelte-weenyw,.circle.svelte-weenyw{fill:var(--cell-empty);stroke:var(--line-strong);stroke-width:1.5px}.rect.live.svelte-weenyw,.circle.live.svelte-weenyw{fill:var(--cell-live);stroke:var(--text-2)}.rect.ghost.svelte-weenyw,.circle.ghost.svelte-weenyw{fill:none;stroke:var(--line-strong);stroke-dasharray:5 4}.text.svelte-weenyw{fill:var(--text);font-family:var(--font)}.text.mono.svelte-weenyw{font-family:var(--mono)}.text.index.svelte-weenyw,.text.label.svelte-weenyw{fill:var(--text-2)}.arrow.svelte-weenyw{stroke:var(--text-2);stroke-width:2px}.arrowhead.svelte-weenyw{fill:var(--text-2)}.circle.arrowhead.svelte-weenyw{fill:var(--text-2);stroke:none}.rect.role-active.svelte-weenyw,.circle.role-active.svelte-weenyw{stroke:var(--c-active);stroke-width:3px;fill:color-mix(in srgb, var(--c-active) 14%, var(--cell-live))}.rect.role-new.svelte-weenyw,.rect.role-done.svelte-weenyw,.circle.role-new.svelte-weenyw,.circle.role-done.svelte-weenyw{stroke:var(--c-new);stroke-width:3px;fill:color-mix(in srgb, var(--c-new) 14%, var(--cell-live))}.rect.role-found.svelte-weenyw,.circle.role-found.svelte-weenyw{stroke:var(--c-found);stroke-width:3px;fill:color-mix(in srgb, var(--c-found) 14%, var(--cell-live))}.rect.role-error.svelte-weenyw,.circle.role-error.svelte-weenyw{stroke:var(--c-error);stroke-width:3px;fill:color-mix(in srgb, var(--c-error) 12%, var(--cell-live))}.rect.role-compare.svelte-weenyw,.circle.role-compare.svelte-weenyw{stroke:var(--c-compare);stroke-width:3px}.rect.role-visit.svelte-weenyw,.circle.role-visit.svelte-weenyw{stroke:var(--c-visit);stroke-width:3px}.rect.role-remove.svelte-weenyw,.circle.role-remove.svelte-weenyw{stroke:var(--c-remove);stroke-width:3px}.text.role-active.svelte-weenyw{fill:var(--c-active);font-weight:700}.text.role-new.svelte-weenyw,.text.role-done.svelte-weenyw{fill:var(--c-new)}.text.role-found.svelte-weenyw{fill:var(--c-found)}.text.role-error.svelte-weenyw{fill:var(--c-error);font-weight:700}.text.role-stale.svelte-weenyw{fill:var(--c-stale);font-style:italic;font-weight:400}.arrow.role-active.svelte-weenyw{stroke:var(--c-active);stroke-width:3px}.arrow.role-error.svelte-weenyw{stroke:var(--c-error);stroke-width:3px}.arrowhead.role-active.svelte-weenyw{fill:var(--c-active)}.arrowhead.role-error.svelte-weenyw{fill:var(--c-error)}.arrowhead.role-found.svelte-weenyw{fill:var(--c-found)}.arrowhead.role-new.svelte-weenyw,.arrowhead.role-done.svelte-weenyw{fill:var(--c-new)}.stage.svelte-1i4g41k{padding:8px;position:relative;overflow:hidden}svg.svelte-1i4g41k{touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none;width:100%;height:auto;min-height:220px;max-height:min(64vh,600px);display:block}@media (min-width:1024px){svg.svelte-1i4g41k{max-height:var(--stage-max,clamp(260px, calc(100vh - 412px), 680px))}}.zoom.svelte-1i4g41k{gap:4px;display:flex;position:absolute;top:8px;right:8px}@media (max-width:600px){.stage.svelte-1i4g41k{padding-top:46px}}.icon-btn.small.svelte-1i4g41k{opacity:.85;border-radius:8px;width:34px;height:34px}.transport.svelte-10jwuar{flex-wrap:wrap;align-items:center;gap:10px 16px;padding:10px 12px;display:flex}.buttons.svelte-10jwuar{gap:6px;display:flex}.play.svelte-10jwuar{width:52px}.scrub.svelte-10jwuar{min-width:140px;accent-color:var(--accent);flex:180px;height:32px}.selects.svelte-10jwuar{gap:12px;display:flex}label.svelte-10jwuar{color:var(--text-2);align-items:center;gap:6px;font-size:.9rem;display:flex}select.svelte-10jwuar{min-height:36px;color:var(--text)}@media (max-width:520px){.buttons.svelte-10jwuar,.selects.svelte-10jwuar{justify-content:space-between;width:100%}}.vars.svelte-hb1e4i{padding:12px 14px}h2.svelte-hb1e4i{margin:0 0 8px;font-size:1rem}dl.svelte-hb1e4i{flex-wrap:wrap;gap:8px;margin:0;display:flex}dl.svelte-hb1e4i>div:where(.svelte-hb1e4i){border:1px solid var(--line);background:var(--surface-2);border-radius:8px;align-items:baseline;gap:6px;padding:4px 10px;display:flex}dl.svelte-hb1e4i>div.changed:where(.svelte-hb1e4i){border-color:var(--c-active);box-shadow:inset 0 0 0 1px var(--c-active)}dt.svelte-hb1e4i:after{content:" =";color:var(--text-2)}dd.svelte-hb1e4i{margin:0;font-weight:700}p.svelte-hb1e4i{margin:0}.compare.svelte-vd1awa{gap:12px;max-width:1600px;margin:0 auto;padding:12px 16px 24px;display:grid}.head.svelte-vd1awa h1:where(.svelte-vd1awa){margin:4px 0 2px;font-size:1.5rem}.vs.svelte-vd1awa{color:var(--text-2);font-weight:400}.head.svelte-vd1awa p:where(.svelte-vd1awa){margin:0}.back.svelte-vd1awa{font-size:.92rem}.sides.svelte-vd1awa{gap:12px;display:grid}.side.svelte-vd1awa{align-content:start;gap:10px;min-width:0;display:grid}.side-head.svelte-vd1awa{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.side-head.svelte-vd1awa h2:where(.svelte-vd1awa){margin:0;font-size:1.15rem}.side-head.svelte-vd1awa a:where(.svelte-vd1awa){font-size:.9rem}@media (min-width:900px){.sides.svelte-vd1awa{grid-template-rows:repeat(5,auto);grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px}.side.svelte-vd1awa{grid-row:span 5;grid-template-rows:subgrid}.side.svelte-vd1awa .stage svg{max-height:min(52vh,520px)}}.cells.svelte-9cs1xz{fill:var(--accent)}.current.svelte-9cs1xz{fill:#f5a524}.code.svelte-1l513w3{padding:12px 0 10px}.head.svelte-1l513w3{justify-content:space-between;align-items:center;gap:8px;padding:0 14px 8px;display:flex}h2.svelte-1l513w3{margin:0;font-size:1rem}.view.svelte-1l513w3 select:where(.svelte-1l513w3){min-height:34px}.ops.svelte-1l513w3{flex-wrap:wrap;gap:4px;padding:0 14px 8px;display:flex}.ops.svelte-1l513w3 .btn:where(.svelte-1l513w3){font-family:var(--mono);min-height:28px;padding:0 8px}.ops.svelte-1l513w3 .btn.current:where(.svelte-1l513w3){background:var(--surface-2);border-color:var(--accent)}.lines.svelte-1l513w3{counter-reset:line;margin:0;padding:0;font-size:.95rem;list-style:none;position:relative}@media (min-width:1024px){.lines.svelte-1l513w3{max-height:max(220px,100vh - 420px);overflow-y:auto}}li.svelte-1l513w3{counter-increment:line;white-space:pre-wrap;overflow-wrap:anywhere;border-left:4px solid #0000;gap:10px;padding:3px 14px;display:flex}li.svelte-1l513w3>code:where(.svelte-1l513w3),li.svelte-1l513w3>.text:where(.svelte-1l513w3){min-width:0}.plain.svelte-1l513w3 li:where(.svelte-1l513w3){white-space:normal}li.svelte-1l513w3:before{content:counter(line);text-align:right;min-width:1.5em;color:var(--text-2);font-family:var(--mono);padding-top:.1em;font-size:.85em}li.active.svelte-1l513w3{background:var(--code-hl);border-left-color:var(--c-active);font-weight:700}li.error.svelte-1l513w3{border-left-color:var(--c-error);background:color-mix(in srgb, var(--c-error) 16%, var(--surface))}.note.svelte-1l513w3{margin:0 14px 8px;font-size:.85rem}.copy.svelte-1l513w3{min-height:26px;margin-left:6px}.source.svelte-1l513w3{counter-reset:src;background:var(--surface-2);max-height:420px;margin:0;padding:6px 14px 6px 0;font-size:.86rem;line-height:1.45;overflow:auto}.source.svelte-1l513w3 .ln:where(.svelte-1l513w3){counter-increment:src}.source.svelte-1l513w3 .ln:where(.svelte-1l513w3):before{content:counter(src);text-align:right;width:3em;color:var(--text-2);-webkit-user-select:none;user-select:none;padding-right:.8em;display:inline-block}.compare-menu.svelte-1at86ji{position:relative}summary.svelte-1at86ji{cursor:pointer;list-style:none}summary.svelte-1at86ji::-webkit-details-marker{display:none}.menu.svelte-1at86ji{z-index:20;width:min(320px,100vw - 32px);padding:10px 14px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000029}.menu.svelte-1at86ji p:where(.svelte-1at86ji){margin:0 0 6px;font-size:.9rem}ul.svelte-1at86ji{gap:2px;margin:0;padding:0;list-style:none;display:grid}a.svelte-1at86ji{min-height:24px;padding:8px 4px;display:block}.bigo.svelte-k54cy5{gap:12px;display:grid}.top.svelte-k54cy5{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.top.svelte-k54cy5 p:where(.svelte-k54cy5){flex:240px;margin:0;font-size:.92rem}.row.svelte-k54cy5{border-top:1px solid var(--line);padding-top:8px}h3.svelte-k54cy5{margin:0 0 6px;font-size:.95rem}.cases.svelte-k54cy5{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.case.svelte-k54cy5{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;align-content:start;gap:2px;min-height:64px;padding:8px 10px;display:grid}.label.svelte-k54cy5{text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);font-size:.78rem}.cost.svelte-k54cy5{font-family:var(--mono);font-size:1.05rem}.why.svelte-k54cy5{font-size:.88rem}.reveal.svelte-k54cy5{justify-self:start;margin-top:4px}.link.svelte-k54cy5{color:var(--accent);background:0 0;border:0;justify-self:start;padding:0;font-size:.88rem;text-decoration:underline}.note.svelte-k54cy5{margin:6px 0 0;font-size:.86rem}@media (max-width:560px){.cases.svelte-k54cy5{grid-template-columns:1fr}.case.svelte-k54cy5{min-height:0}}.examples.svelte-dak7e1{gap:18px;display:grid}h3.svelte-dak7e1{margin:0 0 6px;font-size:.95rem}ul.svelte-dak7e1{margin:0;padding:0;list-style:none}.curated.svelte-dak7e1 li:where(.svelte-dak7e1){border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.curated.svelte-dak7e1 p:where(.svelte-dak7e1){margin:2px 0 0;font-size:.88rem}.mine.svelte-dak7e1 li:where(.svelte-dak7e1){border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:6px 0;display:flex}.mine.svelte-dak7e1 .title:where(.svelte-dak7e1){overflow-wrap:anywhere}.buttons.svelte-dak7e1,.row.svelte-dak7e1{flex-wrap:wrap;gap:6px;display:flex}.embed-options.svelte-dak7e1{color:var(--text-2);align-items:center;margin-top:8px;font-size:.88rem}.embed-options.svelte-dak7e1 label:where(.svelte-dak7e1){align-items:center;gap:6px;display:inline-flex}.embed-options.svelte-dak7e1 select:where(.svelte-dak7e1){min-height:32px;color:var(--text)}.grow.svelte-dak7e1{flex:160px}.share.svelte-dak7e1{width:100%;font-family:var(--mono);margin-top:8px;font-size:.8rem}p.svelte-dak7e1{margin:0 0 8px;font-size:.9rem}.small.svelte-dak7e1{margin-top:6px;font-size:.82rem}ol.svelte-zz1rv8{max-height:320px;margin:8px 0;padding:0;list-style:none;overflow-y:auto}li.svelte-zz1rv8 button:where(.svelte-zz1rv8){text-align:left;background:0 0;border:0;border-left:4px solid #0000;border-radius:6px;width:100%;padding:6px 10px;display:block}li.svelte-zz1rv8 button:where(.svelte-zz1rv8):hover{background:var(--surface-2)}li.svelte-zz1rv8 button.current:where(.svelte-zz1rv8){border-left-color:var(--accent);background:var(--code-hl);font-weight:700}.n.svelte-zz1rv8{color:var(--text-2);min-width:2.2em;display:inline-block}.script.svelte-zz1rv8{border-top:1px solid var(--line);margin-top:14px;padding-top:8px}.script.svelte-zz1rv8 summary:where(.svelte-zz1rv8){cursor:pointer;font-weight:600}.script.svelte-zz1rv8 textarea:where(.svelte-zz1rv8){width:100%;min-height:120px;font-family:var(--mono);resize:vertical;padding:8px 10px;font-size:.9rem}.error.svelte-zz1rv8{color:var(--c-error);margin:6px 0;font-weight:600}.actions.svelte-zz1rv8{flex-wrap:wrap;gap:8px;display:flex}p.svelte-zz1rv8{margin:0;font-size:.9rem}.check.svelte-19v1z8e{border:1px solid var(--line);border-left:5px solid var(--c-found);background:var(--surface-2);border-radius:10px;margin:14px 0;padding:12px 14px}.q.svelte-19v1z8e{margin:0 0 8px}.tag.svelte-19v1z8e{text-transform:uppercase;letter-spacing:.04em;color:var(--c-found);margin-right:6px;font-size:.75rem;font-weight:700;display:inline-block}.options.svelte-19v1z8e{gap:6px;display:grid}.opt.svelte-19v1z8e{text-align:left;border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;min-height:40px;padding:8px 12px}.opt.svelte-19v1z8e:hover:not(:disabled){border-color:var(--accent)}.opt.right.svelte-19v1z8e{border-color:var(--c-new);box-shadow:inset 0 0 0 2px var(--c-new)}.opt.right.svelte-19v1z8e:after{content:" ✓";color:var(--c-new);font-weight:700}.opt.wrong.svelte-19v1z8e{border-color:var(--c-error);box-shadow:inset 0 0 0 2px var(--c-error)}.opt.wrong.svelte-19v1z8e:after{content:" ✗";color:var(--c-error);font-weight:700}.opt.svelte-19v1z8e:disabled{opacity:.6}.result.svelte-19v1z8e{margin:10px 0 6px}.result.ok.svelte-19v1z8e strong:where(.svelte-19v1z8e){color:var(--c-new)}.learn-tools.svelte-1qjwovy{justify-content:flex-end;display:flex}.learn.svelte-1qjwovy{line-height:1.6}.learn.svelte-1qjwovy h2{margin:1.2em 0 .4em;scroll-margin-top:12px;font-size:1.05rem}.learn.svelte-1qjwovy p,.learn.svelte-1qjwovy li{margin:.4em 0}.learn.svelte-1qjwovy table{border-collapse:collapse;width:100%;font-size:.92rem}.learn.svelte-1qjwovy th,.learn.svelte-1qjwovy td{text-align:left;border-bottom:1px solid var(--line);padding:6px 8px}.learn.svelte-1qjwovy code{background:var(--surface-2);border-radius:4px;padding:1px 4px}.learn.svelte-1qjwovy pre{white-space:pre-wrap;overflow-wrap:anywhere}.learn.svelte-1qjwovy ul{padding-left:1.2em}.learn.svelte-1qjwovy a[href^="#play:"]{font-weight:700}.learn.svelte-1qjwovy a[href^="#play:"]:before{content:"▶ "}.license.svelte-1qjwovy{margin-top:16px;font-size:.8rem}svg.svelte-n1lueq{width:100%;height:auto;margin:0 auto;display:block}.practice.svelte-js6m4f{gap:14px;display:grid}.top.svelte-js6m4f p:where(.svelte-js6m4f){margin:0 0 8px;font-size:.92rem}.row.svelte-js6m4f{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.row.svelte-js6m4f label:where(.svelte-js6m4f){align-items:center;gap:6px;display:inline-flex}.row.svelte-js6m4f select:where(.svelte-js6m4f){min-height:32px}.question.svelte-js6m4f{padding:12px 14px}h3.svelte-js6m4f{margin:0 0 6px;font-size:1rem}.n.svelte-js6m4f{color:var(--text-2)}.prompt.svelte-js6m4f{margin:0 0 8px}.answer.svelte-js6m4f{gap:8px;margin-top:8px;display:grid}fieldset.svelte-js6m4f{border:0;gap:4px;margin:0;padding:0;display:grid}.choice.svelte-js6m4f{align-items:center;gap:8px;min-height:32px;display:flex}.answer.svelte-js6m4f .field:where(.svelte-js6m4f){max-width:320px}.buttons.svelte-js6m4f{gap:8px;display:flex}.feedback.svelte-js6m4f{margin:8px 0 0}.feedback.svelte-js6m4f strong:where(.svelte-js6m4f){color:var(--c-error)}.feedback.ok.svelte-js6m4f strong:where(.svelte-js6m4f){color:var(--c-new)}.score.svelte-js6m4f{margin:0}.top.svelte-cgby25{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.top.svelte-cgby25 p:where(.svelte-cgby25){flex:260px;margin:0;font-size:.9rem}.actions.svelte-cgby25{gap:6px;display:flex}.wrap.svelte-cgby25{border:1px solid var(--line);border-radius:8px;max-height:420px;overflow:auto}table.svelte-cgby25{border-collapse:collapse;width:100%;font-size:.86rem}th.svelte-cgby25,td.svelte-cgby25{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;white-space:nowrap;padding:4px 8px}th.svelte-cgby25{background:var(--surface-2);z-index:1;position:sticky;top:0}td.say.svelte-cgby25{white-space:normal;min-width:260px}tr.current.svelte-cgby25 td:where(.svelte-cgby25){background:var(--code-hl)}.jump.svelte-cgby25{border:1px solid var(--line-strong);background:var(--surface);min-width:32px;min-height:28px;font-family:var(--mono);border-radius:6px}.viz.svelte-w7k7pw{grid-template-columns:minmax(0,1fr);gap:12px;max-width:1480px;margin:0 auto;padding:12px 16px 24px;display:grid}.main.svelte-w7k7pw,.side.svelte-w7k7pw{display:contents}.viz-head.svelte-w7k7pw{gap:2px;display:grid}.title-row.svelte-w7k7pw{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}h1.svelte-w7k7pw{margin:0;font-size:1.6rem;line-height:1.2}.actions.svelte-w7k7pw{align-items:center;gap:8px;display:flex}.back.svelte-w7k7pw{font-size:.92rem;text-decoration:none}.blurb.svelte-w7k7pw{margin:0}.tabs.svelte-w7k7pw{padding:0 0 12px;container-type:inline-size}.tablist.svelte-w7k7pw{border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}[role=tab].svelte-w7k7pw{overflow-wrap:break-word;min-height:44px;color:var(--text-2);background:0 0;border:0;border-bottom:3px solid #0000;flex:1;padding:0 8px;font-weight:600}[role=tab][aria-selected=true].svelte-w7k7pw{color:var(--text);border-bottom-color:var(--accent)}@container (width<=560px){.tablist.svelte-w7k7pw{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}}.panel.svelte-w7k7pw{padding:12px 14px 0}.feedback.svelte-w7k7pw{margin:0;font-size:.88rem}.embed.svelte-w7k7pw{gap:8px;padding:8px}.embed.svelte-w7k7pw h1:where(.svelte-w7k7pw){font-size:1.2rem}.embed.svelte-w7k7pw .stage svg{max-height:clamp(200px,100vh - 370px,640px)}@media (min-width:1024px){.viz.svelte-w7k7pw{grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start}.viz-head.svelte-w7k7pw{grid-column:1/-1}.main.svelte-w7k7pw{grid-area:2/1;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;display:grid}.side.svelte-w7k7pw{grid-area:2/2/span 2;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;display:grid;position:sticky;top:12px}.tabs.svelte-w7k7pw{grid-area:3/1}.panel.svelte-w7k7pw{max-width:80ch}}.skip.svelte-1ocnzw1{z-index:100;background:var(--surface);padding:8px 12px;position:absolute;top:8px;left:-999px}.skip.svelte-1ocnzw1:focus{left:8px}header.site.svelte-1ocnzw1{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.brand.svelte-1ocnzw1{letter-spacing:-.02em;color:var(--text);align-items:center;gap:10px;font-size:1.3rem;font-weight:800;text-decoration:none;display:inline-flex}.brand.svelte-1ocnzw1 .w:where(.svelte-1ocnzw1){color:var(--accent)}.theme.svelte-1ocnzw1 select:where(.svelte-1ocnzw1){min-height:36px}main.svelte-1ocnzw1:focus{outline:none}.loading.svelte-1ocnzw1,.missing.svelte-1ocnzw1{max-width:700px;margin:0 auto;padding:32px 16px}footer.site.svelte-1ocnzw1{max-width:1480px;color:var(--text-2);margin:0 auto;padding:16px 16px 40px;font-size:.88rem}footer.svelte-1ocnzw1 p:where(.svelte-1ocnzw1){margin:4px 0}.notices.svelte-1ocnzw1{z-index:50;pointer-events:none;gap:6px;width:min(92vw,520px);display:grid;position:fixed;bottom:84px;left:50%;transform:translate(-50%)}.notice.svelte-1ocnzw1{background:var(--text);color:var(--bg);border-radius:10px;padding:10px 14px;font-size:.95rem;box-shadow:0 4px 16px #0003}.notice.error.svelte-1ocnzw1{background:var(--c-error);color:#fff}
