body.touch-mode #gameUi,body.touch-mode #gameCanvas{touch-action:none}.touchStick{position:fixed;width:120px;height:120px;margin-left:-60px;margin-top:-60px;border-radius:50%;background:#ffffff14;border:2px solid rgba(255,255,255,.28);z-index:60;pointer-events:none;display:none;box-sizing:border-box}.touchStickKnob{position:absolute;left:50%;top:50%;width:52px;height:52px;margin-left:-26px;margin-top:-26px;border-radius:50%;background:#ffffff61;box-shadow:0 2px #00000040}.touchStick.aim .touchStickKnob.firing{background:#e45b5bbf;box-shadow:0 0 14px #e45b5b99}#touchControls{display:none;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:55}body.touch-mode #touchControls{display:block}#touchControls.spectating .touchBtn{display:none}.touchBtn{position:absolute;pointer-events:auto;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#00000059;border:2px solid rgba(255,255,255,.4);box-sizing:border-box}.touchBtn span{color:#fff;font-size:11px;line-height:13px;font-weight:700;text-align:center;letter-spacing:.5px;pointer-events:none;text-shadow:0 1px rgba(0,0,0,.4)}.touchBtn.pressed{background:#ffffff4d;transform:scale(.94)}#tcPickup{width:66px;height:66px;right:max(14px,env(safe-area-inset-right));bottom:45%;opacity:.55}#tcPickup.available{opacity:1;background:#5bc46a8c;border-color:#ffffffd9}#tcSwap{width:52px;height:52px;right:max(14px,env(safe-area-inset-right));bottom:calc(45% + 82px)}#tcReload{width:52px;height:52px;right:calc(max(14px,env(safe-area-inset-right)) + 72px);bottom:calc(45% + 34px)}#tcDrop{width:42px;height:42px;right:calc(max(14px,env(safe-area-inset-right)) + 74px);bottom:calc(45% + 106px);opacity:.8}#tcChat{width:42px;height:42px;left:112px;top:10px;opacity:.8}body.touch-mode #minimap{width:92px;height:92px;top:max(10px,env(safe-area-inset-top));left:max(10px,env(safe-area-inset-left))}body.touch-mode #networkStats{top:max(10px,env(safe-area-inset-top));left:164px;font-size:11px;max-width:130px}body.touch-mode #borderTimer{top:calc(max(10px,env(safe-area-inset-top)) + 98px);left:max(12px,env(safe-area-inset-left));font-size:22px}body.touch-mode #topMenuContainer{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right))}body.touch-mode #killCount,body.touch-mode #playerCount{font-size:18px;padding:7px 9px}body.touch-mode #killCount{margin-right:8px}body.touch-mode #weaponInventoryBar{left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translate(-50%);gap:8px}body.touch-mode .weaponSlot{width:56px;height:56px}body.touch-mode #backpackSlot{top:-50px}body.touch-mode #ammoDisplay{right:auto;left:50%;transform:translate(-50%);bottom:calc(max(14px,env(safe-area-inset-bottom)) + 66px);font-size:18px;padding:5px 12px}body.touch-mode #matchBanner{font-size:26px;line-height:30px;top:13%;white-space:normal;width:min(92vw,560px)}body.touch-mode #matchBannerSub{font-size:14px;line-height:18px;margin-top:4px}body.touch-mode #killTextCont{top:44px;font-size:20px}body.touch-mode #gameOverMessage{font-size:clamp(56px,18vw,120px)}body.touch-mode #spectateBar{flex-wrap:wrap;justify-content:center;gap:8px 14px;padding:8px 12px;width:min(92vw,480px);bottom:max(14px,env(safe-area-inset-bottom));box-sizing:border-box}body.touch-mode #spectateBar .spectateLabel{font-size:18px}body.touch-mode #chatInput{bottom:auto;top:20%;font-size:16px}body.touch-mode #connectionStatus{font-size:22px}#rotateOverlay{display:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:200;background:#141a10eb;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}#rotateOverlay .rotateIcon{font-size:64px;color:#fff;line-height:1;animation:rotateHint 2s ease-in-out infinite}@keyframes rotateHint{0%,to{transform:rotate(0)}50%{transform:rotate(-90deg)}}#rotateOverlay .rotateText{color:#fff;font-size:26px;font-weight:700;line-height:32px}#rotateOverlay .rotateText span{display:block;color:#fff9;font-size:16px;font-weight:400;line-height:22px;margin-top:4px}@media (orientation: portrait){body.touch-mode #rotateOverlay{display:flex}}
