:root{color:#1f2623;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fbfbf7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#fbfbf7;min-width:320px;height:100%;overflow:hidden}body{min-width:320px;height:100%;margin:0;overflow:hidden}#root{height:100%;overflow:hidden}button,input{letter-spacing:0}button:focus-visible,input:focus-visible,.nes-canvas:focus-visible{outline-offset:2px;outline:2px solid #d8a12f}.app-shell{color:#edf8ff;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:linear-gradient(155deg,#006cd2b3,#031f6026 42%,#030a2494),linear-gradient(#0786e8 0%,#0759be 46%,#02347c 100%);width:100vw;height:100svh;overflow:hidden}.app-shell *,.game-overlay *,.player-section *,.nes-canvas,.gameboy-iframe,.amiga-iframe,.arcade-iframe{-webkit-tap-highlight-color:transparent}.game-overlay,.game-overlay *,.player-section,.player-section *,.nes-canvas,.gameboy-iframe,.amiga-iframe,.arcade-iframe{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.auth-panel,.auth-panel *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.app-shell:before,.app-shell:after{pointer-events:none;content:"";height:42svh;position:fixed;inset:auto -10vw -16svh}.app-shell:before{background:linear-gradient(165deg,#0000 0 16%,#ffffff38 17% 19%,#0000 20%),linear-gradient(154deg,#0000 0 36%,#86d4ff3d 37% 43%,#0000 44%),linear-gradient(148deg,#0000 0 52%,#ffffff29 53% 56%,#0000 57%);transform:skewY(-7deg)}.app-shell:after{background:linear-gradient(170deg,#0000 0 28%,#00114e3d 29% 39%,#0000 40%),linear-gradient(160deg,#0000 0 57%,#fff3 58% 61%,#0000 62%);transform:skewY(-10deg)}.main-stage{z-index:1;text-shadow:0 1px 2px #000f30a6;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.console-topbar{color:#eff8ffeb;flex:none;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;height:54px;padding:0 clamp(18px,3vw,36px);font-size:14px;display:grid}.console-topbar>span{justify-self:start}.top-actions{justify-self:end;align-items:center;gap:10px;display:inline-flex}.top-actions span{text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:12px;font-weight:900;overflow:hidden}.top-actions .auth-placeholder{opacity:.52;text-align:center;width:46px}.top-actions button{color:#eff9ff;cursor:pointer;min-height:28px;font:inherit;background:#00174a42;border:1px solid #ffffff38;border-radius:999px;padding:0 10px;font-size:11px;font-weight:900}.top-actions time{font-variant-numeric:tabular-nums}.status-pill{color:#eff9ff;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00174a42;border:1px solid #ffffff38;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-width:104px;height:30px;font-size:12px;font-weight:800;display:inline-flex}.status-running{background:#0f955c6b}.status-paused{background:#e5a31e6b}.status-error{background:#d3342b7a}.system-dock{flex:none;justify-content:center;align-items:center;gap:clamp(24px,4.4vw,70px);height:150px;padding:0 20px;display:flex}.system-node{--system-accent:#e60012;color:#edf8ffcc;cursor:pointer;width:148px;height:124px;font:inherit;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;gap:4px;font-size:11px;font-weight:700;transition:color .16s,transform .16s,background .16s,box-shadow .16s;display:grid;transform:translateY(0)}.system-node img{filter:drop-shadow(0 8px 12px #000d2a61)}.system-icon-art{object-fit:contain;border-radius:7px;width:136px;height:104px}.system-icon-art-menu{object-fit:contain;opacity:.94;border-radius:0;width:58px;height:58px}.favorite-system-node{color:#fff1ae}.news-system-node{color:#d9fffb}.system-node-placeholder{pointer-events:none;visibility:hidden}.system-node>span{clip:rect(0 0 0 0);text-overflow:ellipsis;white-space:nowrap;border:0;width:1px;max-width:100%;height:1px;margin:-1px;padding:0;font-size:10px;position:absolute;overflow:hidden}.system-node[aria-selected=true]{border-color:color-mix(in srgb, var(--system-accent) 58%, #ffffff5c);background:linear-gradient(180deg, color-mix(in srgb, var(--system-accent) 34%, #ffffff2e), #030e2abd), var(--system-accent);color:#fff;box-shadow:0 12px 28px #00124047, inset 0 -6px 14px color-mix(in srgb, var(--system-accent) 24%, transparent);transform:translateY(10px)scale(1.06)}.system-node:disabled{cursor:not-allowed;opacity:.36}.console-layout{flex:auto;grid-template-columns:minmax(150px,220px) minmax(300px,35vw) minmax(0,1fr);align-items:center;gap:clamp(18px,3vw,42px);min-height:0;padding:clamp(10px,2vw,28px) clamp(18px,4vw,56px) 10px;display:grid}.cover-stage{justify-items:start;gap:12px;min-width:0;display:grid}.cover-case{--system-accent:#e60012;aspect-ratio:5/7;background:linear-gradient(180deg, #05091814, #050918bd), linear-gradient(135deg, color-mix(in srgb, var(--system-accent) 84%, #fff 16%), #ef5d3db8 48%, #1f2236f5 49%), #10192e;color:#fff6d6;border:2px solid #ffffffb8;align-content:space-between;width:min(100%,190px);padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 42px #000d346b}.cover-system-art{object-fit:cover;opacity:1;width:100%;height:100%;position:absolute;inset:0}.cover-case:after{content:"";background:linear-gradient(#0000 38%,#040818db);position:absolute;inset:0}.cover-case>:not(.cover-system-art){z-index:1;position:relative}.cover-case strong,.cover-case small{display:none}.cover-case strong{overflow-wrap:anywhere;color:#fff;text-transform:uppercase;max-width:100%;font-size:clamp(20px,2vw,30px);line-height:1.02}.cover-case small,.cover-system,.game-version{letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800}.cover-system{color:#083987;width:fit-content;text-shadow:none;background:#ffffffe6;margin:14px;padding:4px 6px}.game-version{color:#edf8ffd6;justify-content:space-between;gap:10px;width:min(100%,190px);display:flex}.library-panel{flex-direction:column;justify-content:center;align-self:stretch;min-width:0;display:flex;overflow:hidden}.console-list-header{color:#edf8ffe6;justify-content:space-between;align-items:center;gap:12px;height:34px;padding-left:38px;font-size:13px;display:flex}.console-list-header span{font-weight:800}.console-list-header small{font-variant-numeric:tabular-nums;opacity:.78;font-size:12px}.game-list{grid-template-rows:repeat(8,minmax(0,1fr));height:min(52svh,376px);min-height:272px;display:grid;overflow:hidden}.game-row{color:#edf8ffc7;cursor:pointer;min-width:0;font:inherit;text-align:left;text-shadow:inherit;background:0 0;border:0;border-radius:0;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.game-row[aria-selected=true]{color:#fff;transform:translate(10px)}.game-row[aria-selected=true] .disc-icon{background:#fffffff2;box-shadow:0 0 0 3px #ffffff38}.game-row[aria-selected=true] .game-title{font-size:18px;font-weight:800}.disc-icon{background:linear-gradient(90deg,#0000 0 5px,#ffffff61 6px 7px,#0000 8px),#07327c85;border:1px solid #ffffffc7;border-radius:2px;width:20px;height:15px}.disc-icon.is-favorite{background:linear-gradient(135deg,#0000 0 36%,#ffffff73 37% 45%,#0000 46%),#ffd35a;border-color:#ffe78bf0;box-shadow:0 0 12px #ffd35a47}.game-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;transition:font-size .16s;overflow:hidden}.game-row small{color:#e0f5ff94;text-overflow:ellipsis;white-space:nowrap;max-width:110px;font-size:11px;overflow:hidden}.preview-panel{flex-direction:column;justify-content:center;align-self:stretch;gap:10px;min-width:0;min-height:0;display:flex;overflow:hidden}.preview-screen{aspect-ratio:16/9;background:linear-gradient(135deg,#ffffff2e,#0000 36%),linear-gradient(#020c2840,#01081cdb),#05070f;border:1px solid #ffffff38;border-radius:8px;align-content:end;gap:6px;width:100%;padding:clamp(14px,2.4vw,28px);display:grid;position:relative;overflow:hidden;box-shadow:0 22px 48px #000d3057}.preview-screen:after{content:"";background:radial-gradient(circle at 72% 18%,#ffffff14,#0000 24%),linear-gradient(#0000 58%,#01081ce0);position:absolute;inset:0}.preview-system-art{object-fit:contain;opacity:1;width:100%;height:100%;position:absolute;inset:0;transform:none}.preview-system-logo{z-index:1;object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 16px #00081e6b);width:min(28%,164px);max-height:46px;position:relative}.preview-screen span{z-index:1;color:#083987;width:fit-content;text-shadow:none;background:#ffffffe6;border-radius:4px;padding:4px 6px;font-size:11px;font-weight:900;position:relative}.preview-screen strong{z-index:1;overflow-wrap:anywhere;color:#fff;max-width:100%;font-size:clamp(22px,2.4vw,34px);line-height:1.02;position:relative}.preview-screen small{z-index:1;color:#edf8ffad;font-size:12px;font-weight:800;position:relative}.launch-button{color:#0759be;cursor:pointer;width:fit-content;min-height:42px;font:inherit;text-shadow:none;background:#ffffffeb;border:1px solid #ffffff47;border-radius:999px;padding:0 18px;font-size:13px;font-weight:900}.launch-button:disabled,.favorite-toggle:disabled{cursor:not-allowed;opacity:.45}.preview-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.favorite-toggle{color:#edf8ffe0;cursor:pointer;width:fit-content;min-height:42px;font:inherit;text-shadow:inherit;background:#0412347a;border:1px solid #ffffff3d;border-radius:999px;align-items:center;gap:8px;padding:0 15px;font-size:12px;font-weight:900;display:inline-flex}.favorite-toggle.is-favorite{color:#fff2b8;background:#ffd35a33;border-color:#ffe17b9e}.favorites-empty-state,.preview-empty-favorites,.empty-favorites-card{color:#edf8ffd1;text-align:center;align-content:center;place-items:center;gap:10px;min-width:0;min-height:0;display:grid}.favorites-empty-state{height:100%;padding:24px}.favorites-empty-state strong,.preview-empty-favorites strong,.empty-favorites-card strong{color:#fff;font-size:16px}.favorites-empty-state span,.preview-empty-favorites small{color:#edf8ff9e;max-width:280px;font-size:12px;font-weight:800}.preview-empty-favorites{z-index:1;width:100%;height:100%;position:relative}.empty-favorites-card{z-index:1;background:linear-gradient(#ffd35a47,#050c20c2);width:100%;height:100%;padding:18px;position:relative}.player-section{flex-direction:column;flex:auto;justify-content:center;min-width:0;min-height:0;display:flex}.player-topline{justify-content:space-between;align-items:end;gap:12px;min-height:48px;margin-bottom:10px;display:flex}.system-label{color:#cdeeff;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:900}h1{color:#fff;margin:0;font-size:clamp(24px,3vw,40px);line-height:1.02}.runtime-status{color:#edf8ffd6;background:#00144647;border:1px solid #ffffff38;border-radius:999px;flex:none;padding:7px 10px;font-size:11px;font-weight:800}.screen-frame{background:#040d20b8;border:1px solid #fff3;border-radius:8px;place-items:center;min-height:0;display:grid;overflow:hidden;box-shadow:0 22px 48px #000d3061}.screen-bezel{place-items:center;width:100%;height:100%;min-height:0;padding:clamp(8px,1.5vw,16px);display:grid}.screen-content{aspect-ratio:256/240;place-items:center;width:min(100%,57.6svh);max-height:54svh;margin:0 auto;display:grid;position:relative}.nes-canvas{width:100%;height:100%;image-rendering:pixelated;touch-action:none;background:#020403;border-radius:5px;outline:none}.gameboy-screen-content,.amiga-screen-content,.arcade-screen-content{aspect-ratio:4/3;place-items:center;width:min(100%,72svh);min-height:0;max-height:54svh;margin:0 auto;display:grid;position:relative}.gameboy-screen-content{aspect-ratio:10/9;width:min(100%,60svh)}.gameboy-iframe,.amiga-iframe,.arcade-iframe{touch-action:none;background:#050605;border:0;border-radius:5px;width:100%;height:100%}.shortcut-panel{z-index:1;color:#fff8d9;touch-action:none;-webkit-user-select:none;user-select:none;background:#020712b8;border:1px solid #c8efff33;border-radius:6px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.shortcut-left{left:clamp(6px,1.5vw,14px)}.shortcut-right{right:clamp(6px,1.5vw,14px)}.shortcut-panel span{color:#ffe08a;letter-spacing:0;text-align:center;grid-column:1/-1;font-size:10px;font-weight:900}.touch-cluster{gap:6px;padding:9px}.touch-button{color:#fff;cursor:pointer;min-width:0;min-height:0;font:inherit;-webkit-tap-highlight-color:transparent;background:#ffffff1f;border:1px solid #fff8d93d;border-radius:50%;place-items:center;font-size:13px;font-weight:900;line-height:1;display:grid}.touch-button:active{color:#071532;background:#f2d77a;transform:translateY(1px)}.dpad-cluster{grid-template-rows:auto repeat(3,clamp(28px,3.3vw,40px));grid-template-columns:repeat(3,clamp(28px,3.3vw,40px))}.dpad-up{grid-area:2/2}.dpad-left{grid-area:3/1}.dpad-right{grid-area:3/3}.dpad-down{grid-area:4/2}.action-cluster{grid-template-rows:auto repeat(2,clamp(38px,4.2vw,52px)) clamp(28px,3.2vw,34px);grid-template-columns:repeat(2,clamp(38px,4.2vw,52px))}.action-a,.action-b{font-size:15px}.action-b{grid-area:3/1}.action-a{grid-area:2/2}.system-select,.system-start{border-radius:999px;font-size:9px}.system-select{grid-area:4/1}.system-start{grid-area:4/2}.start-overlay{z-index:2;color:#fff8d9;cursor:pointer;font:inherit;background:#010818b8;border:0;border-radius:5px;place-items:center;gap:8px;font-size:16px;font-weight:900;display:grid;position:absolute;inset:0}.start-overlay svg,.start-overlay span{grid-column:1}.player-toolbar{flex-wrap:wrap;flex:none;gap:7px;margin-top:10px;display:flex}.player-toolbar button{color:#fff;cursor:pointer;min-height:34px;font:inherit;background:#ffffff21;border:1px solid #fff3;border-radius:6px;align-items:center;gap:7px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.player-toolbar button:disabled{cursor:not-allowed;opacity:.46}.metadata-strip{flex-wrap:wrap;flex:none;gap:7px;min-height:30px;display:flex}.metadata-strip span{color:#edf8ffdb;background:#ffffff21;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:800}.empty-system{border:1px dashed #ffffff3d;border-radius:8px;min-height:240px}.game-overlay{z-index:20;color:#edf8ff;touch-action:none;background:linear-gradient(#070f25f5,#01040dfa),#05070f;flex-direction:column;height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.auth-overlay{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#010616b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.auth-panel{background:#071538f5;border:1px solid #ffffff2e;border-radius:8px;gap:12px;width:min(100%,360px);padding:20px;display:grid;box-shadow:0 20px 60px #00000061}.auth-panel strong{color:#fff;font-size:20px}.auth-panel label{color:#edf8ffbd;gap:6px;font-size:12px;font-weight:900;display:grid}.auth-panel input{color:#fff;min-height:40px;font:inherit;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:6px;padding:0 11px}.auth-panel p{color:#ffd2c8;margin:0;font-size:12px;font-weight:800}.auth-actions{flex-wrap:wrap;gap:8px;display:flex}.auth-actions button{color:#fff;cursor:pointer;min-height:36px;font:inherit;background:#ffffff24;border:1px solid #ffffff38;border-radius:999px;padding:0 12px;font-size:12px;font-weight:900}.auth-actions button[type=submit]{color:#0759be;text-shadow:none;background:#ffffffeb}.game-topbar{border-bottom:1px solid #ffffff1a;flex:none;justify-content:space-between;align-items:center;gap:16px;height:54px;padding:0 clamp(14px,2.5vw,32px);display:flex}.game-topbar span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:900;overflow:hidden}.game-topbar button,.game-side-panel button{color:#fff;cursor:pointer;min-height:36px;font:inherit;background:#ffffff1f;border:1px solid #ffffff38;border-radius:999px;font-size:12px;font-weight:900}.game-topbar button{padding:0 14px}.game-room{flex:auto;grid-template-columns:minmax(116px,13vw) minmax(0,1fr) minmax(116px,13vw);align-items:stretch;gap:clamp(10px,2vw,24px);min-height:0;padding:clamp(10px,2vw,24px);display:grid;position:relative}.game-viewport{touch-action:none;place-items:center;min-width:0;min-height:0;display:grid;overflow:hidden}.game-viewport .player-section{width:100%;height:100%}.game-viewport .player-topline,.game-viewport .shortcut-panel{display:none}.game-viewport .screen-frame{width:100%;box-shadow:none;background:#000;border-color:#ffffff1f;flex:auto}.game-viewport .screen-bezel{padding:0}.game-viewport .screen-content{width:min(100%,106.667svh - 51.2px);max-height:calc(100svh - 48px)}.game-viewport .amiga-screen-content,.game-viewport .arcade-screen-content{width:min(100%,133.333svh - 64px);max-height:calc(100svh - 48px)}.game-viewport .player-toolbar{display:none}.game-side-panel{background:#ffffff0d;border:1px solid #ffffff1a;align-content:center;align-self:stretch;justify-items:center;gap:9px;min-width:0;padding:12px;display:grid}.game-side-panel strong{color:#ffe08a;font-size:12px;font-weight:900}.game-side-panel span{color:#edf8ffb8;font-size:12px;font-weight:800}.game-side-panel kbd{color:#fff;min-width:42px;min-height:34px;font:inherit;text-align:center;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:6px;place-items:center;padding:0 8px;font-size:13px;font-weight:900;display:grid}.game-side-panel button{padding:0 12px}.game-side-touch{pointer-events:none;background:0 0;border:0;padding:0}.side-touch-pad{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;background:#02071294;border:1px solid #c8efff2e;border-radius:8px;justify-content:center;gap:8px;width:min(100%,134px);padding:10px;display:grid}.side-touch-pad strong{color:#ffe08a;text-align:center;grid-column:1/-1;font-size:11px;font-weight:900}.side-touch-button{color:#fff;cursor:pointer;min-width:0;min-height:0;font:inherit;-webkit-tap-highlight-color:transparent;touch-action:none;background:#ffffff1f;border:1px solid #fff8d942;border-radius:50%;place-items:center;font-size:10px;font-weight:900;display:grid}.side-touch-button:active{color:#071532;background:#f2d77a;transform:translateY(1px)}.side-touch-button:disabled{opacity:.35}.side-left-controls{place-items:end center;gap:clamp(12px,2vw,22px);display:grid}.side-dpad{grid-template-rows:auto repeat(3,clamp(34px,4.2vw,46px)) 28px;grid-template-columns:repeat(3,clamp(34px,4.2vw,46px))}.side-dpad-up{grid-area:2/2}.side-dpad-left{grid-area:3/1}.side-dpad-right{grid-area:3/3}.side-dpad-down{grid-area:4/2}.side-menu{grid-area:5/1/auto/-1}.side-action-pad{grid-template-rows:repeat(3,clamp(46px,5vw,64px));grid-template-columns:repeat(3,clamp(46px,5vw,64px))}.side-action-a,.side-action-b,.side-action-x,.side-action-y{font-size:18px}.side-action-y{grid-area:1/2}.side-action-x{grid-area:2/1}.side-action-b{grid-area:2/3}.side-action-a{grid-area:3/2}.side-system-select,.side-system-start,.side-menu{aspect-ratio:auto;border-radius:999px;min-height:30px;font-size:9px}.side-system-select{grid-area:3/1}.side-system-start{grid-area:3/2}.game-mobile-system-controls{inset:max(8px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) auto max(10px, env(safe-area-inset-left));z-index:5;pointer-events:none;grid-template-columns:minmax(82px,auto) minmax(72px,auto) minmax(82px,auto);justify-content:space-between;display:grid;position:absolute}.game-mobile-system-controls .side-touch-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;background:#0207128f;border-radius:999px;min-height:36px;padding:0 16px}.mobile-system-left{justify-self:start}.mobile-system-center{justify-self:center}.mobile-system-right{justify-self:end}.game-command-overlay{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overscroll-behavior:contain;background:#0005127a;place-items:center;padding:24px;display:grid;position:absolute;inset:0;overflow:auto}.game-command-panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#061230f5;border:1px solid #ffffff2e;border-radius:8px;gap:16px;width:min(680px,100%);max-height:calc(100dvh - 48px);padding:20px;display:grid;overflow:auto;box-shadow:0 28px 70px #0000006b}.game-command-heading{gap:4px;display:grid}.game-command-heading span,.game-command-heading small{color:#edf8ffb8;font-size:12px;font-weight:900}.game-command-heading strong{color:#fff;font-size:clamp(22px,3vw,34px);line-height:1.05}.game-command-buttons{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.game-command-buttons button,.game-menu-close{color:#fff;cursor:pointer;min-height:40px;font:inherit;background:#ffffff1f;border:1px solid #fff3;border-radius:999px;font-size:12px;font-weight:900}.game-command-buttons button:focus,.game-command-buttons button:focus-visible,.game-menu-close:focus,.game-menu-close:focus-visible{outline-offset:3px;background:#f4c23738;outline:3px solid #f4c237}.game-command-buttons button:disabled{cursor:not-allowed;opacity:.42}.game-menu-notice{color:#ffe08a;background:#f4c2371f;border:1px solid #f4c23747;align-items:center;min-height:34px;margin:0;padding:8px 12px;font-size:12px;font-weight:900;display:flex}.game-menu-notice.is-busy{color:#fff}.game-confirm-panel{background:#ffffff12;border:1px solid #f4c2374d;gap:10px;padding:14px;display:grid}.game-confirm-panel strong{color:#fff;font-size:15px}.game-confirm-panel span{color:#edf8ffc7;font-size:12px;font-weight:800}.confirm-buttons{grid-template-columns:repeat(2,minmax(0,140px));justify-content:start}.game-help-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.game-help-grid section{background:#ffffff0f;border:1px solid #ffffff1f;align-content:start;gap:7px;min-height:150px;padding:14px;display:grid}.game-help-grid strong{color:#ffe08a;font-size:12px}.game-help-grid span{color:#edf8ffc7;font-size:12px;font-weight:800}.game-menu-close{justify-self:center;padding:0 16px}.console-hints{color:#edf8ffb8;flex:none;justify-content:center;align-items:center;gap:clamp(16px,4vw,42px);height:38px;padding:0 18px;font-size:12px;font-weight:700;display:flex}.fullscreen-prompt{z-index:5;color:#fff;cursor:pointer;min-width:220px;font:inherit;text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#021037bd;border:1px solid #ffffff47;border-radius:8px;gap:4px;padding:13px 16px;display:grid;position:fixed;bottom:clamp(46px,7vh,84px);right:clamp(16px,3vw,34px);box-shadow:0 18px 42px #000d3457}.fullscreen-prompt strong{color:#ffe08a;font-size:12px;font-weight:900}.fullscreen-prompt span{color:#edf8ffdb;font-size:12px;font-weight:800}.fullscreen-prompt:focus-visible{outline-offset:3px;outline:3px solid #f4c237}:is(.screen-frame:fullscreen,.gameboy-frame:fullscreen,.amiga-frame:fullscreen,.arcade-frame:fullscreen){border:0;border-radius:0}:is(.screen-frame:fullscreen .screen-bezel,.gameboy-frame:fullscreen .screen-bezel,.amiga-frame:fullscreen .screen-bezel,.arcade-frame:fullscreen .screen-bezel){width:100vw;height:100vh;padding:24px}.screen-frame:fullscreen .screen-content{width:min(100vw - 48px,106.667vh - 51.2px);max-height:calc(100vh - 48px)}:is(.amiga-frame:fullscreen .amiga-screen-content,.gameboy-frame:fullscreen .gameboy-screen-content,.arcade-frame:fullscreen .arcade-screen-content){width:min(100vw - 48px,133.333vh - 64px);max-height:calc(100vh - 48px)}.gameboy-frame:fullscreen .gameboy-screen-content{width:min(100vw - 48px,111.111vh - 53.3333px)}@media (width<=1080px){.console-layout{grid-template-columns:minmax(120px,160px) minmax(260px,38vw) minmax(0,1fr);gap:18px;padding-inline:24px}.cover-case{width:min(100%,150px)}.game-row small{display:none}}@media (width<=820px){.console-topbar{height:44px;padding-inline:14px;font-size:12px}.status-pill{min-width:86px;height:28px}.system-dock{gap:18px;height:112px}.system-node{width:96px;height:86px}.system-node img{width:78px;height:56px}.system-icon-art-menu{width:38px;height:38px}.console-layout{grid-template-rows:96px 174px minmax(0,1fr);grid-template-columns:1fr;align-items:stretch;gap:10px;padding:6px 12px 0}.cover-stage{grid-template-columns:78px minmax(0,1fr);align-items:end;gap:12px}.cover-case{aspect-ratio:auto;width:78px;height:96px;padding:8px}.cover-case strong,.cover-case small{display:none}.game-version{flex-wrap:wrap;justify-content:flex-start;align-self:center;width:auto}.library-panel{justify-content:start}.console-list-header{height:24px;padding-left:32px}.game-list{grid-template-rows:repeat(5,minmax(0,1fr));height:150px;min-height:0}.game-list .game-row:nth-child(n+6){display:none}.game-row{grid-template-columns:22px minmax(0,1fr)}.game-row[aria-selected=true] .game-title{font-size:15px}.preview-panel{gap:6px}.player-topline{display:none}.screen-content{width:min(100%,33.0667svh);max-height:31svh}.amiga-screen-content,.arcade-screen-content{width:min(100%,41.3333svh);max-height:31svh}.screen-bezel{padding:7px}.shortcut-panel{background:#02071294;top:auto;bottom:7px;transform:none}.touch-cluster{gap:4px;padding:6px}.dpad-cluster{grid-template-rows:auto repeat(3,30px);grid-template-columns:repeat(3,30px)}.action-cluster{grid-template-rows:auto repeat(2,38px) 27px;grid-template-columns:repeat(2,38px)}.player-toolbar{gap:5px;margin-top:6px}.player-toolbar button{flex:auto;min-height:30px;padding:0 8px}.player-toolbar button span{display:none}.metadata-strip{gap:5px;min-height:24px;overflow:hidden}.metadata-strip span{padding:5px 7px;font-size:10px}.console-hints{gap:14px;height:30px;font-size:11px}.game-room{grid-template-columns:1fr;gap:0;padding:0}.game-topbar{height:46px}.game-side-panel{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0207129e;width:86px;min-height:172px;padding:8px;position:absolute;bottom:54px}.game-side-touch{bottom:max(10px, env(safe-area-inset-bottom));-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;width:min(34vw,178px);min-height:0;padding:0}.side-touch-pad{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;gap:0;width:100%;padding:0}.side-dpad{background:radial-gradient(circle,#f4c2372e,#02071280 56%,#020712b8);border:1px solid #c8efff2e;border-radius:50%;width:min(34vw,168px);height:min(34vw,168px);display:block;position:relative}.side-action-pad{justify-content:flex-end;align-items:flex-end;gap:12px;display:flex}.side-touch-button{font-size:10px}.side-dpad .side-touch-button{background:#ffffff1a;border-radius:999px;width:47%;height:47%;position:absolute}.side-dpad-up{inset:4% 26% auto}.side-dpad-left{inset:26% auto 26% 4%}.side-dpad-right{inset:26% 4% 26% auto}.side-dpad-down{inset:auto 26% 4%}.side-action-a,.side-action-b{width:min(15vw,76px);height:min(15vw,76px);font-size:18px}.game-viewport .screen-frame{border:0}.game-viewport .screen-bezel{padding:0}.game-viewport .screen-content{width:min(100vw,106.667dvh);max-height:100dvh}.game-viewport .amiga-screen-content,.game-viewport .arcade-screen-content{width:min(100vw,133.333dvh);max-height:100dvh}.game-side-left{left:8px}.game-side-right{right:8px}.game-side-panel kbd{min-width:34px;min-height:28px;font-size:11px}.game-side-panel button{min-height:30px;padding:0 9px}.game-command-overlay{padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));align-items:start}.game-command-panel{gap:12px;width:min(520px,100%);max-height:calc(100dvh - 16px);padding:14px}.game-command-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.game-help-grid{grid-template-columns:1fr;gap:8px}.game-help-grid section{min-height:0;padding:10px}.game-menu-close{z-index:1;background:#122756fa;position:sticky;bottom:0}}@media (width<=430px){.console-topbar{grid-template-columns:auto auto 1fr;gap:8px}.top-actions time{font-size:11px}.system-dock{height:90px}.system-node{width:76px;height:70px;font-size:10px}.system-node img{width:62px;height:44px}.system-icon-art-menu{width:32px;height:32px}.console-layout{grid-template-rows:88px 158px minmax(0,1fr);padding-inline:9px}.cover-stage{grid-template-columns:70px minmax(0,1fr)}.cover-case{width:70px;height:88px}.game-list{height:134px}.game-title{font-size:13px}.screen-content,.amiga-screen-content,.arcade-screen-content{max-height:29svh}.dpad-cluster{grid-template-rows:auto repeat(3,27px);grid-template-columns:repeat(3,27px)}.action-cluster{grid-template-rows:auto repeat(2,34px) 25px;grid-template-columns:repeat(2,34px)}.touch-button{font-size:11px}.game-side-touch{width:min(34vw,142px)}.side-touch-pad{gap:0;padding:0}.side-touch-pad strong{font-size:9px}.side-dpad{width:min(34vw,140px);height:min(34vw,140px)}.side-action-a,.side-action-b,.side-action-x,.side-action-y{width:min(16vw,64px);height:min(16vw,64px);font-size:16px}.game-mobile-system-controls{grid-template-columns:minmax(70px,auto) minmax(60px,auto) minmax(70px,auto)}.game-mobile-system-controls .side-touch-button{min-height:32px;padding:0 12px;font-size:9px}}@media (hover:none) and (pointer:coarse){.game-room{grid-template-columns:1fr;gap:0;padding:0}.game-viewport .screen-frame{border:0}.game-viewport .screen-bezel{padding:0}.game-viewport .screen-content{width:min(100vw,106.667dvh);max-height:100dvh}.game-viewport .amiga-screen-content,.game-viewport .arcade-screen-content{width:min(100vw,133.333dvh);max-height:100dvh}.game-side-panel{z-index:3;bottom:max(10px, env(safe-area-inset-bottom));position:absolute}.game-side-touch{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;width:min(36vw,216px);min-height:0;padding:0}.game-side-left{left:max(10px, env(safe-area-inset-left))}.game-side-right{right:max(10px, env(safe-area-inset-right))}.side-touch-pad{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;gap:0;width:100%;padding:0}.side-left-controls{gap:0}.side-dpad{background:0 0;border:0;width:min(26vw,178px);height:min(25dvh,132px);display:block;position:relative}.side-dpad .side-touch-button{background:#ffffff14;border-width:3px;border-color:#ffffffad;border-radius:8px;width:40%;height:34%;min-height:0;padding:0;font-size:10px;position:absolute}.side-dpad-up{top:0;left:30%}.side-dpad-left{top:33%;left:0}.side-dpad-right{top:33%;right:0}.side-dpad-down{bottom:0;left:30%}.side-dpad:before{content:"";background:#ffffff14;border:3px solid #ffffffad;position:absolute;inset:34% 31%;transform:rotate(45deg)}.side-analog-pad{pointer-events:auto;touch-action:none;background:radial-gradient(circle,#ffffff38,#ffffff1a 48%,#7038be52);border:2px solid #ffffff6b;border-radius:50%;width:min(24vw,140px);height:min(24vw,140px);position:relative}.analog-knob{pointer-events:none;width:44%;height:44%;transform:translate(-50%, -50%) translate(var(--analog-x,0px), var(--analog-y,0px));background:#ffffffb8;border-radius:50%;transition:transform 60ms linear;position:absolute;top:50%;left:50%}.analog-axis{pointer-events:none;background:#ffffff38;border-radius:999px;position:absolute;top:50%;left:50%}.analog-axis-horizontal{width:62%;height:2px;transform:translate(-50%,-50%)}.analog-axis-vertical{width:2px;height:62%;transform:translate(-50%,-50%)}.side-action-pad{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(30vw,214px);height:min(43dvh,190px);display:grid}.side-action-a,.side-action-b,.side-action-x,.side-action-y{background:#ffffff14;border-width:3px;border-color:#ffffffad;width:min(12vw,64px);height:min(12vw,64px);min-height:0;padding:0;font-size:18px}.game-mobile-system-controls{inset:max(8px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) auto max(10px, env(safe-area-inset-left))}.game-command-overlay{padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));touch-action:pan-y;align-items:start}.game-command-panel{touch-action:pan-y;width:min(520px,100%);max-height:calc(100dvh - 16px);overflow-y:auto}.game-menu-close{z-index:1;background:#122756fa;position:sticky;bottom:0}}@media (hover:none) and (pointer:coarse) and (orientation:landscape){.game-room,.game-viewport{align-items:start}.game-viewport{justify-items:center}.game-viewport .screen-content{width:min(100vw,106.667dvh);max-height:100dvh}.game-viewport .amiga-screen-content,.game-viewport .arcade-screen-content{width:min(100vw,133.333dvh);max-height:100dvh}.game-mobile-system-controls{inset:max(4px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) auto max(10px, env(safe-area-inset-left))}}@media (hover:none) and (pointer:coarse) and (orientation:portrait){.game-room,.game-viewport{align-items:start}.game-viewport{justify-items:center;padding-top:clamp(92px,14dvh,148px)}.game-viewport .screen-content{width:min(100vw,106.667dvh - 320px);max-height:min(48dvh,100dvh - 300px)}.game-viewport .amiga-screen-content,.game-viewport .arcade-screen-content{width:min(100vw,133.333dvh - 400px);max-height:min(42dvh,100dvh - 300px)}.game-side-panel{bottom:max(84px, calc(env(safe-area-inset-bottom) + 82px))}.game-side-touch{width:min(44vw,216px)}.side-analog-pad{width:min(30vw,136px);height:min(30vw,136px)}.side-action-pad{width:min(44vw,196px);height:min(26dvh,176px)}.side-action-a,.side-action-b,.side-action-x,.side-action-y{width:min(15vw,66px);height:min(15vw,66px)}}
