.weather-scene-card{--scene-sway:0deg;--scene-wind-duration:8s;--scene-rain-angle:0deg;--scene-wind-opacity:0;margin:0 0 24px;overflow:hidden;border:1px solid rgba(86,150,174,.28);border-radius:28px;background:#edf7f9;box-shadow:0 20px 45px rgba(25,73,95,.14);color:#173f52}
.live-hero + .weather-scene-card{margin-top:24px}
.weather-scene-top{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.4fr);min-height:350px}
.weather-scene-copy{position:relative;z-index:3;padding:32px 30px;background:linear-gradient(140deg,#f4fbfc,#e6f4f7)}
.weather-scene-eyebrow{color:#338a9e;font-size:.67rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.weather-scene-copy h2{margin:12px 0 9px;font-size:clamp(1.5rem,2.8vw,2.3rem);line-height:1.13;letter-spacing:-.025em}
.weather-scene-copy p{max-width:380px;margin:0;color:#577b8a;font-size:.8rem;line-height:1.6}
.weather-scene-temperature{display:block;margin-top:18px;font-size:clamp(2.6rem,5.6vw,4.1rem);line-height:1.06;letter-spacing:-.035em}
.weather-scene-feels{display:block;margin-top:5px;color:#607e8c;font-size:.75rem}
.weather-scene-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.weather-scene-tags>span{padding:6px 10px;border:1px solid rgba(64,138,162,.18);border-radius:999px;color:#397488;background:rgba(255,255,255,.7);font-size:.59rem;font-weight:800}
.weather-scene-art{position:relative;isolation:isolate;min-width:0;min-height:350px;overflow:hidden;background:linear-gradient(180deg,#72c5e7,#c2e9ef 76%);transition:background .8s}
.weather-scene-card[data-period="night"] .weather-scene-art{background:linear-gradient(180deg,#132645,#305273 80%)}
.weather-scene-card[data-sky="cloudy"] .weather-scene-art,.weather-scene-card:is([data-rain="heavy"],[data-rain="very-heavy"]) .weather-scene-art{background:linear-gradient(180deg,#789daf,#b1c9d0 78%)}
.weather-scene-card[data-period="night"][data-sky="cloudy"] .weather-scene-art,.weather-scene-card[data-period="night"]:is([data-rain="heavy"],[data-rain="very-heavy"]) .weather-scene-art{background:linear-gradient(180deg,#1b2f46,#456070)}
.weather-scene-sun{position:absolute;top:var(--scene-sun-y,15%);left:var(--scene-sun-x,23%);width:73px;height:73px;border-radius:50%;background:#ffefad;box-shadow:0 0 0 14px rgba(255,235,160,.12),0 0 60px 28px rgba(255,237,173,.22);opacity:0;transition:opacity .8s,top 1s,left 1s}
.weather-scene-card[data-period="day"]:is([data-sky="clear"],[data-sky="mixed"]) .weather-scene-sun{opacity:1}
.weather-scene-moon{position:absolute;top:43px;left:26%;width:52px;height:52px;border-radius:50%;background:#eaf5ff;box-shadow:0 0 35px rgba(230,247,255,.25);opacity:0;transition:opacity .8s}
.weather-scene-moon:after{position:absolute;top:-6px;left:14px;width:45px;height:45px;content:"";border-radius:50%;background:#1c3453}
.weather-scene-card[data-period="night"][data-sky="clear"] .weather-scene-moon{opacity:1}
.weather-scene-stars{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;background-image:radial-gradient(circle at 7% 8%,#e9f4ff 0 .7px,transparent 1.7px),radial-gradient(circle at 15% 18%,#fff 0 1px,transparent 2px),radial-gradient(circle at 22% 5%,#fff9e4 0 .6px,transparent 1.6px),radial-gradient(circle at 34% 15%,#e9f4ff 0 .7px,transparent 1.7px),radial-gradient(circle at 46% 7%,#fff 0 1px,transparent 2px),radial-gradient(circle at 55% 24%,#fff9e4 0 .6px,transparent 1.6px),radial-gradient(circle at 63% 12%,#fff 0 1px,transparent 2px),radial-gradient(circle at 74% 5%,#e9f4ff 0 .7px,transparent 1.7px),radial-gradient(circle at 80% 30%,#fff 0 1px,transparent 2px),radial-gradient(circle at 90% 9%,#fff 0 1px,transparent 2px),radial-gradient(circle at 96% 24%,#fff9e4 0 .6px,transparent 1.6px),radial-gradient(circle at 4% 36%,#e9f4ff 0 .7px,transparent 1.7px),radial-gradient(circle at 24% 31%,#fff 0 .8px,transparent 1.8px),radial-gradient(circle at 42% 38%,#fff 0 1px,transparent 2px),radial-gradient(circle at 61% 35%,#e9f4ff 0 .7px,transparent 1.7px),radial-gradient(circle at 71% 45%,#fff9e4 0 .6px,transparent 1.6px),radial-gradient(circle at 88% 42%,#fff 0 .8px,transparent 1.8px),radial-gradient(circle at 12% 49%,#fff 0 .7px,transparent 1.7px),radial-gradient(circle at 32% 52%,#e9f4ff 0 .7px,transparent 1.7px),radial-gradient(circle at 52% 47%,#fff9e4 0 .6px,transparent 1.6px),radial-gradient(circle at 95% 55%,#fff 0 .7px,transparent 1.7px),radial-gradient(circle at 20% 59%,#e9f4ff 0 .6px,transparent 1.6px),radial-gradient(circle at 44% 61%,#fff 0 .7px,transparent 1.7px),radial-gradient(circle at 77% 58%,#fff9e4 0 .6px,transparent 1.6px)}
.weather-scene-stars:after{content:"";position:absolute;inset:0;opacity:.65;background-image:radial-gradient(circle at 11% 25%,#fff 0 1px,#deedff40 1.5px,transparent 3px),radial-gradient(circle at 38% 9%,#fff 0 .8px,transparent 2px),radial-gradient(circle at 67% 28%,#fff 0 1px,#deedff40 1.5px,transparent 3px),radial-gradient(circle at 85% 17%,#fff 0 .8px,transparent 2px),radial-gradient(circle at 29% 43%,#fff 0 .8px,transparent 2px),radial-gradient(circle at 58% 56%,#fff 0 1px,transparent 2px);animation:scene-star-glimmer 9s ease-in-out infinite alternate}
.weather-scene-card[data-stars="on"][data-period="night"] .weather-scene-stars{opacity:.85}
.weather-scene-card[data-stars="on"][data-period="night"][data-sky="mixed"] .weather-scene-stars{opacity:.7}
.weather-scene-card[data-stars="off"] .weather-scene-stars{opacity:0!important}
.weather-scene-card.no-stars-motion .weather-scene-stars:after{animation:none!important}
.weather-scene-card[data-stars="off"] .weather-scene-stars:after{animation:none!important}
.weather-scene-card:is(.is-paused,.is-stale) .weather-scene-stars:after{animation-play-state:paused!important}
@keyframes scene-star-glimmer{from{opacity:.4}to{opacity:.85}}
@media(prefers-reduced-motion:reduce){.weather-scene-stars:after{animation:none!important}}
.weather-scene-cloud{position:absolute;top:65px;left:40%;width:160px;height:43px;border-radius:80px;background:#f2fafc;box-shadow:inset 0 -7px 15px rgba(65,105,135,.08);opacity:0;animation:scene-cloud-drift calc(var(--scene-wind-duration)*3) ease-in-out infinite alternate;transition:opacity .6s}
.weather-scene-cloud:before,.weather-scene-cloud:after{position:absolute;bottom:16px;content:"";width:68px;height:68px;border-radius:50%;background:inherit}
.weather-scene-cloud:before{left:25px}.weather-scene-cloud:after{right:22px;width:51px;height:51px}
.weather-scene-cloud.cloud-two{top:120px;left:5%;transform:scale(.75);animation-delay:-7s}.weather-scene-cloud.cloud-three{top:40px;left:75%;transform:scale(1.15);animation-delay:-11s}
.weather-scene-card:is([data-sky="mixed"],[data-sky="cloudy"]) .weather-scene-cloud{opacity:1}
.weather-scene-card[data-sky="mixed"] .cloud-three{opacity:0}
/* Mostly sunny: two small clouds, with the sun remaining unobscured. */
.weather-scene-card[data-period="day"][data-sky="clear"] .weather-scene-sun{z-index:1}
.weather-scene-card[data-period="day"][data-sky="clear"] .weather-scene-cloud.cloud-two{top:32%;left:7%;transform:scale(.55);opacity:1}
.weather-scene-card[data-period="day"][data-sky="clear"] .weather-scene-cloud.cloud-three{top:19%;left:74%;transform:scale(.65);opacity:1}
.weather-scene-card:not([data-rain="dry"]):not([data-rain="unknown"]) .weather-scene-cloud{opacity:1;background:#d5e4ec}
.weather-scene-card[data-period="night"] .weather-scene-cloud{background:#8ba6ba;opacity:0}
.weather-scene-card[data-period="night"]:is([data-sky="mixed"],[data-sky="cloudy"]) .weather-scene-cloud,.weather-scene-card[data-period="night"]:not([data-rain="dry"]):not([data-rain="unknown"]) .weather-scene-cloud{opacity:1}
.weather-scene-hill{position:absolute;right:-15%;bottom:27px;left:-15%;height:125px;border-radius:50% 50% 0 0;background:#98bbac;transform:rotate(-6deg)}
.weather-scene-hill.hill-front{bottom:-10px;left:5%;height:113px;background:#659883;transform:rotate(8deg)}
.weather-scene-ground{position:absolute;bottom:0;left:0;right:0;height:39px;background:linear-gradient(180deg,#55846c,#3b6c5b);z-index:4}
.weather-scene-house{position:absolute;bottom:38px;left:41%;width:81px;height:71px;background:#eae0cd;border-radius:3px;z-index:2;box-shadow:inset -15px 0 rgba(115,110,93,.12)}
.weather-scene-house:before{position:absolute;top:-40px;left:-12px;content:"";border-right:53px solid transparent;border-left:53px solid transparent;border-bottom:43px solid #4d6270}
.weather-scene-house>i{position:absolute;bottom:0;left:32px;width:19px;height:35px;background:#7c8f8c;border-radius:4px 4px 0 0}
.weather-scene-house>b{position:absolute;top:18px;left:12px;width:14px;height:17px;background:#91c8dc;box-shadow:44px 0 #91c8dc}
.weather-scene-card[data-period="night"] .weather-scene-house>b{background:#f3d88b;box-shadow:44px 0 #f3d88b}
.weather-scene-tree{position:absolute;bottom:33px;left:12%;width:77px;height:160px;z-index:3;transform-origin:50% 100%;animation:scene-tree-sway var(--scene-wind-duration) ease-in-out infinite alternate}
.weather-scene-tree>i{position:absolute;bottom:0;left:35px;width:9px;height:111px;border-radius:5px;background:#506b5c}
.weather-scene-tree>span{position:absolute;top:1px;left:0;z-index:2;width:77px;height:98px;border-radius:45% 55% 47% 44%;background:linear-gradient(125deg,#4b956f,#2f715c);box-shadow:-13px 20px 0 -8px #438862,14px 24px 0 -8px #397c60}
.weather-scene-tree.tree-two{left:auto;right:13%;height:125px;width:66px;animation-delay:-2s}.tree-two>span{width:66px;height:80px}.tree-two>i{left:29px;height:88px}
.weather-scene-tree.fir{left:calc(12% + 42px);width:76px;height:185px;z-index:2;animation-delay:-3s}
.weather-scene-tree.fir>span{width:76px;height:155px;border-radius:0;box-shadow:none;background:linear-gradient(110deg,#376d56,#23543f);clip-path:polygon(50% 0,72% 25%,63% 25%,85% 49%,72% 49%,100% 83%,58% 83%,58% 100%,42% 100%,42% 83%,0 83%,28% 49%,15% 49%,37% 25%,28% 25%)}
.weather-scene-tree.fir>i{left:34px;height:105px;width:8px;background:#5b6b51}
.weather-scene-tree.fir-two{left:auto;right:calc(13% - 30px);height:153px;width:66px;animation-delay:-5s}
.weather-scene-tree.fir-two>span{width:66px;height:127px}.weather-scene-tree.fir-two>i{left:29px;height:85px}
.weather-scene-windsock{position:absolute;bottom:35px;right:30%;width:61px;height:88px;z-index:4}
.weather-scene-windsock>i{position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:3px;background:linear-gradient(90deg,#adbfc3,#eef4f3)}
.weather-scene-windsock>span{position:absolute;top:-12px;left:3px;width:72px;height:24px;transform-origin:0 50%;transform:rotate(var(--sock-angle,90deg));animation:scene-sock calc(var(--sock-duration,2s)*3) ease-in-out infinite alternate}
.weather-scene-windsock>span:before{position:absolute;left:-2px;top:0;z-index:1;width:4px;height:24px;border:1px solid #f3f4e9;border-radius:50%;background:#b9cdce;content:"";transform:scaleY(var(--sock-inflation,.45))}
.weather-scene-sock-fabric{position:absolute;inset:0;background:repeating-linear-gradient(90deg,#e68a53 0 14px,#f5f1e6 14px 28px);transform:scaleY(var(--sock-inflation,.45));clip-path:polygon(0 0,20% 6%,40% 12%,60% 18%,80% 24%,100% 30%,100% 70%,80% 76%,60% 82%,40% 88%,20% 94%,0 100%);animation:scene-sock-fabric var(--sock-duration,2s) linear infinite}
.weather-scene-sock-fabric:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,rgba(255,255,255,.25),transparent 40%,rgba(116,57,27,.2))}
.weather-scene-card:not([data-sock="wind"]) .weather-scene-windsock>span,.weather-scene-card:not([data-sock="wind"]) .weather-scene-sock-fabric{animation:none!important}
.weather-scene-card:not([data-sock="wind"]) .weather-scene-sock-fabric{clip-path:polygon(0 0,20% 12%,40% 20%,60% 38%,80% 34%,100% 48%,100% 72%,80% 75%,60% 84%,40% 82%,20% 94%,0 100%)}
.weather-scene-wind{position:absolute;inset:0;z-index:4;pointer-events:none;opacity:var(--scene-wind-opacity)}
.weather-scene-wind>i{position:absolute;top:47%;left:-30%;width:110px;height:2px;border-radius:99px;background:linear-gradient(90deg,transparent,rgba(249,255,255,.9));animation:scene-wind-flow var(--scene-wind-duration) linear infinite}.weather-scene-wind>i:nth-child(2){top:65%;animation-delay:-3s;width:65px}.weather-scene-wind>i:nth-child(3){top:27%;animation-delay:-5s;width:95px}
.weather-scene-rain{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden}
.weather-scene-drop{position:absolute;top:-30px;width:2px;height:19px;background:linear-gradient(180deg,transparent,rgba(237,250,255,.94));border-radius:99px;animation:scene-rain-fall var(--drop-duration) var(--drop-delay) linear infinite}
.weather-scene-drop[hidden]{display:none}
.weather-scene-card[data-rain="drizzle"] .weather-scene-drop{height:8px;width:1px;opacity:.65}
.weather-scene-art-caption{position:absolute;bottom:10px;left:16px;z-index:8;color:rgba(242,252,248,.92);font-size:.53rem}
.weather-scene-card[data-period="night"] :is(.weather-scene-hill,.weather-scene-tree,.weather-scene-ground){filter:brightness(.6) saturate(.7)}
.weather-scene-readings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#f6fbfc;border-top:1px solid rgba(72,138,157,.18)}
.weather-scene-readings>article{display:flex;align-items:center;gap:13px;padding:19px 23px;border-right:1px solid rgba(72,138,157,.15);min-width:0}.weather-scene-readings>article:last-child{border:0}
.weather-scene-reading-icon{flex:0 0 40px;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:#2785a0;background:#e3f1f5;font-size:1.5rem}.compass-icon i{display:block;font-style:normal;transition:transform .6s}
.weather-scene-readings small{display:block;color:#61818f;font-size:.63rem;font-weight:800}.weather-scene-readings strong{display:block;margin-top:5px;font-size:.94rem;line-height:1.3}.weather-scene-readings article div>span{display:block;margin-top:4px;color:#648493;font-size:.57rem}
.weather-scene-card>footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 18px;padding:12px 22px;border-top:1px solid rgba(72,138,157,.13);color:#426373;font-size:.66rem;font-weight:600;line-height:1.6;background:#eaf4f6}
.weather-scene-card>footer>span{min-width:0;max-width:100%;overflow-wrap:anywhere}
.weather-scene-measurement-status{display:flex;flex-direction:column;gap:2px}.weather-scene-data-status{display:block;min-height:1.6em;font-size:.65rem;color:#426373;font-weight:700;line-height:1.6}
.weather-scene-card [data-scene-text="updated"]{flex:0 1 auto;white-space:normal;font-weight:750;font-variant-numeric:tabular-nums}
.weather-scene-card button{padding:7px 12px;border:1px solid rgba(53,124,148,.24);border-radius:999px;background:rgba(255,255,255,.78);color:#35687b;font:inherit;font-weight:800;cursor:pointer}.weather-scene-card button:focus-visible{outline:3px solid #238cb2;outline-offset:3px}
.weather-scene-card:is(.is-paused,.is-stale) .weather-scene-art *{animation-play-state:paused!important}
.weather-scene-card.is-stale .weather-scene-art{filter:saturate(.5)}
.weather-scene-noscript{margin:0;padding:15px 22px;color:#5c7b89;font-size:.72rem}
@keyframes scene-tree-sway{from{transform:rotate(calc(var(--scene-sway)*-.3))}to{transform:rotate(var(--scene-sway))}}
@keyframes scene-cloud-drift{from{margin-left:-25px}to{margin-left:25px}}
@keyframes scene-sock{from{transform:rotate(calc(var(--sock-angle,90deg) - var(--sock-sway,0deg)))}to{transform:rotate(calc(var(--sock-angle,90deg) + var(--sock-sway,0deg)))}}
/* Equal polygon points interpolate into a travelling fold, mouth anchored. */
@keyframes scene-sock-fabric{
0%,100%{clip-path:polygon(0 0,20% 6%,40% calc(12% - var(--sock-ripple,0px)),60% 18%,80% calc(24% + var(--sock-ripple,0px)),100% 30%,100% 70%,80% calc(76% + var(--sock-ripple,0px)),60% 82%,40% calc(88% - var(--sock-ripple,0px)),20% 94%,0 100%)}
25%{clip-path:polygon(0 0,20% 6%,40% 12%,60% calc(18% - var(--sock-ripple,0px)),80% 24%,100% calc(30% + var(--sock-ripple,0px)),100% calc(70% + var(--sock-ripple,0px)),80% 76%,60% calc(82% - var(--sock-ripple,0px)),40% 88%,20% 94%,0 100%)}
50%{clip-path:polygon(0 0,20% 6%,40% calc(12% + var(--sock-ripple,0px)),60% 18%,80% calc(24% - var(--sock-ripple,0px)),100% 30%,100% 70%,80% calc(76% - var(--sock-ripple,0px)),60% 82%,40% calc(88% + var(--sock-ripple,0px)),20% 94%,0 100%)}
75%{clip-path:polygon(0 0,20% 6%,40% 12%,60% calc(18% + var(--sock-ripple,0px)),80% 24%,100% calc(30% - var(--sock-ripple,0px)),100% calc(70% - var(--sock-ripple,0px)),80% 76%,60% calc(82% + var(--sock-ripple,0px)),40% 88%,20% 94%,0 100%)}
}
@keyframes scene-wind-flow{to{left:110%}}
@keyframes scene-rain-fall{from{transform:translate(0,-30px) rotate(var(--scene-rain-angle))}to{transform:translate(var(--scene-rain-drift,0px),var(--scene-rain-travel,460px)) rotate(var(--scene-rain-angle))}}
@media(max-width:800px){.weather-scene-top{grid-template-columns:1fr}.weather-scene-copy{padding:26px}.weather-scene-art{min-height:290px}.weather-scene-copy h2{font-size:1.9rem}.weather-scene-temperature{font-size:3rem}.weather-scene-readings>article{padding:17px 13px;gap:9px}.weather-scene-readings strong{font-size:.8rem}.weather-scene-reading-icon{flex-basis:31px;width:31px;height:35px}}
@media(max-width:520px){.weather-scene-card{border-radius:21px}.weather-scene-copy{padding:24px 21px}.weather-scene-art{min-height:270px}.weather-scene-readings{grid-template-columns:1fr}.weather-scene-readings>article{border-right:0;border-bottom:1px solid rgba(72,138,157,.15);padding:14px 21px}.weather-scene-readings strong{font-size:.9rem}.weather-scene-readings small{font-size:.69rem}.weather-scene-art-caption{font-size:.49rem}}
@media(prefers-reduced-motion:reduce){.weather-scene-card .weather-scene-art *{animation:none!important}.weather-scene-card *{transition:none!important}.weather-scene-drop{top:20%;height:30px;transform:rotate(var(--scene-rain-angle))}}

/* Extensions use their own namespace and do not alter other page modules. */
.weather-scene-card[data-size="large"] .weather-scene-art{min-height:420px}
.weather-scene-card[data-size="compact"] .weather-scene-top{min-height:280px;grid-template-columns:minmax(230px,.9fr) minmax(0,1.5fr)}
.weather-scene-card[data-size="compact"] .weather-scene-art{min-height:280px}
.weather-scene-card[data-size="compact"] .weather-scene-copy{padding:24px}
.weather-scene-card[data-size="compact"] .weather-scene-temperature{font-size:2.8rem}
.weather-scene-art:after{position:absolute;inset:0;z-index:1;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(203,138,130,.2),rgba(255,181,111,.7) 70%,transparent);opacity:var(--scene-warmth,0)}
.weather-scene-card:is([data-light="dawn"],[data-light="dusk"]) .weather-scene-art{background:linear-gradient(180deg,#698cad,#b7ccd4 78%)}
.weather-scene-card[data-sky="overcast"] .weather-scene-art{background:linear-gradient(180deg,#637e90,#a4b8c1 78%)}
.weather-scene-card[data-period="night"][data-sky="overcast"] .weather-scene-art{background:linear-gradient(180deg,#15283b,#3b5061 80%)}
.weather-scene-cloud-deck{position:absolute;top:-35px;left:-15%;right:-15%;height:52%;border-radius:0 0 45% 30%;z-index:1;opacity:0;background:radial-gradient(ellipse at 25% 10%,#91a7b4 5%,transparent 63%),radial-gradient(ellipse at 80% 55%,#bac8cf 5%,transparent 68%),linear-gradient(180deg,#7d95a5,rgba(190,203,210,.35));box-shadow:0 28px 40px rgba(75,96,111,.2);transition:opacity .7s;animation:scene-cloud-drift calc(var(--scene-wind-duration)*4) ease-in-out infinite alternate}
.weather-scene-card[data-sky="overcast"] .weather-scene-cloud-deck{opacity:.94}
.weather-scene-card[data-sky="overcast"] .weather-scene-cloud{opacity:1;background:#c1cdd4;z-index:2}
.weather-scene-card[data-period="night"][data-sky="overcast"] .weather-scene-cloud-deck{filter:brightness(.45)}
.weather-scene-card[data-period="night"][data-sky="overcast"] .weather-scene-cloud{opacity:1;background:#718899}
.weather-scene-rain-context{margin-top:17px;padding:13px 15px;border:1px solid #c8e0e9;border-radius:15px;background:rgba(255,255,255,.7)}
.weather-scene-rain-context small{display:block;color:#648391;font-size:.58rem;font-weight:800;letter-spacing:.035em}
.weather-scene-rain-context strong{display:block;margin-top:5px;font-size:.79rem;line-height:1.4}
.weather-scene-rain-context span{display:block;margin-top:5px;color:#6b8793;font-size:.57rem;line-height:1.5}
.weather-scene-trends{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border-top:1px solid #d4e6eb;background:#d4e6eb}
.weather-scene-trends article{padding:17px 23px;background:#eff8fa;min-width:0}
.weather-scene-trends small{display:block;color:#62818f;font-size:.6rem;font-weight:800}
.weather-scene-trends strong{display:block;margin-top:7px;font-size:.74rem;line-height:1.4;color:#27748b}
.weather-scene-trends span{display:block;margin-top:5px;color:#426373;font-size:.65rem;font-weight:700;line-height:1.6;overflow-wrap:anywhere}
.weather-scene-info{padding:13px 22px;background:#f5fafb;border-top:1px solid #d6e7ec;font-size:.65rem;color:#537887}
.weather-scene-info summary{cursor:pointer;font-weight:800;color:#356f84;width:fit-content;list-style-position:inside;padding:4px 0}
.weather-scene-info summary:focus-visible{outline:3px solid #238cb2;outline-offset:3px;border-radius:5px}
.weather-scene-info p{margin:12px 0;line-height:1.65;max-width:950px}
.weather-scene-gust-note{position:absolute;top:16px;right:16px;z-index:8;max-width:calc(100% - 32px);padding:8px 12px;border-radius:12px;background:rgba(240,249,251,.94);color:#205d75;font-size:.62rem;font-weight:800;box-shadow:0 5px 20px #244f6320}
.has-gust-pulses .weather-scene-tree>span{transform-origin:50% 100%;animation:scene-gust-pulse 12s ease-in-out infinite}
.has-gust-pulses .weather-scene-windsock>span{animation:scene-sock calc(var(--sock-duration,2s)*3) ease-in-out infinite alternate,scene-sock-gust 12s ease-in-out infinite}
.no-clouds-motion :is(.weather-scene-cloud,.weather-scene-cloud-deck){animation:none!important}
.no-wind-motion :is(.weather-scene-tree,.weather-scene-tree>span,.weather-scene-windsock>span,.weather-scene-sock-fabric,.weather-scene-wind>i){animation:none!important}
.no-wind-motion .weather-scene-wind{display:none}
.no-rain-motion .weather-scene-drop{animation:none!important;top:var(--drop-static-y,30%);transform:rotate(var(--scene-rain-angle))}
.weather-scene-card [hidden]{display:none!important}
@keyframes scene-gust-pulse{0%,63%,85%,100%{rotate:0deg}69%{rotate:var(--scene-gust-sway,0deg)}73%{rotate:calc(var(--scene-gust-sway,0deg)*-.35)}78%{rotate:calc(var(--scene-gust-sway,0deg)*.65)}}
@keyframes scene-sock-gust{0%,63%,85%,100%{rotate:0deg}69%{rotate:calc(var(--scene-gust-sway,0deg)*-.6)}73%{rotate:calc(var(--scene-gust-sway,0deg)*.2)}78%{rotate:calc(var(--scene-gust-sway,0deg)*-.3)}}
@media(max-width:800px){.weather-scene-card[data-size] .weather-scene-top{grid-template-columns:1fr}.weather-scene-card[data-size="large"] .weather-scene-art{min-height:320px}.weather-scene-card[data-size="compact"] .weather-scene-art{min-height:250px}.weather-scene-trends article{padding:15px 13px}}
@media(max-width:520px){.weather-scene-trends{grid-template-columns:1fr}.weather-scene-trends article{padding:14px 21px}.weather-scene-card[data-size="large"] .weather-scene-art{min-height:290px}.weather-scene-gust-note{font-size:.58rem}}
@media(prefers-reduced-motion:reduce){.weather-scene-cloud-deck{animation:none!important}.weather-scene-drop{top:var(--drop-static-y,30%)}}

/* Solar gaps: a separate foreground cloud crosses the moving sun position. */
.weather-scene-card[data-period="day"][data-sky="mixed"] .weather-scene-cloud.cloud-one{z-index:2;top:var(--scene-sun-y,15%);left:var(--scene-sun-x,23%);margin-top:24px;animation:scene-sun-cloud-pass 34s linear infinite;opacity:1}
@keyframes scene-sun-cloud-pass{0%,100%{transform:translateX(-240px);opacity:0}12%,84%{opacity:.96}90%{transform:translateX(260px);opacity:0}}
.weather-scene-card.is-stale .weather-scene-cloud.cloud-one{animation-play-state:paused}
.weather-scene-card.is-paused .weather-scene-cloud.cloud-one{animation-play-state:paused}
.weather-scene-card.is-data-stale .weather-scene-tags>span{border-style:dashed}

/* Optional depth treatment. Classic geometry and styling remain untouched. */
.weather-scene-distance,.weather-scene-shadows,.weather-scene-foreground{display:none;pointer-events:none}
.weather-scene-card[data-appearance="depth"] .weather-scene-art{background:radial-gradient(ellipse at var(--scene-sun-x,23%) var(--scene-sun-y,15%),rgba(255,247,202,.2),transparent 53%),linear-gradient(180deg,#65b8db,#b4e0ea 60%,#d6ebdf)}
.weather-scene-card[data-appearance="depth"] .hill-back{background:linear-gradient(165deg,#b7cebe,#95b8a5);filter:blur(1.1px);opacity:.88}
.weather-scene-card[data-appearance="depth"] .hill-front{background:radial-gradient(ellipse at 37% 25%,#8bad92,transparent 66%),linear-gradient(160deg,#74a08a,#4f806d);box-shadow:inset 0 8px 15px #b0cdb024}
.weather-scene-card[data-appearance="depth"] .weather-scene-distance{display:block;position:absolute;left:-5%;right:-5%;bottom:132px;height:40px;z-index:0;opacity:.22;filter:blur(2px);background:radial-gradient(ellipse at 10% 100%,#4f8270 0 8%,transparent 8.5%),radial-gradient(ellipse at 35% 100%,#5a8c79 0 12%,transparent 12.5%),radial-gradient(ellipse at 69% 100%,#4f8270 0 15%,transparent 15.5%),radial-gradient(ellipse at 95% 100%,#5a8c79 0 10%,transparent 10.5%)}
.weather-scene-card[data-appearance="depth"] .weather-scene-tree>span{background:radial-gradient(ellipse at 28% 20%,#70a37970,transparent 48%),radial-gradient(ellipse at 68% 75%,#1e584966,transparent 58%),repeating-radial-gradient(ellipse at 30% 30%,#44866318 0 3px,transparent 4px 8px),linear-gradient(125deg,#4b956f,#2f715c);box-shadow:inset -8px -6px 16px #1b55463d,-13px 20px 0 -8px #438862,14px 24px 0 -8px #397c60}
.weather-scene-card[data-appearance="depth"] .weather-scene-tree>i{background:linear-gradient(90deg,#658069,#3c5949);box-shadow:inset 2px 0 #8f9e7026}
.weather-scene-card[data-appearance="depth"] .weather-scene-tree.fir>span{background:repeating-linear-gradient(170deg,transparent 0 11px,#092f2426 12px 14px),linear-gradient(110deg,#4d8064,#204f3c);box-shadow:none;filter:drop-shadow(2px 3px 2px #254c3926)}
.weather-scene-card[data-appearance="depth"] .fir-one{opacity:.91}
.weather-scene-card[data-appearance="depth"] .fir-two{opacity:.89}
.weather-scene-card[data-appearance="depth"] .weather-scene-house{background:repeating-linear-gradient(0deg,transparent 0 9px,#917b5920 10px 11px),linear-gradient(105deg,#f1e7d1,#d5c7aa);box-shadow:inset -15px 0 #86795930,inset 0 7px 8px #5a625529}
.weather-scene-card[data-appearance="depth"] .weather-scene-house:before{width:106px;height:43px;border:0;clip-path:polygon(50% 0,100% 100%,0 100%);background:repeating-linear-gradient(0deg,transparent 0 6px,#273f4726 7px 8px),linear-gradient(120deg,#70838b,#3b5360)}
.weather-scene-card[data-appearance="depth"] .weather-scene-house>b{background:linear-gradient(135deg,#c5e6ef,#75b2c9);border:1px solid #dcebef8c;box-sizing:border-box;box-shadow:44px 0 #8dbdd0,0 1px 2px #5a635538}
.weather-scene-card[data-appearance="depth"] .weather-scene-house>i{background:linear-gradient(90deg,#a1aba0,#6d807a);box-shadow:inset 2px 0 #eff4e22e}
.weather-scene-card[data-appearance="depth"] .weather-scene-ground{background:repeating-linear-gradient(112deg,transparent 0 16px,#244f391a 17px 19px),linear-gradient(180deg,#628b6b,#355f4b)}
.weather-scene-card[data-appearance="depth"] .weather-scene-foreground{display:block;position:absolute;bottom:0;left:0;right:0;height:16px;z-index:5;opacity:.4;background:repeating-linear-gradient(105deg,transparent 0 10px,#71906a70 11px 12px,transparent 13px 20px)}
.weather-scene-card[data-appearance="depth"] .weather-scene-shadows{display:block;position:absolute;inset:0;z-index:5;opacity:.12}
.weather-scene-shadows>i{position:absolute;bottom:28px;height:10px;border-radius:50%;background:#183e32;filter:blur(3px);transform:translateX(var(--scene-shadow-x,0px)) skewX(-20deg);transform-origin:left center;transition:transform 1s,opacity 1s}
.shadow-tree-one{left:12%;width:91px}.shadow-tree-two{right:10%;width:81px}.shadow-house{left:41%;width:110px}
.weather-scene-card[data-appearance="depth"][data-period="day"]:is([data-sky="clear"],[data-sky="mixed"]) .weather-scene-shadows{opacity:.27}
.weather-scene-card[data-appearance="depth"][data-period="day"][data-sky="mixed"] .weather-scene-shadows{opacity:.19}
.weather-scene-card[data-appearance="depth"] .weather-scene-cloud{box-shadow:inset 0 -9px 17px #64869c16,0 9px 19px #557d9310}
.weather-scene-card[data-appearance="depth"]:is([data-sky="cloudy"],[data-sky="overcast"],[data-rain="heavy"],[data-rain="very-heavy"]) .weather-scene-art{background:radial-gradient(ellipse at 45% 68%,#c0d0d83d,transparent 60%),linear-gradient(180deg,#7898a9,#b1c7cf 73%,#a9c0b5)}
.weather-scene-card[data-appearance="depth"][data-sky="overcast"] .weather-scene-art{background:linear-gradient(180deg,#647e8f,#a9bcc3 73%,#a2b9ad)}
.weather-scene-card[data-appearance="depth"][data-sky="overcast"] .weather-scene-shadows{opacity:.09}
.weather-scene-card[data-appearance="depth"]:is([data-light="dawn"],[data-light="dusk"]) .weather-scene-art{background:radial-gradient(ellipse at 55% 65%,#ffd6a94a,transparent 65%),linear-gradient(180deg,#7d98b5,#c1c7c4 74%,#aab9a3)}
.weather-scene-card[data-appearance="depth"][data-period="night"] .weather-scene-art{background:radial-gradient(ellipse at 27% 19%,#7895c02e,transparent 48%),linear-gradient(180deg,#132441,#2b4864 75%,#496556)}
.weather-scene-card[data-appearance="depth"][data-period="night"]:is([data-sky="cloudy"],[data-sky="overcast"],[data-rain="heavy"],[data-rain="very-heavy"]) .weather-scene-art{background:linear-gradient(180deg,#172738,#344b5e 76%,#3e594b)}
.weather-scene-card[data-appearance="depth"][data-period="night"] .weather-scene-house>b{background:#f5da96;border-color:#efdbac;box-shadow:44px 0 #f1d189,0 0 13px #f9d67e55}
.weather-scene-card[data-appearance="depth"][data-period="night"] .weather-scene-house{filter:brightness(.75)}
.weather-scene-card[data-appearance="depth"][data-period="night"] .hill-back{filter:blur(1.1px) brightness(.55) saturate(.7)}
.weather-scene-card[data-appearance="depth"][data-period="night"] .weather-scene-shadows{opacity:.1}
.weather-scene-card[data-appearance="depth"][data-period="night"] :is(.weather-scene-distance,.weather-scene-foreground){filter:brightness(.6)}

/* A localized warning illustration, never a measured lightning strike. */
.weather-scene-warning-copy{display:grid;gap:7px;margin-top:16px;padding:13px 15px;border:1px solid #d7a45d;border-radius:15px;background:#fff4dc;color:#674623;font-size:.75rem;line-height:1.5}
.weather-scene-warning-copy[hidden],.weather-scene-warning-art[hidden],.weather-scene-warning-explanation[hidden]{display:none}
.weather-scene-warning-copy>span{color:#775e40;font-size:.7rem}
.weather-scene-warning-art{position:absolute;top:16px;left:16px;right:16px;z-index:12;display:grid;gap:5px;width:fit-content;max-width:calc(100% - 32px);padding:11px 14px;border:1px solid #edc48080;border-radius:14px;background:#253e50ed;color:#fff3d7;box-shadow:0 7px 18px #142c3b28;font-size:.8rem;line-height:1.4}
.weather-scene-warning-art>span{font-size:.65rem;color:#d0dfe8}
.weather-scene-warning-explanation{margin:0;padding:13px 24px;border-top:1px solid #cbdfe6;background:#f7fbfc;color:#607e8c;font-size:.7rem;line-height:1.5}
.weather-scene-thundercloud{position:absolute;z-index:1;top:-8%;left:-8%;right:-8%;height:48%;opacity:0;filter:blur(4px);background:radial-gradient(ellipse at 18% 5%,#3b526deb,transparent 70%),radial-gradient(ellipse at 76% 12%,#526a80ed,transparent 72%),linear-gradient(180deg,#465d73aa,transparent);transition:opacity 1s;pointer-events:none}
.weather-scene-lightning{position:absolute;z-index:5;top:calc(22% + 50px);left:62%;width:33px;height:100px;opacity:0;background:linear-gradient(#fff3b8,#e3d6a1);clip-path:polygon(48% 0,8% 52%,46% 48%,25% 100%,94% 34%,58% 38%,85% 0);pointer-events:none}
.weather-scene-card[data-thunder="warning"] .weather-scene-thundercloud{opacity:.9}
.weather-scene-card[data-thunder="warning"] .weather-scene-art .weather-scene-cloud{opacity:1;background:#718695}
.weather-scene-card.has-scene-warning .weather-scene-gust-note{top:100px}
.weather-scene-card[data-thunder="warning"][data-appearance] .weather-scene-art{background:linear-gradient(180deg,#546b80,#9daeb8 72%,#93ad9f)}
.weather-scene-card[data-thunder="warning"][data-appearance]:is([data-period="night"],[data-light="dusk"]) .weather-scene-art{background:linear-gradient(180deg,#172a40,#354c61 75%,#496154)}
.weather-scene-card[data-thunder="warning"][data-period] :is(.weather-scene-sun,.weather-scene-moon,.weather-scene-stars){opacity:0}
.weather-scene-card[data-thunder="warning"][data-appearance] .weather-scene-shadows{opacity:.08}
.weather-scene-card.has-thunder-animation .weather-scene-lightning{animation:scene-warning-bolt 14s ease-in-out infinite}
@keyframes scene-warning-bolt{0%,74%,81%,100%{opacity:0}76%,78%{opacity:.78}}
.weather-scene-card:is(.is-paused,.is-stale,.is-data-stale) .weather-scene-lightning{animation:none!important;opacity:0!important}
@media(prefers-reduced-motion:reduce){.weather-scene-card .weather-scene-lightning{animation:none!important;opacity:0!important}}
@media(max-width:600px){.weather-scene-card.has-scene-warning .weather-scene-gust-note{top:110px}}

/* Smooth visual weather changes; values and warnings are never delayed. */
.weather-scene-sky-transition{position:absolute;inset:0;z-index:0;opacity:0;pointer-events:none}
.weather-scene-card .weather-scene-art :is(.weather-scene-cloud,.weather-scene-cloud-deck,.weather-scene-thundercloud,.weather-scene-sun,.weather-scene-moon,.weather-scene-stars){transition:opacity var(--scene-transition-duration,0s) ease-in-out,background-color var(--scene-transition-duration,0s) ease-in-out,filter var(--scene-transition-duration,0s) ease-in-out,top var(--scene-transition-duration,0s) ease-in-out,left var(--scene-transition-duration,0s) ease-in-out}
.weather-scene-rain{opacity:var(--scene-rain-opacity,0);transition:opacity var(--scene-transition-duration,0s) ease-in-out}
.weather-scene-puddles{position:absolute;inset:0;z-index:6;pointer-events:none;opacity:var(--scene-puddle-opacity,0);transition:opacity 10s linear}
.weather-scene-puddles>i{position:absolute;left:20%;bottom:11px;width:18%;height:9px;border-radius:50%;background:linear-gradient(180deg,#d0e8efb3,#86b1bc96 47%,#416e7380);box-shadow:inset 0 1px 1px #eaf8f8a6,0 2px 3px #163b374a;transform:skewX(-13deg)}
.weather-scene-puddles>i:nth-child(2){left:55%;bottom:19px;width:13%;height:6px;opacity:.8}
.weather-scene-puddles>i:nth-child(3){left:75%;bottom:6px;width:20%;height:11px;opacity:.65}
.weather-scene-puddles>i:after{content:"";position:absolute;inset:2px 30%;border:1px solid #e2f6f78c;border-radius:50%;opacity:0}
.has-rain-surface-animation .weather-scene-puddles>i:after{animation:scene-puddle-ripple 2.8s ease-out infinite}
.weather-scene-puddles>i:nth-child(2):after{animation-delay:-1s}.weather-scene-puddles>i:nth-child(3):after{animation-delay:-2s}
.weather-scene-card[data-period="night"] .weather-scene-puddles{filter:brightness(.65)}
.weather-scene-splashes{position:absolute;inset:0;z-index:7;pointer-events:none;opacity:var(--scene-splash-strength,.55)}
.weather-scene-splash{position:absolute;width:13px;height:7px;border:1px solid #d2f1f5b3;border-radius:50%;animation:scene-ground-splash var(--splash-duration,1s) var(--splash-delay,0s) ease-out infinite;opacity:0}
.weather-scene-splash:before,.weather-scene-splash:after{content:"";position:absolute;top:-4px;width:2px;height:4px;border-radius:50%;background:#d5f2f2c9;transform:rotate(-28deg)}
.weather-scene-splash:before{left:2px}.weather-scene-splash:after{right:2px;transform:rotate(28deg)}
@keyframes scene-ground-splash{0%,48%,100%{opacity:0;transform:scale(.25)}52%{opacity:.8;transform:scale(.6)}75%{opacity:.25;transform:scale(1.1)}90%{opacity:0;transform:scale(1.35)}}
@keyframes scene-puddle-ripple{0%{opacity:0;transform:scale(.3)}15%{opacity:.6}85%,100%{opacity:0;transform:scale(2.1)}}
.weather-scene-card:is(.is-paused,.is-stale) .weather-scene-art *{transition:none!important}
.weather-scene-card.no-rain-motion :is(.weather-scene-splash,.weather-scene-puddles>i:after){animation:none!important}
@media(prefers-reduced-motion:reduce){.weather-scene-card .weather-scene-art *{transition:none!important}.weather-scene-sky-transition{opacity:0!important}.weather-scene-splash,.weather-scene-puddles>i:after{animation:none!important;opacity:0!important}}

/* Optional additional relief: original shapes, objects and classic view survive. */
.weather-scene-card.has-enhanced-relief .weather-scene-cloud:before{box-shadow:inset 5px 6px 12px #ffffff18,inset -4px -9px 14px #304a581c}
.weather-scene-card.has-enhanced-relief .weather-scene-cloud:after{box-shadow:inset 4px 4px 10px #ffffff16,inset -3px -7px 12px #304a5818}
.weather-scene-card.has-enhanced-relief .weather-scene-tree:not(.fir)>span{filter:drop-shadow(3px 5px 3px #173b3529)}
.weather-scene-card.has-enhanced-relief .weather-scene-house:after{content:"";position:absolute;top:0;right:0;bottom:0;width:15px;background:linear-gradient(90deg,#88775a18,#5d665834);border-left:1px solid #b7a88c40;pointer-events:none}
.weather-scene-card.has-enhanced-relief .weather-scene-house>b{outline:1px solid #ffffff38;outline-offset:1px}
.weather-scene-card.has-enhanced-relief .weather-scene-ground{box-shadow:inset 0 3px 5px #a4c18b38,inset 0 -8px 12px #153d3838}
.weather-scene-card.has-enhanced-relief .weather-scene-windsock>i{box-shadow:1px 0 2px #1b39372b}

/* Optional atmosphere: retain the landscape, never imply measured visibility or snow cover. */
.weather-scene-atmosphere-copy{margin-top:14px;padding:12px 14px;background:#eff8fc;border:1px solid #c4dce7;border-radius:14px}
.weather-scene-atmosphere-copy strong{display:block;font-size:.76rem;line-height:1.5;color:#28758c}
.weather-scene-atmosphere-copy span{display:block;margin-top:5px;color:#608091;font-size:.57rem;line-height:1.6}
.weather-scene-copy .weather-scene-moon-note{margin-top:12px;font-size:.62rem;color:#5f7f90}
.weather-scene-moon-note>strong{display:block;margin-bottom:4px;color:#426373;font-size:.65rem;font-weight:800}
.weather-scene-moon-note>span{display:block;line-height:1.6;overflow-wrap:anywhere}
.weather-scene-atmosphere-copy[hidden],.weather-scene-moon-note[hidden]{display:none}
.weather-scene-fog{position:absolute;left:-15%;right:-15%;bottom:22px;height:170px;z-index:5;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 25% 60%,#e7f4f8b0,transparent 58%),radial-gradient(ellipse at 80% 50%,#f4f8ffb0,transparent 65%);filter:blur(10px);transition:opacity var(--scene-transition-duration,0s);animation:scene-fog-drift 18s ease-in-out infinite alternate}
.weather-scene-card[data-fog="possible"] .weather-scene-fog{opacity:.55}
.weather-scene-card:is([data-fog="reported"],[data-fog="forecast"]) .weather-scene-fog{opacity:.92;height:220px}
.weather-scene-card[data-period="night"] .weather-scene-fog{filter:blur(10px) brightness(.7)}
.weather-scene-card.no-fog-motion .weather-scene-fog{animation:none}
.weather-scene-frost{position:absolute;bottom:32px;left:0;right:0;height:10px;z-index:6;opacity:0;pointer-events:none;background:linear-gradient(180deg,#e4f4ffbb,#c2e6f35c,transparent);box-shadow:0 -3px 12px #d3e8f43b}
.weather-scene-card[data-frost="on"] .weather-scene-frost{opacity:1}
.weather-scene-moon svg{display:none;width:100%;height:100%;border-radius:50%}
.weather-scene-card[data-moon-phase="on"] .weather-scene-moon{background:transparent;box-shadow:0 0 24px #e6f3ff20}
.weather-scene-card[data-moon-phase="on"] .weather-scene-moon:after{display:none}
.weather-scene-card[data-moon-phase="on"] .weather-scene-moon svg{display:block}
.weather-scene-card[data-moon-phase="new"] .weather-scene-moon{opacity:0!important}
.weather-scene-card[data-period="night"][data-moon-phase="on"][data-sky="mixed"] .weather-scene-moon{opacity:.55}
.weather-scene-card[data-period="night"][data-moon-phase="on"][data-sky="cloudy"] .weather-scene-moon{opacity:.2}
.weather-scene-card[data-period="night"][data-moon-phase="on"][data-sky="overcast"] .weather-scene-moon{opacity:0}
.weather-scene-card[data-period="night"][data-moon-phase="on"]:is([data-fog="reported"],[data-fog="forecast"]) .weather-scene-moon{opacity:0}
.weather-scene-card[data-period="night"][data-moon-phase="on"][data-thunder="warning"] .weather-scene-moon{opacity:0}
.weather-scene-card[data-precipitation="snow"] .weather-scene-drop{width:4px;height:4px;border-radius:50%;background:#f5fbff;opacity:.85;box-shadow:0 0 3px #eaf7ff60;animation-name:scene-snow-fall;animation-duration:calc(var(--drop-duration)*5)}
.weather-scene-card[data-precipitation="snow"] .weather-scene-drop:nth-child(3n){width:2px;height:2px;opacity:.55}
@keyframes scene-fog-drift{from{transform:translateX(-3%)}to{transform:translateX(3%)}}
@keyframes scene-snow-fall{0%{transform:translate(0,-30px)}45%{transform:translate(calc(var(--scene-rain-drift,0px)*.4 + 12px),calc(var(--scene-rain-travel,460px)*.45))}100%{transform:translate(var(--scene-rain-drift,0px),var(--scene-rain-travel,460px))}}
@media(prefers-reduced-motion:reduce){.weather-scene-card[data-precipitation="snow"] .weather-scene-drop{top:var(--drop-static-y,30%);transform:none;animation:none!important}}

/* All cloud scenarios cross the full responsive artwork, with off-screen gaps. */
.weather-scene-cloud-stream{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:1;transition:opacity var(--scene-transition-duration,0s)}
.weather-scene-cloud-stream[hidden],.drifting-cloud[hidden]{display:none}
.weather-scene-card[data-cloud-flow="on"] .weather-scene-cloud-deck{animation:none}
.weather-scene-card[data-cloud-flow="on"] .weather-scene-art>.weather-scene-cloud{opacity:0;animation:none}
.weather-scene-card[data-cloud-flow="on"] .drifting-cloud{top:var(--cloud-top,20%);left:-300px;margin:0;opacity:1;transform:scale(var(--cloud-scale,1));animation:scene-cloud-cross var(--cloud-duration,75s) var(--cloud-delay,0s) linear infinite;transition:opacity var(--scene-transition-duration,0s),background-color var(--scene-transition-duration,0s)}
.weather-scene-card[data-cloud-flow="on"][data-period="night"] .drifting-cloud{opacity:1;background:#8ba6ba}
.weather-scene-card[data-cloud-flow="on"][data-period="night"][data-sky="overcast"] .drifting-cloud{background:#718899}
.weather-scene-card[data-cloud-flow="on"].no-clouds-motion .drifting-cloud{left:var(--cloud-static-x,20%);transform:scale(var(--cloud-scale,1));animation:none!important}
@keyframes scene-cloud-cross{from{transform:translateX(0) scale(var(--cloud-scale,1))}to{transform:translateX(var(--scene-cloud-travel,1200px)) scale(var(--cloud-scale,1))}}
@media(prefers-reduced-motion:reduce){.weather-scene-card[data-cloud-flow="on"] .drifting-cloud{left:var(--cloud-static-x,20%);transform:scale(var(--cloud-scale,1));animation:none!important}}

/* Solid cloud cores occlude stars / moon; only the sub-pixel soft rim blends. */
.weather-scene-cloud{z-index:2;filter:blur(.55px)}
.weather-scene-moon{z-index:1}

/* Continuous solar illustration; solid cloud cores, no translucent cloud groups. */
.weather-scene-solar-note{display:block;margin:0 0 9px;color:#426373;font-size:.65rem;font-weight:700;line-height:1.5}
.weather-scene-solar-note[hidden]{display:none}
.weather-scene-solar-note[data-scene-solar-comparison]{font-weight:600;font-size:.62rem}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"] .weather-scene-art{background:linear-gradient(180deg,var(--scene-solar-top),var(--scene-solar-bottom) 78%)}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"] .weather-scene-sun{opacity:var(--scene-solar-sunlight);z-index:1}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"] .weather-scene-cloud-deck{opacity:var(--scene-solar-deck)}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"] .weather-scene-cloud{background:var(--scene-solar-cloud)}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"]:not([data-cloud-flow="on"]) .weather-scene-art>.weather-scene-cloud{opacity:1;transition:transform var(--scene-transition-duration,0s) ease-in-out,background-color var(--scene-transition-duration,0s) ease-in-out}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"]:not([data-cloud-flow="on"]) .weather-scene-art>.cloud-one{top:22%;left:38%;transform:scale(var(--scene-solar-one));z-index:2;animation:scene-cloud-drift calc(var(--scene-wind-duration)*3) ease-in-out infinite alternate}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"]:not([data-cloud-flow="on"]) .weather-scene-art>.cloud-two{top:32%;left:7%;transform:scale(var(--scene-solar-two));z-index:2}
.weather-scene-card[data-solar-visual="on"][data-period="day"][data-rain="dry"]:not([data-cloud-flow="on"]) .weather-scene-art>.cloud-three{top:19%;left:74%;transform:scale(var(--scene-solar-three));z-index:2}
