:root{--safe-top:max(env(safe-area-inset-top), var(--tg-safe-area-inset-top,0px), var(--tg-content-safe-area-inset-top,0px));--safe-right:max(env(safe-area-inset-right), var(--tg-safe-area-inset-right,0px), var(--tg-content-safe-area-inset-right,0px));--safe-bottom:max(env(safe-area-inset-bottom), var(--tg-safe-area-inset-bottom,0px), var(--tg-content-safe-area-inset-bottom,0px));--safe-left:max(env(safe-area-inset-left), var(--tg-safe-area-inset-left,0px), var(--tg-content-safe-area-inset-left,0px));--telegram-top-reserve:0px;--hud-top:max(12px, var(--safe-top), var(--telegram-top-reserve));--deck-height:clamp(300px, 43dvh, 340px);color:#f5f7fa;font-synthesis:none;text-rendering:optimizelegibility;background:#0e151d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.is-telegram-mini-app{--telegram-top-reserve:94px}*{box-sizing:border-box}html,body,#game-shell{width:100%;height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none}#game-shell{background:#0e151d;min-height:100dvh;position:fixed;inset:0}#game-canvas{outline:none;width:100%;display:block;position:absolute;inset:0 0 auto;height:calc(100% - var(--deck-height))!important}#loading-screen{z-index:2;padding:max(24px, var(--safe-top)) max(24px, var(--safe-right)) max(24px, var(--safe-bottom)) max(24px, var(--safe-left));text-align:center;background:radial-gradient(circle at 50% 42%,#224553b3,#0000 34%),#0e151d;place-content:center;gap:.45rem;transition:opacity .3s,visibility .3s;display:grid;position:absolute;inset:0}#loading-screen.is-hidden{visibility:hidden;opacity:0}#transition-loading{z-index:40;padding:max(24px, var(--safe-top)) max(24px, var(--safe-right)) max(24px, var(--safe-bottom)) max(24px, var(--safe-left));color:#f5f7fa;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#050a0feb;place-content:center;justify-items:center;gap:12px;transition:opacity .14s,visibility .14s;display:grid;position:absolute;inset:0}#transition-loading.is-hidden{visibility:hidden;opacity:0;pointer-events:none}#transition-loading strong{letter-spacing:.02em;font-size:18px}#transition-loading span{color:#82919c;font-size:11px}.loading-spinner{border:3px solid #5be0c42e;border-top-color:#5be0c4;border-radius:50%;width:46px;height:46px;animation:.72s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.eyebrow{color:#5be0c4;letter-spacing:.18em;margin:0;font-size:clamp(.65rem,2vw,.8rem);font-weight:800}h1{letter-spacing:-.04em;margin:0;font-size:clamp(1.7rem,7vw,4rem)}#status{color:#aeb9c7;margin:.25rem 0 0;font-size:clamp(.78rem,2.4vw,1rem)}#debug-badge{top:var(--hud-top);right:max(12px, var(--safe-right));z-index:1;color:#ffffffa6;letter-spacing:.08em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050a0f8c;border:1px solid #ffffff29;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:750;position:absolute}#map-label{top:var(--hud-top);left:max(12px, var(--safe-left));z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050a0f94;border:1px solid #ffffff24;border-radius:10px;gap:1px;padding:10px 12px;display:grid;position:absolute}#map-label strong{letter-spacing:.08em;font-size:15px}#map-label span{color:#5be0c4;letter-spacing:.12em;font-size:9px;font-weight:800}#map-label small{color:#ffffff94;margin-top:3px;font-size:8px}#player-stats{top:calc(var(--hud-top) + 48px);right:max(12px, var(--safe-right));z-index:1;color:#ffffff8c;font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:9px;position:absolute}#combat-hud{top:var(--hud-top);z-index:2;grid-template-columns:repeat(3,minmax(62px,88px));gap:5px;width:max-content;display:grid;position:absolute;left:50%;transform:translate(-50%)}#match-menu-open{top:calc(var(--hud-top) + 38px);right:max(12px, var(--safe-right));z-index:5;color:#ffffffc7;font:inherit;letter-spacing:.1em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:manipulation;background:#050a0fc7;border:1px solid #ffffff2e;border-radius:10px;padding:8px 11px;font-size:9px;font-weight:850;position:absolute}#match-menu-open.is-hidden{display:none}.combat-stat,.target-stat{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050a0fa3;border:1px solid #ffffff21;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;display:flex}.combat-stat span,.target-stat span{color:#ffffff75;letter-spacing:.08em;font-size:7px;font-weight:800}.combat-stat strong,.target-stat strong{font-variant-numeric:tabular-nums;font-size:12px}.health-stat{background:linear-gradient(90deg, #1b8360bf 0 var(--health,100%), #050a0fa3 var(--health,100%))}.target-stat{grid-column:1/-1;justify-content:center;padding-block:5px}.target-stat strong{color:#ffd26a}#combat-message{color:#ffffffa3;text-align:center;grid-column:1/-1;margin:0;font-size:8px}#movement-touchpad{bottom:max(18px, var(--safe-bottom));z-index:3;aspect-ratio:1;touch-action:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:radial-gradient(circle,#14232c7a 0 42%,#050a0fad 43% 100%);border:1px solid #ffffff29;border-radius:50%;width:clamp(150px,34vw,210px);position:absolute;left:50%;transform:translate(-50%);box-shadow:inset 0 0 35px #5be0c40f,0 10px 40px #00000040}#weapon-switch{right:max(12px, var(--safe-right));bottom:max(292px, calc(var(--safe-bottom) + 292px));z-index:4;color:#f5f7fa;width:92px;font:inherit;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:manipulation;background:#050a0fc7;border:1px solid #5be0c459;border-radius:12px;padding:8px 7px;display:grid;position:absolute}#weapon-switch:active{background:#14373ce0;border-color:#5be0c4;transform:scale(.97)}#weapon-switch span,#weapon-switch small{color:#ffffff7a;letter-spacing:.12em;font-size:7px;font-weight:800}#lives-counter,#shop-open{bottom:max(228px, calc(var(--safe-bottom) + 228px));z-index:4;color:#f5f7fa;min-width:72px;font:inherit;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050a0fc7;border:1px solid #ffffff29;border-radius:11px;padding:8px 10px;display:grid;position:absolute}#lives-counter{left:max(12px, var(--safe-left))}#shop-open{right:max(12px, var(--safe-right));touch-action:manipulation}#lives-counter.is-hidden,#shop-open.is-hidden,#weapon-switch.is-hidden{display:none}#lives-counter span,#shop-open span{color:#ffffff7a;letter-spacing:.1em;font-size:7px;font-weight:800}#shop-open strong{color:#ffd26a;font-size:14px}.modal-panel{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#04080cb8;place-items:center;padding:20px;transition:opacity .16s,visibility .16s;display:grid;position:absolute;inset:0}.modal-panel.is-hidden{visibility:hidden;opacity:0;pointer-events:none}.modal-card{background:#111a22;border:1px solid #5be0c447;border-radius:18px;width:min(100%,360px);max-height:92dvh;padding:20px;overflow:hidden;box-shadow:0 24px 80px #0000008c}.modal-card header{justify-content:space-between;align-items:start;display:flex}.modal-card header span,.result-card>span{color:#5be0c4;letter-spacing:.16em;font-size:9px;font-weight:850}.modal-card h2{margin:2px 0 0;font-size:27px}#shop-close{color:#fff;background:#ffffff0f;border:1px solid #ffffff24;border-radius:50%;width:38px;height:38px;font-size:24px}.shop-balance{color:#9caab5;justify-content:space-between;margin:18px 0 10px;font-size:12px;display:flex}.shop-balance strong{color:#ffd26a;font-size:18px}#shop-panel{padding:12px max(12px, var(--safe-right)) max(10px, var(--safe-bottom)) max(12px, var(--safe-left));place-items:end center}#shop-panel .modal-card{flex-direction:column;width:min(100%,400px);max-height:min(92dvh,100% - 8px);display:flex}#shop-panel .modal-card>header,#shop-panel .shop-balance,#shop-panel .modal-card>small{flex:none}#shop-list{--wheel-size:min(82vw, 52dvh, 360px);flex:0 0 var(--wheel-size);width:var(--wheel-size);height:var(--wheel-size);touch-action:manipulation;background:radial-gradient(circle,#5be0c412 0 27%,#0000 28%),radial-gradient(circle,#0000 0 58%,#ffffff0a 59% 60%,#0000 61%);border:1px solid #5be0c421;border-radius:50%;margin:2px auto 0;position:relative}#shop-list button{color:#fff;text-align:center;width:clamp(64px,18vw,78px);height:clamp(64px,18vw,78px);transform:translate(-50%, -50%) rotate(var(--angle)) translateY(calc(var(--wheel-size) * -.36)) rotate(var(--counter-angle));background:#1b2630;border:1px solid #ffffff29;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;padding:7px;display:flex;position:absolute;top:50%;left:50%;box-shadow:0 6px 18px #00000059}#shop-list button.is-owned{border-color:#5be0c47a}#shop-list button.is-selected{background:#18352f;border-color:#5be0c4;box-shadow:0 0 0 3px #5be0c41f,0 6px 18px #00000059}#shop-list button[data-item=medkit]{background:#293127;border-color:#ffd26a73;width:clamp(92px,25vw,108px);height:clamp(92px,25vw,108px);transform:translate(-50%,-50%)}#shop-list span{gap:2px;width:100%;min-width:0;display:grid}#shop-list strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(10px,2.8vw,13px);line-height:1.02;display:-webkit-box;overflow:hidden}#shop-list small,.modal-card>small{color:#82919c;font-size:9px}#shop-list small{display:none}#shop-list button[data-item=medkit] small{color:#a9baa8;font-size:9px;display:block}#shop-list em{color:#ffd26a;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:4px;font-size:clamp(8px,2.2vw,10px);font-style:normal;font-weight:850;overflow:hidden}.modal-card>small{text-align:center;margin-top:14px;display:block}.result-card{text-align:center;justify-items:center;gap:10px;display:grid}.result-card>strong{color:#ffd26a;font-size:27px}#final-rank{color:#dbe4ea;margin:-3px 0 3px;font-size:13px;font-weight:750}.rating-block{text-align:left;background:#0000002e;border:1px solid #ffffff1a;border-radius:12px;width:100%;padding:12px}.rating-block>small{color:#ffffff6b;letter-spacing:.14em;font-size:8px;font-weight:850}#personal-rating{gap:5px;margin:9px 0 0;padding:0;list-style:none;display:grid}#personal-rating li{border-top:1px solid #ffffff12;grid-template-columns:22px 45px 1fr;align-items:baseline;padding-top:5px;display:grid}#personal-rating b{color:#5be0c4;font-size:10px}#personal-rating strong{color:#ffd26a;font-size:15px}#personal-rating span{color:#85939e;font-size:9px}.rating-empty{color:#85939e;text-align:center;font-size:11px;line-height:1.45;padding:14px 4px!important;display:block!important}#restart-game{color:#092019;letter-spacing:.08em;background:#5be0c4;border:0;border-radius:10px;margin-top:8px;padding:12px 26px;font-weight:900}.match-menu-card{text-align:center;gap:12px;display:grid}.match-menu-card>span{color:#5be0c4;letter-spacing:.16em;font-size:9px;font-weight:850}.match-menu-card h2{margin:0}.match-menu-card p{color:#9caab5;margin:0 0 4px;font-size:12px}.match-menu-card button{font:inherit;letter-spacing:.08em;border-radius:11px;padding:13px 18px;font-size:11px;font-weight:900}#match-menu-resume{color:#092019;background:#5be0c4;border:0}#match-menu-exit{color:#ff9ba0;background:#821f2724;border:1px solid #ff8a8f61}.start-card{gap:11px;padding:22px 25px;display:grid;overflow-y:auto}.menu-eyebrow{color:#5be0c4;letter-spacing:.18em;font-size:9px;font-weight:900}.start-card h1{font-size:clamp(32px,10vw,46px);line-height:.92}.start-card>p{color:#aab7c1;margin:-4px 0 2px;font-size:13px}.start-card fieldset{border:0;min-width:0;margin:0;padding:0}#solo-options{gap:11px;display:grid}#solo-options.is-hidden{display:none}#online-options{background:#5be0c40f;border:1px solid #5be0c43d;border-radius:12px;gap:6px;padding:11px;display:grid}#online-options.is-hidden,#room-code-row.is-hidden,.bot-option.is-hidden{display:none}#online-options>label{color:#ffffff85;letter-spacing:.14em;font-size:8px;font-weight:850}#online-options>div{grid-template-columns:1fr auto;gap:7px;display:grid}#online-options .online-kind-row{grid-template-columns:repeat(2,1fr)}#online-options .online-kind-row span{min-height:42px;font-size:10px}.bot-option{align-items:center;gap:8px;display:flex;color:#dbe2e7!important;font-size:9px!important}.bot-option input{accent-color:#5be0c4}#room-code{color:#76eed5;min-width:0;font:inherit;letter-spacing:.16em;text-transform:uppercase;background:#0b131a;border:1px solid #ffffff29;border-radius:9px;padding:11px;font-weight:900}#room-generate{color:#76eed5;font:inherit;background:#5be0c414;border:1px solid #5be0c452;border-radius:9px;padding:0 12px;font-size:9px;font-weight:900}#online-menu-status{color:#82919c;font-size:9px}.start-card legend{color:#ffffff7a;letter-spacing:.14em;margin-bottom:7px;font-size:8px;font-weight:850}.choice-row{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.choice-row.ally-row{grid-template-columns:repeat(4,1fr)}.choice-row.side-row{grid-template-columns:repeat(2,1fr)}.choice-row label{min-width:0}.choice-row input{opacity:0;pointer-events:none;position:absolute}.choice-row span{color:#dbe2e7;background:#ffffff0a;border:1px solid #ffffff21;border-radius:11px;place-items:center;min-height:54px;font-size:20px;font-weight:850;display:grid}.choice-row.side-row span{letter-spacing:.06em;min-height:46px;font-size:12px}.choice-row small{color:#ffffff61;letter-spacing:.08em;font-size:7px}.choice-row input:checked+span{color:#76eed5;background:#329d8929;border-color:#5be0c4;box-shadow:inset 0 0 20px #5be0c412}#start-game{color:#072019;font:inherit;letter-spacing:.1em;background:#5be0c4;border:0;border-radius:11px;padding:14px 20px;font-size:14px;font-weight:950;box-shadow:0 10px 30px #30b49a33}.secondary-menu-button{color:#73e9d0;font:inherit;letter-spacing:.1em;background:#5be0c412;border:1px solid #5be0c44d;border-radius:11px;padding:11px 20px;font-size:11px;font-weight:900}.start-card>small{color:#778792;text-align:center;margin:-5px 0 0;font-size:9px}.rating-card{gap:16px;display:grid}.rating-card #rating-close{color:#fff;background:#ffffff0f;border:1px solid #ffffff24;border-radius:50%;width:38px;height:38px;font-size:24px}.menu-rating{max-height:62dvh;overflow-y:auto}#weapon-switch strong{color:#7cf2d8;letter-spacing:.04em;font-size:14px}#weapon-switch small{margin-top:2px;font-size:6px}.touchpad-rings,.touchpad-rings:before{content:"";pointer-events:none;border:1px solid #5be0c42e;border-radius:50%;position:absolute;inset:20%}.touchpad-rings:before{inset:27%}#movement-thumb{pointer-events:none;will-change:transform;background:#5be0c457;border:2px solid #9dffeca6;border-radius:50%;width:54px;height:54px;transition:background .12s;position:absolute;top:calc(50% - 27px);left:calc(50% - 27px);box-shadow:0 0 24px #5be0c42e}#movement-touchpad.is-active #movement-thumb{background:#5be0c494}#movement-touchpad>span{color:#ffffff61;letter-spacing:.16em;pointer-events:none;font-size:8px;font-weight:800;position:absolute;bottom:15%;left:50%;transform:translate(-50%)}@media (width<=520px){#debug-badge{font-size:8px}#map-label{padding:8px 10px}#map-label strong{font-size:12px}#movement-touchpad{width:min(48vw,190px)}#weapon-switch{bottom:max(284px, calc(var(--safe-bottom) + 284px))}#lives-counter,#shop-open{bottom:max(218px, calc(var(--safe-bottom) + 218px));min-width:68px}#combat-hud{top:max(82px, var(--hud-top));grid-template-columns:repeat(3,68px)}#match-menu-open{top:calc(var(--hud-top) + 38px)}.combat-stat{justify-items:center;gap:2px;padding:6px;display:grid}#player-stats{display:none}}@media (height<=560px) and (orientation:landscape){#movement-touchpad{bottom:max(10px, var(--safe-bottom));width:min(31vh,160px)}#movement-touchpad>span{display:none}#combat-hud{grid-template-columns:repeat(3,72px)}}:root{--ink:#1c1e22;--accent:#f2a51c;--card:#f4f1ea;--ui-bg:#e9e6df;--deck:#1c1e22;--deck-2:#2b2f36;--deck-3:#12141a;--team-blue:#4f7fc4;--team-red:#d63d3d;--hp:#7ec26a;font-family:Rubik,Inter,ui-sans-serif,system-ui,sans-serif}button{font-family:inherit}#start-menu,#rating-panel{background:var(--ui-bg);-webkit-backdrop-filter:none;backdrop-filter:none}#start-menu:before,#game-over:before{background:var(--accent);content:"";border-radius:28px;width:210px;height:210px;position:absolute;transform:rotate(18deg)}#start-menu:before{top:-65px;right:-70px}.modal-card{color:var(--ink);box-shadow:none;background:0 0;border:0}.start-card{width:min(100%,400px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 20px);gap:10px;padding:24px 20px}.menu-eyebrow{color:#6b7280;font-size:11px}.start-card h1{font-size:clamp(42px,12vw,54px);line-height:.9;position:relative}.start-card>p{color:#fff;background:var(--ink);border-radius:8px;align-self:start;margin:0;padding:6px 10px;font-size:11px;font-weight:700}.start-card legend{color:#6b7280;margin-bottom:6px;font-size:10px}.choice-row{gap:8px}.choice-row span{border:3px solid var(--ink);min-height:48px;color:var(--ink);background:var(--card);border-radius:13px;padding:6px;font-size:17px}.choice-row.side-row span{min-height:48px;color:var(--ink);font-size:14px}.choice-row small{color:#6b7280;font-size:8px}.choice-row input:checked+span{border-color:var(--ink);color:var(--ink);background:var(--accent);box-shadow:4px 4px 0 var(--ink)}.start-card fieldset:nth-of-type(3) .choice-row input[value=blue]:checked+span{color:#fff;background:var(--team-blue)}.start-card fieldset:nth-of-type(3) .choice-row input[value=red]:checked+span{color:#fff;background:var(--team-red)}#online-options{border:3px solid var(--ink);color:var(--ink);background:var(--card)}#online-options>label,#online-menu-status{color:#6b7280}#room-code{border:3px solid var(--ink);color:var(--ink);background:#fff}#room-generate{border:3px solid var(--ink);color:var(--ink);background:var(--accent)}#start-game{color:var(--accent);background:var(--ink);box-shadow:5px 5px 0 var(--accent);border-radius:15px;padding:15px 20px;font-size:17px}.secondary-menu-button{color:var(--ink);-webkit-text-decoration:underline 3px var(--accent);text-decoration:underline 3px var(--accent);background:0 0;border:0;border-radius:0;padding:8px;font-size:11px}.start-card>small{color:#6b7280}#map-label{top:var(--hud-top);border:3px solid var(--ink);color:var(--ink);background:var(--card);box-shadow:3px 3px 0 var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:12px;padding:7px 10px}#map-label strong{font-size:14px}#map-label span{color:#6b7280}#map-label small,#debug-badge,#player-stats{display:none}#combat-hud{top:var(--hud-top);right:max(12px, var(--safe-right));width:58px;display:block;left:auto;transform:none}#combat-hud .score-stat{border:3px solid var(--ink);min-height:55px;color:var(--ink);background:var(--card);box-shadow:3px 3px 0 var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:12px;justify-items:center;gap:0;padding:4px 8px;display:grid}#combat-hud .score-stat span{color:#6b7280;font-size:8px}#combat-hud .score-stat strong{font-size:20px}.target-stat,.target-stat span{display:none}.target-stat strong{border:2px solid var(--ink);color:#0000;background:var(--accent);border-radius:50%;width:8px;height:8px;font-size:0;overflow:hidden}#combat-message{display:none}#reload-indicator{top:calc((100% - var(--deck-height)) / 2 - 64px);z-index:4;border:3px solid var(--ink);color:var(--ink);background:var(--accent);box-shadow:3px 3px 0 var(--ink);letter-spacing:.08em;pointer-events:none;border-radius:9px;padding:6px 10px;font-size:10px;font-weight:900;position:fixed;left:50%;transform:translate(-50%)}#reload-indicator.is-hidden{display:none}#lives-counter{top:auto;right:auto;bottom:calc(var(--deck-height) + 12px);left:max(12px, var(--safe-left));border:3px solid var(--ink);color:#fff;background:var(--team-red);min-width:56px;min-height:48px;box-shadow:3px 3px 0 var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:12px;padding:3px 8px}#lives-counter span{color:#ffffffd1;font-size:8px}#lives-counter strong{color:#fff;font-size:18px}#control-deck{z-index:3;height:var(--deck-height);color:#fff;background:var(--deck);border-radius:28px 28px 0 0;position:absolute;bottom:0;left:0;right:0}.deck-status-row{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:90px;left:16px;right:16px}.health-stat{color:#fff;background:var(--deck-2);border:0;border-radius:10px;align-items:center;gap:8px;min-width:126px;padding:5px 10px;display:flex}.health-stat strong{font-size:18px}.health-bar{background:var(--deck-3);border-radius:6px;width:68px;height:8px;overflow:hidden}.health-bar i{width:var(--health,100%);background:var(--hp);height:100%;transition:width .16s;display:block}#match-menu-open{top:auto;right:max(12px, var(--safe-right));bottom:calc(var(--deck-height) + 12px);border:3px solid var(--ink);color:#fff;background:var(--deck-2);min-width:48px;min-height:48px;box-shadow:3px 3px 0 var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:auto;border-radius:12px;padding:8px 11px;font-size:17px;position:fixed}.deck-actions-row{grid-template-columns:1fr 1fr;gap:8px;display:grid;position:absolute;top:16px;left:16px;right:16px}#weapon-switch,#shop-open{border:3px solid var(--ink);width:auto;min-width:0;min-height:62px;color:var(--ink);text-align:left;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:14px;grid-template-columns:1fr auto;align-items:center;padding:8px 11px;display:grid;position:relative;inset:auto}#weapon-switch{background:var(--card);box-shadow:4px 4px 0 var(--accent)}#shop-open{background:var(--accent);box-shadow:4px 4px 0 var(--card)}#weapon-switch span,#shop-open span{color:#6b7280;grid-column:1;font-size:7px}#weapon-switch strong,#shop-open strong{color:var(--ink);grid-column:1;font-size:18px}#weapon-switch b,#shop-open b{color:var(--ink);grid-area:1/2/3;font-size:14px}#weapon-switch small{display:none}#movement-touchpad{background:var(--deck-2);width:min(200px,52vw);box-shadow:inset 0 0 0 3px var(--deck-3);-webkit-backdrop-filter:none;backdrop-filter:none;border:0;bottom:8px}.touchpad-rings,.touchpad-rings:before{display:none}#movement-thumb{border:3px solid var(--ink);background:var(--accent);width:86px;height:86px;box-shadow:4px 4px 0 var(--deck-3);top:calc(50% - 43px);left:calc(50% - 43px)}#movement-touchpad>span{color:#9aa3b0}#shop-panel,#match-menu{background:#12141a9e;place-items:end center;padding:0}#shop-panel .modal-card,.match-menu-card{width:min(100%,430px);max-height:min(520px, calc(100dvh - var(--safe-top)));padding:18px 16px max(16px, var(--safe-bottom));color:#fff;background:var(--deck);box-shadow:none;border-radius:28px 28px 0 0}#shop-panel .modal-card header span,.match-menu-card>span{color:var(--accent)}#shop-panel .modal-card h2,.match-menu-card h2{color:#fff}#shop-close{color:var(--ink);background:var(--accent);border:0}.shop-balance{color:#9aa3b0;margin:10px 0}.shop-balance strong{color:var(--ink);background:var(--accent);border-radius:10px;padding:4px 10px}#shop-list{--wheel-size:auto;background:0 0;border:0;border-radius:0;flex:auto;grid-template-columns:repeat(3,1fr);width:100%;height:auto;min-height:0;margin:0;display:grid;overflow-y:auto}#shop-list button,#shop-list button[data-item=medkit]{color:#9aa3b0;background:var(--deck-2);width:auto;height:auto;min-height:68px;box-shadow:none;border:0;border-radius:12px;padding:8px;position:static;transform:none}#shop-list button[data-item=medkit]{color:var(--ink);background:var(--hp)}#shop-list button.is-owned{color:var(--ink);background:var(--card)}#shop-list button.is-selected{color:var(--ink);background:var(--accent);box-shadow:3px 3px 0 var(--card)}#shop-list button.is-affordable:not(.is-selected){color:var(--ink);background:var(--hp);box-shadow:3px 3px 0 var(--card);border:0}#shop-list button:disabled{opacity:.55}#shop-list strong{font-size:12px}#shop-list em{color:inherit}#shop-panel .modal-card>small{color:var(--ink);background:var(--card);border-radius:14px;margin-top:8px;padding:12px;font-size:11px;font-weight:900}.match-menu-card{padding:20px 18px max(22px, var(--safe-bottom));text-align:left;align-self:end}.match-menu-card button{min-height:50px}#match-menu-resume{color:var(--ink);background:var(--card);box-shadow:5px 5px 0 var(--accent)}#match-menu-exit{border:3px solid var(--team-red);color:var(--team-red);background:0 0}#rating-panel .rating-card{width:min(100%,400px);max-height:calc(100dvh - 24px);padding:22px}.rating-card header span{color:#6b7280}.rating-card h2{color:var(--ink);font-size:34px}.rating-card #rating-close{border:3px solid var(--ink);color:var(--ink);background:var(--card);box-shadow:3px 3px 0 var(--ink);border-radius:12px}.rating-tabs{grid-template-columns:1fr 1fr;gap:8px;display:grid}.rating-tabs button{border:3px solid var(--ink);min-height:42px;color:var(--ink);background:var(--card);border-radius:11px;font-size:10px;font-weight:900}.rating-tabs button.is-active{background:var(--accent);box-shadow:3px 3px 0 var(--ink)}.rating-block{background:0 0;border:0}#menu-rating-list,#global-rating-list{margin:0;padding:0;list-style:none}#menu-rating-list.is-hidden,#global-rating-list.is-hidden{display:none}#personal-rating li,#menu-rating-list li,#global-rating-list li{border:3px solid var(--ink);color:var(--ink);background:var(--card);border-radius:12px;grid-template-columns:28px max-content 1fr;align-items:baseline;gap:8px;margin-bottom:7px;padding:10px 12px;display:grid}#personal-rating li b,#menu-rating-list li b,#global-rating-list li b{color:#6b7280;font-size:11px}#personal-rating li strong,#menu-rating-list li strong,#global-rating-list li strong{color:var(--ink);font-size:18px}#personal-rating li span,#menu-rating-list li span,#global-rating-list li span{color:#6b7280;font-size:11px}#game-over{background:var(--accent);-webkit-backdrop-filter:none;backdrop-filter:none}#game-over:before{border:3px solid var(--ink);background:var(--team-red);width:120px;height:120px;bottom:210px;right:-45px}.result-card{width:min(100%,400px);color:var(--ink);position:relative}.result-card>span{color:#fff;background:var(--ink);border-radius:8px;align-self:start;padding:5px 10px}.result-card h2{font-size:44px;line-height:.95}.result-card>strong{border:3px solid var(--ink);width:100%;color:var(--ink);background:var(--card);box-shadow:6px 6px 0 var(--ink);border-radius:22px;padding:18px;font-size:40px}#final-rank{color:var(--ink)}.result-card .rating-block{border:3px solid var(--ink);background:var(--card)}#restart-game{color:var(--accent);background:var(--ink);box-shadow:5px 5px 0 var(--card);border-radius:16px;padding:16px 26px;font-size:17px}#transition-loading{background:#1c1e22f5}.loading-spinner{border-color:#f2a51c33;border-top-color:var(--accent)}@media (width<=520px){#combat-hud{top:var(--hud-top);grid-template-columns:none}#control-deck{height:var(--deck-height)}#movement-touchpad{width:min(200px,52vw)}#weapon-switch,#shop-open{bottom:auto}}
