#gnss-panel:has(.weather-monitor-workspace){margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.weather-monitor-workspace section{margin:0;padding:14px;border:1px solid #dce7ef;border-radius:12px;background:#fff;min-width:0}.weather-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}.weather-heading h2{font-size:18px;margin:0}.weather-heading label{display:flex;align-items:center;gap:8px;white-space:nowrap}.weather-heading select{margin:0}.weather-station-scroll{max-height:240px;overflow:auto}.weather-station-scroll table{width:100%;white-space:nowrap}.weather-station-scroll th{position:sticky;top:0;background:#f3f7fa;z-index:1}.weather-station-scroll th,.weather-station-scroll td{padding:7px 10px;font-size:13px}.weather-station-scroll td small{display:block;color:#728797;margin-top:3px}.weather-station-scroll tr[data-weather-id]{cursor:pointer}.weather-station-scroll .weather-selected td{background:#e4f1f6}.weather-station-scroll tr:focus-visible{outline:2px solid #12879a;outline-offset:-2px}#weather-message:empty{display:none}#weather-message{color:#b45309;margin:6px 0;font-size:13px}.weather-monitor-bottom{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:16px;margin-top:16px;align-items:stretch}.weather-chart h3{font-size:13px;margin:2px 0;color:#35546b}.weather-chart svg{display:block;width:100%;height:auto}.weather-chart text{font:11px system-ui;fill:#647d8e}.weather-map-panel{display:flex!important;flex-direction:column}.weather-map-panel>.weather-map-area{position:relative;flex:1;min-height:380px}.weather-map-area>#weather-map{position:absolute;inset:0;border-radius:8px}.weather-map-legend{position:absolute;left:12px;bottom:24px;z-index:450;display:flex;gap:12px;padding:7px 10px;background:#fffffff0;border:1px solid #dce7ef;border-radius:8px;font-size:12px;pointer-events:none}.weather-map-legend span{display:flex;align-items:center;gap:6px}.weather-map-legend i{width:11px;height:11px;border-radius:50%}#weather-map-summary{font-size:14px;color:#35546b}@media(max-width:1000px){.weather-monitor-bottom{grid-template-columns:1fr}.weather-map-panel>.weather-map-area{min-height:340px}}

.weather-page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.weather-page-heading .weather-project-filter{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:400;white-space:nowrap}.weather-project-filter select{margin:0}.weather-series-tools{justify-content:flex-end}.weather-chart{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:4px}.weather-axis-label{writing-mode:vertical-rl;text-orientation:mixed;justify-self:center;font-size:13px;font-weight:600;color:#35546b;letter-spacing:1px}
.weather-chart{grid-template-columns:24px minmax(0,1fr)}.weather-chart>.weather-axis-label{grid-column:1;grid-row:1}.weather-chart>svg{grid-column:2;grid-row:1}

#weather-charts{display:flex;flex-direction:column;gap:2px}.weather-chart{margin:0;padding:0}.weather-series-tools{margin-bottom:6px}
/* Reserve a taller independently scrollable sensor list above bottom-aligned plots. */
.weather-monitor-workspace{display:flex;flex-direction:column;min-height:calc(100vh - 210px);gap:16px}
.weather-monitor-workspace>.weather-station-panel{flex:1 0 auto;min-height:300px;display:flex;flex-direction:column;box-sizing:border-box}
.weather-station-panel>.weather-station-scroll{flex:1;min-height:260px;max-height:42vh;overflow:auto;scrollbar-gutter:stable}
.weather-monitor-workspace>.weather-monitor-bottom{flex:0 0 auto;margin-top:auto;align-items:stretch}
.weather-monitor-bottom>.weather-series-panel,.weather-monitor-bottom>.weather-map-panel{align-self:stretch;box-sizing:border-box}
@media(max-width:1000px){.weather-monitor-workspace{min-height:0}.weather-monitor-workspace>.weather-station-panel{min-height:260px}.weather-station-panel>.weather-station-scroll{min-height:220px;max-height:42vh}.weather-monitor-workspace>.weather-monitor-bottom{margin-top:0}}

.weather-position-warning{margin:0 0 10px;padding:9px 12px;border:1px solid #f0d199;border-radius:8px;background:#fff8e8;color:#915b0b;font-size:13px;line-height:1.6}.weather-position-warning[hidden],.weather-position-warning:empty{display:none}.weather-position-missing{color:#b91c1c;font-weight:600}.weather-position-pending{color:#b45309}
