.mobile-controls{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}@media(min-width:1025px)and (pointer:fine){.mobile-controls{display:none!important}}@media(pointer:coarse){.mobile-controls{display:block}}.virtual-joystick-base{position:relative;border-radius:50%;background:radial-gradient(circle,#32323299,#1e1e1ecc);border:3px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #0006,inset 0 -2px 8px #0000004d;transition:opacity .2s ease;touch-action:none;cursor:pointer}.virtual-joystick-stick{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#969696e6,#505050e6);border:3px solid rgba(255,255,255,.5);box-shadow:0 2px 6px #00000080,inset 0 1px 3px #ffffff4d;transition:transform .05s ease-out;pointer-events:none}.virtual-joystick-base.active{border-color:#64c8ff99;box-shadow:0 4px 16px #64c8ff66,inset 0 -2px 8px #0000004d}.touch-fire-button{position:relative;border-radius:50%;background:radial-gradient(circle,#c83232cc,#961414e6);border:4px solid rgba(255,100,100,.5);box-shadow:0 4px 12px #f006,inset 0 -2px 8px #0000004d;display:flex;align-items:center;justify-content:center;transition:all .2s ease;touch-action:none;cursor:pointer}.touch-fire-button .touch-fire-icon{font-size:32px;pointer-events:none;z-index:2;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.touch-fire-button.active{transform:scale(.95);border-color:#ff9696cc;box-shadow:0 6px 16px #f009,inset 0 -2px 8px #0000004d}.touch-fire-button.charging{border-color:#ffc800cc;box-shadow:0 6px 20px #ffc800b3,inset 0 -2px 8px #0000004d;animation:pulse .5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(.95)}50%{transform:scale(1)}}.touch-fire-charge{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:transparent;pointer-events:none;z-index:1;transition:background .05s linear}.barrel-slider-track{position:relative;background:linear-gradient(to bottom,#323232b3,#1e1e1ecc);border:2px solid rgba(255,255,255,.3);border-radius:20px;box-shadow:0 2px 8px #0006,inset 0 2px 6px #0000004d;transition:opacity .2s ease;touch-action:none;cursor:ns-resize}.barrel-slider-target{position:absolute;left:0;width:100%;height:4px;background:#ffc800e6;border-radius:2px;box-shadow:0 0 8px #ffc80099,0 1px 2px #00000080;pointer-events:none;z-index:2;transition:top .1s ease-out}.barrel-slider-current{position:absolute;left:0;width:100%;height:4px;background:#64c8ffcc;border-radius:2px;box-shadow:0 0 6px #64c8ff80,0 1px 2px #00000080;pointer-events:none;z-index:1;transition:top .05s linear}.barrel-slider-label{position:absolute;right:105%;font-size:11px;color:#fffc;font-family:monospace;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.8);pointer-events:none;white-space:nowrap;text-align:right}.barrel-slider-label-top{top:0;transform:translateY(-50%)}.barrel-slider-label-mid{top:50%;transform:translateY(-50%)}.barrel-slider-label-bottom{bottom:0;transform:translateY(50%)}.mobile-radar-toggle{position:fixed;width:40px;height:40px;border-radius:50%;background:#00000080;border:2px solid rgba(255,255,255,.5);color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:all;z-index:1001;transition:all .2s ease;box-shadow:0 2px 6px #0000004d}.mobile-radar-toggle:hover,.mobile-radar-toggle:active{background:#000000b3;border-color:#fffc;transform:scale(1.05)}@media(max-width:1024px)and (pointer:coarse),(pointer:coarse){#stats-panel{font-size:.9em;padding:6px 10px!important;max-width:180px;border:none!important;min-width:140px!important;top:10px!important;left:10px!important}#timer{left:auto!important;right:125px!important;transform:none!important;top:10px!important;border:none!important;padding:10px 15px!important;font-size:24px!important}.stat-label{margin-right:3px!important;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:22px;vertical-align:middle}.stat-item{margin:4px 0!important;gap:0!important;justify-content:flex-start!important;align-items:center!important}.stat-item>div{text-align:left!important;display:inline-flex;align-items:center}.stat-value{margin-left:0!important;margin-right:0!important}#ammo-display,#special-ammo,#kills{text-align:left!important}#health-bar{width:80px!important;height:16px!important}#radar{opacity:.6}}@media(max-width:1024px){#new-game-menu,#quit-confirm,#game-over{min-width:300px!important;max-width:90vw!important;padding:20px!important;max-height:90vh;overflow-y:auto}#new-game-menu h1{font-size:32px!important;margin-bottom:20px!important}#new-game-menu label{font-size:16px!important}#new-game-menu select{font-size:14px!important;padding:8px!important}#new-game-menu p{font-size:12px!important}#start-mission-btn{font-size:18px!important;padding:12px 30px!important;margin-top:20px!important}#quit-confirm h2{font-size:24px!important;margin-bottom:15px!important}#quit-confirm p{font-size:16px!important;margin-bottom:20px!important}#quit-cancel-btn,#quit-confirm-btn{font-size:16px!important;padding:12px 24px!important}}@media(max-width:480px){#new-game-menu,#quit-confirm,#game-over{min-width:260px!important;max-width:95vw!important;padding:10px!important;max-height:95vh!important;overflow-y:auto!important}#new-game-menu h1,#game-over h1{font-size:18px!important;margin-bottom:8px!important}#game-over p{font-size:12px!important;margin-bottom:10px!important}#restart-btn{font-size:14px!important;padding:8px 20px!important}#new-game-menu label{font-size:12px!important;margin-bottom:3px!important;display:block!important}#new-game-menu select{font-size:11px!important;padding:4px!important;width:100%!important}#new-game-menu p{font-size:9px!important;margin-top:2px!important;line-height:1.2!important}#new-game-menu div[style*="margin: 20px 0"]{margin:6px 0!important}#start-mission-btn{font-size:13px!important;padding:6px 16px!important;margin-top:8px!important}#quit-confirm h2{font-size:16px!important;margin-bottom:6px!important}#quit-confirm p{font-size:12px!important;margin-bottom:10px!important}#quit-cancel-btn,#quit-confirm-btn{font-size:12px!important;padding:6px 14px!important}#quit-confirm div[style*="display: flex"]{gap:6px!important}}@media(max-height:450px){#new-game-menu,#quit-confirm,#game-over{padding:8px!important;max-height:98vh!important;max-width:70vw!important;min-width:0!important;overflow-y:auto!important}#new-game-menu h1,#game-over h1{font-size:16px!important;margin-bottom:6px!important}#game-over p{font-size:11px!important;margin-bottom:8px!important}#restart-btn{font-size:12px!important;padding:5px 14px!important}#new-game-menu label{font-size:11px!important;margin-bottom:2px!important}#new-game-menu select{font-size:10px!important;padding:3px!important}#new-game-menu p{font-size:8px!important;margin-top:1px!important;line-height:1.1!important}#new-game-menu div[style*="margin: 20px 0"]{margin:4px 0!important}#start-mission-btn{font-size:12px!important;padding:5px 14px!important;margin-top:6px!important}}@media(max-width:767px){.mission-config-grid{grid-template-columns:1fr!important;gap:12px!important}.mission-field-fullwidth{grid-column:1!important}}@media(max-width:1024px){#controls-modal{min-width:300px!important;max-width:90vw!important;padding:20px!important;max-height:90vh!important;overflow-y:auto!important}#controls-modal h2{font-size:24px!important;margin-bottom:15px!important}#controls-modal h3{font-size:18px!important;margin-bottom:10px!important}#controls-modal div[style*="font-size: 18px"]{font-size:14px!important}#controls-modal div[style*="margin-left: 20px"]{margin-left:15px!important}#close-controls-btn{font-size:16px!important;padding:10px 30px!important}#game-stats,#mode-specific-stats{font-size:16px!important;margin:15px 0!important}#game-stats div,#mode-specific-stats div{margin:8px 0!important;line-height:1.4!important}}@media(max-width:768px){#quit-confirm div[style*="display: flex"][style*="gap: 20px"]{flex-direction:column!important;gap:10px!important}#quit-cancel-btn,#quit-confirm-btn,#quit-restart-btn,#quit-to-lobby-btn,#view-controls-btn{width:100%!important;padding:12px 20px!important;font-size:14px!important;min-height:44px!important}#game-stats,#mode-specific-stats{font-size:15px!important;margin:12px 0!important}}@media(max-width:480px){#controls-modal{min-width:260px!important;max-width:95vw!important;padding:15px!important;max-height:95vh!important}#controls-modal h2{font-size:20px!important;margin-bottom:12px!important}#controls-modal h3{font-size:16px!important;margin-bottom:8px!important}#controls-modal div[style*="font-size: 18px"]{font-size:12px!important;line-height:1.5!important}#controls-modal div[style*="margin-left: 20px"]{margin-left:10px!important}#close-controls-btn{font-size:14px!important;padding:10px 25px!important;min-height:44px!important}#quit-confirm div[style*="display: flex"]{gap:8px!important}#quit-cancel-btn,#quit-confirm-btn,#quit-restart-btn,#quit-to-lobby-btn,#view-controls-btn{padding:10px 16px!important;font-size:13px!important;min-height:44px!important}#game-stats,#mode-specific-stats{font-size:14px!important;margin:10px 0!important}#game-stats div,#mode-specific-stats div{margin:6px 0!important;word-break:break-word!important;line-height:1.3!important}#new-game-menu h1{font-size:22px!important;margin-bottom:12px!important}#new-game-menu label{font-size:14px!important;margin-bottom:4px!important}#new-game-menu select{font-size:13px!important;padding:8px!important;min-height:44px!important}#new-game-menu p{font-size:11px!important;line-height:1.3!important;margin-top:3px!important}#start-mission-btn{font-size:15px!important;padding:10px 20px!important;min-height:44px!important;margin-top:10px!important}}@media(orientation:landscape)and (max-height:500px){#new-game-menu{max-height:100vh!important;overflow-y:auto!important;padding:20px!important}#new-game-menu h1{font-size:30px!important;margin-bottom:12px!important}.mission-config-grid{gap:8px 12px!important;margin:12px 0!important}#new-game-menu label{font-size:14px!important;margin-bottom:4px!important}#new-game-menu select{padding:6px!important;font-size:13px!important}#new-game-menu p{font-size:10px!important;margin-top:2px!important}#start-mission-btn{margin-top:12px!important;padding:8px 25px!important;font-size:16px!important}.tank-selection-container{max-height:100vh!important;overflow-y:auto!important}.tank-selection-container h1{font-size:36px!important;margin-bottom:15px!important}.sp-menu-container{max-height:100vh!important;overflow-y:auto!important}.sp-menu-header h1{font-size:36px!important;margin-bottom:15px!important}#game-over{max-height:100vh!important;overflow-y:auto!important;padding:20px!important}#game-over h1{font-size:38px!important;margin-bottom:12px!important}#game-over p{font-size:16px!important;margin-bottom:15px!important}#quit-confirm{max-height:100vh!important;overflow-y:auto!important;padding:25px!important}#quit-confirm h2{font-size:24px!important;margin-bottom:12px!important}#quit-confirm p{font-size:14px!important;margin-bottom:15px!important}#controls-modal{max-height:100vh!important;overflow-y:auto!important;padding:20px!important}#controls-modal h2{font-size:22px!important;margin-bottom:12px!important}#controls-modal h3{font-size:16px!important;margin-bottom:8px!important}}.joystick-container,.fire-button-container,.slider-container{pointer-events:all}.virtual-joystick-base,.touch-fire-button,.barrel-slider-track{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}@media(max-width:480px){.virtual-joystick-base{width:120px!important;height:120px!important}.touch-fire-button{width:70px!important;height:70px!important}.touch-fire-button .touch-fire-icon{font-size:28px}.barrel-slider-track{width:35px!important;height:180px!important}#stats-panel{font-size:.8em;padding:6px}#radar,#radar-canvas{width:120px!important;height:120px!important}}@media(min-width:481px)and (max-width:1024px){.virtual-joystick-base{width:160px!important;height:160px!important}.touch-fire-button{width:90px!important;height:90px!important}.touch-fire-button .touch-fire-icon{font-size:36px}.barrel-slider-track{width:45px!important;height:220px!important}}@media(min-width:768px)and (max-width:1024px)and (orientation:landscape){.joystick-container,.fire-button-container{bottom:30px!important}}@media(max-height:600px){.barrel-slider-track{height:140px!important}#stats-panel{font-size:.75em;padding:4px}#timer{font-size:.9em}}@media(prefers-contrast:high){.virtual-joystick-base,.touch-fire-button,.barrel-slider-track{border-width:3px;border-color:#ffffffe6}}.weapon-debug-card{background:#00ffff1a;border:1px solid #0ff;border-radius:5px;padding:8px;margin:5px 0;font-size:11px}.weapon-card-header{color:#0ff;font-weight:700;margin-bottom:5px;font-size:12px}.weapon-stat{color:#aaa;margin:2px 0;line-height:1.4}.weapon-stat span{color:#0f0;font-weight:700}@media(prefers-reduced-motion:reduce){.virtual-joystick-base,.touch-fire-button,.barrel-slider-track,.barrel-slider-target,.barrel-slider-current,.mobile-radar-toggle{transition:none!important;animation:none!important}}.key-help{margin:0 0 12px;font-size:13px;color:#aaa;line-height:1.4}.key-table{display:flex;flex-direction:column;gap:6px}.key-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 110px;gap:8px;align-items:center}.key-action{color:#fff;font-size:15px}.key-slot{padding:6px 8px;min-height:32px;background:#ffffff14;color:#0f0;border:1px solid rgba(0,255,0,.5);border-radius:6px;font-family:monospace;font-size:14px;cursor:pointer}.key-slot:hover{background:#00ff0026}.key-slot.empty{color:#777;border-style:dashed}.key-slot.capturing{color:#000;background:#fc0;border-color:#fc0}.key-warning{margin:12px 0 0;color:#fa0;font-size:13px}#reset-keys-btn{margin-top:14px;font-size:14px;padding:8px 16px}@media(max-width:480px){.key-row{grid-template-columns:minmax(0,1fr) 80px 80px}}
