/* A forecast is a compact visual answer, with detail available on demand. */
.weather-card{container-type:inline-size;width:100%;min-width:0;padding:16px 20px 10px;border:1px solid #31556b;border-radius:22px;background:linear-gradient(125deg,#123041,#101c30 70%);color:#edf6ff;font-size:16px;line-height:1.35;white-space:normal;box-shadow:inset 0 1px 0 #83e4ff13}
.weather-card .weather-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.weather-card .weather-location{margin:0;font-size:18px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}
.weather-card .weather-updated{font-size:12px;color:#a5bdcd;margin:0;white-space:nowrap}
.weather-now{display:flex;align-items:center;gap:18px;min-width:0;padding:8px 0 10px}
.weather-reading{display:flex;flex-direction:column;flex-shrink:0}
.weather-period{font-size:12px;color:#abc9dc}
.weather-temperature{font-size:54px;font-weight:650;letter-spacing:-2px;line-height:1.12;font-variant-numeric:tabular-nums;white-space:nowrap}
.weather-description{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}
.weather-condition{font-size:20px;font-weight:600}
.weather-feels{font-size:14px;color:#b9cddb}
.weather-art{width:88px;height:74px;flex-shrink:0;overflow:visible;stroke-width:3.5px}
.weather-sun-core{fill:#ffd56e;stroke:#ffe3a1;stroke-width:2px}.weather-sun-rays{stroke:#ffd56e;stroke-width:3px;transform-origin:48px 35px}
.weather-cloud{fill:#829fae;stroke:#c1e2ee;stroke-width:2px}.weather-moon{fill:#d6deee;stroke:#ebf4ff;stroke-width:2px}
.weather-drop{stroke:#66d5ff}.weather-flake{fill:#c2ecff}.weather-lightning{stroke:#ffe285;stroke-width:4px}
.weather-fog{stroke:#b4d0dc}.weather-wind{stroke:#9ee8f5}.weather-chill{stroke:#b9e3ff}.weather-unknown{stroke:#b4c8d8}
.weather-card[data-animate=true]>.weather-now .weather-sun-rays{animation:weather-ray-turn 30s linear infinite}
.weather-card[data-animate=true]>.weather-now .weather-sun-core{animation:weather-warmth 5s ease-in-out infinite}
.weather-card[data-animate=true]>.weather-now .weather-drop{animation:weather-drizzle 1.8s linear infinite}.weather-card[data-animate=true]>.weather-now .weather-drop-1{animation-delay:.6s}.weather-card[data-animate=true]>.weather-now .weather-drop-2{animation-delay:1.2s}
.weather-card[data-animate=true]>.weather-now .weather-flake{animation:weather-snowfall 4s ease-in-out infinite}.weather-card[data-animate=true]>.weather-now .weather-flake-1{animation-delay:1.3s}.weather-card[data-animate=true]>.weather-now .weather-flake-2{animation-delay:2.6s}
.weather-card[data-animate=true]>.weather-now .weather-wind{animation:weather-breeze 3.8s ease-in-out infinite}
.weather-card[data-animate=true]>.weather-now .weather-chill{animation:weather-chill-pulse 4.6s ease-in-out infinite}
.weather-stats{display:flex;align-items:stretch;gap:20px;border-top:1px solid #56819a45;padding:9px 0}
.weather-stat{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.weather-stat-label{font-size:12px;color:#afc6d4}.weather-stat-value{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}
.weather-section-label{font-size:12px;color:#afc6d4;border-top:1px solid #56819a45;padding:7px 0 6px}
.weather-card .weather-hours{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;padding:0;margin:0;list-style:none}
.weather-card .weather-hour{display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;justify-items:center;gap:3px 2px;min-width:0;padding:6px;border:1px solid #78a8c21c;border-radius:12px;background:#06152055;margin:0}
.weather-hour-time{font-size:13px;color:#cbdfec;white-space:nowrap}.weather-hour-temp{font-size:18px;font-variant-numeric:tabular-nums;white-space:nowrap}.weather-hour-rain{font-size:12px;color:#93d4ed}
.weather-art-small{width:28px;height:25px;stroke-width:4px}
.weather-more{margin-top:5px;font-size:13px;color:#a9d8ea}.weather-more>summary{cursor:pointer;min-height:30px;padding:6px 2px;width:fit-content}.weather-more>summary:hover{color:#e6f9ff}.weather-more[open]>.weather-hours{margin:5px 0}
.weather-card .weather-unavailable{margin:3px 0;font-size:13px;color:#b8cddc}
.weather-card .weather-week{list-style:none;padding:0;margin:0;border-top:1px solid #56819a45}
.weather-card .weather-day{display:grid;grid-template-columns:35px 29px minmax(60px,1fr) auto 34px;align-items:center;gap:9px;min-height:34px;margin:0;border-bottom:1px solid #56819a23;padding:3px 0;font-size:14px}
.weather-day-name{color:#d9e7f1}.weather-day-condition{color:#afc6d4;font-size:13px}.weather-day-range{font-weight:600;white-space:nowrap}.weather-day-rain{font-size:12px;text-align:right;color:#93d4ed}
.weather-day-name{display:flex;flex-direction:column;line-height:1.2}.weather-day-date{font-size:10px;color:inherit;opacity:.75}
.weather-card-notice,.weather-answer-notice{font-size:14px!important;line-height:1.5!important;color:var(--muted);margin:7px 2px!important;white-space:normal}
.weather-sources{font-size:12px;line-height:1.5;margin-top:5px;color:var(--muted)}.weather-sources>summary{cursor:pointer;min-height:28px;padding:5px 0;width:fit-content}.weather-sources .sources{margin:5px 0}
@container(max-width:470px){
 .weather-heading{flex-wrap:wrap;gap:3px!important}.weather-updated{font-size:11px!important}.weather-now{gap:12px;padding-block:8px}.weather-temperature{font-size:46px}.weather-condition{font-size:18px}.weather-feels{font-size:13px}.weather-now>.weather-art{width:64px;height:57px}.weather-stats{gap:9px}.weather-stat-label{font-size:11px}.weather-stat-value{font-size:14px}.weather-card .weather-hours{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.weather-card .weather-hour{display:grid;grid-template-columns:1fr 1fr;justify-items:center;gap:2px;padding:6px}.weather-hour-time{font-size:12px}.weather-hour-temp{font-size:17px}.weather-day-condition{display:none}.weather-card .weather-day{grid-template-columns:35px 29px 1fr 34px}.weather-day-range{text-align:right}
}
@media(max-width:700px){.weather-card{padding:13px 13px 8px;border-radius:19px}}
body[data-theme=light] .weather-card{background:linear-gradient(125deg,#e0f5fb,#f6faff);border-color:#9cc9db;color:#18384f;box-shadow:inset 0 1px 0 #fff}
body[data-theme=light] .weather-updated,body[data-theme=light] .weather-period,body[data-theme=light] .weather-feels,body[data-theme=light] .weather-stat-label,body[data-theme=light] .weather-section-label,body[data-theme=light] .weather-day-condition,body[data-theme=light] .weather-unavailable{color:#4e6b7d}
body[data-theme=light] .weather-hour{background:#ffffffa6;border-color:#accbdc66}body[data-theme=light] .weather-hour-time,body[data-theme=light] .weather-day-name{color:#294e67}body[data-theme=light] .weather-hour-rain,body[data-theme=light] .weather-day-rain,body[data-theme=light] .weather-more{color:#1a6a89}
body[data-theme=light] .weather-drop,body[data-theme=light] .weather-wind{stroke:#1980a6}body[data-theme=light] .weather-flake{fill:#227c9e}body[data-theme=light] .weather-chill{stroke:#28799e}body[data-theme=light] .weather-moon{fill:#647caa;stroke:#385887}body[data-theme=light] .weather-cloud{fill:#9fb9c8;stroke:#5e899f}
@keyframes weather-ray-turn{to{transform:rotate(360deg)}}
@keyframes weather-warmth{50%{opacity:.8}}
@keyframes weather-drizzle{0%{transform:translateY(-2px);opacity:0}20%{opacity:1}80%{opacity:.8}100%{transform:translate(-3px,6px);opacity:0}}
@keyframes weather-snowfall{0%{transform:translate(0,-4px);opacity:0}20%{opacity:1}100%{transform:translate(4px,7px);opacity:0}}
@keyframes weather-breeze{0%,100%{transform:translateX(-2px);opacity:.65}50%{transform:translateX(3px);opacity:1}}
@keyframes weather-chill-pulse{50%{opacity:.5}}
@media(prefers-reduced-motion:reduce){.weather-card *{animation:none!important}}
body.reduced-motion .weather-card *,body.reduce-motion .weather-card *,html[data-maxg-reduced-motion=true] .weather-card *,body[data-weather-effects=off] .weather-card *,body[data-weather-motion=off] .weather-card *{animation:none!important}
