*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-card:#1a1a2e;--accent-blue:#4fc3f7;--accent-purple:#b39ddb;--accent-pink:#f48fb1;--accent-gold:#ffd54f;--text-primary:#e8eaf6;--text-muted:#78909c;--border:#4fc3f726;--glow:#4fc3f74d}body{background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Segoe UI,system-ui,sans-serif;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(1px 1px at 10% 20%,#fffc 0%,#0000 100%),radial-gradient(1px 1px at 30% 60%,#fff9 0%,#0000 100%),radial-gradient(1px 1px at 50% 10%,#ffffffe6 0%,#0000 100%),radial-gradient(1px 1px at 70% 80%,#ffffff80 0%,#0000 100%),radial-gradient(1px 1px at 90% 40%,#ffffffb3 0%,#0000 100%),radial-gradient(1px 1px at 15% 75%,#fff9 0%,#0000 100%),radial-gradient(1px 1px at 45%,#fff6 0%,#0000 100%),radial-gradient(1px 1px at 80% 15%,#fffc 0%,#0000 100%),radial-gradient(2px 2px at 25% 35%,#4fc3f766 0%,#0000 100%),radial-gradient(2px 2px at 65% 65%,#b39ddb4d 0%,#0000 100%);width:100%;height:100%;position:fixed;top:0;left:0}#root{z-index:1;position:relative}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--accent-blue);border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.fade-in{animation:.5s forwards fadeIn}.loader{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px;display:flex}.loader-ring{border:3px solid var(--border);border-top-color:var(--accent-blue);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}.app{flex-direction:column;min-height:100vh;display:flex}.header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;background:#0a0a0fd9;justify-content:space-between;align-items:center;padding:20px 40px;display:flex;position:sticky;top:0}.header-logo{align-items:center;gap:12px;display:flex}.logo-icon{font-size:28px;animation:3s ease-in-out infinite float}.logo-text{background:linear-gradient(135deg, var(--accent-blue), var(--accent-purple));-webkit-text-fill-color:transparent;letter-spacing:1px;-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:700}.header-date{color:var(--text-muted);text-align:right;font-size:13px}.nav{border-bottom:1px solid var(--border);gap:8px;padding:20px 40px 0;display:flex;overflow-x:auto}.nav-tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;letter-spacing:.5px;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.main{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:32px 40px}.section-header{margin-bottom:28px}.section-title{color:var(--text-primary);align-items:center;gap:10px;font-size:26px;font-weight:700;display:flex}.section-subtitle{color:var(--text-muted);margin-top:6px;font-size:14px}.apod-container{grid-template-columns:1fr 1fr;align-items:start;gap:28px;display:grid}.apod-media{border:1px solid var(--border);background:var(--bg-secondary);aspect-ratio:16/10;border-radius:16px;overflow:hidden}.apod-media img{object-fit:cover;cursor:zoom-in;width:100%;height:100%;transition:transform .4s;display:block}.apod-media img:hover{transform:scale(1.03)}.apod-media iframe{border:none;width:100%;height:100%}.apod-info{flex-direction:column;gap:16px;display:flex}.apod-date-badge{color:var(--accent-blue);background:#4fc3f71a;border:1px solid #4fc3f74d;border-radius:20px;align-items:center;gap:6px;width:fit-content;padding:4px 12px;font-size:12px;font-weight:500;display:inline-flex}.apod-title{font-size:26px;font-weight:700;line-height:1.3}.apod-copyright{color:var(--text-muted);font-size:12px}.apod-explanation{color:#b0bec5;max-height:300px;padding-right:8px;font-size:14px;line-height:1.8;overflow-y:auto}.date-picker-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.date-input{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:8px;outline:none;padding:8px 14px;font-size:14px;transition:border-color .2s}.date-input:focus{border-color:var(--accent-blue)}.date-input::-webkit-calendar-picker-indicator{filter:invert(.7)sepia()hue-rotate(180deg);cursor:pointer}.btn{border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:500;transition:all .2s}.btn-primary{background:linear-gradient(135deg, var(--accent-blue), var(--accent-purple));color:#0a0a0f;border:none;font-weight:600}.btn-primary:hover{opacity:.85;transform:translateY(-1px)}.btn-secondary{color:var(--text-muted);background:0 0}.btn-secondary:hover{color:var(--text-primary);border-color:var(--accent-blue)}.rover-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:28px;display:flex}.select-input{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:8px;outline:none;padding:8px 14px;font-size:13px;transition:border-color .2s}.select-input:focus{border-color:var(--accent-blue)}.select-input option{background:var(--bg-secondary)}.rover-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.rover-card{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:12px;transition:all .2s;overflow:hidden}.rover-card:hover{border-color:#b39ddb66;transform:translateY(-3px);box-shadow:0 10px 30px #b39ddb33}.rover-img{aspect-ratio:4/3;object-fit:cover;background:var(--bg-secondary);width:100%;display:block}.rover-card-info{flex-direction:column;gap:3px;padding:12px 14px;display:flex}.rover-camera{color:var(--accent-purple);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:600}.rover-sol{color:var(--text-muted);font-size:12px}.neo-stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:12px;padding:20px}.stat-value{background:linear-gradient(135deg, var(--accent-blue), var(--accent-purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:32px;font-weight:700}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-top:4px;font-size:11px}.neo-list{flex-direction:column;gap:10px;display:flex}.neo-item{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;grid-template-columns:1fr auto auto auto;align-items:center;gap:20px;padding:16px 20px;transition:border-color .2s;display:grid}.neo-item:hover{border-color:#4fc3f74d}.neo-name{font-size:14px;font-weight:600}.neo-size{color:var(--text-muted);margin-top:2px;font-size:12px}.neo-distance{color:var(--accent-blue);text-align:right;font-size:13px}.neo-distance-label{color:var(--text-muted);font-size:11px}.neo-speed{color:var(--accent-purple);text-align:right;font-size:13px}.neo-speed-label{color:var(--text-muted);font-size:11px}.danger-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600}.danger-yes{color:#ef5350;background:#f4433626;border:1px solid #f443364d}.danger-no{color:#66bb6a;background:#4caf501a;border:1px solid #4caf5033}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:zoom-out;background:#000000eb;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-img{object-fit:contain;border-radius:8px;max-width:90vw;max-height:90vh;box-shadow:0 0 60px #4fc3f733}.error-state,.empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px;font-size:14px;display:flex}.error-icon{font-size:40px}@media (width<=900px){.header{padding:16px 20px}.main{padding:20px 16px}.nav{padding:12px 16px 0}.apod-container{grid-template-columns:1fr}.neo-stats{grid-template-columns:repeat(2,1fr)}.neo-item{grid-template-columns:1fr 1fr;gap:10px}}
