@import"https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;700;800;900&family=Zen+Maru+Gothic:wght@500;700;900&family=Saira+Condensed:wght@500;600;700;800&family=Saira:wght@500;600;700;800&display=swap";:root{--sky-50: #f2faff;--sky-100: #e1f3ff;--sky-200: #c2e7ff;--sky-300: #8fd5ff;--sky-400: #4fbff7;--sky-500: #12a2e8;--sky-600: #0b7fbe;--ink-900: #12233a;--ink-800: #1c3652;--ink-700: #2c4a6b;--ink-500: #6e8fb2;--ink-400: #9db6cf;--ink-300: #c7d8e8;--ink-200: #e3edf6;--pink-400: #ff7bac;--white: #ffffff;--hud-panel: rgba(27, 39, 64, .82);--hud-panel-strong: rgba(21, 31, 52, .92);--hud-stroke: rgba(255, 255, 255, .22);--hud-text: #ffffff;--hud-text-dim: rgba(226, 238, 252, .72);--team-ally: #3fbef5;--team-ally-deep: #0b6fa8;--team-enemy: #ff5a6e;--team-enemy-deep: #b32234;--team-neutral: #f2c14e;--cost-lit: #3dd1fb;--gold: #ffc63f;--gold-deep: #c98a08;--success: #4bd37b;--warning: #ffa726;--font-ui: "M PLUS Rounded 1c", "Zen Maru Gothic", -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--font-display: "Zen Maru Gothic", "M PLUS Rounded 1c", sans-serif;--font-num: "Saira Condensed", "Saira", "M PLUS Rounded 1c", sans-serif;--text-slant: -9deg;--ls-caps: .12em;--ls-ui: .02em;--r-xs: 2px;--r-sm: 4px;--r-md: 6px;--r-pill: 999px;--skew: -10deg;--unskew: 10deg;--clip-tag: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);--sp-4: 8px;--sp-6: 16px;--sp-7: 20px;--sp-8: 24px;--sp-9: 32px;--gutter-hud: 14px;--inset-panel: 12px;--shadow-sm: 0 2px 6px rgba(20, 45, 75, .14);--shadow-md: 0 6px 16px rgba(20, 45, 75, .18);--shadow-hud: 0 1px 3px rgba(10, 22, 40, .35);--shadow-inset-slot: inset 0 2px 5px rgba(14, 36, 60, .3);--glow-ally: 0 0 12px rgba(63, 190, 245, .65);--glow-enemy: 0 0 12px rgba(255, 90, 110, .6);--text-outline-dark: -1px -1px 0 #25405f, 1px -1px 0 #25405f, -1px 1px 0 #25405f, 1px 1px 0 #25405f;--grad-sky: linear-gradient(180deg, var(--sky-300), var(--sky-500));--grad-panel: linear-gradient( 180deg, rgba(255, 255, 255, .98), rgba(233, 244, 253, .94) );--grad-hp: linear-gradient(180deg, #cff470, #8fd32a);--grad-hp-enemy: linear-gradient(180deg, #ff7b86, #f5303f);--grad-protect-top: linear-gradient( 180deg, rgba(10, 25, 45, .55), transparent );--grad-protect-bottom: linear-gradient( 0deg, rgba(10, 25, 45, .55), transparent );--disabled-opacity: .45}:root{color:#eef8ff;background:#07111f;font-family:Inter,Noto Sans JP,system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}html,body,#root,.app-shell{width:100%;height:100%;margin:0;overflow:hidden}.app-shell{position:relative;-webkit-user-select:none;user-select:none}.hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.topbar{position:absolute;top:var(--gutter-hud);left:50%;display:flex;gap:var(--gutter-hud);align-items:center;font-family:var(--font-ui);transform:translate(-50%)}.nexus{width:min(22vw,240px)}.nexus-label{margin-bottom:3px;color:var(--white);font-size:10px;font-weight:700;letter-spacing:var(--ls-caps);text-shadow:var(--text-outline-dark)}.nexus-self .nexus-label{text-align:right}.nexus-label .slant{display:inline-block;transform:skew(var(--text-slant))}.nexus-bar{position:relative;height:12px;overflow:hidden;border:1px solid rgb(255 255 255 / 55%);background:#0c1624d1;box-shadow:var(--shadow-inset-slot);transform:skew(var(--skew))}.nexus-fill{position:absolute;top:0;bottom:0;left:0;transition:width .2s linear}.nexus-self .nexus-fill{background:linear-gradient(180deg,#7fd9ff,var(--team-ally-deep))}.nexus-enemy .nexus-fill{background:linear-gradient(180deg,#ff8b98,var(--team-enemy-deep))}.nexus-fill-unknown{right:0;background:repeating-linear-gradient(115deg,#9eb6cf73 0,#9eb6cf73 8px,#4660804d 8px,#4660804d 16px)}.timer-chip{display:flex;flex-direction:column;align-items:center;padding:5px 22px;border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel-strong);box-shadow:var(--shadow-hud);line-height:1.1}.timer-value{color:var(--hud-text);font-family:var(--font-num);font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;transform:skew(var(--text-slant))}.timer-caption{color:var(--hud-text-dim);font-size:9px;letter-spacing:var(--ls-caps);transform:skew(var(--text-slant))}.skillbar{--skill-scale: 1;position:absolute;bottom:var(--sp-8);left:50%;display:flex;align-items:flex-end;gap:calc(var(--gutter-hud) * var(--skill-scale));font-family:var(--font-ui);transform:translate(-50%)}.skillbar-cluster{display:flex;flex-direction:column;gap:calc(8px * var(--skill-scale))}.skillbar-cards{display:flex;margin-left:calc(7px * var(--skill-scale));gap:calc(10px * var(--skill-scale))}.portrait{position:relative;width:calc(72px * var(--skill-scale));height:calc(72px * var(--skill-scale));flex:none;border:calc(2px * var(--skill-scale)) solid var(--white);border-radius:3px;background:var(--grad-sky);box-shadow:var(--shadow-sm),var(--shadow-hud);outline:calc(2px * var(--skill-scale)) solid var(--team-ally);outline-offset:calc(-4px * var(--skill-scale));transform:skew(var(--skew))}.portrait-face{position:absolute;inset:calc(6px * var(--skill-scale)) calc(12px * var(--skill-scale)) 0;border-radius:50% 50% 8px 8px;background:linear-gradient(180deg,#dcebf7,#8fb4ce);transform:skew(var(--unskew))}.portrait-lv{position:absolute;bottom:calc(-6px * var(--skill-scale));left:calc(-6px * var(--skill-scale));display:flex;min-width:calc(18px * var(--skill-scale));height:calc(18px * var(--skill-scale));align-items:center;justify-content:center;padding:0 calc(6px * var(--skill-scale));border:1px solid rgb(255 255 255 / 55%);border-radius:var(--r-pill);background:#0a1422eb;color:var(--white);font-family:var(--font-num);font-size:calc(11px * var(--skill-scale));font-weight:700;transform:skew(var(--unskew))}.portrait-lv span{display:inline-block;transform:skew(var(--text-slant))}.skillbar-bars{display:flex;width:calc(330px * var(--skill-scale));flex-direction:column;gap:calc(5px * var(--skill-scale))}.cbar{position:relative;height:calc(14px * var(--skill-scale));overflow:hidden;border:1px solid rgb(255 255 255 / 55%);background:#0f28198c;box-shadow:var(--shadow-inset-slot);transform:skew(var(--skew))}.cbar-fill{position:absolute;top:0;bottom:0;left:0;transition:width .2s linear}.cbar-hp .cbar-fill{background:var(--grad-hp)}.cbar-xp{height:calc(7px * var(--skill-scale));background:#203a5873}.cbar-xp .cbar-fill{background:var(--grad-sky)}.cbar-xp-caption{position:absolute;top:50%;left:calc(4px * var(--skill-scale));color:var(--hud-text-dim);font-family:var(--font-ui);font-size:calc(6px * var(--skill-scale));font-weight:700;letter-spacing:var(--ls-caps);line-height:1;transform:translateY(-50%) skew(calc(-1 * var(--skew)));pointer-events:none}.cbar-ticks{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(7px * var(--skill-scale)),rgb(10 22 36 / 40%) calc(7px * var(--skill-scale)),rgb(10 22 36 / 40%) calc(8px * var(--skill-scale)))}.cbar-txt{position:absolute;display:flex;align-items:center;justify-content:center;top:0;right:0;bottom:0;left:0;color:#eaf4ff;font-family:var(--font-num);font-size:calc(11px * var(--skill-scale));font-weight:700;font-variant-numeric:tabular-nums;text-shadow:var(--text-outline-dark);transform:skew(var(--text-slant))}.skill-card-desc{position:absolute;bottom:calc(100% + 22px * var(--skill-scale));left:50%;display:flex;width:max-content;max-width:calc(280px * var(--skill-scale));flex-direction:column;gap:4px;padding:calc(8px * var(--skill-scale)) calc(10px * var(--skill-scale));border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel-strong);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;text-align:left;transform:translate(-50%) skew(var(--unskew));transition:opacity .12s ease-out;visibility:hidden}.skill-card:hover .skill-card-desc,.skill-card:focus-visible .skill-card-desc{opacity:1;visibility:visible}.skill-card-desc-title{color:var(--hud-text);font-size:calc(11px * var(--skill-scale));font-weight:700;letter-spacing:var(--ls-ui)}.skill-card-desc-body{color:var(--hud-text-dim);font-size:calc(11px * var(--skill-scale));line-height:1.5}.skill-card{position:relative;width:calc(62px * var(--skill-scale));height:calc(64px * var(--skill-scale));border:1px solid rgb(255 255 255 / 85%);border-radius:var(--r-xs);background:var(--hud-panel-strong);box-shadow:var(--shadow-hud);pointer-events:auto;transform:skew(var(--skew))}.skill-card:before{content:"";position:absolute;top:calc(4px * var(--skill-scale));right:calc(4px * var(--skill-scale));bottom:calc(16px * var(--skill-scale));left:calc(4px * var(--skill-scale));border-radius:var(--r-xs);background:linear-gradient(180deg,#8fd5ff,#3e7fb8)}.skill-card-name{position:absolute;top:calc(-18px * var(--skill-scale));left:50%;color:var(--white);font-size:calc(9px * var(--skill-scale));font-weight:700;white-space:nowrap;text-shadow:var(--text-outline-dark);transform:translate(-50%) skew(var(--unskew))}.skill-card-cost{position:absolute;top:calc(-8px * var(--skill-scale));left:calc(-8px * var(--skill-scale));z-index:2;display:flex;width:calc(22px * var(--skill-scale));height:calc(22px * var(--skill-scale));align-items:center;justify-content:center;border:1px solid var(--white);border-radius:var(--r-pill);background:#17253e;box-shadow:0 1px 3px #0812207f;color:var(--white);font-family:var(--font-num);font-size:calc(13px * var(--skill-scale));font-weight:700;transform:skew(var(--unskew))}.skill-card-key{position:absolute;right:0;bottom:0;left:0;padding:calc(1px * var(--skill-scale)) 0;background:#0a1422b8;color:var(--white);font-size:calc(10px * var(--skill-scale));font-weight:700;letter-spacing:var(--ls-ui);text-align:center}.skill-card-unaffordable:before{filter:brightness(.45) saturate(.7)}.skill-card-unaffordable .skill-card-name{color:var(--hud-text-dim)}.skill-card-passive{border-style:dashed;border-color:#ffffff7f}.skillbar-cost{display:flex;gap:calc(var(--sp-4) * var(--skill-scale));align-items:center;color:var(--white);text-shadow:var(--text-outline-dark)}.skillbar-cost-caption{font-size:calc(11px * var(--skill-scale));font-weight:900;transform:skew(var(--text-slant))}.skillbar-cost-num{font-family:var(--font-num);font-size:calc(13px * var(--skill-scale));font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;transform:skew(var(--text-slant))}.costbar{display:flex;height:calc(12px * var(--skill-scale));flex:1;gap:calc(2px * var(--skill-scale));align-items:stretch;transform:skew(var(--skew))}.costpip{flex:1;border:1px solid rgb(8 16 28 / 85%);background:#203a5873;box-shadow:0 0 calc(6px * var(--cost-glow, 0)) calc(1px * var(--cost-glow, 0)) rgb(61 209 251 / calc(var(--cost-glow, 0) * 85%)),0 0 calc(14px * var(--cost-glow, 0)) calc(4px * var(--cost-glow, 0)) rgb(61 209 251 / calc(var(--cost-glow, 0) * 45%))}.costpip-on{background:var(--cost-lit)}.costpip-part{background:linear-gradient(90deg,var(--cost-lit) calc(var(--cost-part-frac, 0) * 100%),rgb(32 58 88 / 45%) calc(var(--cost-part-frac, 0) * 100%))}@media(min-width:1600px){.skillbar{--skill-scale: 1.25}}@media(min-width:2560px){.skillbar{--skill-scale: 1.55}}@media(min-width:3440px){.skillbar{--skill-scale: 1.9}}.hp-panel{position:absolute;top:var(--gutter-hud);width:min(34vw,360px);padding:var(--inset-panel) var(--sp-6);border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel);box-shadow:var(--shadow-hud);font-family:var(--font-ui);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.opponent-hp{right:var(--gutter-hud)}.hp-label{display:flex;justify-content:space-between;margin-bottom:6px;color:var(--hud-text);font-size:12px;font-weight:700;letter-spacing:var(--ls-ui)}.hp-label span:last-child{font-family:var(--font-num);font-size:13px}.hp-track{width:100%;height:14px;overflow:hidden;border:1px solid rgb(255 255 255 / 55%);background:#0f28198c;box-shadow:var(--shadow-inset-slot);transform:skew(var(--skew))}.hp-fill{height:100%;transition:width .1s linear}.hp-fill-local{background:var(--grad-hp)}.hp-fill-opponent{background:var(--grad-hp-enemy)}.cost-blocked{border-radius:var(--r-sm);background:#ff5a6e52;box-shadow:0 0 0 1px #ff5a6eb3}.economy-gold{color:var(--gold)}.level-up-flash{animation:level-up-pop .9s ease-out;color:var(--gold)}@keyframes level-up-pop{0%{transform:scale(1.5);text-shadow:0 0 10px rgb(255 198 63 / 90%)}to{transform:scale(1);text-shadow:none}}.shop-panel{position:absolute;right:var(--gutter-hud);bottom:var(--gutter-hud);width:min(34vw,300px);padding:var(--inset-panel) var(--sp-6);border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel);box-shadow:var(--shadow-hud);color:var(--hud-text-dim);font-family:var(--font-ui);font-size:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shop-header{display:flex;justify-content:space-between;margin-bottom:6px;color:var(--hud-text);font-size:13px;font-weight:700;letter-spacing:var(--ls-ui)}.shop-row{display:grid;grid-template-columns:22px 1fr auto auto;gap:8px;align-items:baseline;margin-top:4px}.shop-row-disabled{opacity:var(--disabled-opacity)}.shop-name{color:var(--hud-text);font-weight:600}.shop-price{color:var(--gold);font-family:var(--font-num);font-weight:700}.shop-stacks{color:var(--hud-text-dim);font-family:var(--font-num)}.shop-section{margin-top:var(--sp-4);padding-top:6px;border-top:1px solid rgb(255 255 255 / 12%)}.shop-section-label{margin-bottom:2px;color:var(--hud-text-dim);font-size:10px;font-weight:700;letter-spacing:var(--ls-caps)}.shop-section-downtime{margin-top:var(--sp-4);padding:6px 6px 4px;border-radius:var(--r-sm);background:#3fbef51f;box-shadow:0 0 0 1px #3fbef573}.shop-section-downtime .shop-section-label{color:var(--team-ally)}.shop-cap-note{grid-column:2 / -1;color:var(--warning);font-size:11px}.shop-blocked{margin-top:6px;padding:4px 6px;border-radius:var(--r-sm);background:#ff5a6e4d;box-shadow:0 0 0 1px #ff5a6ea6;color:var(--white);font-weight:700}.instructions{position:absolute;top:14px;left:var(--gutter-hud);width:min(34vw,360px);padding:6px 10px;border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:#151f349e;color:var(--hud-text-dim);font-family:var(--font-ui);font-size:11px;line-height:1.6}.ammo-chip{position:absolute;top:120px;right:var(--gutter-hud);display:flex;gap:var(--sp-4);align-items:baseline;padding:6px var(--sp-6);border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel);box-shadow:var(--shadow-hud);font-family:var(--font-ui);font-size:11px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.skill-character{color:var(--hud-text);font-size:12px;font-weight:700;letter-spacing:var(--ls-ui)}.skill-ammo{color:var(--sky-200)}.skill-ammo.ammo-spread,.skill-ammo.ammo-slug{color:var(--warning)}.skill-ammo.ammo-drone{color:var(--cost-lit)}.skill-key{display:inline-block;border:1px solid rgb(255 255 255 / 55%);border-radius:var(--r-xs);background:#0a1422b8;color:var(--white);font-family:var(--font-num);font-weight:700;text-align:center}.hp-track-unknown{background:repeating-linear-gradient(115deg,#ff5a6e8c 0,#ff5a6e8c 8px,#b322344d 8px,#b322344d 16px)}.respawn-overlay{position:absolute;top:38%;left:50%;padding:var(--inset-panel) var(--sp-8);border:1px solid rgb(255 90 110 / 55%);border-radius:var(--r-sm);background:var(--hud-panel-strong);box-shadow:var(--shadow-md);font-family:var(--font-ui);text-align:center;transform:translate(-50%,-50%)}.respawn-title{color:var(--team-enemy);font-size:15px;font-weight:700;letter-spacing:var(--ls-caps)}.respawn-timer{margin-top:6px;color:var(--hud-text);font-family:var(--font-num);font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.match-over{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;background:#0308109e}.match-over-title{font-family:var(--font-display);font-size:64px;font-weight:900;letter-spacing:var(--ls-caps);text-shadow:0 4px 24px rgb(0 0 0 / 60%);transform:skew(var(--text-slant))}.match-over-victory .match-over-title{color:var(--team-neutral)}.match-over-defeat .match-over-title{color:var(--team-enemy)}.match-over-sub{color:var(--hud-text-dim);font-family:var(--font-ui);font-size:14px}.match-over-button{margin-top:14px;padding:9px 18px;border:1px solid rgb(255 255 255 / 55%);border-radius:var(--r-sm);background:var(--hud-panel-strong);color:var(--hud-text);font:inherit;font-family:var(--font-ui);font-weight:700;cursor:pointer;pointer-events:auto}.match-over-button:hover{outline:2px solid var(--sky-300)}.kill-tactical-banner-layer{position:absolute;top:0;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;width:min(60vw,520px);max-height:20vh;padding-top:10px;overflow:hidden;pointer-events:none}.kill-tactical-banner{padding:6px 20px;border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel-strong);box-shadow:var(--shadow-hud);color:var(--hud-text);font-family:var(--font-ui);font-size:13px;font-weight:700;letter-spacing:var(--ls-ui);text-align:center;white-space:nowrap;animation:kill-banner-slide-in var(--kill-banner-anim-ms, .26s) ease-out}.kill-tactical-banner-self-kill{border-color:#3fbef58c;color:var(--sky-200)}.kill-tactical-banner-self-death{border-color:#ff5a6e8c;color:var(--team-enemy)}@keyframes kill-banner-slide-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.debug-switch{position:absolute;bottom:200px;left:var(--gutter-hud);z-index:41;padding:5px 12px;border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel);color:var(--hud-text);font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:var(--ls-ui);cursor:pointer;pointer-events:auto}.debug-overlay{position:absolute;bottom:var(--gutter-hud);left:var(--gutter-hud);min-width:260px;padding:var(--inset-panel) var(--sp-6);border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel);box-shadow:var(--shadow-hud);color:var(--hud-text-dim);font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.debug-sub{padding-left:1em;color:var(--ink-400)}.debug-reset{margin-top:6px;padding:3px 8px;border:1px solid rgb(255 255 255 / 45%);border-radius:var(--r-xs);background:var(--hud-panel-strong);color:var(--hud-text);font:inherit;cursor:pointer;pointer-events:auto}.debug-reset:hover{outline:2px solid var(--sky-300)}.connection-status{max-width:340px;margin-top:4px;color:var(--success);overflow-wrap:anywhere}.status-error,.status-aborted,.status-closed{color:var(--team-enemy)}.auth-gate{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.auth-gate-card{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:min(86vw,280px);padding:24px 22px;border:1px solid rgb(220 240 255 / 32%);border-radius:10px;background:#030a14e0;box-shadow:0 8px 28px #0006;text-align:center}.auth-gate-symbol{margin-bottom:4px;font-size:34px}.auth-gate-label{font-size:12px;font-weight:700;color:#8ba4b6;letter-spacing:.04em}.auth-gate-input{padding:8px 10px;border:1px solid rgb(220 240 255 / 35%);border-radius:6px;background:#17283ae5;color:#eef8ff;font:inherit;text-align:center}.auth-gate-input:focus{outline:2px solid rgb(127 212 255 / 70%);outline-offset:1px}.auth-gate-button{padding:9px 18px;border:1px solid rgb(220 240 255 / 45%);border-radius:6px;background:#263e58f2;color:#eef8ff;font:inherit;font-weight:700;cursor:pointer}.auth-gate-button:disabled{opacity:.5;cursor:default}.auth-gate-button:not(:disabled):hover{background:#304c6af2}.auth-gate-error{color:#ff9c9c;font-size:13px}.lobby-gate{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center}.lobby-card{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:min(90vw,380px);padding:24px 22px;border:1px solid rgb(220 240 255 / 32%);border-radius:10px;background:#030a14e0;box-shadow:0 8px 28px #0006;text-align:center}.lobby-title{font-size:14px;font-weight:700;color:#8ba4b6;letter-spacing:.04em}.lobby-roster{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.lobby-roster-item{padding:8px 14px;border:1px solid rgb(220 240 255 / 35%);border-radius:6px;background:#17283ae5;color:#eef8ff;font:inherit;cursor:pointer}.lobby-roster-item:hover{background:#263e58f2}.lobby-roster-item-selected{border-color:#7fd4ffcc;background:#305a78f2}.lobby-ready-button{padding:9px 18px;border:1px solid rgb(220 240 255 / 45%);border-radius:6px;background:#263e58f2;color:#eef8ff;font:inherit;font-weight:700;cursor:pointer}.lobby-ready-button:disabled{opacity:.5;cursor:default}.lobby-ready-button:not(:disabled):hover{background:#304c6af2}.lobby-opponent-status{color:#8ba4b6;font-size:13px}.lobby-opponent-left{color:#ff9c9c;font-size:13px}@media(max-width:700px){.hp-panel{width:calc(50vw - 24px)}.instructions{display:none}}.fx-panel-toggle{position:absolute;top:10px;right:10px;z-index:20;width:34px;height:34px;border:1px solid rgb(220 240 255 / 32%);border-radius:8px;background:#030a14c7;color:#eef8ff;font-size:16px;line-height:1;cursor:pointer;pointer-events:auto}.fx-panel-toggle:hover{background:#17283ae5}.fx-panel-drawer{position:absolute;top:50px;right:10px;z-index:20;width:min(86vw,300px);max-height:min(70vh,480px);overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid rgb(220 240 255 / 32%);border-radius:10px;background:#030a14eb;box-shadow:0 8px 28px #0006;pointer-events:auto}.fx-panel-header{display:flex;align-items:center;justify-content:space-between;font-weight:700;color:#eef8ff}.fx-panel-close{border:none;background:transparent;color:#8ba4b6;font-size:16px;cursor:pointer}.fx-panel-body{display:flex;flex-direction:column;gap:12px}.fx-panel-row{display:flex;flex-direction:column;gap:4px}.fx-panel-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.fx-panel-checkbox{display:flex;align-items:center;gap:6px;color:#eef8ff;cursor:pointer}.fx-panel-category{font-size:11px;color:#8ba4b6}.fx-panel-slider{width:100%}.fx-panel-note{font-size:11px;color:#8ba4b6}.fx-panel-footer{display:flex;justify-content:flex-end}.fx-panel-reset{padding:6px 12px;border:1px solid rgb(220 240 255 / 45%);border-radius:6px;background:#263e58f2;color:#eef8ff;font:inherit;cursor:pointer}.fx-panel-reset:hover{background:#304c6af2}.statuspanel{position:absolute;bottom:232px;left:var(--gutter-hud);z-index:40;width:236px;padding:var(--inset-panel) var(--sp-6);border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel);box-shadow:var(--shadow-hud);font-family:var(--font-ui);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.statuspanel-title{display:flex;justify-content:space-between;margin:0 0 8px;color:var(--hud-text);font-size:11px;letter-spacing:var(--ls-ui);transform:skew(var(--text-slant))}.statuspanel-table{width:100%;border-collapse:collapse;color:var(--hud-text-dim);font-size:11px}.statuspanel-table td{padding:3px 0;border-bottom:1px solid rgb(255 255 255 / 8%);letter-spacing:var(--ls-caps)}.statuspanel-table td:last-child{color:var(--hud-text);font-family:var(--font-num);font-size:14px;font-weight:700;letter-spacing:.01em;text-align:right}.statuspanel-bonus{margin-left:4px;color:var(--success);font-size:10px}.statuspanel-fx{margin-top:8px;color:var(--sky-300);font-size:10px;line-height:1.5}.minimap-switch{position:absolute;bottom:300px;right:var(--gutter-hud);z-index:41;padding:5px 12px;border:1px solid var(--hud-stroke);border-radius:var(--r-sm);background:var(--hud-panel);color:var(--hud-text);font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:var(--ls-ui);cursor:pointer;pointer-events:auto}.minimap-switch-open{bottom:460px}.minimap{position:absolute;bottom:300px;right:var(--gutter-hud);z-index:40;width:var(--minimap-width, 188px);height:var(--minimap-height, 150px);pointer-events:auto;border:2px solid var(--white);border-radius:var(--r-md);background:linear-gradient(135deg,#ddeffa,#b9ddf3 45%,#9cc9e6);box-shadow:var(--shadow-md),var(--shadow-hud);overflow:hidden}.minimap:before{content:"KIVOTOS";position:absolute;top:0;left:0;z-index:1;padding:2px 14px 2px 8px;background:#12233adb;clip-path:var(--clip-tag);color:#eaf4ff;font-family:var(--font-ui);font-size:9px;font-weight:700;letter-spacing:var(--ls-caps);transform:skew(var(--text-slant))}.minimap-lane{position:absolute;top:50%;left:50%;width:var(--minimap-lane-length, 120%);height:var(--minimap-lane-thickness, 14px);border-radius:var(--r-pill);background:#fff9;transform:translate(-50%,-50%) rotate(var(--minimap-rotation, 0deg))}.minimap-path{position:absolute;top:0;left:0;z-index:0;width:100%;height:100%;overflow:visible;pointer-events:none}.minimap-path polyline{fill:none;stroke:var(--team-ally);vector-effect:non-scaling-stroke;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:3 3;opacity:.85}.minimap-path-goal{fill:var(--team-ally);stroke:var(--white);vector-effect:non-scaling-stroke;stroke-width:1;opacity:.95}.minimap-dot{position:absolute;width:10px;height:10px;border:2px solid var(--white);border-radius:var(--r-pill);transform:translate(-50%,-50%)}.minimap-dot-self{background:var(--team-ally);box-shadow:var(--glow-ally)}.minimap-dot-enemy{border-radius:var(--r-pill);background:var(--team-enemy);box-shadow:var(--glow-enemy);opacity:.6}.minimap-dot-nexus-self,.minimap-dot-nexus-enemy{width:12px;height:12px;border-radius:0;transform:translate(-50%,-50%) rotate(45deg)}.minimap-dot-nexus-self{background:var(--team-ally);box-shadow:var(--glow-ally)}.minimap-dot-nexus-enemy{background:var(--team-enemy);box-shadow:var(--glow-enemy)}.minimap-note{position:absolute;bottom:3px;left:5px;color:var(--ink-700);font-family:var(--font-ui);font-size:8px}@media(max-height:560px){.statuspanel,.minimap{display:none}.minimap-switch,.minimap-switch-open{bottom:300px}}
