body{overflow:hidden}#app{width:100vw;height:100vh}canvas{display:block}#loading{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);color:#6af;font-size:1.5rem;z-index:1000}.vertical-slider-container{position:fixed;top:50px;bottom:100px;width:60px;z-index:100;display:flex;flex-direction:column;align-items:center;background:rgba(0,0,0,.6);border:1px solid rgba(100,150,255,.3);border-radius:10px;padding:15px 8px}.vertical-slider-container.left{left:20px}.vertical-slider-container.right{right:20px}.vertical-slider-label{color:#6af;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;writing-mode:vertical-lr;transform:rotate(180deg);margin-bottom:10px}.vertical-slider-value{color:#fff;font-size:.7rem;text-align:center;margin-top:10px;min-height:40px}.vertical-slider{flex:1;writing-mode:vertical-lr;direction:rtl;width:30px;accent-color:#6af;cursor:pointer}.vertical-slider::-webkit-slider-runnable-track{width:8px;background:rgba(100,150,255,.3);border-radius:4px}.vertical-slider::-webkit-slider-thumb{width:20px;height:20px}.time-markers{position:absolute;right:65px;top:50px;bottom:100px;display:flex;flex-direction:column;justify-content:space-between;padding:40px 0;pointer-events:none}.time-marker{font-size:.65rem;color:#666;text-align:right;padding-right:5px;white-space:nowrap}.time-marker.highlight{color:#6af;font-weight:700}.time-marker.current{color:#0ff}#menu-bar{position:fixed;top:0;left:0;right:0;background:rgba(0,0,0,.9);border-bottom:1px solid rgba(100,150,255,.3);z-index:200;padding-top:env(safe-area-inset-top,0)}#menu-bar .app-title{color:#6af;font-size:1rem;font-weight:700;display:flex;align-items:center;gap:8px}.unified-search-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;justify-content:center;padding-top:100px;z-index:1100}.unified-search{background:rgba(10,20,40,.98);border:1px solid rgba(100,150,255,.5);border-radius:12px;width:90%;max-width:600px;max-height:500px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6)}.unified-search-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid rgba(100,150,255,.2)}.unified-search-header .search-icon{font-size:1.2rem;color:#6af}.unified-search-input{flex:1;background:transparent;border:none;color:#fff;font-size:1.1rem;outline:none}.unified-search-input::placeholder{color:#666}.unified-search-close{background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.3);border-radius:4px;color:#888;font-size:.75rem;padding:4px 8px;cursor:pointer}.unified-search-close:hover{background:rgba(100,150,255,.25);color:#ccc}.unified-search-results{max-height:400px;overflow-y:auto;padding:8px 0}.search-result{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .15s}.search-result.selected,.search-result:hover{background:rgba(100,150,255,.15)}.search-result.selected{background:rgba(100,150,255,.25)}.result-icon{font-size:1.3rem}.result-content{flex:1;min-width:0}.result-name{color:#fff;font-size:.95rem;font-weight:500}.result-description{color:#888;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-type{background:rgba(100,150,255,.15);color:#6af;font-size:.65rem;padding:2px 6px;border-radius:4px;text-transform:uppercase}.unified-search-empty{padding:30px;text-align:center;color:#666;font-size:.9rem}.unified-search-hints{padding:20px;text-align:center}.search-hint{color:#666;font-size:.85rem;margin-bottom:16px}.search-shortcuts{display:flex;justify-content:center;gap:16px;color:#555;font-size:.75rem}.search-shortcuts kbd{background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.2);border-radius:4px;padding:2px 6px;margin-right:4px;color:#888}@media (max-width:767px){#menu-bar .app-title{font-size:.85rem}.unified-search-overlay{padding-top:60px}}#controls{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);border:1px solid rgba(100,150,255,.3);border-radius:10px;padding:15px 25px;display:flex;gap:15px;align-items:center;z-index:100}#controls button{background:rgba(100,150,255,.2);border:1px solid rgba(100,150,255,.5);color:#fff;padding:8px 16px;border-radius:5px;cursor:pointer;font-size:.9rem;transition:all .2s}#controls button:hover{background:rgba(100,150,255,.4)}#controls button.active{background:rgba(100,150,255,.6)}#controls input[type=date]{background:rgba(0,0,0,.5);border:1px solid rgba(100,150,255,.5);color:#fff;padding:8px 12px;border-radius:5px;font-size:.9rem}#controls input[type=range]{width:100px;accent-color:#6af}#controls label{color:#999;font-size:.85rem}.date-picker-container{display:flex;align-items:center;gap:8px}.date-nav-buttons{display:flex;align-items:center;gap:4px}.date-nav-btn{background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.3);color:#999;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s;min-width:32px;text-align:center}.date-nav-btn:hover:not(:disabled){background:rgba(100,150,255,.3);color:#fff;transform:scale(1.05)}.date-nav-btn:disabled{opacity:.3;cursor:not-allowed}.date-nav-btn#btn-date-today{min-width:50px;font-weight:500}.speed-presets{display:flex;align-items:center;gap:4px}.speed-btn{background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.3);color:#999;padding:5px 8px;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s}.speed-btn:hover{background:rgba(100,150,255,.3);color:#fff}.speed-btn.active{background:rgba(100,150,255,.5);border-color:rgba(100,150,255,.8);color:#fff}.date-bookmarks{display:flex;gap:4px}.bookmark-btn{background:rgba(255,200,100,.15);border:1px solid rgba(255,200,100,.3);padding:5px 8px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.bookmark-btn:hover{background:rgba(255,200,100,.3);transform:scale(1.1)}.frame-selector{display:flex;align-items:center;gap:4px}.frame-btn{background:rgba(100,255,150,.15);border:1px solid rgba(100,255,150,.3);color:#999;padding:5px 10px;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s}.frame-btn:hover{background:rgba(100,255,150,.3);color:#fff}.frame-btn.active{background:rgba(100,255,150,.5);border-color:rgba(100,255,150,.8);color:#fff}.time-scale-container{position:relative;cursor:pointer}.time-scale-display{background:rgba(255,200,100,.2);border:1px solid rgba(255,200,100,.5);color:#fc8;padding:8px 14px;border-radius:5px;font-size:.85rem;font-weight:700;display:flex;align-items:center;gap:6px;transition:all .2s}.time-scale-display:hover{background:rgba(255,200,100,.3)}.time-scale-display:after{content:"▼";font-size:.6rem;opacity:.7}.time-scale-dropdown{display:none;position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:rgba(0,10,30,.98);border:1px solid rgba(255,200,100,.4);border-radius:8px;padding:6px 0;margin-bottom:5px;min-width:140px;box-shadow:0 -5px 20px rgba(0,0,0,.5);z-index:200}.time-scale-container:hover .time-scale-dropdown{display:block}.time-scale-option{padding:8px 14px;color:#ccc;font-size:.85rem;cursor:pointer;transition:all .15s}.time-scale-option:hover{background:rgba(255,200,100,.2);color:#fff}.time-scale-option.active{background:rgba(255,200,100,.3);color:#fc8;font-weight:700}#btn-play-pause{min-width:50px;font-size:1.1rem}#btn-play-pause.playing{background:rgba(100,255,100,.3);border-color:rgba(100,255,100,.6)}.click-hint{bottom:85px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.6);padding:6px 14px;border-radius:20px;color:#888;z-index:90;pointer-events:none}.click-hint,.draggable-panel{position:fixed;font-size:.75rem}.draggable-panel{background:rgba(0,0,0,.92);border:1px solid rgba(100,150,255,.3);border-radius:10px;color:#fff;z-index:100;width:280px;max-width:calc(100vw - 20px);transition:box-shadow .2s,border-color .2s;overflow:hidden}.draggable-panel.dragging{box-shadow:0 8px 32px rgba(0,0,0,.5);border-color:rgba(100,150,255,.5)}.draggable-panel.docked-left,.draggable-panel.docked-right{border-color:rgba(100,150,255,.4)}.draggable-panel-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:rgba(100,150,255,.15);border-bottom:1px solid rgba(100,150,255,.3);user-select:none;cursor:grab}.draggable-panel-header:hover{background:rgba(100,150,255,.2)}.draggable-panel-header h3{color:#6af;font-size:.85rem;margin:0;display:flex;align-items:center;gap:6px}.drag-handle-icon{color:#555;opacity:.5;flex-shrink:0;transition:opacity .2s}.draggable-panel-header:hover .drag-handle-icon{opacity:.8}.panel-header-controls{display:flex;align-items:center;gap:4px;margin-left:auto}.panel-reset-btn{background:transparent;border:none;color:#666;font-size:.9rem;padding:2px 6px;cursor:pointer;border-radius:4px;transition:all .15s;line-height:1}.panel-reset-btn:hover{background:rgba(100,150,255,.2);color:#6af}.panel-toggle-btn{background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.3);color:#6af;padding:3px 6px;cursor:pointer;border-radius:4px;transition:all .15s;display:flex;align-items:center;justify-content:center}.panel-toggle-btn:hover{background:rgba(100,150,255,.3);border-color:rgba(100,150,255,.5)}.draggable-panel.collapsed .panel-toggle-btn{background:rgba(100,150,255,.25)}.panel-close-btn{background:transparent;border:none;color:#888;font-size:1rem;padding:2px 6px;cursor:pointer;border-radius:4px;transition:all .15s;line-height:1}.panel-close-btn:hover{background:rgba(255,100,100,.3);color:#fff}.draggable-panel .panel-content{padding:12px;max-height:calc(100vh - 200px);transition:max-height .3s ease,padding .3s ease;display:flex;flex-direction:column}.draggable-panel.collapsed .panel-content{max-height:0;padding-top:0;padding-bottom:0;overflow:hidden}.draggable-panel.collapsed{width:auto!important;min-width:auto!important}.draggable-panel.collapsed .draggable-panel-header{padding:6px 10px;border-bottom:none;border-radius:10px}.draggable-panel.collapsed .draggable-panel-header h3{font-size:.8rem}.filter-chips{display:flex;gap:4px;margin-bottom:10px;flex-wrap:wrap}.filter-chip{display:flex;align-items:center;gap:4px;background:rgba(50,70,100,.3);border:1px solid rgba(100,150,255,.2);border-radius:12px;padding:4px 8px;color:#888;font-size:.7rem;cursor:pointer;transition:all .2s}.filter-chip:hover{background:rgba(100,150,255,.2);color:#aaa}.filter-chip.active{background:rgba(100,150,255,.3);border-color:rgba(100,150,255,.5);color:#6af}.filter-icon{font-size:.8rem}.filter-label{white-space:nowrap}.panel-content.compact .filter-chip{padding:3px 6px}.panel-content.compact .filter-label{display:none}.panel-keyboard-hint{margin-top:8px;padding-top:8px;border-top:1px solid rgba(100,150,255,.1);text-align:center;color:#555;font-size:.65rem}.panel-keyboard-hint kbd{background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.2);border-radius:3px;padding:1px 5px;font-family:inherit;color:#888}#visibility-panel,#visibility-toggle{display:none}.visibility-section{margin-bottom:12px}.visibility-section-title{color:#888;font-size:.7rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.visibility-item{display:flex;align-items:center;gap:8px;margin:4px 0;cursor:pointer;position:relative}.visibility-item:hover{background:rgba(100,150,255,.1);margin-left:-4px;margin-right:-4px;padding-left:4px;padding-right:4px;border-radius:4px}.visibility-item input[type=checkbox]{width:14px;height:14px;accent-color:#6af;cursor:pointer}.visibility-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.visibility-label{flex:1}.focus-btn{background:transparent;border:none;cursor:pointer;font-size:.85rem;opacity:.4;padding:2px 4px;border-radius:3px;transition:all .2s}.focus-btn:hover{opacity:1;background:rgba(100,150,255,.3)}.zoom-btn{background:transparent;border:none;cursor:pointer;font-size:.85rem;opacity:.4;padding:2px 4px;border-radius:3px;transition:all .2s}.zoom-btn:hover{opacity:1;background:rgba(100,255,150,.3)}.frame-ref-btn{background:transparent;border:none;cursor:pointer;font-size:.75rem;opacity:.4;padding:2px 4px;border-radius:3px;transition:all .2s}.frame-ref-btn:hover{opacity:1;background:rgba(255,200,100,.3)}.objects-browser-header{background:rgba(0,0,0,.9);padding:0 0 12px;margin-bottom:12px;border-bottom:1px solid rgba(100,150,255,.2);flex-shrink:0}#objects-search-container{margin-top:12px;margin-bottom:0}.objects-search-input{width:100%;padding:8px 12px;margin-bottom:0;background:rgba(20,30,50,.8);border:1px solid rgba(100,150,255,.3);border-radius:6px;color:#fff;font-size:.85rem;outline:none;transition:border-color .2s}.objects-search-input:focus{border-color:rgba(100,150,255,.6)}.objects-search-input::placeholder{color:#888}#objects-container{overflow-y:auto;overflow-x:hidden;max-height:calc(100vh - 200px - 160px);flex:1;min-height:0;position:relative;padding-right:8px}.objects-container{margin-top:8px;position:relative}.visibility-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.category-toggle-btn{background:rgba(100,150,255,.2);border:1px solid rgba(100,150,255,.3);border-radius:4px;color:#6af;font-size:.7rem;padding:4px 8px;cursor:pointer;transition:all .2s}.category-toggle-btn:hover{background:rgba(100,150,255,.3);border-color:rgba(100,150,255,.5)}.visibility-items-list{margin-left:4px}.info-btn{background:transparent;border:none;cursor:pointer;opacity:.4;transition:all .2s;margin-left:auto;padding:2px;display:flex;align-items:center;justify-content:center}.info-btn svg{width:14px;height:14px;stroke:#888;stroke-width:2}.info-btn:hover{opacity:1}.info-btn:hover svg{stroke:#6af}.ellipsis-btn{background:transparent;border:none;color:#888;font-size:1.2rem;line-height:1;padding:2px 6px;cursor:pointer;opacity:.5;transition:all .2s}.ellipsis-btn:hover{opacity:1;color:#6af;background:rgba(100,150,255,.1);border-radius:3px}.ellipsis-menu{background:rgba(0,20,40,.98);border:1px solid rgba(100,150,255,.5);border-radius:6px;padding:4px 0;min-width:180px;box-shadow:0 8px 24px rgba(0,0,0,.6);animation:menuFadeIn .15s ease-out}@keyframes menuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-portal{pointer-events:auto}.ellipsis-menu-item{display:block;width:100%;padding:8px 16px;background:transparent;border:none;color:#fff;font-size:.85rem;text-align:left;cursor:pointer;transition:background .2s}.ellipsis-menu-item:hover{background:rgba(100,150,255,.2)}.ellipsis-menu-item:first-child{border-top-left-radius:6px;border-top-right-radius:6px}.ellipsis-menu-item:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}#current-frame-indicator{display:none;background:rgba(255,200,100,.2);border:1px solid rgba(255,200,100,.5);color:#fc8;padding:4px 10px;border-radius:4px;font-size:.75rem;margin-left:8px;font-weight:700}.visibility-section.collapsed .constellation-list{display:none}.visibility-section.collapsed #constellation-toggle{transform:rotate(-90deg)}#moon-phase-section{margin-top:16px;padding-top:16px;border-top:1px solid rgba(100,150,255,.2)}#selected-object{position:fixed;bottom:120px;left:100px;background:rgb(0,20,40);border:1px solid rgba(100,150,255,.5);border-radius:10px;padding:18px;color:#fff;min-width:280px;max-width:340px;max-height:calc(100vh - 250px);overflow-y:auto;z-index:100;display:none;transition:transform .3s ease,opacity .3s ease;box-shadow:0 8px 32px rgba(0,0,0,.6)}#selected-object.visible{display:block}#selected-object h2{font-size:1.2rem;margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid rgba(100,150,255,.3);display:flex;align-items:center;gap:8px}#selected-object .close-btn{margin-left:auto;background:transparent;border:none;color:#666;font-size:1.2rem;cursor:pointer;padding:0 4px}#selected-object .close-btn:hover{color:#fff}#selected-object .object-info{font-size:.85rem;line-height:1.6}#selected-object .info-row{display:flex;justify-content:space-between;margin:6px 0}#selected-object .info-label{color:#888}#selected-object .info-value{color:#fff;font-weight:500}#selected-object .object-description{margin-top:12px;padding-top:12px;border-top:1px solid rgba(100,150,255,.2);color:#aaa;font-size:.8rem;line-height:1.5}#selected-object .focus-btn-large{margin-top:12px;width:100%;padding:10px;background:rgba(100,150,255,.2);border:1px solid rgba(100,150,255,.5);color:#fff;border-radius:5px;cursor:pointer;font-size:.85rem}#selected-object .focus-btn-large:hover{background:rgba(100,150,255,.4)}#selected-object .info-section-title{color:#6af;font-size:.75rem;font-weight:700;margin:12px 0 6px;padding-top:8px;border-top:1px solid rgba(100,150,255,.2)}#selected-object .info-row.sub{margin:2px 0}#selected-object .info-value.dim{color:#888;font-size:.75rem}#selected-object .facts-list{list-style:none;padding:0;margin:0}#selected-object .facts-list li{position:relative;padding-left:18px;margin:6px 0;font-size:.8rem;color:#afc;line-height:1.4}#selected-object .facts-list li:before{content:"•";position:absolute;left:5px;color:#6af}#selected-object .wiki-link{display:block;margin-top:12px;padding:8px 12px;background:rgba(100,150,255,.1);border:1px solid rgba(100,150,255,.3);border-radius:5px;color:#6af;text-decoration:none;font-size:.85rem;text-align:center;transition:all .2s}#selected-object .wiki-link:hover{background:rgba(100,150,255,.25);border-color:rgba(100,150,255,.5)}.approach-item{display:flex;gap:8px;margin:4px 0;padding:4px 6px;align-items:baseline;cursor:pointer;border-radius:4px;transition:all .2s}.approach-item:hover{background:rgba(0,255,255,.15)}.approach-planet{color:#999;min-width:55px}.approach-value{color:#0ff;font-weight:700;min-width:70px}.approach-date{color:#666;font-size:.75rem}.approach-item:hover .approach-date{color:#999}.approach-goto{font-size:.7rem;color:#6af;opacity:0;transition:opacity .2s}.approach-item:hover .approach-goto{opacity:1}.browser-toggle{display:flex;gap:4px;margin-bottom:12px}.browser-toggle-btn{flex:1;padding:6px 12px;background:rgba(50,70,100,.3);border:1px solid rgba(100,150,255,.2);border-radius:4px;color:#888;font-size:.75rem;cursor:pointer;transition:all .2s}.browser-toggle-btn:hover{background:rgba(100,150,255,.2);color:#aaa}.browser-toggle-btn.active{background:rgba(100,150,255,.3);border-color:rgba(100,150,255,.5);color:#6af}.hierarchical-browser{padding:0}.hierarchy-section{margin-bottom:8px}.hierarchy-section-header{display:flex;align-items:center;gap:6px;padding:8px 4px;background:rgba(60,80,120,.2);border-radius:6px;margin-bottom:4px;font-size:.85rem;color:#8af;font-weight:500}.hierarchy-section-header:hover{background:rgba(60,80,120,.3)}.section-toggle{font-size:.7rem;color:#6af;width:12px}.section-icon{font-size:1rem}.section-name{flex:1}.hierarchy-section-content{padding-left:8px}.hierarchy-group{margin-bottom:6px}.hierarchy-group.single-item{margin-bottom:2px}.hierarchy-group-header-inline{display:flex;align-items:center;gap:4px;padding:2px 4px}.hierarchy-group-header-inline .group-icon{font-size:.9rem;margin-right:2px;opacity:.7}.hierarchy-group-header-inline .visibility-item{flex:1;margin:0}.hierarchy-group-header{display:flex;align-items:center;gap:4px;padding:6px 4px;font-size:.8rem;color:#aaa;border-radius:4px}.hierarchy-group-header:hover{background:rgba(100,150,255,.1)}.group-toggle{font-size:.65rem;color:#888;width:10px}.group-icon{font-size:.9rem;margin-right:2px}.group-name{flex:1}.group-count{color:#666;font-size:.7rem;margin-right:8px}.hierarchy-group-content{padding-left:12px}.planet-with-moons{margin-bottom:2px}.planet-row{display:flex;align-items:center}.planet-expand-toggle{font-size:.65rem;color:#888;margin-right:4px;padding:2px}.planet-expand-toggle:hover{color:#6af}.moons-list{margin-left:20px;border-left:1px solid rgba(100,150,255,.15);padding-left:8px}.hierarchical-browser .visibility-item{margin:2px 0;padding:4px;font-size:.8rem}.hierarchical-browser .visibility-label{font-size:.8rem}.hierarchical-browser .visibility-color{width:8px;height:8px}.moons-list .visibility-item{font-size:.75rem;padding:2px 4px}.moons-list .visibility-color{width:6px;height:6px}#tours-menu-btn{background:linear-gradient(135deg,rgba(255,100,150,.3),rgba(150,100,255,.3));border:1px solid rgba(255,150,200,.5);color:#fff;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem;display:flex;align-items:center;gap:6px;transition:all .3s}#tours-menu-btn:hover{background:linear-gradient(135deg,rgba(255,100,150,.5),rgba(150,100,255,.5));transform:scale(1.05)}#tours-dropdown{display:none;position:fixed;top:60px;left:50%;transform:translateX(-50%);background:rgba(0,10,30,.98);border:2px solid rgba(150,100,255,.5);border-radius:12px;padding:20px;z-index:200;max-width:800px;width:90vw;max-height:80vh;overflow-y:auto;box-shadow:0 10px 50px rgba(150,100,255,.3)}#tours-dropdown.visible{display:block}#tours-dropdown h2{color:#fff;font-size:1.3rem;margin:0 0 15px;padding-bottom:10px;border-bottom:1px solid rgba(150,100,255,.3);display:flex;align-items:center;gap:10px}#tours-dropdown .tours-close{margin-left:auto;background:transparent;border:none;color:#666;font-size:1.5rem;cursor:pointer;line-height:1}#tours-dropdown .tours-close:hover{color:#fff}.tour-category{margin-bottom:20px}.tour-category-title{color:#a6f;font-size:.9rem;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:8px}.tour-category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.tour-card{background:rgba(100,80,150,.15);border:1px solid rgba(150,100,255,.3);border-radius:8px;padding:12px;cursor:pointer;transition:all .2s}.tour-card:hover{background:rgba(100,80,150,.3);border-color:rgba(150,100,255,.6);transform:translateY(-2px)}.tour-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.tour-card-icon{font-size:1.3rem}.tour-card-name{color:#fff;font-weight:700;font-size:.85rem}.tour-card-desc{color:#aaa;font-size:.75rem;line-height:1.4}#tour-hud{display:none;position:fixed;bottom:100px;left:50%;transform:translateX(-50%);background:rgba(0,10,30,.95);border:2px solid rgba(150,100,255,.5);border-radius:12px;padding:15px 25px;z-index:150;min-width:400px;max-width:600px}#tour-hud.visible{display:block}#tour-hud-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}#tour-hud-icon{font-size:1.5rem}#tour-hud-name{color:#fff;font-size:1.1rem;font-weight:700;flex:1}#tour-hud-close{background:transparent;border:none;color:#666;font-size:1.3rem;cursor:pointer}#tour-hud-close:hover{color:#f66}#tour-hud-desc{color:#aaa;font-size:.85rem;margin-bottom:12px}#tour-hud-highlights{list-style:none;padding:0;margin:0}#tour-hud-highlights li{color:#afc;font-size:.8rem;padding:4px 0 4px 20px;position:relative}#tour-hud-highlights li:before{content:"✦";position:absolute;left:0;color:#a6f}#vr-help-btn{background:rgba(150,100,255,.2);border:1px solid rgba(150,100,255,.5)}#vr-help-btn:hover{background:rgba(150,100,255,.4)}#vr-controls-modal{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.85);z-index:2000;justify-content:center;align-items:center}#vr-controls-modal.visible{display:flex}.vr-modal-content{background:rgba(0,20,40,.95);border:2px solid rgba(150,100,255,.5);border-radius:15px;padding:30px 40px;max-width:600px;color:#fff;box-shadow:0 0 50px rgba(150,100,255,.3)}.vr-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid rgba(150,100,255,.3)}.vr-modal-header h2{color:#a6f;font-size:1.5rem;margin:0}.vr-modal-close{background:transparent;border:none;color:#666;font-size:2rem;cursor:pointer;line-height:1;padding:0}.vr-modal-close:hover{color:#fff}.vr-controller-section{margin-bottom:25px}.vr-controller-title{font-size:1.1rem;font-weight:700;margin-bottom:12px;padding:8px 12px;border-radius:6px}.vr-controller-title.left{background:rgba(0,255,0,.15);color:#8f8}.vr-controller-title.right{background:rgba(0,150,255,.15);color:#8cf}.vr-control-row{display:flex;justify-content:space-between;padding:6px 12px;font-size:.95rem}.vr-control-row:nth-child(2n){background:rgba(255,255,255,.03)}.vr-control-input{color:#ff0}.vr-control-action{color:#ccc}.vr-tips{margin-top:20px;padding:15px;background:rgba(0,255,136,.1);border-radius:8px;border-left:3px solid #0f8}.vr-tips-title{color:#0f8;font-weight:700;margin-bottom:8px}.vr-tips-list{color:#afc;font-size:.9rem;line-height:1.6}.apollo-hud{position:fixed;left:20px;top:50%;transform:translateY(-50%);width:260px;background:rgba(0,20,50,.95);border:2px solid rgba(68,136,255,.6);border-radius:12px;color:#fff;font-size:.8rem;z-index:150;box-shadow:0 0 30px rgba(68,136,255,.3)}.apollo-hud.hidden{display:none}.apollo-hud-header{display:flex;align-items:center;gap:8px;padding:12px 15px;background:linear-gradient(90deg,rgba(68,136,255,.3),rgba(68,136,255,.1));border-bottom:1px solid rgba(68,136,255,.4);border-radius:10px 10px 0 0}.apollo-hud-header .mission-icon{font-size:1.3rem}.apollo-hud-header .mission-name{font-size:1.1rem;font-weight:700;color:#4af;flex:1}.apollo-close-btn{background:transparent;border:none;color:#666;font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.apollo-close-btn:hover{color:#ff6666}.apollo-hud-phase{padding:8px 15px;background:rgba(255,136,0,.2);color:#ff8800;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:1px;font-size:.75rem}.apollo-hud-met{display:flex;justify-content:center;align-items:baseline;gap:10px;padding:12px 15px;background:rgba(0,0,0,.3)}.apollo-hud-met .met-label{color:#888;font-size:.7rem;text-transform:uppercase}.apollo-hud-met .met-value{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;color:#0f0;text-shadow:0 0 10px rgba(0,255,0,.5)}.apollo-hud-distances{padding:10px 15px;border-bottom:1px solid rgba(68,136,255,.2)}.apollo-hud-distances .distance-row{display:flex;justify-content:space-between;padding:4px 0}.apollo-hud-distances .dist-label{color:#888}.apollo-hud-distances .dist-value{color:#fff;font-family:Courier New,monospace}.apollo-progress-container{height:6px;background:rgba(0,0,0,.5);margin:0 15px;border-radius:3px;overflow:hidden}.apollo-progress-bar{height:100%;width:0;background:linear-gradient(90deg,#4488ff,#00ff88);transition:width .3s ease}.apollo-milestones{padding:10px 15px;max-height:200px;overflow-y:auto}.apollo-milestone{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:4px 6px;margin:2px -6px}.apollo-milestone:hover{background:rgba(68,136,255,.2)}.apollo-milestone.completed{opacity:.6}.apollo-milestone.current{background:rgba(0,255,136,.2);border-left:3px solid #0f8}.apollo-milestone .milestone-icon{font-size:1rem}.apollo-milestone .milestone-name{flex:1;font-size:.75rem}.apollo-milestone .milestone-time{font-family:Courier New,monospace;font-size:.7rem;color:#888}.apollo-controls{display:flex;justify-content:center;gap:6px;padding:12px 15px;border-top:1px solid rgba(68,136,255,.2)}.apollo-speed-btn{background:rgba(68,136,255,.2);border:1px solid rgba(68,136,255,.4);color:#888;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s}.apollo-speed-btn:hover{background:rgba(68,136,255,.4);color:#fff}.apollo-speed-btn.active{background:rgba(68,136,255,.6);border-color:rgba(68,136,255,.8);color:#fff}.apollo-play-btn{background:rgba(0,255,136,.2);border:1px solid rgba(0,255,136,.4);color:#0f8;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s}.apollo-play-btn:hover{background:rgba(0,255,136,.4)}.apollo-start-btn{background:rgba(68,136,255,.2);border:1px solid rgba(68,136,255,.4);color:#4af;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:.7rem;transition:all .2s}.apollo-start-btn:hover{background:rgba(68,136,255,.4);color:#fff}#about-modal{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.85);z-index:2000;justify-content:center;align-items:center;overflow-y:auto}#about-modal.visible{display:flex}.about-modal-content{background:rgba(0,20,40,.98);border:2px solid rgba(100,150,255,.5);border-radius:15px;max-width:700px;max-height:90vh;overflow-y:auto;color:#fff;box-shadow:0 0 50px rgba(100,150,255,.3);margin:20px}.about-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 30px;border-bottom:1px solid rgba(100,150,255,.3);position:sticky;top:0;background:rgba(0,20,40,.98);z-index:1}.about-modal-header h2{color:#6af;font-size:1.5rem;margin:0}.about-modal-close{background:transparent;border:none;color:#666;font-size:2rem;cursor:pointer;line-height:1;padding:0}.about-modal-close:hover{color:#fff}.about-modal-body{padding:25px 30px}.about-tagline{font-size:1.1rem;color:#aaa;text-align:center;font-style:italic}.about-section,.about-tagline{margin-bottom:25px}.about-section h3{color:#6af;font-size:1rem;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(100,150,255,.2)}.about-section p{color:#ccc;line-height:1.6;margin:0}.about-section ul{list-style:none;padding:0;margin:0}.about-section li{color:#ccc;padding:6px 0 6px 20px;position:relative;line-height:1.5}.about-section li:before{content:"-";position:absolute;left:5px;color:#6af}.about-section li strong{color:#fff}.about-footer{text-align:center;padding-top:20px;border-top:1px solid rgba(100,150,255,.2)}.about-footer p{margin:5px 0;font-size:.85rem;color:#888}.eclipse-browser-header{background:linear-gradient(90deg,rgba(255,200,100,.15),rgba(255,100,50,.1))}.eclipse-hud{display:none!important}.eclipse-hud-desc{display:none}#earth-view-modal{overflow-y:auto}.earth-view-content{background:rgba(5,20,45,.98);border-radius:16px;max-width:480px;width:92%;box-shadow:0 0 60px rgba(100,200,150,.25)}.earth-view-header{padding:18px 24px}.earth-view-header h2{color:#7fdbca;font-size:1.3rem;font-weight:600}.earth-view-close{font-size:1.8rem;padding:0;transition:color .2s}.earth-view-body{padding:20px 24px}.earth-view-description{color:#a8c0c8;margin:0 0 20px}.earth-view-section label{color:#7fdbca;font-size:.85rem;font-weight:600}.earth-view-select{background:rgba(20,40,60,.8);border-radius:8px;padding:12px 14px;outline:none;transition:all .2s}.earth-view-select:focus,.earth-view-select:hover{border-color:rgba(100,200,150,.7);background:rgba(20,50,70,.9)}.earth-view-select option{background:#102030;color:#fff}.earth-view-coords{align-items:flex-end}.earth-view-coord-field{flex-direction:column;gap:4px;flex:1}.earth-view-coord-field span{font-size:.75rem}.earth-view-coord-field input{background:rgba(20,40,60,.8);border:1px solid rgba(100,200,150,.3);border-radius:6px;padding:10px 12px;width:100%;outline:none}.earth-view-coord-field input:focus{border-color:rgba(100,200,150,.6)}.earth-view-btn-small{color:#7fdbca;padding:10px 16px;border-radius:6px;font-weight:600}.earth-view-btn{width:100%;font-size:.95rem;transition:all .2s}.earth-view-btn-secondary{color:#88b4ff}.earth-view-btn-secondary:hover{background:rgba(100,150,255,.3);color:#fff}.earth-view-btn-secondary:disabled{opacity:.5}.earth-view-btn-primary{background:linear-gradient(135deg,rgba(100,200,150,.4),rgba(50,150,120,.4));border:1px solid rgba(100,200,150,.6);margin-top:20px}.earth-view-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,rgba(100,200,150,.6),rgba(50,150,120,.6))}.earth-view-btn-primary:disabled{opacity:.4}.earth-view-selected{border-radius:10px;padding:14px 16px;margin-bottom:18px}.earth-view-selected-name{color:#7fdbca;font-size:1rem}.earth-view-selected-coords{font-size:.82rem}.earth-view-sun-status{margin-top:10px;padding:6px 10px;border-radius:6px;font-size:.82rem}.sun-status-day{color:#ffd866}.earth-view-direction-btn{background:rgba(60,80,100,.3);color:#8ab4d4;padding:10px;font-size:.85rem;font-weight:500}.earth-view-direction-btn:hover{background:rgba(60,80,100,.5)}.earth-view-direction-btn.active{background:rgba(100,200,150,.3);border-color:rgba(100,200,150,.6);color:#7fdbca}#earth-view-modal{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.9);z-index:2000;justify-content:center;align-items:center}#earth-view-modal.visible{display:flex}.earth-view-content{background:rgba(0,15,35,.98);border:2px solid rgba(100,200,150,.5);border-radius:15px;max-width:800px;max-height:90vh;overflow-y:auto;color:#fff;box-shadow:0 0 60px rgba(100,200,150,.3);margin:20px}.earth-view-header{display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-bottom:1px solid rgba(100,200,150,.3);background:linear-gradient(90deg,rgba(100,200,150,.15),rgba(100,150,255,.15))}.earth-view-header h2{color:#8fc;font-size:1.4rem;margin:0;display:flex;align-items:center;gap:10px}.earth-view-close{background:transparent;border:none;color:#666;font-size:2rem;cursor:pointer;line-height:1}.earth-view-close:hover{color:#fff}.earth-view-body{padding:20px 25px}.earth-view-instructions{background:rgba(100,200,150,.1);border:1px solid rgba(100,200,150,.3);border-radius:8px;padding:15px;margin-bottom:20px}.earth-view-instructions p{color:#afc;margin:0;font-size:.9rem;line-height:1.5}.earth-view-instructions strong{color:#8fc}.location-display{background:rgba(0,0,0,.3);border:1px solid rgba(100,200,150,.4);border-radius:8px;padding:15px;margin-bottom:20px}.location-display h3{color:#8fc;font-size:1rem;margin:0 0 10px;display:flex;align-items:center;gap:8px}.location-coords{color:#fff;font-family:Courier New,monospace;font-size:1.1rem;margin-bottom:10px}.location-name{color:#aaa;font-size:.9rem}.quick-locations{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.quick-location-btn{background:rgba(100,200,150,.15);border:1px solid rgba(100,200,150,.3);color:#8fc;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.quick-location-btn:hover{background:rgba(100,200,150,.3);color:#fff}.sky-conditions{background:rgba(0,0,0,.3);border-radius:8px;padding:15px;margin-bottom:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.sky-condition-item{text-align:center}.sky-condition-label{color:#888;font-size:.75rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.sky-condition-value{color:#fff;font-size:1.1rem;font-weight:700}.sky-condition-value.day{color:#ffcc00}.sky-condition-value.night{color:#66aaff}.sky-condition-value.twilight{color:#ff8866}.visibility-table{width:100%;border-collapse:collapse;margin-bottom:20px}.visibility-table th{background:rgba(100,200,150,.2);color:#8fc;padding:10px 12px;text-align:left;font-size:.8rem;text-transform:uppercase;letter-spacing:1px}.visibility-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.1);font-size:.9rem}.visibility-table tr:hover{background:rgba(100,200,150,.1)}.visibility-table .object-name{color:#fff;font-weight:500}.visibility-table .star-rating{color:#ffcc00;letter-spacing:2px}.visibility-table .visibility-note{color:#aaa;font-size:.8rem}.visibility-table .time-cell{font-family:Courier New,monospace;color:#6af}.visibility-table .below-horizon{color:#666;font-style:italic}.recommendations-section{background:rgba(100,150,255,.1);border:1px solid rgba(100,150,255,.3);border-radius:8px;padding:15px}.recommendations-section h3{color:#6af;font-size:1rem;margin:0 0 12px;display:flex;align-items:center;gap:8px}.recommendation-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;margin:4px 0;background:rgba(0,0,0,.2);border-radius:4px;cursor:pointer;transition:all .2s}.recommendation-item:hover{background:rgba(100,150,255,.2)}.recommendation-location{color:#fff;font-weight:500}.recommendation-reason{color:#aaa;font-size:.8rem}.recommendation-score{color:#ffcc00;font-weight:700}.sky-dome-container{display:flex;flex-direction:column;align-items:center;margin-bottom:20px}#sky-dome-canvas{background:radial-gradient(circle,#000022 0,#000011 50%,#000000 100%);border-radius:50%;border:2px solid rgba(100,200,150,.4)}.sky-dome-legend{display:flex;gap:20px;margin-top:10px;font-size:.75rem;color:#666}.surface-view-hud{position:fixed;top:0;left:0;right:0;z-index:1500;pointer-events:none}.surface-hud-header{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;background:linear-gradient(180deg,rgba(0,0,0,.8),rgba(0,0,0,.4) 70%,transparent);pointer-events:auto}.surface-hud-exit{background:rgba(255,80,80,.3);border:1px solid rgba(255,80,80,.6);color:#ff8888;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:700;transition:all .2s}.surface-hud-exit:hover{background:rgba(255,80,80,.5);color:#fff}.surface-hud-location{display:flex;align-items:center;gap:8px;color:#8fc;font-size:1rem;background:rgba(100,200,150,.15);padding:8px 16px;border-radius:6px;border:1px solid rgba(100,200,150,.3)}.surface-hud-info{position:fixed;bottom:80px;left:20px;display:flex;flex-direction:column;gap:8px;background:rgba(0,0,0,.7);padding:15px;border-radius:8px;border:1px solid rgba(100,200,150,.3);pointer-events:auto}.surface-hud-item{display:flex;justify-content:space-between;gap:20px;font-size:.85rem}.surface-hud-item span:first-child{color:#888}.surface-hud-item span:last-child{color:#fff;font-family:Courier New,monospace}.surface-hud-help{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.7);color:#888;padding:10px 20px;border-radius:20px;font-size:.8rem;pointer-events:none}#surface-location-modal{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.85);z-index:2000;justify-content:center;align-items:center}#surface-location-modal.visible{display:flex}.surface-location-content{background:rgba(0,15,35,.98);border:2px solid rgba(100,200,150,.5);border-radius:15px;max-width:500px;width:90%;color:#fff;box-shadow:0 0 60px rgba(100,200,150,.3)}.surface-location-header{display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-bottom:1px solid rgba(100,200,150,.3)}.surface-location-header h2{color:#8fc;font-size:1.2rem;margin:0}.surface-location-close{background:transparent;border:none;color:#666;font-size:1.8rem;cursor:pointer;line-height:1}.surface-location-close:hover{color:#fff}.surface-location-body{padding:20px 25px}.surface-location-section{margin-bottom:20px}.surface-location-section h3{color:#8fc;font-size:.9rem;margin:0 0 12px;text-transform:uppercase;letter-spacing:1px}.surface-location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.surface-location-btn{background:rgba(100,200,150,.1);border:1px solid rgba(100,200,150,.3);color:#afc;padding:12px 15px;border-radius:6px;cursor:pointer;text-align:left;transition:all .2s}.surface-location-btn:hover{background:rgba(100,200,150,.25);color:#fff;border-color:rgba(100,200,150,.5)}.surface-location-btn .loc-name{display:block;font-weight:700;margin-bottom:4px}.surface-location-btn .loc-coords{font-size:.75rem;color:#888}.surface-geolocation-btn{width:100%;background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.4);color:#6af;padding:15px;border-radius:8px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s}.surface-geolocation-btn:hover{background:rgba(100,150,255,.3);color:#fff}.earth-view-section{margin-bottom:18px}.earth-view-section label{display:block;color:#8fc;font-size:.9rem;margin-bottom:8px;font-weight:500}.earth-view-description{color:#aaa;font-size:.9rem;margin-bottom:20px;line-height:1.5}.earth-view-select{width:100%;background:rgba(0,20,40,.8);border:1px solid rgba(100,200,150,.4);color:#fff;padding:10px 12px;border-radius:6px;font-size:.95rem;cursor:pointer}.earth-view-select:focus{outline:none;border-color:rgba(100,200,150,.7);box-shadow:0 0 10px rgba(100,200,150,.3)}.earth-view-coords{display:flex;gap:10px;align-items:center}.earth-view-coord-field{display:flex;align-items:center;gap:6px}.earth-view-coord-field span{color:#888;font-size:.85rem}.earth-view-coord-field input{width:80px;background:rgba(0,20,40,.8);border:1px solid rgba(100,200,150,.4);color:#fff;padding:8px 10px;border-radius:4px;font-size:.9rem;font-family:SF Mono,Consolas,monospace}.earth-view-coord-field input:focus{outline:none;border-color:rgba(100,200,150,.7)}.earth-view-unit{color:#666;font-size:.85rem}.earth-view-btn{padding:12px 20px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.earth-view-btn-small{background:rgba(100,200,150,.2);border:1px solid rgba(100,200,150,.4);color:#8fc;padding:8px 14px;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s}.earth-view-btn-small:hover{background:rgba(100,200,150,.35);color:#fff}.earth-view-btn-primary{width:100%;background:linear-gradient(135deg,rgba(100,200,150,.3),rgba(80,180,130,.4));border:1px solid rgba(100,200,150,.5);color:#fff;margin-top:15px}.earth-view-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,rgba(100,200,150,.5),rgba(80,180,130,.6));box-shadow:0 0 20px rgba(100,200,150,.3)}.earth-view-btn-primary:disabled{opacity:.5;cursor:not-allowed}.earth-view-btn-secondary{width:100%;background:rgba(100,150,255,.15);border:1px solid rgba(100,150,255,.4);color:#6af}.earth-view-btn-secondary:hover:not(:disabled){background:rgba(100,150,255,.3);color:#fff}.earth-view-btn-secondary:disabled{opacity:.6;cursor:not-allowed}.earth-view-selected{background:rgba(100,200,150,.1);border:1px solid rgba(100,200,150,.3);border-radius:8px;padding:14px;margin:15px 0}.earth-view-selected-name{color:#8fc;font-weight:600;font-size:1.05rem;margin-bottom:4px}.earth-view-selected-coords{color:#888;font-size:.85rem;font-family:SF Mono,Consolas,monospace}.earth-view-sun-status{margin-top:8px;padding:4px 10px;border-radius:12px;font-size:.8rem;display:inline-block}.sun-status-day{background:rgba(255,200,50,.2);color:#ffd666;border:1px solid rgba(255,200,50,.3)}.sun-status-civil-twilight{background:rgba(255,150,100,.2);color:#ffb088;border:1px solid rgba(255,150,100,.3)}.sun-status-nautical-twilight{background:rgba(150,100,200,.2);color:#c8a8ff;border:1px solid rgba(150,100,200,.3)}.sun-status-astronomical-twilight{background:rgba(80,80,150,.2);color:#9090cc;border:1px solid rgba(80,80,150,.3)}.sun-status-night{background:rgba(40,60,100,.2);color:#6080b0;border:1px solid rgba(40,60,100,.3)}.earth-view-mode-tabs{display:flex;gap:4px;margin-bottom:12px;background:rgba(0,0,0,.3);padding:4px;border-radius:8px}.earth-view-mode-tab{flex:1;background:transparent;border:none;color:#888;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.earth-view-mode-tab:hover{color:#aaa;background:rgba(255,255,255,.05)}.earth-view-mode-tab.active{background:rgba(100,200,150,.2);color:#8fc}.earth-view-directions{display:flex;gap:8px}.earth-view-direction-btn{flex:1;background:rgba(0,20,40,.6);border:1px solid rgba(100,150,200,.3);color:#aaa;padding:10px 12px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.earth-view-direction-btn:hover{background:rgba(100,150,200,.15);color:#fff}.earth-view-direction-btn.active{background:rgba(100,200,150,.25);border-color:rgba(100,200,150,.5);color:#8fc}.earth-view-precise{display:flex;flex-direction:column;gap:10px}.earth-view-hint{color:#666;font-size:.75rem;margin-top:4px}.earth-view-target{display:flex;flex-direction:column;gap:10px}.earth-view-target-info{display:flex;gap:16px;padding:10px 14px;border-radius:6px;font-size:.85rem;font-family:SF Mono,Consolas,monospace}.earth-view-target-info.visible{background:rgba(100,200,150,.15);border:1px solid rgba(100,200,150,.3);color:#8fc}.earth-view-target-info.below-horizon{background:rgba(200,100,80,.15);border:1px solid rgba(200,100,80,.3)}.earth-view-target-info .warning{color:#f88;font-family:inherit}.eclipse-browser-modal{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.9);z-index:2000;justify-content:center;align-items:center}.eclipse-browser-modal.visible{display:flex}.eclipse-browser-content{background:rgba(0,10,25,.98);border:2px solid rgba(255,200,100,.5);border-radius:15px;max-width:900px;max-height:85vh;overflow-y:auto;color:#fff;box-shadow:0 0 60px rgba(255,200,100,.3);margin:20px;width:90vw}.eclipse-browser-header{display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-bottom:1px solid rgba(255,200,100,.3);background:linear-gradient(90deg,rgb(20,28,45),rgb(15,22,38));position:sticky;top:0;z-index:1;border-radius:13px 13px 0 0}.eclipse-browser-header h2{color:#fc8;font-size:1.4rem;margin:0}.eclipse-browser-close{background:transparent;border:none;color:#666;font-size:2rem;cursor:pointer;line-height:1}.eclipse-browser-close:hover{color:#fff}.eclipse-browser-body{padding:20px 25px}.eclipse-instructions{background:rgba(255,200,100,.1);border:1px solid rgba(255,200,100,.3);border-radius:8px;padding:15px;margin-bottom:20px}.eclipse-instructions p{color:#fc8;margin:0;font-size:.95rem;line-height:1.5}.eclipse-category{margin-bottom:25px}.eclipse-category-title{color:#fc8;font-size:1.1rem;font-weight:700;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,200,100,.2)}.eclipse-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.eclipse-card{background:rgba(255,200,100,.08);border:1px solid rgba(255,200,100,.25);border-radius:10px;padding:14px;cursor:pointer;transition:all .2s}.eclipse-card:hover{background:rgba(255,200,100,.2);border-color:rgba(255,200,100,.5);transform:translateY(-2px);box-shadow:0 4px 15px rgba(255,200,100,.2)}.eclipse-card-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.eclipse-card-icon{font-size:1.5rem}.eclipse-card-title{flex:1}.eclipse-card-name{color:#fff;font-weight:700;font-size:.9rem}.eclipse-card-type{color:#fc8;font-size:.7rem;text-transform:uppercase;letter-spacing:1px}.eclipse-card-date{color:#aaa;font-size:.8rem;margin-bottom:6px}.eclipse-card-location{color:#888;font-size:.75rem;margin-bottom:8px}.eclipse-card-desc{color:#999;font-size:.75rem;line-height:1.4}.eclipse-card-watch{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 12px;background:rgba(255,200,100,.2);border:1px solid rgba(255,200,100,.4);border-radius:4px;color:#fc8;font-size:.75rem;font-weight:700;transition:all .2s}.eclipse-card:hover .eclipse-card-watch{background:rgba(255,200,100,.4);color:#fff}.eclipse-hud{position:fixed;top:60px;right:20px;background:rgba(0,10,25,.95);border:1px solid rgba(255,200,100,.4);border-radius:8px;min-width:280px;max-width:320px;z-index:1000;box-shadow:0 4px 20px rgba(0,0,0,.5)}.eclipse-hud.collapsed .eclipse-hud-desc,.eclipse-hud.collapsed .eclipse-hud-info,.eclipse-hud.collapsed .eclipse-hud-tip,.eclipse-hud.hidden{display:none}.eclipse-hud-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:rgba(255,200,100,.15);border-radius:7px 7px 0 0;cursor:pointer}.eclipse-hud.collapsed .eclipse-hud-header{border-radius:7px}.eclipse-hud-header .eclipse-icon{font-size:1rem}.eclipse-hud-header .eclipse-name{font-size:.8rem;font-weight:700;color:#fc8;flex:1}.eclipse-close-btn{background:transparent;border:none;color:#888;font-size:1.1rem;cursor:pointer;padding:0 4px;line-height:1}.eclipse-close-btn:hover{color:#ff6666}.eclipse-hud-info{padding:8px 12px}.eclipse-hud-row{display:flex;justify-content:space-between;padding:2px 0;font-size:.7rem}.eclipse-hud-row .eclipse-label{color:#888}.eclipse-hud-row .eclipse-value{color:#fff}.eclipse-hud-desc{padding:8px 12px;color:#999;font-size:.75rem;line-height:1.4;border-top:1px solid rgba(255,200,100,.15)}.eclipse-hud-tip{padding:6px 12px;color:#666;font-size:.65rem;text-align:center;border-top:1px solid rgba(255,200,100,.2)}#events-dropdown-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;max-width:800px;max-height:80vh;background:rgba(0,20,40,.95);border:2px solid rgba(100,150,255,.5);border-radius:15px;padding:20px;z-index:1000;display:none;overflow-y:auto;box-shadow:0 10px 40px rgba(0,0,0,.5)}#events-dropdown-panel.visible{display:block}#events-dropdown-panel h2{margin:0 0 20px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:1.5rem}.events-close{background:transparent;border:none;color:#888;font-size:1.5rem;cursor:pointer;padding:0 8px;transition:color .2s ease}.events-close:hover{color:#fff}.event-category{margin-bottom:30px}.event-category-title{color:#6af;font-size:1.1rem;font-weight:700;margin-bottom:15px;padding-bottom:8px;border-bottom:1px solid rgba(100,150,255,.3)}.event-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}.event-card{background:rgba(20,40,60,.6);border:1px solid rgba(100,150,255,.3);border-radius:8px;padding:12px;cursor:pointer;transition:all .2s ease}.event-card:hover{background:rgba(30,60,90,.8);border-color:rgba(100,150,255,.6);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.3)}.event-card-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.event-card-icon{font-size:1.2rem}.event-card-name{color:#fff;font-weight:600;font-size:.95rem}.event-card-date{color:#6af;font-size:.85rem;margin-bottom:6px}.event-card-desc{color:#aaa;font-size:.8rem;line-height:1.4}.event-show-more{color:#888;font-size:.85rem;text-align:center;padding:10px;font-style:italic}.events-filter-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid rgba(100,150,255,.2)}.events-filter-tab{display:flex;align-items:center;gap:6px;padding:8px 12px;background:rgba(30,50,70,.5);border:1px solid rgba(100,150,255,.2);border-radius:20px;color:#aaa;font-size:.85rem;cursor:pointer;transition:all .2s ease}.events-filter-tab:hover{background:rgba(40,70,100,.6);border-color:rgba(100,150,255,.4);color:#fff}.events-filter-tab.active{background:rgba(60,120,180,.4);border-color:rgba(100,150,255,.6);color:#fff}.events-filter-tab .filter-icon{font-size:1rem}.events-filter-tab .filter-label{font-weight:500}.events-filter-tab .filter-count{background:rgba(0,0,0,.3);padding:2px 6px;border-radius:10px;font-size:.75rem;color:#6af}.events-filter-tab.active .filter-count{background:rgba(100,150,255,.3);color:#fff}.events-dropdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.events-dropdown-header h2{margin:0}#event-hud{position:fixed;top:80px;right:20px;background:rgba(0,20,40,.9);border:1px solid rgba(100,150,255,.5);border-radius:10px;padding:18px;color:#fff;min-width:280px;max-width:340px;z-index:100;display:none;transition:transform .3s ease,opacity .3s ease}#event-hud.visible{display:block}#event-hud-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid rgba(100,150,255,.3)}#event-hud-icon{font-size:1.3rem}#event-hud-name{flex:1;font-weight:600;font-size:1.1rem}#event-hud-close{background:transparent;border:none;color:#666;font-size:1.2rem;cursor:pointer;padding:0 4px;transition:color .2s ease}#event-hud-close:hover{color:#fff}#event-hud-date{color:#6af;font-size:.9rem;margin-bottom:10px}#event-hud-desc{color:#aaa;font-size:.85rem;line-height:1.5}.events-tabs{display:flex;gap:4px;margin-bottom:16px;padding:4px;background:rgba(20,40,60,.4);border-radius:8px}.events-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:transparent;border:none;border-radius:6px;color:#888;cursor:pointer;transition:all .2s}.events-tab:hover{background:rgba(100,150,255,.15);color:#aaa}.events-tab.active{background:rgba(100,150,255,.25);color:#fff}.events-tab .tab-icon{font-size:1.2rem}.events-tab .tab-label{font-size:.75rem;font-weight:500}.events-tab .tab-count{background:rgba(0,0,0,.3);padding:1px 6px;border-radius:8px;font-size:.65rem;color:#6af}.events-tab.active .tab-count{background:rgba(100,150,255,.3);color:#fff}.events-empty{text-align:center;padding:40px 20px;color:#888}.events-empty .empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.events-empty .empty-title{font-size:1.1rem;color:#aaa;margin-bottom:8px}.events-empty .empty-description{font-size:.85rem}.event-card-datetime{display:flex;gap:8px;align-items:center;margin-bottom:6px}.event-card-time{color:#888;font-size:.8rem}.calendar-view{display:flex;flex-direction:column;gap:16px}.calendar-header{display:flex;align-items:center;justify-content:center;gap:16px}.calendar-nav{background:rgba(100,150,255,.2);border:1px solid rgba(100,150,255,.3);border-radius:4px;color:#6af;padding:6px 12px;cursor:pointer;font-size:1rem;transition:all .2s}.calendar-nav:hover{background:rgba(100,150,255,.3);border-color:rgba(100,150,255,.5)}.calendar-title{font-size:1.1rem;font-weight:500;color:#fff;min-width:180px;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-day-header{text-align:center;color:#888;font-size:.75rem;font-weight:500;padding:8px 0;text-transform:uppercase}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:rgba(30,50,70,.3);border:1px solid rgba(100,150,255,.1);border-radius:6px;cursor:pointer;transition:all .2s;position:relative}.calendar-day.empty{background:transparent;border-color:transparent;cursor:default}.calendar-day:not(.empty):hover{background:rgba(50,80,120,.4);border-color:rgba(100,150,255,.3)}.calendar-day.today{background:rgba(100,150,255,.2);border-color:rgba(100,150,255,.5)}.calendar-day.selected{background:rgba(100,150,255,.35);border-color:rgba(100,150,255,.7)}.calendar-day.has-events{background:rgba(60,100,140,.4)}.day-number{color:#ccc;font-size:.9rem;font-weight:500}.calendar-day.today .day-number{color:#6af}.event-dots{display:flex;gap:2px}.event-dot{width:4px;height:4px;border-radius:50%;background:#6af}.calendar-events{max-height:300px;overflow-y:auto}.calendar-events-title{color:#6af;font-size:.9rem;font-weight:500;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(100,150,255,.2)}.no-events{color:#666;font-size:.85rem;text-align:center;padding:20px}.events-loading{color:#888;font-size:.9rem;text-align:center;padding:40px}@media (max-width:600px){.events-tab{padding:8px 4px}.events-tab .tab-label{font-size:.65rem}.calendar-day{aspect-ratio:1}.day-number{font-size:.8rem}.event-dot{width:3px;height:3px}}#time-slider{direction:ltr}#time-display{color:#8fc;font-size:.85rem;margin-left:6px}.frame-selector-label{color:#999;font-size:.75rem}.visibility-buttons-container{display:flex;gap:8px;margin-bottom:12px}.objects-browser-header .visibility-buttons-container{margin-bottom:12px}#btn-show-all{background:rgba(100,200,100,.3);border:1px solid rgba(100,200,100,.5);border-radius:4px}#btn-hide-all,#btn-show-all{flex:1;padding:6px 10px;font-size:.7rem;color:#fff;cursor:pointer}#btn-hide-all{background:rgba(200,100,100,.3);border:1px solid rgba(200,100,100,.5);border-radius:4px}#btn-reset-camera{width:100%;padding:8px 10px;font-size:.75rem;background:rgba(100,150,255,.2);border:1px solid rgba(100,150,255,.5);color:#fff;border-radius:4px;cursor:pointer;margin-bottom:12px}.objects-browser-header #btn-reset-camera{margin-bottom:0}.vis-color-3i-atlas{background:#00ffff!important}.vis-color-oumuamua{background:#ff6600!important}.vis-color-borisov{background:#9932cc!important}.vis-color-voyager1{background:#ffd700!important}.vis-color-voyager2{background:#c0c0c0!important}.vis-color-jwst{background:#ffdd88!important}.vis-color-iss{background:#ffdd00!important}.vis-color-hubble-sat{background:#66aaff!important}.vis-color-geostationary{background:#ff8800!important}.vis-color-apollo-11{background:#4488ff!important}.vis-color-apollo-13{background:#ff6644!important}.vis-color-apollo-17{background:#ffaa00!important}.vis-color-artemis-ii{background:#00d4ff!important}.vis-color-mercury{background:#b5b5b5!important}.vis-color-venus{background:#e6c87a!important}.vis-color-earth{background:#6b93d6!important}.vis-color-mars{background:#c1440e!important}.vis-color-jupiter{background:#d8ca9d!important}.vis-color-saturn{background:#f4d59e!important}.vis-color-uranus{background:#d1e7e7!important}.vis-color-neptune{background:#5b5ddf!important}.vis-color-moon{background:#aaaaaa!important}.vis-color-io{background:#ffdd44!important}.vis-color-europa{background:#eeddcc!important}.vis-color-ganymede{background:#bbaa99!important}.vis-color-callisto{background:#665544!important}.vis-color-pluto{background:#c4b8a5!important}.vis-color-ceres{background:#888888!important}.vis-color-eris{background:#cccccc!important}.vis-color-makemake{background:#bb8866!important}.vis-color-haumea{background:#ffffff!important}.vis-color-asteroids{background:#8b7355!important}.vis-color-sun{background:#ffff00!important}.vis-color-kuiper{background:#8b7355!important}.vis-color-heliosphere{background:#4169e1!important}.vis-color-lagrange{background:#00ff88!important}.vis-color-jupiter-lagrange{background:#ff6600!important}.vis-color-constellations{background:#4488cc!important}.vis-color-constellation-individual{background:#88aaff!important}.vis-color-velocity-vectors{background:#ffff00!important}.vis-color-galactic-plane{background:#8866ff!important}.vis-color-galactic-center{background:#ffcc00!important}.vis-color-oort-cloud{background:#88aacc!important}.vis-color-gaia-bh1{background:#8888ff!important}.vis-color-gaia-bh2{background:#ff6644!important}.vis-color-gaia-bh3{background:#aaaaff!important}.vis-color-trappist-1{background:#00ff88!important}.vis-color-kepler-452{background:#6699aa!important}.vis-color-proxima-centauri-system{background:#5588aa!important}.vis-color-tau-ceti-system{background:#779988!important}.vis-color-proxima-centauri{background:#ff4400!important}.vis-color-alpha-centauri{background:#fff8e7!important}.vis-color-barnards-star{background:#ff6633!important}.vis-color-wolf-359{background:#ff3300!important}.vis-color-lalande-21185{background:#ff7744!important}.vis-color-sirius{background:#ccddff!important}.vis-color-luyten-726-8{background:#ff4400!important}.vis-color-ross-154{background:#ff5533!important}.vis-color-tau-ceti{background:#fff0d0!important}.vis-color-zeta-reticuli{background:#fff4e6!important}.constellation-section-title{cursor:pointer;display:flex;align-items:center;gap:6px}#constellation-toggle{transition:transform .2s}.constellation-list{margin-top:4px}#use-current-time-btn{background:rgba(100,150,255,.2)!important;border-color:rgba(100,150,255,.4)!important;color:#6af!important}#local-time{font-size:.9rem}.earth-view-h3{color:#8fc;margin:0 0 12px}.earth-view-h3-spaced{color:#8fc;margin:20px 0 12px}.visibility-table-empty{text-align:center;color:#666}.recommendations-placeholder{color:#888;font-size:.9rem}.eclipse-instructions-subtext{font-size:.8rem;color:#888;margin-top:8px}