.tonight-page{--tonight-day:#8db4d3;--tonight-civil:#4d6f93;--tonight-twilight:#2a4263;--tonight-dark:#0a121c;--tonight-night:#1c2c40;--tonight-lime-text:var(--brand-lime);--tonight-input-bg:#0e151d;--tonight-soft:#182019;--tonight-warn-bg:#2a2414;--tonight-warn-line:#a6842f;--tonight-warn-text:#f0dca6;overflow-wrap:break-word}.tonight-head{max-width:820px;margin-bottom:28px}.tonight-head h1{font:600 clamp(33px, 4vw, 50px) / 1.1 var(--font-space-grotesk), sans-serif;letter-spacing:-1.6px;margin:12px 0 14px}.tonight-head .dek{margin:0;font-size:19px;line-height:1.55}.tonight{gap:24px;display:grid}.tonight-controls{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,2fr) auto minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:16px 18px;padding:22px;display:grid}.tonight-field{gap:6px;min-width:0;display:grid}.tonight-gps{padding-top:27px}.tonight-label{color:var(--editorial-muted);letter-spacing:.02em;font-size:13px;font-weight:600}.tonight-input{background:var(--tonight-input-bg);width:100%;min-height:44px;color:var(--text);font:inherit;border:1px solid #3a4655;border-radius:7px;padding:9px 12px;font-size:15px}.tonight-input:focus-visible,.tonight-check input:focus-visible,.tonight-options li.active{outline:2px solid var(--brand-lime);outline-offset:1px}.tonight-input[aria-invalid=true]{border-color:#d4707f}.tonight-input:disabled{opacity:.6}.tonight-field-error{color:#f0a3ae;margin:0;font-size:13px}.tonight-search{gap:6px;display:grid;position:relative}.tonight-hint{min-height:1.4em;color:var(--editorial-muted);margin:0;font-size:13px}.tonight-combo{position:relative}.tonight-options{z-index:10;background:var(--panel);border:1px solid #3a4655;border-radius:8px;max-height:340px;margin:2px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 14px 30px #00000059}.tonight-options[hidden]{display:none}.tonight-options li{cursor:pointer;border-radius:6px;gap:1px;padding:8px 10px;display:grid}.tonight-options li:hover,.tonight-options li.active{background:var(--tonight-soft)}.tonight-options li span{font-weight:600}.tonight-options li small{color:var(--editorial-muted);font-size:12px}.tonight-button{min-height:44px;color:var(--brand-lime);white-space:nowrap;cursor:pointer;background:#25312b;border:1px solid #3a483b;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:15px;font-weight:600;display:inline-flex}.tonight-button:hover:not(:disabled){border-color:var(--brand-lime)}.tonight-button:disabled{cursor:progress;opacity:.8}.tonight-button svg,.tonight-state>svg,.tonight-empty>svg{flex-shrink:0;width:18px;height:18px}.tonight-saved{border-top:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 22px;padding-top:14px;display:flex}.tonight-check{cursor:pointer;align-items:center;gap:9px;font-size:14px;display:inline-flex}.tonight-check input{width:18px;height:18px;accent-color:var(--brand-lime)}.tonight-link-button{color:var(--tonight-lime-text);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;text-decoration:underline}.tonight-privacy{color:var(--editorial-muted);flex-basis:100%;margin:0;font-size:13px}.tonight-live{grid-column:1/-1;margin:0;font-size:14px}.tonight-live:empty{display:none}.tonight-live p{margin:0}.tonight-state{background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:8px;align-items:center;gap:12px;padding:26px;display:flex}.tonight-state[role=alert]>svg{color:#f0a3ae}.tonight-empty{align-items:flex-start}.tonight-empty>svg{color:var(--tonight-lime-text);margin-top:4px}.tonight-empty p{margin:0 0 4px}.tonight-empty p+p{color:var(--editorial-muted)}.tonight-spin{vertical-align:-3px;width:18px;height:18px;animation:1s linear infinite tonight-spin;display:inline-block}@keyframes tonight-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.tonight-spin{animation:none}}.tonight-results[aria-busy=true] .tonight-grid{opacity:.72;transition:opacity .15s}.tonight-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);align-items:start;gap:22px;display:grid}.tonight-evening,.tonight-iss,.tonight-observe{grid-column:1/-1}.tonight-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0;padding:22px 24px 24px}.tonight-card-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin-bottom:16px;padding-bottom:14px;display:flex}.tonight-card-head h2{font:600 23px / 1.25 var(--font-space-grotesk), sans-serif;letter-spacing:-.5px;align-items:center;gap:10px;margin:0;display:inline-flex}.tonight-card-head h2 svg{width:21px;height:21px;color:var(--tonight-lime-text)}.tonight-card-head>span{letter-spacing:.08em;text-transform:uppercase;color:var(--tonight-lime-text);font-size:12px}.tonight-card p{margin:12px 0 0}.tonight-muted{color:var(--editorial-muted);font-size:14px}.tonight-small{color:var(--editorial-muted);font-size:13px}.tonight-note{border-left:3px solid var(--brand-lime);background:var(--tonight-soft);padding:12px 16px;font-size:14px;line-height:1.55}.tonight-warning{border-left:3px solid var(--tonight-warn-line);background:var(--tonight-warn-bg);color:var(--tonight-warn-text);gap:10px;padding:12px 16px;font-size:14px;display:flex}.tonight-warning svg{flex-shrink:0;width:18px;height:18px;margin-top:2px}.tonight-place{font:600 18px var(--font-space-grotesk), sans-serif;align-items:center;gap:8px;display:flex;margin:0!important}.tonight-place svg{width:17px;height:17px;color:var(--tonight-lime-text)}.tonight-big{font:600 22px / 1.2 var(--font-space-grotesk), sans-serif;margin:0!important}.tonight-timeline{margin:22px 0 6px}.tonight-bar{background:var(--tonight-night);border-radius:6px;height:30px;margin:44px 0 0;position:relative}.tonight-seg{position:absolute;top:0;bottom:0}.tonight-seg:first-child{border-radius:6px 0 0 6px}.tonight-seg:nth-last-child(1 of .tonight-seg){border-radius:0 6px 6px 0}.level-day{background:var(--tonight-day)}.level-civil{background:var(--tonight-civil)}.level-twilight{background:var(--tonight-twilight)}.level-dark{background:var(--tonight-dark)}.level-night{background:var(--tonight-night)}.tonight-marker{border-left:2px solid var(--brand-lime);width:0;position:absolute;top:-4px;bottom:-4px}.tonight-marker>span{white-space:nowrap;color:var(--editorial-muted);font-size:12px;line-height:1.25;position:absolute;transform:translate(-50%)}.tonight-marker b{color:var(--text);font-weight:600}.tonight-event-number{border:1px solid var(--line);width:19px;height:19px;color:var(--tonight-lime-text);border-radius:50%;justify-content:center;align-items:center;margin-right:6px;font-size:11px;display:inline-flex}.tonight-marker.high>span{bottom:calc(100% + 4px)}.tonight-marker.low>span{top:calc(100% + 22px)}.tonight-ticks{height:18px;color:var(--editorial-muted);margin-top:4px;font-size:11px;position:relative}.tonight-ticks span{position:absolute;transform:translate(-50%)}.tonight-legend{color:var(--editorial-muted);flex-wrap:wrap;gap:6px 16px;margin-top:28px;font-size:13px;display:flex}.tonight-legend span{align-items:center;gap:6px;display:inline-flex}.tonight-legend i{border:1px solid var(--line);border-radius:2px;width:14px;height:10px;display:inline-block}.tonight-events{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:18px 0 0;display:grid}.tonight-events>div{border:1px solid var(--line);border-radius:7px;padding:10px 12px}.tonight-events dt{color:var(--editorial-muted);font-size:12px}.tonight-events dd{font:600 17px / 1.3 var(--font-space-grotesk), sans-serif;margin:2px 0 0}.tonight-events dd small{font:12px / 1.35 var(--font-dm-sans), sans-serif;color:var(--editorial-muted);margin-top:3px;display:block}.tonight-events .tonight-muted{font-size:15px}.tonight-moon-summary{align-items:center;gap:18px;display:flex}.tonight-moon{flex-shrink:0;width:84px;height:84px}.moon-dark{fill:#26313d;stroke:#3a4655;stroke-width:1px}.moon-lit{fill:#e9edd8}.tonight-list,.tonight-rows,.tonight-passes,.tonight-tips{margin:16px 0 0;padding:0;list-style:none}.tonight-list li{border-top:1px solid var(--line);gap:2px;padding:10px 0;font-size:15px;display:grid}.tonight-list li span{color:var(--editorial-muted);font-size:14px}.tonight-rows li{border-top:1px solid var(--line);grid-template-columns:92px minmax(0,1fr);gap:12px;padding:12px 0;display:grid}.tonight-row-name{font:600 17px var(--font-space-grotesk), sans-serif}.tonight-row-body{gap:8px;display:grid}.tonight-window{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;display:flex}.tonight-window>span{font-weight:600;display:grid}.tonight-window small{color:var(--editorial-muted);font-size:13px;font-weight:400}.tonight-chip{border:1px solid var(--line);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:5px 11px;font-size:13px}.tonight-chip:hover{border-color:var(--brand-lime)}.tonight-chip[aria-pressed=true]{background:var(--brand-lime);border-color:var(--brand-lime);color:#172012;font-weight:600}.tonight-horizon{margin:0 0 8px}.tonight-horizon svg{border:1px solid var(--line);background:linear-gradient(#0c1622,#142232);border-radius:7px;width:100%;height:auto;display:block}.tonight-horizon figcaption{color:var(--editorial-muted);margin-top:8px;font-size:12px}.h-band{fill:#c5f5661a}.h-grid{stroke:#2c3a4a;stroke-width:1px}.h-min{stroke:#6d7f92;stroke-width:1px;stroke-dasharray:5 5}.h-horizon{stroke:#9fb0c1;stroke-width:2px}.h-ground-tick{stroke:#6d7f92}.h-edge{stroke:var(--brand-lime);stroke-width:1.5px;stroke-dasharray:3 4;opacity:.8}.h-stem{stroke:var(--brand-lime);stroke-width:1px;opacity:.5}.h-peak{fill:var(--brand-lime);stroke:#0c1622;stroke-width:2px}.h-axis,.h-compass,.h-label{fill:#b9c6d3;font:13px var(--font-dm-sans), sans-serif}.h-compass{fill:#e3e9ef;font-weight:700}.h-label{fill:#f2f5f8;font-weight:600}.tonight-passes li{border-top:1px solid var(--line);grid-template-columns:minmax(150px,.8fr) minmax(0,2fr) auto;align-items:center;gap:10px 18px;padding:14px 0;display:grid}.tonight-passes li>div{display:grid}.tonight-passes li>div b{font:600 18px var(--font-space-grotesk), sans-serif}.tonight-passes li>div span{color:var(--editorial-muted);font-size:13px}.tonight-passes dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.tonight-passes dt,.tonight-source dt{color:var(--editorial-muted);font-size:12px}.tonight-passes dd,.tonight-source dd{margin:0;font-size:14px}.tonight-source{border:1px solid var(--line);border-radius:7px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 20px;margin:18px 0 0;padding:14px 16px;display:grid}.tonight-tips{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px 26px;display:grid}.tonight-tips li{color:var(--editorial-muted);font-size:15px;line-height:1.55}.tonight-tips b{color:var(--text);display:block}.tonight-sources{border-top:1px solid var(--line);max-width:860px;color:var(--editorial-muted);margin-top:40px;padding-top:24px;font-size:14px}.tonight-sources h2{font:600 19px var(--font-space-grotesk), sans-serif;color:var(--text);margin:0 0 10px}.tonight-sources ul{margin:0 0 12px;padding-left:20px;list-style:outside}.tonight-sources li{margin:4px 0}.tonight-sources a{color:var(--tonight-lime-text);text-underline-offset:3px;text-decoration:underline}@media (max-width:1050px){.tonight-controls{grid-template-columns:minmax(0,1fr) auto}.tonight-events{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.tonight-grid{grid-template-columns:minmax(0,1fr)}.tonight-passes li{grid-template-columns:minmax(0,1fr) auto}.tonight-passes dl{grid-area:2/1/auto/-1}}@media (max-width:720px){.tonight-controls{grid-template-columns:minmax(0,1fr);padding:18px}.tonight-gps{padding-top:0}.tonight-button{width:100%}.tonight-card{padding:18px}.tonight-head .dek{font-size:17px}.tonight-marker>span{display:none}.tonight-bar,.tonight-legend{margin-top:10px}.tonight-events{grid-template-columns:repeat(2,minmax(0,1fr))}.tonight-rows li,.tonight-passes dl{grid-template-columns:minmax(0,1fr);gap:6px}.h-axis,.h-compass,.h-label{font-size:19px}}.light .tonight-page{--tonight-day:#b9d6ec;--tonight-civil:#7f9fc1;--tonight-twilight:#4b6889;--tonight-dark:#1b2a3c;--tonight-night:#34495f;--tonight-lime-text:#3f601f;--tonight-input-bg:#fff;--tonight-soft:#eaf3de;--tonight-warn-bg:#fbf3df;--tonight-warn-line:#b88a1c;--tonight-warn-text:#5d4508}.light .tonight-input,.light .tonight-options{border-color:#a7b6a5}.light .tonight-options{box-shadow:0 14px 30px #1d2d131f}.light .tonight-field-error,.light .tonight-state[role=alert]>svg{color:#922a3a}.light .tonight-button{color:#304d15;background:#e6efda;border-color:#b9c8ab}.light .tonight-button:hover:not(:disabled),.light .tonight-marker{border-color:#567b25}.light .moon-dark{fill:#c9d1d9;stroke:#9aa7b4}.light .moon-lit{fill:#fdfbe9;stroke:#9aa7b4;stroke-width:1px}.light .tonight-chip:hover{border-color:#567b25}.light .tonight-horizon svg{border-color:#b9c5b6}
