:root[data-theme=night]{--accent:#8bc9f7;--accent2:#6a9edf;--bg:#030812;--bg2:#0a1220;--panel:rgba(9,20,37,.85);--panel-solid:#0b1629;--panel-light:#11213b}
html[data-theme=night] body{background:radial-gradient(ellipse at 12% 20%,#10284b66,transparent 65%),linear-gradient(180deg,#030712,#071224 55%,#020610)}
html[data-theme=night] .hero h1,html[data-theme=night] .hero-location,html[data-theme=night] .page-heading h1{color:var(--accent);background-image:none;-webkit-text-fill-color:var(--accent)}
html[data-theme=night] .intro h1 span{background:linear-gradient(100deg,#a4d8ff,#6f9fe8);background-clip:text;-webkit-background-clip:text;color:transparent}
html[data-theme=night] :is(.observatory-tonight,.project-intro,.explore-journal,.photo-story-layout){background:linear-gradient(135deg,#0e2039,#07101f)}
:root[data-theme=day]{--bg:#ffffff;--bg2:#f5f6f8;--panel:#ffffff;--panel-solid:#ffffff;--panel-light:#f2f5f7;--line:#d4d9df;--line-strong:#8c969f;--text:#171717;--muted:#4c4c4c;--soft:#333333;--accent:#164b73;--accent2:#17556a;--ok:#16734c;--danger:#a72b37;--shadow:0 15px 45px #20385715}
html[data-theme=day] body{background:#ffffff;color:var(--text)}
html[data-theme=day] :is(.visitor-location,.site-addition,.site-card,.forecast-hour,.visitor-sky-bar,.site-note){background:#ffffff;border-color:#d4d9df;color:#202020}
html[data-theme=day] :is(.site-addition a,.site-card figcaption,.visitor-location small,.weather-extra-stats small){color:#164b73}
html[data-theme=day] :is(.visitor-location input,.sky-alerts input,.weather-downloads input,select){background:#ffffff;color:#202020;border-color:#939da7}
html[data-theme=day] :is(.hero h1,.hero-location,.page-heading h1){background-image:none;-webkit-text-fill-color:#164b73;color:#164b73}
html[data-theme=day] :is(.weather-data-table th,.sky-target,.hub-route,.explore-path,.beginner-card){background:#f5f6f8;color:#202020}
html[data-theme=day] :is(.eyebrow,.metric-label,.section-lead,.section-note,.sky-equipment){color:#404040}
.theme-control{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;max-width:100%;padding-top:12px}.theme-control select{font:inherit;border:1px solid var(--line-strong);padding:8px;border-radius:8px;background:var(--panel-solid);color:var(--text)}.theme-control small{color:var(--muted)}
.topbar .theme-control{gap:8px;padding-top:0}.topbar .theme-control label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.topbar .theme-control select{max-width:190px}.topbar .theme-control small{display:none}.topbar{height:auto;min-height:84px;gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
html[data-theme=day] :is(.topbar,.navigation){background:rgba(255,255,255,.97)}
html[data-theme=day] .intro h1 span{background:none;color:#164b73;-webkit-text-fill-color:#164b73}
html[data-theme=day] :is(.observatory-tonight,.hub-fact,.card,.metric-card,.chart-card,.table-card,.image-card,.source-card,.explore-entry,.explore-path,.explore-read,.explore-journal,.photo-story-layout,.meteor-stat,.meteor-event,.meteor-disclaimer,.sky-toolbar,.sky-map-card,.sky-target-panel,.sky-condition-chips span,.sky-equipment,.sky-darkness-note,.project-intro,.project-facts,.project-flow,.project-card,.project-license,.location-map-card,.future-photo,.night-pick-card,.night-pick-skeleton,.nina-home-info,.nina-quick-stats>div,.nina-data-grid>div,.nina-position-values>div,.nina-dual-card,.nina-log-card,.social-media-grid .media-meta){background:#ffffff;color:var(--text);border-color:#d4d9df}
html[data-theme=day] :is(.secondary-button,.sky-target-button,.night-pick-open,.project-download-secondary,.social-secondary-button,.beginner-time,.explore-notes textarea,.sky-toolbar input,.language-switch,.nav-link.active,.satellite-switch .selected){background:#edf2f6;color:#193b55;border-color:#b7c2cb}
html[data-theme=day] :is(.instagram-button,.project-download,.social-primary-button){background:#204f83;color:white;border-color:#4675a2}
html[data-theme=day] :is(.source-icon,.social-orbit-mark,.instagram-platform,.telescopius-platform,.nina-status-pill,.night-pick-alt){background:#edf2f6;color:#193b55}
html[data-theme=day] :is(.photo-story-copy p,.nina-home-info small,.nina-log-card small,.sky-condition-chips span,.social-platform-note,.project-card p){color:var(--soft)}
html[data-theme=day] :is(.camera-overlay,.nina-frame-overlay,.satellite-preview,.satellite-dialog,.lightbox,.nina-preview,.live-frame,.image-container,.large-live,.media-thumb,.archive-thumb,.project-howto pre,.hardware-settings pre){color:#e6edf7;--text:#e6edf7;--soft:#c1cede;--muted:#a9bacd;--accent:#a4d8ff}
html[data-theme=day] .stars{opacity:.08}
.astro-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.astro-gallery-card{min-width:0}.astro-gallery-card h3{font-size:16px;margin:12px 0 6px}.astro-gallery-card small{color:var(--muted)}.astro-image-button{border:1px solid var(--line);border-radius:15px;background:#050a12;width:100%;padding:0;overflow:hidden;cursor:zoom-in}.astro-image-button img{width:100%;height:230px;object-fit:contain;display:block}.astro-photo-dialog{width:min(1100px,95vw);max-height:94vh;border:1px solid #64748b;background:#060b14;color:#f3f6fa;border-radius:16px;padding:18px}.astro-photo-dialog::backdrop{background:#02050ce8}.astro-photo-dialog img{display:block;width:100%;max-height:78vh;object-fit:contain}.astro-photo-dialog button{float:right;margin-bottom:12px}.astro-photo-dialog p{clear:both}.radar-options{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}
@media(max-width:780px){.astro-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-control small{flex-basis:100%}}@media(max-width:500px){.astro-gallery-grid,.radar-options{grid-template-columns:1fr}.astro-image-button img{height:260px}}

html[data-theme=day]{background:#fff;color-scheme:light}
html[data-theme=day] :is(p,small,figcaption,label){color:var(--soft)}
html[data-theme=day] :is(.eyebrow,.metric-label,.section-lead,.section-note,.project-kicker,.project-card-number,.project-flow b,.project-flow i,.future-photo-icon,.sky-target-head span,.sky-moon-fit,.beginner-gear,.beginner-position,.beginner-state,.beginner-tip,.beginner-mission,.beginner-time output,.explore-number,.explore-read summary,.photo-story-reading p,.meteor-stat strong){color:var(--text)}
html[data-theme=day] :is(.photo-story-reading a,.beginner-card>a,.explore-source-note a){color:var(--accent)}
html[data-theme=day] :is(.photo-story-layout figcaption,.explore-path p,.explore-read p,.explore-journal p,.explore-journal small,.explore-entry p,.beginner-section>p,.project-card code){color:var(--soft)}
html[data-theme=day] .language-switch button[aria-pressed=true]{background:#164b73;color:#fff}
html[data-theme=day] :is(input,textarea)::placeholder{color:#545454;opacity:1}
html[data-theme=day] :is(.photo-story-tabs,.photo-story-quiz) [aria-pressed=true]{background:#e8f0f6;color:#173952;border-color:#164b73}
html[data-theme=day] :is(.site-error,.wind-alert){color:#a32929}
html[data-theme=day] .site-success{color:#16633e}
html[data-theme=day] :is(.project-images figure,.hub-night-card,.sky-alerts details){background:#fff;border-color:var(--line)}
html[data-theme=day] :is(.weather-list,.weather-data-table) :is(th,td){border-color:#d4d9df}
html[data-theme=day] :is(.astro-photo-dialog,#photoStoryDialog){--text:#edf4fb;--soft:#c1cede;--muted:#a9bacd;--accent:#a4d8ff}
html[data-theme=day] :is(.chart-title,.night-pick-rank,.night-pick-card>strong,.social-media-grid .media-meta strong){color:#202020}
html[data-theme=day] .social-media-grid .media-meta small{color:#444}
html[data-theme=day] .live-label{color:#a32929}
html[data-theme=day] :is(.explore-sky-symbol,.explore-trails-symbol){color:#164b73}
html[data-theme=day] :is(.camera-overlay,.nina-frame-overlay,.satellite-preview,.satellite-dialog,.lightbox,.nina-preview,.live-frame,.image-container,.large-live,.media-thumb,.archive-thumb,.project-howto pre,.hardware-settings pre) :is(p,small,figcaption,label){color:var(--soft)}
html[data-theme=day] body :is(.satellite-preview,.satellite-dialog){background:#f5f7f9;border:1px solid #d4d9df;color:#202020;--text:#202020;--soft:#333333;--muted:#4c4c4c;--accent:#164b73}
