/* KABZ RPG v3.3.4 — mobile multitouch controls and responsive fire */
.rpg-fps-layer{position:absolute;inset:0;z-index:90;background:#10070b;overflow:hidden;font-family:var(--font-mono,monospace);user-select:none;touch-action:none}
.rpg-fps-layer.hidden{display:none!important}.rpg-fps-layer canvas{width:100%;height:100%;display:block;image-rendering:pixelated;background:#10070b;cursor:crosshair}
.rpg-shell.fps-active .rpg-hud,.rpg-shell.fps-active .rpg-modifier-strip,.rpg-shell.fps-active .rpg-status-strip,.rpg-shell.fps-active .rpg-message-stack,.rpg-shell.fps-active .rpg-context,.rpg-shell.fps-active .rpg-companion,.rpg-shell.fps-active .rpg-spell-hotbar,.rpg-shell.fps-active .rpg-mobile-controls,.rpg-shell.fps-active .rpg-desktop-help{visibility:hidden;pointer-events:none}
.rpg-fps-top{position:absolute;left:12px;right:12px;top:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;pointer-events:none;text-shadow:2px 2px 0 #000}
.rpg-fps-vitals,.rpg-fps-run{display:flex;gap:7px;align-items:stretch}.rpg-fps-vitals>div,.rpg-fps-run>div{min-width:82px;padding:7px 10px;border:2px solid rgba(255,255,255,.22);background:rgba(12,8,12,.84);box-shadow:0 0 0 2px rgba(0,0,0,.45) inset}
.rpg-fps-vitals span,.rpg-fps-run span{display:block;color:#bdb5b4;font-size:8px;font-weight:900;letter-spacing:.11em}.rpg-fps-vitals b,.rpg-fps-run b{display:block;color:#fff;font-size:18px;line-height:1.05}.rpg-fps-vitals .health b{color:#ff5260}.rpg-fps-vitals .armor b{color:#75c9ff}.rpg-fps-vitals .ammo b{color:#ffd263}.rpg-fps-objective{position:absolute;top:12px;left:50%;transform:translateX(-50%);max-width:min(48vw,520px);padding:8px 14px;border:2px solid rgba(217,59,69,.7);background:rgba(27,8,12,.86);color:#fff;text-align:center;font-size:10px;font-weight:900;letter-spacing:.05em;text-shadow:2px 2px #000;pointer-events:none}
.rpg-fps-message{position:absolute;top:72px;left:50%;transform:translateX(-50%);max-width:min(76vw,720px);padding:8px 16px;border:2px solid #d93b45;background:rgba(20,5,9,.92);color:#ffe6d5;text-align:center;font-size:11px;font-weight:900;letter-spacing:.03em;text-shadow:2px 2px #000;pointer-events:none}.rpg-fps-message.hidden{display:none}
.rpg-fps-bottom{position:absolute;left:12px;right:12px;bottom:10px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;pointer-events:none}
.rpg-fps-weapons{display:flex;gap:4px;max-width:70%;pointer-events:auto}.rpg-fps-weapons button{min-width:65px;padding:6px 7px;border:2px solid rgba(255,255,255,.2);background:rgba(12,8,12,.82);color:#aaa;font-family:inherit;text-align:left}.rpg-fps-weapons button kbd{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:5px;background:#282026;color:#fff;font:900 9px monospace}.rpg-fps-weapons button span{font-size:8px;font-weight:900}.rpg-fps-weapons button.is-active{border-color:#e1434e;background:rgba(84,18,25,.92);color:#fff}.rpg-fps-weapons button.is-locked{opacity:.3}
.rpg-fps-exit{pointer-events:auto;padding:9px 12px;border:2px solid #a9353d;background:#3c1118;color:#fff;font:900 9px monospace;letter-spacing:.06em;cursor:pointer}
.rpg-fps-help{position:absolute;right:14px;bottom:62px;padding:6px 9px;background:rgba(0,0,0,.62);color:#c8c1bc;font-size:8px;font-weight:900;pointer-events:none}
.rpg-fps-mobile{display:none}.rpg-fps-records{display:none}
.rpg-mode-grid .rpg-fps-mode-card{border-color:rgba(211,56,68,.58);background:linear-gradient(145deg,rgba(88,20,28,.28),rgba(21,14,20,.88))}.rpg-mode-grid .rpg-fps-mode-card>span{color:#ff6671}.rpg-fps-start-record{margin-top:12px}.rpg-fps-start-record strong{display:block;margin-bottom:6px;color:#c8bfc0;font-size:8px;letter-spacing:.1em}.rpg-fps-start-record>div>div{display:grid;grid-template-columns:22px 1fr auto auto;gap:7px;padding:4px 0;border-top:1px solid rgba(255,255,255,.08);font-size:8px}.rpg-fps-start-record>div>span{font-size:8px;color:#938b8e}
@media (pointer:coarse),(max-width:900px){
 .rpg-fps-top{top:5px;left:6px;right:6px;gap:5px}.rpg-fps-vitals,.rpg-fps-run{gap:3px}.rpg-fps-vitals>div,.rpg-fps-run>div{min-width:54px;padding:4px 6px;border-width:1px}.rpg-fps-vitals span,.rpg-fps-run span{font-size:6px}.rpg-fps-vitals b,.rpg-fps-run b{font-size:13px}.rpg-fps-objective{top:5px;max-width:44vw;padding:5px 8px;font-size:7px}.rpg-fps-message{top:43px;padding:5px 9px;font-size:8px}.rpg-fps-bottom{display:none}.rpg-fps-help{display:none}
 .rpg-fps-mobile{display:block;position:absolute;inset:0;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.rpg-fps-move-zone{position:absolute;z-index:2;left:0;bottom:0;width:43%;height:75%;pointer-events:auto;touch-action:none}.rpg-fps-move-base{position:absolute;left:24%;bottom:20%;width:92px;height:92px;margin:-46px;border:2px solid rgba(255,255,255,.27);border-radius:50%;background:rgba(10,8,12,.28)}.rpg-fps-move-knob{position:absolute;left:50%;top:50%;width:42px;height:42px;margin:-21px;border:2px solid rgba(255,255,255,.52);border-radius:50%;background:rgba(105,33,43,.62);transform:translate(0,0);will-change:transform}
 .rpg-fps-look-zone{position:absolute;z-index:1;right:0;top:0;width:57%;height:100%;pointer-events:auto;touch-action:none}.rpg-fps-mobile-actions{position:absolute;z-index:5;right:max(10px,env(safe-area-inset-right));bottom:max(11px,env(safe-area-inset-bottom));display:flex;align-items:flex-end;gap:9px;pointer-events:auto}.rpg-fps-mobile-actions button{display:grid;place-items:center;width:52px;height:52px;padding:0;border:2px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(39,14,20,.88);color:#fff;font:900 7px monospace;box-shadow:0 3px 0 rgba(0,0,0,.55);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transform:translateY(0);transition:transform .06s,filter .06s,background .06s}.rpg-fps-mobile-actions button.is-pressed{transform:translateY(3px) scale(.96);filter:brightness(1.3);box-shadow:0 0 0 rgba(0,0,0,0)}.rpg-fps-mobile-actions .fire{width:82px;height:82px;border-width:3px;border-color:#ff626c;background:rgba(151,24,37,.9);font-size:10px}.rpg-fps-mobile-actions .fire::after{content:'НАВОДИ';display:block;margin-top:-18px;color:rgba(255,255,255,.65);font-size:5px}.rpg-fps-mobile-actions .fire.is-pressed{background:rgba(211,42,55,.94)}.rpg-fps-mobile-actions .use{border-color:#80d8ff}.rpg-fps-mobile-actions .next{border-color:#ffd36b}
}
@media (max-height:420px) and (pointer:coarse){.rpg-fps-move-base{width:78px;height:78px;margin:-39px}.rpg-fps-mobile-actions{gap:6px}.rpg-fps-mobile-actions button{width:46px;height:46px}.rpg-fps-mobile-actions .fire{width:76px;height:76px}.rpg-fps-mobile-actions .fire::after{margin-top:-15px}.rpg-fps-message{max-width:62vw}.rpg-fps-objective{max-width:38vw}}
.rpg-shell.fps-active .rpg-titlebar{display:none!important}.rpg-shell.fps-active .rpg-stage{inset:0!important;padding:0!important;flex:1}.rpg-shell.fps-active{border-color:#d83b48;box-shadow:0 0 0 2px rgba(216,59,72,.32),0 26px 70px rgba(0,0,0,.72)}
