@font-face{font-family:Heading;src:url(/bubble.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Main;src:url(/main.ttf) format("truetype");font-weight:400;font-style:normal}:root{--c-bg: #0a0a0b;--c-panel: #100f12;--c-panel-2: #16161a;--c-recess: #07070a;--c-steel: #1e1e22;--c-steel-2: #3a3a40;--c-brass: #b8863b;--c-hazard: #e2b53c;--c-ink: #07070a;--c-text: #d6d2cc;--c-text-dim: #8a8a93;--c-text-mute: #5a5a63;--c-cyan: #3fd8ff;--c-green: #46e08a;--c-amber: #ffb43c;--c-red: #ff4d5e;--c-magenta: #ff5cc8;--c-violet: #b06bff;--c-blue: #4d8cff;--fs-2xs: 14px;--fs-xs: 18px;--fs-sm: 20px;--fs-md: 24px;--fs-lg: 30px;--fs-xl: 40px;--fs-2xl: 52px;--lh-tight: 1.2;--lh: 1.5;--font-display: "Heading", monospace;--font-body: "Main", monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--r-sm: 3px;--r-md: 4px;--r-lg: 6px;--r-pill: 999px;--slot: 44px;--slot-sm: 36px;--slot-lg: 55px;--icon: 32px;--bar-h: 10px;--bar-h-sm: 5px;--panel-w: 440px;--bottom-bar-h: 88px;--glow: 8px;--ui-bg: var(--c-bg);--ui-bg-2: var(--c-panel-2);--ui-border: var(--c-steel);--ui-accent: var(--c-cyan);--ui-gold: var(--c-amber);--ui-text: var(--c-text);--ui-muted: var(--c-text-mute);--ui-danger: var(--c-red);--ui-success: var(--c-green);--ui-heading-font: var(--font-display);--ui-body-font: var(--font-body);--pixel-bg: var(--c-panel);--pixel-border: var(--c-steel);--pixel-border-2: var(--c-steel-2);--pixel: .125rem;--pixel-shadow: calc(var(--pixel) * -1) 0 0 0 var(--pixel-border), calc(var(--pixel) * 1) 0 0 0 var(--pixel-border), 0 calc(var(--pixel) * -1) 0 0 var(--pixel-border), 0 calc(var(--pixel) * 1) 0 0 var(--pixel-border), calc(var(--pixel) * -1) calc(var(--pixel) * -2) 0 0 var(--pixel-border), calc(var(--pixel) * 1) calc(var(--pixel) * -2) 0 0 var(--pixel-border), calc(var(--pixel) * -1) calc(var(--pixel) * 2) 0 0 var(--pixel-border), calc(var(--pixel) * 1) calc(var(--pixel) * 2) 0 0 var(--pixel-border), calc(var(--pixel) * -2) calc(var(--pixel) * -1) 0 0 var(--pixel-border), calc(var(--pixel) * 2) calc(var(--pixel) * -1) 0 0 var(--pixel-border), calc(var(--pixel) * -2) calc(var(--pixel) * 1) 0 0 var(--pixel-border), calc(var(--pixel) * 2) calc(var(--pixel) * 1) 0 0 var(--pixel-border), calc(var(--pixel) * -1) 0 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * 1) 0 0 var(--pixel) var(--pixel-border-2), 0 calc(var(--pixel) * -1) 0 var(--pixel) var(--pixel-border-2), 0 calc(var(--pixel) * 1) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * -1) calc(var(--pixel) * -2) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * 1) calc(var(--pixel) * -2) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * -1) calc(var(--pixel) * 2) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * 1) calc(var(--pixel) * 2) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * -2) calc(var(--pixel) * -1) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * 2) calc(var(--pixel) * -1) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * -2) calc(var(--pixel) * 1) 0 var(--pixel) var(--pixel-border-2), calc(var(--pixel) * 2) calc(var(--pixel) * 1) 0 var(--pixel) var(--pixel-border-2);--pixel-shadow-sm: calc(var(--pixel) * -1) 0 0 0 var(--pixel-border), calc(var(--pixel) * 1) 0 0 0 var(--pixel-border), 0 calc(var(--pixel) * -1) 0 0 var(--pixel-border), 0 calc(var(--pixel) * 1) 0 0 var(--pixel-border), calc(var(--pixel) * -1) calc(var(--pixel) * -2) 0 0 var(--pixel-border), calc(var(--pixel) * 1) calc(var(--pixel) * -2) 0 0 var(--pixel-border), calc(var(--pixel) * -1) calc(var(--pixel) * 2) 0 0 var(--pixel-border), calc(var(--pixel) * 1) calc(var(--pixel) * 2) 0 0 var(--pixel-border), calc(var(--pixel) * -2) calc(var(--pixel) * -1) 0 0 var(--pixel-border), calc(var(--pixel) * 2) calc(var(--pixel) * -1) 0 0 var(--pixel-border), calc(var(--pixel) * -2) calc(var(--pixel) * 1) 0 0 var(--pixel-border), calc(var(--pixel) * 2) calc(var(--pixel) * 1) 0 0 var(--pixel-border)}.frame{background:var(--c-panel);box-shadow:var(--pixel-shadow)}.neon-sign{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:2px;text-transform:uppercase;color:var(--c-cyan);text-shadow:0 0 var(--glow) currentColor}.neon-sign--inset{background:var(--c-recess);box-shadow:inset 0 0 0 1px var(--c-steel),inset 0 2px 6px #0009;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-sm)}.btn,.ui-btn{font-family:var(--font-display);font-size:var(--fs-md);letter-spacing:1px;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-sm);cursor:pointer;color:var(--c-cyan);background:color-mix(in srgb,var(--c-cyan) 10%,transparent);border:1px solid color-mix(in srgb,var(--c-cyan) 45%,transparent);transition:background .12s,color .12s,border-color .12s;-webkit-user-select:none;user-select:none}.btn:hover:not(:disabled),.ui-btn:hover:not(:disabled){background:color-mix(in srgb,var(--c-cyan) 22%,transparent);color:#fff}.btn:disabled,.ui-btn:disabled{opacity:.4;cursor:default}.btn--ghost{background:transparent}.btn--solid{background:color-mix(in srgb,var(--c-cyan) 28%,transparent);color:#fff}.btn--sm{font-size:var(--fs-sm);padding:var(--sp-1) var(--sp-3)}.btn--lg{font-size:var(--fs-lg);padding:var(--sp-2) var(--sp-6);letter-spacing:2px}.btn--green{color:var(--c-green);border-color:color-mix(in srgb,var(--c-green) 45%,transparent);background:color-mix(in srgb,var(--c-green) 10%,transparent)}.btn--green:hover:not(:disabled){background:color-mix(in srgb,var(--c-green) 22%,transparent);color:#fff}.btn--amber{color:var(--c-amber);border-color:color-mix(in srgb,var(--c-amber) 50%,transparent);background:color-mix(in srgb,var(--c-amber) 10%,transparent)}.btn--amber:hover:not(:disabled){background:color-mix(in srgb,var(--c-amber) 24%,transparent);color:#fff}.btn--red{color:var(--c-red);border-color:color-mix(in srgb,var(--c-red) 50%,transparent);background:color-mix(in srgb,var(--c-red) 10%,transparent)}.btn--red:hover:not(:disabled){background:color-mix(in srgb,var(--c-red) 22%,transparent);color:#fff}.btn--violet{color:var(--c-violet);border-color:color-mix(in srgb,var(--c-violet) 50%,transparent);background:color-mix(in srgb,var(--c-violet) 12%,transparent)}.btn--violet:hover:not(:disabled){background:color-mix(in srgb,var(--c-violet) 26%,transparent);color:#fff}.btn--magenta{color:var(--c-magenta);border-color:color-mix(in srgb,var(--c-magenta) 50%,transparent);background:color-mix(in srgb,var(--c-magenta) 12%,transparent)}.btn--magenta:hover:not(:disabled){background:color-mix(in srgb,var(--c-magenta) 26%,transparent);color:#fff}.bar{height:var(--bar-h);background:var(--c-panel-2);border:1px solid color-mix(in srgb,#fff 10%,transparent);border-radius:var(--r-sm);overflow:hidden;position:relative}.bar__fill{height:100%;width:0%;border-radius:var(--r-sm);transition:width .12s linear,background .3s ease;background:var(--c-cyan)}.bar__fill--hp{background:var(--c-green)}.bar__fill--energy{background:var(--c-cyan)}.bar__fill--xp{background:var(--c-amber)}.bar__fill--boss{background:var(--c-red)}.bar__fill--mine{background:var(--c-green)}.bar__fill--craft{background:var(--c-amber)}.bar__fill--explore{background:var(--c-blue)}.slot{width:var(--slot);height:var(--slot);background:var(--c-panel-2);box-shadow:var(--pixel-shadow-sm);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.slot--sm{width:var(--slot-sm);height:var(--slot-sm)}.slot--lg{width:var(--slot-lg);height:var(--slot-lg)}.slot img{width:var(--icon);height:var(--icon);image-rendering:pixelated;pointer-events:none}.chip{display:inline-flex;align-items:center;gap:var(--sp-1);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:1px;padding:2px var(--sp-2);border-radius:var(--r-pill);border:1px solid color-mix(in srgb,var(--c-cyan) 35%,transparent);color:var(--c-cyan);background:color-mix(in srgb,var(--c-cyan) 12%,transparent)}#ui-root{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1000;overflow:hidden}#power-display{position:fixed;top:12px;right:160px;font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:1px;color:var(--ui-muted);background:#080d1fbf;border:1px solid var(--ui-border);border-radius:4px;padding:3px 10px;pointer-events:none;z-index:200}#power-display.power-ok{color:var(--c-green)}#power-display.power-warn{color:var(--c-red)}#power-display.hidden{display:none}.ui-panel{position:fixed;pointer-events:auto;-webkit-user-select:none;user-select:none;min-width:200px;display:none;flex-direction:column;background:var(--pixel-bg);box-shadow:var(--pixel-shadow)}.ui-panel.visible{display:block}.ui-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-3) var(--sp-2);background:var(--c-recess);border-bottom:1px solid var(--c-steel);box-shadow:inset 0 -2px 6px #00000080;cursor:default}.ui-panel-title{font-family:var(--font-display);font-size:var(--fs-lg);color:var(--c-cyan);letter-spacing:2px;text-transform:uppercase;text-shadow:0 0 var(--glow) currentColor}.ui-panel-close{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted);cursor:pointer;padding:0 2px;line-height:1}.ui-panel-close:hover{color:var(--ui-danger)}.ui-panel-body{padding:10px 12px}.inv-grid{display:grid;grid-template-columns:repeat(var(--inv-cols, 3),var(--slot));gap:var(--sp-1);padding:2px 0}.inv-slot{width:var(--slot);height:var(--slot);background:var(--ui-bg-2);box-shadow:var(--pixel-shadow-sm);position:relative;cursor:grab;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color .1s;box-sizing:border-box}.inv-slot:hover{border-color:var(--ui-accent)}.inv-slot.drag-over{border-color:var(--ui-gold);background:#ffd70014}.inv-slot.drag-src{opacity:.4}.inv-slot.empty{cursor:default}.inv-slot img{width:var(--icon);height:var(--icon);image-rendering:pixelated;pointer-events:none}.inv-slot-amount{position:absolute;bottom:2px;right:3px;font-family:var(--ui-heading-font);font-size:var(--fs-xs);color:var(--ui-text);pointer-events:none;text-shadow:0 1px 2px #000}.inv-slot-label{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted);text-align:center;pointer-events:none;padding:2px;word-break:break-all}.inv-capacity{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted);text-align:right;padding:4px 0 0}.platform-dismantle{display:flex;justify-content:flex-end;margin-top:var(--sp-2)}.feeder-status{margin-bottom:var(--sp-2)}.feeder-rate{font-family:var(--font-body);font-size:var(--fs-sm);color:var(--c-text-dim)}.feeder-core{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--c-cyan);margin-top:2px}.dronelab-drones{display:flex;flex-direction:column;gap:var(--sp-2);margin-bottom:var(--sp-2)}.dronelab-drone{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-1)}.dronelab-drone-top{display:flex;align-items:center;gap:var(--sp-2)}.dronelab-progress{height:6px}.dronelab-drone-label{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--c-text-dim);width:84px;flex-shrink:0}.dronelab-task{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--fs-sm);color:var(--c-text);background:var(--c-panel-2);border:1px solid var(--c-steel);border-radius:var(--r-sm);padding:2px var(--sp-2)}.dronelab-rate{font-family:var(--font-body);font-size:var(--fs-xs);color:var(--c-cyan);width:64px;text-align:right;flex-shrink:0}.dronelab-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-2)}.scene-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--c-panel-2) 90%,#000),#000814);pointer-events:auto}.scene-screen.hidden{display:none}.ship-select-panel{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-6);min-width:320px;max-width:90vw;background:var(--c-panel);border:1px solid var(--c-steel);border-radius:var(--r-md);box-shadow:var(--pixel-shadow)}.ship-select-title{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--c-cyan);text-align:center;letter-spacing:.08em}.ship-select-list{display:flex;flex-direction:column;gap:var(--sp-2);max-height:50vh;overflow-y:auto}.ship-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--sp-2) var(--sp-3);text-align:left;cursor:pointer;background:var(--c-panel-2);border:1px solid var(--c-steel);border-radius:var(--r-sm);color:var(--c-text);font-family:var(--font-body)}.ship-card:hover{border-color:var(--c-cyan)}.ship-card.selected{border-color:var(--c-cyan);background:color-mix(in srgb,var(--c-cyan) 18%,var(--c-panel-2))}.ship-card-name{font-family:var(--font-display);font-size:var(--fs-md);color:var(--c-text)}.ship-card-meta{font-size:var(--fs-xs);color:var(--c-text-dim)}.ship-launch-btn{align-self:stretch}.dronelab-stats{display:flex;flex-direction:column;gap:var(--sp-1);margin-bottom:var(--sp-2)}.dronelab-stat-row{display:flex;align-items:center;gap:var(--sp-2)}.dronelab-stat-label{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--c-text-dim);width:96px;flex-shrink:0}.dronelab-stat-effect{font-family:var(--font-body);font-size:var(--fs-xs);color:var(--c-cyan);flex:1;min-width:0}.dl-currencies{display:flex;flex-wrap:wrap;gap:var(--sp-3);padding:var(--sp-2);margin-bottom:var(--sp-2);background:var(--c-panel-2);border-radius:var(--r-sm);font-size:var(--fs-xs);color:var(--c-text-dim)}.dl-cur b{color:var(--c-cyan);font-family:var(--font-display)}.dl-lab{display:flex;flex-direction:column;gap:var(--sp-1);margin-bottom:var(--sp-3)}.dl-lab-line{font-size:var(--fs-xs);color:var(--c-text-dim)}.dl-lab-line b{color:var(--c-text)}.dl-btn{align-self:flex-start}.dl-drone{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-2);margin-bottom:var(--sp-2);background:var(--c-panel-2);border:1px solid var(--c-steel);border-radius:var(--r-sm)}.dl-drone.dl-damaged{border-color:var(--c-amber)}.dl-drone-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2)}.dl-drone-name{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--c-text)}.dl-drone-meta{font-size:var(--fs-2xs);color:var(--c-text-dim)}.dl-route-sel{width:100%;font-family:var(--font-body);font-size:var(--fs-sm);color:var(--c-text);background:var(--c-panel);border:1px solid var(--c-steel);border-radius:var(--r-sm);padding:2px var(--sp-2)}.dl-route-status{font-size:var(--fs-2xs);color:var(--c-cyan);min-height:1em}.dl-est{color:var(--c-text-dim)}.dl-drone-acts{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.stash-upgrade{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--c-steel)}.stash-upgrade-cost{display:flex;flex-direction:column;gap:2px;font-family:var(--font-body);font-size:var(--fs-sm)}.stash-upgrade-item.ok{color:var(--c-green)}.stash-upgrade-item.short{color:var(--c-red)}.stash-upgrade-max{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--c-text-mute);letter-spacing:1px}#inv-drag-ghost{position:fixed;width:44px;height:44px;background:var(--ui-bg-2);border:1px solid var(--ui-gold);border-radius:3px;pointer-events:none;z-index:99999;display:none;align-items:center;justify-content:center;opacity:.85;transform:translate(-50%,-50%)}#inv-drag-ghost.active{display:flex}#inv-drag-ghost img{width:32px;height:32px;image-rendering:pixelated}.inv-tooltip{position:fixed;background:#080d1ff7;border:1px solid var(--ui-border);border-radius:4px;padding:8px 10px;font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-text);pointer-events:none;z-index:99998;max-width:220px;min-width:120px;display:none;line-height:1.4}.inv-tooltip.visible{display:block}.tt-name{font-size:var(--fs-md);font-weight:600;display:block;margin-bottom:3px;line-height:1.2}.tt-meta{display:flex;gap:6px;align-items:center;margin-bottom:4px;font-size:var(--fs-md);text-transform:capitalize}.tt-rarity{font-weight:500}.tt-type{color:var(--ui-muted)}.tt-ilvl{color:var(--c-cyan);margin-left:auto;font-size:var(--fs-md)}.tt-identity{display:flex;gap:4px;margin-bottom:5px}.tt-identity-pill{display:inline-block;width:10px;height:10px;border-radius:50%;opacity:.85}.tt-identity-label{font-size:var(--fs-2xs);color:#778;text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}.tt-identity{margin-bottom:2px}.tt-stats{border-top:1px solid rgba(255,255,255,.08);padding-top:4px;margin-top:2px;margin-bottom:4px}.tt-stat{display:flex;justify-content:space-between;gap:12px;font-size:var(--fs-md);line-height:1.5}.tt-stat-key{color:var(--ui-muted);text-transform:capitalize}.tt-stat-val{color:#e0e0e0;font-weight:500}.tt-stack{font-size:var(--fs-md);color:var(--ui-muted);margin-top:3px}.tt-desc{border-top:1px solid rgba(255,255,255,.08);padding-top:4px;margin-top:4px;font-size:var(--fs-md);color:#89a;font-style:italic;line-height:1.4}.tt-affixes{border-top:1px solid rgba(255,255,255,.08);padding-top:4px;margin-top:3px}.tt-affix{font-size:var(--fs-md);line-height:1.6;font-style:italic}#shop-panel,#contract-board-panel,#delivery-board-panel,#loadout-panel,#fabricator-panel,#refiner-panel,#core-panel,#platform-slot-panel,#silo-panel{top:80px;right:20px}#inventory-panel,#quest-log-panel{top:80px;left:20px}.inv-section{margin-bottom:12px}.inv-section:last-child{margin-bottom:0}.inv-section-header{font-size:var(--fs-md);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#888;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid #333}#loadout-panel{width:680px}.loadout-body{display:flex;gap:16px;align-items:flex-start;font-family:var(--ui-body-font)}.loadout-stats-col{flex:0 0 200px;display:flex;flex-direction:column;gap:10px}.loadout-gearscore{display:flex;flex-direction:column;align-items:center;background:#ffb4000f;border:1px solid rgba(255,180,0,.25);border-radius:6px;padding:8px 6px 6px}.loadout-gs-label{font-size:var(--fs-sm);letter-spacing:.1em;text-transform:uppercase;color:#888}.loadout-gs-val{font-size:var(--fs-lg);font-weight:700;color:var(--c-amber);line-height:1}.loadout-stat-list{display:flex;flex-direction:column;gap:4px}.loadout-stat-row{display:flex;justify-content:space-between;align-items:baseline;gap:6px;padding:2px 0;border-bottom:1px solid rgba(255,255,255,.04)}.loadout-stat-label{font-size:var(--fs-sm);color:#666;text-transform:uppercase;letter-spacing:.06em}.loadout-stat-val{font-size:var(--fs-sm);color:#cce;font-weight:600;font-variant-numeric:tabular-nums}.loadout-doll-col{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.loadout-doll-zone{display:grid;grid-template-columns:50px 1fr 50px;grid-template-rows:auto auto auto;align-items:center;gap:6px;padding:8px 0 10px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:6px}.loadout-doll-zone .loadout-slot-zone-left{grid-column:1;grid-row:2;justify-self:center}.loadout-doll-zone .loadout-slot-zone-right{grid-column:3;grid-row:2;justify-self:center}.loadout-doll-zone .loadout-slot-zone-top{grid-column:2;grid-row:1;justify-self:center}.loadout-doll-zone .loadout-slot-zone-bot{grid-column:2;grid-row:3;display:flex;gap:6px;justify-content:center}.loadout-doll{grid-column:2;grid-row:2;position:relative;width:110px;height:110px;margin:0 auto;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,rgba(100,140,255,.08) 0%,transparent 70%)}.loadout-doll:before{content:"";position:absolute;width:44px;height:60px;border:1px solid rgba(100,160,255,.18);border-radius:50% 50% 30% 30%/60% 60% 40% 40%;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.loadout-doll:after{content:"";position:absolute;width:80px;height:28px;border:1px solid rgba(100,160,255,.1);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.loadout-doll canvas{width:110px;height:110px;image-rendering:pixelated;pointer-events:none}.loadout-slot-row{display:flex;flex-wrap:wrap;gap:6px;padding:0 2px}.loadout-slot{display:flex;flex-direction:column;align-items:center;border-radius:4px;padding:4px 5px}.loadout-slot-label{font-family:var(--ui-heading-font);font-size:var(--fs-xs);color:var(--ui-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;white-space:nowrap}.loadout-slot .inv-grid{--inv-cols: 1}.loadout-slot .inv-slot{width:36px;height:36px}.loadout-section-header{font-family:var(--ui-heading-font);font-size:var(--fs-sm);color:var(--ui-muted);letter-spacing:.12em;text-transform:uppercase;padding:4px 0 2px;border-top:1px solid var(--ui-border);margin-top:2px}.pp-key-items{display:flex;gap:8px;flex-wrap:wrap;padding:4px 0}.pp-key-item{display:flex;flex-direction:column;align-items:center;gap:2px;background:#ffffff0a;border:1px solid var(--ui-border);border-radius:6px;padding:6px 10px;min-width:56px}.pp-key-item.locked{opacity:.35;filter:grayscale(.6)}.pp-key-item-badge{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--c-amber);font-weight:700;line-height:1}.pp-key-item.locked .pp-key-item-badge{color:var(--ui-muted)}.pp-key-item-label{font-size:var(--fs-xs);color:var(--ui-muted);text-align:center;white-space:nowrap}.pp-key-item-icon{width:32px;height:32px;image-rendering:pixelated;display:block}.loadout-tab-bar{display:flex;gap:4px;margin-bottom:6px}.loadout-tab-btn{flex:1;padding:4px 0;background:#ffffff0a;border:1px solid var(--ui-border);border-radius:4px;color:var(--ui-muted);font-family:var(--ui-heading-font);font-size:var(--fs-xs);letter-spacing:.08em;cursor:pointer;transition:background .1s,color .1s}.loadout-tab-btn:hover{background:#ffffff14;color:#fff}.loadout-tab-btn.active{background:#64a0ff1f;border-color:#64a0ff66;color:#acf}.dye-picker{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px;max-width:108px}.dye-swatch{width:18px;height:18px;border-radius:50%;cursor:pointer;border:2px solid transparent;box-shadow:inset 0 0 0 1px #ffffff26;flex-shrink:0}.dye-swatch:hover{border-color:#fff9}.dye-swatch.selected{border-color:#fff}.dye-swatch.none{background:#1a1a1a;position:relative}.dye-swatch.none:before,.dye-swatch.none:after{content:"";position:absolute;top:50%;left:50%;width:60%;height:2px;background:#fff6;transform-origin:center}.dye-swatch.none:before{transform:translate(-50%,-50%) rotate(45deg)}.dye-swatch.none:after{transform:translate(-50%,-50%) rotate(-45deg)}.refiner-body{display:flex;gap:12px;align-items:flex-start}.refiner-section{display:flex;flex-direction:column;gap:4px}.refiner-section-label{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted);letter-spacing:1px;text-transform:uppercase}.refiner-arrow{font-size:var(--fs-lg);color:var(--ui-accent);align-self:center;padding:0 4px}.refiner-progress-wrap{margin-top:var(--sp-2)}.refiner-footer{display:flex;align-items:center;justify-content:space-between;padding-top:8px;margin-top:8px;border-top:1px solid var(--ui-border)}.refiner-status{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted)}.refiner-status[data-status=processing]{color:var(--ui-accent)}.refiner-status[data-status=full]{color:var(--ui-gold)}.refiner-status[data-status=done]{color:var(--ui-success)}#core-panel{min-width:260px}.core-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid var(--ui-border)}.core-label{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted);letter-spacing:1px;text-transform:uppercase}.core-value{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-text)}.core-xp-section{padding:8px 0 4px}.core-xp-text{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted);margin-bottom:4px}.core-xp-fill{background:linear-gradient(90deg,var(--c-cyan),var(--c-amber));transition:width .4s ease}.core-next{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--ui-muted);padding:6px 0 2px;text-align:center}.core-footer{padding-top:10px;display:flex;justify-content:center}#chat-hud{position:absolute;bottom:100px;left:20px;width:600px;pointer-events:none;display:none}.chat-messages{max-height:90px;overflow-y:hidden;padding:4px 8px;border-radius:3px;cursor:pointer;pointer-events:auto}.chat-messages p{margin:0;line-height:1.5;font-family:var(--ui-heading-font);font-size:var(--fs-md);opacity:.75;text-shadow:0 1px 3px #000}#chat-hud.chat-open{pointer-events:auto}#chat-hud.chat-open .chat-messages{max-height:260px;overflow-y:auto;background:#000000a6;cursor:default;scrollbar-width:thin;scrollbar-color:#333 transparent}#chat-hud.chat-open .chat-messages p{opacity:1}.chat-messages .msg-system{color:#667}.chat-messages .msg-chat{color:#ccd6f6}.chat-messages .msg-self{color:#fff}.chat-messages .msg-error{color:var(--ui-danger)}.chat-input-bar{display:none;background:#000000a6;border-top:1px solid #1e1e24;padding:5px 8px;border-radius:0 0 3px 3px}#chat-hud.chat-open .chat-input-bar{display:block}.chat-input{width:100%;box-sizing:border-box;background:transparent;border:none;outline:none;color:#e0e0e0;font-family:var(--ui-heading-font);font-size:var(--fs-md);caret-color:var(--ui-accent)}.pickup-toast{position:absolute;transform:translate(-50%);font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:.5px;text-shadow:0 1px 4px #000;pointer-events:none;animation:toast-rise 1.1s ease-out forwards;white-space:nowrap}.pickup-toast--mine{color:#6cf}.pickup-toast--collect{color:var(--c-amber);font-size:var(--fs-lg)}.pickup-toast--error{color:var(--ui-danger)}@keyframes toast-rise{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-52px)}}html,body{margin:0;padding:0;overflow:hidden;font-family:var(--ui-body-font)}button,input,select,textarea{font-family:inherit}canvas{display:block}#title-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c14;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:60px;z-index:100}#title-header{text-align:center;-webkit-user-select:none;user-select:none}#title-main{font-family:Heading,monospace;font-size:var(--fs-2xl);color:#9fb3ff;letter-spacing:6px;text-shadow:0 0 24px rgba(100,140,255,.4);line-height:1}#title-sub{font-family:Main,monospace;font-size:var(--fs-lg);color:#5a7adf;letter-spacing:10px;margin-top:6px}#auth-panel{width:300px}#login-panel,#register-panel{display:flex;flex-direction:column;gap:10px;background:#1b1f2ef7;border:1px solid #3a5fb3;border-radius:6px;padding:28px 24px}#register-panel{display:none}#login-panel input,#register-panel input{width:100%;box-sizing:border-box;background:#0f1118;border:1px solid #3a5fb3;border-radius:4px;color:#fff;font-family:Main,monospace;font-size:var(--fs-md);padding:8px 10px;outline:none;transition:border-color .15s}#login-panel input:focus,#register-panel input:focus{border-color:#7a9aff}#login-btn,#register-btn{width:100%;background:#1e2d5a;border:1px solid #3a5fb3;border-radius:4px;color:#9fb3ff;font-family:Main,monospace;font-size:var(--fs-md);padding:9px 0;cursor:pointer;letter-spacing:2px;transition:background .15s,color .15s;margin-top:4px}#login-btn:hover,#register-btn:hover{background:#2a4080;color:#fff}#login-btn:disabled,#register-btn:disabled{opacity:.5;cursor:default}#auth-status,#auth-status-reg{font-family:Main,monospace;font-size:var(--fs-md);min-height:16px;text-align:center}#auth-status.error,#auth-status-reg.error{color:var(--c-red)}#auth-status.info,#auth-status-reg.info{color:#9fb3ff}#to-register-link,#to-login-link{font-family:Main,monospace;font-size:var(--fs-md);color:#5a7adf;text-align:center;margin-top:2px}#to-register,#to-login{cursor:pointer;color:#7a9aff;text-decoration:underline}#to-register:hover,#to-login:hover{color:#aac4ff}#title-notice{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-family:Main,monospace;font-size:var(--fs-sm);color:#3a4a6a;letter-spacing:1px;pointer-events:none;-webkit-user-select:none;user-select:none}#title-left{display:flex;flex-direction:column;align-items:center;gap:40px}#changelog-panel{width:300px;max-height:480px;display:flex;flex-direction:column;background:#1b1f2ef7;border:1px solid #2a3a6a;border-radius:6px;overflow:hidden}#changelog-title{font-family:Main,monospace;font-size:var(--fs-sm);letter-spacing:3px;color:#5a7adf;padding:12px 16px 10px;border-bottom:1px solid #2a3a6a;flex-shrink:0}#changelog-content{font-family:Main,monospace;font-size:var(--fs-sm);color:#8898bb;padding:12px 16px;overflow-y:auto;line-height:1.5}#changelog-content::-webkit-scrollbar{width:4px}#changelog-content::-webkit-scrollbar-track{background:transparent}#changelog-content::-webkit-scrollbar-thumb{background:#2a3a6a;border-radius:2px}#changelog-content .cl-version{font-size:var(--fs-sm);color:#9fb3ff;margin:10px 0 4px}#changelog-content .cl-version:first-child{margin-top:0}#changelog-content .cl-item{color:#7a8eaa;padding-left:10px;margin:2px 0}#changelog-content .cl-item:before{content:"— ";color:#3a5080}#platform-slot-panel .ui-panel-body{padding:8px}#platform-slot-panel .inv-grid{gap:6px}#fabricator-panel .ui-panel-body{padding:8px;min-width:280px}.fab-recipe-list{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.fab-recipe-row{font-family:var(--ui-body-font);display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 6px;border:1px solid #1e2c4a;border-radius:3px;background:#0a142866}.fab-recipe-info{display:flex;flex-direction:column;gap:2px;flex:1}.fab-recipe-name{font-size:var(--fs-md);color:#c8daf0}.fab-recipe-ings{font-size:var(--fs-md);color:#6a8ab0}.fab-recipe-time{font-size:var(--fs-md);color:#4a7adc}.fab-craft-btn{font-size:var(--fs-md);padding:2px 8px;flex-shrink:0}.fab-status{font-size:var(--fs-md);color:#9ab6d6;margin:4px 0;text-align:center}.fab-output-label{font-size:var(--fs-md);color:#4a6a8a;text-transform:uppercase;letter-spacing:.05em;margin-top:6px}.core-section-header{font-size:var(--fs-lg);font-family:var(--ui-body-font);color:#4a6a8a;text-transform:uppercase;letter-spacing:.05em;margin:10px 0 4px;border-top:1px solid #1e2c4a;padding-top:8px}.core-craft-list{display:flex;flex-direction:column;gap:4px}.core-craft-empty{font-size:var(--fs-md);color:#3a4a6c}.core-recipe-row{font-family:var(--ui-body-font);display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0}.core-recipe-info{flex:1}.core-recipe-name{font-size:var(--fs-md);color:#c8daf0}.core-recipe-ings{font-size:var(--fs-md);color:#6a8ab0}.core-recipe-btn{font-size:var(--fs-md);padding:2px 8px;flex-shrink:0}#silo-panel .ui-panel-body{padding:8px}.build-hotbar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:8px;background:#080d1fe0;border:1px solid var(--ui-border);border-radius:8px;padding:8px 12px;z-index:200;pointer-events:all}.build-hotbar.hidden{display:none}.hotbar-card{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 14px;border:2px solid #2a3a60;border-radius:6px;cursor:pointer;background:#ffffff0a;min-width:80px;transition:border-color .12s,background .12s}.hotbar-card:hover{border-color:#6680cc;background:#ffffff12}.hotbar-card.selected{border-color:var(--ui-accent);background:#66aaff21}.hotbar-name{font-size:var(--fs-md);color:var(--ui-text);text-align:center}.hotbar-qty{font-size:var(--fs-md);font-weight:700;color:var(--ui-accent)}.hotbar-empty{color:var(--ui-muted);font-size:var(--fs-md);padding:6px 12px}.build-hover-hint{position:fixed;top:72px;left:50%;transform:translate(-50%);background:#080d1fd1;color:#99b4d4;font-size:var(--fs-md);font-family:var(--ui-heading-font);padding:4px 12px;border-radius:4px;border:1px solid var(--ui-border);pointer-events:none;z-index:199;white-space:nowrap}.build-hover-hint.hidden{display:none}#mode-hotbar{position:fixed;bottom:72px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;z-index:201;pointer-events:all}.mode-btn{padding:5px 14px;background:#080d1fe0;color:var(--ui-muted);border:1px solid var(--ui-border);border-radius:4px;cursor:pointer;font-size:var(--fs-sm);font-family:var(--ui-heading-font);-webkit-user-select:none;user-select:none;transition:border-color .12s,color .12s}.mode-btn:hover{color:var(--ui-text)}.mode-btn.active{color:#fff;border-color:var(--ui-accent);background:#66aaff1f}.mode-btn.restricted{color:#c44;border-color:#633}.mode-btn.restricted.active{color:var(--c-red);border-color:#933;background:#b428281f}.ability-slot{width:38px;height:38px;background:#080d1fe0;border:2px solid #444;border-radius:4px;cursor:pointer;transition:background .15s}.ability-slot:hover{background:#ffffff0f}.ability-slot.active{background:#ffc80038}.ability-slot img{width:24px;height:24px;display:block;margin:5px auto 0;image-rendering:pixelated;pointer-events:none}#overburden-warning{font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:2.5px;color:var(--c-red);text-align:center;text-shadow:0 0 8px rgba(255,60,60,.8);pointer-events:none;order:0;animation:overburden-pulse 1.2s ease-in-out infinite}@keyframes overburden-pulse{0%,to{opacity:1}50%{opacity:.35}}#transition-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:none;align-items:center;justify-content:center;opacity:0;pointer-events:none}#transition-overlay.t-visible{display:flex;pointer-events:all}#transition-overlay.t-in{animation:t-fade-in var(--fade-ms, .35s) ease forwards}#transition-overlay.t-out{animation:t-fade-out var(--fade-ms, .35s) ease forwards}@keyframes t-fade-in{0%{opacity:0}to{opacity:1}}@keyframes t-fade-out{0%{opacity:1}to{opacity:0}}#transition-content{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}#transition-message{font-family:var(--ui-heading-font);font-size:var(--fs-lg);letter-spacing:4px;color:#fff;text-transform:uppercase}#transition-sub{font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:2px;color:#ffffff80;text-transform:uppercase;min-height:16px}#transition-action-btn{margin-top:8px;padding:8px 28px;background:transparent;border:1px solid rgba(255,255,255,.4);border-radius:4px;color:#fff;font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:border-color .15s,background .15s}#transition-action-btn:hover{background:#ffffff1a;border-color:#fff}#nav-map-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00020ccc;z-index:99999;font-family:var(--ui-heading-font)}.galaxy-panel{background:#060c1a;border:1px solid #1a2a4a;border-radius:8px;padding:20px 24px;box-shadow:0 0 60px #2850c81f;display:flex;flex-direction:column;gap:12px;width:608px}.galaxy-header{display:flex;align-items:baseline;gap:12px}.galaxy-title{font-size:var(--fs-lg);letter-spacing:3px;color:var(--c-amber);font-weight:700}.galaxy-sub{font-size:var(--fs-md);color:#334;letter-spacing:1px}.galaxy-canvas{border:1px solid #0e1a30;border-radius:4px;display:block;width:560px;height:400px;cursor:crosshair}.galaxy-info-bar{height:148px;overflow:hidden;background:#080f1e;border:1px solid #0e1a30;border-radius:4px;padding:8px 12px;font-size:var(--fs-md);color:#99a8cc;box-sizing:border-box}.galaxy-info-hint{color:#2a3a5a;font-style:italic}.galaxy-info-row{display:flex;align-items:center;gap:10px;margin-bottom:4px}.galaxy-info-name{font-size:var(--fs-md);font-weight:600}.galaxy-info-diff{display:flex;align-items:center;gap:2px}.nav-star{width:16px;height:16px;image-rendering:pixelated;display:inline-block;vertical-align:middle}.galaxy-info-desc{color:#667;font-size:var(--fs-md);margin-bottom:5px;font-style:italic}.galaxy-info-orbs{display:flex;gap:6px;flex-wrap:wrap}.galaxy-orbital-tag{font-size:var(--fs-md);letter-spacing:1px;text-transform:uppercase;padding:2px 6px;border:1px solid;border-radius:3px;color:#99a8cc}.galaxy-info-current{font-size:var(--fs-md);color:var(--c-green);margin-top:4px}.galaxy-close-btn{align-self:flex-end}.galaxy-gear-score{margin-left:auto;font-size:var(--fs-md);color:#556;letter-spacing:1px}.galaxy-gear-score strong{color:var(--c-cyan)}.galaxy-ilvl-req{font-size:var(--fs-md);margin-left:auto}.galaxy-ilvl-req.unlocked{color:var(--c-green)}.galaxy-ilvl-req.locked{color:var(--c-red)}.galaxy-info-locked{font-size:var(--fs-md);color:var(--c-red);margin-top:4px}#delivery-board-panel .ui-panel-body{padding:0}.delivery-board-body{display:flex;flex-direction:column}.delivery-board-sub{font-family:var(--ui-body-font);font-size:var(--fs-md);color:var(--ui-muted);padding:8px 12px 6px;border-bottom:1px solid var(--ui-border)}.delivery-card{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.04)}.delivery-card:last-child{border-bottom:none}.delivery-card-title{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:#e8e0cc;margin-bottom:3px}.delivery-card-desc{font-family:var(--ui-body-font);font-size:var(--fs-md);color:var(--ui-muted);margin-bottom:4px}.delivery-card-warn{font-family:var(--ui-body-font);font-size:var(--fs-sm);color:#f94;margin-bottom:4px}.delivery-card-meta{font-family:var(--ui-body-font);font-size:var(--fs-sm);color:var(--c-cyan);margin-bottom:8px}#delivery-timer{display:none;position:fixed;bottom:120px;left:50%;transform:translate(-50%);font-family:var(--ui-heading-font);font-size:var(--fs-md);color:var(--c-amber);background:#08101ee0;border:1px solid #ffcc4455;border-radius:4px;padding:4px 16px;letter-spacing:2px;z-index:202;pointer-events:none;transition:color .3s,border-color .3s}#delivery-timer.visible{display:block}#delivery-timer.delivery-timer-urgent{color:var(--c-red);border-color:#f535}#boss-hp-bar{position:fixed;top:18px;left:50%;transform:translate(-50%);width:480px;max-width:90vw;pointer-events:none;z-index:2000;text-align:center;font-family:var(--ui-heading-font)}#boss-hp-name{font-size:var(--fs-md);letter-spacing:3px;color:#d8a;text-transform:uppercase;margin-bottom:5px;text-shadow:0 0 12px rgba(200,40,80,.7)}#boss-hp-track{height:14px;background:color-mix(in srgb,var(--c-red) 14%,#0a000a);border-color:color-mix(in srgb,var(--c-red) 40%,transparent);box-shadow:0 0 16px color-mix(in srgb,var(--c-red) 35%,transparent)}#boss-hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md);letter-spacing:1px;color:#ffdcdce6}#conversation-overlay{position:fixed;bottom:80px;left:50%;transform:translate(-50%);width:680px;background:#080a14f0;border:1px solid #2a3050;border-radius:8px;padding:20px;gap:18px;z-index:800;display:none;pointer-events:auto}#conversation-overlay.visible{display:flex}.conv-portrait{width:72px;height:72px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--ui-heading-font);font-size:var(--fs-lg);color:#fff;letter-spacing:0}.conv-body{display:flex;flex-direction:column;flex:1;min-width:0}.conv-npc-name{font-family:var(--ui-heading-font);font-size:var(--fs-xs);letter-spacing:2px;color:#556;margin-bottom:8px;text-transform:uppercase}.conv-text{font-family:var(--ui-heading-font);font-size:var(--fs-md);color:#dde6ff;line-height:1.5;margin-bottom:16px}.conv-options{display:flex;flex-direction:column;gap:6px}.conv-option{background:#ffffff0a;border:1px solid #2a3050;border-radius:4px;padding:8px 14px;font-family:var(--ui-heading-font);font-size:var(--fs-md);color:#aabcdd;cursor:pointer;text-align:left;transition:background .1s,color .1s}.conv-option:hover{background:#ffffff1a;color:#fff;border-color:#445}.conv-option-story{color:var(--c-amber);border-color:#ffcc4480}.conv-option-story:hover{background:#ffcc441a;color:#ffe580;border-color:#fc4c}.conv-next{align-self:flex-end;background:#ffffff0f;border:1px solid #445;border-radius:4px;padding:8px 20px;font-family:var(--ui-heading-font);font-size:var(--fs-md);color:#9ac;cursor:pointer;letter-spacing:1px;transition:background .1s,color .1s}.conv-next:hover{background:#ffffff1f;color:#fff}.boss-portal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0a0014b8;z-index:3000;pointer-events:all}.boss-portal-overlay.hidden{display:none}.boss-portal-panel{background:#0a0014;border:2px solid #6600aa;border-radius:8px;padding:32px 40px;max-width:360px;text-align:center;box-shadow:0 0 40px #7800c866;font-family:var(--ui-heading-font)}.boss-portal-eyeicon{font-size:var(--fs-xl);margin-bottom:12px;filter:drop-shadow(0 0 12px var(--c-violet))}.boss-portal-title{font-size:var(--fs-lg);color:var(--c-violet);letter-spacing:3px;margin-bottom:12px}.boss-portal-desc{font-size:var(--fs-md);color:#998aaa;line-height:1.6;margin-bottom:24px}.boss-portal-actions{display:flex;gap:12px;justify-content:center}.boss-portal-actions button{padding:8px 22px;border-radius:4px;border:1px solid #6600aa;background:transparent;color:var(--c-violet);font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:2px;cursor:pointer}.boss-portal-actions button:first-child{background:#6400a059;border-color:var(--c-violet);color:#edf}.boss-portal-actions button:first-child:hover{background:#8c00dc80}.boss-portal-actions button:last-child:hover{color:#ccc;border-color:#555}#xp-display{display:none}.xp-track{display:flex;align-items:center;gap:6px;background:#080d1fbf;border:1px solid var(--ui-border);border-radius:4px;padding:3px 8px}.xp-label{font-family:var(--ui-body-font);font-size:var(--fs-sm);letter-spacing:1px;color:var(--ui-muted);width:54px}.xp-level{font-family:var(--ui-body-font);font-size:var(--fs-sm);color:#cef;width:28px}.xp-bar{width:60px;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.loadout-xp-section{display:flex;flex-direction:column;gap:4px;border-top:1px solid rgba(255,255,255,.06);padding-top:8px}.loadout-xp-section .xp-track{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;background:none;border:none;border-radius:0;padding:2px 0;gap:0 4px}.loadout-xp-section .xp-label{grid-column:1;grid-row:1;width:auto}.loadout-xp-section .xp-level{grid-column:2;grid-row:1;width:auto}.loadout-xp-section .xp-bar{grid-column:1 / -1;grid-row:2;width:100%;margin-top:2px}#shop-panel{overflow:hidden}#shop-panel .ui-panel-body{padding:0;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.shop-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.shop-subtitle{flex-shrink:0;font-family:var(--ui-body-font);font-size:var(--fs-md);color:var(--ui-muted);padding:8px 12px 6px;border-bottom:1px solid var(--ui-border)}.shop-list{flex:1;overflow-y:auto;padding:4px 0;scrollbar-width:thin;scrollbar-color:#333 transparent}.shop-trade-card{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.04);border-left:3px solid transparent;cursor:pointer;transition:background .1s}.shop-trade-card:hover{background:#4488ff12}.shop-trade-card.selected{background:#4488ff24;border-left-color:var(--ui-accent)}.shop-card-offer,.shop-card-result{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.shop-card-arrow{flex-shrink:0;font-size:var(--fs-sm);color:var(--ui-accent);opacity:.6;padding:0 2px}.shop-chip{display:flex;align-items:center;gap:7px;min-width:0}.shop-chip-icon{width:36px;height:36px;flex-shrink:0;background:#00000059;border:1px solid rgba(255,255,255,.07);border-radius:3px;display:flex;align-items:center;justify-content:center;overflow:hidden}.shop-chip-icon img{width:28px;height:28px;object-fit:contain;image-rendering:pixelated}.shop-chip-label{font-family:var(--ui-body-font);font-size:var(--fs-md);color:var(--ui-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-card-offer .shop-chip-label{color:var(--ui-gold)}.shop-footer{flex-shrink:0;display:flex;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid var(--ui-border)}.shop-afford{flex:1;display:flex;flex-direction:column;gap:2px;font-family:var(--ui-body-font);font-size:var(--fs-sm);min-height:22px}.shop-afford-item{color:var(--ui-muted)}.shop-afford-item.ok{color:var(--ui-success)}.shop-afford-item.short{color:var(--ui-danger)}.shop-trade-btn{flex-shrink:0;padding:7px 22px;font-size:var(--fs-md);letter-spacing:1px}.xp-fill{display:block;height:100%;background:var(--c-green);border-radius:2px;transition:width .3s ease}.scrap-body{display:flex;flex-direction:column;gap:10px;padding:12px}.scrap-subtitle{font-size:var(--fs-2xs);color:#8c2;letter-spacing:.5px;text-transform:uppercase;margin-bottom:2px}.scrap-grid{display:grid;grid-template-columns:repeat(8,48px);gap:4px}.scrap-slot{width:48px;height:48px;cursor:pointer}.scrap-slot-locked{opacity:.35;cursor:default}.scrap-preview{min-height:60px;background:#88cc2212;border:1px solid rgba(136,204,34,.2);border-radius:4px;padding:8px 10px;font-size:var(--fs-2xs);color:#ccc}.scrap-preview-name{font-size:var(--fs-2xs);color:#fff;font-weight:600;margin-bottom:4px}.scrap-preview-yield{color:#8c2;margin-bottom:4px}.scrap-preview-note{font-size:var(--fs-2xs);color:#888;font-style:italic}.scrap-footer{display:flex;justify-content:flex-end}.scrap-dismantle-btn{padding:7px 22px;font-size:var(--fs-2xs);letter-spacing:1px}.scrap-dismantle-btn:disabled{opacity:.4;cursor:default}#contract-board-panel{min-width:460px}#contract-board-panel .ui-panel-body{padding:0}.contract-board-body{display:flex;flex-direction:column;max-height:500px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#333 transparent}.contract-section-label{font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:2px;color:var(--ui-muted);text-transform:uppercase;padding:8px 12px 4px;border-top:1px solid var(--ui-border)}.contract-section-label:first-child{border-top:none}.contract-empty{font-family:var(--ui-body-font);font-size:var(--fs-md);color:var(--ui-muted);padding:6px 12px 10px;font-style:italic}.contract-list{display:flex;flex-direction:column}.contract-card{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid color-mix(in srgb,#fff 5%,transparent)}.contract-card:last-child{border-bottom:none}.contract-card-head{display:flex;align-items:center;gap:var(--sp-2)}.contract-type-badge{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:1px;padding:2px var(--sp-1);border-radius:var(--r-sm);white-space:nowrap;flex-shrink:0}.contract-type-badge.mining{background:color-mix(in srgb,var(--c-green) 12%,transparent);color:var(--c-green);border:1px solid color-mix(in srgb,var(--c-green) 30%,transparent)}.contract-type-badge.crafting{background:color-mix(in srgb,var(--c-amber) 12%,transparent);color:var(--c-amber);border:1px solid color-mix(in srgb,var(--c-amber) 30%,transparent)}.contract-type-badge.exploration{background:color-mix(in srgb,var(--c-cyan) 12%,transparent);color:var(--c-cyan);border:1px solid color-mix(in srgb,var(--c-cyan) 30%,transparent)}.contract-card-title{flex:1;min-width:0;font-family:var(--font-display);font-size:var(--fs-md);color:var(--c-text);line-height:var(--lh-tight)}.contract-card-desc{font-family:var(--font-body);font-size:var(--fs-sm);color:var(--c-text-dim);line-height:var(--lh)}.contract-card-coords{font-family:var(--font-body);font-size:var(--fs-sm);color:var(--c-cyan);letter-spacing:.5px}.contract-card-reward{font-family:var(--font-body);font-size:var(--fs-sm);color:var(--c-amber)}.contract-card-footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1)}.contract-btn{white-space:nowrap;text-align:center;flex-shrink:0}.contract-track-btn:not(.on){color:var(--c-text-dim);border-color:color-mix(in srgb,var(--c-text-dim) 50%,transparent);background:transparent}.contract-track-btn.on{color:var(--c-green);border-color:color-mix(in srgb,var(--c-green) 50%,transparent);background:color-mix(in srgb,var(--c-green) 10%,transparent)}.dungeon-exit-btn{position:fixed;bottom:110px;left:50%;transform:translate(-50%);z-index:400;pointer-events:auto}.story-quest-card{border-left:3px solid var(--c-blue);background:color-mix(in srgb,var(--c-blue) 8%,transparent)}.story-quest-card .contract-card-title{color:color-mix(in srgb,var(--c-blue) 60%,var(--c-text))}#quest-notification{position:fixed;top:80px;left:50%;transform:translate(-50%);background:#141428f2;border:1px solid #99aaff;padding:10px 20px;z-index:1000;text-align:center;pointer-events:none;animation:questNotifFade 5s forwards}.quest-notif-title{font-family:var(--ui-heading-font);font-size:var(--fs-sm);color:#bcf}.quest-notif-msg{font-family:var(--ui-body-font);font-size:var(--fs-xs);color:#abc;margin-top:4px}@keyframes questNotifFade{0%{opacity:0;transform:translate(-50%) translateY(-10px)}10%{opacity:1;transform:translate(-50%) translateY(0)}80%{opacity:1}to{opacity:0}}#quest-log-panel{min-width:400px}#scan-proximity-prompt{position:fixed;left:50%;bottom:160px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;background:#0a0e1ae0;border:1px solid rgba(68,136,255,.5);border-radius:6px;padding:10px 18px;z-index:500;pointer-events:all;box-shadow:0 0 24px #4488ff40,inset 0 0 16px #4488ff0d;animation:scan-pulse-border 2s ease-in-out infinite}@keyframes scan-pulse-border{0%,to{border-color:#48f6;box-shadow:0 0 16px #48f3}50%{border-color:#48fc;box-shadow:0 0 32px #4488ff73}}.scan-prompt-label{font-family:var(--ui-heading-font);font-size:var(--fs-md);letter-spacing:2.5px;color:var(--c-cyan);text-transform:uppercase;text-shadow:0 0 8px rgba(68,136,255,.8)}.scan-prompt-timer{font-family:var(--ui-heading-font);font-size:var(--fs-lg);letter-spacing:1px;color:#8cf;text-shadow:0 0 12px rgba(68,136,255,.9);line-height:1}.contract-scan-hint{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--fs-sm);color:color-mix(in srgb,var(--c-cyan) 75%,transparent);font-style:italic}#minimap{border-radius:50%;pointer-events:none;transition:opacity .15s}.minimap-hidden{display:none}.minimap-mini{display:block;position:fixed;top:16px;left:16px;z-index:600}.minimap-full{display:block;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:600}#minimap-label{position:fixed;top:calc(50% - 260px);left:50%;transform:translate(-50%);font-family:var(--ui-heading-font, monospace);font-size:var(--fs-2xs);letter-spacing:3px;color:#667;pointer-events:none;z-index:601}.minimap-label-mini{display:none}.minimap-label-full{display:block}.minimap-label-hidden{display:none}#ellaa-overlay{position:fixed;bottom:98px;left:50%;transform:translate(-50%) translateY(12px);width:620px;max-width:88vw;background:#08040ef0;border:1px solid rgba(255,140,186,.35);border-radius:3px;padding:14px 18px;display:flex;flex-direction:column;align-items:center;gap:16px;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;z-index:250;font-family:var(--ui-body-font)}#ellaa-overlay.visible{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.ellaa-name{color:var(--c-magenta);font-size:var(--fs-sm);font-weight:700;letter-spacing:2px;white-space:nowrap;flex-shrink:0;text-shadow:0 0 8px rgba(255,140,186,.6)}.ellaa-text{flex:1;color:#f2dce8;font-size:var(--fs-xs);line-height:1.6}.ellaa-next{flex-shrink:0}#bottom-bar{position:fixed;bottom:0;left:0;right:0;height:88px;display:flex;align-items:center;gap:10px;padding:0 16px;background:var(--pixel-bg);border-top:1px solid var(--ui-border);z-index:300;pointer-events:all;box-shadow:0 -2px 12px #0009}.bb-vitals{display:flex;flex-direction:column;gap:5px;width:210px;flex-shrink:0}.bb-bar-wrap{display:flex;align-items:center;gap:6px}.bb-bar-label{font-family:var(--ui-heading-font);font-size:var(--fs-xs);color:var(--ui-muted);width:22px;flex-shrink:0}.bb-bar-track{flex:1;height:10px;background:#ffffff12;border:1px solid rgba(255,255,255,.08);border-radius:2px;overflow:hidden}.bb-bar-fill{height:100%;transition:width .1s linear;border-radius:2px}#bb-health-fill{background:var(--c-green)}#bb-energy-fill{background:var(--c-cyan)}#bb-sas-fill{background:#64a0ff66;position:absolute;top:0;left:0;height:100%;transition:width .1s}.bb-bar-val{font-family:var(--ui-heading-font);font-size:var(--fs-xs);color:var(--ui-text);width:62px;text-align:right;flex-shrink:0}.bb-divider{width:1px;align-self:stretch;background:var(--ui-border);margin:10px 0;flex-shrink:0}.bb-xp{display:flex;flex-direction:column;gap:4px;width:170px;flex-shrink:0}.bb-xp-track{display:flex;align-items:center;gap:5px}.bb-xp-icon{font-size:var(--fs-2xs);width:16px;flex-shrink:0}.bb-xp-bar{flex:1;height:5px;background:#ffffff12;border-radius:2px;overflow:hidden}.bb-xp-fill{height:100%;border-radius:2px;transition:width .3s ease}#bb-xp-fill-mining{background:#4caa66}#bb-xp-fill-crafting{background:#a84}#bb-xp-fill-exploration{background:#46c}.bb-xp-lvl{font-family:var(--ui-heading-font);font-size:var(--fs-xs);color:#cef;width:30px;text-align:right;flex-shrink:0}.bb-grade{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:56px;flex-shrink:0}.bb-grade-label{font-family:var(--ui-heading-font);font-size:var(--fs-xs);color:var(--ui-muted);letter-spacing:1px;text-transform:uppercase}#bb-gearscore{font-family:var(--ui-heading-font);font-size:var(--fs-lg);color:var(--ui-gold);line-height:1}.bb-actions{display:flex;align-items:center;gap:6px;flex:1;justify-content:center}.bb-shortcuts{display:flex;align-items:center;gap:6px;flex-shrink:0}.bb-shortcut{width:42px;height:42px;background:#080d1fe0;border:1px solid var(--ui-border);border-radius:4px;cursor:pointer;font-size:var(--fs-sm);display:flex;align-items:center;justify-content:center;color:var(--ui-muted);font-family:var(--ui-heading-font);transition:border-color .12s,color .12s;pointer-events:all}.bb-shortcut:hover{border-color:var(--ui-accent);color:var(--ui-text)}.bb-shortcut.active{border-color:var(--ui-accent);color:#fff;background:#66aaff1f}.bb-shortcut.hidden{display:none}#shop-panel,#refiner-panel,#fabricator-panel,#core-panel,#platform-slot-panel,#silo-panel,#contract-board-panel,#delivery-board-panel,#quest-log-panel,#inventory-panel,#scrap-panel{top:0!important;left:0!important;right:auto!important;bottom:88px!important;width:440px!important;max-width:440px!important;overflow-y:auto;display:none;flex-direction:column;border-right:1px solid var(--ui-border)}#shop-panel.visible,#refiner-panel.visible,#fabricator-panel.visible,#core-panel.visible,#platform-slot-panel.visible,#silo-panel.visible,#contract-board-panel.visible,#delivery-board-panel.visible,#quest-log-panel.visible,#inventory-panel.visible,#scrap-panel.visible{display:flex}#player-panel{position:fixed;top:0;right:0;bottom:88px;left:auto;width:440px;overflow-y:auto;display:none;flex-direction:column;background:var(--pixel-bg);box-shadow:var(--pixel-shadow);border-left:1px solid var(--ui-border);z-index:200;pointer-events:all}#player-panel.visible{display:flex}.pp-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;padding:6px 0}.pp-stat-row{display:flex;justify-content:space-between;align-items:baseline;gap:4px;padding:2px 0;border-bottom:1px solid rgba(255,255,255,.04)}.pp-stat-label{font-size:var(--fs-xs);color:#666;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.pp-stat-val{font-size:var(--fs-xs);color:#cce;font-weight:600;font-variant-numeric:tabular-nums}.pp-gearscore{display:flex;align-items:center;gap:8px;background:#ffcc000f;border:1px solid rgba(255,204,0,.18);border-radius:4px;padding:6px 10px;margin-bottom:6px}.pp-gs-label{font-family:var(--ui-heading-font);font-size:var(--fs-xs);color:#888;letter-spacing:.1em;text-transform:uppercase}.pp-gs-val{font-family:var(--ui-heading-font);font-size:var(--fs-lg);color:var(--c-amber);line-height:1;margin-left:auto}.pp-cargo-header{font-family:var(--ui-heading-font);font-size:var(--fs-sm);color:var(--ui-muted);letter-spacing:.12em;text-transform:uppercase;padding:8px 0 4px;border-top:1px solid var(--ui-border);margin-top:6px;display:flex;justify-content:space-between;align-items:baseline}.pp-cargo-weight{font-size:var(--fs-xs);color:var(--ui-muted)}#terminal-overlay,#terminal-container{bottom:100px!important}#conversation-overlay{bottom:88px!important}.minimap-mini{bottom:100px;top:auto!important;left:auto!important;right:16px}#player-panel,#shop-panel,#refiner-panel,#fabricator-panel,#core-panel,#platform-slot-panel,#silo-panel,#contract-board-panel,#delivery-board-panel,#quest-log-panel,#inventory-panel{z-index:400!important}.pp-gearscore{display:flex!important;align-items:center!important;gap:8px!important;padding:4px 8px!important;margin-bottom:4px!important}.pp-gs-label{font-size:var(--fs-2xs)!important}.pp-gs-val{font-size:var(--fs-sm)!important}.pp-upper{display:flex;gap:8px;padding:6px 0 8px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:6px;align-items:flex-start}.pp-stat-col{width:126px;flex-shrink:0;display:flex;flex-direction:column;gap:0}.pp-stat-col .pp-stat-row{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.04)}.pp-stat-col .pp-stat-label{font-size:var(--fs-2xs)!important;color:#667!important}.pp-stat-col .pp-stat-val{font-size:var(--fs-2xs)!important;color:#aac!important}.pp-doll-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;align-items:center}.pp-doll-row{display:flex;gap:6px;align-items:flex-end;justify-content:center;width:100%}.pp-doll-row--center{align-items:center}.pp-slot-dye{display:flex;flex-direction:column;align-items:center;gap:2px}.loadout-slot .inv-slot{width:45px!important;height:45px!important}#player-panel .inv-grid{grid-template-columns:repeat(var(--inv-cols, 4),55px)!important;gap:5px}#player-panel #pp-cargo-content .inv-slot{width:55px!important;height:55px!important}#player-panel #pp-cargo-content .inv-slot img{width:42px!important;height:42px!important}.pp-slot-dye .dye-picker{gap:2px}.pp-slot-dye .dye-swatch{width:8px!important;height:8px!important;border-radius:2px!important}#player-panel{overflow:hidden!important}#player-panel .ui-panel-header{flex-shrink:0;position:sticky;top:0;background:var(--pixel-bg);z-index:1}#player-panel .ui-panel-body{flex:1;overflow-y:auto;min-height:0;padding-bottom:24px}#shop-panel .ui-panel-header,#refiner-panel .ui-panel-header,#fabricator-panel .ui-panel-header,#core-panel .ui-panel-header,#platform-slot-panel .ui-panel-header,#silo-panel .ui-panel-header,#contract-board-panel .ui-panel-header,#delivery-board-panel .ui-panel-header,#quest-log-panel .ui-panel-header,#inventory-panel .ui-panel-header{position:sticky;top:0;background:var(--pixel-bg);z-index:1;flex-shrink:0}.bb-shortcut-skills{position:relative}.bb-skill-badge{position:absolute;top:-4px;right:-4px;background:#f90;color:#000;font-size:var(--fs-2xs);font-weight:700;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 3px;pointer-events:none;animation:badge-pulse 1.8s ease-in-out infinite}.bb-skill-badge.hidden{display:none}.bb-options-panel{position:absolute;bottom:calc(100% + 8px);right:0;background:#12121e;border:1px solid #2a2a44;border-radius:6px;padding:10px 12px;min-width:190px;z-index:9999;box-shadow:0 4px 16px #0009}.bb-options-panel.hidden{display:none}.bb-opt-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.bb-opt-label{width:42px;font-size:var(--fs-2xs);color:#888;flex-shrink:0}.bb-opt-slider{flex:1;accent-color:var(--ui-accent, var(--c-cyan));cursor:pointer}.bb-opt-val{width:26px;font-size:var(--fs-2xs);color:#ccc;text-align:right;flex-shrink:0}.bb-logout-btn{width:100%;margin-top:var(--sp-1)}@keyframes badge-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.skill-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:520px;background:#0d0d14;border:1px solid #334;border-radius:4px;z-index:1100;font-family:var(--font-mono, monospace);color:#ccd;box-shadow:0 8px 32px #000000b3}.skill-panel.hidden{display:none}.skill-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid #223;font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:#889}.skill-panel-close{background:none;border:none;color:#667;font-size:var(--fs-xs);cursor:pointer;line-height:1;padding:0 2px}.skill-panel-close:hover{color:#ccd}.skill-panel-body{display:flex;flex-direction:column;gap:var(--sp-3);padding:14px}.skill-points-bar{font-size:var(--fs-xs);color:var(--c-text-dim);text-align:center}.skill-points-count{font-family:var(--font-display);font-size:var(--fs-lg);color:var(--c-text-dim)}.skill-points-count.has-points{color:var(--c-cyan)}.skill-points-sub{color:var(--c-text-dim);opacity:.7}.skill-cats{display:flex;gap:10px;align-items:flex-start}.skill-panel-footer{display:flex;justify-content:center}.skill-node-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.skill-rank-pips{font-size:var(--fs-2xs);letter-spacing:2px}.skill-rank-btn{flex-shrink:0;min-width:34px}.skill-tree-col{flex:1;display:flex;flex-direction:column;gap:8px}.skill-tree-title{display:flex;align-items:center;gap:7px;font-size:var(--fs-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#aab;margin-bottom:2px}.skill-tree-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.skill-tree-track{font-size:var(--fs-2xs);color:#445;letter-spacing:.04em;margin-bottom:2px}.skill-tree-points{font-size:var(--fs-2xs);color:#556;letter-spacing:.04em;margin-bottom:4px}.skill-tree-points.has-points{color:#f90;font-weight:600}.skill-node{display:flex;align-items:center;gap:var(--sp-2);padding:8px 10px;border:1px solid #223;border-radius:3px;background:#10101a;transition:border-color .15s,background .15s}.skill-node.maxed{border-color:#335;background:#0e0e1c}.skill-node.locked{opacity:.4}.skill-node.affordable{border-color:#445;cursor:pointer}.skill-node.affordable:hover{border-color:var(--c-cyan);background:#13131f}.skill-node.unlocked{border-color:#335;background:#0e0e1c}.skill-node-name{font-size:var(--fs-2xs);font-weight:600;color:#bbd;margin-bottom:3px}.skill-node.unlocked .skill-node-name{color:#8af}.skill-node.affordable .skill-node-name{color:#cce}.skill-node-desc{font-size:var(--fs-2xs);color:#556;letter-spacing:.03em}.skill-node.unlocked .skill-node-desc{color:#667}
