.weatherWaycastStatusCard{display:grid;gap:10px;border-color:rgba(91,151,204,.34);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.weatherWaycastHeader,.weatherWaycastHeaderActions,.weatherWaycastForecastTop,.weatherWaycastHiddenRow{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.weatherWaycastHeaderActions{align-items:center;flex:none;flex-wrap:wrap;justify-content:flex-end}
.weatherWaycastHeaderActions button,.weatherWaycastHiddenRow button{padding:6px 9px;font-size:11px}
.weatherWaycastState{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 9px;border:1px solid rgba(112,146,180,.3);border-radius:999px;background:rgba(255,255,255,.04);color:#dce9f5;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.weatherWaycastState b{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:rgba(148,163,184,.18);font-size:11px;line-height:1}
.weatherWaycastState[data-state="ok"]{border-color:rgba(34,197,94,.32);color:#dcfce7}.weatherWaycastState[data-state="ok"] b{background:rgba(34,197,94,.2)}
.weatherWaycastState[data-state="pending"]{border-color:rgba(96,165,250,.34);color:#dbeafe}.weatherWaycastState[data-state="pending"] b{background:rgba(59,130,246,.2)}
.weatherWaycastState[data-state="stale"],.weatherWaycastState[data-state="failed"]{border-color:rgba(245,158,11,.36);color:#fef3c7}.weatherWaycastState[data-state="stale"] b,.weatherWaycastState[data-state="failed"] b{background:rgba(245,158,11,.2)}
.weatherWaycastFallback{padding:9px 10px;border:1px solid rgba(245,158,11,.24);border-radius:7px;background:rgba(146,64,14,.16);color:#fde7b0;font-size:11px;line-height:1.42}
.weatherWaycastForecastGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.weatherWaycastForecastTile{display:grid;gap:6px;min-width:0;padding:9px;border:1px solid rgba(85,119,153,.26);border-radius:8px;background:linear-gradient(180deg,rgba(12,24,39,.92),rgba(8,17,29,.96))}
.weatherWaycastForecastTop strong{color:#91acc4;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.weatherWaycastFxMarker{display:inline-flex;align-items:center;justify-content:center;min-width:20px;color:#9fb8cf;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-bottom:1px dashed currentColor}
.weatherWaycastWind{color:#f4f8fb;font-size:15px;font-weight:800;white-space:nowrap}
.weatherWaycastMetrics{display:grid;gap:2px;color:#b6c9da;font-size:10px;line-height:1.35}
.weatherWaycastForecastTile time{color:#7894ae;font-size:9px;line-height:1.3;overflow-wrap:anywhere}
.weatherWaycastEmpty{grid-column:1/-1;padding:12px;border:1px dashed rgba(96,132,168,.3);border-radius:8px;color:#9eb4c8;font-size:11px;line-height:1.4;text-align:center}
.weatherWaycastProvenance{border-top:1px solid rgba(84,114,144,.22);padding-top:8px}
.weatherWaycastProvenance summary{cursor:pointer;color:#b9cde0;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.weatherWaycastProvenance dl{display:grid;gap:5px;margin:9px 0 0}
.weatherWaycastProvenance dl>div{display:grid;grid-template-columns:minmax(88px,.4fr) minmax(0,1fr);gap:8px;padding:5px 0;border-bottom:1px solid rgba(82,111,140,.14)}
.weatherWaycastProvenance dt{color:#7f9bb4;font-size:10px;text-transform:uppercase}.weatherWaycastProvenance dd{margin:0;color:#c8d7e5;font-size:10px;overflow-wrap:anywhere}
.weatherWaycastHiddenRow{align-items:center;color:#a8bdd1;font-size:11px}.weatherWaycastHiddenRow strong{color:#e2edf7}
.weatherWaycastScorecard{display:grid;gap:8px;padding:9px;border:1px solid rgba(91,151,204,.22);border-radius:8px;background:rgba(7,16,27,.56)}
.weatherWaycastScorecardHead{display:flex;align-items:center;justify-content:space-between;gap:10px}.weatherWaycastScorecardHead>div{display:grid;gap:2px}.weatherWaycastScorecardHead strong{color:#dceaf5;font-size:11px}.weatherWaycastScorecardHead span{color:#7894ae;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.weatherWaycastScorecardHead button{padding:6px 9px;font-size:10px}
.weatherWaycastScoreGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.weatherWaycastScoreGrid>div{display:grid;gap:2px;padding:7px;border:1px solid rgba(82,111,140,.18);border-radius:6px;background:rgba(9,21,35,.72)}.weatherWaycastScoreGrid span{color:#7894ae;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.weatherWaycastScoreGrid strong{color:#eef6fb;font-size:13px}.weatherWaycastScoreGrid small,.weatherWaycastScoreNote{color:#8ea7ba;font-size:9px;line-height:1.4}
.weatherDenseMatrixFxSource{display:inline-block;margin-left:3px;color:#355b7a;font-size:8px;font-weight:900;letter-spacing:.04em;line-height:1;border-bottom:1px dashed currentColor;vertical-align:super}
@media(max-width:1080px){.weatherWaycastForecastGrid{grid-template-columns:1fr}.weatherWaycastWind{font-size:14px}.weatherWaycastScoreGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
