@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-arabic-600-normal-q6c7POk1.woff2)format("woff2"),url(/assets/rubik-arabic-600-normal-DM3TNo7p.woff)format("woff");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-cyrillic-ext-600-normal-vwfZBdfm.woff2)format("woff2"),url(/assets/rubik-cyrillic-ext-600-normal-BH0SVxfR.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-cyrillic-600-normal-AdySaCq0.woff2)format("woff2"),url(/assets/rubik-cyrillic-600-normal-CtS_KWzi.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-hebrew-600-normal-CpCbvE17.woff2)format("woff2"),url(/assets/rubik-hebrew-600-normal-BGAyptFf.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-latin-ext-600-normal-DPvxRCiz.woff2)format("woff2"),url(/assets/rubik-latin-ext-600-normal-DCdMT6U0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-latin-600-normal-7iWW07_k.woff2)format("woff2"),url(/assets/rubik-latin-600-normal-Bd1rsTk4.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rubik-arabic-700-normal-DNWlnGaX.woff2)format("woff2"),url(/assets/rubik-arabic-700-normal-BJDbbalN.woff)format("woff");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rubik-cyrillic-ext-700-normal-3CKVJqgg.woff2)format("woff2"),url(/assets/rubik-cyrillic-ext-700-normal-CEbQMks9.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rubik-cyrillic-700-normal-DFnztZBh.woff2)format("woff2"),url(/assets/rubik-cyrillic-700-normal-C_jxLOfU.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rubik-hebrew-700-normal-Da14F88e.woff2)format("woff2"),url(/assets/rubik-hebrew-700-normal-B2Hm7hpE.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rubik-latin-ext-700-normal-D5I4eEgK.woff2)format("woff2"),url(/assets/rubik-latin-ext-700-normal-CQ1www4I.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rubik-latin-700-normal-D-tMm-eS.woff2)format("woff2"),url(/assets/rubik-latin-700-normal-KHOtubUA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-arabic-400-normal-B6c_9tGI.woff2)format("woff2"),url(/assets/rubik-arabic-400-normal-Dci85dQr.woff)format("woff");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-cyrillic-ext-400-normal-D-KNTwvG.woff2)format("woff2"),url(/assets/rubik-cyrillic-ext-400-normal-CTkTGo13.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-cyrillic-400-normal-C5G8_8ug.woff2)format("woff2"),url(/assets/rubik-cyrillic-400-normal-D5R8xuhl.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-hebrew-400-normal-Dp0lvSRB.woff2)format("woff2"),url(/assets/rubik-hebrew-400-normal-BQDoxs6C.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-latin-ext-400-normal-BtzQ7olK.woff2)format("woff2"),url(/assets/rubik-latin-ext-400-normal-E7wwwcV8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-latin-400-normal-j0pmKyiQ.woff2)format("woff2"),url(/assets/rubik-latin-400-normal-BV1Ho3GG.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-arabic-500-normal-soGt7v5W.woff2)format("woff2"),url(/assets/rubik-arabic-500-normal-DNk3Rzpj.woff)format("woff");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-cyrillic-ext-500-normal-DVRnamQw.woff2)format("woff2"),url(/assets/rubik-cyrillic-ext-500-normal-CnfIzV8i.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-cyrillic-500-normal-Didq2w9O.woff2)format("woff2"),url(/assets/rubik-cyrillic-500-normal-BH_pkKR0.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-hebrew-500-normal-B_5jqoVI.woff2)format("woff2"),url(/assets/rubik-hebrew-500-normal--anb7y8_.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-latin-ext-500-normal-CKoAoPpD.woff2)format("woff2"),url(/assets/rubik-latin-ext-500-normal-BUryUc8T.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-latin-500-normal-1os41rQk.woff2)format("woff2"),url(/assets/rubik-latin-500-normal-LZYVHeqz.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display:"Rubik", sans-serif;--font-display-weight:600;--team-a:#4da3ff;--team-b:#ff8a3d;--hit-chance:#ffd34d;--emerald:#34d27b;--danger:#ff5d5d;--bg:#12141a;--panel-bg:#101218d1;--panel-border:#ffffff1f;--text:#f1f3f7;--muted:#9aa3b5;--touch:44px;--gap:12px;--page-width:1100px;--radius:8px;--panel-solid:#181b23;--accent-soft:#34d27b24}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font-family:Rubik,sans-serif}h1,h2,h3{font-family:var(--font-display);font-weight:var(--font-display-weight);margin:0}#app,.app{flex-direction:column;height:100%;display:flex}.topbar{justify-content:space-between;align-items:center;gap:var(--gap);padding:8px var(--gap);background:var(--panel-bg);border-bottom:1px solid var(--panel-border);display:flex}.topbar h1{color:var(--emerald);font-size:1.4rem}.screen{min-height:0;padding:var(--gap);flex:1;overflow:auto}.badge{background:#ffffff14;border-radius:999px;padding:4px 10px;font-size:.85rem}.badge-online{color:var(--emerald)}.badge-offline,.badge-replaced{color:var(--danger)}.badge-connecting{color:var(--hit-chance)}.muted{color:var(--muted)}.free{color:var(--emerald)}.big{font-family:var(--font-display);font-weight:var(--font-display-weight);color:var(--hit-chance);font-size:1.6rem}.panel{background:var(--panel-bg);border:1px solid var(--panel-border);padding:var(--gap);margin-bottom:var(--gap);border-radius:8px}.panel.narrow{max-width:480px;margin-inline:auto}.panel h2,.panel h3{margin-bottom:8px}.card{border:1px solid var(--panel-border);border-radius:6px;margin-top:8px;padding:10px}.stack{flex-direction:column;gap:8px;display:flex}.row{align-items:center;gap:8px;display:flex}.row.space{justify-content:space-between}.list-row{min-height:var(--touch);border-top:1px solid var(--panel-border)}.field{flex-direction:column;gap:4px;margin:10px 0;display:flex}.btn,.input{min-height:var(--touch);border:1px solid var(--panel-border);color:var(--text);font:inherit;background:#ffffff14;border-radius:6px;padding:8px 14px}.btn{cursor:pointer;font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:1.05rem}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--emerald);border-color:var(--emerald);color:#08120d}.btn.small{padding:4px 12px}.mob-picker{gap:6px;margin-top:8px}.btn.icon{min-width:var(--touch);justify-content:center;align-items:center;padding:4px;display:inline-flex}.input{width:100%}.dev{margin-top:16px}.toasts{pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:12px;left:0;right:0}.toast{pointer-events:auto;max-width:calc(100% - 24px);min-height:var(--touch);border:1px solid var(--hit-chance);background:var(--panel-bg);color:var(--text);font:inherit;border-radius:8px;padding:8px 16px}@media (width>=900px){.lobby{gap:0 var(--gap);grid-template-columns:1fr 1fr;align-items:start;display:grid}}.emerald{color:var(--emerald)}.unit-icon{image-rendering:pixelated;border:2px solid var(--panel-border);background:#0c0e12;border-radius:4px;flex:none}.stats{grid-template-columns:auto 1fr;gap:2px 12px;margin:0;display:grid}.stats dt{color:var(--muted)}.stats dd{text-align:right;margin:0}.traits{flex-wrap:wrap;gap:6px;min-height:1.6em;margin:0;display:flex}.traits span{background:#ffffff14;border-radius:999px;padding:2px 8px;font-size:.85rem}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{min-height:var(--touch);border:1px solid var(--panel-border);color:var(--text);font:inherit;background:#ffffff14;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.chip .x{color:var(--danger);font-weight:700}.tabs{margin-bottom:8px}.tab.on.team-A{border-color:var(--team-a);color:var(--team-a)}.tab.on.team-B{border-color:var(--team-b);color:var(--team-b)}.sticky-bar{gap:var(--gap);padding:10px var(--gap);background:var(--panel-bg);border-top:1px solid var(--panel-border);justify-content:flex-end;display:flex;position:fixed;bottom:0;left:0;right:0}.sticky-bar .btn{flex:1;max-width:260px}.deploy{--cell:clamp(30px, 8vw, 44px)}.map-scroll{padding-bottom:6px;overflow-x:auto}.map{gap:2px;width:max-content;display:grid}.cell{width:var(--cell);height:var(--cell);color:#ffffff73;font:inherit;border:2px solid #0000;border-radius:3px;justify-content:center;align-items:center;padding:0;display:flex}.cell small{font-size:.7rem}.cell.water{background:#1f4e8c}.cell.tree{background:#1f4d2a}.cell.blocked{background:#3a3a3a}.cell.enemy-spawn{border-style:dashed;border-color:#ffffff2e}.cell.spawn{cursor:pointer;border-width:2px}.cell.spawn.team-A{border-color:var(--team-a);box-shadow:inset 0 0 0 1px var(--team-a)}.cell.spawn.team-B{border-color:var(--team-b);box-shadow:inset 0 0 0 1px var(--team-b)}.cell.picked{outline:3px solid var(--hit-chance);outline-offset:-3px}.chip.on{border-color:var(--hit-chance)}.team-text-A{color:var(--team-a)}.team-text-B{color:var(--team-b)}.dead{opacity:.45}.tag{color:var(--hit-chance)}.numbers{white-space:nowrap}.hp{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:1.15rem}.btn.danger{background:var(--danger);border-color:var(--danger);color:#1a0505}.btn.wide{width:100%}.row.wrap{flex-wrap:wrap}.dev-panel summary{cursor:pointer;min-height:var(--touch);color:var(--hit-chance);align-items:center;display:flex}.small-input{width:auto;min-width:90px}.result{padding-bottom:var(--gap)}.scene-box{border:1px solid var(--panel-border);border-radius:8px;height:65vh;min-height:300px;position:relative;overflow:hidden}.scene{touch-action:none;width:100%;height:100%;display:block}a.btn{align-items:center;text-decoration:none;display:inline-flex}.camera-hud{flex-flow:column wrap-reverse;align-content:flex-end;gap:8px;max-height:62%;display:flex;position:absolute;bottom:10px;right:10px}.hud-btn{width:var(--touch);height:var(--touch);border:1px solid var(--panel-border);background:var(--panel-bg);color:var(--text);cursor:pointer;border-radius:8px;font-size:1.4rem;line-height:1}.checks{gap:16px;margin:10px 0 4px}.checks label{min-height:var(--touch);align-items:center;gap:6px;display:inline-flex}.scene-box.compact{height:48vh;min-height:260px}.unit-info{margin:8px 0 0}.battle-full{z-index:5;background:var(--bg);position:fixed;inset:0}.scene-box.fill{border:0;border-radius:0;height:100%;min-height:0;position:absolute;inset:0}.hud-panel{z-index:6;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:8px;padding:6px 10px;position:absolute}.hud-top{justify-content:space-between;align-items:center;gap:var(--gap);display:flex;top:8px;left:8px;right:8px}.hud-side,.hud-center,.hud-info{flex-direction:column;min-width:0;display:flex}.hud-center{text-align:center;white-space:nowrap;align-items:center}.hud-btn.active{border-color:var(--emerald);color:var(--emerald)}.hud-btn.small{width:auto;padding:0 12px;font-size:.9rem}.hud-units{flex-direction:column;gap:6px;max-height:calc(100% - 200px);display:flex;top:88px;left:8px;overflow-y:auto}.hud-unit{min-height:var(--touch);border:1px solid var(--panel-border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;display:flex;position:relative}.hud-unit.selected{background:#ffffff26;border-color:#fff}.hud-unit.dead{opacity:.4}.hud-details{z-index:8;max-width:min(420px,100% - 90px);max-height:calc(100% - 200px);top:88px;right:8px;overflow-y:auto}.hud-bottom{justify-content:space-between;align-items:center;gap:var(--gap);flex-wrap:wrap;display:flex;bottom:8px;left:8px;right:64px}.hud-actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=640px){.hud-top .hud-side small{display:none}.hud-actions .btn{padding-inline:10px}}.hud-bottom{flex-direction:column;align-items:stretch;gap:6px}.hud-row{justify-content:space-between;align-items:center;gap:var(--gap);display:flex}.hud-turn{flex-wrap:nowrap;justify-content:flex-end;margin-left:auto}.icon-btn{min-width:var(--touch);min-height:var(--touch);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;padding:0 10px;font-size:1.4rem;line-height:1}.hud-tip-wrap{display:inline-flex;position:relative}.hud-tip{white-space:nowrap;color:var(--text);pointer-events:none;z-index:8;background:#000;border-radius:6px;padding:4px 8px;font-size:.85rem;position:absolute;bottom:calc(100% + 6px);right:0}.ap-pips{vertical-align:middle;gap:3px;display:inline-flex}.ap-pip{border:1px solid var(--emerald);border-radius:50%;width:8px;height:8px}.ap-pip.on{background:var(--emerald)}.hud-unit-stats{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.hud-target{flex-direction:column;gap:4px;min-width:150px;display:flex;top:88px;right:8px}.hit-chance{font-family:var(--font-display);font-weight:var(--font-display-weight);color:var(--hit-chance);font-size:2.2rem;line-height:1}.breakdown{margin:0;padding:0;font-size:.85rem;list-style:none}.warn{color:var(--hit-chance)}.hud-banner{z-index:7;background:var(--panel-bg);border:1px solid var(--panel-border);font-family:var(--font-display);font-weight:var(--font-display-weight);pointer-events:none;border-radius:8px;padding:12px 32px;font-size:2rem;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.hud-unit.fold{justify-content:center}.countdown{font-variant-numeric:tabular-nums}.idle-notice{color:var(--danger);font-size:.85rem}.idle-button{border:1px solid var(--danger);min-height:44px;font:inherit;background:0 0;border-radius:.5rem;padding:.25rem .75rem}.countdown.warn-red{color:var(--danger)}@media (width<=640px){.hud-top{gap:6px;padding:4px 6px;font-size:.85rem;top:4px;left:4px;right:4px}.hud-units{gap:4px;max-height:calc(100% - 180px);padding:4px;top:56px;left:4px}.hud-target{gap:2px;min-width:0;max-width:calc(100% - 150px);padding:6px 8px;top:84px;right:58px}.hud-details{max-width:calc(100% - 130px);top:84px;right:58px}.hud-target .breakdown{grid-template-columns:1fr 1fr;column-gap:10px;font-size:.75rem;display:grid}.target-chip{gap:4px;padding:2px 6px}.target-chip .hp{display:none}.hud-targets{flex-wrap:nowrap;overflow-x:auto}.hud-bottom{padding:4px 6px;bottom:4px;left:4px;right:58px}.camera-hud{bottom:4px;right:4px}.hit-chance{font-size:1.8rem}.hud-banner{padding:8px 18px;font-size:1.4rem}}@media (height<=480px){.hud-top .hud-center span:not(.countdown){display:none}}.hud-menu{flex-direction:column;align-items:flex-end;display:flex}.army-lines{flex-direction:column;align-items:flex-end;display:none}@media (width<=640px){.army-lines{display:flex}}.hud-targets{flex-wrap:wrap;justify-content:flex-start;gap:6px}.target-chip{min-height:var(--touch);border:1px solid var(--panel-border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:2px 8px;display:flex}.target-chip.selected{border-color:var(--danger);background:#ff5d5d2e}.chip-chance{color:var(--hit-chance)}.btn.pulse{animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{box-shadow:0 0 0 4px #34d27b99}}.abilities{margin:6px 0;padding:0;font-size:.9rem;list-style:none}.help{margin:8px 0 0;padding-left:1.1rem;font-size:.95rem}.help li{margin-bottom:6px}summary{cursor:pointer;min-height:var(--touch);align-items:center;display:flex}.editor-grid{grid-template-columns:repeat(2,1fr);gap:0 12px;display:grid}.unit-icon.plain{background:#6b7280;display:inline-block}.topbar{flex-wrap:wrap;row-gap:4px}.brand{color:inherit;text-decoration:none}.nav{flex-wrap:wrap;order:3;align-items:center;gap:4px;width:100%;display:flex}.nav-link{min-height:var(--touch);border-radius:var(--radius);color:var(--muted);cursor:pointer;font-family:var(--font-display);font-weight:var(--font-display-weight);align-items:center;padding:0 14px;font-size:1.05rem;text-decoration:none;display:inline-flex}.nav-link:hover,.nav-link.here{color:var(--text);background:var(--accent-soft)}.nav-link.here{box-shadow:inset 0 -3px 0 var(--emerald)}.nav-menu{position:relative}.nav-menu summary{list-style:none}.nav-menu summary::-webkit-details-marker{display:none}.nav-menu summary:after{content:"▾";margin-left:6px}.nav-menu-list{z-index:20;background:var(--panel-solid);border:1px solid var(--panel-border);border-radius:var(--radius);flex-direction:column;min-width:200px;padding:4px;display:flex;position:absolute;top:100%;left:0}.topbar-end{align-items:center;gap:8px;margin-left:auto;display:flex}.nav-menu-list.right{left:auto;right:0}.nav-menu-list button.nav-link{font:inherit;font-family:var(--font-display);font-weight:var(--font-display-weight);text-align:left;background:0 0;border:0;font-size:1.05rem}@media (width<=639px){.topbar .badge{background:currentColor;width:12px;height:12px;padding:0;font-size:0}}.page{width:100%;max-width:var(--page-width);margin-inline:auto}@media (width>=1000px){.topbar{padding-inline:24px}.nav{order:0;width:auto;margin-left:24px}}@media (width<=639px){.topbar h1{font-size:1.2rem}.nav-link{padding:0 10px;font-size:.95rem}.user-menu summary{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}}.hud-star{color:#ffd34d;text-shadow:0 0 2px #000;pointer-events:none;font-size:.6rem;line-height:1;position:absolute;top:1px;right:3px}.play-grid{gap:var(--gap);grid-template-columns:1fr;display:grid}@media (width>=1000px){.play-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start}.play-side{position:sticky;top:0}}.step{margin-bottom:10px;font-size:1.15rem}.mode-cards{grid-template-columns:1fr;gap:8px;display:grid}@media (width>=640px){.mode-cards{grid-template-columns:repeat(3,1fr)}}.mode-card,.arena-card{min-height:var(--touch);text-align:left;color:var(--text);font:inherit;border:2px solid var(--panel-border);border-radius:var(--radius);cursor:pointer;background:#ffffff0d;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;display:flex}.mode-card:hover,.arena-card:hover{background:#ffffff17}.mode-card.on,.arena-card.on{border-color:var(--emerald);background:var(--accent-soft)}.mode-card strong,.arena-card strong{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:1.1rem}.mode-card small,.arena-card small{color:var(--muted)}.mode-icon{font-size:1.6rem;line-height:1}.arena-cards{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.arena-thumb{aspect-ratio:1;width:100%;max-width:120px;image-rendering:pixelated;background:#0c0e12;border-radius:4px;align-self:center}.toggle{min-height:var(--touch);cursor:pointer;align-items:flex-start;gap:12px;padding:6px 0;display:flex;position:relative}.toggle.disabled{opacity:.5;cursor:default}.toggle input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}.toggle-track{background:#ffffff2e;border-radius:999px;flex:none;width:48px;height:28px;margin-top:2px;transition:background .15s;position:relative}.toggle-track:after{content:"";background:var(--text);border-radius:50%;width:22px;height:22px;transition:transform .15s;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-track{background:var(--emerald)}.toggle input:checked+.toggle-track:after{transform:translate(20px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--hit-chance);outline-offset:2px}.toggle-text{flex-direction:column;gap:2px;display:flex}.toggle-text small{color:var(--muted)}.start{margin-top:12px}.incoming{border-color:var(--emerald);background:var(--accent-soft)}.online .waiting{margin-bottom:8px}.level-picker{flex-direction:column;gap:6px;padding:6px 0;display:flex}.segmented{gap:4px;display:flex}.level-picker strong,.toggle-text strong{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:1.05rem;font-weight:500}.segment{font-family:var(--font-display);font-weight:var(--font-display-weight);min-height:var(--touch);color:var(--text);border:1px solid var(--panel-border);border-radius:var(--radius);cursor:pointer;background:#ffffff14;flex:1;padding:0 12px;font-size:1.05rem}.segment.on{background:var(--emerald);color:#04200f;border-color:var(--emerald)}.segmented{flex-wrap:wrap}.shop{padding-bottom:76px}.shop-grid{gap:var(--gap);grid-template-columns:1fr;display:grid}.shop-side{order:-1}.cards{gap:var(--gap);grid-template-columns:1fr;align-content:start;display:grid}@media (width>=640px){.cards{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.shop{padding-bottom:0}.shop-grid{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start}.shop-side{order:0;position:sticky;top:0}}.unit-card{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);flex-direction:column;gap:8px;margin:0;padding:12px;display:flex}.unit-card .btn{margin-top:auto}.price{color:var(--emerald);font-family:var(--font-display);font-weight:var(--font-display-weight);white-space:nowrap}.stat-boxes{grid-template-columns:repeat(5,1fr);gap:4px;margin:0;padding:0;list-style:none;display:grid}.stat-boxes li{text-align:center;background:#ffffff0d;border-radius:4px;flex-direction:column;align-items:center;padding:4px 2px;display:flex}.stat-boxes small{color:var(--muted);font-size:.65rem}.meter{background:#ffffff1a;border-radius:999px;height:10px;margin:6px 0;overflow:hidden}.meter span{background:var(--emerald);height:100%;display:block}.basket-list{flex-direction:column;gap:4px;margin:8px 0;padding:0;list-style:none;display:flex}.basket-list li{align-items:center;gap:8px;display:flex}.basket-list li>span:first-of-type{flex:1}.basket-actions{gap:8px;margin-top:8px;display:flex}.basket-actions .btn{flex:1}@media (width<=999px){.basket-actions{z-index:5;padding:10px var(--gap);background:var(--panel-solid);border-top:1px solid var(--panel-border);margin:0;position:fixed;bottom:0;left:0;right:0}}.screen:has(.shop-head){padding-top:0}.shop-head{z-index:5;margin:0 calc(var(--gap) * -1) var(--gap);padding:8px var(--gap) 6px;background:var(--bg,#14161a);border-bottom:1px solid var(--panel-border);position:sticky;top:0}.budget-bar .meter{margin:6px 0 0}.shop-head .stake-line{padding:6px 0 0;font-size:.9rem}.deploy{padding-bottom:76px}.deploy-grid{gap:var(--gap);grid-template-columns:1fr;display:grid}.deploy-view .scene-box{height:52vh;min-height:280px}@media (width>=1000px){.deploy{max-width:1400px;padding-bottom:0}.deploy-grid{grid-template-columns:minmax(0,3fr) minmax(280px,1fr);align-items:start}.deploy-view .scene-box{height:calc(100vh - 220px)}.deploy-side{position:sticky;top:0}}.tray{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tray-unit{width:100%;min-height:var(--touch);color:var(--text);font:inherit;text-align:left;border:2px solid var(--panel-border);border-radius:var(--radius);cursor:pointer;background:#ffffff0d;align-items:center;gap:10px;padding:4px 10px;display:flex}.tray-unit.on{border-color:var(--hit-chance);background:#ffd34d1a}.tray-unit.placed .tray-state{color:var(--emerald)}.tray-unit:disabled{opacity:.6;cursor:default}.tray-name{font-family:var(--font-display);font-weight:var(--font-display-weight);flex:1}.tray-state{color:var(--muted);font-size:.85rem}.editor h2{margin-bottom:var(--gap)}.editor-layout{gap:var(--gap);grid-template-columns:1fr;display:grid}@media (width>=1000px){.editor-layout{grid-template-columns:minmax(0,3fr) minmax(300px,1fr);align-items:start}.editor-layout>.scene-box{grid-area:1/1/span 6;height:calc(100vh - 190px)}.editor-layout>.panel{grid-column:2;margin-bottom:0}}.result{gap:var(--gap);grid-template-columns:1fr;display:grid}.result>.panel{max-width:none;margin:0}.result-banner{text-align:center}@media (width>=800px){.result{grid-template-columns:1fr 1fr;align-items:start}.result-banner,.result-score,.result-actions{grid-column:1/-1}.result-actions{flex-direction:row}.result-actions .btn{flex:1}}.handover{z-index:100;padding:var(--gap);text-align:center;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:fixed;inset:0}.handover .btn{max-width:320px}.hud-break{z-index:8;flex-direction:column;gap:8px;width:min(92vw,420px);max-height:70vh;display:flex;position:absolute;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.break-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mob-picker{flex-wrap:wrap;gap:8px;padding:6px 0;display:flex}.mob-choice{min-height:var(--touch);color:var(--text);border:1px solid var(--panel-border);border-radius:var(--radius);cursor:pointer;background:#ffffff14;align-items:center;gap:6px;padding:4px 10px;display:flex}.mob-choice.on{border-color:var(--emerald);background:var(--accent-soft)}.account-badge{min-height:var(--touch);border-radius:var(--radius);color:var(--emerald);align-items:center;gap:4px;padding:0 10px;font-weight:600;text-decoration:none;display:inline-flex}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.profile{gap:var(--gap);grid-template-columns:1fr;display:grid}.profile>.panel{max-width:none;margin:0}.profile-totals{gap:24px;margin:0;display:flex}.profile-totals dt{color:var(--muted);font-size:.85rem}.profile-totals dd{margin:0;font-size:1.6rem;font-weight:700}.profile-totals .emerald{color:var(--emerald)}.profile-counts{margin:0;padding:0;list-style:none}.profile-counts li{border-bottom:1px solid var(--panel-border);justify-content:space-between;padding:6px 0;display:flex}.profile-grant{gap:var(--gap);display:grid}.profile-grant label{color:var(--muted);gap:4px;font-size:.85rem;display:grid}.profile-grant input,.profile-grant select{min-height:var(--touch)}@media (width>=800px){.profile{grid-template-columns:1fr 1fr;align-items:start}}.stake-line{color:var(--emerald);margin:0;padding:6px 12px;font-weight:600}.stake-line.friendly{color:var(--muted);font-weight:400}.result-money{text-align:center;font-weight:600}.result-money .danger{color:var(--danger)}.stake-picker small{padding-left:56px;display:block}.profile-mobs{margin:0;padding:0;list-style:none}.profile-mobs li{border-bottom:1px solid var(--panel-border);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.profile-mobs small{display:block}.unit-note{color:var(--muted);margin:4px 0;font-size:.85rem}.emerald-icon{vertical-align:-.2em;width:1.1em;height:1.1em;display:inline-block}.skin-preview{display:inline-flex}.profile-mobs .btn{white-space:nowrap}.veteran-row{flex-wrap:wrap;gap:8px}.veteran-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.veteran-actions .input{width:11rem}.title-chip{color:#ffd34d;font-family:var(--font-display);font-weight:var(--font-display-weight);white-space:nowrap;vertical-align:middle;border:1px solid #ffd34d80;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:.75rem;line-height:1.4;display:inline-block}.user-menu-title{padding:6px 12px 2px}.user-menu-title .title-chip{margin-left:0}
