@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@300;400;500;600&display=swap");.ed-constellation{--bg-primary:#042d41;--bg-secondary:#24272a;--bg-tertiary:#214b64;--text-primary:#f8f4f3;--text-secondary:#f5f9f9;--text-muted:#8aa4b0;--accent:#f5f9f9;--accent-light:#64d8ff;--border:rgba(245,249,249,.1);--satellite-color:#64d8ff;--orbit-color:rgba(100,216,255,.2);--ground-track-past:#ff8080;--ground-track-future:#64d8ff;background-color:#042d41;color:#f8f4f3!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px!important;line-height:1.4;min-height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ed-constellation *,.ed-constellation :after,.ed-constellation :before{box-sizing:border-box;margin:0;padding:0}.ed-constellation .container{display:grid;grid-template-columns:360px 1fr;grid-template-rows:auto 1fr;height:100vh;width:100%}.ed-constellation .header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;grid-column:1/-1;justify-content:space-between;padding:16px 24px;z-index:100}.ed-constellation .header-left{display:flex;flex-direction:column;gap:2px}.ed-constellation .header-title{color:#f8f4f3!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:18px!important;font-weight:600!important;letter-spacing:-.3px;line-height:1.2;margin:0}.ed-constellation .header-subtitle{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:11px!important;font-weight:400!important;letter-spacing:1px;line-height:1.4;margin:0;text-transform:uppercase}.ed-constellation .header-controls{align-items:center;display:flex;gap:16px}.ed-constellation .control-group{align-items:center;display:flex;gap:8px}.ed-constellation .control-label,.ed-constellation .status-indicator{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:400!important;letter-spacing:.5px;line-height:1.4;text-transform:uppercase}.ed-constellation .status-indicator{align-items:center;display:flex;gap:6px}.ed-constellation .status-dot{animation:ed-pulse 2s ease-in-out infinite;background:#22c55e;border-radius:50%;height:6px;width:6px}@keyframes ed-pulse{0%,to{opacity:1}50%{opacity:.4}}.ed-constellation .toggle-btn-group{background:var(--bg-tertiary);border-radius:6px;display:flex;padding:2px}.ed-constellation .toggle-btn{background:transparent;border:none;border-radius:4px;color:#8aa4b0!important;cursor:pointer;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:500!important;letter-spacing:.5px;line-height:1.4;padding:5px 10px;text-transform:uppercase;transition:all .2s ease}.ed-constellation .toggle-btn.active{background:var(--accent);color:#042d41!important}.ed-constellation .sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto}.ed-constellation .sidebar-section{border-bottom:1px solid var(--border);padding:16px}.ed-constellation .sidebar-section:last-child{border-bottom:none;flex:1;overflow-y:auto}.ed-constellation .sidebar-label{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:500!important;letter-spacing:1px;line-height:1.4;margin-bottom:12px;text-transform:uppercase}.ed-constellation .telemetry-grid{display:grid;gap:10px;grid-template-columns:1fr 1fr}.ed-constellation .telemetry-item{background:var(--bg-tertiary);border-radius:6px;padding:10px 12px}.ed-constellation .telemetry-item.full-width{grid-column:1/-1}.ed-constellation .telemetry-label{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:9px!important;font-weight:400!important;letter-spacing:.5px;line-height:1.4;margin-bottom:2px;text-transform:uppercase}.ed-constellation .telemetry-value{color:#f8f4f3!important;font-family:IBM Plex Mono,monospace;font-size:14px!important;font-weight:600!important;line-height:1.3}.ed-constellation .telemetry-value.small{font-size:11px!important;font-weight:500!important}.ed-constellation .telemetry-unit{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:400!important;margin-left:2px}.ed-constellation .orbit-info{background:var(--bg-tertiary);border-radius:6px;margin-top:12px;padding:12px}.ed-constellation .orbit-info-title{font-weight:600!important;margin-bottom:8px}.ed-constellation .orbit-detail,.ed-constellation .orbit-info-title{color:#f8f4f3!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px!important;line-height:1.4}.ed-constellation .orbit-detail{border-bottom:1px solid var(--border);display:flex;font-weight:400!important;justify-content:space-between;padding:4px 0}.ed-constellation .orbit-detail:last-child{border-bottom:none}.ed-constellation .orbit-detail-label{color:#8aa4b0!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px!important;font-weight:400!important}.ed-constellation .orbit-detail-value{color:#f8f4f3!important;font-family:IBM Plex Mono,monospace;font-size:11px!important;font-weight:500!important}.ed-constellation .track-legend{display:flex;gap:12px;margin-top:10px}.ed-constellation .legend-item{align-items:center;color:#8aa4b0!important;display:flex;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:9px!important;font-weight:400!important;gap:5px;line-height:1.4}.ed-constellation .legend-line{border-radius:1px;height:2px;width:14px}.ed-constellation .legend-line.past{background:var(--ground-track-past)}.ed-constellation .legend-line.future{background:var(--ground-track-future)}.ed-constellation .satellite-list{display:flex;flex-direction:column;gap:4px}.ed-constellation .satellite-item{align-items:center;background:var(--bg-tertiary);border:1px solid transparent;border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:all .2s ease}.ed-constellation .satellite-item:hover{border-color:var(--accent)}.ed-constellation .satellite-item.active{background:var(--accent);border-color:var(--accent)}.ed-constellation .satellite-item.active .satellite-id,.ed-constellation .satellite-item.active .satellite-meta,.ed-constellation .satellite-item.active .satellite-name{color:#042d41!important}.ed-constellation .satellite-icon{align-items:center;background:var(--bg-secondary);border-radius:4px;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.ed-constellation .satellite-item.active .satellite-icon{background:hsla(0,0%,100%,.2)}.ed-constellation .satellite-icon svg{fill:var(--accent);height:12px;width:12px}.ed-constellation .satellite-item.active .satellite-icon svg{fill:#042d41}.ed-constellation .satellite-info{flex:1;min-width:0}.ed-constellation .satellite-name{color:#f8f4f3!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:12px!important;font-weight:500!important;line-height:1.4}.ed-constellation .satellite-id{color:#8aa4b0!important}.ed-constellation .satellite-id,.ed-constellation .satellite-meta{font-family:IBM Plex Mono,monospace;font-size:9px!important;font-weight:400!important;line-height:1.4}.ed-constellation .satellite-meta{color:#22c55e!important;text-transform:uppercase}.ed-constellation .satellite-meta.upcoming{color:#f59e0b!important}.ed-constellation .globe-container{background:var(--bg-primary);overflow:hidden;position:relative}.ed-constellation #globe-canvas{display:block;height:100%;width:100%}.ed-constellation .info-panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;opacity:0;padding:16px;pointer-events:none;position:absolute;right:16px;top:16px;transform:translateY(-10px);transition:all .3s ease;width:260px;z-index:50}.ed-constellation .info-panel.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.ed-constellation .info-panel-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.ed-constellation .info-panel-title{color:#f8f4f3!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px!important;font-weight:600!important;line-height:1.3;margin:0 0 2px}.ed-constellation .info-panel-id{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:400!important;line-height:1.4;margin:0}.ed-constellation .info-panel-close{align-items:center;background:transparent;border:1px solid var(--border);border-radius:4px;color:#8aa4b0!important;cursor:pointer;display:flex;height:22px;justify-content:center;width:22px}.ed-constellation .info-panel-close:hover{background:var(--bg-tertiary)}.ed-constellation .info-panel-stats{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:12px}.ed-constellation .stat-item{display:flex;flex-direction:column;gap:2px}.ed-constellation .stat-label{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:9px!important;font-weight:400!important;line-height:1.4;text-transform:uppercase}.ed-constellation .stat-value{color:#f8f4f3!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:12px!important;font-weight:500!important;line-height:1.4}.ed-constellation .info-panel-description{border-top:1px solid var(--border);color:#f5f9f9!important;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px!important;font-weight:400!important;line-height:1.5;margin:0;padding-top:10px}.ed-constellation .hud-element{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:400!important;letter-spacing:.5px;line-height:1.4;pointer-events:none;position:absolute;text-transform:uppercase}.ed-constellation .hud-top-left{left:16px;top:16px}.ed-constellation .hud-bottom-left{bottom:16px;left:16px}.ed-constellation .hud-bottom-right{bottom:16px;right:16px;text-align:right}.ed-constellation .hud-time{color:#f8f4f3!important;font-family:IBM Plex Mono,monospace;font-size:20px!important;font-weight:300!important;letter-spacing:1px;line-height:1.2}.ed-constellation .hud-date{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:400!important;line-height:1.4;margin-top:2px;opacity:.7}.ed-constellation .loading-overlay{align-items:center;background:var(--bg-primary);display:flex;flex-direction:column;gap:12px;inset:0;justify-content:center;position:absolute;transition:opacity .5s ease;z-index:200}.ed-constellation .loading-overlay.hidden{opacity:0;pointer-events:none}.ed-constellation .loading-spinner{animation:ed-spin 1s linear infinite;border:2px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:32px;width:32px}.ed-constellation .loading-text{color:#8aa4b0!important;font-family:IBM Plex Mono,monospace;font-size:10px!important;font-weight:400!important;letter-spacing:1px;line-height:1.4;text-transform:uppercase}@keyframes ed-spin{to{transform:rotate(1turn)}}.ed-constellation.ed-boxed{height:auto;min-height:auto}.ed-constellation.ed-boxed .container{height:600px;min-height:0}.ed-constellation.ed-simple .sidebar{border-bottom:none}@media (max-width:1024px){.ed-constellation .container{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.ed-constellation .sidebar{border-right:none;border-top:1px solid var(--border);grid-row:3;max-height:200px}.ed-constellation .satellite-list{flex-direction:row;overflow-x:auto}.ed-constellation .satellite-item{flex-shrink:0;width:150px}}@media (max-width:640px){.ed-constellation .header{flex-wrap:wrap;gap:10px;padding:12px 16px}.ed-constellation .header-title{font-size:15px!important}.ed-constellation .header-controls{justify-content:space-between;width:100%}.ed-constellation .control-label{display:none}}