.shell_shell__74IDz{display:grid;--rail-l:232px;--rail-r:268px;grid-template-columns:var(--rail-l) 1fr var(--rail-r);grid-template-rows:auto 1fr 187px;grid-template-areas:"top    top     top" "left   center  right" "bottom bottom  bottom";height:100dvh;background:var(--st-bg);color:var(--st-ink);overflow:hidden;font-size:var(--st-fs)}.shell_topbar__Phxp9{grid-area:top;display:grid;grid-template-columns:var(--rail-l) 1fr var(--rail-r);align-items:center;padding:var(--sp-2) 0;background:var(--st-panel);border-bottom:1px solid var(--st-line);min-height:52px}.shell_barLeft__HIbJv{display:flex;padding-left:var(--sp-2);border-right:1px solid var(--st-line)}.shell_barCenter__g7W8V,.shell_barLeft__HIbJv{align-items:center;gap:var(--sp-3);min-width:0}.shell_barCenter__g7W8V{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:var(--sp-3);padding:0 var(--sp-3)}.shell_barCenterEnd___q5SS{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);min-width:0}.shell_docTitle__bhnDZ{min-width:0;width:22ch;max-width:100%;font:inherit;font-size:var(--st-fs);font-weight:600;color:var(--st-ink);text-align:right;background:transparent;border:1px solid var(--st-line);border-radius:var(--st-r);padding:var(--sp-1) var(--sp-2);transition:background-color var(--dur-fast) var(--ease-in-out),border-color var(--dur-fast) var(--ease-in-out)}.shell_docTitle__bhnDZ:hover{border-color:var(--st-hi);background:var(--st-panel)}.shell_docTitle__bhnDZ:focus-visible{outline:2px solid var(--st-ink);outline-offset:1px;border-color:transparent;background:var(--st-panel);text-align:left}.shell_brandBox__qPD9y{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.shell_histGroup__ZwxQD{display:flex;gap:2px}.shell_iconBtn__77kLT{font:inherit;font-size:var(--st-fs-sm);color:var(--st-ink-muted);background:var(--st-raised);border:1px solid var(--st-line);border-radius:var(--st-r);padding:var(--sp-1) var(--sp-3);cursor:pointer;min-height:32px}.shell_iconBtn__77kLT:hover:not(:disabled){background:var(--st-hi);color:var(--st-ink)}.shell_iconBtn__77kLT:disabled{opacity:.4;cursor:default}.shell_runGroup__upvvx{--run-h:34px;display:flex;align-items:center;gap:var(--sp-2)}.shell_playBtn__9xA0L{display:inline-flex;align-items:center;gap:var(--sp-2);font:inherit;font-size:var(--st-fs);font-weight:600;color:var(--pl-bar-ink);background:var(--pl-brand);border:0;border-radius:var(--r-full);padding:0 var(--sp-5);cursor:pointer;height:var(--run-h,34px);word-break:keep-all;white-space:nowrap}.shell_playBtn__9xA0L:hover{filter:brightness(1.08)}.shell_debugBtn__XYTVD{--btn-min:var(--run-h);--btn-pad:var(--sp-3);--btn-r:var(--r-full);background:var(--st-raised);border:1px solid var(--st-hi);color:var(--st-ink);font-weight:600}.shell_debugBtn__XYTVD:hover:not(:disabled){background:var(--st-hi)}.shell_debugBtn__XYTVD[aria-pressed=true]{background:var(--pl-brand);border-color:var(--pl-brand);color:var(--pl-bar-ink)}.shell_topRight__JfVCs{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);min-width:0;padding-right:var(--sp-2);border-left:1px solid var(--st-line)}.shell_backBtn__S36Sb:focus-visible,.shell_iconBtn__77kLT:focus-visible,.shell_playBtn__9xA0L:focus-visible,.shell_tool__sdO7L:focus-visible{outline:2px solid var(--st-ink);outline-offset:2px}.shell_left__RvMWl{grid-area:left;border-right:1px solid var(--st-line);min-height:0;overflow:hidden}.shell_center__JhHlD{grid-area:center;position:relative;min-height:0;min-width:0}.shell_right__uLFqf{grid-area:right;border-left:1px solid var(--st-line);min-height:0;overflow:hidden}.shell_bottom__pq6XU{grid-area:bottom;min-height:0;overflow:hidden}.shell_toolbar__KWPht{position:absolute;inset:var(--sp-3) auto auto var(--sp-3);display:flex;align-items:center;gap:2px;background:var(--st-panel);border:1px solid var(--st-line);border-radius:var(--r-full);padding:var(--sp-1)}.shell_tool__sdO7L{--btn-r:var(--r-full);--btn-min:30px;white-space:nowrap}.shell_snapBtn__iC_JE{display:inline-flex;align-items:center;gap:var(--sp-1);background:transparent;padding:0 var(--sp-3)}.shell_snapBtn__iC_JE,.shell_snapSel__wH4O4{font:inherit;font-size:var(--st-fs-sm);color:var(--st-ink-muted);border:0;cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell_snapSel__wH4O4{background-color:transparent;padding-inline:0 var(--st-caret-pad);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:var(--st-caret);background-position:var(--st-caret-pos);background-size:var(--st-caret-size);background-repeat:no-repeat}.shell_snapSel__wH4O4:hover:not(:disabled){color:var(--st-ink)}.shell_snapSel__wH4O4:disabled{opacity:.5;cursor:default}.shell_snapSel__wH4O4:focus-visible{outline:2px solid var(--st-ink);outline-offset:2px}.shell_snapBtn__iC_JE:hover{background:var(--st-panel-2);color:var(--st-ink)}.shell_toolOn__noTQn{background:var(--st-raised);color:var(--st-ink)}.shell_toolDivider__Lj_Po{width:1px;height:18px;background:var(--st-line);margin:0 var(--sp-1)}.shell_stats__dEeYL{inset:auto auto var(--sp-3) var(--sp-3);display:flex;align-items:center;gap:var(--sp-1);border:1px solid var(--st-line);border-radius:var(--r-full);padding:var(--sp-1) var(--sp-3);font-size:var(--st-fs-sm);color:var(--st-ink-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;pointer-events:none}.shell_helpBtn__aZxG8,.shell_stats__dEeYL{position:absolute;background:var(--st-panel)}.shell_helpBtn__aZxG8{--btn-r:var(--r-full);--btn-min:30px;inset:auto var(--sp-3) var(--sp-3) auto;border:1px solid var(--st-line)}.shell_helpBtn__aZxG8:hover,.shell_helpBtn__aZxG8[aria-expanded=true]{color:var(--st-ink);background:var(--st-raised)}.shell_helpCard__90v4l{position:absolute;inset:auto var(--sp-3) calc(var(--sp-3) + 38px) auto;width:min(360px,calc(100% - var(--sp-5)));background:var(--st-panel);border:1px solid var(--st-line);border-radius:var(--st-r-lg);padding:var(--sp-3);box-shadow:var(--elev-play-2);font-size:var(--st-fs-sm);max-height:60%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--st-scroll) transparent}.shell_helpTitle__fbecV{margin:0 0 var(--sp-2);font-size:var(--st-fs);color:var(--st-ink)}.shell_helpList__cCmI6{margin:0;display:grid;grid-gap:var(--sp-1);gap:var(--sp-1)}.shell_helpRow__CMU_2{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--sp-2);gap:var(--sp-2);align-items:start}.shell_helpKeys__Ep0sD{margin:0;color:var(--st-ink);font-weight:600}.shell_helpWhat__DzXqH{margin:0;color:var(--st-ink-muted);word-break:keep-all}.shell_helpNote__KgLNa{margin:var(--sp-2) 0 0;padding-top:var(--sp-2);border-top:1px solid var(--st-line);color:var(--st-ink-muted);line-height:1.7;word-break:keep-all}.shell_playOverlay__FzFXA{position:fixed;inset:0;z-index:var(--z-overlay);background:var(--st-bg)}.shell_debugOverlay__kePLp{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.shell_playFull__Wr9BK{height:100%;min-height:0}.shell_debugGame__8UQAA{position:relative;min-height:0}.shell_debugCode___sXeS{min-height:0;border-top:1px solid var(--st-line)}@media (max-height:620px){.shell_debugOverlay__kePLp{grid-template-rows:1fr}.shell_debugCode___sXeS{display:none}}.shell_backBtn__S36Sb{font:inherit;font-weight:600;color:var(--pl-bar-ink);background:var(--pl-brand);border:0;border-radius:var(--r-full);padding:var(--sp-2) var(--sp-4);cursor:pointer;min-height:36px}@media (max-width:1024px){.shell_shell__74IDz{display:flex;flex-direction:column;height:auto;min-height:100dvh;overflow:visible}.shell_topbar__Phxp9{display:flex;flex-wrap:wrap;row-gap:var(--sp-2);padding:var(--sp-2)}.shell_barLeft__HIbJv,.shell_topRight__JfVCs{padding:0;border:0}.shell_barCenter__g7W8V{display:flex;flex-wrap:wrap;padding:0}.shell_topRight__JfVCs{margin-left:auto}.shell_center__JhHlD{height:56vh;min-height:320px}.shell_left__RvMWl,.shell_right__uLFqf{border:0;border-top:1px solid var(--st-line);max-height:40vh}.shell_bottom__pq6XU{max-height:40vh}}.shell_modeTabs__Xq9Cf{display:flex;justify-self:start;gap:2px;background:var(--st-bg);border-radius:var(--r-full);padding:2px}.shell_modeTab__97mFM{display:inline-flex;align-items:center;gap:var(--sp-2);font:inherit;font-size:var(--st-fs-sm);color:var(--st-ink-muted);background:transparent;border:0;border-radius:var(--r-full);padding:var(--sp-1) var(--sp-3);cursor:pointer;min-height:30px}.shell_modeTab__97mFM:hover{color:var(--st-ink)}.shell_modeOn__MD_Av{background:var(--st-raised);color:var(--st-ink)}.shell_modeTab__97mFM:focus-visible{outline:2px solid var(--st-ink);outline-offset:2px}.shell_codeArea__QG0O_{grid-column:1/-1;grid-row:2/-1;min-height:0;min-width:0}@media (max-width:1024px){.shell_codeArea__QG0O_{min-height:70vh}}.playtext_name__M5Lts{margin-inline:var(--sp-1);font-weight:700;color:var(--pl-brand)}.playtext_num__GRydn{display:inline-block;padding:0 var(--sp-2);border:2px solid;border-radius:9999px;background:var(--pl-card);font-family:var(--f-display);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.playtext_n1__NJiRK{border-color:var(--pl-cmd-1);color:var(--pl-cmd-1-deep)}.playtext_n2__kr8VY{border-color:var(--pl-cmd-2);color:var(--pl-cmd-2-deep)}.playtext_n3__uMWNf{border-color:var(--pl-cmd-3);color:var(--pl-cmd-3-deep)}.playtext_n4__BoT6B{border-color:var(--pl-cmd-4);color:var(--pl-cmd-4-deep)}.gamepopup_overlay__1xib6{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;padding:var(--sp-4);background:color-mix(in srgb,var(--pl-brand-deep) 62%,transparent);animation:gamepopup_fadeIn___6_9j var(--dur-base) var(--ease-standard) both;overflow-y:auto}.gamepopup_overlay__1xib6[data-stacked=true]{background:transparent}.gamepopup_card__I1U2J[hidden]{display:none}.gamepopup_card__I1U2J{position:relative;width:min(560px,100%);background:var(--pl-card);color:var(--pl-ink);border:3px solid var(--pl-line);border-bottom:10px solid var(--pl-lip);border-radius:var(--r-xl);padding:clamp(20px,3vw,32px);display:grid;grid-gap:var(--sp-4);gap:var(--sp-4);justify-items:center;text-align:center;box-shadow:var(--pl-elev-2);animation:gamepopup_popIn__Pv1_3 var(--dur-slower) var(--ease-standard) both}@media (prefers-reduced-motion:reduce){.gamepopup_actions__3OeYH,.gamepopup_badge__NT3ir,.gamepopup_body__KRCI8,.gamepopup_card__I1U2J,.gamepopup_overlay__1xib6{animation:none}}.gamepopup_hat__yNcIi{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);margin:0;padding:var(--sp-2) var(--sp-5);border-radius:9999px;font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);color:var(--pl-on-brand);white-space:nowrap;box-shadow:var(--pl-elev-2)}.gamepopup_hatMission__ke4Lg{background:linear-gradient(180deg,var(--pl-brand) 0,var(--pl-brand-deep) 100%)}.gamepopup_hatWin__HsVo3{background:linear-gradient(180deg,var(--pl-cmd-4) 0,var(--pl-cmd-4-deep) 100%)}.gamepopup_hatTry__qULJW{background:var(--pl-accent);color:var(--pl-ink)}.gamepopup_hatAsk__SkGxk{background:linear-gradient(180deg,var(--pl-cmd-1) 0,var(--pl-cmd-1-deep) 100%)}.gamepopup_hatInfo__uML4H{background:linear-gradient(180deg,var(--pl-brand) 0,var(--pl-brand-deep) 100%)}.gamepopup_title__Aw_05{font-family:var(--f-display);font-weight:700;font-size:var(--t-h3);line-height:var(--lh-display);margin:var(--sp-3) 0 0;color:var(--pl-ink)}.gamepopup_body__KRCI8{display:grid;grid-gap:var(--sp-3);gap:var(--sp-3);justify-items:center;width:100%;font-size:var(--t-body-lg);line-height:var(--lh-body);color:var(--pl-ink);animation:gamepopup_riseIn__3X4_L var(--dur-slow) var(--ease-standard) .15s both}.gamepopup_body__KRCI8 p{margin:0;max-width:var(--w-read)}.gamepopup_actions__3OeYH{display:flex;flex-wrap:wrap;gap:var(--sp-3);justify-content:center;width:100%;animation:gamepopup_riseIn__3X4_L var(--dur-slow) var(--ease-standard) .15s both}.gamepopup_btn___XMnG{font-family:var(--f-display);font-weight:700;font-size:var(--t-body-lg);min-height:calc(var(--tap-min) + 4px);padding:var(--sp-3) var(--sp-8);border:1px solid transparent;border-radius:9999px;cursor:pointer;transition:background-color var(--dur-base) var(--ease-in-out),border-color var(--dur-base) var(--ease-in-out),transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-base) var(--ease-in-out)}.gamepopup_btnGo__YH6kh{background:linear-gradient(180deg,var(--pl-brand) 0,var(--pl-brand-deep) 100%);color:var(--pl-on-brand);box-shadow:var(--pl-elev-2)}.gamepopup_btnGo__YH6kh:hover{background:linear-gradient(180deg,var(--pl-brand-deep) 0,var(--pl-brand-deep) 100%)}.gamepopup_btnQuiet__7giep{background:var(--pl-card);color:var(--pl-ink);border-color:var(--pl-line);box-shadow:var(--pl-elev-1)}.gamepopup_btnQuiet__7giep:hover{background:var(--pl-brand-soft)}.gamepopup_btn___XMnG:active{transform:translateY(2px);box-shadow:none}.gamepopup_btn___XMnG:disabled{opacity:.72;cursor:not-allowed}.gamepopup_dots__mlNJT{display:flex;gap:var(--sp-2);justify-content:center}.gamepopup_dot__qRNl4{width:10px;height:10px;border-radius:9999px;background:var(--pl-track);transition:background-color var(--dur-base) var(--ease-in-out)}.gamepopup_dotOn__CkiAZ{background:var(--pl-brand)}.gamepopup_close__TPhHR{position:absolute;top:var(--sp-2);right:var(--sp-2);display:grid;place-items:center;min-width:var(--tap-min);min-height:var(--tap-min);border:1px solid var(--pl-line);background:var(--pl-card);color:var(--pl-ink-muted);font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);cursor:pointer;border-radius:9999px;transition:background-color var(--dur-base) var(--ease-in-out),color var(--dur-base) var(--ease-in-out)}.gamepopup_close__TPhHR:hover{background:var(--pl-brand-soft);color:var(--pl-ink)}.gamepopup_badge__NT3ir{display:grid;justify-items:center;grid-gap:var(--sp-2);gap:var(--sp-2);animation:gamepopup_pop__6vIFK var(--dur-slower) var(--ease-standard) .15s both}.gamepopup_srOnly__eWP8Y{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}@keyframes gamepopup_fadeIn___6_9j{0%{opacity:0}to{opacity:1}}@keyframes gamepopup_popIn__Pv1_3{0%{opacity:0;transform:scale(.72) translateY(24px)}62%{opacity:1;transform:scale(1.04) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes gamepopup_riseIn__3X4_L{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes gamepopup_pop__6vIFK{0%{opacity:0;transform:scale(.4) rotate(-8deg)}70%{opacity:1;transform:scale(1.12) rotate(2deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.viewport_viewport__0vp28{position:relative;width:100%;height:100%;overflow:hidden;background:var(--pl-3d-sky-bottom);cursor:-webkit-grab;cursor:grab;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}.viewport_viewport__0vp28:active{cursor:-webkit-grabbing;cursor:grabbing}.viewport_viewport__0vp28 canvas{display:block;width:100%;height:100%}.viewport_viewport__0vp28:focus-visible{outline:2px solid var(--st-ink);outline-offset:-2px}.viewport_unavailable__1l9Fx{position:absolute;inset:50% var(--sp-4) auto var(--sp-4);transform:translateY(-50%);background:var(--st-panel);border:1px solid var(--st-line);border-radius:var(--st-r-lg);padding:var(--sp-4);text-align:center;color:var(--st-ink)}.viewport_unavailable__1l9Fx b{display:block;margin-bottom:var(--sp-2)}.viewport_unavailable__1l9Fx p{margin:0;color:var(--st-ink-muted);font-size:var(--st-fs)}.gridworld_wrap__fVBmK{display:grid;grid-column-gap:var(--sp-5);column-gap:var(--sp-5);grid-row-gap:var(--sp-4);row-gap:var(--sp-4);grid-template-columns:minmax(0,1fr) clamp(340px,30vw,560px);align-items:stretch;flex:1 1 auto;min-height:0;color:var(--pl-ink)}.gridworld_col__A7QKp{display:flex;flex-direction:column;gap:var(--sp-4);min-height:0;min-width:0}.gridworld_colStage__337uu>.gridworld_boardCard__iSLIY,.gridworld_colStage__337uu>.gridworld_stageCard__8Iixk{flex:1 1}.gridworld_colRail__tselr{overflow:hidden}.gridworld_colRail__tselr>*{min-height:0}.gridworld_colRail__tselr>:only-child{flex:1 1 auto}.gridworld_stageCard__8Iixk{position:relative;display:flex;flex-direction:column;min-height:0;border-radius:var(--r-lg);background:var(--pl-card);border:1px solid var(--pl-line);box-shadow:var(--pl-elev-1);overflow:hidden}.gridworld_stageOverlay__lH888{position:absolute;inset:var(--sp-3);z-index:var(--z-raised);display:grid;grid-template-rows:minmax(0,1fr) auto;grid-gap:var(--sp-3);gap:var(--sp-3);pointer-events:none}.gridworld_overlayTop__Srbwa{display:flex;align-items:stretch;justify-content:space-between;gap:var(--sp-3);min-height:0}.gridworld_overlayFoot__kqkuk{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.gridworld_footLeft__sTs1O{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.gridworld_stageOverlay__lH888>*>*{pointer-events:auto}.gridworld_overlayRight__gVJlP{display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-3);margin-left:auto;min-height:0;max-height:100%}.gridworld_codeFloat__JTP3e{display:flex;flex:1 1 auto;min-height:0;width:clamp(240px,26vw,380px);max-width:100%}.gridworld_codeFloat__JTP3e>*{flex:1 1 auto;min-width:0}.gridworld_codeFloatFit__Pc_iK{flex:none;height:auto;max-height:100%}.gridworld_stageTag__I_WdB{align-self:flex-start;margin:0;padding:var(--sp-2) var(--sp-4);border-radius:9999px;background:linear-gradient(180deg,var(--pl-brand) 0,var(--pl-brand-deep) 100%);color:var(--pl-on-brand);font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);box-shadow:var(--pl-elev-1)}.gridworld_stageTools__e8dBe{flex:none;display:flex;gap:var(--sp-2)}.gridworld_roundBtn__ZM2_I{display:grid;place-items:center;min-width:var(--tap-min);min-height:var(--tap-min);border:1px solid var(--pl-line);border-radius:9999px;background:var(--pl-card);color:var(--pl-brand);cursor:pointer;box-shadow:var(--pl-elev-1);transition:background-color var(--dur-base) var(--ease-in-out),color var(--dur-base) var(--ease-in-out)}.gridworld_roundBtn__ZM2_I:hover{background:var(--pl-brand-soft)}.gridworld_roundBtn__ZM2_I:disabled{opacity:.72;cursor:not-allowed}.gridworld_stageStats__k6Mda{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-2) var(--sp-4);border-radius:9999px;background:color-mix(in srgb,var(--pl-card) 88%,transparent);border:1px solid var(--pl-line);box-shadow:var(--pl-elev-1);font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);color:var(--pl-ink)}.gridworld_statLabel__Zj_UH{color:var(--pl-ink-muted);font-weight:500}.gridworld_board__0UMkU{position:relative;display:grid;margin:auto;max-width:100%;max-height:100%;background:var(--pl-panel);touch-action:manipulation}.gridworld_cell__kUo0B{min-width:0;min-height:0;background:var(--pl-3d-tile);border:1px solid color-mix(in srgb,var(--pl-ink) 8%,transparent);display:grid;place-items:center;font-size:calc(var(--icon-size) * 1.1);line-height:1}.gridworld_wall__EsNrO{background:var(--pl-3d-wall);border-color:var(--pl-3d-wall)}.gridworld_goalCell__lMHn1{background:color-mix(in srgb,var(--pl-3d-goal) 22%,var(--pl-3d-tile))}.gridworld_actor__tCBtF{position:absolute;top:0;left:0;display:grid;place-items:center;font-size:calc(var(--icon-size) * 1.4);transition:transform var(--dur-slower) var(--ease-standard);pointer-events:none}.gridworld_actorInner__h_H47{transition:transform var(--dur-slow) var(--ease-standard)}.gridworld_actions__hmsQF{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:center}.gridworld_sceneBox__HyPTR{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.gridworld_sceneRun__0M7jS{bottom:var(--sp-3)}.gridworld_sceneReset__egzPr,.gridworld_sceneRun__0M7jS{position:absolute;right:var(--sp-3);z-index:var(--z-raised)}.gridworld_sceneReset__egzPr{top:var(--sp-3)}.gridworld_sceneFootRow__AE4DI{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;font-size:var(--t-caption);color:var(--pl-ink-muted)}.gridworld_sceneFootRow__AE4DI .gridworld_ghostBtn__tDkI2{min-height:var(--tap-min);padding:var(--sp-2) var(--sp-4);font-size:var(--t-caption)}.gridworld_runBtn__567oS{display:inline-flex;align-items:center;gap:var(--sp-2);font-family:var(--f-display);font-weight:700;font-size:var(--t-body-lg);min-height:calc(var(--tap-min) + 8px);padding:var(--sp-3) var(--sp-8);border:none;border-radius:9999px;background:linear-gradient(180deg,var(--pl-brand) 0,var(--pl-brand-deep) 100%);color:var(--pl-on-brand);box-shadow:var(--pl-elev-2);cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-base) var(--ease-in-out),opacity var(--dur-base) var(--ease-in-out)}.gridworld_runBtn__567oS:active{transform:translateY(2px);box-shadow:none}.gridworld_runBtn__567oS:disabled{opacity:.6;cursor:not-allowed;transform:none}.gridworld_ghostBtn__tDkI2{display:inline-flex;align-items:center;gap:var(--sp-2);font-family:var(--f-display);font-weight:700;font-size:var(--t-body);min-height:calc(var(--tap-min) + 8px);padding:var(--sp-3) var(--sp-6);border:1px solid var(--pl-line);border-radius:9999px;background:var(--pl-card);color:var(--pl-ink);box-shadow:var(--pl-elev-1);cursor:pointer;transition:background-color var(--dur-base) var(--ease-in-out),border-color var(--dur-base) var(--ease-in-out),box-shadow var(--dur-base) var(--ease-in-out)}.gridworld_ghostBtn__tDkI2:hover{background:var(--pl-brand-soft);border-color:var(--pl-brand)}.gridworld_overlayFoot__kqkuk .gridworld_ghostBtn__tDkI2{min-height:var(--tap-min);padding:var(--sp-2) var(--sp-4);font-size:var(--t-caption)}.gridworld_overlayFoot__kqkuk .gridworld_stageStats__k6Mda{min-height:var(--tap-min)}.gridworld_ghostBtn__tDkI2:disabled{opacity:.6;cursor:not-allowed}.gridworld_linkBtn__GKwvT{min-height:var(--tap-min);padding:0 var(--sp-3);border:none;background:none;color:var(--pl-brand);font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);text-decoration:underline;text-underline-offset:3px;cursor:pointer;border-radius:9999px;transition:background-color var(--dur-base) var(--ease-in-out),color var(--dur-base) var(--ease-in-out)}.gridworld_linkBtn__GKwvT:hover{background:var(--pl-brand-soft)}.gridworld_linkBtn__GKwvT[aria-pressed=true]{border:2px solid var(--pl-brand);background:var(--pl-brand-soft);text-decoration:none}.gridworld_hintBtn__ySPbn{color:var(--pl-accent-deep);border-color:var(--pl-accent)}.gridworld_hintBtn__ySPbn:hover{background:var(--pl-accent-soft);border-color:var(--pl-accent-deep)}.gridworld_notice__WSksb{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--pl-accent-soft);border:1px solid color-mix(in srgb,var(--pl-accent) 40%,var(--pl-line));color:var(--pl-ink);font-size:var(--t-body)}.gridworld_panelTitle__mEQt3{font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);color:var(--pl-ink-muted);margin:0}.gridworld_codeCard__HQw7z{display:grid;grid-gap:var(--sp-3);gap:var(--sp-3);align-content:start;padding:var(--sp-5);border-radius:var(--r-lg);background:var(--pl-card);border:1px solid var(--pl-line);box-shadow:var(--pl-elev-1);overflow:auto}.gridworld_srOnly__cQ3MH{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.gridworld_boardCard__iSLIY,.gridworld_panel__yQcfY{position:relative;background:var(--pl-card);border:1px solid var(--pl-line);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--pl-elev-1);display:flex;flex-direction:column;gap:var(--sp-3);min-height:0;min-width:0;color:var(--pl-ink)}.gridworld_panel__yQcfY{overflow:hidden}.gridworld_toolbox__tCj8v{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.gridworld_toolBtn__jKDyH{font-family:var(--f-display);font-weight:700;font-size:var(--t-body);min-height:var(--tap-min);padding:var(--sp-2) var(--sp-5);border:1px solid var(--pl-line);border-radius:9999px;background:var(--pl-card);color:var(--pl-ink);cursor:pointer;box-shadow:var(--pl-elev-1);transition:background-color var(--dur-base) var(--ease-in-out),border-color var(--dur-base) var(--ease-in-out)}.gridworld_toolBtn__jKDyH:hover{background:var(--pl-brand-soft);border-color:var(--pl-brand)}.gridworld_toolBtn__jKDyH:disabled{opacity:.6;cursor:not-allowed}.gridworld_program__gVdxL{display:flex;flex-wrap:wrap;gap:var(--sp-2);min-height:var(--tap-min);padding:var(--sp-3);border:2px dashed var(--pl-line);border-radius:var(--r-lg);background:var(--pl-card)}.gridworld_blockChip__9PW97{display:inline-flex;align-items:center;gap:var(--sp-1);font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);padding:var(--sp-2) var(--sp-3);border:1px solid var(--pl-line);border-radius:var(--r-md);background:var(--pl-brand-soft);color:var(--pl-ink)}.gridworld_blockActive__4SeRG{border-color:var(--pl-brand);background:var(--pl-brand-soft)}.gridworld_blockRunning__mUzt3{border-color:var(--pl-brand);background:linear-gradient(180deg,var(--pl-brand) 0,var(--pl-brand-deep) 100%);color:var(--pl-on-brand)}.gridworld_repeatChip__9kzkj{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:1px solid color-mix(in srgb,var(--pl-cmd-4) 40%,var(--pl-line));border-radius:var(--r-md);background:color-mix(in srgb,var(--pl-cmd-4) 10%,var(--pl-card));cursor:pointer}.gridworld_chipBtn__ydSE7{border:none;background:none;color:var(--pl-ink-muted);cursor:pointer;font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);padding:0 var(--sp-2);min-width:var(--tap-min);min-height:var(--tap-min);border-radius:9999px;transition:color var(--dur-base) var(--ease-in-out),background-color var(--dur-base) var(--ease-in-out)}.gridworld_chipBtn__ydSE7:hover{color:var(--pl-ink);background:var(--pl-brand-soft)}.gridworld_countBtn__X9t3z{font-family:var(--f-display);font-weight:700;font-size:var(--t-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border:1px solid var(--pl-line);border-radius:9999px;background:var(--pl-card);color:var(--pl-ink);cursor:pointer;padding:0 var(--sp-4);min-height:var(--tap-min);transition:background-color var(--dur-base) var(--ease-in-out),border-color var(--dur-base) var(--ease-in-out)}.gridworld_countBtn__X9t3z:hover{background:var(--pl-brand-soft);border-color:var(--pl-brand)}.gridworld_criteria__rMHnu{display:grid;grid-gap:var(--sp-1);gap:var(--sp-1);font-size:var(--t-caption);color:var(--pl-ink-muted)}.gridworld_criteriaRow__B9cE_{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}@media (max-height:640px),(max-width:1024px){.gridworld_wrap__fVBmK{grid-template-columns:1fr}.gridworld_col__A7QKp{min-height:auto}.gridworld_colStage__337uu>.gridworld_stageCard__8Iixk{flex:none}.gridworld_codeCard__HQw7z,.gridworld_colRail__tselr,.gridworld_panel__yQcfY{overflow:visible}}.codeview_panel__jvPSY{display:flex;flex-direction:column;min-height:0;border-radius:var(--r-lg);border:1px solid var(--pl-ide-line);background:var(--pl-ide-bg);box-shadow:var(--pl-elev-2);overflow:hidden;scrollbar-color:var(--pl-ide-dim) var(--pl-ide-line)}.codeview_tabBar__U58JS{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--pl-ide-bg-2);border-bottom:1px solid var(--pl-ide-line);flex:none}.codeview_tab__tTelI{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-md) var(--r-md) 0 0;border-bottom:3px solid var(--pl-ide-fn);background:var(--pl-ide-bg);color:var(--pl-ide-ink);font-family:var(--f-mono);font-size:var(--t-caption)}.codeview_tabDot__GnRD1{width:10px;height:10px;border-radius:9999px;background:var(--pl-ide-fn)}.codeview_closeBtn__igdc5{display:grid;place-items:center;margin-left:auto;min-width:var(--tap-min);min-height:var(--tap-min);border:1px solid var(--pl-ide-line);border-radius:var(--r-md);background:transparent;color:var(--pl-ide-dim);cursor:pointer;transition:background-color var(--dur-base) var(--ease-in-out),color var(--dur-base) var(--ease-in-out)}.codeview_closeBtn__igdc5:hover{background:var(--pl-ide-line);color:var(--pl-ide-ink)}.codeview_body__fBUmf{display:grid;grid-template-columns:auto minmax(0,1fr);flex:1 1 auto;min-height:0;overflow:auto;font-family:var(--f-mono);font-size:var(--t-caption);line-height:1.7}.codeview_gutter__byI2D{display:grid;align-content:start;padding:var(--sp-3) var(--sp-2) var(--sp-3) var(--sp-4);border-right:1px solid var(--pl-ide-line);color:var(--pl-ide-dim);text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.codeview_code__H82xn{margin:0;padding:var(--sp-3) var(--sp-4);color:var(--pl-ide-ink);white-space:pre}.codeview_line__fHP0d{display:block;border-radius:var(--r-xs);margin-inline:calc(var(--sp-2) * -1);padding-inline:var(--sp-2)}.codeview_lineActive__yENJ9{background:var(--pl-ide-line)}.codeview_empty___vUCn{margin:0;flex:1 1 auto;padding:var(--sp-4);color:var(--pl-ide-dim);font-size:var(--t-caption)}.codeview_panel__jvPSY :focus-visible{outline-color:var(--pl-ide-ink)}.codeview_foot__ZNIv7{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);flex:none;margin-top:auto;padding:0 var(--sp-3);border-top:1px solid var(--pl-ide-line);background:var(--pl-ide-bg-2);color:var(--pl-ide-dim)}.codeview_footIcon__jHCbF{display:grid;place-items:center}.codeview_slider__zR3ic{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:64px;height:28px;background:transparent;cursor:pointer}.codeview_slider__zR3ic::-webkit-slider-runnable-track{height:4px;border-radius:9999px;background:linear-gradient(to right,var(--pl-ide-fn) var(--fill),var(--pl-ide-line) var(--fill))}.codeview_slider__zR3ic::-moz-range-track{height:4px;border-radius:9999px;background:linear-gradient(to right,var(--pl-ide-fn) var(--fill),var(--pl-ide-line) var(--fill))}.codeview_slider__zR3ic::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;margin-top:-4px;border-radius:9999px;background:var(--pl-ide-fn)}.codeview_slider__zR3ic::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:9999px;background:var(--pl-ide-fn)}.codeview_key__LQams{color:var(--pl-ide-key);font-weight:700}.codeview_str__d_DZN{color:var(--pl-ide-str)}.codeview_num__NX0i1{color:var(--pl-ide-num)}.codeview_com__CFrUS{color:var(--pl-ide-com);font-style:italic}.codeview_fn__l27HH{color:var(--pl-ide-fn)}.codeworkspace_ws__RorbJ{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr) clamp(300px,24vw,420px);grid-gap:var(--sp-4);gap:var(--sp-4);align-items:stretch;flex:1 1 auto;min-height:0;color:var(--pl-ink)}@media (max-width:1180px){.codeworkspace_ws__RorbJ{grid-template-columns:minmax(0,1fr) minmax(280px,340px)}.codeworkspace_side__iSio9{grid-column:1/-1}}@media (max-width:820px){.codeworkspace_ws__RorbJ{grid-template-columns:1fr}}@media (max-height:640px),(max-width:1024px){.codeworkspace_ws__RorbJ{align-items:start}.codeworkspace_col__jhR5h:last-child,.codeworkspace_side__iSio9{overflow-y:visible}.codeworkspace_col__jhR5h:nth-child(2)>.codeworkspace_editorCard__mJwGo{flex:none;display:block}.codeworkspace_col__jhR5h:nth-child(2)>.codeworkspace_editorCard__mJwGo>.codeworkspace_editorBody___bLYH{flex:none}}.codeworkspace_col__jhR5h{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0;min-height:0}.codeworkspace_col__jhR5h:last-child,.codeworkspace_side__iSio9{overflow-y:auto}.codeworkspace_col__jhR5h:last-child>.codeworkspace_card__bwIZ2,.codeworkspace_side__iSio9>.codeworkspace_card__bwIZ2{flex:none}.codeworkspace_col__jhR5h:nth-child(2)>.codeworkspace_editorCard__mJwGo{flex:1 1;display:flex;flex-direction:column;min-height:0}.codeworkspace_col__jhR5h:nth-child(2)>.codeworkspace_editorCard__mJwGo>.codeworkspace_editorBody___bLYH{flex:1 1 auto;min-height:0}.codeworkspace_card__bwIZ2{background:var(--pl-card);border:1px solid var(--pl-line);border-radius:var(--r-lg);box-shadow:var(--pl-elev-1);overflow:hidden}.codeworkspace_cardHead__CnZwn{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--pl-line);font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);color:var(--pl-ink)}.codeworkspace_cardBody__M7ML0{padding:var(--sp-4);display:grid;grid-gap:var(--sp-3);gap:var(--sp-3)}.codeworkspace_muted__k5EGE{color:var(--pl-ink-muted);font-size:var(--t-caption);margin:0}.codeworkspace_fileRow__r2dC8{border:none;border-radius:var(--r-md);background:var(--pl-brand);color:var(--pl-on-brand);font-family:var(--f-mono)}.codeworkspace_exampleBtn__nZLbg,.codeworkspace_fileRow__r2dC8{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);font-size:var(--t-caption);text-align:left}.codeworkspace_exampleBtn__nZLbg{min-height:var(--tap-min);border:1px solid var(--pl-line);border-radius:var(--r-md);background:var(--pl-card);color:var(--pl-ink);font-family:var(--f-body);cursor:pointer;transition:background-color var(--dur-base) var(--ease-in-out),border-color var(--dur-base) var(--ease-in-out)}.codeworkspace_exampleActive__Zg_6C,.codeworkspace_exampleBtn__nZLbg:hover{background:var(--pl-brand-soft);border-color:var(--pl-brand)}.codeworkspace_exampleNum__dlZN2{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:9999px;background:var(--pl-brand);color:var(--pl-on-brand);font-family:var(--f-display);font-weight:700;font-size:var(--t-micro)}.codeworkspace_noteArea__Bp0ch{width:100%;min-height:96px;padding:var(--sp-3);border:1px solid var(--pl-line);border-radius:var(--r-md);background:var(--pl-card);color:var(--pl-ink);font-family:var(--f-body);font-size:var(--t-caption);line-height:var(--lh-body);resize:vertical;box-sizing:border-box}.codeworkspace_editorCard__mJwGo{background:var(--pl-card);border:1px solid var(--pl-line);border-radius:var(--r-lg);box-shadow:var(--pl-elev-1);overflow:hidden}.codeworkspace_tabBar__ol4o8{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--pl-line);background:var(--pl-card)}.codeworkspace_tab__t8xTp{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-md) var(--r-md) 0 0;border-bottom:3px solid var(--pl-brand);font-family:var(--f-mono);font-size:var(--t-caption);color:var(--pl-ink)}.codeworkspace_tabDot__X4fQr{width:10px;height:10px;border-radius:9999px;background:var(--pl-brand)}.codeworkspace_tabSpacer__q2lia{flex:1 1}.codeworkspace_toolBtn__Tmyvm{display:grid;place-items:center;min-width:var(--tap-min);min-height:var(--tap-min);border:1px solid var(--pl-line);border-radius:var(--r-md);background:var(--pl-card);color:var(--pl-ink-muted);cursor:pointer;transition:background-color var(--dur-base) var(--ease-in-out),color var(--dur-base) var(--ease-in-out)}.codeworkspace_toolBtn__Tmyvm:hover{background:var(--pl-brand-soft);color:var(--pl-ink)}.codeworkspace_toolBtn__Tmyvm:disabled{opacity:.6;cursor:not-allowed}.codeworkspace_editorCard__mJwGo:-webkit-full-screen{background:var(--pl-card);display:flex;flex-direction:column}.codeworkspace_editorCard__mJwGo:fullscreen{background:var(--pl-card);display:flex;flex-direction:column}.codeworkspace_editorCard__mJwGo:-webkit-full-screen .codeworkspace_editorBody___bLYH{flex:1 1;height:auto!important}.codeworkspace_editorCard__mJwGo:fullscreen .codeworkspace_editorBody___bLYH{flex:1 1;height:auto!important}.codeworkspace_editorBody___bLYH{display:grid;grid-template-columns:auto minmax(0,1fr);background:var(--pl-code-bg);font-family:var(--f-mono);font-size:var(--t-caption);line-height:1.6}.codeworkspace_gutter___9fuc{display:grid;align-content:start;padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);color:var(--pl-code-gutter);text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.codeworkspace_codeArea__bMPv2{position:relative;min-width:0}.codeworkspace_codeInput__wCAH_,.codeworkspace_codePre__ASzTm{margin:0;padding:var(--sp-2) var(--sp-4);font-family:var(--f-mono);font-size:var(--t-caption);line-height:1.6;white-space:pre;overflow:auto;-moz-tab-size:4;tab-size:4;border:none}.codeworkspace_codePre__ASzTm{position:absolute;inset:0;color:var(--pl-code-ink);pointer-events:none}.codeworkspace_codeInput__wCAH_{position:relative;width:100%;height:100%;background:transparent;color:transparent;caret-color:var(--pl-ink);resize:none;display:block;box-sizing:border-box}.codeworkspace_codeInput__wCAH_::selection{background:var(--pl-brand-soft);color:transparent}.codeworkspace_codeInput__wCAH_:disabled{cursor:not-allowed}.codeworkspace_codeLine__OQK_O{display:block}.codeworkspace_key__U8fNJ{color:var(--pl-code-key);font-weight:700}.codeworkspace_str__uGE55{color:var(--pl-code-str)}.codeworkspace_num__BJvai{color:var(--pl-code-num)}.codeworkspace_com__62c_H{color:var(--pl-code-com);font-style:italic}.codeworkspace_fn__R9cB_{color:var(--pl-code-fn)}.codeworkspace_tabs__bu1GS{display:flex;gap:var(--sp-1);padding:0 var(--sp-3);border-bottom:1px solid var(--pl-line)}.codeworkspace_tabBtn__5yz1c{min-height:var(--tap-min);padding:0 var(--sp-4);border:none;border-bottom:3px solid transparent;background:none;color:var(--pl-ink-muted);font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);cursor:pointer;transition:color var(--dur-base) var(--ease-in-out),border-color var(--dur-base) var(--ease-in-out)}.codeworkspace_tabBtn__5yz1c:hover{color:var(--pl-ink)}.codeworkspace_tabOn__N9xpY{color:var(--pl-ink);border-bottom-color:var(--pl-brand)}.codeworkspace_tabCount__HQbJq{margin-left:var(--sp-2);padding:0 var(--sp-2);border-radius:9999px;background:var(--pl-brand-soft);color:var(--pl-ink);font-size:var(--t-micro)}.codeworkspace_console__teCY7{min-height:92px;color:var(--pl-ink)}.codeworkspace_console__teCY7,.codeworkspace_output__qGpH3{padding:var(--sp-4);font-family:var(--f-mono);font-size:var(--t-caption);line-height:var(--lh-body);white-space:pre-wrap;word-break:break-word}.codeworkspace_output__qGpH3{position:relative;border-radius:var(--r-md);background:var(--pl-deep);color:var(--pl-deep-ink);min-height:76px}.codeworkspace_copyBtn__HCn7T{position:absolute;top:var(--sp-2);right:var(--sp-2);min-height:32px;padding:0 var(--sp-3);border:1px solid color-mix(in srgb,var(--pl-deep-ink) 40%,transparent);border-radius:9999px;background:transparent;color:var(--pl-deep-ink);font-family:var(--f-display);font-weight:700;font-size:var(--t-micro);cursor:pointer;transition:background-color var(--dur-base) var(--ease-in-out)}.codeworkspace_copyBtn__HCn7T:hover{background:color-mix(in srgb,var(--pl-deep-ink) 18%,transparent)}.codeworkspace_inputArea__7Z_Fe{width:100%;min-height:104px;padding:var(--sp-3);border:1px solid var(--pl-line);border-radius:var(--r-md);background:var(--pl-card);color:var(--pl-ink);font-family:var(--f-mono);font-size:var(--t-caption);line-height:1.7;resize:vertical;box-sizing:border-box}.codeworkspace_fieldLabel__Mhsly{font-family:var(--f-display);font-weight:700;font-size:var(--t-caption);color:var(--pl-ink-muted)}.codeworkspace_runBtn__dJ_T_{display:inline-flex;align-items:center;gap:var(--sp-2);font-family:var(--f-display);font-weight:700;font-size:var(--t-body);min-height:calc(var(--tap-min) + 4px);padding:var(--sp-2) var(--sp-6);border:none;border-radius:9999px;background:linear-gradient(180deg,var(--pl-brand) 0,var(--pl-brand-deep) 100%);color:var(--pl-on-brand);box-shadow:var(--pl-elev-2);cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-base) var(--ease-in-out),opacity var(--dur-base) var(--ease-in-out)}.codeworkspace_runBtn__dJ_T_:active{transform:translateY(2px);box-shadow:none}.codeworkspace_runBtn__dJ_T_:disabled{opacity:.6;cursor:not-allowed;transform:none}.codeworkspace_caseList__FzxKi{display:grid;grid-gap:var(--sp-2);gap:var(--sp-2)}.codeworkspace_case__pVFi2{display:grid;grid-gap:var(--sp-1);gap:var(--sp-1);padding:var(--sp-3);border:1px solid var(--pl-line);border-left-width:6px;border-radius:var(--r-md);font-size:var(--t-caption)}.codeworkspace_casePass__CRpKl{border-left-color:var(--pl-cmd-4);background:color-mix(in srgb,var(--pl-cmd-4) 8%,var(--pl-card))}.codeworkspace_caseFail__zfrdt{border-left-color:var(--pl-accent);background:var(--pl-accent-soft)}.codeworkspace_caseDiff__XcgQn{font-family:var(--f-mono);color:var(--pl-ink-muted)}.codeworkspace_srOnly__5GXPA{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.codeworkspace_editorCard__mJwGo{background:var(--pl-ide-bg);border-color:var(--pl-ide-line)}.codeworkspace_consoleCard__Y9Fts,.codeworkspace_editorCard__mJwGo{scrollbar-color:var(--pl-ide-dim) var(--pl-ide-line)}.codeworkspace_tabBar__ol4o8{background:var(--pl-ide-bg-2);border-bottom-color:var(--pl-ide-line)}.codeworkspace_tab__t8xTp{background:var(--pl-ide-bg);color:var(--pl-ide-ink);border-bottom-color:var(--pl-ide-fn)}.codeworkspace_tabDot__X4fQr{background:var(--pl-ide-fn)}.codeworkspace_toolBtn__Tmyvm{background:transparent;border-color:var(--pl-ide-line);color:var(--pl-ide-dim)}.codeworkspace_toolBtn__Tmyvm:hover{background:var(--pl-ide-line);color:var(--pl-ide-ink)}.codeworkspace_consoleCard__Y9Fts :focus-visible,.codeworkspace_editorCard__mJwGo :focus-visible{outline-color:var(--pl-ide-ink)}.codeworkspace_editorCard__mJwGo:-webkit-full-screen{background:var(--pl-ide-bg)}.codeworkspace_editorCard__mJwGo:fullscreen{background:var(--pl-ide-bg)}.codeworkspace_editorBody___bLYH{background:var(--pl-ide-bg)}.codeworkspace_gutter___9fuc{color:var(--pl-ide-dim);border-right:1px solid var(--pl-ide-line)}.codeworkspace_codePre__ASzTm{color:var(--pl-ide-ink)}.codeworkspace_codeInput__wCAH_{caret-color:var(--pl-ide-ink)}.codeworkspace_codeInput__wCAH_::selection{background:color-mix(in srgb,var(--pl-ide-fn) 35%,transparent)}.codeworkspace_editorBody___bLYH .codeworkspace_key__U8fNJ{color:var(--pl-ide-key)}.codeworkspace_editorBody___bLYH .codeworkspace_str__uGE55{color:var(--pl-ide-str)}.codeworkspace_editorBody___bLYH .codeworkspace_num__BJvai{color:var(--pl-ide-num)}.codeworkspace_editorBody___bLYH .codeworkspace_com__62c_H{color:var(--pl-ide-com)}.codeworkspace_editorBody___bLYH .codeworkspace_fn__R9cB_{color:var(--pl-ide-fn)}.codeworkspace_consoleCard__Y9Fts{background:var(--pl-ide-bg-2);border-color:var(--pl-ide-line)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_tabs__bu1GS{border-bottom-color:var(--pl-ide-line)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_tabBtn__5yz1c{color:var(--pl-ide-dim)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_tabBtn__5yz1c:hover{color:var(--pl-ide-ink)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_tabOn__N9xpY{color:var(--pl-ide-ink);border-bottom-color:var(--pl-ide-fn)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_tabCount__HQbJq{background:var(--pl-ide-line);color:var(--pl-ide-ink)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_console__teCY7{background:var(--pl-ide-bg-2);color:var(--pl-ide-ink);max-height:220px;overflow:auto}.codeworkspace_consoleTools__p6b1V{display:flex;align-items:center;gap:var(--sp-1);margin-left:auto;padding-right:var(--sp-2)}.codeworkspace_consoleBtn__Ypu3Y{display:grid;place-items:center;min-width:32px;min-height:32px;border:none;border-radius:var(--r-sm);background:transparent;color:var(--pl-ide-dim);cursor:pointer;transition:color var(--dur-base) var(--ease-in-out),background-color var(--dur-base) var(--ease-in-out)}.codeworkspace_consoleBtn__Ypu3Y:hover{color:var(--pl-ide-ink);background:var(--pl-ide-line)}.codeworkspace_consoleBtn__Ypu3Y:disabled{opacity:.5;cursor:not-allowed}.codeworkspace_logLine__NSW3Q{display:grid;grid-template-columns:1.4em minmax(0,1fr);grid-gap:var(--sp-2);gap:var(--sp-2);align-items:baseline}.codeworkspace_logMark__QTzVL{color:var(--pl-ide-dim);-webkit-user-select:none;-moz-user-select:none;user-select:none}.codeworkspace_logCmd__YmdQ7{color:var(--pl-ide-fn)}.codeworkspace_logOut__f_p0H{color:var(--pl-ide-ink)}.codeworkspace_logOk__BhYKx{color:var(--pl-ide-ok)}.codeworkspace_logErr__Ov1EZ{color:var(--pl-ide-err);white-space:pre-wrap}.codeworkspace_logMuted__YRlOf{color:var(--pl-ide-dim)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_case__pVFi2{border-color:var(--pl-ide-line);color:var(--pl-ide-ink)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_casePass__CRpKl{border-left-color:var(--pl-ide-ok);background:color-mix(in srgb,var(--pl-ide-ok) 14%,transparent)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_caseFail__zfrdt{border-left-color:var(--pl-ide-err);background:color-mix(in srgb,var(--pl-ide-err) 14%,transparent)}.codeworkspace_consoleCard__Y9Fts .codeworkspace_caseDiff__XcgQn{color:var(--pl-ide-dim)}.codeworkspace_output__qGpH3{background:var(--pl-ide-bg-2);color:var(--pl-ide-ink)}.codeworkspace_copyBtn__HCn7T{border-color:var(--pl-ide-line);color:var(--pl-ide-dim)}.codeworkspace_copyBtn__HCn7T:hover{background:var(--pl-ide-line);color:var(--pl-ide-ink)}.codeworkspace_taskText__zb7Mv{margin:0;white-space:pre-wrap;line-height:var(--lh-body)}.codeworkspace_proseLine__1fvJn{display:block}.codeworkspace_proseNum__2j2Im{color:var(--pl-code-num);font-weight:700}.codeworkspace_inlineCode__tt5Li{display:inline;padding:1px var(--sp-1);border-radius:var(--r-sm);background:var(--pl-brand-soft);font-family:var(--f-mono);font-size:.94em;white-space:pre-wrap;word-break:break-word}.codeeditor_fillCode__RlDUu{font-family:var(--f-mono);font-size:var(--t-caption);line-height:1.7;background:var(--pl-panel);border:1px solid var(--pl-line);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);margin:0;overflow-x:auto;color:var(--pl-ink)}.codeeditor_fillLine__a3E_U{white-space:pre}.codeeditor_fillNo__3f8L1{display:inline-block;min-width:2ch;margin-right:var(--sp-3);color:var(--pl-ink-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.codeeditor_blank__Wngcq{font-family:var(--f-mono);font-size:var(--t-caption);width:3.5ch;text-align:center;border:1px solid var(--c-primary);border-radius:var(--r-xs);background:var(--c-surface);color:var(--c-ink);padding:0 var(--sp-1);margin:0 var(--sp-1)}.codeeditor_blank__Wngcq:disabled{opacity:.6}.codeeditor_editor__7JujF{font-family:var(--f-mono);font-size:14px;line-height:1.7;width:100%;box-sizing:border-box;background:var(--c-surface);color:var(--c-ink);border:1px solid var(--c-hairline);border-radius:var(--r-xs);padding:var(--sp-3);resize:vertical}.codeeditor_editor__7JujF:disabled{opacity:.6}.world3d_stage__mjDwR{width:100%;background:linear-gradient(180deg,var(--pl-3d-sky-top) 0,var(--pl-3d-sky-bottom) 100%);line-height:0}.world3d_stage__mjDwR canvas{display:block;width:100%;height:auto}.world3d_fill__VFDxi{position:relative;flex:1 1;height:100%;min-height:0}@media (max-height:640px),(max-width:1024px){.world3d_fill__VFDxi{flex:none;height:auto;aspect-ratio:3/2}}.world3d_fill__VFDxi canvas{position:absolute;inset:0;width:100%;height:100%}