/* Panda Arcade 2.0 final pass — layout & genuine game actor response. */
:root{--pf-safe-bottom:env(safe-area-inset-bottom,0px)}
#backBtn.p20-news-link{position:relative!important;z-index:100!important;pointer-events:auto!important;touch-action:manipulation!important;min-height:48px;min-width:108px;flex-shrink:0}
header .topbar{position:relative;isolation:isolate}
#screenHome>.p126-care-rail{margin:8px 0 12px!important}
#screenHome>.p126-care-rail .p124-care-actions{padding:3px 0 10px!important;scroll-padding:5px;gap:9px!important}
#screenHome>.p126-care-rail .p124-care-actions>*{min-height:100px!important;flex:0 0 clamp(77px,22vw,92px)!important;max-width:92px!important;overflow:hidden}
#screenHome>.p126-care-rail .p124-care-actions img{max-height:51px!important}
.pf-stage-sparkle{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1;opacity:.6;background-image:radial-gradient(2px 2px at 12% 18%,#fff7c9aa 99%,transparent),radial-gradient(2px 2px at 80% 30%,#e5ffe9aa 99%,transparent),radial-gradient(3px 3px at 45% 60%,#fcffe7bb 99%,transparent);animation:pf-lights 5s ease-in-out infinite alternate}
.a120-world>.pf-stage-sparkle{z-index:1;opacity:.36}
.a120-world canvas{position:relative;z-index:2}
.a120-finish,.a120-message{z-index:12!important}
.catch-world{isolation:isolate}
.catch-world::after{content:"";position:absolute;inset:2% 0 0;pointer-events:none;background:radial-gradient(circle at 15% 22%,#ffffff4d,transparent 23%),radial-gradient(circle at 85% 60%,#f8ffa53a,transparent 27%);animation:pf-lights 5s ease-in-out infinite alternate;z-index:0}
.catch-world .catch-panda{transition:transform .16s ease,filter .2s ease;transform-origin:center bottom;animation:pf-catch-breathe 1s ease-in-out infinite alternate;will-change:transform}
.catch-world .catch-panda.pf-catch-action{animation:pf-catch-reach .3s ease-out 1;filter:drop-shadow(0 0 11px #ffed9475)}
.game-area.bros-mode .bros-panel{padding:15px!important;display:flex;align-items:center;justify-content:center;max-height:100%;overflow-y:auto;overscroll-behavior:contain}
.game-area.bros-mode .bros-panel.hide{display:none!important}
.game-area.bros-mode .bros-card{width:min(100%,345px)!important;min-width:0;max-height:calc(100dvh - 130px);overflow-y:auto;padding:19px 16px!important;box-sizing:border-box;color:#1a4434!important}
.game-area.bros-mode .bros-card h3{color:#194835!important;font-size:clamp(20px,6vw,27px)!important;line-height:1.17!important;overflow-wrap:anywhere}
.game-area.bros-mode .bros-card p{color:#486454!important;font-size:clamp(12px,3.4vw,15px)!important;overflow-wrap:anywhere}
.game-area.bros-mode .bros-card button{max-width:100%;font-size:clamp(13px,4vw,17px)!important;white-space:normal!important;line-height:1.25!important;min-height:52px!important;padding:10px!important;overflow-wrap:anywhere}
.game-area.bros-mode .bros-controls{bottom:max(10px,var(--pf-safe-bottom))!important}
.a120-controls{position:relative;z-index:6;align-items:center}
.a120-controls>[data-panda]{width:48px;height:56px;flex:0 0 48px;object-fit:contain}
.a120-controls>[data-tip]{overflow-wrap:anywhere}
.a120-controls>[data-main]{flex:0 0 auto;max-width:32%;line-height:1.18!important;white-space:normal!important;overflow-wrap:anywhere;min-height:46px!important}
.a120-hud>div{min-height:52px!important}
.a120-finish{overflow-y:auto!important;padding:12px!important;align-items:safe center;justify-items:center}
.a120-finish-card{max-height:calc(100dvh - 132px)!important;overflow-y:auto!important;overscroll-behavior:contain;min-width:0}
.tetris-hud,.maze-hud{max-width:100%;min-width:0}
#modal,#importModal{padding:calc(12px + env(safe-area-inset-top,0px)) 12px calc(12px + var(--pf-safe-bottom))!important;align-items:safe center!important;overflow-y:auto!important}
#modal .modal-card,#importModal .modal-card{width:min(100%,430px)!important;overflow-y:auto!important;overflow-wrap:anywhere!important}
#modal button,#importModal button{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
#toast.toast{max-width:calc(100vw - 24px)!important;left:12px!important;right:12px!important;transform:none!important;width:auto!important;bottom:calc(93px + var(--pf-safe-bottom))!important;text-align:center;overflow-wrap:anywhere;box-sizing:border-box}
.arcade-game-card .arcade-card-copy{min-width:0}.arcade-game-card p,.arcade-card-title{overflow-wrap:anywhere}
.arcade-cover{position:relative}.arcade-cover:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 20%,#fff6 0 2px,transparent 3px),radial-gradient(circle at 65% 64%,#fff5 0 2px,transparent 3px);background-size:140px 150px;animation:pf-lights 4.5s ease-in-out infinite alternate;opacity:.45}
@keyframes pf-lights{from{opacity:.23;transform:translateY(3px)}to{opacity:.7;transform:translateY(-5px)}}
@keyframes pf-catch-breathe{to{transform:translateY(-4px) scale(1.018)}}
@keyframes pf-catch-reach{0%{transform:translateY(0)}55%{transform:translateY(-14px) scale(1.08)}100%{transform:translateY(0)}}
@media(max-width:370px){#screenHome>.p126-care-rail .p124-care-actions>*{flex-basis:74px!important}.a120-hud{gap:3px!important}.a120-controls{gap:5px!important;padding-inline:6px!important}.a120-controls>[data-panda]{width:36px!important;flex-basis:36px!important}.a120-controls>[data-main]{max-width:31vw!important;padding:8px!important}}
@media(max-height:730px){.game-area.bros-mode .bros-card{max-height:calc(100dvh - 95px)}.a120-finish-card{max-height:calc(100dvh - 80px)!important}}
@media(prefers-reduced-motion:reduce){.catch-world .catch-panda,.catch-world::after,.pf-stage-sparkle,.arcade-cover:after{animation:none!important}}
