@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/press-start-2p-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#16131c;--shell:#d9d4c7;--shell-hi:#ece8de;--shell-shadow:#a39d90;--shell-deep:#8a8478;--shell-press:#c8c2b4;--paper:#f4eedc;--ink:#2a2530;--ink-2:#544d5c;--on-bg:#efe9f5;--on-bg-2:#b3a9bf;--accent:#d6384a;--accent-press:#b52c3d;--accent-deep:#8c1f2d;--accent-2:#2a615c;--lcd-dark:#2f3b2c;--lcd-light:#a7b39a;--danger:#9e2433;--warn-bg:#f2e4c2;--warn-ink:#8a5a00;--pixel:"Press Start 2P", ui-monospace, monospace;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--step:steps(3);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background-color:var(--bg);color:var(--on-bg);font:15px/1.5 var(--sans);-webkit-font-smoothing:antialiased;background-image:radial-gradient(#efe9f512 1px,#0000 1.5px);background-size:24px 24px;margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,p{margin:0}:focus{outline:none}:focus-visible,[data-input=pad] :focus{outline:3px solid var(--accent);outline-offset:3px}[data-input=pad] .side-panel:focus{outline:none}.px{font-family:var(--pixel);letter-spacing:.02em;font-weight:400;line-height:1.5}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--ink-2)}.dim{color:var(--on-bg-2);font-size:13px}.dim-ink,.fine{color:var(--ink-2);font-size:13px}.center{text-align:center}.error{color:var(--danger);font-size:13px;font-weight:600}.stack{flex-direction:column;gap:14px;display:flex}.stack-sm{flex-direction:column;gap:8px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row.end{justify-content:flex-end}.self-start{align-self:flex-start}.plastic{color:var(--ink);background-color:var(--shell);background-image:radial-gradient(#463c3214 .6px,#0000 .9px),radial-gradient(#ffffff4d .6px,#0000 .9px);background-position:0 0,2px 1px;background-size:3px 3px,5px 5px}.ridges{background:repeating-linear-gradient(90deg, var(--shell-shadow) 0 2px, var(--shell-hi) 2px 3px, transparent 3px 6px);flex:1;height:10px;display:block}.led{background:var(--accent);border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 2px #d6384a38,0 0 10px #d6384abf}.brand{align-items:center;gap:10px;display:inline-flex}.wordmark{font:12px/1 var(--pixel);letter-spacing:.04em;color:var(--on-bg);white-space:nowrap}.brand.on-shell .wordmark{color:var(--ink);font-size:15px}.brand-mascot{flex:none;width:40px;height:40px;animation:3.2s ease-in-out infinite cloud-float}@keyframes cloud-float{50%{transform:translateY(-4px)}}.btn{min-height:48px;font:11px/1.3 var(--pixel);text-align:center;color:var(--ink);background:var(--shell);box-shadow:inset 0 2px 0 #fff9, inset 0 -2px 0 #0000000f, 0 3px 0 var(--shell-shadow), 0 6px 12px #00000038;border:0;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:14px 18px;text-decoration:none;transition:transform 60ms steps(2,end),box-shadow 60ms steps(2,end),background-color 60ms steps(2,end);display:inline-flex}.btn:active:not(:disabled){background:var(--shell-press);box-shadow:inset 0 2px 4px #0003, 0 1px 0 var(--shell-shadow);transform:translateY(2px)}.btn.primary{background:var(--accent);color:#fff;box-shadow:inset 0 2px 0 #ffffff4d, inset 0 -2px 0 #0000001a, 0 3px 0 var(--accent-deep), 0 6px 12px #00000047}.btn.primary:active:not(:disabled){background:var(--accent-press);box-shadow:inset 0 2px 4px #00000047, 0 1px 0 var(--accent-deep)}.btn.small{min-height:44px;padding:11px 14px;font-size:10px}.btn.wide{width:100%}.btn:disabled{opacity:.55}.ibtn{width:44px;height:44px;color:var(--ink);background:var(--shell);box-shadow:inset 0 2px 0 #fff9, 0 3px 0 var(--shell-shadow), 0 4px 8px #0000002e;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:transform 60ms steps(2,end),box-shadow 60ms steps(2,end);display:inline-flex;position:relative}.ibtn:active:not(:disabled),.ibtn.on{background:var(--shell-press);box-shadow:inset 0 2px 4px #0003, 0 1px 0 var(--shell-shadow);transform:translateY(2px)}.ibtn:disabled{opacity:.45}.ibtn.small{width:40px;height:40px}.danger-ink{color:var(--danger)}.link{min-height:24px;font:600 14px var(--sans);color:var(--accent-2);text-underline-offset:3px;background:0 0;border:0;padding:4px 2px;text-decoration:underline}.link.on-dark{color:var(--on-bg-2)}.link:disabled{opacity:.55}.tip:after{content:attr(data-tip);z-index:30;background:var(--ink);width:max-content;max-width:260px;color:var(--paper);font:500 12px/1.4 var(--sans);letter-spacing:0;text-align:left;white-space:normal;opacity:0;pointer-events:none;border-radius:6px;padding:6px 9px;transition:opacity .12s steps(2,end);position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)}.tip.tip-below:after{inset:calc(100% + 10px) 0 auto auto;transform:none}.tip:hover:after,.tip:focus-visible:after{opacity:1}@media (hover:none){.tip:after{display:none}}.field{border:2px solid var(--shell-deep);background:var(--paper);width:100%;height:50px;color:var(--ink);font:500 16px var(--sans);border-radius:10px;padding:0 14px;box-shadow:inset 0 2px 3px #0000001f}.field:focus-visible{border-color:var(--accent);outline-offset:1px}.field-label{color:var(--ink);font-size:13px;font-weight:600}.switch{appearance:none;cursor:pointer;background:var(--shell-shadow);border-radius:999px;flex-shrink:0;width:44px;height:24px;margin:0;transition:background-color .15s,box-shadow .15s;position:relative;box-shadow:inset 0 0 0 1px #2a25301f}.switch:after{content:"";background:var(--paper);border-radius:50%;width:20px;height:20px;transition:transform .18s cubic-bezier(.3,.7,.4,1),width .12s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #2a253040,0 0 0 .5px #2a253014}.switch:hover{background:var(--shell-deep)}.switch:active:after{width:24px}.switch:checked{background:var(--accent-2);box-shadow:inset 0 0 0 1px #0000001a}.switch:checked:hover{background:#235450}.switch:checked:after{transform:translate(20px)}.switch:checked:active:after{transform:translate(16px)}.switch:disabled{opacity:.5;cursor:not-allowed}.check{appearance:none;cursor:pointer;background:var(--paper);width:22px;height:22px;box-shadow:inset 0 2px 3px #00000040, 0 0 0 2px var(--shell-deep);border-radius:5px;flex-shrink:0;place-content:center;margin:0;display:grid}.check:checked{background:var(--accent-2);box-shadow:0 0 0 2px var(--accent-2)}.check:checked:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:10px;height:6px;transform:rotate(-45deg)translate(1px,-1px)}.switch-row,.check-row{cursor:pointer;color:var(--ink);align-items:flex-start;gap:14px;display:flex}.check-row{align-items:center;font-size:14px;font-weight:500}.switch-row>span,.check-row>span{flex-direction:column;gap:3px;display:flex}.switch-row strong,.check-row strong{font-size:14px}.switch-row small,.check-row small{color:var(--ink-2);font-size:13px;line-height:1.45}.volume{appearance:none;cursor:pointer;background:var(--shell-deep);border-radius:4px;width:110px;height:8px;box-shadow:inset 0 2px 3px #00000059}.volume::-webkit-slider-thumb{appearance:none;background:var(--shell-hi);width:18px;height:24px;box-shadow:0 2px 0 var(--shell-deep), 0 0 0 1px var(--shell-deep);border-radius:5px}.volume::-moz-range-thumb{background:var(--shell-hi);width:18px;height:24px;box-shadow:0 2px 0 var(--shell-deep), 0 0 0 1px var(--shell-deep);border:0;border-radius:5px}kbd{min-width:34px;font:10px/1.2 var(--pixel);text-align:center;white-space:nowrap;color:var(--ink);box-shadow:inset 0 -3px 0 #c9c2b0, 0 0 0 1px var(--shell-shadow), 0 2px 0 var(--shell-shadow);background:#fbf8ef;border-radius:6px;padding:7px 8px 6px;display:inline-block}kbd.listening{background:var(--lcd-light);color:var(--lcd-dark);animation:.8s steps(2,end) infinite fade}kbd.empty{color:var(--ink-2)}.key-arrow{vertical-align:-.05em;shape-rendering:crispedges;width:.9em;height:.9em;display:inline-block}.badge{font:9px/1 var(--pixel);white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:7px;padding:7px 11px 7px 9px;text-decoration:none;display:inline-flex}.badge-synced{color:#1f5230;background:#cfe0cc}.badge-syncing{color:#1b4a46;background:#c6ddd9}.badge-offline{color:#403a47;background:#d6d1d9}.badge-conflict{color:#5e3a00;background:#f2d9a0}.badge-button{min-height:32px;position:relative;box-shadow:0 2px #0000002e}.badge-button:active{box-shadow:none;transform:translateY(1px)}.spin{animation:1s steps(8,end) infinite spin}.blink{animation:1s steps(2,end) infinite blink}.enter{animation:enter .18s var(--step) both}.motion-art{aspect-ratio:3/2;display:block}.motion-art img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.motion-cue{z-index:120;pointer-events:none;background:#16131cb3;place-items:center;display:grid;position:fixed;inset:0}.motion-cue .motion-art{width:min(360px,75vw)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:.3}}@keyframes fade{50%{opacity:.45}}@keyframes enter{0%{opacity:0;transform:translateY(6px)}}@keyframes slide-in{0%{opacity:0;transform:translate(40px)}}@keyframes slide-up{0%{opacity:0;transform:translateY(40px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}:root[data-motion=reduce] *,:root[data-motion=reduce] :before,:root[data-motion=reduce] :after{transition:none!important;animation:none!important}.page{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(40px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(40px, env(safe-area-inset-left));flex-direction:column;gap:28px;max-width:1200px;margin:0 auto;display:flex}.page-head{justify-content:space-between;align-items:center;gap:16px;min-height:48px;display:flex}.head-actions{gap:12px;display:flex}.page-foot{flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:auto;display:flex}.lock-line{color:var(--ink);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.lock-line svg{color:var(--accent-2)}.welcome{align-items:center}.welcome .page-head{align-self:stretch}.cart-card{clip-path:polygon(0 0,calc(100% - 40px) 0,100% 40px,100% 100%,0 100%);filter:drop-shadow(0 22px 34px #00000080);border-radius:0 0 18px 18px;flex-direction:column;width:min(480px,100%);margin:auto 0;display:flex}.cart-grip{gap:14px;padding:16px 70px 0 28px;display:flex}.cart-grip.small{gap:8px;padding:0}.cart-grip.small .ridges{height:8px}.paper-label{background:var(--paper);box-shadow:inset 0 2px 4px #0000002e, 0 1px 0 var(--shell-hi);border-radius:8px;flex-direction:column;gap:10px;margin:14px 22px 0;padding:18px 20px 16px;display:flex}.paper-label p{color:var(--ink-2);font-size:14px;font-weight:500}.label-stripes{background:linear-gradient(var(--accent) 0 4px, transparent 4px 7px, var(--accent-2) 7px 11px);height:11px;display:block}.cart-body{flex-direction:column;gap:18px;padding:24px 32px 22px;display:flex}.cart-body h1{color:var(--ink);font-size:23px;font-weight:700;line-height:1.25}.cart-foot{border-top:2px solid var(--shell-press);background:#2a253012;justify-content:center;align-items:center;gap:8px;padding:14px 32px 18px;font-size:13px;font-weight:600;display:flex}.cart-foot svg{color:var(--accent-2)}.or{font:9px var(--pixel);color:var(--ink-2);align-items:center;gap:12px;display:flex}.or:before,.or:after{content:"";background:var(--shell-shadow);height:2px;box-shadow:0 1px 0 var(--shell-hi);flex:1}.sign-in{color:var(--ink);flex-direction:column;gap:10px;display:flex}.sign-in .btn.primary{margin-top:4px}.sign-in-sent{color:var(--ink-2);justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;display:flex}.sign-in-sent strong{color:var(--ink);word-break:break-all}.code-boxes{justify-content:space-between;gap:6px;padding:8px 4px;display:flex}.code-cell{flex:1 1 0;align-items:center;gap:6px;min-width:0;display:flex}.code-cell:has(.code-dash){flex:16px}.code-dash{background:var(--ink-2);border-radius:2px;flex:0 0 10px;height:4px}.code-box{aspect-ratio:5/6;text-align:center;text-transform:uppercase;width:100%;min-width:0;max-width:48px;font:clamp(16px, 4.4vw, 20px) var(--pixel);color:var(--lcd-dark);caret-color:var(--accent);background-color:var(--lcd-light);box-shadow:inset 0 3px 5px #00000059, 0 0 0 3px var(--lcd-dark), 0 2px 0 3px var(--shell-hi);background-image:radial-gradient(#2f3b2c2e .8px,#0000 1px);background-size:3px 3px;border:0;border-radius:7px;padding:0}.code-box:focus-visible{outline-offset:5px}.code-box:disabled{opacity:.7}.checking{color:var(--accent-2);font-size:10px}.insert{box-shadow:inset 0 2px 0 var(--shell-hi), 0 5px 0 var(--shell-deep), 0 18px 30px #0006;border-radius:20px;grid-template-columns:minmax(0,1fr) 340px;gap:30px;padding:26px;display:grid}.slot{text-align:center;border:3px dashed var(--shell-deep);min-height:230px;transition:background-color .12s var(--step), border-color .12s var(--step);background:#cdc7b9;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex;box-shadow:inset 0 4px 10px #0000002e}.slot.over{border-style:solid;border-color:var(--accent-2);background:#c3cfc9}.slot-mouth{background:var(--ink);width:min(300px,80%);height:16px;box-shadow:inset 0 4px 6px #000000b3, 0 2px 0 var(--shell-hi);transition:height .18s var(--step), width .18s var(--step);border-radius:6px;margin-bottom:6px;display:block}.slot.over .slot-mouth{background:#1d2a28;width:min(340px,90%);height:46px}.slot.busy .slot-mouth{height:30px}.slot-headline{color:var(--ink);font-size:13px}.insert-side{flex-direction:column;justify-content:center;gap:16px;display:flex}.insert-side h1{font-size:14px}.recent{flex-direction:column;gap:16px;display:flex}.recent-head{align-items:baseline;gap:16px;display:flex}.recent-head h2{color:var(--on-bg);font-size:12px}.shelf{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px;margin:0;padding:0;list-style:none;display:grid}.game-card{box-shadow:inset 0 2px 0 var(--shell-hi), 0 4px 0 var(--shell-deep), 0 12px 22px #00000059;border-radius:6px 22px 14px 14px;flex-direction:column;gap:12px;padding:14px 16px 16px;transition:transform 90ms steps(2,end);display:flex;position:relative}.game-card:hover{transform:translateY(-3px)}[data-input=pad] .game-card-play:focus{outline:none}[data-input=pad] .game-card:has(.game-card-play:focus){outline:3px solid var(--accent);outline-offset:3px;transform:translateY(-3px)}.game-card{scroll-margin:16px}[data-input=pad] input[data-pad-adjust]:focus{outline-width:4px;outline-style:dashed}[data-input=pad] :is(.sheet-row,.setting):has(input:focus){outline:3px solid var(--accent);outline-offset:2px}[data-input=pad] :is(.sheet-row,.setting):has(input[data-pad-adjust]:focus){outline-style:dashed}[data-input=pad] :is(.sheet-row,.setting) input:focus{outline:none}[data-input=pad] .setting:has(input:focus){border-radius:10px}.game-card-play{text-align:left;background:0 0;border:0;border-radius:6px;flex-direction:column;flex:1;gap:12px;padding:0;display:flex}.game-card-play:disabled{opacity:.6}.game-label{background:var(--paper);border-radius:6px;flex-direction:column;flex:1;gap:8px;min-height:132px;padding:14px;display:flex;box-shadow:inset 0 1px 3px #0003}.label-stripe{height:5px;display:block}.game-cover{aspect-ratio:1;object-fit:cover;background:#0000000f;border-radius:6px 6px 0 0;width:calc(100% + 28px);max-width:none;margin:-14px -14px 0;display:block}.game-title{color:var(--ink);overflow-wrap:anywhere;font-size:10px;line-height:1.6}.game-file{color:var(--ink-2);overflow-wrap:anywhere;font-size:12px}.game-when{color:var(--ink-2);align-items:center;gap:6px;margin-top:auto;font-size:13px;display:flex}.game-card-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.game-card-tools{gap:8px;display:flex}.game-card.shiny{box-shadow:inset 0 2px 0 var(--shell-hi), 0 4px 0 var(--shell-deep), 0 0 0 2px #ffd678b3, 0 0 22px #ffc85a59, 0 12px 22px #00000059}.game-card.shiny:before,.game-card.shiny:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0}.game-card.shiny:before{mix-blend-mode:overlay;opacity:.5;background:linear-gradient(125deg,#ff5f6d,#ffc371,#f9f871,#7cffcb,#6ec3ff,#b98cff,#ff7eb3,#ff5f6d) 0 0/300% 300%;animation:6s ease-in-out infinite alternate holo}.game-card.shiny:after{background:linear-gradient(115deg,#0000 38%,#ffffff80 47%,#ffffff26 53%,#0000 60%) 0 0/250% 100% no-repeat;animation:3.2s ease-in-out infinite sheen}@keyframes holo{0%{background-position:0 0}to{background-position:100% 100%}}@keyframes sheen{0%{background-position:100% 0}60%,to{background-position:-5% 0}}.fav-toggle{z-index:1;width:40px;height:36px;color:var(--shell-deep);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0;right:6px}.game-card .cart-grip.small{padding-right:34px}.fav-toggle:hover{color:var(--ink-2)}.fav-toggle.on{color:#c98a1b}.fav-toggle.on svg{fill:currentColor}.shelf-tools{flex-direction:column;gap:12px;display:flex}.search-field{max-width:420px;display:block;position:relative}.search-field svg{color:var(--ink-2);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-field .field{height:44px;padding-left:42px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{max-width:100%;min-height:36px;font:600 13px/1.2 var(--sans);color:var(--on-bg-2);background:0 0;border:2px solid #4a4254;border-radius:999px;align-items:center;gap:7px;padding:6px 12px;display:inline-flex}.chip:hover{border-color:var(--on-bg-2);color:var(--on-bg)}.chip[aria-pressed=true]{border-color:var(--shell);background:var(--shell);color:var(--ink)}.chip-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chip-count{opacity:.75;font-size:12px;font-weight:500}.chip.add{border-style:dashed}.group-bar{flex-wrap:wrap;gap:4px 16px;display:flex}.shelf-none{padding:8px 0}.group-list{max-height:40dvh;overflow-y:auto}.new-group{gap:10px;display:flex}.new-group .field{height:44px}.new-group .btn{flex-shrink:0}.cover-edit{align-items:flex-start;gap:14px;display:flex}.cover-preview{aspect-ratio:1;background:var(--paper);border-radius:8px;flex-shrink:0;width:96px;overflow:hidden;box-shadow:inset 0 1px 3px #0003}.cover-preview .game-cover{border-radius:0;width:100%;height:100%;margin:0}.cover-preview .label-stripe{height:8px}.cover-edit .fine{overflow-wrap:anywhere}.cover-results{flex-direction:column;gap:4px;max-height:30dvh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.cover-result{width:100%;color:var(--ink);font:500 14px/1.3 var(--sans);text-align:left;background:0 0;border:2px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.cover-result:hover{background:#0000000d}.cover-result[aria-pressed=true]{border-color:var(--accent)}.cover-platform{color:var(--ink-2);flex-shrink:0;font-size:12px;font-weight:700}.shelf-empty{border:2px dashed #4a4254;border-radius:20px;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px 36px;padding:32px;display:flex}.shelf-empty .stack-sm{max-width:380px}.shelf-empty .px{color:var(--on-bg);font-size:12px}.shelf-empty svg{image-rendering:pixelated}.backdrop{z-index:50;background:#16131c9e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{width:min(460px,100%);max-height:calc(100dvh - 32px);box-shadow:inset 0 2px 0 var(--shell-hi), 0 5px 0 var(--shell-deep), 0 30px 60px #0000008c;border-radius:20px;flex-direction:column;gap:16px;padding:26px;display:flex;overflow-y:auto}.dialog h2{font-size:20px;font-weight:700}.dialog-foot{justify-content:flex-end;gap:10px;display:flex}.page-dim{min-height:100dvh}.card{background:var(--paper);color:var(--ink);box-shadow:inset 0 1px 0 #fff, 0 2px 0 var(--shell-shadow);border-radius:14px;padding:16px 18px}.signed-out-art{background:var(--lcd-dark);width:160px;height:auto;image-rendering:pixelated;border-radius:10px;display:block}.dialog.conflict{gap:22px;width:min(820px,100%);padding:30px 34px 28px}.dialog.conflict h2{font-size:25px}.eyebrow{color:var(--ink-2);align-items:center;gap:8px;font-size:10px;display:inline-flex}.eyebrow svg{color:var(--warn-ink)}.save-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.save-card{background:var(--paper);box-shadow:inset 0 1px 0 #fff, 0 3px 0 var(--shell-shadow);outline-offset:3px;border-radius:16px;outline:3px solid #0000;flex-direction:column;gap:14px;padding:20px;transition:outline-color 90ms steps(2,end);display:flex}.save-card.picked{outline-color:var(--accent)}.save-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.save-card-head h3{align-items:center;gap:10px;font-size:11px;display:flex}.save-card-head svg{color:var(--accent-2)}.tag{color:#1b4a46;background:#c6ddd9;border-radius:999px;padding:6px 8px;font-size:8px}.save-rows{margin:0}.save-rows div{border-bottom:1px dashed #cfc7b4;justify-content:space-between;gap:12px;padding:9px 0;font-size:14px;display:flex}.save-rows div:last-child{border-bottom:0}.save-rows dt{color:var(--ink-2)}.save-rows dd{text-align:right;margin:0;font-weight:600}.confirm-bar{background:var(--warn-bg);border-radius:14px;flex-direction:column;gap:14px;padding:18px 20px;display:flex;box-shadow:inset 0 2px 4px #0000001f}.confirm-bar>p{gap:10px;font-size:15px;display:flex}.confirm-bar>p svg{color:var(--warn-ink);flex-shrink:0;margin-top:1px}.confirm-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.note{gap:10px;font-size:14px;display:flex}.note svg{color:var(--accent-2);flex-shrink:0}.backdrop.side{background:#16131c80;place-items:stretch end;padding:0}.side-panel{width:min(540px,100vw);height:100dvh;box-shadow:inset 2px 0 0 var(--shell-hi), -20px 0 50px #00000080;border-radius:22px 0 0 22px;flex-direction:column;animation:.2s steps(4,end) both slide-in;display:flex}.side-panel:focus{outline:none}.side-head{justify-content:space-between;align-items:center;gap:12px;padding:24px 32px 12px;display:flex}.side-head h2{font-size:15px}.side-body{flex-direction:column;flex:1;gap:20px;padding:6px 32px 28px;display:flex;overflow-y:auto}.side-foot{padding:16px 32px max(20px, env(safe-area-inset-bottom));border-top:2px solid var(--shell-press);justify-content:space-between;gap:12px;display:flex}.notice{color:var(--ink);border-radius:12px;gap:10px;padding:12px 14px;font-size:14px;line-height:1.45;display:flex}.notice svg{flex-shrink:0;margin-top:1px}.notice.warn{background:var(--warn-bg)}.notice.warn svg{color:var(--warn-ink)}.notice.info{background:#dbe6e3}.notice.info svg{color:var(--accent-2)}.pad-diagram{aspect-ratio:456/200;width:100%;box-shadow:inset 0 3px 8px #0000002e, 0 1px 0 var(--shell-hi);background:#cfc9bb;border-radius:16px 16px 48px;flex-shrink:0;position:relative}.pad-well{background:#c3bdaf;border-radius:50%;width:26.3%;height:60%;position:absolute;top:17%;left:9.65%;box-shadow:inset 0 3px 6px #0003}.pad-hub{background:#3a3440;width:6.14%;height:14%;position:absolute;top:40%;left:19.74%}.hw{background:#3a3440;border:0;padding:0;transition:transform 60ms steps(2,end);position:absolute;box-shadow:inset 0 2px #ffffff24,0 3px #1f1b24}.hw:active{transform:translateY(2px)}.hw-round{background:#9e2b47;border-radius:50%;box-shadow:inset 0 3px #ffffff38,0 4px #5f1629}.hw-pill{background:#7d776b;border-radius:999px;transform:rotate(-25deg);box-shadow:inset 0 2px #fff3,0 2px #55504a}.hw-pill:active{transform:rotate(-25deg)translateY(2px)}.hw-shoulder{background:#7d776b;border-radius:8px 8px 3px 3px;box-shadow:inset 0 2px #fff3,0 2px #55504a}.hw.pressed{filter:brightness(1.45);transform:translateY(2px)}.hw-pill.pressed{transform:rotate(-25deg)translateY(2px)}.hw.listen{outline:3px solid var(--accent);outline-offset:4px;animation:.7s steps(2,end) infinite ring}@keyframes ring{50%{outline-color:#0000}}.hw-label{font:9px var(--pixel);color:var(--ink-2);pointer-events:none;position:absolute}.hw-label.small{font-size:7px}.bind-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.bind{text-align:left;width:100%;min-height:52px;font:600 14px var(--sans);color:var(--ink);background:var(--paper);box-shadow:inset 0 1px 0 #fff, 0 2px 0 var(--shell-shadow);border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px 8px 14px;display:flex}.bind.listening{box-shadow:0 0 0 3px var(--accent), 0 2px 0 var(--shell-shadow)}.bind.unbound{background:var(--warn-bg)}.bind-name{align-items:center;gap:8px;display:flex}.bind-name svg{color:var(--warn-ink)}.bind-keys{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.h-lg{font-size:20px;font-weight:700}.h-section{color:var(--ink-2);font-size:10px}.ticks{flex-direction:column;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.ticks li{align-items:center;gap:10px;display:flex}.ticks svg{color:var(--accent-2)}.who{align-items:center;gap:14px;display:flex}.avatar{width:44px;height:44px;color:var(--lcd-dark);background:var(--lcd-light);box-shadow:inset 0 2px 4px #0000004d, 0 0 0 3px var(--lcd-dark);border-radius:8px;flex-shrink:0;place-items:center;font-size:14px;display:grid}.who-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.who-text strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.who-text small{color:var(--ink-2);font-size:13px}.status-line{color:var(--ink);flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}.save-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.save-row{flex-direction:column;gap:10px;padding:12px 12px 12px 14px;display:flex}.save-row-main{align-items:center;gap:10px;display:flex}.save-row-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.save-row-text strong{overflow-wrap:anywhere;font-size:15px}.save-row-text small{color:var(--ink-2);font-size:13px}.mini-cart{background:linear-gradient(var(--shell-shadow) 0 0) 5px 5px / 20px 4px no-repeat, linear-gradient(var(--paper) 0 0) 5px 13px / 20px 18px no-repeat, #e6e1d5;width:30px;height:36px;box-shadow:0 2px 0 var(--shell-deep), inset 0 1px 0 #fff;border-radius:3px 9px 4px 4px;flex-shrink:0}.confirm-inline{background:var(--warn-bg);border-radius:10px;flex-direction:column;gap:10px;padding:12px;font-size:14px;display:flex}.settings{padding:4px 16px}.dialog.gallery{gap:14px;width:min(760px,100%)}.gallery-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.gallery-head h2{overflow-wrap:anywhere}.gallery-warn{color:var(--warn-ink)}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.shot-card{background:var(--paper);color:var(--ink);box-shadow:inset 0 1px 0 #fff, 0 2px 0 var(--shell-shadow);border-radius:14px;flex-direction:column;gap:10px;padding:10px;display:flex}.shot-card.current{box-shadow:inset 0 0 0 3px var(--accent-2), 0 2px 0 var(--shell-shadow)}.shot{aspect-ratio:10/9;object-fit:contain;width:100%;image-rendering:pixelated;image-rendering:crisp-edges;background:var(--lcd-dark);border-radius:6px;display:block}.shot-empty{background:var(--lcd-light);color:var(--lcd-dark);place-items:center;font-size:13px;display:grid}.shot-meta{flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:14px;display:flex}.shot-meta small{color:var(--ink-2);flex-basis:100%;font-size:13px}.shot-actions{flex-wrap:nowrap}.grow{overflow-wrap:anywhere;flex:1;min-width:0}.friend-code-sm{letter-spacing:.06em;-webkit-user-select:all;user-select:all;font-size:11px}.dialog.invite{width:min(460px,100%)}.invite-art{width:min(224px,100%);margin:0 auto}.add-friend{flex-wrap:nowrap}.add-friend .field{text-transform:uppercase}.board{flex-direction:column;gap:4px;display:flex}.board h4{margin:4px 0 0;font-weight:600}.board-list{margin:0;padding:0;list-style:none}.board-list li{border-bottom:1px dashed #cfc7b4;align-items:center;gap:10px;padding:8px 0;font-size:14px;display:flex}.board-list li:last-child{border-bottom:0}.board-list li.me{font-weight:700}.board-rank{width:22px;color:var(--ink-2);font-size:10px}.board-list li:first-child .board-rank{color:var(--accent)}.board-value{font-variant-numeric:tabular-nums;font-weight:600}.setting{cursor:pointer;border-bottom:1px dashed #cfc7b4;align-items:center;gap:14px;padding:14px 0;display:flex}.setting:last-child{border-bottom:0}.setting>span{flex-direction:column;flex:1;gap:3px;display:flex}.setting strong{font-size:15px}.setting small{color:var(--ink-2);font-size:13px;line-height:1.4}.disclosure summary{cursor:pointer;flex-direction:column;gap:4px;list-style:none;display:flex}.disclosure summary::-webkit-details-marker{display:none}.disclosure summary .px{font-size:10px}.disclosure summary small{color:var(--ink-2);font-size:13px}.disclosure[open] summary{margin-bottom:12px}.disclosure .row .field{flex:1;min-width:180px;height:44px}.key{overflow-wrap:anywhere;background:#fbf8ef;border-radius:8px;flex:1;min-width:0;padding:10px;font-size:12px;box-shadow:inset 0 1px 3px #00000026}.game{height:100dvh;min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(32px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(32px, env(safe-area-inset-left));flex-direction:column;align-items:center;gap:14px;display:flex}.game-bar{align-items:center;gap:16px;width:100%;max-width:1100px;min-height:44px;display:flex}.game-bar-title{min-width:0;color:var(--on-bg-2);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;overflow:hidden}.game-bar-end{align-items:center;gap:14px;display:flex}.menu-btn{display:none}.stage{--chrome-x:150px;--chrome-y:178px;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.shell{box-shadow:inset 0 2px 0 var(--shell-hi), inset 0 -4px 0 #c3bdaf, 0 6px 0 var(--shell-deep), 0 28px 50px #00000080;border-radius:18px 18px 64px;flex-direction:column;gap:12px;padding:14px 28px 16px;display:flex}.shell-top{gap:10px;width:140px;display:flex}.bezel{background-color:var(--lcd-dark);background-image:radial-gradient(#a7b39a17 .7px,#0000 1px);background-size:3px 3px;border-radius:12px 12px 40px;padding:18px 42px 20px;position:relative;box-shadow:inset 0 3px 8px #0009,0 1px #ffffff8c}.power{color:var(--lcd-light);flex-direction:column;align-items:center;gap:8px;font-size:6px;display:flex;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.power[data-on=false] .led{box-shadow:none;background:#5a3038}.lcd{line-height:0;position:relative;box-shadow:0 0 0 2px #1c2419}.lcd canvas{width:calc(var(--lcd-w,160) * 1px * var(--scale,3));height:calc(var(--lcd-h,144) * 1px * var(--scale,3));image-rendering:pixelated;image-rendering:crisp-edges;background:var(--lcd-light);display:block}.lcd-overlay{text-align:center;color:var(--lcd-dark);background:#a7b39ac7;border:0;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:16px;line-height:1.5;display:flex;position:absolute;inset:0}.lcd-overlay span{font-size:clamp(14px, calc(7px * var(--scale,3)), 22px)}.pause-art{flex-shrink:1;width:min(170px,62%)}.lcd-motion-overlay,.lcd .motion-cue{z-index:5;color:var(--lcd-light);text-align:center;pointer-events:none;background:#16131ce0;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:12px;line-height:1.4;display:flex;position:absolute;inset:0}.lcd-motion-overlay .motion-art,.lcd .motion-cue .motion-art{width:min(280px,68%)}.lcd-motion-overlay .px,.lcd .motion-cue .px{font-size:clamp(9px,2vw,13px)}.lcd .motion-cue{z-index:6}.waiting-art{flex-shrink:0;width:min(180px,70%)}.lcd canvas.link-screen{position:absolute;inset:0}.lcd canvas.link-screen[hidden]{display:none}.link-note{text-align:center;max-width:520px;color:var(--on-bg-2);margin:8px auto 0;padding:0 16px;font-size:13px}.lcd-overlay small{font-size:9px}.error-overlay small{font:600 13px var(--sans)}.shell-foot{justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 6px 0 4px;display:flex}.shell-title{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.speaker{gap:9px;padding-right:10px;display:flex}.speaker span{background:var(--shell-shadow);border-radius:3px;width:6px;height:40px;transform:rotate(-30deg);box-shadow:inset 0 2px 2px #00000059}.toolbar-wrap{position:relative}.toolbar{box-shadow:inset 0 2px 0 var(--shell-hi), 0 4px 0 var(--shell-deep), 0 12px 24px #0006;transition:opacity .3s var(--step);border-radius:16px;align-items:center;gap:8px;padding:9px 12px 11px;display:flex}.game.idle .toolbar{opacity:.22}.game.idle .game-bar-end,.game.idle .keys-hint{opacity:.4;transition:opacity .3s var(--step)}.toolbar:hover,.toolbar:focus-within{opacity:1!important}.sep{background:var(--shell-shadow);width:2px;height:28px;box-shadow:1px 0 0 var(--shell-hi);margin:0 4px}.reset-confirm{box-shadow:inset 0 2px 0 var(--shell-hi), 0 4px 0 var(--shell-deep), 0 18px 32px #00000080;border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex}.reset-confirm.popover{z-index:20;width:330px;position:absolute;bottom:calc(100% + 16px);left:40px}.reset-confirm h2{font-size:16px;font-weight:700}.reset-confirm p{color:var(--ink-2);font-size:14px}.keys-hint{color:var(--on-bg-2);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.keys-hint kbd{min-width:0;padding:4px 6px 3px;font-size:8px}@media (not (pointer:coarse)) and (width>=641px){.game:fullscreen{background:#000;padding:0;position:relative}.game:fullscreen .stage{--chrome-x:0px;--chrome-y:0px;position:absolute;inset:0}.game:fullscreen .shell{box-shadow:none;background:0 0;border-radius:0;gap:0;padding:0}:is(.game:fullscreen .shell-top,.game:fullscreen .shell-foot,.game:fullscreen .power,.game:fullscreen .keys-hint){display:none}.game:fullscreen .bezel{box-shadow:none;background:0 0;border-radius:0;padding:0}.game:fullscreen .lcd{box-shadow:none}.game:fullscreen .game-bar{z-index:2;padding:0 16px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.game:fullscreen .toolbar-wrap{z-index:2;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.game.idle:fullscreen .game-bar{opacity:0;transition:opacity .3s var(--step)}.game.idle:fullscreen .toolbar{opacity:0}}.sheet-backdrop{place-items:end stretch;padding:0}.sheet{width:100%;max-height:100dvh;padding:8px 20px max(22px, env(safe-area-inset-bottom));border-radius:22px 22px 0 0;flex-direction:column;gap:12px;animation:.2s steps(4,end) both slide-up;display:flex;overflow-y:auto;box-shadow:0 -10px 30px #00000073}.sheet .side-head{padding:8px 0 0}.tiles{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;display:grid}.tile{min-height:78px;font:600 13px var(--sans);color:var(--ink);background:var(--paper);box-shadow:inset 0 1px 0 #fff, 0 3px 0 var(--shell-shadow);border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.tile:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 2px 4px #00000026}.tile:disabled{opacity:.5}.sheet-rows{flex-wrap:wrap;gap:10px;display:flex}.sheet-row{background:var(--paper);cursor:pointer;border-radius:12px;flex:240px;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:0 14px;font-size:13px;font-weight:600;display:flex}.sheet-row .volume{flex:1;max-width:220px}.touch-controls{display:none}.touch-controls,.touch-controls *{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.dpad{aspect-ratio:1;width:min(150px,38vw);position:relative}.dpad:before{content:"";position:absolute;inset:-20px -24px -12px}.dpad-well{background:#c3bdaf;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 3px 7px #00000038}.dpad-arm,.dpad-hub{background:#3a3440;width:33.34%;height:33.34%;position:absolute}.dpad-arm{box-shadow:inset 0 2px #ffffff24,0 4px #1f1b24}.dpad-arm.up{border-radius:8px 8px 0 0;top:4%;left:33.33%}.dpad-arm.down{border-radius:0 0 8px 8px;top:62.67%;left:33.33%}.dpad-arm.left{border-radius:8px 0 0 8px;top:33.33%;left:4%}.dpad-arm.right{border-radius:0 8px 8px 0;top:33.33%;left:62.67%}.dpad-arm.on{background:var(--ink);transform:translateY(3px);box-shadow:inset 0 2px 4px #00000080,0 1px #1f1b24}.dpad-hub{top:33.33%;left:33.33%}.face-buttons{aspect-ratio:170/150;width:min(170px,44vw);position:relative}.menu-buttons{justify-content:center;gap:12px;display:flex}.touch-btn-wrap{font:8px var(--pixel);color:var(--ink-2);flex-direction:column;align-items:center;gap:8px;display:flex}.touch-btn-wrap.round{position:absolute}.touch-btn-wrap.b{top:33%;left:0}.touch-btn-wrap.a{top:5%;right:0}.touch-btn{border:0;padding:0}.round .touch-btn{background:#9e2b47;border-radius:50%;width:min(72px,18.5vw);height:min(72px,18.5vw);box-shadow:inset 0 3px #ffffff38,0 5px #5f1629,0 7px 10px #00000040}.round .touch-btn.pressed{background:#86223b;transform:translateY(4px);box-shadow:inset 0 3px 5px #00000059,0 1px #5f1629}.touch-btn-wrap.pill{justify-content:center;gap:22px;min-width:76px;min-height:56px}.pill .touch-btn{outline-offset:0;background:#7d776b;border-radius:999px;outline:20px solid #0000;width:56px;height:16px;transform:rotate(-25deg);box-shadow:inset 0 2px #fff3,0 3px #55504a}.pill .touch-btn.pressed{background:#5f5a50;transform:rotate(-25deg)translateY(2px);box-shadow:inset 0 2px 3px #00000059}.face-buttons.diamond{aspect-ratio:1}.diamond .round .touch-btn,.trio .round .touch-btn{width:min(56px,14vw);height:min(56px,14vw)}.diamond .touch-btn-wrap.x{top:0;left:50%;transform:translate(-50%)}.diamond .touch-btn-wrap.y{top:30%;left:0}.diamond .touch-btn-wrap.a{top:30%;right:0}.diamond .touch-btn-wrap.b{top:auto;bottom:0;left:50%;transform:translate(-50%)}.trio .touch-btn-wrap.a{top:45%;left:0;right:auto}.trio .touch-btn-wrap.b{top:22%;left:50%;transform:translate(-50%)}.trio .touch-btn-wrap.c{top:0;right:0}.shoulder-buttons{justify-content:space-between;gap:12px;display:flex}.shoulder .touch-btn{outline-offset:0;background:#7d776b;border-radius:12px 12px 4px 4px;outline:14px solid #0000;width:76px;height:22px;box-shadow:inset 0 2px #fff3,0 3px #55504a}.shoulder .touch-btn.pressed{background:#5f5a50;transform:translateY(2px);box-shadow:inset 0 2px 3px #00000059}.grille{place-self:end;gap:10px;display:flex}.grille span{background:var(--shell-shadow);border-radius:3px;width:6px;height:44px;transform:rotate(-30deg);box-shadow:inset 0 2px 2px #00000059}@media (width<=860px){.page{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));gap:22px}.insert{grid-template-columns:1fr;gap:20px;padding:18px}.slot{min-height:180px}.save-cards{grid-template-columns:1fr}.dialog.conflict{padding:22px 18px}}@media (width<=520px){.hide-narrow{display:none}.picker .page-head{flex-wrap:wrap}.picker .head-actions{margin-left:auto}.page-head .brand-mascot{width:32px;height:32px}.cart-body{padding:20px 20px 18px}.paper-label{margin:12px 16px 0}.cart-grip{padding:14px 60px 0 20px}.bind-list{grid-template-columns:1fr}.side-head{padding:18px 20px 10px}.side-body{padding:6px 20px 24px}.side-foot{padding-left:20px;padding-right:20px}}@media (pointer:coarse),(width<=640px){body:has(.game){background:var(--shell)}.game{color:var(--ink);padding:max(10px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background-color:var(--shell);background-image:radial-gradient(#463c3214 .6px,#0000 .9px),radial-gradient(#ffffff4d .6px,#0000 .9px);background-size:3px 3px,5px 5px;align-items:stretch;gap:8px;position:relative;overflow:hidden}.game .wordmark{color:var(--ink);font-size:9px}.game-bar-title,.eject,.toolbar-wrap,.keys-hint{display:none}.menu-btn{display:inline-flex}.game-bar{justify-content:space-between}.game-bar-end{gap:10px}.game.idle .game-bar-end{opacity:1}.badge-button{font-size:8px}.game-bar{padding:0 8px}.stage{--chrome-x:8px;--chrome-y:30px;flex:0 auto;align-self:center;width:96vw;height:min(56dvh,86.4vw + 30px)}.shell{box-shadow:none;background:0 0;border-radius:0;gap:0;padding:0}.shell-top,.shell-foot{display:none}.bezel{border-radius:10px 10px 30px;padding:8px 4px 22px}.power{flex-direction:row;gap:6px;top:auto;bottom:5px;left:10px;transform:none}.power .led{width:7px;height:7px}.touch-controls{flex:1 0 auto;grid-template-columns:1fr auto;grid-template-areas:"dpad face""menu menu";align-content:center;row-gap:18px;padding:8px 4px 0;display:grid}.touch-controls.has-shoulders{grid-template-areas:"shoulder shoulder""dpad face""menu menu"}.shoulder-buttons{grid-area:shoulder}.dpad{grid-area:dpad}.face-buttons{grid-area:face}.menu-buttons{grid-area:menu}.grille{right:max(18px, env(safe-area-inset-right));bottom:max(8px, env(safe-area-inset-bottom));pointer-events:none;position:absolute}}@media (width<=359px){.grille{display:none}}@media (pointer:coarse) and (orientation:landscape) and (height<=520px){.game{background:#000}.stage{inset:0 env(safe-area-inset-right) 0 env(safe-area-inset-left);--chrome-x:0px;--chrome-y:0px;align-self:stretch;width:auto;height:auto;margin:0;position:absolute}.bezel{box-shadow:none;background:0 0;border-radius:0;padding:0}.power,.game .brand{display:none}.game-bar{z-index:2;top:max(6px, env(safe-area-inset-top));opacity:.45;width:auto;min-height:40px;position:absolute;left:50%;transform:translate(-50%)}.touch-controls{z-index:1;pointer-events:none;display:block;position:absolute;inset:0}.touch-controls>*{pointer-events:auto;opacity:.35}.dpad{left:max(28px, env(safe-area-inset-left));width:min(150px,38vh);position:absolute;top:50%;transform:translateY(-50%)}.face-buttons{right:max(28px, env(safe-area-inset-right));width:min(170px,44vh);position:absolute;top:50%;transform:translateY(-50%)}.round .touch-btn{width:min(72px,18.5vh);height:min(72px,18.5vh)}.menu-buttons{left:50%;bottom:max(4px, env(safe-area-inset-bottom));position:absolute;transform:translate(-50%)}.shoulder-buttons{top:max(10px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));pointer-events:none;justify-content:flex-start;position:absolute}.shoulder-buttons>*{pointer-events:auto}.shoulder.r2,.shoulder.l+.shoulder.r{margin-left:auto}.grille,.touch-controls.pad-hidden{display:none}.game:has(.touch-controls.pad-hidden) .menu-btn{display:none}.game:has(.touch-controls.pad-hidden) .game-bar{left:auto;right:max(10px, env(safe-area-inset-right));padding:0;transform:none}}
