@font-face{font-family:Sora;src:url('/assets/fonts/sora-var-latin.woff2') format('woff2');font-display:swap}@font-face{font-family:Mono;src:url('/assets/fonts/space-mono-400-latin.woff2') format('woff2');font-display:swap}
:root{color-scheme:dark;--bg:#080d15;--panel:#111a26;--line:#27313e;--text:#f5f2e9;--muted:#a9b4c1;--accent:#eac27b;--glow:#eac27b26;--green:#70dec0;font-family:Sora,system-ui,sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent)}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}button,a{-webkit-tap-highlight-color:transparent}button{border:0}a{color:inherit}button img{pointer-events:none}h1,h2,h3,p{margin:0}h1{font-size:clamp(2rem,3.4vw,3.8rem);font-weight:600;letter-spacing:-.055em;line-height:1.08}h2{font-size:clamp(1.2rem,2vw,1.7rem);letter-spacing:-.035em}h3{font-size:1rem}p{line-height:1.7;color:var(--muted)}.eyebrow{display:block;font:10px/1.5 Mono,monospace;letter-spacing:.2em;color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;background:var(--accent);color:#111820;border:1px solid transparent;padding:.85rem 1.2rem;border-radius:5px;font-size:.8rem;font-weight:650;min-height:44px;text-decoration:none}.button.quiet{background:transparent;color:var(--text);border-color:var(--line)}.button:hover{filter:brightness(1.1)}.muted{color:var(--muted)}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;border:0;background:none;padding:0}.brand img{width:38px;height:38px;object-fit:contain}.brand strong{font-size:.95rem;letter-spacing:.14em}.brand small{display:block;color:var(--muted);font:9px Mono;letter-spacing:.16em;margin-top:.3rem}.initial{display:grid;place-items:center;min-height:100svh;color:var(--muted)}.login{min-height:100svh;display:grid;grid-template-columns:1.4fr 1fr;background:var(--bg)}.login-art{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:3.5rem;background:linear-gradient(180deg,#06101a33,#071019dd),url('/assets/movies-interior.webp') center/cover}.login-art:after{content:'';height:1px;background:var(--accent);position:absolute;bottom:0;left:3.5rem;right:3.5rem}.login-copy{max-width:560px;padding:5rem 0 1rem}.login-copy h1{margin:.8rem 0 1.5rem;font-size:clamp(2.6rem,4.5vw,5rem)}.login-copy p{max-width:350px;color:#e2e6ea}.login-copy .signature{display:flex;align-items:center;gap:.7rem;margin-top:3rem;font:11px Mono;color:var(--accent)}.signature:before{content:'';width:2rem;height:1px;background:var(--accent)}.login-form{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:3rem}.login-form form{width:min(100%,350px)}.login-form h2{font-size:1.9rem;margin:.8rem 0}.login-form form>p{font-size:.85rem;margin-bottom:2rem}.field{display:grid;gap:.6rem;margin:1.1rem 0;font-size:.78rem}.field input,.search input,.field select{background:#101924;border:1px solid #33404e;border-radius:5px;padding:.9rem 1rem;color:var(--text);width:100%;min-height:46px}.password-row{display:flex;gap:.4rem}.password-row button{background:none;color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:0 .7rem;font-size:.75rem}.login-form .submit{width:100%;margin-top:1rem}.legal-note{font-size:.68rem;line-height:1.7;color:var(--muted);margin-top:1.4rem}.notice{background:#34202b;border:1px solid #744454;color:#ffcad1;border-radius:6px;font-size:.8rem;line-height:1.65;padding:1rem;margin:1rem 0}.login-bottom{font:9px Mono;color:var(--muted);margin-top:3rem;letter-spacing:.14em}.shell{display:grid;grid-template-columns:215px minmax(0,1fr);min-height:100svh}.rail{border-right:1px solid var(--line);padding:2rem 1.3rem;position:fixed;width:215px;height:100svh;display:flex;flex-direction:column;background:var(--bg);z-index:3}.rail .brand{margin-bottom:3rem}.rail-nav{display:grid;gap:.35rem}.nav-link{display:flex;align-items:center;gap:.8rem;text-decoration:none;padding:.85rem .8rem;color:var(--muted);font-size:.8rem;border-radius:5px}.nav-link.active{background:var(--glow);color:var(--accent)}.nav-link:hover{background:#ffffff09;color:var(--text)}.nav-icon{font-size:1.1rem;width:24px;text-align:center}.rail-worlds{margin:2rem .8rem .8rem;font:9px Mono;letter-spacing:.15em;color:#717f91}.rail .pending-world{display:flex;align-items:center;justify-content:space-between;gap:.3rem;padding:.65rem .8rem;color:#7d8a9b;font-size:.7rem}.pending-world small{font:8px Mono;color:#617083}.rail-bottom{margin-top:auto;padding-top:2rem}.profile-button{display:flex;align-items:center;gap:.7rem;background:transparent;border:1px solid var(--line);border-radius:5px;padding:.7rem;width:100%;text-align:left}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#1e3944;color:var(--green);font-size:.85rem}.profile-button strong{font-size:.7rem;display:block}.profile-button small{font-size:.58rem;color:var(--muted)}.exit{margin-top:.8rem;border:0;background:none;color:var(--muted);font-size:.68rem;padding:.4rem}.content{grid-column:2;min-width:0;padding:0 3.2rem 3rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:90px;border-bottom:1px solid var(--line);margin-bottom:2rem}.breadcrumbs{font:10px Mono;color:var(--muted);letter-spacing:.12em}.breadcrumbs strong{font-weight:400;color:var(--accent)}.search{position:relative;width:min(330px,50%)}.search input{padding:.7rem 1rem;font-size:.75rem;min-height:40px;background:#0e1621}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin:2rem 0}.page-heading h1{margin-top:.5rem}.page-heading p{font-size:.8rem}.hero{position:relative;overflow:hidden;min-height:360px;border:1px solid #394138;border-radius:8px;display:flex;align-items:center;padding:3rem;margin-bottom:1.6rem;background:linear-gradient(90deg,#080e18ed 5%,#09111a88 60%,#07101aaa),url('/assets/movies-interior.webp') 60% 50%/cover}.hero-copy{position:relative;z-index:1;max-width:400px}.hero h1{margin:.7rem 0 1.2rem}.hero p{max-width:330px;font-size:.85rem;color:#d1d6dd}.hero-mark{font:9px Mono;color:var(--accent);letter-spacing:.16em;margin-top:2rem}.hero .button{margin-top:1.5rem}.hero.series-hero{background:linear-gradient(90deg,#0b1019f2,#0d152070),url('/assets/worlds/series.jpg') center 45%/cover;min-height:300px}.portal-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.portal{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);background:#101925;padding:1.4rem;text-align:left;border-radius:6px;min-height:105px;text-decoration:none}.portal:hover{border-color:var(--accent);background:#17212b}.portal strong{display:block;font-size:.93rem;margin-bottom:.45rem}.portal p{font-size:.72rem;line-height:1.5}.portal .arrow{color:var(--accent);font-size:1.3rem}.portal .eyebrow{margin-bottom:.4rem}.latest-portal{position:relative;overflow:hidden;min-height:195px;padding:1.8rem;margin:0 0 1rem;display:flex;align-items:center;background:#142025}.latest-portal .portal-copy{position:relative;z-index:1;max-width:45%}.latest-portal:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111b29 30%,transparent 90%);pointer-events:none}.collage{position:absolute;inset:-20px 0 -50px auto;width:65%;display:flex;justify-content:end;gap:12px;transform:rotate(-8deg);opacity:.9}.collage img{height:280px;width:185px;object-fit:cover;border-radius:4px}.folders{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.folders .portal{min-height:125px;align-items:start;flex-direction:column}.section{margin:2.5rem 0}.section-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem}.section-head a{font-size:.72rem;color:var(--accent);text-decoration:none}.strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(135px,1fr);grid-template-rows:1fr;gap:1rem;overflow:auto;scroll-snap-type:x proximity;padding:3px 3px 1rem;scrollbar-width:thin}.poster{display:block;text-decoration:none;min-width:0;scroll-snap-align:start}.poster-art{position:relative;aspect-ratio:2/3;overflow:hidden;background:#172431;border-radius:5px;border:1px solid #ffffff0c;display:grid;place-items:center}.poster-art img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.poster:hover img{transform:scale(1.025)}.poster:hover .poster-art{border-color:var(--accent)}.poster-placeholder{padding:1rem;font-size:1.5rem;color:#536478}.poster strong{font-size:.73rem;line-height:1.5;display:block;margin-top:.65rem;font-weight:500}.poster small{display:block;color:var(--muted);font-size:.63rem;margin-top:.25rem}.tag{position:absolute;top:.5rem;left:.5rem;background:#0d142bea;padding:.25rem .4rem;font:8px Mono;color:#fff}.grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.8rem 1.2rem}.categories{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}.category-link{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid var(--line);padding:1.1rem;background:var(--panel);text-decoration:none;border-radius:5px;font-size:.8rem}.category-link small{color:var(--muted);font:10px Mono}.category-link:hover{border-color:var(--accent)}.back-link{font-size:.75rem;color:var(--muted);display:inline-block;margin:.5rem 0 1.2rem;text-decoration:none}.detail{display:grid;grid-template-columns:230px 1fr;gap:3rem;margin:1rem 0 3rem;align-items:start}.detail-cover{aspect-ratio:2/3;max-width:230px;background:var(--panel);border-radius:7px;overflow:hidden}.detail-cover img{width:100%;height:100%;object-fit:cover}.detail h1{font-size:clamp(2rem,3vw,3.2rem);margin:.7rem 0 1rem}.detail .subtitle{font-size:.8rem;color:var(--accent)}.detail p{font-size:.83rem;max-width:650px;margin:1.3rem 0}.detail-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.8rem 0}.episodes-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:2rem 0 1rem}.episodes-toolbar select{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:4px;padding:.6rem}.episode{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--line);background:none;text-align:left}.episode:hover{background:var(--panel)}.episode strong{font-size:.75rem}.episode small{color:var(--muted);font-size:.65rem}.episode .play-symbol{color:var(--accent)}.empty{padding:3rem;border:1px dashed var(--line);text-align:center;border-radius:7px}.empty p{font-size:.85rem;margin:.7rem 0}.load-row{display:flex;justify-content:center;margin:2rem 0}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.world-card{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line);border-radius:7px;text-decoration:none;background:var(--panel)}.world-card img{width:100%;height:100%;object-fit:cover}.world-card>div{position:absolute;inset:0;padding:1.5rem;background:linear-gradient(transparent,#07111fee);display:flex;flex-direction:column;justify-content:end;gap:.5rem}.world-card strong{font-size:1.1rem}.world-card small{font-size:.65rem;color:var(--muted)}.profile-select{max-width:750px;margin:8vh auto}.profile-select>h1{margin:1rem 0 2rem}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.profile-choice{background:var(--panel);border:1px solid var(--line);padding:2rem 1rem;border-radius:8px;display:grid;justify-items:center;gap:1rem}.profile-choice .avatar{width:60px;height:60px;font-size:1.6rem}.profile-choice:hover{border-color:var(--accent)}.profile-choice strong{font-size:.85rem}.profile-select .legal-note{text-align:center}.favorite-on{color:var(--accent)!important;border-color:var(--accent)!important}#player-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;color:var(--text);background:#05080f}#player-dialog::backdrop{background:#05080f}.watch{width:100%;height:100%;display:flex;flex-direction:column}.watch header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;gap:1rem;background:#0c121c}.watch header h2{font-size:1rem;margin-top:.3rem}.watch video{width:100%;flex:1;min-height:0;background:#000;object-fit:contain}.watch #watch-status{padding:.65rem 1.5rem;font-size:.7rem;color:var(--muted);min-height:35px}.watch .notice{margin:1rem 1.5rem}.watch #watch-retry{margin:0 1.5rem 1.5rem;align-self:start}#toast{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);max-width:85vw;padding:.9rem 1.2rem;background:#20382e;border:1px solid #3f6c58;border-radius:6px;font-size:.75rem;z-index:20;display:none}#toast.visible{display:block}.pending-note{border-left:2px solid var(--accent);padding:1rem;margin:2rem 0;color:var(--muted);font-size:.8rem;line-height:1.7}.skeleton{min-height:200px;background:#101824;border:1px solid var(--line);border-radius:7px}.mobile-brand{display:none}
@media(min-width:1600px){.content{padding-inline:4.5rem}.strip{grid-auto-columns:minmax(160px,1fr)}}
@media(max-width:1100px){.shell{grid-template-columns:180px minmax(0,1fr)}.rail{width:180px;padding-inline:1rem}.brand strong{font-size:.8rem}.content{padding-inline:2rem}.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.folders{grid-template-columns:1fr}.folders .portal{min-height:90px;flex-direction:row;align-items:center}.world-grid{grid-template-columns:repeat(2,1fr)}.strip{grid-auto-columns:140px}.hero{padding:2rem}.categories{grid-template-columns:repeat(2,1fr)}.detail{grid-template-columns:180px 1fr;gap:2rem}}
@media(max-width:700px){.login{grid-template-columns:1fr}.login-art{padding:1.5rem;min-height:260px}.login-art:after{left:1.5rem;right:1.5rem}.login-copy{padding:2rem 0 0}.login-copy h1{font-size:2.4rem;margin:.7rem 0}.login-copy p,.login-copy .signature{display:none}.login-form{padding:2rem 1.5rem}.login-bottom{margin-top:1.5rem}.shell{display:block}.rail{position:sticky;top:0;width:auto;height:auto;padding:.7rem 1rem;border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;justify-content:space-between;gap:.6rem}.rail .brand{margin:0}.rail .brand img{width:30px;height:30px}.rail .brand strong{font-size:.7rem}.rail .brand small,.rail-worlds,.pending-world,.rail-bottom .exit{display:none!important}.rail-nav{display:flex;gap:.1rem}.nav-link{padding:.6rem;font-size:.68rem}.nav-icon{display:none}.rail-bottom{margin:0;padding:0}.profile-button{padding:.35rem;border:0;width:auto}.profile-button>span:not(.avatar){display:none}.profile-button .avatar{width:28px;height:28px;font-size:.7rem}.content{padding:0 1.1rem 2rem}.topbar{min-height:70px;margin-bottom:1.2rem}.breadcrumbs{font-size:8px;letter-spacing:.08em}.search{width:55%}.search input{font-size:.65rem;padding:.6rem}.hero{min-height:295px;padding:1.5rem;background-position:60% center}.hero h1{font-size:2.5rem}.hero p{font-size:.78rem;max-width:250px}.hero.series-hero{min-height:245px}.hero .button{font-size:.72rem}.portal-row{grid-template-columns:1fr}.portal{min-height:95px;padding:1.1rem}.latest-portal{min-height:180px;padding:1.3rem}.latest-portal .portal-copy{max-width:55%}.collage{width:60%;gap:8px}.collage img{width:115px;height:230px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem .7rem}.poster strong{font-size:.65rem}.poster small{font-size:.58rem}.strip{grid-auto-columns:115px;gap:.8rem}.categories{grid-template-columns:1fr}.page-heading{align-items:start}.page-heading h1{font-size:2rem}.page-heading p{font-size:.7rem}.detail{grid-template-columns:100px minmax(0,1fr);gap:1.1rem}.detail h1{font-size:1.65rem}.detail .subtitle{font-size:.65rem}.detail p{font-size:.73rem}.detail-actions{grid-column:1/-1;margin:1rem 0}.detail .button{font-size:.7rem;padding:.7rem}.world-grid{gap:.8rem}.world-card>div{padding:1rem}.world-card strong{font-size:.9rem}.profile-select{margin:4vh auto}.profile-grid{gap:.5rem}.profile-choice{padding:1.3rem .5rem}.profile-choice strong{font-size:.7rem}.watch header{padding:.8rem}.watch header h2{font-size:.8rem}.watch .button{font-size:.7rem}.watch-close span{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
[hidden]{display:none!important}
.world-quick-link{display:block;padding:.4rem .8rem;color:var(--muted);text-decoration:none;font-size:.72rem;min-height:30px;border-radius:4px}.world-quick-link:hover,.world-quick-link:focus-visible{color:var(--accent);background:var(--glow)}.rail{overflow-y:auto}.rail .rail-worlds{margin-top:1rem;margin-bottom:.4rem}.themed-hero{min-height:300px;background-position:center;background-size:cover}.hero-anime{background-image:linear-gradient(90deg,#090e18ee,#080d1555),url('/assets/worlds/anime.jpg')}.hero-dorama{background-image:linear-gradient(90deg,#150e1aee,#150e1855),url('/assets/worlds/dorama.jpg')}.hero-kids{background-image:linear-gradient(90deg,#101b23e8,#10253133),url('/assets/worlds/ninos.jpg')}.hero-retro{background-image:linear-gradient(90deg,#0c1125ed,#0c132555),url('/assets/worlds/nave.jpg')}.hero-youtube{background-image:linear-gradient(90deg,#111b18ee,#111b1855),url('/assets/worlds/youtube.jpg')}.hero-radio{background-image:linear-gradient(90deg,#20180cee,#20180c55),url('/assets/worlds/radio.jpg')}.hero-tv{background-image:linear-gradient(90deg,#081a29ed,#081a2955),url('/assets/worlds/tv.jpg')}.signal-card{background:var(--panel);border:1px solid var(--line);color:var(--text);padding:.75rem;text-align:left;border-radius:6px;min-height:100px}.signal-card:hover{border-color:var(--accent)}.signal-card .poster-art{aspect-ratio:16/9;background:#182530}.signal-card .poster-art img{object-fit:contain;padding:.6rem}.signal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1rem}.signal-card .poster-placeholder{font:1.5rem Mono;color:var(--accent)}.live-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap}.live-toolbar label{font-size:.75rem}.live-toolbar select{margin-left:.7rem;background:var(--panel);color:var(--text);border:1px solid var(--line);padding:.75rem;border-radius:4px;max-width:100%}.settings-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:1.5rem;margin:1rem 0}.settings-card p{font-size:.8rem;margin:.8rem 0 1.2rem}.settings-card .button{margin-right:.5rem;margin-top:.5rem}#watch-steps{display:flex;gap:.5rem}#radio-panel{position:relative;min-height:0;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;overflow:hidden;text-align:center;padding:2rem}#radio-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.25}#radio-panel>:not(img){position:relative}#radio-panel h2{font-size:clamp(1.6rem,4vw,3rem)}.watch video.audio-player{flex:none;height:70px;margin:0 auto;max-width:800px;background:var(--panel)}#external-player{flex:1;min-height:0}#external-player iframe{width:100%;height:100%;border:0}.watch-livebar{padding:.5rem 1.5rem;display:flex;gap:.8rem;align-items:center;background:var(--panel)}.watch-livebar input{flex:1;min-width:0;accent-color:var(--accent)}.watch-livebar span{font-size:.65rem;min-width:60px}
@media(max-width:1100px){.signal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.world-quick-link{display:none}.rail{overflow:visible}.signal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.live-toolbar label,.live-toolbar select{display:block;width:100%;margin-left:0}.settings-card{padding:1.1rem}.watch-livebar{padding:.5rem;gap:.4rem}.watch-livebar .button{padding:.5rem;font-size:.65rem}}
.poster strong{overflow-wrap:anywhere}.watch header>div{min-width:0}.watch header h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.rail{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem .6rem}.rail-nav{grid-column:1/-1;grid-row:2;justify-content:space-between}.rail-bottom{grid-column:2;grid-row:1}.nav-link{min-height:38px;padding:.5rem .7rem}}
/* The arcade stays inactive outside its dialog. Large controls also work on phones. */
.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-block:26px}
.game-card{min-height:235px;padding:26px;text-align:left;color:var(--text);border:1px solid #324153;border-radius:20px;background:linear-gradient(140deg,#132b2a,#121b2d);cursor:pointer}
.game-card h2{font-size:1.65rem;margin:14px 0 10px}.game-card p{color:#c4d4d7;min-height:48px}.game-card small{display:block;color:#9cbbc0;margin:12px 0}.game-card strong{color:#8de2bd}
#game-dialog{width:min(1120px,96vw);max-height:96vh;border:1px solid #405653;border-radius:22px;padding:22px;background:#091215;color:#edf7f6;overflow:auto}
#game-dialog::backdrop{background:#000d;backdrop-filter:blur(5px)}#game-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}#game-dialog h2{margin:6px 0 16px}
.game-screen{background:#000;border-radius:14px;overflow:hidden}.game-screen canvas{display:block;width:100%;height:auto;aspect-ratio:16/9;touch-action:none}.game-help{color:#aac3c5;font-size:.85rem}
.touch-gamepad{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:620px;margin:20px auto 0;touch-action:none}.touch-dpad{display:grid;grid-template-columns:repeat(3,54px);grid-template-rows:repeat(2,54px);gap:6px}.touch-dpad button,.touch-action{border:1px solid #688a88;border-radius:14px;background:#1e3b3e;color:#e3fff4;font-size:1.3rem;min-width:54px;min-height:54px;cursor:pointer}.touch-dpad button:first-child{grid-column:2}.touch-dpad button:nth-child(2){grid-column:1;grid-row:2}.touch-dpad button:nth-child(3){grid-column:2;grid-row:2}.touch-dpad button:nth-child(4){grid-column:3;grid-row:2}.touch-action{border-radius:50%;width:70px;height:70px;background:#34765e}
.retro-browser{padding-block:20px}.retro-games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.retro-game{display:flex;flex-direction:column;gap:12px;padding:18px;text-align:left;min-height:100px;background:#142c30;color:white;border:1px solid #3c565e;border-radius:12px;cursor:pointer}.retro-game span{color:#8de2bd;font-size:.85rem}#emulator-host iframe{width:100%;height:min(70vh,690px);border:0;background:#000}
@media(max-width:768px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.retro-games{grid-template-columns:repeat(2,minmax(0,1fr))}#game-dialog{padding:14px}.game-card{padding:18px}.game-card h2{font-size:1.25rem}}
@media(max-width:420px){.game-grid,.retro-games{grid-template-columns:1fr}.touch-dpad{grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px)}.touch-dpad button{min-width:44px;min-height:44px}.touch-gamepad{gap:10px}.touch-action{min-width:54px;width:54px;height:54px}.game-help{font-size:.75rem}#game-dialog header .button{padding:10px}}
