.weather-alert-indicator-high-priority{border:var(--weather-alert-high-border) solid 1px;border-radius:var(--border-radius);background:var(--weather-alert-high-bg)}.weather-alert-indicator-medium-priority{border:var(--weather-alert-normal-border) solid 1px;border-radius:var(--border-radius);background:var(--weather-alert-normal-bg)}.weather-alert-indicator-low-priority{border:var(--weather-alert-low-border) solid 1px;border-radius:var(--border-radius);background:var(--weather-alert-low-bg)}.weather-alert-indicator-normal{border:var(--weather-alert-normal-border) solid 1px;border-radius:var(--border-radius);background:var(--weather-alert-normal-bg)}.card-title-weather{text-align:center;font-weight:var(--font-semibold);color:var(--text-color)}.weather-quality-label{font-size:.72rem;font-weight:var(--font-semibold);opacity:.85;white-space:nowrap}.weather-metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:.3rem}.weather-metric-cell{display:flex;align-items:center;gap:.35rem;padding:.3rem .4rem;border-radius:var(--border-radius);background:color-mix(in srgb,var(--surface-elevated) 78%,var(--bs-secondary-bg));border:1px solid var(--surface-border);min-width:0}.weather-metric-cell--full{grid-column:1 / -1}.weather-metric-cell>i{flex-shrink:0;font-size:.95rem;opacity:.85}.weather-metric-info{display:flex;flex-direction:column;min-width:0;line-height:1.25}.weather-metric-val{font-weight:600;white-space:nowrap;font-size:.85rem;font-variant-numeric:tabular-nums}.weather-metric-lbl{font-size:.67rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weather-cloud-layers{display:flex;justify-content:space-around;padding:.35rem 0 0;font-size:.72rem;color:var(--text-muted)}.weather-cloud-layer-item{white-space:nowrap}.aurora-kp-dot{display:flex;align-items:center;justify-content:flex-end;padding-right:.4rem;font-size:1.5rem}.quality-box{border-top-left-radius:var(--border-radius-card) !important;border-top-right-radius:var(--border-radius-card) !important;padding:.5rem .75rem}.quality-excellent{--quality-bg:var(--quality-excellent);--quality-overlay:var(--quality-excellent-overlay);--quality-text:var(--quality-excellent-text);--quality-border:var(--quality-excellent-border);--quality-shadow:var(--quality-excellent-shadow);--quality-shadow-hover:var(--quality-excellent-shadow-hover)}.quality-good{--quality-bg:var(--quality-good);--quality-overlay:var(--quality-good-overlay);--quality-text:var(--quality-good-text);--quality-border:var(--quality-good-border);--quality-shadow:var(--quality-good-shadow);--quality-shadow-hover:var(--quality-good-shadow-hover)}.quality-fair{--quality-bg:var(--quality-fair);--quality-overlay:var(--quality-fair-overlay);--quality-text:var(--quality-fair-text);--quality-border:var(--quality-fair-border);--quality-shadow:var(--quality-fair-shadow);--quality-shadow-hover:var(--quality-fair-shadow-hover)}.quality-poor{--quality-bg:var(--quality-poor);--quality-overlay:var(--quality-poor-overlay);--quality-text:var(--quality-poor-text);--quality-border:var(--quality-poor-border);--quality-shadow:var(--quality-poor-shadow);--quality-shadow-hover:var(--quality-poor-shadow-hover)}.quality-bad{--quality-bg:var(--quality-bad);--quality-overlay:var(--quality-bad-overlay);--quality-text:var(--quality-bad-text);--quality-border:var(--quality-bad-border);--quality-shadow:var(--quality-bad-shadow);--quality-shadow-hover:var(--quality-bad-shadow-hover)}.quality-unknown{--quality-bg:var(--dew-unknown-bg);--quality-overlay:var(--dew-unknown-overlay);--quality-text:var(--dew-unknown-text);--quality-border:var(--dew-unknown-border);--quality-shadow:var(--dew-unknown-shadow);--quality-shadow-hover:var(--dew-unknown-shadow-hover)}.night-score-timeline-scroll{overflow-x:auto;overflow-y:visible;scrollbar-width:thin;padding:.5rem .75rem .6rem}.night-score-timeline{display:flex;gap:.5rem}.night-score-card{flex:1 0 104px;min-width:104px;max-width:140px}.night-score-hour-row{display:flex;align-items:center;justify-content:center;gap:.2rem}.night-score-hour{font-size:.8rem}.night-score-card-now{border:2px solid var(--accent-glow-strong) !important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-glow) 28%,transparent)}.night-score-card .card-body{display:flex;flex-direction:column;align-items:center;gap:.3rem}.night-score-value{font-size:1.6rem;font-weight:var(--font-bold);line-height:1}.night-score-card .astro-quality-text{margin-bottom:0;padding:.1rem .3rem;font-size:.7rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.night-score-icons{display:flex;justify-content:center;align-items:center;gap:.25rem;font-size:.75rem;margin-top:auto}@media(max-width:575.98px){.night-score-card{flex-basis:92px;min-width:92px}.night-score-icons{gap:.12rem;font-size:.65rem}}.trend-chart-canvas{display:block;width:100%;height:300px}.chart-legend-badge{user-select:none}.chart-legend-badge[role="button"]{cursor:pointer}.chart-legend-badge--off{opacity:.4;text-decoration:line-through}.trend-score-caption{padding:0 .25rem}@media(max-width:575.98px){.trend-chart-canvas{height:340px}.chart-legend-row{row-gap:.25rem}.chart-legend-row>.col-auto{padding-inline:.15rem}.chart-legend-badge{font-size:.68rem;padding:.22em .45em}}.astro-card-header{display:flex;align-items:center;gap:.35rem;flex:0 0 auto}.astro-card-icon{font-size:1em;flex-shrink:0}.astro-main-value{font-size:2rem;font-weight:var(--font-bold);color:var(--quality-text,var(--dew-text,var(--primary-color)));line-height:1;margin-bottom:.5rem}@media(max-width:575px){.astro-card-header{flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:.4rem .25rem .2rem}.astro-card-icon{font-size:1.4rem;margin-bottom:.15rem}.astro-card-label{font-size:.7rem;font-weight:var(--font-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.astro-main-value{font-size:1.5rem}.astro-condition-card .card-body{padding-left:.4rem;padding-right:.4rem}.astro-quality-text{font-size:.65rem;padding:.15rem .35rem;margin-bottom:.3rem}.astro-condition-card .fw-light{font-size:.6rem}}.astro-quality-text{font-size:.75rem;font-weight:var(--font-semibold);padding:.25rem .5rem;border-radius:var(--border-radius);margin-bottom:.5rem;display:inline-block;line-height:1.2}.astro-condition-card{border-top:3px solid var(--quality-border,var(--dew-border,var(--color-border)));transition:border-top-color var(--transition-normal);border-radius:var(--border-radius-lg)}#astro-seeing-chart,#astro-clouds-chart,#astro-conditions-chart{width:100% !important;height:340px !important;display:block}@media(max-width:575.98px){#astro-seeing-chart,#astro-clouds-chart,#astro-conditions-chart{height:280px !important}}.dew-box{border-radius:var(--border-radius);display:inline-block}.dew-minimal{--dew-bg:var(--dew-minimal-bg);--dew-overlay:var(--dew-minimal-overlay);--dew-text:var(--dew-minimal-text);--dew-border:var(--dew-minimal-border);--dew-shadow:var(--dew-minimal-shadow);--dew-shadow-hover:var(--dew-minimal-shadow-hover)}.dew-low{--dew-bg:var(--dew-low-bg);--dew-overlay:var(--dew-low-overlay);--dew-text:var(--dew-low-text);--dew-border:var(--dew-low-border);--dew-shadow:var(--dew-low-shadow);--dew-shadow-hover:var(--dew-low-shadow-hover)}.dew-moderate{--dew-bg:var(--dew-moderate-bg);--dew-overlay:var(--dew-moderate-overlay);--dew-text:var(--dew-moderate-text);--dew-border:var(--dew-moderate-border);--dew-shadow:var(--dew-moderate-shadow);--dew-shadow-hover:var(--dew-moderate-shadow-hover)}.dew-high{--dew-bg:var(--dew-high-bg);--dew-overlay:var(--dew-high-overlay);--dew-text:var(--dew-high-text);--dew-border:var(--dew-high-border);--dew-shadow:var(--dew-high-shadow);--dew-shadow-hover:var(--dew-high-shadow-hover)}.dew-critical{--dew-bg:var(--dew-critical-bg);--dew-overlay:var(--dew-critical-overlay);--dew-text:var(--dew-critical-text);--dew-border:var(--dew-critical-border);--dew-shadow:var(--dew-critical-shadow);--dew-shadow-hover:var(--dew-critical-shadow-hover)}.dew-unknown{--dew-bg:var(--dew-unknown-bg);--dew-overlay:var(--dew-unknown-overlay);--dew-text:var(--dew-unknown-text);--dew-border:var(--dew-unknown-border);--dew-shadow:var(--dew-unknown-shadow);--dew-shadow-hover:var(--dew-unknown-shadow-hover)}.moon-info-card{background:var(--bg-gradient);color:var(--text-light);margin-bottom:1.25rem;grid-column:1 / -1;border-radius:var(--border-radius-xl);box-shadow:var(--shadow-info-card);border:1px solid var(--info-card-border);position:relative;overflow:hidden}.moon-info-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--info-card-sheen),transparent)}.moon-visual-wrap{position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}.moon-visual-wrap::before{content:'';position:absolute;width:80%;height:80%;border-radius:50%;background:var(--moon-glow);filter:blur(20px);z-index:-1;pointer-events:none;animation:moon-glow-pulse 4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.moon-visual-wrap::before{animation:none}}@keyframes moon-glow-pulse{0%,100%{opacity:.8;width:80%;height:80%}50%{opacity:1;width:92%;height:92%}}.moon-visual{position:relative}.moon-visual svg{display:block;filter:drop-shadow(0 4px 18px rgba(0,0,0,0.35))}.moon-phase-calendar-card{background:var(--bg-gradient);color:var(--text-light);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-info-card);border:1px solid var(--info-card-border);position:relative;overflow:hidden}.moon-phase-calendar-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--info-card-sheen),transparent)}.moon-phase-cal-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem .75rem;flex-wrap:wrap;padding:.75rem 1rem;border-bottom:1px solid var(--info-card-border);background:rgba(255,255,255,0.05)}.moon-phase-cal-title{font-weight:var(--font-semibold,600);font-size:1rem}.moon-phase-cal-nav .moon-phase-cal-nav-btn{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;color:var(--text-light);border-color:rgba(255,255,255,0.35)}.moon-phase-cal-nav .moon-phase-cal-nav-btn:hover:not(:disabled){background:rgba(255,255,255,0.14);color:var(--text-light)}.moon-phase-cal-nav .moon-phase-cal-nav-btn:disabled{opacity:.4}.moon-phase-cal-body{padding:.85rem 1rem 1rem}.moon-phase-cal-month{text-align:center;text-transform:capitalize;font-size:.95rem;margin-bottom:.7rem;letter-spacing:.02em}.moon-phase-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.moon-phase-cal-weekday{font-size:.65rem;font-weight:600;text-align:center;text-transform:uppercase;opacity:.65;padding-bottom:3px}.moon-phase-cal-cell{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;padding:5px 2px 6px;border-radius:var(--border-radius-half);border:1px solid rgba(255,255,255,0.12);background:rgba(255,255,255,0.06)}.moon-phase-cal-blank{visibility:hidden;border-color:transparent;background:transparent}.moon-phase-cal-day{font-size:.74rem;font-weight:700;line-height:1.1}.moon-phase-cal-moon{margin:2px 0 1px;line-height:0}.moon-phase-cal-moon svg{display:block;width:100%;max-width:36px;height:auto;filter:drop-shadow(0 2px 5px rgba(0,0,0,0.45))}.moon-phase-cal-illum{font-size:.62rem;opacity:.75;line-height:1.1}.moon-phase-cal-tag{display:flex;align-items:center;justify-content:center;font-size:.8rem;line-height:1;margin-top:2px}.moon-phase-cal-today{outline:2px solid var(--accent-glow-strong);outline-offset:-2px}.moon-phase-cal-cell--new{background:rgba(129,140,248,0.28);border-color:rgba(129,140,248,0.65);box-shadow:0 0 14px rgba(129,140,248,0.4)}.moon-phase-cal-cell--full{background:rgba(253,224,138,0.26);border-color:rgba(253,224,138,0.7);box-shadow:0 0 16px rgba(253,224,138,0.45)}.moon-phase-cal-cell--first-quarter,.moon-phase-cal-cell--last-quarter{background:rgba(148,197,233,0.24);border-color:rgba(148,197,233,0.6)}.moon-phase-cal-cell--moonless{background:rgba(56,189,248,0.16);border-color:rgba(56,189,248,0.38)}.moon-phase-cal-footer{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .8rem;padding:.6rem 1rem;font-size:.78rem;border-top:1px solid var(--info-card-border);background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.85)}.moon-phase-cal-legend-item{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap}.moon-phase-cal-legend-item--moonless::before{content:'';display:inline-block;width:12px;height:12px;border-radius:3px;background:rgba(56,189,248,0.4);border:1px solid rgba(56,189,248,0.55)}@media(max-width:430px){.moon-phase-cal-header,.moon-phase-cal-body,.moon-phase-cal-footer{padding-left:.6rem;padding-right:.6rem}.moon-phase-cal-grid{gap:3px}.moon-phase-cal-cell{padding:4px 1px 5px}.moon-phase-cal-illum{display:none}}.sun-info-card{background:var(--sun-gradient);color:var(--text-light);margin-bottom:1.25rem;border-radius:var(--border-radius-xl);box-shadow:var(--shadow-info-card);border:1px solid var(--info-card-border);position:relative;overflow:hidden}.sun-info-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--info-card-sheen),transparent)}.icon-weather-lg{font-size:48px;margin-bottom:.5rem}#best-observation-periods-main .alert{border:1px solid var(--border-color);background:var(--bg-sub-container);color:var(--text-muted)}#best-observation-periods-main #astro-best-periods{background:var(--bg-sub-container);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:.75rem}#best-observation-periods-main .best-period-empty-icon{margin-bottom:.25rem}#seeing-subtab .seeing-forecast-table tbody tr{transition:background-color .15s ease}#seeing-subtab .seeing-forecast-table tbody tr.seeing-row-night td{background-color:rgba(var(--bs-info-rgb),0.08)}#seeing-subtab .seeing-forecast-table tbody tr.seeing-row-day td{background-color:rgba(var(--bs-warning-rgb),0.08)}#seeing-subtab .seeing-time-cell{display:flex;align-items:center;gap:.5rem;white-space:nowrap}#seeing-subtab .seeing-time-label{font-variant-numeric:tabular-nums}#seeing-subtab .seeing-daynight-indicator{width:1.5rem;height:1.5rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;border:1px solid transparent;flex:0 0 auto}#seeing-subtab .seeing-daynight-indicator.is-night{background:rgba(var(--bs-info-rgb),0.18);color:var(--bs-info);border-color:rgba(var(--bs-info-rgb),0.3)}#seeing-subtab .seeing-daynight-indicator.is-day{background:rgba(var(--bs-warning-rgb),0.2);color:var(--bs-warning);border-color:rgba(var(--bs-warning-rgb),0.35)}#seeing-subtab .seeing-score-pill{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;padding:.1rem .45rem;border-radius:999px;background:var(--bs-secondary-bg);border:1px solid var(--bs-border-color)}@media(max-width:575.98px){#seeing-subtab .seeing-forecast-table{font-size:.9rem}#seeing-subtab .seeing-daynight-indicator{width:1.35rem;height:1.35rem;font-size:.72rem}#seeing-subtab .seeing-time-cell{gap:.4rem}}#best-observation-periods-main .best-period-empty-text{color:var(--text-muted)}#best-observation-periods-main .best-period-card{background:var(--bg-sub-container);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-surface-sm)}#best-observation-periods-main .best-period-card .card-header{background:var(--bg-sub-container);border-bottom:1px solid var(--border-color)}#best-observation-periods-main .best-period-card .card-title{color:var(--text-color);font-size:.98rem}#best-observation-periods-main .best-period-card .card-subtitle{font-size:.8rem}#best-observation-periods-main .best-period-card .list-group-item{background:var(--bg-sub-container);color:var(--text-color);border-color:var(--border-color);padding:.55rem .75rem;font-size:.9rem}#best-observation-periods-main .best-period-card .fw-bold{color:var(--primary-color)}.weather-alerts-modal-dialog{max-width:460px}.weather-alerts-modal-body{display:flex;flex-direction:column;gap:.75rem}.weather-alert-item{display:flex;align-items:flex-start;gap:.875rem;padding:.75rem 1rem;border-radius:var(--border-radius-card);background:var(--surface-1);border:1px solid var(--surface-border);position:relative;overflow:hidden}.weather-alert-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px}.weather-alert-item--high::before{background:var(--weather-alert-high-border)}.weather-alert-item--medium::before{background:var(--weather-alert-normal-border)}.weather-alert-item--low::before{background:var(--weather-alert-low-border)}.weather-alert-item__icon{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;margin-left:.125rem}.weather-alert-item--high .weather-alert-item__icon{background:var(--weather-alert-high-bg);color:var(--weather-alert-high-border)}.weather-alert-item--medium .weather-alert-item__icon{background:var(--weather-alert-normal-bg);color:var(--weather-alert-normal-border)}.weather-alert-item--low .weather-alert-item__icon{background:var(--weather-alert-low-bg);color:var(--weather-alert-low-border)}.weather-alert-item__content{flex:1;min-width:0}.weather-alert-item__header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.15rem}.weather-alert-item__badge{font-size:.68rem;font-weight:var(--font-semibold);padding:.15rem .55rem;border-radius:var(--border-radius-pill);text-transform:uppercase;letter-spacing:.02em;line-height:1.4}.weather-alert-item--high .weather-alert-item__badge{background:var(--weather-alert-high-bg);color:var(--weather-alert-high-border)}.weather-alert-item--medium .weather-alert-item__badge{background:var(--weather-alert-normal-bg);color:var(--weather-alert-normal-border)}.weather-alert-item--low .weather-alert-item__badge{background:var(--weather-alert-low-bg);color:var(--weather-alert-low-border)}.weather-alert-item__time{font-size:.75rem;color:var(--text-muted);margin-left:auto;white-space:nowrap}.weather-alert-item__message{font-size:.9rem;color:var(--text-color);line-height:1.35}.weather-alerts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:2.5rem 1rem;color:var(--text-muted);text-align:center}.weather-alerts-empty i{font-size:2.25rem;color:var(--success-500)}
