/* Shared mobile polish. Game boards remain responsible for their own geometry. */
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none}button{touch-action:manipulation}button:disabled{cursor:default}button:focus-visible{outline:3px solid #aaf2f4;outline-offset:3px}
.arcade-sheet{border-radius:22px;padding:20px;box-shadow:0 16px 40px #0006;backdrop-filter:none}.arcade-sheet h2{font:800 24px/1.2 system-ui}.arcade-action{border-radius:13px;min-height:46px}.audit-map{padding:20px 16px;background:radial-gradient(ellipse at 100% 0,#354362,#111827 65%)}.audit-map h1{font:850 29px/1.2 system-ui;margin:4px 0 10px}.audit-levels{gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.audit-level{box-shadow:none;border-radius:16px;min-height:90px;background:#202d48}.audit-options{min-height:44px;font-size:12px}.audit-level.current{outline-color:#70ddd3}
#arcade-panel,#mod,.overlay{backdrop-filter:none!important}.card2,.panel,.dialog{animation:mobile-enter .18s ease-out!important;border-radius:22px!important}.card2{padding:20px}.card2 h2{font-size:28px}.card2 p{font:15px/1.5 system-ui}.card2 .big{font-size:54px}.card2 .stars{font-size:38px}
.reward-action{display:block;width:100%;min-height:46px;margin-top:12px;padding:12px 14px;border:1px solid #8fdcd46b;border-radius:13px;background:#194842;color:#d8fff8;font:750 13px/1.4 system-ui;box-shadow:none;cursor:pointer}.reward-action small{display:block;font-weight:500;opacity:.8;margin-top:2px}
@keyframes mobile-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* Continuous decorative motion competes with touch input and costs frame time. */
.blob,.fl,.logo span,.ttl span,.hero,.hero-art,.cloud,.home .btn,#home .btn,#race-controls strong,.board-wrap:before{animation:none!important}.card.done .em{animation-iteration-count:1}.btn,.primary,.secondary{transition:transform .12s ease!important}.btn:hover{filter:none}
body.game-block-burst .app{max-width:520px}body.game-block-burst .screen{padding:10px 12px;gap:6px}body.game-block-burst .game{--board:min(calc(100vw - 24px),450px,calc(100dvh - 244px))}body.game-block-burst .adventure{--board:min(calc(100vw - 24px),450px,calc(100dvh - 274px))}body.game-block-burst .score-area{padding:3px 0}body.game-block-burst .score{font-size:38px}body.game-block-burst .board-wrap{box-shadow:0 4px #102345;border-width:2px}body.game-block-burst .tray{height:85px}body.game-block-burst .tray-zone{padding-top:8px}body.game-block-burst .tool-button{min-height:42px;font:700 12px system-ui;padding:8px}body.game-block-burst .hint-button{min-height:42px}body.game-block-burst .hero-art{width:min(64%,225px,27dvh)}body.game-block-burst .home-center{gap:17px}body.game-block-burst .primary,body.game-block-burst .secondary{border-radius:15px;box-shadow:0 3px #15274966}
body.game-candy-match .app{max-width:520px;padding:10px 12px;gap:8px}body.game-candy-match .home{gap:16px;padding:18px 0}body.game-candy-match h1{font-size:clamp(48px,13vw,66px)}body.game-candy-match .hero{grid-template-columns:repeat(3,48px);gap:8px}body.game-candy-match #game{flex:1;min-height:0;justify-content:center;gap:8px}body.game-candy-match #frame{width:min(100%,calc(100dvh - 254px));min-width:0;align-self:center}body.game-candy-match .actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}body.game-candy-match .actions button{padding:8px 3px;font:700 11px/1.2 system-ui;min-height:44px;box-shadow:none;border-radius:12px}body.game-candy-match #notice{font-size:11px;min-height:28px!important}body.game-candy-match #lv{max-height:180px}body.game-candy-match .icon{box-shadow:0 2px #1b102966;backdrop-filter:none}
body.game-zen-memory #home{gap:18px}body.game-zen-memory #home .ttl{font-size:clamp(46px,13vw,70px)}body.game-zen-memory .screen{padding:12px}body.game-zen-memory .btn{font:800 16px system-ui;padding:12px 23px;min-height:46px;border-radius:14px;box-shadow:0 3px #0003}body.game-zen-memory #cmb{height:23px;font-size:17px}body.game-zen-memory .top{max-width:520px}body.game-zen-memory .bot{max-width:520px}body.game-zen-memory #mt{font:12px system-ui;max-width:38vw;padding:7px}body.game-zen-memory #me{font-size:26px}body.game-zen-memory .bot .btn{font:700 12px system-ui;min-height:44px;padding:10px}body.game-zen-memory .lv{border-radius:16px;min-height:94px;box-shadow:0 3px #0004}body.game-zen-memory .world{margin-top:14px}body.game-zen-memory .in{transition:transform .24s ease-out}body.game-zen-memory .card:not(.up):hover .in{transform:none}body.game-zen-memory .pill{font:700 12px system-ui;backdrop-filter:none}
body.game-panda-bubbles .panel{max-width:380px;padding:18px;border-width:1px;box-shadow:0 8px 25px #0005}body.game-panda-bubbles .pandaBadge{width:80px;height:80px;font-size:44px}body.game-panda-bubbles .logo{font-size:31px;margin:12px 0}body.game-panda-bubbles .primary,body.game-panda-bubbles .secondary{font:800 13px/1.3 system-ui;border-radius:13px;min-height:46px;padding:12px;box-shadow:0 3px #111444}body.game-panda-bubbles .booster{border-radius:14px;width:46px;height:46px;box-shadow:0 3px #15103c}body.game-panda-bubbles .overlay{padding:14px}body.game-panda-bubbles .hud{gap:6px}body.game-panda-bubbles .pill{padding:5px 7px}body.game-panda-bubbles #objective{font:700 12px/1.4 system-ui}body.game-panda-bubbles .shopItem{border-radius:13px}body.game-panda-bubbles .cards .card{min-height:88px;border-radius:14px}
body.game-paint-battle .scr{padding:18px 12px;justify-content:safe center;gap:14px;touch-action:pan-y}body.game-paint-battle .logo{font-size:clamp(48px,13vw,76px)}body.game-paint-battle .btn{font:800 15px system-ui;min-height:46px;padding:12px 22px;border-radius:14px;box-shadow:0 3px #0004}body.game-paint-battle .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:460px;width:100%}body.game-paint-battle .card{width:auto;padding:12px 6px;border-radius:15px;box-shadow:none;border-width:2px}body.game-paint-battle .lvls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:460px;width:100%;gap:9px}body.game-paint-battle .lv{min-width:0;border-radius:13px;padding:10px 5px;box-shadow:0 2px #0004}body.game-paint-battle .lv b{font-size:23px}body.game-paint-battle h2{font:800 21px system-ui}body.game-paint-battle .tag{font:13px/1.5 system-ui}body.game-paint-battle #time{font-size:26px;min-width:48px}body.game-paint-battle #chips{font-size:10px;gap:4px}body.game-paint-battle #dash{width:66px;height:66px;font:800 15px system-ui;bottom:18px;right:16px;box-shadow:0 3px #901d4c}
body.game-draw-race #race-controls{top:64px;left:10px;right:10px}body.game-draw-race #race-controls strong{font:850 23px system-ui;text-shadow:0 2px #314778}body.game-draw-race #race-controls button{font:750 11px system-ui;min-height:44px;padding:10px;margin:3px;border-radius:12px;box-shadow:0 2px #0003}body.game-draw-race #race-help{font:12px/1.4 system-ui;margin:7px 0;padding:8px 12px;max-width:95%}body.game-draw-race #pad{width:min(84vw,400px,calc((100dvh - 260px)*5/3));bottom:14px;border-radius:20px;border-width:3px}body.game-draw-race #start-race{font-size:13px!important;min-height:44px;animation:none!important}
body.game-trapdoor #rot{display:none!important}body.game-trapdoor #stage{height:calc(100dvh - 125px);padding:56px 8px 0}body.game-trapdoor .b{width:64px;height:64px;bottom:20px;font:800 23px system-ui;border-radius:19px}body.game-trapdoor #br{left:88px}body.game-trapdoor #bj{width:76px;height:76px;right:16px}body.game-trapdoor #mute{left:16px;transform:none;width:44px;padding:8px}body.game-trapdoor #trap-map{z-index:9;padding-top:68px}body.game-trapdoor #trap-map .audit-levels{grid-template-columns:repeat(2,minmax(0,1fr))}body.game-trapdoor #trap-map .audit-level{min-height:90px}body.game-trapdoor .orientation-tip{position:fixed;top:20px;left:72px;right:12px;text-align:center;color:#b8b7d5;font:11px/1.4 system-ui;pointer-events:none}
body.game-banjo-cat #display{height:clamp(145px,25dvh,190px)!important;min-height:145px}body.game-banjo-cat #studio{padding:12px;margin:8px 12px;border-radius:17px;box-shadow:none}body.game-banjo-cat header{padding:14px 14px 0}body.game-banjo-cat h1{font-size:20px}body.game-banjo-cat #tip{font-size:12px}body.game-banjo-cat #pad{height:110px}body.game-banjo-cat #chords{padding:8px 12px;gap:6px}body.game-banjo-cat #chords button{font-size:12px;min-height:44px}body.game-banjo-cat #notes{padding-bottom:5px}body.game-banjo-cat .studio-actions{margin:8px 0}
body.game-ludo .gold{box-shadow:0 3px #153569!important}body.game-ludo .home{gap:14px}body.game-ludo #home{padding-bottom:16px}body.game-ludo .panel{max-height:calc(100dvh - 32px);overflow:auto}body.game-ludo #fs{display:none}
@media(max-height:520px){.arcade-sheet{padding:16px}.card2{max-height:calc(100dvh - 24px);overflow:auto}.audit-map{padding-top:12px}.audit-levels{grid-template-columns:repeat(4,minmax(0,1fr))}body.game-trapdoor #stage{height:100dvh;padding:0}body.game-trapdoor .orientation-tip{display:none}body.game-trapdoor .b{opacity:.8;bottom:12px;width:52px;height:52px}body.game-trapdoor #bj{width:60px;height:60px}body.game-trapdoor #trap-map{padding-top:60px}body.game-trapdoor #trap-map .audit-levels{grid-template-columns:repeat(4,minmax(0,1fr))}body.game-draw-race #pad{width:220px;left:auto;right:12px;transform:none}body.game-draw-race #race-controls{right:250px;top:65px}body.game-zen-memory .bot{gap:5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.bonus-choice{position:absolute;inset:0;z-index:100;background:#0c162aeb;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px}.bonus-choice>button{width:min(340px,100%)}
body.game-ludo{background:radial-gradient(ellipse at top,#285279,#122840);font-family:system-ui}body.game-ludo #pat{animation:none;opacity:.3}body.game-ludo .bar{padding:12px 14px;background:#122a42;border:0;border-radius:0;gap:9px}body.game-ludo .av{width:40px;height:40px;font-size:25px;border:0;border-radius:12px}body.game-ludo .av u{display:none}body.game-ludo .bar b{font:750 14px system-ui}body.game-ludo .coin{font:750 15px system-ui}body.game-ludo #home{padding-bottom:22px}body.game-ludo #gear{left:auto;right:12px;top:76px;width:44px;height:44px;font:700 19px system-ui}body.game-ludo #more{left:12px;right:auto;top:76px;padding:10px 14px;min-height:44px;font:700 11px system-ui}body.game-ludo .logo{margin-top:82px}body.game-ludo .crown,body.game-ludo .king{display:none}body.game-ludo .lt{width:60px;font-size:40px;border-width:3px;box-shadow:0 3px var(--kd);animation:none}body.game-ludo .stage{height:130px;width:min(330px,90vw);margin-top:18px}body.game-ludo .stage .pw{animation:none;filter:none}body.game-ludo .mode{display:flex;align-items:center;gap:16px;width:min(330px,calc(100vw - 40px));background:#1d4264;border:1px solid #aac9db30;border-radius:16px;box-shadow:none;padding:12px 16px;margin-top:12px;text-align:left}body.game-ludo .mode .art{width:44px;height:44px;flex:none;font:25px system-ui;background:#315678;border:0;border-radius:12px}body.game-ludo .mode b{font:800 14px/1.35 system-ui;text-shadow:none;padding:0}body.game-ludo .club-note{font-size:10px;margin-top:16px}body.game-ludo .ib,body.game-ludo .gb{border:1px solid #aac9db30;border-radius:13px;background:#244e70;box-shadow:none;min-height:44px;font:800 15px system-ui;color:#e9f9ff;text-shadow:none}body.game-ludo .panel{border:1px solid #aac9db40;background:#1e3d5a;box-shadow:0 15px 40px #0005;border-radius:20px;padding:20px}body.game-ludo .panel h2{font:800 24px system-ui}body.game-ludo .opt{font:750 16px system-ui;text-shadow:none;gap:14px;padding:10px}body.game-ludo .rd{width:40px;height:40px;border-width:2px;font:23px system-ui}body.game-ludo .dbox{width:120px;height:64px;border-width:1px;background:#183d60;box-shadow:none}body.game-ludo .strip{height:70px}body.game-ludo .dice{width:50px;height:50px;border-radius:12px}body.game-ludo #say{font:700 12px system-ui;border-width:1px;padding:8px}body.game-ludo #gbk{left:12px;top:12px;margin:0;width:44px;height:44px}body.game-ludo #game{padding-top:62px}body.game-ludo #dlg.on>*{animation:mobile-enter .18s ease-out}body.game-ludo .dice.ready{animation:none;outline:2px solid #fff;outline-offset:2px;box-shadow:none}
body.game-ludo #game{--bs:min(calc(100vw - 24px),calc(100dvh - 248px),560px)}body.game-ludo #arena{gap:5px}
body.game-panda-bubbles #rotateHint{display:none!important}@media(max-height:500px){body.game-panda-bubbles #launcherUi{height:80px}body.game-panda-bubbles #panda{transform:translateX(-50%) scale(.65);transform-origin:bottom center}body.game-panda-bubbles .hud .big{font-size:15px}body.game-panda-bubbles .hud .tiny{font-size:8px}body.game-panda-bubbles #objective{top:58px;font-size:10px}body.game-panda-bubbles .iconBtn{width:40px;height:40px}body.game-panda-bubbles .booster{width:42px;height:42px;font-size:22px}body.game-panda-bubbles .pandaBadge{width:58px;height:58px;font-size:32px}body.game-panda-bubbles .logo{font-size:25px}body.game-panda-bubbles .panel p{font-size:11px}}
body.game-candy-match .app{height:100dvh;min-height:0}body.game-candy-match .app:has(#game:not([hidden]))>header{display:none}body.game-candy-match #frame{width:min(100%,calc(100dvh - 284px))}body.game-candy-match #game>*{flex-shrink:0}body.game-candy-match #game{gap:6px}body.game-candy-match .stat{box-shadow:none}body.game-candy-match .progress{height:8px}body.game-ludo #game{--bs:min(calc(100vw - 24px),calc(100dvh - 270px),560px)}body.game-ludo #gbk{left:12px!important;top:12px!important;margin:0!important}body.game-banjo-cat .fret-story{max-width:440px;width:calc(100% - 24px);margin:auto;touch-action:pan-y}body.game-banjo-cat .fret-story summary{min-height:42px;padding:12px;background:#dcccac;border-radius:12px;font:700 12px system-ui;cursor:pointer}body.game-banjo-cat #display{height:clamp(145px,24dvh,180px)!important}
@media(orientation:landscape) and (max-height:520px){body.game-candy-match .app{max-width:940px}body.game-candy-match #game{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:44px 48px 8px 32px 1fr;column-gap:18px;row-gap:7px;align-content:center}body.game-candy-match #frame{grid-column:1;grid-row:1/6;width:min(100%,calc(100dvh - 32px))}body.game-candy-match .level-row{grid-column:2;grid-row:1}body.game-candy-match .stats{grid-column:2;grid-row:2}body.game-candy-match .progress{grid-column:2;grid-row:3}body.game-candy-match #notice{grid-column:2;grid-row:4}body.game-candy-match .actions{grid-column:2;grid-row:5;align-self:center}body.game-ludo #game{padding:12px;--bs:min(calc(100dvh - 76px),calc(100vw - 210px),500px)}body.game-ludo #arena{display:grid;width:auto;grid-template-columns:76px var(--bs) 76px;grid-template-rows:var(--bs) auto;gap:8px}body.game-ludo #board{grid-column:2;grid-row:1}body.game-ludo #st0{grid-column:1;grid-row:1}body.game-ludo #st1{grid-column:3;grid-row:1}body.game-ludo .strip{flex-direction:column;height:100%;padding:0}body.game-ludo .dbox{width:70px;height:120px;flex-direction:column!important;padding:6px!important}body.game-ludo #say{grid-column:1/4;grid-row:2}body.game-block-burst .app{max-width:940px}body.game-block-burst .game.screen{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:42px 76px 44px 85px 44px;gap:5px 14px;--board:min(calc(100dvh - 36px),calc(50vw - 32px),450px)}body.game-block-burst .board-zone{grid-column:1;grid-row:1/6}body.game-block-burst .game .topbar{grid-column:2;grid-row:1}body.game-block-burst .score-area{grid-column:2;grid-row:2}body.game-block-burst .adventure-tools{grid-column:2;grid-row:3;width:100%}body.game-block-burst .tray-zone{grid-column:2;grid-row:4;padding:0}body.game-block-burst .hintbar{grid-column:2;grid-row:5}body.game-block-burst .game-foot{display:none}body.game-block-burst .tray-title{display:none}body.game-block-burst .game.screen .tray{height:80px}body.game-block-burst .adventure .goal{min-height:72px}}
