@import"https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@0,400;0,600;1,400&family=JetBrains+Mono:wght@400;500&family=Outfit:wght@300;400;500;600&display=swap";:root{--bg-deep: #050810;--bg-primary: #0A0E1A;--bg-secondary: #111827;--bg-tertiary: #1F2937;--bg-hover: #2D3748;--text-primary: #F9FAFB;--text-secondary: #D1D5DB;--text-muted: #9CA3AF;--accent-gold: #F59E0B;--accent-gold-dim: #B45309;--accent-blue: #3B82F6;--accent-cyan: #06B6D4;--accent-purple: #8B5CF6;--accent-rose: #EC4899;--border-color: rgba(255, 255, 255, .1);--border-active: rgba(245, 158, 11, .5);--font-display: "Outfit", -apple-system, sans-serif;--font-body: "Crimson Pro", Georgia, serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%}body{font-family:var(--font-body);font-size:16px;line-height:1.5;color:var(--text-primary);background:var(--bg-deep);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{height:100%;width:100%;overflow:hidden}.main-content{display:flex;height:100%;gap:0}.canvas-container{flex:1;position:relative;background:var(--bg-deep);overflow:hidden}.orbit-canvas{display:block;width:100%;height:100%}.canvas-overlay{position:absolute;bottom:var(--space-md);left:var(--space-md);pointer-events:none}.keybinds{display:flex;gap:var(--space-md);font-family:var(--font-mono);font-size:11px;color:var(--text-muted);opacity:.7}.keybinds kbd{display:inline-block;padding:2px 6px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:inherit;margin-right:4px}.sidebar{width:340px;min-width:340px;background:var(--bg-primary);border-left:1px solid var(--border-color);display:flex;flex-direction:column;overflow-y:auto}.control-panel{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-lg)}.panel-header{text-align:center;padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.header-top{display:flex;align-items:center;justify-content:center;gap:var(--space-md);position:relative}.lang-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);padding:4px 10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.lang-btn:hover{background:var(--bg-hover);border-color:var(--accent-gold);color:var(--text-primary)}.title{font-family:var(--font-display);font-size:1.75rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.title-icon{font-size:1.5rem}.subtitle{font-family:var(--font-body);font-size:.9rem;color:var(--text-muted);font-style:italic;margin-top:var(--space-xs)}.section{display:flex;flex-direction:column;gap:var(--space-md)}.section-title{font-family:var(--font-display);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-gold)}.scene-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.tab{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md) var(--space-sm);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;color:var(--text-secondary);font-family:var(--font-display)}.tab:hover{background:var(--bg-tertiary);border-color:var(--border-active)}.tab.active{background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border-color:var(--accent-gold);color:var(--text-primary)}.tab-icon{font-size:1.25rem}.tab-label{font-size:.8rem;font-weight:500}.playback-controls{display:flex;gap:var(--space-sm)}.play-btn,.reset-btn{flex:1;padding:var(--space-md);border:none;border-radius:var(--radius-md);font-family:var(--font-display);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.play-btn{background:linear-gradient(135deg,var(--accent-gold),var(--accent-gold-dim));color:var(--bg-deep)}.play-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.play-btn.playing{background:linear-gradient(135deg,var(--accent-purple),#6D28D9);color:#fff}.reset-btn{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.reset-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.speed-selector{display:flex;flex-direction:column;gap:var(--space-sm)}.speed-selector label{font-family:var(--font-display);font-size:.85rem;color:var(--text-muted)}.speed-buttons{display:flex;gap:var(--space-xs)}.speed-btn{flex:1;padding:var(--space-sm) var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.speed-btn:hover{background:var(--bg-tertiary)}.speed-btn.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.option-row{display:flex;align-items:center}.option-row label{display:flex;align-items:center;gap:var(--space-sm);font-family:var(--font-body);font-size:.95rem;color:var(--text-secondary);cursor:pointer}.option-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-gold);cursor:pointer}.slider-row{display:flex;flex-direction:column;gap:var(--space-xs)}.slider-row label{font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary)}.slider-row input[type=range]{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-tertiary);border-radius:3px;cursor:pointer}.slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;background:var(--accent-gold);border-radius:50%;cursor:pointer;transition:transform .1s ease}.slider-row input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}.slider-row .hint{font-family:var(--font-body);font-size:.75rem;font-style:italic;color:var(--text-muted)}.info-panel{padding:var(--space-lg);background:var(--bg-secondary);border-top:1px solid var(--border-color);flex:1}.info-title{font-family:var(--font-display);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-cyan);margin-bottom:var(--space-md)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);margin-bottom:var(--space-lg)}.info-item{display:flex;flex-direction:column;gap:2px}.info-label{font-family:var(--font-body);font-size:.75rem;color:var(--text-muted)}.info-value{font-family:var(--font-mono);font-size:.85rem;color:var(--text-primary);display:flex;align-items:baseline;gap:var(--space-xs)}.info-symbol{color:var(--accent-gold);font-style:italic;min-width:1.2em}.kepler-law,.areal-velocity{padding:var(--space-md);background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:var(--space-md)}.kepler-title{font-family:var(--font-display);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-purple);margin-bottom:var(--space-sm)}.kepler-equation{display:flex;align-items:baseline;gap:var(--space-sm)}.equation{font-family:var(--font-mono);font-size:.9rem;color:var(--text-secondary)}.equation-value{font-family:var(--font-mono);font-size:1.1rem;font-weight:500;color:var(--accent-gold)}.kepler-note{font-family:var(--font-body);font-size:.75rem;font-style:italic;color:var(--text-muted);margin-top:var(--space-xs)}.sim-time{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-md);border-top:1px solid var(--border-color)}.sim-label{font-family:var(--font-display);font-size:.8rem;color:var(--text-muted)}.sim-value{font-family:var(--font-mono);font-size:.9rem;color:var(--accent-cyan)}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-track{background:var(--bg-secondary)}.sidebar::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media(max-width:900px){.main-content{flex-direction:column}.canvas-container{height:50vh;min-height:300px}.sidebar{width:100%;min-width:unset;border-left:none;border-top:1px solid var(--border-color)}.scene-tabs{grid-template-columns:repeat(4,1fr)}.tab{padding:var(--space-sm)}.tab-label{font-size:.7rem}}
