:root{--bg-dark: rgba(15, 27, 38, .94);--bg-panel: rgba(34, 49, 61, .94);--panel-raised: rgba(48, 66, 78, .96);--border-glow: rgba(78, 205, 224, .42);--accent-blue: #61d6e8;--accent-gold: #f4cf52;--accent-orange: #f47a38;--accent-green: #64c987;--accent-red: #ee6670;--text-main: #f2eee0;--text-muted: #b1c0c1}*{box-sizing:border-box;user-select:none;-webkit-user-select:none}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent-gold);outline-offset:3px;box-shadow:0 0 0 5px #f4cf5233}[hidden]{display:none!important}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:#182832;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif;color:var(--text-main)}#app{position:relative;width:100vw;height:100vh;height:100dvh}#game-canvas{display:block;width:100%;height:100%;touch-action:none}#ui-root{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.interactive{pointer-events:auto}.battle-screen{display:flex;flex:1;min-height:0;flex-direction:column;justify-content:space-between;gap:12px}.top-hud{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.brand-card{display:flex;align-items:center;gap:12px;background:linear-gradient(145deg,rgba(61,81,91,.97),var(--bg-dark));border:1px solid var(--border-glow);border-radius:8px 14px;padding:8px 14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 24px #0000006b,inset 0 1px #ffffff14}.brand-title{font-weight:800;font-size:1.15rem;letter-spacing:.5px;background:linear-gradient(90deg,#a6e9ee,#f4cf52);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.phase-badge{background:#38bdf82e;border:1px solid var(--accent-blue);color:var(--accent-blue);padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.02em}.wind-hud-widget{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 7px;border-radius:10px;background:#0f1924e6;border:1px solid rgba(56,189,248,.42);box-shadow:inset 0 1px #ffffff14}.wind-hud-widget.is-east{border-color:#22d3eea6;box-shadow:0 0 14px #22d3ee29,inset 0 1px #ffffff14}.wind-hud-widget.is-west{border-color:#c084fca6;box-shadow:0 0 14px #c084fc29,inset 0 1px #ffffff14}.wind-flag-box{display:flex;align-items:center;justify-content:center;width:38px;height:26px;flex-shrink:0}.wind-flag-svg{display:block;overflow:visible}.wind-flag-cloth{transform-origin:7px 8px}.wind-flag-cloth.calm{transform-origin:12px 6px;animation:windFlagCalmSway 2.8s ease-in-out infinite alternate}.wind-flag-cloth.mild{animation:windFlagFlutterMild .55s ease-in-out infinite alternate}.wind-flag-cloth.gale{animation:windFlagFlutterGale .24s ease-in-out infinite alternate}.wind-gust-line{stroke-dasharray:5 9;animation:windGustStream .55s linear infinite}.wind-gust-line.g2{animation-delay:-.27s}@keyframes windFlagCalmSway{0%{transform:rotate(0) skew(0)}to{transform:rotate(-4deg) skew(-2deg)}}@keyframes windFlagFlutterMild{0%{transform:rotate(-2.5deg) scaleY(.95)}to{transform:rotate(3.2deg) scaleY(1.05)}}@keyframes windFlagFlutterGale{0%{transform:rotate(-4deg) skewY(-3deg) scaleX(.97)}to{transform:rotate(4.5deg) skewY(3.5deg) scaleX(1.03)}}@keyframes windGustStream{0%{stroke-dashoffset:14;opacity:.35}50%{opacity:.95}to{stroke-dashoffset:0;opacity:.35}}.wind-gauge-col{display:flex;flex-direction:column;gap:3px;min-width:112px}.wind-readout-top{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:.7rem;line-height:1.1;white-space:nowrap}.wind-dir-tag{font-weight:800;letter-spacing:.04em;font-size:.66rem}.wind-dir-tag.east{color:#22d3ee}.wind-dir-tag.west{color:#c084fc}.wind-dir-tag.calm{color:#7dd3fc}.wind-amount{color:#f8fafc;font-size:.71rem;font-variant-numeric:tabular-nums}.wind-mod-extra{display:inline-flex;align-items:center;gap:2px;padding:1px 5px;border-radius:999px;border:1px solid rgba(250,204,21,.45);background:#0f172abf;font-size:.64rem;font-weight:800}.wind-bar-track{display:flex;align-items:center;gap:4px}.wind-cap{font-size:.56rem;line-height:1;color:#94a3b866;transition:color .2s ease,transform .2s ease}.wind-cap.west.is-active{color:#c084fc;text-shadow:0 0 6px rgba(192,132,252,.8)}.wind-cap.east.is-active{color:#22d3ee;text-shadow:0 0 6px rgba(34,211,238,.8)}.wind-bar-meter{position:relative;display:flex;align-items:center;width:92px;height:7px;background:#0f172af2;border:1px solid rgba(148,163,184,.32);border-radius:999px;overflow:hidden}.wind-bar-half{flex:1;height:100%;display:flex;align-items:center;overflow:hidden}.wind-bar-half.west{justify-content:flex-end}.wind-bar-half.east{justify-content:flex-start}.wind-bar-center-tick{width:2px;height:100%;background:#f8fafc;opacity:.85;flex-shrink:0;z-index:1}.wind-bar-fill{height:100%;transition:width .3s cubic-bezier(.22,1,.36,1);background-size:12px 12px}.wind-bar-fill.west{background-color:#a855f7;background-image:repeating-linear-gradient(-45deg,rgba(255,255,255,.28) 0,rgba(255,255,255,.28) 3px,transparent 3px,transparent 6px);box-shadow:0 0 8px #c084fcbf;animation:windBarFlowWest .45s linear infinite}.wind-bar-fill.east{background-color:#06b6d4;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.28) 0,rgba(255,255,255,.28) 3px,transparent 3px,transparent 6px);box-shadow:0 0 8px #22d3eebf;animation:windBarFlowEast .45s linear infinite}@keyframes windBarFlowWest{0%{background-position:12px 0}to{background-position:0 0}}@keyframes windBarFlowEast{0%{background-position:0 0}to{background-position:12px 0}}.hud-stats{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.top-hud>.hud-stats{flex:1}.stat-pill{background:var(--bg-panel);border:1px solid rgba(148,163,184,.25);border-radius:10px;padding:7px 12px;font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:6px}.stat-pill strong{color:var(--accent-gold)}.hp-bar-wrap{width:110px;height:10px;background:#ffffff1f;border-radius:99px;overflow:hidden}.hp-bar-fill{height:100%;background:linear-gradient(90deg,#22c55e,#10b981);transition:width .25s ease}.hud-btn{background:linear-gradient(180deg,#425661f5,#23333ef5);border:1px solid rgba(116,196,204,.38);color:var(--text-main);padding:8px 12px;border-radius:7px 11px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .15s ease}.hud-btn:hover{background:#4bb3be47;transform:translateY(-1px)}.hud-btn.active{background:var(--accent-blue);color:#0f172a}.battle-menu{position:relative;margin-left:auto}.battle-menu-toggle{min-height:36px}.battle-menu.is-open .battle-menu-toggle{border-color:var(--accent-gold);color:var(--accent-gold)}.battle-menu-panel{position:absolute;z-index:75;top:calc(100% + 8px);right:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;width:min(330px,calc(100vw - 24px));padding:10px;border:1px solid var(--border-glow);border-radius:8px 14px;background:var(--bg-dark);box-shadow:0 14px 32px #0000008c,inset 0 1px #ffffff12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.battle-menu-panel .hud-btn{flex:1 1 auto}.phase-progress{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid rgba(116,196,204,.27);border-radius:8px 13px;background:#122029d6}.phase-step{position:relative;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px 10px;color:var(--text-muted);font-size:.74rem;font-weight:800;white-space:nowrap}.phase-step:before{content:"";width:7px;height:7px;border:1px solid currentColor;border-radius:2px;transform:rotate(45deg)}.phase-step.is-current{background:#f47a382e;color:#ffad78;box-shadow:inset 0 -2px var(--accent-orange)}.phase-step.is-complete{color:var(--accent-blue)}.phase-step.is-complete:before{background:currentColor}.selector-art{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px}.selector-art svg{display:block;width:100%;height:100%}.icon-slot .selector-art{width:29px;height:29px}.action-btn.ability-action{background:linear-gradient(135deg,#ff9d4d,#e95734);border:1px solid #ffd18a;box-shadow:0 4px 14px #dd562a52}.center-stage{display:flex;flex-direction:column;align-items:center;gap:10px}.instruction-banner{background:#0f172ad9;border:1px solid rgba(250,204,21,.45);padding:8px 18px;border-radius:999px;font-size:.88rem;color:#fde047;text-align:center;box-shadow:0 6px 20px #00000059}.ability-trigger-btn{background:linear-gradient(135deg,#ff9b45,#e95335);border:2px solid #fef08a;color:#fff;font-size:1.15rem;font-weight:800;padding:14px 32px;border-radius:999px;cursor:pointer;box-shadow:0 0 28px #f59e0bbf;animation:pulseGlow .9s infinite alternate}@keyframes pulseGlow{0%{box-shadow:0 0 16px #f59e0b8c}to{box-shadow:0 0 32px #ef4444f2}}.bottom-dock{position:relative;display:flex;flex-direction:column;gap:4px;background:linear-gradient(165deg,#2f424df5,#121f28f7);border:1px solid var(--border-glow);border-radius:8px 17px;padding:7px 12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:fit-content;max-width:96vw;margin:0 auto;box-shadow:0 10px 28px #0000008c,inset 0 1px #ffffff14}.dock-row{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}.dock-divider{width:1px;height:26px;background:#94a3b840;margin:0 4px;flex-shrink:0}.selector-group{display:flex;align-items:center;gap:5px;flex-shrink:0}.icon-slot{position:relative;width:42px;height:42px;border-radius:7px 12px;background:linear-gradient(145deg,#3f525cf2,#1b2a33fa);border:1.5px solid rgba(148,163,184,.25);color:var(--text-main);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;transition:all .14s ease;flex-shrink:0}.icon-slot svg{width:27px;height:27px;display:block;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}.icon-slot:hover{border-color:var(--accent-blue);background:#38bdf829;transform:translateY(-2px)}.icon-slot.selected{border-color:var(--accent-gold);background:#f4cf5233;box-shadow:0 0 12px #facc1559}.icon-slot.locked{opacity:.48}.slot-badge{position:absolute;bottom:-3px;right:-3px;background:#0f172a;border:1px solid rgba(250,204,21,.6);color:var(--accent-gold);font-size:.62rem;font-weight:800;padding:1px 4px;border-radius:6px;line-height:1}.slot-badge.free{color:#4ade80;border-color:#4ade8099}.dock-popups-stack{position:absolute;bottom:calc(100% + 8px);left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none;z-index:60}.hold-tooltip{background:#0f172af5;border:1px solid var(--accent-gold);border-radius:12px;padding:7px 14px;font-size:.8rem;color:var(--text-main);white-space:nowrap;pointer-events:none;box-shadow:0 8px 24px #000000a6}.dock-popup-bar{display:flex;align-items:center;gap:8px;background:#0f172af5;border:1px solid rgba(244,63,94,.65);border-radius:12px;padding:6px 10px 6px 12px;font-size:.78rem;color:var(--text-main);box-shadow:0 8px 24px #0009;white-space:nowrap;pointer-events:auto}.dock-popup-bar.inspector{border-color:var(--accent-gold)}.popup-cancel-btn{background:#ffffff14;border:1px solid rgba(148,163,184,.3);color:var(--text-muted);border-radius:8px;padding:3px 8px;font-size:.74rem;font-weight:700;cursor:pointer;transition:all .12s ease}.popup-cancel-btn:hover{background:#f43f5e40;color:#fff;border-color:var(--accent-red)}.action-btn{background:linear-gradient(135deg,#ff9b45,#e65c32);border:1px solid rgba(255,218,170,.55);color:#fff;font-weight:700;padding:8px 14px;border-radius:999px;cursor:pointer;font-size:.82rem;white-space:nowrap;transition:transform .12s ease,filter .12s ease}.action-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.action-btn.success{background:linear-gradient(135deg,#55b978,#25895a)}.action-btn.warning{background:linear-gradient(135deg,#e6bb3e,#d89b28)}.action-btn.danger{background:linear-gradient(135deg,#e11d48,#be123c)}.selected-inspector{background:#0f172aeb;border:1px solid var(--accent-gold);border-radius:999px;padding:5px 12px;display:flex;align-items:center;gap:6px;font-size:.78rem;box-shadow:0 6px 20px #00000080}@media (max-width: 768px){#ui-root{padding:max(6px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.battle-screen,.top-hud{gap:6px}.brand-card{padding:4px 8px;gap:6px}.brand-title,.phase-badge{display:none}.hud-stats{gap:5px}.stat-pill{padding:3px 7px;font-size:.72rem;gap:4px}.hp-bar-wrap{width:56px;height:8px}.hud-btn{padding:4px 8px;font-size:.72rem}.battle-menu-label{display:none}.bottom-dock{border-radius:18px;padding:5px 8px;max-width:calc(100vw - 16px)}.counter-intel-strip{display:none!important}.builder-tools{margin:2px 0;padding:3px 6px;gap:4px;font-size:.72rem}.dock-row{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;max-width:100%;scrollbar-width:none;-ms-overflow-style:none;gap:5px}.dock-row::-webkit-scrollbar{display:none}.aim-dock-row{justify-content:center;overflow-x:hidden}.icon-slot{width:36px;height:36px;font-size:1.05rem;flex-shrink:0}.phase-progress{gap:1px}.phase-step{padding:4px 6px;font-size:.66rem}}.aim-controls{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.slider-box{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600}.slider-box input[type=range]{width:130px;accent-color:var(--accent-gold);cursor:pointer}.info-strip{font-size:.8rem;color:var(--text-muted);display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(148,163,184,.15);padding-top:6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:50;pointer-events:auto;padding:16px}.modal-card{background:linear-gradient(150deg,#30424b,#172832 72%);border:1px solid var(--border-glow);border-radius:9px 19px;max-width:680px;width:100%;max-height:86vh;overflow-y:auto;padding:22px 26px;box-shadow:0 20px 50px #000000b3}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.modal-header h2{margin:0;font-size:1.35rem;color:var(--accent-gold)}.leaderboard-table{width:100%;border-collapse:collapse;font-size:.88rem;margin-top:10px}.leaderboard-table th,.leaderboard-table td{padding:9px 10px;text-align:left;border-bottom:1px solid rgba(148,163,184,.15)}.leaderboard-table th{color:var(--text-muted);font-size:.76rem;text-transform:uppercase}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:12px}.shop-item{background:#1e293bb3;border:1px solid rgba(148,163,184,.22);border-radius:12px;padding:12px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.notification-stack-container{position:fixed;top:66px;right:16px;display:flex;flex-direction:column;align-items:flex-end;gap:6px;z-index:80;pointer-events:none;max-width:380px}.toast-item{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#0f172af0;border:1px solid rgba(148,163,184,.28);border-left:4px solid var(--accent-blue);border-radius:10px;padding:6px 10px 6px 12px;font-size:.78rem;font-weight:600;color:var(--text-main);box-shadow:0 8px 22px #0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:toastSlideIn .16s ease-out}.toast-warning{border-left-color:var(--accent-gold)}.toast-danger{border-left-color:var(--accent-red)}.toast-success{border-left-color:var(--accent-green)}.toast-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}.toast-action-btn{background:#38bdf833;border:1px solid var(--accent-blue);color:var(--text-main);border-radius:6px;padding:2px 7px;font-size:.72rem;font-weight:700;cursor:pointer}.toast-action-btn:hover{background:var(--accent-blue);color:#0f172a}.toast-cancel-btn{background:#ffffff12;border:1px solid rgba(148,163,184,.25);color:var(--text-muted);border-radius:6px;padding:2px 6px;font-size:.7rem;font-weight:700;cursor:pointer}.toast-cancel-btn:hover{background:#f43f5e47;color:#fff;border-color:var(--accent-red)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.floating-damage-label{position:fixed;pointer-events:none;font-weight:800;font-size:1.05rem;text-shadow:0 2px 8px rgba(0,0,0,.9),0 0 4px #000;z-index:100;transform:translate(-50%,-50%);animation:floatUpAndFade .95s ease-out forwards;-webkit-user-select:none;user-select:none}@keyframes floatUpAndFade{0%{opacity:1;transform:translate(-50%,-50%) scale(.9)}30%{opacity:1;transform:translate(-50%,-80%) scale(1.25)}to{opacity:0;transform:translate(-50%,-160%) scale(1)}}.wizard-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 35%,#0f172a40,#020617b8);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:45;pointer-events:auto;padding:20px 16px;overflow-y:auto}.auth-card{background:linear-gradient(150deg,#31454ffa,#111f28fa);border:1px solid var(--border-glow);border-radius:10px 22px;max-width:440px;width:100%;padding:24px 26px;margin:auto;box-shadow:0 24px 60px #000000bf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.wizard-step-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.wizard-list{display:flex;flex-direction:column;gap:8px}.wizard-option-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:#1e293bc7;border:1.5px solid rgba(148,163,184,.25);border-radius:14px;padding:11px 14px;color:var(--text-main);cursor:pointer;transition:all .14s ease}.wizard-option-card:hover{border-color:var(--accent-blue);background:#38bdf824;transform:translateY(-1px)}.wizard-option-card.selected{border-color:var(--accent-gold);background:#facc1529;box-shadow:0 0 16px #facc1540}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-group label{font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase}.form-input{background:#020617d9;border:1px solid rgba(148,163,184,.3);border-radius:10px;padding:10px 12px;color:var(--text-main);font-size:.9rem;outline:none}.form-input:focus{border-color:var(--accent-blue)}.lobby-top-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.lobby-profile-pill{display:flex;align-items:center;gap:12px;background:var(--bg-panel);border:1px solid var(--border-glow);border-radius:16px;padding:8px 14px;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 24px #00000073;transition:transform .14s ease,border-color .14s ease}.lobby-profile-pill:hover{transform:translateY(-1px);border-color:var(--accent-gold)}.lobby-avatar{width:42px;height:42px;border-radius:12px;background:#38bdf829;border:1px solid rgba(56,189,248,.4);display:flex;align-items:center;justify-content:center;font-size:1.65rem}.lobby-center-stage{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;pointer-events:none;flex:1;padding-bottom:10px}.lobby-floating-tag{background:#0f172aad;border:1px solid rgba(148,163,184,.25);border-radius:999px;padding:5px 14px;font-size:.78rem;color:#cbd5e1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.lobby-bottom-bar{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:960px;margin:0 auto}.quick-resume-pill{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#0f172af0;border:1.5px solid var(--accent-gold);border-radius:999px;padding:6px 10px 6px 16px;font-size:.82rem;box-shadow:0 8px 24px #0000008c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lobby-bottom-row{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;flex-wrap:wrap}.lobby-nav-dock{display:flex;align-items:center;gap:8px;background:var(--bg-panel);border:1px solid rgba(148,163,184,.25);border-radius:18px;padding:6px 10px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 28px #00000080}.lobby-nav-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:60px;padding:7px 10px;border-radius:12px;background:#1e293bd9;border:1px solid rgba(148,163,184,.2);color:var(--text-main);cursor:pointer;transition:all .14s ease}.lobby-nav-btn:hover{background:#38bdf833;border-color:var(--accent-blue);transform:translateY(-2px)}.lobby-nav-btn.daily-ready{border-color:#4ade80;background:#16a34a40;animation:pulseGlow 1.1s infinite alternate}.nav-icon{font-size:1.25rem;line-height:1}.nav-label{font-size:.68rem;font-weight:700;color:#cbd5e1}.lobby-battle-cluster{display:flex;align-items:center;gap:10px;margin-left:auto}.lobby-matches-btn{display:flex;align-items:center;gap:8px;background:var(--bg-panel);border:1.5px solid rgba(56,189,248,.45);color:var(--text-main);padding:13px 18px;border-radius:16px;font-size:.92rem;font-weight:800;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 24px #00000073;transition:all .15s ease}.lobby-matches-btn:hover{border-color:var(--accent-blue);background:#38bdf833;transform:translateY(-2px)}.match-count-badge{background:#94a3b838;color:#cbd5e1;font-size:.75rem;padding:2px 8px;border-radius:999px}.match-count-badge.urgent{background:#f59e0b40;border:1px solid var(--accent-gold);color:var(--accent-gold)}.battle-cta-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#ff9a48,#ee6937 72%,#d94c35);border:2px solid #ffd18a;color:#fff;font-size:1.15rem;font-weight:900;letter-spacing:.04em;padding:13px 28px;border-radius:8px 17px;cursor:pointer;box-shadow:0 10px 28px #ea580c8c;transition:transform .14s ease,filter .14s ease,box-shadow .14s ease}.battle-cta-btn:hover{transform:translateY(-2px) scale(1.02);filter:brightness(1.1);box-shadow:0 14px 34px #ea580cbf}.match-card{background:#2d3f49e0;border:1px solid rgba(148,163,184,.25);border-left:4px solid var(--accent-green);border-radius:12px;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:transform .12s ease,border-color .12s ease}.match-card:hover{transform:translateY(-1px);border-color:var(--accent-blue)}.match-card.waiting{border-left-color:#64748b;opacity:.85}.mode-btn-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width: 560px){.mode-btn-grid{grid-template-columns:1fr}.lobby-bottom-row{justify-content:center}.lobby-battle-cluster{width:100%;justify-content:stretch}.battle-cta-btn{flex:1;justify-content:center}}.mode-card-btn{background:linear-gradient(145deg,#3b4f59f2,#1d2c35f5);border:1.5px solid rgba(116,196,204,.32);border-radius:8px 15px;padding:14px;color:var(--text-main);text-align:left;cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;gap:4px}.mode-card-btn:hover{background:#4bb3be33;border-color:var(--accent-gold);transform:translateY(-2px)}.radar-circle{width:96px;height:96px;border-radius:50%;border:2px solid var(--accent-blue);display:flex;align-items:center;justify-content:center;font-size:2.2rem;margin:16px auto;box-shadow:0 0 30px #38bdf873;animation:radarPulse 1.2s infinite ease-in-out}@keyframes radarPulse{0%{transform:scale(.95);box-shadow:0 0 #38bdf8b3}70%{transform:scale(1.05);box-shadow:0 0 0 22px #38bdf800}to{transform:scale(.95);box-shadow:0 0 #38bdf800}}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(148,163,184,.15);font-size:.88rem}.counter-intel-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 8px 5px;border-bottom:1px solid rgba(148,163,184,.18);margin-bottom:2px;font-size:.75rem;flex-wrap:wrap}.intel-left{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.intel-stat{color:var(--accent-gold);font-weight:700}.intel-sep{color:#94a3b873}.intel-label{color:var(--text-muted);font-weight:600}.intel-muted{color:#64748b}.counter-chip{display:inline-flex;align-items:center;gap:2px;padding:1px 6px;border-radius:6px;font-size:.7rem;font-weight:800}.counter-chip.good{background:#16a34a40;border:1px solid rgba(74,222,128,.5);color:#4ade80}.counter-chip.bad{background:#e11d4838;border:1px solid rgba(244,63,94,.45);color:#fda4af}.counter-chip.neutral{background:#94a3b826;border:1px solid rgba(148,163,184,.3);color:#cbd5e1}.counter-guide-pill{background:#38bdf829;border:1px solid rgba(56,189,248,.45);color:var(--accent-blue);border-radius:999px;padding:2px 9px;font-size:.71rem;font-weight:700;cursor:pointer;transition:all .14s ease}.counter-guide-pill:hover{background:var(--accent-blue);color:#0f172a}.aim-dock-row{gap:8px;flex-wrap:nowrap;justify-content:center;overflow-x:hidden;max-width:100%}.aim-dock-row>.selector-group{flex:0 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.aim-dock-row>.selector-group::-webkit-scrollbar{display:none}.aim-readout-pill{display:flex;align-items:center;gap:10px;background:#0f172a8c;border:1px solid rgba(148,163,184,.25);border-radius:10px;padding:5px 11px;font-size:.8rem;color:var(--text-main);-webkit-user-select:none;user-select:none;white-space:nowrap;flex-shrink:0}.aim-weapon-label{font-weight:700;color:#f8fafc}.aim-readout-values{display:inline-flex;align-items:center;gap:10px;color:var(--text-muted);font-size:.78rem}.aim-stat strong{color:var(--accent-gold);font-variant-numeric:tabular-nums}.aim-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.fire-cta-btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:132px;min-width:132px;height:38px;padding:0 12px;font-size:.88rem;letter-spacing:.03em;white-space:nowrap;flex-shrink:0}.battle-screen .top-hud{transition:opacity .15s ease,visibility .15s ease}.battle-screen[data-phase=FLIGHT] .top-hud,.battle-screen[data-phase=REPLAY] .top-hud{opacity:0;visibility:hidden;pointer-events:none}.battle-screen[data-phase=FLIGHT] .bottom-dock{background:transparent!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;pointer-events:none}.battle-screen[data-phase=FLIGHT] .bottom-dock>:not(.aim-dock-row),.battle-screen[data-phase=FLIGHT] .aim-dock-row>:not(.aim-actions),.battle-screen[data-phase=FLIGHT] .aim-actions>:not(.fire-cta-btn){opacity:0;visibility:hidden;pointer-events:none}.battle-screen[data-phase=FLIGHT] .fire-cta-btn{opacity:1;visibility:visible;pointer-events:auto}@media (max-width: 560px){#ui-root{padding:max(4px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left))}.top-hud{align-items:center;gap:4px}.brand-card{gap:5px;padding:4px 6px;flex-wrap:nowrap}.phase-progress{max-width:100%}.phase-step{gap:3px;padding:3px 5px;font-size:.6rem}.phase-step-index{width:13px;height:13px;font-size:.56rem}.stat-pill{padding:2px 6px;font-size:.68rem}.wind-hud-widget{padding:2px 6px 2px 4px;gap:5px}.wind-flag-box,.wind-flag-svg{width:28px;height:20px}.wind-gauge-col{min-width:78px;gap:2px}.wind-readout-top{font-size:.6rem;gap:4px}.wind-dir-tag,.wind-amount{font-size:.58rem}.wind-bar-meter{width:64px;height:5px}.hp-bar-wrap{width:42px}.bottom-dock{max-width:calc(100vw - 12px);padding:4px 6px;border-radius:14px}.dock-row{gap:4px}.aim-dock-row{flex-wrap:nowrap;justify-content:center;overflow-x:hidden;gap:4px}.aim-weapon-label{display:none}.aim-readout-pill{padding:3px 6px;gap:4px;font-size:.7rem;flex-shrink:0}.aim-readout-sep{display:none}.fire-cta-btn{width:108px;min-width:108px;height:34px;padding:0 8px;font-size:.78rem;flex-shrink:0}.icon-slot{width:34px;height:34px;font-size:.98rem}.aim-controls{gap:8px}.slider-box{gap:5px;font-size:.75rem}.slider-box input[type=range]{width:min(26vw,110px)}.battle-menu-panel{right:0}}@media (max-height: 520px){#ui-root{padding:max(4px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.battle-screen{gap:4px}.brand-title,.phase-badge,.counter-intel-strip,.battle-menu-label{display:none!important}.brand-card{padding:3px 7px;gap:5px}.phase-step{padding:3px 5px;font-size:.62rem}.stat-pill{padding:2px 6px;font-size:.7rem}.wind-hud-widget{padding:2px 6px 2px 4px;gap:5px}.wind-flag-box,.wind-flag-svg{width:28px;height:20px}.wind-gauge-col{min-width:78px;gap:2px}.wind-readout-top{font-size:.6rem;gap:4px}.wind-dir-tag,.wind-amount{font-size:.58rem}.wind-bar-meter{width:64px;height:5px}.hp-bar-wrap{width:48px;height:7px}.bottom-dock{padding:4px 8px;border-radius:14px;max-width:calc(100vw - 20px)}.builder-tools{margin:1px 0;padding:2px 5px;font-size:.68rem}.dock-row{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none;gap:4px}.dock-row::-webkit-scrollbar{display:none}.aim-dock-row{overflow-x:hidden;justify-content:center}.icon-slot{width:32px;height:32px;font-size:.95rem;flex-shrink:0}.fire-cta-btn{width:108px;min-width:108px;height:32px;padding:0 8px;font-size:.78rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.icon-slot.recommended-counter{border-color:#4ade80;box-shadow:0 0 10px #4ade8066}.slot-top-tag{position:absolute;top:-6px;left:50%;transform:translate(-50%);background:#064e3b;border:1px solid #4ade80;color:#4ade80;font-size:.54rem;font-weight:800;padding:0 4px;border-radius:4px;line-height:1.15;white-space:nowrap}.build-dock-header{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding-bottom:4px;border-bottom:1px solid rgba(148,163,184,.16)}.bottom-dock.is-minimized .build-dock-header{padding-bottom:0;border-bottom:none}.build-active-summary{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.build-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.build-lock-btn{padding:6px 12px;font-size:.8rem;white-space:nowrap}.build-dock-body{display:flex;flex-direction:column;gap:6px;width:100%}.bottom-dock.is-minimized .build-dock-body{display:none}.build-extras-drawer{display:none;flex-direction:column;gap:6px;width:100%;padding:6px 8px;background:#0f172a94;border:1px solid rgba(56,189,248,.22);border-radius:12px}.build-extras-drawer.is-open{display:flex}.build-extras-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.build-extras-top .builder-tools{margin:0}.build-main-row{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:thin}@media (max-width: 640px){.build-eff-chip,.build-active-summary .intel-stat{display:none}.build-dock-header{gap:6px}.build-header-actions{gap:4px}.build-lock-btn{padding:5px 9px;font-size:.74rem}}.builder-library-mount{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.builder-library-backdrop{pointer-events:auto}.builder-tools{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;margin:.55rem 0}.builder-tool,.builder-blueprint-actions button,.builder-save,.builder-close{font:inherit;color:#e8f2f5;border:1px solid #52717d;background:linear-gradient(180deg,#263e49,#172a34);border-radius:8px;padding:.48rem .7rem;cursor:pointer;box-shadow:inset 0 1px #ffffff12;transition:background .15s,border-color .15s,transform .15s}.builder-tool:hover,.builder-blueprint-actions button:hover,.builder-save:hover,.builder-close:hover{background:#345461;border-color:#79b8c6}.builder-tool:active,.builder-blueprint-actions button:active,.builder-save:active{transform:translateY(1px)}.builder-tool:focus-visible,.builder-blueprint-actions button:focus-visible,.builder-save:focus-visible,.builder-close:focus-visible,.builder-save-form input:focus-visible{outline:2px solid #f2c75c;outline-offset:2px}.builder-tool:disabled{opacity:.45;cursor:not-allowed}.builder-library-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1rem;background:#07131bd9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.builder-library{width:min(620px,100%);max-height:min(84vh,760px);overflow:auto;padding:1.1rem;border:1px solid #527986;border-radius:16px;background:linear-gradient(145deg,#213a46,#142832 70%);color:#edf5f5;box-shadow:0 24px 80px #0009}.builder-library-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.9rem}.builder-library-head h2{margin:.1rem 0 0;font-size:1.35rem}.builder-kicker{margin:0;color:#8acbd7;font-size:.68rem;font-weight:800;letter-spacing:.16em}.builder-close{font-size:1.5rem;line-height:1;padding:.2rem .55rem}.builder-save-form{padding:.8rem;border:1px solid #45616c;border-radius:11px;background:#091a225c}.builder-save-form label{display:block;margin-bottom:.4rem;font-weight:700}.builder-save-form>div{display:flex;gap:.5rem}.builder-save-form input{min-width:0;flex:1;padding:.58rem .7rem;border:1px solid #547581;border-radius:8px;background:#101f28;color:#eef8fa;font:inherit}.builder-save{background:#a85721;border-color:#ef9d4f;font-weight:750}.builder-save:hover{background:#c66d2d}.builder-blueprint-list{display:grid;gap:.55rem;margin-top:.8rem}.builder-blueprint{display:grid;grid-template-columns:140px 1fr auto;gap:.7rem;align-items:center;padding:.5rem;border:1px solid #395661;border-radius:10px;background:#10232c}.builder-blueprint-thumb{display:block;width:100%;height:auto;max-height:76px;border-radius:6px;background:linear-gradient(#203b47,#142b35)}.builder-blueprint-info{display:grid;gap:.25rem;min-width:0}.builder-blueprint-info strong{overflow:hidden;text-overflow:ellipsis}.builder-blueprint-info span,.builder-library-note{color:#a9c0c7;font-size:.78rem}.builder-blueprint-actions{display:flex;gap:.35rem}.builder-blueprint-actions button{padding:.4rem .58rem}.builder-blueprint-actions button:last-child{color:#ffc5aa;border-color:#80513f}.builder-empty{padding:1rem;color:#b6cbd0;text-align:center}.builder-library-note{margin:.75rem 0 0;text-align:center}@media (max-width:520px){.builder-tools{gap:.35rem}.builder-tool{flex:1;padding:.5rem .35rem;font-size:.82rem}.builder-library{padding:.8rem;border-radius:13px}.builder-blueprint{grid-template-columns:88px 1fr;gap:.5rem}.builder-blueprint-thumb{max-height:60px}.builder-blueprint-actions{grid-column:2;justify-content:flex-start}.builder-blueprint-actions button{flex:1}.builder-save-form>div{flex-direction:column}.builder-save{width:100%}}@media (prefers-reduced-motion:reduce){.builder-tool,.builder-blueprint-actions button,.builder-save,.builder-close{transition:none}}.coach-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:950;pointer-events:none;overflow:hidden;--sx:0px;--sy:0px;--ex:0px;--ey:0px;--cx:0px;--cy:0px;--cw:44px;--ch:44px;--rx:80px;--ry:80px;--len:0px;--ang:0rad;--coach-yellow:#f4cf52;--coach-ink:#172731;--coach-ivory:#f3ead2;--coach-steel:#5d7a8c;opacity:0;transition:opacity .2s .15s}.coach-overlay.is-live{opacity:1;transition:opacity .2s 0s}.coach-overlay *{pointer-events:none;box-sizing:border-box}.coach-overlay>*{position:absolute;left:0;top:0}.coach-dim{top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:none;background:radial-gradient(ellipse var(--rx) var(--ry) at var(--cx) var(--cy),transparent 0,transparent 60%,rgba(7,19,27,.7) 100%)}.coach-spotlight .coach-dim{display:block}.coach-ring{width:var(--cw);height:var(--ch);border:3px solid var(--coach-yellow);border-radius:14px;box-shadow:0 0 0 2px var(--coach-ink),0 0 14px 2px #f4cf528c,inset 0 0 0 2px var(--coach-ink);transform:translate(var(--cx),var(--cy)) translate(-50%,-50%);animation:coach-pulse 1.4s ease-in-out infinite}.coach-world .coach-ring{border-radius:50%}.coach-ripple{width:44px;height:44px;border-radius:50%;border:4px solid var(--coach-yellow);box-shadow:0 0 0 2px var(--coach-ink);opacity:0;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) scale(.3)}.coach-g-tap .coach-ripple{animation:coach-ripple-tap 1.6s ease-out infinite}.coach-g-drag .coach-ripple{animation:coach-ripple-drag 3s ease-out infinite}.coach-g-hold .coach-ripple{display:none}.coach-prog{display:none;width:60px;height:60px;opacity:0;overflow:visible;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) rotate(-90deg)}.coach-g-hold .coach-prog{display:block;animation:coach-prog 2.4s ease-in-out infinite}.coach-prog circle{fill:none;stroke-linecap:round}.coach-prog .t{stroke:var(--coach-ink);stroke-width:9;opacity:.55}.coach-prog .u{stroke:#f3ead28c;stroke-width:5}.coach-prog .f{stroke:var(--coach-yellow);stroke-width:5;stroke-dasharray:100;stroke-dashoffset:100;animation:coach-prog-fill 2.4s linear infinite}.coach-trail{display:none;width:var(--len);height:8px;background:radial-gradient(circle,var(--coach-yellow) 2.6px,var(--coach-ink) 3px,transparent 3.6px) 0 50%/15px 8px repeat-x;transform:translate(var(--sx),var(--sy)) rotate(var(--ang)) translateY(-50%);transform-origin:0 50%;opacity:0}.coach-endmark{display:none;width:30px;height:30px;border-radius:50%;border:4px dotted var(--coach-yellow);box-shadow:0 0 0 2px var(--coach-ink);opacity:0;transform:translate(var(--ex),var(--ey)) translate(-50%,-50%)}.coach-g-drag .coach-trail{display:block;animation:coach-trail 3s ease-in-out infinite}.coach-g-drag .coach-endmark{display:block;animation:coach-end 3s ease-out infinite}.coach-finger{will-change:transform;transform:translate(var(--sx),var(--sy))}.coach-g-tap .coach-finger{animation:coach-finger-tap 1.6s ease-in-out infinite}.coach-g-hold .coach-finger{animation:coach-finger-hold 2.4s ease-in-out infinite}.coach-g-drag .coach-finger{animation:coach-finger-drag 3s ease-in-out infinite}.coach-hand{display:block;position:absolute;left:-24px;top:-6px;width:72px;height:88px;overflow:visible;transform-origin:24px 6px;filter:drop-shadow(0 4px 3px rgba(7,19,27,.45))}.coach-g-tap .coach-hand{animation:coach-hand-tap 1.6s ease-in-out infinite}.coach-g-hold .coach-hand{animation:coach-hand-hold 2.4s ease-in-out infinite}.coach-g-drag .coach-hand{animation:coach-hand-drag 3s ease-in-out infinite}.coach-badge{position:absolute;left:24px;top:-26px;min-width:30px;height:30px;padding:0 4px;display:grid;place-items:center;border-radius:50%;background:var(--coach-ivory);border:3px solid var(--coach-ink);box-shadow:0 2px 0 var(--coach-ink);font-size:17px;line-height:1;color:var(--coach-ink)}.coach-badge svg{width:18px;height:18px;display:block}.coach-badge:empty{display:none}@keyframes coach-pulse{0%,to{transform:translate(var(--cx),var(--cy)) translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(var(--cx),var(--cy)) translate(-50%,-50%) scale(1.1);opacity:.65}}@keyframes coach-finger-tap{0%{opacity:0;transform:translate(calc(var(--sx) + 14px),calc(var(--sy) + 30px))}20%{opacity:1;transform:translate(calc(var(--sx) + 8px),calc(var(--sy) + 16px))}42%,52%{opacity:1;transform:translate(var(--sx),var(--sy))}75%{opacity:1;transform:translate(calc(var(--sx) + 8px),calc(var(--sy) + 16px))}to{opacity:0;transform:translate(calc(var(--sx) + 14px),calc(var(--sy) + 30px))}}@keyframes coach-hand-tap{0%,38%,58%,to{transform:scale(1)}44%,52%{transform:scale(.9)}}@keyframes coach-ripple-tap{0%,40%{opacity:0;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) scale(.3)}42%{opacity:.95;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) scale(.3)}85%,to{opacity:0;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) scale(1.7)}}@keyframes coach-finger-hold{0%{opacity:0;transform:translate(calc(var(--sx) + 14px),calc(var(--sy) + 30px))}14%{opacity:1;transform:translate(calc(var(--sx) + 8px),calc(var(--sy) + 16px))}28%,74%{opacity:1;transform:translate(var(--sx),var(--sy))}90%{opacity:1;transform:translate(calc(var(--sx) + 8px),calc(var(--sy) + 16px))}to{opacity:0;transform:translate(calc(var(--sx) + 14px),calc(var(--sy) + 30px))}}@keyframes coach-hand-hold{0%,24%,80%,to{transform:scale(1)}30%,74%{transform:scale(.9)}}@keyframes coach-prog{0%,26%{opacity:0;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) rotate(-90deg) scale(1)}30%,74%{opacity:1;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) rotate(-90deg) scale(1)}80%{opacity:1;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) rotate(-90deg) scale(1.18)}92%,to{opacity:0;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) rotate(-90deg) scale(1.3)}}@keyframes coach-prog-fill{0%,28%{stroke-dashoffset:100}74%,to{stroke-dashoffset:0}}@keyframes coach-finger-drag{0%{opacity:0;transform:translate(calc(var(--sx) + 14px),calc(var(--sy) + 30px))}12%{opacity:1;transform:translate(calc(var(--sx) + 8px),calc(var(--sy) + 16px))}24%,28%{opacity:1;transform:translate(var(--sx),var(--sy))}68%,74%{opacity:1;transform:translate(var(--ex),var(--ey))}86%{opacity:1;transform:translate(calc(var(--ex) + 8px),calc(var(--ey) + 16px))}96%{opacity:0;transform:translate(calc(var(--ex) + 14px),calc(var(--ey) + 30px))}to{opacity:0;transform:translate(calc(var(--sx) + 14px),calc(var(--sy) + 30px))}}@keyframes coach-hand-drag{0%,20%,78%,to{transform:scale(1)}26%,74%{transform:scale(.9)}}@keyframes coach-ripple-drag{0%,22%{opacity:0;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) scale(.3)}24%{opacity:.95;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) scale(.3)}45%,to{opacity:0;transform:translate(var(--sx),var(--sy)) translate(-50%,-50%) scale(1.6)}}@keyframes coach-trail{0%,28%{opacity:1;clip-path:inset(0 100% 0 0)}68%,78%{opacity:1;clip-path:inset(0 0 0 0)}92%,to{opacity:0;clip-path:inset(0 0 0 0)}}@keyframes coach-end{0%,66%{opacity:0;transform:translate(var(--ex),var(--ey)) translate(-50%,-50%) scale(.6)}72%{opacity:1;transform:translate(var(--ex),var(--ey)) translate(-50%,-50%) scale(1)}90%,to{opacity:0;transform:translate(var(--ex),var(--ey)) translate(-50%,-50%) scale(1.5)}}@media (prefers-reduced-motion: reduce){.coach-overlay *{animation:none!important;transition:none!important}.coach-finger{opacity:1;transform:translate(var(--sx),var(--sy))}.coach-ripple,.coach-prog{display:none!important}.coach-g-drag .coach-trail{opacity:.9;clip-path:none}.coach-g-drag .coach-endmark{opacity:1}}.training-launcher,.training-panel{color:#e8f1ff;font-family:inherit;background:linear-gradient(145deg,#0e192bf5,#132337f5);border:1px solid rgba(108,178,230,.26);border-radius:16px;box-shadow:0 16px 48px #00000057}.training-launcher{width:min(760px,calc(100vw - 32px));max-height:min(88vh,760px);overflow:auto;padding:clamp(18px,3vw,28px)}.training-heading{margin-bottom:18px}.training-kicker{color:#5dd6ef;font-size:.68rem;font-weight:850;letter-spacing:.16em}.training-heading h2,.training-panel h2{margin:5px 0 4px;color:#f5f9ff;font-size:clamp(1.2rem,3vw,1.65rem)}.training-heading p,.training-card p{margin:0;color:#a9bdd4;font-size:.88rem;line-height:1.45}.training-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.training-card{display:flex;min-height:104px;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid rgba(142,177,210,.18);border-radius:12px;background:#ffffff09}.training-card:last-child{grid-column:1 / -1}.training-card h3{margin:0 0 5px;font-size:.98rem;color:#f1f6ff}.training-start,.training-retry{flex:0 0 auto;border:0;border-radius:8px;padding:9px 15px;background:#39bce1;color:#092033;font:inherit;font-weight:800;cursor:pointer}.training-start:hover,.training-retry:hover{background:#74ddf5}.training-panel{width:min(400px,calc(100vw - 28px));max-height:min(82vh,620px);overflow:auto;padding:17px 19px 19px}.training-panel-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.training-panel h2{font-size:1.12rem}.training-exit{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:transparent;color:#dbeaff;font-size:1.4rem;cursor:pointer}.training-instruction{margin:13px 0;color:#c5d4e5;font-size:.9rem;line-height:1.5}.training-slot{margin:-5px 0 12px;color:#7be5fa;font-size:.8rem;font-weight:750}.training-progress{border-left:3px solid #55d3ee;padding:9px 11px;border-radius:0 8px 8px 0;background:#4fbddc1a;color:#eaf9ff;font-size:.84rem;line-height:1.4}.training-best{margin-top:10px;color:#a9bdd4;font-size:.78rem}.training-result{margin-top:12px;padding:11px;border-radius:9px;font-weight:850}.training-result small{display:block;margin-top:4px;font-weight:500;line-height:1.4}.training-result.is-win{background:#2dc38124;color:#8bf1bd}.training-result.is-fail{background:#ef705b24;color:#ffad9e}.training-retry{margin-top:11px}@media (max-width: 560px){.training-cards{grid-template-columns:1fr}.training-card:last-child{grid-column:auto}.training-card{min-height:88px;padding:12px}.training-panel{padding:15px}}.training-panel.is-tutorial{position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 14px;max-height:none;overflow:visible;padding:8px 48px 8px 14px}.training-panel.is-tutorial .training-title{margin:0;color:#9fb7cf;font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.training-steps{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none}.tstep{position:relative;display:grid;width:38px;height:38px;place-items:center;border:2px solid rgba(142,177,210,.35);border-radius:50%;background:#ffffff0d;opacity:.55;transition:transform .25s ease,opacity .25s ease,border-color .25s ease,background .25s ease}.tstep+.tstep{margin-left:14px}.tstep+.tstep:before{content:"";position:absolute;left:-14px;top:50%;width:14px;height:2px;background:#8eb1d24d}.tstep-art{display:grid;width:24px;height:24px;place-items:center}.tstep-art svg{display:block;width:100%;height:100%}.tstep-bolt{color:#ffcf5a;font-size:1.15rem;line-height:1}.tstep.is-current{opacity:1;border-color:#55d3ee;background:#55d3ee2e;transform:scale(1.12);box-shadow:0 0 #55d3ee80;animation:tstep-pulse 1.6s ease-out infinite}.tstep.is-done{opacity:1;border-color:#4fd89b;background:#4fd89b29}.tstep.is-done:after{content:"✔";position:absolute;right:-5px;bottom:-5px;display:grid;width:16px;height:16px;place-items:center;border-radius:50%;background:#2fc37f;color:#06251a;font-size:.6rem;font-weight:900}.training-result-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;font-size:1.5rem;font-weight:900;line-height:1}.training-result-icon.is-win{background:#2dc38133;color:#8bf1bd}.training-result-icon.is-fail{background:#ef705b33;color:#ffad9e}.training-panel.is-tutorial .training-retry{margin:0}.training-panel.is-tutorial .training-exit{position:absolute;right:8px;top:50%;transform:translateY(-50%)}.training-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@keyframes tstep-pulse{70%,to{box-shadow:0 0 0 9px #55d3ee00}}.ability-action.is-icon-only{min-width:96px;padding:12px 28px;font-size:1.6rem;line-height:1}.dock-row .tutorial-wood-chip{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:2px solid #55d3ee;border-radius:12px;background:#55d3ee24}@media (prefers-reduced-motion: reduce){.tstep,.tstep.is-current{transition:none;animation:none}}.training-dialog{position:relative}.training-dialog-close{position:absolute;right:16px;top:16px;z-index:1}.training-dialog .training-heading{padding-right:64px}.bottom-dock .training-panel{width:100%;max-height:190px;padding:10px 12px;box-shadow:none;border-radius:8px;background:#0f1b26f0}.bottom-dock .training-panel h2{font-size:1rem}.bottom-dock .training-instruction{margin:6px 0;font-size:.8rem}.bottom-dock .training-progress{padding:5px 8px;font-size:.78rem}.bottom-dock .training-kicker{display:none}.shot-summary,.stability-result{margin:0;padding:7px 10px;border-left:3px solid var(--accent-gold);background:#0f1b26e6;color:var(--text-main);font-size:.8rem}.stability-result{display:flex;align-items:center;justify-content:space-between;gap:8px}.stability-result .hud-btn{flex-shrink:0}.attack-overview-stats{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0;color:var(--accent-gold)}@media (max-width: 560px){.bottom-dock .training-panel{max-height:155px}.bottom-dock:has(.training-panel) .counter-intel-strip{display:none}.bottom-dock:has(.training-panel) .dock-divider{display:none}.bottom-dock:has(.training-panel) .training-instruction{font-size:.75rem;line-height:1.35}.stability-result{flex-wrap:wrap}}.bottom-dock .training-panel.is-tutorial{padding:8px 48px 8px 14px;max-height:none}@media (max-width: 560px){.bottom-dock .training-panel.is-tutorial{max-height:none}}
