html,body{color:#f7f7fb;background:#000;width:100%;height:100%;margin:0;font-family:Arial,Helvetica,sans-serif;overflow:hidden}button,input{font:inherit}#app{width:100%;height:100%}.shell{background:#000;place-items:center;display:grid;position:fixed;inset:0}.menu-screen{touch-action:manipulation}.menu-overlay{z-index:20}.menu{text-align:center;gap:0;width:min(520px,100vw - 48px);display:grid}.menu-actions{justify-items:center;gap:25px;display:grid}.settings-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 24px;width:min(480px,100%);display:flex}.settings-row>.setting-fullscreen-row,.settings-row>.setting-scaling-row{flex:none}.session-ownership-screen{background:#000;place-items:center;display:grid;position:fixed;inset:0}.session-ownership-panel{text-align:center;justify-items:center;gap:25px;width:min(520px,100vw - 48px);display:grid}.setting-fullscreen-row,.setting-scaling-row,.session-ownership-message{color:#fff;font-size:16px;font-weight:700}.setting-fullscreen-row,.setting-scaling-row{grid-template-columns:max-content auto;align-items:center;gap:10px;display:grid;position:relative}.session-ownership-message{overflow-wrap:anywhere;text-align:center;white-space:normal;width:100%;max-width:100%;margin:0;line-height:1.45;display:block}.menu-switch{cursor:pointer;background:#000;border:2px solid #5b2448;border-radius:999px;width:66px;height:34px;padding:0;transition:background .16s ease-out,border-color .16s ease-out;position:relative}.menu-switch span{content:"";background:#ffea02;border-radius:50%;width:22px;height:22px;transition:background .16s ease-out,transform .16s ease-out;position:absolute;top:4px;left:4px}.menu-switch[data-enabled=true]{background:#fd47b9;border-color:#fd47b9}.menu-switch[data-enabled=true] span{background:#050505;transform:translate(32px)}.menu-switch:hover,.menu-switch:focus-visible{border-color:#fd47b9;outline:none}.fullscreen-switch:disabled{cursor:default;opacity:1;background:#6f6501;border-color:#6f6501}.fullscreen-switch:disabled span{background:#191405;transform:translate(0)}.theme-picker{width:var(--theme-picker-width,146px);position:relative}.theme-picker-button{box-sizing:border-box;color:#fff;cursor:pointer;width:100%;height:34px;font:inherit;text-align:left;background:#000;border:2px solid #5b2448;border-radius:8px;grid-template-columns:minmax(0,1fr) 10px;align-items:center;gap:10px;padding:0 8px 0 12px;font-weight:700;display:grid}.theme-picker-button:hover,.theme-picker-button:focus-visible,.theme-picker[data-open=true] .theme-picker-button{border-color:#fd47b9;outline:none}.theme-picker-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.theme-picker-popup{z-index:30;box-sizing:border-box;background:#000;border:2px solid #fd47b9;border-radius:8px;padding:4px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.theme-picker-popup[hidden]{display:none}.theme-picker-list{scrollbar-color:#fd47b9 #222;max-height:min(322px,100vh - 188px);padding-right:4px;display:grid;overflow-y:auto}.theme-picker-option{box-sizing:border-box;color:#fff;cursor:pointer;width:100%;min-height:34px;font:inherit;text-align:left;background:#000;border:0;border-radius:4px;grid-template-columns:minmax(0,1fr) 10px;align-items:center;gap:10px;padding:0 6px 0 8px;font-weight:700;display:grid}.theme-picker-option span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.theme-picker-option[aria-selected=true]{color:#fff;background:#241121}.theme-picker-option:hover,.theme-picker-option:focus-visible{color:#fff;background:#fd47b9;outline:none}.picker-caret,.picker-caret-placeholder{justify-self:center;width:10px;height:6px}.picker-caret{clip-path:polygon(0 0,100% 0,50% 100%);background:currentColor}.menu-buttons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.start-button,.retry-button{color:#050505;cursor:pointer;min-width:192px;min-height:48px;text-shadow:none;background:#ffea02;border:none;border-radius:30px;padding:10px 20px;font-size:18px;font-weight:700}.start-button:active,.retry-button:active{transform:translateY(2px)}.start-button:disabled{color:#191405;cursor:default;background:#6f6501}.reset-button{color:#888;cursor:pointer;min-height:28px;font:inherit;background:0 0;border:0;margin-top:-8px;padding:4px 12px;font-size:15px;font-weight:700}.reset-button:hover,.reset-button:focus-visible{color:#fff;outline:none}.volume-control{color:#fff;grid-template-columns:30px minmax(0,1fr) max-content;align-items:center;column-gap:10px;width:min(360px,100%);font-size:16px;font-weight:700;display:grid}.volume-control input{appearance:none;--thumb-position:10%;background:0 0;border-radius:10px;width:100%;height:8px;margin:0}.volume-control input:focus{outline:none}.volume-control input::-webkit-slider-runnable-track{background:linear-gradient(to right, #fd47b9 0%, #fd47b9 var(--thumb-position,50%), #5b2448 var(--thumb-position,50%), #5b2448 100%);border-radius:10px;height:8px}.volume-control input::-webkit-slider-thumb{appearance:none;background:#ffea02;border:3px solid #050505;border-radius:50%;width:24px;height:24px;margin-top:-8px}.volume-control input::-moz-range-track{background:#5b2448;border-radius:10px;height:8px}.volume-control input::-moz-range-progress{background:#fd47b9;border-radius:10px;height:8px}.volume-control input::-moz-range-thumb{background:#ffea02;border:3px solid #050505;border-radius:50%;width:18px;height:18px}.volume-icon{color:#fff;place-items:center;width:30px;height:30px;display:grid}.volume-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:26px;height:24px}.volume-value{color:#fff;font-variant-numeric:tabular-nums;text-align:left;min-width:24px}.boot{text-align:center;justify-items:center;gap:14px;width:min(420px,100vw - 48px);display:grid}.boot-title{color:#fff;font-size:26px;font-weight:700}.boot-error{gap:16px}.failure-icon{color:#fff;font-family:Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,Segoe UI Symbol,Arial,Helvetica,sans-serif;font-size:52px;line-height:1}.dots:after{content:"";text-align:left;width:1.5em;animation:1s steps(4,end) infinite dots;display:inline-block}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%,to{content:"..."}}.progress-shell{background:#202034;border-radius:8px;width:100%;height:8px;overflow:hidden}.progress-bar{width:var(--progress,0%);background:#fd47b9;height:100%}.error-text{color:#fff;margin:0;line-height:1.45}.game-shell{background:#000;position:fixed;inset:0;overflow:hidden}.game-shell:fullscreen{background:#000;position:fixed;inset:0;overflow:hidden}.game-shell:-webkit-full-screen{background:#000;position:fixed;inset:0;overflow:hidden}:-webkit-any(.game-shell:fullscreen,.game-shell:-webkit-full-screen){width:100vw;max-width:none;height:100vh;max-height:none;margin:0}:is(.game-shell:fullscreen,.game-shell:fullscreen){width:100vw;max-width:none;height:100vh;max-height:none;margin:0}.game-host{background:#000;place-items:center;display:grid;position:absolute;inset:0}:-webkit-any(.game-shell:fullscreen .game-host,.game-shell:-webkit-full-screen .game-host){width:100%;max-width:none;height:100%;max-height:none}:is(.game-shell:fullscreen .game-host,.game-shell:fullscreen .game-host){width:100%;max-width:none;height:100%;max-height:none}.game-host canvas{image-rendering:pixelated;outline:none;max-width:100%;max-height:100%}.game-host.cursor-hidden,.game-host.cursor-hidden canvas{cursor:none}.hamburger{z-index:5;color:#fff;cursor:pointer;background:#0000008c;border:1px solid #ffffff47;border-radius:8px;place-items:center;width:44px;height:44px;display:grid;position:fixed;top:12px;left:12px}:-webkit-any(.game-shell:fullscreen .hamburger,.game-shell:-webkit-full-screen .hamburger){top:calc(12px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px))}:is(.game-shell:fullscreen .hamburger,.game-shell:fullscreen .hamburger){top:calc(12px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px))}.hamburger:hover,.hamburger:focus-visible{background:#3f3f3f;border-color:#ffffffc2}.hamburger[hidden]{display:none}.hamburger span,.hamburger span:before,.hamburger span:after{content:"";background:currentColor;width:20px;height:2px;display:block}.hamburger span:before{transform:translateY(-7px)}.hamburger span:after{transform:translateY(5px)}
