#mobileControls{position:fixed;inset:0;z-index:21;pointer-events:none;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
#mobileControls[hidden],#mobileControls [hidden]{display:none!important}
.touchButton{position:absolute;transform:translate(-50%,-50%);border:1px solid #c3f7ff66;border-radius:50%;background:radial-gradient(circle at 35% 25%,#d1f9ff16,#09283d30);color:#dcfaffaa;box-shadow:inset 0 0 0 3px #b5eaff0c,0 2px 12px #0003;display:flex;align-items:center;justify-content:center;padding:10%;padding:9px;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent}
.touchButton svg{width:67%;height:67%;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 2px #001a)}
.touchButton>span{position:absolute;bottom:2px;font:9px system-ui;color:#e8faffbb;white-space:nowrap;pointer-events:none}
.touchButton.pressed{border-color:#80f6ffc0;background:#38bbc138;color:#edffff}
.touchButton[data-action="joystick"]{border:1px solid #e1faff44;background:#11233324}.touchButton[data-action="joystick"] svg{opacity:.25}.touchButton[data-action="joystick"]>span{bottom:10px}
.touchStick{position:absolute;width:36%;height:36%;border-radius:50%;border:1px solid #d4faff88;background:#9feaff25;transform:translate(var(--stick-x,0px),var(--stick-y,0px));pointer-events:none}
#mobileControls.editing{z-index:250;pointer-events:auto;background:linear-gradient(#041223b8,#08142165);background-image:linear-gradient(#a6dfff0a 1px,transparent 1px),linear-gradient(90deg,#a6dfff0a 1px,transparent 1px);background-size:32px 32px}
.editing .touchButton{color:#d9faff;border-color:#a1d8ed;background:#142d46bb}.editing .touchButton.selected{border:2px solid #ffce72;box-shadow:0 0 18px #ffc26455;color:#ffe5aa}
.touchEditorToolbar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:nowrap;padding:3px max(5px,env(safe-area-inset-right)) 3px max(5px,env(safe-area-inset-left));padding-top:max(3px,env(safe-area-inset-top));min-height:32px;box-sizing:border-box;background:#081a2fbb;border-bottom:1px solid #68ccde88;pointer-events:none;color:#d9faff;font:11px system-ui;z-index:2}
.touchEditorToolbar strong{display:none}.touchEditorToolbar label{display:flex;align-items:center;gap:4px;white-space:nowrap;letter-spacing:0}.touchEditorToolbar input{width:clamp(55px,12vw,130px);min-width:0;margin:0;pointer-events:auto;touch-action:none}.touchEditorToolbar button{padding:4px 8px;min-height:26px;border:1px solid #76c5d8;border-radius:4px;background:#1b425c;color:#edffff;pointer-events:auto;font:inherit;white-space:nowrap}.touchEditorToolbar #touchSelected{color:#ffce72;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.touchEditorToolbar output{min-width:28px}
@media(max-width:500px){.touchEditorToolbar{gap:4px;font-size:10px}.touchEditorToolbar #touchSelected{display:none}.touchEditorToolbar button{padding:4px 5px}}
.touchEditorToolbar label{margin:0;padding:0;font:inherit;text-transform:none}.touchEditorToolbar input[type=range]{height:20px;padding:0;border:0;background:transparent;box-shadow:none}.touchEditorToolbar button{margin:0}
.mobile-game #hudControls,.mobile-game #coach,.mobile-game #menuControlTip{display:none!important}.mobile-game #game{touch-action:none}.mobile-game .slotbar{pointer-events:auto}.mobile-game #menu{padding-top:env(safe-area-inset-top)}
.mobile-game #hud .bottom{bottom:max(6px,env(safe-area-inset-bottom));left:12px;right:12px}.mobile-game #hud .health{width:110px}.mobile-game #hud .health b{font-size:20px}.mobile-game #hud .health span{font-size:10px}.mobile-game #hud .bottom .rift{position:fixed;left:12px;top:123px;bottom:auto;transform:none;text-align:left;width:110px}.mobile-game #hud .rift b{font-size:13px}.mobile-game #hud .rift span{font-size:9px}.mobile-game #hud .rift>div{height:2px;margin-top:3px}
.mobile-game #hud .bottom .ammo{position:fixed;right:12px;top:90px;width:120px;bottom:auto}.mobile-game #hud .ammo b{font-size:24px}.mobile-game #hud .ammo span{font-size:13px}.mobile-game #hud .ammo small{font-size:8px;letter-spacing:0}.mobile-game #weaponSlotsHud{display:none!important}
.mobile-game #equipmentHud{left:12px;right:auto;top:165px;bottom:auto;width:105px;text-align:left}.mobile-game #equipmentHud span{font-size:8px;letter-spacing:0}.mobile-game #equipmentHud b{font-size:12px}.mobile-game #throwableHud{left:12px;right:auto;top:210px;bottom:auto;width:100px;text-align:left}.mobile-game #throwableHud span{font-size:8px;letter-spacing:0}.mobile-game #throwableHud b{font-size:13px}.mobile-game #throwableHud small{font-size:8px}.mobile-game #phaseFlashHud{left:155px;right:auto;top:95px;bottom:auto;padding:3px 6px}.mobile-game #phaseFlashHud span{font-size:8px;letter-spacing:0}.mobile-game #phaseFlashHud b{font-size:11px}
.mobile-game #playerIdentity{left:12px;top:66px;min-width:110px;padding:5px 8px}.mobile-game #playerIdentity b{font-size:13px}.mobile-game #playerIdentity em,.mobile-game #playerIdentity span{font-size:9px}.mobile-game #fpsCounter{right:60px;top:12px;font-size:9px}.mobile-game #trainingHint{bottom:34%;padding:5px 10px;font-size:11px;pointer-events:none}.mobile-game #feed{top:145px;right:12px;font-size:10px;max-width:160px;pointer-events:none}
.mobile-game #gameChatHint{pointer-events:auto;padding:6px 10px;background:#10263899;border-radius:6px;font-size:0}.mobile-game #gameChatHint::after{content:'聊天';font-size:10px}.mobile-game #gameChat{bottom:60px;left:12px;max-width:230px}.mobile-game #gameChatMessages{max-height:100px;font-size:10px}.mobile-game #woundStatus{bottom:20px;font-size:9px}.mobile-game .pauseCard{max-height:90dvh;overflow:auto;padding:15px}.mobile-game .pauseCard h2{font-size:24px}.mobile-game .pauseCard p{font-size:11px}.mobile-game .pauseCard button{padding:8px;margin-top:6px;font-size:14px}
@media(max-height:550px){.mobile-game #practicePanel{top:60px;transform:translateX(-50%) scale(.7);transform-origin:top center}.mobile-game .identity{transform:scale(.8);transform-origin:top left}.mobile-game #fpsCounter{font-size:10px}}
