.work{position:relative}.prog{min-width:min-content}.work .program .block,.work .program .block.hat,.work .grip{cursor:default}.work .color-choice{border-radius:var(--r-slot);background:var(--fill);max-width:10.5ch;min-height:32px;color:inherit;font:600 12px/1.2 var(--font,sans-serif);cursor:pointer;border:1px solid;padding:2px 5px}.work .color-choice:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.work .compare-open{border-radius:var(--r-slot);color:inherit;font:600 12px/1.2 var(--font,sans-serif);cursor:pointer;background:0 0;border:1px solid;min-height:32px;padding:4px 8px}.work .compare-editor{background:var(--panel);min-width:0;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-slot);-webkit-user-select:text;user-select:text;flex:1 0 100%;padding:10px}.work .compare-editor p{margin:0 0 8px;font-size:12px}.work .compare-fields{flex-wrap:wrap;gap:8px;display:flex}.work .compare-fields label{flex:72px;gap:3px;min-width:0;font-size:11px;font-weight:650;display:grid}.work .compare-fields input,.work .compare-fields select{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--well);width:100%;min-width:0;min-height:36px;color:var(--ink);font:13px var(--mono);-webkit-user-select:text;user-select:text;padding:5px}.work .compare-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.work .compare-actions button{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--raised);min-height:36px;color:var(--ink);font:600 12px var(--body);cursor:pointer;padding:4px 9px}.work .compare-actions button:disabled{opacity:.55;cursor:not-allowed}.work .compare-open:focus-visible,.work .compare-editor :focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.work .color-choice,.work .compare-open,.work .compare-fields input,.work .compare-fields select,.work .compare-actions button{min-height:44px}}.slot.lit,.slot.lit .n{background:var(--accent);color:var(--on-accent);text-decoration:none}.slot.lit{box-shadow:0 0 0 2px var(--on);font-weight:600}.plushost{flex:0 auto;min-width:0;display:inline-flex;position:relative}.plus{z-index:3;border-radius:var(--r-slot);background:var(--on);color:var(--fill);font:600 12px/1.4 var(--mono);white-space:nowrap;padding:1px 6px;position:absolute;top:50%;left:calc(100% + 4px);transform:translateY(-50%)}@media (hover:hover) and (pointer:fine) and (width>=821px) and (height>=500px){.prog .block[data-id]>.rw{padding-right:8px}.prog .block>.rw>.x{background:var(--fill)}.prog .block>.rw>.x:hover{background:color-mix(in srgb, var(--fill) 82%, #000)}}@supports (color:oklch(from red l c h)){.prog.live{--mute:.75}.prog.live .cat-pen{--fill:oklch(from var(--pen) l calc(c * var(--mute)) h)}.prog.live .cat-col{--fill:oklch(from var(--col) l calc(c * var(--mute)) h)}.prog.live .cat-ctl{--fill:oklch(from var(--ctl) l calc(c * var(--mute)) h)}.prog.live .cat-val{--fill:oklch(from var(--val) l calc(c * var(--mute)) h)}.prog.live .cat-out{--fill:oklch(from var(--out) l calc(c * var(--mute)) h)}.prog.live .cat-dotc{--fill:oklch(from var(--dotc) l calc(c * var(--mute)) h)}.prog.live .cat-hat{--fill:oklch(from var(--hat) l calc(c * var(--mute)) h)}.prog.live .cat-pen.here{--fill:var(--pen)}.prog.live .cat-col.here{--fill:var(--col)}.prog.live .cat-ctl.here{--fill:var(--ctl)}.prog.live .cat-val.here{--fill:var(--val)}.prog.live .cat-out.here{--fill:var(--out)}.prog.live .cat-dotc.here{--fill:var(--dotc)}.prog.live .cat-hat.here{--fill:var(--hat)}:root[data-dir=instrument] .prog.live .cat-val:not(.here){--fill:color-mix(in srgb, var(--val) 74%, var(--panel))}:root[data-dir=instrument] .prog.live .cat-hat:not(.here){--fill:color-mix(in srgb, var(--hat) 74%, var(--panel))}}.prog .block.here:not(.edge)>.rw{z-index:2;border-radius:inherit;box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--ink);position:relative}.prog .block.edge{outline:2px solid var(--ink);outline-offset:2px}.js mark{background:var(--accent);color:var(--on-accent);border-radius:2px}.js code.on{background:var(--accent);color:var(--on-accent)}.pop{z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-pane);flex-direction:column;width:320px;max-width:calc(100% - 20px);display:flex;position:absolute;top:4px;bottom:4px;left:calc(max(356px,25%) + 10px);overflow:hidden;box-shadow:0 16px 40px #00000042}@media (width<=1180px) and (width>=821px) and (height>=500px){.pop{left:310px}}.pophead{font-family:var(--display);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;padding:4px 4px 4px 14px;font-weight:650;display:flex}.paltools{flex:none;padding:10px 12px 0}.paltools input{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--well);width:100%;min-height:38px;color:var(--ink);font:13px var(--body);padding:6px 10px}.paltabs{gap:4px;margin-top:8px;display:flex}.paltabs button{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--raised);min-width:0;min-height:38px;color:var(--ink);font:650 12px var(--body);cursor:pointer;flex:1;padding:4px}.paltabs button[aria-selected=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.paltools :focus-visible,.piece-after:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.piece-after{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--well);min-height:36px;color:var(--ink);font:600 12px var(--body);cursor:pointer;padding:5px 8px}.piece-after[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.palempty{color:var(--ink);font-size:13px}.piece-prompt{border:1px solid var(--accent);border-radius:var(--r-slot);background:var(--panel);color:var(--ink);align-items:center;gap:8px;margin:0 0 6px;padding:8px 10px;font-size:13px;display:flex}.piece-prompt button{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--raised);min-height:36px;color:var(--ink);cursor:pointer;margin-left:auto;padding:4px 8px}.program[data-piece-pending] .slot:not(.name):not([aria-readonly=true]){box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--ink)}.pal{flex-direction:column;flex:1 1 0;gap:14px;min-height:0;padding:12px;display:flex;overflow-y:auto}.pal .rw{min-height:36px;padding:5px 10px;font-size:13px}.pal .block{cursor:pointer;max-width:100%}.pal .chip{cursor:pointer}.pal[data-searching=true] .pitems>button,.pal[data-searching=true] .chips>button{animation:.18s ease-out backwards search-reveal;animation-delay:calc(var(--reveal-order,0) * 25ms)}@keyframes search-reveal{0%{opacity:0;transform:translateY(5px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.pal[data-searching=true] .pitems>button,.pal[data-searching=true] .chips>button{animation:none}}:root[data-motion=reduced] .pal[data-searching=true] .pitems>button,:root[data-motion=reduced] .pal[data-searching=true] .chips>button{animation:none}.pal .chip:disabled{cursor:default;background:0 0;border-style:dashed}@media (pointer:coarse){.pal .rw,.paltools input,.paltabs button,.piece-after,.piece-prompt button{min-height:44px}}@media (width<=820px),(height<=499px){.prog{--stack-gap:0px}.work .pscroll{overflow-x:auto}}@media (hover:hover) and (pointer:fine) and (width>=821px) and (height>=500px){.work .program .block[data-id],.work .program .grip{cursor:grab}}.work .program .grip{position:relative}.work .program .grip:before{content:"";position:absolute;inset:-4px}@media (pointer:coarse){.work .program .grip:before{inset:-7px}}.pal .block,.pal .chip{touch-action:pan-y}body.dragging,body.dragging *{-webkit-user-select:none;user-select:none}.work .prog .block[data-drag-src]{--fill:var(--well);--on:var(--ink);outline:2px dashed var(--ink);outline-offset:-3px}.work .list.inner[data-drop]{outline:2.5px solid var(--accent);outline-offset:-2px}.work .pop .bin{outline:2px dashed var(--ink);outline-offset:-10px;border:0;border-radius:0;align-items:flex-start;padding:28px 24px 0;font-size:15px;inset:0}.slot[data-over]{outline:2.5px solid var(--ink);outline-offset:1px}#ghost[data-from=list] .rw{min-height:36px;padding:5px 10px;font-size:13px}#ghost .block{margin:0}.rv-label{color:var(--muted);letter-spacing:0;text-transform:none;font-size:12.5px;font-weight:600;display:block}.rv-ghost{visibility:hidden}.rv-op{font-weight:400}.rv-condfill,.rv-sum,.rv-sumres{word-spacing:var(--mono-word-space,0)}.rv-boxval,.rv-old,.rv-op,.rv-rc b,.rv-rc small,.rv-chip,.rv-output ol,.rv-boxname small{font-variant-ligatures:none!important}:root{--rv-big-check:46px;--rv-mid-check:32px;--rv-big-box:44px;--rv-mid-box:32px;--rv-big-sum:38px;--rv-mid-sum:24px;--rv-track-h:66px}.rv{flex-direction:column;flex:1 0 400px;gap:12px;min-width:0;min-height:0;padding:14px 16px;display:flex;container:rv/inline-size}.rv-head{justify-content:space-between;align-items:baseline;gap:10px;min-height:26px;margin-bottom:6px;display:flex}.rv-roundline{flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0;display:inline-flex}.rv-roundline b{font-family:var(--display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.rv-note,.rv-noteroom{color:var(--muted);min-height:1.35em;margin:6px 0 0;font-size:13px;line-height:1.35}.rv-loop{flex:none;min-width:0}.rv-chips{flex-wrap:wrap;flex:none;align-items:center;gap:6px;min-height:32px;margin:0;padding:0;list-style:none;display:flex}.rv-chip{--fill:var(--ctl);--on:var(--ctl-on);border-radius:var(--r-chip);border:1px solid var(--chip-edge);background:var(--well);max-width:100%;min-height:30px;font:500 13px/1.2 var(--mono);color:var(--ink);align-items:center;gap:7px;padding:3px 11px 3px 4px;display:inline-flex}.rv-chip.more{color:var(--muted);padding-left:11px}.rv-chip .cicon,.rv-boxmark .cicon{background:var(--fill);color:var(--on)}.rv-chip .cicon{--fill:var(--ctl);--on:var(--ctl-on)}.rv-mini{color:var(--muted);flex:none;align-items:center;gap:2px;display:inline-flex}.rv-mini i{border:1px solid;border-radius:2px;width:7px;height:10px;display:block}.rv-mini i.done{background:currentColor}.rv-mini i.lit{background:var(--accent);border-color:var(--accent);height:14px}.rv-mini i.stop{border-radius:1px;width:10px;height:8px;margin-left:1px}.rv-mini.meter{border:1px solid;border-radius:2px;width:48px;height:8px;overflow:hidden}.rv-mini.meter i{width:var(--rv-p);background:currentColor;border:0;border-radius:0;height:100%}.rv-track{gap:5px;margin:0;padding:0;list-style:none;display:flex}.rv-rc{min-height:var(--rv-track-h);border-radius:var(--r-btn);font-variant-numeric:tabular-nums;text-align:center;border:1.25px solid #0000;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;min-width:0;padding:6px 2px;display:flex;container:rvtile/inline-size}.rv-rc b{font:600 18px/1.1 var(--num);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:4px;display:inline-flex}.rv-rc small{font:500 12px/1.25 var(--num);font-variant-numeric:tabular-nums;white-space:nowrap}.rv-rc.done{background:var(--raised);color:var(--muted)}.rv-rc.done b{font-weight:500}.rv-rc.done svg{flex:none}.rv-rc.lit{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--accent);z-index:1;position:relative}.rv-rc.next{border:1.25px dashed var(--line);color:var(--muted)}.rv-rc.gap{color:var(--muted)}.rv-rc.gap b{font:500 12.5px/1.2 var(--body);white-space:nowrap}.rv-rc.long small{letter-spacing:-.05em}@container rvtile (width<=79px){.rv-to{display:block}}.rv-to.wrap{display:block}.rv-rc.stop:only-child{flex:none;width:140px}.rv-rc.stop{border:1.25px solid var(--line);color:var(--muted);flex:.82 1 0}.rv-rc.stop b{font:600 13px/1.1 var(--body)}.rv-rc.stop.lit{color:var(--on-accent);border-color:var(--accent)}.rv-trackempty{height:var(--rv-track-h);border:1.25px dashed var(--line);border-radius:var(--r-btn)}.rv-cycle{min-height:22px;color:var(--muted);white-space:nowrap;align-items:center;margin:0 0 4px;padding:0;font-size:13px;list-style:none;display:flex}.rv-cycle.blank{height:26px;margin:0;display:block}.rv-cycle li+li:before{content:"→";color:var(--muted);margin-inline:7px;font-weight:400}.rv-cycle li.on{color:var(--ink);font-weight:700}.rv-cycle li.on span{-webkit-text-decoration:underline 2px var(--accent);text-decoration:underline 2px var(--accent);text-underline-offset:4px}.rv-cycle li.on span:before{content:"▸";color:var(--ink);margin-right:3px;text-decoration:none;display:inline-block}.rv-track.cycle.phase-check .rv-rc.lit,.rv-track.cycle.phase-init .rv-rc.lit{color:var(--ink);box-shadow:inset 0 0 0 2px var(--accent);background:0 0}.rv-lower{flex:1 1 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-height:230px;display:grid}.rv-lower.noout,.rv-lower.noleft{grid-template-columns:minmax(0,1fr)}.rv-left{grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0;min-height:0;display:grid}.rv-left.single{grid-template-rows:minmax(0,1fr)}.rv-lower.noout .rv-left:not(.single){grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rv-slot{min-width:0;min-height:0;display:flex;container-type:size}.rv-boxes{flex-wrap:wrap;flex:auto;gap:8px;min-width:0;min-height:0;display:flex;overflow-y:auto}.rv-box{--fill:var(--ctl);border-radius:var(--r-pane);border:1.25px solid var(--line);background:var(--well);flex-direction:column;flex:124px;justify-content:center;gap:2px;min-width:0;padding:8px 14px;display:flex;container:card/inline-size}.rv-box.arrive{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.rv-boxname{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 10px;display:flex}.rv-boxname code{font-size:min(15px, calc(100cqw / (var(--rv-nm,1) * .66)));white-space:nowrap;font-style:italic;font-weight:600}.rv-boxname small{font:500 12px var(--mono);color:var(--muted);white-space:nowrap}.rv-boxwell{--rv-fsbig:min(var(--rv-big-box), calc(100cqw / (var(--rv-ch,1) * .62)), calc((100cqh - 78px) / 1.1));--rv-fs:min(var(--rv-mid-box), var(--rv-fsbig));flex:none;align-items:baseline;display:flex;position:relative;overflow:hidden}.rv-boxwell:before{content:"​";width:0;font:500 var(--rv-fsbig)/1.1 var(--num)}.rv-box.focus .rv-boxwell{--rv-fs:var(--rv-fsbig)}.rv-boxval,.rv-old{font:500 var(--rv-fs)/1.1 var(--num);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.rv-boxmark{min-height:20px;color:var(--muted);align-items:center;gap:6px;font-size:12.5px;line-height:1.2;display:flex}.rv-boxmark .cicon{--fill:var(--ctl);--on:var(--ctl-on);width:18px;height:18px}.rv-boxmark .cicon svg{width:12px;height:12px}.rv-box+.rv-box .rv-boxmark .cicon{display:none}.rv-box:has(+.rv-box) .rv-boxmark .cicon{display:none}.rv-cond,.rv-calc,.rv-forkq{border-radius:var(--r-pane);border:1.25px solid var(--line);flex-direction:column;flex:auto;justify-content:center;gap:4px;min-width:0;padding:8px 14px;display:flex;container:card/inline-size}.rv-cond.lit,.rv-calc.lit,.rv-forkq.lit{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.rv-condsrc{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:none;font-size:14px;line-height:1.3;overflow:hidden}.rv-condrow{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.rv-condnum{--rv-fsbig:min(var(--rv-big-check), calc(100cqw / (var(--rv-ch,5) * .62)), calc((100cqh - 72px) / 1.12));max-width:100%;min-width:calc(var(--rv-fsbig) * var(--rv-ch,5) * .56);flex:none;align-items:baseline;display:inline-flex}.rv-condnum:before{content:"​";width:0;font:500 var(--rv-fsbig)/1.12 var(--num)}.rv-condfill{--rv-fs:min(var(--rv-mid-check), var(--rv-fsbig));font:500 var(--rv-fs)/1.12 var(--num);letter-spacing:-.01em;white-space:nowrap;font-variant-numeric:tabular-nums}.rv-cond.focus .rv-condfill,.rv-forkq .rv-condfill{--rv-fs:var(--rv-fsbig)}.rv-pill{border-radius:var(--r-chip);min-height:28px;font:600 14px/1 var(--body);white-space:nowrap;align-items:center;gap:5px;padding:2px 11px 2px 8px;display:inline-flex}.rv-pill.yes{background:var(--true);color:var(--true-on)}.rv-pill.no{background:var(--false);color:var(--false-on);box-shadow:var(--false-ring)}.rv-sumrow{min-height:calc(var(--rv-big-sum) * 2.24 + 2px);flex-wrap:wrap;align-content:flex-start;align-items:baseline;gap:2px .55em;display:flex}.rv-sum,.rv-sumres{--rv-fs:min(var(--rv-mid-sum), calc(100cqw / (var(--rv-ch,5) * .62)));font:500 var(--rv-fs)/1.12 var(--num);letter-spacing:-.01em;white-space:nowrap;font-variant-numeric:tabular-nums}.rv-sumres{font-weight:600}.rv-calc.focus .rv-sumrow{flex-direction:column;gap:2px}.rv-calc.focus .rv-sum,.rv-calc.focus .rv-sumres{--rv-fs:min(var(--rv-big-sum), calc(100cqw / (var(--rv-ch,5) * .62)))}.rv-output{flex-direction:column;gap:5px;min-width:0;min-height:0;display:flex}.rv-output ol{background:var(--well);border-radius:var(--r-btn);border:var(--pane-edge);min-height:44px;font:500 15px/1.5 var(--num);font-variant-numeric:tabular-nums;flex:1 1 0;margin:0;padding:8px 0;list-style:none;overflow-y:auto}.rv-output li code{font-family:inherit}.rv-output li{border-left:3px solid #0000;align-items:baseline;gap:10px;padding:0 12px;display:flex}.rv-output li.new{border-left-color:var(--accent)}.rv-output li small{font:500 12px var(--body);color:var(--muted)}.rv-output li.rv-more{font:400 13px var(--body);color:var(--muted)}.rv-output.focus li.new code{font-weight:700}.forkview .rv-fork{flex-direction:column;flex:3 1 0;min-height:0;display:flex}.forkview .rv-output{flex:2 1 0;min-height:96px}.rv-forkhead{flex:1 1 0;align-items:stretch;gap:12px;min-height:96px;display:flex}.rv-forkq{flex:1 1 0;padding:10px 18px}.rv-forkbox{flex-wrap:wrap;flex:none;gap:8px;width:34%;min-width:0;max-width:210px;display:flex}.rv-fork.pending .rv-forkhead,.rv-fork.pending .rv-calc{flex:1 1 0}.rv-fork.pending .rv-forkbox{flex:1 1 0;width:auto;max-width:none}.rv-forklines{flex:none;width:100%;height:44px;display:block;overflow:visible}.rv-forklines path{fill:none;vector-effect:non-scaling-stroke}.rv-forklines .take{stroke:var(--accent);stroke-width:2.5px}.rv-forklines .miss{stroke:var(--muted);stroke-width:1.25px;stroke-dasharray:4 4}.rv-paths{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rv-path{border-radius:var(--r-btn);flex-direction:column;gap:6px;min-width:0;padding:10px 12px;display:flex}.rv-pathtop{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;display:flex}.rv-pathtop b{font-size:14px;font-weight:600}.rv-path code{overflow-wrap:anywhere;font-size:13.5px}.rv-path.taken{border:2px solid var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--panel))}.rv-path.skip{border:1.25px dashed var(--muted);color:var(--muted)}.rv-tag{white-space:nowrap;align-items:center;gap:4px;font-size:12.5px;font-weight:600;display:inline-flex}.rv-tag.on{color:var(--ink)}.rv-readyroom{flex:1 1 0;place-items:center;min-height:230px;display:grid}.tbtn.play.rv-runbtn{border-radius:var(--r-btn);flex:none;gap:8px;min-width:118px;padding-inline:14px;font-size:15px;font-weight:650}.tbtn.play.rv-runbtn.big{min-width:156px;min-height:56px;padding-inline:26px;font-size:17px}.picbar .tbtn.play.rv-runbtn{background:var(--accent);color:var(--on-accent);min-height:44px}.rv .msg{flex:none;position:static}.rv>[data-testid=message]:empty{position:absolute}.rv.bare{justify-content:center}.rv.bare .msg{text-align:center;font-family:var(--display);letter-spacing:-.01em;background:0 0;border:0;padding:28px;font-size:20px;font-weight:500}@media (height>=820px) and (width>=821px){@container rv (width>=600px){.rv-loop{--rv-track-h:84px}.rv-rc b{font-size:24px}.rv-rc small{font-size:13px}.rv-lower,.rv-fork{--rv-big-check:68px;--rv-mid-check:46px;--rv-big-box:64px;--rv-mid-box:46px;--rv-big-sum:56px;--rv-mid-sum:30px}.rv-box,.rv-cond,.rv-calc{padding:12px 18px}.rv-pill{min-height:34px;padding-inline:10px 14px;font-size:16px}.rv-condsrc{font-size:15px}.rv-output ol{font-size:17px}.rv-paths code{font-size:15px}}}@container rv (width<=350px){.rv-forkhead{flex-direction:column;gap:6px}.rv-forkq{flex:none}.rv-forkbox{flex:none;width:100%;max-width:none}.rv-box.tucked{flex-flow:wrap;justify-content:space-between;align-items:center;gap:0 10px;padding-block:2px}.rv-box.tucked .rv-boxname{gap:8px}.rv-box.tucked .rv-boxwell{--rv-fs:22px;--rv-fsbig:22px}.rv-left.deep{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.rv-box+.rv-box{padding-inline:8px}.rv-box:has(+.rv-box){padding-inline:8px}.rv-box+.rv-box .rv-boxmark{font-size:12px}.rv-box:has(+.rv-box) .rv-boxmark{font-size:12px}.rv-left.deep .rv-cond>.rv-condsrc{display:none}}@container rv (width<=520px){.rv-loop{--rv-track-h:62px}.rv-lower{grid-template-rows:minmax(104px,.9fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:8px;min-height:200px}.rv-lower.noout,.rv-lower.noleft{grid-template-rows:minmax(0,1fr)}.rv-left{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:8px}.rv-left.single{grid-template-columns:minmax(0,1fr)}.rv-lower,.rv-fork{--rv-big-check:34px;--rv-mid-check:26px;--rv-big-box:34px;--rv-mid-box:26px;--rv-big-sum:26px;--rv-mid-sum:18px}.rv-box,.rv-cond,.rv-calc{padding:6px 10px}.rv-boxes{flex-wrap:nowrap;gap:6px}.rv-box{flex:1 1 0;min-height:min-content}.rv-boxname{gap:0 6px}.rv-cond,.rv-forkq{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"a p""n n";align-content:center;gap:2px 6px;display:grid}.rv-cond>.rv-label,.rv-cond>.rv-condsrc,.rv-forkq>.rv-label,.rv-forkq>.rv-condsrc{grid-area:a;align-self:center;margin:0}.rv-cond>.rv-label.rv-ghost,.rv-forkq>.rv-label.rv-ghost,.rv-cond:not(.lit)>.rv-condsrc,.rv-forkq:not(.lit)>.rv-condsrc{display:none}.rv-cond .rv-condrow,.rv-forkq .rv-condrow{display:contents}.rv-cond .rv-pill,.rv-forkq .rv-pill{grid-area:p}.rv-cond .rv-condnum,.rv-forkq .rv-condnum{grid-area:n;min-width:0}.rv-boxmark{min-height:0}.rv-boxmark .cicon{display:none}.rv-condsrc{font-size:12.5px}.rv-pill{min-height:24px;padding-inline:6px 9px;font-size:13px}.rv-pill svg{width:11px;height:11px}.rv-rc{padding:4px 1px}.rv-rc b{font-size:15px}.rv-rc b svg{width:11px;height:11px}.rv-rc.stop b svg{display:none}.rv-rc.stop b{font-size:12.5px}.rv-track{gap:4px}.rv-rc small{letter-spacing:-.03em;font-size:12px}.rv-rc.long small{letter-spacing:-.07em}.rv-rc.far{display:none}.rv-wide{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rv-rc.gap:not(.to) b:after{content:"…"}.rv-cycle{white-space:normal;flex-wrap:wrap;align-content:flex-start;row-gap:2px;min-height:36px;font-size:12.5px}.rv-cycle.blank{height:36px}.rv-cycle li+li:before{margin-inline:4px}.rv-forkq{padding:6px 10px}.rv-forkhead{gap:8px;min-height:84px}.rv-forklines{height:26px}.rv-path{gap:3px;padding:6px 8px}.rv-paths{gap:8px}.rv-pathtop b{font-size:13px}.rv-tag{font-size:12px}.rv-path code{font-size:12.5px}.rv-fork.compact .rv-path code{display:none}.rv-fork.compact .rv-forkq,.rv-fork.compact .rv-condrow{display:flex}.rv-fork.compact .rv-path{padding:3px 7px}.rv-fork.compact .rv-pathtop{flex-wrap:nowrap;gap:4px}.rv-fork.compact .rv-forklines{height:12px}}@container rv (width<=300px){.rv-rc.near,.rv-cond>.rv-condsrc{display:none}}.artview{--rv-big-box:36px;--rv-mid-box:36px;container:rv/inline-size}.rv-strip{grid-template-columns:128px minmax(0,1fr);align-items:stretch;gap:10px;min-width:0;height:140px;display:grid}.rv-strip.forky{height:202px}.rv-strip.nested:not(.forky){height:170px}.rv-stripbox{min-width:0;display:flex}.rv-strip .rv-box{padding:8px 12px}.rv-stripmain{flex-direction:column;gap:4px;min-width:0;min-height:0;display:flex}.rv-strip .rv-loop{--rv-track-h:54px}.rv-strip .rv-note,.rv-strip .rv-noteroom{display:none}.rv-strip .rv-head{min-height:22px;margin-bottom:3px}.rv-strip .rv-roundline b{font-size:15px}.rv-strip .rv-rc{padding:3px 2px}.rv-strip .rv-rc b{font-size:14px}.rv-strip .rv-rc small{letter-spacing:-.03em;font-size:11px}.rv-strip .rv-cycle{white-space:nowrap;flex-wrap:nowrap;min-height:22px;font-size:12.5px;overflow:hidden}.rv-strip .rv-chips{min-height:30px}.rv-stripline{justify-content:space-between;align-items:center;gap:2px 14px;min-height:26px;margin-top:auto;font-size:13px;display:flex}.rv-stripcheck{flex:none;align-items:center;gap:8px;display:inline-flex}.rv-stripline .rv-condnum{--rv-fsbig:14px;min-width:0}.rv-stripline .rv-condfill{--rv-fs:14px}.rv-stripline .rv-pill{min-height:22px;font-size:12.5px}.rv-drawn{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:500;overflow:hidden}.rv-fork.compact{flex:none}.rv-fork.compact .rv-forkhead{flex:none;min-height:0}.rv-fork.compact .rv-forkq{flex-flow:wrap;align-items:center;gap:2px 12px;padding:4px 12px}.rv-fork.compact .rv-condsrc{display:none}.rv-fork.compact .rv-condnum{--rv-fsbig:18px;min-width:0}.rv-fork.compact .rv-condfill{--rv-fs:18px}.rv-fork.compact .rv-pill{min-height:22px;font-size:12.5px}.rv-fork.compact .rv-forklines{height:18px}.rv-fork.compact .rv-path{gap:2px;padding:4px 8px}.rv-fork.compact .rv-path code{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;display:-webkit-box;overflow:hidden}.rv-fork.compact .rv-pathtop b{font-size:13px}.rv-fork.compact .rv-tag{font-size:12px}@container rv (width<=520px){.rv-strip{grid-template-rows:40px minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:204px}.rv-strip.forky{height:250px}.rv-strip.nested:not(.forky){height:234px}.rv-strip .rv-cycle{font-size:11px}.rv-stripline{grid-template-columns:minmax(0,1fr);align-content:start;min-height:44px;display:grid}.rv-drawn{margin-left:0}.rv-stripbox{min-height:0}.rv-strip .rv-box{flex-flow:wrap;justify-content:space-between;align-items:center;gap:2px 12px;padding:4px 10px}.rv-strip .rv-boxname{gap:8px}.artview{--rv-big-box:26px;--rv-mid-box:26px}.rv-strip .rv-boxwell{--rv-fs:26px;--rv-fsbig:26px}.picbar .rv-right{margin-left:0}}@container rv (width<=300px){.rv-strip{grid-template-rows:58px minmax(0,1fr);height:224px}.rv-strip.forky{height:272px}.rv-strip.nested:not(.forky){height:254px}.rv-fork.compact .rv-pathtop{flex-wrap:wrap}}@keyframes rv-drop{0%{transform:translateY(-105%)}to{transform:none}}@keyframes rv-leave{0%{transform:none}to{visibility:hidden;transform:translateY(105%)}}@keyframes rv-reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes rv-rise{0%{transform:scale(.74)}to{transform:none}}.rv-condfill,.rv-boxval{transform-origin:0 80%}.rv-cond.focus .rv-condfill{animation:.16s ease-out rv-rise}.rv-drop{animation:.24s ease-out rv-drop}.rv-old{animation:.24s ease-in forwards rv-leave;position:absolute;top:0;left:0}.rv-calc.focus .rv-sumres{animation:.28s ease-out .22s backwards rv-reveal}:root[data-motion=reduced] .rv-old{display:none}@media (width<=820px),(height<=499px){.rv{height:var(--runh,416px);flex:none;gap:8px;padding:10px 12px}.rv-readyroom,.picbar .rv-runbtn{display:none}.artview .rv-strip{order:1}.artview .picbar{order:2}}@media (width<=380px){.rv{height:var(--runh,410px)}}@media (height<=499px){.rv{height:var(--runh,250px)}}.top{position:relative}.top .piece{display:flex}.piecebtn{border-radius:var(--r-btn);min-width:0;min-height:44px;color:inherit;font:inherit;letter-spacing:inherit;white-space:nowrap;text-align:left;background:0 0;border:0;flex:0 auto;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.piecebtn:hover,.piecebtn[aria-expanded=true]{background:var(--raised)}.piecebtn:focus-visible{outline-offset:-2px}.piecename{text-overflow:ellipsis;min-width:0;overflow:hidden}.piecebtn small{flex:none}.piecebtn svg{color:var(--muted);flex:none}.top .examplesbtn,.top .saveprojbtn{white-space:nowrap;flex:none;gap:7px;padding-inline:12px;font-size:13.5px;font-weight:600}.top .examplesbtn[aria-expanded=true],.top .saveprojbtn[aria-expanded=true]{background:var(--raised)}.seed{border-radius:var(--r-btn);outline:1px solid var(--line);outline-offset:-1px;background:var(--panel);align-items:center;gap:7px;min-height:44px;padding:0 4px 0 11px;font-size:13.5px;font-weight:600;display:inline-flex}.seed input{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--well);width:13ch;min-height:36px;color:var(--ink);font:500 13.5px var(--mono);font-variant-numeric:tabular-nums;font-variant-ligatures:none;padding:0 8px}.seed input:disabled{color:var(--muted)}@media (pointer:coarse){.seed input{min-height:44px}}.picbar .rv-right{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}@container rv (width<=640px){.picbar[data-random]{align-content:flex-start;min-height:94px}}@container rv (width<=380px){.picbar[data-random]{min-height:144px}}.seedrow{flex-wrap:wrap;flex:none;align-items:center;gap:6px;padding:0 16px 12px;display:flex}.now{position:relative}.hidetip{border-radius:var(--r-btn);width:44px;height:44px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:6px;right:6px}.hidetip:hover{background:var(--raised);color:var(--ink)}.nowtext.hastip:before{content:"";float:right;width:38px;height:16px}@media (width<=1180px) and (width>=821px) and (height>=500px){.nowtext.hastip:before{height:40px}}@media (width<=820px),(height<=499px){.hidetip{right:-12px}.nowtext.hastip{font-size:15px}.nowtext.hastip:before{width:20px;height:40px}}.menu{z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-pane);flex-direction:column;gap:14px;width:min(560px,100%);max-height:calc(100dvh - 90px);padding:8px 14px 14px;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 16px 40px #00000042}.scrim{display:none}.menuhead{flex:none;justify-content:space-between;align-items:center;margin-right:-6px;display:flex}.menuhead h2{font-family:var(--display);font-size:inherit;margin:0;font-weight:650}.menusec{flex-direction:column;gap:8px;display:flex}.menulabel{color:var(--muted);margin:0;font-size:12.5px;font-weight:600}.menunote{min-width:0;color:var(--muted);margin:0;font-size:12.5px}.menunote:empty{display:none}.saverow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.projname{border:1px solid var(--line);border-radius:var(--r-btn);background:var(--well);min-width:0;min-height:44px;color:var(--ink);flex:180px;padding:0 11px}.primary{border-radius:var(--r-btn);background:var(--accent);min-height:44px;color:var(--on-accent);border:0;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:650;display:inline-flex}.primary:disabled{background:var(--raised);color:var(--muted);cursor:default}.plain{border:1px solid var(--line);border-radius:var(--r-btn);background:0 0;flex:none;justify-content:center;align-items:center;min-height:44px;padding:0 12px;font-size:13.5px;font-weight:600;display:inline-flex}.plain:hover{background:var(--raised)}.projects{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.projects li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px 8px;padding:4px 0;display:flex}.projects li>b{overflow-wrap:anywhere;flex:120px;min-width:0;font-weight:600}.projects li>small{color:var(--muted);flex:none;font-size:12.5px}.confirm{border-radius:var(--r-btn);background:var(--well);flex-wrap:wrap;flex:100%;align-items:center;gap:6px;padding:6px 8px;display:flex}.confirm p{flex:150px;margin:0;font-size:13.5px}.exgrid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.excard{border:var(--pane-edge);border-radius:var(--r-btn);background:var(--panel);min-width:0;color:var(--ink);text-align:left;flex-direction:column;gap:3px;padding:4px;font-size:12px;font-weight:600;display:flex}.excard:hover{background:var(--raised)}.excard[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:-1px}.excard canvas,.exwords,.exblank{border-radius:calc(var(--r-btn) - 3px);width:100%;height:62px;display:block}.excard canvas{background:var(--stage)}.exwords{background:var(--well);place-items:center;padding:0 4px;display:grid;overflow:hidden}.exwords code{color:var(--ink);text-align:center;font-size:12px}.exblank{border:1.5px dashed var(--muted);color:var(--muted);place-items:center;display:grid}.exname{overflow-wrap:anywhere;padding:0 3px 1px}@media (width<=820px),(height<=499px){.top .examplesbtn{order:6;padding-inline:10px}.top .saveprojbtn,.nophone{display:none!important}.scrim{z-index:28;background:#00000073;border:0;width:100%;padding:0;display:block;position:fixed;inset:0}.menu{border-radius:16px 16px 0 0;width:100%;max-height:none;position:fixed;inset:72px 0 0}}@media (width<=1180px) and (width>=821px) and (height>=500px){.top .saveprojbtn{padding-inline:0}.top .saveprojbtn span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width>=821px) and (height>=500px){.artview .eqs{height:140px}@container rv (width<=520px){.artview .eqs{height:204px}}}.eqs .eq{outline:var(--pane-edge);outline-offset:-1.25px;border:0}.top a.brand{min-width:44px;min-height:44px;color:inherit;border-radius:var(--r-btn);justify-content:center;text-decoration:none}.top a.brand:hover{background:var(--raised)}.brand img{flex:none;display:block}.top .lnav{flex:none;gap:2px;display:flex}.top .lnav a{border-radius:var(--r-btn);min-height:44px;color:var(--muted);align-items:center;padding:0 10px;font-weight:600;text-decoration:none;display:inline-flex}.top .lnav a:hover{background:var(--raised)}.top .lnav a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent);border-radius:0}@media (width<=1180px) and (width>=821px) and (height>=500px){.top .lnav a{padding-inline:8px;font-size:13.5px}}@media (width<=820px),(height<=499px){.top .lnav{order:2}.top .lnav a{padding-inline:8px;font-size:13.5px}}.lesson{--gap:10px;gap:var(--gap);min-height:100dvh;padding-left:max(14px, env(safe-area-inset-left,0px));padding-right:max(14px, env(safe-area-inset-right,0px));flex-direction:column;padding-block:6px 12px;display:flex}.lesson .ltop{flex:none}.lesson .ltop .tools{margin-left:auto}.lesson .lframe{flex-direction:column;flex:auto;gap:10px;min-width:0;display:flex}.lesson .lhead{flex-wrap:wrap;flex:none;align-items:center;gap:6px 16px;display:flex}.lesson .lhead h2{font-family:var(--display);font-size:var(--name-size);font-weight:var(--name-weight);letter-spacing:-.01em;margin:0}.lesson .stages{flex:auto;gap:3px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.lesson .stages li{min-width:0;color:var(--muted);white-space:nowrap;flex-direction:column;flex:1 1 0;gap:4px;font-size:12.5px;font-weight:500;display:flex}.lesson .stages li:before{content:"";background:var(--raised);height:4px;box-shadow:inset 0 0 0 1px var(--line);border-radius:2px}.lesson .stages li.done:before{background:var(--muted);box-shadow:none}.lesson .stages li.current{color:var(--ink);font-weight:650}.lesson .stages li.current:before{background:var(--accent);box-shadow:none}.lesson .exit{border:1px solid var(--line);border-radius:var(--r-btn);background:var(--panel);flex:none;min-height:44px;padding:0 12px;font-size:13.5px;font-weight:600}.lesson .exit:hover{background:var(--raised)}.lesson .lbody{flex:auto;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;display:grid}.lesson .guide{background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;flex-direction:column;gap:12px;min-width:0;padding:16px 18px;display:flex}.lesson .words{flex-direction:column;gap:8px;min-width:0;display:flex}.lesson .words:focus{outline:none}.lesson .say{font-family:var(--display);letter-spacing:-.012em;text-wrap:pretty;margin:0;font-size:clamp(19px,1.6vw,23px);font-weight:500;line-height:1.3}.lesson .then{text-wrap:pretty;margin:0;font-size:15.5px;line-height:1.42}.lesson .sub{color:var(--muted);margin:0;font-size:14px;line-height:1.42}.lesson .note{margin:0;font-size:14.5px;line-height:1.4}.lesson .note:not(:empty){border-left:3px solid var(--ink);padding-left:10px}.lesson .go{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lesson .go:empty{display:none}.lesson .ask{flex-direction:column;gap:10px;min-width:0;display:flex}.lesson .asklabel,.lesson .holdlabel{margin:0;font-size:14.5px;font-weight:600}.lesson .askhold{visibility:hidden}.lesson .ask>[aria-live]:empty{margin-top:-10px}.lesson .primary{border-radius:var(--r-btn);background:var(--accent);min-width:96px;min-height:44px;color:var(--on-accent);white-space:nowrap;border:0;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-weight:650;display:inline-flex}.lesson .primary[disabled]{background:var(--raised);color:var(--muted);cursor:default}.lesson .plain{border:1px solid var(--line);border-radius:var(--r-btn);white-space:nowrap;background:0 0;justify-content:center;align-items:center;min-height:44px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.lesson .plain:hover{background:var(--raised)}.lesson .pt-body{box-shadow:inset 0 -2px 0 var(--ink)}.lesson .pt-code{background:var(--accent);color:var(--on-accent);font:500 .92em var(--mono);font-variant-ligatures:none;border-radius:3px;padding:0 4px}@media (width>=821px) and (height>=500px){.lesson .guide{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 28px;display:grid}.lesson .words{grid-area:1/1/span 2}.lesson .ask{grid-area:1/2}.lesson .go{grid-area:2/2}.lesson .guide:not(:has(.ask)) .go{grid-row:1/span 2}.lesson .runsay .say{min-height:1.3em}.lesson .runsay .note{min-height:1.4em}.lesson .guide:has(.runsay){grid-template-columns:minmax(0,1fr) auto auto}.lesson .guide:has(.runsay) .ask{flex-direction:column;grid-area:1/2;gap:4px}.lesson .guide:has(.runsay) .go{grid-area:1/3/span 2;justify-content:flex-end;min-width:118px;min-height:44px;display:flex}.lesson .guide:has(.ask):not(:has(.runsay)){grid-template-columns:minmax(0,max-content) auto;justify-content:start;column-gap:44px}.lesson .guide:has(.ask):not(:has(.runsay)) .go{justify-self:start}}.lesson .lwork{align-items:stretch;gap:10px;min-width:0;display:grid}.lesson .lwork.duo,.lesson .lwork.cmps{align-content:start}@media (width>=821px) and (height>=500px){.lesson .lwork.duo{grid-template-columns:minmax(0,420px) minmax(0,1fr)}.lesson .lwork.run,.lesson .lwork.keys{grid-template-columns:minmax(300px,420px) minmax(0,1fr)}.lesson .lwork.cmps{grid-template-columns:minmax(0,1fr)}.lesson .lcenter .rv{flex-basis:clamp(400px,100dvh - 346px,560px)}}.lesson .lcode{overflow:hidden}.lesson .lcode .phead{flex:none;min-height:0;padding:10px 12px}.lesson .pyname{font-size:inherit;margin:0;font-weight:400}.lesson .lprog{flex:auto;min-height:0;padding:12px;overflow:auto}.lesson .lockline{color:var(--muted);align-items:center;gap:6px;margin:0;padding:0 12px 12px;font-size:13px;display:flex}.lesson .ljspane{flex-direction:column;flex:none;min-height:0;padding:10px 8px 4px;display:flex}.lesson .ljspane .js{padding-bottom:8px}.lesson .lcol{background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.lesson .lcol>.pane{background:0 0;border-radius:0;outline:none;flex:none}.lesson .lcol>.pane:first-child{flex:auto}.lesson .lcol>.pane+.pane{border-top:1px solid var(--line)}.lesson .lcol .lcode .phead{border-bottom:0;padding-bottom:0}.lesson .lcol .lcode+.lcode .pyname{color:var(--muted);font-size:12.5px}.lesson .lprog .program,.lesson .lprog .block,.lesson .lprog .block.hat{cursor:default}.lesson .lprog .block[data-id]>.rw{padding-right:8px}.lesson .lprog .slot.locked{cursor:default;box-shadow:none}.lesson .lprog .slot.unlocked{box-shadow:0 0 0 3px var(--accent);cursor:text}.lesson .lprog .slot.unlocked:focus-within{outline:0}.lesson .numin{width:calc(var(--len,1) * 1ch + 8px);min-width:3ch;color:inherit;font:inherit;line-height:inherit;text-align:center;background:0 0;border:0;border-radius:3px;outline:0;margin:0;padding:0 2px;display:inline-block;box-shadow:inset 0 -1.5px}.lesson .numin[aria-invalid=true]{box-shadow:none;text-underline-offset:3px;-webkit-text-decoration:underline wavy;text-decoration:underline wavy;text-decoration-thickness:1.5px}.lesson .lcenter{position:relative;overflow:auto}.lesson .lcenter .insp{background:0 0;border-radius:0;outline:none;flex:none;display:block;position:static;overflow:visible}.lesson .lcenter .insp .detailsbtn{border:0;border-top:1px solid var(--line);border-radius:0;justify-content:flex-start;width:100%;margin:0;padding:0 16px;display:flex}.lesson .lcenter .insp .detailsbtn svg{transform:rotate(-90deg)}.lesson .lcenter .insp .detailsbtn[aria-expanded=true] svg{transform:none}.lesson .lcenter .insp .rest{width:auto;max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;flex:none;display:block;position:static;overflow:visible}.lesson .lcenter .insp .rest[hidden]{display:none}.lesson .lbar{z-index:20;position:sticky;bottom:0}.lesson .choices{flex-wrap:wrap;gap:8px;display:flex}.lesson .choice{border:1.5px solid var(--line);border-radius:var(--r-btn);background:var(--panel);min-width:76px;min-height:60px;font:600 21px var(--mono);font-variant-ligatures:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;display:inline-flex;position:relative}.lesson .choice:hover{background:var(--raised)}.lesson .choice:before{content:"";width:11px;height:11px;box-shadow:inset 0 0 0 1.5px var(--muted);border-radius:50%;flex:none}.lesson .choice[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.lesson .choice[aria-pressed=true]:before{background:var(--ink);box-shadow:0 0 0 2px var(--panel), 0 0 0 3px var(--ink);width:7px;height:7px;margin-inline:3px}.lesson .choice.wrong,.lesson .choice.right{cursor:default}.lesson .choice.wrong{border-style:dashed;border-color:var(--muted);color:var(--muted)}.lesson .choice.right{background:var(--true);border-color:var(--true);color:var(--true-on)}.lesson .choice.wrong:before,.lesson .choice.right:before{display:none}.lesson span.choice{cursor:default}.lesson .choices.small .choice{min-width:58px;min-height:44px;padding:0 12px;font-size:16px}.lesson .help{border-radius:var(--r-btn);border-left:3px solid var(--ink);background:var(--well);max-width:56ch;margin:0;padding:10px 12px;font-size:15px;line-height:1.4}.lesson .keylist{flex-direction:column;gap:8px;padding:12px;display:flex;overflow:auto}.lesson .keylist>.rv-label{padding-left:4px}.lesson .checks{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.lesson .checks button{border-radius:var(--r-btn);text-align:left;background:0 0;border:1.5px solid #0000;grid-template-columns:7ch minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:44px;padding:4px 10px;font-size:14px;line-height:1.32;display:grid}.lesson .checks button:hover{background:var(--raised)}.lesson .checks .stepno{font:500 12.5px var(--mono);color:var(--muted)}.lesson .checks code{font:500 15px var(--num);font-variant-numeric:tabular-nums;white-space:nowrap}.lesson .checks .t{grid-column:2/-1}.lesson .checks .rv-pill{min-height:24px;font-size:13px}.lesson .checks li[aria-current] button{border-color:var(--ink);box-shadow:inset 3px 0 0 var(--ink)}.lesson .tally{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px 28px;margin:4px 0 0;padding:10px 4px 2px;display:flex}.lesson .tally div{flex-direction:column;display:flex}.lesson .tally b{font:500 30px/1.1 var(--num);font-variant-numeric:tabular-nums}.lesson .tally span{color:var(--muted);font-size:13px}.lesson .compare{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px;display:grid}.lesson .cmp{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.lesson .cmp h3{font-family:var(--display);letter-spacing:-.01em;justify-content:space-between;align-items:baseline;gap:8px;margin:0;font-size:16px;font-weight:650;display:flex}.lesson .cmp h3 small{font:500 12.5px var(--mono);color:var(--muted)}.lesson .cmpin{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));align-items:start;gap:12px 18px;display:grid}.lesson .cmp .program{min-width:0;max-width:420px}.lesson .cmp dl{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:6px 16px;margin:0;display:grid}.lesson .cmp dt{color:var(--muted);font-size:13px}.lesson .cmp dd{font:500 15px var(--num);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-variant-ligatures:none;margin:0}.lesson .cmp dd.lead{letter-spacing:-.02em;font-size:24px}.lesson .learn{flex-direction:column;gap:16px;padding:22px;display:flex}.lesson .learn h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:clamp(24px,3vw,34px);font-weight:600}.lesson .learn>p{color:var(--muted);margin:-8px 0 0;font-size:14px}.lesson .lessons{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.lesson .lesson-card{border-radius:var(--r-pane);border:1.25px solid var(--line);background:var(--panel);flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.lesson .lesson-card .pic{border-radius:var(--r-btn);background:var(--well);justify-content:center;align-items:center;height:118px;padding:8px;display:flex;overflow:hidden}.lesson .lesson-card h3{font-family:var(--display);letter-spacing:-.012em;margin:0;font-size:18px;font-weight:650}.lesson .lesson-card p{color:var(--muted);margin:0;font-size:14px}.lesson .progress{gap:3px;display:flex}.lesson .progress i{background:var(--raised);height:4px;box-shadow:inset 0 0 0 1px var(--line);border-radius:2px;flex:1}.lesson .progress i.on{background:var(--accent);box-shadow:none}.lesson .lessonfoot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.lesson .lessonfoot span{align-items:center;gap:5px;font-size:13px;font-weight:500;display:inline-flex}.lesson .minibox{border:1.25px solid var(--line);border-radius:var(--r-btn);background:var(--panel);flex-direction:column;padding:4px 18px 6px;display:flex}.lesson .minibox code{font-size:13px;font-style:italic;font-weight:600}.lesson .minibox b{font:500 44px/1 var(--num);letter-spacing:-.02em}.lesson .thumbtrack{width:100%}.lesson .thumbtrack .rv-rc{min-height:50px}.lesson .thumbtrack .rv-rc b{font-size:14px}.lesson .minifork{grid-template-columns:1fr 1fr;justify-items:stretch;width:100%;max-width:280px;display:grid}.lesson .minifork svg{grid-column:1/-1;width:100%;height:30px;display:block}.lesson .minifork path{fill:none;stroke:var(--muted);stroke-width:1.5px;vector-effect:non-scaling-stroke}.lesson .minifork .q{border:1.25px solid var(--line);border-radius:var(--r-btn);background:var(--panel);font:500 14px var(--mono);grid-column:1/-1;justify-self:center;padding:2px 12px}.lesson .minifork .mp{text-align:center;border:1.25px solid var(--line);border-radius:var(--r-btn);background:var(--panel);margin-inline:3px;padding:5px 6px;font-size:12.5px;font-weight:600}@media (width>=821px) and (width<=1180px) and (height>=500px){.lesson .lwork.run,.lesson .lwork.keys{grid-template-columns:300px minmax(0,1fr)}.lesson .guide{padding:14px}.lesson .brand span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width>=821px) and (width<=960px) and (height>=500px){.lesson .ltop .lookbtn{min-width:108px;padding:0 8px}}@media (width<=820px),(height<=499px){.lesson{--barh:112px;min-height:0;padding-inline:8px;padding-bottom:calc(var(--barh) + 14px);gap:8px}.lesson .ltop{flex-wrap:wrap;gap:4px 6px}.lesson .ltop .brand{order:1}.lesson .ltop .brand span{font-size:14px}.lesson .ltop .tools{order:4}.lesson .ltop .lookbtn{min-width:72px;padding:0 8px}.lesson .ltop .lookbtn span,.lesson .ltop .lookbtn b{display:none}.lesson .ltop .lookbtn:before{content:"Look";font-size:13px;font-weight:600}.lesson .lframe,.lesson .lbody,.lesson .guide,.lesson .lwork{display:contents}.lesson .lhead{gap:4px 10px}.lesson .lhead h2{flex:1 1 0;min-width:0;font-size:17px}.lesson .stages{flex:100%;order:3}.lesson .stages li{white-space:nowrap;gap:0;font-size:0}.lesson .stages li.current{flex:2.4 1 0;gap:3px;font-size:13px}.lesson .words{background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;top:env(safe-area-inset-top,0px);z-index:12;order:1;gap:6px;padding:12px 14px;position:sticky;box-shadow:0 6px 14px #0000001a}.lesson .say{font-size:19px}.lesson .runsay{gap:2px;padding:8px 12px}.lesson .runsay .say{letter-spacing:0;height:41.6px;font-size:16px;line-height:20.8px;overflow-y:auto}.lesson .runsay .note{min-height:1.35em;font-size:13.5px;line-height:1.35}.lesson .ask{background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;order:6;padding:12px 14px}.lesson .askhold{display:none}.lesson .go{order:7;padding-inline:2px}.lesson .lwork>*,.lesson .lbody>*,.lesson .lframe>*{order:5}.lesson .lframe>.lhead{order:0}.lesson .numin{min-height:28px}.lesson[data-stage=predict] section[aria-label=JavaScript],.lesson[data-stage=test] section[aria-label=JavaScript]{order:7}.lesson[data-edit="1"] .lcenter{display:none}.lesson[data-edit="1"] .lcol{order:2}.lesson[data-edit="1"] .ask{order:3}.lesson[data-edit="1"] .runsay .say{height:auto;font-size:17px;overflow:visible}.lesson[data-edit="1"] .runsay .note{display:none}.lesson .lcenter{order:2;scroll-margin-top:120px;overflow:visible}.lesson .keylist{order:3}.lesson[data-stage=explain] .lcenter{order:4}.lesson .lcol{order:5}.lesson .lwork.duo{grid-template-columns:minmax(0,1fr)}.lesson .lprog{overflow:visible}.lesson .ljspane .js{overflow:auto visible}.lesson .lbar{position:fixed}.lesson .compare{order:5}.lesson .learn{padding:16px 12px}}@media (width<=380px){.lesson .lcenter .rv{padding-inline:10px}.lesson .runsay .say{height:62.4px}}@media (prefers-reduced-motion:reduce){.lesson .primary,.lesson .plain{transition:none}}.lesson.landing{--hl-track:-.03em;--h2-track:-.02em;min-height:100dvh;padding:0;display:block}:root[data-dir=blueprint] .landing{--hl-track:-.006em;--h2-track:-.004em}:root[data-dir=instrument] .landing{--hl-track:-.02em;--h2-track:-.012em}html[data-motion=full]:has(.landing){scroll-behavior:smooth}.landing .site{padding-inline:max(20px, env(safe-area-inset-left,0px));max-width:1440px;margin-inline:auto}.landing .site>.top{padding-block:10px}.landing .hline{font-family:var(--display);letter-spacing:var(--hl-track);text-wrap:balance;margin:0;font-size:clamp(42px,5.4vw,80px);font-weight:650;line-height:1.02}.landing .hline span{display:block}.landing .lede{color:var(--muted);text-wrap:pretty;max-width:52ch;margin:0;font-size:clamp(16px,1.45vw,20px);line-height:1.45}.landing .acts{flex-wrap:wrap;gap:10px;display:flex}.landing .start,.landing .seehow{border-radius:var(--r-btn);justify-content:center;align-items:center;min-height:52px;padding:0 24px;font-size:16px;font-weight:650;text-decoration:none;display:inline-flex}.landing .start{background:var(--accent);color:var(--on-accent)}.landing .seehow{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.landing .top .startbtn{border-radius:var(--r-btn);background:var(--accent);min-height:44px;color:var(--on-accent);white-space:nowrap;flex:none;justify-content:center;align-items:center;padding:0 16px;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.landing .top .brand span{clip-path:none;width:auto;height:auto;position:static;overflow:visible}.lesson.landing .top.ltop .lookbtn{background:0 0;border:0;min-width:44px;padding:0 8px}.lesson.landing .top.ltop .lookbtn:hover,.landing .top .iconbtn:hover{background:var(--raised)}.lesson.landing .top.ltop .lookbtn:before{content:none}.lesson.landing .top.ltop .lookbtn span{color:var(--muted);font-size:13.5px;font-weight:500;display:inline}.lesson.landing .top.ltop .lookbtn b,.lesson.landing .top.ltop .lookbtn svg{display:none}.landing .top .iconbtn{color:var(--muted)}.landing .top .tools{gap:0}.landing .still{background:var(--panel);border-radius:var(--r-pane);border:var(--pane-edge);min-width:0;position:relative;overflow:hidden;box-shadow:0 24px 60px #0000001a}.landing .col{flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex;container:col/inline-size}.landing .col .lprog{flex:none;padding:0;overflow:visible}.landing .col .js{font-size:12.5px}.landing .col .slot:not(.fake){min-height:27px;padding-block:3px;font-size:13px;line-height:19px}.landing .col .rw{min-height:40px}.landing .hlabel{color:var(--muted);margin:0;font-size:12.5px;font-weight:600}.landing .hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(24px,4vw,64px);padding-block:clamp(28px,5vw,72px);display:grid}.landing .herowords{flex-direction:column;align-items:flex-start;gap:22px;display:flex}.landing .hero .still{box-shadow:0 24px 60px #0000001f}.landing .pair2{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);display:grid}.landing .pair2>*+*{border-left:1px solid var(--line)}.landing .saynow{height:calc(2lh + 24px);font-family:var(--display);font-size:var(--cap-size);letter-spacing:-.01em;text-wrap:pretty;border-bottom:1px solid var(--line);align-items:center;margin:0;padding:12px 56px 12px 16px;font-weight:500;line-height:1.3;display:flex}.landing .hero-toggle{z-index:2;color:var(--muted);position:absolute;top:8px;right:6px}.landing .hero-toggle:hover{background:var(--raised);color:var(--ink)}.landing .codecol{container:codecol/inline-size}.landing .rv.hero-check{flex:auto;gap:0;height:auto;min-height:118px;padding:0;display:flex}.landing .hero-checkempty{border:1.25px dashed var(--line);border-radius:var(--r-pane);flex:auto}.landing .rv.hero-run{flex:none;height:auto;padding:10px 14px 14px}@container codecol (width<=300px){.landing .hero-check{--rv-big-check:30px;--rv-mid-check:22px}.landing .hero-check .rv-cond{padding-inline:10px}.landing .hero-check .rv-pill{padding-inline:6px 9px}}.landing .how{border-top:1px solid var(--line);flex-direction:column;gap:18px;padding-block:clamp(36px,5vw,72px);scroll-margin-top:calc(24px - clamp(36px,5vw,72px));display:flex}.landing .how h2{font-family:var(--display);letter-spacing:var(--h2-track);margin:0;font-size:clamp(28px,3.2vw,44px);font-weight:650}.landing .tri{grid-template-rows:560px;grid-template-columns:minmax(250px,.85fr) minmax(0,1.7fr) minmax(220px,.8fr);gap:0;min-width:0;display:grid}.landing .tri>*{min-width:0;min-height:0}.landing .tri>.howrun,.landing .tri>.howins{border-left:1px solid var(--line)}.landing .tri>.howrun{flex-direction:column;display:flex}.landing .tri>.howrun>.rv{flex:auto}.landing .tri>.howins{overflow-y:auto}.landing .tri>.howins>.insp{background:0 0;border-radius:0;outline:none;min-height:100%}.landing .tri>.howsay{display:none}.landing .howbar{border-top:1px solid var(--line);padding:7px 8px}.landing .how .rv-readyroom{display:grid}.landing .howbar .tbtn.play.quiet{background:var(--panel);color:var(--ink);border:1px solid var(--line);box-shadow:var(--tbtn-lip)}.landing .howbar .tbtn.play.quiet:hover{background:var(--raised)}.landing .howbar .transport{min-width:0}.landing .foot{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:10px;padding-block:22px 40px;font-size:13.5px;display:flex}.landing .drawing-story{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,6vw,84px);padding:clamp(48px,8vw,100px) 0;display:grid}.landing .drawing-story-art{border-radius:var(--r-pane);background:var(--stage);border:1px solid var(--line);overflow:hidden}.landing .drawing-story-art img{width:100%;height:auto;display:block}.landing .drawing-story-copy{justify-items:start;gap:18px;display:grid}.landing .drawing-story-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:700}.landing .drawing-story h2{font:650 clamp(36px, 4vw, 58px)/1.05 var(--display);letter-spacing:-.03em;margin:0}.landing .drawing-story p{color:var(--muted);max-width:45ch;margin:0;font-size:18px;line-height:1.5}@media (width<=700px){.landing .drawing-story{grid-template-columns:1fr}.landing .drawing-story-art{max-width:460px}}@media (width<=1100px){.landing .tri{grid-template-rows:470px auto;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.landing .tri>.howins{border-left:0;border-top:1px solid var(--line);grid-column:1/-1;overflow:visible}}@media (width<=960px){.landing .hero{grid-template-columns:minmax(0,1fr)}.landing .hline{font-size:clamp(42px,8vw,72px)}}@media (width<=820px){.landing .site{padding-inline:16px}.landing .hline{font-size:clamp(38px,11.5vw,72px)}.landing .hero{padding-block:26px}.landing .tri{grid-template-rows:none;grid-template-columns:minmax(0,1fr)}.landing .tri>.howsay{height:calc(2lh + 28px);font-family:var(--display);letter-spacing:-.012em;text-wrap:pretty;border-bottom:1px solid var(--line);order:-2;align-items:center;margin:0;padding:14px 16px;font-size:17px;font-weight:500;line-height:1.3;display:flex}.landing .tri>.howrun{border-left:0;order:-1}.landing .tri .col{border-top:1px solid var(--line)}.landing .saynow{font-size:17px}}@media (width<=640px){.landing .acts{width:100%}.landing .acts a{flex:100%}.landing .pair2{grid-template-columns:minmax(0,1fr)}.landing .pair2>*+*{border-left:0;border-top:1px solid var(--line)}}@media (width<=820px),(height<=499px){.landing .top .startbtn{order:5}}@media (width<=520px){.landing .top{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand.start""nav.tools";align-items:center;gap:2px 6px;display:grid}.landing .top .brand{grid-area:brand}.landing .top .startbtn{grid-area:start}.landing .top .lnav{grid-area:nav;margin-left:-8px}.landing .top .tools{grid-area:tools;margin-right:-4px}}@media (width<=380px){.landing .top .brand span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.landing .saynow,.landing .tri>.howsay{height:calc(3lh + 24px)}}.first .piece{align-items:baseline;gap:6px;padding-inline:8px}.first .piece small{margin-left:0}.first{--prompt-bg:color-mix(in srgb, var(--accent) 12%, var(--panel));--prompt-edge:color-mix(in srgb, var(--accent) 45%, var(--line))}:root[data-dir=instrument] .first{--prompt-bg:var(--raised);--prompt-edge:var(--line)}.first .prompt{border-radius:var(--r-pane);background:var(--prompt-bg);border:1.25px solid var(--prompt-edge);flex:none;grid-template-columns:auto minmax(0,1fr) auto 44px;align-items:center;gap:4px 14px;min-height:72px;padding:8px 6px 8px 16px;display:grid}.first .prompt b{font:500 13px var(--mono);white-space:nowrap}.first .prompt p{min-height:2.6em;font-family:var(--display);letter-spacing:-.01em;text-wrap:pretty;align-items:center;margin:0;font-size:clamp(17px,1.5vw,20px);font-weight:500;line-height:1.3;display:flex}.first .prompt p:focus{outline:none}.first .prompt .pgo{gap:8px;display:flex}.first .prompt .px{border-radius:var(--r-btn);background:0 0;border:0;justify-content:center;align-self:start;align-items:center;width:44px;height:44px;display:inline-flex}.first .prompt .px:hover{background:var(--raised)}.first .prompt .save-error{grid-column:1/-1;font-size:14px}.first .cwork{flex:auto;grid-template:"code center insp"minmax(0,1fr)/minmax(340px,25%) minmax(0,1fr) minmax(280px,21%);gap:10px;min-height:clamp(460px,100dvh - 240px,640px);display:grid}.first .cwork>.lcol{grid-area:code}.first .cwork>.center{grid-area:center}.first .cwork>.insp{grid-area:insp}.first .cwork>.insp.pending{visibility:hidden}.first .insp .contbtn{align-self:flex-start;margin-top:10px}@media (width>=821px) and (height>=500px){.first[data-pending="1"] .bar{visibility:hidden}}.first .picbar .tbtn[disabled]{visibility:hidden}@media (width>=821px) and (width<=1180px) and (height>=500px){.first .cwork{grid-template:"code insp""code center"minmax(0,1fr)/300px minmax(0,1fr)}}@media (width<=1100px){.first .prompt{grid-template-columns:auto minmax(0,1fr) 44px;grid-template-areas:"n.x""t t t""a a a"}.first .prompt b{grid-area:n}.first .prompt p{grid-area:t}.first .prompt .pgo{grid-area:a;min-height:44px}.first .prompt .px{grid-area:x}}@media (width<=820px),(height<=499px){.first .prompt{grid-template-columns:auto minmax(0,1fr) auto 44px;grid-template-areas:"n.a x""t t t t"}.first .prompt .pgo{min-height:0}.first .cwork{display:contents}.first .cwork>.center{order:10;overflow:visible}.first .cwork>.lcol{order:11}.first .cwork>.insp.pending{display:none}.first .prompt{min-height:0;padding:6px 4px 8px 12px}.first .prompt p{min-height:3.9em;font-size:16.5px}.first[data-pending="1"] .cwork>.center{display:none}}.drawing-intro{border:1px solid var(--line);border-radius:var(--r-pane);background:var(--panel);justify-content:space-between;align-items:center;gap:18px;margin:24px 0;padding:20px;display:flex}.drawing-intro h3,.drawing-intro p{margin:0 0 6px}.drawing-intro a,.drawing-lesson .primary{border-radius:var(--r-btn);background:var(--accent);min-height:44px;color:var(--on-accent);cursor:pointer;border:0;justify-content:center;align-items:center;padding:10px 16px;font-weight:650;text-decoration:none;display:inline-flex}.drawing-lesson-main{max-width:1120px;margin:0 auto;padding:28px 20px 64px}.drawing-lesson h1{font:650 clamp(36px, 5vw, 56px)/1.1 var(--display);margin:20px 0 8px}.drawing-lesson-main>p,.drawing-instructions p,.drawing-area p{color:var(--muted);line-height:1.55}.drawing-back{color:var(--ink)}.drawing-choices{flex-wrap:wrap;gap:8px;margin:24px 0;display:flex}.drawing-choices button,.drawing-step-controls button{border:1px solid var(--line);border-radius:var(--r-btn);background:var(--panel);min-height:44px;color:var(--ink);cursor:pointer;padding:8px 14px}.drawing-choices button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.drawing-workshop{border:1px solid var(--line);border-radius:var(--r-pane);background:var(--panel);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:24px;display:grid}.drawing-instructions ol{overflow-wrap:anywhere;padding-left:22px;line-height:1.8}.drawing-preview svg{border-radius:var(--r-slot);background:var(--stage);width:100%;max-height:440px;display:block}.drawing-preview .axis{stroke:var(--grid2);stroke-width:1px}.drawing-step-controls{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.drawing-step-controls output{text-align:center;min-width:65px;font-size:13px}.drawing-step-controls button:disabled{opacity:.5;cursor:default}.drawing-area{border:1px solid var(--line);border-radius:var(--r-pane);background:var(--panel);margin-top:24px;padding:24px}.area-diagram{width:100%;max-width:600px;height:auto;color:var(--ink);display:block}@media (width<=700px){.drawing-workshop{grid-template-columns:1fr;padding:16px}.drawing-intro{flex-direction:column;align-items:flex-start}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root,:root[data-dir=studio]{--bg:var(--lightningcss-light,#f3f4f8)var(--lightningcss-dark,#0d0e11);--panel:var(--lightningcss-light,#fff)var(--lightningcss-dark,#14161b);--raised:var(--lightningcss-light,#edeff4)var(--lightningcss-dark,#1e2128);--tab-on:var(--lightningcss-light,#fff)var(--lightningcss-dark,#424854);--line:var(--lightningcss-light,#dde0e8)var(--lightningcss-dark,#2a2e37);--ink:var(--lightningcss-light,#14161b)var(--lightningcss-dark,#eceef2);--muted:var(--lightningcss-light,#585e6b)var(--lightningcss-dark,#a0a6b1);--accent:var(--lightningcss-light,#3e5fe0)var(--lightningcss-dark,#7c9cff);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0d0e11);--stage:var(--lightningcss-light,#fcfcfe)var(--lightningcss-dark,#08090c);--grid:var(--lightningcss-light,#d5d9e4)var(--lightningcss-dark,#262a34);--grid2:var(--lightningcss-light,#bcc2d1)var(--lightningcss-dark,#383d4a);--grid-ink:var(--lightningcss-light,#4f5563)var(--lightningcss-dark,#aeb4bf);--well:var(--lightningcss-light,#f6f7fa)var(--lightningcss-dark,#101217);--edge:transparent;--pen:#3558d4;--pen-on:#fff;--col:#b0368f;--col-on:#fff;--ctl:#b35600;--ctl-on:#fff;--val:#0b7a60;--val-on:#fff;--dotc:#7042cc;--dotc-on:#fff;--out:#0a7aa0;--out-on:#fff;--true:var(--accent);--true-on:var(--on-accent);--false:var(--ink);--false-on:var(--panel);--false-ring:none;--hat:var(--lightningcss-light,#23262e)var(--lightningcss-dark,#2c3039);--hat-on:var(--lightningcss-light,#fff)var(--lightningcss-dark,#eceef2);--slot:#fff;--slot-ink:#14161b;--slot-edge:transparent;--display:"Geist Variable", system-ui, sans-serif;--body:"Geist Variable", system-ui, sans-serif;--mono:"Geist Mono Variable", ui-monospace, Consolas, monospace;--num:"Geist Variable", system-ui, sans-serif;--mono-word-space:0em;--r-pane:16px;--r-block:11px;--r-slot:7px;--r-btn:11px;--r-chip:999px;--r-hat:16px 16px var(--r-block) var(--r-block);--r-play:50%;--r-switch:999px;--chip-edge:var(--line);--pane-edge:none;--lip:none;--stack-gap:0px;--tab-h:6px;--tab-r:0 0 6px 6px;--tbtn-lip:none;--play-lip:none;--label-tracking:.05em;--label-case:uppercase;--name-size:17px;--name-weight:600;--cap-size:19px;--stage-edge:none}:root[data-dir=blueprint]{--bg:var(--lightningcss-light,#dfe6ee)var(--lightningcss-dark,#0a2140);--panel:var(--lightningcss-light,#eff3f8)var(--lightningcss-dark,#0e2a50);--raised:var(--lightningcss-light,#dce4ee)var(--lightningcss-dark,#143560);--tab-on:var(--lightningcss-light,#eff3f8)var(--lightningcss-dark,#2f5a8f);--line:var(--lightningcss-light,#9fb2c9)var(--lightningcss-dark,#2f5a8f);--ink:var(--lightningcss-light,#0f2850)var(--lightningcss-dark,#e9f2ff);--muted:var(--lightningcss-light,#40587c)var(--lightningcss-dark,#a8c3e4);--accent:var(--lightningcss-light,#0d55cc)var(--lightningcss-dark,#84d5ff);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#06203e);--stage:var(--lightningcss-light,#f8fafd)var(--lightningcss-dark,#0b2b55);--grid:var(--lightningcss-light,#e8eff6)var(--lightningcss-dark,#103763);--grid2:var(--lightningcss-light,#c7d7e8)var(--lightningcss-dark,#1e4d82);--grid-ink:var(--lightningcss-light,#35557e)var(--lightningcss-dark,#b5d2f0);--well:var(--lightningcss-light,#f8fafd)var(--lightningcss-dark,#0b2345);--edge:var(--lightningcss-light,#0f2850)var(--lightningcss-dark,#9cc7f2);--pen:var(--lightningcss-light,#c9dcff)var(--lightningcss-dark,#1b5096);--pen-on:var(--lightningcss-light,#0b2350)var(--lightningcss-dark,#dcebff);--col:var(--lightningcss-light,#f8cfe5)var(--lightningcss-dark,#4b2059);--col-on:var(--lightningcss-light,#4b0f36)var(--lightningcss-dark,#fadff1);--ctl:var(--lightningcss-light,#ffe0a3)var(--lightningcss-dark,#4a3913);--ctl-on:var(--lightningcss-light,#452a00)var(--lightningcss-dark,#ffeac2);--val:var(--lightningcss-light,#c4eddb)var(--lightningcss-dark,#0f4a47);--val-on:var(--lightningcss-light,#063d2e)var(--lightningcss-dark,#d2f6e8);--dotc:var(--lightningcss-light,#ddd0ff)var(--lightningcss-dark,#40378f);--dotc-on:var(--lightningcss-light,#261458)var(--lightningcss-dark,#e7dfff);--out:var(--lightningcss-light,#b8e3f7)var(--lightningcss-dark,#0f4a68);--out-on:var(--lightningcss-light,#06304a)var(--lightningcss-dark,#d6f0ff);--true:var(--accent);--true-on:var(--on-accent);--false:var(--ink);--false-on:var(--panel);--false-ring:none;--hat:var(--lightningcss-light,#0f2850)var(--lightningcss-dark,#e9f2ff);--hat-on:var(--lightningcss-light,#f4f8fc)var(--lightningcss-dark,#0a2140);--slot:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0a2140);--slot-ink:var(--lightningcss-light,#0f2850)var(--lightningcss-dark,#e9f2ff);--slot-edge:var(--lightningcss-light,#0f2850)var(--lightningcss-dark,#9cc7f2);--display:"Bricolage Grotesque Variable", Georgia, sans-serif;--body:"Bricolage Grotesque Variable", system-ui, sans-serif;--mono:"DM Mono", ui-monospace, Consolas, monospace;--num:"Bricolage Grotesque Variable", system-ui, sans-serif;--mono-word-space:0em;--r-pane:2px;--r-block:3px;--r-slot:2px;--r-btn:3px;--r-chip:2px;--r-hat:var(--r-block);--r-play:var(--r-btn);--r-switch:2px;--chip-edge:var(--edge);--pane-edge:1.25px solid var(--line);--lip:none;--stack-gap:0px;--tab-h:5px;--tab-r:0;--tbtn-lip:none;--play-lip:none;--label-tracking:.08em;--label-case:uppercase;--name-size:22px;--name-weight:700;--cap-size:19px;--stage-edge:1.25px solid var(--edge)}:root[data-dir=instrument]{--bg:var(--lightningcss-light,#e7e8eb)var(--lightningcss-dark,#191a1c);--panel:var(--lightningcss-light,#f6f6f8)var(--lightningcss-dark,#26272a);--raised:var(--lightningcss-light,#e0e1e5)var(--lightningcss-dark,#333438);--tab-on:var(--lightningcss-light,#f6f6f8)var(--lightningcss-dark,#5a5b60);--line:var(--lightningcss-light,#c5c7cc)var(--lightningcss-dark,#3f4044);--ink:var(--lightningcss-light,#181818)var(--lightningcss-dark,#eeece7);--muted:var(--lightningcss-light,#51545b)var(--lightningcss-dark,#aba9a3);--accent:var(--lightningcss-light,#e5431c)var(--lightningcss-dark,#ff5a33);--on-accent:#120805;--stage:#0d0e10;--grid:#24272c;--grid2:#3a3e46;--grid-ink:#b4b9c2;--well:var(--lightningcss-light,#e9eaed)var(--lightningcss-dark,#1b1c1e);--edge:transparent;--pen:#2c62d9;--pen-on:#fff;--col:#ec5a36;--col-on:#190805;--ctl:#f2b705;--ctl-on:#181818;--val:var(--lightningcss-light,#cfd1d6)var(--lightningcss-dark,#5a5b60);--val-on:var(--lightningcss-light,#181818)var(--lightningcss-dark,#f2f0eb);--dotc:#2bbfa6;--dotc-on:#06201c;--out:#2bbfa6;--out-on:#06201c;--true:var(--ink);--true-on:var(--panel);--false:var(--raised);--false-on:var(--ink);--false-ring:inset 0 0 0 1.5px var(--ink);--hat:var(--lightningcss-light,#2a2c31)var(--lightningcss-dark,#47484c);--hat-on:#f2f0eb;--slot:var(--lightningcss-light,#fff)var(--lightningcss-dark,#121315);--slot-ink:var(--lightningcss-light,#181818)var(--lightningcss-dark,#f2f0eb);--slot-edge:transparent;--display:"Archivo Variable", "Arial Narrow", sans-serif;--body:"Archivo Variable", system-ui, sans-serif;--mono:"JetBrains Mono Variable", ui-monospace, Consolas, monospace;--num:"JetBrains Mono Variable", ui-monospace, Consolas, monospace;--mono-word-space:-.22em;--r-pane:10px;--r-block:6px;--r-slot:4px;--r-btn:6px;--r-chip:999px;--r-hat:16px 16px var(--r-block) var(--r-block);--r-play:var(--r-btn);--r-switch:999px;--chip-edge:var(--line);--pane-edge:none;--lip:0 3px 0 color-mix(in srgb, var(--fill,#888) 62%, #000);--stack-gap:5px;--tab-h:0px;--tab-r:0;--tbtn-lip:0 3px 0 var(--line);--play-lip:0 3px 0 color-mix(in srgb, var(--accent) 65%, #000);--label-tracking:.12em;--label-case:uppercase;--name-size:18px;--name-weight:800;--cap-size:17px;--stage-edge:6px solid var(--lightningcss-light,#2a2b2e)var(--lightningcss-dark,#0a0b0c)}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.35}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.label{letter-spacing:var(--label-tracking);text-transform:var(--label-case);color:var(--muted);margin:0;font-size:12px;font-weight:600}.seclabel{color:var(--muted);font-size:12.5px;font-weight:600;display:block}.ghost{visibility:hidden}code,pre{font-family:var(--mono)}code,pre,.slot,.slot .n,.speed button,.speedcycle{font-variant-ligatures:none!important}.shell{--gap:10px;gap:var(--gap);height:100%;min-height:620px;padding-left:max(14px, env(safe-area-inset-left,0px));padding-right:max(14px, env(safe-area-inset-right,0px));flex-direction:column;padding-block:6px 12px;display:flex}.iconbtn{border-radius:var(--r-btn);min-width:44px;min-height:44px;color:var(--ink);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.iconbtn:hover{background:var(--raised)}.iconbtn[disabled]{color:var(--muted);opacity:.5;cursor:default;background:0 0}.top{align-items:center;gap:8px 18px;display:flex}.brand{font-family:var(--display);flex:none;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.brand svg{color:var(--accent)}.piece{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--display);font-size:var(--name-size);font-weight:var(--name-weight);letter-spacing:-.01em;margin:0;overflow:hidden}.piece small{font-family:var(--body);color:var(--muted);letter-spacing:0;margin-left:2px;font-size:12px;font-weight:500}.modes{border-radius:calc(var(--r-btn) + 3px);background:var(--raised);flex:none;gap:2px;margin-left:auto;padding:3px;display:flex}.tools{flex:none;align-items:center;gap:4px;display:flex}.lookwrap{position:relative}.lookbtn{border:1px solid var(--line);border-radius:var(--r-btn);background:var(--panel);align-items:center;gap:7px;min-width:158px;min-height:44px;padding:0 12px;font-weight:600;display:inline-flex}.lookbtn:hover{background:var(--raised)}.lookbtn b{font-weight:700}.lookbtn span{color:var(--muted);font-weight:500}.lookbtn svg{margin-left:auto}.lookmenu:focus{outline:0}.lookmenu{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:calc(var(--r-btn) + 3px);flex-direction:column;gap:2px;width:250px;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 34px #00000042}.lookmenu button{border-radius:var(--r-btn);text-align:left;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:10px;min-height:52px;padding:6px 9px;display:grid}.lookmenu button:hover{background:var(--raised)}.lookmenu b{font-weight:600;display:block}.lookmenu small{color:var(--muted);font-size:12.5px;display:block}.lookmenu .tick{visibility:hidden;color:var(--accent)}.lookmenu [aria-checked=true] .tick{visibility:visible}.sw{border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.sw i{width:18px;height:6px;box-shadow:0 8px 0 var(--b);background:var(--a);border-radius:2px;transform:translateY(-4px)}.sw-studio{--a:#7c9cff;--b:#b0368f;background:#14161b}.sw-blueprint{--a:#84d5ff;--b:#f8cfe5;background:#0e2a50;border-radius:3px}.sw-instrument{--a:#ff5a33;--b:#f2b705;background:#2a2c31}.modes button{border-radius:var(--r-btn);min-height:44px;color:var(--muted);white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:0;font-weight:600;display:inline-flex}.modes [data-mode=draw]{width:164px}.modes [data-mode=dot]{width:202px}.modes button[aria-selected=true]{background:var(--tab-on);color:var(--ink);box-shadow:0 1px 2px #00000024}.modes svg{flex:none}.lookmenu .menusep{background:var(--line);height:1px;margin:4px 6px}.lookmenu button.motion{grid-template-columns:minmax(0,1fr) auto}.msw{border-radius:var(--r-switch);background:var(--raised);width:36px;height:22px;box-shadow:inset 0 0 0 1.5px var(--muted);display:block;position:relative}.msw:after{content:"";border-radius:var(--r-switch);background:var(--muted);width:14px;height:14px;transition:transform .15s;position:absolute;top:4px;left:4px}.motion[aria-checked=true] .msw{background:var(--accent);box-shadow:none}.motion[aria-checked=true] .msw:after{background:var(--on-accent);transform:translate(14px)}.work{gap:var(--gap);flex:1;grid-template-rows:minmax(0,1fr);min-height:0;display:grid}.pane{background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;flex-direction:column;min-width:0;min-height:0;display:flex}.code{grid-area:code;overflow:hidden;container-type:inline-size}.center{scrollbar-gutter:stable;grid-area:center;overflow:auto}.insp{grid-area:insp;overflow-y:auto}.bar{background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;flex:none;height:64px;padding:7px 8px}@media (width>=1181px) and (height>=500px){.work{grid-template-columns:minmax(356px,25%) minmax(0,1fr) minmax(280px,21%);grid-template-areas:"code center insp"}.rest{flex:1 1 0;min-height:0;overflow-y:auto}}.palette{gap:14px;padding:12px;position:relative;overflow-y:auto}.pgroup{flex-direction:column;gap:7px;display:flex}.pitems{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.palette .block{touch-action:pan-y;max-width:100%}.chips{flex-wrap:wrap;gap:5px;display:flex}.chip{border:1px solid var(--chip-edge);background:var(--well);color:var(--ink);border-radius:var(--r-chip);touch-action:pan-y;cursor:grab;align-items:baseline;gap:5px;min-height:32px;padding:4px 10px;display:inline-flex}.chip code{font-family:var(--mono);font-size:13px}.chip small{color:var(--muted);font-size:12px}.chip:hover{background:var(--raised)}.chiphelp{color:var(--muted);margin:-3px 0 2px;font-size:12.5px}.tip{background:color-mix(in srgb, var(--accent) 13%, var(--panel));border-radius:var(--r-btn);align-items:flex-start;gap:8px;margin-bottom:12px;padding:9px 6px 9px 12px;font-size:14px;display:flex}.tip p{flex:1;margin:0}.tip button{background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;margin-top:-4px;display:inline-flex}.tip button:hover{background:var(--raised)}.bin{border:2px dashed var(--muted);border-radius:var(--r-pane);text-align:center;background:var(--panel);z-index:3;justify-content:center;align-items:center;font-weight:600;display:none;position:absolute;inset:8px}body.moving .bin.on{display:flex}.phead{border-bottom:1px solid var(--line);flex-wrap:wrap;flex:none;align-items:center;gap:6px 10px;padding:8px;display:flex}.phead .pair{margin-left:auto}.ptitle{font-size:inherit;flex:none;margin:0;padding-left:4px;font-weight:600}.addbtn{border:1px solid var(--line);border-radius:var(--r-btn);min-height:44px;color:var(--ink);white-space:nowrap;background:0 0;flex:none;align-items:center;gap:6px;padding:0 11px;font-size:13.5px;font-weight:600;display:inline-flex}.addbtn:hover,.addbtn[aria-expanded=true]{background:var(--raised)}.hint{color:var(--muted);text-align:right;flex:1;min-width:0;font-size:12.5px}.pscroll{flex:1 1 0;min-height:110px;padding:12px;overflow:auto}.list{gap:var(--stack-gap);flex-direction:column;min-height:20px;display:flex;position:relative}.jspane{border-top:1px solid var(--line);flex-direction:column;flex:0 auto;min-height:0;max-height:45%;padding:0 8px 4px;display:flex}.jstoggle{text-align:left;background:0 0;border:0;flex:none;align-items:center;gap:7px;width:100%;min-height:44px;padding:0 8px;font-size:13px;font-weight:600;display:flex}.jstoggle svg{flex:none;transform:rotate(180deg)}.jstoggle[aria-expanded=true] svg{transform:none}.js{min-height:0;font:13px/1.7 var(--mono);color:var(--ink);flex:0 auto;margin:0;padding:2px 0 8px;overflow:auto}.js code{white-space:pre;border-radius:4px;width:max-content;min-width:100%;padding-inline:8px;display:block}.js code.c{color:var(--muted)}@container (width<=300px){.addlong{display:none}.phead{gap:4px 8px;padding-inline:6px}.ptitle{font-size:13.5px}}.pair{border-radius:var(--r-btn);background:var(--raised);flex:none;display:inline-flex}.pair .iconbtn{border-radius:var(--r-btn) 0 0 var(--r-btn)}.pair .iconbtn+.iconbtn{border-left:1px solid var(--line);border-radius:0 var(--r-btn) var(--r-btn) 0}.pair .iconbtn:hover{background:var(--line)}.pair .iconbtn[disabled]:hover{background:0 0}.block{--x-w:26px;--x-top:7px;background:var(--fill);color:var(--on);border-radius:var(--r-block);border:1.25px solid var(--edge);box-shadow:var(--lip);text-align:left;-webkit-user-select:none;user-select:none;padding:0;font-weight:500;display:block;position:relative}.block:after{content:"";left:22px;bottom:calc(-1 * var(--tab-h));width:26px;height:var(--tab-h);background:var(--fill);border:1.25px solid var(--edge);border-radius:var(--tab-r);z-index:1;border-top:0;position:absolute}.cat-pen{--fill:var(--pen);--on:var(--pen-on)}.cat-col{--fill:var(--col);--on:var(--col-on)}.cat-ctl{--fill:var(--ctl);--on:var(--ctl-on)}.cat-val{--fill:var(--val);--on:var(--val-on)}.cat-dotc{--fill:var(--dotc);--on:var(--dotc-on)}.cat-out{--fill:var(--out);--on:var(--out-on)}.cat-hat{--fill:var(--hat);--on:var(--hat-on)}.rw{border-radius:inherit;flex-wrap:wrap;align-items:center;gap:5px 6px;min-height:40px;padding:6px 8px 6px 6px;display:flex}.palette .rw{min-height:36px;padding:5px 10px;font-size:13px}.program .block{cursor:grab}.block[data-id]>.rw{padding-right:calc(var(--x-w) + 10px);position:relative}.unit{flex:0 auto;align-items:baseline;gap:6px;min-width:0;max-width:100%;display:inline-flex}.unit>span:not(.slot){flex:none}.unit>.deg{margin-left:-4px}.grip{opacity:.75;touch-action:none;cursor:grab;flex:none;justify-content:center;align-items:center;width:18px;height:28px;display:inline-flex}.x{top:var(--x-top);color:inherit;width:var(--x-w);height:var(--x-w);opacity:0;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:6px}.block:hover>.rw>.x,.block:focus-within>.rw>.x{opacity:.85}.x:hover{opacity:1;background:#0000002e}.slot{background:var(--slot);color:var(--slot-ink);border:1px solid var(--slot-edge);border-radius:var(--r-slot);font-family:var(--mono);white-space:normal;overflow-wrap:break-word;text-align:left;cursor:text;-webkit-user-select:text;user-select:text;flex:0 auto;min-width:34px;max-width:100%;min-height:27px;padding:3px 7px;font-size:13px;line-height:19px;display:inline-block;box-shadow:inset 0 1px 2px #0000001a}.slot.short{text-align:center}.slot.name{font-style:italic}.slot.fake{pointer-events:none;-webkit-user-select:none;user-select:none;align-items:center;min-width:24px;max-width:none;height:23px;min-height:0;padding:0 6px;font-size:12px;line-height:1;display:inline-flex}.n{cursor:ew-resize;text-underline-offset:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;margin-inline:-1px;padding-inline:1px;font-weight:500;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1px}@media (hover:hover){.n:hover{background:color-mix(in srgb, var(--accent) 24%, var(--slot));text-decoration-style:solid}}.n.is-drag{background:var(--accent);color:var(--on-accent);font-weight:600;text-decoration:none}.slot:has(.n.is-drag){outline:2px solid var(--on);outline-offset:1px}body.scrubbing,body.scrubbing *{-webkit-user-select:none;user-select:none;cursor:ew-resize!important}.field{max-width:100%;color:inherit;font:inherit;line-height:inherit;resize:none;background:0 0;border:0;outline:0;margin:0;padding:0;display:block;overflow:hidden}.slot:focus-within{outline:2px solid var(--on);outline-offset:1px}.cicon{background:var(--on);width:22px;height:22px;color:var(--fill);border-radius:max(3px, calc(var(--r-slot) - 2px));flex:none;justify-content:center;align-items:center;display:inline-flex}.cicon svg{width:14px;height:14px;display:block}.slot.bad{text-underline-offset:3px;outline-offset:1px;outline:2px solid #e0301e;-webkit-text-decoration:underline wavy #e0301e;text-decoration:underline wavy #e0301e;text-decoration-thickness:1.5px}.slot.over{outline:2.5px solid var(--ink);outline-offset:1px}.ctlwrap{padding-bottom:12px}.inner{background:var(--well);border-radius:0 0 0 var(--r-block);min-height:44px;margin-left:14px;margin-right:0;padding:6px}.midrow{align-items:center;min-height:32px;padding-left:10px;font-weight:600;display:flex}.empty{border:1.5px dashed var(--line);border-radius:var(--r-block);color:var(--muted);pointer-events:none;padding:8px 10px;font-size:12.5px}.block.hat{cursor:default;border-radius:var(--r-hat);margin-bottom:var(--stack-gap)}.block.hat .rw{padding-left:12px;font-weight:600}.block.running>.rw{box-shadow:0 0 0 2px var(--ink), 0 0 0 4px color-mix(in srgb, var(--accent) 55%, transparent);z-index:2;position:relative}#ghost{z-index:50;pointer-events:none;transform-origin:20px 20px;filter:drop-shadow(0 10px 18px #00000052);max-width:420px;display:none;position:fixed;top:0;left:0}#ghost .x,#ghost .grip{display:none}#line{z-index:49;background:var(--accent);pointer-events:none;height:4px;box-shadow:0 0 0 2px var(--panel);border-radius:2px;display:none;position:fixed}body.dragging,body.dragging *{cursor:grabbing!important}.artview{flex:1 0 auto;grid-template-rows:minmax(180px,1fr) auto;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;padding:10px;display:grid}.stage{background:var(--stage);border-radius:var(--r-pane);border:var(--stage-edge);isolation:isolate;min-height:0;position:relative;overflow:hidden}.stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.sound-controls{color:var(--ink);padding:8px 12px}.sound-controls label{gap:6px;font-size:12px;font-weight:650;display:grid}.sound-controls input{width:100%;accent-color:var(--accent)}.sound-previews{gap:6px;margin-top:8px;display:flex}.lookmenu .sound-previews button{border:1px solid var(--line);border-radius:var(--r-slot);background:var(--raised);min-height:36px;color:var(--ink);flex:1;padding:5px 7px;font-size:11px;display:block}.stage[data-panning]{cursor:grab;touch-action:none}.stage[data-panning]:active{cursor:grabbing}.viewport-controls{z-index:4;border:1px solid var(--line);border-radius:var(--r-slot);background:var(--panel);color:var(--ink);align-items:center;gap:2px;padding:3px;display:flex;position:absolute;bottom:8px;left:8px}.viewport-controls button{border-radius:var(--r-slot);min-width:44px;min-height:44px;color:inherit;font:600 12px var(--body);cursor:pointer;background:0 0;border:0}.viewport-controls button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.viewport-controls span{text-align:center;min-width:36px;font-size:11px}.viewport-controls button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.msg{z-index:3;border-radius:var(--r-btn);background:var(--panel);color:var(--ink);border:1.5px solid var(--ink);padding:9px 12px;font-weight:500;position:absolute;top:12px;left:12px;right:12px}.picbar{flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;display:flex}.sec{border-top:1px solid var(--line);padding:12px 14px}.sec:first-child{border-top:0}.now .seclabel,.sec>.seclabel{margin-bottom:6px}.nowtext{font-family:var(--display);font-size:var(--cap-size);letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.3}@media (width>=821px) and (height>=500px){.nowtext{min-height:98.8px}}.nowtext[data-scrolls]{background:linear-gradient(var(--panel) 30%, transparent) top / 100% 18px no-repeat local, linear-gradient(transparent, var(--panel) 70%) bottom / 100% 18px no-repeat local, radial-gradient(farthest-side at 50% 0, #00000038, transparent) top / 100% 7px no-repeat scroll, radial-gradient(farthest-side at 50% 100%, #00000038, transparent) bottom / 100% 7px no-repeat scroll}.whichroom{justify-items:start;min-height:54px;display:grid}.whichroom>.which{grid-area:1/1;align-self:start}.which{border-radius:var(--r-slot);background:var(--well);align-items:center;gap:7px;width:fit-content;max-width:100%;min-height:30px;margin-top:10px;padding:4px 9px 4px 4px;font-size:13px;display:flex}.which .cicon{background:var(--fill);color:var(--on)}.which.cat-hat{padding-left:9px}.which span:last-child{overflow-wrap:anywhere;min-width:0}.detailsbtn{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:6px;width:100%;min-height:44px;padding:0 14px;font-size:13.5px;font-weight:600;display:flex}.detailsbtn:hover{background:var(--raised)}.detailsbtn svg{flex:none;transform:rotate(-90deg)}.detailsbtn[aria-expanded=true] svg{transform:none}.detailbody .sec:first-child{border-top:1px solid var(--line)}.boxes{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.boxes li{grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:2px 10px;display:grid}.boxes code{font-style:italic;font-weight:600}.boxes b{font:600 15px var(--num);font-variant-numeric:tabular-nums}.boxes span{color:var(--muted);font-size:12.5px}.roundtext{overflow-wrap:anywhere;margin:0;font-size:13.5px}.roundtext+.roundtext{margin-top:4px}.roundtext code{font:500 13.5px var(--num);font-variant-numeric:tabular-nums}.outline{overflow-wrap:anywhere;margin:0;font-size:14px}.outline code{font-family:var(--num);font-variant-numeric:tabular-nums}.outline .count{margin-bottom:2px;display:block}.sep{color:var(--muted)}.count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.histbtn{text-align:left;background:0 0;border:0;align-items:center;gap:7px;width:100%;min-height:44px;margin-block:-8px;padding:0;display:flex}.histbtn svg{flex:none;transition:transform .12s;transform:rotate(-90deg)}.histbtn[aria-expanded=true] svg{transform:none}.histbtn .count{margin-left:auto}.histnote{color:var(--muted);margin:12px 0 -6px;font-size:12.5px}.hist ol{flex-direction:column;gap:2px;margin:12px 0 0;padding:0;list-style:none;display:flex}.hist ol button{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;border-radius:5px;grid-template-columns:minmax(2.2ch,auto) minmax(0,1fr);gap:8px;width:100%;min-height:32px;padding:4px 6px;font-size:13px;display:grid}.hist ol button:hover{background:var(--raised)}.hist ol b{font:500 12.5px var(--mono);color:var(--muted)}.eqs{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px 8px;height:104px;min-height:0;display:grid}.eq{--eq-lines:2;grid-row:span 2;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:subgrid;background:var(--well);border-radius:var(--r-btn);border:var(--pane-edge);align-items:baseline;gap:1px 8px;min-width:0;min-height:0;padding:6px 10px;display:grid;overflow:hidden}.eq code{font-family:var(--mono);overflow-wrap:anywhere;-webkit-line-clamp:var(--eq-lines);-webkit-box-orient:vertical;font-size:12.5px;line-height:1.3;display:-webkit-box;overflow:hidden}.eq b{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;min-width:6ch;font-size:13px;font-weight:600}.eq canvas{grid-column:1/-1;align-self:stretch;width:100%;height:100%;min-height:0;display:block}.transport{align-items:center;gap:6px;min-width:0;display:flex}.tbtn{border-radius:var(--r-btn);background:var(--panel);min-width:44px;min-height:44px;color:var(--ink);border:var(--pane-edge);box-shadow:var(--tbtn-lip);justify-content:center;align-items:center;display:inline-flex}.tbtn:hover{background:var(--raised)}.tbtn.play{background:var(--accent);color:var(--on-accent);border-radius:var(--r-play);box-shadow:var(--play-lip);min-width:50px;min-height:50px}.tbtn[disabled],.tbtn[disabled]:hover{background:var(--panel);color:var(--muted);cursor:default}.tbtn.play[disabled],.tbtn.play[disabled]:hover{background:var(--raised);box-shadow:none}.tbtn.runbtn{border-radius:var(--r-btn);flex:none;gap:8px;min-width:118px;padding-inline:14px;font-size:15px;font-weight:650}@media (width>=821px) and (height>=500px){.tbtn.play.quiet{background:var(--panel);color:var(--ink);border:1px solid var(--line);box-shadow:var(--tbtn-lip)}.tbtn.play.quiet:hover{background:var(--raised)}}.scrub{flex-direction:column;flex:160px;min-width:110px;padding-inline:8px;display:flex}.steplabel{z-index:1;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:13px;line-height:16px;position:relative;overflow:hidden}.scrub input{width:100%;height:44px;accent-color:var(--accent);margin:-9px 0}.speed{border-radius:var(--r-btn);background:var(--panel);border:var(--pane-edge);flex:none;gap:1px;width:186px;height:50px;padding:1px;display:flex}.speed button{border-radius:calc(var(--r-btn) - 2px);min-width:44px;min-height:44px;font-family:var(--mono);color:var(--muted);background:0 0;border:0;flex:1;padding:0;font-size:13.5px}.speed button[aria-pressed=true]{background:var(--raised);color:var(--ink)}.tbtn.speedcycle{font:500 13.5px var(--mono);display:none}.picbar .tbtn{background:var(--raised)}.shuffle{white-space:nowrap;flex:none;gap:6px;padding-inline:12px;font-size:13.5px;font-weight:600}.save{flex:none;gap:7px;min-width:128px;padding-inline:12px;font-size:13.5px;font-weight:600}.save[disabled]{opacity:1;color:var(--muted)}.gallery{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.gcard{border:var(--pane-edge);background:var(--panel);border-radius:var(--r-btn);text-align:left;flex-direction:column;flex:1 0 92px;gap:3px;padding:4px;font-size:12px;font-weight:600;display:flex}.gcard canvas{background:var(--stage);border-radius:calc(var(--r-btn) - 3px);width:100%;height:54px;display:block}.gcard span{padding:0 3px 1px}.gcard[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:-1px}.gcard:hover{background:var(--raised)}.gblank{border:1.5px dashed var(--muted);border-radius:calc(var(--r-btn) - 3px);height:54px;color:var(--muted);place-items:center;display:grid;padding:0!important}@media (width<=1320px) and (width>=821px) and (height>=500px){.top{column-gap:10px}.modes button{font-size:13px}.modes [data-mode=draw]{width:112px}.modes [data-mode=dot]{width:156px}.modes svg{display:none}.lookbtn{min-width:120px}.lookbtn span{display:none}}@media (width<=1180px) and (width>=821px) and (height>=500px){.brand span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.piece small{display:none}.work{grid-template:"code insp""code center"minmax(0,1fr)/300px minmax(0,1fr)}.jspane{max-height:30%}.insp{flex-direction:row;align-items:center;position:relative;overflow:visible}.nowwrap{flex:1 1 0;min-width:0}.now{padding:8px 12px}.now .seclabel,.whichroom{display:none}.nowtext{height:41.6px;min-height:0;font-size:16px;line-height:20.8px;overflow-y:auto}.detailsbtn{border:1px solid var(--line);border-radius:var(--r-btn);flex:none;justify-content:center;width:90px;margin:6px 8px 6px 0;padding:0;display:inline-flex}.detailsbtn svg{transform:none}.rest{display:none}.insp[data-details=open] .rest{z-index:25;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-pane);width:320px;max-height:min(480px,100dvh - 150px);display:block;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 16px 40px #00000042}}@media (width<=960px) and (width>=821px) and (height>=500px){.modes button,.modes [data-mode]{flex:none;width:44px;padding:0}.modes svg{display:block}.modeword{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lookbtn{min-width:108px;padding:0 8px}.lookbtn b{font-size:13px}}@media (width<=820px),(height<=499px){html,body,#root{height:auto}.shell{--barh:112px;height:auto;min-height:0;padding-bottom:calc(var(--barh) + 14px)}.top{flex-wrap:wrap;gap:4px 6px}.brand{order:1}.brand span{font-size:14px}.tools{order:4;margin-left:auto}.piece{min-width:0;font-size:min(var(--name-size), 17px);flex:max(120px,100% - 330px);order:5}.piece small{display:none}.modes{order:7;margin-left:0}.modes button,.modes [data-mode]{flex:none;width:44px;padding:0}.modeword{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lookbtn{min-width:72px;padding:0 8px}.lookbtn span,.lookbtn b{display:none}.lookbtn:before{content:"Look";font-size:13px;font-weight:600}.work,.insp{display:contents}.nowwrap{top:env(safe-area-inset-top,0px);z-index:12;background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;order:9;position:sticky;box-shadow:0 6px 14px #0000001a}.center{order:10;overflow:visible}.code{order:11;overflow:visible}.detailsbtn{background:var(--panel);border-radius:var(--r-pane);border-top:0;order:12}.detailsbtn.ghost{display:none}.rest{background:var(--panel);border-radius:var(--r-pane);outline:var(--pane-edge);outline-offset:-1.25px;order:13}.now{padding:8px 12px 4px}.now .seclabel,.whichroom{display:none}.nowtext{letter-spacing:0;height:41.6px;font-size:16px;line-height:20.8px;overflow-y:auto}.addbtn{display:none}.pscroll{flex:none;min-height:0;overflow:visible}.jspane{flex:none;max-height:none}.js{overflow-x:auto}.artview{flex-direction:column;padding:8px;display:flex}.stage{flex:none;height:42vh;min-height:230px}.eqs{grid-template-rows:none;grid-template-columns:1fr;gap:8px;height:auto}.eq{grid-row:auto;grid-template-rows:auto 30px}.bar{z-index:20;height:auto;padding:6px max(10px, env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(10px, env(safe-area-inset-left,0px));border-radius:14px 14px 0 0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 18px #0000002e}.transport{flex-wrap:wrap;row-gap:4px}.tbtn.runbtn{flex:auto}.scrub{flex:100%;order:3;padding-inline:4px}.speed{display:none}.tbtn.speedcycle{display:inline-flex}.slot:not(.fake){min-height:34px;padding-block:6px;font-size:14px;line-height:20px}.rw{min-height:46px}.gcard{flex:0 0 96px}.palette{display:none}.pitems{flex-flow:wrap}.palette .rw,.chip{min-height:44px}}@media (width>=600px) and (width<=820px) and (height>=700px),(height<=499px) and (width>=600px){.shell{--barh:70px}.transport{flex-wrap:nowrap}.tbtn.runbtn{flex:none}.scrub{flex:160px;order:0}}@media (width<=420px){.brand span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=380px){.nowtext{height:62.4px;overflow-y:auto}}@media (pointer:coarse){.hist ol button{align-items:center;min-height:44px}.chip{min-height:44px}.block{--x-w:44px;--x-top:6px}.slot:not(.fake){min-width:44px;min-height:44px;padding-block:11px;line-height:20px}.x{opacity:.85}.grip{width:30px;height:44px}.rw{min-height:52px}.palette .rw{min-height:44px}.tip button{width:44px;height:44px}}.block.landed{animation:.28s cubic-bezier(.2,.8,.2,1) land}@keyframes land{0%{transform:scale(1.04)}to{transform:none}}:root[data-motion=reduced] *,:root[data-motion=reduced] :before,:root[data-motion=reduced] :after{scroll-behavior:auto!important;transition-property:none!important;transition-duration:0s!important;animation-name:none!important}.codeline{display:none}.codeline mark{background:var(--accent);color:var(--on-accent);border-radius:2px}.numdock{display:none}@media (width<=820px),(height<=499px){html{overflow-y:scroll}.ptabs{border-radius:calc(var(--r-btn) + 3px);background:var(--raised);order:8;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;padding:3px;display:grid}.ptabs button{border-radius:var(--r-btn);min-height:44px;color:var(--muted);background:0 0;border:0;padding:0 2px;font-size:13.5px;font-weight:600}.ptabs button[aria-selected=true]{background:var(--tab-on);color:var(--ink);box-shadow:0 1px 2px #00000024}.ptabs button:disabled{cursor:default}.shell[data-ptab] .detailsbtn{display:none}.shell[data-ptab=details] .detailbody{display:block!important}.shell[data-ptab=watch] :is(.code,.rest),.shell[data-ptab=blocks] :is(.center,.rest,.jspane),.shell[data-ptab=code] :is(.center,.rest,.phead,.pscroll,.phonenote){display:none}.shell[data-ptab=code] .jspane{border-top:0;padding-top:8px}.shell[data-ptab=details] :is(.center,.code){display:none}.shell .codeline{scrollbar-width:none;font:12.5px/1.6 var(--mono);color:var(--muted);white-space:pre;margin:0;padding:0 12px 8px;display:block;overflow-x:auto}.shell .codeline::-webkit-scrollbar{display:none}.shell .prog .block[data-id]>.rw{padding-right:8px}.phonenote,.jsnone{border-radius:var(--r-btn);background:var(--well);color:var(--muted);margin:0 12px 12px;padding:8px 10px;font-size:13px}.shell .artview{min-height:var(--runh,416px)}.shell .artview .stage{flex:130px;height:auto;min-height:130px}.shell[data-editing]{padding-bottom:360px}.shell[data-editing] .bar{display:none}.numdock{left:0;right:0;bottom:var(--kb,0px);z-index:26;min-height:64px;padding:8px max(12px, env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(12px, env(safe-area-inset-left,0px));background:var(--panel);border-radius:14px 14px 0 0;justify-content:space-between;align-items:center;gap:10px;display:flex;position:fixed;box-shadow:0 -4px 18px #0000002e}.numtitle{overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:600}.numkeys{flex:none;align-items:center;gap:8px;display:flex}.signkey{min-width:44px;padding-inline:0;font-size:20px;line-height:1}}
