.topbar{position:fixed;top:1.1rem;left:0;right:0;z-index:50;display:flex;justify-content:center;pointer-events:none}.topbar__panel{display:flex;align-items:stretch;padding:4px;border:1px solid var(--line);border-radius:999px;background:#060607c7;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px #ffffff08 inset,0 12px 40px #00000073;pointer-events:auto;transition:background .35s,border-color .35s}.topbar__panel:hover,.topbar__panel:focus-within{background:#060607e6;border-color:#ecece829}.topbar__cell{position:relative;overflow:hidden;display:flex;align-items:center;height:40px;padding:0 10px;border-radius:999px;color:var(--dim);white-space:nowrap;transition:color .25s,background .25s,padding .4s cubic-bezier(.2,.8,.2,1)}.topbar__ico{flex:none;width:20px;height:20px;display:grid;place-items:center;color:inherit}.topbar__ico svg{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.topbar__label{display:grid;grid-template-columns:0fr;opacity:0;transition:grid-template-columns .4s cubic-bezier(.2,.8,.2,1),opacity .25s}.topbar__label>span{min-width:0;overflow:hidden;padding-left:0;transition:padding-left .4s cubic-bezier(.2,.8,.2,1)}.topbar__panel:hover .topbar__label,.topbar__panel:focus-within .topbar__label{grid-template-columns:1fr;opacity:1;transition:grid-template-columns .4s cubic-bezier(.2,.8,.2,1),opacity .3s .12s}.topbar__panel:hover .topbar__label>span,.topbar__panel:focus-within .topbar__label>span{padding-left:.6rem}.topbar__panel:hover .topbar__cell,.topbar__panel:focus-within .topbar__cell{padding:0 16px 0 12px}.topbar__cell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 25%,rgba(201,174,124,.28) 50%,transparent 75%);transform:translate(-130%);pointer-events:none}.topbar__cell:hover:after{animation:scanline .65s ease}@keyframes scanline{to{transform:translate(130%)}}.topbar__cell:hover{color:var(--ink);background:#ecece80f}.topbar__brand{color:var(--ink)}.topbar__mark{color:var(--brass);display:inline-block;font-size:1rem;line-height:1;animation:spin 9s linear infinite}.topbar__cell--active,.topbar__cell--money{color:var(--brass)}.topbar__cell--money:hover{color:var(--bg);background:var(--brass)}@media(pointer:coarse){.topbar{top:.8rem}.topbar__cell--active .topbar__label{grid-template-columns:1fr;opacity:1}.topbar__cell--active .topbar__label>span{padding-left:.6rem}.topbar__cell--active{padding:0 16px 0 12px}}@media(prefers-reduced-motion:reduce){.topbar__mark{animation:none}.topbar__cell,.topbar__label,.topbar__label>span{transition:none}}:root{--bg: #060607;--ink: #ecece8;--dim: #97979e;--brass: #c9ae7c;--brass-dim: #8a7853;--line: rgba(236, 236, 232, .1);--font-display: "Oswald", system-ui, sans-serif;--font-body: "Manrope", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;touch-action:none}::selection{background:var(--brass);color:var(--bg)}.mono{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}a{color:inherit;text-decoration:none}@media(pointer:fine){*{cursor:none!important}}.cursor-ship{position:fixed;left:0;top:0;z-index:200;pointer-events:none;opacity:0;transition:opacity .3s;color:#e9e9e4}.cursor-ship.on{opacity:1}.cursor-ship svg{position:absolute;left:0;top:0;display:block;width:26px;height:26px;fill:currentColor;transform:translate(-50%,-50%);filter:drop-shadow(0 0 6px rgba(201,174,124,.35));transition:opacity .2s,transform .2s}.cursor-ship .ship-reticle{width:34px;height:34px;opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(0);color:var(--brass);fill:none;stroke:currentColor;stroke-width:1.4;animation:reticle-spin 5s linear infinite}.cursor-ship.hot .ship-reticle,.cursor-ship.hot-sys .ship-reticle{opacity:1;transform:translate(-50%,-50%) scale(1)}.cursor-ship.hot .ship-body,.cursor-ship.hot-sys .ship-body{opacity:0;transform:translate(-50%,-50%) scale(.4)}.cursor-ship.drag .ship-body{transform:translate(-50%,-50%) scale(.85);opacity:.7}@keyframes reticle-spin{to{transform:translate(-50%,-50%) scale(1) rotate(360deg)}}@media(pointer:coarse){.cursor-ship{display:none}}#map{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:0}.world{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none}.nodes,.labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.node{position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;border-radius:50%;transform:translate(-50%,-50%);pointer-events:auto;border:1px solid var(--line);background:#09090b8c;color:var(--dim);transition:border-color .3s,color .3s,box-shadow .3s;will-change:transform,opacity}.node svg{width:46%;height:46%;fill:currentColor}.node--dummy{width:46px;height:46px}.node--dummy .node__q{font-family:var(--font-mono);font-size:.85rem;color:var(--dim)}.node--dummy:hover{border-color:#ecece84d}.node--live{width:72px;height:72px;color:var(--brass);border-color:var(--brass-dim);box-shadow:0 0 30px #c9ae7c2e,inset 0 0 16px #c9ae7c12}.node--live svg{animation:spin 7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.node--live:hover{border-color:var(--brass);box-shadow:0 0 50px #c9ae7c66,inset 0 0 20px #c9ae7c1f}.node--live:hover,.node--dummy:hover{animation:blob 1.5s ease-in-out infinite}@keyframes blob{0%,to{border-radius:50%}18%{border-radius:67% 33% 58% 42%/38% 66% 34% 62%}38%{border-radius:36% 64% 43% 57%/65% 35% 63% 37%}58%{border-radius:58% 42% 70% 30%/32% 60% 40% 68%}78%{border-radius:40% 60% 35% 65%/58% 36% 64% 42%}}.node:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:1px solid transparent;border-radius:50%;pointer-events:none;transition:border-color .3s}.node--live:hover:before{border-color:#c9ae7c73;animation:blob2 1.9s ease-in-out infinite,aura-spin 5s linear infinite}.node--dummy:hover:before{border-color:#ecece838;animation:blob2 1.9s ease-in-out infinite,aura-spin 5s linear infinite}@keyframes blob2{0%,to{border-radius:44% 56% 62% 38%/56% 40% 60% 44%}33%{border-radius:64% 36% 40% 60%/38% 62%}66%{border-radius:38% 62% 58% 42%/62% 36% 64% 38%}}@keyframes aura-spin{to{rotate:360deg}}.node.shake{animation:nodeshake .4s ease}@keyframes nodeshake{20%{margin-left:-5px}40%{margin-left:5px}60%{margin-left:-3px}80%{margin-left:3px}}.node__tag{position:absolute;top:calc(100% + .7rem);left:50%;transform:translate(-50%);white-space:nowrap;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);opacity:.85}.node--live .node__tag{color:var(--brass)}.node-label{position:fixed;z-index:40;pointer-events:none;opacity:0;transform:translate(-50%,-100%);transition:opacity .25s;color:var(--ink);background:#060607d1;border:1px solid var(--line);border-radius:999px;padding:.5rem .9rem;white-space:nowrap;font-size:.62rem}.node-label.show{opacity:1}.sys{position:absolute;left:0;top:0;transform:translate(-50%,-50%);text-align:center;pointer-events:none;white-space:nowrap;will-change:transform,opacity}.sys__eyebrow{color:var(--brass);font-size:.58rem;margin-bottom:.35rem}.sys__name{font-family:var(--font-display);font-weight:600;font-size:1.9rem;line-height:1;letter-spacing:.04em;text-transform:uppercase}.sys__sub{color:var(--dim);font-size:.55rem;margin-top:.4rem}.sys--far .sys__name{font-size:1.1rem;color:var(--dim)}.sys--far .sys__eyebrow{color:#ecece859}.sys--far.locked .sys__sub{color:#cf4a2b}.sys.hover .sys__name{color:var(--ink)}.sys{transition:opacity .2s;opacity:0}@media(max-width:1500px){.sys__name{font-size:1.4rem}.sys--far .sys__name{font-size:.95rem}}.wormhole{position:absolute;left:0;top:0;transform:translate(-50%,-50%);pointer-events:auto;display:flex;flex-direction:column;align-items:center;color:var(--dim);transition:color .3s;will-change:transform}.wormhole__hit{display:block;width:84px;height:84px;border-radius:50%}.wormhole__label{position:absolute;left:50%;top:calc(100% + .5rem);transform:translate(-50%);font-size:.56rem;white-space:nowrap;transition:color .3s,opacity .3s}.wormhole:hover{color:var(--brass)}.hud{position:fixed;right:1.6rem;bottom:1.4rem;z-index:50;display:flex;align-items:center;gap:1.2rem;color:var(--dim)}.hud__read{font-size:.56rem;opacity:.8}.hud__btns{display:flex;gap:2px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#060607c7;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px #ffffff08 inset,0 12px 40px #00000073}.hud__btn{width:36px;height:36px;border-radius:50%;background:none;border:none;color:var(--dim);font:500 1rem var(--font-mono);cursor:pointer;transition:color .2s,background .2s}.hud__btn:hover{color:var(--ink);background:#ecece812}.hud__btn--home{color:var(--brass)}.hint{position:fixed;left:1.6rem;bottom:1.6rem;z-index:50;color:var(--dim);opacity:.5;font-size:.54rem}.ddp:not(.placed){bottom:5.2rem}@media(max-width:900px){.hint{display:none}.hud{right:.8rem;bottom:.8rem;gap:.6rem}.hud__read{display:none}.node--live{width:58px;height:58px}.node--dummy{width:38px;height:38px}.sys__name{font-size:1.2rem}.ddp:not(.placed){bottom:4.2rem;right:.8rem}}@media(prefers-reduced-motion:reduce){.topbar__mark,.node--live svg,.node--live:hover,.node--dummy:hover,.node:before{animation:none}}
