:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#060e18;--panel:#08101aeb;--panel-strong:#060c14f5;--line:#81a0bb26;--line-strong:#81a0bb47;--text:#e4ecf2;--text-bright:#f4f8fb;--muted:#7e96aa;--dim:#4d6478;--amber:#e8a832;--amber-soft:#e8a83224;--teal:#4ec9c9;--teal-soft:#4ec9c91f;--red:#e0554a;--red-soft:#e0554a1f;--green:#3de86a;--green-dim:#2a9e48;--green-soft:#3de86a1f;--blue:#5eb8f5;--blue-soft:#5eb8f51f;--font-display:"Fjalla One", "Arial Narrow", sans-serif;--font-body:"Barlow", "Segoe UI", system-ui, sans-serif;--font-mono:"Share Tech Mono", "SFMono-Regular", monospace;--radius:14px;--radius-sm:10px;--radius-lg:18px;--gap:12px;--ease:cubic-bezier(.25, .46, .45, .94);--t-fast:.12s;--t-med:.2s}*,:before,:after{box-sizing:border-box}body{min-height:100vh;font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-weight:400;overflow-x:hidden}.noise{pointer-events:none;z-index:9999;opacity:.024;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}.vignette{pointer-events:none;z-index:9998;background:radial-gradient(at 50% 40%,#0000 48%,#00000080 100%);position:fixed;inset:0}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#81a0bb29;border-radius:999px}h1,h2,h3{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-bright);margin:0;font-weight:400}h2{font-size:1.35rem}h3{font-size:1.5rem}.eyebrow,.card-label,.status-note,.node-meta,.sector-label{color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}p{margin:0}.cockpit-shell{flex-direction:column;min-height:100vh;display:flex}.cockpit-viewport{background:radial-gradient(at 50% 20%,#4ec9c90f,#0000 28%),radial-gradient(at 80% 15%,#e8a8320a,#0000 22%),linear-gradient(#030810 0%,#060e18 100%);border-bottom:3px solid #283c50b3;flex:none;height:clamp(340px,56vh,620px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #0c141efa,inset 0 0 0 5px #3c5a782e,inset 0 0 0 6px #0c141ef2,inset 0 0 120px #00000080,inset 0 -40px 80px #0006,inset 0 40px 60px #00000040}.cockpit-viewport:before{content:"";pointer-events:none;z-index:1;background-image:linear-gradient(#4ec9c906 1px,#0000 1px),linear-gradient(90deg,#4ec9c906 1px,#0000 1px);background-size:52px 52px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 40%,#00000080 0%,#0000 65%);mask-image:radial-gradient(at 50% 40%,#00000080 0%,#0000 65%)}.cockpit-viewport:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(#0000 0%,#4ec9c905 49%,#4ec9c90d 50%,#4ec9c905 51%,#0000 100%);animation:7s linear infinite scan-sweep;position:absolute;inset:0}@keyframes scan-sweep{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}.flight-deck{z-index:3;height:100%;position:relative}.cockpit-window{height:100%;position:relative;overflow:hidden}.berth-view{background:radial-gradient(circle at 50% 18%,#4ec9c90f,#0000 20%),linear-gradient(#060e16fa,#04080efc);height:100%;position:relative;overflow:hidden}.stars,.nebula,.sector-object,.cockpit-overlay,.berth-backdrop,.berth-structure,.berth-copy{position:absolute}.stars,.nebula,.warp-field,.berth-backdrop{inset:0}.star{transition:opacity var(--t-fast) var(--ease);background:#ffffffd9;border-radius:999px;display:block;position:absolute;box-shadow:0 0 4px #ffffff2e}.stars-hidden .star{opacity:0}.warp-field{opacity:0;pointer-events:none;transition:opacity .15s var(--ease)}.warp-field-visible{opacity:1}.warp-streak{width:var(--streak-w,2px);height:var(--streak-h,100px);transform-origin:top;transform:rotate(var(--streak-angle,0deg)) scaleY(0);filter:drop-shadow(0 0 6px #4ec9c959);will-change:transform, opacity;background:linear-gradient(#0000 0%,#4ec9c973 20%,#ffffffeb 50%,#4ec9c973 80%,#0000 100%);border-radius:999px;display:block;position:absolute}.warp-departing .warp-streak{animation:.9s cubic-bezier(.22,1,.36,1) infinite warp-depart}@keyframes warp-depart{0%{opacity:0;transform:rotate(var(--streak-angle,0deg)) scaleY(.1) translateY(0)}15%{opacity:1}70%{opacity:.8}to{opacity:0;transform:rotate(var(--streak-angle,0deg)) scaleY(2.2) translateY(60px)}}.warp-arriving .warp-streak{animation:.75s cubic-bezier(.25,.46,.45,.94) infinite warp-arrive}@keyframes warp-arrive{0%{opacity:0;transform:rotate(var(--streak-angle,0deg)) scaleY(2) translateY(80px)}20%{opacity:1}80%{opacity:.6}to{opacity:0;transform:rotate(var(--streak-angle,0deg)) scaleY(.15) translateY(-10px)}}.warp-settling .warp-streak{animation:.8s cubic-bezier(.16,1,.3,1) both warp-settle}@keyframes warp-settle{0%{opacity:.6;transform:rotate(var(--streak-angle,0deg)) scaleY(1.2) translateY(0)}60%{opacity:.4}to{opacity:0;transform:rotate(var(--streak-angle,0deg)) scaleY(.05) translateY(0)}}.warp-flash{opacity:0;pointer-events:none;background:radial-gradient(circle,#ffffff40,#c8f0ff14 60%,#0000 100%);transition:opacity 80ms ease-out;position:absolute;inset:0}.warp-departing .warp-flash{animation:.35s ease-out .5s both warp-flash-pop}@keyframes warp-flash-pop{0%{opacity:0}40%{opacity:1}to{opacity:0}}.warp-departing{animation:.8s cubic-bezier(.22,1,.36,1) both cockpit-shake-out}.warp-arriving{animation:.6s cubic-bezier(.25,.46,.45,.94) both cockpit-shake-in}@keyframes cockpit-shake-out{0%{transform:scale(1)}50%{transform:scale(1.035)}to{transform:scale(1.06)}}@keyframes cockpit-shake-in{0%{transform:scale(1.06)}40%{transform:scale(.985)}to{transform:scale(1)}}.nebula-a{background:radial-gradient(circle at 25% 30%,#4ec9c921,#0000 34%)}.nebula-b{background:radial-gradient(circle at 74% 22%,#e8a83214,#0000 28%)}.sector-object{width:200px;height:200px;transition:opacity var(--t-med) var(--ease), transform var(--t-med) var(--ease);top:50%;left:50%;transform:translate(-50%,-42%)}.sector-core,.sector-glow{border-radius:50%;position:absolute;inset:0}.sector-label{white-space:nowrap;position:absolute;bottom:-34px;left:50%;transform:translate(-50%)}.sector-object.station .sector-core{background:linear-gradient(135deg,#ffffff29,#ffffff05),linear-gradient(90deg,#0000 48%,#fff6 48% 52%,#0000 52%);border:2px solid #fff9;border-radius:18px;inset:28px;transform:rotate(18deg)}.sector-object.station .sector-glow{border:1px solid #ffffff38;border-radius:30px;inset:14px}.sector-object.planet .sector-core,.sector-object.beacon .sector-core,.sector-object.relay .sector-core,.sector-object.debris .sector-core,.sector-object.gate .sector-core{background:radial-gradient(circle at 35% 30%,#ffffff4d,#0000 20%),currentColor}.sector-object.planet .sector-core{inset:22px;box-shadow:inset -28px -28px #0000004d}.sector-object.gate .sector-core{background:0 0;border:7px solid;inset:20px}.sector-object.relay .sector-core,.sector-object.beacon .sector-core{border-radius:16px;inset:66px;transform:rotate(45deg)}.sector-object.debris .sector-core{clip-path:polygon(18% 8%,82% 22%,64% 92%,28% 76%);inset:54px}.sector-object.teal{color:#4ec9c9d9}.sector-object.amber{color:#e8a832e0}.sector-object.red{color:#e0554ad9}.sector-object .sector-glow{filter:blur(28px);opacity:.2;background:radial-gradient(circle,currentColor 0%,#0000 60%)}.warp-departing .sector-object,.warp-arriving .sector-object,.warp-settling .sector-object{opacity:.3;transform:translate(-50%,-42%)scale(.85)}.npc-contact{z-index:2;cursor:pointer;text-align:center;transition:transform var(--t-fast) var(--ease);position:absolute;transform:translate(-50%,-50%)}.npc-contact:hover{transform:translate(-50%,-50%)scale(1.15)}.npc-blip{background:currentColor;width:10px;height:10px;margin:0 auto;animation:3s ease-in-out infinite alternate npc-drift;transform:rotate(45deg);box-shadow:0 0 8px}.npc-tag{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:currentColor;white-space:nowrap;opacity:.8;margin-top:6px;font-size:.62rem}.npc-contact.trader{color:var(--teal)}.npc-contact.pirate-frontier{color:var(--amber)}.npc-contact.pirate-lawless{color:var(--red)}@keyframes npc-drift{0%{transform:rotate(45deg)translate(0)}to{transform:rotate(45deg)translate(2px,-2px)}}.peer-contact{z-index:2;text-align:center;color:#6ecbf5;position:absolute;transform:translate(-50%,-50%)}.peer-blip{background:currentColor;border-radius:50%;width:8px;height:8px;margin:0 auto;animation:2s ease-in-out infinite peer-pulse;box-shadow:0 0 10px}@keyframes peer-pulse{0%,to{opacity:1;box-shadow:0 0 10px}50%{opacity:.6;box-shadow:0 0 16px}}.peer-card{border-left:2px solid #6ecbf5}.warp-departing .npc-contact,.warp-arriving .npc-contact,.warp-settling .npc-contact,.warp-departing .peer-contact,.warp-arriving .peer-contact,.warp-settling .peer-contact{opacity:0}.cockpit-overlay{z-index:4;align-items:center;gap:8px;display:flex;left:16px;right:16px}.cockpit-top{top:12px}.cockpit-bottom{background:linear-gradient(#0000 0%,#060e18b3 30%,#060e18eb 100%);border-top:1px solid #4ec9c90f;justify-content:space-between;padding:10px 16px;bottom:0;left:0;right:0}.hud-chip,.hud-readout{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040a12e0;border:1px solid #4ec9c91a}.hud-chip{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-left:2px solid #4ec9c933;border-radius:4px;padding:6px 11px;font-size:.7rem}.hud-chip.zone-safe{color:var(--teal);border-left-color:var(--teal)}.hud-chip.zone-danger{color:var(--amber);border-left-color:var(--amber)}.hud-chip.zone-lawless{color:var(--red);border-left-color:var(--red)}.zone-safe{color:var(--teal)}.zone-danger{color:var(--amber)}.zone-lawless{color:var(--red)}.pvp-attack-btn{border:1px solid var(--red);background:var(--red-soft);color:var(--red);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--t-fast) var(--ease);border-radius:4px;margin-top:8px;padding:6px 14px;font-size:.7rem}.pvp-attack-btn:hover{background:#e0554a40}.contracts-panel-content{flex-direction:column;gap:12px;display:flex}.contract-card,.contract-offer{border-left:3px solid var(--amber);margin-top:10px;padding-left:10px}.contract-card.contract-bounty,.contract-offer.contract-bounty{border-left-color:var(--red)}.contract-card.contract-rush-delivery,.contract-offer.contract-rush-delivery{border-left-color:var(--green)}.contract-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.contract-type-badge{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--amber-soft);color:var(--amber);border-radius:3px;padding:2px 6px;font-size:.6rem}.contract-bounty .contract-type-badge{background:var(--red-soft);color:var(--red)}.contract-rush-delivery .contract-type-badge{background:var(--green-soft);color:var(--green)}.contract-timer{font-family:var(--font-mono);color:var(--amber);letter-spacing:.05em;font-size:.65rem}.contract-abandon-btn{border:1px solid var(--dim);color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:3px;margin-top:6px;padding:4px 10px;font-size:.6rem}.contract-abandon-btn:hover{border-color:var(--red);color:var(--red)}.contract-offer{padding:8px 0 8px 10px}.contract-offer+.contract-offer{border-top:1px solid var(--line);padding-top:12px}#load-contracts-btn{margin-top:8px}.hud-readout{border-left:2px solid #4ec9c926;border-radius:4px;min-width:110px;padding:8px 12px;position:relative}.hud-readout span{color:var(--dim);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;display:block}.hud-readout strong{font-family:var(--font-mono);color:var(--text-bright);margin-top:2px;font-size:.88rem;font-weight:400;display:block}.cockpit-actions{z-index:5;align-items:center;gap:10px;display:flex;position:absolute;bottom:58px;left:50%;transform:translate(-50%)}.cockpit-actions button{font-size:.82rem;font-family:var(--font-display);letter-spacing:.1em;text-shadow:0 0 8px #e8a8324d;background:#e8a8321a;border:1px solid #e8a8324d;border-radius:6px;padding:10px 24px;box-shadow:0 2px 8px #0006,inset 0 1px #ffffff0d}.cockpit-actions button:hover:not(:disabled){background:#e8a8322e;border-color:#e8a83280;box-shadow:0 4px 16px #e8a8321f,0 2px 8px #0006,inset 0 1px #ffffff0d}.jump-charge-label{font-family:var(--font-mono);letter-spacing:.08em;font-size:.66rem}.cockpit-actions button[data-open-jump]{z-index:0;--charge-pct:0;position:relative;overflow:visible}.cockpit-actions button[data-open-jump]:before{content:"";border-radius:inherit;background:conic-gradient(var(--amber) 0%, #ffffffe6 calc(var(--charge-pct) * 1%), transparent calc(var(--charge-pct) * 1%), transparent 100%);-webkit-mask-composite:xor;pointer-events:none;z-index:-1;padding:2px;transition:box-shadow .3s;position:absolute;inset:-3px;box-shadow:0 0 10px #e8a8324d;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.cockpit-actions button[data-open-jump]:after{content:"";border-radius:inherit;pointer-events:none;z-index:-2;border:2px solid #e8a8321a;position:absolute;inset:-3px}.cockpit-actions button[data-open-jump].charge-ready:before{background:conic-gradient(var(--teal) 0%, #ffffffe6 100%);animation:.8s ease-in-out infinite charge-ring-pulse;box-shadow:0 0 14px #4ec9c980}.cockpit-actions button[data-open-jump].charge-ready:after{border-color:#4ec9c926}@keyframes charge-ring-pulse{0%,to{opacity:1;box-shadow:0 0 14px #4ec9c980}50%{opacity:.6;box-shadow:0 0 8px #4ec9c94d}}.berth-backdrop{background:radial-gradient(circle at 50% 28%,#ffffff0a,#0000 16%),linear-gradient(#ffffff04,#0000 30%)}.berth-structure{background:linear-gradient(90deg,#ffffff04 49%,#ffffff1a 49% 51%,#ffffff04 51%),linear-gradient(#ffffff0d,#ffffff03);border:1px solid #81a0bb14;border-radius:20px 20px 0 0;height:65%;inset:auto 14% 0}.berth-copy{z-index:4;max-width:460px;bottom:60px;left:20px}.console-strip{background:var(--panel-strong);border-top:none;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.console-columns{flex:1;grid-template-columns:260px 1fr;min-height:0;display:grid}.console-sidebar{border-right:1px solid var(--line);flex-direction:column;gap:6px;min-height:0;padding:8px;display:flex;overflow-y:auto}.console-sidebar .sidebar-close{display:none}.console-main{flex-direction:column;min-height:0;display:flex}.sidebar-toggle{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:10px 12px;font-size:1.1rem;line-height:1;display:none}.sidebar-toggle:hover{color:var(--text)}#sidebar-status{font-size:.82rem}#sidebar-status .sidebar-gauges .gauge{padding:2px 0}#sidebar-status .sidebar-gauges .gauge-label{min-width:42px;font-size:.62rem}#sidebar-status .sidebar-gauges .gauge-value{font-size:.62rem}#sidebar-status .sidebar-gauges .gauge-track{height:7px}.sidebar-credits{justify-content:space-between;align-items:center;padding:2px 0;font-size:.78rem;display:flex}.sidebar-credits .credits-label{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.sidebar-credits .credits-amount{font-family:var(--font-mono);color:var(--amber);font-size:.82rem}.sidebar-equip{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);gap:8px;padding:2px 0;font-size:.62rem;display:flex}.sidebar-equip span{color:var(--text)}#sidebar-contact:empty{display:none}.sidebar-contact-card{border-radius:var(--radius-sm);border:1px solid var(--line);background:#81a0bb08;padding:8px}.sidebar-contact-card strong{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--text-bright);margin-bottom:4px;font-size:.88rem;font-weight:400;display:block}.sidebar-contact-card .metric{padding:2px 0;font-size:.78rem}.sidebar-contact-card .gauge{padding:2px 0}.sidebar-contact-card .gauge-label{min-width:42px;font-size:.62rem}.sidebar-contact-card .gauge-value{font-size:.62rem}.sidebar-contact-card .gauge-track{height:7px}.sidebar-contact-card .button-row{margin-top:4px}.sidebar-contact-card .button-row button{padding:4px 10px;font-size:.72rem}.sidebar-deselect{appearance:none;color:var(--dim);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;float:right;background:0 0;border:none;padding:2px 0;font-size:.62rem}.sidebar-deselect:hover{color:var(--text)}#sidebar-comms{flex-direction:column;flex:1;min-height:0;display:flex}#sidebar-comms .sidebar-comms-card{border-radius:var(--radius-sm);border:1px solid var(--line);background:#81a0bb08;flex-direction:column;flex:1;min-height:0;padding:8px;display:flex}#sidebar-comms .sidebar-comms-card strong{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--text-bright);margin-bottom:4px;font-size:.82rem;font-weight:400;display:block}#sidebar-comms .sector-log-messages{flex:1;min-height:60px;max-height:none}#sidebar-comms .sector-log-messages p{padding:3px 6px;font-size:.72rem}#sidebar-comms .sector-log-form input{padding:4px 8px;font-size:.75rem}#sidebar-comms .sector-log-form button{padding:4px 10px;font-size:.75rem}.npc-contact.selected{z-index:5}.npc-contact.selected:before,.npc-contact.selected:after{content:"";pointer-events:none;opacity:.9;border-style:solid;border-color:currentColor;width:14px;height:14px;position:absolute}.npc-contact.selected:before{border-width:2px 0 0 2px;top:-6px;left:-8px}.npc-contact.selected:after{border-width:0 2px 2px 0;bottom:-6px;right:-8px}.console-strip:before{content:"";pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,#0000 0 3px,#00000008 3px 4px);position:absolute;inset:0}.console-tabs{border-bottom:1px solid var(--line);-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-shrink:0;gap:0;padding:0 8px;display:flex;overflow-x:auto}.console-tab{appearance:none;color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:7px;padding:10px 16px;font-size:.74rem;display:flex}.console-tab.active{color:var(--text-bright);border-bottom-color:var(--amber);background:0 0;border-top:none;border-left:none;border-right:none}.tab-led{border-radius:999px;flex-shrink:0;width:6px;height:6px}.tab-led--teal{background:var(--teal);box-shadow:0 0 6px #4ec9c966}.tab-led--amber{background:var(--amber);box-shadow:0 0 6px #e8a83266}.tab-led--red{background:var(--red);animation:2s ease-in-out infinite led-blink;box-shadow:0 0 6px #e0554a66}@keyframes led-blink{0%,to{opacity:1}50%{opacity:.35}}.console-panels{flex:1;min-height:0;overflow-y:auto}.console-panel{padding:10px 12px;display:none}.console-panel.active{display:block}.console-panel .list,.console-panel .trade-intel{gap:var(--gap);display:grid}.action-card,.opportunity,.market-sector{border-radius:var(--radius-sm);border:1px solid var(--line);transition:border-color var(--t-med) var(--ease);background:#81a0bb08;padding:10px 12px}.action-card:hover,.opportunity:hover,.market-sector:hover{border-color:var(--line-strong)}.opportunity strong,.market-sector strong,.action-card strong{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--text-bright);margin-bottom:5px;font-size:1rem;font-weight:400;display:block}.metric,.market-row{border-top:1px solid #81a0bb12;justify-content:space-between;gap:12px;padding:3px 0;font-size:.88rem;display:flex}.metric:first-of-type,.market-row:first-of-type{border-top:0}.metric span:first-child{color:var(--muted);font-size:.82rem}.metric span:last-child{font-family:var(--font-mono);color:var(--text);font-size:.82rem}.market-row.actions{align-items:center}.empty{color:var(--dim)}.positive{color:var(--teal)}.negative{color:#d8887e}.intel-tabs,.filter-group{flex-wrap:wrap;gap:6px;display:flex}.intel-tab,.filter-chip{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#81a0bb0d;border-color:#81a0bb26;padding:5px 11px;font-size:.74rem}.intel-tab.active,.filter-chip.active{color:var(--amber);background:#e8a8321f;border-color:#e8a83266}.intel-view{gap:12px;display:none}.intel-view.active{display:grid}.intel-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.intel-list{min-height:180px}.intel-quiet{background:linear-gradient(#81a0bb0a,#81a0bb05)}.combat-log{gap:5px;max-height:200px;display:grid;overflow-y:auto}.combat-log p{color:#d8dfe5;font-size:.82rem;font-family:var(--font-mono);background:#e0554a0a;border:1px solid #e0554a14;border-radius:8px;margin:0;padding:7px 10px;line-height:1.4}.weapon-charge{align-items:center;gap:10px;padding:8px 0;display:flex}.weapon-charge-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);min-width:80px;font-size:.72rem}.weapon-charge-track{background:#81a0bb1a;border-radius:999px;flex:1;height:6px;overflow:hidden}.weapon-charge-fill{border-radius:999px;height:100%;transition:width .1s linear}.weapon-charge-fill.player{background:linear-gradient(90deg, var(--teal), #fffc);box-shadow:0 0 8px #4ec9c94d}.weapon-charge-fill.enemy{background:linear-gradient(90deg, var(--red), #ffc8b4cc);box-shadow:0 0 8px #e0554a4d}.weapon-charge-fill.ready{animation:.6s ease-in-out infinite charge-pulse}button{appearance:none;color:var(--text);border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:#e8a83214;border:1px solid #e8a83233;padding:7px 14px;font-size:.76rem}button:hover:not(:disabled){background:#e8a83224;border-color:#e8a83266;transform:translateY(-1px);box-shadow:0 3px 12px #e8a83214}button:active:not(:disabled){box-shadow:none;transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.3}button.active{border-color:var(--accent);background:#e8a8322e;box-shadow:0 0 8px #e8a83233}.button-row,.inline-buttons{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.nav-panel-content{gap:var(--gap);display:grid}.nav-sector-info{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.nav-sector-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:#81a0bb08;padding:10px 12px}.nav-sector-card strong{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--text-bright);margin-bottom:3px;font-size:.88rem;font-weight:400;display:block}.nav-sector-card .status-note{font-size:.72rem}.jump-modal{border-radius:var(--radius-lg);width:min(1440px,100vw - 32px);max-width:1440px;color:var(--text);background:#040a12f7;border:1px solid #4ec9c926;padding:0;box-shadow:inset 0 0 0 1px #4ec9c90a,0 40px 100px #0000008c}.jump-modal::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#02060cbf}.jump-shell{margin:0}.jump-header{justify-content:space-between;gap:var(--gap);align-items:flex-start;padding:18px 20px 0;display:flex}.jump-close{flex-shrink:0}.jump-toolbar{justify-content:space-between;gap:var(--gap);align-items:center;padding:12px 20px 0;display:flex}.jump-status{color:var(--text);font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:.95rem}.jump-legend{flex-wrap:wrap;gap:12px;display:flex}.legend-item{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;font-size:.7rem;display:inline-flex}.legend-swatch{border:2px solid #fff3;border-radius:999px;width:9px;height:9px}.legend-swatch.current{border-color:var(--teal);background:#4ec9c933}.legend-swatch.reachable{border-color:var(--amber);background:#e8a83233}.legend-swatch.locked{background:#ffffff0a;border-color:#ffffff2e}.jump-map{padding:16px}.route-chart{border-radius:var(--radius);background:radial-gradient(circle at 50% 14%,#4ec9c90d,#0000 28%),linear-gradient(#060e16eb,#04080ef7);min-height:720px;position:relative;overflow:hidden}.route-svg{cursor:grab;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.chart-zoom-controls{z-index:5;gap:4px;display:flex;position:absolute;bottom:12px;right:12px}.chart-zoom-btn{border:1px solid var(--line-strong);background:var(--panel-strong);width:36px;height:36px;color:var(--muted);font-family:var(--font-mono);cursor:pointer;transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border-radius:4px;justify-content:center;align-items:center;font-size:1rem;display:flex}.chart-zoom-btn:last-child{letter-spacing:.05em;text-transform:uppercase;width:auto;padding:0 10px;font-size:.65rem}.chart-zoom-btn:hover{color:var(--text);border-color:var(--teal)}.route-line{stroke:#e8a8322e;stroke-width:2.5px;stroke-linecap:round;fill:none}.route-node{pointer-events:none}.route-chart-interactive .route-node.reachable-node{pointer-events:auto;cursor:pointer}.route-chart-interactive .route-node.reachable-node .node-name,.route-chart-interactive .route-node.reachable-node .node-meta{transition:fill var(--t-med) var(--ease)}.route-chart-interactive .route-node.disabled-node{opacity:.3}.route-node .node-halo{fill:#4ec9c914}.route-node .node-pulse{fill:#e8a8320d;stroke:#e8a8324d;stroke-width:1.5px;pointer-events:none}.route-node .node-leader{stroke:#ffffff1f;stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:3 5}.route-node .node-dot{fill:#ffffff0d;stroke:#ffffff73;stroke-width:2.5px}.route-node.station-node .node-dot{fill:#4ec9c91a}.route-chart-interactive .route-node.reachable-node .node-dot{stroke:var(--amber);fill:#e8a8321f}.route-node.frontier .node-dot{fill:#e8a8321a}.route-node.lawless .node-dot,.route-node.station-node.lawless .node-dot{fill:#e0554a1a}.route-node .node-name{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;fill:var(--text);font-size:.72rem}.route-node .node-meta{fill:var(--muted)}.route-chart-interactive .route-node.reachable-node:hover .node-dot,.route-chart-interactive .route-node.reachable-node:focus .node-dot{transform-box:fill-box;transform-origin:50%;transition:transform var(--t-fast) var(--ease);transform:scale(1.1)}.route-chart-interactive .route-node.reachable-node:hover .node-name,.route-chart-interactive .route-node.reachable-node:focus .node-name{fill:#fff4da}.cockpit-window:before{content:"";pointer-events:none;z-index:6;background:linear-gradient(90deg,#4ec9c966,#0000) 0 0/60px 2px no-repeat,linear-gradient(#4ec9c966,#0000) 0 0/2px 60px no-repeat,linear-gradient(270deg,#4ec9c966,#0000) 100% 0/60px 2px no-repeat,linear-gradient(#4ec9c966,#0000) 100% 0/2px 60px no-repeat,linear-gradient(90deg,#4ec9c966,#0000) 0 100%/60px 2px no-repeat,linear-gradient(#0000,#4ec9c966) 0 100%/2px 60px no-repeat,linear-gradient(270deg,#4ec9c966,#0000) 100% 100%/60px 2px no-repeat,linear-gradient(#0000,#4ec9c966) 100% 100%/2px 60px no-repeat,linear-gradient(90deg,#0000 44%,#4ec9c914 49%,#4ec9c91f 50%,#4ec9c914 51%,#0000 56%) 50% 40%/100% 1px no-repeat,linear-gradient(#0000 30%,#4ec9c914 46%,#4ec9c91f 50%,#4ec9c914 54%,#0000 70%) 50% 40%/1px 100% no-repeat;position:absolute;inset:8px}.cockpit-window:after{content:"";pointer-events:none;z-index:6;background:linear-gradient(90deg,#0000,#4ec9c933 30%,#4ec9c959 50%,#4ec9c933 70%,#0000);width:220px;height:1px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.hud-gauge{background:#81a0bb1a;border-radius:2px;width:100%;height:3px;margin-top:4px;overflow:hidden}.hud-gauge-fill{border-radius:2px;height:100%;transition:width .3s}.hud-gauge-fill.hull{background:var(--green);box-shadow:0 0 6px #3de86a66}.hud-gauge-fill.hull.warning{background:var(--amber);box-shadow:0 0 6px #e8a83266}.hud-gauge-fill.hull.critical{background:var(--red);animation:.8s ease-in-out infinite gauge-critical-pulse;box-shadow:0 0 6px #e0554a80}.hud-gauge-fill.cargo{background:var(--amber);box-shadow:0 0 4px #e8a8324d}.hud-gauge-fill.cargo.full{background:var(--red);box-shadow:0 0 6px #e0554a66}@keyframes gauge-critical-pulse{0%,to{opacity:1}50%{opacity:.5}}.gauge{align-items:center;gap:10px;padding:3px 0;display:flex}.gauge-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-shrink:0;min-width:52px;font-size:.68rem}.gauge-track{background:#81a0bb12;border:1px solid #81a0bb14;border-radius:2px;flex:1;height:10px;position:relative;overflow:hidden}.gauge-track:after{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 9px,#00000026 9px 10px);position:absolute;inset:0}.gauge-fill{border-radius:1px;height:100%;transition:width .3s;position:relative}.gauge-fill.hull{background:linear-gradient(90deg, var(--green-dim), var(--green));box-shadow:0 0 8px #3de86a4d}.gauge-fill.hull.warning{background:linear-gradient(90deg, #c08a20, var(--amber));box-shadow:0 0 8px #e8a8324d}.gauge-fill.hull.critical{background:linear-gradient(90deg, #a83830, var(--red));animation:.8s ease-in-out infinite gauge-critical-pulse;box-shadow:0 0 8px #e0554a66}.gauge-fill.armor{background:linear-gradient(90deg, #3a8cd0, var(--blue));box-shadow:0 0 8px #5eb8f54d}.gauge-fill.armor.warning{background:linear-gradient(90deg, #c08a20, var(--amber));box-shadow:0 0 8px #e8a8324d}.gauge-fill.armor.critical{background:linear-gradient(90deg, #a83830, var(--red));animation:.8s ease-in-out infinite gauge-critical-pulse;box-shadow:0 0 8px #e0554a66}.gauge-fill.cargo{background:linear-gradient(90deg, #c09020, var(--amber));box-shadow:0 0 6px #e8a83240}.gauge-fill.weapon-charge{background:linear-gradient(90deg, var(--teal), #a0f0f0e6);box-shadow:0 0 8px #4ec9c959}.gauge-fill.weapon-enemy{background:linear-gradient(90deg, var(--red), #ffa078e6);box-shadow:0 0 8px #e0554a59}.gauge-value{font-family:var(--font-mono);color:var(--text);text-align:right;flex-shrink:0;min-width:52px;font-size:.72rem}.gauge-pct{font-family:var(--font-mono);color:var(--muted);text-align:right;flex-shrink:0;min-width:36px;font-size:.66rem}.ship-dashboard{border-radius:var(--radius-sm);background:linear-gradient(135deg,#3de86a08,#0000 40%),linear-gradient(270deg,#4ec9c905,#0000 60%),#060c1499;border:1px solid #4ec9c914;border-left:3px solid #3de86a40;grid-template-columns:56px 1fr;align-items:center;gap:14px;padding:12px 14px;display:grid;box-shadow:inset 0 0 40px #0003,0 2px 12px #0000004d}.ship-schematic{flex-direction:column;align-items:center;gap:4px;display:flex}.ship-svg{filter:drop-shadow(0 0 10px #3de86a33);width:48px;height:76px;animation:4s ease-in-out infinite schematic-breathe}@keyframes schematic-breathe{0%,to{filter:drop-shadow(0 0 10px #3de86a33)}50%{filter:drop-shadow(0 0 18px #3de86a59)}}.ship-outline{fill:none;stroke:#81a0bb33;stroke-width:1.5px;stroke-dasharray:3 2}.ship-hull-fill{fill:#3de86a26;stroke:var(--green);stroke-width:1px;transition:fill .5s}.ship-hull-fill.warning{fill:#e8a83226;stroke:var(--amber)}.ship-hull-fill.critical{fill:#e0554a26;stroke:var(--red);animation:1.2s ease-in-out infinite schematic-critical}@keyframes schematic-critical{0%,to{fill:#e0554a26}50%{fill:#e0554a4d}}.ship-armor-ring{fill:none;stroke:var(--blue);stroke-width:1px;stroke-dasharray:4 3;opacity:.6}.ship-engine-glow{fill:#4ec9c999;filter:blur(2px)}.ship-engine-glow.docked{fill:#4ec9c926}.schematic-name{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-bright);text-align:center;font-size:.68rem;line-height:1.1}.schematic-status{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-align:center;font-size:.54rem}.schematic-status.active{color:var(--green)}.schematic-status.idle{color:var(--dim)}.ship-gauges{flex-direction:column;justify-content:center;gap:0;display:flex}.ship-gauges .gauge,.ship-gauges .credits-display{padding:3px 0}.ship-equipment{border-top:1px solid #81a0bb14;gap:12px;margin-top:6px;padding-top:8px;display:flex}.equip-slot{align-items:center;gap:6px;display:flex}.equip-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--dim);background:#81a0bb0a;border:1px solid #81a0bb1a;border-radius:3px;padding:2px 5px;font-size:.62rem}.equip-name{font-family:var(--font-mono);color:var(--text);font-size:.74rem}.credits-display{align-items:center;gap:8px;padding:5px 0;display:flex}.credits-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);min-width:52px;font-size:.68rem}.credits-amount{font-family:var(--font-mono);color:var(--amber);text-shadow:0 0 12px #e8a83240;font-size:.88rem}.combat-encounter{border-radius:var(--radius-sm);background:linear-gradient(135deg,#e0554a0a,#0000 50%),#81a0bb08;border:1px solid #e0554a26;padding:14px}.combat-header{border-bottom:1px solid #e0554a1a;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;display:flex}.combat-target-name{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--red);font-size:1.1rem}.combat-reward{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--amber);background:#e8a8320f;border:1px solid #e8a83233;border-radius:4px;padding:3px 8px;font-size:.72rem}.combat-gauges{grid-template-columns:1fr 1fr;gap:8px 20px;margin-bottom:12px;display:grid}.combat-gauge-group{flex-direction:column;gap:4px;display:flex}.combat-gauge-header{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);font-size:.62rem}.combat-weapons{background:#0003;border:1px solid #81a0bb14;border-radius:6px;gap:6px;margin:14px 0;padding:10px;display:grid}.combat-weapon-charge{align-items:center;gap:10px;display:flex}.combat-charge-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);min-width:70px;font-size:.7rem}.combat-charge-track{background:#81a0bb14;border:1px solid #81a0bb1a;border-radius:3px;flex:1;height:14px;position:relative;overflow:hidden}.combat-charge-fill{border-radius:2px;height:100%;transition:width .1s linear}.combat-charge-fill.player{background:linear-gradient(90deg, var(--teal), #96f0f0e6);box-shadow:0 0 10px #4ec9c966}.combat-charge-fill.player.ready{animation:.5s ease-in-out infinite combat-charge-ready}@keyframes combat-charge-ready{0%,to{box-shadow:0 0 10px #4ec9c966}50%{box-shadow:0 0 20px #4ec9c9b3}}.combat-charge-fill.enemy{background:linear-gradient(90deg, var(--red), #ffa078e6);box-shadow:0 0 10px #e0554a66}.combat-charge-pct{font-family:var(--font-mono);color:var(--muted);text-align:right;min-width:36px;font-size:.68rem}.combat-fire-btn{letter-spacing:.1em;width:100%;font-size:.88rem;font-family:var(--font-display);text-transform:uppercase;border-radius:6px;padding:12px 20px;transition:all .15s}.combat-fire-btn.firing{border-color:var(--red);color:var(--red);background:#e0554a33;animation:1.5s ease-in-out infinite fire-btn-pulse;box-shadow:0 0 20px #e0554a26,inset 0 0 20px #e0554a0d}.combat-fire-btn.holding{border-color:var(--green);color:var(--green);background:#3de86a1f;box-shadow:0 0 12px #3de86a1a}@keyframes fire-btn-pulse{0%,to{box-shadow:0 0 20px #e0554a26,inset 0 0 20px #e0554a0d}50%{box-shadow:0 0 30px #e0554a40,inset 0 0 30px #e0554a14}}.combat-note{font-family:var(--font-mono);color:var(--dim);letter-spacing:.04em;text-align:center;margin-top:8px;font-size:.68rem}.console-tabs{background:linear-gradient(#141e2af2 0%,#08101af2 100%);border-bottom:1px solid #4ec9c90f;gap:0;padding:0 8px;box-shadow:0 -1px #3c5a7826,inset 0 -1px #0000004d}.console-tab{transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border-bottom:2px solid #0000;border-left:1px solid #3c5a7814;border-radius:0;padding:10px 18px;position:relative}.console-tab:first-child{border-left:none}.console-tab:hover{color:var(--text);box-shadow:none;background:#4ec9c90a;border-color:#0000 #0000 #4ec9c926;transform:none}.console-tab.active{color:var(--text-bright);border-bottom:2px solid var(--teal);background:#4ec9c90f;border-top:none;border-left:1px solid #3c5a7814;border-right:1px solid #3c5a7814;box-shadow:inset 0 -1px 8px #4ec9c90a}.tab-led{border-radius:2px;width:7px;height:7px}.action-card.contact-highlighted{border-color:var(--teal);box-shadow:0 0 8px #4ec9c91a}@media (width<=1024px){.console-panel,.action-card,.opportunity,.market-sector{padding:8px 10px}.console-columns{grid-template-columns:220px 1fr}.jump-modal{width:min(100vw - 20px,1440px)}.jump-header{padding:14px 16px 0}.jump-toolbar{padding:10px 16px 0}.jump-map{padding:12px}.combat-encounter{padding:10px}}@media (width<=768px){.console-columns{grid-template-columns:1fr}.console-sidebar{z-index:500;background:var(--panel-strong);border-right:1px solid var(--line-strong);width:280px;transition:transform var(--t-med) var(--ease);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 20px #00000080}.console-sidebar.open{transform:translate(0)}.console-sidebar .sidebar-close{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;align-self:flex-end;min-width:44px;min-height:44px;padding:4px 8px;font-size:1.4rem;line-height:1;display:block}.console-sidebar .sidebar-close:hover{color:var(--text)}.sidebar-toggle{align-items:center;min-width:44px;min-height:44px;display:flex}.cockpit-viewport{height:clamp(200px,38vh,340px)}.sector-object{width:150px;height:150px}.console-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.console-tab{flex-shrink:0;min-height:44px;padding:10px 14px;font-size:.7rem}.console-panel{padding:8px}.jump-modal{border-radius:var(--radius);width:calc(100vw - 12px);max-height:calc(100vh - 24px)}.jump-header{padding:12px 14px 0}.jump-header h2{font-size:1.1rem}.jump-toolbar{flex-direction:column;align-items:flex-start;padding:8px 14px 0}.jump-map{padding:8px}.route-chart{min-height:400px}.intel-toolbar{flex-direction:column;align-items:flex-start}.ship-dashboard{grid-template-columns:48px 1fr;gap:10px;padding:10px}.ship-svg{width:40px;height:64px}.ship-equipment{flex-direction:column;gap:6px}.combat-gauges{grid-template-columns:1fr}.hud-chip{padding:5px 8px;font-size:.64rem}.hud-readout{min-width:80px;padding:6px 8px}.hud-readout span{font-size:.58rem}.hud-readout strong{font-size:.78rem}.metric,.market-row{gap:8px;font-size:.82rem}.metric span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.76rem;overflow:hidden}.metric span:last-child{flex-shrink:0;font-size:.76rem}.contract-card,.contract-offer{padding-left:8px}.contract-header{flex-wrap:wrap;gap:4px}button{min-height:44px}.button-row button,.inline-buttons button{min-height:44px;padding:8px 14px}.cockpit-actions button{min-height:44px;padding:10px 18px}.berth-copy{max-width:90%;bottom:40px;left:12px}.combat-encounter{padding:10px}.combat-header{flex-wrap:wrap;gap:6px}.combat-target-name{font-size:.95rem}.help-modal{max-width:calc(100vw - 16px)}.help-body{flex-direction:column}.help-nav{border-right:none;border-bottom:1px solid var(--line);flex-direction:row;min-width:0;padding:8px;overflow-x:auto}.help-content{padding:14px 16px}.nav-sector-info{grid-template-columns:1fr}.gauge{gap:6px}.gauge-label{min-width:44px;font-size:.62rem}.gauge-value{min-width:44px;font-size:.68rem}.cockpit-actions{flex-wrap:wrap;justify-content:center;bottom:48px;left:8px;right:8px;transform:none}}@media (width<=520px){.cockpit-viewport{height:clamp(180px,35vh,280px)}.hud-readout{min-width:64px;padding:4px 6px}.hud-readout span{font-size:.54rem}.hud-readout strong{font-size:.7rem}.console-tab{padding:8px 10px;font-size:.66rem}.sector-object{width:100px;height:100px}.cockpit-overlay{left:8px;right:8px}.cockpit-bottom{padding:8px}.cockpit-actions{gap:6px;bottom:38px}.cockpit-actions button{padding:8px 14px;font-size:.74rem}.jump-modal{border-radius:var(--radius-sm);width:calc(100vw - 8px)}.route-chart{min-height:320px}.chart-zoom-btn{width:44px;height:44px}h2{font-size:1.1rem}h3{font-size:1.2rem}.login-box{margin:0 12px;padding:24px 20px}}.login-screen{z-index:1000;background:var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-screen[hidden]{display:none}.login-box{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;max-width:340px;padding:36px 32px}.login-title{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--amber);margin:0 0 4px;font-size:1.6rem}.login-subtitle{color:var(--muted);margin:0 0 24px;font-size:.78rem}#login-form{flex-direction:column;gap:10px;display:flex}#login-form label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.7rem}#login-form input{width:100%;font-family:var(--font-mono);color:var(--text-bright);border:1px solid var(--line-strong);border-radius:var(--radius-sm);transition:border-color var(--t-fast) var(--ease);background:#ffffff0a;outline:none;padding:10px 12px;font-size:.85rem}#login-form input:focus{border-color:var(--amber)}#login-form button[type=submit]{margin-top:8px}.login-error{color:var(--red);margin:4px 0 0;font-size:.78rem}.hud-callsign{font-family:var(--font-mono);letter-spacing:.1em}.logout-btn{all:unset;font-family:var(--font-mono);color:var(--dim);cursor:pointer;text-transform:lowercase;letter-spacing:.04em;margin-left:6px;font-size:.6rem}.logout-btn:hover{color:var(--red)}.logout-countdown{font-family:var(--font-mono);color:var(--red);letter-spacing:.04em;margin-left:6px;font-size:.6rem;animation:1s ease-in-out infinite logout-pulse}@keyframes logout-pulse{0%,to{opacity:1}50%{opacity:.4}}.button-row .logout-btn{border:1px solid var(--line);color:var(--muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:6px 14px;font-size:.8rem}.button-row .logout-btn:hover{border-color:var(--red);color:var(--red)}.help-btn{all:unset;font-family:var(--font-mono);color:var(--dim);cursor:pointer;border:1px solid var(--line);vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;margin-left:4px;font-size:.6rem;line-height:1;display:inline-flex}.help-btn:hover{color:var(--teal);border-color:var(--teal)}.button-row .help-btn{width:28px;height:28px;font-size:.85rem}.help-modal{background:0 0;border:none;width:100%;max-width:min(720px,90vw);max-height:80vh;padding:0}.help-modal::backdrop{background:#000000b3}.help-shell{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;max-height:80vh;display:flex;overflow:hidden}.help-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.help-header h2{font-family:var(--font-display);color:var(--text-bright);margin:0;font-size:1.2rem}.help-close{all:unset;font-family:var(--font-mono);color:var(--muted);cursor:pointer;border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 12px;font-size:.75rem}.help-close:hover{color:var(--text);border-color:var(--line-strong)}.help-body{flex:1;display:flex;overflow:hidden}.help-nav{border-right:1px solid var(--line);flex-direction:column;gap:2px;min-width:160px;padding:12px;display:flex;overflow-y:auto}.help-nav-item{all:unset;font-family:var(--font-body);color:var(--muted);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;padding:8px 12px;font-size:.8rem}.help-nav-item:hover{color:var(--text);background:#ffffff0a}.help-nav-item.active{color:var(--teal);background:var(--teal-soft)}.help-content{font-family:var(--font-body);color:var(--text);flex:1;padding:20px 24px;font-size:.85rem;line-height:1.7;overflow-y:auto}.help-content h1{font-family:var(--font-display);color:var(--text-bright);margin:0 0 12px;font-size:1.1rem}.help-content h2{font-family:var(--font-display);color:var(--teal);margin:20px 0 8px;font-size:.95rem}.help-content h3{font-family:var(--font-display);color:var(--amber);margin:16px 0 6px;font-size:.85rem}.help-content p{margin:0 0 10px}.help-content ul{margin:0 0 10px;padding-left:20px}.help-content li{margin-bottom:4px}.help-content strong{color:var(--text-bright)}.help-content code{font-family:var(--font-mono);background:#ffffff0f;border-radius:4px;padding:2px 5px;font-size:.8rem}.help-content hr{border:none;border-top:1px solid var(--line);margin:16px 0}.sector-log-panel{margin-top:8px}.sector-log-messages{gap:4px;max-height:160px;margin-bottom:8px;display:grid;overflow-y:auto}.sector-log-messages p{color:#d8dfe5;font-size:.8rem;font-family:var(--font-mono);background:#4ec9c90a;border:1px solid #4ec9c914;border-radius:6px;margin:0;padding:5px 8px}.sector-log-messages .system-msg{color:var(--amber);background:#e8a8320f;border-color:#e8a8321f;font-style:italic}.sector-log-messages .log-time{color:var(--dim);margin-right:6px;font-size:.75rem}.sector-log-messages .log-callsign{color:var(--teal);margin-right:6px;font-weight:600}.sector-log-messages .system-msg .log-callsign{color:var(--amber)}.sector-log-form{gap:6px;display:flex}.sector-log-form input{border:1px solid var(--line);color:var(--text);font-family:var(--font-mono);background:#ffffff0f;border-radius:6px;flex:1;padding:6px 10px;font-size:.82rem}.sector-log-form input::placeholder{color:var(--dim)}.sector-log-form input:focus{border-color:var(--teal);outline:none;box-shadow:0 0 6px #4ec9c933}.sector-log-form button{color:var(--teal);font-family:var(--font-mono);cursor:pointer;white-space:nowrap;background:#4ec9c91f;border:1px solid #4ec9c940;border-radius:6px;padding:6px 14px;font-size:.82rem}.sector-log-form button:hover{background:#4ec9c933}.laser-beam{z-index:10;pointer-events:none;transform-origin:0;border-radius:1px;height:2px;animation:.35s ease-out forwards laser-fire;position:absolute}.laser-beam.player-laser{background:linear-gradient(90deg,#4ec9c9e6,#b4ffff,#4ec9c966);box-shadow:0 0 6px #4ec9c9cc,0 0 12px #4ec9c966}.laser-beam.enemy-laser{background:linear-gradient(90deg,#e8503ce6,#ffa064,#e8503c66);box-shadow:0 0 6px #e8503ccc,0 0 12px #e8503c66}@keyframes laser-fire{0%{opacity:1;clip-path:inset(0 100% 0 0)}40%{opacity:1;clip-path:inset(0)}70%{opacity:.8;clip-path:inset(0)}to{opacity:0;clip-path:inset(0 0 0 100%)}}.hit-flash{z-index:11;pointer-events:none;opacity:0;border-radius:50%;width:24px;height:24px;animation:.4s ease-out .14s forwards hit-burst;position:absolute;transform:translate(-50%,-50%)}.hit-flash.player-laser{background:radial-gradient(circle,#ffffffe6 0%,#4ec9c999 40%,#0000 70%);box-shadow:0 0 16px #4ec9c9cc,0 0 32px #4ec9c966}.hit-flash.enemy-laser{background:radial-gradient(circle,#ffdcb4f2 0%,#e8503c99 40%,#0000 70%);box-shadow:0 0 16px #e8503ccc,0 0 32px #e8503c66}@keyframes hit-burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}30%{opacity:1;transform:translate(-50%,-50%)scale(1.5)}to{opacity:0;transform:translate(-50%,-50%)scale(2)}}.cockpit-shake{animation:.4s ease-out shake}@keyframes shake{0%{transform:translate(0)}15%{transform:translate(-4px,2px)}30%{transform:translate(3px,-3px)}45%{transform:translate(-2px,1px)}60%{transform:translate(2px,-1px)}75%{transform:translate(-1px,1px)}to{transform:translate(0)}}.npc-contact.engaged .npc-blip{box-shadow:0 0 12px,0 0 24px}.engage-ring{opacity:.6;border:1px solid;border-radius:50%;width:24px;height:24px;animation:1.5s ease-in-out infinite engage-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes engage-pulse{0%,to{opacity:.6;transform:translate(-50%,-50%)scale(1)}50%{opacity:0;transform:translate(-50%,-50%)scale(1.8)}}.wreckage{z-index:3;pointer-events:none;transition:opacity 2s ease-out;position:absolute;transform:translate(-50%,-50%)}.wreckage-fading{opacity:0}.wreck-shard{background:var(--amber);opacity:.7;width:3px;height:3px;box-shadow:0 0 4px var(--amber);animation:1s ease-out forwards shard-drift;position:absolute}@keyframes shard-drift{0%{opacity:1;transform:translate(0)scale(1.5)}to{transform:translate(var(--drift-x), var(--drift-y)) scale(.5);opacity:.4}}
