/* Mobile-only chrome; rules and the camera world remain untouched. */
@media(pointer:coarse) and (max-width:1100px){
 html,body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent}
 button,a{touch-action:manipulation}button{-webkit-touch-callout:none}
 .mobile-cards:not(.mobile-inspecting) #handCardFocus{display:none!important}
 #cardAimGhost{display:none!important}
 .mobile-inspecting #handCardFocus{display:grid!important;pointer-events:none}
 .tabletop-shell #playerStrip{left:max(10px,env(safe-area-inset-left));bottom:max(8px,env(safe-area-inset-bottom));width:28%;height:44px;gap:4px}
 .tabletop-shell #playerStrip .nexus-footer-core{width:28px;height:28px;flex-basis:28px}
 .tabletop-shell #playerStrip .stat small{font-size:8px;letter-spacing:.3px}
 .tabletop-shell #playerStrip .stat b,.tabletop-shell #playerStrip .stat[data-stat="hp"] b{font-size:15px}
 .tabletop-shell #playerStrip .nexus-income{font-size:9px}
 .tabletop-shell #playerStrip .nexus-footer-stats{gap:5px}
 .tabletop-shell .game-controls{right:max(10px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));height:44px;width:28%;display:flex;gap:3px}
 .tabletop-shell .game-controls #upgradeNexus,.tabletop-shell .game-controls #passTurn{min-height:44px;height:44px;min-width:44px;padding:3px 6px}
 .tabletop-shell .game-controls #passTurn{font-size:14px;background:#153b4ce8!important;border:1px solid #bca368;border-radius:5px;flex:1}
 .tabletop-shell .game-controls #upgradeNexus{font-size:10px;flex:1}
 .tabletop-shell .hand{left:30%;width:40%;height:90px;bottom:max(4px,env(safe-area-inset-bottom));display:flex;align-items:flex-end;justify-content:flex-start;gap:5px;overflow-x:auto;overflow-y:hidden;padding:8px 5px 4px;scrollbar-width:none;touch-action:pan-x;z-index:25}
 .tabletop-shell .hand::-webkit-scrollbar{display:none}
 .tabletop-shell .hand::after{display:none}
 .tabletop-shell .hand-card,.tabletop-shell .hand-card:first-child{flex:0 0 54px;width:54px;height:74px;margin:0;transform:none!important;min-height:0;touch-action:pan-x}
 .tabletop-shell .hand-card.selected{border-color:#a4f3ff;filter:none;box-shadow:0 0 0 2px #8ae9ff}
 .tabletop-shell .hand-card img{width:100%;height:100%}
 body:has(.arena:not([hidden])) .topbar #pauseButton{left:max(8px,env(safe-area-inset-left));top:4px;min-height:44px}
 body:has(.arena:not([hidden])) .topbar .header-tools{right:max(8px,env(safe-area-inset-right));gap:2px}
 body:has(.arena:not([hidden])) .header-tools>button{width:44px;flex-basis:44px;height:44px}
 body:has(.arena:not([hidden])) .topbar .player-chip{display:none}
 .tabletop-shell.touch-camera-host>.touch-camera-ui{right:max(8px,env(safe-area-inset-right));top:110px;gap:4px}
 .touch-camera-tools{padding:0}.touch-camera-ui button{width:44px;height:44px}
 dialog{max-width:calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right) - 24px);max-height:calc(100dvh - 24px);overflow-y:auto}
 dialog button{min-height:44px}
 .tabletop-shell>.battle-state{bottom:55px;right:max(12px,env(safe-area-inset-right));font-size:9px}
 .rotate-device{padding:24px}
}
@media(pointer:coarse) and (max-width:740px){.tabletop-shell #playerStrip .nexus-footer-core{display:none}.tabletop-shell #playerStrip .nexus-income{display:none}.tabletop-shell .game-controls #upgradeNexus svg{display:none}.tabletop-shell .hand-card,.tabletop-shell .hand-card:first-child{flex-basis:48px;width:48px;height:66px}.tabletop-shell .hand{height:80px}}
