.toasts{--toast-gap:.4rem;--toast-exit:.24s;top:var(--edge);left:var(--edge-l);z-index:4;right:var(--edge-r);pointer-events:none;flex-direction:column;align-items:center;display:flex;position:fixed}.toast{white-space:pre-line;text-align:start;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;align-items:center;gap:var(--space-1);max-width:100%;margin:0 0 var(--toast-gap);padding:var(--space-1) var(--space-2);border-radius:var(--space-2);corner-shape:squircle;color:var(--hi);overflow-wrap:anywhere;interpolate-size:allow-keywords;line-height:1.5;animation:.2s cubic-bezier(.32,.72,0,1) toast-in;display:flex;overflow:hidden}.toast:before{content:"";width:var(--space-1);height:var(--space-1);corner-shape:round;background:var(--lo);border-radius:50%;flex:none}.toast[data-tone=error]:before{background:var(--hi)}.toast[data-leaving=true]{animation:toast-out var(--toast-exit) cubic-bezier(.4, 0, 1, 1) both}@keyframes toast-in{0%{opacity:0;transform:translateY(calc(var(--space-1) * -1))}}@keyframes toast-out{to{opacity:0;transform:translateY(calc(var(--space-1) * -1));border-width:0;height:0;margin-bottom:0;padding-block:0}}@media (prefers-reduced-motion:reduce){.toast,.toast[data-leaving=true]{animation:none}}.blade{align-items:center;gap:var(--space-3);box-sizing:border-box;min-height:var(--blade-row);padding-inline:var(--space-2);display:flex}.blade[data-disabled=true]{opacity:.45;pointer-events:none}.blade-label{flex:0 0 min(var(--blade-label), 24%);width:min(var(--blade-label), 24%);min-width:0;max-width:min(var(--blade-label), 24%);box-sizing:border-box;color:var(--lo);overflow-wrap:anywhere;margin:0}.blade-value{align-items:center;gap:var(--space-3);flex:auto;min-width:0;display:flex}.blade-track{min-width:0;height:var(--blade-row);flex:auto;align-items:center;display:flex;position:relative}.blade-track input[type=range]{box-sizing:content-box;width:100%;height:.2rem;margin:0;margin-block:calc((.2rem - var(--blade-row)) / 2);padding-block:calc((var(--blade-row) - .2rem) / 2);appearance:none;cursor:pointer;touch-action:pan-y;background:0 0}.blade-ticks{height:.5rem;padding-inline:calc(var(--knob-thumb) / 2);pointer-events:none;justify-content:space-between;align-items:center;margin-top:-.25rem;display:flex;position:absolute;top:50%;left:0;right:0}.blade-ticks span{background:color-mix(in srgb, var(--hi) 42%, transparent);width:.1rem;height:.45rem}.blade-readout{flex:0 0 var(--blade-readout);width:var(--blade-readout);min-width:var(--blade-readout);max-width:var(--blade-readout);box-sizing:border-box;color:var(--hi);font:inherit;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;margin:0}input.blade-readout{box-sizing:border-box;width:var(--blade-readout);min-width:var(--blade-readout);max-width:var(--blade-readout);height:var(--blade-row);corner-shape:squircle;cursor:text;-webkit-user-select:text;user-select:text;background:0 0;border:.1rem solid #0000;border-radius:.3em;padding:.15em .35em}input.blade-readout:is(:hover,:focus){border-color:var(--line);background:var(--fill)}input.blade-readout[aria-invalid=true]{border-color:var(--bad)}.blade-track input[type=range]::-webkit-slider-runnable-track{corner-shape:round;background:linear-gradient(to right, var(--hi) var(--knob,0%), var(--line) var(--knob,0%));border:0;border-radius:.1rem;height:.2rem}.blade-track input[type=range]::-webkit-slider-thumb{appearance:none;width:var(--knob-thumb);height:var(--knob-thumb);margin-top:calc((.2rem - var(--knob-thumb)) / 2);corner-shape:round;background:var(--hi);border:0;border-radius:50%}.blade-track input[type=range]::-moz-range-track{corner-shape:round;background:var(--line);border:0;border-radius:.1rem;height:.2rem}.blade-track input[type=range]::-moz-range-progress{corner-shape:round;background:var(--hi);border:0;border-radius:.1rem;height:.2rem}.blade-track input[type=range]::-moz-range-thumb{width:var(--knob-thumb);height:var(--knob-thumb);corner-shape:round;background:var(--hi);border:0;border-radius:50%}.blade-switch,.blade-actions{margin-inline-start:auto}.blade-actions,.blade-axes,.dev .blade-body .dev-buttons{gap:var(--space-2);display:flex}.dev :is(.blade-actions button,.blade-body .dev-buttons button){height:var(--blade-row);background:var(--fill);text-align:center;white-space:nowrap;min-height:0;padding:0 .8em;line-height:1.1}.dev .blade-body .dev-buttons{padding-inline:var(--space-2)}.dev .blade-body .dev-buttons button{flex:1 1 0;min-width:0}.dev .blade-switch{width:auto;height:var(--blade-row);min-width:var(--blade-row);background:0 0;place-items:center;padding:0;display:grid}.dev .blade-actions button{width:auto;min-width:var(--blade-row);padding:0 .8em}.dev .blade-actions button[aria-pressed=true]{background:var(--press);color:var(--hi)}.blade-axes{flex:auto;min-width:0}.blade-axes label{align-items:center;gap:var(--space-1);flex:1 1 0;min-width:0;display:flex}.blade-axes label span{color:var(--lo);flex:none}.blade-axes input{box-sizing:border-box;width:100%;min-width:0;height:var(--blade-row);border:.1rem solid var(--line);corner-shape:squircle;color:var(--hi);font:inherit;font-variant-numeric:tabular-nums;-webkit-user-select:text;user-select:text;background:0 0;border-radius:.3em;padding:0 .4em}.blade-axes input[aria-invalid=true]{border-color:var(--bad)}.dev .blade-body{gap:var(--space-1);padding-block:var(--space-1);flex-direction:column;display:flex}.dev .blade .dev-buttons{flex:auto;min-width:0;padding-inline:0}.blade-menu{align-items:flex-start}.blade-menu>.blade-label{min-height:var(--blade-row);align-items:center;display:flex}.menu{gap:var(--space-1);flex-direction:column;flex:auto;min-width:0;display:flex}.dev .menu-trigger{justify-content:space-between;align-items:center;gap:var(--space-2);width:auto;min-width:0;height:var(--blade-row);background:var(--fill);text-align:start;flex:none;padding-inline:.8em;display:flex}.dev .menu-trigger[aria-expanded=true]{background:var(--press)}.menu-trigger .icon{width:1.2rem;height:1.2rem;transition:rotate var(--motion);flex:none}.menu-trigger[aria-expanded=true] .icon{rotate:180deg}.menu-value{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.menu-list{padding:var(--space-1);background:var(--panel);border-radius:var(--space-2);corner-shape:squircle;margin:0;list-style:none}.menu-option{min-height:var(--blade-row);border-radius:var(--space-2);corner-shape:squircle;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;align-items:center;padding-inline:.6em;display:flex;overflow:hidden}.menu-option[aria-selected=true]{color:var(--hi)}.menu-option[aria-disabled=true]{color:var(--lo);cursor:default}@media (hover:hover){.menu-option:not([aria-disabled=true]):hover{background:var(--hover)}}.app[data-input-method=keyboard] .menu-option[data-active],.menu-option[data-gamepad-focus],.menu-option:active:not([aria-disabled=true]){background:var(--press);color:var(--hi)}.sheet{--sheet-easing:cubic-bezier(.32, .72, 0, 1);box-sizing:border-box;z-index:5;width:100%;max-width:none;height:100%;max-height:none;color:var(--hi);padding:var(--edge) var(--edge-r) var(--edge-b) var(--edge-l);pointer-events:none;background:0 0;border:0;grid-template-rows:minmax(0,1fr);place-items:center;margin:0;display:grid;position:fixed;inset:0}.sheet::backdrop{background:0 0}.sheet.open{pointer-events:auto}.sheet-scrim{appearance:none;opacity:0;cursor:pointer;transition:opacity var(--sheet-duration) var(--sheet-easing);background:#0009;border:0;border-radius:0;margin:0;padding:0;position:absolute;inset:0}.sheet.open .sheet-scrim{opacity:1}.sheet-panel{box-sizing:border-box;border-radius:var(--space-3);corner-shape:squircle;opacity:0;width:min(32rem,100%);max-height:100%;transform:translateY(var(--space-2)) scale(.96);transition:transform var(--sheet-duration) var(--sheet-easing), opacity var(--sheet-duration) var(--sheet-easing);touch-action:manipulation;flex-direction:column;justify-self:center;display:flex;position:relative}.sheet.open .sheet-panel{opacity:1;transform:none}.sheet-bar{box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);flex:none;display:flex}.sheet-bar h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:inherit;letter-spacing:.01em;color:var(--hi);margin:0;font-weight:600;overflow:hidden}.about{flex-direction:column;margin:0;display:flex}.about>.disclosure{margin-inline:calc(-1 * var(--space-3))}.about .blade-body{border:0;gap:0;padding:0}.about .disclosure>summary,.about .disclosure>.blade-body>:is(dl,.about-note,.about-sponsors){padding-inline:var(--space-3)}.about .disclosure .disclosure>summary{font-weight:inherit;letter-spacing:0}.about dl{margin:0}.about dl>div{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--blade-row);border-bottom:.1rem solid var(--line);display:flex}.about dl>div:last-child{border-bottom:0}.about dt,.about dd{min-width:0;margin:0}.about dt{font:inherit;letter-spacing:0;text-transform:none;color:var(--lo);text-wrap:pretty;flex:auto}.about dd{justify-content:flex-end;align-items:baseline;gap:var(--space-1);max-width:62%;color:var(--hi);text-align:end;text-wrap:pretty;flex-wrap:wrap;flex:0 auto;display:flex}.about dd a{color:inherit}.about-sponsors{gap:var(--space-1) var(--space-3);padding-block:var(--space-2) var(--space-3);flex-wrap:wrap;margin:0;list-style:none;display:flex}.about-sponsors li{overflow-wrap:anywhere}.about-note{gap:var(--space-2);padding-block:var(--space-2) var(--space-3);color:var(--lo);text-wrap:pretty;flex-direction:column;display:flex}.about-note p{text-align:start;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;margin:0;line-height:1.6}.about-license{gap:1em;font-size:.85em;display:grid}.about-footer{justify-content:center;align-items:baseline;gap:var(--space-2) var(--space-3);padding-top:var(--space-3);text-align:center;text-wrap:pretty;flex-wrap:wrap;display:flex}.about-footer p{margin:0}.about-legal{color:var(--lo)}.about-legal a{color:var(--hi);text-transform:uppercase}.sheet-bar button{color:var(--hi);background:0 0;margin-right:-.4rem}.sheet-body{min-height:0;padding:0 var(--space-3) var(--space-3);overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex:auto;overflow:auto}.sheet-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.sheet-actions :is(button,a){border:.1rem solid var(--line);border-radius:var(--space-2);corner-shape:squircle;background:var(--fill);min-height:2.4rem;color:var(--hi);font:inherit;cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;padding:.5em 1em;font-size:.95em;text-decoration:none;display:inline-flex}.sheet-actions a:hover{background:var(--hover);color:var(--hi)}.sheet-actions .sheet-primary{border-color:var(--hi);margin-inline-start:auto}.guidance{gap:var(--space-3);padding-block:var(--space-1);flex-direction:column;display:flex}.guidance-badge{border:.1rem solid var(--line);border-radius:var(--space-2);corner-shape:squircle;background:var(--fill);color:var(--lo);align-self:flex-start;padding:.25em .75em;font-size:.85em}.guidance-desc{color:var(--lo);text-wrap:pretty;margin:0;line-height:1.6}@media (prefers-reduced-motion:reduce){.sheet-scrim,.sheet-panel{transition:none}}.display-setup{gap:var(--space-3);display:grid}.display-setup p{color:var(--lo);text-wrap:pretty;margin:0;line-height:1.6}.display-setup h3{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;margin:0;font-size:1.1em;font-weight:600;display:flex}.calibration-step{color:var(--lo);white-space:nowrap;font-size:.8em;font-weight:400}.calibration-preview{object-fit:contain;touch-action:pan-y;border-radius:var(--space-2);background:#000;width:100%;height:auto;max-height:min(18rem,32svh);display:block;position:static}.display-setup .blade{padding:0}.fps-touch{z-index:1;pointer-events:none;touch-action:none;display:none;position:fixed;inset:0}.fps-lift{bottom:var(--edge-b);pointer-events:auto;right:var(--edge-r);gap:var(--hud-gap);touch-action:none;display:flex;position:absolute}.fps-key{box-sizing:border-box;appearance:none;color:var(--hi);width:var(--pad-disc);height:var(--pad-disc);corner-shape:round;touch-action:none;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.fps-key .icon{width:40%;height:40%;filter:drop-shadow(var(--hud-shadow))}button.fps-key[data-down=true]{scale:.92}.fps-touch[data-visible=true]{display:block}html:has(.block-dock) .fps-lift{bottom:calc(var(--edge-b) + var(--dock-size) + var(--hud-gap))}html:has(.block-extra[data-expanded=true]) .fps-lift{visibility:hidden;pointer-events:none}@media (prefers-reduced-transparency:reduce){.fps-stick{border-color:#ddd}.fps-stick span{background:#ccc}}.block-dock{--dock-clearance:2.1rem;left:var(--edge-l);right:var(--edge-r);bottom:var(--edge-b);max-height:calc(var(--app-h,100dvh) - var(--edge) - var(--edge-b));z-index:2;align-items:center;gap:var(--space-1);pointer-events:none;flex-direction:column;display:flex;position:fixed}.block-name{text-shadow:0 .1rem .4rem #000,0 0 .2rem #000;max-width:100%;min-height:1.4em;color:var(--hi);overflow-wrap:anywhere;flex:none;padding:.25em .65em;font-size:.85rem;line-height:1.4}.block-tray{box-sizing:border-box;isolation:isolate;width:max-content;max-width:100%;min-height:0;padding:0 var(--space-2) var(--space-1);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;-webkit-mask-image:linear-gradient(to bottom, transparent, #000 var(--space-3));mask-image:linear-gradient(to bottom, transparent, #000 var(--space-3));touch-action:pan-x pan-y;pointer-events:auto;flex-direction:column;flex:0 auto;display:flex;position:relative;overflow:auto}.block-row{grid-template-columns:repeat(10, var(--dock-button));gap:var(--space-1);width:max-content;padding-top:var(--dock-clearance);flex:none;display:grid}.block-tray button{box-sizing:border-box;width:var(--dock-button);height:var(--dock-button);appearance:none;cursor:pointer;touch-action:pan-x pan-y;scroll-margin:var(--dock-clearance) var(--space-2) var(--space-1);background:0 0;border:0;border-radius:.75rem;place-items:center;padding:.35rem;display:grid;position:relative}.block-tray button:is([aria-pressed=true],[data-selected=true]):after{content:"";background:var(--hi);border-radius:1rem;width:.65rem;height:.15rem;position:absolute;bottom:.1rem;box-shadow:0 .1rem .3rem #000}.block-preview{width:100%;height:100%;fill:var(--block-color);pointer-events:none;transform:translateY(calc(var(--dock-lift,0) * -.6rem)) scale(calc(1 + var(--dock-lift,0) * .7));transform-origin:50% 100%;transition:transform .1s ease-out;display:block;overflow:visible}.block-extra{opacity:0;flex:none;grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.32,.72,0,1),opacity .18s;display:grid}.block-extra[data-expanded=true]{opacity:1;grid-template-rows:1fr}.block-extra-content{flex-direction:column;justify-content:flex-end;min-height:0;display:flex;overflow:clip}.block-preview[data-material=more]{color:var(--hi)}.block-more-chevron{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;transform-box:fill-box;transform-origin:50%;transition:transform .28s cubic-bezier(.32,.72,0,1);transform:rotate(180deg)}.block-more-tiles{fill:currentColor;opacity:.6;transition:opacity var(--motion)}.block-preview[data-expanded=true] .block-more-tiles{opacity:.8}.block-preview[data-expanded=true] .block-more-chevron{transform:none}.block-left{fill:color-mix(in srgb, var(--block-color), black 18%)}.block-right{fill:color-mix(in srgb, var(--block-color), black 36%)}.block-top{fill:color-mix(in srgb, var(--block-color), white 22%)}.block-edge,.block-detail,.block-shine{fill:none;stroke-width:.8px;stroke-linecap:round;stroke-linejoin:round}.block-edge{stroke:#ffffff4d}.block-detail{stroke:#10252d40}.block-shine{stroke:#ffffffa6;stroke-width:1.4px}.block-glow{fill:color-mix(in srgb, var(--block-color), white 65%)}.block-preview[data-material=glass] :is(.block-left,.block-right,.block-top){fill-opacity:.38}.block-preview[data-material=glass] .block-edge{stroke:var(--block-color)}.block-preview[data-material=water] .block-top{fill:color-mix(in srgb, var(--block-color), white 40%)}.block-key{min-width:0;color:var(--hi);opacity:0;background:0 0;padding:0;font-size:.65rem;line-height:1;position:absolute;bottom:.05rem;right:.1rem}.block-tray:focus-within .block-key{opacity:1}@media (hover:hover) and (pointer:fine){.block-tray:hover .block-key{opacity:1}}@media (forced-colors:active){.block-tray button:is([aria-pressed=true],[data-selected=true]){outline:.1rem solid highlight}.block-preview{forced-color-adjust:none}}@media (prefers-reduced-motion:reduce){.block-preview{transition:none;transform:none}.block-extra,.block-more-tiles,.block-more-chevron{transition:none}}html{height:var(--app-h,100dvh);color:#c4c4c4;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;--hi:#f5f5f7;--lo:#b0b5bd;--line:#ffffff18;--fill:#ffffff0a;--panel:#171c22;--touch-key:clamp(3.2rem, 10vmin, 4.4rem);--hud-shadow:0 0 .1rem #000;--pad-disc:calc(var(--touch-key) * 1.5);--stick-size:clamp(9rem, 30vmin, 13rem);--dock-button:3.2rem;--dock-size:6rem;--hud-gap:var(--space-3);--space-1:.3rem;--space-2:.6rem;--space-3:.9rem;--blade-row:2.2rem;--blade-label:5.5rem;--blade-readout:7rem;--knob-thumb:1rem;--bad:#e98585;--hover:color-mix(in srgb, var(--hi) 8%, transparent);--press:color-mix(in srgb, var(--hi) 14%, transparent);--motion:.16s ease;--safe-t:0px;--safe-r:0px;--safe-b:0px;--safe-l:0px;--edge:max(var(--space-3), env(safe-area-inset-top,0px), var(--safe-t));--edge-r:max(var(--space-3), env(safe-area-inset-right,0px), var(--safe-r));--edge-b:max(var(--space-3), env(safe-area-inset-bottom,0px), var(--safe-b));--edge-l:max(var(--space-3), env(safe-area-inset-left,0px), var(--safe-l));background:#080b0d;margin:0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:87.5%;line-height:1.35;overflow:hidden}[hidden]{display:none!important}.app,.game-ui{display:contents}.app[data-input-method=gamepad],.app[data-input-method=gamepad] *{cursor:none!important}button,input,select,textarea,output{font:inherit;letter-spacing:inherit;color:inherit}button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--motion), border-color var(--motion), color var(--motion), opacity var(--motion), scale var(--motion)}button:not(.sheet-scrim):not([role=switch]):not(:disabled):not(.block-dock button):active{background-color:var(--press);color:var(--hi)}button[role=switch]:not(.sheet-scrim):not(:disabled):active{background-color:#0000}:is(button,a,summary,input,select,textarea,[role=option]):is(:focus-visible,[data-gamepad-focus]){outline:.2rem solid var(--hi);outline-offset:-.2rem}a{color:var(--hi);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:.15em;transition:opacity var(--motion)}a[target=_blank]:not(:empty):not(:has(*)):after{content:"↗";margin-inline-start:.125rem;display:inline-block}a:active{opacity:.72}@media (hover:hover){button:not(.sheet-scrim):not([role=switch]):not(:disabled):not(.block-dock button):hover:not(:active){background-color:var(--hover);color:var(--hi)}a:hover{text-decoration-color:currentColor}}kbd{border-radius:var(--space-1);corner-shape:squircle;background:color-mix(in srgb, var(--hi) 10%, transparent);min-width:1.5em;color:var(--hi);text-align:center;white-space:nowrap;padding:.05em .4em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1em;line-height:1.45;display:inline-block}body,#root{touch-action:none;background:#080b0d;height:100%;margin:0;overflow:hidden}#root{position:relative}.ui-retry{z-index:5;right:var(--edge-r);border-radius:var(--space-2);corner-shape:squircle;padding:var(--space-2) var(--space-3);position:fixed}button.ui-retry{cursor:pointer}canvas{touch-action:none;cursor:default;outline:none;width:100%;height:100%;display:block}canvas.backroom-filter{width:min(100%, calc(var(--app-h,100dvh) * 4 / 3));aspect-ratio:4/3;height:auto;margin:auto;position:absolute;inset:0}.edit-crosshair{z-index:1;width:1.5rem;height:1.5rem;filter:drop-shadow(var(--hud-shadow));pointer-events:none;fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:square;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.fail{z-index:3;padding:var(--edge) var(--edge-r) var(--edge-b) var(--edge-l);text-align:center;color:var(--hi);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;background:#0b0d1052;place-items:center;display:grid;position:absolute;inset:0}.fail-card{gap:var(--space-2);text-shadow:0 .08rem .24rem #0009;flex-direction:column;width:min(36rem,100%);display:flex}.fail-title,.fail-reason{font:inherit;margin:0}.fail-title{color:var(--hi);font-weight:600}.fail-reason{color:var(--lo);white-space:pre-wrap}.fail button{appearance:none;margin-top:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--space-2);corner-shape:squircle;background:var(--fill);color:inherit;cursor:pointer;border:.1rem solid #0000;align-self:center}.load{z-index:3;padding:var(--edge) var(--edge-r) var(--edge-b) var(--edge-l);opacity:0;background:#0009;place-items:center;transition:opacity .42s;display:grid;position:absolute;inset:0}.load[data-on=true]{opacity:1}.load-inner{box-sizing:border-box;align-items:center;gap:var(--space-2);width:min(32rem,100%);max-width:100%;color:var(--hi);text-align:center;text-shadow:0 .08rem .24rem #0009;flex-direction:column;font-size:1rem;display:flex}.load-progress{align-items:center;gap:var(--space-2);max-width:100%;display:flex}.load-step{font-variant-numeric:tabular-nums}.load-phase{min-width:0;font:inherit;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}.load-ring{flex:none;width:2.8rem;height:2.8rem;display:block}.load-ring svg{fill:none;stroke-width:1.8px;width:100%;height:100%;display:block}.load[aria-busy=true] .load-ring svg{will-change:transform;animation:1.2s linear infinite load-spin}@keyframes load-spin{to{transform:rotate(1turn)}}.load-ring-track{stroke:var(--line)}.load-ring-value{stroke:var(--hi);stroke-linecap:round;transition:stroke-dashoffset .28s ease-out}.load-subtitle,.load-detail,.load-recovery{font-variant-numeric:tabular-nums;font-size:.8rem}.load-subtitle,.load-detail{margin:0}.load-detail{justify-content:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.load-detail span{white-space:nowrap}.load-recovery{max-width:100%}.load-recovery summary{cursor:pointer}.dev{touch-action:manipulation;top:var(--edge);right:var(--edge-r);z-index:2;width:fit-content;max-width:calc(100svw - var(--edge-l) - var(--edge-r));max-height:calc(var(--app-h,100dvh) - var(--edge) - var(--edge-b));border-radius:var(--space-3);corner-shape:squircle;flex-direction:column;display:flex;position:fixed;overflow:hidden}.dev.open{width:min(28rem, calc(100svw - var(--edge-l) - var(--edge-r)))}.dev-bar{padding:var(--space-2);border-bottom:.1rem solid var(--line);display:flex}.disclosure{interpolate-size:allow-keywords;border-bottom:.1rem solid var(--line)}:is(.dev-body,.blade-body)>.disclosure:last-child{border-bottom:0}.disclosure>summary{box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--blade-row);padding:0 var(--space-2);cursor:pointer;color:var(--lo);transition:color var(--motion), background-color var(--motion);list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{content:"";display:none}.disclosure>summary::marker{content:"";display:none}.disclosure>summary:after{content:"";box-sizing:border-box;transform-origin:78% 78%;width:.42rem;height:.42rem;transition:transform var(--motion);border-bottom:.1rem solid;border-right:.1rem solid;flex:none;margin-inline-end:.1rem;transform:rotate(-45deg)}.disclosure[open]>summary:after{transform:rotate(45deg)}.disclosure>summary:active{background:var(--press);color:var(--hi)}.disclosure::details-content{transition-behavior:allow-discrete;height:0;transition:height .28s cubic-bezier(.32,.72,0,1),content-visibility .28s cubic-bezier(.32,.72,0,1);overflow:clip}.disclosure[open]::details-content{height:auto;overflow:visible}.dev-bar{justify-content:space-between;align-items:center;gap:var(--space-2);flex-direction:row;flex-shrink:0}.dev-bar-actions{gap:var(--space-1);flex-shrink:0;margin-left:auto;display:flex}.dev:not(.open){width:auto}.dev:not(.open) .dev-bar{border-bottom:0}.dev-title,.disclosure>summary{font:inherit;letter-spacing:.01em;margin:0;font-weight:600}.dev-title{color:var(--hi);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dev-title small{font-size:inherit;letter-spacing:0;color:var(--lo);font-weight:400}.dev-body{contain:inline-size;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;flex:auto;min-height:0;display:flex;overflow:auto}.dev-fps{flex:none}.disclosure-status{align-items:center;gap:var(--space-2);min-width:0;color:var(--hi);font-variant-numeric:tabular-nums;flex:1;margin-inline-start:auto;font-weight:400;display:flex}.dev-fps-value{text-align:end;min-width:3ch}.dev button:disabled{opacity:.4;cursor:default}@media (hover:hover){.disclosure>summary:hover:not(:active){background:var(--hover);color:var(--hi)}}.dev-fps-plot{box-sizing:border-box;width:0;min-width:0;height:calc(var(--blade-row) * .72);border:.1rem solid var(--line);background-color:var(--fill);flex:1;display:block}.dev-fps-plot polyline{fill:none;stroke:var(--hi);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}:is(.dev,.sheet-bar,.sheet-actions) button{appearance:none;border-radius:var(--space-2);corner-shape:squircle;cursor:pointer;border:.1rem solid #0000;flex:none;place-items:center;width:3.2rem;height:3.2rem;padding:0;display:grid}.sheet-actions button{border-color:var(--line);background:var(--fill);width:auto;height:auto;min-height:3.2rem;padding:.6em 1em}.dev button{background:0 0}.dev.open .dev-bar-actions button{opacity:1;color:var(--hi);background:0 0}.dev .icon,.sheet-bar .icon{width:1.6rem;height:1.6rem}.dev button[aria-pressed=true],.dev button[aria-checked=true]:not([role=switch]){background:var(--press);color:var(--hi)}.fps-stick{box-sizing:border-box;z-index:1;width:var(--stick-size);height:var(--stick-size);corner-shape:round;pointer-events:none;opacity:0;background:0 0;border:.09rem solid #ffffff59;border-radius:50%;transition:opacity .18s;position:fixed;top:0;left:0}button.fps-key:not(.sheet-scrim):not(:disabled),button.fps-key:not(.sheet-scrim):not([role=switch]):not(:disabled):is(:hover,:active,[data-down=true]),.fps-stick[data-active=true]{color:var(--hi);opacity:1;background-color:#0000}.dev:not(.open) .dev-bar-actions button,.dev:not(.open) .dev-bar-actions button:is(:hover,:focus-visible,[data-gamepad-focus],:active):not(:disabled){color:var(--hi);box-shadow:none;opacity:1;background-color:#0000}.dev:not(.open) .dev-bar-actions .icon{filter:drop-shadow(var(--hud-shadow))}.dev:not(.open) .dev-bar-actions button:not(:disabled):active{scale:.94}.fps-stick span{opacity:0;background:#ffffff30;border-radius:50%;width:32%;height:32%;margin:-16% 0 0 -16%;position:absolute;top:50%;left:50%;box-shadow:0 .2rem .6rem #0002}.fps-stick span[data-on=true]{opacity:1}.icon{pointer-events:none;flex-shrink:0;width:2rem;height:2rem;display:block}.switch-track{background:color-mix(in srgb, var(--hi) 24%, transparent);border-radius:1rem;width:2.4rem;height:1.4rem}.switch-track:after{content:"";background:var(--hi);border-radius:50%;width:1rem;height:1rem;margin:.2rem;transition:transform .16s;display:block}[aria-checked=true] .switch-track{background:var(--hi)}[aria-checked=true] .switch-track:after{background:var(--panel);transform:translate(1rem)}@media (prefers-reduced-motion:reduce){.load[aria-busy=true] .load-ring svg{will-change:auto;animation:none}button,a,summary,.disclosure>summary:after,.switch-track:after,.load,.load-ring-value,.fps-stick{transition:none}.disclosure::details-content{transition:none}input[type=range]::-webkit-slider-thumb{transition:none}input[type=range]::-moz-range-thumb{transition:none}}.glass{color:var(--hi);background-color:color-mix(in srgb, var(--panel) 88%, transparent);border:0}html:has(.dev.open) .fps-touch{visibility:hidden}@media (any-pointer:coarse){html:has(.dev.open) .block-dock{visibility:hidden}html{--blade-row:3.2rem;--knob-thumb:1.25rem}.dev button{width:3.2rem;height:3.2rem}}@media (prefers-reduced-transparency:reduce){.glass{background-color:var(--panel)}}.error-detail{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;max-height:30svh;font-size:.75rem;overflow:auto}@media (forced-colors:active){.glass{border:.1rem solid canvastext}.switch-track{border:.1rem solid buttontext}[aria-checked=true] .switch-track{background:highlight}}
