:root{--bg-deep: #05060a;--bg-panel: rgba(13, 16, 25, .62);--bg-panel-solid: rgba(16, 19, 30, .92);--line-soft: rgba(90, 96, 120, .35);--line-strong: rgba(143, 215, 255, .35);--ink: #e6e7ea;--ink-dim: #8b8f9c;--amber: #ffd873;--cyan: #8fd7ff;--violet: #a66bff;--violet-ink: #c9a0ff;--mint: #64ffda;--orange: #ffb74d;--danger: #ff7a7a;--glass-blur: saturate(1.5) blur(18px);--radius-panel: 1.15rem;--shadow-float: 0 12px 44px rgba(0, 0, 0, .45), 0 0 0 1px rgba(143, 215, 255, .06) inset;--ink-rgb: 230 231 234;--cyan-rgb: 143 215 255;--violet-rgb: 166 107 255;--mint-rgb: 100 255 218;--amber-rgb: 255 216 115;--rose-rgb: 255 122 170;--ice-rgb: 150 190 255;--star-rgb: 232 241 255;--rose: #ff7aaa;--ice: #96beff;--nebula-deep: #0a0716;--nebula-deep-rgb: 10 7 22;--void-rgb: 5 6 10;--nav-h: 3.9rem}html,body,#app{width:100%;height:100%;overflow:hidden}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-deep);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#app{display:flex;flex-direction:column;background:var(--bg-deep)}.canvas-wrap{position:relative;flex:1 1 auto;min-height:0;display:flex}#swarm-canvas{width:100%;height:100%;display:block;cursor:crosshair}.error{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;background:#05060aeb;color:var(--danger);padding:1rem;text-align:center}.hidden{display:none!important}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--violet);outline-offset:2px}.ico{width:1.2em;height:1.2em;flex:none;display:inline-block;vertical-align:-.22em}.ico-chip{display:inline-flex;align-items:center;gap:.22rem;font-weight:800;font-size:.72rem;font-variant-numeric:tabular-nums;white-space:nowrap}.ico-chip .ico{width:1em;height:1em}.ico-chip.inv-fuel .ico{color:var(--cyan)}.ico-chip.inv-metal .ico{color:var(--violet-ink)}.ico-chip.mat-alloy .ico{color:var(--amber)}.ico-chip.mat-ice .ico{color:var(--cyan)}.ico-chip.mat-crystal .ico{color:var(--mint)}.ico-chip.mat-rare .ico{color:var(--rose)}.pips{display:inline-flex;gap:.2rem;align-items:center}.pip{width:.42rem;height:.42rem;border-radius:50%;background:rgb(var(--ink-rgb) / .18);display:inline-block}.pip.on{background:var(--cyan);box-shadow:0 0 6px rgb(var(--cyan-rgb) / .7)}.pip.now{background:var(--amber);box-shadow:0 0 8px rgb(var(--amber-rgb) / .8);animation:glow-pulse 1.4s ease-in-out infinite}.fleet-hue-0{--hue: var(--cyan);--hue-rgb: var(--cyan-rgb)}.fleet-hue-1{--hue: var(--violet-ink);--hue-rgb: var(--violet-rgb)}.fleet-hue-2{--hue: var(--mint);--hue-rgb: var(--mint-rgb)}.fleet-hue-3{--hue: var(--amber);--hue-rgb: var(--amber-rgb)}.fleet-hue-4{--hue: var(--rose);--hue-rgb: var(--rose-rgb)}.fleet-hue-5{--hue: var(--ice);--hue-rgb: var(--ice-rgb)}.hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;display:block;background:none;border:none;padding:0}.hud>*{pointer-events:auto}.hud.map-hidden .hud-chips,.hud.map-hidden .hud-fleets,.hud.map-hidden .hud-offline-notice{display:none}.hud-chips{position:absolute;top:calc(.75rem + env(safe-area-inset-top));left:calc(.7rem + env(safe-area-inset-left));display:flex;gap:.35rem;max-width:calc(100% - 4.6rem)}.hud-chip{display:inline-flex;align-items:center;gap:.38rem;min-height:38px;background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:999px;padding:.2rem .7rem .2rem .55rem;font-size:.86rem;font-weight:800;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.hud-chip .ico{width:1.1rem;height:1.1rem}.chip-energy{color:var(--amber);position:relative;overflow:hidden}.chip-energy .energy-cap{font-size:.65rem;opacity:.55;margin-left:-.15rem}.chip-energy.full .energy-cap{color:var(--amber);opacity:.95}.chip-energy .energy-net{display:inline-flex;width:.8rem;height:.8rem;opacity:.85;transition:transform .2s}.chip-energy .energy-net .ico{width:.8rem;height:.8rem}.chip-energy[data-trend=up] .energy-net{transform:rotate(-90deg);color:var(--mint)}.chip-energy[data-trend=down] .energy-net{transform:rotate(90deg);color:var(--rose)}.chip-energy[data-trend=flat] .energy-net{display:none}.chip-energy.low{border-color:rgb(var(--rose-rgb) / .7)}.chip-energy .energy-fill{position:absolute;left:0;bottom:0;height:3px;width:0;background:rgb(var(--amber-rgb) / .85);transition:width .2s}.chip-energy .hud-resources-value{color:var(--amber)}.chip-credits,.chip-credits .hud-credits-value{color:var(--cyan)}.chip-crew,.chip-crew .hud-drone-count{color:var(--violet-ink)}.hud-resources-value,.hud-credits-value,.hud-drone-count{font-variant-numeric:tabular-nums;font-weight:800}.hud-offline-notice{position:absolute;top:calc(3.8rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:.35rem;background:var(--bg-panel);border:1px solid rgb(var(--mint-rgb) / .4);border-radius:999px;padding:.35rem .8rem;font-size:.74rem;font-weight:800;color:var(--mint);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.hud-fleets{position:absolute;top:calc(3.6rem + env(safe-area-inset-top));left:calc(.7rem + env(safe-area-inset-left));right:calc(4.4rem + env(safe-area-inset-right));display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none;padding:.2rem .2rem .45rem;margin:-.2rem}.hud-fleets::-webkit-scrollbar{display:none}.fleet-token:not([class*=fleet-hue-]){--hue: var(--cyan);--hue-rgb: var(--cyan-rgb)}.fleet-token{position:relative;flex:0 0 auto;min-width:46px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:999px;border:2px solid rgb(var(--hue-rgb) / .45);background:var(--bg-panel);color:var(--hue);padding:0 .7rem;cursor:pointer;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.fleet-token .ico{width:1.35rem;height:1.35rem}.fleet-token.selected{border-color:var(--hue);background:rgb(var(--hue-rgb) / .16);box-shadow:0 0 18px rgb(var(--hue-rgb) / .45),var(--shadow-float)}.fleet-token.busy:not(.selected){border-style:dashed}.fleet-token.busy .ico{animation:glow-pulse 1.1s ease-in-out infinite}.token-order{position:absolute;top:-.3rem;left:-.15rem;width:1.15rem;height:1.15rem;border-radius:999px;background:var(--bg-deep);border:1px solid var(--hue);color:var(--hue);display:flex;align-items:center;justify-content:center}.token-order .ico{width:.75rem;height:.75rem}.fleet-token.needs-order{border-color:var(--amber);animation:glow-pulse 1.1s ease-in-out infinite}.fleet-token.needs-order .token-order{border-color:var(--amber);color:var(--amber)}.token-count{position:absolute;top:-.3rem;right:-.15rem;min-width:1.15rem;height:1.15rem;border-radius:999px;background:var(--hue);color:var(--bg-deep);font-size:.64rem;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 .2rem}.token-name{display:flex;flex-direction:column;align-items:flex-start;font-size:.72rem;font-weight:800;line-height:1.1;color:var(--ink);white-space:nowrap}.token-name small{font-size:.58rem;font-weight:700;color:var(--hue)}.hud-mission{position:absolute;left:50%;bottom:calc(4.3rem + env(safe-area-inset-bottom));transform:translate(-50%);width:min(430px,calc(100% - 1.2rem));display:flex;flex-direction:column;align-items:stretch;gap:.4rem;background:var(--bg-panel);border:1px solid rgb(var(--violet-rgb) / .35);border-radius:var(--radius-panel);padding:.6rem .8rem .55rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.hud-mission.role-scout{border-color:rgb(var(--cyan-rgb) / .4)}.hud-mission.hidden{display:none}.mission-head{display:flex;align-items:center;gap:.55rem}.hud-quest-pips{display:inline-flex;gap:.25rem}.hud-quest-label{font-size:.72rem;font-weight:800;letter-spacing:.04em;color:var(--violet-ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-mission.running .hud-quest-label,.hud-mission.role-scout .hud-quest-label{color:var(--cyan)}.mission-info{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.hud-quest-status{min-width:0;font-size:.7rem;min-height:.9rem;color:var(--ink-dim);font-variant-numeric:tabular-nums}.hud-cargo{width:100%;height:4px;border-radius:3px;background:rgb(var(--ink-rgb) / .1);overflow:hidden}.hud-cargo-fill{height:100%;width:0;background:linear-gradient(90deg,var(--violet),var(--amber));transition:width .3s ease}.hud-inventory{display:flex;gap:.6rem;justify-content:flex-end;flex-shrink:0;color:var(--ink-dim)}.mission-body{display:flex;align-items:center;justify-content:center;gap:.8rem}.mission-actions{display:flex;gap:.45rem;align-items:center;justify-content:center;flex-wrap:wrap;min-height:3rem}.hud-quest-cta,.hud-quest-recall,.hud-loop,.hud-stance,.hud-order-clear,.hud-next-fund{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;cursor:pointer;font-weight:800}.hud-quest-cta{border:none;background:linear-gradient(135deg,var(--violet),var(--cyan));color:var(--bg-deep);padding:.4rem 1.2rem;animation:upgrade-pulse 1.6s ease-in-out infinite}.hud-quest-cta .ico{width:1.35rem;height:1.35rem}.hud-quest-cta .ico-chip{font-size:.82rem}.hud-quest-cta:disabled{background:rgb(var(--ink-rgb) / .1);color:var(--ink-dim);cursor:not-allowed;animation:none}.hud-quest-recall,.hud-loop,.hud-stance,.hud-order-clear,.hud-next-fund{min-width:48px;border:1px solid rgb(var(--violet-rgb) / .5);background:rgb(var(--violet-rgb) / .16);color:var(--violet-ink);padding:0 .7rem}.hud-next-fund{border-color:var(--line-soft);background:rgb(var(--ink-rgb) / .06);color:var(--ink-dim)}.hud-quest-recall .ico,.hud-loop .ico,.hud-stance .ico,.hud-order-clear .ico,.hud-next-fund .ico{width:1.35rem;height:1.35rem}.hud-loop,.hud-stance,.hud-order-clear{border-color:var(--line-soft);background:rgb(var(--ink-rgb) / .06);color:var(--ink-dim)}.hud-loop.armed{border-color:var(--cyan);background:rgb(var(--cyan-rgb) / .16);color:var(--cyan)}.hud-loop.needs-order{border-color:var(--amber);background:rgb(var(--amber-rgb) / .16);color:var(--amber);animation:glow-pulse 1.1s ease-in-out infinite}.hud-stance[data-stance=fight]{border-color:var(--rose);background:rgb(var(--rose-rgb) / .14);color:var(--rose)}.hud-stance[data-stance=evade]{border-color:var(--cyan);background:rgb(var(--cyan-rgb) / .14);color:var(--cyan)}.hud-loop.hidden,.hud-stance.hidden,.hud-order-clear.hidden{display:none}.compass{display:grid;grid-template-columns:repeat(3,40px);grid-template-rows:repeat(3,40px);gap:4px;padding:4px;border-radius:50%;background:radial-gradient(circle,rgb(var(--cyan-rgb) / .1),transparent 68%),conic-gradient(from 0deg,rgb(var(--cyan-rgb) / .05),transparent 25%,rgb(var(--violet-rgb) / .06),transparent 75%);border:1px solid rgb(var(--cyan-rgb) / .16)}.compass.hidden{display:none}.scan-cost{color:var(--amber);font-size:.9rem}.scan-cost.hidden{display:none}.compass-btn{display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line-soft);background:rgb(var(--ink-rgb) / .05);color:var(--ink-dim);cursor:pointer;padding:0;touch-action:manipulation;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.compass-arrow{display:flex;transition:transform .2s ease}.compass-btn .ico{width:1.15rem;height:1.15rem}.compass-btn.open{border-color:rgb(var(--cyan-rgb) / .7);color:var(--cyan);background:rgb(var(--cyan-rgb) / .12);box-shadow:0 0 12px rgb(var(--cyan-rgb) / .25)}.compass-btn.open:active{background:rgb(var(--cyan-rgb) / .3)}.compass-btn.busy{border-color:var(--hue);color:var(--hue);background:rgb(var(--hue-rgb) / .2);box-shadow:0 0 14px rgb(var(--hue-rgb) / .5);animation:glow-pulse 1.2s ease-in-out infinite}.compass-btn:disabled:not(.busy){opacity:.32;cursor:default}.compass-auto.compass-btn{border-style:dashed}.hud-gain{position:absolute;top:calc(7.6rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);max-width:calc(100% - 9rem);text-align:center;font-size:.78rem;font-weight:800;color:var(--amber);background:var(--bg-panel);border:1px solid rgb(var(--amber-rgb) / .35);border-radius:999px;padding:.3rem .85rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);pointer-events:none;z-index:6}.hud-loot{--rar-rgb: var(--cyan-rgb);position:absolute;top:calc(7.6rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);max-width:calc(100% - 3rem);min-height:44px;display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;font-weight:800;color:rgb(var(--rar-rgb));background:var(--bg-panel);border:1px solid rgb(var(--rar-rgb) / .55);border-radius:999px;padding:.3rem .95rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:0 0 14px rgb(var(--rar-rgb) / .4),var(--shadow-float);pointer-events:auto;cursor:pointer;z-index:7;animation:loot-in .35s ease-out}.hud-loot.hidden{display:none}.hud-loot.rarity-rare{--rar-rgb: var(--violet-rgb)}.hud-loot.rarity-epic{--rar-rgb: var(--amber-rgb);box-shadow:0 0 22px rgb(var(--rar-rgb) / .6),var(--shadow-float)}.hud-loot svg{width:1.1rem;height:1.1rem;flex:none}.hud-loot span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes loot-in{0%{opacity:0;transform:translate(-50%,-6px) scale(.92)}to{opacity:1;transform:translate(-50%)}}.reduce-motion .hud-loot{animation:none}.away-ring{position:relative;display:inline-flex;align-items:center;gap:.35rem;color:var(--hue, var(--amber));font-variant-numeric:tabular-nums;font-weight:800;font-size:.78rem}.away-ring svg:not(.ring-ico){width:1.9rem;height:1.9rem;flex:none;transform:rotate(-90deg)}.away-ring .ring-bg,.away-ring .ring-fg{fill:none;stroke-width:2.4}.away-ring .ring-bg{stroke:rgb(var(--ink-rgb) / .14)}.away-ring .ring-fg{stroke:currentColor;stroke-linecap:round;transition:stroke-dashoffset .9s linear}.away-ring .ring-ico{position:absolute;left:.5rem;top:.5rem;width:.9rem;height:.9rem}.away-ring.with-time .ring-ico{left:.5rem}.away-time{color:var(--ink);min-width:3.1rem}.fleet-lane .fleet-status.away{width:auto;height:auto;min-width:0;border-radius:999px;background:none;box-shadow:none;animation:none;padding:.1rem .45rem .1rem .1rem;border:1px solid rgb(var(--hue-rgb) / .4);display:inline-flex;align-items:center}.fleet-card.fleet-lane.away .lane-slots{opacity:.55}.edge-dock-sheet.orders-sheet{display:flex;flex-direction:column;gap:.45rem;padding:.55rem .65rem .6rem}.edge-dock-sheet.orders-sheet.hidden,.ship-stage.orders-open .ship-pool-rail,.ship-stage.orders-open .ship-roster-rail,.ship-stage.orders-open .base-graph-toolbar{display:none}.ship-stage.orders-open .ship-graph-viewport{opacity:.35;filter:blur(1px);pointer-events:none}.orders-fleets,.orders-targets,.orders-tiers{display:flex;align-items:center;gap:.35rem}.orders-fleets,.orders-targets{overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent 0,rgb(var(--ink-rgb)) .6rem,rgb(var(--ink-rgb)) calc(100% - .6rem),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,rgb(var(--ink-rgb)) .6rem,rgb(var(--ink-rgb)) calc(100% - .6rem),transparent 100%);padding:.15rem .5rem;margin:0 -.5rem}.orders-fleets::-webkit-scrollbar,.orders-targets::-webkit-scrollbar{display:none}.orders-row{display:flex;align-items:center;gap:.4rem}.orders-kinds{justify-content:center}.orders-targets{flex:1}.orders-fleet,.orders-kind,.orders-tier,.orders-site,.orders-heading,.orders-start,.orders-recall{min-width:44px;min-height:44px;flex:none;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border-radius:999px;border:1px solid var(--line-soft);background:rgb(var(--ink-rgb) / .04);color:var(--ink-dim);font-weight:800;font-size:.74rem;padding:0 .7rem;cursor:pointer}.orders-fleet{position:relative;color:var(--hue);border-color:rgb(var(--hue-rgb) / .4)}.orders-fleet.selected{border-color:var(--hue);background:rgb(var(--hue-rgb) / .16);box-shadow:0 0 14px rgb(var(--hue-rgb) / .4)}.orders-fleet.away:not(.selected){border-style:dashed}.orders-fleet .ico{width:1.25rem;height:1.25rem}.orders-fleet .away-ring svg:not(.ring-ico){width:1.5rem;height:1.5rem}.orders-fleet .away-ring .ring-ico{display:none}.orders-fleet-name{max-width:6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.orders-kind .ico,.orders-heading .ico,.orders-site .ico,.orders-recall .ico,.orders-start .ico{width:1.3rem;height:1.3rem}.orders-kind{padding:0 .95rem}.orders-kind.on,.orders-tier.on,.orders-site.on,.orders-heading.on{color:var(--cyan);border-color:var(--cyan);background:rgb(var(--cyan-rgb) / .14);box-shadow:0 0 12px rgb(var(--cyan-rgb) / .3)}.orders-tier .ico{width:.9rem;height:.9rem}.orders-tier.locked{color:var(--ink-dim);border-style:dashed;opacity:.8}.orders-tier.locked.on{color:var(--amber);border-color:var(--amber);background:rgb(var(--amber-rgb) / .1);box-shadow:none}.orders-site-label{max-width:7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders-heading{padding:0}.orders-heading .compass-arrow{display:inline-flex}.orders-start{flex:1;color:var(--mint);border-color:rgb(var(--mint-rgb) / .55);background:rgb(var(--mint-rgb) / .12)}.orders-start .ico-chip{color:var(--ink)}.orders-start.blocked{color:var(--ink-dim);border-color:var(--line-soft);border-style:dashed;background:none}.orders-empty{display:inline-flex;align-items:center;color:var(--ink-dim);padding:0 .6rem;min-height:44px}.orders-empty .ico{width:1.3rem;height:1.3rem}.orders-running{display:flex;align-items:center;gap:.5rem;min-height:48px;color:var(--ink)}.orders-running .away-ring{flex:1;font-size:1.05rem;color:var(--hue, var(--cyan))}.orders-running .away-ring svg:not(.ring-ico){width:2.5rem;height:2.5rem}.orders-running .away-ring .ring-ico{left:.7rem;top:.7rem;width:1.1rem;height:1.1rem}.orders-tier-chip,.orders-target-chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.74rem;font-weight:800;color:var(--ink-dim)}.orders-target-chip .ico{width:1.1rem;height:1.1rem}.orders-recall{color:var(--amber);border-color:rgb(var(--amber-rgb) / .5)}.hud.map-hidden .hud-reports{display:none}.hud-reports{position:absolute;z-index:5;top:calc(7.25rem + env(safe-area-inset-top));left:calc(.7rem + env(safe-area-inset-left));width:min(21rem,calc(100% - 5.1rem - env(safe-area-inset-left) - env(safe-area-inset-right)));display:flex;flex-direction:column;gap:.35rem}.hud-reports.hidden{display:none}.reports-head{display:flex;gap:.35rem;align-items:center}.reports-toggle,.reports-all,.report-head,.report-accept,.report-reject{min-height:44px;display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;border:1px solid var(--line-soft);background:var(--bg-panel);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float);color:var(--ink);font-weight:800;cursor:pointer}.reports-toggle{padding:0 .85rem;border-color:rgb(var(--amber-rgb) / .5);color:var(--amber)}.reports-toggle b{font-variant-numeric:tabular-nums;color:var(--ink)}.reports-chev{display:inline-flex;transform:rotate(90deg);transition:transform .15s ease}.hud-reports.expanded .reports-chev{transform:rotate(-90deg)}.reports-all{min-width:44px;justify-content:center;padding:0 .7rem;gap:0;color:var(--mint);border-color:rgb(var(--mint-rgb) / .5)}.reports-all .ico:last-child{margin-left:-.55rem}.reports-toggle .ico,.reports-all .ico{width:1.25rem;height:1.25rem}.reports-list{display:flex;flex-direction:column;gap:.35rem;max-height:min(42vh,calc(100dvh - 24rem));-webkit-mask-image:linear-gradient(transparent,rgb(var(--ink-rgb)) .3rem,rgb(var(--ink-rgb)) calc(100% - .3rem),transparent);mask-image:linear-gradient(transparent,rgb(var(--ink-rgb)) .3rem,rgb(var(--ink-rgb)) calc(100% - .3rem),transparent);overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain;padding:.2rem .1rem}.reports-list::-webkit-scrollbar{display:none}.report-card{flex:none;display:flex;flex-direction:column;border-radius:1rem;border:1px solid rgb(var(--hue-rgb) / .35);background:var(--bg-panel);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:inset 4px 0 rgb(var(--hue-rgb) / .8),var(--shadow-float);overflow:hidden}.report-head{width:100%;border:none;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0 .7rem 0 .9rem;color:var(--hue);font-size:.78rem}.report-head .ico{width:1.2rem;height:1.2rem;flex:none}.report-fleet{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.report-minis{display:inline-flex;gap:.15rem;margin-left:auto;color:var(--ink-dim)}.report-mini .ico{width:.95rem;height:.95rem}.report-count{min-width:1.4rem;text-align:center;font-variant-numeric:tabular-nums;color:var(--amber)}.report-items{list-style:none;display:flex;flex-direction:column;gap:.3rem;padding:0 .5rem .5rem .9rem}.report-item{display:flex;align-items:center;gap:.4rem}.report-item-main{flex:1;min-width:0;display:inline-flex;align-items:center;gap:.4rem;font-weight:800;font-size:.9rem;font-variant-numeric:tabular-nums}.report-item-main .ico{width:1.35rem;height:1.35rem;flex:none;color:var(--cyan)}.report-item.rarity-rare .report-item-main .ico{color:var(--violet-ink)}.report-item.rarity-epic .report-item-main .ico{color:var(--amber);filter:drop-shadow(0 0 6px rgb(var(--amber-rgb) / .6))}.report-accept,.report-reject{min-width:44px;justify-content:center;padding:0;box-shadow:none;background:rgb(var(--ink-rgb) / .04)}.report-accept{color:var(--mint);border-color:rgb(var(--mint-rgb) / .5)}.report-reject{color:var(--rose);border-color:rgb(var(--rose-rgb) / .4)}.report-reject:disabled{opacity:.3;cursor:default}.report-accept .ico,.report-reject .ico{width:1.25rem;height:1.25rem}@media(max-width:480px){.orders-fleet-name{max-width:4.2rem}.orders-site-label{max-width:5.5rem}}.reduce-motion .away-ring .ring-fg,.reduce-motion .reports-chev{transition:none}.report-note{font-size:.72rem;font-weight:500;overflow-wrap:anywhere;min-width:0;white-space:normal}.canvas-wrap:has(.hud:not(.map-hidden) .hud-reports:not(.hidden)) .minimap{top:calc(10.6rem + env(safe-area-inset-top))}.canvas-wrap:has(.hud:not(.map-hidden) .hud-reports.expanded:not(.hidden)) .minimap{visibility:hidden;pointer-events:none}.orders-targets{margin:0;min-width:0;max-width:100%}.hud:has(.hud-reports.expanded:not(.hidden)) .hud-loot{visibility:hidden;pointer-events:none}.hud-atlas{position:absolute;z-index:6;top:calc(3.6rem + env(safe-area-inset-top));left:calc(.7rem + env(safe-area-inset-left));width:min(21rem,calc(100% - 5.1rem - env(safe-area-inset-left) - env(safe-area-inset-right)));display:flex;flex-direction:column;gap:.4rem;padding:.5rem;border-radius:var(--radius-panel);border:1px solid rgb(var(--violet-rgb) / .4);background:var(--bg-panel);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}body:not(.atlas-open) .hud-atlas,.hud.map-hidden .hud-atlas{display:none}.atlas-head{display:flex;align-items:center;gap:.6rem}.atlas-title{display:inline-flex;align-items:center;gap:.4rem;color:var(--violet-ink);font-weight:800;font-variant-numeric:tabular-nums}.atlas-title .ico{width:1.25rem;height:1.25rem}.atlas-pips{display:inline-flex;gap:4px;flex:1;justify-content:center}.atlas-pips .pip{width:8px;height:8px}.atlas-claim{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.3rem;padding:0 .7rem;border-radius:999px;border:1px solid var(--line-soft);background:rgb(var(--ink-rgb) / .04);color:var(--ink-dim);font-weight:800;cursor:pointer}.atlas-claim .ico{width:1.25rem;height:1.25rem}.atlas-claim:disabled{opacity:.4;cursor:default}.atlas-claim.ready{color:var(--amber);border-color:rgb(var(--amber-rgb) / .6);box-shadow:0 0 14px rgb(var(--amber-rgb) / .35);animation:atlas-pulse 2.4s ease-in-out infinite}.atlas-list{list-style:none;display:flex;flex-direction:column;gap:.2rem;max-height:min(38vh,calc(100dvh - 22rem));overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain;padding:.2rem 0;-webkit-mask-image:linear-gradient(transparent,rgb(var(--ink-rgb)) .3rem,rgb(var(--ink-rgb)) calc(100% - .3rem),transparent);mask-image:linear-gradient(transparent,rgb(var(--ink-rgb)) .3rem,rgb(var(--ink-rgb)) calc(100% - .3rem),transparent)}.atlas-list::-webkit-scrollbar{display:none}.atlas-entry{display:flex;align-items:center;gap:.5rem;min-height:32px;padding:0 .3rem;font-size:.78rem;color:var(--ink)}.atlas-entry .ico{width:1.15rem;height:1.15rem;flex:none;color:var(--cyan)}.atlas-entry.kind-pulsar .ico,.atlas-entry.kind-comet .ico{color:var(--amber)}.atlas-entry.kind-nebula .ico,.atlas-entry.kind-crystalfield .ico{color:var(--violet-ink)}.atlas-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.atlas-ring{min-width:1.4rem;text-align:center;color:var(--ink-dim);font-variant-numeric:tabular-nums;font-size:.7rem}.atlas-empty{display:flex;align-items:center;gap:.5rem;margin:0;padding:.2rem .3rem;color:var(--ink-dim);font-size:.72rem}.atlas-empty .ico{width:1.25rem;height:1.25rem;flex:none;color:var(--cyan)}#toggle-atlas.has-claim{color:var(--amber);border-color:rgb(var(--amber-rgb) / .7);box-shadow:0 0 14px rgb(var(--amber-rgb) / .4),var(--shadow-float)}@keyframes atlas-pulse{50%{box-shadow:0 0 20px rgb(var(--amber-rgb) / .55)}}.reduce-motion .atlas-claim.ready{animation:none}body.atlas-open .minimap{visibility:hidden;pointer-events:none}.atlas-why{display:flex;align-items:flex-start;gap:.5rem;margin:0;padding:.4rem .3rem .1rem;border-top:1px solid var(--line-soft);color:var(--ink-dim);font-size:.7rem;line-height:1.35}.atlas-why .ico{width:1.15rem;height:1.15rem;flex:none;color:var(--amber)}.zoom-controls{position:absolute;z-index:4;top:calc(.7rem + env(safe-area-inset-top));right:calc(.7rem + env(safe-area-inset-right));display:flex;flex-direction:column;gap:.35rem}.zoom-controls button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--ink);cursor:pointer;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float);padding:0}.zoom-controls button .ico{width:1.25rem;height:1.25rem}.zoom-controls button:hover,.zoom-controls button[aria-pressed=true]{border-color:var(--violet);color:var(--violet-ink)}.zoom-controls.hidden{display:none}.minimap{position:absolute;z-index:4;top:calc(7.3rem + env(safe-area-inset-top));left:calc(.7rem + env(safe-area-inset-left));display:flex;flex-direction:column;gap:.4rem;background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:var(--radius-panel);padding:.5rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.minimap-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.minimap-title{font-size:.56rem;letter-spacing:.16em;color:var(--cyan);font-weight:800;text-transform:uppercase}.minimap-count{font-size:.58rem;color:var(--ink-dim);font-variant-numeric:tabular-nums}.minimap-canvas{display:block;width:140px;height:140px;border-radius:.6rem;background:#05060a8c;border:1px solid rgba(90,96,120,.25);touch-action:none;cursor:crosshair}.dev-toggle{position:absolute;z-index:5;bottom:calc(4.3rem + env(safe-area-inset-bottom));right:calc(.75rem + env(safe-area-inset-right));width:2.4rem;height:2.4rem;border-radius:50%;border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--ink-dim);cursor:pointer;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.tuning-panel{flex:0 0 auto;max-height:38vh;overflow-y:auto;padding:.75rem 1rem;background:var(--bg-panel-solid);border-top:1px solid var(--line-soft);display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.5rem 1.25rem}.tuning-panel.hidden{display:none}.control{display:flex;flex-direction:column;gap:.2rem}.control label{font-size:.75rem;color:var(--ink-dim);display:flex;justify-content:space-between}.control input[type=range]{width:100%;accent-color:var(--violet)}.control .value{color:#bfc4d1;font-variant-numeric:tabular-nums}.world-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.asteroid-img{position:absolute;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 0 14px rgba(166,107,255,.35));transition:opacity .3s ease}.asteroid-img.selected{filter:drop-shadow(0 0 10px rgba(201,160,255,.75))}.asteroid-img.fuel{filter:drop-shadow(0 0 10px rgba(80,220,255,.7)) hue-rotate(140deg)}.asteroid-img.depleted{filter:grayscale(.9)}.asteroid-img.pulse,.base-badge.pulse{animation:glow-pulse .9s ease-in-out infinite}.asteroid-label{position:absolute;transform:translate(-50%);font-size:.58rem;font-weight:700;letter-spacing:.1em;color:var(--violet-ink);text-shadow:0 1px 4px rgba(0,0,0,.9);pointer-events:none}.asteroid-label.depleted{color:#6a6d78}.base-badge{position:absolute;transform:translate(-50%);font-size:.58rem;letter-spacing:.08em;color:var(--ink-dim);background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:.45rem;padding:.2rem .5rem;white-space:nowrap;pointer-events:none;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.world-overlay.far .asteroid-label,.world-overlay.far .base-badge{display:none}.world-overlay.far .asteroid-img{filter:none}.world-overlay.far .asteroid-img.fuel{filter:hue-rotate(140deg)}@keyframes glow-pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@keyframes upgrade-pulse{0%,to{transform:scale(1);box-shadow:0 0 #ffd87373}50%{transform:scale(1.05);box-shadow:0 0 0 7px #ffd87300}}.fleet-badge{position:absolute;min-width:1.3rem;height:1.3rem;padding:0 .3rem;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:900;font-variant-numeric:tabular-nums;line-height:1;color:var(--bg-deep);background:var(--hue);box-shadow:0 0 10px rgb(var(--hue-rgb) / .55);pointer-events:none}.world-overlay.far .fleet-badge{display:none}.game-screen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;overflow:hidden;padding:0;background:radial-gradient(1200px 700px at 18% -10%,rgba(88,54,160,.28),transparent 60%),radial-gradient(900px 620px at 112% 8%,rgba(26,94,122,.3),transparent 55%),linear-gradient(165deg,#070a12,#05060a 55%,#04050a)}.options-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:calc(4.4rem + env(safe-area-inset-top)) .8rem calc(6.2rem + env(safe-area-inset-bottom))}.game-screen.hidden{display:none}.editor-stage{position:relative;width:100%;height:100%;overflow:hidden}.edge-top-bar{position:absolute;top:calc(.75rem + env(safe-area-inset-top));left:calc(.75rem + env(safe-area-inset-left));right:calc(.75rem + env(safe-area-inset-right));display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;z-index:20;pointer-events:none}.edge-top-bar>*{pointer-events:auto}.edge-title-chip{display:flex;flex-direction:column;gap:.05rem;background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:.9rem;padding:.45rem .85rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.edge-title-chip h2{margin:0;font-size:.98rem;color:var(--ink);font-weight:800;letter-spacing:.02em}.eyebrow{font-size:.56rem;letter-spacing:.18em;color:var(--cyan);font-weight:700}.edge-status-cluster{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;flex-wrap:wrap}.edge-hint-pill{position:absolute;top:calc(4.6rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:18;max-width:min(92%,34rem);text-align:center;font-size:.66rem;color:var(--ink-dim);background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:999px;padding:.32rem .9rem;pointer-events:none;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.base-online-count{font-size:.66rem;font-weight:800;letter-spacing:.08em;color:var(--mint);border:1px solid rgba(100,255,218,.4);border-radius:999px;padding:.42rem .75rem;background:var(--bg-panel);white-space:nowrap;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.hud-guide{display:flex;align-items:center;gap:.4rem;margin-bottom:.35rem;padding:.2rem .2rem .2rem .75rem;font-size:.68rem;color:var(--ink);background:var(--bg-panel);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid rgb(var(--cyan-rgb) / .45);border-radius:999px;box-shadow:var(--shadow-float)}.hud-guide .guide-text{flex:1;min-width:0}.guide-skip{flex:none;width:2.5rem;height:2.5rem;display:grid;place-items:center;color:var(--ink-dim);background:transparent;border:0;border-radius:50%}.guide-target{outline:2px solid rgb(var(--cyan-rgb) / .8);outline-offset:2px;border-radius:12px;animation:guide-pulse 1.6s ease-in-out infinite}@keyframes guide-pulse{50%{outline-color:rgb(var(--cyan-rgb) / .2)}}body.reduce-motion .guide-target{animation:none}.edge-pool-rail{position:absolute;z-index:22;top:50%;left:calc(.7rem + env(safe-area-inset-left));transform:translateY(-50%);width:178px;max-height:min(62vh,560px);display:flex;flex-direction:column;gap:.4rem;background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:var(--radius-panel);padding:.55rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.pool-header{display:flex;align-items:baseline;justify-content:space-between;gap:.3rem;padding:0 .2rem}.pool-title{font-size:.58rem;letter-spacing:.16em;color:var(--cyan);font-weight:800}.pool-sub{font-size:.55rem;color:var(--ink-dim)}.pool-cards{display:flex;flex-direction:column;gap:.4rem;overflow-y:auto;overscroll-behavior:contain}.pool-card{display:flex;align-items:stretch;gap:.2rem;border-radius:.75rem;border:1px solid var(--line-soft);background:#121520b8;color:var(--ink);padding:0;cursor:pointer;text-align:left;touch-action:none;transition:border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.pool-card-body{flex:1;display:flex;flex-direction:column;gap:.12rem;padding:.45rem .5rem .45rem 0;min-width:0}.pool-name{font-size:.74rem;font-weight:800;color:var(--ink)}.pool-effect{font-size:.58rem;line-height:1.25;color:var(--ink-dim)}.pool-status{font-size:.56rem;font-weight:800;letter-spacing:.06em;color:var(--ink-dim)}.pool-card.usable{border-color:#a66bff8c}.pool-card.usable .pool-status{color:var(--violet-ink)}.pool-card.locked{opacity:.45}.pool-card.locked .pool-name{color:var(--ink-dim)}.pool-card.installed{opacity:.55;border-style:dashed}.pool-card.placing{border-color:var(--orange);box-shadow:0 0 12px #ffb74d66}.pool-card:disabled{cursor:default}.pool-drag-handle{align-self:stretch;min-width:34px;display:flex;align-items:center;justify-content:center;color:#5a6078;font-size:.8rem;letter-spacing:-.2em;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;border-right:1px dashed var(--line-soft);border-radius:.75rem 0 0 .75rem}.pool-card.usable .pool-drag-handle{color:var(--violet-ink)}.edge-bottom-dock{position:absolute;z-index:22;left:50%;transform:translate(-50%);bottom:calc(3.9rem + env(safe-area-inset-bottom));width:min(620px,calc(100% - 1rem));display:flex;flex-direction:column;gap:.4rem}.edge-dock-tabs{display:flex;gap:.35rem;justify-content:center;pointer-events:auto}.edge-dock-tabs button{min-height:40px;border-radius:999px;border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--ink-dim);font-size:.66rem;font-weight:800;letter-spacing:.05em;padding:.35rem .9rem;cursor:pointer;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.edge-dock-tabs button[aria-selected=true]{color:var(--violet-ink);border-color:var(--violet);box-shadow:0 0 14px #a66bff4d}.edge-dock-sheet{background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:var(--radius-panel);padding:.6rem .8rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.edge-dock-sheet.hidden{display:none}.editor-canvas-viewport,.base-graph-viewport,.ship-graph-viewport{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;background:radial-gradient(rgba(143,215,255,.055) 1px,transparent 1.4px) 0 0 / 26px 26px,radial-gradient(rgba(166,107,255,.05) 1px,transparent 1.4px) 13px 13px / 52px 52px;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior:contain}.base-graph-holder,.ship-graph-holder{position:relative}.base-graph-board,.ship-graph-board{position:relative;width:4096px;height:4096px;transform-origin:0 0}.graph-wires{position:absolute;top:0;right:0;bottom:0;left:0;width:4096px;height:4096px;pointer-events:none}.graph-wire{fill:none;stroke-width:3.2}.graph-wire.lit{stroke:#8fd7ffe6;filter:drop-shadow(0 0 6px rgba(143,215,255,.55))}.graph-wire.eligible{stroke:var(--violet);stroke-dasharray:9 6;animation:wire-dash 1.1s linear infinite}.graph-wire.dim{stroke:#5a607847;stroke-dasharray:4 8}.graph-wire.wire-live{stroke:var(--orange);stroke-dasharray:10 7;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(255,183,77,.6));animation:wire-dash .8s linear infinite}@keyframes wire-dash{to{stroke-dashoffset:-15}}.drop-preview{position:absolute;width:150px;height:110px;transform:translate(-50%,-50%);border-radius:1rem;border:2px dashed var(--cyan);background:#8fd7ff14;pointer-events:none;z-index:5}.drop-preview.invalid{border-color:var(--danger);background:#ff7a7a14}.drop-preview.hidden{display:none}.graph-node{position:absolute;transform:translate(-50%,-50%);width:138px;min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;border-radius:1rem;border:2px solid var(--line-soft);background:var(--bg-panel-solid);color:var(--ink);font-size:.72rem;font-weight:800;cursor:grab;padding:.45rem;box-shadow:0 10px 30px #00000073;z-index:2}.graph-node img{width:46px;height:46px;object-fit:contain}.graph-node .node-name{font-size:.72rem;font-weight:800;color:var(--ink)}.graph-node .node-level{font-size:.58rem;letter-spacing:.06em;color:var(--ink-dim);font-weight:700}.node-dot{width:10px;height:10px;border-radius:50%;background:#3a3f55}.node-port{position:absolute;width:20px;height:20px;border-radius:50%;border:2px solid rgba(143,215,255,.6);background:#0c0e14e6;cursor:crosshair;z-index:3}.node-port.port-in{left:-9px;top:50%;transform:translateY(-50%)}.node-port.port-out{right:-9px;top:50%;transform:translateY(-50%);border-color:#a66bffb3;box-shadow:0 0 10px #a66bff66}.graph-node.state-online{border-color:#64ffda80}.graph-node.state-online .node-dot{background:var(--mint);box-shadow:0 0 9px #64ffdacc}.graph-node.state-wired{border-color:#64ffda99;box-shadow:0 0 16px #64ffda38}.graph-node.state-wired .node-dot{background:var(--mint)}.graph-node.state-buyable{border-color:#a66bff8c}.graph-node.state-buyable .node-dot{background:var(--violet)}.graph-node.state-unwired{border-color:#ffb74da6}.graph-node.state-unwired .node-dot{background:var(--orange)}.graph-node.state-locked{opacity:.5}.graph-node.selected{box-shadow:0 0 0 2px var(--violet),0 0 20px #a66bff66}.graph-node.link-target{border-color:var(--violet);box-shadow:0 0 20px #a66bff8c;animation:link-pulse 1.2s ease-in-out infinite}@keyframes link-pulse{0%,to{box-shadow:0 0 14px #a66bff66}50%{box-shadow:0 0 26px #a66bffb3}}.drag-ghost{position:fixed;z-index:80;transform:translate(-50%,-120%);pointer-events:none;background:linear-gradient(135deg,var(--violet),var(--cyan));color:#0c0e14;font-size:.7rem;font-weight:800;border-radius:.6rem;padding:.4rem .8rem;box-shadow:0 8px 24px #00000080;white-space:nowrap}.drag-ghost.hidden{display:none}.base-graph-toolbar{display:flex;gap:.3rem}.base-graph-toolbar button{min-width:44px;min-height:44px;border-radius:999px;border:1px solid var(--line-soft);background:var(--bg-panel);color:var(--cyan);font-size:1rem;font-weight:800;cursor:pointer;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.base-graph-toolbar button:hover{border-color:var(--violet);color:var(--violet-ink)}.base-inspector{display:flex;align-items:center;gap:.8rem}.inspector-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.inspector-actions{display:flex;gap:.35rem;flex-wrap:wrap;flex:0 0 auto}.base-inspector-name{font-size:.88rem;font-weight:800;color:var(--ink)}.base-inspector-desc{font-size:.68rem;color:var(--ink-dim)}.base-inspector-effect{font-size:.7rem;color:var(--cyan);font-weight:700}.base-inspector-cta,.base-inspector-alt,.base-inspector-alt2,.ship-insp-actions button{min-height:42px;border-radius:.6rem;border:1px solid rgba(166,107,255,.5);background:#a66bff2e;color:var(--violet-ink);font-size:.72rem;font-weight:800;padding:.35rem .8rem;cursor:pointer}.base-inspector-alt,.base-inspector-alt2{border-color:#8fd7ff66;background:#121520bf;color:var(--cyan)}.base-inspector-cta:disabled,.base-inspector-alt:disabled,.base-inspector-alt2:disabled,.ship-insp-actions button:disabled{opacity:.4;cursor:default}.dock-fleet-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.5rem}.base-phase,.base-condition{font-size:.74rem;font-weight:700;color:var(--ink)}.hangar-repair{min-height:40px;border-radius:.55rem;border:1px solid rgba(143,215,255,.4);background:#121520cc;color:var(--cyan);font-size:.72rem;font-weight:800;padding:.3rem .8rem;cursor:pointer}.hangar-repair:disabled{opacity:.4;cursor:default}.role-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.role-card{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;background:#12152099;border:1px solid var(--line-soft);border-radius:.75rem;padding:.5rem .6rem}.role-card img{width:2.2rem;height:2.2rem;object-fit:contain}.role-info{display:flex;flex-direction:column;font-size:.66rem;color:#c9cbd4}.role-info b{font-size:.72rem}.role-count{color:var(--cyan);font-weight:800}.role-buy{width:100%;min-height:40px;border-radius:.5rem;border:1px solid rgba(166,107,255,.5);background:#a66bff26;color:var(--violet-ink);font-size:.72rem;font-weight:800;cursor:pointer}.role-buy:disabled{opacity:.4}.proc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.proc-item{display:flex;flex-direction:column;gap:.25rem}.proc-row{display:flex;justify-content:space-between;gap:.4rem;font-size:.66rem;color:#c9cbd4}.proc-count{color:var(--ink-dim);font-variant-numeric:tabular-nums}.proc-bar{height:5px;border-radius:3px;background:#1e2130d9;overflow:hidden}.proc-fill{height:100%;width:0;transition:width .2s linear}.proc-fill.fuel{background:var(--amber)}.proc-fill.metal{background:var(--violet)}.proc-fill.reactor{background:#37c8e8}.ship-stage{position:relative;width:100%;height:100%;overflow:hidden}.ship-roster-rail{position:absolute;z-index:22;top:calc(4.9rem + env(safe-area-inset-top));right:calc(.7rem + env(safe-area-inset-right));bottom:calc(9.5rem + env(safe-area-inset-bottom));width:224px;display:flex;flex-direction:column;gap:.4rem;background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:var(--radius-panel);padding:.55rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.ship-roster-rail .roster-title{font-size:.56rem;letter-spacing:.16em;color:var(--cyan);font-weight:800;padding:0 .2rem}.ship-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem}.ship-row{min-height:44px;display:flex;flex-direction:row;align-items:stretch;gap:0;text-align:left;border:1px solid var(--line-soft);border-radius:.65rem;background:#121520b8;color:var(--ink);font-size:.7rem;font-weight:700;padding:0;cursor:pointer;overflow:hidden}.ship-row-body{display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;padding:.35rem .6rem;min-width:0;flex:1}.ship-row .ship-row-sub{font-size:.56rem;font-weight:600;color:var(--ink-dim)}.ship-drag-handle{align-self:stretch;min-width:26px;display:flex;align-items:center;justify-content:center;color:#5a6078;font-size:.7rem;letter-spacing:-.2em;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;border-right:1px dashed var(--line-soft)}.ship-row:hover .ship-drag-handle{color:var(--violet-ink)}.ship-row.selected{border-color:var(--violet);box-shadow:0 0 12px #a66bff4d}.ship-row.tech{border-style:dashed;color:var(--ink-dim);cursor:default;flex-direction:row;align-items:center;padding:.35rem .6rem}.tech-name{background:transparent;border:none;border-bottom:1px dashed transparent;color:var(--ink);font-size:.7rem;font-weight:700;padding:.2rem 0;min-width:0;flex:0 1 auto;width:6.5rem}.tech-name:focus{outline:none;border-bottom-color:var(--violet)}.ship-pool-rail{position:absolute;z-index:22;top:50%;left:calc(.7rem + env(safe-area-inset-left));transform:translateY(-50%);width:178px;max-height:min(58vh,520px);display:flex;flex-direction:column;gap:.4rem;background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:var(--radius-panel);padding:.55rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.ship-detail-head{display:flex;align-items:center;gap:.5rem}.ship-name{font-size:.9rem;font-weight:800;color:var(--ink)}.ship-rename{flex:1;min-width:0;max-width:9rem;background:#121520d9;border:1px solid rgba(166,107,255,.5);border-radius:.5rem;color:var(--ink);font-size:.78rem;font-weight:700;padding:.35rem .55rem}.ship-hint{font-size:.64rem;color:var(--ink-dim);min-height:.9rem}.ship-inspector{display:flex;align-items:center;gap:.8rem}.ship-inspector.hidden{display:none}.ship-insp-name{font-size:.82rem;font-weight:800;color:var(--ink)}.ship-insp-effect{font-size:.66rem;color:var(--cyan);display:block}.ship-insp-actions{display:flex;gap:.35rem;flex-wrap:wrap}.ship-insp-actions button{flex:1 1 auto}.fleet-list{display:flex;flex-direction:column;gap:.5rem;max-height:38vh;overflow-y:auto}.fleet-card{background:#121520b8;border:1px solid var(--line-soft);border-radius:.85rem;padding:.55rem .7rem;display:flex;flex-direction:column;gap:.35rem}.fleet-card.selected{border-color:var(--violet);box-shadow:0 0 14px #a66bff40}.fleet-head{display:flex;align-items:center;gap:.5rem}.fleet-name{flex:1;min-width:0;background:transparent;border:none;border-bottom:1px dashed transparent;color:var(--ink);font-size:.85rem;font-weight:800;padding:.2rem 0}.fleet-name:focus{outline:none;border-bottom-color:var(--violet)}.fleet-role{font-size:.58rem;letter-spacing:.06em;color:var(--cyan);border:1px solid rgba(143,215,255,.35);border-radius:999px;padding:.15rem .5rem;white-space:nowrap}.fleet-meta{font-size:.64rem;color:var(--ink-dim)}.fleet-members{display:flex;flex-wrap:wrap;gap:.3rem}.fleet-chip{display:inline-flex;align-items:stretch;border:1px solid var(--line-soft);border-radius:999px;background:#1e2130cc;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}.fleet-chip.star{border-color:#ffbe5a8c;box-shadow:0 0 8px #ffbe5a26}.chip-name{border:none;background:transparent;color:var(--ink);font-size:.7rem;font-weight:700;padding:.35rem .15rem .35rem .65rem;cursor:pointer}.chip-star{border:none;background:transparent;color:#ffbe5a80;font-size:.68rem;padding:.35rem .6rem .35rem .2rem;cursor:pointer}.chip-star:hover:not(:disabled){color:var(--amber)}.chip-star:disabled{color:var(--amber);cursor:default}.fleet-status{font-size:.56rem;letter-spacing:.05em;padding:.14rem .5rem;border-radius:999px;border:1px solid rgba(120,240,190,.4);color:var(--mint);white-space:nowrap}.fleet-status.busy{border-color:#ffbe5a73;color:var(--orange)}.fleet-card.drop-hover{border-color:var(--mint);box-shadow:0 0 16px #78f0be59}.fleet-card.drop-invalid{border-color:var(--danger);box-shadow:0 0 12px #ff6e6e40}.fleet-new{border-style:dashed;align-items:center;justify-content:center;min-height:52px;color:var(--ink-dim);font-size:.64rem;font-weight:700;text-align:center}.fleet-log{display:flex;flex-direction:column;font-size:.58rem;color:var(--ink-dim)}.fleet-order{min-height:44px;border-radius:.6rem;border:1px solid rgba(166,107,255,.5);background:#a66bff2e;color:var(--violet-ink);font-size:.74rem;font-weight:800;cursor:pointer}.ship-fleets-sheet{max-height:42vh;overflow-y:auto}.screen-card{max-width:27rem;margin:0 auto;display:flex;flex-direction:column;gap:.75rem}.screen-title{font-size:.78rem;letter-spacing:.16em;color:var(--cyan);margin:0;font-weight:800}.screen-zone{background:var(--bg-panel);border:1px solid var(--line-soft);border-radius:var(--radius-panel);padding:.7rem .9rem;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.screen-zone h3{font-size:.62rem;letter-spacing:.14em;color:var(--ink-dim);margin:0 0 .45rem;font-weight:700;text-transform:uppercase}.opt-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.78rem;color:#c9cbd4;padding:.35rem 0}.opt-controls{display:flex;align-items:center;gap:.4rem}.opt-size{width:2.75rem;height:2.75rem;border-radius:50%;border:1px solid rgba(166,107,255,.5);background:#1e2130cc;color:var(--ink);font-size:1.15rem;font-weight:800;cursor:pointer}.opt-size:disabled{opacity:.35}.opt-size-value{min-width:1.5rem;text-align:center;font-weight:800;font-variant-numeric:tabular-nums}.opt-toggle{min-width:5.2rem;min-height:42px;border-radius:999px;border:1px solid rgba(166,107,255,.5);background:#a66bff26;color:var(--violet-ink);font-size:.74rem;font-weight:800;cursor:pointer}.opt-toggle[aria-pressed=false]{background:#1e2130b3;border-color:var(--line-soft);color:var(--ink-dim)}.game-nav{position:absolute;left:0;right:0;bottom:0;z-index:30;display:flex;background:#080a10d9;border-top:1px solid var(--line-soft);padding-bottom:env(safe-area-inset-bottom);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.game-nav button{flex:1;min-height:52px;border:none;background:transparent;color:var(--ink-dim);font-size:.7rem;font-weight:800;letter-spacing:.06em;cursor:pointer}.game-nav button[aria-current=page]{color:var(--violet-ink);box-shadow:inset 0 2px 0 var(--violet)}body.reduce-motion *{animation:none!important;transition:none!important}.game-screen{background:radial-gradient(64% 46% at 12% 6%,rgb(var(--violet-rgb) / .3),transparent 72%),radial-gradient(58% 44% at 96% 22%,rgb(var(--cyan-rgb) / .2),transparent 70%),radial-gradient(60% 40% at 62% 104%,rgb(var(--rose-rgb) / .16),transparent 72%),linear-gradient(170deg,var(--nebula-deep) 0%,var(--bg-deep) 60%)}.game-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(1.4px 1.4px at 22px 34px,rgb(var(--star-rgb) / .85),transparent),radial-gradient(1px 1px at 96px 128px,rgb(var(--star-rgb) / .6),transparent),radial-gradient(1.2px 1.2px at 168px 64px,rgb(var(--cyan-rgb) / .7),transparent),radial-gradient(1px 1px at 206px 190px,rgb(var(--star-rgb) / .55),transparent),radial-gradient(1.6px 1.6px at 58px 210px,rgb(var(--amber-rgb) / .55),transparent);background-size:240px 240px;opacity:.8}.game-screen:after{content:"";position:absolute;z-index:0;pointer-events:none;border-radius:50%;width:30rem;height:30rem;right:-17rem;bottom:12rem;background:radial-gradient(circle at 28% 30%,rgb(var(--violet-rgb) / .55),rgb(var(--violet-rgb) / .14) 46%,transparent 68%);box-shadow:inset -2.5rem -2rem 4rem rgb(var(--void-rgb) / .85),0 0 5rem rgb(var(--violet-rgb) / .16);opacity:.7}#ship-screen:after{left:-18rem;right:auto;top:6rem;bottom:auto;width:24rem;height:24rem;background:radial-gradient(circle at 70% 30%,rgb(var(--cyan-rgb) / .5),rgb(var(--cyan-rgb) / .12) 48%,transparent 68%);box-shadow:inset 2rem -2rem 3.5rem rgb(var(--void-rgb) / .85),0 0 4rem rgb(var(--cyan-rgb) / .14)}#options-screen:after{right:-14rem;top:4rem;bottom:auto;width:22rem;height:22rem;background:radial-gradient(circle at 30% 70%,rgb(var(--rose-rgb) / .42),rgb(var(--rose-rgb) / .1) 46%,transparent 68%)}.editor-stage{z-index:1}.editor-canvas-viewport,.base-graph-viewport,.ship-graph-viewport{background:radial-gradient(rgb(var(--cyan-rgb) / .07) 1px,transparent 1.4px) 0 0 / 40px 40px}.base-graph-board:before,.ship-graph-board:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-radial-gradient(circle at 2048px 2048px,transparent 0 318px,rgb(var(--cyan-rgb) / .07) 319px 320px,transparent 321px 330px);-webkit-mask-image:radial-gradient(circle at 2048px 2048px,#000 0,#000 1500px,transparent 1900px);mask-image:radial-gradient(circle at 2048px 2048px,#000 0,#000 1500px,transparent 1900px)}.edge-title-chip{flex-direction:row;align-items:center;gap:.5rem;min-height:44px;border-color:rgb(var(--cyan-rgb) / .22)}.edge-title-chip h2{font-size:.9rem}.eyebrow{display:inline-flex;color:var(--cyan)}.eyebrow .ico{width:1.3rem;height:1.3rem}.edge-status-cluster .hud-chip{min-height:40px}.base-online-count{display:inline-flex;align-items:center;gap:.3rem;min-height:40px;padding:0 .7rem}.base-online-count .ico{width:1.1rem;height:1.1rem}.edge-dock-tabs button{width:48px;min-height:44px;padding:0;display:flex;align-items:center;justify-content:center}.edge-dock-tabs button .ico{width:1.3rem;height:1.3rem}.edge-dock-tabs button[aria-selected=true]{background:rgb(var(--violet-rgb) / .16)}.edge-hint-pill{color:var(--ink);border-color:rgb(var(--cyan-rgb) / .2)}.base-graph-toolbar button{display:flex;align-items:center;justify-content:center;padding:0}.base-graph-toolbar button .ico{width:1.2rem;height:1.2rem}.edge-pool-rail,.ship-pool-rail{width:76px;padding:.4rem;gap:.35rem;align-items:stretch;border-color:rgb(var(--violet-rgb) / .28)}.pool-header{justify-content:center}.pool-title{display:inline-flex;color:var(--ink-dim)}.pool-title .ico,.pool-header .ico{width:1.1rem;height:1.1rem}.pool-header{color:var(--ink-dim)}.pool-card{flex-direction:column;align-items:center;justify-content:center;gap:.28rem;min-height:84px;padding:.5rem .2rem .4rem;border-radius:.8rem;color:var(--ink-dim)}.pool-card .pool-ico{width:1.9rem;height:1.9rem}.pool-fx{display:flex;flex-direction:column;align-items:center;gap:.05rem;color:var(--ink)}.pool-fx .ico-chip{font-size:.62rem}.pool-status{display:flex;align-items:center;justify-content:center;gap:.15rem;font-size:.68rem;color:var(--ink-dim);min-height:1rem}.pool-status .ico{width:.95rem;height:.95rem}.pool-card.usable{color:var(--violet-ink);background:rgb(var(--violet-rgb) / .12);box-shadow:0 0 14px rgb(var(--violet-rgb) / .2)}.pool-card.usable .pool-status{color:var(--amber)}.pool-card.usable .pool-ico{filter:drop-shadow(0 0 6px rgb(var(--violet-rgb) / .8))}.pool-card.installed .pool-status{color:var(--mint)}.graph-node{width:124px;min-height:124px;gap:.3rem;padding:.5rem .3rem;border-radius:1.4rem;background:rgb(var(--nebula-deep-rgb) / .82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.graph-node img{width:68px;height:68px}.node-glyph{width:68px;height:68px;border-radius:50%;border:3px solid var(--node-tint, var(--line-soft));background:radial-gradient(circle at 35% 30%,rgb(var(--node-rgb, 143 215 255) / .22),rgb(var(--node-rgb, 143 215 255) / .04) 70%);display:flex;align-items:center;justify-content:center;color:var(--node-tint, var(--ink-dim));box-shadow:0 0 22px rgb(var(--node-rgb, 143 215 255) / .25)}.node-glyph .ico{width:38px;height:38px}.graph-node .node-name{font-size:.78rem;letter-spacing:.06em;color:var(--ink);max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.graph-node .node-level{min-height:20px;display:flex;align-items:center;justify-content:center;color:var(--node-tint, var(--ink-dim))}.graph-node .node-level .ico{width:20px;height:20px}.graph-node .pip{width:11px;height:11px}.graph-node .pips{gap:6px}.node-port{width:26px;height:26px}.node-port.port-in{left:-12px}.node-port.port-out{right:-12px}.graph-node.state-online,.graph-node.state-wired{--node-tint: var(--mint);--node-rgb: var(--mint-rgb)}.graph-node.state-buyable{--node-tint: var(--violet-ink);--node-rgb: var(--violet-rgb)}.graph-node.state-unwired{--node-tint: var(--orange);--node-rgb: var(--amber-rgb)}.graph-node.state-paused{--node-tint: var(--rose);--node-rgb: var(--rose-rgb);opacity:.72}.graph-node.state-paused .node-glyph{border-style:dotted}.graph-node.state-locked{--node-tint: var(--ink-dim);--node-rgb: var(--ink-rgb)}.graph-node.state-unwired .node-glyph{border-style:dashed;animation:glow-pulse 1.6s ease-in-out infinite}.graph-node[data-ship-node=hull]{--node-tint: var(--cyan);--node-rgb: var(--cyan-rgb)}.graph-node[data-ship-node=hull] .node-level{display:none}.base-inspector,.ship-inspector{gap:.7rem}.base-inspector-name{display:flex;align-items:center;gap:.45rem;font-size:.9rem}.base-inspector-name .ico{width:1.4rem;height:1.4rem;color:var(--violet-ink)}.base-inspector-effect,.ship-insp-effect{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;color:var(--ink);min-height:1.3rem}.base-inspector-effect .ico,.ship-insp-effect .ico{width:1.15rem;height:1.15rem}.base-inspector-effect .ico-chip,.ship-insp-effect .ico-chip{font-size:.8rem;color:var(--cyan)}.fx-lock,.fx-warn{color:var(--orange)}.fx-ok{color:var(--mint)}.base-inspector-cta,.base-inspector-alt,.base-inspector-alt2,.ship-insp-actions button{min-width:48px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.3rem .7rem;border-radius:.85rem}.base-inspector-cta[hidden],.base-inspector-alt[hidden],.base-inspector-alt2[hidden]{display:none}.base-inspector-cta .ico,.base-inspector-alt .ico,.base-inspector-alt2 .ico,.ship-insp-actions button .ico{width:1.35rem;height:1.35rem}.ship-insp-actions button{flex:0 0 auto}.dock-fleet-head{margin-bottom:.45rem}.base-phase{display:inline-flex;gap:.3rem;color:var(--cyan)}.base-phase .ico{width:1.3rem;height:1.3rem}.base-condition{display:flex;align-items:center;gap:.4rem;flex:1;max-width:9rem;font-size:.72rem;color:var(--ink-dim)}.cond-bar{flex:1;height:6px;border-radius:3px;background:rgb(var(--ink-rgb) / .12);overflow:hidden}.cond-fill{display:block;height:100%;background:linear-gradient(90deg,var(--rose),var(--mint));transition:width .3s ease}.hangar-repair{min-width:48px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.3rem}.hangar-repair .ico{width:1.25rem;height:1.25rem}.role-cards{gap:.4rem}.role-card{align-items:center;gap:.3rem;text-align:center;padding:.5rem .4rem}.role-card .role-ico{width:1.7rem;height:1.7rem;color:var(--cyan)}.role-card.role-miner .role-ico{color:var(--violet-ink)}.role-card.role-tech .role-ico{color:var(--amber)}.role-info{align-items:center;flex-direction:row;gap:.4rem}.role-count{font-size:1.1rem;color:var(--ink)}.role-buy{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;min-height:44px}.role-buy .ico{width:1rem;height:1rem}.role-buy .ico-chip{font-size:.74rem}.proc-row{justify-content:flex-start;align-items:center;gap:.3rem;color:var(--ink);font-weight:700}.proc-row .ico{width:1.15rem;height:1.15rem}.proc-row .proc-arrow{width:.9rem;height:.9rem;color:var(--ink-dim)}.proc-count{margin-left:auto}.proc-bar{height:6px}.ship-roster-rail{width:128px;top:calc(5rem + env(safe-area-inset-top));bottom:calc(10rem + env(safe-area-inset-bottom));padding:.4rem;border-color:rgb(var(--cyan-rgb) / .22)}.ship-roster-rail .roster-title{display:flex;justify-content:center;color:var(--ink-dim)}.ship-roster-rail .roster-title .ico{width:1.1rem;height:1.1rem}.ship-row{--hue: var(--cyan);--hue-rgb: var(--cyan-rgb);align-items:center;gap:.4rem;padding:.25rem .4rem;border-left:3px solid var(--hue)}.ship-avatar{width:30px;height:30px;object-fit:contain;flex:none}.ship-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:800}.rank-pips{display:flex;flex-direction:column;gap:2px}.rank-pips .pip{width:5px;height:5px}.rank-stars{font-size:.55rem;line-height:1;color:var(--amber);font-variant-numeric:tabular-nums}.ship-row.selected{background:rgb(var(--hue-rgb) / .14);box-shadow:0 0 12px rgb(var(--hue-rgb) / .3);border-color:var(--hue)}.ship-row.tech{border-left-color:var(--amber)}.tech-name{width:4.4rem}.fleet-tools{display:flex;gap:.4rem;margin-bottom:.4rem}.fleet-tool,.fleet-mini,.fleet-order{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.15rem;border-radius:.8rem;border:1px solid rgb(var(--cyan-rgb) / .4);background:rgb(var(--ink-rgb) / .06);color:var(--cyan);cursor:pointer;padding:0 .5rem}.fleet-tool .ico,.fleet-mini .ico,.fleet-order .ico{width:1.25rem;height:1.25rem}.fleet-order{border-color:rgb(var(--violet-rgb) / .55);background:rgb(var(--violet-rgb) / .16);color:var(--violet-ink)}.fleet-order:disabled{opacity:.35}.fleet-list{flex-direction:row;flex-wrap:wrap;align-items:stretch;gap:.45rem;max-height:34vh}.fleet-card{--hue: var(--cyan);--hue-rgb: var(--cyan-rgb);flex:1 1 11.5rem;min-width:0;padding:.45rem .55rem .5rem;border-top:3px solid rgb(var(--hue-rgb) / .7);gap:.4rem;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.fleet-card.selected{border-color:rgb(var(--hue-rgb) / .7);border-top-color:var(--hue);box-shadow:0 0 16px rgb(var(--hue-rgb) / .25);background:rgb(var(--hue-rgb) / .08)}.fleet-card.busy{opacity:.75}.fleet-card.drop-ready{border-style:dashed;border-color:var(--mint);background:rgb(var(--mint-rgb) / .1);animation:glow-pulse 1.1s ease-in-out infinite}.fleet-card.drop-hover{background:rgb(var(--mint-rgb) / .2)}.fleet-card.drop-invalid{border-color:var(--danger)}.fleet-head{gap:.35rem}.fleet-role{display:inline-flex;border:none;padding:0;color:var(--hue)}.fleet-role .ico{width:1.3rem;height:1.3rem}.fleet-status{width:.6rem;height:.6rem;min-width:.6rem;padding:0;border-radius:50%;background:var(--mint);box-shadow:0 0 8px rgb(var(--mint-rgb) / .8);flex:none}.fleet-status.busy{background:var(--amber);box-shadow:0 0 8px rgb(var(--amber-rgb) / .8);animation:glow-pulse 1s ease-in-out infinite}.fleet-members{display:flex;flex-wrap:wrap;gap:.4rem}.ship-token{position:relative;touch-action:none}.token-body{min-width:56px;min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;border-radius:.8rem;border:1px solid var(--line-soft);background:rgb(var(--ink-rgb) / .05);color:var(--ink);cursor:pointer;padding:.2rem .35rem;pointer-events:none}.token-body img{width:34px;height:34px;object-fit:contain}.token-label{font-size:.6rem;font-weight:800;max-width:3.6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.token-star{position:absolute;top:-.35rem;right:-.35rem;width:26px;height:26px;min-height:0;border-radius:50%;border:1px solid var(--line-soft);background:var(--bg-panel-solid);color:var(--ink-dim);display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.token-star .ico{width:.85rem;height:.85rem}.ship-token.star .token-body{border-color:rgb(var(--amber-rgb) / .6)}.ship-token.star .token-star{color:var(--amber);border-color:var(--amber)}.ship-token.picked .token-body{border-color:var(--orange);background:rgb(var(--amber-rgb) / .14);box-shadow:0 0 14px rgb(var(--amber-rgb) / .5)}.fleet-log{font-size:.6rem;color:var(--ink-dim)}.fleet-new{flex:0 0 4.4rem;min-height:5.4rem;align-items:center;justify-content:center;border:1px dashed var(--line-soft);border-top:1px dashed var(--line-soft);color:var(--ink-dim);background:transparent}.fleet-new .ico{width:1.6rem;height:1.6rem}.fleet-new.drop-ready{color:var(--mint)}.drag-ghost{border-radius:999px}.asteroid-label{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;margin-left:0;border-radius:50%;background:var(--bg-panel);border:1px solid rgb(var(--violet-rgb) / .45);color:var(--violet-ink);transform:translate(-50%)}.asteroid-label .ico{width:.95rem;height:.95rem}.asteroid-label[data-kind=f]{color:var(--cyan);border-color:rgb(var(--cyan-rgb) / .5)}.asteroid-label.depleted{color:var(--ink-dim);border-color:var(--line-soft)}.base-badge{display:flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;padding:0;border-radius:50%;color:var(--cyan);border-color:rgb(var(--cyan-rgb) / .4)}.base-badge .ico{width:1rem;height:1rem}.minimap-count:before{content:"◇ ";color:var(--cyan)}*{scrollbar-width:auto}::-webkit-scrollbar{width:8px;height:8px;background:transparent}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb{min-height:2.2rem;border-radius:999px;border:2px solid transparent;background:linear-gradient(180deg,rgb(var(--cyan-rgb) / .5),rgb(var(--violet-rgb) / .5)) padding-box;box-shadow:0 0 8px rgb(var(--cyan-rgb) / .35)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--cyan),var(--violet)) padding-box}.editor-canvas-viewport,.base-graph-viewport,.ship-graph-viewport,.options-scroll,.hud-fleets,.fleet-list,.ship-list,.pool-cards{scrollbar-width:none}.editor-canvas-viewport::-webkit-scrollbar,.base-graph-viewport::-webkit-scrollbar,.ship-graph-viewport::-webkit-scrollbar,.options-scroll::-webkit-scrollbar,.fleet-list::-webkit-scrollbar,.ship-list::-webkit-scrollbar,.pool-cards::-webkit-scrollbar{display:none;width:0;height:0}.fleet-list,.ship-list,.pool-cards{--fade: .9rem;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 var(--fade),#000 calc(100% - var(--fade)),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 var(--fade),#000 calc(100% - var(--fade)),transparent 100%)}.fleet-list,.ship-list,.pool-cards{padding-top:.55rem;padding-bottom:.9rem}.options-scroll{-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 5rem),transparent 100%);mask-image:linear-gradient(180deg,#000 calc(100% - 5rem),transparent 100%)}.snd-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;--fill: 50%;flex:none;width:min(8.5rem,34vw);height:44px;background:transparent;cursor:pointer}.snd-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--cyan) var(--fill),rgb(var(--ink-rgb) / .14) var(--fill))}.snd-range::-moz-range-track{height:6px;border-radius:999px;background:rgb(var(--ink-rgb) / .14)}.snd-range::-moz-range-progress{height:6px;border-radius:999px;background:var(--cyan)}.snd-range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;border:2px solid var(--cyan);background:var(--nebula-deep);box-shadow:0 0 10px rgb(var(--cyan-rgb) / .6)}.snd-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;border:2px solid var(--cyan);background:var(--nebula-deep)}.snd-range:disabled{opacity:.35}.snd-mute{min-width:44px;padding:0;display:inline-flex;align-items:center;justify-content:center}.snd-mute .ico{width:1.3rem;height:1.3rem}.snd-mute[aria-pressed=true]{color:var(--rose);border-color:rgb(var(--rose-rgb) / .5);background:rgb(var(--rose-rgb) / .12)}.sound-test{grid-column:1 / -1;display:flex;flex-direction:column;gap:.4rem;padding-top:.5rem;border-top:1px solid var(--line-soft)}.sound-test h4{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan)}.sound-test-row,.sound-test-grid{display:flex;flex-wrap:wrap;gap:.3rem}.sound-test button{min-height:34px;padding:0 .6rem;border-radius:.5rem;border:1px solid var(--line-soft);background:rgb(var(--ink-rgb) / .06);color:var(--ink);font-size:.68rem;cursor:pointer}.sound-test button:active{background:rgb(var(--cyan-rgb) / .25)}.music-player{display:grid;gap:.5rem;min-width:0;padding-top:.65rem;border-top:1px solid var(--line-soft)}.music-transport,.music-tracks{display:flex;align-items:center;gap:.4rem;min-width:0}.music-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:0;border:1px solid var(--line-soft);border-radius:.8rem;background:rgb(var(--ink-rgb) / .05);color:var(--ink-dim);font-size:.8rem;font-weight:700;cursor:pointer}.music-btn .ico{width:1.2rem;height:1.2rem}.music-btn:active{background:rgb(var(--cyan-rgb) / .2)}.music-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.music-btn[aria-pressed=true]{color:var(--cyan);border-color:rgb(var(--cyan-rgb) / .55);background:rgb(var(--cyan-rgb) / .12)}.music-play{color:var(--cyan)}.music-time{margin-left:auto;white-space:nowrap;font-size:.65rem;color:var(--ink-dim);font-variant-numeric:tabular-nums}.music-progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border:none;border-radius:999px;overflow:hidden;background:rgb(var(--ink-rgb) / .12);color:var(--cyan)}.music-progress::-webkit-progress-bar{background:rgb(var(--ink-rgb) / .12)}.music-progress::-webkit-progress-value{background:var(--cyan)}.music-progress::-moz-progress-bar{background:var(--cyan)}.music-hint{margin:0;min-height:1.2em;color:var(--ink-dim);font-size:.7rem;line-height:1.5;overflow-wrap:anywhere}.music-error{color:var(--rose)}.slot-row{display:flex;align-items:center;gap:.6rem;padding:.4rem 0;border-top:1px solid rgb(var(--ink-rgb) / .07)}.slot-no{width:1.7rem;height:1.7rem;flex:none;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgb(var(--cyan-rgb) / .4);color:var(--cyan);font-size:.78rem;font-weight:800}.slot-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.slot-when{font-size:.66rem;color:var(--ink-dim);font-variant-numeric:tabular-nums}.slot-chips{display:flex;flex-wrap:wrap;gap:.2rem .6rem;color:var(--ink)}.slot-chips .ico-chip{font-size:.72rem}.slot-chips .ico-chip .ico{color:var(--cyan)}.slot-empty-label{color:var(--ink-dim);opacity:.6;display:inline-flex}.slot-actions,.slot-file-row{display:flex;gap:.35rem}.slot-file-row{justify-content:flex-end;padding-top:.5rem;border-top:1px solid rgb(var(--ink-rgb) / .07)}.slot-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.3rem;border-radius:.8rem;border:1px solid rgb(var(--cyan-rgb) / .35);background:rgb(var(--ink-rgb) / .05);color:var(--cyan);cursor:pointer;padding:0 .6rem;font-size:.7rem;font-weight:800}.slot-btn .ico{width:1.25rem;height:1.25rem}.slot-btn:disabled{opacity:.3;cursor:default}.slot-del{color:var(--rose);border-color:rgb(var(--rose-rgb) / .35)}.slot-problem{display:inline-flex;align-items:center;gap:.35rem;color:var(--rose);font-size:.74rem;font-weight:700}.slot-problem .ico{width:1.1rem;height:1.1rem}@media(max-width:380px){.slot-actions{flex-direction:column}.slot-btn{min-height:40px}}.ship-stage.fleets-open .ship-pool-rail,.ship-stage.fleets-open .ship-roster-rail,.ship-stage.fleets-open .base-graph-toolbar{display:none}.ship-stage.fleets-open .ship-graph-viewport{opacity:.22;filter:blur(2px);pointer-events:none}.ship-stage.fleets-open .edge-bottom-dock{top:calc(5.9rem + env(safe-area-inset-top));width:min(780px,calc(100% - 1rem))}.ship-stage.fleets-open .ship-fleets-sheet{max-height:none;flex:1;min-height:0;display:flex;flex-direction:column;padding:.55rem .65rem .65rem}.fleet-tools{align-items:center;flex:none}.fleet-tools.hidden{display:none}.fleet-total{margin-left:auto;display:inline-flex;align-items:center;gap:.3rem;color:var(--ink-dim);font-size:.8rem}.fleet-total .ico{width:1.1rem;height:1.1rem}.fleet-total b{color:var(--ink);margin-right:.3rem;font-variant-numeric:tabular-nums}.fleet-list{flex:1;min-height:0;flex-direction:column;flex-wrap:nowrap;max-height:34vh;gap:.5rem;padding:.5rem .15rem .2rem;overscroll-behavior:contain}.ship-stage.fleets-open .fleet-list{max-height:none}.fleet-card.fleet-lane{border-top:1px solid var(--line-soft);box-shadow:inset 4px 0 rgb(var(--hue-rgb) / .8);flex:none;cursor:default;padding:.5rem .6rem .6rem;gap:.5rem}.fleet-lane .fleet-head{gap:.5rem}.lane-cap{display:inline-flex;align-items:center;gap:.2rem;font-size:.8rem;color:var(--ink-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.lane-cap .ico{width:1rem;height:1rem}.lane-cap b{color:var(--ink)}.fleet-lane.full .lane-cap,.fleet-lane.full .lane-cap b{color:var(--amber)}.lane-slots{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:.3rem}.slot{position:relative;aspect-ratio:1 / 1.12;min-height:50px;border-radius:.7rem;border:1px dashed rgb(var(--ink-rgb) / .16);background:rgb(var(--ink-rgb) / .025);transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.slot:not(.slot-empty){border-color:transparent;background:none}.slot-locked{display:grid;place-items:center;border-style:solid;border-color:rgb(var(--ink-rgb) / .08)}.slot-locked.slot-empty{opacity:.35;filter:grayscale(1)}.slot-locked .ico{width:1rem;height:1rem;color:var(--ink-dim)}.slot .ship-token{position:absolute;top:0;right:0;bottom:0;left:0}.slot .token-body{width:100%;height:100%;min-width:0;min-height:0;padding:.15rem;gap:.1rem;background:rgb(var(--hue-rgb) / .08);border-color:rgb(var(--hue-rgb) / .3)}.slot .token-body img{width:62%;height:auto;max-height:58%}.slot .token-label{max-width:100%;font-size:.58rem}.slot .ship-token{cursor:grab}.slot .ship-token:active{cursor:grabbing}.ship-token.dragging{opacity:.28}.slot.slot-target{border-style:solid;border-color:var(--mint);background:rgb(var(--mint-rgb) / .16);box-shadow:-4px 0 0 var(--mint),0 0 14px rgb(var(--mint-rgb) / .35)}.slot.slot-blocked{border-style:solid;border-color:var(--danger);background:rgb(var(--rose-rgb) / .14)}.fleet-card.fleet-lane.selected{border-top-color:rgb(var(--hue-rgb) / .7);box-shadow:inset 4px 0 0 var(--hue),0 0 16px rgb(var(--hue-rgb) / .22)}.fleet-card.fleet-lane.drop-ready{animation:none;border-style:solid;border-color:rgb(var(--mint-rgb) / .55);background:rgb(var(--mint-rgb) / .05)}.fleet-card.fleet-lane.drop-hover{border-color:var(--mint);background:rgb(var(--mint-rgb) / .1);box-shadow:0 0 18px rgb(var(--mint-rgb) / .25)}.fleet-card.fleet-lane.drop-invalid{border-color:var(--danger);background:rgb(var(--rose-rgb) / .06)}.fleet-card.fleet-new{flex:none;flex-direction:row;gap:.6rem;min-height:3.4rem;width:100%;color:var(--ink-dim)}.fleet-card.fleet-new .ico{width:1.4rem;height:1.4rem}.fleet-card.fleet-new.drop-ready{border-color:var(--mint);color:var(--mint);animation:none}.fleet-card.fleet-new.drop-hover{background:rgb(var(--mint-rgb) / .14)}.fleet-card.fleet-new.drop-invalid{border-color:var(--danger)}.drag-ghost.ship-ghost{display:flex;align-items:center;gap:.45rem;padding:.3rem .85rem .3rem .4rem;box-shadow:0 10px 30px rgb(var(--void-rgb) / .6),0 0 18px rgb(var(--cyan-rgb) / .4)}.drag-ghost.ship-ghost img{width:28px;height:28px;object-fit:contain}@media(max-width:560px){.lane-slots{grid-template-columns:repeat(5,minmax(0,1fr))}.slot .token-star{width:22px;height:22px;top:-.3rem;right:-.3rem}.ship-stage.fleets-open .edge-bottom-dock{width:calc(100% - .8rem)}}.edge-hint-pill{top:calc(3.95rem + env(safe-area-inset-top));max-width:calc(100% - 1.4rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.edge-top-bar .base-graph-toolbar{position:absolute;left:0;top:4.55rem}.edge-top-bar .base-graph-toolbar button{min-width:42px;min-height:42px}.base-online-count .online-num{font-variant-numeric:tabular-nums}.ship-name{display:none}.ship-rename{max-width:8rem}.edge-pool-rail,.ship-pool-rail{top:calc(9.6rem + env(safe-area-inset-top));transform:none;max-height:calc(100% - 21.6rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.ship-roster-rail{top:calc(7rem + env(safe-area-inset-top));bottom:auto;max-height:calc(100% - 18rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))}@media(max-height:640px){.pool-card{min-height:66px;padding-top:.3rem}.pool-card .pool-ico{width:1.5rem;height:1.5rem}.pool-fx{display:none}.edge-pool-rail,.ship-pool-rail{width:62px}}body:not(.minimap-open) .minimap{display:none}.minimap{top:calc(7.5rem + env(safe-area-inset-top));border-color:rgb(var(--cyan-rgb) / .2)}.game-nav{background:linear-gradient(180deg,rgb(var(--nebula-deep-rgb) / .78),rgb(var(--void-rgb) / .92));border-top-color:rgb(var(--cyan-rgb) / .18)}.game-nav button{min-height:3.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;position:relative;letter-spacing:.08em;text-transform:uppercase}.game-nav button .ico{width:1.4rem;height:1.4rem;transition:transform .2s ease,filter .2s ease}.nav-label{font-size:.56rem;font-weight:800}.game-nav button[aria-current=page]{color:var(--cyan);box-shadow:none}.game-nav button[aria-current=page]:before{content:"";position:absolute;top:0;left:28%;right:28%;height:2px;border-radius:0 0 2px 2px;background:var(--cyan);box-shadow:0 0 12px rgb(var(--cyan-rgb) / .9)}.game-nav button[aria-current=page] .ico{transform:translateY(-1px) scale(1.1);filter:drop-shadow(0 0 6px rgb(var(--cyan-rgb) / .8))}.screen-zone h3{display:flex;align-items:center;gap:.4rem}.screen-zone h3 .ico{width:1rem;height:1rem;color:var(--cyan)}.opt-label{display:flex;align-items:center;gap:.5rem}.opt-label .ico{width:1.15rem;height:1.15rem;color:var(--violet-ink)}.opt-size{display:inline-flex;align-items:center;justify-content:center;padding:0}.opt-size .ico{width:1.2rem;height:1.2rem}@media(max-height:640px){.fleet-list{max-height:26vh}}.screen-zone{border-color:rgb(var(--violet-rgb) / .25)}.opt-toggle[aria-pressed=true]{background:rgb(var(--mint-rgb) / .14);border-color:rgb(var(--mint-rgb) / .5);color:var(--mint)}@media(max-width:480px){.minimap-canvas{width:108px;height:108px}.edge-top-bar{gap:.3rem}.edge-title-chip h2{font-size:.82rem}.edge-title-chip{padding:.3rem .6rem}.ship-roster-rail{width:112px;top:calc(7rem + env(safe-area-inset-top));bottom:calc(10rem + env(safe-area-inset-bottom))}.edge-status-cluster .hud-chip{padding:.2rem .55rem .2rem .45rem}.base-graph-toolbar button{min-width:40px;min-height:40px}.ship-rename{max-width:5.5rem}.dock-fleet-head{flex-wrap:wrap}.hud-chips{max-width:calc(100% - 4rem)}}@media(max-height:600px)and (max-width:480px){.minimap-canvas{width:88px;height:88px}.zoom-controls button{width:40px;height:40px}.compass{grid-template-columns:repeat(3,36px);grid-template-rows:repeat(3,36px)}.hud-mission{padding:.45rem .65rem;gap:.3rem}.edge-hint-pill{top:calc(4.1rem + env(safe-area-inset-top));font-size:.6rem;padding:.25rem .7rem}.edge-bottom-dock{bottom:calc(3.6rem + env(safe-area-inset-bottom))}.edge-dock-sheet{padding:.45rem .6rem}.base-inspector{flex-direction:column;align-items:stretch;gap:.35rem}.inspector-actions{justify-content:stretch}.inspector-actions button{flex:1}}@media(prefers-reduced-motion:reduce){.hud-quest-cta,.graph-node.link-target,.graph-wire.wire-live,.asteroid-img.pulse,.base-badge.pulse{animation:none}}@media(min-width:48rem){#app{flex-direction:row}.tuning-panel{flex:0 0 18rem;max-height:100vh;max-width:22rem;border-top:none;border-left:1px solid var(--line-soft);grid-template-columns:1fr}}.fam-drive{--fam: var(--cyan);--fam-rgb: var(--cyan-rgb)}.fam-hull{--fam: var(--amber);--fam-rgb: var(--amber-rgb)}.fam-sensor{--fam: var(--mint);--fam-rgb: var(--mint-rgb)}.fam-ecm{--fam: var(--violet-ink);--fam-rgb: var(--violet-rgb)}.fam-weapon{--fam: var(--rose);--fam-rgb: var(--rose-rgb)}.fam-shield{--fam: var(--ice);--fam-rgb: var(--ice-rgb)}.fam-energy{--fam: var(--amber);--fam-rgb: var(--amber-rgb)}.fam-industry{--fam: var(--violet-ink);--fam-rgb: var(--violet-rgb)}.fam-logistics{--fam: var(--cyan);--fam-rgb: var(--cyan-rgb)}.fam-defense{--fam: var(--rose);--fam-rgb: var(--rose-rgb)}.pool-family{display:flex;justify-content:center;padding-top:.25rem;color:var(--fam);opacity:.85}.pool-family .ico{width:1rem;height:1rem}.pool-card[class*=fam-]{border-color:rgb(var(--fam-rgb) / .3)}.pool-card.needs-parent{opacity:.6}.pool-card.needs-parent .pool-status{color:var(--ink-dim)}.graph-node.state-wired[class*=fam-]{--node-tint: var(--fam);--node-rgb: var(--fam-rgb)}.graph-wire.resting{stroke-dasharray:6 12;opacity:.55}.hull-mounts{display:flex;flex-wrap:wrap;justify-content:center;gap:3px;max-width:96px}.mount{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid rgb(var(--fam-rgb) / .55);background:rgb(var(--fam-rgb) / .14);color:var(--fam)}.mount .ico{width:10px;height:10px}.mount.tier-2{box-shadow:0 0 6px rgb(var(--fam-rgb) / .55)}.mount.tier-3{box-shadow:0 0 10px rgb(var(--fam-rgb) / .9)}.ship-row-text{display:flex;flex-direction:column;flex:1;min-width:0;gap:2px}.row-mounts{display:flex;gap:1px;min-height:9px;overflow:hidden}.row-mounts .mount{width:9px;height:9px;flex:none}.row-mounts .mount .ico{width:6px;height:6px}.asteroid-img.hazard{filter:drop-shadow(0 0 7px rgb(var(--rose-rgb) / .75))}.asteroid-label.hazard{color:var(--rose)}.asteroid-label.hazard .ico+.ico{margin-left:.15rem}.inv-hazard{color:var(--mint)}.inv-hazard.risk-1{color:var(--amber)}.inv-hazard.risk-2{color:var(--rose)}.inv-hazard .ico-chip-text{font-size:.55rem;letter-spacing:-.1em}.condition-bar{display:block;width:100%;min-width:1.6rem;height:3px;border-radius:2px;background:rgb(var(--ink-rgb) / .14);overflow:hidden}.condition-bar>i{display:block;height:100%;background:var(--mint);transition:width .3s ease}.condition-bar.mid>i{background:var(--amber)}.condition-bar.low>i{background:var(--rose)}.token-body .condition-bar{width:2.6rem}.ship-insp-effect .condition-bar{flex:1 1 4rem;max-width:7rem}.slot-socket{position:absolute;z-index:2;transform:translate(-50%,-50%);width:80px;height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:0;border-radius:50%;border:3px dashed rgb(var(--sock-rgb, var(--cyan-rgb)) / .4);background:radial-gradient(circle at 35% 30%,rgb(var(--sock-rgb, var(--cyan-rgb)) / .12),rgb(var(--nebula-deep-rgb) / .82) 70%);color:rgb(var(--sock-rgb, var(--cyan-rgb)) / .55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.slot-socket[class*=fam-]{--sock-rgb: var(--fam-rgb)}.socket-glyph .ico{width:34px;height:34px}.socket-badge{min-height:14px;display:flex;align-items:center;font-size:.6rem;font-weight:800}.socket-badge .ico{width:13px;height:13px}.graph-node[data-ship-node=hull]{width:96px;min-height:96px;padding:.35rem .25rem;gap:.15rem;border-radius:1.1rem}.graph-node[data-ship-node=hull] img{width:52px;height:52px}.socket-badge:empty{display:none}.slot-socket.state-empty .socket-glyph{opacity:.5}.slot-socket.state-filled{border-style:solid;border-color:rgb(var(--sock-rgb) / .95);color:rgb(var(--sock-rgb));background:radial-gradient(circle at 35% 30%,rgb(var(--sock-rgb) / .28),rgb(var(--nebula-deep-rgb) / .88) 70%);box-shadow:0 0 24px rgb(var(--sock-rgb) / .35)}.slot-socket.state-resting{border-style:solid;border-color:rgb(var(--sock-rgb) / .4);color:rgb(var(--sock-rgb) / .55);opacity:.75}.slot-socket.state-locked{--sock-rgb: var(--ink-rgb);border-style:dotted;color:var(--ink-dim);opacity:.6}.slot-socket.state-paused{--sock-rgb: var(--rose-rgb);opacity:.72}.slot-socket.selected{outline:2px solid var(--violet);outline-offset:4px}.slot-socket.eligible{border-color:rgb(var(--cyan-rgb));box-shadow:0 0 28px rgb(var(--cyan-rgb) / .55);animation:socket-pulse 1.4s ease-in-out infinite}.slot-socket.dimmed{opacity:.3}.slot-socket.hover-valid{border-color:rgb(var(--mint-rgb));box-shadow:0 0 34px rgb(var(--mint-rgb) / .7);opacity:1}.slot-socket.hover-invalid{border-color:var(--danger);box-shadow:0 0 28px rgb(var(--rose-rgb) / .6);opacity:1}@keyframes socket-pulse{50%{box-shadow:0 0 12px rgb(var(--cyan-rgb) / .25)}}.slot-picker{flex:1 1 0;min-width:0;display:flex;gap:.35rem;overflow-x:auto;scrollbar-width:none}.slot-picker::-webkit-scrollbar{display:none}.slot-picker:empty{display:none}.ship-inspector:has(.slot-picker:not(:empty)) .inspector-copy,.base-inspector:has(.slot-picker:not(:empty)) .inspector-copy{display:none}.slot-pick{flex:0 0 auto;min-width:44px;min-height:44px;display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .5rem;border-radius:.6rem;border:1px solid rgb(var(--fam-rgb, var(--cyan-rgb)) / .5);background:rgb(var(--fam-rgb, var(--cyan-rgb)) / .14);color:var(--fam, var(--cyan));cursor:pointer}.slot-pick>.ico{width:22px;height:22px}.slot-pick.blocked{opacity:.45}.slot-pick-empty{color:var(--ink-dim);display:inline-flex;align-items:center;min-height:44px}@media(prefers-reduced-motion:reduce){.slot-socket.eligible{animation:none}}:is(.ship-graph-board,.base-graph-board) .graph-wire{stroke-linecap:round}:is(.ship-graph-board,.base-graph-board) .graph-wire.lit{stroke:rgb(var(--fam-rgb, var(--cyan-rgb)) / .95);stroke-width:4;stroke-dasharray:14 8;filter:drop-shadow(0 0 6px rgb(var(--fam-rgb, var(--cyan-rgb)) / .6));animation:wire-dash 1.6s linear infinite}:is(.ship-graph-board,.base-graph-board) .graph-wire.dim.empty{stroke:rgb(var(--cyan-rgb) / .4);stroke-width:2.5;stroke-dasharray:3 9}:is(.ship-graph-board,.base-graph-board) .graph-wire.dim.resting{stroke:rgb(var(--fam-rgb, var(--ink-rgb)) / .6);stroke-width:3;stroke-dasharray:6 10;opacity:1}:is(.ship-graph-board,.base-graph-board) .graph-wire.locked{stroke:rgb(var(--ink-rgb) / .18);stroke-width:2;stroke-dasharray:2 10}@media(prefers-reduced-motion:reduce){:is(.ship-graph-board,.base-graph-board) .graph-wire.lit{animation:none}}#dialog-host{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none}.glass-dialog-scrim{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:color-mix(in srgb,var(--bg-deep) 62%,transparent);pointer-events:auto;animation:glass-dialog-fade .16s ease-out}.glass-dialog{display:flex;flex-direction:column;gap:.7rem;width:min(22rem,calc(100vw - 2rem));max-height:100%;padding:1.1rem 1.1rem 1rem;color:var(--ink);background:var(--bg-panel-solid);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line-soft);border-radius:var(--radius-panel);box-shadow:var(--shadow-float)}.glass-dialog-content{display:flex;flex-direction:column;gap:.7rem;flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:none}.glass-dialog-content::-webkit-scrollbar{display:none}.glass-dialog-danger{border-color:rgb(var(--rose-rgb) / .45)}.glass-dialog-title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:.01em}.glass-dialog-body,.glass-dialog-error{margin:0;font-size:.88rem;line-height:1.45;white-space:pre-line;overflow-wrap:anywhere;color:var(--ink-dim)}.glass-dialog-error{padding:.5rem .65rem;color:var(--rose);background:rgb(var(--rose-rgb) / .1);border:1px solid rgb(var(--rose-rgb) / .35);border-radius:.6rem}.glass-dialog-actions{display:flex;flex-wrap:wrap;gap:.5rem;flex:none;margin-top:.2rem}.glass-dialog-btn{flex:1 1 8rem;min-height:2.75rem;padding:.5rem .9rem;font:inherit;font-size:.9rem;color:var(--ink);background:rgb(var(--ink-rgb) / .06);border:1px solid var(--line-soft);border-radius:.8rem;cursor:pointer}.glass-dialog-primary{color:var(--cyan);background:rgb(var(--cyan-rgb) / .14);border-color:var(--line-strong)}.glass-dialog-primary.danger{color:var(--rose);background:rgb(var(--rose-rgb) / .14);border-color:rgb(var(--rose-rgb) / .5)}.glass-dialog-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.glass-dialog-btn[aria-disabled=true]{opacity:.5;cursor:default}.glass-dialog-btn.busy{animation:glass-dialog-pulse 1s ease-in-out infinite}@media(max-width:359px){.glass-dialog-actions{flex-direction:column-reverse}.glass-dialog-btn{flex:none}}@keyframes glass-dialog-fade{0%{opacity:0}}@keyframes glass-dialog-pulse{50%{opacity:.8}}@media(prefers-reduced-motion:reduce){.glass-dialog-scrim,.glass-dialog-btn.busy{animation:none}}body.reduce-motion .glass-dialog-scrim,body.reduce-motion .glass-dialog-btn.busy{animation:none}.droid-portrait{object-fit:contain;flex:none;pointer-events:none;-webkit-user-select:none;user-select:none}.droid-portrait.droid-wear-mid{filter:brightness(.87) saturate(.8)}.droid-portrait.droid-wear-low{filter:brightness(.72) saturate(.55) drop-shadow(0 0 2px rgb(var(--rose-rgb) / .45))}.ship-insp-effect .droid-portrait{width:32px;height:32px}body.gate-open #app{visibility:hidden}.gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:radial-gradient(ellipse at 20% 15%,rgb(var(--violet-rgb) / .18),transparent 55%),radial-gradient(ellipse at 80% 85%,rgb(var(--cyan-rgb) / .12),transparent 55%),var(--bg-deep);overflow-y:auto;scrollbar-width:none}.gate::-webkit-scrollbar{display:none}.gate-card{display:flex;flex-direction:column;gap:.9rem;width:min(22rem,calc(100vw - 2rem));max-height:100%;padding:1.3rem 1.2rem 1.1rem;color:var(--ink);background:var(--bg-panel);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line-soft);border-radius:var(--radius-panel);box-shadow:var(--shadow-float)}.gate-title{margin:0;font-size:1.35rem;font-weight:600;letter-spacing:.04em;text-align:center;color:var(--cyan)}.gate-lines{display:flex;flex-direction:column;gap:.35rem;text-align:center}.gate-line{margin:0;font-size:.92rem;line-height:1.35;overflow-wrap:anywhere}.gate-line.dim,.gate-status{color:var(--ink-dim);font-size:.82rem}.gate-status{min-height:1em;margin:0;text-align:center}.gate-actions{display:flex;flex-direction:column;gap:.5rem}.gate-btn{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.75rem;padding:.5rem .9rem;font:inherit;font-size:.95rem;color:var(--ink);background:rgb(var(--ink-rgb) / .06);border:1px solid var(--line-soft);border-radius:.8rem;cursor:pointer}.gate-btn svg{width:1.15rem;height:1.15rem}.gate-primary{color:var(--cyan);background:rgb(var(--cyan-rgb) / .14);border-color:var(--line-strong)}.gate-btn.danger{color:var(--rose);border-color:rgb(var(--rose-rgb) / .4)}.gate-btn:focus-visible,.gate-pref:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.gate-prefs{position:fixed;top:max(.6rem,env(safe-area-inset-top));right:max(.6rem,env(safe-area-inset-right));display:flex;gap:.4rem}.gate-pref{display:grid;place-items:center;width:2.75rem;height:2.75rem;color:var(--ink);background:var(--bg-panel);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line-soft);border-radius:.8rem;cursor:pointer}.gate-pref[aria-pressed=true]{color:var(--cyan);border-color:var(--line-strong)}.gate-pref svg{width:1.2rem;height:1.2rem}.base-graph-board .graph-node .node-glyph{background:rgb(var(--void-rgb) / .3);border-color:rgb(var(--cyan-rgb) / .35);box-shadow:0 0 18px rgb(var(--cyan-rgb) / .12)}.base-graph-board .graph-node .node-glyph img{width:100%;height:100%;object-fit:contain;pointer-events:none}.base-graph-board .graph-node[data-graph-node=core] img{filter:drop-shadow(0 0 8px rgb(var(--cyan-rgb) / .25));pointer-events:none}.base-graph-board .graph-node[data-graph-node=reactor] .node-glyph{border-color:rgb(var(--amber-rgb) / .45)}.base-graph-board .graph-node[data-graph-node=refinery] .node-glyph{border-color:rgb(var(--rose-rgb) / .4)}.base-graph-board .graph-node[data-graph-node=dock] .node-glyph{border-color:rgb(var(--mint-rgb) / .4)}@media(max-width:560px){.edge-hint-pill{top:calc(3.7rem + env(safe-area-inset-top))}.edge-top-bar .base-graph-toolbar{position:fixed;right:calc(.7rem + env(safe-area-inset-right));left:auto;top:50%;transform:translateY(-50%);flex-direction:column;gap:.35rem;z-index:21}.ship-roster-rail{top:calc(5.5rem + env(safe-area-inset-top));bottom:auto;left:calc(.7rem + env(safe-area-inset-left));right:calc(.7rem + env(safe-area-inset-right));width:auto;max-height:none;padding:.3rem .4rem;flex-direction:row;align-items:center;gap:.3rem}.ship-roster-rail .roster-title{display:none}.ship-roster-rail .ship-list{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:0 .6rem;gap:.3rem;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 .6rem,#000 calc(100% - .6rem),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 .6rem,#000 calc(100% - .6rem),transparent 100%)}.ship-roster-rail .ship-row{flex:none;flex-direction:column;justify-content:center;width:3.1rem;min-height:40px;padding:.15rem .15rem .2rem;border-left-width:1px;border-bottom:3px solid var(--hue);gap:.1rem;touch-action:pan-x}.ship-roster-rail .ship-row-name,.ship-roster-rail .row-mounts,.ship-roster-rail .rank-pips,.ship-roster-rail .ship-drag-handle{display:none}.ship-roster-rail .ship-row-text{flex:none;width:100%}.ship-roster-rail .ship-avatar{width:24px;height:24px}.ship-roster-rail .tech-name{display:none}.edge-pool-rail,.ship-pool-rail{top:calc(5.5rem + env(safe-area-inset-top));left:calc(.7rem + env(safe-area-inset-left));right:calc(.7rem + env(safe-area-inset-right));width:auto;max-height:none;transform:none;padding:.3rem .4rem;flex-direction:row;align-items:center;gap:.3rem}.ship-pool-rail{top:calc(9.2rem + env(safe-area-inset-top))}.edge-pool-rail .pool-header,.ship-pool-rail .pool-header{flex:none;padding:0}.edge-pool-rail .pool-cards,.ship-pool-rail .pool-cards{flex:1;min-width:0;flex-direction:row;overflow-x:auto;overflow-y:hidden;gap:.35rem;padding:.1rem .6rem;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 .6rem,#000 calc(100% - .6rem),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 .6rem,#000 calc(100% - .6rem),transparent 100%)}.edge-pool-rail .pool-card,.ship-pool-rail .pool-card{flex:none;width:3.1rem;min-height:3rem;padding:.3rem .1rem;gap:.1rem;touch-action:pan-x}.edge-pool-rail .pool-card .pool-ico,.ship-pool-rail .pool-card .pool-ico{width:1.5rem;height:1.5rem}.edge-pool-rail .pool-fx,.ship-pool-rail .pool-fx{display:none}.ship-pool-rail .pool-family{flex:none;align-self:center;padding:0 .15rem}}@media(max-width:560px){.editor-stage{--dock-bottom: calc(3.9rem + env(safe-area-inset-bottom)) ;--dock-tab: 44px;--dock-tabs-w: calc(2 * var(--dock-tab) + .3rem);--pool-bottom: calc(var(--dock-bottom) + var(--dock-h, 7.5rem) - var(--dock-tab))}.editor-stage:has(.base-editor-tabs button:nth-child(3)){--dock-tabs-w: calc(3 * var(--dock-tab) + .6rem)}.edge-bottom-dock{bottom:var(--dock-bottom);pointer-events:none}.edge-bottom-dock>*{pointer-events:auto}.edge-dock-tabs{align-self:flex-end;gap:.3rem}.edge-dock-tabs button{width:var(--dock-tab);min-height:var(--dock-tab);height:var(--dock-tab)}.edge-pool-rail,.ship-pool-rail{top:auto;bottom:var(--pool-bottom);left:calc(.5rem + env(safe-area-inset-left));right:calc(.5rem + .4rem + var(--dock-tabs-w) + env(safe-area-inset-right));padding:.2rem .3rem}.edge-pool-rail .pool-header,.ship-pool-rail .pool-header{display:none}.edge-pool-rail .pool-card,.ship-pool-rail .pool-card{min-height:2.75rem;padding:.2rem .1rem}.edge-top-bar .base-graph-toolbar{top:auto;bottom:calc(var(--pool-bottom) + 3.6rem);transform:none;gap:.3rem}}@media(max-width:560px)and (max-height:640px){.ship-roster-rail{top:calc(5.2rem + env(safe-area-inset-top))}.editor-stage{--dock-bottom: calc(3.6rem + env(safe-area-inset-bottom)) }}@media(max-width:360px){.edge-title-chip h2{display:none}.edge-status-cluster{flex-wrap:nowrap}}@media(max-width:560px){.role-cards{grid-template-columns:1fr;gap:.35rem}.role-card{flex-direction:row;align-items:center;justify-content:space-between;gap:.6rem;padding:.3rem .6rem;min-height:44px}.role-card .role-ico{width:1.5rem;height:1.5rem;flex:none}.role-card .role-info{flex:1;flex-direction:row;justify-content:flex-start;align-items:baseline;gap:.5rem}.role-card .role-buy{width:auto;min-width:6rem;min-height:40px;flex:none}}@media(max-width:560px){.zoom-controls{gap:.25rem}.zoom-controls button{width:40px;height:40px}.zoom-controls button .ico{width:1.1rem;height:1.1rem}.minimap{top:calc(6.9rem + env(safe-area-inset-top));padding:.35rem;gap:.25rem}.minimap-canvas{width:88px;height:88px}.hud-mission{bottom:calc(4.1rem + env(safe-area-inset-bottom));width:calc(100% - 1rem);padding:.4rem .65rem;gap:.25rem}.compass{grid-template-columns:repeat(3,36px);grid-template-rows:repeat(3,36px);gap:3px;padding:3px}.hud-quest-status{min-height:0}}
