:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#02050b;--bg-soft:#07101c;--panel:#07101cd1;--panel-solid:#08111e;--line:#b0cde638;--line-strong:#c3e0f77a;--text:#edf6ff;--muted:#9fb1c2;--faint:#637487;--cyan:#83d5ff;--mint:#9ff0d0;--amber:#ffd166;--danger:#ff8f70;--success:#9ff0d0;--shadow:#00000070;--font-tech:"IBM Plex Mono", "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--font-body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);font-family:var(--font-body);letter-spacing:0;margin:0;overflow:hidden}body{background:radial-gradient(circle at 14% 16%,#75aade29,#0000 34rem),radial-gradient(circle at 22% 18%,#2149764d,#0000 32rem),radial-gradient(circle at 78% 80%,#60417629,#0000 34rem),linear-gradient(#03101d 0%,#050913 100%)}button,a,input{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.app-shell{background:var(--bg);width:100vw;height:100vh;min-height:620px;position:relative;overflow:hidden}.space-canvas{position:absolute;inset:0;width:100%!important;height:100%!important}.desktop-flight{width:100%;height:100%;position:absolute;inset:0}.desktop-flight canvas{display:block;width:100%!important;height:100%!important}.mobile-backdrop,.intro-backdrop{z-index:0;background:radial-gradient(circle at 43% 43%,#fcffff9e,#7adcff4d 12rem,#0000 34rem),radial-gradient(circle at 72% 34%,#91d3ff9e,#0000 38rem),radial-gradient(circle at 18% 20%,#edf6ff57,#0000 26rem),radial-gradient(circle at 54% 112%,#5cadff7a,#0000 42rem),radial-gradient(circle at 8% 74%,#6980d64d,#0000 34rem),linear-gradient(115deg,#0000006b 0 28%,#041a342e 58%,#0f3a6014 100%),linear-gradient(#0b2746 0%,#123a60 48%,#081b33 100%);position:absolute;inset:0;overflow:hidden}.mobile-backdrop:before,.intro-backdrop:before{content:"";opacity:1;background:linear-gradient(90deg,#00000057,#00000014 52%,#0000 100%),repeating-linear-gradient(118deg,#0000 0 38px,#cfebff17 39px 40px),radial-gradient(circle at 78% 40%,#aae0ff6b,#0000 32rem);animation:38s linear infinite starDrift;position:absolute;inset:0}.intro-backdrop:after{content:"";opacity:1;pointer-events:none;background:radial-gradient(circle at 42% 45%,#ffffff57,#74deff33 16%,#0000 40%),radial-gradient(circle at 68% 34%,#75c9ff57,#0000 34rem),radial-gradient(circle at 26% 14%,#ffffff29,#0000 22rem),radial-gradient(circle at 72% 42%,#0000 0 14rem,#1c53842e 36rem),linear-gradient(90deg,#00000057,#00000014 38%,#00000005 72%,#0000002e);position:absolute;inset:0}@keyframes starDrift{0%{transform:translate(0,0)}to{transform:translate(-120px,90px)}}.intro{z-index:2;place-items:end stretch;padding:clamp(28px,5vw,64px);display:grid;position:absolute;inset:0}.intro:before{content:"";pointer-events:none;background:linear-gradient(90deg,#00000061 0 32%,#00000014 66%,#0000 100%),linear-gradient(#0000 0 48%,#0000003d 100%);position:absolute;inset:0}.intro-cinematic{z-index:1;pointer-events:none;position:absolute;inset:0}.intro-cinematic canvas{display:block;width:100%!important;height:100%!important}.intro-panel{text-align:left;z-index:1;justify-items:start;gap:6px;width:100%;display:grid;position:relative}.intro-kicker,.eyebrow,.hud-label,.metric-label,.card-meta,.world-label,.mini-label,.map-label{font-family:var(--font-tech);letter-spacing:0;text-transform:uppercase}.intro-title{word-break:keep-all;overflow-wrap:normal;letter-spacing:-.04em;text-transform:uppercase;text-shadow:0 10px 18px #00000070;width:min(1120px,100%);margin:0;font-family:Impact,Haettenschweiler,Arial Narrow,IBM Plex Mono,sans-serif;font-weight:900;line-height:.82}.title-lockup{justify-items:start;gap:4px;width:100%;display:grid}.logo-lockup{z-index:1;width:min(1120px,64vw);position:relative}.logo-title{text-shadow:none;z-index:1;margin:0;line-height:0;position:relative}.intro-logo-image{object-fit:contain;object-position:left center;filter:none;-webkit-user-select:none;user-select:none;z-index:1;width:min(1120px,64vw);max-width:100%;max-height:clamp(250px,21vw,370px);display:block;position:relative}.intro-kicker{color:#ffffffdb;font-family:var(--font-tech);letter-spacing:.16em;text-transform:none;text-shadow:0 4px 12px #000000eb;margin:0 0 .1em;font-size:clamp(.74rem,1.05vw,1rem);font-weight:500}.intro-title-owner{color:#fff;letter-spacing:-.06em;text-shadow:0 5px 14px #000000bf;margin-bottom:.04em;font-size:clamp(1.45rem,3.4vw,3.4rem);display:block}.intro-title-row{align-items:stretch;width:min(1120px,100%);min-height:clamp(4.8rem,9.8vw,8.5rem);display:flex}.intro-title-block{color:#fff;white-space:nowrap;align-items:flex-end;font-size:clamp(4.6rem,9.8vw,9rem);display:inline-flex}.intro-title-portfolio{padding-right:clamp(8px,1vw,14px)}.intro-title-odyssey{color:#fff;text-shadow:0 1px #ffffff40,0 10px 18px #00000094;padding-left:clamp(8px,1vw,14px)}.intro-title-divider{background:linear-gradient(90deg,#fffffffa,#ffffff9e);width:clamp(8px,1.1vw,13px);margin:0 clamp(4px,.7vw,9px);box-shadow:0 8px 12px #0000007a}.intro-word{white-space:nowrap;display:inline-block}.intro-subtitle{color:#ebf1f7e0;z-index:4;-webkit-backdrop-filter:none;backdrop-filter:none;word-break:keep-all;overflow-wrap:normal;text-wrap:pretty;white-space:pre-line;background:0 0;border-left:4px solid #ffffffe6;max-width:min(760px,100%);margin:clamp(-46px,-2.4vw,-24px) 0 0;padding:10px 12px;font-size:clamp(.9rem,1.15vw,1.02rem);font-weight:700;line-height:1.65;position:relative}.intro-actions{z-index:4;position:relative}.intro-actions,.panel-actions,.index-actions,.settings-row,.modal-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button{border:1px solid var(--line-strong);min-height:42px;color:var(--text);cursor:pointer;font-family:var(--font-tech);text-transform:uppercase;background:#0a1726b8;border-radius:6px;justify-content:center;align-items:center;gap:9px;padding:0 16px;font-size:.82rem;text-decoration:none;transition:border-color .16s,background .16s,transform .16s;display:inline-flex}.button:hover{border-color:var(--cyan);background:#122b44db}.button:active{transform:translateY(1px)}.button.primary{background:#70bce42e;border-color:#83d5ffd1}.button.danger{border-color:#ff8f708c}.button[disabled],.button.disabled{cursor:not-allowed;color:var(--faint);background:#0c11188f;border-color:#8c99a62e}.icon-button{width:42px;min-width:42px;padding:0}.button svg,.icon-button svg{flex:none;width:18px;height:18px}.loading-screen,.fallback{z-index:20;padding:28px;position:absolute;inset:0}.loading-screen{background:radial-gradient(circle at 42% 45%,#ffffffb8,#76e0ff6b 15%,#0000 38%),radial-gradient(circle at 60% 52%,#e1faff3d,#0000 30rem),radial-gradient(circle at 76% 30%,#5cb4ff85,#0000 42rem),radial-gradient(circle at 20% 80%,#5871dc57,#0000 38rem),radial-gradient(circle,#05142700 0 30%,#0c2c4e4d 68%,#040e1c94 100%),#0b2746;display:block;overflow:hidden}.fallback{background:#02050bd1;place-items:center;display:grid}.loading-module,.fallback-module{border:1px solid var(--line);width:min(520px,100%);box-shadow:0 20px 80px var(--shadow);background:#060e18c7;border-radius:8px;padding:24px}.loading-module{text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:4;width:min(520px,100vw - 48px);position:absolute;bottom:clamp(34px,7vh,78px);left:50%;transform:translate(-50%)}.loading-module h2{font-family:var(--font-tech);text-transform:uppercase;margin:4px 0 8px;font-size:clamp(1.2rem,3vw,1.75rem)}.loading-module p:last-of-type{color:var(--muted);margin:0}.loading-progress{background:#8ca2b72e;border-radius:999px;height:4px;margin-top:18px;overflow:hidden}.loading-progress i{background:linear-gradient(90deg,#5fdcff,#edf6ff);height:100%;transition:width .22s;display:block;box-shadow:0 0 18px #83d5ffb3}.loading-warp{pointer-events:none;perspective:680px;position:absolute;inset:-8%}.lobby-warp{z-index:1;opacity:.98}.lobby-warp .loading-vanishing-point{opacity:1}.loading-warp .intro-cinematic{z-index:1}.loading-vanishing-point{aspect-ratio:1;z-index:3;background:radial-gradient(circle,#fff 0 9%,#d2f8ffb8 21%,#5ecdff5c 43%,#0000 72%);border-radius:50%;width:16vmin;animation:.62s ease-in-out infinite alternate loadingCorePulse;position:absolute;top:45%;left:42%;transform:translate(-50%,-50%);box-shadow:0 0 58px #fff,0 0 190px #76daffc7,0 0 340px #49b0ff6b}.loading-warp span{width:var(--length);opacity:0;transform-origin:0;height:1px;animation:loadingWarpStreak var(--duration) linear infinite;animation-delay:var(--delay);z-index:2;background:linear-gradient(90deg,#0000,#a8e7ff52,#fffffffa,#0000);border-radius:999px;position:absolute;top:45%;left:42%;box-shadow:0 0 14px #b7ecffb8,0 0 28px #5ecdff47}.loading-ship-silhouette{background:linear-gradient(90deg,#09142233,#edf6ff52,#070f1ae0);border-radius:55% 18% 18% 55%;width:10vmin;height:2.4vmin;animation:1.8s ease-in-out infinite alternate loadingShipDrift;position:absolute;top:58%;left:40%;transform:translate(-50%,-50%)rotate(-13deg);box-shadow:-2.2vmin .4vmin 0 -.85vmin #5fdcff9e,-3.6vmin .4vmin 16px #5fdcff80}@keyframes loadingWarpStreak{0%{opacity:0;transform:rotate(var(--angle)) translateX(var(--offset)) scaleX(.06);filter:brightness(.8)}18%{opacity:.82}to{opacity:0;transform:rotate(var(--angle)) translateX(108vmax) scaleX(2.8);filter:brightness(2.2)}}@keyframes loadingCorePulse{0%{filter:brightness();transform:translate(-50%,-50%)scale(.92)}to{filter:brightness(1.75);transform:translate(-50%,-50%)scale(1.18)}}@keyframes loadingShipDrift{0%{transform:translate(-52%,-48%)rotate(-14deg)}to{transform:translate(-47%,-53%)rotate(-10deg)}}.hud{pointer-events:none;z-index:10;color:var(--text);font-family:var(--font-tech);position:absolute;inset:0}.hud>*{pointer-events:auto}.hud:before{content:"";pointer-events:none;border:1px solid #b3d3ef14;position:absolute;inset:16px}.hud-boot{animation:.68s both hudBoot}@keyframes hudBoot{0%{opacity:0;filter:brightness(1.7)}to{opacity:1;filter:brightness()}}.hud-panel{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#040b139e;border-radius:8px;position:absolute;box-shadow:0 16px 50px #00000038}.flight-metrics{width:260px;padding:15px;bottom:28px;left:24px}.target-status{width:300px;padding:13px 15px;top:24px;left:24px}.hud-message{border-color:#83d5ff70;width:min(380px,100vw - 720px);min-width:300px;padding:12px 14px;top:24px;left:50%;transform:translate(-50%)}.boundary-message{top:88px}.hud-message.warning{border-color:#ff8f7094}.hud-message.success{border-color:#9ff0d094}.metric-grid{gap:10px;display:grid}.metric-row,.target-row{grid-template-columns:1fr auto;align-items:baseline;gap:10px;display:grid}.metric-label,.hud-label{color:var(--muted);font-size:.72rem}.metric-value{color:var(--text);font-variant-numeric:tabular-nums}.metric-bar{background:#8ca2b726;border-radius:999px;height:4px;overflow:hidden}.metric-bar span{background:linear-gradient(90deg, var(--cyan), var(--mint));height:100%;display:block}.reticle{pointer-events:none;border:1px solid #d6e8f652;border-radius:999px;width:104px;height:104px;position:absolute;top:50%;left:50%;transform:translate(-50%,-45%);box-shadow:inset 0 0 18px #83d5ff14,0 0 24px #0000002e}.reticle:before,.reticle:after{content:"";background:#d6e8f63d;position:absolute}.reticle:before{width:1px;height:86px;top:9px;left:50%;transform:translate(-50%)}.reticle:after{width:86px;height:1px;top:50%;left:9px;transform:translateY(-50%)}.reticle-dot{background:#edf6ffdb;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.target-radar-ring{border:1px solid #83d5ff47;border-radius:999px;width:58px;height:58px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.target-radar-blip{opacity:0;width:9px;height:9px;transform:translate(calc(-50% + var(--target-x,0px)), calc(-50% + var(--target-y,0px))) scale(.7);background:#8ee7ff;border-radius:999px;transition:transform .14s,opacity .14s;position:absolute;top:50%;left:50%;box-shadow:0 0 8px #8ee7ffc7,0 0 18px #8ee7ff59}.reticle.has-target .target-radar-blip{opacity:1;transform:translate(calc(-50% + var(--target-x,0px)), calc(-50% + var(--target-y,0px))) scale(1)}.reticle.off-axis .target-radar-blip{background:#ffcf78;box-shadow:0 0 8px #ffcf78b8,0 0 18px #ff8f7047}.interaction-prompt{font-family:var(--font-tech);text-transform:uppercase;background:#040b13b8;border:1px solid #83d5ff94;border-radius:6px;padding:9px 12px;font-size:.8rem;position:absolute;top:calc(50% + 84px);left:50%;transform:translate(-50%)}.settings-panel{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;max-width:min(520px,100vw - 380px);display:flex;position:absolute;top:22px;right:24px}.compact-toggle{white-space:nowrap;padding:0 11px;font-size:.72rem}.minimap{grid-template-rows:auto minmax(0,1fr);gap:6px;width:252px;height:282px;padding:10px;transition:width .18s,height .18s;display:grid;bottom:28px;right:24px}.minimap.expanded{width:360px;height:360px}.radar-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.radar-map-button{color:var(--text);cursor:pointer;font-family:var(--font-tech);text-transform:uppercase;background:#0a17268c;border:1px solid #c3e0f73d;border-radius:5px;padding:5px 7px;font-size:.64rem}.minimap>svg,.sol-map-chart>svg{width:100%;height:100%;display:block}.system-map .button svg,.hud .button svg{width:18px;height:18px}.system-map .icon-button{align-self:flex-start;width:42px;height:42px;min-height:42px;max-height:42px}.map-close-button{border:1px solid var(--line-strong);cursor:pointer;background:#0a1726b8;border-radius:6px;width:42px;min-width:42px;height:42px;position:relative}.map-close-button:hover{border-color:var(--cyan);background:#122b44db}.map-close-button span:before,.map-close-button span:after{content:"";transform-origin:50%;background:#edf6ffeb;border-radius:999px;width:17px;height:2px;position:absolute;top:50%;left:50%}.map-close-button span:before{transform:translate(-50%,-50%)rotate(45deg)}.map-close-button span:after{transform:translate(-50%,-50%)rotate(-45deg)}.mini-blip{cursor:pointer}.mini-blip:focus-visible .radar-blip-core{stroke:#fff;stroke-width:2.4px}.radar-glow{fill:url(#radar3dFade)}.radar-plane{fill:#08162338;stroke:#c3e0f724;stroke-width:1px}.radar-plane.outer{stroke:#c3e0f757;stroke-width:1.3px}.radar-axis{stroke:#c3e0f729;stroke-width:1px}.radar-vertical-axis{stroke:url(#radarVerticalAxis);stroke-width:1.3px;stroke-dasharray:3 5}.radar-depth-line{stroke:#c3e0f76b;stroke-width:1px;stroke-dasharray:2 3}.mini-blip.above .radar-depth-line{stroke:#ffcf788c}.mini-blip.below .radar-depth-line{stroke:#83d5ff94}.radar-shadow{fill:#83d5ff1f;stroke:#c3e0f72e;stroke-width:1px}.radar-blip-core{filter:drop-shadow(0 0 5px #83d5ff73)}.mini-blip.selected .radar-blip-core{filter:drop-shadow(0 0 7px #edf6ffd1)drop-shadow(0 0 13px #83d5ff6b)}.mini-blip.visited .radar-blip-core{stroke-dasharray:3 2}.radar-altitude,.radar-altitude-value,.radar-alt-label{letter-spacing:.04em;font-size:.48rem}.radar-ship-marker circle{fill:#edf6ffcc;filter:drop-shadow(0 0 5px #edf6ff9e)}.radar-ship-marker path{fill:#edf6fff0}.radar-sweep{fill:#83d5ff14;transform-origin:128px 128px;animation:4.4s linear infinite sweep}@keyframes sweep{to{transform:rotate(360deg)}}.system-map{z-index:25;border:1px solid var(--line-strong);background:#03080ee6;border-radius:8px;grid-template-columns:minmax(0,1fr) 300px;gap:18px;padding:18px;display:grid;position:absolute;inset:54px 64px 44px;box-shadow:0 30px 120px #00000094}.sol-map{grid-template-columns:minmax(0,1fr) 340px;gap:20px}.sol-map-chart{grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.sol-map-chart svg{background:radial-gradient(circle at 45%,#83d5ff14,#0000 28rem),#02050b70;border:1px solid #c3e0f71a;border-radius:8px;min-height:440px}.sol-map-detail{border-left:1px solid var(--line);padding-left:18px;overflow:auto}.sol-map-detail h2{text-transform:uppercase;margin:0 0 4px}.system-body-node{cursor:pointer}.system-description{color:var(--muted);line-height:1.65}.ftl-button{width:100%;margin-top:12px}.detail-grid.single{grid-template-columns:1fr}.system-map-list{align-content:start;gap:8px;display:grid;overflow:auto}.system-map-item{border:1px solid var(--line);text-align:left;background:#0b182685;border-radius:6px;padding:10px}.system-map-item.selected{border-color:var(--cyan)}.controls-guide{z-index:30;border:1px solid var(--line-strong);background:#030910e6;border-radius:8px;width:min(760px,100vw - 48px);padding:18px;position:absolute;inset:auto 50% 34px auto;transform:translate(50%);box-shadow:0 20px 80px #0000007a}.controls-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.control-key{border:1px solid var(--line);background:#0a1726b3;border-radius:6px;padding:10px}.control-key strong{color:var(--text);font-family:var(--font-tech);margin-bottom:6px;display:block}.control-key span{color:var(--muted);font-size:.82rem}.overlay{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#010408bd;place-items:center;padding:28px;display:grid;position:absolute;inset:0}.settings-overlay{z-index:55}.settings-modal{border:1px solid var(--line-strong);background:linear-gradient(#07101cf5,#040a12f5),radial-gradient(circle at 50% 0,#83d5ff1f,#0000 30rem);border-radius:8px;width:min(980px,100%);max-height:min(820px,100vh - 56px);padding:22px;overflow:auto;box-shadow:0 30px 130px #0000009e}.settings-modal-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.settings-modal-header h2{text-transform:uppercase;margin:0;font-size:clamp(1.8rem,4vw,3.4rem);line-height:.95}.settings-copy{max-width:680px;color:var(--muted);line-height:1.65}.settings-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0;display:grid}.settings-menu-card{border:1px solid var(--line);min-height:150px;color:var(--text);cursor:pointer;text-align:left;background:#0a172694;border-radius:8px;align-content:start;gap:8px;padding:16px;display:grid;position:relative}.settings-menu-card:hover{border-color:var(--cyan);background:#122b44bd}.settings-menu-card strong{font-family:var(--font-tech);text-transform:uppercase;font-size:1.08rem}.settings-menu-card small{max-width:360px;color:var(--muted);line-height:1.55}.settings-menu-card svg{position:absolute;top:15px;right:15px}.settings-menu-card.danger{border-color:#ff8f706b}.volume-panel{border:1px solid var(--line);background:#050e1899;border-radius:8px;gap:12px;margin:18px 0 20px;padding:16px;display:grid}.volume-panel-header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.volume-panel-header strong{font-family:var(--font-tech);text-transform:uppercase}.volume-row{color:var(--muted);font-family:var(--font-tech);grid-template-columns:72px minmax(120px,1fr) 48px;align-items:center;gap:12px;font-size:.78rem;display:grid}.volume-row input{width:100%;accent-color:var(--cyan)}.volume-row output{color:var(--text);text-align:right;font-variant-numeric:tabular-nums}.ship-select-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0;display:grid}.ship-select-card-body small{color:var(--muted);font-family:var(--font-tech);font-size:.72rem;line-height:1.45}.ship-select-card{border:1px solid var(--line);background:#0a172694;border-radius:8px;overflow:hidden}.ship-select-card.selected{border-color:var(--cyan);box-shadow:inset 0 0 0 1px #83d5ff47}.ship-select-card img{aspect-ratio:1;object-fit:contain;object-position:center;background:radial-gradient(circle at 50% 48%,#83d5ff1a,#0000 62%),#02050bd6;width:100%;padding:10px;display:block}.ship-select-card-body{gap:9px;padding:12px;display:grid}.ship-select-card h3{min-height:2.2em;font-family:var(--font-tech);text-transform:uppercase;margin:0;font-size:1rem;line-height:1.1}.ship-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.ship-stat-grid span{background:#02050b6b;border:1px solid #b0cde629;border-radius:6px;min-width:0;padding:7px 6px}.ship-stat-grid strong{color:var(--text);font-family:var(--font-tech);font-size:.86rem;line-height:1;display:block}.ship-stat-grid small{color:var(--muted);word-break:keep-all;margin-top:4px;font-size:.58rem;line-height:1.15;display:block}.ship-description{color:#ebf1f7db;word-break:keep-all;margin:0;font-size:.76rem;font-weight:650;line-height:1.45}.index-view{align-items:stretch}.index-panel,.project-panel{border:1px solid var(--line-strong);background:#050c15f0;border-radius:8px;width:min(1180px,100%);max-height:min(820px,100vh - 56px);overflow:auto;box-shadow:0 30px 130px #00000094}.index-panel{padding:22px}.index-header,.project-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.index-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.orbit-index{gap:22px;display:grid}.orbit-group{border-top:1px solid var(--line);padding-top:18px}.orbit-group-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.orbit-group-header h3{text-transform:uppercase;margin:0}.orbit-group-header p{margin:4px 0 0}.orbit-count{border:1px solid var(--line);color:var(--cyan);font-family:var(--font-tech);white-space:nowrap;border-radius:6px;padding:7px 9px;font-size:.72rem}.project-card{border:1px solid var(--line);background:#0a172694;border-radius:8px;align-content:space-between;gap:14px;min-height:230px;padding:15px;display:grid}.project-card.archived{border-color:#9ff0d070}.card-signal{border:1px solid var(--line);background:linear-gradient(90deg, transparent, #ffffff14, transparent), radial-gradient(circle at var(--accent-x,50%) 50%, var(--accent), transparent 42%);opacity:.86;border-radius:6px;height:78px}.project-card h3,.project-panel h2,.index-panel h2{text-transform:uppercase;margin:0}.project-card p,.project-panel p,.index-panel p,.fallback p,.loading-module p{color:var(--muted);line-height:1.65}.project-panel{grid-template-columns:380px minmax(0,1fr);display:grid}.project-aside{border-right:1px solid var(--line);background:#09131fc2;padding:22px}.project-content{padding:22px}.project-image-placeholder{aspect-ratio:4/3;border:1px solid var(--line);background:linear-gradient(135deg,#ffffff14,#0000 45%),repeating-linear-gradient(0deg,#ffffff0d 0 1px,#0000 1px 12px);border-radius:8px;margin:18px 0}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.detail-box{border:1px solid var(--line);background:#0b182670;border-radius:6px;padding:12px}.copy-section{gap:14px;display:grid}.copy-block{border-top:1px solid var(--line);padding-top:14px}.world-label{min-width:150px;color:var(--text);text-align:left;pointer-events:none;text-shadow:0 1px 4px #000c;background:#030910a8;border:1px solid #c3e0f738;border-radius:6px;padding:7px 9px;font-size:.68rem}.world-label strong{font-size:.78rem;display:block}.world-label span{color:var(--muted)}.ftl-sequence{--warp-opacity:.44;--core-scale:1;z-index:15;pointer-events:none;isolation:isolate;background:radial-gradient(circle,#f8fdff5c,#89dcff26 8%,#0000 24%),radial-gradient(circle,#44a6ff21,#0000 42%),radial-gradient(circle,#02050b00 0 18%,#02050b7a 54%,#010307db 100%);position:absolute;inset:0;overflow:hidden}.ftl-sequence:before,.ftl-sequence:after{content:"";pointer-events:none;position:absolute;inset:0}.ftl-sequence:before{opacity:calc(var(--warp-opacity) * .82);mix-blend-mode:screen;background:conic-gradient(from 8deg,#0000 0deg,#63bcff38 26deg,#0000 52deg,#edf6ff24 94deg,#0000 132deg,#51aaff2e 202deg,#0000 250deg,#c7f4ff2e 306deg,#0000 360deg);animation:1.18s linear infinite hyperspaceSpin;-webkit-mask-image:radial-gradient(circle,#0000 0 10%,#000 16% 64%,#0000 82%);mask-image:radial-gradient(circle,#0000 0 10%,#000 16% 64%,#0000 82%)}.ftl-sequence:after{opacity:calc(var(--warp-opacity) * .38);background:radial-gradient(#0000 0 18%,#83d5ff29 19%,#0000 21%),radial-gradient(#0000 0 38%,#edf6ff1f 39%,#0000 41%),radial-gradient(#0000 0 59%,#83d5ff17 60%,#0000 62%);animation:.84s ease-in-out infinite alternate hyperspacePulse;transform:scale(1.1)}.hyperspace-tunnel{transform-style:preserve-3d;perspective:760px;position:absolute;inset:-8%}.warp-vanishing-point{aspect-ratio:1;width:9vmin;opacity:calc(var(--warp-opacity) * .92);transform:translate(-50%, -50%) scale(var(--core-scale));background:radial-gradient(circle,#f6fdfff5 0 8%,#89dcff5c 28%,#0000 68%);border-radius:50%;animation:.42s ease-in-out infinite alternate warpPoint;position:absolute;top:50%;left:50%;box-shadow:0 0 24px #edf6ffdb,0 0 90px #5bb9ff75}.warp-core{aspect-ratio:1;width:23vmin;opacity:var(--warp-opacity);transform:translate(-50%, -50%) scale(var(--core-scale));background:radial-gradient(circle,#0000 0 19%,#edf6ff9e 20%,#83d5ff38 34%,#0000 58%),radial-gradient(circle,#318bff38,#0000 70%);border:1px solid #edf6ffb8;border-radius:50%;animation:.62s ease-in-out infinite alternate warpCoreBreathe;position:absolute;top:50%;left:50%;box-shadow:0 0 24px #83d5ff99,0 0 90px #318bff4d}.warp-ring{--ring-delay:0s;--ring-scale:1;aspect-ratio:1;opacity:0;width:18vmin;transform:translate(-50%, -50%) scale(var(--ring-scale));animation:.88s cubic-bezier(.2,.74,.14,1) infinite warpRing;animation-delay:var(--ring-delay);border:1px solid #a5e4ff75;border-radius:50%;position:absolute;top:50%;left:50%;box-shadow:0 0 26px #4fb0ff33}.warp-streak{--angle:0deg;--delay:0s;--duration:.52s;--length:52vmax;--offset:3vmin;--streak-opacity:.5;width:var(--length);height:1px;opacity:calc(var(--streak-opacity) * var(--warp-opacity));transform-origin:0;transform:rotate(var(--angle)) translateX(var(--offset)) scaleX(.12);animation:hyperspaceStreak var(--duration) linear infinite;animation-delay:var(--delay);background:linear-gradient(90deg,#0000,#a8e7ff2e,#edf6fff0,#0000);border-radius:999px;position:absolute;top:50%;left:50%;box-shadow:0 0 10px #83d5ff85}.ftl-sequence.charging .warp-streak{opacity:calc(var(--streak-opacity) * .48);filter:saturate(.9);animation-duration:.76s}.ftl-sequence.jumping .warp-streak{opacity:calc(var(--streak-opacity) * 1.35);filter:brightness(1.35)saturate(1.2);animation-duration:.32s}.ftl-sequence.arriving .warp-streak{opacity:calc(var(--streak-opacity) * .64);filter:blur(.5px)brightness(1.1);animation-duration:.68s}.ftl-sequence.charging .warp-core{transform:translate(-50%, -50%) scale(calc(var(--core-scale) * .72));animation-duration:.92s}.ftl-sequence.jumping .warp-core{border-color:#ffffffe6;animation-duration:.26s;box-shadow:0 0 42px #edf6ffdb,0 0 150px #318bff7a}.ftl-sequence.arriving .warp-core{opacity:calc(var(--warp-opacity) * .6);animation-duration:.78s}.warp-entry-flare{aspect-ratio:1;opacity:0;mix-blend-mode:screen;background:radial-gradient(circle,#0000 0 32%,#edf6ff61 34%,#6ac7ff24 46%,#0000 68%);border-radius:50%;width:58vmin;position:absolute;top:45%;left:58%;transform:translate(-50%,-50%)scale(.35)}.ftl-sequence.charging .warp-entry-flare{animation:1.1s ease-in-out infinite alternate warpGateCharge}.ftl-sequence.jumping .warp-entry-flare{animation:.52s ease-out infinite warpGateBurst}.ftl-sequence.arriving .warp-entry-flare{animation:.72s ease-out both warpGateExit}@keyframes hyperspaceStreak{0%{transform:rotate(var(--angle)) translateX(0) scaleX(.05);filter:brightness(.75)}15%{opacity:calc(var(--streak-opacity) * var(--warp-opacity))}to{transform:rotate(var(--angle)) translateX(102vmax) scaleX(3.2);filter:brightness(2.25);opacity:0}}@keyframes warpPoint{0%{filter:brightness();transform:translate(-50%, -50%) scale(calc(var(--core-scale) * .88))}to{filter:brightness(1.7);transform:translate(-50%, -50%) scale(calc(var(--core-scale) * 1.18))}}@keyframes hyperspaceSpin{0%{transform:rotate(0)scale(1.02)}to{transform:rotate(360deg)scale(1.02)}}@keyframes hyperspacePulse{0%{opacity:.18;transform:scale(.92)}to{opacity:.48;transform:scale(1.22)}}@keyframes warpRing{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}18%{opacity:.58}to{transform:translate(-50%, -50%) scale(calc(var(--ring-scale) * 5.6));opacity:0}}@keyframes warpCoreBreathe{0%{filter:brightness(.9)}to{filter:brightness(1.45)}}.ftl-readout{width:min(430px,100vw - 48px);font-family:var(--font-tech);text-align:center;background:#030910b8;border:1px solid #83d5ff8a;border-radius:8px;padding:14px 16px;position:absolute;top:12%;left:50%;transform:translate(-50%);box-shadow:0 24px 80px #0000006b}.ftl-readout strong{text-transform:uppercase;margin-bottom:4px;font-size:1.28rem;display:block}.ftl-readout span{color:var(--muted);font-size:.74rem}.ftl-readout em{color:#edf6ff;margin-top:8px;font-size:.74rem;font-style:normal;display:block}.ftl-progress{background:#8ca2b72e;border-radius:999px;height:5px;margin:14px 0 8px;overflow:hidden}.ftl-progress i{background:linear-gradient(90deg, var(--cyan), #edf6ff);height:100%;display:block}.ftl-flash{opacity:0;background:radial-gradient(circle,#f5fdff 0 8%,#caf5ffe6 14%,#66c2ff2e 36%,#0000 68%),#e8fbff;position:absolute;inset:0}.ftl-sequence.arriving .ftl-flash{animation:.72s ease-out both ftlFlash}@keyframes ftlFlash{0%{opacity:0}45%{opacity:.72}to{opacity:0}}@keyframes warpGateCharge{0%{opacity:calc(var(--warp-opacity) * .18);filter:brightness(.9);transform:translate(-50%,-50%)scale(.36)}to{opacity:calc(var(--warp-opacity) * .58);filter:brightness(1.5);transform:translate(-50%,-50%)scale(.88)}}@keyframes warpGateBurst{0%{opacity:calc(var(--warp-opacity) * .18);transform:translate(-50%,-50%)scale(.42)}45%{opacity:calc(var(--warp-opacity) * .82);transform:translate(-50%,-50%)scale(1.28)}to{opacity:0;transform:translate(-50%,-50%)scale(1.82)}}@keyframes warpGateExit{0%{opacity:calc(var(--warp-opacity) * .9);filter:brightness(2);transform:translate(-50%,-50%)scale(1.55)}to{opacity:0;filter:brightness();transform:translate(-50%,-50%)scale(2.25)}}.ftl-sequence.reduced:before,.ftl-sequence.reduced:after{opacity:.12;animation-duration:1ms}.ftl-sequence.reduced .warp-ring,.ftl-sequence.reduced .warp-streak,.ftl-sequence.reduced .warp-core{opacity:.16;animation-duration:1ms}.mobile-only-note{display:none}@media (max-width:1180px){.target-status{width:270px}.settings-panel{max-width:360px}.hud-message{width:min(360px,100vw - 48px);top:82px}.system-map{grid-template-columns:minmax(0,1fr);inset:40px 28px 32px;overflow:auto}.sol-map{grid-template-columns:minmax(0,1fr)}.sol-map-detail{border-left:0;border-top:1px solid var(--line);padding-top:16px;padding-left:0}}@media (max-width:900px){html,body{overflow:auto}.app-shell{height:auto;min-height:100vh;overflow:auto}.desktop-flight{display:none}.mobile-only-note{display:block}.overlay{background:#010408ad;min-height:100vh;padding:18px;position:relative}.index-panel,.project-panel{max-height:none}.index-grid{grid-template-columns:1fr}.orbit-group-header{display:grid}.project-panel{grid-template-columns:1fr}.project-aside{border-right:0;border-bottom:1px solid var(--line)}.detail-grid,.controls-grid,.settings-menu-grid,.ship-select-grid{grid-template-columns:1fr}.hud,.space-canvas,.intro-cinematic,.intro{display:none}.system-map,.sol-map{grid-template-columns:1fr;position:relative;inset:auto}.sol-map-detail{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
