:root{--ui-bg-deep: #0c1018;--ui-glass-blur: 18px;--ui-glass-blur-heavy: 26px;--ui-backdrop: blur(var(--ui-glass-blur)) saturate(1.4);--ui-backdrop-heavy: blur(var(--ui-glass-blur-heavy)) saturate(1.5);--ui-picker-blur: blur(40px) saturate(1.35);--ui-picker-bg: linear-gradient( 155deg, rgba(28, 36, 54, .82) 0%, rgba(16, 22, 36, .88) 48%, rgba(22, 30, 48, .84) 100% );--ui-select-bg: rgba(0, 0, 0, .28);--ui-select-option-bg: #1e2a3e;--ui-lobby-glass: linear-gradient( 150deg, rgba(22, 30, 46, .62) 0%, rgba(12, 18, 30, .68) 45%, rgba(18, 26, 42, .64) 100% );--ui-lobby-card: rgba(0, 0, 0, .2);--ui-menu-glass: linear-gradient( 145deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, .06) 42%, rgba(140, 190, 255, .08) 100% );--ui-bg-panel: linear-gradient( 145deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, .06) 42%, rgba(140, 190, 255, .08) 100% );--ui-bg-panel-soft: linear-gradient( 155deg, rgba(255, 255, 255, .12) 0%, rgba(255, 255, 255, .04) 55%, rgba(255, 220, 140, .05) 100% );--ui-bg-glass-inset: rgba(255, 255, 255, .06);--ui-bg-glass-input: rgba(255, 255, 255, .08);--ui-border-gold: rgba(255, 220, 140, .38);--ui-border-gold-strong: rgba(255, 230, 160, .55);--ui-border-soft: rgba(255, 255, 255, .18);--ui-border-glass: rgba(255, 255, 255, .28);--ui-text: #f8f6f0;--ui-text-muted: rgba(235, 228, 215, .82);--ui-text-dim: rgba(210, 205, 195, .62);--ui-gold: #ffe08a;--ui-gold-dark: #e8b840;--ui-gold-grad: linear-gradient(180deg, rgba(255, 224, 138, .95) 0%, rgba(232, 168, 32, .92) 100%);--ui-purple-glow: rgba(140, 180, 255, .12);--ui-radius-xl: 22px;--ui-radius-lg: 16px;--ui-radius-md: 14px;--ui-radius-sm: 10px;--ui-shadow: 0 8px 32px rgba(0, 0, 0, .22), 0 2px 8px rgba(0, 0, 0, .1), inset 0 1px 0 rgba(255, 255, 255, .28), inset 0 -1px 0 rgba(255, 255, 255, .06);--ui-shadow-sm: 0 4px 18px rgba(0, 0, 0, .16), inset 0 1px 0 rgba(255, 255, 255, .2)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,system-ui,sans-serif;background:radial-gradient(ellipse at 20% 0%,rgba(120,180,255,.18) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(255,200,100,.12) 0%,transparent 45%),var(--ui-bg-deep);color:var(--ui-text);overflow:hidden}#app{width:100vw;height:100vh;position:relative}canvas.game-canvas{display:block;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0}#menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .8s ease;background:radial-gradient(ellipse at 50% 45%,transparent 30%,rgba(8,6,4,.62) 100%),linear-gradient(to bottom,rgba(10,8,6,.45) 0%,transparent 28%,transparent 72%,rgba(10,8,6,.55) 100%)}#menu-backdrop.visible{opacity:1;background:radial-gradient(ellipse at 50% 20%,rgba(120,170,255,.14) 0%,transparent 55%),radial-gradient(ellipse at 50% 45%,transparent 25%,rgba(8,12,20,.45) 100%),linear-gradient(to bottom,rgba(12,16,24,.35) 0%,transparent 30%,transparent 70%,rgba(12,16,24,.4) 100%)}.panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--ui-bg-panel);backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);border:1px solid var(--ui-border-glass);border-radius:var(--ui-radius-xl);padding:2rem 2.5rem;text-align:center;z-index:100;min-width:320px;box-shadow:var(--ui-shadow)}.menu-panel{min-width:min(400px,calc(100vw - 2rem));max-width:440px;padding:0;overflow:hidden;background:var(--ui-menu-glass);backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);border:1px solid var(--ui-border-glass);box-shadow:var(--ui-shadow),inset 0 1px #ffffff38,inset 0 -1px #ffffff0f}.menu-panel--home{max-width:460px}.menu-panel--home:before{content:"";display:block;height:3px;background:linear-gradient(90deg,transparent 0%,rgba(255,220,140,.55) 20%,rgba(255,230,160,.85) 50%,rgba(255,220,140,.55) 80%,transparent 100%)}.menu-panel-inner{padding:1.65rem 1.85rem 1.45rem;text-align:center}.menu-panel--sub .menu-panel-inner{padding-top:1.5rem}.menu-panel--sub .subtitle{margin-bottom:1rem}@media(max-width:480px){.menu-panel-inner{padding:1.35rem 1.25rem 1.2rem}.menu-actions{flex-direction:column}}.menu-hero{margin-bottom:.25rem}.menu-hero .menu-tagline{margin:.35rem 0 0;font-size:.92rem;line-height:1.5}.menu-panel--home h1{font-size:clamp(1.75rem,5vw,2.1rem);margin:0;letter-spacing:.03em;background:linear-gradient(180deg,#fff8ee,#f5e6c8 55%,#e8c878);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 2px 12px rgba(255,200,100,.2))}.menu-meta{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin:1rem 0 1.2rem}.menu-form{text-align:left;margin-bottom:1.05rem;padding:.85rem .9rem .9rem;border-radius:var(--ui-radius-lg);border:1px solid var(--ui-border-soft);background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.menu-form .field-label{margin-bottom:.45rem;color:#ebe4d7e0}.menu-form input#nickname{margin-bottom:0}.menu-actions{display:flex;gap:.6rem}.menu-actions .btn{flex:1 1 0;min-width:0;padding:.82rem 1rem;font-size:.9rem}.menu-btn-secondary{background:#ffffff12;border-color:#ffffff29}.menu-btn-secondary:hover{background:#ffffff1f;border-color:#ffdc8c59}.menu-error{margin-top:.85rem;margin-bottom:0;padding:.55rem .7rem;border-radius:var(--ui-radius-sm);border:1px solid rgba(255,120,110,.35);background:#781e1e2e;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);font-size:.82rem;line-height:1.35;text-align:center}.menu-error:empty{display:none;min-height:0;padding:0;border:none;background:transparent}.menu-gear-btn{position:absolute;top:.75rem;right:.75rem;z-index:2;display:grid;place-items:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid var(--ui-border-soft);border-radius:10px;background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:var(--ui-text-muted);cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.menu-gear-btn:hover{color:var(--ui-text);background:#ffffff24;border-color:var(--ui-border-gold);box-shadow:0 0 20px #ffdc7826}.menu-gear-btn:active{transform:scale(.96)}.menu-gear-btn svg{width:1.35rem;height:1.35rem}.menu-crest{display:grid;place-items:center;width:4rem;height:4rem;margin:0 auto .7rem;border-radius:18px;font-size:1.85rem;color:#ffe08a;background:linear-gradient(145deg,#ffffff24,#ffdc8c1a);border:1px solid rgba(255,220,140,.28);box-shadow:var(--ui-shadow-sm),0 0 28px #ffc8641f;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);filter:none}.menu-crest-sm{width:2.5rem;height:2.5rem;margin:0 auto .45rem;border-radius:14px;font-size:1.15rem}.panel h1{font-size:2.35rem;color:var(--ui-text);letter-spacing:.04em;text-shadow:0 0 24px rgba(255,196,64,.15)}.panel h2{color:var(--ui-text);font-size:1.45rem}.subtitle{margin:.5rem 0 1.25rem;color:var(--ui-text-muted);line-height:1.45}.menu-online-count{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;margin:0;padding:.45rem .9rem;border-radius:999px;border:1px solid rgba(120,220,140,.28);background:#28784624;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:#bef0c8f2;font-size:.78rem;font-weight:700;letter-spacing:.02em}.menu-online-count.is-empty{border-color:var(--ui-border-soft);background:var(--ui-bg-glass-inset);color:var(--ui-text-dim)}.menu-online-count.is-empty .menu-online-dot{background:#8a9aaa;box-shadow:none;animation:none}.menu-online-dot{width:.55rem;height:.55rem;border-radius:50%;background:#6ee78a;box-shadow:0 0 10px #6ee78aa6;animation:menu-online-pulse 2s ease-in-out infinite}@keyframes menu-online-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(.88)}}.field-label{display:block;text-align:left;font-size:.78rem;font-weight:700;letter-spacing:.04em;color:var(--ui-text-muted);margin-bottom:.4rem}input#nickname{width:100%;padding:.85rem 1rem;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);background:var(--ui-bg-glass-input);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:var(--ui-text);font-size:1rem;margin-bottom:1.15rem;transition:border-color .15s,box-shadow .15s,background .15s}input#nickname:focus{outline:none;border-color:var(--ui-border-gold-strong);box-shadow:0 0 0 3px #ffd6601f}select,.ui-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--ui-text);background-color:var(--ui-select-bg);border:1px solid var(--ui-border-soft);color-scheme:dark;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}select option,.ui-select option{background-color:var(--ui-select-option-bg);color:var(--ui-text)}select:disabled,.ui-select:disabled{opacity:.55;cursor:not-allowed}.lobby-buttons{display:flex;gap:.65rem;justify-content:center;flex-wrap:wrap}.btn{padding:.72rem 1.35rem;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:var(--ui-text);cursor:pointer;font-size:.92rem;font-weight:700;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.btn:hover{background:#ffffff24;border-color:var(--ui-border-gold);transform:translateY(-1px);box-shadow:var(--ui-shadow-sm)}.btn.primary{background:var(--ui-gold-grad);border:1px solid rgba(255,240,180,.45);color:#2a1800;font-weight:800;box-shadow:0 4px 20px #ffc85047,inset 0 1px #ffffff59;backdrop-filter:none;-webkit-backdrop-filter:none}.btn.primary:hover{background:linear-gradient(180deg,#ffeba0fa,#f0b028f2);border-color:#fff0b499;transform:translateY(-1px)}.btn.small{padding:.42rem .85rem;font-size:.78rem;border-radius:999px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.error{color:#ff7a72;margin-top:.75rem;min-height:1.2em}.hidden{display:none!important}#hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10}#hud>*{pointer-events:auto}.flag-tower-prompt{position:fixed;z-index:22;transform:translate(-50%,-100%);margin-top:-10px;padding:.42rem .72rem;display:flex;align-items:center;gap:.45rem;font-size:.78rem;font-weight:700;color:var(--ui-text);white-space:nowrap;background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:999px;box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);pointer-events:none}.flag-tower-label{color:var(--ui-text-muted)}.flag-tower-prompt kbd{display:inline-block;min-width:1.4em;padding:.12rem .4rem;border-radius:6px;background:#ffd05824;border:1px solid rgba(255,214,96,.28);color:var(--ui-gold);font-family:inherit;font-size:.72rem;font-weight:800;text-align:center}.flag-tower-cost{display:inline-flex;align-items:center;gap:.22rem;padding:.12rem .38rem;border-radius:999px;background:#ffd0581f;border:1px solid rgba(255,214,96,.22);color:var(--ui-gold);font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}.flag-tower-cost .gold-coin-icon{width:.72rem;height:.72rem}.flag-tower-prompt.unaffordable .flag-tower-cost{color:#ff9a88;border-color:#ff786459;background:#ff503c1a}.flag-tower-prompt.unaffordable{opacity:.55}#top-bar{position:absolute;top:4px;left:50%;transform:translate(-50%);z-index:20;pointer-events:none;max-width:min(880px,calc(100vw - 260px))}.hud-top-inner{display:flex;align-items:center;gap:0;min-height:38px;padding:0 .25rem;background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.hud-seg{display:flex;flex-direction:row;align-items:center;gap:.45rem;padding:.28rem .65rem;min-width:0}.hud-seg-time,.hud-seg-gold{min-width:0}.hud-seg-scores{flex:1;min-width:0;flex-wrap:nowrap}.hud-seg-meta{padding-right:.55rem;padding-left:.25rem}.hud-seg-spacer{flex:1;min-width:.35rem;max-width:1.25rem}.hud-seg-sep{width:1px;align-self:stretch;margin:.35rem 0;background:linear-gradient(180deg,transparent,rgba(255,214,96,.28),transparent)}.hud-seg-label{font-size:.54rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--ui-text-dim);line-height:1;white-space:nowrap;flex-shrink:0}.hud-seg-value{font-size:.98rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ui-text);line-height:1}.hud-gold-line{display:flex;align-items:center;gap:.35rem;flex-wrap:nowrap;min-width:0}.hud-gold-mark,.gold-coin-icon,.skill-gold-icon{position:relative;width:1rem;height:1rem;border-radius:50%;flex-shrink:0;background:radial-gradient(circle at 32% 28%,#fff8c8,#ffd85a 38%,#d4a020 72%,#9a6808);border:1.5px solid #7a4a06;box-shadow:inset 0 1px 1px #ffffff8c,inset 0 -2px 3px #5a320040,0 1px 2px #00000038}.hud-gold-mark:before,.gold-coin-icon:before,.skill-gold-icon:before{content:"";position:absolute;top:18%;right:18%;bottom:18%;left:18%;border-radius:50%;border:1px solid rgba(122,74,6,.55)}.hud-gold-mark:after,.gold-coin-icon:after,.skill-gold-icon:after{content:"";position:absolute;top:14%;left:22%;width:28%;height:18%;border-radius:50%;background:#ffffff73;transform:rotate(-24deg)}.hud-gold-value{font-size:1rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ui-gold);text-shadow:0 0 12px rgba(255,216,90,.25);line-height:1}.hud-gold-rate{font-size:.66rem;font-weight:600;color:#7ecf7a;letter-spacing:.02em;white-space:nowrap}.hud-scores{display:flex;flex-wrap:nowrap;align-items:center;gap:.35rem;min-width:0;overflow:hidden}.hud-score-chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;padding:.1rem .4rem;border-radius:5px;background:var(--ui-bg-glass-inset);border:1px solid var(--ui-border-soft);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);white-space:nowrap;flex-shrink:0}.hud-score-chip .score-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.hud-meta-chip{font-size:.68rem;font-weight:600;padding:.22rem .5rem;border-radius:999px;background:#00000047;border:1px solid var(--ui-border-soft);color:var(--ui-text-muted);white-space:nowrap}.hud-meta-chip.hud-ping{border-color:#506e8c73;color:#9ab4cc;font-variant-numeric:tabular-nums}.hud-meta-chip.hud-ping.mid{border-color:#ffd66059;color:var(--ui-gold)}.hud-meta-chip.hud-ping.high{border-color:#a040408c;color:#e8a0a0}#commands{position:absolute;bottom:24px;right:24px;display:flex;flex-direction:column;gap:6px}.cmd-btn{padding:.52rem 1rem;min-width:148px;text-align:left;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);background:var(--ui-bg-panel-soft);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:var(--ui-text);cursor:pointer;font-size:.84rem;font-weight:700;box-shadow:var(--ui-shadow-sm);transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.cmd-btn:hover{border-color:#ffd66047;transform:translateY(-1px)}.cmd-btn.active{background:linear-gradient(180deg,#fff3,#ffdc8c1a);border-color:var(--ui-border-gold-strong);box-shadow:var(--ui-shadow-sm),0 0 20px #ffdc781f}.cmd-btn.cooling{opacity:.55}#crosshair{position:absolute;top:50%;left:50%;width:30px;height:30px;margin:-15px 0 0 -15px;border:2px solid rgba(241,196,15,.9);border-radius:50%;pointer-events:none;z-index:15;box-shadow:0 0 6px #00000080}#crosshair span{position:absolute;background:#f1c40fe6}#crosshair span:first-child{left:50%;top:4px;bottom:4px;width:2px;margin-left:-1px}#crosshair span:last-child{top:50%;left:4px;right:4px;height:2px;margin-top:-1px}#volley-cd{float:right;color:#f1c40f;font-weight:700}#recruit{position:absolute;bottom:24px;left:24px;z-index:18}.recruit-panel{min-width:220px;padding:.45rem .5rem .5rem;background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.recruit-head{padding:.15rem .35rem .4rem;font-size:.54rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ui-text-dim)}.recruit-list{display:flex;flex-direction:column;gap:4px}.recruit-btn{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;width:100%;padding:.42rem .5rem;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-sm);background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:var(--ui-text);cursor:pointer;font:inherit;text-align:left;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.recruit-btn:hover:not(:disabled){border-color:#ffd66047;background:#ffd05814;transform:translateY(-1px)}.recruit-btn:active:not(:disabled){transform:translateY(0)}.recruit-key{display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:6px;background:#ffd05824;border:1px solid rgba(255,214,96,.28);color:var(--ui-gold);font-size:.72rem;font-weight:800;line-height:1;flex-shrink:0}.recruit-info{display:flex;flex-direction:column;gap:.08rem;min-width:0}.recruit-name-row{display:flex;align-items:center;gap:.35rem;min-width:0}.recruit-icon{display:grid;place-items:center;width:1.2rem;height:1.2rem;border-radius:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);font-size:.72rem;line-height:1;flex-shrink:0}.recruit-name{font-size:.78rem;font-weight:800;color:var(--ui-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recruit-hint{font-size:.58rem;font-weight:600;color:var(--ui-text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recruit-price{display:inline-flex;align-items:center;gap:.22rem;padding:.18rem .42rem;border-radius:999px;background:#ffd0581f;border:1px solid rgba(255,214,96,.22);color:var(--ui-gold);font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}.recruit-price .gold-coin-icon{width:.72rem;height:.72rem}.recruit-lock{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:999px;background:#7848b42e;border:1px solid rgba(120,72,180,.35);font-size:.72rem;line-height:1;flex-shrink:0}.recruit-btn.locked-skill{opacity:.62;border-style:dashed;cursor:not-allowed}.recruit-btn.locked-skill .recruit-hint{color:#b4a0dcbf}.recruit-btn.cant-afford:not(.locked-skill){opacity:.78}.recruit-btn.cant-afford:not(.locked-skill) .recruit-price{color:#ff9a88;border-color:#ff786459;background:#ff503c1a}.recruit-btn:disabled{cursor:not-allowed;transform:none}#minimap-stack{position:absolute;top:12px;right:12px;z-index:20;pointer-events:none;width:256px;display:flex;flex-direction:column;gap:6px}.minimap-wrap{display:flex;flex-direction:column;gap:0;background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);overflow:hidden}.minimap-head{display:flex;align-items:center;gap:.35rem;padding:.38rem .55rem;border-bottom:1px solid rgba(255,255,255,.12);background:#ffffff0f;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.minimap-map-name{flex:1;min-width:0;font-size:.72rem;font-weight:700;color:var(--ui-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.minimap-north{display:grid;place-items:center;width:1.15rem;height:1.15rem;border-radius:999px;background:#ffd0581f;border:1px solid rgba(255,214,96,.25);color:var(--ui-gold);font-size:.58rem;font-weight:800;line-height:1}#minimap-meta-row{display:flex;align-items:stretch;gap:5px;width:100%}#minimap{position:static;border:none;border-radius:0;overflow:hidden;background:#0a0810}.minimap-panel{flex:1;min-width:0;padding:.42rem .48rem;display:flex;flex-direction:column;gap:.18rem;background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.minimap-squad-value{font-size:.95rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ui-text);line-height:1.1}#minimap-treasury .hud-gold-value{font-size:.82rem}#minimap-treasury .hud-gold-rate{font-size:.58rem;line-height:1.1}.minimap-ping-value{font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;color:#9ab4cc;line-height:1.1;white-space:nowrap}.minimap-ping-value.mid{color:var(--ui-gold)}.minimap-ping-value.high{color:#e8a0a0}.minimap-meta-label{font-size:.5rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ui-text-dim);line-height:1}.minimap-gold-line{display:flex;align-items:center;gap:.28rem;flex-wrap:nowrap;min-width:0}#minimap-treasury .hud-gold-mark,#minimap-treasury .gold-coin-icon{width:.85rem;height:.85rem}#minimap-canvas{display:block;width:256px;height:256px}#end-screen h2{color:var(--ui-text);margin-bottom:.75rem}#end-screen p{margin-bottom:1.5rem;color:var(--ui-text-muted)}#killfeed{position:static;display:flex;flex-direction:column;gap:4px;max-width:100%;pointer-events:none}.feed-item{background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-left:3px solid var(--ui-gold);border-radius:var(--ui-radius-sm);padding:.35rem .7rem;font-size:.82rem;color:var(--ui-text-muted);box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);animation:feedIn .25s ease-out;transition:opacity .6s}@keyframes feedIn{0%{transform:translate(-12px);opacity:0}to{transform:translate(0);opacity:1}}#bottom-hud{position:absolute;bottom:36px;left:50%;transform:translate(-50%);display:flex;align-items:flex-end;gap:.85rem;pointer-events:none;z-index:18}#bottom-center{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;width:min(620px,72vw)}#ping-hud{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-bottom:-1px;padding:.35rem .8rem;background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-bottom:none;border-radius:var(--ui-radius-md) var(--ui-radius-md) 0 0;box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);z-index:1}.ping-panel-label{font-size:.54rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ui-text-dim);line-height:1}#ping-hud .minimap-ping-value{font-size:.78rem}.commander-vitals{display:flex;flex-direction:column;gap:.45rem}.vitals-orbs{display:flex;align-items:flex-end;gap:.65rem}.vitals-orb{display:flex;flex-direction:column;align-items:center;gap:.28rem}.orb-shell-wrap{position:relative;width:92px;height:92px;filter:drop-shadow(0 10px 22px rgba(0,0,0,.22))}.orb-shell{width:100%;height:100%;border-radius:50%;padding:0;background:transparent;box-shadow:none}.orb-well{width:100%;height:100%;border-radius:50%;overflow:hidden;position:relative;isolation:isolate;border:1.5px solid rgba(255,255,255,.38);background:#ffffff12;backdrop-filter:blur(14px) saturate(1.5);-webkit-backdrop-filter:blur(14px) saturate(1.5);box-shadow:inset 0 2px 6px #ffffff61,inset 0 -4px 12px #0000001f,0 4px 16px #00000024}.orb-life .orb-well{box-shadow:inset 0 2px 6px #ffffff61,inset 0 -4px 12px #0000001f,0 4px 16px #00000024,0 0 28px #ff5a4624}.orb-stamina .orb-well{box-shadow:inset 0 2px 6px #ffffff61,inset 0 -4px 12px #0000001f,0 4px 16px #00000024,0 0 28px #ffc83c1f}.orb-liquid{position:absolute;bottom:0;left:0;right:0;height:100%;z-index:0;transition:height .28s ease-out,filter .2s ease,opacity .2s ease}.orb-liquid-life{background:linear-gradient(180deg,#ffaa96c7,#e74c3c9e 42%,#b91c1c80);box-shadow:inset 0 4px 14px #ffc8b447,0 -4px 18px #ff503c38}.orb-liquid-life.low{background:linear-gradient(180deg,#ff7878d9,#c0392bb3,#7b0f0f8c);animation:orb-glass-pulse .85s ease-in-out infinite}.orb-liquid-stamina{background:linear-gradient(180deg,#fff5b4d1,#f1c40f9e 40%,#b8860b7a);box-shadow:inset 0 4px 12px #fff0b440,0 -4px 16px #ffc83c33}.orb-liquid-stamina.locked{background:linear-gradient(180deg,#ff9696b3,#a030308c,#5a101073);box-shadow:inset 0 4px 10px #ff787833,0 -4px 14px #c832322e}.orb-glass-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;z-index:2;pointer-events:none;background:linear-gradient(155deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.08) 28%,transparent 52%,rgba(255,255,255,.05) 78%,rgba(255,255,255,.1) 100%)}.orb-shine{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(ellipse 48% 38% at 26% 20%,rgba(255,255,255,.62),transparent 58%),radial-gradient(ellipse 30% 22% at 74% 80%,rgba(255,255,255,.12),transparent 55%);pointer-events:none;z-index:3}.orb-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:800;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.55),0 0 12px rgba(255,255,255,.15);pointer-events:none;z-index:4}.orb-caption{font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ui-text-dim)}.orb-xp-ring{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;width:calc(100% + 12px);height:calc(100% + 12px);transform:rotate(-90deg);pointer-events:none;z-index:0}.orb-xp-track{fill:none;stroke:#ffffff24;stroke-width:4}.orb-xp-fill{fill:none;stroke:#8cc8ffd9;stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(120,190,255,.55));transition:stroke-dashoffset .25s ease-out}.orb-level-badge{position:absolute;top:-4px;left:50%;transform:translate(-50%);min-width:1.35rem;padding:.08rem .38rem;border-radius:999px;font-size:.68rem;font-weight:800;line-height:1.1;color:#e8f4ff;background:#64a0ff38;backdrop-filter:blur(10px) saturate(1.4);-webkit-backdrop-filter:blur(10px) saturate(1.4);border:1px solid rgba(180,220,255,.45);box-shadow:var(--ui-shadow-sm),0 0 12px #64a0ff33;pointer-events:none;z-index:5}.vitals-meta{display:flex;align-items:center;gap:.5rem;padding-left:.15rem}.vitals-title{font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ui-text-dim)}.vitals-squad{font-size:.6rem;font-weight:600;color:var(--ui-text-muted);white-space:nowrap}@keyframes orb-glass-pulse{0%,to{filter:brightness(1);opacity:.88}50%{filter:brightness(1.15);opacity:1}}.stat-card{background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-gold);border-radius:var(--ui-radius-md);padding:.55rem .75rem;box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.stat-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.35rem}.stat-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ui-text-dim);font-weight:700}.stat-num{font-size:.88rem;font-weight:700;color:var(--ui-text)}.gold-num{color:var(--ui-gold);font-size:1.1rem}.bar-track{width:100%;height:14px;background:#00000059;border:1px solid var(--ui-border-soft);border-radius:7px;overflow:hidden}.bar-track.thin{height:7px;border-radius:4px}.bar-fill{height:100%;width:100%;background:linear-gradient(90deg,#1e8449,#2ecc71);transition:width .2s ease-out;border-radius:6px}.bar-fill.low{background:linear-gradient(90deg,#922b21,#e74c3c)}.bar-fill.stamina{background:linear-gradient(90deg,#b8860b,#f1c40f)}.bar-fill.stamina.locked{background:linear-gradient(90deg,#7b241c,#d9534f)}.stat-sub{margin-top:.4rem}.stat-label{font-size:.62rem;color:var(--ui-text-dim);text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:.2rem}.gold-income{font-size:.78rem;color:#9fe48f;margin-bottom:.35rem}.squad-badge{display:inline-block;font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;background:#ffffff0f;border:1px solid var(--ui-border-soft);color:var(--ui-text-muted)}.ping-badge{display:inline-block;font-size:.72rem;font-weight:600;padding:.2rem .5rem;border-radius:6px;margin-left:.35rem;background:#1a283859;border:1px solid #3a5068;color:#9ab0c8}.ping-badge.high{border-color:#a04040;color:#e8a0a0}.ping-badge.mid{border-color:#ffd66059;color:var(--ui-gold)}#respawn-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#280c0c40;backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);pointer-events:none}#respawn-overlay h2{color:#ff8a78;font-size:2.2rem;text-shadow:0 2px 16px rgba(0,0,0,.65)}#respawn-overlay p{color:var(--ui-text-muted);font-size:1.2rem;margin-top:.5rem}#damage-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(200,20,20,.55) 100%);opacity:0;transition:opacity .4s ease-out}#damage-vignette.flash{opacity:1;transition:opacity .05s}#controls-help{position:static;transform:none;background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:0 0 var(--ui-radius-md) var(--ui-radius-md);padding:.55rem .95rem .6rem;pointer-events:none;width:100%;box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.controls-head{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ui-text-dim);margin-bottom:.35rem;text-align:center;font-weight:700}.controls-grid{display:grid;grid-template-columns:repeat(5,auto);gap:.25rem 1rem;font-size:.74rem;color:var(--ui-text-muted);justify-content:center}.controls-grid kbd{display:inline-block;min-width:1.4em;padding:.1rem .35rem;margin-right:.25rem;border-radius:6px;background:#ffffff14;border:1px solid var(--ui-border-soft);color:var(--ui-gold);font-family:inherit;font-size:.72rem;font-weight:700;text-align:center}.lobby-panel{width:min(780px,calc(100vw - 2rem));min-width:0;max-width:780px;padding:1.45rem 1.65rem 1.35rem;text-align:left;position:relative;background:var(--ui-lobby-glass);backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);box-shadow:var(--ui-shadow),inset 0 1px #ffffff24}.lobby-panel .lobby-card,.lobby-panel .chat-panel{background:var(--ui-lobby-card);border-color:#ffffff24}.lobby-panel .chat-head{background:#0000002e;border-bottom-color:#ffffff1a}.lobby-panel .chat-input{background:#00000038}.lobby-panel .setting select,.lobby-panel .setting input{background:#0000003d;border-color:#ffffff29}.lobby-panel #room-player-list li:nth-child(odd){background:#00000024}.lobby-header{text-align:center;margin-bottom:1.1rem}.lobby-header h2{color:var(--ui-text);margin-bottom:.15rem}.lobby-header .subtitle{margin-bottom:0}#room-lobby-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-bottom:1rem}.lobby-card{background:var(--ui-bg-glass-inset);border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-lg);padding:.85rem .95rem;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-shadow-sm)}.lobby-card h3{color:var(--ui-gold);font-size:.92rem;margin-bottom:.5rem;border-bottom:1px solid rgba(255,214,96,.18);padding-bottom:.4rem}.lobby-hint{font-size:.74rem;color:var(--ui-text-dim);margin-bottom:.55rem}#room-player-count{float:right;opacity:.75;font-weight:400}#room-player-list{list-style:none;min-height:125px;margin-bottom:.5rem}#room-player-list li{display:flex;align-items:center;gap:.5rem;padding:.3rem .4rem;border-radius:4px;font-size:.9rem}#room-player-list li:nth-child(odd){background:#ffffff0a}.team-chip{width:22px;height:22px;border-radius:6px;flex-shrink:0;border:2px solid rgba(255,255,255,.25);box-shadow:0 2px 6px #00000059;cursor:default;transition:transform .12s,box-shadow .12s}.team-chip.clickable{cursor:pointer}.team-chip.clickable:hover{transform:scale(1.12);box-shadow:0 0 0 2px #ffd66073}.team-picker{position:relative;top:auto;left:auto;transform:none;flex:0 1 auto;min-width:min(300px,44vw);max-width:340px;background:var(--ui-picker-bg);backdrop-filter:var(--ui-picker-blur);-webkit-backdrop-filter:var(--ui-picker-blur);border:1px solid var(--ui-border-glass);border-radius:var(--ui-radius-xl);padding:1.15rem 1.3rem;z-index:2;box-shadow:var(--ui-shadow)}.team-picker-title{font-size:.85rem;color:var(--ui-gold);margin-bottom:.65rem;font-weight:800}.team-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.team-pick-btn{display:flex;align-items:center;gap:.45rem;width:100%;padding:.52rem .62rem;border:2px solid rgba(255,255,255,.14);border-radius:var(--ui-radius-md);background:#ffffff0f;color:var(--ui-text);cursor:pointer;font-size:.82rem;font-weight:700;transition:background .12s,border-color .12s,box-shadow .12s,transform .12s}.team-pick-btn:hover:not(:disabled){background:#ffffff1a;border-color:color-mix(in srgb,var(--team-pick-color, #ffd060) 70%,white);transform:translateY(-1px)}.team-pick-btn:disabled{cursor:not-allowed}.team-pick-btn .swatch{width:20px;height:20px;border-radius:5px;border:2px solid rgba(255,255,255,.35);box-shadow:inset 0 0 0 1px #00000040;flex-shrink:0}.team-pick-label{flex:1;text-align:left}.team-pick-taken{font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ui-text-dim)}.team-pick-btn.mine{border-color:var(--team-pick-color, var(--ui-border-gold-strong));background:linear-gradient(180deg,color-mix(in srgb,var(--team-pick-color, #ffd060) 22%,transparent),#00000024);box-shadow:0 0 0 1px color-mix(in srgb,var(--team-pick-color, #ffd060) 45%,transparent)}.team-pick-btn.taken{opacity:.5}.team-pick-btn.taken .swatch{filter:grayscale(.35)}.faction-picker{position:relative;top:auto;left:auto;transform:none;flex:0 1 auto;min-width:min(360px,52vw);max-width:430px;background:var(--ui-picker-bg);backdrop-filter:var(--ui-picker-blur);-webkit-backdrop-filter:var(--ui-picker-blur);border:1px solid var(--ui-border-glass);border-radius:var(--ui-radius-xl);padding:1.2rem 1.35rem 1.3rem;z-index:2;box-shadow:var(--ui-shadow)}.lobby-picker-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:115;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.85rem;padding:1rem;background:#080c166b;backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15)}.lobby-picker-layer.hidden,.lobby-picker-layer .team-picker.hidden,.lobby-picker-layer .faction-picker.hidden{display:none}.lobby-picker-layer .team-picker:not(.hidden),.lobby-picker-layer .faction-picker:not(.hidden){display:block}.faction-picker-title{font-size:.85rem;color:var(--ui-gold);margin-bottom:.65rem;font-weight:800}.faction-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.faction-pick-btn{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.3rem;min-height:4.6rem;padding:.72rem .8rem;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);background:#ffffff14;color:var(--ui-text);cursor:pointer;text-align:left;transition:background .12s,border-color .12s,transform .12s}.faction-pick-btn:hover{background:#ffd0581f;border-color:var(--ui-border-gold);transform:translateY(-1px)}.faction-pick-btn.mine{border-color:var(--ui-border-gold-strong);box-shadow:0 0 0 1px #ffd66059}.faction-pick-name{font-weight:800;font-size:.88rem}.faction-pick-tag{font-size:.74rem;color:var(--ui-text-muted);line-height:1.35}.faction-chip{display:inline-block;font-size:.68rem;font-weight:700;padding:.12rem .38rem;border-radius:999px;background:#ffffff14;color:var(--ui-text-muted);margin-right:.35rem}.faction-chip.clickable{cursor:pointer}.faction-chip.clickable:hover{color:var(--ui-gold);background:#ffd0581f}.host-badge{margin-left:auto;font-size:.7rem;color:var(--ui-gold-dark);border:1px solid rgba(255,214,96,.35);border-radius:999px;padding:2px 8px;background:#ffd0581a}.ai-tag{opacity:.65;font-size:.75rem}.bot-buttons{display:flex;gap:.5rem}.setting{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem;font-size:.9rem}.setting select,.setting input{width:150px;padding:.45rem .55rem;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-sm);background:var(--ui-select-bg);color:var(--ui-text);font-size:.85rem}.setting select:disabled,.setting input:disabled{opacity:.5;cursor:not-allowed}.map-info{font-size:.78rem;color:var(--ui-text-muted);line-height:1.45;min-height:2.2em}#room-lobby .btn:disabled{opacity:.45;cursor:not-allowed}.cmd-btn b{margin-right:.35rem}.cmd-follow b{color:#5fd46a}.cmd-charge b{color:#e85c5c}.cmd-guard b{color:#f1d04a}.cmd-missiles b{color:#6eb5ff}.cmd-testudo b{color:#b88cff}#server-browser.menu-panel--sub{min-width:min(540px,calc(100vw - 2rem));max-width:560px}#server-list{max-height:320px;overflow-y:auto;margin:.75rem 0 1rem;text-align:left}.server-row{display:flex;align-items:center;gap:.9rem;padding:.6rem .85rem;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);margin-bottom:6px;background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);font-size:.9rem}.server-row .server-host{font-weight:700;color:var(--ui-gold)}.server-row .server-map{opacity:.85}.server-row .server-players{margin-left:auto;opacity:.75}.server-row .btn{padding:.3rem .8rem;font-size:.8rem}.server-empty{text-align:center;opacity:.7;padding:1.5rem 0}#esc-menu{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0c101859;backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);z-index:50}#esc-menu-box{background:var(--ui-bg-panel);backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);border:1px solid var(--ui-border-glass);border-radius:var(--ui-radius-xl);padding:2rem 2.5rem;text-align:center;display:flex;flex-direction:column;gap:.65rem;min-width:320px;box-shadow:var(--ui-shadow)}#esc-menu-box h2{color:var(--ui-text);margin-bottom:.2rem}#esc-menu-box .subtitle{margin-bottom:.8rem}.esc-volume{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;margin:.25rem 0 .5rem;font-size:.82rem;color:var(--ui-text-muted);text-align:left}.esc-volume input[type=range]{width:100%;accent-color:var(--ui-gold);cursor:pointer}.esc-volume select{width:100%;padding:.35rem .5rem;border-radius:4px;border:1px solid var(--ui-border-soft);background:var(--ui-select-bg);color:var(--ui-text);cursor:pointer}.esc-hint{margin:-.25rem 0 .5rem;font-size:.72rem;color:var(--ui-text-muted);text-align:center;opacity:.85}.menu-settings{display:flex;flex-direction:column;gap:.15rem;margin:1rem 0 1.25rem;text-align:left}.menu-setting{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;color:var(--ui-text-muted)}.menu-setting input[type=range]{width:100%;accent-color:var(--ui-gold);cursor:pointer}.menu-setting select{width:100%;padding:.55rem .65rem;border-radius:var(--ui-radius-md);border:1px solid var(--ui-border-soft);background:var(--ui-select-bg);color:var(--ui-text);font-size:.92rem;cursor:pointer}.menu-setting-hint{margin:.35rem 0 0;font-size:.72rem;color:var(--ui-text-muted);opacity:.85}#eliminated-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#280c0c47;backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);z-index:60}#eliminated-box{background:var(--ui-bg-panel);backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);border:1px solid rgba(255,160,140,.45);border-radius:var(--ui-radius-xl);padding:2rem 2.5rem;text-align:center;display:flex;flex-direction:column;gap:.65rem;box-shadow:var(--ui-shadow)}#eliminated-box h2{color:#ff8a78;margin-bottom:.2rem}#eliminated-box .subtitle{margin-bottom:.8rem}#spectate-hint{position:absolute;top:64px;left:50%;transform:translate(-50%);background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:999px;padding:.4rem 1.1rem;font-size:.82rem;color:var(--ui-text-muted);z-index:20;box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}#spectate-hint b{color:var(--ui-gold)}#cfg-map option:disabled{color:#6b5a3a}#skill-tree{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0c101852;backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);z-index:55}#skill-tree-box{width:min(860px,94vw);max-height:min(90vh,820px);overflow:hidden;display:flex;flex-direction:column;gap:.85rem;padding:1.15rem 1.25rem 1.25rem;border-radius:22px;border:1px solid var(--ui-border-glass);background:var(--ui-bg-panel);backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);box-shadow:var(--ui-shadow)}#skill-tree-head{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.65rem}.skill-head-title{display:flex;align-items:center;gap:.65rem;min-width:0}.skill-head-badge{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:14px;font-size:1.15rem;color:#ffe08a;background:linear-gradient(145deg,#ffffff29,#ffdc8c1a);border:1px solid var(--ui-border-glass);box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);flex-shrink:0}#skill-tree-head h2{margin:0;font-size:1.35rem;line-height:1.1;color:#fff6dc;letter-spacing:.02em}.skill-head-hint{margin:.15rem 0 0;font-size:.72rem;color:#dccdaab8}.skill-head-hint kbd{padding:.05rem .35rem;border-radius:4px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);font-size:.68rem}#skill-gold-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .75rem;border-radius:999px;background:linear-gradient(180deg,#ffd85a,#e8a820);color:#2a1800;font-weight:800;font-size:1rem;box-shadow:0 4px 14px #ffc43059;white-space:nowrap}#skill-gold-pill .skill-gold-icon{width:1.2rem;height:1.2rem}.skill-close-btn{width:2.25rem;height:2.25rem;border:none;border-radius:12px;background:#ffffff14;color:#fff0d2d9;font-size:1rem;cursor:pointer;transition:background .15s ease,transform .15s ease}.skill-close-btn:hover{background:#ffffff24;transform:scale(1.04)}.skill-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem}.skill-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:3.35rem;padding:.45rem .25rem;border-radius:14px;border:1px solid var(--ui-border-soft);background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:#ebe4d7d1;font-size:.72rem;font-weight:700;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.skill-tab-icon{font-size:1.15rem;line-height:1}.skill-tab:hover{transform:translateY(-1px);border-color:#ffd66047;color:#fff6dc}.skill-tab.active{border-color:#ffd660a6;background:linear-gradient(180deg,#ffd05838,#7848b438);color:#fff6dc;box-shadow:0 0 18px #ffc4401f}.skill-progress-wrap{display:flex;align-items:center;gap:.65rem}.skill-progress-track{flex:1;height:.55rem;border-radius:999px;overflow:hidden;background:#ffffff14;border:1px solid rgba(255,255,255,.06)}#skill-progress-fill{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#6ee07a,#ffd85a);box-shadow:0 0 12px #6ee07a73;transition:width .25s ease}#skill-progress-text{font-size:.72rem;font-weight:700;color:#dccdaad9;white-space:nowrap}#skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;flex:1;min-height:0;overflow-y:auto;padding-right:.2rem;scrollbar-width:thin;scrollbar-color:rgba(255,196,64,.35) transparent}@media(max-width:680px){#skill-grid{grid-template-columns:1fr}}.skill-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:left;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:.75rem;padding:.85rem .9rem;min-height:5.5rem;border-radius:16px;border:1px solid var(--ui-border-soft);background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:inherit;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.skill-card:hover:not(:disabled){transform:translateY(-1px);border-color:#ffd66059}.skill-card.ready{border-color:#ffd66073;box-shadow:0 0 20px #ffc4401f}.skill-card.owned{border-color:#6ee07a8c;background:linear-gradient(180deg,#2c5c3459,#14281873);box-shadow:0 0 18px #6ee07a1f;cursor:default}.skill-card.locked{opacity:.62}.skill-card-icon{display:grid;place-items:center;width:2.85rem;height:2.85rem;border-radius:14px;font-size:1.45rem;background:#00000038;border:1px solid rgba(255,255,255,.08);flex-shrink:0}.skill-card.ready .skill-card-icon{background:linear-gradient(145deg,#ffd0582e,#7848b42e)}.skill-card.owned .skill-card-icon{background:#488c5247}.skill-card-body{display:flex;flex-direction:column;gap:.12rem;min-width:0}.skill-name{font-weight:800;font-size:.92rem;color:#fff6dc;line-height:1.15}.skill-desc{font-size:.78rem;line-height:1.45;color:#d2c6aae0;word-wrap:break-word}.skill-price{display:inline-flex;align-items:center;justify-content:center;min-width:3.4rem;padding:.38rem .55rem;border-radius:999px;font-size:.78rem;font-weight:800;background:linear-gradient(180deg,#ffd85a,#e8a820);color:#2a1800;box-shadow:0 3px 10px #ffc43038;flex-shrink:0;margin-top:.1rem}.skill-card.owned .skill-price{background:linear-gradient(180deg,#7adf86,#3ea852);color:#102814;box-shadow:0 3px 10px #6ee07a38}.skill-card.locked .skill-price{background:#ffffff14;color:#dccdaab8;box-shadow:none}.chat-panel{background:var(--ui-bg-panel-soft);border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);overflow:hidden;box-shadow:var(--ui-shadow-sm);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.lobby-chat{margin-bottom:.85rem}.lobby-chat .chat-log{max-height:100px}.match-chat{position:static;width:100%;pointer-events:auto;opacity:.7;transition:opacity .2s ease}#hud-left-stack{position:absolute;top:4px;left:12px;z-index:25;display:flex;flex-direction:column;gap:6px;width:min(260px,32vw);pointer-events:none}#hud-left-stack>*{pointer-events:auto}#hud-left-stack #killfeed{pointer-events:none}.match-chat.focused{opacity:1}.chat-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .75rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ui-gold);border-bottom:1px solid rgba(255,255,255,.12);background:#ffffff0f;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop)}.chat-hint{font-size:.65rem;font-weight:500;text-transform:none;letter-spacing:0;color:var(--ui-text-dim)}.chat-log{max-height:110px;overflow-y:auto;padding:.45rem .55rem;display:flex;flex-direction:column;gap:.35rem;scrollbar-width:thin;scrollbar-color:rgba(255,214,96,.25) transparent}.chat-line{font-size:.82rem;line-height:1.35;padding:.25rem .45rem;border-left:3px solid rgba(255,214,96,.45);border-radius:0 var(--ui-radius-sm) var(--ui-radius-sm) 0;background:#ffffff0a;word-break:break-word}.chat-line.chat-system{border-left-color:#7848b48c;color:var(--ui-text-dim);font-style:italic;background:#7848b41a}.chat-author{font-weight:700;color:var(--ui-text)}.chat-text{color:var(--ui-text-muted)}.chat-input{width:100%;border:none;border-top:1px solid rgba(255,255,255,.12);padding:.55rem .75rem;background:var(--ui-bg-glass-input);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:var(--ui-text);font-size:.88rem;font-family:inherit;outline:none}.chat-input:focus{background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffe6a040}.chat-input::placeholder{color:var(--ui-text-dim)}.kick-btn{margin-left:auto;padding:.2rem .55rem;font-size:.72rem;border-color:#8b3a2a;color:#f5c4bc;background:#5018108c}.kick-btn:hover{background:#782014bf;border-color:#c44}#room-player-list li .host-badge{margin-left:auto}#room-player-list li:has(.kick-btn) .host-badge{margin-left:0}#commander-skill-tree{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0c142452;backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);z-index:56}#commander-skill-tree-box{width:min(920px,96vw);max-height:none;overflow:visible;display:flex;flex-direction:column;gap:1rem;padding:1.25rem 1.35rem 1.35rem;border-radius:22px;border:1px solid rgba(180,220,255,.35);background:linear-gradient(145deg,#ffffff24,#ffffff0f 45%,#8cbeff1a);backdrop-filter:var(--ui-backdrop-heavy);-webkit-backdrop-filter:var(--ui-backdrop-heavy);box-shadow:var(--ui-shadow),0 0 40px #78b4ff1a}#commander-skill-tree-head{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem}.skill-head-badge.cmd-badge{color:#c8e4ff;background:linear-gradient(145deg,#ffffff24,#8cbeff1f);border-color:#b4dcff59}.cmd-head-stats{display:flex;align-items:stretch;gap:.55rem}.cmd-skill-points-pill{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:4.75rem;padding:.35rem .85rem;border-radius:12px;background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);border:1px solid rgba(180,220,255,.28);transition:border-color .2s,box-shadow .2s,background .2s}.cmd-skill-points-pill.has-points{background:linear-gradient(165deg,#ffd66047,#b4781438);border-color:#ffd660b8;box-shadow:0 0 0 1px #ffd66026 inset,0 0 18px #ffc83c47}.cmd-sp-value{font-size:1.35rem;font-weight:800;line-height:1;color:#c8dcff8c;font-variant-numeric:tabular-nums}.cmd-skill-points-pill.has-points .cmd-sp-value{color:#ffe98a;text-shadow:0 0 12px rgba(255,220,80,.45)}.cmd-sp-label{margin-top:.2rem;font-size:.52rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#aac8f08c;line-height:1.1;text-align:center}.cmd-skill-points-pill.has-points .cmd-sp-label{color:#ffecaaeb}.cmd-meta-pill{display:flex;flex-direction:column;justify-content:center;gap:.15rem;padding:.35rem .75rem;border-radius:999px;font-size:.72rem;font-weight:700;color:#e0f0ff;background:#8cbeff1f;backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);border:1px solid rgba(180,220,255,.3);white-space:nowrap}.cmd-level-tag{font-size:.68rem;letter-spacing:.04em;color:#c8e1ffe0}.cmd-xp-line{font-size:.62rem;font-weight:600;color:#aac8f0b8;font-variant-numeric:tabular-nums}.cmd-xp-pill{display:flex;align-items:center;padding:.35rem .75rem;border-radius:999px;font-size:.72rem;font-weight:700;color:#cfe8ff;background:#508cdc2e;border:1px solid rgba(120,180,255,.28);white-space:nowrap}#commander-skill-tiers{display:flex;flex-direction:column;gap:0;overflow:visible;flex:0}.cmd-skill-grid,.cmd-tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}@media(max-width:720px){.cmd-skill-grid,.cmd-tier-grid{grid-template-columns:1fr}}.cmd-skill-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;align-items:stretch;gap:.65rem;padding:1rem 1.05rem;min-height:7.5rem;border-radius:18px;border:1px solid var(--ui-border-soft);background:var(--ui-bg-glass-inset);backdrop-filter:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop);color:inherit;cursor:pointer;text-align:left;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.cmd-skill-card:hover:not(:disabled){transform:translateY(-1px);border-color:#78b4ff73}.cmd-skill-card.ready{border-color:#78b4ff8c;box-shadow:0 0 16px #508cff24}.cmd-skill-card.partial{border-color:#a0beff59}.cmd-skill-card.owned{border-color:#6ee0aa73;background:linear-gradient(180deg,#2c5c4847,#14282061);cursor:default}.cmd-skill-card.locked{opacity:.55}.cmd-card-top{display:flex;align-items:flex-start;gap:.75rem}.cmd-card-icon{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:14px;font-size:1.35rem;background:#00000038;border:1px solid rgba(255,255,255,.08);flex-shrink:0}.cmd-skill-card.ready .cmd-card-icon{background:linear-gradient(145deg,#64a0ff38,#283c7847)}.cmd-skill-card.owned .cmd-card-icon{background:#488c6447}.cmd-card-head{flex:1;min-width:0;display:flex;flex-direction:column;gap:.45rem}.cmd-card-name{font-weight:800;font-size:.95rem;color:#f0f6ff;line-height:1.2}.cmd-card-desc{margin:0;font-size:.78rem;line-height:1.45;color:#bed2f0d9}.cmd-card-action{align-self:flex-end;min-width:2.5rem;padding:.28rem .65rem;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-align:center;background:linear-gradient(180deg,#7eb8ff,#4a88d8);color:#081428}.cmd-skill-card.owned .cmd-card-action{background:linear-gradient(180deg,#7adf86,#3ea852);color:#102814}.cmd-skill-card.locked .cmd-card-action:empty{display:none}.cmd-skill-pips{display:flex;gap:.32rem;flex-wrap:wrap}.cmd-skill-pip{width:.5rem;height:.5rem;border-radius:50%;border:1px solid rgba(140,180,240,.45);background:#14233c99}.cmd-skill-pip.filled{border-color:#78c8ffe6;background:linear-gradient(180deg,#8cd2fff2,#468cdcd9);box-shadow:0 0 6px #5aaaff59}.cmd-skill-card.owned .cmd-skill-pip.filled{border-color:#6ee0aae6;background:linear-gradient(180deg,#82f0bef2,#3cb482d9);box-shadow:0 0 6px #5adca059}
