.champion-picture .cp-img{transform-box:fill-box;transform-origin:50% 30%;animation:8s ease-in-out infinite cp-breathe}.champion-picture .cp-glow{mix-blend-mode:screen;animation:3.7s ease-in-out infinite cp-flicker}.champion-picture .cp-flash{mix-blend-mode:screen;opacity:0;animation:7.3s linear infinite cp-flash}.champion-picture .cp-shine{animation:9s ease-in-out infinite cp-shine}.champion-picture .cp-spark{opacity:0;animation:5s linear infinite cp-spark}@keyframes cp-breathe{to{opacity:.75;transform:scale(1.06)}}@keyframes cp-flicker{0%,to{opacity:.4}20%{opacity:.7}35%{opacity:.45}55%{opacity:.85}70%{opacity:.5}}@keyframes cp-flash{0%,88%,to{opacity:0}89%{opacity:.32}90.5%{opacity:.04}92%{opacity:.22}95%{opacity:0}}@keyframes cp-shine{0%,70%{transform:translate(0)}to{transform:translate(160px)}}@keyframes cp-spark{0%{opacity:0;transform:scale(1)}15%{opacity:1}to{opacity:0;transform:scale(.12)}}@media (prefers-reduced-motion:reduce){.champion-picture *{animation:none!important}}.champion-portrait.still,.champion-portrait.still *{animation:none!important}.champion-picture.still .cp-glow{opacity:.5}.name-plate .np-back{fill:#080c18db;stroke:var(--np-accent);stroke-width:1.5px;stroke-opacity:.6;transition:stroke-opacity .2s,stroke-width .2s}.name-plate .np-name{fill:var(--np-accent);text-transform:uppercase;font-family:system-ui,sans-serif;font-weight:700}.name-plate.np-mixed .np-name{text-transform:none}.name-plate .np-level rect{fill:#ffffff14;stroke:var(--np-accent);stroke-width:1.2px;stroke-opacity:.7}.name-plate .np-level text{fill:#fff;text-anchor:middle;font-family:system-ui,sans-serif;font-weight:700}:is(.diorama-building,.fleet-ship):hover .name-plate .np-back{stroke-opacity:1}:is(.diorama-building,.fleet-ship).selected .name-plate .np-back,.name-plate.selected .np-back{stroke-opacity:1;stroke-width:3px}.name-plate.upgrading .np-level rect{stroke:#ffc65a;stroke-opacity:1}.name-plate.upgrading .np-level text{fill:#ffd98a}.name-plate.researching .np-level rect{stroke:#c9a8ff;stroke-opacity:1}.name-plate.dim .np-name{fill-opacity:.55}.name-plate.dim .np-back{stroke-opacity:.3}.name-plate.dim .np-level text{fill:#9aa3b8}.defense-scene{width:min(100%, calc((100vh - var(--alert-h,0px) - 475px) * 1600 / 700));min-width:min(100%,560px);margin:0 auto;position:relative}.res-defense.unit-page-scene .unit-scene-below{width:min(100%, max(560px, calc((100vh - var(--alert-h,0px) - 475px) * 1600 / 700)));flex-wrap:nowrap;justify-content:flex-start;margin-inline:auto}.res-defense.unit-page-scene .unit-scene-below>.unit-detail{flex:0 640px}.res-defense.unit-page-scene .unit-scene-side{flex:0 300px;min-width:220px;margin-left:auto}.res-defense.unit-page-scene .unit-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}.res-defense.unit-page-scene .unit-summary>.unit-value,.res-defense.unit-page-scene .unit-summary>.unit-slot{grid-column:1/-1}@media (width<=900px){.res-defense.unit-page-scene .unit-scene-below{flex-wrap:wrap}}.res-defense.unit-page-scene .unit-detail .building-art{display:none}.res-defense.unit-page-scene .unit-detail .card{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-content:start;gap:0 18px;display:grid}.res-defense.unit-page-scene .unit-detail .card>*{grid-column:1;margin-top:0;margin-bottom:7px}.res-defense.unit-page-scene .unit-detail .card>:last-child{margin-bottom:0}.res-defense.unit-page-scene .unit-detail .card>.unit-research{border-top:none;border-left:1px solid var(--panel-border);grid-area:1/2/span 12;align-self:start;padding-top:0;padding-left:16px}@media (width<=900px){.res-defense.unit-page-scene .unit-detail .card{display:flex}.res-defense.unit-page-scene .unit-detail .card>.unit-research{border-left:none;padding-left:0}}.defense-scene-svg{border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;height:auto;display:block}.diorama-building.ds-locked>g:first-child{filter:grayscale()brightness(.55);opacity:.75}.diorama-building.ds-locked:hover>g:first-child{filter:grayscale()brightness(.8)drop-shadow(0 0 6px #c8d2e680)}.diorama-building.ds-locked.selected>g:first-child{filter:grayscale(.6)brightness(.9)drop-shadow(0 0 10px #7fe6ffe6);opacity:1}.diorama-building.ds-researching>g:first-child{animation:1.8s ease-in-out infinite ds-research}@keyframes ds-research{50%{filter:brightness(1.3)drop-shadow(0 0 10px #c9a8ffe6)}}.ds-yaw{transform-origin:100px 80px;animation:12s ease-in-out infinite ds-yaw}@keyframes ds-yaw{0%,30%{transform:scaleX(1)}40%,75%{transform:scaleX(-1)}85%,to{transform:scaleX(1)}}.ds-bolt,.ds-lob,.ds-flash,.ds-ring,.ds-beam,.ds-zap{opacity:0;animation-duration:12s;animation-timing-function:linear;animation-iteration-count:infinite}.ds-bolt{animation-name:ds-bolt}.ds-lob{animation-name:ds-lob}.ds-flash{transform-box:fill-box;transform-origin:50%;animation-name:ds-flash}.ds-ring{transform-box:fill-box;transform-origin:50%;animation-name:ds-ring}.ds-beam{animation-name:ds-beam}.ds-zap{animation-name:ds-zap}@keyframes ds-bolt{0%,17.9%{opacity:0;transform:translate(0)}18%{opacity:1;transform:translate(0)}21%{opacity:1}22%{opacity:.7;transform:translate(var(--shot-x1,130px), var(--shot-y1,0px))}22.1%,57.9%{opacity:0;transform:translate(0)}58%{opacity:1;transform:translate(0)}61%{opacity:1}62%{opacity:.7;transform:translate(var(--shot-x2,130px), var(--shot-y2,0px))}62.1%,to{opacity:0;transform:translate(0)}}@keyframes ds-lob{0%,17.9%{opacity:0;transform:translate(0)}18%{opacity:1;transform:translate(0)}23%{opacity:1}24%{opacity:.7;transform:translate(var(--shot-x1,50px), var(--shot-y1,-110px))}24.1%,57.9%{opacity:0;transform:translate(0)}58%{opacity:1;transform:translate(0)}63%{opacity:1}64%{opacity:.7;transform:translate(var(--shot-x2,50px), var(--shot-y2,-110px))}64.1%,to{opacity:0;transform:translate(0)}}.ds-hit-hex,.ds-hit-ring,.ds-hit-flash{opacity:0;animation-duration:12s;animation-timing-function:ease-out;animation-iteration-count:infinite}.ds-hit-hex{animation-name:ds-hit-hex}.ds-hit-ring{animation-name:ds-hit-ring}.ds-hit-flash{animation-name:ds-hit-flash}@keyframes ds-hit-hex{0%{opacity:0;transform:scale(.5)}.5%{opacity:1;transform:scale(.85)}8%,to{opacity:0;transform:scale(1.25)}}@keyframes ds-hit-ring{0%{opacity:.95;transform:scale(.2)}6%,to{opacity:0;transform:scale(2.4)}}@keyframes ds-hit-flash{0%{opacity:1;transform:scale(.4)}1.5%{opacity:.9;transform:scale(1.5)}3.5%,to{opacity:0;transform:scale(2)}}@keyframes ds-flash{0%,17.5%,21%,57.5%,61%,to{opacity:0;transform:scale(.4)}18.5%,58.5%{opacity:.95;transform:scale(1.5)}}@keyframes ds-ring{0%,17.9%,58%,to{opacity:0;transform:scale(.3)}18%{opacity:.9;transform:scale(.3)}26%{opacity:0;transform:scale(4.5)}}@keyframes ds-beam{0%,17.9%,24%,to{opacity:0}18.5%{opacity:.85}21%{opacity:.6}}@keyframes ds-zap{0%,17.9%,19.5%,20.5%,22.5%,57.9%,59.5%,60.5%,62.5%,to{opacity:0}18%,19.4%,20.6%,22.4%,58%,59.4%,60.6%,62.4%{opacity:1}}.ds-packet{opacity:0;animation:3s linear infinite ds-packet}@keyframes ds-packet{0%{opacity:0;transform:translateY(0)}10%{opacity:.9}90%{opacity:.6}to{opacity:0;transform:translateY(-345px)}}.ds-sheen{animation:9s ease-in-out infinite ds-sheen}@keyframes ds-sheen{0%{transform:skew(-20deg)translate(0)}60%,to{transform:skew(-20deg)translate(2600px)}}.ds-hex{animation:5s ease-in-out infinite alternate ds-hex}@keyframes ds-hex{to{opacity:.04}}.ds-outer{animation:3s linear infinite diorama-flow}.gallery-surface .defense-scene{width:100%;min-width:0}@media (prefers-reduced-motion:reduce){.ds-yaw,.ds-bolt,.ds-lob,.ds-flash,.ds-ring,.ds-beam,.ds-zap,.ds-hit-hex,.ds-hit-ring,.ds-hit-flash,.ds-packet,.ds-sheen,.ds-hex,.ds-outer,.diorama-building.ds-researching>g:first-child{animation:none}}.ship-blueprint *{fill:none;stroke:var(--bp);stroke-width:var(--bp-w,.35);stroke-dasharray:none;opacity:1;animation:none}.ship-blueprint :is(path,rect,circle,ellipse,line){opacity:.8}.ship-blueprint .bp-hull{fill:var(--bp);fill-opacity:.08;stroke-width:calc(var(--bp-w,.35) * 2.2);stroke-dasharray:2.4 1.4;opacity:1}.space-drift{animation:linear infinite space-drift}@keyframes space-drift{to{transform:translateX(var(--space-w))}}.space-spin{animation:420s linear infinite space-drift}.space-nebula{animation:18s ease-in-out infinite alternate space-nebula}@keyframes space-nebula{to{opacity:.6}}.space-atmo{animation:7s ease-in-out infinite alternate space-nebula}.unit-page-scene.res-ship .unit-scene-below,.unit-page-scene.res-explorer .unit-scene-below{flex-wrap:nowrap}.unit-page-scene.res-ship .unit-scene-below>.unit-detail,.unit-page-scene.res-explorer .unit-scene-below>.unit-detail{flex:580px;max-width:780px}.unit-page-scene.res-ship .unit-scene-side,.unit-page-scene.res-explorer .unit-scene-side{flex:0 auto;max-width:440px}.unit-page-scene.res-ship .unit-detail>.card,.unit-page-scene.res-explorer .unit-detail>.card{columns:2;column-rule:1px solid var(--panel-border);column-gap:22px;display:block}.unit-page-scene.res-ship .unit-detail>.card>*,.unit-page-scene.res-explorer .unit-detail>.card>*{break-inside:avoid;margin-bottom:10px}.unit-page-scene.res-explorer .unit-scene-side>.unit-summary{display:none}.unit-page-scene.res-ship .unit-detail>.card>header,.unit-page-scene.res-explorer .unit-detail>.card>header{flex-wrap:wrap;row-gap:4px}.unit-page-scene.res-ship .unit-detail>.card>.part-slots-wrap+*,.unit-page-scene.res-explorer .unit-detail>.card>.part-slots-wrap+*{break-before:column}.unit-page-scene.res-ship .unit-detail .building-art,.unit-page-scene.res-explorer .unit-detail .building-art{display:none}.unit-page-scene.res-ship .unit-scene-below{align-items:stretch}.unit-page-scene.res-ship .unit-scene-below>.unit-detail{flex:auto;max-width:none}.unit-page-scene.res-ship .unit-detail>.card{columns:3;height:100%;padding-block:12px}.unit-page-scene.res-ship .unit-detail>.card:not(:has(>.unit-research)){columns:2}.unit-page-scene.res-ship .unit-detail>.card>*{margin-bottom:7px}.unit-page-scene.res-ship .unit-detail .part-stats{margin:4px 0 0}.unit-page-scene.res-ship .unit-detail>.card>.unit-research{break-before:column;border-top:none;padding-top:0}.unit-page-scene.res-ship .unit-detail>.card>.unit-research>.unit-research-title{padding-top:0}.unit-page-scene.res-ship .unit-scene-side{flex:0 0 190px}.unit-page-scene.res-ship .unit-scene-side>.unit-summary{flex:1;grid-template-columns:1fr 1fr;align-content:center;gap:10px 12px}.unit-page-scene.res-ship .unit-summary>.unit-value,.unit-page-scene.res-ship .unit-summary>.unit-slot{grid-column:1/-1}@media (width<=1100px){.unit-page-scene.res-ship .unit-scene-below{flex-wrap:wrap}.unit-page-scene.res-ship .unit-scene-side{flex-basis:100%}.unit-page-scene.res-ship .unit-scene-side>.unit-summary{grid-template-columns:repeat(5,auto)}.unit-page-scene.res-ship .unit-summary>.unit-value,.unit-page-scene.res-ship .unit-summary>.unit-slot{grid-column:auto}}@media (width<=800px){:is(.unit-page-scene.res-ship .unit-detail>.card,.unit-page-scene.res-ship .unit-detail>.card:not(:has(>.unit-research))){columns:auto}}@media (prefers-reduced-motion:reduce){.space-drift,.space-spin,.space-nebula,.space-atmo{animation:none}}.fleet-scene{width:min(100%, calc((100vh - var(--alert-h,0px) - var(--fleet-below,470px)) * 1330 / 520));margin:0 auto;position:relative}.fleet-svg{border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;height:auto;display:block;overflow:hidden}.fleet-ship{cursor:pointer}.fleet-art{transition:filter .2s,opacity .2s}.fleet-ship:hover .fleet-art{filter:brightness(1.2)drop-shadow(0 0 6px #7fe6ff99)}.fleet-ship.selected .fleet-art{filter:brightness(1.25)drop-shadow(0 0 12px #7fe6ffe6)}.fleet-ship.unbuilt .fleet-art{opacity:.85}.fleet-ship.locked .fleet-art{filter:grayscale()brightness(.75);opacity:.55}.fleet-ship.locked.selected .fleet-art{filter:grayscale()brightness()drop-shadow(0 0 10px #c8d2e699);opacity:.8}.fleet-ship.upgrading .fleet-art{animation:1.6s ease-in-out infinite fleet-upgrade}.fleet-ship.researching .fleet-art{animation:2s ease-in-out infinite fleet-research}@keyframes fleet-upgrade{50%{filter:brightness(1.4)drop-shadow(0 0 14px #ffc85af2)}}@keyframes fleet-research{50%{filter:brightness(1.3)drop-shadow(0 0 14px #c896fff2)}}.fleet-bob{animation:6s ease-in-out infinite alternate fleet-bob}@keyframes fleet-bob{0%{transform:translate(-4px,-4px)}to{transform:translate(4px,4px)}}.fleet-scene .art-float{animation-name:fleet-float}@keyframes fleet-float{0%{transform:translateY(-1.2px)}to{transform:translateY(1.2px)}}.fleet-engine{animation:.9s ease-in-out infinite alternate fleet-engine}@keyframes fleet-engine{0%{opacity:.55}to{opacity:1}}.fleet-ring{fill:#7fe6ff0f;stroke:#7fe6ffd9;stroke-width:2.5px;stroke-dasharray:18 12;pointer-events:none;animation:3s linear infinite fleet-ring}@keyframes fleet-ring{to{stroke-dashoffset:-60px}}.fleet-name{fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#040814d9;stroke-width:5px;pointer-events:none;font:700 22px system-ui,sans-serif}.fleet-lock circle{fill:#080c18bf;stroke:#fff6;stroke-width:1.5px}.fleet-lock path{stroke:#c8d0e0}.fleet-lock rect{fill:#c8d0e0}.fleet-station-ring{animation:2.4s linear infinite fleet-ring}.fleet-streak{animation:14s linear infinite fleet-streak}@keyframes fleet-streak{0%,92%{opacity:0;transform:translate(0)}94%{opacity:.9}to{opacity:0;transform:translate(-160px,60px)}}@media (prefers-reduced-motion:reduce){.fleet-bob,.fleet-engine,.fleet-ring,.fleet-station-ring,.fleet-streak,.fleet-ship.upgrading .fleet-art,.fleet-ship.researching .fleet-art{animation:none}}.gallery-row:has(.gallery-fleet){flex-wrap:wrap;gap:12px;display:flex}.gallery-fleet{flex:none;width:640px}.gallery-fleet .fleet-scene,.gallery-fleet .wormhole-scene{width:100%}.fleet-attention{fill:#ff4d4d;stroke:#0a0d1c;stroke-width:3px;filter:drop-shadow(0 0 5px #ff4d4de6)}.battle-scene{isolation:isolate;position:relative}.battle-layer{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.battle-templates{visibility:hidden;width:0;height:0;position:absolute;overflow:hidden}.battle-templates *{animation:none!important}.battle-gallery-row{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;display:grid}.battle-gallery-stage{background:#070a16;border-radius:10px;height:420px;display:flex}.battle-viewer,.champion-battle{position:relative}.battle-result-layer{z-index:1000;border-radius:inherit;background:#03050c99;padding:16px 16px 64px;animation:.35s ease-out battle-result-in;display:flex;position:absolute;inset:0;overflow:auto}.battle-result-layer>.battle-result{background:#0a0e1ef7;margin:auto;position:relative;top:auto;left:auto;transform:none;box-shadow:0 12px 40px #0009}.battle-backdrop .battle-controls{z-index:1001;position:relative}@keyframes battle-result-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.battle-result-layer{animation:none}}.battle-result-layer{container-type:inline-size}.battle-result-layer>.battle-result.has-stats{width:min(980px,100% - 8px)}.battle-result-layer>.battle-result.has-stats.one-side{width:min(600px,100% - 8px)}.cb-stats{text-align:left;margin-top:12px}.cb-stats-sides{gap:16px;display:grid}.cb-stats.two .cb-stats-sides{grid-template-columns:1fr 1fr}.cb-stats-switch{justify-content:center;gap:6px;margin-bottom:8px;display:none}.cb-stats-switch button{border:1px solid var(--panel-border);color:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:4px 12px;font-size:.85rem}.cb-stats-switch button.selected{background:#7fd6ff29;border-color:#7fd6ff}.cb-stats-side{background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;padding:8px 10px}.cb-stats-side.mine{border-color:#7fd6ff38}.cb-stats-row{grid-template-columns:minmax(0,1fr) repeat(3,68px);align-items:center;gap:8px;padding:4px 0;display:grid}.cb-stats-row+.cb-stats-row{border-top:1px solid #ffffff0d}.cb-stats-head{text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#9aa3c0);padding-top:0;font-size:.72rem}.cb-stats-title{color:#e8ecff;text-transform:none;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.cb-stats-col{text-align:right;cursor:help}.cb-stats-who{align-items:center;gap:8px;min-width:0;display:flex}.cb-stats-thumb{background:#0d1020;border-radius:6px;flex:none;width:30px;height:37px;overflow:hidden}.cb-stats-thumb .champion-portrait{width:100%;height:100%}.cb-stats-initial{color:#ff9a7a;place-items:center;height:100%;font-weight:700;display:grid}.cb-stats-name{flex-direction:column;min-width:0;line-height:1.2;display:flex}.cb-stats-name-text{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.cb-stats-tags{align-items:center;gap:5px;font-size:.72rem;display:flex}.cb-stats-tags .role-icon{width:11px;height:11px;display:block}.cb-stats-tags .role-icon svg{width:100%;height:100%;display:block}.cb-stats-mvp{letter-spacing:.04em;color:#1a1204;background:linear-gradient(#ffe58a,#f0b43a);border-radius:999px;padding:0 5px;font-size:.66rem;font-weight:700;box-shadow:0 0 6px #ffd25a80}.cb-stats-cell{flex-direction:column;align-items:flex-end;gap:3px;min-width:0;display:flex}.cb-stats-num{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.85rem}.cb-stats-cell.zero .cb-stats-num{color:var(--muted,#6a7090)}.cb-stats-cell.best .cb-stats-num{color:#ffd75e;font-weight:700}.cb-stats-bar{background:#ffffff14;border-radius:2px;width:100%;height:4px;display:block;overflow:hidden}.cb-stats-bar>span{background:var(--cb-bar);opacity:.75;border-radius:2px;height:100%;display:block}.cb-stats-cell.best .cb-stats-bar>span{opacity:1;box-shadow:0 0 6px var(--cb-bar)}.cb-damage{--cb-bar:#ff7b6b}.cb-support{--cb-bar:#6fe3a3}.cb-intercepted{--cb-bar:#8fb8ff}@container (width<=820px){.cb-stats.two .cb-stats-sides{grid-template-columns:1fr}.cb-stats.two .cb-stats-switch{display:flex}.cb-stats-side.narrow-hidden{display:none}}@container (width<=480px){.battle-result-layer>.battle-result.has-stats{padding:14px 12px}.cb-stats-side{padding:6px}.cb-stats-row{grid-template-columns:minmax(0,1fr) repeat(3,54px);gap:5px}.cb-stats-head{letter-spacing:0;text-transform:none;font-size:.66rem}.cb-stats-thumb{width:24px;height:30px}.cb-stats-who{gap:5px}.cb-stats-num{font-size:.78rem}}@media (width<=600px){.battle-backdrop:has(.champion-battle .battle-result-layer){align-items:flex-start;overflow-y:auto}.champion-battle:has(.battle-result-layer) .arena{display:none}.champion-battle .battle-result-layer{background:0 0;padding:0;position:relative;inset:auto;overflow:visible}.champion-battle .battle-result-layer>.battle-result.has-stats{width:100%}}.boss-portrait{flex-direction:column;flex:none;gap:4px;width:clamp(112px,11vw,190px);margin:0;display:flex}.boss-portrait-frame{aspect-ratio:4/5;background:linear-gradient(150deg, color-mix(in srgb, var(--boss-glow) 90%, #fff) 0%, #2a2238 38%, #0d0a18 62%, var(--boss-glow) 100%);box-shadow:0 0 14px color-mix(in srgb, var(--boss-glow) 45%, transparent), 0 0 2px #fff6 inset;border-radius:10px;padding:2px;animation:4s ease-in-out infinite boss-portrait-pulse;position:relative;overflow:hidden}.boss-portrait-frame>img,.boss-portrait-frame>svg{object-fit:cover;border-radius:8px;width:100%;height:100%;display:block}.boss-portrait-sheen{pointer-events:none;background:linear-gradient(115deg,#0000 38%,#ffffff38 48%,#0000 58%) 0 0/250% 100% no-repeat;border-radius:8px;animation:6s ease-in-out infinite boss-portrait-sheen;position:absolute;inset:2px;box-shadow:inset 0 0 18px #000000a6}.boss-portrait-stage{color:#fff;border:1px solid var(--boss-glow);min-width:22px;height:22px;box-shadow:0 0 6px var(--boss-glow);background:#080610bf;border-radius:999px;place-items:center;padding:0 5px;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:6px;left:6px}.boss-portrait-done{text-align:center;letter-spacing:.12em;text-transform:uppercase;color:#7dffb0;background:#050a08b3;padding:3px 0;font-weight:700;position:absolute;bottom:12%;left:0;right:0}.boss-portrait.defeated img{filter:grayscale(.85)brightness(.6)}.boss-portrait.defeated .boss-portrait-frame{animation:none}.boss-portrait figcaption{text-align:center;color:var(--muted,#9aa3b8);font-size:.78rem;line-height:1.25}@keyframes boss-portrait-pulse{50%{box-shadow:0 0 22px color-mix(in srgb, var(--boss-glow) 70%, transparent), 0 0 2px #fff6 inset}}@keyframes boss-portrait-sheen{0%,55%{background-position:120% 0}to{background-position:-120% 0}}@media (prefers-reduced-motion:reduce){.boss-portrait-frame,.boss-portrait-sheen{animation:none}}.boss-ladder{flex-wrap:wrap;align-items:flex-end;gap:4px;margin:4px 0 0;padding:0;list-style:none;display:flex}.boss-ladder-step{aspect-ratio:4/5;background:#0d0a18;border:1px solid #ffffff26;border-radius:5px;width:24px;position:relative;overflow:hidden}.boss-ladder-step img,.boss-ladder-none{object-fit:cover;object-position:50% 20%;width:100%;height:100%;display:block}.boss-ladder-step.next img{filter:brightness(.5)saturate(.7)}.boss-ladder-step.done img{filter:grayscale()brightness(.55)}.boss-ladder-step.current{border-color:var(--boss-glow);width:30px;box-shadow:0 0 8px var(--boss-glow)}.boss-ladder-num{color:#fff;text-shadow:0 0 3px #000,0 0 2px #000;font-size:.62rem;font-weight:700;position:absolute;bottom:0;right:2px}.boss-ladder-check{color:#7dffb0;text-shadow:0 0 4px #000;place-items:center;font-size:.9rem;font-weight:700;display:grid;position:absolute;inset:0}.boss-gallery{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px;display:grid}.boss-gallery-item{align-items:stretch;gap:10px;padding:10px;display:flex}.boss-gallery-item .boss-portrait{width:130px}.boss-gallery-art{background:radial-gradient(ellipse at 50% 85%, color-mix(in srgb, var(--boss-glow) 22%, transparent), transparent 70%), #070712;border-radius:8px;flex:auto;justify-content:center;align-items:flex-end;gap:4px;min-width:0;display:flex}.boss-gallery-art img{object-fit:contain;min-width:0;max-width:50%;max-height:170px;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--boss-glow) 55%, transparent));display:block}.boss-gallery-art.ship{align-items:center}.boss-gallery-art.ship img{max-width:100%}.galaxy-detail>.panel.alliance-boss{flex-grow:2.2}.alliance-boss-hero{align-items:flex-start;gap:12px;display:flex}.alliance-boss-hero .boss-portrait{width:clamp(92px,9vw,170px)}.alliance-boss-hero h3{font-size:1rem}.alliance-boss-hero .alliance-boss-head{flex-wrap:nowrap;align-items:flex-start}.alliance-boss-hero .boss-kind{flex-shrink:0;margin-top:2px}.alliance-boss-hero .alliance-boss-actions{margin:4px 0}.alliance-boss-info{flex:auto;min-width:0}@media (height<=860px){.alliance-boss-hero .boss-ladder-step{width:18px}.alliance-boss-hero .boss-ladder-step.current{width:23px}.alliance-boss-hero .boss-ladder-num{font-size:.55rem}}.wormhole-scene{width:min(100%, calc((100vh - var(--alert-h,0px) - var(--wormhole-below,562px)) * 1600 / 520));margin:0 auto;position:relative}.wormhole-svg{border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;height:auto;display:block;overflow:hidden}.wh-breathe{transform-box:fill-box;transform-origin:50%;animation:6s ease-in-out infinite alternate wh-breathe}@keyframes wh-breathe{0%{opacity:.75;transform:scale(.97)}to{opacity:1;transform:scale(1.03)}}.wh-lens{fill:none;stroke:#bfe6ff;stroke-width:1.5px;opacity:.14;transform-box:fill-box;transform-origin:50%;animation:6.6s ease-in-out infinite alternate wh-lens}@keyframes wh-lens{to{opacity:.3;transform:scale(.92)}}.wh-flow{animation:2.2s linear infinite wh-flow}@keyframes wh-flow{to{stroke-dashoffset:-76px}}.wh-trail{fill:none;stroke-width:3px;stroke-linecap:round;stroke-dasharray:3 16;opacity:.55;animation:1.4s linear infinite wh-trail}@keyframes wh-trail{to{stroke-dashoffset:-38px}}.wh-ping{fill:none;stroke-width:3px;transform-box:fill-box;transform-origin:50%;animation:3.3s ease-out infinite wh-ping}@keyframes wh-ping{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(7)}}.wh-ship-art{transition:filter .2s}.wh-ship.upgrading .wh-ship-art{animation:1.6s ease-in-out infinite wh-upgrade}.wh-ship.researching .wh-ship-art{animation:2s ease-in-out infinite wh-research}@keyframes wh-upgrade{50%{filter:brightness(1.35)drop-shadow(0 0 14px #ffc85af2)}}@keyframes wh-research{50%{filter:brightness(1.3)drop-shadow(0 0 14px #c896fff2)}}.wh-ship.diving{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in forwards wh-dive}@keyframes wh-dive{0%{opacity:1;transform:none}70%{opacity:1}to{opacity:0;transform:translate(720px,-20px)scale(.04)}}.wh-ship.emerging{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-out both wh-emerge}@keyframes wh-emerge{0%{opacity:0;transform:translate(720px,-20px)scale(.04)}30%{opacity:1}to{opacity:1;transform:none}}.wh-find-in{animation:3.6s linear both wh-find-in}@keyframes wh-find-in{0%,85%{opacity:0}to{opacity:1}}.wh-find{animation:2.4s ease-in-out infinite alternate wh-find-bob}@keyframes wh-find-bob{to{transform:translateY(-10px)}}.wh-find-ring{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-out infinite wh-find-ring}@keyframes wh-find-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(3.4)}}.wh-hud rect{fill:#060a16c7;stroke:#ffffff40;stroke-width:1.5px}.wh-hud-dot{fill:#8a96b8}.wh-hud.run .wh-hud-dot{fill:#8fd8ff;animation:1.2s ease-in-out infinite art-blink}.wh-hud.find .wh-hud-dot{fill:#6ff0c0;animation:.9s ease-in-out infinite art-blink}.wh-hud.gold .wh-hud-dot{fill:#ffd970;animation:.9s ease-in-out infinite art-blink}.wh-hud.run rect{stroke:#8fd8ff99}.wh-hud.find rect{stroke:#6ff0c0b3}.wh-hud.gold rect{stroke:#ffd970cc}.wh-hud-title{fill:#fff;font:700 26px system-ui,sans-serif}.wh-hud-sub{fill:#c8d0e4;font:500 20px system-ui,sans-serif}.wh-hud-fuel{fill:#9aa6c4;text-anchor:end;font:500 18px system-ui,sans-serif}@media (prefers-reduced-motion:reduce){.wh-breathe,.wh-lens,.wh-flow,.wh-ping,.wh-trail,.wh-find,.wh-find-ring,.wh-ship.upgrading .wh-ship-art,.wh-ship.researching .wh-ship-art{animation:none}.wh-ship.diving,.wh-ship.emerging{animation-duration:10ms}}.gx-frame{border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;background:radial-gradient(70% 80%,#161a3f 0%,#0a0d24 45%,#04050d 100%);border-radius:12px;position:relative;overflow:hidden;container-type:size}.gx-sky{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.gx-sky0{opacity:.45}.gx-sky1{animation:4.5s ease-in-out infinite alternate gx-twinkle}.gx-sky2{animation:2.8s ease-in-out infinite alternate-reverse gx-twinkle}@keyframes gx-twinkle{0%{opacity:.85}to{opacity:.25}}.gx-stage{width:min(100cqw,307.692cqh);height:min(100cqh,32.5cqw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gx-layer,.gx-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.gx-overlay .gx-hit,.gx-overlay .gx-system.clickable,.gx-overlay .gx-place{pointer-events:auto}.gx-disc,.gx-mini,.gx-acc,.gx-dyson{pointer-events:none;will-change:transform;transform:rotate(var(--gx-tilt)) scaleY(var(--gx-q,.4));animation:300s linear infinite gx-spin;position:absolute}.gx-disc svg,.gx-mini svg,.gx-dyson svg{width:100%;height:100%;display:block;overflow:visible}@keyframes gx-spin{0%{transform:rotate(var(--gx-tilt)) scaleY(var(--gx-q,.4)) rotate(0deg)}to{transform:rotate(var(--gx-tilt)) scaleY(var(--gx-q,.4)) rotate(-360deg)}}.gx-mini{animation-duration:90s}.gx-mini.reverse,.gx-dyson.reverse{animation-direction:reverse}.gx-dyson{animation-duration:40s}.gx-acc{--gx-q:.3;opacity:.9;background:conic-gradient(#ffb35a,#fff3c4,#ff6a2a,#7a2a8a,#ff9a3a,#ffe9b0,#ffb35a);border-radius:50%;animation-duration:6s;-webkit-mask:radial-gradient(closest-side,#0000 44%,#000 50% 72%,#0000 100%);mask:radial-gradient(closest-side,#0000 44%,#000 50% 72%,#0000 100%)}.gx-acc-front{pointer-events:none;clip-path:inset(50% 0 0);position:absolute}.gx-hole{pointer-events:none;background:#000;border-radius:50%;position:absolute;box-shadow:0 0 0 1.5px #ffdca0e6,0 0 14px 4px #ffaa508c}.gx-core{pointer-events:none;will-change:transform, opacity;border-radius:50%;animation:5s ease-in-out infinite gx-pulse;position:absolute}.gx-lv9 .gx-core,.gx-lv10 .gx-core{animation-duration:3s}@keyframes gx-pulse{0%,to{opacity:.85;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}.gx-jets{pointer-events:none;transform:rotate(var(--gx-tilt));background:linear-gradient(#0000 0%,#7fd4ff8c 22%,#e6f8ffe6 50%,#7fd4ff8c 78%,#0000 100%);animation:2.4s ease-in-out infinite alternate gx-jets;position:absolute;-webkit-mask:linear-gradient(90deg,#0000,#000 40% 60%,#0000);mask:linear-gradient(90deg,#0000,#000 40% 60%,#0000)}@keyframes gx-jets{0%{opacity:.45}to{opacity:.95}}.gx-gate{fill:none;stroke:#7fd4ff;stroke-width:1.4px;stroke-opacity:.55;stroke-dasharray:6 8;animation:2.4s linear infinite gx-flow}.gx-gate.gold{stroke:#ffd98a;stroke-opacity:.6}@keyframes gx-flow{to{stroke-dashoffset:-28px}}.gx-trail{fill:#fff3c0;filter:drop-shadow(0 0 4px #ffd75e)}.gx-crown{fill:none;stroke:#ffd75e;stroke-width:2px;stroke-opacity:.7;stroke-dasharray:2 10;animation:3s linear infinite gx-flow}.gx-crown2{stroke-width:1px;stroke-opacity:.35;stroke-dasharray:none;animation:none}.gx-system.clickable{cursor:pointer}.gx-system.clickable:hover .gx-star,.gx-system.selected .gx-star{stroke:#ffd75e;stroke-width:2.5px}.gx-own-ring{fill:none;stroke:#7fe6a0;stroke-width:1.6px;stroke-dasharray:4 3}.gx-name{fill:#e6ecff;text-anchor:middle;paint-order:stroke;stroke:#040610d9;stroke-width:4px;stroke-linejoin:round;font-size:18px;font-weight:600}.gx-system.own .gx-name{fill:#9ff0b8}.gx-banner-text{fill:#ffe7a8;text-anchor:middle;font-size:17px;font-weight:700}.gx-place{cursor:pointer;outline:none}.gx-place .gx-hit>*{fill:#0000}.gx-pulse{fill:none;stroke:#7fd4ff;stroke-width:1.5px;transform-box:fill-box;transform-origin:50%;pointer-events:none;animation:2.6s ease-out infinite gx-ring}@keyframes gx-ring{0%{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.7)}}.gx-label-bg{fill:#080c1cd6;stroke:#7fd4ff73;stroke-width:1.2px}.gx-label{fill:#eef3ff;text-anchor:middle;font-size:21px;font-weight:700}.gx-hint{fill:#9aa6c4;text-anchor:middle;font-size:15px}.gx-place:hover .gx-label-bg,.gx-place:focus-visible .gx-label-bg{stroke:#7fd4ff;fill:#1c2e5af2}.gx-place.active .gx-label-bg{stroke:#ffd75e;stroke-width:2px;fill:#40320aeb}.gx-place.active .gx-hint{fill:#ffe7a8}.gx-place.active .gx-pulse{stroke:#ffd75e}.gx-breathe{animation:5s ease-in-out infinite gx-breathe}@keyframes gx-breathe{50%{opacity:.55}}.gx-rift{filter:drop-shadow(0 0 6px #ff4a3a);animation:1.8s ease-in-out infinite gx-breathe}.gx-blink{animation:1.6s step-end infinite gx-blink}@keyframes gx-blink{60%{opacity:1}61%,to{opacity:.2}}.gx-laser{animation:.7s step-end infinite gx-blink}.gx-spark{transform-box:fill-box;transform-origin:50%;animation:.7s ease-out infinite gx-ring}.gx-wave{fill:none;stroke:#7fd4ff;stroke-width:1.5px;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite gx-ring}.gx-badge{flex:none;display:block}@media (prefers-reduced-motion:reduce){.gx-frame *,.gx-frame{animation:none!important}}.galaxy-page,.galaxy-none{flex-direction:column;gap:10px;min-height:0;display:flex}.galaxy-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.galaxy-title{align-items:center;gap:10px;min-width:0;display:flex}.galaxy-title h2{margin:0;font-size:1.2rem;line-height:1.2}.galaxy-nav{flex-wrap:wrap;gap:4px;display:flex}.galaxy-nav button{border:1px solid var(--panel-border);color:var(--muted);background:#0a1024cc;border-radius:999px;padding:5px 11px;font-size:.82rem;position:relative}.galaxy-nav button:hover{color:#e6ecff;border-color:#7fd4ff99}.galaxy-nav button.selected{color:#ffe7a8;background:#40320abf;border-color:#ffd75e}.galaxy-scene{flex:none;height:clamp(220px,50%,600px)}.galaxy-scene .gx-frame{height:100%}.galaxy-detail{flex:1 1 0;align-items:stretch;gap:10px;min-height:0;display:flex}.galaxy-detail>.panel,.galaxy-detail>.galaxy-side{flex:1 1 0;min-width:0;margin:0;overflow-y:auto}.galaxy-detail .panel{padding:10px 14px}.galaxy-detail h3{margin:0 0 6px}.galaxy-detail .panel p{margin:4px 0}.galaxy-detail>.alliance-members,.galaxy-detail>.alliance-war,.galaxy-detail>.alliance-boss-ranking,.galaxy-detail>.galaxy-levels{flex-grow:1.6}.galaxy-detail-funk>.alliance-chat{flex-direction:column;width:100%;max-width:980px;margin:0 auto;display:flex}.galaxy-detail-funk .alliance-chat-list{flex:auto;min-height:0;max-height:none}.galaxy-side{flex-direction:column;gap:10px;display:flex}.galaxy-side>.panel{flex:none;margin:0}.galaxy-side .alliance-create textarea{min-height:0}.galaxy-detail>.galaxy-side{overflow:hidden}.galaxy-council-links{gap:12px;display:flex}.galaxy-council-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.galaxy-council-edit{flex-direction:column;gap:6px;display:flex}.galaxy-council-edit textarea{resize:none;width:100%}.galaxy-council-edit .alliance-create-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin:0;display:flex}.galaxy-council-edit .market-toggle button,.galaxy-council-edit button.small{padding:4px 12px;font-size:.82rem}.galaxy-detail-rat>.alliance-members{flex-grow:1.3}.galaxy-side>.galaxy-requests{flex-direction:column;flex:auto;min-height:0;display:flex}.galaxy-side>.panel{padding:8px 12px}.galaxy-request-list{flex:auto;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.galaxy-request-list li{border-top:1px solid #ffffff0f;align-items:center;gap:8px;padding:3px 0;display:flex}.galaxy-request-who{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.galaxy-request-list button.small{flex:none;padding:3px 10px;font-size:.8rem}.galaxy-detail .alliance-members td{white-space:nowrap}.galaxy-detail .alliance-members td.alliance-actions{white-space:normal;text-align:right}.galaxy-detail .alliance-members .ranking-name .muted{display:none}.galaxy-detail .alliance-members tbody tr{cursor:pointer}.galaxy-detail tr.galaxy-picked td{background:#ffd75e1f}.galaxy-detail tr.galaxy-done td{color:var(--muted)}.galaxy-bank-amount{color:#ffd75e;font-size:1.5rem}.galaxy-bank-amount strong{font-size:1.6rem}.galaxy-hero{flex:none;height:clamp(220px,46%,520px);position:relative}.galaxy-hero .gx-frame{height:100%}.galaxy-hero-text{pointer-events:none;background:linear-gradient(90deg,#040610e6 0%,#040610bf 70%,#0000 100%);border-radius:12px 0 0 12px;flex-direction:column;justify-content:center;gap:6px;width:min(470px,42%);padding:18px 22px;display:flex;position:absolute;top:0;bottom:0;left:0}.galaxy-hero-text h2{color:#fff3d8;margin:0;font-size:1.35rem}.galaxy-hero-text p{color:#c9d2ea;margin:0}.galaxy-perks{color:#c9d2ea;grid-template-columns:1fr 1fr;gap:4px 12px;margin:4px 0 0;padding:0;list-style:none;display:grid}.galaxy-perks li:before{content:"✦ ";color:#ffd75e}.galaxy-none-columns{flex:1 1 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-height:0;display:grid}.galaxy-none-col{flex-direction:column;gap:8px;min-height:0;display:flex}.galaxy-none-col>.panel{flex:auto;min-height:0;margin:0}.galaxy-none .panel{padding:12px 16px}.galaxy-none h3{margin:0 0 8px}.galaxy-scroll{overflow-y:auto}.galaxy-cards{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.galaxy-card{border:1px solid var(--panel-border);background:linear-gradient(90deg,#28326e40,#ffffff05);border-radius:10px;align-items:center;gap:12px;padding:6px 10px;display:flex}.galaxy-card:hover{border-color:#7fd4ff80}.galaxy-card-main{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.galaxy-card-name,.galaxy-card-comment{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.galaxy-card>button{flex:none}.gallery-item.gallery-galaxy{width:min(100%,545px)}.gallery-row:has(.gallery-galaxy){flex-wrap:wrap;gap:12px;display:flex}.gallery-galaxy .gx-frame{aspect-ratio:40/13;width:100%}@media (width<=900px){.galaxy-scene{aspect-ratio:40/13;height:auto}.galaxy-detail{flex-direction:column;flex:none;min-height:auto}.galaxy-detail>.panel,.galaxy-detail>.galaxy-side{flex:none;overflow-y:visible}.galaxy-none-columns{grid-template-columns:minmax(0,1fr)}.galaxy-hero{height:auto}.galaxy-hero .gx-frame{aspect-ratio:40/13;height:auto}.galaxy-hero-text{background:0 0;width:auto;padding:8px 0 0;position:static}}.galaxy-side h3{margin:0 0 4px;font-size:1rem}.galaxy-side .alliance-boss-head{margin:0}.cp-page{flex-direction:column;gap:10px;display:flex}.cp-body{height:max(400px, var(--cp-h,calc(100vh - var(--alert-h,0px) - 300px)));grid-template-columns:minmax(0,1fr) clamp(300px,30%,390px);gap:12px;display:grid}.cp-body.cp-fixed{height:560px}.cp-map{border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;background:radial-gradient(80% 90% at 50% 45%,#121838 0%,#080b1e 55%,#03040b 100%);border-radius:12px;min-height:0;animation:.9s cubic-bezier(.2,.8,.2,1) both cp-enter;position:relative;overflow:hidden}.cp-map.cp-ch2{background:radial-gradient(80% 90% at 45% 45%,#1d1238 0%,#0d0a22 55%,#05040c 100%)}.cp-map.cp-ch3{background:radial-gradient(80% 90% at 60% 55%,#22122a 0%,#0e0816 55%,#040208 100%)}@keyframes cp-enter{0%{opacity:0;filter:blur(6px)brightness(1.8);transform:scale(1.08)}to{opacity:1;filter:none;transform:none}}.cp-svg{width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.cp-svg *{transform-box:view-box}.cp-warp{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cp-warp line{stroke:var(--cp-glow);stroke-width:2.5px;stroke-linecap:round;opacity:0;transform-origin:0 0;animation:.85s ease-out both cp-warp-line}@keyframes cp-warp-line{0%{opacity:0;transform:scale(.2)}25%{opacity:.9}to{opacity:0;transform:scale(2.4)}}.cp-twinkle1{animation:4.2s ease-in-out infinite alternate cp-twinkle}.cp-twinkle2{animation:2.7s ease-in-out infinite alternate-reverse cp-twinkle}@keyframes cp-twinkle{0%{opacity:.9}to{opacity:.2}}.cp-twinkle0{opacity:.55}.cp-seg path{fill:none;stroke-linecap:round}.cp-seg.dim .cp-seg-line{stroke:#6a7396;stroke-opacity:.45;stroke-width:3px;stroke-dasharray:2 12}.cp-seg.lit .cp-seg-glow{stroke:var(--cp-accent);stroke-width:12px;stroke-opacity:.55}.cp-seg.lit .cp-seg-line{stroke:var(--cp-accent);stroke-width:4px}.cp-seg.active .cp-seg-line{stroke:var(--cp-accent);stroke-opacity:.35;stroke-width:4px}.cp-seg-flow{stroke:var(--cp-glow);stroke-width:3px;stroke-dasharray:6 26;animation:1.6s linear infinite cp-flow}.cp-seg.active .cp-seg-flow{stroke-dasharray:14 18;stroke-width:4px;animation-duration:.9s}@keyframes cp-flow{to{stroke-dashoffset:-32px}}.cp-ship-flame{fill:#ffb85a;transform-box:fill-box;transform-origin:100%;animation:.25s ease-in-out infinite alternate cp-flame}@keyframes cp-flame{0%{opacity:.7;transform:scaleX(.6)}to{opacity:1;transform:scaleX(1.15)}}.cp-node{cursor:pointer;outline:none}.cp-node-hit{fill:#0000}.cp-node-body{stroke:#8ea0d8;stroke-width:2.5px;transition:transform .2s}.cp-node-inner{fill:none;stroke:#ffffff29;stroke-width:1.5px}.cp-node.done .cp-node-body{stroke:#fff}.cp-node.current .cp-node-body,.cp-node.open .cp-node-body{stroke:var(--cp-accent);stroke-width:3.5px}.cp-node.locked{opacity:.55}.cp-node.locked .cp-node-body{stroke:#4c5574}.cp-node:hover .cp-node-body,.cp-node:focus-visible .cp-node-body{stroke:#fff}.cp-node:focus-visible .cp-node-inner{stroke:#fff;stroke-width:2.5px}.cp-node.locked:hover{opacity:.85}.cp-node-halo{transform-box:fill-box;transform-origin:50%;animation:3.5s ease-in-out infinite alternate cp-halo}@keyframes cp-halo{0%{opacity:.55}to{opacity:1}}.cp-pulse{fill:none;stroke:var(--cp-accent);stroke-width:3px;transform-box:fill-box;transform-origin:50%;animation:2.2s ease-out infinite cp-pulse}.cp-pulse.late{animation-delay:1.1s}@keyframes cp-pulse{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.3)}}.cp-select-ring{fill:none;stroke:#fff;stroke-width:2.5px;stroke-dasharray:9 7;transform-box:fill-box;transform-origin:50%;animation:9s linear infinite cp-rotate}@keyframes cp-rotate{to{transform:rotate(360deg)}}.cp-crown-wrap{transform-box:fill-box;transform-origin:50%;animation:30s linear infinite reverse cp-rotate}.cp-crown{fill:color-mix(in srgb, var(--cp-accent) 30%, #10142a);stroke:var(--cp-accent);stroke-width:2px}.cp-node.locked .cp-crown{stroke:#59627f;fill:#151a2e}.cp-check{fill:none;stroke:#0b1630;stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round}.cp-num{fill:#fff;text-anchor:middle;font-size:20px;font-weight:700}.cp-node.boss .cp-num{font-size:24px}.cp-lock{stroke:#9aa4c4;fill:#9aa4c4}.cp-lock path{fill:none}.cp-kind rect{fill:#0d1228;stroke:var(--cp-accent);stroke-width:1.5px}.cp-node.locked .cp-kind rect{stroke:#59627f}.cp-kind-ship,.cp-kind-hero{fill:#e6eeff}.cp-label{fill:#eef2ff;paint-order:stroke;stroke:#050714;stroke-width:5px;stroke-linejoin:round;pointer-events:none;font-size:18px;font-weight:600}.cp-node.selected .cp-label{fill:var(--cp-glow)}.cp-hint{fill:#9aa4c4;font-size:14px;font-weight:500}.cp-hint.done{fill:#7fe0a0}.cp-hint.current{fill:var(--cp-glow)}.cp-complete-ring{fill:none;stroke:#ffe28a;stroke-width:3px;transform-box:fill-box;transform-origin:50%;animation:3s ease-out infinite cp-pulse}.cp-complete-ring.late{animation-delay:1.5s}.cp-drift{animation:26s ease-in-out infinite alternate cp-drift}@keyframes cp-drift{to{transform:translate(-40px,18px)scale(1.04)}}.cp-clouds{animation:40s linear infinite cp-clouds}@keyframes cp-clouds{to{transform:translate(420px)}}.cp-belt{animation:30s ease-in-out infinite alternate cp-belt}@keyframes cp-belt{to{transform:translate(-26px,10px)}}.cp-rock{fill:#5d5a66;stroke:#8a8494;stroke-width:1px;transform-box:fill-box;transform-origin:50%;animation:12s linear infinite cp-rotate}.cp-station{transform-origin:0 0;animation:40s linear infinite cp-rotate}.cp-redlight{fill:#ff5a4a;animation:1.4s steps(2,jump-none) infinite cp-blink}@keyframes cp-blink{0%{opacity:1}to{opacity:.15}}.cp-neb{transform-box:fill-box;transform-origin:50%;animation:34s ease-in-out infinite alternate cp-neb0}.cp-neb1{animation-name:cp-neb1}.cp-neb2{animation-name:cp-neb2}@keyframes cp-neb0{to{transform:translate(50px,20px)scale(1.08)}}@keyframes cp-neb1{to{transform:translate(-60px,-14px)scale(.94,1.1)}}@keyframes cp-neb2{to{transform:translate(30px,-30px)scale(1.12,.92)}}.cp-bolt{fill:none;stroke:#f4dcff;stroke-width:3px;stroke-linejoin:round;opacity:0;filter:drop-shadow(0 0 6px #d58bff);animation:7s linear infinite cp-bolt}.cp-bolt.late{animation-duration:9s;animation-delay:3.4s}@keyframes cp-bolt{0%,90%,to{opacity:0}91%{opacity:1}92.5%{opacity:.2}94%{opacity:.9}96%{opacity:0}}.cp-wreck{animation:24s ease-in-out infinite alternate cp-wreck}@keyframes cp-wreck{to{transform:translate(40px,22px)}}.cp-spin{transform-origin:0 0;animation:40s linear infinite cp-rotate}.cp-spin.rev{animation-direction:reverse}.cp-breathe{transform-origin:0 0;animation:6s ease-in-out infinite alternate cp-breathe}.cp-spark{fill:#ffd9a0;transform-origin:0 0;animation:8s linear infinite cp-spark}.cp-eye{transform-origin:0 0;animation:7s ease-in-out infinite cp-eye}@keyframes cp-eye{0%,to{transform:scaleY(.15)}45%,60%{transform:scaleY(1)}}.cp-header{border:1px solid color-mix(in srgb, var(--cp-accent) 35%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;background:#060918b8;border-radius:10px;max-width:min(360px,60%);padding:8px 12px;position:absolute;top:12px;left:14px}.cp-header-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--cp-glow);font-size:11px}.cp-header h2{margin:0 0 2px;font-size:18px}.cp-header p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.35}.cp-header-bar{background:#ffffff1a;border-radius:3px;height:5px;margin-top:7px;overflow:hidden}.cp-header-bar>span{background:linear-gradient(90deg, var(--cp-accent), var(--cp-glow));height:100%;box-shadow:0 0 8px var(--cp-accent);transition:width .6s;display:block}.cp-legend{color:var(--muted);white-space:nowrap;pointer-events:none;gap:12px;font-size:11.5px;display:flex;position:absolute;top:10px;right:12px}.cp-legend span:before{content:"";vertical-align:-1px;border-radius:50%;width:9px;height:9px;margin-right:5px;display:inline-block}.cp-legend .done:before{background:var(--cp-accent);box-shadow:0 0 6px var(--cp-accent)}.cp-legend .current:before{border:2px solid var(--cp-accent);width:5px;height:5px}.cp-legend .locked:before{background:#3a4260}.cp-legend{flex-wrap:wrap;justify-content:flex-end;row-gap:4px;max-width:46%}.cp-legend .lane:before{vertical-align:3px;border-radius:2px;width:14px;height:3px}.cp-legend .lane.ships:before{background:#4fc3ff;box-shadow:0 0 5px #4fc3ff}.cp-legend .lane.champions:before{background:#ffb347;box-shadow:0 0 5px #ffb347}.cp-legend .lane.joint:before{background:var(--cp-accent);box-shadow:0 0 5px var(--cp-accent)}.cp-lane-dot{fill:var(--cp-accent);stroke:var(--cp-glow);stroke-width:2px;filter:drop-shadow(0 0 6px var(--cp-accent))}.cp-lane-label{fill:var(--cp-glow);letter-spacing:.06em;text-transform:uppercase;paint-order:stroke;stroke:#050714;stroke-width:5px;stroke-linejoin:round;font-size:16px;font-weight:700}.cp-header-lanes{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:12px;display:flex}.cp-header-lanes b{font-weight:600}.cp-header-lanes .ships b{color:#4fc3ff}.cp-header-lanes .champions b{color:#ffb347}.cp-header-lanes .joint b{color:var(--cp-glow)}.cp-chip.track-ships{color:#8fd8ff;border-color:#4fc3ff73}.cp-chip.track-champions{color:#ffcf8a;border-color:#ffb34773}.cp-blocked+.cp-blocked{margin-top:4px}.cp-detail-foot.blocked{background:0 0;margin:auto 0 0;padding:8px 0 0;font-size:13.5px;position:static}.cp-detail{border-top:3px solid var(--cp-accent,var(--accent));flex-direction:column;gap:6px;min-height:0;padding:12px 14px;display:flex;overflow-y:auto}.cp-detail h2{margin:0;font-size:19px}.cp-detail h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0;font-size:13px}.cp-detail-kicker{color:var(--cp-glow,var(--muted));letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.cp-chips{flex-wrap:wrap;gap:6px;display:flex}.cp-chip{white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12.5px;display:inline-flex}.cp-chip.status-done{color:#7fe0a0;border-color:#7fe0a066}.cp-chip.status-locked{color:#9aa4c4}.cp-chip.status-current,.cp-chip.status-open{color:var(--cp-glow);border-color:color-mix(in srgb, var(--cp-accent) 50%, transparent)}.cp-story{border-left:3px solid color-mix(in srgb, var(--cp-accent,var(--accent)) 60%, transparent);background:#ffffff08;border-radius:0 8px 8px 0;margin:0;padding:6px 10px;font-size:14px;font-style:italic;line-height:1.45}.cp-note{color:var(--muted);margin:0;font-size:12.5px}.cp-versus{gap:8px;display:grid}.cp-vs-row{gap:3px;display:grid}.cp-vs-head{justify-content:space-between;font-size:13px;display:flex}.cp-vs-head .good{color:#6fd88a}.cp-vs-head .bad{color:#ff8a7a}.cp-vs-bar{background:#ffffff14;border-radius:4px;height:8px;display:flex;position:relative;overflow:hidden}.cp-vs-bar .own{background:linear-gradient(90deg, var(--cp-accent,var(--accent)), var(--cp-glow,#a8ecff));transition:width .5s}.cp-vs-bar .enemy{background:linear-gradient(90deg,#ff6a5a,#b8322a);margin-left:auto;transition:width .5s}.cp-vs-bar:after{content:"";background:#ffffffb3;width:2px;position:absolute;top:0;bottom:0;left:50%}.cp-vs-off{color:var(--muted);font-size:12.5px;font-style:italic}.cp-vs-legend{color:var(--muted);justify-content:space-between;font-size:11.5px;display:flex}.cp-rewards{gap:5px;margin:0;padding:0;list-style:none;display:grid}.cp-rewards li{align-items:center;gap:8px;font-size:13.5px;display:flex}.cp-rewards .resource-icon,.cp-rewards .item-icon,.cp-rewards .champion-portrait{flex:none;width:26px;height:26px}.cp-detail .battle-spoils{margin:0}.cp-detail-foot{background:linear-gradient(#0e132400 0%,#0e1324f5 22%);margin:auto -16px -14px;padding:10px 16px 14px;position:sticky;bottom:-14px}.cp-blocked{color:var(--muted);margin:0}.cp-start{letter-spacing:.03em;background:linear-gradient(90deg, color-mix(in srgb, var(--cp-accent,var(--accent)) 70%, #1a2350), var(--cp-accent,var(--accent)));color:#07101f;width:100%;box-shadow:0 0 16px color-mix(in srgb, var(--cp-accent,var(--accent)) 45%, transparent);border:none;padding:11px 16px;font-size:16px;font-weight:700;animation:2.2s ease-in-out infinite alternate cp-start-glow}.cp-start:disabled{opacity:.6;animation:none}@keyframes cp-start-glow{to{box-shadow:0 0 26px color-mix(in srgb, var(--cp-accent,var(--accent)) 75%, transparent)}}@media (width<=900px){.cp-body{grid-template-columns:1fr;height:auto}.cp-map{height:62vh}}.gallery-row.gallery-campaign{grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}.gallery-row.gallery-campaign .cp-map{height:380px}.gallery-campaign-page{width:min(100%,1020px);margin-top:12px}@media (prefers-reduced-motion:reduce){.cp-map,.cp-map *,.cp-start{animation:none!important}.cp-warp{display:none}}.attention-dot{z-index:2;pointer-events:none;background:#ff4d4d;border-radius:50%;width:11px;height:11px;position:absolute;top:-4px;right:-4px;box-shadow:0 0 0 2px #0d1328,0 0 8px #ff4d4de6}.has-dot{position:relative}.attention-dot-svg{fill:#ff4d4d;stroke:#0a0d1c;stroke-width:3px;filter:drop-shadow(0 0 5px #ff4d4de6);pointer-events:none}.tr-art .tr-ship{animation:4.6s ease-in-out infinite tr-bob}.tr-art .tr-stars{animation:70s linear infinite tr-stars}.tr-art .tr-plume{animation:.9s ease-in-out infinite tr-plume}.tr-art .tr-cargo-light{animation:3.2s ease-in-out infinite art-window}.tr-art .tr-dish{animation:6s ease-in-out infinite tr-dish}.tr-art.gallery-transport{border-radius:8px;width:100%;height:auto;display:block}@keyframes tr-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.6px)}}@keyframes tr-stars{0%{transform:translate(0)}to{transform:translate(-200px)}}@keyframes tr-plume{0%,to{opacity:.75;transform:scaleX(.92)}50%{opacity:1;transform:scaleX(1.06)}}@keyframes tr-dish{0%,to{transform:rotate(-14deg)}50%{transform:rotate(14deg)}}@media (prefers-reduced-motion:reduce){.tr-art *{animation:none!important}}.drm{-webkit-user-select:none;user-select:none;background:#04050d;border-radius:10px;width:100%;height:100%;min-height:200px;position:relative;overflow:hidden}.drm-svg{width:100%;height:100%;display:block;position:absolute;inset:0}.drm-stars0{opacity:.35}.drm-stars1{animation:4.2s ease-in-out infinite alternate drm-twinkle}.drm-stars2{animation:2.7s ease-in-out infinite alternate-reverse drm-twinkle}@keyframes drm-twinkle{0%{opacity:.9}to{opacity:.2}}.drm-corona{transform-box:fill-box;transform-origin:50%;animation:6s ease-in-out infinite alternate drm-breathe}.drm-rays{animation:90s linear infinite drm-spin}.drm-sun-pulse{animation:3.2s ease-in-out infinite alternate drm-fade}@keyframes drm-breathe{0%{opacity:.8;transform:scale(.95)}to{opacity:1;transform:scale(1.05)}}@keyframes drm-spin{to{transform:rotate(360deg)}}@keyframes drm-fade{0%{opacity:.25}to{opacity:1}}.drm-orbit{animation:14s linear infinite drm-dash}.drm-orbit2{animation-duration:20s}.drm-orbit3{animation-duration:27s}.drm-orbit4{animation-duration:35s}@keyframes drm-dash{to{stroke-dashoffset:-110px}}.drm-orbit-label{fill:#8fa3d8;fill-opacity:.5;letter-spacing:.04em;font-size:11px}.drm-flow{animation:2.4s linear infinite drm-flow}.drm-route.busy .drm-flow{animation-duration:1.1s}@keyframes drm-flow{to{stroke-dashoffset:-34px}}.drm-route-label{fill:#c8d4ee;fill-opacity:.45;font-size:10.5px}.drm-route.busy .drm-route-label{fill-opacity:.8}.drm-glow{animation:3.6s ease-in-out infinite alternate drm-fade}.drm-node.current .drm-glow{animation-duration:2.2s}.drm-node.clickable{cursor:pointer}.drm-node.clickable:hover .drm-hover,.drm-node.clickable:focus-visible .drm-hover{stroke-opacity:.8}.drm-node:focus{outline:none}.drm-hover{transition:stroke-opacity .15s}.drm-hangar-ring{animation:40s linear infinite drm-spin}.drm-contact-spin{animation:24s linear infinite reverse drm-spin}.drm-build{filter:drop-shadow(0 0 3px #f2c94c)}.drm-name{paint-order:stroke;stroke:#04060f;stroke-width:3.5px;font-size:13px;font-weight:700}.drm-sub{fill:#c8d4ee;fill-opacity:.75;paint-order:stroke;stroke:#04060f;stroke-width:3px;font-size:11px}.drm-hangar-label{fill:#ffe7a8;paint-order:stroke;stroke:#04060f;stroke-width:3px;font-size:11.5px;font-weight:600}.drm-unknown-mark{fill:#8fa3d8;fill-opacity:.45;font-size:14px;font-weight:700}.drm-unknown .drm-sub{fill-opacity:.4}.drm-flame{transform-box:fill-box;transform-origin:100%;animation:.35s ease-in-out infinite alternate drm-flicker}@keyframes drm-flicker{0%{opacity:.6;transform:scaleX(.8)}to{opacity:1;transform:scaleX(1.15)}}.drm-cargo{animation:1.6s ease-in-out infinite alternate drm-fade}.drm-fleet-glow{opacity:.55}.drm-fleet-count{fill:#ffe7a8;paint-order:stroke;stroke:#04060f;stroke-width:3px;font-size:10.5px;font-weight:700}.drm-eta{fill:#f2c94c;paint-order:stroke;stroke:#04060f;stroke-width:3px;font-size:10.5px}.drm-fleet[data-phase=parked] .drm-flame{display:none}.drm-hangar-mini{fill:#ffe7a8;fill-opacity:.8}.drm-ship-empty,.drm-leg-back,.drm-leg-arrived,.drm-fleet[data-leg=back] .drm-ship-full,.drm-fleet[data-leg=home] .drm-ship-full{display:none}.drm-fleet[data-leg=back] .drm-ship-empty,.drm-fleet[data-leg=back] .drm-leg-back,.drm-fleet[data-leg=arrived] .drm-leg-arrived{display:inline}.drm-fleet[data-leg=back] .drm-eta{fill:#8fb4ff}.drm-fleet[data-leg=home]{display:none}.drm-dock,.drm-launch{pointer-events:none;display:none}.drm-fleet[data-leg=out][data-phase=arrive]~.drm-dock-to,.drm-fleet[data-leg=back][data-phase=arrive]~.drm-dock-from,.drm-fleet[data-leg=out][data-phase=depart]~.drm-launch-from,.drm-fleet[data-leg=back][data-phase=depart]~.drm-launch-to{display:inline}.drm-dock-ring{animation:1.4s ease-out infinite drm-ring}@keyframes drm-ring{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.7)}}.drm-drop{animation:1.1s ease-in infinite drm-drop}@keyframes drm-drop{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(28px)}}.drm-launch{animation:.5s ease-in-out infinite alternate drm-fade}.drm-title{fill:#e8eeff;letter-spacing:.06em;text-transform:uppercase;font-size:14px;font-weight:700}.drm-hint{fill:#8fa3d8;fill-opacity:.8;font-size:11px}@media (prefers-reduced-motion:reduce){.drm *{animation:none!important}}.diplomacy.dip-layout{height:var(--dip-h,calc(100vh - var(--alert-h,0px) - 230px));grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(260px,290px);align-items:stretch;min-height:540px}.diplomacy.dip-layout.dip-framed{height:100%;min-height:0}.dip-layout .dip-main{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.dip-layout .dip-map-panel{flex:auto;min-height:190px;padding:5px;display:flex}.dip-layout .diplomacy-hangar{flex:none;padding:10px 12px 12px}.dip-layout .diplomacy-side{min-height:0}.dip-layout .diplomacy-fleets{flex-direction:column;flex:auto;min-height:0;padding:12px 14px;display:flex}.dip-layout .fleet-list{flex:auto;min-height:0;max-height:none}.dip-layout .fleet-progress{height:4px;margin-top:3px}.dip-layout .fleet-progress .progress-bar{background:linear-gradient(90deg,#a8742a,#ffd27a)}.dip-layout .fleet-progress.back .progress-bar{background:linear-gradient(90deg,#3a5a8a,#8fb4ff)}.dip-layout .diplomacy-aliens{flex-direction:column;flex:0 auto;min-height:0;max-height:55%;padding:12px 14px;display:flex}.dip-layout .diplomacy-aliens>p{margin:0;line-height:1.3}.dip-layout .diplomacy-contacts{flex:0 auto;gap:6px;min-height:0;max-height:none}.dip-layout .diplomacy-contact{gap:4px;padding:0;transition:box-shadow .3s,background .3s}.dip-layout .diplomacy-contact.open{padding-bottom:8px}.dip-layout .diplomacy-contact>:not(.diplomacy-contact-toggle){margin-left:8px;margin-right:8px}.dip-layout .diplomacy-contact.flash{box-shadow:0 0 0 2px var(--species-color), 0 0 18px var(--species-color);background:#ffffff14}.dip-layout .diplomacy-contact-toggle{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:5px 8px;display:flex}.dip-layout .diplomacy-contact-toggle:hover{background:#ffffff0d}.dip-layout .diplomacy-contact-toggle .diplomacy-portrait{width:30px;height:36px}.dip-layout .diplomacy-contact-sum{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.dip-layout .diplomacy-contact-line{justify-content:space-between;gap:6px;display:flex}.dip-layout .diplomacy-chevron{color:var(--species-color);font-size:.8rem}.dip-layout .diplomacy-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.dip-layout .diplomacy-head h2{margin:0;font-size:1.05rem}.dip-layout .diplomacy-head .diplomacy-send{margin-left:auto}.dip-layout .diplomacy-head .diplomacy-send button{padding:5px 12px}.dip-layout .hangar-planets{flex-wrap:wrap;gap:5px;display:flex}.dip-layout .hangar-planets .hangar-planet{border:1px solid var(--panel-border);color:inherit;cursor:pointer;background:#ffffff08;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:.8rem;display:inline-flex}.dip-layout .hangar-planets .hangar-planet:disabled{cursor:default;opacity:1}.dip-layout .hangar-planets .hangar-planet:not(:disabled):hover{border-color:var(--species-color)}.dip-layout .hangar-planets .hangar-planet.active{border-color:var(--species-color);background:#ffffff17;font-weight:700}.dip-layout .hangar-planet-dot{background:var(--species-color);width:8px;height:8px;box-shadow:0 0 6px var(--species-color);border-radius:50%}.dip-layout .hangar-planet-count{text-align:center;font-variant-numeric:tabular-nums;background:#00000059;border-radius:8px;min-width:18px;padding:0 5px}.dip-layout .hangar-planet-build{background:#f2c94c;border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite art-pulse}.dip-layout .transport-order{gap:2px;margin-bottom:6px;font-size:.82rem}.dip-layout .transport-order .progress{height:4px}.dip-layout .diplomacy-hangar>.muted.small{margin:0 0 8px}.dip-layout .transport-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dip-layout .transport-tile{border-radius:10px;flex-direction:column;gap:5px;padding:0 0 8px;display:flex;overflow:hidden}.dip-layout .transport-tile>:not(.transport-stage){padding:0 9px}.dip-layout .transport-stage{aspect-ratio:2;border-bottom:1px solid var(--panel-border);background:#070a17;width:100%;max-height:clamp(96px,19vh,200px);position:relative}.dip-layout .transport-stage .transport-art{width:100%;height:100%;display:block}.dip-layout .transport-here{color:#ffe7a8;font-variant-numeric:tabular-nums;background:#04060fbf;border-radius:8px;padding:1px 7px;font-size:.8rem;font-weight:700;position:absolute;bottom:5px;right:6px}.dip-layout .transport-time{color:#c8d4ee;font-variant-numeric:tabular-nums;background:#04060fbf;border-radius:8px;padding:1px 6px;font-size:.72rem;position:absolute;bottom:5px;left:6px}.dip-layout .transport-info{gap:0}.dip-layout .transport-info>*{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dip-layout .transport-form{flex-direction:column;grid-column:auto;gap:4px;display:flex}.dip-layout .transport-form.muted{padding-top:2px}.dip-layout .transport-form-row{gap:6px;display:flex}.dip-layout .transport-form-row input{width:52px;min-width:0;padding:3px 5px}.dip-layout .transport-form-row button{white-space:nowrap;flex:1;min-width:0;padding:4px 8px}.dip-layout .transport-cost{flex-wrap:wrap;gap:0 6px;font-size:.74rem;display:flex!important}.dip-layout .transport-cost>span{white-space:nowrap;align-items:center;gap:3px;display:inline-flex}.dip-layout .transport-cost-icon{flex:none;width:12px;height:12px}@media (width<=1100px){.diplomacy.dip-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);height:auto}.dip-layout .dip-map-panel{flex:none;height:300px}.dip-layout .transport-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dip-layout .diplomacy-aliens{max-height:none}}.champions-page{--hall-h:clamp(170px, calc(100vh - var(--alert-h,0px) - 680px), 230px);gap:10px}.ch-hall{height:var(--hall-h);border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;background:#070914;border-radius:12px;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(140px,200px) 1fr;align-items:stretch;display:grid;position:relative;overflow:hidden;container-type:inline-size}.ch-backdrop{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ch-stars,.ch-stars-copy{animation:160s linear infinite ch-drift}@keyframes ch-drift{to{transform:translate(-1600px)}}.ch-nebula{transform-box:fill-box;transform-origin:50%;animation:14s ease-in-out infinite alternate ch-nebula}.ch-nebula.slow{animation-duration:21s}@keyframes ch-nebula{0%{opacity:.6;transform:scale(.94)}to{opacity:1;transform:scale(1.06)}}.ch-planet{animation:60s ease-in-out infinite alternate ch-planet}@keyframes ch-planet{to{transform:translate(-60px,6px)}}.ch-floor-sweep{animation:9s ease-in-out infinite ch-sweep}@keyframes ch-sweep{0%{transform:translate(0)}60%,to{transform:translate(2200px)}}.ch-hall-info{z-index:1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080b1c9e;border:1px solid #7fd4ff29;border-radius:10px;flex-direction:column;justify-content:center;gap:3px;min-width:0;margin:10px 0 10px 10px;padding:8px 10px;display:flex;position:relative}.ch-hall-title{letter-spacing:.04em;background:linear-gradient(90deg,#ffd75e,#ffb36b 40%,#b49cff);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700}.ch-hall-sub{color:#7fd4ff;font-size:.78rem}.ch-hall-found{font-size:.85rem}.ch-hall-found b{color:#ffd75e;font-size:1.05rem}.ch-hall-hint{color:var(--muted);font-size:.7rem;line-height:1.25}.ch-hall-stage{z-index:1;justify-content:space-evenly;align-items:flex-end;gap:4px;min-width:0;padding:0 6px 4px;display:flex;position:relative;container-type:inline-size}.ch-pedestal{--ped-h:min(calc(var(--hall-h) - 22px), 26cqw);min-width:0;max-width:calc(var(--ped-h) * 1.6);height:var(--ped-h);color:inherit;font:inherit;cursor:default;background:0 0;border:0;flex:1 1 0;margin:0;padding:0;position:relative}button.ch-pedestal{cursor:pointer}.ch-pedestal.mid{--ped-h:min(calc(var(--hall-h) - 8px), 28.5cqw)}.ch-pedestal-fx{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ch-glow{animation:2.8s ease-in-out infinite art-pulse;animation-delay:var(--delay,0s)}.ch-ring{animation:6s linear infinite ch-ring}@keyframes ch-ring{to{stroke-dashoffset:-150px}}.ch-spark{animation:3s ease-in infinite ch-spark}@keyframes ch-spark{0%{opacity:0;transform:translateY(0)}15%{opacity:1}to{opacity:0;transform:translateY(-120px)}}.ch-hero{width:calc(var(--ped-h) * .38);animation:4.2s ease-in-out infinite ch-float;animation-delay:var(--delay,0s);filter:drop-shadow(0 0 8px color-mix(in srgb, var(--rarity) 60%, transparent));transition:filter .2s;position:absolute;bottom:12.5%;left:50%;transform:translate(-50%)}.ch-hero .champion-portrait{width:100%}@keyframes ch-float{50%{transform:translate(-50%,-5px)}}button.ch-pedestal:hover .ch-hero,button.ch-pedestal:focus-visible .ch-hero{filter:drop-shadow(0 0 14px var(--rarity)) brightness(1.12)}.ch-empty{aspect-ratio:80/100;color:#3a4060;background:#14182699;border:1px dashed #3a4060;border-radius:8px;place-items:center;font-size:1.6rem;font-weight:700;display:grid}.ch-plate{border:1px solid color-mix(in srgb, var(--rarity) 55%, transparent);white-space:nowrap;background:#080b1ce0;border-radius:6px;flex-direction:column;align-items:center;gap:0;width:fit-content;max-width:calc(100% - 2px);margin:0 auto;padding:1px 6px 2px;font-size:.66rem;line-height:1.2;display:flex;position:absolute;bottom:-2px;left:0;right:0}.ch-plate .role-icon{width:11px;height:11px;filter:drop-shadow(0 0 2px color-mix(in srgb, var(--role) 60%, transparent));display:block}.ch-plate .role-icon svg{width:100%;height:100%;display:block}.ch-plate-name{white-space:normal;text-align:center;text-wrap:balance;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;display:-webkit-box;overflow:hidden}.ch-plate-level{color:var(--muted);white-space:nowrap;font-size:.6rem}.ch-pedestal.empty .ch-plate{color:var(--muted)}.ch-rarity.rarity-tag{z-index:1;pointer-events:none;margin:0;padding:0 4px;font-size:.62rem;position:absolute;top:2px;left:4%}.role-badge{color:var(--role);background:color-mix(in srgb, var(--role) 14%, #080b1c99);border:1px solid color-mix(in srgb, var(--role) 45%, transparent);white-space:nowrap;border-radius:4px;align-items:center;gap:2px;padding:0 4px 0 2px;font-weight:700;line-height:1.3;display:inline-flex}.role-badge svg{flex:none;width:1.1em;height:1.1em}@container (width<=900px){.ch-hall-hint{display:none}}@container (width<=760px){.ch-hall{grid-template-columns:minmax(120px,150px) 1fr}}@media (prefers-reduced-motion:reduce){.ch-hall *{animation:none!important}}.ch-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ch-filters .depot-tabs button{padding:4px 10px}.ch-sort{align-items:center;gap:6px;margin-left:auto;display:flex}.ch-sort select{background:var(--panel);color:inherit;border:1px solid var(--panel-border);border-radius:6px;padding:3px 6px}.ch-grid{max-height:calc(100vh - var(--alert-h,0px) - var(--hall-h) - 356px);grid-template-columns:repeat(auto-fill,minmax(108px,1fr));align-content:start;gap:8px;min-height:150px;padding:2px 4px 2px 2px;display:grid;overflow-y:auto}.ch-card{border:1px solid color-mix(in srgb, var(--rarity) 40%, transparent);background:radial-gradient(ellipse 80% 55% at 50% 30%, color-mix(in srgb, var(--rarity) 22%, transparent), transparent 70%), linear-gradient(180deg, #161c38f2, #0a0d1cf2);border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:7px 6px 6px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.ch-card.clickable{cursor:pointer}.ch-card.clickable:hover,.ch-card.clickable:focus-visible{border-color:var(--rarity);box-shadow:0 4px 16px color-mix(in srgb, var(--rarity) 35%, transparent);outline:none;transform:translateY(-2px)}.ch-card-art{width:72px;position:relative}.ch-card-art:after{content:"";background:radial-gradient(ellipse, color-mix(in srgb, var(--rarity) 70%, transparent), transparent 70%);border-radius:50%;height:8px;position:absolute;bottom:-4px;left:8%;right:8%}.ch-card-art .champion-portrait{z-index:1;width:100%;position:relative}.ch-card-art .role-badge{z-index:2;background:color-mix(in srgb, var(--role) 18%, #080b1ceb);font-size:.62rem;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.ch-card strong{text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.3em;margin-top:3px;font-size:.8rem;line-height:1.15;display:-webkit-box;overflow:hidden}.ch-card-meta{color:var(--muted);align-items:center;gap:4px;font-size:.7rem;display:flex}.ch-card-meta .rarity-tag{margin:0}.ch-card-level{background:#ffffff14;border-radius:2px;width:100%;height:3px;overflow:hidden}.ch-card-level span{background:var(--rarity);height:100%;display:block}.ch-team-badge{z-index:2;color:#0a0c18;background:#7fd4ff;border-radius:5px;padding:0 5px;font-size:.6rem;font-weight:700;position:absolute;top:4px;left:4px}.ch-card.unknown{opacity:.55;background:linear-gradient(#121628e6,#0a0d1ce6);border-style:dashed;border-color:#2a2f45}.ch-card.unknown .ch-card-art:after{display:none}.gallery-champion-hall{--hall-h:200px;margin-bottom:12px}.ch-hero.ch-hero-art{width:calc(var(--ped-h) * .607);filter:drop-shadow(0 0 6px color-mix(in srgb, var(--rarity) 45%, transparent));bottom:9%}.ch-figure{pointer-events:none;height:92%;position:absolute;bottom:8.5%;left:50%;transform:translate(-50%)}.ch-figure img{transform-origin:50% 100%;width:auto;height:100%;animation:4.6s ease-in-out infinite ch-figure-idle;animation-delay:var(--delay,0s);filter:drop-shadow(0 0 6px color-mix(in srgb, var(--glow) 55%, transparent)) drop-shadow(0 2px 3px #0009);-webkit-user-select:none;user-select:none;transition:filter .2s;display:block}button.ch-pedestal:hover .ch-figure img,button.ch-pedestal:focus-visible .ch-figure img{filter:drop-shadow(0 0 10px var(--glow)) drop-shadow(0 2px 3px #0009)}@keyframes ch-figure-idle{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.008)}}@media (prefers-reduced-motion:reduce){.ch-figure img{animation:none}}.panel.dialog.champion-detail{--cd-h:min(900px, calc(100vh - 40px));--cd-art-w:min(calc(var(--cd-h) * .8), calc(100vw - 32px - 440px));grid-template-columns:var(--cd-art-w) minmax(0, 1fr);width:min(calc(var(--cd-art-w) + 500px), calc(100vw - 32px));height:var(--cd-h);border:1px solid color-mix(in srgb, var(--rarity) 40%, var(--panel-border));max-height:none;box-shadow:0 0 0 1px #0006, 0 24px 80px #0009, 0 0 60px color-mix(in srgb, var(--rarity) 14%, transparent);background:linear-gradient(160deg,#121a36 0%,#0c1126 60%,#0a0e20 100%);gap:0;padding:0;display:grid;position:relative;overflow:hidden}.cd-art{background:radial-gradient(ellipse 70% 55% at 50% 38%, color-mix(in srgb, var(--rarity) 26%, transparent), transparent 72%), #080b1a;border-right:1px solid color-mix(in srgb, var(--rarity) 35%, transparent);position:relative;overflow:hidden}.cd-art-figure{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.cd-art.painted .cd-art-stand{position:absolute;inset:0}.cd-art.painted .champion-detail-portrait{width:100%;height:100%}.cd-art.painted .champion-picture>rect{display:none}.cd-art.painted .champion-picture clipPath rect{rx:0}.cd-art.drawn{background:radial-gradient(1px 1px at 12% 18%, #fffa, transparent), radial-gradient(1px 1px at 78% 12%, #fff8, transparent), radial-gradient(1.5px 1.5px at 88% 46%, #fff9, transparent), radial-gradient(1px 1px at 22% 62%, #fff7, transparent), radial-gradient(1px 1px at 64% 28%, #fff6, transparent), radial-gradient(1.5px 1.5px at 8% 40%, #fff8, transparent), radial-gradient(1px 1px at 92% 74%, #fff6, transparent), radial-gradient(ellipse 60% 48% at 50% 40%, color-mix(in srgb, var(--rarity) 30%, transparent), transparent 72%), #080b1a}.cd-art.drawn .cd-art-figure{bottom:14%}.cd-art.drawn .cd-art-stand{width:min(60%,52vh);position:relative}.cd-art.drawn .cd-art-stand:before{content:"";aspect-ratio:1;border:1px dashed color-mix(in srgb, var(--rarity) 45%, transparent);border-radius:50%;width:125%;animation:40s linear infinite cd-orbit;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.cd-art.drawn .cd-art-stand:after{content:"";border:1.5px solid var(--rarity);background:radial-gradient(ellipse, color-mix(in srgb, var(--rarity) 45%, transparent), transparent 70%);height:26px;box-shadow:0 0 22px color-mix(in srgb, var(--rarity) 45%, transparent);border-radius:50%;position:absolute;bottom:-36px;left:4%;right:4%}.cd-art.drawn .champion-detail-portrait{z-index:1;width:100%;filter:drop-shadow(0 0 18px color-mix(in srgb, var(--rarity) 55%, transparent));animation:4.2s ease-in-out infinite cd-float;display:block;position:relative}@keyframes cd-float{50%{transform:translateY(-8px)}}@keyframes cd-orbit{to{transform:translate(-50%,-50%)rotate(360deg)}}.cd-art-caption{z-index:2;pointer-events:none;background:linear-gradient(#0000,#060916c7 45%,#060916f2);flex-direction:column;gap:8px;padding:70px 26px 22px;display:flex;position:absolute;bottom:0;left:0;right:0}.cd-art-caption h2{letter-spacing:.01em;text-shadow:0 2px 12px #000c, 0 0 24px color-mix(in srgb, var(--rarity) 45%, transparent);margin:0;font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.1}.cd-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cd-badges .rarity-tag{box-shadow:0 0 12px color-mix(in srgb, var(--rarity) 60%, transparent);margin:0;padding:1px 8px;font-size:.8rem}.cd-chip{color:var(--text);background:#ffffff14;border:1px solid #ffffff1f;border-radius:6px;padding:1px 8px;font-size:.78rem}.cd-info{flex-direction:column;gap:14px;min-height:0;padding:26px 26px 20px;display:flex;position:relative}.cd-close{margin:0;position:absolute;top:10px;right:10px}.cd-section h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:.78rem;font-weight:600}.cd-section h3 .small{text-transform:none;letter-spacing:0;margin-left:6px;font-weight:400}.cd-level{grid-template-columns:auto 1fr;align-items:baseline;gap:2px 10px;padding-right:32px;display:grid}.cd-level-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.78rem}.cd-level-value strong{color:var(--rarity);text-shadow:0 0 18px color-mix(in srgb, var(--rarity) 45%, transparent);font-size:2.2rem;line-height:1}.cd-level-value .muted{font-size:1.05rem}.cd-level-bar{grid-column:1/-1;margin-top:6px}.cd-level-bar .progress-bar{background:linear-gradient(90deg, color-mix(in srgb, var(--rarity) 55%, #000), var(--rarity));box-shadow:0 0 10px color-mix(in srgb, var(--rarity) 60%, transparent)}.cd-stats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.cd-stat{border:1px solid var(--panel-border);background:#ffffff09;border-radius:10px;grid-template-columns:auto 1fr auto;grid-template-areas:"icon label label""value value next";align-items:center;gap:2px 6px;padding:8px 12px;display:grid}.cd-stat-icon{color:var(--rarity);grid-area:icon;font-size:.9rem}.cd-stat-label{color:var(--muted);grid-area:label;font-size:.78rem}.cd-stat-value{font-variant-numeric:tabular-nums;grid-area:value;font-size:1.3rem}.cd-stat-next{color:#7fd6a0;grid-area:next;place-self:end;padding-bottom:3px;font-size:.75rem}.cd-levelup{background:linear-gradient(135deg, color-mix(in srgb, var(--rarity) 9%, transparent), #ffffff05);border:1px solid color-mix(in srgb, var(--rarity) 30%, var(--panel-border));border-radius:12px;padding:14px}.cd-costs{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.cd-cost{align-items:center;gap:8px;font-size:.9rem;display:flex}.cd-cost .item-icon,.cd-cost .resource-icon{flex:none;width:24px;height:24px}.cd-cost-name{flex:1}.cd-cost strong{font-variant-numeric:tabular-nums}.cd-cost.missing strong{color:#ff8a7a}.cd-levelup-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;margin-bottom:8px;display:flex}.cd-levelup-head h3{margin:0}.cd-steps{border:1px solid color-mix(in srgb, var(--rarity) 35%, var(--panel-border));border-radius:8px;display:inline-flex;overflow:hidden}.cd-step{font-variant-numeric:tabular-nums;background:0 0;border:none;border-radius:0;padding:3px 9px;font-size:.8rem}.cd-step+.cd-step{border-left:1px solid color-mix(in srgb, var(--rarity) 25%, var(--panel-border))}.cd-step.selected{background:color-mix(in srgb, var(--rarity) 28%, transparent);color:#fff;font-weight:600}.cd-step:disabled{opacity:.35}.cd-cost-buy{color:#ffd27a;font-size:.72rem;display:block}.cd-buy{cursor:pointer;align-items:center;gap:7px;margin:-2px 0 10px;font-size:.82rem;display:flex}.cd-levelup-button{width:100%;font-weight:600}.cd-max{text-align:center;color:var(--rarity);margin:0;font-weight:600}.cd-skills-section{flex-direction:column;flex:1;min-height:0;display:flex}.cd-skills{flex-direction:column;flex:1;gap:8px;min-height:0;margin:0;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.cd-skill{border:1px solid var(--panel-border);background:#ffffff08;border-radius:10px;gap:12px;padding:8px 12px;display:flex}.cd-skill.signature{background:linear-gradient(135deg,#ffd75e1f,#ffd75e05);border-color:#ffd75e88;box-shadow:inset 0 0 18px #ffd75e0f}.cd-skill.locked{opacity:.55}.cd-skill-unlock{border:1px solid color-mix(in srgb, var(--rarity) 50%, transparent);background:color-mix(in srgb, var(--rarity) 10%, #0a0e20);border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:46px;height:46px;line-height:1.05;display:flex}.cd-skill-unlock small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.6rem}.cd-skill-unlock b{font-size:1.05rem}.cd-skill.locked .cd-skill-unlock{border-color:var(--panel-border);background:#ffffff08}.cd-skill-body{flex-direction:column;gap:4px;min-width:0;display:flex}.cd-skill-head{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.cd-tag{color:var(--muted);background:#ffffff0f;border-radius:999px;padding:0 7px;font-size:.7rem}.cd-tag.signature{color:#1a1404;background:#ffd75e;font-weight:700}.cd-skill-text{color:#c4cbe0;font-size:.85rem;line-height:1.35}@media (width<=860px){.panel.dialog.champion-detail{grid-template-columns:1fr;width:min(560px,100vw - 32px);height:auto;max-height:calc(100vh - 32px);overflow-y:auto}.cd-art{border-right:0;border-bottom:1px solid color-mix(in srgb, var(--rarity) 35%, transparent);height:min(62vh,560px)}.cd-skills{overflow:visible}}@media (prefers-reduced-motion:reduce){.champion-detail *{animation:none!important}}.cd-art .champion-picture .cp-glow,.cd-art .champion-picture .cp-shine,.cd-art .champion-picture .cp-flash{display:none}.arena{aspect-ratio:16/9;-webkit-user-select:none;user-select:none;isolation:isolate;background:#05060f;border:1px solid #7fd4ff2e;border-radius:10px;width:min(100%,177.778vh - 444.444px);margin:0 auto;position:relative;overflow:hidden;container-type:inline-size}.arena-backdrop,.arena-layer{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.arena-backdrop{object-fit:cover}.arena-fx{z-index:200}.arena-ring{animation:2.4s ease-in-out infinite arena-ring}@keyframes arena-ring{50%{opacity:.25}}.arena-fighter{aspect-ratio:2/3;flex-direction:column;justify-content:flex-end;align-items:center;transition:opacity .6s,filter .6s;display:flex;position:absolute;transform:translate(-50%,-100%)}.arena-body{justify-content:center;align-items:flex-end;width:100%;height:100%;display:flex;position:relative}.arena-flip{transform-origin:50% 100%;justify-content:center;align-items:flex-end;height:100%;display:flex;position:relative}.arena-puppet{transform-origin:50% 100%;justify-content:center;align-items:flex-end;height:100%;animation:3.2s ease-in-out infinite arena-idle;display:flex;position:relative}.arena-fighter:nth-child(odd) .arena-puppet{animation-duration:3.7s}.arena-puppet.running{animation:none}@keyframes arena-idle{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.008)}}.arena-figure{width:auto;max-width:none;height:100%;filter:drop-shadow(0 0 .4cqw color-mix(in srgb, var(--glow) 50%, transparent));display:block}.arena-fig{transform-origin:50% 100%}.arena-card{width:100%;box-shadow:0 0 1cqw color-mix(in srgb, var(--rarity) 55%, transparent);transform-origin:50% 100%;border-radius:6px;margin-bottom:6%;display:block}.arena-card .champion-portrait{width:100%}.arena-boss{filter:drop-shadow(0 0 1cqw #b07cff);width:100%;height:100%}.arena-fighter.boss .arena-figure{filter:drop-shadow(0 0 .9cqw color-mix(in srgb, var(--glow) 70%, transparent)) drop-shadow(0 0 .25cqw #000c)}.arena-fighter.hit .arena-body{filter:brightness(1.6)drop-shadow(0 0 .6cqw #ff3b3b)}.arena-fighter.healed .arena-body{filter:drop-shadow(0 0 .8cqw #7dffb0)}.arena-fighter.stunned .arena-body{filter:grayscale(.6)brightness(.85)}.arena-fighter.down{opacity:.3;filter:grayscale()}.arena-fighter.down .arena-body{transform-origin:50% 100%;transition:transform .6s ease-in;transform:rotate(-80deg)translate(-20%,20%)}.arena-fighter.enemy.down .arena-body{transform:rotate(80deg)translate(20%,20%)}.arena-fighter.down .arena-bar{visibility:hidden}.arena-bar{white-space:nowrap;z-index:1;flex-direction:column;align-items:center;gap:.15cqw;margin-bottom:.3cqw;display:flex;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.arena-name{color:#e8ecf8;text-shadow:0 1px 2px #000;font-size:max(9px,.85cqw)}.arena-name b{color:var(--rarity);margin-right:.2em}.arena-hp{background:#0009;border:1px solid #ffffff40;border-radius:2px;width:5.5cqw;height:max(4px,.45cqw);display:block;overflow:hidden}.arena-hp>span{background:linear-gradient(#8dff9e,#2fb14a);height:100%;transition:width .25s;display:block}.arena-fighter.enemy .arena-hp>span{background:linear-gradient(#ff9a8a,#d2372a)}.arena-cast{white-space:nowrap;color:#fff;text-shadow:0 0 .6cqw var(--c), 0 0 .2cqw var(--c), 0 1px 2px #000;z-index:2;font-size:max(10px,1.05cqw);font-weight:700;position:absolute;bottom:calc(100% + 2.6cqw);left:50%;transform:translate(-50%)}.arena-aura{opacity:.75;background:radial-gradient(ellipse at 50% 70%, color-mix(in srgb, var(--c) 45%, transparent), transparent 70%);pointer-events:none;border-radius:50% 50% 40% 40%;width:90%;height:70%;animation:1.2s ease-in-out infinite arena-aura;position:absolute;bottom:-6%;left:50%;transform:translate(-50%)}.arena-aura.rage{background:radial-gradient(ellipse at 50% 70%, color-mix(in srgb, var(--c) 60%, transparent), transparent 65%);animation-duration:.6s}.arena-aura.wall,.arena-aura.taunt,.arena-aura.thorns{background:radial-gradient(ellipse at 50% 60%, transparent 45%, color-mix(in srgb, var(--c) 55%, transparent) 70%, transparent 75%);border-radius:40%}.arena-aura.shadow{background:radial-gradient(at 50% 60%,#0a001e8c,#0000 70%)}.arena-aura.holy{background:linear-gradient(to top, color-mix(in srgb, var(--c) 40%, transparent), transparent 80%);border-radius:30%}@keyframes arena-aura{50%{opacity:.55}}.arena-shield{pointer-events:none;background:radial-gradient(at 50% 40%,#7fd4ff0d,#7fd4ff38);border:1px solid #7fd4ffcc;border-radius:50% 50% 45% 45%;width:100%;height:95%;animation:1.6s ease-in-out infinite arena-aura;position:absolute;bottom:-4%;left:50%;transform:translate(-50%)}.arena-burn{pointer-events:none;background:radial-gradient(at 50% 100%,#ff8c3299,#0000 70%);width:70%;height:40%;animation:.4s ease-in-out infinite arena-aura;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.arena-stars{color:#ffe066;text-shadow:0 0 .4cqw #ffe066;white-space:nowrap;font-size:max(10px,1.1cqw);animation:.9s linear infinite arena-stars;position:absolute;top:-2%;left:50%;transform:translate(-50%)}@keyframes arena-stars{50%{transform:translate(-50%)rotate(8deg)}}.arena-numbers text{paint-order:stroke;stroke:#000;stroke-width:.5px;font-weight:800}.arena-numbers text.crit{font-style:italic}@media (prefers-reduced-motion:reduce){.arena *{animation:none!important}}.arena-puppet{width:100%}.dialog.equip-dialog{background:radial-gradient(80% 50% at 50% -10%,#5b8cff2e,#0000 70%),repeating-linear-gradient(0deg,#78a0ff0b 0 1px,#0000 1px 28px),repeating-linear-gradient(90deg,#78a0ff0b 0 1px,#0000 1px 28px),#0d1328;border-color:#78a0ff4d;gap:12px;width:min(980px,100%);padding:16px 18px;box-shadow:0 20px 60px #0009,inset 0 0 0 1px #5b8cff14}.equip-head{align-items:center;gap:14px;display:flex}.equip-art{flex:none;justify-content:center;align-items:center;width:120px;height:72px;display:flex}.equip-art>*{max-width:100%;max-height:100%}.equip-title h2{margin:0;font-size:1.3rem}.equip-title p{margin:2px 0 0}.equip-kicker,.equip-label{letter-spacing:.14em;text-transform:uppercase;color:#8fb0ff;font-size:.68rem;display:block}.equip-body{grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:14px;min-height:0;display:grid}.equip-slots{flex-direction:column;gap:8px;display:flex}button.equip-slot{text-align:left;color:var(--text);background:#ffffff08;border:1px dashed #ffffff38;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex;position:relative}button.equip-slot:hover:not(:disabled){background:#ffffff12}button.equip-slot.filled{border-style:solid;border-color:color-mix(in srgb, var(--rarity) 70%, transparent);background:linear-gradient(100deg, color-mix(in srgb, var(--rarity) 16%, transparent), #ffffff05 70%)}button.equip-slot.selected{border-color:var(--accent-hover);box-shadow:0 0 0 1px var(--accent-hover), 0 0 18px #5b8cff59}.equip-slot-icon{background:#0000004d;border-radius:8px;flex:none;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.equip-slot-icon .item-icon{width:40px;height:40px}.equip-slot-empty{color:#ffffff4d;font-size:1.4rem}.equip-slot-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.equip-slot-type{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.equip-rarity{color:var(--rarity);flex:none;margin-left:auto;font-size:.8rem;font-weight:700}.equip-attention,.slot-attention{pointer-events:none;background:#ff4d4d;border-radius:50%;width:11px;height:11px;position:absolute;top:-4px;right:-4px;box-shadow:0 0 0 2px #0d1328,0 0 8px #ff4d4de6}.equip-main{flex-direction:column;gap:8px;min-width:0;display:flex}.equip-current{border:1px solid color-mix(in srgb, var(--rarity,#5b8cff) 45%, transparent);background:color-mix(in srgb, var(--rarity,#5b8cff) 8%, #00000040);border-radius:10px;padding:10px 12px}.equip-current p{margin:6px 0 0}.equip-current-row{align-items:center;gap:12px;margin-top:6px;display:flex}.equip-current-row .item-icon{flex:none;width:48px;height:48px}button.equip-unequip{background:#ffffff0f;border:1px solid #fff3;margin-left:auto;padding:6px 12px}button.equip-unequip:hover:not(:disabled){background:#ff6e6e2e;border-color:#ff6e6e99}.equip-empty{border:1px dashed #ffffff26;border-radius:10px;margin:0;padding:14px}.equip-cards{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:10px;max-height:min(52vh,460px);padding:6px 4px 4px;display:grid;overflow-y:auto}.equip-card{text-align:center;border:1px solid color-mix(in srgb, var(--rarity) 55%, transparent);background:radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--rarity) 26%, transparent), transparent 60%), linear-gradient(180deg, #ffffff0a, #00000040);border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:12px 10px 10px;transition:transform .15s,box-shadow .15s;display:flex;position:relative}.equip-card:hover{box-shadow:0 6px 22px color-mix(in srgb, var(--rarity) 35%, transparent);transform:translateY(-2px)}.equip-card.better{border-color:var(--rarity)}.equip-card-rarity{color:var(--rarity);text-shadow:0 0 8px color-mix(in srgb, var(--rarity) 70%, transparent);font-size:.85rem;font-weight:800;position:absolute;top:7px;left:9px}.equip-better{color:#0b1a10;background:#6fe39a;border-radius:999px;padding:1px 7px;font-size:.68rem;font-weight:700;position:absolute;top:6px;right:7px;box-shadow:0 0 10px #6fe39a99}.equip-card-icon{justify-content:center;align-items:center;width:64px;height:64px;margin:4px 0 2px;display:flex}.equip-card-icon .item-icon{width:60px;height:60px;filter:drop-shadow(0 0 8px color-mix(in srgb, var(--rarity) 60%, transparent))}.equip-card.rarity-ssr:after,.equip-card.rarity-ss:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(115deg, transparent 35%, color-mix(in srgb, var(--rarity) 22%, transparent) 50%, transparent 65%);background-size:250% 100%;animation:4.5s linear infinite equip-shine;position:absolute;inset:0}@keyframes equip-shine{0%{background-position:130% 0}to{background-position:-130% 0}}@media (prefers-reduced-motion:reduce){.equip-card.rarity-ssr:after,.equip-card.rarity-ss:after{animation:none}}.equip-card-name{line-height:1.2}.equip-compare{width:100%;margin:4px 0 6px;padding:0;font-size:.78rem;list-style:none}.equip-compare li{background:#00000040;border-radius:6px;justify-content:space-between;gap:6px;padding:3px 6px;display:flex}.equip-card button{z-index:1;width:100%;margin-top:auto;padding:6px 10px;position:relative}.equip-card button:not(.primary){background:#ffffff14;border:1px solid #ffffff2e}.equip-card button:not(.primary):hover:not(:disabled){background:#ffffff26}.equip-delta{white-space:nowrap;font-weight:700}.equip-delta.up{color:#6fe39a}.equip-delta.down{color:#ff7a7a}.equip-delta.same{color:var(--muted)}.equip-stats{border-top:1px solid #78a0ff2e;padding-top:10px}.equip-stats p{margin:6px 0 0}.equip-stat-row{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.equip-stat{background:#0000004d;border:1px solid #ffffff14;border-radius:8px;align-items:baseline;gap:6px;padding:6px 12px;transition:border-color .15s;display:flex}.equip-stat.changed{border-color:#6fe39a73}@media (width<=720px){.equip-body{grid-template-columns:1fr}.equip-slots{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.equip-art{width:80px;height:50px}}button.weapon-slot{position:relative}.equip-dialog>*{flex-shrink:0}.trade-page{--res:#7fd4ff;--chart-bg:#0d1224;height:var(--trade-h,calc(100vh - 230px));grid-template-rows:auto minmax(0,1fr);grid-template-columns:236px minmax(0,1fr);gap:10px;min-height:540px;display:grid}.trade-page .trade-hall{grid-column:1/-1}.trade-list{flex-direction:column;gap:6px;min-height:0;padding:10px 12px;display:flex}.trade-page .trade-list .depot-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.trade-page .trade-list .depot-tabs button{white-space:nowrap;padding:4px 5px;font-size:.7rem}.trade-owned-filter{color:var(--muted);cursor:pointer;align-items:center;gap:6px;display:flex}.trade-list-scroll{flex:1;min-height:0;overflow-y:auto}.trade-table th,.trade-table td{white-space:nowrap;font-variant-numeric:tabular-nums}.trade-table th{z-index:1;background:var(--panel);position:sticky;top:0}.trade-table tbody tr{cursor:pointer}.trade-table tbody tr:not(.trade-group):hover,.trade-table tbody tr.selected{background:#7fd4ff14}.trade-table tbody tr.selected td:first-child{box-shadow:inset 3px 0 0 var(--rarity,var(--res))}.trade-good-text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.trade-good-line{align-items:center;gap:4px;min-width:0;display:flex}.trade-owned{color:var(--text);opacity:.8;font-size:.68rem}.trade-table tr.empty .trade-owned{color:var(--muted);opacity:.6}.trade-table .rarity-tag{padding:0 4px;font-size:.6rem}.trade-table td:first-child,.trade-info .market-my td:first-child{text-overflow:ellipsis;width:100%;max-width:0;overflow:hidden}.trade-table .market-good{min-width:0;max-width:100%}.trade-name{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}tr.trade-group{cursor:default}.trade-group td{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-top:8px;font-size:.7rem}.trade-price{flex-direction:column;line-height:1.15;display:flex}.trade-price small{font-size:.68rem}.trade-main{grid-template:"head side""chart side"minmax(0,1fr)/minmax(0,1fr) 252px;gap:8px;min-width:0;min-height:0;display:grid}.trade-main>.trade-head{grid-area:head}.trade-main>.trade-chart{grid-area:chart}.trade-main>.trade-side{grid-area:side}.trade-head-sell{margin-top:4px;padding:3px 10px;font-size:.78rem}.trade-page .trade-head{gap:10px;padding:6px 12px}.trade-page .trade-head-title strong{font-size:1rem}.trade-page .trade-head-stock .depot-amount{white-space:nowrap;font-size:1.05rem}.trade-page .trade-head-icon .item-icon,.trade-page .trade-head-icon .resource-icon{width:40px;height:40px}.trade-chart{flex-direction:column;gap:4px;min-height:0;padding:8px 12px 6px;display:flex}.trade-chart-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;display:flex}.trade-chart-price{white-space:nowrap;align-items:baseline;gap:8px;display:flex}.trade-chart-price strong{font-variant-numeric:tabular-nums;font-size:1.35rem}.trade-chart-change{font-variant-numeric:tabular-nums;font-size:.85rem}.trade-chart-controls{flex-wrap:wrap;gap:8px;display:flex}.trade-page .trade-chart-controls .market-toggle{background:#ffffff08;border-radius:8px;gap:2px;padding:2px;display:flex}.trade-page .trade-chart-controls .market-toggle button{white-space:nowrap;border-color:#0000;padding:2px 9px;font-size:.75rem}.trade-page .trade-chart-controls .market-toggle button.selected{border-color:var(--res);background:color-mix(in srgb, var(--res) 14%, transparent)}.trade-chart-body{flex:1;min-height:0;position:relative}.trade-chart-body>.price-chart{position:absolute;inset:0}.trade-chart-note{margin:0;font-size:.72rem}.trade-page .price-chart{overflow:hidden}.trade-page .price-chart svg{width:auto;height:auto;display:block}.price-chart .chart-axis{font-variant-numeric:tabular-nums;font-size:11px}.price-chart .chart-axis.small{font-size:10px}.chart-baseline{stroke:#ffffff29;stroke-width:1px}.chart-last{stroke:#e3e8f5;stroke-opacity:.45;stroke-width:1px;stroke-dasharray:2 3}.chart-last-tag{fill:#e3e8f5}.chart-hover-tag{fill:#3a4566}.chart-last-text{font-variant-numeric:tabular-nums;fill:#0b1020;font-size:11px;font-weight:600}.chart-hover-tag+.chart-last-text{fill:#e3e8f5}.chart-hover-band{fill:#ffffff0a}.trade-page .chart-tooltip{z-index:2;gap:2px;top:8px;transform:none}.trade-page .chart-tooltip.right{margin-left:14px}.trade-page .chart-tooltip.left{margin-left:-14px;transform:translate(-100%)}.chart-ohlc{grid-template-columns:auto auto;gap:0 12px;font-size:.78rem;display:grid}.chart-ohlc>span{color:var(--muted)}.chart-ohlc>b{text-align:right;font-variant-numeric:tabular-nums}.trade-side{flex-direction:column;gap:8px;min-width:0;min-height:0;display:flex}.trade-side>.panel{flex:none;padding:8px 12px}.trade-side>.trade-info{flex:1;min-height:120px}.trade-side .locked-feature{margin:0}.trade-page .market-form{gap:6px}.trade-page .market-form .market-toggle button{padding:3px 8px;font-size:.8rem}.trade-page .market-field input{padding:4px 8px}.trade-page .market-summary{font-size:.74rem}.trade-page .market-book{max-height:none}.trade-page .market-book h3{margin:0 0 4px;font-size:.9rem}.trade-page .market-table{font-size:.76rem}.trade-info{flex-direction:column;gap:6px;display:flex}.trade-page .trade-info-tabs{grid-template-columns:repeat(3,1fr)}.trade-page .trade-info-tabs button{white-space:nowrap;padding:3px 6px;font-size:.78rem}.trade-info-scroll{flex:1;min-height:0;overflow-y:auto}.trade-info-scroll>.panel{box-shadow:none;background:0 0;border:none;padding:0}.trade-info-scroll>.panel>h3:first-child{display:none}.trade-info-scroll>.market-book{overflow:visible}.trade-info-scroll .market-my h3{margin:8px 0 4px;font-size:.85rem}.trade-info .market-my td{white-space:nowrap;padding:3px 4px}.trade-info .market-trades li{font-size:.74rem}.trade-info .error{margin:0 0 4px}@media (height<=960px){.trade-page .trade-head-info{display:none}}@media (width<=1600px){.trade-page{grid-template-columns:212px minmax(0,1fr)}.trade-main{grid-template-columns:minmax(0,1fr) 236px}}.reports{--res:var(--accent);gap:12px;display:grid}.reports-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.reports-filter button{align-items:center;gap:6px;display:inline-flex}.reports-count{min-width:18px;color:var(--text);text-align:center;background:#ffffff1f;border-radius:9px;padding:0 5px;font-size:.72rem;line-height:18px}.reports-body{grid-template-columns:minmax(260px,2fr) minmax(0,3fr);align-items:start;gap:12px;display:grid}.reports-list{max-height:max(420px, calc(100vh - var(--alert-h,0px) - 300px));padding:6px;overflow-y:auto}.reports-list ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.reports-list>p{margin:10px}.reports-item{text-align:left;width:100%;color:var(--text);background:#ffffff08;border:1px solid #ffffff0f;border-left:3px solid #0000;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:2px 10px;padding:8px 10px;display:grid;position:relative}.reports-item:hover{background:#ffffff12}.reports-item.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}.reports-item.unread{background:#ff8a7a12;border-left-color:#ff8a7a}.reports-item.unread .reports-item-title{font-weight:700}.reports-icon{background:#ffffff12;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.95rem;display:grid}.reports-icon.cat-kaempfe{background:#ff7a7a29}.reports-icon.cat-expeditionen{background:#b78cff2e}.reports-icon.cat-bau{background:#f2c94c26}.reports-icon.cat-diplomatie{background:#7fd6a026}.reports-icon.cat-allianz{background:#5b8cff2e}.reports-item-text{gap:2px;min-width:0;display:grid}.reports-item-title{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.reports-item-meta{justify-content:space-between;gap:10px;min-width:0;display:flex}.reports-item-line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reports-item-time{white-space:nowrap;flex:none}.reports-detail{min-height:260px}.reports-empty{text-align:center;margin:40px 0}.reports-back{margin-bottom:8px;display:none}.reports-article{gap:14px;display:grid}.reports-article header{gap:4px;display:grid}.reports-article h3{margin:0;font-size:1.2rem}.reports-article h4{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;font-size:.85rem;font-weight:600}.reports-article.proc{border-radius:8px;padding:10px;box-shadow:inset 0 0 0 1px #f2c94c40}.reports-outcome{margin:0;font-size:1.15rem;font-weight:700}.reports-facts{grid-template-columns:max-content minmax(0,1fr);gap:4px 16px;margin:0;display:grid}.reports-facts dt{color:var(--muted)}.reports-facts dd{margin:0}.reports-depth{align-items:center;gap:10px;display:inline-flex}.reports-depth-bar{background:#ffffff1a;border-radius:3px;width:140px;height:6px;display:inline-block;overflow:hidden}.reports-depth-bar span{background:linear-gradient(90deg,#7fb2ff,#b78cff);height:100%;display:block}.reports-resources,.reports-finds{gap:6px;margin:0;padding:0;list-style:none;display:grid}.reports-resources li{grid-template-columns:26px 1fr auto;align-items:center;gap:8px;max-width:360px;display:grid}.reports-resources .resource-icon,.reports-resources svg{width:26px;height:26px}.reports-resources strong{color:inherit}.reports-resources li span{color:var(--text)}.reports-finds li{--rarity:#a8b0c0;border:1px solid color-mix(in srgb, var(--rarity) 45%, transparent);background:color-mix(in srgb, var(--rarity) 9%, transparent);border-radius:8px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px;display:grid}.reports-finds .champion-portrait,.reports-finds .item-icon{width:40px;height:40px}.reports-rarity{color:#10131f;background:var(--rarity);border-radius:6px;margin-left:4px;padding:0 6px;font-size:.7rem;font-weight:700;display:inline-block}.reports-sides{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.reports-side ul{gap:3px;margin:0;padding:0;list-style:none;display:grid}.reports-side li{background:#ffffff0a;border-radius:6px;justify-content:space-between;gap:8px;padding:3px 8px;display:flex}.reports-encounter{margin:0;font-weight:600}.reports-actions{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}@media (width<=800px){.reports-body{grid-template-columns:minmax(0,1fr)}.reports-list{max-height:none}.reports-detail,.reports-has-detail .reports-list{display:none}.reports-has-detail .reports-detail{display:block}.reports-back{display:inline-block}.reports-sides{grid-template-columns:minmax(0,1fr)}}.ach-page{--gold:#f2c94c;--ach-hall-h:clamp(140px, calc(100vh - var(--alert-h,0px) - 740px), 160px);--ach-list-h:calc(100vh - var(--alert-h,0px) - var(--ach-hall-h) - 290px);flex-direction:column;gap:10px;display:flex}.ach-hall{height:var(--ach-hall-h);background:#070914;border:1px solid #f2c94c47;border-radius:12px;grid-template-columns:auto minmax(0,1fr) minmax(0,auto);align-items:center;gap:18px;padding:10px 18px;display:grid;position:relative;overflow:hidden}.ach-backdrop{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ach-hall>:not(.ach-backdrop){position:relative}.ach-star{animation:4s ease-in-out infinite ach-twinkle}@keyframes ach-twinkle{0%,to{opacity:.25}50%{opacity:.95}}.ach-nebula{transform-box:fill-box;transform-origin:50%;animation:12s ease-in-out infinite alternate ach-breathe}.ach-nebula-2{animation-duration:16s}@keyframes ach-breathe{to{opacity:.7;transform:scale(1.12)}}.ach-comet-path{animation:11s linear infinite ach-comet}@keyframes ach-comet{0%{opacity:0;transform:translate(-120px,20px)rotate(8deg)}4%{opacity:1}30%{opacity:0;transform:translate(1100px,175px)rotate(8deg)}to{opacity:0;transform:translate(1100px,175px)rotate(8deg)}}.ach-hall-crest{height:calc(var(--ach-hall-h) - 20px);aspect-ratio:1}.ach-crest{filter:drop-shadow(0 0 10px #f2c94c40);width:100%;height:100%}.ach-crest-orbit{transform-origin:50px 50px;animation:40s linear infinite ach-spin}@keyframes ach-spin{to{transform:rotate(360deg)}}.ach-crest-num{fill:var(--gold);font-size:22px;font-weight:700}.ach-crest-total{fill:var(--muted);font-size:9px}.ach-hall-stats{flex-direction:column;gap:4px;min-width:0;display:flex}.ach-hall-stats h2{letter-spacing:.04em;color:var(--gold);font-size:1.1rem;line-height:1.2}.ach-hall-numbers{flex-wrap:wrap;gap:22px;display:flex}.ach-hall-numbers>span{flex-direction:column;display:flex}.ach-hall-numbers strong{font-size:1.05rem}.ach-claim-all{flex-wrap:wrap;align-items:center;gap:12px;min-height:34px;display:flex;position:relative}.ach-claim-all button,button.ach-claim{color:#1b1504;background:linear-gradient(#f6d66b,#c99a24);padding:7px 14px;font-weight:600;box-shadow:0 0 14px #f2c94c59}.ach-claim-all button:hover:not(:disabled),button.ach-claim:hover:not(:disabled){background:linear-gradient(#ffe58a,#d8aa31)}.ach-claim-all button:disabled,button.ach-claim:disabled{color:var(--muted);box-shadow:none;background:#2a3350}.ach-hall-recent{flex-direction:column;justify-content:center;align-self:stretch;gap:6px;display:flex}.ach-shelf{gap:10px;display:flex}.ach-shelf-item{text-align:center;flex-direction:column;align-items:center;gap:2px;width:76px;display:flex}.ach-shelf-item .small{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.72rem;line-height:1.15;display:-webkit-box;overflow:hidden}.ach-body{grid-template-columns:210px minmax(0,1fr);align-items:start;gap:12px;display:grid}.ach-groups{max-height:calc(var(--ach-list-h) + 46px);background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;flex-direction:column;gap:3px;padding:6px;display:flex;overflow-y:auto}button.ach-group{color:var(--text);text-align:left;background:0 0;border-radius:8px;grid-template-rows:auto 3px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:2px 8px;padding:3px 9px;font-size:.86rem;display:grid;position:relative}button.ach-group:hover:not(:disabled){background:#5b8cff1f}button.ach-group.selected{box-shadow:inset 2px 0 0 var(--gold);background:#f2c94c24}.ach-group .ach-glyph,.ach-glyph-all{color:var(--gold);text-align:center;grid-row:1/3}.ach-group-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ach-group-count{font-size:.78rem}.ach-group-bar{background:#8c96b333;border-radius:2px;grid-column:2/4;height:3px;overflow:hidden}.ach-group-bar>span{background:linear-gradient(90deg, #c98b5a, var(--gold));height:100%;display:block}.ach-main{flex-direction:column;gap:8px;min-width:0;display:flex}.ach-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ach-filters{flex-wrap:wrap;gap:6px;display:flex}button.ach-filter{background:var(--panel);color:var(--text);border:1px solid var(--panel-border);border-radius:999px;padding:6px 12px;font-size:.86rem}button.ach-filter:hover:not(:disabled){background:#5b8cff24}button.ach-filter.selected{border-color:var(--gold);background:#f2c94c29}.ach-search{border:1px solid var(--panel-border);width:190px;color:var(--text);font:inherit;background:#0a0e1cb3;border-radius:8px;padding:6px 10px;font-size:.86rem}.ach-list{max-height:var(--ach-list-h);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-auto-rows:min-content;align-content:start;gap:8px;min-height:160px;padding-right:4px;display:grid;overflow-y:auto}.ach-empty{grid-column:1/-1}.ach-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid;position:relative}.ach-card.ach-claimable{background:linear-gradient(120deg, #f2c94c24, var(--panel) 55%);border-color:#f2c94ca6}.ach-card.ach-claimed{border-color:#f2c94c40}.ach-card.ach-fresh:after{content:"";pointer-events:none;border-radius:10px;animation:2.4s ease-in-out infinite ach-fresh;position:absolute;inset:-1px;box-shadow:0 0 0 1px #f2c94c99,0 0 18px #f2c94c40}@keyframes ach-fresh{50%{opacity:.35}}.ach-card-body{flex-direction:column;gap:3px;min-width:0;display:flex}.ach-card-body h3{align-items:center;gap:6px;margin:0;font-size:.94rem;display:flex}.ach-card-body p{margin:0;line-height:1.25}.ach-new{text-transform:uppercase;letter-spacing:.06em;background:var(--gold);color:#1b1504;border-radius:999px;padding:1px 6px;font-size:.66rem;font-weight:700}.ach-progress{align-items:center;gap:8px;display:flex}.ach-progress-bar{background:#8c96b333;border-radius:3px;flex:1;height:6px;overflow:hidden}.ach-progress-bar>span{background:linear-gradient(90deg, var(--accent), #8fb1ff);border-radius:3px;height:100%;display:block}.ach-progress .small{white-space:nowrap;font-size:.76rem}.ach-rewards{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ach-bonus{color:var(--text);align-items:center;gap:8px;font-size:.78rem;display:inline-flex}.ach-bonus.dim{opacity:.5}.ach-bonus>span,.ach-chip{align-items:center;gap:3px;display:inline-flex}.ach-bonus .resource-icon,.ach-chip .resource-icon,.ach-burst .resource-icon{width:15px;height:15px}.ach-chip{background:#b78cff29;border:1px solid #b78cff59;border-radius:999px;padding:1px 7px 1px 3px;font-size:.74rem}.ach-card-action{justify-content:center;align-items:center;min-width:32px;display:flex;position:relative}button.ach-claim{padding:6px 11px;font-size:.84rem}.ach-claimed{color:var(--gold);font-size:1.1rem}.ach-medal{display:block;overflow:visible}.ach-medal-open{opacity:.85}.ach-medal-shine{animation:6s ease-in-out infinite ach-shine}.ach-tier-2 .ach-medal-shine,.ach-tier-3 .ach-medal-shine{animation-duration:4s}@keyframes ach-shine{0%,70%{transform:translate(0)skew(-20deg)}to{transform:translate(110px)skew(-20deg)}}.ach-medal-glow{transform-origin:32px 30px;animation:1.6s ease-in-out infinite ach-glow}@keyframes ach-glow{0%,to{opacity:.25;transform:scale(.94)}50%{opacity:.9;transform:scale(1.03)}}.ach-medal-rays{transform-origin:32px 30px;animation:24s linear infinite ach-spin}.ach-burst{pointer-events:none;z-index:2;position:absolute;bottom:100%;right:0}.ach-burst-group{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.ach-burst-item{color:var(--gold);text-shadow:0 0 6px #000000e6;white-space:nowrap;opacity:0;align-items:center;gap:3px;font-size:.82rem;font-weight:700;animation:1.5s ease-out forwards ach-rise;display:inline-flex}@keyframes ach-rise{0%{opacity:0;transform:translateY(14px)scale(.8)}20%{opacity:1;transform:translateY(0)scale(1.05)}to{opacity:0;transform:translateY(-26px)scale(1)}}@media (width<=1100px){.ach-hall{grid-template-columns:auto minmax(0,1fr)}.ach-hall-recent{display:none}}@media (width<=800px){.ach-page{--ach-hall-h:auto;--ach-list-h:70vh}.ach-hall-crest{height:90px}.ach-body{grid-template-columns:1fr}.ach-groups{flex-flow:wrap;max-height:none}button.ach-group{grid-template-columns:20px auto auto}}@media (prefers-reduced-motion:reduce){.ach-page *{animation:none!important}}:root{--bg:#070a14;--panel:#12182cd1;--panel-border:#7896dc2e;--text:#e3e8f5;--muted:#8c96b3;--accent:#5b8cff;--accent-hover:#7aa2ff;--error:#ff7a7a;--ferrit:#c98b5a;--lumit:#6fd6e8;--quantar:#b78cff;--nexo:#f2c94c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);font-family:system-ui,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(ellipse at 20% 10%, #5b8cff1f, transparent 50%), radial-gradient(ellipse at 85% 80%, #b78cff1a, transparent 50%), var(--bg);min-height:100vh;margin:0}h1,h2{margin:0;font-weight:600}.muted{color:var(--muted)}.small{font-size:.85rem;line-height:1.4}.error{color:var(--error)}.panel{background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px;padding:20px}button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 16px}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{color:var(--muted);cursor:not-allowed;background:#2a3350}button.link{color:var(--muted);background:0 0;padding:4px 8px}button.link:hover:not(:disabled){color:var(--text);background:0 0}.center{place-items:center;min-height:100vh;padding:16px;display:grid}.create{flex-direction:column;gap:14px;width:min(400px,100%);display:flex}.create label{flex-direction:column;gap:6px;font-size:.9rem;display:flex}.create input{font:inherit;border:1px solid var(--panel-border);color:var(--text);background:#0000004d;border-radius:8px;padding:10px 12px}.hint{color:var(--muted);margin:0;font-size:.8rem}.planet{flex-direction:column;gap:10px;max-width:1200px;margin:0 auto;padding:12px 16px;display:flex}.topbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.topbar-right{align-items:center;gap:8px;display:flex}.badge{white-space:nowrap;color:#ffd27a;background:#ffc85026;border-radius:999px;padding:3px 8px;font-size:.8rem}.resources{z-index:2;grid-template-columns:repeat(4,1fr);gap:12px;display:grid;position:relative}.resource{background:var(--panel);border:1px solid var(--panel-border);border-left:4px solid var(--res);border-radius:10px;flex-direction:column;padding:9px 14px;display:flex}.resource-name{color:var(--res);font-size:.85rem;font-weight:600}.resource-amount{font-variant-numeric:tabular-nums;font-size:1.5rem}.resource-rate{color:var(--muted);font-size:.8rem}.res-ferrit{--res:var(--ferrit)}.res-lumit{--res:var(--lumit)}.res-quantar{--res:var(--quantar)}.res-nexo{--res:var(--nexo)}.res-lab{--res:#9fd8ff}.section-title{margin:8px 0 -6px;font-size:1.2rem}.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.card{border-top:3px solid var(--res);flex-direction:column;gap:12px;display:flex}.card header{justify-content:space-between;align-items:center;gap:6px;display:flex}.card header h3{flex:1}.card p{margin:0}.level{color:var(--res);font-weight:600}.next{grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:.9rem;display:grid}.next dt{color:var(--muted)}.next dd{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 10px;margin:0;display:flex}.cost.missing{color:var(--error)}.card button{margin-top:auto}.progress-box{flex-direction:column;gap:8px;margin-top:auto;font-size:.9rem;display:flex}.progress-box p{margin:0}.progress{background:#ffffff14;border-radius:999px;height:8px;overflow:hidden}.progress-bar{background:var(--res);height:100%;transition:width .25s linear}.hero{grid-template-columns:minmax(0,330px) minmax(0,1fr);align-items:center;gap:24px;display:grid}.hero-planet{flex-direction:column;align-items:center;gap:4px;width:100%;min-width:0;display:flex}.hero-title{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:2px 4px 0;display:flex}.hero-title h1{margin:0;font-size:2rem}.planet-scene{flex-shrink:0;max-width:100%}.hero .planet-scene{aspect-ratio:1;height:auto!important}.hero-info .species-panel,.hero-info .population-panel{padding:10px 12px;font-size:.85rem}.hero-info .bonus-list{font-size:.8rem}@media (width<=800px){.hero{grid-template-columns:minmax(0,1fr)}.hero .hero-planet{order:-1}}.planet-scene canvas{max-width:100%;display:block;height:auto!important}.hero-info{flex-direction:column;gap:12px;min-width:0;display:flex}.hero-info .species-panel,.hero-info .population-panel{max-width:none;margin-top:0}.card{overflow:hidden}.card h3{margin:0;font-size:1.15rem}.building-art{border-bottom:1px solid var(--panel-border);width:calc(100% + 40px);height:150px;margin:-20px -20px 0;display:block}.tier{color:var(--muted);font-size:.8rem}.tier strong{color:var(--res)}.art-spin{animation:3s linear infinite art-spin}.art-spin-slow{animation:6s linear infinite art-spin-y}.art-blink{animation:1.6s ease-in-out infinite art-blink}.art-window{animation:5s ease-in-out infinite art-window}.art-pulse{animation:2.8s ease-in-out infinite art-pulse}.art-flow{animation:1.2s linear infinite art-flow}.art-flow-fast{animation:.6s linear infinite art-flow}.art-cart{animation:9s linear infinite art-cart}.art-sway{animation:4s ease-in-out infinite alternate art-sway}.art-conveyor{animation:3.6s linear infinite art-conveyor}@keyframes art-conveyor{0%{opacity:0;transform:translate(0)}15%{opacity:1}85%{opacity:1}to{opacity:0;transform:translate(42px)}}.art-drill{animation:.5s ease-in-out infinite alternate art-drill}.art-float{animation:3s ease-in-out infinite alternate art-float}.art-drift{animation:12s ease-in-out infinite alternate art-drift}.art-smoke,.art-intake{transform-box:fill-box;transform-origin:50%}.art-smoke{opacity:0;animation:3.9s ease-out infinite art-smoke}.art-intake{opacity:0;animation:2.7s ease-in infinite art-intake}@keyframes art-spin{to{transform:rotate(360deg)}}@keyframes art-spin-y{0%{transform:scaleX(1)}50%{transform:scaleX(-1)}to{transform:scaleX(1)}}@keyframes art-blink{0%,to{opacity:.2}50%{opacity:1}}@keyframes art-window{0%,to{opacity:.95}45%{opacity:.5}}@keyframes art-pulse{0%,to{opacity:.35}50%{opacity:.9}}@keyframes art-flow{to{stroke-dashoffset:-14px}}@keyframes art-cart{0%{transform:translate(8px)}to{transform:translate(185px)}}@keyframes art-sway{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}@keyframes art-drill{0%{transform:translateY(0)}to{transform:translateY(3px)}}@keyframes art-float{0%{transform:translateY(-3px)}to{transform:translateY(3px)}}@keyframes art-drift{0%{transform:translate(-12px)}to{transform:translate(12px)}}@keyframes art-smoke{0%{opacity:0;transform:translate(0)scale(.6)}15%{opacity:.55}to{opacity:0;transform:translate(8px,-26px)scale(2.2)}}@keyframes art-intake{0%{opacity:0;transform:translateY(-14px)}30%{opacity:.8}to{opacity:0;transform:translateY(8px)scale(.5)}}@media (prefers-reduced-motion:reduce){.species-portrait *,.building-art *{animation:none!important}}.gallery h2{margin:12px 0 4px}.gallery-row{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.gallery-item{border:1px solid var(--panel-border);background:var(--panel);border-radius:10px;overflow:hidden}.gallery-item .building-art{width:100%;height:120px;margin:0}.gallery-item p{color:var(--muted);margin:0;padding:6px 10px;font-size:.8rem}.create{width:min(720px,100%)}.species-picker{border:none;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.species-picker legend{margin-bottom:4px;font-size:.9rem}.species-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.species-card{border:1px solid var(--panel-border);border-top:3px solid var(--species);cursor:pointer;background:#00000040;border-radius:10px;flex-direction:column;gap:6px;padding:12px;transition:border-color .15s,background .15s;display:flex;position:relative}.species-card:hover{background:#ffffff0a}.species-card.selected{border-color:var(--species);box-shadow:0 0 0 2px var(--species), 0 0 18px color-mix(in srgb, var(--species) 35%, transparent);background:color-mix(in srgb, var(--species) 14%, transparent)}.species-card.selected strong:after{content:" ✓"}.species-card input{opacity:0;pointer-events:none;position:absolute}.species-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.species-card strong{color:var(--species)}.strength-order{color:var(--text);margin:0;padding-left:18px;font-size:.78rem}.species-panel{border:1px solid var(--panel-border);border-left:3px solid var(--species);background:var(--panel);border-radius:10px;max-width:420px;margin-top:8px;padding:12px 14px}.species-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.species-head strong{color:var(--species)}.bonus-list{flex-direction:column;gap:3px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.bonus-list li{justify-content:space-between;gap:12px;display:flex}.bonus-value{font-variant-numeric:tabular-nums;text-align:right}.species-portrait{aspect-ratio:120/140;width:100%;height:auto;max-height:150px;display:block}.small-portrait{background:#00000040;border-radius:8px;flex-shrink:0;width:52px;height:61px}.gallery-species{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.gallery-species .planet-scene{margin:0 auto}.population-panel{border:1px solid var(--panel-border);background:var(--panel);--res:#7fd6a0;border-left:3px solid #7fd6a0;border-radius:10px;flex-direction:column;gap:6px;max-width:420px;margin-top:8px;padding:12px 14px;display:flex}.population-head{justify-content:space-between;align-items:baseline;font-size:.9rem;display:flex}.population-head strong{font-variant-numeric:tabular-nums}@media (width<=800px){.resources{grid-template-columns:repeat(2,1fr)}}.res-planet{--res:#ff9e6b}.planet-level-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px 32px;display:grid}.planet-level-next{flex-direction:column;gap:12px;display:flex}.requirements{flex-direction:column;gap:6px;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.requirements li{grid-template-columns:1.2em auto 1fr;align-items:baseline;gap:8px;display:grid}.requirements li.met>span:first-child{color:#7fd6a0}.requirements li.missing>span:first-child{color:var(--error)}.requirement-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}@media (width<=800px){.planet-level-body{grid-template-columns:1fr}}.gallery-levels{flex-wrap:wrap;gap:6px;margin:8px 0 16px;display:flex}.gallery-levels button[aria-pressed=true]{background:var(--accent-hover);outline:2px solid #fff}.resource{grid-template-rows:auto auto auto;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;display:grid}.resource .resource-icon{grid-row:1/4;width:44px;height:44px}.res-icon-spin{transform-box:view-box;transform-origin:24px 24px;animation:7s linear infinite art-spin}.art-ecg{stroke-dasharray:40 60;animation:2s linear infinite art-ecg}@keyframes art-ecg{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}.planet-level-art{border-bottom:1px solid var(--panel-border);background:radial-gradient(at 50% 60%,#ff9e6b1f,#0000 70%),linear-gradient(#0b0f20,#141a30);width:calc(100% + 40px);height:78px;margin:-20px -20px 0;display:block}@media (prefers-reduced-motion:reduce){.resource-icon *,.planet-level-art *{animation:none!important}}.resource>span{grid-column:2}.gallery-icons{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.gallery-icon{width:96px;height:96px;margin:10px auto 0;display:block}.gallery-wide{border:1px solid var(--panel-border);background:var(--panel);border-radius:10px;overflow:hidden}.gallery-wide .planet-level-art{width:100%;margin:0}.gallery-wide p{color:var(--muted);margin:0;padding:6px 10px;font-size:.8rem}.planet-level-art canvas{display:block}.hero .planet-scene{margin:calc(var(--scene) * -.12) 0 calc(var(--scene) * -.14);pointer-events:none}.hero-title,.hero+.planet-level-card,.hero~.error+.planet-level-card{z-index:1;position:relative}@media (width<=800px){.hero .planet-scene{margin:-12% 0 -14%}}.gallery-portraits{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-bottom:12px}.hero-info .species-head{margin-bottom:4px}.hero-info .bonus-list{gap:1px}.hero-info .small-portrait{width:50px;height:58px}.species-head .species-bonus-button{color:var(--species);align-self:flex-start;margin-left:auto;font-size:.8rem}.species-duo{background:0 0;border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;width:100%;max-width:380px;margin:0 auto 8px;padding:0;display:grid}.species-duo:hover:not(:disabled){background:0 0}.species-duo .duo-portrait{border:1px solid color-mix(in srgb, var(--species) 35%, transparent);background:#00000047;border-radius:10px;transition:border-color .2s,transform .2s}.species-duo:hover .duo-portrait{border-color:var(--species);transform:translateY(-2px)}.bonus-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.bonus-chips li{font-variant-numeric:tabular-nums;cursor:help;background:#ffffff0a;border-radius:6px;flex-direction:column;align-items:center;padding:3px 2px;font-size:.72rem;line-height:1.25;display:flex}.bonus-chips li strong{color:var(--text);font-size:.85rem}.species-dialog{border-left:3px solid var(--species);width:min(480px,100%)}.species-dialog h2{color:var(--species);margin:0}.species-dialog-text{margin:0}.species-dialog .bonus-list li{align-items:baseline}.hero-info .population-panel{gap:4px}.hero-info .hero-title h1{font-size:1.7rem}.gallery-icons+.gallery-icons{margin-top:12px}.game-body{grid-template-columns:190px minmax(0,1fr);align-items:start;gap:20px;display:grid}.game-content{flex-direction:column;gap:14px;min-width:0;display:flex}.side-nav{border:1px solid var(--panel-border);background:var(--panel);border-radius:12px;flex-direction:column;gap:4px;padding:8px;display:flex;position:sticky;top:16px}.side-nav-item{color:var(--muted);text-align:left;background:0 0;border-left:3px solid #0000;align-items:center;gap:10px;padding:10px 12px;display:flex}.side-nav-item:hover:not(:disabled){color:var(--text);background:#ffffff0d}.side-nav-item.active,.side-nav-item.active:hover:not(:disabled){color:var(--text);border-left-color:var(--accent);background:#5b8cff29}.side-nav-item svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;flex-shrink:0;width:20px;height:20px}.side-nav-busy{background:#ffb36b;border-radius:50%;width:8px;height:8px;margin-left:auto;animation:1.6s ease-in-out infinite art-pulse}@media (width<=800px){.game-body{grid-template-columns:minmax(0,1fr);gap:12px}.side-nav{flex-direction:row;padding:4px;position:static}.side-nav-item{border-bottom:3px solid #0000;border-left:none;flex-direction:column;flex:1 1 0;justify-content:center;gap:2px;min-width:0;padding:6px 4px;font-size:.75rem}.side-nav-busy{margin-left:0}.side-nav-item.active,.side-nav-item.active:hover:not(:disabled){border-bottom-color:var(--accent)}}.res-defense{--res:#ff8a7a}.res-ship{--res:#7fb2ff}.unit-summary{border-left:3px solid var(--res);grid-template-columns:1.3fr repeat(3,1fr) 2fr;align-items:center;gap:12px 20px;padding:12px 16px;display:grid}.unit-summary>div{font-variant-numeric:tabular-nums;flex-direction:column;gap:2px;display:flex}.unit-value strong{color:var(--res);font-size:1.4rem}.card.locked{opacity:.55}@media (width<=800px){.unit-summary{grid-template-columns:repeat(2,1fr)}.unit-slot{grid-column:1/-1}}.unit-research{border-top:1px solid var(--panel-border);flex-direction:column;gap:8px;padding-top:10px;display:flex}.unit-research-title{font-size:.85rem}.unit-research-title strong{color:var(--nexo)}.unit-research .progress-bar{background:var(--nexo)}button.secondary{color:var(--nexo);background:#f2c94c24;border:1px solid #f2c94c66}button.secondary:hover:not(:disabled){background:#f2c94c3d}button.secondary:disabled{color:var(--muted);background:#2a3350;border-color:#0000}.gallery-defense{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-bottom:12px}.gallery-defense .building-art{height:100px}.unit-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:14px;display:grid}.unit-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.unit-tile{text-align:left;color:var(--text);background:var(--panel);border:1px solid var(--panel-border);border-top:2px solid var(--res);border-radius:10px;flex-direction:column;gap:2px;padding:0 0 7px;display:flex;overflow:hidden}.unit-tile:hover:not(:disabled){background:#283254e6}.unit-tile.selected,.unit-tile.selected:hover:not(:disabled){border-color:var(--res);box-shadow:0 0 0 1px var(--res) inset;background:color-mix(in srgb, var(--res) 16%, #12182c)}.unit-tile.locked{opacity:.5}.unit-tile .building-art{width:100%;height:58px;margin:0 0 3px}.unit-tile-name,.unit-tile-level{white-space:nowrap;text-overflow:ellipsis;padding:0 9px;overflow:hidden}.unit-tile-name{font-size:.82rem;font-weight:600}.unit-tile-level{color:var(--res);font-variant-numeric:tabular-nums;font-size:.74rem}.unit-tile-research{color:var(--nexo)}.unit-tile .progress{height:4px;margin:4px 9px 0;display:block}.unit-tile .progress-bar{display:block}.unit-tile .progress.research .progress-bar{background:var(--nexo)}.unit-detail .card{gap:8px;padding:14px 16px}.unit-detail .building-art{width:calc(100% + 32px);height:104px;margin:-14px -16px 0}.unit-detail .card h3{font-size:1.05rem}.unit-detail .next{gap:3px 10px;font-size:.84rem}.unit-detail .card p{font-size:.84rem}.unit-detail button{padding:7px 14px}.unit-detail .unit-research{gap:6px;padding-top:8px}.unit-summary{padding:9px 16px}@media (width<=1000px){.unit-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){.unit-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}.unit-page{flex-direction:column;gap:14px;display:flex}button.commander{color:var(--muted);background:0 0;border-radius:999px;align-items:center;gap:10px;padding:2px 10px 2px 2px;display:flex}button.commander:hover:not(:disabled){color:var(--text);background:#ffffff0f}button.commander strong{color:var(--text)}.profile-badge{flex-shrink:0;display:block}button.ranking-button{color:var(--text);background:#f2c94c1a;border:1px solid #f2c94c59;border-radius:999px;padding:6px 12px;font-size:.9rem}button.ranking-button:hover:not(:disabled),button.ranking-button.active{background:#f2c94c38}.dialog-backdrop{z-index:20;background:#04060eb8;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{background:#111830;flex-direction:column;gap:10px;width:min(640px,100%);max-height:calc(100vh - 32px);display:flex;overflow-y:auto}.dialog h3{margin:4px 0 0;font-size:1rem}.profile-head{align-items:center;gap:16px;display:flex}.profile-head h2{margin:0}.profile-head p{margin:2px 0}.dialog-close{align-self:flex-start;margin-left:auto;font-size:1.1rem}.profile-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:6px;display:grid}button.profile-choice{background:#ffffff08;border:1px solid #0000;border-radius:10px;justify-content:center;padding:4px;display:flex;position:relative}button.profile-choice:hover:not(:disabled){background:#ffffff14}button.profile-choice.selected{border-color:var(--accent);background:#5b8cff29}button.profile-choice:disabled{cursor:help;background:#ffffff05}button.profile-choice:disabled .profile-badge{opacity:.3;filter:grayscale()}.profile-lock{font-size:.75rem;position:absolute;bottom:4px;right:6px}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.ranking{flex-direction:column;gap:10px;display:flex}.ranking>p{margin:0}.league-ladder{grid-template-columns:repeat(8,1fr);gap:6px;padding:10px;display:grid}.league{color:var(--muted);border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;font-size:.8rem;display:flex}.league.current{color:var(--text);background:#ffffff14;outline:1px solid #ffffff40}.league-gem{font-size:1.4rem}.league-bronze .league-gem{color:#cd8a4e}.league-silver .league-gem{color:#c8d0e0}.league-gold .league-gem{color:#f2c94c}.league-platinum .league-gem{color:#9fe8ff}.league-diamond .league-gem{color:#7fb2ff}.league-master .league-gem{color:#d58cff}.league-grandmaster .league-gem{color:#ff7a7a}.league-top500 .league-gem{color:#ffe08a}.ranking-table-wrap{padding:6px 10px;overflow-x:auto}.ranking-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.9rem}.ranking-table th{text-align:left;color:var(--muted);padding:6px 8px;font-weight:500}.ranking-table td{border-top:1px solid var(--panel-border);padding:6px 8px}.ranking-table tr.own td{background:#5b8cff1f}.ranking-name{align-items:center;gap:8px;display:flex}@media (width<=800px){.league-ladder{grid-template-columns:repeat(4,1fr)}button.ranking-button .muted{display:none}.topbar{flex-wrap:wrap;gap:6px 10px}.side-nav{flex-wrap:wrap}.side-nav-item{flex:1 0 22%}.ranking-table:not(.battle-table) th:nth-child(3),.ranking-table:not(.battle-table) td:nth-child(3){display:none}}.battle-backdrop{z-index:30}.battle-viewer{background:#070a16;flex-direction:column;gap:10px;width:min(1100px,100%);height:min(760px,100vh - 32px);padding:14px 16px;display:flex;position:relative}.battle-bars{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;font-size:.85rem;display:grid}.battle-side{flex-direction:column;gap:4px;display:flex}.battle-side.attacker{--res:#ff9e6b}.battle-side.defender{--res:#7fd4ff;text-align:right}.battle-side .progress.dome{--res:#bfefff;height:4px}.battle-clock{font-variant-numeric:tabular-nums;font-size:1.3rem}.battle-scene{background:radial-gradient(#10183a 0%,#05070f 75%);border-radius:10px;flex:1;min-height:0;overflow:hidden}.battle-scene canvas{display:block}.battle-result{text-align:center;border:1px solid var(--panel-border);background:#0a0e1eeb;border-radius:14px;width:min(560px,100% - 32px);padding:18px 22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.battle-result h2{margin:0 0 6px;font-size:1.6rem}.battle-result.won h2{color:#7fd6a0}.battle-result.lost h2{color:#ff7a7a}.battle-result p{margin:4px 0}.battle-controls{justify-content:center;align-items:center;gap:8px;display:flex}.battle-controls button.speed{color:var(--text);background:#ffffff0f;padding:6px 12px}.battle-controls button.speed.selected{background:var(--accent)}.battle-controls button.speed:disabled{color:var(--muted);cursor:help}.combat-page{--res:#ff8a7a;grid-template-columns:1fr 1fr;align-items:start;gap:12px;display:grid}.combat-column{flex-direction:column;gap:12px;min-width:0;display:flex}.combat-pirates,.combat-raids{flex-direction:column;gap:8px;padding:14px 18px;display:flex}.combat-pirates h3,.combat-raids h3,.combat-pirates p,.combat-raids p{margin:0}.raid-target{background:#ffffff0a;border-left:3px solid #7fd6a0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.raid-target.raid-medium{border-left-color:#ffd27a}.raid-target.raid-hard{border-left-color:#ff8a7a}.raid-target>div{flex-direction:column;gap:2px;display:flex}tr.unseen td{font-weight:600}.badge-new{color:#1a1020;background:#ff8a7a;border-radius:6px;margin-left:4px;padding:0 6px;font-size:.7rem;font-weight:700;display:inline-block}.pirate-alert{background:#7fd6a01a;border-left:3px solid #7fd6a0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:8px 14px;display:flex}.battle-spoils{margin:4px 0;font-weight:600}.battle-spoils.won{color:#7fd6a0}.battle-spoils.lost{color:#ff9e6b}.weapon-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:6px 0;display:grid}.weapon-slot{overflow-wrap:anywhere;text-align:center;min-width:0;color:var(--muted,#8a93a8);border:1px dashed #ffffff40;border-radius:6px;padding:4px 3px;font-size:.75rem}.weapon-slot.filled{border-style:solid;border-color:var(--rarity,#7fd4ff);color:#dff4ff;background:color-mix(in srgb, var(--rarity,#7fd4ff) 10%, transparent)}button.weapon-slot{cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:52px;display:flex}button.weapon-slot:disabled{cursor:default;opacity:.5}button.weapon-slot.open{outline:1px solid var(--res)}.weapon-slot .item-icon{width:30px;height:30px}.weapon-slot .slot-type{overflow-wrap:normal;word-break:keep-all;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.66rem;overflow:hidden}.part-picker{border:1px solid var(--panel-border);border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;max-height:180px;margin-bottom:6px;padding:6px;display:flex;overflow-y:auto}.part-choice{text-align:left;width:100%;color:inherit;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:3px 6px;display:flex}.part-choice:hover:not(:disabled){border-color:var(--res)}.part-choice .item-icon{flex:none;width:28px;height:28px}.part-stats{margin:2px 0}.combat-page>p{margin:0}.combat-status,.combat-training{border-left:3px solid var(--res);justify-content:space-between;align-items:center;gap:20px;padding:14px 18px;display:flex}.combat-status>div,.combat-training>div{flex-direction:column;gap:4px;display:flex}.combat-status.ready strong{color:#7fd6a0}.combat-status.recharging strong{color:#ffd27a}.combat-status strong{font-size:1.2rem}.combat-training h3,.combat-history h3,.combat-training p,.combat-halt{margin:0}.combat-halt{color:#ff9e6b}.combat-history{padding:14px 18px}.combat-history-head,.battle-archive-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.battle-archive{width:min(860px,100%)}.battle-archive-head h2{margin:0}.battle-table td span+span{margin-left:6px}.combat-won{color:#7fd6a0}.combat-lost{color:#ff7a7a}@media (width<=800px){.combat-page{grid-template-columns:1fr}.combat-status,.combat-training{flex-direction:column;align-items:stretch}.battle-bars{grid-template-columns:1fr 1fr}.battle-clock{text-align:center;grid-area:1/1/auto/-1}}.battle-archive .battle-table td{padding-top:3px;padding-bottom:3px;font-size:.85rem}.res-explorer{--res:#b49cff}.res-explorer .unit-tiles{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}@media (width<=720px){.res-explorer .unit-tiles{grid-template-columns:1fr}}.expedition-panel{border-left:3px solid var(--res);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.expedition-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.expedition-head h3{margin:0}.expedition-plan,.expedition-running{flex-direction:column;gap:8px;display:flex}.expedition-plan p{margin:0}.expedition-odds{justify-content:space-between;gap:8px;font-size:.9rem;display:flex}.expedition-last{border-top:1px solid var(--panel-border);flex-direction:column;gap:4px;padding-top:8px;display:flex}.expedition-last button{align-self:flex-start}.expedition-last.proc,tr.proc-row td{background:#ffd75e0f}.proc-tag{color:#ffd75e}.report-loot{flex-wrap:wrap;align-items:center;gap:4px 10px;display:inline-flex}.report-item{align-items:center;gap:2px;display:inline-flex}.item-icon{flex:none;width:22px;height:22px}.depot-tabs{flex-wrap:wrap;gap:6px;display:flex}.depot-tabs button{background:var(--panel);border:1px solid var(--panel-border);color:var(--muted)}.depot-tabs button.selected{color:var(--text,#e8ecf8);border-color:var(--res);background:color-mix(in srgb, var(--res) 14%, var(--panel))}.depot-amount{font-size:1.3rem;font-weight:600}.rarity-tag{color:#10131f;background:var(--rarity,#a8b0c0);border-radius:6px;margin-left:4px;padding:0 6px;font-size:.7rem;font-weight:700}.form-tag{color:var(--muted,#8a93a8);border:1px solid;border-radius:8px;margin-left:6px;padding:0 6px;font-size:.72rem}.form-tag.good{color:#7fd6a0}.form-tag.bad{color:#ff8a7a}.champions-page{--res:#ffd75e;flex-direction:column;gap:12px;display:flex}.champion-counts{flex-wrap:wrap;gap:8px;display:flex}.rarity-count{color:var(--rarity);font-size:.8rem}.champion-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.champion-owned-toggle{align-items:center;gap:6px;display:flex}.champion-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.champion-portrait{width:100%;height:auto;display:block}.champion-info{flex-direction:column;gap:2px;min-width:0;display:flex}.champion-info strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.report-champion{align-items:center;gap:4px;display:inline-flex}.report-champion .champion-portrait{width:22px}.synthesis-row{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.synthesis-row button{padding:2px 8px;font-size:.75rem}.champion-subtabs{margin-bottom:4px}.pvp-page{--res:#ffd75e;flex-direction:column;gap:12px;display:flex}.pvp-team-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.pvp-team-head h3{margin:0 0 2px}.pvp-slots{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.pvp-slot{border:1px dashed var(--rarity,#ffffff40);color:inherit;background:0 0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:150px;padding:6px;display:flex}.pvp-slot.open{outline:1px solid var(--res)}.pvp-slot .champion-portrait{width:80px}.pvp-slot-empty{color:var(--muted,#8a93a8);font-size:2rem}.pvp-picker{border:1px solid var(--panel-border);border-radius:8px;flex-direction:column;gap:4px;max-height:260px;margin-top:8px;padding:6px;display:flex;overflow-y:auto}.pvp-picker .champion-portrait{flex:none;width:28px}.part-choice.selected{border-color:var(--res)}.pvp-team-actions{margin-top:8px}.pvp-opponent-list{flex-direction:column;gap:8px;display:flex}.pvp-opponent{border:1px solid var(--panel-border);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px;display:flex}.pvp-opponent-members{gap:4px;display:flex}.pvp-opponent-members .champion-portrait{width:36px}.champion-battle{flex-direction:column;gap:10px;width:min(1400px,100%);display:flex}.cb-head{justify-content:space-between;align-items:center;gap:8px;display:flex}@media (width<=640px){.pvp-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}.pvp-arena{border-top:3px solid #ffd75e}.arena-league{color:#ffd75e}.arena-reward{color:#7fd6a0;background:#7fd6a01a;border-radius:6px;margin:0 0 8px;padding:6px 8px}.league-ladder .league .muted.small{display:block}.market-table{border-collapse:collapse;width:100%;font-size:.85rem}.market-table th{text-align:left;color:var(--muted,#8a93a8);padding:2px 4px;font-size:.75rem;font-weight:400}.market-table td{border-top:1px solid #ffffff0d;padding:4px}.market-good{align-items:center;gap:6px;display:inline-flex}.market-good .item-icon,.market-good .resource-icon{flex:none;width:24px;height:24px}.market-good.big .item-icon,.market-good.big .resource-icon{width:40px;height:40px}.market-book h3,.market-book h4,.market-my h3{margin:0 0 6px}.market-book h4{margin-top:10px;font-size:.85rem}.book-bar-cell{position:relative}.book-bar{opacity:.18;border-radius:3px;position:absolute;inset:2px auto 2px 0}.book-ask td:first-child{color:#ff8a7a}.book-ask .book-bar{background:#ff8a7a}.book-bid td:first-child{color:#7fd6a0}.book-bid .book-bar{background:#7fd6a0}.book-spread td{text-align:center;color:var(--muted,#8a93a8);padding:6px;font-size:.75rem}.market-trades{margin:0;padding:0;list-style:none}.market-form{flex-direction:column;gap:10px;display:flex}.market-toggle{grid-template-columns:1fr 1fr;gap:4px;display:grid}.market-toggle button{background:var(--panel);border:1px solid var(--panel-border);color:var(--muted)}.market-toggle button.selected{color:var(--text,#e8ecf8);border-color:var(--res)}.market-toggle button.selected.buy,button.buy{border-color:#7fd6a0}.market-toggle button.selected.sell,button.sell{border-color:#ff8a7a}.market-field{flex-direction:column;gap:3px;display:flex}.market-field input{width:100%}.market-summary{flex-direction:column;gap:2px;display:flex}.price-chart{position:relative}.price-chart svg{width:100%;height:auto;display:block}.chart-grid{stroke:#ffffff12;stroke-width:1px}.chart-axis{fill:var(--muted,#8a93a8);font-size:11px}.chart-crosshair{stroke:#ffffff59;stroke-width:1px;stroke-dasharray:3 3}.chart-tooltip{border:1px solid var(--panel-border);pointer-events:none;white-space:nowrap;background:#0a0e1cf2;border-radius:6px;flex-direction:column;padding:4px 8px;font-size:.8rem;display:flex;position:absolute;top:4px;transform:translate(-50%)}.alliance-page{flex-direction:column;gap:12px;display:flex}.alliance-columns{grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:start;gap:12px;display:grid}.alliance-main,.alliance-side{flex-direction:column;gap:12px;min-width:0;display:flex}.alliance-head{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.alliance-head h2{margin:0}.alliance-facts{text-align:right;flex-direction:column;gap:2px;display:flex}.alliance-create{flex-direction:column;gap:8px;display:flex}.alliance-create textarea,.alliance-search{width:100%;color:inherit;border:1px solid var(--panel-border);font:inherit;background:#00000040;border-radius:6px;padding:6px}.alliance-search{margin-bottom:8px}.alliance-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.alliance-donate{gap:6px;margin-bottom:4px;display:flex}.alliance-donate input{flex:1;min-width:0}.alliance-chat-list{flex-direction:column;gap:4px;max-height:260px;margin-bottom:8px;display:flex;overflow-y:auto}.alliance-chat-list p{margin:0}.alliance-chat-list p.own strong{color:#7fd4ff}.alliance-chat-form{gap:6px;display:flex}.alliance-chat-form input{flex:1;min-width:0}@media (width<=900px){.alliance-columns{grid-template-columns:minmax(0,1fr)}}.pvp-target{border:1px solid var(--panel-border);border-radius:8px;flex-direction:column;gap:6px;padding:8px;display:flex}.pvp-target-actions{align-items:center;gap:10px;display:flex}.shop-page{--res:#ffd75e;flex-direction:column;gap:12px;display:flex}.shop-test{color:#ffd75e;border:1px dashed #ffd75e;border-radius:6px;margin:0;padding:6px 10px}.shop-benefits{flex-direction:column;gap:2px;margin:0 0 10px;padding:0;list-style:none;display:flex}.pass-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:10px;display:grid}.pass-level{border:1px solid var(--panel-border);opacity:.6;border-radius:8px;flex-direction:column;gap:4px;padding:6px;display:flex}.pass-level.reached{opacity:1;border-color:#ffd75e}.pass-number{color:#ffd75e;font-weight:700}.pass-reward{text-align:left;color:inherit;background:#ffffff08;border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:1px;padding:4px 6px;display:flex}.pass-reward.premium{background:#ffd75e12}.pass-reward:not(:disabled){cursor:pointer;border-color:#7fd6a0}.pass-reward.claimed{opacity:.6}.cosmetic-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}.cosmetic-card{border:1px solid var(--panel-border);border-radius:8px;flex-direction:column;gap:4px;padding:10px;display:flex}.cosmetic-card.owned{border-color:#7fd6a0}.cosmetic-preview{justify-content:center;align-items:center;height:80px;display:flex}.skin-preview{border-radius:50%;width:72px;height:72px;box-shadow:inset 0 0 0 18px #1a2238}.vacation-start{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.vacation-alert{border-color:#7fd4ff}.auth-form{width:100%;max-width:420px}.side-nav-item.locked{opacity:.45}.unlock-alert{border-color:#6fd88a80}.locked-feature{max-width:560px}.account-section{border-top:1px solid #ffffff1a;margin-top:14px;padding-top:8px}.account-password{flex-wrap:wrap;gap:8px;display:flex}.account-password input{flex:160px}.small.good{color:#6fd88a}.daily-panel ul{gap:4px;margin:6px 0;padding:0;list-style:none;display:grid}.daily-panel li{align-items:center;gap:8px;display:flex}.daily-head{justify-content:space-between;align-items:baseline;display:flex}.daily-head h2{margin:0;font-size:1.05rem}.daily-text{flex:1}.daily-panel li.done .daily-mark{color:#ffd166}.daily-panel li.claimed{opacity:.6}.daily-panel li.claimed .daily-mark{color:#6fd88a}.side-nav-item{position:relative}.side-nav-attention{background:#ff4d4d;border-radius:50%;width:9px;height:9px;position:absolute;top:6px;left:26px;box-shadow:0 0 6px #ff4d4dcc}.messages{grid-template-columns:minmax(200px,1fr) minmax(280px,2fr);align-items:start;gap:14px;display:grid}.messages-list{gap:4px;max-height:70vh;display:grid;overflow-y:auto}.messages-item,.messages-new{text-align:left;background:#ffffff0a;border:1px solid #ffffff14;grid-template-columns:1fr auto;gap:2px 8px;display:grid}.messages-item.selected,.messages-new.selected{border-color:var(--accent,#5fb4ff)}.messages-preview{text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;overflow:hidden}.dot-count{color:#fff;background:#ff4d4d;border-radius:9px;padding:0 6px;font-size:.75rem}.messages-lines{gap:6px;max-height:50vh;margin:0 0 10px;padding:0;list-style:none;display:grid;overflow-y:auto}.messages-lines li{background:#ffffff0f;border-radius:10px;max-width:80%;padding:6px 10px;display:grid}.messages-lines li.mine{background:#5fb4ff26;justify-self:end}.messages-text{white-space:pre-wrap;overflow-wrap:anywhere}.messages-form{gap:6px;display:grid}@media (width<=800px){.messages{grid-template-columns:1fr}}.weapon-slot .item-icon.slot-ghost{opacity:.3;filter:grayscale()}.weapon-slot>span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;max-width:100%;font-size:.68rem;overflow:hidden}.res-research{--res:#f0c86a}.prereqs .requirements{margin:4px 0 0}.slowdown{color:#ffb36b}.tree-dialog{--tree-met:#6fd88a;--tree-partial:#f2c94c;--tree-none:#ff7f72;--tree-line:#96afeb52;border:1px solid var(--panel-border);background:radial-gradient(at 15% 0,#5b8cff24,#0000 55%),linear-gradient(160deg,#1a223efa,#090d1bfa);border-radius:16px;flex-direction:column;gap:14px;width:min(1100px,96vw);max-height:88vh;padding:20px 22px 16px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,0 24px 60px #0000008c}.tree-dialog button.close-x{top:14px;right:14px}.tree-head{align-items:center;gap:14px;padding-right:40px;display:flex}.tree-head-icon{background:radial-gradient(circle at 35% 30%,#7fb2ff47,#1e2d5a66);border:1px solid #7fb2ff66;border-radius:12px;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 0 18px #5b8cff40}.tree-head-icon svg{fill:none;stroke:#b9d0ff;stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round;width:26px;height:26px}.tree-head-text{flex-direction:column;min-width:0;display:flex}.tree-eyebrow{text-transform:uppercase;letter-spacing:.1em;color:#7fb2ff;font-size:.7rem}.tree-head h2{letter-spacing:.01em;margin:1px 0 0;font-size:1.25rem}.tree-status{white-space:nowrap;border-radius:999px;margin-left:auto;padding:5px 12px;font-size:.82rem;font-weight:600}.tree-status.met{color:var(--tree-met);background:#6fd88a1f;border:1px solid #6fd88a73}.tree-status.missing{color:var(--tree-partial);background:#f2c94c1f;border:1px solid #f2c94c80}.tree-section{background:#080c1873;border:1px solid #ffffff12;border-radius:12px;padding:10px 12px}.tree-section h3{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 8px;font-size:.7rem;font-weight:600}.tree-step-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px;max-height:20vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}button.tree-step{border:1px solid #ffffff1a;border-left:3px solid var(--step,var(--tree-line));width:100%;color:var(--text);text-align:left;background:#141c32d9;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:.85rem;transition:background .15s,border-color .15s;display:flex}button.tree-step:hover:not(:disabled){border-color:#7fb2ff73;border-left-color:var(--step,var(--tree-line));background:#28365cf2}.tree-step.partial{--step:var(--tree-partial)}.tree-step.none{--step:var(--tree-none)}.tree-step.met{--step:var(--tree-met)}.tree-step-no{color:#0b1020;background:var(--step);border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:.7rem;font-weight:700;display:grid}.tree-step-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tree-step-level{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.78rem}.tree-step-level b{color:var(--step,var(--text))}.tree-bar{flex-wrap:wrap;align-items:center;gap:6px 16px;display:flex}.tree-legend{align-items:center;gap:6px;display:inline-flex}.tree-legend:before{content:"";background:var(--dot);width:10px;height:10px;box-shadow:0 0 6px var(--dot);border-radius:3px}.tree-legend.met{--dot:var(--tree-met)}.tree-legend.partial{--dot:var(--tree-partial)}.tree-legend.none{--dot:var(--tree-none)}.tree-toggle{cursor:pointer;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.tree{background:radial-gradient(circle,#96afeb12 1px,#0000 1.2px) 0 0/18px 18px,#0508128c;border:1px solid #ffffff0f;border-radius:12px;flex:auto;min-height:120px;padding:14px 12px 8px;overflow:auto}.tree ul{justify-content:center;margin:0;padding:20px 0 0;list-style:none;display:flex;position:relative}.tree>ul{width:max-content;min-width:100%;padding-top:0}.tree li{--line:var(--tree-line);flex-direction:column;align-items:center;padding:20px 7px 0;display:flex;position:relative}.tree li.met{--line:#6fd88a73}.tree li.partial{--line:#f2c94c99}.tree li.none{--line:#ff7f728c}.tree li:before,.tree li:after{content:"";border-top:2px solid var(--tree-line);width:50%;height:20px;position:absolute;top:0}.tree li:before{right:50%}.tree li:after{border-left:2px solid var(--line);margin-left:-1px;left:50%}.tree li:only-child:before,.tree li:only-child:after,.tree li:first-child:before,.tree li:last-child:after{border-top:none}.tree li:first-child:not(:only-child):after{border-top-left-radius:8px}.tree li:last-child:not(:only-child):before{border-right:2px solid var(--line);border-top-right-radius:8px;margin-right:-1px}.tree li:last-child:not(:only-child):after{border-left:none}.tree>ul>li{padding-top:0}.tree>ul>li:before,.tree>ul>li:after{display:none}.tree ul ul:before{content:"";border-left:2px solid var(--tree-line);height:20px;margin-left:-1px;position:absolute;top:0;left:50%}button.tree-node{--node:var(--tree-line);border:1px solid color-mix(in srgb, var(--node) 70%, transparent);background:linear-gradient(160deg, color-mix(in srgb, var(--node) 14%, #161e38f7), #0c1121f7);min-width:150px;color:var(--text);text-align:left;white-space:nowrap;border-radius:10px;align-items:center;gap:9px;padding:8px 12px 8px 9px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #00000059}button.tree-node:hover:not(:disabled){background:linear-gradient(160deg, color-mix(in srgb, var(--node) 24%, #161e38f7), #0c1121f7);box-shadow:0 6px 18px #0006, 0 0 12px color-mix(in srgb, var(--node) 35%, transparent);transform:translateY(-1px)}.tree-node.met{--node:var(--tree-met)}.tree-node.partial{--node:var(--tree-partial)}.tree-node.none{--node:var(--tree-none)}.tree-node.root{--node:#7fb2ff;padding:10px 16px 10px 12px;box-shadow:0 4px 14px #00000059,0 0 18px #5b8cff4d}.tree-node-icon{background:color-mix(in srgb, var(--node) 16%, #080c18cc);border:1px solid color-mix(in srgb, var(--node) 40%, transparent);border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.tree-node-icon svg{fill:none;width:18px;height:18px;stroke:var(--node);stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round}.tree-node-text{flex-direction:column;flex:1;gap:1px;display:flex}.tree-node-text strong{font-size:.86rem}.tree-node.root .tree-node-text strong{font-size:1rem}.tree-node-level{color:var(--muted);font-size:.74rem}.tree-node-level b{color:var(--node)}.tree-node-mark{color:#0b1020;background:var(--node);border-radius:50%;flex-shrink:0;place-items:center;width:18px;height:18px;margin-left:4px;font-size:.7rem;font-weight:700;display:grid}.tree-node-bar{background:#ffffff0f;height:3px;position:absolute;bottom:0;left:0;right:0}.tree-node-bar>span{background:var(--node);height:100%;display:block}.tree-repeat{opacity:.75;font-style:italic}@media (width<=700px){.tree-dialog{padding:16px 14px 12px}.tree-head{flex-wrap:wrap}.tree-status,.tree-toggle{margin-left:0}}.card-actions{align-items:center;gap:8px;margin-top:auto;display:flex}.card-actions>:first-child{flex:1;min-width:0;margin:0}.card-actions.bottom{flex-wrap:wrap;align-items:flex-end}.card-actions.bottom>:first-child{flex:260px}.card .card-actions.bottom>button.tree-button{margin-left:auto}button.tree-button{color:#c8d4ee;background:#ffffff0d;border:1px solid #96afeb47;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;padding:0;transition:background .15s,border-color .15s;display:inline-flex}.card button.tree-button,.unit-detail .card button.tree-button{width:32px;min-width:32px;height:32px;margin:0;padding:0}button.tree-button:hover:not(:disabled){background:#5fb4ff2e;border-color:#5fb4ff99}.card .tree-button svg,.tree-button svg{fill:none;stroke:currentColor;stroke-width:1.6px;flex-shrink:0;width:17px!important;height:17px!important;margin:0!important}button.tree-button.missing{color:#ffd95e;background:#f2c94c29;border-color:#f2c94cbf;animation:2.2s ease-in-out infinite tree-glow}button.tree-button.missing:hover:not(:disabled){background:#f2c94c47;border-color:#f2c94c}@keyframes tree-glow{0%,to{box-shadow:0 0 #f2c94c00,0 0 6px #f2c94c59}50%{box-shadow:0 0 0 4px #f2c94c1f,0 0 18px #f2c94cb3}}@media (prefers-reduced-motion:reduce){button.tree-button.missing{animation:none;box-shadow:0 0 10px #f2c94c80}}.card header .level{white-space:nowrap}.storage-bar{background:#ffffff14;border-radius:2px;height:3px;margin-top:3px;display:block;overflow:hidden}.storage-bar>span{background:var(--res,#7fd4ff);height:100%;display:block}.resource.full .storage-bar>span{background:#ff6b5e}.storage-full{color:#ff8a7a}.resource-rate{white-space:nowrap}.store-title{justify-content:space-between;align-items:center;display:flex}.store-section dl.next{row-gap:1px}.store-section .next{margin:4px 0}.resource-rate{text-overflow:ellipsis;max-width:100%;overflow:hidden}.strength{gap:3px;margin:4px 0;display:grid}.strength-bar{background:#ff786e8c;border-radius:4px;height:8px;overflow:hidden}.strength-own{background:#5fb4ffd9;height:100%;display:block}.side-nav{gap:1px;padding:6px}.side-nav-item{padding:7px 12px}@media (height<=950px){.planet{gap:8px;padding-top:8px}.resource{padding:6px 12px}.resource-amount{font-size:1.25rem}.side-nav-item{padding:5px 10px}.section-title{margin:0 0 6px}}.hero{align-items:start}.hero-info{gap:8px}.hero-planet .hero-title{align-self:stretch;margin-top:-6px;padding:0}.hero-planet .hero-title h1{font-size:1.5rem}.hero-planet .planet-level-card{align-self:stretch}.daily-panel{padding:10px 12px}.daily-panel li{font-size:.85rem}.pass-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:6px}.pass-level{flex-direction:row;align-items:stretch;gap:4px;padding:4px}.pass-level .pass-number{text-align:center;align-self:center;min-width:18px}.pass-reward{flex:1;min-width:0;padding:2px 5px;font-size:.8rem}.cosmetic-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cosmetic-card{grid-template-columns:64px minmax(0,1fr);column-gap:10px;padding:8px;display:grid}.cosmetic-card>.cosmetic-preview{grid-row:span 3;height:64px}.cosmetic-card .skin-preview{width:56px;height:56px}.champion-grid{max-height:calc(100vh - var(--alert-h,0px) - 330px);grid-template-columns:repeat(auto-fill,minmax(104px,1fr));align-content:start;gap:8px;padding-right:4px;overflow-y:auto}.champion-filters{gap:8px}.champion-filters .depot-tabs button{padding:4px 10px}.champion-grid{max-height:calc(100vh - var(--alert-h,0px) - 440px);grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.market-book{max-height:calc(100vh - var(--alert-h,0px) - 470px);overflow-y:auto}.market-form{gap:6px}.market-form .market-toggle button{padding:5px 8px}.pirate-alert{margin-bottom:0;padding:6px 14px}@media (height<=950px){.mine-card .mine-art,.card .unit-art{max-height:70px}.mine-cards .card>.building-art{height:64px}.card{gap:8px}.card>button,.card .actions button,.card .card-actions>button:not(.tree-button){padding-top:7px;padding-bottom:7px}.unit-detail .card{gap:5px;padding:10px 14px}.unit-detail .building-art{width:calc(100% + 28px);margin:-10px -14px 0}.unit-detail .card p{margin:0}.unit-detail .unit-research{gap:4px;padding-top:5px}.unit-detail .weapon-slot{flex-direction:row;gap:4px;min-height:0;padding:3px 4px}.unit-detail .weapon-slot .item-icon{width:20px;height:20px}.unit-detail .building-art{height:52px}.unit-detail .card .unit-description{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}.combat-column{gap:8px}.combat-column>.panel{padding:10px 14px}.combat-column h3{margin:0 0 4px}.combat-column p{margin:0 0 6px}.raid-target{margin-top:5px;padding:5px 10px}.raid-target>div{min-width:0}.raid-target .small{font-size:.75rem}.raid-target button{padding:6px 12px}.pvp-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.pvp-column{flex-direction:column;gap:10px;min-width:0;display:flex}.pvp-column>.panel{padding:10px 14px}.pvp-columns .pvp-slot .champion-portrait{width:56px}.pvp-columns .pvp-slot{gap:2px;padding:4px}.pvp-columns .pvp-slot .small{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.72rem;overflow:hidden}.pvp-columns .pvp-opponent{gap:4px 8px;padding:5px 8px}.pvp-columns .pvp-opponent>div:first-child{flex:100%;font-size:.85rem}.pvp-columns .pvp-opponent-members .champion-portrait{width:30px}.pvp-columns .pvp-opponent button{padding:5px 14px}.pvp-columns .pvp-team-actions button{padding:6px 14px}.pvp-columns .pvp-team-head{flex-wrap:wrap;align-items:center}.pvp-columns .pvp-team-actions{margin:0}@media (height<=950px){.pvp-columns .pvp-slot .champion-portrait{width:44px}.pvp-columns .pvp-opponent-members .champion-portrait{width:26px}}.pvp-columns .pvp-slot{aspect-ratio:auto;height:auto;min-height:0}.pvp-columns .pvp-opponent-list{gap:5px}.pvp-columns h3{margin:0;font-size:1rem}.pvp-columns .pvp-team-head{row-gap:2px;margin-bottom:4px}.pvp-columns .pvp-slots{gap:6px}.pvp-columns>.pvp-column{gap:8px}p button.link,span.muted button.link{color:inherit;padding:0;text-decoration:underline}.messages-form textarea{font:inherit;color:inherit}.messages-to{flex-direction:column;gap:4px;display:flex}.messages-to input{width:100%;max-width:360px}.alliance-actions{flex-wrap:wrap;justify-content:flex-end;gap:0 6px;max-width:260px;display:flex}.alliance-actions button.link{white-space:nowrap;padding:2px 0}.ranking-name{white-space:nowrap}.alliance-none{flex-direction:column;gap:10px;display:flex}.alliance-none h3{margin:0 0 6px}.alliance-list{flex-direction:column;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.alliance-row{border:1px solid var(--panel-border);background:#ffffff08;border-radius:8px;grid-template-columns:minmax(0,1.2fr) 110px 70px minmax(0,2fr) 170px;align-items:center;gap:12px;padding:6px 10px;display:grid}.alliance-row-name,.alliance-row-comment{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.alliance-row button{padding:5px 12px}.alliance-create-fields{grid-template-columns:1fr 1fr;gap:8px 16px;display:grid}.alliance-create-comment{grid-column:1/-1}.alliance-create-actions{align-items:center;gap:12px;margin:8px 0 4px;display:flex}@media (width<=900px){.alliance-row{grid-template-columns:1fr 1fr}}.alliance-row{grid-template-columns:minmax(0,1.6fr) 110px 60px minmax(0,2.4fr) 150px}.alliance-row-comment{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.alliance-area{min-width:0;max-height:calc(100vh - var(--alert-h,0px) - 220px);flex-direction:column;gap:8px;display:flex;overflow-y:auto}.alliance-area>.panel{padding:10px 14px}.alliance-area h3{margin:0 0 6px}.alliance-area .alliance-comment{margin:0}.alliance-members .market-table{font-size:.8rem}.alliance-upgrade-bar{flex-direction:column;gap:3px;margin:6px 0;display:flex}.alliance-upgrade-bar .good,.alliance-upgrade-bank .good{color:#6fd88a}.galaxy-detail-kern .alliance-create-actions{flex-wrap:wrap;gap:8px}.alliance-area{flex-flow:wrap;align-items:flex-start;max-height:none;overflow:visible}.alliance-area>.panel{max-height:calc(100vh - var(--alert-h,0px) - 610px);flex:340px;min-height:0;overflow-y:auto}.alliance-area>.alliance-comment{flex-basis:100%}.alliance-area>button.link{align-self:center}.alliance-area .alliance-create textarea{min-height:0}.alliance-area .panel p{margin:3px 0}.alliance-area>.alliance-members{flex:2 480px}.alliance-area>.panel{order:2}.alliance-area>.alliance-comment{flex:60%;order:0}.alliance-area>button.link{order:1;margin-left:auto;padding:0 4px}.alliance-boss-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.boss-kind{border:1px solid;border-radius:999px;padding:2px 8px;font-size:.75rem}.boss-kind.ships{color:#7fd4ff}.boss-kind.champions{color:#ffd75e}.progress.boss-hp{height:14px;margin:6px 0 4px}.progress.boss-hp .progress-bar{background:linear-gradient(90deg,#ff5d5d,#ff8a7a)}.alliance-boss-actions{align-items:center;gap:12px;margin:6px 0;display:flex}.alliance-boss-ranking .market-table td,.alliance-boss-ranking .market-table th{padding:3px 6px}.boss-cleared{background:#ffd75e14;border:1px solid #ffd75e73;border-radius:8px;margin:8px 0 4px;padding:6px 10px}.boss-cleared strong{color:#ffd75e}.alliance-boss-fastest{border-top:1px solid #ffffff14;margin-top:12px;padding-top:8px}.league-name{border:1px solid;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:.9rem}.league-name.league-bronze{color:#d08a4e}.league-name.league-silver{color:#c8d0dc}.league-name.league-gold{color:#f2c94c}.league-name.league-platinum{color:#7fe0d0}.league-name.league-diamond{color:#7fb8ff}.league-name.league-master{color:#c58aff}.league-name.league-grandmaster{color:#ff8a7a}.league-table tr.clickable{cursor:pointer}.league-table tr.clickable:hover{background:#7fd4ff0f}.league-table tr.own td{background:#5b8cff1f}.league-table tr.league-players td{color:var(--muted);border-top:none;padding-top:0}.war-roster{flex-wrap:wrap;gap:4px;margin:6px 0;display:flex}.war-chip{border:1px solid var(--panel-border);background:#ffffff08;border-radius:999px;padding:2px 8px}.war-chip.own{border-color:var(--accent)}.war-matches tr.clickable{cursor:pointer}.alliance-area>.panel{max-height:max(220px, calc(100vh - var(--alert-h,0px) - 820px))}.alliance-members td{white-space:nowrap}.alliance-members td.alliance-actions{white-space:normal;text-align:right}.alliance-members td.alliance-actions .link{padding:0 3px}.alliance-area>.alliance-create{flex:280px}.alliance-members td.alliance-actions .link{white-space:nowrap}.alliance-members .ranking-name .muted{display:none}.war-duels{border-collapse:collapse;width:100%}.war-duels td{white-space:nowrap;border:0;padding:1px 6px 1px 0}.war-duels .link{padding:0 0 0 4px}.war-duels td:first-child{width:1%}.alliance-area>.alliance-war{flex:2 480px}.market-table .war-duels{table-layout:auto}.market-table .war-duels td:first-child{width:1%;padding-right:8px}.pass-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pass-reward .small{overflow-wrap:anywhere;line-height:1.2}:where(input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input:not([type]),textarea,select){font:inherit;color:var(--text);border:1px solid var(--panel-border);background:#0000004d;border-radius:6px;padding:6px 8px}:where(input,textarea):focus-visible{outline:2px solid var(--accent,#5fb4ff);outline-offset:1px}.messages{align-items:stretch}.messages-list,.messages-thread{min-height:calc(100vh - var(--alert-h,0px) - 260px);max-height:calc(100vh - var(--alert-h,0px) - 260px)}.messages-thread{flex-direction:column;display:flex}.messages-lines{flex:1;max-height:none}.messages-list{align-content:start}.res-energy{--res:#ffd23f}.resources{grid-template-columns:repeat(5,minmax(0,1fr))}.resource.res-energy.short{border-color:#ff6b6b}.resource.res-energy .resource-amount .muted{font-size:.75em}@media (width<=800px){.resources{grid-template-columns:repeat(2,1fr)}}.mine-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mine-cards .store-card{gap:4px;padding-top:8px;padding-bottom:8px}.mine-cards .store-card .storage-bar{display:block}.energy-panel header{align-items:center;gap:8px;display:flex}.energy-panel header .resource-icon{width:32px;height:32px}.energy-panel.short{border-color:#ff6b6b}.energy-list{grid-template-columns:1fr auto;gap:2px 10px;margin:0;display:grid}.energy-list dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.energy-panel p{margin:0}@media (width<=1100px){.mine-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.mine-cards .card{gap:6px;padding:10px 12px}.mine-cards .card h3{font-size:1rem}.mine-cards .card>header{flex-wrap:nowrap}.mine-cards .card .next{font-size:.85rem}.resources .resource{min-width:0}.resources .resource-rate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.resource.res-energy .resource-amount{white-space:nowrap}.mine-cards .card>header{flex-wrap:wrap;row-gap:0}.mine-cards .card>header h3{white-space:nowrap;text-overflow:ellipsis;flex-basis:100%;overflow:hidden}.mine-cards .card>.building-art{height:50px}.mine-cards .energy-panel>header{flex-wrap:nowrap}.mine-cards .energy-panel>header h3{flex-basis:auto}.mine-cards .store-card>header{margin-top:-2px}.mine-cards .store-card>.building-art{height:40px}.mine-cards{gap:10px}.resource.res-energy .resource-amount{text-overflow:ellipsis;max-width:100%;font-size:1.15rem;overflow:hidden}main.planet:has(>.game-body.with-planets){max-width:1384px}:is(main.planet.planet-wide,main.planet.planet-wide:has(>.game-body.with-planets)){max-width:1840px}.game-body.with-planets{grid-template-columns:190px minmax(0,1fr) 164px;grid-template-areas:"nav content rail"}.game-body.with-planets>.side-nav{grid-area:nav}.game-body.with-planets>.game-content{grid-area:content}.planet-rail{border:1px solid var(--panel-border);background:var(--panel);border-radius:12px;flex-direction:column;grid-area:rail;gap:4px;padding:6px;display:flex;position:sticky;top:16px}.planet-rail-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:2px 4px 4px;font-size:.72rem}.planet-rail-item{text-align:left;color:var(--muted);background:0 0;border:1px solid #0000;border-left-width:3px;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:center;column-gap:8px;padding:6px 8px;display:grid}.planet-rail-item:hover:not(.selected){color:var(--text);background:#ffffff0d}.planet-rail-item.selected{cursor:default;color:var(--text);border-color:color-mix(in srgb, var(--species) 45%, transparent);border-left-color:var(--species);background:#ffffff14}.planet-rail-orb{background:radial-gradient(circle at 32% 30%, color-mix(in srgb, var(--species) 35%, #fff) 0%, var(--species) 38%, color-mix(in srgb, var(--species) 25%, #000) 100%);width:28px;height:28px;box-shadow:0 0 5px color-mix(in srgb, var(--species) 50%, transparent);border-radius:50%;grid-row:span 2;position:relative}.planet-rail-item.main .planet-rail-orb{outline:1px solid color-mix(in srgb, var(--species) 70%, transparent);outline-offset:2px}.planet-rail-item.selected .planet-rail-orb{box-shadow:0 0 12px var(--species)}.planet-rail-name{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.planet-rail-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}@media (width<=1100px){.game-body.with-planets{grid-template-columns:190px minmax(0,1fr);grid-template-areas:"nav rail""nav content";row-gap:10px}.planet-rail{flex-flow:wrap;position:static}.planet-rail-title{display:none}.planet-rail-item{width:150px;padding:4px 8px}}@media (width<=800px){.game-body.with-planets{grid-template-columns:minmax(0,1fr);grid-template-areas:"nav""rail""content"}.planet-rail{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.planet-rail-item{width:auto}}.hero-title-row{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.diplomacy{grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:start;gap:12px;display:grid}.diplomacy-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.diplomacy-head h2,.diplomacy-side h2{margin:0 0 6px;font-size:1.05rem}.diplomacy-side{flex-direction:column;gap:12px;display:flex}.transport-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.transport-tile{border:1px solid var(--panel-border);background:#ffffff08;border-radius:8px;grid-template-columns:84px minmax(0,1fr);gap:6px 10px;padding:8px;display:grid}.transport-tile.locked{opacity:.45;filter:grayscale(.8)}.transport-info{flex-direction:column;gap:1px;min-width:0;display:flex}.transport-form{flex-direction:column;grid-column:1/-1;gap:3px;display:flex}.transport-form-row{gap:6px;display:flex}.transport-form-row input{width:80px}.transport-form-row button{flex:1}.cost-short{color:#ff7a7a}.transport-order{flex-direction:column;gap:4px;margin-bottom:8px;font-size:.9rem;display:flex}.fleet-list{max-height:calc(100vh - var(--alert-h,0px) - 480px);flex-direction:column;gap:6px;min-height:80px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.fleet-row{border:1px solid var(--panel-border);border-radius:6px;flex-direction:column;gap:1px;padding:6px 8px;display:flex}.fleet-status{color:#f2c94c}.transport-dialog{gap:6px;width:min(560px,100%)}.transport-dialog h3{justify-content:space-between;align-items:baseline;display:flex}.transport-field{flex-direction:column;gap:3px;display:flex}.transport-rows{flex-direction:column;gap:4px;display:flex}.transport-send-row{grid-template-columns:110px 1fr 120px 60px;align-items:center;gap:8px;display:grid}.transport-check{align-items:center;gap:8px;display:flex}.transport-actions{justify-content:flex-end;gap:8px;display:flex}@media (width<=1100px){.diplomacy{grid-template-columns:minmax(0,1fr)}}.research-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}.research-tiles .unit-tile .building-art{height:52px}.diplomacy-aliens{flex-direction:column;min-height:0;display:flex}.diplomacy-contacts{max-height:calc(100vh - var(--alert-h,0px) - 360px);flex-direction:column;gap:8px;min-height:160px;padding-right:2px;display:flex;overflow-y:auto}.diplomacy-contact{border:1px solid var(--species-color,var(--panel-border));background:#ffffff08;border-radius:8px;flex-direction:column;gap:5px;padding:8px;display:flex}.diplomacy-contact-head{align-items:center;gap:8px;display:flex}.diplomacy-portrait{flex:none;width:44px;height:52px}.diplomacy-species{color:var(--species-color)}.diplomacy-steps{flex-wrap:wrap;gap:3px;margin:3px 0 0;padding:0;list-style:none;display:flex}.diplomacy-steps li{border:1px solid var(--panel-border);opacity:.55;border-radius:10px;padding:1px 5px;font-size:.68rem}.diplomacy-steps li.reached{opacity:1;border-color:var(--species-color);color:var(--species-color);font-weight:600}.diplomacy-trust{flex-direction:column;gap:2px;display:flex}.diplomacy-sub{margin:4px 0 0;font-size:.85rem}.diplomacy-missions{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.diplomacy-missions li{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;display:grid}.diplomacy-missions button{padding:2px 8px;font-size:.75rem}.diplomacy-done{color:#6fdc8c;text-align:center;min-width:2ch;font-weight:700}.diplomacy-gift{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.diplomacy-gift label{flex-direction:column;gap:1px;display:flex}.diplomacy-gift input,.diplomacy-row input{width:100%;min-width:0}.diplomacy-row{justify-content:space-between;align-items:center;gap:6px;display:flex}.diplomacy-alliance{border:1px solid var(--species-color);background:#ffffff12;border-radius:6px;flex-direction:column;gap:4px;padding:6px;font-size:.85rem;display:flex}.diplomacy-allied{color:var(--species-color);margin:0}.diplomacy-encounter{margin-top:2px;font-weight:700}.transport-tile{grid-template-columns:72px minmax(0,1fr);gap:4px 8px;padding:6px 8px}.transport-art{width:72px;height:40px}.transport-form-row input{width:70px;padding:4px 6px}.transport-form-row button{padding:5px 10px}.transport-form{gap:2px}.transport-form>.small{display:inline}.diplomacy{grid-template-columns:minmax(0,1fr) minmax(300px,420px)}.diplomacy-contacts{max-height:calc(100vh - var(--alert-h,0px) - 420px);min-height:340px}.diplomacy-contact{flex-shrink:0}.diplomacy-gift-hint{margin:0;line-height:1.25}.transport-info .muted.small,.transport-send-row .muted.small{white-space:nowrap}.diplomacy span.progress,.diplomacy span.progress>.progress-bar{display:block}.solar{justify-content:center;display:flex}.solar-stage{width:100%;max-width:calc((100vh - var(--alert-h,0px) - 240px) * 1200 / 690);aspect-ratio:1200/690}.solar-art{border-radius:18px;width:100%;height:100%;display:block}.solar-hint{fill:#8fa3d8;fill-opacity:.55;font-size:14px}.solar-level{fill:#c8d4ee;fill-opacity:.8;font-size:13px}.solar-orbit-label{fill:#8fa3d8;fill-opacity:.6;font-size:15px}.solar-name{fill:#e8eeff;paint-order:stroke;stroke:#04060f;stroke-width:4px;font-size:17px}.solar-name-faint{fill-opacity:.55;font-size:14px}.solar-planet{cursor:pointer}.solar-planet:focus-visible{outline:none}.solar-planet:hover .solar-select,.solar-planet:focus-visible .solar-select{stroke:#ffd27a}.solar-select{transform-box:fill-box;transform-origin:50%;animation:20s linear infinite art-spin}.solar-star{animation:4s ease-in-out infinite solar-twinkle}.solar-fleet-glow{animation:1.2s ease-in-out infinite solar-twinkle}.solar-belt-label{fill-opacity:.45;letter-spacing:.08em;font-size:13px}.solar-name-main{fill:#ffe7b0}.solar-labels{pointer-events:none}.solar-sun-glow{transform-box:fill-box;transform-origin:50%;animation:7s ease-in-out infinite solar-breathe}.solar-sun-corona{transform-box:fill-box;transform-origin:50%;animation:4.5s ease-in-out infinite solar-breathe}.solar-sun-plane{animation:7s ease-in-out infinite solar-glow-plane}.solar-sun-rays{animation:9s ease-in-out infinite solar-rays}.solar-sun-rays-b{animation-duration:13s;animation-delay:-4s}.solar-sun-flash{opacity:0;animation:11s ease-out infinite solar-flash}.solar-sun-flash-b{animation-duration:17s;animation-delay:-7s}.solar-lens{animation:7s ease-in-out infinite solar-lens}@keyframes solar-breathe{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.07)}}@keyframes solar-glow-plane{0%,to{opacity:.8}50%{opacity:1}}@keyframes solar-rays{0%,to{opacity:.75}50%{opacity:1}}@keyframes solar-flash{0%,78%,to{opacity:0}82%{opacity:.9}90%{opacity:.25}}@keyframes solar-lens{0%,to{opacity:.8}50%{opacity:1}}@keyframes solar-twinkle{0%,to{opacity:.25}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.solar-art *{animation:none!important}}.battle-planet{opacity:.85;border:1px solid #fff3;border-radius:999px;margin-left:.4em;padding:0 .5em;font-size:.75em;display:inline-block}.battle-table tr.battle-sub td:first-child{padding-left:1.4em}.battle-table tr.battle-sub{opacity:.85}.battle-chain-title{text-align:center;color:#ffd27a;font-weight:600}.chain-summary ul{margin:4px 0;padding:0;font-size:.85rem;list-style:none}.chain-summary li{margin:1px 0}.pvp-chain{margin:4px 0}.combat-column{max-height:calc(100vh - var(--alert-h,0px) - 230px);flex-direction:column;min-height:0;display:flex}.combat-column>.combat-history,.combat-column>.combat-raids{flex:auto;min-height:120px;overflow-y:auto}.combat-column>.panel{flex-shrink:0}.combat-column>.combat-history,.combat-column>.combat-raids{flex-shrink:1}.combat-pirates p,.combat-pvp p{margin:4px 0}.tab-notice{border:1px solid var(--panel-border);cursor:pointer;background:#ffc8501f;border-radius:8px;margin:0 0 6px;padding:4px 10px}.resources .resource-amount{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.ranking-table-wrap{max-height:calc(100vh - var(--alert-h,0px) - 430px);min-height:160px;overflow-y:auto}.ranking-table th{z-index:1;background:var(--panel);position:sticky;top:0}.expedition-panel{gap:6px;padding:9px 14px}.expedition-plan,.expedition-running{gap:5px}.expedition-last{gap:3px;padding-top:5px}.messages-list{max-height:min(70vh, calc(100vh - var(--alert-h,0px) - 340px));min-height:160px}.messages-lines{max-height:min(50vh, calc(100vh - var(--alert-h,0px) - 440px));min-height:120px}.alliance-chat-list{max-height:200px}.market-book{max-height:calc(100vh - var(--alert-h,0px) - 500px)}main.planet:has(.pirate-alert){--alert-h:48px}main.planet:has(.pirate-alert~.pirate-alert){--alert-h:96px}.diorama{--dock-h:224px;width:min(100%, calc((100vh - var(--alert-h,0px) - 210px - var(--dock-h)) * 1600 / 760));min-width:min(100%,640px);margin:0 auto;position:relative}.diorama-scene{border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;height:auto;display:block}.diorama-building{cursor:pointer}.diorama-building>g:first-child{transition:filter .2s}.diorama-building:hover>g:first-child{filter:brightness(1.2)drop-shadow(0 0 6px #7fe6ff99)}.diorama-building.selected>g:first-child{filter:brightness(1.25)drop-shadow(0 0 10px #7fe6fff2)}.diorama-building.upgrading>g:first-child{animation:1.6s ease-in-out infinite diorama-upgrade}@keyframes diorama-upgrade{50%{filter:brightness(1.35)drop-shadow(0 0 10px #ffc85ad9)}}.diorama-circuit{fill:none;stroke:currentColor;stroke-width:3px;stroke-dasharray:14 22;opacity:.7;animation:1.6s linear infinite diorama-flow}.diorama-power{fill:none;stroke:#9ff0ff;stroke-width:5px;stroke-linecap:round;stroke-dasharray:10 18;opacity:.85;pointer-events:none;animation:.9s linear infinite diorama-flow-back}@keyframes diorama-flow{to{stroke-dashoffset:-36px}}@keyframes diorama-flow-back{to{stroke-dashoffset:28px}}.diorama-ore{fill:none;stroke:#ff6a3c;stroke-width:4px;stroke-linejoin:round;filter:drop-shadow(0 0 6px #ff6a3c);animation:2.4s ease-in-out infinite diorama-glow}@keyframes diorama-glow{50%{opacity:.45}}.diorama-mist{transform-box:fill-box;transform-origin:50%;animation:4.8s ease-out infinite diorama-mist}@keyframes diorama-mist{0%{opacity:.5;transform:translateY(0)scale(.6)}to{opacity:0;transform:translateY(-110px)scale(2.4)}}.diorama-station>ellipse:nth-child(2){animation:2.4s linear infinite diorama-flow}.diorama-hover{animation:4s ease-in-out infinite alternate diorama-hover}@keyframes diorama-hover{to{transform:translateY(-8px)}}.diorama-wave{animation:6s linear infinite diorama-wave}@keyframes diorama-wave{to{transform:translate(100px)}}.diorama-aurora{animation:7s ease-in-out infinite alternate diorama-aurora}@keyframes diorama-aurora{to{opacity:.05;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.diorama-circuit,.diorama-power,.diorama-ore,.diorama-mist,.diorama-hover,.diorama-wave,.diorama-aurora,.diorama-building.upgrading>g:first-child{animation:none}}.gallery-surface{width:520px}.gallery-surface .diorama{width:100%}.gallery-row:has(.gallery-surface){flex-wrap:wrap;gap:12px;display:flex}.art-rise{opacity:0;animation:2.7s ease-in infinite art-rise}@keyframes art-rise{0%{opacity:0;transform:translateY(0)}25%{opacity:1}to{opacity:0;transform:translateY(-26px)}}.unit-scene-below{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:12px;margin-top:10px;display:flex}.unit-scene-below>.unit-detail{flex:0 460px;min-width:0}.unit-scene-side{flex-direction:column;flex:300px;gap:10px;max-width:460px;display:flex}.research-page{flex-direction:column;align-items:center;gap:10px;display:flex}.research-net{width:min(100%, calc((100vh - var(--alert-h,0px) - 485px) * 1600 / 640));border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;border-radius:12px;height:auto;display:block}.research-detail{width:min(460px,100%)}.research-detail .card{margin:0}.research-detail .building-art{display:none}.research-where{margin:6px 4px 0}.rn-node{cursor:pointer}.rn-node .rn-glyph{transition:transform .2s}.rn-node:hover .rn-glyph{transform:scale(1.12)}.rn-node:hover .rn-halo,.rn-node.selected .rn-halo{opacity:.25}.rn-node.selected>circle:nth-of-type(2){stroke-width:4px;filter:drop-shadow(0 0 10px)}.rn-node.locked{opacity:.45}.rn-node.running .rn-halo{animation:1.4s ease-in-out infinite art-pulse}.rn-badge rect{fill:#060c1aeb;stroke:currentColor;stroke-width:1.5px}.rn-badge text{fill:#fff;text-anchor:middle;font:700 17px system-ui,sans-serif}.rn-label{fill:#b9c6e4;text-anchor:middle;font:600 15px system-ui,sans-serif}.rn-spin{transform-box:fill-box;transform-origin:50%;animation:3s linear infinite rn-spin}@keyframes rn-spin{to{transform:rotate(360deg)}}.rn-orbit{animation:4s linear infinite diorama-flow}.rn-orbit.reverse{animation-direction:reverse}.rn-link.active{stroke-dasharray:10 8;animation:.8s linear infinite diorama-flow}@media (prefers-reduced-motion:reduce){.rn-spin,.rn-orbit,.rn-link.active,.rn-node.running .rn-halo{animation:none}}.diorama.facility-diorama{--dock-h:272px;width:min(100%, calc((100vh - var(--alert-h,0px) - 210px - var(--dock-h)) * 1600 / 560))}.fac-name{letter-spacing:.12em;text-transform:uppercase;font:700 14px system-ui,sans-serif}.fac-level rect{fill:#080c18e6;stroke-width:1.5px}.fac-level text{fill:#fff;text-anchor:middle;font:700 15px system-ui,sans-serif}.fac-level.upgrading rect{stroke:#ffc65a}.fac-rim{opacity:.8;transition:stroke-width .2s,opacity .2s}.diorama-building:hover .fac-rim{opacity:1}.diorama-building.selected .fac-rim{opacity:1;stroke-width:4px}.trade-head{border-left:3px solid var(--rarity,var(--res));background:radial-gradient(circle at 40px 50%, color-mix(in srgb, var(--rarity,var(--res)) 16%, transparent), transparent 140px), var(--panel);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 14px;display:grid}.trade-head-icon{filter:drop-shadow(0 0 10px color-mix(in srgb, var(--rarity,var(--res)) 45%, transparent));animation:4s ease-in-out infinite trade-float}.trade-head-icon .item-icon,.trade-head-icon .resource-icon{width:56px;height:56px;display:block}.trade-head-main{flex-direction:column;gap:3px;min-width:0;display:flex}.trade-head-title{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.trade-head-title strong{font-size:1.1rem}.trade-head-info{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.trade-head-stock{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.trade-head-buttons{gap:6px;margin-top:4px;display:flex}.trade-head-buttons button{padding:3px 12px;font-size:.8rem}.trade-actions{flex-direction:column;gap:2px;display:flex}.trade-actions .synthesis-row{align-items:center;margin-top:0}@keyframes trade-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.trade-hall{border:1px solid var(--panel-border);background:repeating-linear-gradient(90deg,#ffffff06 0 1px,#0000 1px 64px),linear-gradient(#0c1324 0%,#141d33 78%,#1d2744 78%,#10172a 100%);border-radius:12px;align-items:stretch;gap:8px;height:112px;padding:0 12px;display:flex;position:relative;overflow:hidden}.hall-tanks{aspect-ratio:196/112;flex:none;height:100%}.hall-racks{aspect-ratio:330/112;flex:none;height:100%}.hall-tank,.hall-rack{cursor:pointer;outline:none}.hall-tank.selected .hall-tank-shell,.hall-tank:focus-visible .hall-tank-shell{stroke:var(--res);stroke-width:2px}.hall-tank.full .hall-tank-shell{stroke:#ff5a5a;stroke-width:2px;animation:1.6s ease-in-out infinite art-pulse}.hall-rack-glow{fill:#0000;stroke:#0000}.hall-rack:hover .hall-rack-glow{fill:#7fd4ff0a}.hall-rack.selected .hall-rack-glow,.hall-rack:focus-visible .hall-rack-glow{fill:#7fd4ff12;stroke:#7fd4ff80}.hall-label{fill:#9aa6c2;font-size:9.5px}.hall-rack.selected .hall-label{fill:#e8ecf8}.hall-percent{fill:#fff;paint-order:stroke;stroke:#0b0f1a;stroke-width:2.5px;font-size:10px;font-weight:700}.hall-empty{fill:#5d6b88;font-size:9px}.hall-wave{animation:2.4s linear infinite hall-wave}.hall-bubble{opacity:0;animation:2.7s ease-in infinite hall-bubble}.hall-pipe-flow{stroke:#7fd4ff;stroke-dasharray:4 10;opacity:.6;animation:1.2s linear infinite hall-pipe}.hall-floor{flex:1;min-width:40px;position:relative;overflow:hidden}.hall-rail{background:#3a4560;border-radius:2px;height:4px;position:absolute;top:14px;left:0;right:0}.hall-crane{flex-direction:column;align-items:center;width:30px;animation:9s ease-in-out infinite alternate hall-crane;display:flex;position:absolute;top:10px;left:0}.hall-crane:before{content:"";background:#5d6b88;border-radius:3px;width:30px;height:10px;box-shadow:0 0 6px #7fd4ff59}.hall-crane-cable{background:#8a94aa;width:2px;height:30px}.hall-crate{background:linear-gradient(transparent 44%, #00000059 44% 56%, transparent 56%), var(--crate);opacity:.9;border-radius:2px;width:20px;height:18px;box-shadow:inset 0 0 0 1px #00000073}.hall-belt{background:repeating-linear-gradient(90deg,#2a3346 0 10px,#3a4560 10px 20px);border-radius:4px;height:7px;animation:1s linear infinite hall-belt;position:absolute;bottom:12px;left:0;right:0}.hall-crate.small{width:14px;height:12px;animation:9.6s linear infinite hall-ride;position:absolute;bottom:7px}.hall-board{color:#9fe3ff;background:#050811;border:1px solid #2a3a5a;border-radius:8px;flex-direction:column;flex:0 0 300px;align-self:center;gap:4px;min-width:0;padding:8px 12px;font-family:ui-monospace,Consolas,monospace;display:flex;box-shadow:inset 0 0 18px #2f96d62e,0 0 0 3px #1b2440}.hall-board-top{color:#7f93b8;justify-content:space-between;gap:8px;font-size:.72rem;display:flex}.hall-board-top b{color:#ffd27a}.hall-live:before{content:"";background:#ff5a5a;border-radius:50%;width:7px;height:7px;margin-right:6px;animation:1.4s ease-in-out infinite art-blink;display:inline-block}.hall-board-main{justify-content:space-between;align-items:baseline;gap:8px;font-size:1rem;display:flex}.hall-board-name{color:#e8ecf8;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hall-board .up{color:#7fd6a0}.hall-board .down{color:#ff8a7a}.hall-ticker{white-space:nowrap;border-top:1px dashed #22314d;min-height:1.2em;padding-top:4px;font-size:.75rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.hall-ticker-run{gap:22px;padding-right:22px;animation:20s linear infinite hall-ticker;display:inline-flex}@keyframes hall-wave{0%{transform:translate(-24px)}to{transform:translate(0)}}@keyframes hall-bubble{0%{opacity:0;transform:translateY(0)}20%{opacity:.7}to{transform:translateY(var(--rise,-30px));opacity:0}}@keyframes hall-pipe{to{stroke-dashoffset:-14px}}@keyframes hall-crane{0%,12%{left:0}88%,to{left:calc(100% - 30px)}}@keyframes hall-belt{to{background-position:20px 0}}@keyframes hall-ride{0%{left:-16px}to{left:100%}}@keyframes hall-ticker{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.trade-hall *,.trade-hall :before,.trade-head-icon{animation:none!important}}@media (width<=900px){.trade-page{grid-template-rows:none;grid-template-columns:minmax(0,1fr);height:auto}.trade-main{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""chart""form""book"}.hall-floor,.hall-racks{display:none}.hall-board{flex:1}.trade-list-scroll{max-height:50vh}}.art-spark{opacity:0;animation:.9s ease-out infinite art-spark}@keyframes art-spark{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(var(--sx,4px), var(--sy,5px))}}.art-weld{animation:.45s steps(2,jump-none) infinite art-weld}@keyframes art-weld{0%{opacity:1}to{opacity:.15}}.art-belt{animation:art-belt var(--belt-dur,4s) linear infinite;opacity:0}@keyframes art-belt{0%{opacity:0;transform:translate(0)}10%,90%{opacity:1}to{opacity:0;transform:translateX(var(--bx,40px))}}.art-gantry{animation:art-gantry var(--gantry-dur,6s) ease-in-out infinite alternate}@keyframes art-gantry{0%{transform:translate(0)}to{transform:translateX(var(--gx,30px))}}.art-hoist{animation:3s ease-in-out infinite alternate art-hoist}@keyframes art-hoist{0%{transform:translateY(0)}to{transform:translateY(var(--hy,8px))}}.art-arm{animation:art-arm var(--arm-dur,2.4s) ease-in-out infinite alternate}@keyframes art-arm{0%{transform:rotate(var(--a0,-20deg))}to{transform:rotate(var(--a1,20deg))}}.art-glow-pulse{animation:2.2s ease-in-out infinite art-glow-pulse}@keyframes art-glow-pulse{0%,to{opacity:.55}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.art-spark,.art-belt{opacity:0;animation:none}.art-weld,.art-gantry,.art-hoist,.art-arm,.art-glow-pulse{animation:none}}.hero-planet-top{width:100%;min-height:calc(var(--scene,340px) * .74 + 56px);grid-template-columns:minmax(0,1fr) minmax(240px,300px);align-items:stretch;gap:12px;display:grid}.hero-planet-main{flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;display:flex;container-type:inline-size}.hero-planet-main .planet-scene{--fit:min(var(--scene), 100cqw);margin:calc(var(--fit) * -.12) 0 calc(var(--fit) * -.14);width:var(--fit)!important}.hero-planet-main .hero-title-row{align-self:stretch}.overview-queue{contain:size;flex-direction:column;min-height:0;margin:0;padding:10px 12px;display:flex}.overview-queue-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.overview-queue-head h3{margin:0;font-size:1rem}.overview-queue-list{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex;overflow-y:auto}.overview-queue-planet ul{flex-direction:column;gap:4px;margin:4px 0 0;padding:0;list-style:none;display:flex}.overview-queue-planet-head{grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.overview-queue-planet-head strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-queue-planet.current .overview-queue-planet-head strong{color:color-mix(in srgb, var(--species) 55%, #fff)}.overview-queue-orb{background:radial-gradient(circle at 32% 30%, color-mix(in srgb, var(--species) 35%, #fff), var(--species) 45%, #0b0f22 100%);border-radius:50%;width:12px;height:12px}.overview-queue-free{color:#ff8a8a;font-size:.72rem}.overview-queue-empty{margin:2px 0 0 18px}.overview-queue-order{text-align:left;width:100%;color:inherit;border:1px solid var(--panel-border);background:#ffffff08;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"name name time""kind bar bar";align-items:center;gap:2px 8px;padding:4px 8px;font-size:.8rem;display:grid}.overview-queue-order:hover{border-color:#7fd4ff8c}.overview-queue-kind{text-transform:uppercase;letter-spacing:.05em;grid-area:kind;font-size:.64rem}.overview-queue-order:has(.kind-building){--kind:#ffb36b}.overview-queue-order:has(.kind-research){--kind:#7fd4ff}.overview-queue-order:has(.kind-defense){--kind:#8ff0a4}.overview-queue-order:has(.kind-ship){--kind:#c9a7ff}.overview-queue-order{border-left:3px solid var(--kind,var(--panel-border))}.overview-queue-kind{color:var(--kind)}.overview-queue-name{text-overflow:ellipsis;white-space:nowrap;grid-area:name;overflow:hidden}.overview-queue-time{text-align:right;grid-area:time;font-size:.72rem}.overview-queue-bar{background:#ffffff14;border-radius:2px;grid-area:bar;height:4px;overflow:hidden}.overview-queue-bar>span{background:var(--kind,#7fd4ff);height:100%;display:block}@media (width<=1000px){.hero-planet-top{grid-template-columns:minmax(0,1fr)}}.hero>.planet-level-card{grid-column:1/-1;margin:0}.hero-planet-main .hero-title-row{z-index:1;position:relative}.hero-planet-main .planet-scene{margin-top:calc(var(--fit) * -.05)}@media (width>=1001px){.hero>.planet-level-card{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) auto;grid-auto-rows:auto;align-items:start;gap:6px 28px;padding-bottom:14px;display:grid}.hero>.planet-level-card>.planet-level-art{grid-column:1/-1;height:58px;margin-bottom:4px}.hero>.planet-level-card>p.muted{display:none}.hero>.planet-level-card>header{grid-column:1;margin:0}.hero>.planet-level-card .planet-level-body,.hero>.planet-level-card .planet-level-next{display:contents}.hero>.planet-level-card .requirements,.hero>.planet-level-card .storage-full{grid-column:1;gap:3px;margin:0}.hero>.planet-level-card .planet-level-next>:not(button){grid-area:2/2/span 3;margin:0}.hero>.planet-level-card .next{gap:3px 12px}.hero>.planet-level-card .planet-level-next>button{grid-area:2/3/span 3;align-self:end;min-width:200px}.hero{row-gap:12px}.hero>.planet-level-card>.planet-level-art{height:46px}.hero-info{gap:6px}.hero-info .daily-panel{padding:8px 12px}.hero-info .daily-panel ul{gap:2px;margin:4px 0}.hero-info .daily-reward{margin:4px 0 0;font-size:.75rem}}.hero>.hero-planet{align-self:stretch}.hero>.hero-planet>.hero-planet-top{flex:1}.hero>.hero-planet .hero-planet-main{justify-content:flex-start}.hero>.hero-planet .hero-planet-main>.planet-scene{margin-top:auto;margin-bottom:auto}.social{grid-template-columns:minmax(260px,1fr) minmax(300px,2fr);align-items:stretch;gap:14px;display:grid}.social-side,.social-chat{min-height:min(560px, calc(100vh - var(--alert-h,0px) - 260px));max-height:calc(100vh - var(--alert-h,0px) - 220px);flex-direction:column;gap:10px;min-width:0;display:flex}.social-sections{gap:6px;display:flex}.social-sections button{background:var(--panel);border:1px solid var(--panel-border);color:var(--muted);flex:1;position:relative}.social-sections button.selected{color:var(--text,#e8ecf8);border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--panel))}.social-dot{vertical-align:middle;background:#ff4d4d;border-radius:50%;width:9px;height:9px;margin-left:6px;display:inline-block;box-shadow:0 0 6px #ff4d4dcc}.social-list{flex:1;align-content:start;gap:6px;min-height:0;display:grid;overflow-y:auto}.social-search{gap:4px;display:grid}.social-search input{width:100%}.social-head{margin:8px 0 0;font-size:.95rem}.social-rows{gap:4px;margin:0;padding:0;list-style:none;display:grid}.social-rows li{background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;align-items:center;gap:8px;padding:5px 8px;display:flex}.social-rows li.selected{border-color:var(--accent)}.social-rows li>:last-child{margin-left:auto}.social-open{min-width:0;color:inherit;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:0;display:flex}.social-who{min-width:0;display:grid}.social-who strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.social-actions{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}button.social-small{white-space:nowrap;padding:3px 10px;font-size:.8rem}button.social-quiet{border:1px solid var(--panel-border);color:var(--muted);background:0 0}.social-chat-head{border-bottom:1px solid var(--panel-border);align-items:center;gap:10px;padding-bottom:8px;display:flex}.social-back{display:none}.social-chat .messages-lines{flex:1;min-height:120px;max-height:none}.social-empty{justify-self:center;background:0 0!important}.social-locked{background:#ffffff0a;border-radius:8px;padding:8px 10px}.social-placeholder{text-align:center;max-width:420px;margin:auto}@media (width<=800px){.social{grid-template-columns:1fr}.social-side,.social-chat{min-height:0;max-height:none}.social-chat .messages-lines{max-height:60vh}.social:not(.social-chat-open) .social-chat,.social.social-chat-open .social-side{display:none}.social-back{display:inline-block}}.social-sections button{justify-content:center;align-items:center;display:inline-flex}.social-chat .messages-lines{align-content:start}.social-rows .social-who{flex:1}.social-rows .social-actions,.social-rows button.social-small{flex-wrap:nowrap;flex-shrink:0}.social-chat-head .social-who{flex:1}@media (width<=800px){.social-chat-head{flex-wrap:wrap}}.social{grid-template-columns:minmax(300px,400px) minmax(0,1fr)}.social-list{grid-template-columns:minmax(0,1fr)}.social-sections button{min-width:0;padding-left:6px;padding-right:6px}@media (width<=800px){.social{grid-template-columns:minmax(0,1fr)}}.gallery-tabs{z-index:20;background:var(--bg,#0b1020);flex-wrap:nowrap;margin:8px 0 12px;padding:8px 0;position:sticky;top:0;overflow-x:auto}.gallery-tabs button{white-space:nowrap;flex:none}.scene-dock{height:var(--dock-h,224px);grid-template-columns:minmax(0,1fr) minmax(250px,330px);gap:12px;margin-top:10px;display:grid}.scene-detail,.build-queue{border:1px solid var(--panel-border);background:linear-gradient(160deg,#1a223ef0,#090d1bf2);border-radius:12px;min-width:0;min-height:0;position:relative;box-shadow:inset 0 1px #ffffff0d,0 8px 24px #00000059}.scene-detail{overflow:auto}.scene-detail.scene-detail-empty{box-shadow:none;color:var(--muted);background:#0c112180;border-style:dashed;justify-content:center;align-items:center;gap:12px;padding:16px 20px;display:flex}.scene-detail-empty svg{fill:#7fb2ff29;stroke:#7fb2ff;stroke-width:1.4px;stroke-linejoin:round;flex-shrink:0;width:24px;height:24px}.scene-detail-empty p{max-width:340px;margin:0}.scene-queue{min-width:0;min-height:0;display:flex}.scene-queue>.build-queue{flex:1}.scene-detail-cards{align-items:stretch;min-height:100%;display:flex}.scene-detail-cards>.card{-webkit-backdrop-filter:none;backdrop-filter:none;min-width:0;box-shadow:inset 3px 0 0 var(--res,var(--accent));background:0 0;border:none;border-radius:0;flex:1 1 0;gap:10px;margin:0;padding:14px 18px 14px 20px;overflow:visible}.scene-detail-cards>.card+.card{border-left:1px solid var(--panel-border);box-shadow:none}.scene-detail-cards>.card:last-child>header{padding-right:34px}.scene-detail .building-art{display:none}.scene-detail .card header{justify-content:flex-start;gap:10px}.scene-detail .card h3{letter-spacing:.01em;flex:0 auto;font-size:1.12rem}.scene-detail .card header .level{background:color-mix(in srgb, var(--res) 14%, transparent);border:1px solid color-mix(in srgb, var(--res) 45%, transparent);border-radius:999px;padding:2px 10px;font-size:.8rem}.scene-detail .next{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:7px 14px;font-size:.86rem}.scene-detail .next dt{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.scene-detail .next dd:empty{display:none}.scene-detail .cost{background:#ffffff0f;border:1px solid #ffffff14;border-radius:6px;padding:1px 8px}.scene-detail .cost.missing{background:#ff7a7a1a;border-color:#ff7a7a59}.scene-detail .card>button:not(.link):not(.tree-button),.scene-detail .card .card-actions>button:not(.tree-button){background:linear-gradient(#6c98ff,#4a76f0);align-self:flex-start;min-width:170px;padding:8px 20px;font-weight:600;box-shadow:0 0 0 1px #8cafff59,0 4px 14px #466ef04d}.scene-detail .card>button:not(.link):not(.tree-button):hover:not(:disabled),.scene-detail .card .card-actions>button:not(.tree-button):hover:not(:disabled){background:linear-gradient(#82aaff,#5a86ff)}.scene-detail .card>button:not(.link):not(.tree-button):disabled,.scene-detail .card .card-actions>button:not(.tree-button):disabled{background:#232b45;box-shadow:0 0 0 1px #8ca0d22e}.scene-detail .card .card-actions>button:not(.tree-button){align-self:auto}button.close-x{z-index:2;color:#c8d4ee;background:#080c18d9;border:1px solid #96afeb4d;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;transition:background .15s,border-color .15s,color .15s,transform .2s;display:grid;position:absolute;top:10px;right:10px}button.close-x svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:12px;height:12px;display:block}button.close-x:hover:not(:disabled){color:#fff;background:#ff6e6e29;border-color:#ff8c8c99;transform:rotate(90deg)}button.close-x:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.build-queue{--res:var(--accent);flex-direction:column;gap:8px;padding:12px 14px;display:flex;overflow:hidden}.build-queue-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.build-queue-head h3{text-transform:uppercase;letter-spacing:.12em;color:#b9c6e4;margin:0;font-size:.76rem}.build-queue-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.build-queue-empty{text-align:center;color:var(--muted);border:1px dashed #7896dc38;border-radius:8px;flex:1;place-items:center;margin:0;padding:10px;display:grid}.build-queue-list{scrollbar-width:thin;scrollbar-color:#7fb2ff59 transparent;flex-direction:column;flex:1;gap:5px;min-height:0;margin:0;padding:0 2px 0 0;list-style:none;display:flex;overflow-y:auto}.build-queue-list li{background:#ffffff09;border:1px solid #ffffff0f;border-radius:8px;flex-direction:column;gap:3px;padding:5px 9px;font-size:.84rem;display:flex}.build-queue-list li.running{background:#5b8cff14;border-color:#5b8cff59}.bq-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.bq-name{min-width:0;font-weight:600}.bq-level{color:#9fc0ff}.bq-long{color:#ffb36b;margin-left:6px;font-size:.75rem;font-weight:500}.bq-time{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.8rem}.build-queue-list .progress{height:4px}.bq-actions{flex-wrap:wrap;gap:2px 14px;display:flex}.bq-actions button.link{padding:0;font-size:.76rem}@media (width<=800px){.scene-dock{grid-template-columns:minmax(0,1fr);height:auto}.scene-detail{overflow:visible}.scene-detail-cards{flex-wrap:wrap}.scene-detail-cards>.card{flex-basis:100%}.scene-detail-cards>.card+.card{border-left:none;border-top:1px solid var(--panel-border)}.build-queue-list{overflow:visible}}.goal-box{background:linear-gradient(160deg,#5fb4ff26,#5fb4ff0a);border:1px solid #5fb4ff59;border-radius:10px;flex-direction:column;gap:7px;margin-top:8px;padding:10px 10px 11px 12px;display:flex}.goal-box.urgent{background:linear-gradient(160deg,#ffa0502e,#ffa0500d);border-color:#ffaa5a8c}.goal-head{align-items:center;gap:6px;display:flex}.goal-label{white-space:nowrap;text-transform:uppercase;letter-spacing:.1em;color:#8fd0ff;font-size:.7rem;font-weight:700}.goal-box.urgent .goal-label{color:#ffbf80}.goal-step{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem}.goal-head{cursor:pointer}.goal-box button.goal-toggle{color:#c8d4ee;background:#ffffff0d;border:1px solid #96afeb47;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin:0 0 0 auto;padding:0;display:inline-flex}.goal-box button.goal-toggle:hover{background:#ffffff1f}.goal-box button.goal-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px}.goal-progress{background:#ffffff14;border-radius:999px;height:3px;display:block;overflow:hidden}.goal-progress>span{background:linear-gradient(90deg,#5fb4ff,#7dffb2);height:100%;display:block}.goal-text{margin:0;font-size:.8rem;line-height:1.38}button.goal-go{color:#d4ebff;background:#5fb4ff2e;border:1px solid #5fb4ff73;border-radius:7px;align-self:flex-start;align-items:center;gap:6px;padding:5px 12px;font-size:.78rem;font-weight:600;display:inline-flex}button.goal-go:hover:not(:disabled){background:#5fb4ff4d}.goal-box.urgent button.goal-go{color:#ffe2c4;background:#ffa05033;border-color:#ffaa5a8c}.goal-box.urgent button.goal-go:hover:not(:disabled){background:#ffa05052}.goal-go svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px}@media (width<=800px){.side-nav>.goal-box{flex:1 0 100%;margin-top:4px}}.research-detail{width:min(100%, max(720px, calc((100vh - var(--alert-h,0px) - 485px) * 1600 / 640)));grid-template-columns:minmax(0,460px) minmax(0,1fr);align-items:start;column-gap:14px;display:grid}.research-detail>.card{grid-row:1/span 4}.research-detail>.research-where{grid-column:2;margin:0 0 6px}@media (width<=800px){.research-detail{width:100%;display:block}.research-detail>.research-where{margin:6px 4px 0}}.dev-switch{gap:6px;margin-right:auto;display:inline-flex}button.dev-switch-button{color:#ffcf8a;white-space:nowrap;background:#ffaa3c1f;border:1px dashed #ffbe5a99;border-radius:999px;padding:4px 10px;font-size:.8rem}button.dev-switch-button:hover:not(:disabled){background:#ffaa3c38}
