.home-code .k{color:var(--f-injects)}.home-code .f{color:var(--f-records)}.home-code .s,.home-code .n{color:var(--f-needs)}.home-code .c{color:var(--muted);font-style:italic}.home-code .p{color:var(--muted)}.home-code .y{color:var(--accent-high)}.home-code .knob{cursor:ew-resize;user-select:none}.home-code .knob .viz-range{min-height:0;display:inline}.home-code .knob input{opacity:0;cursor:ew-resize;touch-action:none;width:100%;height:100%;margin:0;position:absolute;inset:0}:root:not(.home-staged) .home-code .knob{cursor:auto;user-select:text}:root:not(.home-staged) .home-code .knob input{display:none}:root:not(.home-staged) .home-code .knob output{color:var(--f-needs);background:0 0;border-bottom:0}.frame:where(.astro-mz27ugg7){margin-top:0;position:relative}.stage:where(.astro-mz27ugg7){position:relative}canvas:where(.astro-mz27ugg7).stack,.leaders:where(.astro-mz27ugg7),.badges:where(.astro-mz27ugg7),.tag:where(.astro-mz27ugg7){display:none}.left:where(.astro-mz27ugg7){max-width:var(--measure)}.intro:where(.astro-mz27ugg7) h2:where(.astro-mz27ugg7){color:var(--text);letter-spacing:-.02em;margin:0;font-size:clamp(24px,2.3vw,32px);font-weight:500}.intro:where(.astro-mz27ugg7) p:where(.astro-mz27ugg7){margin:var(--s-2) 0 0;color:var(--text-2);font-size:15px;line-height:1.5}.intro:where(.astro-mz27ugg7) .build:where(.astro-mz27ugg7),.intro:where(.astro-mz27ugg7) .play:where(.astro-mz27ugg7){display:none}.panel:where(.astro-mz27ugg7){margin-top:var(--s-4);font-size:12px}.no:where(.astro-mz27ugg7){border:1px solid var(--rule-strong);background:var(--ground);min-width:1.6em;color:var(--text-2);font:500 11px/1.3 var(--font-mono);text-align:center;border-radius:2px;padding:1px 4px;font-style:normal}.block:where(.astro-mz27ugg7){border-left:2px solid var(--rule);margin:0;padding:3px 0 4px 12px;transition:border-color .12s}.block:where(.astro-mz27ugg7)+.block:where(.astro-mz27ugg7){border-top:2px solid var(--ground)}.block:where(.astro-mz27ugg7) header:where(.astro-mz27ugg7){font:1em/1.5 var(--font-mono);align-items:baseline;gap:8px;display:flex}.block:where(.astro-mz27ugg7) header:where(.astro-mz27ugg7) b:where(.astro-mz27ugg7),.mark:where(.astro-mz27ugg7){color:var(--text);font-weight:500}.block:where(.astro-mz27ugg7) header:where(.astro-mz27ugg7) span:where(.astro-mz27ugg7){color:var(--muted)}.block:where(.astro-mz27ugg7) pre:where(.astro-mz27ugg7){color:var(--text-2);font:1em/1.55 var(--font-mono);white-space:pre;background:0 0;border:0;margin:0;padding:0;overflow-x:auto}.mark:where(.astro-mz27ugg7){font:inherit;opacity:1;cursor:auto;background:0 0;border:0;padding:0;font-weight:500}.panel:where(.astro-mz27ugg7) .line{transition:opacity .2s;display:inline-block}:root.home-staged .frame:where(.astro-mz27ugg7){background:var(--ground);width:100vw;height:650svh;margin-inline:calc(50% - 50vw);position:relative}:root.home-staged .stage:where(.astro-mz27ugg7){background:var(--ground);cursor:grab;touch-action:pan-y;user-select:none;width:100vw;height:100svh;min-height:640px;position:sticky;top:0;overflow:hidden}:root:not(.home-staged) .stage:where(.astro-mz27ugg7)>canvas.veil{display:none}:root.home-staged .stage:where(.astro-mz27ugg7)[data-pin=held]{position:fixed;left:0}:root.home-staged .stage:where(.astro-mz27ugg7)[data-pin=past]{position:absolute;top:auto;bottom:0;left:0}:root.home-staged canvas:where(.astro-mz27ugg7).stack,:root.home-staged .leaders:where(.astro-mz27ugg7){width:100%;height:100%;display:block;position:absolute;inset:0}.leaders:where(.astro-mz27ugg7){pointer-events:none;opacity:0;overflow:visible}.leaders:where(.astro-mz27ugg7) polyline:where(.astro-mz27ugg7){fill:none;stroke:var(--accent);stroke-width:1px;vector-effect:non-scaling-stroke}.leaders:where(.astro-mz27ugg7) circle:where(.astro-mz27ugg7){fill:var(--accent-high)}:root.home-staged .left:where(.astro-mz27ugg7){top:calc(var(--sl-nav-height) + 3%);opacity:0;visibility:hidden;cursor:auto;pointer-events:auto;flex-direction:column;width:min(40vw,41rem);max-width:none;margin:0;display:flex;position:absolute;bottom:2.5%;left:3.5%}:root.home-staged .intro:where(.astro-mz27ugg7) .flat:where(.astro-mz27ugg7){display:none}:root.home-staged .intro:where(.astro-mz27ugg7){display:grid}:root.home-staged .intro:where(.astro-mz27ugg7) .build:where(.astro-mz27ugg7),:root.home-staged .intro:where(.astro-mz27ugg7) .play:where(.astro-mz27ugg7){grid-area:2/1;transition:opacity .2s,visibility .2s;display:block}:root.home-staged .intro:where(.astro-mz27ugg7)[data-phase=build] .play:where(.astro-mz27ugg7),:root.home-staged .intro:where(.astro-mz27ugg7)[data-phase=play] .build:where(.astro-mz27ugg7){opacity:0;visibility:hidden}:root.home-staged .panel:where(.astro-mz27ugg7){opacity:0;visibility:hidden;pointer-events:none;scrollbar-color:var(--rule-strong) transparent;scrollbar-width:thin;flex:auto;min-height:0;font-size:clamp(10.5px,1.25vh,12px);position:relative;overflow:hidden}:root.home-staged .panel:where(.astro-mz27ugg7).live{pointer-events:auto;overflow-y:auto}:root.home-staged .panel:where(.astro-mz27ugg7).below{mask-image:linear-gradient(0deg,#0000,#000 24px)}:root.home-staged .panel:where(.astro-mz27ugg7).above{mask-image:linear-gradient(#0000,#000 24px)}:root.home-staged .panel:where(.astro-mz27ugg7).above.below{mask-image:linear-gradient(#0000,#000 24px calc(100% - 24px),#0000)}:root.home-staged .block:where(.astro-mz27ugg7).pending{display:none}:root.home-staged .block:where(.astro-mz27ugg7){animation:.3s ease-out arrive}@keyframes arrive{0%{opacity:0;translate:-10px}}.tells:where(.astro-mz27ugg7){display:none}:root.home-staged .tells:where(.astro-mz27ugg7){color:var(--text-2);font:14px/1.45 var(--font-sans);opacity:0;grid-template-rows:0fr;margin:0;transition:grid-template-rows .25s,padding .25s,opacity .25s;display:grid;overflow:hidden}:root.home-staged .tells:where(.astro-mz27ugg7)>span:where(.astro-mz27ugg7){min-height:0}:root.home-staged .block:where(.astro-mz27ugg7).telling .tells:where(.astro-mz27ugg7){opacity:1;grid-template-rows:1fr;padding:2px 0 6px}:root.home-staged .block:where(.astro-mz27ugg7) pre:where(.astro-mz27ugg7){overflow:visible}:root.home-staged .block:where(.astro-mz27ugg7) header:where(.astro-mz27ugg7) span:where(.astro-mz27ugg7){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}:root.home-staged .mark:where(.astro-mz27ugg7){cursor:pointer}:root.home-staged .panel:where(.astro-mz27ugg7).live .mark:where(.astro-mz27ugg7){text-decoration:underline 1px var(--rule-strong);text-underline-offset:3px;transition:color .12s,text-decoration-color .12s}:root.home-staged .mark:where(.astro-mz27ugg7):hover,:root.home-staged .mark:where(.astro-mz27ugg7):focus-visible{color:var(--accent-high);text-decoration-color:var(--accent)}@media (hover:hover){:root.home-staged .panel:where(.astro-mz27ugg7).live .block:where(.astro-mz27ugg7).removable header:where(.astro-mz27ugg7):after{content:"click to take out";color:var(--accent);opacity:0;flex:none;margin-left:auto;transition:opacity .12s}:root.home-staged .panel:where(.astro-mz27ugg7).live .block:where(.astro-mz27ugg7).removable.out header:where(.astro-mz27ugg7):after{content:"click to put back"}:root.home-staged .panel:where(.astro-mz27ugg7).live .block:where(.astro-mz27ugg7).removable.aimed header:where(.astro-mz27ugg7):after,:root.home-staged .panel:where(.astro-mz27ugg7).live .block:where(.astro-mz27ugg7).removable header:where(.astro-mz27ugg7):has(.mark:hover):after{opacity:1}}@media (prefers-reduced-motion:reduce){:root.home-staged .block:where(.astro-mz27ugg7){animation:none}}:root.home-staged .mark:where(.astro-mz27ugg7):focus-visible{outline:1px solid var(--accent-high);outline-offset:3px}:root.home-staged .badges:where(.astro-mz27ugg7){pointer-events:none;display:block;position:absolute;inset:0}.badges:where(.astro-mz27ugg7) i:where(.astro-mz27ugg7){border:1px solid var(--rule-strong);background:var(--ground);min-width:1.6em;color:var(--text-2);font:500 11px/1.3 var(--font-mono);text-align:center;opacity:0;border-radius:2px;padding:1px 4px;font-style:normal;position:absolute;top:0;left:0;translate:calc(-100% - 10px) -50%}.badges:where(.astro-mz27ugg7) i:where(.astro-mz27ugg7).empty{color:var(--muted);border-style:dashed}.badges:where(.astro-mz27ugg7) i:where(.astro-mz27ugg7).pointed,.block:where(.astro-mz27ugg7).pointed .no:where(.astro-mz27ugg7){border-color:var(--accent);color:var(--accent-high)}.block:where(.astro-mz27ugg7).pointed{border-left-color:var(--accent);background:linear-gradient(90deg, var(--accent-low), transparent 70%)}.block:where(.astro-mz27ugg7).pointed header:where(.astro-mz27ugg7) b:where(.astro-mz27ugg7){color:var(--accent-high)}.block:where(.astro-mz27ugg7).out .mark:where(.astro-mz27ugg7){text-decoration:line-through;text-decoration-color:var(--accent);opacity:.5}.block:where(.astro-mz27ugg7).out header:where(.astro-mz27ugg7) span:where(.astro-mz27ugg7){opacity:.5}.panel:where(.astro-mz27ugg7).out-grid .line[data-needs~=grid],.panel:where(.astro-mz27ugg7).out-lit .line[data-needs~=lit],.panel:where(.astro-mz27ugg7).out-shadow .line[data-needs~=shadow],.panel:where(.astro-mz27ugg7).out-bloom .line[data-needs~=bloom]{text-decoration:line-through;text-decoration-color:var(--accent);opacity:.38}:root.home-staged .tag:where(.astro-mz27ugg7){text-align:right;width:max-content;max-width:300px;font:12px/1.35 var(--font-mono);opacity:0;pointer-events:none;gap:2px;margin:0;transition:opacity .12s;display:grid;position:absolute;top:0;left:0;translate:-100% -50%}.tag:where(.astro-mz27ugg7) b:where(.astro-mz27ugg7){color:var(--accent-high);font-weight:500}.tag:where(.astro-mz27ugg7) span:where(.astro-mz27ugg7){color:var(--text-2)}.tag:where(.astro-mz27ugg7).out span:where(.astro-mz27ugg7){color:var(--accent)}@media (width<=56em){:root.home-staged .frame:where(.astro-mz27ugg7){height:600svh}:root.home-staged .left:where(.astro-mz27ugg7){width:100%;padding:var(--s-4) 5% 0;border-top:1px solid var(--rule);background:var(--ground);top:48%;bottom:0;left:0}:root.home-staged .panel:where(.astro-mz27ugg7){min-height:0;padding-bottom:var(--s-6);touch-action:pan-y;flex:1;font-size:11px;overflow:auto}:root.home-staged .block:where(.astro-mz27ugg7) pre:where(.astro-mz27ugg7){overflow-x:auto}.intro:where(.astro-mz27ugg7) p:where(.astro-mz27ugg7){font-size:14px}}.yours:where(.astro-ru2lxioj),.stage:where(.astro-ru2lxioj){position:relative}canvas:where(.astro-ru2lxioj).stack,.leaders:where(.astro-ru2lxioj),.labels:where(.astro-ru2lxioj){display:none}.side:where(.astro-ru2lxioj){max-width:var(--measure)}.side:where(.astro-ru2lxioj) h2:where(.astro-ru2lxioj){color:var(--text);letter-spacing:-.02em;margin:0;font-size:clamp(24px,2.3vw,32px);font-weight:500}.side:where(.astro-ru2lxioj)>p:where(.astro-ru2lxioj){margin:var(--s-3) 0 0;color:var(--text-2);font-size:15px;line-height:1.5}.side:where(.astro-ru2lxioj) .staged:where(.astro-ru2lxioj),:root.home-staged .side:where(.astro-ru2lxioj) .flat:where(.astro-ru2lxioj){display:none}:root.home-staged .side:where(.astro-ru2lxioj) .staged:where(.astro-ru2lxioj){display:inline}.rules:where(.astro-ru2lxioj){gap:var(--s-2);margin-top:var(--s-4);flex-wrap:wrap;display:flex}.rules:where(.astro-ru2lxioj) button:where(.astro-ru2lxioj){border:1px solid var(--rule-strong);background:var(--ground-2);min-width:6.5rem;color:var(--text);font:13px/1.3 var(--font-mono);text-align:left;cursor:pointer;border-radius:3px;gap:1px;padding:6px 12px 5px;display:grid}.rules:where(.astro-ru2lxioj) button:where(.astro-ru2lxioj):hover{border-color:var(--accent)}.rules:where(.astro-ru2lxioj) button:where(.astro-ru2lxioj) span:where(.astro-ru2lxioj){min-height:1.3em;color:var(--muted);font-size:11px}.rules:where(.astro-ru2lxioj) button:where(.astro-ru2lxioj)[aria-pressed=true]{border-color:var(--accent-high);background:var(--accent-low);color:var(--accent-high)}.code:where(.astro-ru2lxioj){margin:var(--s-3) 0 0;padding:var(--s-2) var(--s-3);border:1px solid var(--rule);background:var(--ground-2);color:var(--text-2);font:11.5px/1.55 var(--font-mono);border-radius:3px;overflow-x:auto}.code:where(.astro-ru2lxioj)[hidden]{display:none}.code:where(.astro-ru2lxioj) .line{min-width:100%;margin-inline:calc(-1 * var(--s-3));padding-inline:calc(var(--s-3) - 2px) var(--s-3);border-left:2px solid #0000;display:inline-block}.code:where(.astro-ru2lxioj) .line.hot{border-left-color:var(--accent);background:var(--accent-low)}.code:where(.astro-ru2lxioj) .line.new{animation:1.2s ease-out fresh}@keyframes fresh{0%{background:color-mix(in oklab, var(--accent) 40%, transparent)}}@media (prefers-reduced-motion:reduce){.code:where(.astro-ru2lxioj) .line.new{animation:none}}:root.home-staged .yours:where(.astro-ru2lxioj){border-block:1px solid var(--rule);background:var(--ground);width:100vw;margin-inline:calc(50% - 50vw)}:root.home-staged .stage:where(.astro-ru2lxioj){cursor:grab;touch-action:pan-y;user-select:none;height:100svh;min-height:680px;overflow:hidden}:root.home-staged canvas:where(.astro-ru2lxioj).stack,:root.home-staged .leaders:where(.astro-ru2lxioj){width:100%;height:100%;display:block;position:absolute;inset:0}.leaders:where(.astro-ru2lxioj){pointer-events:none;overflow:visible}.leaders:where(.astro-ru2lxioj) line{stroke:var(--rule-strong);stroke-width:1px;vector-effect:non-scaling-stroke}.leaders:where(.astro-ru2lxioj) line.pointed{stroke:var(--accent)}.leaders:where(.astro-ru2lxioj) circle{fill:var(--muted)}:root.home-staged .labels:where(.astro-ru2lxioj){pointer-events:none;margin:0;padding:0;list-style:none;display:block;position:absolute;inset:0}.labels:where(.astro-ru2lxioj) li{width:max-content;font:12px/1.3 var(--font-mono);opacity:0;gap:2px;margin:0;display:grid;position:absolute;top:0;left:0;translate:0 -50%}.labels:where(.astro-ru2lxioj) b{color:var(--text);font-weight:500}.labels:where(.astro-ru2lxioj) span{color:var(--muted)}.labels:where(.astro-ru2lxioj) li.pointed b,.labels:where(.astro-ru2lxioj) li.pointed span{color:var(--accent-high)}.labels:where(.astro-ru2lxioj) li.accent span{color:var(--accent)}:root.home-staged .side:where(.astro-ru2lxioj){cursor:auto;user-select:text;flex-direction:column;justify-content:center;width:min(33vw,31rem);max-width:none;margin:0;display:flex;position:absolute;top:0;bottom:0;right:4%}@media (width<=56em){:root.home-staged .stage:where(.astro-ru2lxioj){height:auto;min-height:0;padding-top:100vw}:root.home-staged canvas:where(.astro-ru2lxioj).stack{height:100vw}:root.home-staged .side:where(.astro-ru2lxioj){width:auto;padding:var(--s-5) 5% var(--s-6);position:static}}.swm:where(.astro-hslwpbhk){margin-top:var(--s-8);border:1px solid var(--rule);background:var(--ground-2);border-radius:3px}.about:where(.astro-hslwpbhk){gap:var(--s-6);padding:var(--s-6);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.logo:where(.astro-hslwpbhk) img:where(.astro-hslwpbhk){width:auto;height:96px;display:block}h2:where(.astro-hslwpbhk){color:var(--text);letter-spacing:-.01em;margin:0;font-size:clamp(22px,2vw,28px);font-weight:500}p:where(.astro-hslwpbhk){max-width:var(--measure);margin:var(--s-2) 0 var(--s-4);color:var(--text-2);font-size:15px;line-height:1.5}ul:where(.astro-hslwpbhk){gap:var(--s-1) var(--s-5);padding:var(--s-4) var(--s-6);border-top:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;list-style:none;display:grid}li:where(.astro-hslwpbhk) a:where(.astro-hslwpbhk){color:var(--text-2);font:12px/1.9 var(--font-mono);text-decoration:none}li:where(.astro-hslwpbhk) a:where(.astro-hslwpbhk):hover{color:var(--accent-high)}@media (width<=40em){.about:where(.astro-hslwpbhk){gap:var(--s-4);padding:var(--s-5);grid-template-columns:1fr}.logo:where(.astro-hslwpbhk) img:where(.astro-hslwpbhk){height:64px}ul:where(.astro-hslwpbhk){padding:var(--s-4) var(--s-5);grid-template-columns:1fr}}
