:root{--bg:#070b10;--panel:#142030;--panel-hi:#1d2d42;--panel-lo:#0d1620;--line:#34485f;--line-hi:#4f6884;--text:#eef3f8;--muted:#93a5b9;--accent:#f07a3a;--accent-hi:#ffa060;--gold:#ffc65a;--cyan:#5fe1ff;--ok:#5fd38e;--bad:#ff6b6b;--warn:#f2b134;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", Ubuntu, sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", "JetBrains Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);--hud-top:max(8px, var(--sat))}@media (display-mode:standalone){:root{--hud-top:max(8px, calc(var(--sat) + 30px))}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font:14px/1.4 var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;margin:0}input,select,textarea{font-size:16px!important}button{font:inherit;color:inherit}h2,h3{letter-spacing:.01em;margin:0}p{margin:0}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:12px}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.app-frame{background:radial-gradient(at 50% 20%,#17263a 0%,#070b10 70%);place-items:center;display:grid;position:fixed;inset:0}.phone{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;background:#a9c8e6;width:min(100vw,56.25dvh);max-width:540px;height:100%;position:relative;overflow:hidden}@media (width<=599px){.phone{width:100%;max-width:none}}@media (display-mode:standalone){html,body,#root{height:100lvh;overflow:hidden}.app-frame{height:100lvh;position:absolute;inset:0 0 auto}}.sheet-body,.store-body,.ach-scroll,.chat-list,.player-list,.blist{scrollbar-width:thin;scrollbar-color:#ffffff38 transparent;touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.chat-form input,.login-card input,.num-input,.amount-picker .btn{touch-action:manipulation}@media (width>=600px) and (height>=600px){.phone{border-radius:22px;width:min(100vw - 24px,56.25dvh - 13.5px,540px);height:min(100dvh - 24px,1000px);box-shadow:0 0 0 2px #26364a,0 30px 80px #0009}}.scene{position:absolute;inset:0}.scene.loading{color:var(--muted);letter-spacing:.1em;background:#1a2a3a;place-items:center;display:grid}.scene-canvas{position:absolute;inset:0}.scene-canvas canvas{display:block}.scene-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.blabel{white-space:nowrap;text-shadow:0 1px 1px #000;transform-origin:0 0;background:#080e16ad;border:1px solid #ffffff29;border-radius:9px;grid-template-columns:auto auto;align-items:center;column-gap:3px;padding:1px 6px 1px 1px;font-size:8.5px;font-weight:700;display:grid;position:absolute;top:0;left:0}.blabel .lv{width:13px;height:13px;font-family:var(--mono);background:linear-gradient(#ff9a50,#d4601f);border-radius:50%;place-items:center;font-size:8px;display:grid;box-shadow:inset 0 1px #fff6}.blabel .nm{letter-spacing:.05em;text-transform:uppercase;font-size:8px}.blabel .upg{background:linear-gradient(#5fe08e,#23934f);border:1px solid #c8ffd9;border-radius:50%;width:14px;height:14px;margin:-7px 2px 0 0;display:none;position:absolute;top:50%;right:100%;box-shadow:0 0 6px #5fe08eb3}.blabel .upg:before{content:"";border-bottom:4.5px solid #fff;border-left:3.5px solid #0000;border-right:3.5px solid #0000;position:absolute;top:2.5px;left:3px}.blabel .upg:after{content:"";background:#fff;width:2px;height:4px;position:absolute;top:6.5px;left:5.5px}.blabel .upg{transform:rotate(calc(-1 * var(--rot,0deg)))}.blabel.can-up .upg{animation:1.6s ease-in-out infinite upg-bob;display:block}.blabel .grs{font-family:var(--mono);color:#fff;transform:rotate(calc(-1 * var(--rot,0deg)));background:linear-gradient(#5b8fe0,#2f5fae);border:1px solid #b8d4ff;border-radius:8px;margin:-8px 0 0 3px;padding:1px 5px;font-size:8.5px;display:none;position:absolute;top:50%;left:100%;box-shadow:0 0 6px #5b8fe0b3}.blabel.has-allies .grs{display:block}@keyframes upg-bob{0%,to{transform:rotate(calc(-1 * var(--rot,0deg)))}50%{transform:rotate(calc(-1 * var(--rot,0deg))) translateY(-1.5px)}}@media (prefers-reduced-motion:reduce){.blabel.can-up .upg{animation:none}}.blabel .bar{background:#0009;border-radius:2px;grid-column:1/-1;width:54px;height:3px;margin:2px 0 1px 4px;overflow:hidden}.blabel .bar i{background:linear-gradient(90deg,#ffb03a,#ffd27a);width:0;height:100%;display:block}.blabel .tm{font-family:var(--mono);color:var(--gold);grid-column:1/-1;padding-left:4px;font-size:8.5px}.blabel.sel{border-color:var(--cyan);box-shadow:0 0 10px #5fe1ff80}.blabel .act{font-family:var(--mono);grid-column:1/-1;align-items:center;gap:3px;padding-left:4px;font-size:8.5px;display:flex}.blabel .act:before{content:"";border-radius:2px;flex:none;width:6px;height:6px}.blabel .act.train{color:#ffb3a3}.blabel .act.train:before{background:#e86a6a;transform:rotate(45deg)}.blabel .act.research{color:#9ff0ea}.blabel .act.research:before{background:#5ad1c8;border-radius:50%}.blabel .act.repair{color:#b6d8ff}.blabel .act.repair:before{background:#6fb3ff}.wlabel{text-align:center;white-space:nowrap;background:#080e16c7;border:1px solid;border-radius:6px;padding:3px 9px;font-size:11px;display:grid;position:absolute;top:0;left:0}.wlabel b{font-size:12px}.wlabel span{color:var(--muted);font-size:10.5px}.wlabel.you{border-color:var(--accent)}.wlabel.ally{border-color:#5b8fe0}.wlabel.other{border-color:#9aa3ad}.name-tag{color:#7fb2ff;font-style:normal;font-weight:700}.wlabel.spire{border-color:var(--cyan)}.nlabel{transform-origin:0 0;width:17px;height:17px;font:700 10px var(--mono);background:#080e16cc;border:1.5px solid #aaa;border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.nlabel[data-kind=rations]{border-color:#7bd389}.nlabel[data-kind=alloy]{border-color:#c3cdd8}.nlabel[data-kind=fuel]{border-color:#f2b134}.nlabel[data-kind=silicon]{border-color:#c98a52}.nlabel[data-kind=rogue]{color:#ffb3aa;border-color:#ff5a4a}.world-hint{font:600 11px var(--mono);color:#fff;letter-spacing:.06em;pointer-events:none;background:#080e1699;border-radius:4px;padding:3px 8px;position:absolute;top:132px;left:12px}.hud-top{z-index:10;pointer-events:none;padding:var(--hud-top) 10px 14px;background:linear-gradient(#060b11 0, #060b11 calc(var(--hud-top) - 8px), #060b11eb var(--hud-top), #060b11bf calc(var(--hud-top) + (100% - var(--hud-top)) * .7), #060b1100 100%);position:absolute;top:0;left:0;right:0}.hud-top>*{pointer-events:auto}.hud-row{align-items:center;gap:8px;display:flex}.commander{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;position:relative}.cc-badge{min-width:22px;height:22px;font:800 12px var(--mono);color:#2a1900;background:linear-gradient(#ffcf6b,#e09a1f);border:2px solid #0b1118;border-radius:11px;place-items:center;padding:0 4px;display:grid;position:absolute;bottom:-2px;right:-4px}.cmd-info{flex:1;gap:1px;min-width:0;display:grid}.cmd-name{color:#fff;white-space:nowrap;background:#00000073;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:6px;width:max-content;max-width:100%;padding:1px 9px 1px 4px;font-size:15px;font-weight:800;display:flex;overflow:hidden}.cmd-power{background:#00000073;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:4px;width:max-content;padding:1px 9px 1px 6px;font-weight:700;display:inline-flex}.bolt{color:var(--gold)}.conn{border-radius:50%;flex:none;width:7px;height:7px}.conn.on{background:var(--ok)}.conn.off{background:var(--warn)}.cores{border:1px solid var(--line-hi);background:linear-gradient(#22354b,#142233);border-radius:14px;align-items:center;gap:6px;padding:3px 11px 3px 6px;font-weight:800;display:inline-flex}button.cores{cursor:pointer;color:var(--text);font:inherit;font-weight:800}.cores-plus{color:#06210f;background:linear-gradient(#6fe0a0,#2f9a5c);border-radius:50%;place-items:center;width:18px;height:18px;margin-left:2px;font-size:14px;font-weight:900;line-height:1;display:grid}.core-gem{filter:drop-shadow(0 0 4px #5fe1ff8c);background:url(/icons3d/res-cores.webp) 50%/contain no-repeat;width:20px;height:20px;display:inline-block}.core-gem.small{width:14px;height:14px}.res-bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:7px 0 0;padding:0;list-style:none;display:grid}.res-bar li{background:#00000080;border:1px solid #ffffff1f;border-radius:6px;min-width:0}.res-bar li button{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:5px;width:100%;padding:2px 6px;font-size:12.5px;font-weight:700;display:flex}.res-stack{min-width:0;line-height:1.1;display:grid}.res-rate{color:var(--ok);font-size:9.5px;font-weight:700}.res-bar li.full{border-color:var(--warn)}.res-bar li.full .num{color:var(--warn)}.speed-flag{font:700 10.5px var(--mono);color:var(--warn);margin-top:5px}.hud-left{left:8px;top:calc(var(--hud-top) + 98px);z-index:9;justify-items:start;gap:8px;max-width:62%;display:grid;position:absolute}.builder-row{align-items:center;gap:6px;display:flex}.free-pill{border-radius:14px;padding:5px 12px;font-size:12.5px;animation:1s ease-in-out infinite pulse;box-shadow:0 0 12px #5fd38e8c}.builder{cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:flex}.builder-text{font:800 12px var(--mono);text-shadow:0 1px 1px #000;background:#080e16c7;border:1px solid #ffffff26;border-radius:9px;padding:2px 8px}.builder.idle .builder-text{color:var(--gold);animation:1.6s ease-in-out infinite nudge}@keyframes nudge{50%{transform:translate(3px)}}.quest-card{cursor:pointer;text-align:left;border:1px solid var(--line-hi);background:linear-gradient(90deg,#142030eb,#142030b3);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 8px;display:grid;box-shadow:0 4px 14px #00000059}.quest-star{color:var(--gold);font-size:15px}.quest-title{font-size:12px;font-weight:700;line-height:1.25}.quest-cta{background:linear-gradient(#3b6fb8,#24508f);border-radius:5px;padding:3px 8px;font-size:11px;font-weight:800}.quest-card.ready{border-color:var(--ok)}.quest-card.ready .quest-cta{color:#06210f;background:linear-gradient(#5fd38e,#2f9a5c);animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{filter:brightness(1.3)}}.bubble{z-index:12;transform-origin:50% 100%;text-align:center;border:1px solid var(--line-hi);background:linear-gradient(#22344a,#142131);border-radius:10px;min-width:168px;max-width:250px;padding:9px 10px 10px;position:absolute;top:0;left:0;box-shadow:0 10px 30px #00000080}.bubble:after{content:"";border-right:1px solid var(--line-hi);border-bottom:1px solid var(--line-hi);background:#142131;width:12px;height:12px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.bubble-title{padding:0 16px;font-size:13.5px;font-weight:800}.bubble-sub{color:var(--muted);margin-top:1px;font-size:11.5px}.bubble-note{color:var(--warn);max-width:240px;margin-top:2px;font-size:11px;line-height:1.3}.bubble-actions{flex-wrap:wrap;justify-content:center;gap:5px;margin-top:8px;display:flex}.bubble-actions .btn{border-radius:6px;padding:6px 9px;font-size:12px}.bubble-x{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 5px;font-size:20px;position:absolute;top:0;right:3px}.hud-bottom{z-index:10;position:absolute;bottom:0;left:0;right:0}.chat-strip{cursor:pointer;text-align:left;width:calc(100% - 92px);color:inherit;font:inherit;background:#060b11b8;border:1px solid #ffffff1f;border-radius:7px;gap:3px;margin:0 0 4px 8px;padding:5px 9px;display:grid}.chat-row{align-items:center;gap:8px;min-width:0;transition:opacity 5s linear;display:flex}.chat-row.fading{opacity:0}.chat-tag{font:800 10px var(--mono);letter-spacing:.06em;color:var(--cyan);text-transform:uppercase;flex:none}.chat-line{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;overflow:hidden}.bottom-menu{padding:6px 84px max(6px, var(--sab)) 6px;border-top:1px solid var(--line-hi);background:linear-gradient(#25384f,#111c29);align-items:stretch;gap:2px;display:flex;position:relative;box-shadow:0 -6px 18px #00000059}.menu-btn{cursor:pointer;color:#cfdbe7;background:0 0;border:0;border-radius:8px;flex:1;justify-items:center;gap:2px;padding:4px 0 2px;display:grid;position:relative}.menu-btn:hover{background:#ffffff0f}.menu-btn:active{transform:translateY(1px)}.menu-lbl{letter-spacing:.03em;font-size:10.5px;font-weight:700}.menu-badge{background:var(--bad);color:#fff;min-width:17px;height:17px;font:800 10px var(--mono);border:2px solid #1a2839;border-radius:9px;place-items:center;padding:0 4px;display:grid;position:absolute;top:0;right:16%}.map-toggle{right:8px;bottom:calc(max(6px, var(--sab)) + 2px);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;color:#fff;text-shadow:0 1px 2px #00000080;background:linear-gradient(#ff9a50,#c85a1a);border:2px solid #ffc290;border-radius:16px;align-content:center;justify-items:center;gap:1px;width:72px;height:76px;font-size:12px;font-weight:900;display:grid;position:absolute;box-shadow:0 6px 16px #00000073,inset 0 1px #fff6}.map-toggle:active{transform:translateY(2px)}.btn{border:1px solid var(--line-hi);cursor:pointer;white-space:nowrap;background:linear-gradient(#2a3f57,#1b2a3c);border-radius:7px;padding:8px 14px;font-weight:800;box-shadow:inset 0 1px #ffffff1f}.btn:hover:not(:disabled){filter:brightness(1.12)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{color:#fff;text-shadow:0 1px 1px #0006;background:linear-gradient(#ffa060,#d9621f);border-color:#ffbf8f}.btn.speed{color:#fff;background:linear-gradient(#5aa8ff,#2a66c9);border-color:#9cc8ff}.btn.free{color:#06210f;background:linear-gradient(#6fe0a0,#2f9a5c);border-color:#a5f0c6}.btn.danger{color:#ffe1e1;background:linear-gradient(#a33a3a,#6e1f1f);border-color:#ff8f8f}.btn.wide{width:100%;padding:11px}.btn.dev{color:var(--warn);border-style:dashed}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:26px;line-height:1}.icon-btn:hover{color:var(--text)}.sheet-layer{z-index:30;align-items:end;display:grid;position:absolute;inset:0}.sheet-scrim{cursor:default;background:#00000073;border:0;position:absolute;inset:0}.sheet{border-top:1px solid var(--line-hi);max-height:78%;padding-bottom:var(--sab);background:linear-gradient(#1b2a3d,#0f1823 40%);border-radius:16px 16px 0 0;grid-template-rows:auto auto auto minmax(0,1fr);animation:.22s ease-out up;display:grid;position:relative;overflow:hidden;box-shadow:0 -12px 40px #0000008c}.sheet.tall{height:86%;max-height:86%}.sheet:not(:has(>.sheet-head)){grid-template-rows:auto auto minmax(0,1fr)}.sheet-top{flex-direction:column;gap:12px;display:flex}.sheet-top:not(:empty){border-bottom:1px solid var(--line);padding:12px 16px}.sheet-top>.back-link{order:-1;align-self:flex-start}@keyframes up{0%{opacity:.4;transform:translateY(40px)}}.sheet-grip{visibility:hidden;height:0;margin-top:4px}.sheet-head{justify-content:space-between;align-items:center;padding:6px 16px 0;display:flex}.sheet-head h2{font-size:18px;font-weight:800}.sheet-body{grid-auto-rows:max-content;align-content:start;gap:12px;min-height:0;padding:12px 16px 18px;display:grid;overflow-y:auto}.sheet .panel-body{padding:0}.panel-body{gap:12px;display:grid}.panel-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.panel-head:not(:has(svg)){grid-template-columns:minmax(0,1fr) auto}.panel-title h2{font-size:18px;font-weight:800}.panel-title .sub{color:var(--muted);font-size:12.5px}.note{color:var(--warn);border-left:3px solid var(--warn);background:#f2b13414;border-radius:3px;padding:6px 10px;font-size:12.5px}.fx{border-collapse:collapse;width:100%;font-size:13px}.fx th{text-align:left;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--line);padding:4px 0;font-size:11px;font-weight:700}.fx th:not(:first-child),.fx td.num{text-align:right}.fx td{border-bottom:1px solid var(--line);padding:6px 0}.fx td.up{color:var(--ok)}.upgrade{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:10px;padding:12px;display:grid}.upgrade h3{font-size:15px}.time-row{justify-content:space-between;display:flex}.costs{gap:6px;margin:0;padding:0;list-style:none;display:grid}.costs li{align-items:center;gap:8px;display:flex}.costs.compact{flex-wrap:wrap;gap:4px 12px;display:flex}.costs.compact li{gap:4px;font-size:12.5px}.costs li.short .num{color:var(--bad)}.reqs{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.reqs .met{color:var(--ok)}.reqs .unmet{color:var(--bad)}.req-go{cursor:pointer;text-align:left;width:100%;color:var(--bad);background:#ff6b6b14;border:1px solid #ff6b6b59;border-radius:7px;align-items:center;gap:6px;margin:-2px 0;padding:6px 8px;font-weight:600;display:flex}.req-go:hover{background:#ff6b6b29}.req-go .req-label{flex:1;min-width:0}.req-go .req-cta{color:#fff;background:linear-gradient(#3b6fb8,#24508f);border-radius:5px;flex:none;padding:2px 8px;font-size:11.5px;font-weight:800}.req-go.small{margin:2px 0 0;padding:4px 6px;font-size:12px}.blocker{color:var(--bad);font-size:12.5px}.build-blockers{margin-top:8px}.build-blockers.small{margin-top:6px;font-size:12px}.options{gap:8px;display:grid}.option{border:1px solid var(--line);background:#00000040;border-radius:10px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.option-main{gap:3px;min-width:0;display:grid}.option-name{font-weight:800}.option.locked{opacity:.55}.sp-head{align-items:center;gap:12px;display:flex}.sp-name{font-size:15px;font-weight:800}.sp-time{color:var(--gold)}.progress{border:1px solid var(--line);background:#00000080;border-radius:5px;height:10px;overflow:hidden}.progress i{background:linear-gradient(90deg,#ffb03a,#ffd27a);height:100%;display:block}.item-list,.quest-list,.member-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.item-list li,.member-list li{border:1px solid var(--line);background:#00000040;border-radius:9px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.item-ico{border:1px solid var(--line-hi);background:linear-gradient(#2a3f57,#1b2a3c);border-radius:8px;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.item-ico.speed{background:linear-gradient(#3d6fb8,#1f3f73)}.item-name{min-width:0;font-weight:700;display:grid}.item-count{color:var(--gold);font-weight:800}.sub-h{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.row-end{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.quest-list li{border:1px solid var(--line);background:#00000040;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.quest-list li.done{border-color:var(--ok);background:#5fd38e14}.quest-list li.urgent{border-color:var(--warn);background:#f2b13414}.hub-list .q-title{flex-wrap:nowrap}.hub-head{text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#9aa7b4);margin:14px 0 6px;font-size:14px}.q-main{gap:5px;min-width:0;display:grid}.q-title{flex-wrap:wrap;align-items:center;gap:6px;font-weight:700;display:flex}.reward{flex-wrap:wrap;gap:4px;display:flex}.chip{background:#ffffff12;border-radius:9px;align-items:center;gap:4px;padding:1px 7px;font-size:11.5px;font-weight:700;display:inline-flex}.pill{letter-spacing:.06em;text-transform:uppercase;color:var(--accent-hi);background:#f07a3a33;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:800}.chat-list{align-content:start;gap:8px;min-height:0;max-height:100%;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.chat-list li{justify-items:start;gap:2px;display:grid}.chat-list li.mine{justify-items:end}.chat-list .who{color:var(--cyan);font-size:11px;font-weight:800}.chat-list li.mine .who{color:var(--accent-hi)}.bubble-text{overflow-wrap:anywhere;background:#ffffff12;border-radius:10px;max-width:85%;padding:6px 10px}.chat-list li.mine .bubble-text{background:#f07a3a2e}.chat-link{color:var(--cyan,#5fe1ff);overflow-wrap:anywhere;text-decoration:underline}.chat-form{gap:8px;display:flex}.chat-form input,.login-card input{border:1px solid var(--line-hi);min-width:0;color:var(--text);font:inherit;background:#0006;border-radius:7px;flex:1;padding:9px 11px}.chat-form input:focus,.login-card input:focus{border-color:var(--cyan);outline:none}.sheet.tall .sheet-body{height:100%}.sheet.tall .sheet-body:has(.chat-list){grid-template-rows:auto auto minmax(0,1fr) auto auto}.tile-sheet{gap:8px;display:grid}.tile-sheet h3{font-size:17px}.coords{color:var(--muted);font-size:11px}.toasts{top:calc(var(--hud-top) + 96px);z-index:40;pointer-events:none;gap:6px;width:min(90%,380px);display:grid;position:absolute;left:50%;transform:translate(-50%)}.toast{border:1px solid var(--line-hi);border-left:4px solid var(--cyan);background:linear-gradient(#22344a,#142131);border-radius:8px;padding:9px 12px;font-size:13px;font-weight:600;animation:.2s ease-out drop;box-shadow:0 8px 24px #00000080}.toast.error{border-left-color:var(--bad)}.toast.reward{border-left-color:var(--gold)}.toast.tap{pointer-events:auto;cursor:pointer;text-align:left;color:inherit;font:inherit;width:100%;font-size:13px;font-weight:600}.toast.tap:active{transform:scale(.98)}.toast-action{color:#ffd27a;margin-top:4px;font-size:12px;font-weight:700;display:block}@keyframes drop{0%{opacity:0;transform:translateY(-6px)}}.splash-screen{isolation:isolate;background:radial-gradient(ellipse at 50% 38%, #142233 0%, var(--bg) 72%);height:100%;position:relative;overflow:hidden}.splash-board{z-index:-3;object-fit:cover;opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;transition:opacity .7s ease-out;position:absolute;inset:0}.splash-board.in{opacity:1}.splash-shade{z-index:-2;pointer-events:none;background:radial-gradient(85% 75% at 50% 46%,#04070b1a 30%,#030508e0 100%);position:absolute;inset:0;overflow:hidden}.splash-shade:after{content:"";background:linear-gradient(90deg,#0000,#78dcff17,#0000);width:34%;animation:13s linear infinite splash-sweep;position:absolute;top:-30%;bottom:-30%;left:0;transform:translate(-160%)rotate(22deg)}.splash-scroll{padding:max(18px, var(--sat)) max(16px, var(--sar)) max(22px, var(--sab)) max(16px, var(--sal));display:flex;position:absolute;inset:0;overflow:hidden auto}.splash-col{justify-items:center;width:min(100%,400px);margin:auto;display:grid;position:relative}.splash-col:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#060a10f5 0,#060a10e6 56%,#060a1000 100%);position:absolute;inset:-7% -24%}.splash-emblem{aspect-ratio:1;width:min(74vw,42vh,420px);margin-bottom:-3%;transition:width .3s;position:relative}.splash-emblem:empty{display:none}.splash-emblem:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#060a10f0 0,#060a10db 58%,#060a1000 100%);position:absolute;inset:-20%}.splash-emblem:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#ff92426b,#ff782821 46%,#ff782800 74%);border-radius:50%;animation:5.5s ease-in-out infinite splash-breathe;position:absolute;inset:2%}.splash-emblem img{opacity:0;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;transition:opacity .5s ease-out,transform .8s cubic-bezier(.2,.8,.2,1);display:block;transform:scale(.94)}.splash-emblem img.in{opacity:1;animation:8s ease-in-out .9s infinite splash-float;transform:none}.splash-name{width:min(92%,372px);font:900 clamp(20px, 7vw, 26px)/1.2 var(--font);letter-spacing:.22em;white-space:nowrap;text-align:center;color:var(--accent);text-shadow:0 0 18px #f07a3a59;margin:0;transition:width .3s}.splash-name img{opacity:0;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;transition:opacity .5s ease-out .15s,transform .6s ease-out .15s;display:block;transform:translateY(8px)}.splash-name img.in{opacity:1;transform:none}.splash-body{align-content:start;justify-items:center;width:100%;min-height:180px;margin-top:clamp(2px,1.2vh,12px);display:grid}.splash-status{color:var(--muted);letter-spacing:.12em;justify-items:center;gap:12px;padding:6px 0 10px;animation:.4s ease-out both splash-rise;display:grid}.splash-status:after{content:"";background:linear-gradient(90deg, #ffa06000, var(--accent-hi), #ffa06000) no-repeat -80px 0 / 80px 100%, #ffffff1a;border-radius:2px;width:132px;height:2px;animation:1.3s ease-in-out infinite splash-scan}.splash-screen.compact .splash-emblem{width:min(34vw,15vh,132px)}.splash-screen.compact .splash-name{width:min(74%,300px)}@media (height<=560px) and (aspect-ratio>=5/4){.splash-col{grid-template-columns:minmax(0,auto) minmax(0,380px);justify-content:center;align-items:center;column-gap:clamp(16px,4vw,40px);width:min(100%,780px)}.splash-col:before{inset:-16% -10%}.splash-emblem,.splash-screen.compact .splash-emblem{grid-row:1/span 2;width:min(38vw,82vh,360px);margin:0}.splash-screen.compact .splash-emblem{width:min(24vw,60vh,200px)}.splash-name,.splash-screen.compact .splash-name{align-self:end;width:min(100%,300px)}.splash-body{align-self:start}}@keyframes splash-rise{0%{opacity:0;transform:translateY(10px)}}@keyframes splash-float{50%{transform:translateY(-1.4%)}}@keyframes splash-breathe{50%{opacity:.6;transform:scale(.95)}}@keyframes splash-sweep{0%{transform:translate(-160%)rotate(22deg)}to{transform:translate(460%)rotate(22deg)}}@keyframes splash-scan{to{background-position:132px 0,0 0}}.login-card{background:linear-gradient(#1b2a3de6,#0d151ff0);border:1px solid #4f6884cc;border-radius:14px;gap:10px;width:100%;padding:20px 22px 22px;animation:.45s ease-out both splash-rise;display:grid;position:relative;box-shadow:0 20px 60px #0000008c,inset 0 1px #ffffff12}.login-card:before{content:"";background:linear-gradient(90deg, #f07a3a00, var(--accent), #f07a3a00);border-radius:2px;height:2px;position:absolute;top:-1px;left:14%;right:14%}.login-card.signin{text-align:center}.login-lead{color:#d5dfe9;line-height:1.45}.login-card label{color:var(--muted);margin-top:4px;font-size:12.5px}.login-card .btn.wide{margin-top:8px}.google-btn{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;justify-content:center;min-height:44px;display:flex}.login-card a{color:var(--cyan)}.tabs{background:#00000059;border-radius:8px;grid-template-columns:1fr 1fr;margin-top:6px;padding:3px;display:grid}.tabs button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:7px;font-weight:700}.tabs button.on{background:var(--panel-hi);color:var(--text)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.back-link{color:var(--cyan);cursor:pointer;background:0 0;border:0;justify-self:start;padding:2px 0;font-weight:700}.back-link:hover{text-decoration:underline}.sheet.tall .sheet-body:has(.store-top){grid-template-rows:auto minmax(0,1fr)}.store-top{gap:8px;display:grid}.store-tabs{grid-template-columns:repeat(5,1fr);margin:0}.store-tabs button{padding:7px 1px;font-size:11.5px}.rewards-tabs{grid-template-columns:repeat(3,1fr);margin:0}.rewards-tabs button{padding:8px 2px;font-size:13.5px}.tabs button .tab-badge{background:var(--accent);color:#fff;border-radius:8px;min-width:16px;margin-left:5px;padding:0 4px;font-size:10px;line-height:16px;display:inline-block}.wallet{justify-self:end;align-items:center;gap:6px;font-weight:800;display:flex}.store-body{align-content:start;gap:10px;min-height:0;display:grid;overflow-y:auto}.qty-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.store-body>.qty-row{z-index:2;background:#0f1823;padding:6px 0 8px;position:sticky;top:0;box-shadow:0 6px 8px -6px #000000b3}.seg{background:#00000059;border-radius:8px;grid-auto-flow:column;gap:2px;padding:3px;display:inline-grid}.seg.wide{grid-auto-columns:minmax(0,1fr);display:grid}.seg.wide button{overflow-wrap:anywhere;min-width:0}.seg.tight button{padding:5px 3px;font-size:13px}.seg button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:5px 12px;font-weight:800}.seg button.on{background:var(--panel-hi);color:var(--text)}.upgrade-levels{margin:2px 0 8px}.store-list li{grid-template-columns:40px minmax(0,1fr) auto}.buy-pair{gap:5px;display:grid}.btn.buy{justify-content:center;align-items:center;gap:4px;min-width:96px;padding:6px 10px;font-size:12px;display:inline-flex}.btn.buy.res{color:#fff;background:linear-gradient(#ffa060,#d9621f);border-color:#ffbf8f}.btn.buy.cores{color:#fff;background:linear-gradient(#3fb6e6,#1f6f9c);border-color:#9fe3ff}.store-list li.res-row{grid-template-columns:40px minmax(0,1fr)}.store-list li.boost-row{grid-template-columns:48px minmax(0,1fr) auto}.boost-icon{filter:drop-shadow(0 2px 3px #00000073);display:block}.pack-row{grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.btn.pack{gap:1px;min-width:0;padding:6px 4px;display:grid}.pack-amt{font-size:13px}.pack-price{opacity:.95;justify-content:center;align-items:center;gap:4px;font-size:11px;display:inline-flex}.exchange{gap:8px;display:grid}.ex-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:11px;font-weight:800}.res-pick{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.res-pick button{border:1px solid var(--line);cursor:pointer;background:#00000040;border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-weight:700;display:flex}.res-pick button .num{margin-left:auto}.res-pick button.on{border-color:var(--cyan);background:#5fe1ff1a}.res-pick button:disabled{opacity:.35;cursor:not-allowed}.ex-preview{border:1px solid var(--line);background:#0000004d;border-radius:9px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:10px;font-weight:700;display:flex}.ex-preview span{align-items:center;gap:4px;display:inline-flex}.ex-preview .arrow{color:var(--gold);font-size:18px}.prod-card{background:#5fd38e12;border:1px solid #5fd38e59;border-radius:10px;gap:8px;padding:12px;display:grid}.prod-this{align-items:center;gap:10px;display:flex}.prod-big{color:var(--ok);font-size:20px;font-weight:800}.prod-line{justify-content:space-between;gap:10px;font-size:13px;display:flex}.prod-line .num{font-weight:800}.prod-all{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.prod-all button{border:1px solid var(--line);cursor:pointer;color:var(--ok);background:#0000004d;border-radius:6px;justify-content:center;align-items:center;gap:3px;padding:5px 2px;font-size:11.5px;font-weight:700;display:flex}.prod-all button.on{border-color:var(--ok)}.small-btn{padding:7px;font-size:12.5px}.prod-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.prod-list>li{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:6px;padding:10px 12px;display:grid}.prod-list>li.hl{border-color:var(--ok);box-shadow:0 0 0 1px #5fd38e59}.prod-head{align-items:center;gap:8px;display:flex}.prod-name{flex:1;font-size:15px;font-weight:800}.prod-total{color:var(--ok);font-size:15px;font-weight:800}.progress.small{height:7px}.progress i.full{background:var(--warn)}.prod-store{justify-content:space-between;gap:8px;display:flex}.prod-store .warn{color:var(--warn)}.prod-sources{gap:2px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.prod-sources li{border-top:1px solid #ffffff0d;justify-content:space-between;gap:8px;padding:3px 0;display:flex}.src-go{color:var(--cyan);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.src-go:hover{text-decoration:underline}.hud-right{right:8px;top:calc(var(--hud-top) + 104px);z-index:9;gap:8px;display:grid;position:absolute}.rail-btn{cursor:pointer;border:1px solid var(--line-hi);background:linear-gradient(#22344aeb,#142131eb);border-radius:12px;justify-items:center;gap:0;width:56px;padding:4px 0 3px;display:grid;position:relative;box-shadow:0 4px 12px #00000059}.rail-btn.ready{border-color:var(--gold);animation:1.2s ease-in-out infinite pulse;box-shadow:0 0 14px #ffc65a8c}.rail-lbl{letter-spacing:.03em;font-size:10px;font-weight:800}.rail-btn .menu-badge{top:-5px;right:-5px}.rail-btn.boosted{border-color:var(--ok);box-shadow:0 0 10px #5fd38e66}.rail-btn .boost-count{background:var(--ok);color:#0c2416;min-width:17px;height:17px;font:800 10px var(--mono);border:2px solid #1a2839;border-radius:9px;place-items:center;padding:0 4px;display:grid;position:absolute;top:-5px;right:-5px}.boost-chip{cursor:pointer;border:1px solid var(--ok);color:#c9f5d9;font:800 11px var(--mono);white-space:nowrap;background:#143c24e6;border-radius:12px;margin:0 0 5px 8px;padding:3px 10px;display:block}.boost-chip span{color:var(--ok)}.boost-active{border:1px solid var(--ok);background:#5fd38e1a;border-radius:9px;align-items:center;gap:8px;padding:9px 12px;display:flex}.boost-ico{color:var(--ok);font-size:16px}.store-sub{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:8px 0 0;font-size:13px}.boost-line{color:var(--ok)}.center{text-align:center}.daily-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.daily-grid li{border:1px solid var(--line);background:#00000040;border-radius:9px;align-content:start;gap:5px;min-height:78px;padding:8px;display:grid;position:relative}.daily-grid li.big{background:linear-gradient(#f07a3a29,#00000040);grid-column:1/-1}.daily-grid li.current{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold), 0 0 16px #ffc65a59}.daily-grid li.claimed{opacity:.55}.daily-day{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.daily-grid li.current .daily-day{color:var(--gold)}.daily-check{color:var(--ok);font-weight:900;position:absolute;top:6px;right:8px}.daily-grid .reward{gap:3px}.daily-grid .chip{font-size:10.5px}.ach-scroll{align-content:start;gap:12px;min-height:0;display:grid;overflow-y:auto}.sheet.tall .sheet-body:has(.ach-scroll){grid-template-rows:auto minmax(0,1fr)}.ach-group{gap:6px;display:grid}.ach{border:1px solid var(--line);background:#00000040;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.ach.ready{border-color:var(--ok);background:#5fd38e14}.ach-main{gap:4px;min-width:0;display:grid}.ach-title{font-weight:700}.ach-reward{color:var(--muted);align-items:center;gap:4px;font-weight:800;display:inline-flex}.option.suggested{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold), 0 0 14px #ffc65a40}.quest-pill{color:var(--gold);background:#ffc65a33;margin-left:6px}.panel-tabs{margin-top:-2px}.panel-tabs button{padding:7px 6px}.manage{border-top:1px solid var(--line);padding-top:10px}.btn.danger-text{color:#ffb0b0}.demolish-confirm{background:#ff6b6b14;border:1px solid #ff6b6b73;border-radius:9px;gap:8px;padding:10px;display:grid}.move-banner{left:50%;top:calc(var(--hud-top) + 150px);z-index:13;border:1px solid var(--ok);background:linear-gradient(#22344a,#142131);border-radius:10px;align-items:center;gap:10px;width:max-content;max-width:92%;padding:8px 10px 8px 14px;font-size:13px;font-weight:700;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 8px 24px #00000080}.rush{gap:4px;display:grid}.rush .btn.wide{white-space:normal;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 6px;min-width:0;display:inline-flex}.rush-note{color:var(--muted);text-align:center;font-size:11.5px}.up{color:var(--ok)}.res-rate.neg,.prod-total.bad{color:var(--bad)}.upkeep-line{color:#ffb0b0}.sp-badge{top:-4px;right:-6px}.job-card{background:#ffb03a12;border:1px solid #ffb03a73;border-radius:10px;gap:8px;padding:10px 12px;display:grid}.job-actions{align-items:flex-start;gap:8px;display:flex}.job-actions>.btn{flex:none;min-width:34%}.job-actions>.rush{flex:1 1 0;min-width:0}.train,.research,.repair{gap:10px;display:grid}.unit-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.unit-tile{cursor:pointer;border:1px solid var(--line);background:#0000004d;border-radius:9px;justify-items:center;gap:1px;padding:6px 2px 4px;display:grid;position:relative}.unit-tile.on{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan);background:#5fe1ff1a}.unit-tile.locked svg{opacity:.35;filter:grayscale()}.unit-own{font-size:11px;font-weight:800}.unit-lock{font-size:11px;position:absolute;top:3px;left:5px}.unit-detail{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:9px;padding:12px;display:grid}.unit-head{align-items:center;gap:10px;display:flex}.unit-head h3{font-size:16px}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0;display:grid}.stat-grid div{background:#ffffff0a;border-radius:6px;padding:4px 8px}.stat-grid dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.stat-grid dd{margin:0;font-weight:800}.qty{grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:6px;display:grid}.qty input[type=range]{width:100%;accent-color:var(--accent);touch-action:pan-x;height:28px}.qty-n{text-align:right;min-width:46px;font-weight:800}.btn.step{min-width:32px;padding:5px 9px}.skill-list,.army-list,.gear-grid,.timer-list{margin:0;padding:0;list-style:none}.tech-bar{background:#ffffff14;border-radius:2px;height:3px;display:block;position:relative;overflow:hidden}.tech-bar i{background:linear-gradient(90deg,#3fb6e6,#5fe1ff);height:100%;display:block}.tech-pill.max{color:var(--ok);background:#5fd38e2e}.tech-pill.locked{color:var(--muted);background:#ffffff14}.tech-pill.researching{color:var(--gold);background:#ffc65a33}.tech-tabs button{justify-items:center;padding:5px 4px;line-height:1.15;display:grid}.tech-tabs .tab-sub{font:700 10px/1.2 var(--mono);color:var(--muted)}.tech-tabs button.on .tab-sub{color:var(--cyan)}.job-tech{cursor:pointer;background:0 0;border:0;flex:none;padding:0;line-height:0}.ttree{width:100%;max-width:470px;margin:0 auto;position:relative}.ttree-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ttree-lines path{fill:none;stroke:#2e435b;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.ttree-lines path.met{stroke:#3cc3e6;filter:drop-shadow(0 0 3px #5fe1ff8c)}.tnode{pointer-events:none;justify-items:center;width:25%;display:grid;position:absolute;transform:translate(-50%)}.tnode>*{pointer-events:auto}.tnode-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:radial-gradient(circle at 50% 24%,#4b7096 0%,#27405a 50%,#132131 100%);border:0;border-radius:50%;place-items:center;width:62px;height:62px;padding:0;transition:transform 90ms,box-shadow 90ms;display:grid;position:relative;box-shadow:inset 0 2px 1px #ffffff57,inset 0 -6px 8px #0000008c,0 5px #0a121b,0 9px 12px #0000008c}.tnode-btn:active{transform:translateY(4px);box-shadow:inset 0 2px 1px #ffffff57,inset 0 -6px 8px #0000008c,0 1px #0a121b,0 3px 5px #00000080}.tnode-btn img{filter:drop-shadow(0 5px 3px #0009);pointer-events:none;transform:translateY(-4px)}.tnode-ring{pointer-events:none;width:calc(100% + 10px);height:calc(100% + 10px);position:absolute;inset:-5px;overflow:visible;transform:rotate(-90deg)}.tnode-ring circle{fill:none;stroke-width:2.3px}.tnode-ring .track{stroke:#ffffff24}.tnode-ring .fill{stroke:var(--cyan);stroke-linecap:round;filter:drop-shadow(0 0 2px #5fe1ffb3)}.tnode-ring .spin{stroke:#fff3cf;stroke-width:1.6px;transform-origin:18px 18px;animation:4s linear infinite tnode-spin}.tnode-lv{z-index:1;border:1px solid var(--line-hi);background:#0a121b;border-radius:8px;margin-top:-8px;padding:0 6px;font-size:10px;font-weight:800;line-height:14px;position:relative}.tnode-name{text-align:center;overflow-wrap:break-word;background:#0f1823e6;border-radius:4px;max-width:100%;margin-top:3px;padding:0 2px 1px;font-size:10.5px;font-weight:700;line-height:1.15;position:relative}.tnode-from{letter-spacing:.05em;text-transform:uppercase;color:var(--cyan);font-size:9px;font-weight:800;display:block}.tnode-badge{border:2px solid #0a121b;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;font-weight:900;line-height:1;display:grid;position:absolute;top:-4px;right:-4px}.tnode-badge.lock{color:#dbe3ea;background:#46525f}.tnode-badge.check{background:var(--ok);color:#06210f}.tnode.ready .tnode-btn{box-shadow:inset 0 2px 1px #ffffff57,inset 0 -6px 8px #0000008c,0 5px #0a121b,0 9px 12px #0000008c,0 0 0 1.5px #5fe1ff99}.tnode.go .tnode-btn:after{content:"";pointer-events:none;border:2px solid #5fe1ffcc;border-radius:50%;animation:2s ease-out infinite tnode-ping;position:absolute;inset:-5px}.tnode.locked .tnode-btn{background:radial-gradient(circle at 50% 24%,#364454 0%,#1e2a37 50%,#10171f 100%)}.tnode.locked .tnode-btn img{filter:grayscale()brightness(.62)drop-shadow(0 5px 3px #0009)}.tnode.locked .tnode-name,.tnode.locked .tnode-lv{color:var(--muted)}.tnode.running .tnode-btn{background:radial-gradient(circle at 50% 24%,#a9853a 0%,#5b4520 50%,#251c0f 100%);animation:1.6s ease-in-out infinite tnode-glow}.tnode.running .tnode-ring .fill{stroke:var(--gold);filter:none}.tnode.running .tnode-lv{border-color:var(--gold);color:var(--gold)}.tnode.max .tnode-btn{background:radial-gradient(circle at 50% 24%,#4f9a72 0%,#23553c 50%,#10261c 100%)}.tnode.max .tnode-ring .fill{stroke:var(--ok);filter:drop-shadow(0 0 2px #5fd38eb3)}.tnode.max .tnode-lv{background:var(--ok);color:#06210f;border-color:#b9f5d2}.tnode.sel .tnode-btn{outline-offset:6px;outline:2px solid #fff}.tnode.outside .tnode-btn{outline:1.5px dashed var(--line-hi);outline-offset:3px;width:44px;height:44px;box-shadow:inset 0 2px 1px #ffffff47,inset 0 -4px 6px #0000008c,0 3px #0a121b,0 6px 8px #00000080}.tnode.outside .tnode-ring{display:none}.tnode.outside .tnode-btn img{transform:translateY(-2px)}.tnode.outside .tnode-name{margin-top:8px;font-size:10px}.tnode.outside .tnode-badge{width:17px;height:17px;font-size:10px;top:-6px;right:-6px}@keyframes tnode-spin{to{transform:rotate(360deg)}}@keyframes tnode-ping{0%{opacity:.9;transform:scale(.94)}70%,to{opacity:0;transform:scale(1.22)}}@keyframes tnode-glow{50%{box-shadow:inset 0 2px 1px #ffffff57,inset 0 -6px 8px #0000008c,0 5px #0a121b,0 9px 12px #0000008c,0 0 18px #ffc65ad9}}@media (prefers-reduced-motion:reduce){.tnode-ring .spin,.tnode.go .tnode-btn:after,.tnode.running .tnode-btn{animation:none}}.ttree-key{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:0;padding:0;font-size:11px;list-style:none;display:flex}.ttree-key li{align-items:center;gap:5px;display:flex}.ttree-key li:before{content:"";width:10px;height:10px;box-shadow:0 0 0 1.5px var(--cyan);background:#27405a;border-radius:50%}.ttree-key .running:before{box-shadow:0 0 0 1.5px var(--gold);background:#a9853a}.ttree-key .max:before{box-shadow:0 0 0 1.5px var(--ok);background:#2f7a54}.ttree-key .locked:before{background:#2a3642;box-shadow:0 0 0 1.5px #5b6876}.tcard-layer{z-index:6;background:#02060a9e;place-items:end center;animation:.15s ease-out confirm-in;display:grid;position:absolute;inset:0}.tcard{width:100%;max-width:680px;max-height:88%;padding-bottom:var(--sab);background:linear-gradient(#1f3046,#0f1823 45%);border-top:1px solid #5fe1ffb3;border-radius:6px 6px 0 0;grid-template-rows:auto minmax(0,1fr);animation:.2s ease-out up;display:grid;position:relative;overflow:hidden;box-shadow:0 -12px 40px #000000a6,0 -1px 14px #5fe1ff40}.tcard-head{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:16px 54px 12px 18px;display:flex}.tcard-close{z-index:1;cursor:pointer;width:36px;height:36px;color:var(--text);border:1px solid var(--line-hi);-webkit-tap-highlight-color:transparent;background:linear-gradient(#33475e,#1c2a3a);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:9px;right:9px;box-shadow:inset 0 1px #ffffff2e,0 2px 5px #00000080}.tcard-close:hover{filter:brightness(1.2)}.tcard-close:active{transform:translateY(1px)}.tcard-icon{background:radial-gradient(circle at 50% 24%,#4b7096 0%,#27405a 50%,#132131 100%);border-radius:50%;flex:none;place-items:center;width:78px;height:78px;display:grid;box-shadow:inset 0 2px 1px #ffffff57,inset 0 -7px 9px #0000008c,0 5px #0a121b,0 9px 12px #0000008c,0 0 0 2px #5fe1ff80}.tcard-icon img{filter:drop-shadow(0 6px 4px #0009);transform:translateY(-5px)}.tcard-icon.locked{background:radial-gradient(circle at 50% 24%,#364454 0%,#1e2a37 50%,#10171f 100%);box-shadow:inset 0 2px 1px #ffffff4d,inset 0 -7px 9px #0000008c,0 5px #0a121b,0 9px 12px #0000008c,0 0 0 2px #5b6876}.tcard-icon.running{box-shadow:inset 0 2px 1px #ffffff57, inset 0 -7px 9px #0000008c, 0 5px 0 #0a121b, 0 9px 12px #0000008c, 0 0 0 2px var(--gold);background:radial-gradient(circle at 50% 24%,#a9853a 0%,#5b4520 50%,#251c0f 100%)}.tcard-icon.max{box-shadow:inset 0 2px 1px #ffffff57, inset 0 -7px 9px #0000008c, 0 5px 0 #0a121b, 0 9px 12px #0000008c, 0 0 0 2px var(--ok);background:radial-gradient(circle at 50% 24%,#4f9a72 0%,#23553c 50%,#10261c 100%)}.tcard-title{flex:1;gap:4px;min-width:0;display:grid}.tcard-title h3{flex-wrap:wrap;align-items:center;gap:6px;font-size:17px;font-weight:800;display:flex}.tcard-body{touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff38 transparent;align-content:start;gap:9px;padding:12px 16px 18px;display:grid;overflow-y:auto}.tcard-what{color:var(--cyan);font-weight:800}.tcard-leads{border-top:1px solid var(--line);gap:5px;padding-top:8px;display:grid}.tcard-lead-list{flex-wrap:wrap;gap:6px;display:flex}.tcard-lead{border:1px solid var(--line);cursor:pointer;text-align:left;background:#00000040;border-radius:16px;align-items:center;gap:6px;padding:3px 9px 3px 4px;font-size:12px;font-weight:700;display:flex}.tcard-lead.met{border-color:#5fe1ff80}:root[data-device=desktop] .tcard-layer{align-items:center}:root[data-device=desktop] .tcard{border:1px solid #5fe1ff8c;border-radius:8px;padding-bottom:0}.army-top{text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.army-top>div{border:1px solid var(--line);background:#00000040;border-radius:9px;padding:8px 4px}.army-big{font-size:17px;font-weight:800}.army-class{gap:6px;display:grid}.army-class header{justify-content:space-between;align-items:center;display:flex}.army-class h3{font-size:15px}.army-list{gap:4px;display:grid}.army-list li{background:#0003;border-radius:7px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 8px;font-size:13px;font-weight:600;display:grid}.army-list li.none{opacity:.45}.army-list .num{font-weight:800}.relay-garrison{gap:8px;margin:4px 0 10px;display:grid}.relay-ally{gap:4px;display:grid}.relay-ally-head{justify-content:space-between;align-items:baseline;gap:8px;margin:0;display:flex}.raid-banner.ally{color:#ffeed6;background:#3c2204e6;border-color:#ffb03a;animation:1.6s ease-in-out infinite allypulse;box-shadow:0 0 14px #ffaa2873}.raid-banner.ally>span:first-child{color:#ffc24a}@keyframes allypulse{50%{box-shadow:0 0 24px #ffb028d9}}.cmd-portrait{flex:none;position:relative}.cmd-lv{color:#04202e;background:linear-gradient(#5fe1ff,#1f6f9c);border:2px solid #0b1118;border-radius:12px;place-items:center;min-width:24px;height:24px;padding:0 4px;font-size:12px;font-weight:900;display:grid;position:absolute;bottom:-2px;right:-4px}.cmd-head{flex:1;gap:3px;min-width:0;display:grid}.cmd-head h3{font-size:17px}.name-change-btn{place-self:flex-start start}.name-change-note{margin:0}.name-change{border:1px solid var(--line-hi);background:#0003;border-radius:9px;gap:6px;padding:10px;display:grid}.name-change input{border:1px solid var(--line-hi);min-width:0;color:var(--text);font:inherit;touch-action:manipulation;background:#00000059;border-radius:7px;padding:8px 10px}.name-change input:focus{border-color:var(--cyan);outline:none}.progress.xp i{background:linear-gradient(90deg,#3fb6e6,#5fe1ff)}.power-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.power-grid div{text-align:center;padding:4px 5px}.power-grid dt{letter-spacing:.02em;font-size:9px}.skills-head{justify-content:space-between;align-items:center;display:flex}.pill.points{color:var(--ok);background:#5fd38e33}.skill-list{gap:6px;display:grid}.skill-list li{border:1px solid var(--line);background:#00000040;border-radius:9px;grid-template-columns:minmax(0,1fr) 46px;align-items:center;gap:10px;padding:9px 10px;display:grid}.skill-list li.locked{opacity:.5}.skill-main{gap:2px;min-width:0;display:grid}.skill-name{font-weight:800}.pips{gap:3px;margin-top:3px;display:flex}.pips i{background:#ffffff1f;border-radius:2px;width:14px;height:5px}.pips i.on{background:var(--gold)}.skill-add{padding:4px 0;font-size:20px;line-height:1.2}.gear-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.gear-grid li{color:var(--muted);justify-items:center;gap:3px;display:grid}.gear-slot{aspect-ratio:1;border:1px dashed var(--line-hi);background:#00000040;border-radius:8px;width:100%}.timer-list{gap:4px;display:grid}.timer-chip{cursor:pointer;background:#080e16d1;border:1px solid #ffffff2e;border-radius:9px;align-items:center;gap:5px;padding:2px 9px 4px 4px;font-size:11.5px;font-weight:800;display:flex;position:relative;overflow:hidden}.timer-chip i{background:var(--gold);height:2px;position:absolute;bottom:0;left:0}.timer-chip.research i{background:var(--cyan)}.timer-chip.repair i{background:#6fb3ff}.timer-chip.free{border-color:var(--ok);color:var(--ok)}.timer-chip.rail-toggle{color:var(--muted);padding:3px 9px;font-size:11px}.shield-chip{border-color:var(--cyan);color:#cdf6ff;background:#142c48eb}.shield-chip span{color:var(--cyan)}.shield-active{border-color:var(--cyan);background:#5fe1ff14}.shield-active .boost-ico{color:var(--cyan)}.item-ico.shield{color:#dff8ff;background:linear-gradient(#2a7fb0,#164466);font-size:22px}.prod-buy{min-width:0;margin-left:4px;padding:3px 10px;font-size:11.5px}.chip{border:1px solid var(--line);white-space:nowrap;background:#ffffff0f;border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-flex}.chip.short{color:var(--bad);border-color:#ff6b6b99}.loot-row,.materials-row,.march-units,.mat-costs{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.btn.small-btn.inline{vertical-align:middle;margin-left:6px;padding:2px 8px;font-size:12px;display:inline-flex}.note.ok{color:var(--ok);border-left-color:var(--ok);background:#5fd38e14}.note.bad{color:var(--bad);border-left-color:var(--bad);background:#ff6b6b14}.spire-note{align-items:center;gap:8px;margin:0 0 8px;display:flex}.spire-note>span{flex:1;min-width:0}.spire-note .btn{flex:none}.bad{color:var(--bad)}.push{margin-left:auto}.grow{flex:1;min-width:0}.menu-badge.dot{width:10px;min-width:10px;height:10px;padding:0;top:-2px;right:-2px}.deploy-target{gap:2px;display:grid}.deploy-target b{font-size:16px}.deploy-head{z-index:2;border-bottom:1px solid var(--line);background:linear-gradient(#0f1823 75%,#0f1823eb);gap:8px;margin:0 -16px;padding:10px 16px;display:grid;position:sticky;top:-12px}.deploy-head .blocker,.sheet-actions p{margin:0}.deploy-picked{gap:5px;display:grid}.deploy-chips{flex-wrap:wrap;gap:5px;display:flex}.deploy-chips .chip{gap:5px;padding:2px 8px 2px 3px;font-size:12.5px}.deploy-chips .chip-name{color:var(--muted);font-weight:600}.seg-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.deploy-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.deploy-list li{border:1px solid var(--line);background:#00000038;border-radius:9px;grid-template-columns:34px minmax(0,1fr) 76px;align-items:center;gap:8px;padding:6px 8px;display:grid}.deploy-main{gap:2px;min-width:0;display:grid}.deploy-name{justify-content:space-between;gap:6px;font-size:13px;font-weight:700;display:flex}.deploy-main input[type=range]{width:100%;accent-color:var(--accent)}.num-input{border:1px solid var(--line-hi);width:100%;color:var(--text);font:700 16px var(--mono);text-align:right;background:#00000059;border-radius:7px;padding:6px}.deploy-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.odds{font-weight:800}.odds.overwhelming{color:var(--ok)}.odds.favourable{color:#b5e36a}.odds.risky{color:var(--warn)}.odds.tooStrong{color:var(--bad)}.timer-chip.march{padding-bottom:8px}.timer-chip.march i{border-radius:0 2px 2px 0;height:3px;bottom:2px}.timer-chip.march.dir-out i:after,.timer-chip.march.dir-home i:after{content:"";background:inherit;width:8px;height:9px;position:absolute;bottom:-3px;left:calc(100% - 4px)}.timer-chip.march.dir-out i:after{clip-path:polygon(0 0,100% 50%,0 100%)}.timer-chip.march.dir-home i:after{clip-path:polygon(100% 0,0 50%,100% 100%);left:calc(100% - 7px)}.timer-chip.march.attack i{background:#ff7a6b}.timer-chip.march.harvest i{background:var(--gold)}.march-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.march-card{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:7px;padding:10px;display:grid}.report-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.report-list li{border:1px solid var(--line);background:#00000040;border-radius:10px;overflow:hidden}.report-list li.unread{border-color:var(--cyan)}.report-head{width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 10px;display:grid}.report-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.report-title.win{color:var(--ok)}.report-title.loss{color:var(--bad)}.report-detail{gap:8px;padding:0 10px 12px;display:grid}.report-detail h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:4px 0 0;font-size:11px}.report-detail p{margin:0}.report-banner{text-align:center;letter-spacing:.2em;text-transform:uppercase;border-radius:8px;padding:8px;font-weight:900}.report-banner.win{color:var(--ok);background:#5fd38e26}.report-banner.loss{color:var(--bad);background:#ff6b6b26}.report-table td{padding:4px 0}.cell-icon{align-items:center;gap:6px;display:inline-flex}.craft{gap:10px;display:grid}.sticky-bar{z-index:2;background:#0f1823;gap:8px;margin:0 -16px;padding:10px 16px 8px;display:grid;position:sticky;top:-12px;box-shadow:0 6px 8px -6px #000000b3}.gear-tabs button{place-items:center;padding:5px 0;display:grid}.craft-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.craft-list li{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:7px;padding:10px;display:grid}.craft-list li.locked{opacity:.7}.craft-head{align-items:center;gap:10px;display:flex}.craft-head .up,.gear-row .up{color:var(--ok)}.gear-btn{cursor:pointer;background:0 0;border:0;border-radius:12px;padding:0;position:relative}.gear-btn.on{outline:2px solid var(--cyan);outline-offset:2px}.gear-grid li{min-width:0}.gear-grid li>.small{text-align:center;overflow-wrap:anywhere;max-width:100%}@media (width<=379px){.gear-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:10px}}.gear-picker{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:6px;padding:8px;display:grid}.gear-row{align-items:center;gap:8px;display:flex}.mlabel{font:700 10.5px var(--mono);white-space:nowrap;color:#fff3cc;pointer-events:none;background:#080e16d1;border:1.5px solid #ffd84a;border-radius:9px;padding:1px 7px;position:absolute;top:0;left:0}.mlabel.ally{color:#dbe8ff;border-color:#6fa8ff}.mlabel.attack{border-color:#ff6b5b}.mlabel.strike{color:#ffe9b8;border-color:#ffc34d}.mlabel.tap,.gpin.tap{pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}.mlabel.tap:before{content:"";position:absolute;inset:-12px -8px}.march-bubble{max-width:270px}.march-bubble .march-speed{justify-content:center;margin-top:7px}.march-bubble .march-speed>.muted.small:first-child{flex-basis:100%}.gpin{pointer-events:none;--pin:#4fe08a;--pin-dark:#0f5a2e;filter:drop-shadow(0 3px 4px #0000008c);flex-direction:column;align-items:center;display:flex;position:absolute;top:0;left:0}.gpin.ally{--pin:#ff5a4f;--pin-dark:#7a1a14}.gpin-badge{box-sizing:border-box;width:30px;height:30px;box-shadow:inset 0 0 0 1.5px #0b1118, 0 0 0 1.5px #0b1118, 0 0 10px color-mix(in srgb, var(--pin) 55%, transparent);background:radial-gradient(circle at 50% 38%,#26313c,#0b1118 70%);border:2.5px solid #9aa6b2;border-radius:50%;place-items:center;display:grid}.gpin:after{content:"";border-top:11px solid #9aa6b2;border-left:7px solid #0000;border-right:7px solid #0000;width:0;height:0;margin-top:-1px}.gpin-core{background:radial-gradient(circle at 38% 32%, #e9fff1 0 14%, var(--pin) 45%, var(--pin-dark) 100%);width:16px;height:16px;box-shadow:0 0 8px var(--pin);border-radius:50%;animation:2.4s ease-in-out infinite gpin-glow}.gpin svg{width:17px;height:17px;fill:var(--pin);stroke:#0b1118;stroke-width:1.2px;filter:drop-shadow(0 0 3px var(--pin))}@keyframes gpin-glow{50%{box-shadow:0 0 14px var(--pin);filter:brightness(1.15)}}@media (prefers-reduced-motion:reduce){.gpin-core{animation:none}}.march-speed{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.march-speed .btn{align-items:center;gap:4px;display:inline-flex}.minimap{z-index:11;width:104px;position:absolute;bottom:132px;right:8px}.minimap.big{z-index:40;width:min(92%,420px);top:50%;bottom:auto;right:50%;transform:translate(50%,-50%)}.minimap-scrim{z-index:39;cursor:pointer;background:#00000080;border:0;position:absolute;inset:0}.minimap-map{aspect-ratio:1;cursor:crosshair;background:#345f80;border:2px solid #ffffff59;border-radius:10px;position:relative;overflow:hidden;box-shadow:0 4px 14px #00000080}.minimap-map canvas{width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.mm-base,.mm-spire{pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.mm-base{border:1.5px solid #fff;border-radius:2px;width:7px;height:7px}.mm-base.you{background:var(--accent)}.mm-base.ally{background:#5b8fe0}.mm-base.other{background:#b9c0c8}.mm-base b{white-space:nowrap;color:#fff;text-shadow:0 1px 3px #000;font-size:11px;position:absolute;top:-15px;left:50%;transform:translate(-50%)}.minimap.big .mm-base{width:11px;height:11px}.mm-spire{background:var(--cyan);width:7px;height:7px;box-shadow:0 0 6px var(--cyan);border-radius:50%}.mm-wilds{box-sizing:border-box;pointer-events:none;background:#7dffb014;border:1.5px solid #7dffb0d9;border-radius:50%;position:absolute}.mm-view{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.mm-view polygon{fill:#ffffff1f;stroke:#fffffff2;stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-linejoin:round;filter:drop-shadow(0 0 1px #000000b3)}.mm-view circle{fill:#fff;stroke:#00000080;stroke-width:1px;vector-effect:non-scaling-stroke}.minimap-toggle{border:1px solid var(--line-hi);width:26px;height:26px;color:var(--text);cursor:pointer;background:#080e16e6;border-radius:50%;font-size:14px;line-height:1;position:absolute;top:-9px;left:-9px}.minimap.big .minimap-toggle{width:32px;height:32px;font-size:18px;top:-12px;left:auto;right:-12px}.minimap-hint{text-align:center;color:#dfe8f1;text-shadow:0 1px 3px #000;margin:6px 0 0;font-size:12px}.relocate-here{gap:6px;display:grid}.wl-shield:empty{display:none}.wl-shield{font-weight:800;color:#9fefff!important}.wlabel b .wl-guard{color:#8fb8ff;font-size:12px}.wlabel.shielded{border-color:#6fd8ff;box-shadow:0 0 10px #6fd8ff99}.mm-base.shielded{box-shadow:0 0 0 2px #6fd8ff,0 0 8px 2px #6fd8ffcc}.set-tabs button{padding:6px 2px;font-size:12px}.set-card{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:5px;padding:10px;display:grid}.set-card.on{border-color:var(--ok);box-shadow:0 0 0 1px #5fd38e4d}.set-card p{margin:0}.set-head{justify-content:space-between;align-items:baseline;display:flex}.set-tiers{flex-wrap:wrap;gap:5px;display:flex}.chip.active{border-color:var(--ok);color:var(--ok);background:#5fd38e1f}.family-tag{white-space:nowrap;border:1px solid;border-radius:999px;margin-left:auto;margin-right:6px;padding:1px 7px;font-size:11px;font-weight:800}.match-line{background:#ffffff0a;border-radius:6px;margin:0;padding:4px 8px}.set-fill{gap:4px;display:grid}.set-status{border-left:3px solid var(--line-hi);background:#ffffff0d;border-radius:8px;margin:0;padding:6px 10px}.set-status.on{border-left-color:var(--ok);color:var(--ok)}.gear-grid li{position:relative}.gem-dots{justify-content:center;gap:2px;display:flex}.gem-dots i{background:#ffffff2e;border-radius:50%;width:6px;height:6px}.gem-dots i.sp{background-color:#ffc65a40;border-radius:1px;transform:rotate(45deg)}.sockets{gap:6px;display:grid}.socket-row{align-items:center;gap:6px;display:flex}.socket-row .muted{margin-right:4px}.socket-btn{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:2px}.socket-btn.on{outline:2px solid var(--cyan)}.gem-pick{background:#00000040;border-radius:8px;gap:6px;padding:8px;display:grid}.armory-box{border:1px solid var(--line);background:#ffffff0a;border-radius:8px;gap:6px;min-width:0;padding:8px;display:grid}.armory-box p{margin:0}.armory-box>.btn{justify-self:start}.costs.gain li .num{color:var(--ok)}.spare{gap:6px;min-width:0;display:grid}.spare.open{background:#0003;border-radius:8px;margin:0 -6px;padding:6px}.gear-row>.grow{min-width:0}.gear-row .btn,.gear-row .gem-dots{flex:none}.sub-label{margin-top:4px}.presets{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:6px;margin-bottom:10px;padding:10px;display:grid}.presets>.btn{justify-self:start}.preset{border-top:1px solid var(--line);gap:4px;padding:6px 0;display:grid}.preset p{margin:0}.preset-pieces{flex-wrap:wrap;align-items:center;gap:3px;margin-top:2px;display:flex}.preset-name{gap:4px;display:grid}.preset-name input{border:1px solid var(--line-hi);min-width:0;color:var(--text);background:#00000059;border-radius:7px;padding:7px 9px;font-size:16px}.row-end.wrap{align-items:center}.raid-banner{white-space:nowrap;color:#ffe1dc;width:calc(100% - 92px);font:700 13px var(--font);cursor:pointer;background:#3c0806e6;border:1.5px solid #ff4d3a;border-radius:10px;align-items:center;gap:8px;margin:0 0 5px 8px;padding:6px 10px;animation:1.6s ease-in-out infinite raidpulse;display:flex;overflow:hidden;box-shadow:0 0 16px #ff3c2873}.raid-banner.safe{color:#dff6ff;background:#061e32e6;border-color:#6fd8ff;animation:none;box-shadow:0 0 12px #6fd8ff66}.raid-banner>span:nth-child(2){text-overflow:ellipsis;overflow:hidden}.raid-banner .raid-cta{opacity:.8;margin-left:auto;font-size:11.5px}@keyframes raidpulse{50%{box-shadow:0 0 26px #ff3c28cc}}.march-card.raid{border-color:#ff4d3a99}.raid-ico{color:#ff8a7a;background:#ff3c282e;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;font-size:18px;display:inline-grid}.raid-ico.small{width:24px;height:24px;font-size:14px}.ok{color:var(--ok)}.defend{gap:10px;display:grid}.wlabel.wilds{border-color:#7dffb0}.wlabel.wilds b{color:#b8ffd2}.wlabel.warlord{border-color:#ff3b30}.wlabel.warlord b{color:#ffb4aa}.mlabel.raid{color:#ffd0c8;background:#320604e0;border-color:#ff3b30}.fight-tag{font:800 11px var(--mono);white-space:nowrap;color:#ffe0d6;pointer-events:none;z-index:2;background:#280806e6;border:1.5px solid #ff5a3d;border-radius:10px;padding:2px 8px;animation:1s ease-in-out infinite alternate fighttag-pulse;position:absolute;top:0;left:0;box-shadow:0 0 10px #ff503273}.fight-tag.won{color:#d8ffe4;background:#062210e6;border-color:#5fe08a;animation:none;box-shadow:0 0 10px #50e68273}.fight-tag.lost{color:#ffd0c8;border-color:#ff3b30;animation:none}@keyframes fighttag-pulse{0%{box-shadow:0 0 4px #ff50324d}to{box-shadow:0 0 14px #ff5032b3}}.mm-warlord{pointer-events:none;background:#ff3b30;border:1.5px solid #ffd0c8;width:8px;height:8px;position:absolute;transform:translate(-50%,-50%)rotate(45deg)}.mm-warlord.elite{background:#b44dff;border-color:#e6c8ff;width:10px;height:10px}.mm-warlord.elite b{color:#e0bfff}.mm-warlord.routed{background:#6b5a58}.wlabel.warlord.elite{border-color:#b44dff}.wlabel.warlord.elite b{color:#e0bfff}.mm-warlord b{white-space:nowrap;color:#ffb4aa;text-shadow:0 1px 3px #000;font-size:10.5px;position:absolute;top:-16px;left:50%;transform:translate(-50%)rotate(-45deg)}.scrap-box{border:1px dashed #ff6b6b66;border-radius:10px;gap:6px;padding:8px 10px;display:grid}.army-list li.manage{grid-template-columns:32px minmax(0,1fr) auto auto}.army-list li.unit-row{grid-template-columns:32px minmax(0,1fr) repeat(3,3.6em)}.army-list li.unit-row.manage{grid-template-columns:32px minmax(0,1fr) repeat(3,3.6em) auto}.army-list li.unit-row>.num{text-align:right}.army-list li.army-cols{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;background:0 0;padding-top:0;padding-bottom:0;font-size:11px;font-weight:700}.army-list li.army-cols>span{text-align:right}.dismiss-btn{color:var(--bad);border-color:#ff6b6b80;padding:3px 8px;font-size:11.5px}.army-list li.dismiss-panel{background:#ff6b6b14;border:1px dashed #ff6b6b66;grid-template-columns:1fr;gap:6px;display:grid}.injured-badge{z-index:3;cursor:pointer;pointer-events:auto;background:linear-gradient(#ff5a4a,#d9271a);border:2px solid #fff;border-radius:8px;place-items:center;width:30px;height:30px;padding:0;animation:1.4s ease-in-out infinite injured-bob;display:grid;position:absolute;top:0;left:0;box-shadow:0 2px 8px #00000080,0 0 12px #ff503c99}@keyframes injured-bob{50%{margin-top:-5px}}.turret-badge{z-index:3;color:#fff;height:28px;font:800 12px/1 var(--mono);cursor:pointer;pointer-events:auto;white-space:nowrap;text-shadow:0 1px 1px #0006;background:linear-gradient(#ffb84a,#d98a12);border:2px solid #fff;border-radius:8px;align-items:center;gap:3px;padding:0 8px 0 5px;animation:1.6s ease-in-out infinite injured-bob;display:flex;position:absolute;top:0;left:0;box-shadow:0 2px 8px #00000080,0 0 12px #ffb43c99}.build-all{background:#5fe1ff0f;border:1px solid #5fe1ff66;border-radius:10px;gap:7px;padding:10px 12px;display:grid}.build-all-parts{flex-wrap:wrap;gap:5px;display:flex}.radar-badge{z-index:3;color:#fff;height:30px;font:700 12px/1 var(--mono);cursor:pointer;pointer-events:auto;white-space:nowrap;background:linear-gradient(#ff5a4a,#c81e12);border:2px solid #fff;border-radius:8px;align-items:center;gap:5px;padding:0 10px 0 7px;animation:1s ease-in-out infinite radar-pulse;display:flex;position:absolute;top:0;left:0;box-shadow:0 2px 8px #00000080,0 0 14px #ff4632bf}.radar-badge.safe{background:linear-gradient(#ffb84a,#d98a12);box-shadow:0 2px 8px #00000080,0 0 14px #ffb43cb3}.radar-badge .rb-icon{font-size:15px}@keyframes radar-pulse{50%{margin-top:-4px;box-shadow:0 2px 8px #00000080,0 0 26px #ff4632}}.alliance-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.alliance-head h3{margin:0;font-size:18px}.alliance-tag{font:900 13px var(--mono);color:var(--cyan)}.alliance-edit{flex-wrap:wrap;align-items:center;gap:6px;width:100%;display:flex}.alliance-edit input{border:1px solid var(--line-hi);min-width:120px;color:var(--text);background:#00000059;border-radius:7px;flex:1;padding:6px 8px;font-size:16px}.alliance-edit .tag-input{text-transform:uppercase;min-width:0;font-family:var(--mono);flex:0 0 70px}.alliance-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:4px 0 8px;display:flex}.alliance-create{gap:8px;display:grid}.alliance-create label{color:var(--muted);gap:4px;font-size:13px;display:grid}.alliance-create input,.alliance-invite input{border:1px solid var(--line-hi);color:var(--text);background:#00000059;border-radius:7px;min-width:0;padding:8px 10px;font-size:16px}.alliance-create .tag-input{text-transform:uppercase;width:90px;font-family:var(--mono)}.alliance-invite{gap:6px;display:flex}.alliance-invite input{flex:1}.avatar-wrap{display:inline-flex;position:relative}.online-dot{background:#5a6470;border:2px solid #142030;border-radius:50%;width:11px;height:11px;position:absolute;bottom:-1px;right:-1px}.online-dot.on{background:var(--ok)}.member-actions{gap:6px;display:flex}.member-admin{flex-wrap:wrap;grid-column:2/-1;justify-content:flex-end;gap:6px;display:flex}.alliance-meta .seg button{padding:5px 10px}.member-list li{grid-template-columns:40px minmax(0,1fr) auto}.help-tab{gap:8px;display:grid}.ally-actions{gap:8px;margin-top:8px;display:grid}.ally-actions p,.ally-actions h3{margin:0}.ally-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ally-buttons .ally-message{grid-column:1/-1}.tile-player-buttons{flex-wrap:wrap;gap:8px;margin:10px 0 6px;display:flex}.tile-player-buttons .btn{flex:auto}.online-dot.inline{vertical-align:middle;display:inline-block;position:static}.online-dot.afk{background:var(--warn)}.seg.wide.chat-tabs{display:flex}.seg.wide.chat-tabs button{flex:auto;padding:5px 6px}.tab-online{white-space:nowrap;align-items:center;gap:3px;margin-left:5px;font-size:12px;display:inline-flex}.tab-online .online-dot{border:0;width:8px;height:8px}.sheet.tall .sheet-body:has(.players-tab){grid-template-rows:auto minmax(0,1fr)}.players-tab{flex-direction:column;gap:8px;min-height:0;display:flex}.players-tab>p{flex:none}.player-list{flex:0 auto;grid-auto-rows:max-content;align-content:start;min-height:0;overflow-y:auto}.player-list .item-name>span{overflow-wrap:anywhere;min-width:0}.players-key{flex-wrap:wrap;gap:2px 12px;display:flex}.player-list li{padding:0;display:block}.player-head{width:100%;color:var(--text);text-align:left;font:inherit;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}button.player-head{cursor:pointer}.player-row.open{border-color:var(--cyan)}.player-more{color:var(--muted);font-size:12px}.player-actions{flex-wrap:wrap;align-items:center;gap:6px;padding:0 10px 10px 60px;display:flex}.player-actions .btn{flex:auto}.sheet.tall .sheet-body:has(.mail){grid-template-rows:minmax(0,1fr)}.mail{flex-direction:column;gap:8px;height:100%;min-height:0;display:flex}.mail>*{flex:none}.mail .mail-scroll{scrollbar-width:thin;scrollbar-color:#ffffff38 transparent;touch-action:pan-y;overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.mail-tabs{display:flex}.mail-tabs button{flex:auto;padding:5px 6px}.mail-bar{align-items:center;gap:6px;min-height:32px;display:flex}.mail-bar .btn{flex:none}.mail-count{flex:auto;min-width:0}.mail-bar .mail-done{margin-left:auto}.mail-with{overflow-wrap:anywhere;flex:auto;min-width:0;font-size:13.5px}.mail-list{align-content:start;gap:6px;margin:0;padding:0;list-style:none;display:grid}.mail-list li{border:1px solid var(--line);background:#00000040;border-radius:10px}.mail-list li.unread{border-color:var(--cyan)}.mail-list li.mail-empty{background:0 0;border:0;padding:4px 2px}.mail-list li.picked,.report-list li.picked{border-color:var(--accent-hi);background:#f07a3a1f}.mail-row{width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;display:grid}.mail-row.notice{cursor:default;grid-template-columns:14px minmax(0,1fr) auto;align-items:start}.mail-list.picking .mail-row.notice{cursor:pointer;grid-template-columns:24px minmax(0,1fr) auto;align-items:center}.mail-list.picking .mail-row{grid-template-columns:24px minmax(0,1fr) auto}.mail-text{gap:2px;min-width:0;display:grid}.mail-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.mail-title .tab-badge{background:var(--accent);color:#fff;text-align:center;vertical-align:1px;border-radius:8px;min-width:16px;margin-left:6px;padding:0 4px;font-size:10px;line-height:16px;display:inline-block}.mail-preview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mail-list li.unread .mail-preview{color:var(--text)}.mail-when{white-space:nowrap;align-self:start;padding-top:1px}.notice-text{overflow-wrap:anywhere;font-size:13px;line-height:1.35}.notice-dot{background:0 0;border-radius:50%;width:8px;height:8px;margin-top:5px}.notice-dot.on{background:var(--cyan)}.mail-row.notice.linked{cursor:pointer}.notice-go{color:var(--cyan);font-weight:700}.mail-ico{background:#0000004d;border-radius:50%;place-items:center;width:36px;height:36px;font-size:22px;display:grid}.mail-pick{margin-top:6px}.mail-pick li{padding:0;display:block}.mail-pick .player-head{grid-template-columns:36px minmax(0,1fr)}.mail-thread{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex}.mail-thread>*{flex:none}.mail-thread .mail-msgs{flex:auto;max-height:none}.mail-msgs .bubble-text{white-space:pre-wrap;overflow-wrap:anywhere}.pick-box{border:2px solid var(--muted);color:#fff;border-radius:5px;place-items:center;width:20px;height:20px;font-size:13px;font-weight:900;display:inline-grid}.pick-box.on{background:var(--accent);border-color:var(--accent-hi)}.help-list,.gift-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.help-list li,.gift-list li{border:1px solid var(--line);background:#00000040;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.gift-list li{grid-template-columns:30px minmax(0,1fr);row-gap:7px}.gift-list li>.amount-picker{grid-column:1/-1}.gift-list .item-ico{border-radius:7px;width:30px;height:30px;font-size:16px}.send-foot{z-index:2;border-top:1px solid var(--line);background:linear-gradient(#0f1823eb,#0f1823 30%);gap:6px;margin:4px -16px -18px;padding:10px 16px 14px;display:grid;position:sticky;bottom:-18px}.send-foot .blocker{margin:0}.amount-picker{grid-template-columns:44px minmax(0,1fr) 44px auto;align-items:stretch;gap:6px;display:grid}.amount-picker .btn{min-height:40px;padding:0 10px;font-size:18px;line-height:1}.amount-picker .btn.all{min-width:54px;font-size:13px}.amount-picker .num-input{text-align:center;min-width:0}.gift-section{border:1px solid var(--line);border-radius:9px;min-height:max-content}.gift-toggle{width:100%;color:var(--text);font:700 13.5px var(--font);cursor:pointer;background:#ffffff0a;border:0;border-radius:9px;justify-content:space-between;padding:8px 10px;display:flex}.gift-section .gift-list{padding:6px}.raid-ico.gift{background:#5fd3a82e}.rally-row{border-color:#ffb03a80!important}.rally-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.timer-chip.march.reinforce i{background:#6fb3ff}.timer-chip.march.rally i{background:#ffb03a}.op-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.op-head h3{margin:0;font-size:18px}.op-points b{font-size:24px}.op-how{color:var(--muted);gap:3px;margin:0;padding-left:18px;font-size:13px;display:grid}.help-list li.op-ready{border-color:var(--ok)}.help-list li.op-done{opacity:.6}.board-pick{flex-wrap:wrap;gap:5px;display:flex}.board-pick .chip{cursor:pointer}.board{gap:6px;margin:0;padding:0;list-style:none;display:grid}.board li{border:1px solid var(--line);background:#00000040;border-radius:9px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 10px;display:grid}.board li.you{border-color:var(--accent)}.board .rank{color:var(--gold);font-weight:900}.spire-chip{border-color:var(--cyan)!important}.wlabel.spire.held{border-color:var(--accent)}.seg button .tab-badge{background:var(--accent);color:#fff;border-radius:8px;min-width:16px;margin-left:5px;padding:0 4px;font-size:10px;line-height:16px;display:inline-block}.order-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.order-list li,.order-bonus{border:1px solid var(--line);background:#00000040;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:max-content;padding:8px 10px;display:grid}.order-list li.ready{border-color:var(--ok);background:#5fd38e14}.order-list li.claimed{opacity:.6}.order-list li.bonus,.order-bonus{background:#ffc65a0f;border-color:#ffc65a8c}.order-list li.bonus{margin-top:6px}.order-list li.bonus.ready,.order-bonus.ready{border-color:var(--ok);background:#5fd38e14}.order-main{gap:4px;min-width:0;display:grid}.contract-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.contract-card{border:1px solid var(--line);background:#00000040;border-radius:10px;gap:7px;padding:10px;display:grid}.contract-card.ready{border-color:var(--ok)}.contract-card.done{border-color:#5fd38e73}.contract-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.contract-bar{position:relative}.contract-mark{background:#ffffff59;border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:-2px;bottom:-2px}.contract-mark.hit{background:var(--ok)}.contract-shares{flex-wrap:wrap;gap:4px 12px;display:flex}.contract-shares .you{color:var(--accent-hi)}.contract-tiers{gap:5px;margin:0;padding:0;list-style:none;display:grid}.contract-tiers li{border:1px solid var(--line);background:#ffffff08;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;display:grid}.contract-tiers li.ready{border-color:var(--ok);background:#5fd38e14}.contract-tiers li.claimed{opacity:.6}.chip.mk5-chip{color:#ffb347;background:#ffb34724}.contract-tiers .daily-check{padding:0 8px;font-size:18px;position:static}.order-title{font-size:14px;font-weight:800}.order-sub{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.order-list .daily-check,.order-bonus .daily-check{padding:0 8px;font-size:18px;position:static}.chip.merit{color:#ffd27a;background:#ffd27a26}.rank-head{align-items:center;gap:12px;margin:4px 0 8px;display:flex}.rank-name{font-size:18px;font-weight:900}.rank-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rank-list li{border:1px solid var(--line);background:#0003;border-radius:9px;gap:4px;min-height:max-content;padding:7px 10px;display:grid}.rank-list li.you{border-color:var(--accent);background:#f07a3a1a}.rank-list li.past{opacity:.7}.rank-row{align-items:center;gap:8px;display:flex}.rank-row .num{margin-left:auto}.rank-tag{cursor:pointer;background:0 0;border:0;flex:none;padding:0;display:inline-flex}.rank-badge{filter:drop-shadow(0 1px 2px #0009);display:block}.install{justify-items:start;gap:12px;padding-bottom:6px;display:grid}.install p{margin:0;line-height:1.45}.install-icon{border-radius:16px;justify-self:center;box-shadow:0 6px 20px #00000073}.install-callout{border:1px solid var(--line-hi);background:#f07a3a14;border-radius:10px;gap:8px;width:100%;padding:12px;display:grid}.install-callout code{color:var(--text);word-break:break-all;font-size:12.5px}.install .btn.wide{text-align:center;color:#fff;box-sizing:border-box;text-decoration:none}.install-steps{gap:8px;margin:0;padding-left:22px;line-height:1.45;display:grid}.share-glyph{vertical-align:-3px;color:var(--cyan)}.offline-card{text-align:center;justify-items:center;gap:12px}.offline-card h2{letter-spacing:.08em;color:var(--accent);font-size:18px}.offline-card p{color:var(--muted);line-height:1.45}.gfx-setting{gap:6px;width:100%;display:grid}.gfx-setting .seg{flex-wrap:wrap;display:flex}.gfx-setting .seg button{flex:auto}.gfx-setting p{margin:0;font-size:12px}.snd-row{grid-template-columns:36px 62px 1fr 30px;align-items:center;gap:8px;display:grid}.snd-mute{border:1px solid var(--line);background:var(--panel-lo);cursor:pointer;border-radius:8px;width:36px;height:32px;padding:0;font-size:16px}.snd-mute.off{opacity:.6}.snd-label{font-size:13px;font-weight:700}.snd-val{text-align:right;color:var(--muted);font-size:12px}.snd-row input[type=range]{width:100%;min-width:0;accent-color:var(--accent);height:28px}.unit-portrait{background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--uc) 34%, #1d2b3b) 0%, #0c141d 78%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--uc) 55%, transparent), inset 0 -10px 18px #00000073;border-radius:22%;flex:none;display:inline-block;position:relative;overflow:hidden}.unit-portrait img{object-fit:cover;filter:drop-shadow(0 2px 2px #0009);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.12)}.unit-portrait b{text-align:center;border:1px solid var(--uc);color:#fff;min-width:1.3em;line-height:1.35;font-family:var(--mono);background:#080e16d9;border-radius:4px;padding:0 3px;font-weight:900;position:absolute;top:2px;right:2px}:root:is([data-device=tablet],[data-device=desktop]) .phone{width:100%;max-width:none;height:100%;box-shadow:none;border-radius:0}:root:is([data-device=tablet],[data-device=desktop]) :is(.hud-top,.hud-left,.hud-right,.hud-bottom,.sheet-layer,.toasts,.move-banner,.minimap,.tut-panel){zoom:var(--ui-zoom,1)}:root:is([data-device=tablet],[data-device=desktop]) .res-bar{max-width:600px}:root:is([data-device=tablet],[data-device=desktop]) :is(.chat-strip,.raid-banner){max-width:560px}:root:is([data-device=tablet],[data-device=desktop]) .bottom-menu{justify-content:center}:root:is([data-device=tablet],[data-device=desktop]) .menu-btn{flex:0 108px}:root:is([data-device=tablet],[data-device=desktop]) .sheet-layer{justify-items:center}:root:is([data-device=tablet],[data-device=desktop]) .sheet{width:min(100%,680px)}:root[data-device=desktop] .sheet-layer{align-items:center}:root[data-device=desktop] .sheet{border:1px solid var(--line-hi);border-radius:16px;padding-bottom:0;box-shadow:0 24px 70px #000000a6}.tut-layer{z-index:36;pointer-events:none;position:absolute;inset:0}.tut-layer.modal{pointer-events:auto;background:#02060a9e}.tut-ring{box-sizing:border-box;border:3px solid #ffd27a;animation:1.1s ease-in-out infinite tut-pulse;display:none;position:absolute;top:0;left:0;box-shadow:0 0 0 4px #ffd27a40,0 0 22px #ffbe50b3}@keyframes tut-pulse{50%{box-shadow:0 0 0 9px #ffd27a14,0 0 30px #ffbe50e6}}.tut-hand{filter:drop-shadow(0 2px 4px #000c);width:44px;height:44px;display:none;position:absolute;top:0;left:0}.tut-hand svg{animation:.8s ease-in-out infinite alternate tut-bob;display:block;transform:rotate(180deg)}.tut-hand.up svg{transform:none}@keyframes tut-bob{to{translate:0 7px}}.tut-hand.up svg{animation-name:tut-bob-up}@keyframes tut-bob-up{to{translate:0 -7px}}.tut-panel{pointer-events:auto;background:linear-gradient(#1b3046,#0f1b29);border:1px solid #5fe1ff66;border-radius:12px;width:min(92%,400px);padding:10px 12px 12px;position:absolute;left:50%;translate:-50%;box-shadow:0 0 0 1px #0009,0 12px 34px #0009,inset 0 1px #ffffff0f}.tut-panel.bottom{bottom:calc(var(--sab,0px) + 150px)}.tut-panel.top{top:calc(var(--hud-top,0px) + 96px)}.tut-panel.center{top:50%;translate:-50% -50%}.tut-head{align-items:center;gap:9px;display:flex}.tut-vega{filter:drop-shadow(0 0 6px #5fe1ff80);flex:none}.tut-who{text-align:left;line-height:1.15;display:grid}.tut-who b{letter-spacing:.12em;color:#7ff0ff;font-size:13px}.tut-who span{color:var(--muted);font-size:10.5px}.tut-skip{color:var(--muted);cursor:pointer;background:0 0;border:0;align-self:start;margin-left:auto;padding:2px 0 2px 6px;font-size:11.5px;text-decoration:underline}.tut-title{margin:8px 0 0;font-size:17px}.tut-text{margin:7px 0 0;font-size:13.5px;line-height:1.42}.tut-reward{color:var(--gold);margin:8px 0 0;font-size:12.5px;font-weight:700}.tut-reward.collected{color:var(--muted);font-weight:600}.tut-actions{justify-content:flex-end;gap:8px;margin-top:9px;display:flex}.tut-actions:empty{display:none}.tut-panel.center .tut-actions .btn.primary{flex:1;padding:10px;font-size:15px}.phone.tutoring .toasts{top:46%}.settings-list{gap:8px;display:grid}.changelog{gap:8px;margin:0;padding:0;list-style:none;display:grid}.changelog .sub-h{margin:6px 0 2px}.cl-entry{border:1px solid var(--line);background:#00000040;border-radius:10px;padding:10px 12px}.cl-entry.new{border-color:var(--accent)}.cl-title{flex-wrap:wrap;align-items:center;gap:6px;font-weight:800;display:flex}.cl-entry ul{color:var(--text);gap:4px;margin:6px 0 0;padding-left:18px;font-size:13.5px;display:grid}.rally-members{grid-column:1/-1;gap:6px;display:grid}.rally-member{border-top:1px solid var(--line);gap:4px;padding-top:6px;display:grid}.battle-hud{z-index:4;pointer-events:none;padding-top:calc(var(--sat,0px) + 232px);font-family:var(--font);align-content:start;justify-items:center;transition:opacity .35s;display:grid;position:absolute;inset:0}.battle-hud.out{opacity:0}.battle-top{color:#ffe1dc;text-align:center;background:#140604c7;border:1.5px solid #ff4d3abf;border-radius:12px;justify-items:center;gap:3px;max-width:min(400px,100% - 176px);padding:7px 12px 8px;animation:.5s ease-out battle-in;display:grid;box-shadow:0 0 22px #ff3c2873}.battle-title{letter-spacing:.02em;font-size:14.5px;font-weight:900;line-height:1.2}.battle-sub{opacity:.8;font-size:12px}.battle-counts{flex-wrap:wrap;justify-content:center;gap:2px 10px;font-size:12px;font-weight:700;display:flex}.battle-counts .bc{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.battle-counts .bc i{border-radius:50%;width:9px;height:9px}.battle-counts .bc b{font-variant-numeric:tabular-nums;min-width:3ch}.battle-counts .raider i{background:#ff4d3a}.battle-counts .you i{background:#5fd8ff}.battle-counts .ally i{background:#7dffb0}.battle-counts .other i{background:#ffbe4d}.battle-skip{pointer-events:auto;color:#fff;font:700 12.5px var(--font);cursor:pointer;background:#0000008c;border:1px solid #ffffff59;border-radius:16px;margin-top:8px;padding:5px 14px}.battle-result{font:900 34px var(--font);letter-spacing:.12em;border-radius:14px;justify-items:center;gap:2px;margin-top:26px;padding:10px 26px 12px;animation:.55s cubic-bezier(.2,1.6,.4,1) battle-pop;display:grid}.battle-result small{letter-spacing:.02em;opacity:.9;font-size:13px;font-weight:700}.battle-result.win{color:#fff6d6;text-shadow:0 0 14px #ffc83ce6;background:#281e04d1;border:2px solid #ffc94a;box-shadow:0 0 30px #ffc83c99}.battle-result.loss{color:#ffe1dc;text-shadow:0 0 14px #ff3c28e6;background:#320604d9;border:2px solid #ff4d3a;box-shadow:0 0 30px #ff3c2899}@keyframes battle-in{0%{opacity:0;transform:translateY(-10px)}}@keyframes battle-pop{0%{opacity:0;transform:scale(.5)}}.watch-btn{margin:6px 0 2px}.chat-battle{background:#3c0a068c;border:1px solid #ff4d3a80;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding:5px 6px 5px 10px;display:flex}.chat-battle.win{background:#3224068c;border-color:#ffc94a8c}.share-row{flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 6px;display:flex}.confirm-layer{z-index:80;background:#02060a9e;place-items:center;padding:16px;animation:.15s ease-out confirm-in;display:grid;position:absolute;inset:0}@keyframes confirm-in{0%{opacity:0}}.confirm-box{background:linear-gradient(#1b2a3d,#0f1823);border:1px solid #ffb347;border-radius:16px;flex-direction:column;gap:10px;width:min(360px,100%);padding:18px 18px 14px;display:flex;box-shadow:0 12px 40px #0009}.confirm-title{color:#ffd27a;font-size:17px;font-weight:800}.confirm-box p{margin:0;line-height:1.4}.nlabel[data-kind=robot]{color:#ffb3aa;border-color:#ff5a4a}.wlabel.boss{border-color:#ff3b30;min-width:104px;box-shadow:0 0 10px #ff3b3059}.wlabel.boss b{color:#ffb4aa}.wlabel.boss .hp,.boss-hp .hp{background:#ffffff1f;border-radius:3px;height:5px;margin-top:3px;display:block;overflow:hidden}.wlabel.boss .hp>i,.boss-hp .hp>i{background:linear-gradient(90deg,#ff3b30,#ff8a50);height:100%;display:block}.wlabel.behemoth{background:#281006d9;border-color:#ff7a1a;min-width:150px;box-shadow:0 0 16px #ff7a1a8c}.wlabel.behemoth b{color:#ffc27a;font-size:13px}.wlabel.behemoth .hp>i{background:linear-gradient(90deg,#ff4a10,#ffc24a)}.mm-boss.mm-behemoth{background:#3a1606;border-color:#ff7a1a;width:15px;height:15px;box-shadow:0 0 9px #ff7a1af2}.mm-boss.mm-behemoth b{color:#ffc27a}.boss-hp{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:6px 0;display:grid}.boss-hp .hp{height:9px;margin:0}.boss-hp .num{color:#ffb4aa;font-size:12px}.mm-boss{pointer-events:none;background:#2a0d0b;border:2px solid #ff3b30;border-radius:50%;width:11px;height:11px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 6px #ff3b30cc}.mm-boss b{white-space:nowrap;color:#ffb4aa;text-shadow:0 1px 3px #000;font-size:10.5px;position:absolute;top:-16px;left:50%;transform:translate(-50%)}.energy-row{background:#ffd25a12;border:1px solid #ffd25a40;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;padding:6px 10px;display:flex}.energy-row.short{border-color:var(--bad);background:#ff6b6b14}.energy-row .num{font-size:12.5px;font-weight:700}.energy-row .btn{margin-left:auto}.energy-bolt,.energy-ico{color:#ffd25a;font-size:15px}.energy-ico{text-align:center;width:40px;font-size:24px}.energy-bar{background:#ffffff1a;border-radius:4px;flex:60px;min-width:60px;height:7px;overflow:hidden}.energy-bar>i{background:linear-gradient(90deg,#ffb340,#ffe27a);height:100%;display:block}.nlabel[data-kind=terminator]{color:#e6c2ff;border-color:#c040ff}.nlabel[data-kind=convoy]{color:#ffe2a8;border-color:#ffb020}.timer-chip .march-res{filter:drop-shadow(0 1px 1px #000000b3);place-items:center;margin-left:-5px;margin-right:1px;display:inline-grid}.wlabel .wl-guards{color:#e0b8ff;font-size:10px}.wlabel .wl-guards:empty{display:none}.wlabel .wl-guards.clear{color:#7dffb0}.chat-strike{background:#ff8c321a;border:1px solid #ff8c3273;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding:6px 8px;display:flex}.chat-strike.done{color:var(--muted);background:#ffffff0a;border-color:#ffffff1f}.chat-strike .btn,.chat-strike .pill{flex:none}.chat-row.strike .chat-tag{color:#ff9a4a}.chat-row.strike .chat-line b{color:#ffc89a}.update-banner{border:1px solid var(--cyan);color:#d8f6ff;text-align:center;pointer-events:auto;background:#081e28eb;border-radius:10px;width:100%;margin-bottom:6px;padding:8px 12px;font-size:13px;display:block}.update-banner b{color:var(--cyan)}.report-text{flex:1;min-width:0;display:grid}.report-sum{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.outcome{border:1px solid var(--line,#ffffff1a);background:#ffffff0a;border-radius:10px;gap:6px;padding:8px 10px;display:grid}.outcome-row{grid-template-columns:58px minmax(0,1fr);align-items:start;gap:6px;display:grid}.outcome-label{font:800 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:4px}.outcome-row.lost .outcome-label{color:var(--bad)}.outcome-row.gained .outcome-label{color:var(--ok)}.chip.bad-chip{color:var(--bad);border-color:#ff6b6b73}.chat-battle-btns{flex:none;gap:6px;display:inline-flex}.gear-doll{aspect-ratio:300/320;width:100%;max-width:380px;margin:0 auto;position:relative}.doll-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.doll-fig{pointer-events:none;height:100%;position:absolute;top:0}.doll-fig img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.cmdr-bust{background:radial-gradient(circle at 50% 35%,#2f455c,#0c131b 75%);border-radius:50%;flex:none;display:inline-block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #e8742c,0 0 0 1px #0009}.cmdr-bust>span{display:block;position:absolute}.cmdr-bust img{width:100%;height:100%;position:absolute;inset:0}.cmdr-bust:after{content:"";border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #e8742c}.doll-slots{margin:0;padding:0;list-style:none}.doll-slots li{width:76px;color:var(--muted);justify-items:center;gap:2px;display:grid;position:absolute;transform:translate(-50%,-24px)}.doll-slots li>.small{text-align:center;white-space:nowrap;font-size:11px}.gear-doll.glow .doll-fig{filter:drop-shadow(0 0 4px var(--glow)) drop-shadow(0 0 10px var(--glow));animation:2.4s ease-in-out infinite doll-glow}@keyframes doll-glow{50%{filter:drop-shadow(0 0 2px var(--glow)) drop-shadow(0 0 5px var(--glow))}}@media (prefers-reduced-motion:reduce){.gear-doll.glow .doll-fig{animation:none}}.combine-set{gap:6px;display:grid}.craft-list li.dim .craft-head{opacity:.7}.made-gems{flex-wrap:wrap;gap:4px;display:flex}.combine-all.locked{opacity:.85;border-style:dashed}.sp-btn{justify-content:center;align-items:center;gap:8px;margin:10px 0 4px;display:flex}.fab-guide{background:#5fe1ff12;border:1px solid #5fe1ff59;border-radius:10px;gap:6px;margin-bottom:8px;padding:10px 12px;display:grid}.fab-guide .set-head{justify-content:space-between;align-items:center;display:flex}.fab-guide .icon-btn{font-size:22px}.fab-guide ol{gap:6px;margin:0;padding-left:20px;font-size:12.5px;line-height:1.4;display:grid}.fab-guide>.btn{justify-self:start}.fab-guide-link{color:var(--cyan);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0 0 8px;font-size:12.5px;font-weight:700}.materials-btn{border:1px solid var(--line);cursor:pointer;width:100%;color:inherit;font:inherit;text-align:left;background:#00000040;border-radius:8px;padding:5px 7px}.materials-btn.on{border-color:var(--line-hi)}.mat-label{margin-right:2px}.mat-legend{border:1px solid var(--line);background:#00000059;border-radius:8px;gap:5px;margin:4px 0 8px;padding:8px 10px;font-size:12.5px;list-style:none;display:grid}.mat-legend li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.materials-btn{flex-wrap:nowrap;gap:9px;overflow:hidden}.materials-btn .chip{background:0 0;border:0;gap:3px;padding:0}.set-tabs.two-line button{gap:0;padding:4px 2px;line-height:1.15;display:grid}.set-tabs.two-line button small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:600;overflow:hidden}.gear-tabs.labelled button{gap:1px;padding:4px 0 3px}.gear-tabs.labelled button small{font-size:9.5px;font-weight:700;line-height:1}.mode-hint{margin:2px 0 8px}.craft-list li.compact-locked{opacity:.75;padding:8px 10px}.craft-list li.compact-locked .craft-head{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;display:grid}.craft-list li.locked-more{text-align:center;background:0 0;border-style:dashed;padding:8px}.need-box{background:#ff6b6b14;border:1px solid #ff6b6b59;border-radius:8px;padding:7px 9px;line-height:1.45}.owned-line{color:var(--ok)}.link-btn{color:var(--cyan);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-weight:700}.grade-tabs button{white-space:nowrap;padding:5px 2px}.grade-tabs button.locked{opacity:.6}.grade-tabs button small{vertical-align:1px;margin-left:2px;font-size:9px}.team-section{margin:10px 0}.team-card{border:1px solid var(--line,#ffffff1f);background:#ffffff08;border-radius:10px;margin:6px 0;padding:8px 10px}.team-card.you{background:#ff9a500f;border-color:#ff9a5099}.team-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.team-head .team-share{color:#ffd27a;margin-left:auto;font-size:12px;font-weight:600}.team-card .report-table{margin:4px 0}.team-card p{margin:2px 0}.march-card.focus{border-color:#ffd27abf;box-shadow:0 0 0 1px #ffd27a59,0 0 14px #ffd27a2e}.mm-turn{transform-origin:50%;position:absolute;inset:0}.mm-turn b{transform:translateX(-50%) rotate(var(--mm-unturn,0deg))!important}.mm-turn .mm-warlord b{transform:translateX(-50%) rotate(calc(var(--mm-unturn,0deg) - 45deg))!important}.btn{letter-spacing:.02em;background:linear-gradient(#2f4762 0%,#1e3046 48%,#172536 52%,#1a2a3d 100%);border-radius:4px;box-shadow:inset 0 1px #a0dcff38,inset 0 -1px #00000059,0 0 0 1px #00000059}.btn:hover:not(:disabled){box-shadow:inset 0 1px #a0dcff4d,0 0 10px #5fe1ff40,0 0 0 1px #00000059}.btn.primary{background:linear-gradient(#ffad70 0%,#f08338 48%,#d9621f 52%,#c2541a 100%);box-shadow:inset 0 1px #fff0dc73,0 0 10px #f07a3a47,0 0 0 1px #00000059}.btn.speed{background:linear-gradient(#6db4ff 0%,#3b82e0 48%,#2a66c9 52%,#2459b4 100%);box-shadow:inset 0 1px #e6f4ff73,0 0 10px #5aa8ff47,0 0 0 1px #00000059}.btn.free{background:linear-gradient(#84ebb0 0%,#48bd7b 48%,#2f9a5c 52%,#288652 100%);box-shadow:inset 0 1px #ebfff480,0 0 10px #5fd38e47,0 0 0 1px #00000059}.btn.danger{background:linear-gradient(#b84646 0%,#8a2c2c 48%,#6e1f1f 52%,#631b1b 100%)}.btn.ghost{background:linear-gradient(#78b4e61a,#78b4e608)}.btn.buy.res{background:linear-gradient(#ffad70 0%,#f08338 48%,#d9621f 52%,#c2541a 100%)}.btn.buy.cores{background:linear-gradient(#56c6f0 0%,#2f95c4 48%,#1f6f9c 52%,#1b628a 100%)}.sheet{background:repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 3px),linear-gradient(#1b2a3d,#0f1823 40%);border-top:1px solid #5fe1ff8c;border-radius:6px 6px 0 0;box-shadow:0 -12px 40px #0000008c,0 -1px 14px #5fe1ff38,inset 0 1px #a0dcff29}.sheet-head h2{letter-spacing:.04em;text-transform:uppercase;border-left:3px solid var(--cyan);padding-left:10px;font-size:16px}.chip{border-radius:4px}.pill{border-radius:2px}.gear-picker,.armory-box{border-color:#5fe1ff38;border-radius:4px}.wiki-loading{z-index:70;color:var(--muted);background:#0b1118;place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.gear-boosts,.base-stats{gap:6px;display:grid}.base-stats{gap:8px}.gear-boosts .fx th:not(:first-child),.gear-boosts .fx td.num,.base-stats .fx th:not(:first-child),.base-stats .fx td.num{white-space:nowrap;padding-left:8px}.base-stats .fx td:first-child{white-space:nowrap}.stats-res td.warn-text{color:var(--warn)}.stat-list{gap:0;margin:0;display:grid}.stat-list div{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;padding:6px 0;font-size:13px;display:flex}.stat-list dt{color:var(--muted)}.stat-list dd{margin:0;font-weight:700}.boost-list{margin:0;padding:0;list-style:none}.boost-list li{border-bottom:1px solid var(--line);padding:6px 0}.boost-head{justify-content:space-between;gap:8px;font-size:13px;display:flex}.boost-parts{margin:2px 0 0;padding:0 0 0 10px;list-style:none}.boost-list .boost-parts li{border:0;justify-content:space-between;gap:8px;padding:1px 0;display:flex}.alerts-sheet{gap:10px;padding-bottom:8px;display:grid}.alerts-sheet>p{margin:0}.alert-device{border:1px solid var(--line-hi);background:#5fe1ff0f;border-radius:10px;gap:8px;padding:12px;display:grid}.alert-device.on{background:#5fd38e14;border-color:#5fd38e99}.alert-device.blocked{background:#ff6b6b12;border-color:#ff6b6b80}.alert-device p{margin:0;line-height:1.45}.alert-device .install-steps{padding-left:20px}.alert-device-actions{flex-wrap:wrap;gap:8px;display:flex}.alert-device-actions .btn{flex:auto}.alert-group{display:grid}.alert-group h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:8px 0 2px;font-size:12px}.alert-row{border:0;border-top:1px solid var(--line);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:9px 2px;display:flex}.alert-txt{flex:1;gap:2px;min-width:0;display:grid}.alert-txt b{font-size:14px}.alert-txt .small{font-size:12px;line-height:1.35}.switch{background:var(--panel-lo);border:1px solid var(--line-hi);border-radius:13px;flex:none;width:44px;height:26px;transition:background .15s;position:relative}.switch>span{background:var(--muted);border-radius:50%;width:20px;height:20px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.switch.on{border-color:var(--ok);background:#5fd38e59}.switch.on>span{background:var(--ok);transform:translate(18px)}.tut-alerts{text-align:left;gap:8px;margin-top:8px;display:grid}.tut-alerts .alert-device{padding:10px}.tut-alerts .install-steps{font-size:13px}.tut-panel.center{max-height:calc(100% - 24px);overflow-y:auto}.wiki-failed{text-align:center;justify-items:center;gap:10px;max-width:320px;padding:16px;display:grid}.wiki-failed p{margin:0}.pill.clearance{color:var(--muted);white-space:nowrap;background:#ffffff14}.pill.clearance.c2{color:#9cc8ff;background:#6fb3ff29}.pill.clearance.c3{color:var(--cyan);background:#5fe1ff2e}.pill.clearance.c4{color:var(--gold);background:#ffb03a33}.pill.clearance.c5{color:var(--accent-hi);background:#f07a3a47}.clearance-pick{align-items:center;gap:5px;display:inline-flex}.clearance-pick select{color:inherit;border:1px solid var(--line);font:inherit;background:#0006;border-radius:6px;padding:4px 6px;font-size:12px}.clearance-key{border:1px solid var(--line);background:#0003;border-radius:9px;margin:8px 0;padding:6px 10px}.clearance-key summary{cursor:pointer;color:var(--muted);font-size:12px}.clearance-key ul{gap:6px;margin:8px 0 4px;padding:0;list-style:none;display:grid}.join-push-list{gap:6px;margin:4px 0 10px;padding:0;font-size:14px;list-style:none;display:grid}
