/* Mobile presentation only; world positions and desktop framing stay unchanged. */
.mobile-camera[hidden]{display:none!important}
.mobile-farm #farm-canvas{height:var(--mobile-map-height,440px);aspect-ratio:auto;overflow:hidden}
.mobile-farm #farm-canvas canvas{width:100%!important;height:100%!important;touch-action:none;user-select:none;-webkit-user-select:none}
.mobile-camera{padding:10px;background:#f7e8bf;color:#624220;border-top:2px solid #a57b44}
.mobile-sectors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.mobile-camera button,.mobile-camera select{min-width:0;min-height:44px;border:2px solid #93703d;border-radius:9px;background:#fff5d6;color:#5d3c21;padding:6px;font:700 13px Trebuchet MS,system-ui,sans-serif;touch-action:manipulation}
.mobile-camera select{width:100%}.mobile-zoom{display:grid;grid-template-columns:50px minmax(90px,1fr) 50px;gap:8px;max-width:290px;margin:8px auto 0}.mobile-zoom button:not([data-camera-zoom=all]){font-size:24px}.mobile-camera p{font-size:12px;line-height:1.4;margin:8px 0 0;text-align:center}
.mobile-camera :focus-visible{outline:3px solid #3a728b;outline-offset:2px}.mobile-camera button:active{background:#d0e793}
.mobile-farm>.game-menu{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:calc(100% - 12px);max-width:calc(100% - 12px);gap:5px;padding:6px;margin:8px auto}
.mobile-farm>.game-menu button{min-width:0;min-height:58px;padding:5px 2px;touch-action:manipulation}.mobile-farm>.game-menu small{font-size:11px}.mobile-farm>.game-menu button>span{font-size:24px}
@media(max-width:760px),(pointer:coarse){
 .game{padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));padding-bottom:max(14px,env(safe-area-inset-bottom))}
 .game-dialog{max-height:calc(100dvh - 20px);width:calc(100% - 16px)}.window-content{min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:max(16px,env(safe-area-inset-bottom))}
 .game-dialog button,.seed-dialog button{min-height:44px}.game-dialog input,.game-dialog select,.seed-dialog input,.farm-name-dialog input,.account-card input{font-size:16px}
 .game-dialog .item{min-width:0}.item-info{min-width:0;overflow-wrap:anywhere}.seed-dialog,.farm-name-dialog{box-sizing:border-box;max-height:calc(100dvh - 24px);overflow-y:auto}
 .account-card{box-sizing:border-box;width:min(440px,100%)}#account-screen{box-sizing:border-box;padding:20px 12px}
 .farm-bottom{gap:10px;flex-wrap:wrap}.farm-bottom>*{min-width:0}.farm-bottom button{width:100%;white-space:normal;min-height:44px}
}
@media(max-width:480px){.topbar{padding:10px;gap:8px}.topbar .brand{font-size:1.25rem}.topbar .brand small{font-size:.8rem}.topbar .avatar{width:38px;height:38px;flex:none}.topbar .player-info strong{font-size:13px}.topbar .player-info small{font-size:11px}.topbar .coins{grid-column:1 / 3}.future-stat{font-size:12px}}

@media(max-width:360px){.mobile-farm>.game-menu{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px),(pointer:coarse){.game-dialog .sale-actions button.action{min-width:44px;min-height:44px}.game-dialog select,.game-dialog .action,.game-dialog .secondary{min-height:44px}}
