/* Each new game gets a dedicated touch stage; room/pet position is untouched behind it. */
body:has(.arcade-view) #arithmetic-panel:has(.arcade-view){position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;min-height:0!important;z-index:90!important;border:0!important;border-radius:0!important;padding:0!important;background:#222851!important;display:block!important;overflow:hidden!important;transform:none!important}
#arithmetic-panel:has(.arcade-view)[hidden]{display:none!important}
#arithmetic-panel:has(.arcade-view)>.question-header,#arithmetic-panel:has(.arcade-view)>.question-lead{display:none!important}
#arithmetic-panel:has(.arcade-view) #close-game{position:fixed;top:max(12px,env(safe-area-inset-top));left:14px;z-index:110;width:48px;height:48px;background:#fff;border:3px solid #dbd5ff;color:#334065;font-size:25px;display:block!important}
.arcade-view{height:100%;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto auto;gap:0;padding:0!important;max-width:none!important;direction:rtl}
.arcade-top{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 80px 12px 70px;background:linear-gradient(110deg,#473986,#346798);color:white;min-height:80px;box-sizing:border-box}
.arcade-top div{text-align:center;flex:1}.arcade-top small{display:block;font-size:12px;opacity:.85}.arcade-top strong{display:block;font-size:28px;line-height:1.3}.arcade-top button{width:46px;height:46px;flex-shrink:0;border:2px solid #ffffff8a;border-radius:16px;background:#ffffff24;color:white;font-size:22px;cursor:pointer}
.arcade-canvas-wrap{min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center}.arcade-view canvas{display:block;width:100%;height:100%;object-fit:contain;touch-action:none;outline-offset:-5px}.arcade-view canvas:focus-visible{outline:4px solid #ffe68b}
.arcade-status{text-align:center;background:#f5f0ff;color:#344769;padding:9px;font-weight:800;font-size:16px;min-height:24px}.arcade-controls{display:flex;justify-content:center;align-items:center;gap:12px;padding:10px 16px max(14px,env(safe-area-inset-bottom));background:#ede6ff;min-height:62px}.arcade-controls button{border:2px solid white;border-bottom:5px solid #a796d8;background:linear-gradient(#ffffff,#dfd3ff);color:#3d3767;min-height:54px;min-width:100px;border-radius:18px;font:800 19px Arial;padding:8px 22px;cursor:pointer;box-shadow:0 3px 8px #21154818}.arcade-controls button:active{transform:translateY(3px)}.arcade-controls button canvas{width:72px;height:54px}.arcade-won .arcade-status{background:#b1f1d3;color:#19674e}
.game-library-tabs{display:flex;gap:8px;margin:0 0 8px}.game-library-tabs button{flex:1;border:0;border-radius:12px;padding:8px;background:#e4e4f9;color:#404169;font-weight:800}.game-library-tabs button[aria-pressed=true]{background:#51449b;color:white}.game-discovery .game-tile[hidden]{display:none!important}.game-discovery .game-tile-icon img{width:100%;height:100%;object-fit:cover;border-radius:10px}.game-discovery .game-tile:has(img){padding:0 0 4px;overflow:hidden}.game-discovery .game-tile:has(img) .game-tile-icon{width:100%;height:64px}.game-discovery .game-tile:has(img) strong{font-size:12px;padding:0 3px}
@media(max-width:600px){.arcade-top{padding:10px 10px 10px 68px;gap:6px;min-height:85px}.arcade-top strong{font-size:23px}.arcade-top button{width:40px;height:40px}.arcade-controls{gap:8px}.arcade-controls button{min-width:75px;padding:8px 14px;font-size:16px}.arcade-status{font-size:14px}.game-discovery h2{font-size:17px;margin-bottom:4px}.game-library-tabs button{padding:5px}.game-library-tabs{margin-bottom:5px}.arcade-view canvas{object-fit:fill}}
@media(max-height:500px){.arcade-top{min-height:54px;padding-top:3px;padding-bottom:3px}.arcade-top strong{font-size:22px}.arcade-top small{display:none}.arcade-status{font-size:12px;padding:3px;min-height:16px}.arcade-controls{padding:3px;min-height:46px}.arcade-controls button{min-height:40px;font-size:15px;padding:3px 20px}.arcade-controls button canvas{height:34px}.arcade-view canvas{object-fit:contain}}
@media(prefers-reduced-motion:reduce){.arcade-controls button{transition:none}}

/* Pictures make the actions usable before children can read. */
.arcade-controls button[data-action]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.arcade-control-symbol{font:900 30px/1 Arial;direction:ltr}.arcade-control-caption{font-size:13px;line-height:1.15}
.arcade-direction-controls{direction:ltr}.arcade-direction-controls [data-action=hint]{order:1}.arcade-direction-controls [data-action=left]{order:0}.arcade-direction-controls [data-action=right]{order:2}
@media(max-height:500px){.arcade-controls button[data-action]{flex-direction:row;gap:8px}.arcade-control-symbol{font-size:26px}}
