/* Full-viewport play for phones/tablets; the same detector also drives rotation. */
.mobile-game-menus{display:none}
html.mobile-ui body{padding:0;width:100%;height:100%;height:100dvh;overflow:hidden}
.mobile-ui .topbar,.mobile-ui .bottom-bar,.mobile-ui .control-footer{display:none}
.mobile-ui .game-shell{position:fixed;inset:0;width:100%;height:100%;min-height:0;flex:none;margin:0;border:0;border-radius:0;box-shadow:none}
.mobile-ui .version-tag,.mobile-ui .play-hud>.pause-button{display:none}
.mobile-ui .mobile-game-menus{position:absolute;z-index:12;display:flex;align-items:stretch;gap:8px;top:calc(12px + env(safe-area-inset-top));right:calc(14px + env(safe-area-inset-right))}
.mobile-game-menus button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:2px solid #303b25;border-radius:8px;background:#e6ddacef;box-shadow:2px 3px 0 #25301d66;padding:5px 10px;color:#37442b}
.mobile-game-menus b{font-size:13px;white-space:nowrap}.mobile-game-menus small{display:block;font-size:9px;line-height:1.4;max-width:75px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#6c7148}
#mobile-tools-button{min-width:96px}#mobile-options-button{min-width:76px}.menu-lines{font-size:19px}
#mobile-tool-art{display:flex;align-items:center;justify-content:center;width:30px;height:30px}#mobile-tool-art svg{width:27px;height:27px}#mobile-tool-art .tool-art{width:32px;height:27px}
.mobile-ui .play-hud{top:calc(12px + env(safe-area-inset-top));left:calc(14px + env(safe-area-inset-left));right:calc(14px + env(safe-area-inset-right));gap:0}
.mobile-ui .catch-hud{min-width:135px;max-width:150px;padding:7px 10px}
.mobile-ui .timer-hud{position:absolute;left:50%;transform:translateX(-50%);margin:0;min-width:90px;max-height:none;padding:5px 9px}
.mobile-ui .timer-hud strong{font-size:23px;margin:2px 0;line-height:1.1}.mobile-ui .timer-hud .hud-label{font-size:8px}
.mobile-ui .storage-hud{z-index:10;top:calc(68px + env(safe-area-inset-top));right:calc(14px + env(safe-area-inset-right));left:auto;bottom:auto;gap:7px}
.mobile-ui .storage-hud button{min-height:40px;padding:6px 10px;font-size:11px}.mobile-ui .storage-hud .truck-status{display:none!important}
.mobile-ui .playing .touch-controls{display:block;height:140px}
.mobile-ui .joystick{left:calc(24px + env(safe-area-inset-left));bottom:calc(22px + env(safe-area-inset-bottom));width:96px;height:96px}
.mobile-ui .joystick>span{left:23px;top:23px}
.mobile-ui .touch-actions{right:calc(24px + env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));gap:14px}
.mobile-ui .catch-control{width:82px;height:82px}.mobile-ui .secondary-control{width:62px;height:62px}
.mobile-ui .fishing-panel,.mobile-ui .fishing-panel[data-state=searching]{top:calc(76px + env(safe-area-inset-top));width:clamp(210px,calc(100vw - 360px),320px);padding:9px 12px}
.mobile-ui .fishing-panel strong,.mobile-ui .fishing-panel[data-state=searching] strong{font-size:13px}.mobile-ui .fishing-panel b{font-size:22px}.mobile-ui .fishing-panel small{font-size:9px}
.mobile-ui .catch-feed{top:calc(110px + env(safe-area-inset-top));left:calc(14px + env(safe-area-inset-left));max-width:160px}
.mobile-ui .playing .play-tip{bottom:calc(16px + env(safe-area-inset-bottom))!important;max-width:calc(100% - 350px);font-size:9px;pointer-events:none}
.mobile-ui .unload-button{right:calc(24px + env(safe-area-inset-right));bottom:calc(120px + env(safe-area-inset-bottom));padding:8px 12px}
.mobile-ui .showing-catch .mobile-game-menus{visibility:hidden}
.mobile-ui .catch-showcase{position:absolute;inset:calc(8px + env(safe-area-inset-top)) calc(8px + env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) calc(8px + env(safe-area-inset-left))}
.mobile-ui .home-heading{top:6%;max-width:60%}.mobile-ui .home-caption{bottom:calc(12px + env(safe-area-inset-bottom))}
.mobile-ui .home-orders{top:calc(72px + env(safe-area-inset-top))}
.mobile-ui #modal{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:min(740px,calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)))}
.mobile-ui #modal .modal-head{padding:13px 18px 9px}.mobile-ui #modal .modal-head h2{font-size:21px;letter-spacing:1px}.mobile-ui #modal .modal-body{padding:0 18px 15px}
.mobile-ui #modal .modal-close{min-width:40px;min-height:40px}
.options-summary,.tool-overview{display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:11px;color:#72764f;margin-bottom:13px}
.options-summary b,.tool-overview b{color:#435334;margin-left:5px;font-size:14px}
.sound-volume{display:flex;align-items:center;gap:12px;font-size:11px;color:#586b3e;margin:0 0 12px;min-height:24px}.sound-volume input{flex:1;min-width:70px;accent-color:#526e36;cursor:pointer}.sound-volume output{min-width:34px;text-align:right}
.options-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.options-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:102px;padding:9px 6px;border:2px solid #839161;border-radius:7px;background:#dce0b4;box-shadow:2px 2px #8a956450}
.options-grid b{font-size:13px}.options-grid small{font-size:10px;color:#72734c}.options-grid svg{width:29px;height:29px}.option-symbol{font:bold 26px Georgia,serif;color:#465a36;height:30px}
.mobile-tool-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.mobile-tool-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:113px;padding:8px 5px;border:2px solid #94986e;border-radius:7px;background:#dedfb8;box-shadow:2px 2px #8a956450}
.mobile-tool-card svg{width:41px;height:39px}.mobile-tool-card .tool-art{width:61px;height:39px}.mobile-tool-card b{font-size:12px;line-height:1.4;min-height:34px;display:flex;align-items:center;text-align:center}.mobile-tool-card small{font-size:10px;color:#6c734d}
.mobile-tool-card.active:disabled{opacity:1;border-color:#40532a;background:#c0d08d;color:#334921}.mobile-tool-card.active small{color:#3c5725;font-weight:700}.mobile-tool-card.locked .tool-art{opacity:.35;filter:grayscale(.7)}
.tool-menu-note{font-size:11px;color:#68764d;line-height:1.6;margin:12px 0 0}
.mobile-ui #modal[data-view=options] .modal-actions,.mobile-ui #modal[data-view=tools] .modal-actions{margin-top:14px;gap:12px}
.mobile-ui #modal[data-view=options] .modal-actions button,.mobile-ui #modal[data-view=tools] .modal-actions button{min-height:42px;font-size:12px;padding:8px 16px}
@media(max-height:360px){
  .mobile-ui .joystick{bottom:14px;width:86px;height:86px}.mobile-ui .joystick>span{left:18px;top:18px}
  .mobile-ui .touch-actions{bottom:14px}.mobile-ui .catch-control{width:72px;height:72px}.mobile-ui .secondary-control{width:56px;height:56px}
  .mobile-ui .fishing-panel,.mobile-ui .fishing-panel[data-state=searching]{padding:7px 9px}.mobile-ui .fishing-panel strong{font-size:11px}
  .mobile-ui .options-grid button{min-height:86px}.mobile-ui .mobile-tool-card{min-height:100px}.mobile-ui .tool-menu-note{margin-top:8px}
  .mobile-ui #modal .modal-head h2{font-size:18px}.mobile-ui #modal .modal-head{padding-top:9px}.mobile-ui .tool-overview{margin-bottom:9px;gap:14px}
}
