/* Two composited sky layers, bounded particles, and stable readable surfaces. */
#canvas{isolation:isolate;background:#d8e2df}#canvas>:not(#atmosphere-host){z-index:1}#atmosphere-host{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;contain:strict}.weather-scene{position:absolute;inset:0;opacity:0;transition:opacity 2400ms ease;background:#d9e3df;overflow:hidden}.weather-scene.visible{opacity:1}.weather-scene[data-condition=sunny][data-period=day]{background:linear-gradient(165deg,#afd2e7 0%,#d6e5df 46%,#f3dfbd 100%)}.weather-scene[data-condition=sunny][data-golden=true]{background:linear-gradient(165deg,#a7bddb,#e9c7b1 52%,#edcf9b)}.weather-scene[data-condition=cloudy][data-period=day]{background:linear-gradient(160deg,#adc3d1,#dae3e0 57%,#c6d5cc)}.weather-scene[data-condition=rainy][data-period=day]{background:linear-gradient(165deg,#5d788d,#829aa7 48%,#a5b9b8)}.weather-scene[data-condition=snowy][data-period=day]{background:linear-gradient(160deg,#a9c1d2,#dae5e9 50%,#e9eeeb)}.weather-scene[data-period=night]{background:linear-gradient(165deg,#0d1b33,#223850 58%,#3b5366)}.weather-scene[data-condition=cloudy][data-period=night]{background:linear-gradient(165deg,#1c293e,#35475c 55%,#516375)}.weather-scene[data-condition=rainy][data-period=night]{background:linear-gradient(165deg,#101d2e,#24394b 55%,#405967)}.weather-scene[data-condition=snowy][data-period=night]{background:linear-gradient(165deg,#192b41,#3a5369 55%,#607c89)}.weather-scene[data-condition=neutral][data-period=day]{background:linear-gradient(165deg,#c5d6db,#e0e6dc 70%,#e8e6d7)}.sky-light{position:absolute;inset:0;background:radial-gradient(ellipse at 75% 10%,#ffffff20,transparent 65%)}.solar-glow{position:absolute;width:1100px;height:1100px;top:-300px;right:-340px;border-radius:50%;background:radial-gradient(circle,#fff9dfc9 0%,#fff2cc55 22%,#fff2c319 45%,transparent 68%);animation:light-breathe 30s ease-in-out infinite alternate}.solar-disc{position:absolute;width:125px;height:125px;top:200px;right:170px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#fffce8,#fff0cbb0 65%,#fff0cb00 72%);box-shadow:0 0 100px 35px #fff0c83b}.moon{position:absolute;top:170px;right:185px;width:94px;height:94px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#eff4f2,#b2c3d3);box-shadow:0 0 90px 20px #c5dbe326;opacity:.85}.moon:after{content:'';position:absolute;inset:9px;background:radial-gradient(circle at 30% 60%,#627b8b22 0 9%,transparent 11%),radial-gradient(circle at 70% 40%,#627b8b22 0 12%,transparent 14%);border-radius:50%}.sky-cloud{position:absolute;left:-200px;top:var(--top);width:1400px;height:650px;opacity:var(--opacity,.55);background:radial-gradient(ellipse at 20% 55%,#ffffff9e 0%,#ffffff3a 25%,transparent 48%),radial-gradient(ellipse at 52% 40%,#ffffff9c 0%,#ffffff42 20%,transparent 47%),radial-gradient(ellipse at 80% 55%,#ffffff7c 0%,#ffffff30 24%,transparent 48%);animation:cloud-drift var(--duration,110s) ease-in-out infinite alternate;animation-delay:var(--delay,-30s);will-change:transform}.weather-scene[data-period=night] .sky-cloud{opacity:calc(var(--opacity,.55)*.22)}.weather-scene[data-condition=rainy] .sky-cloud{background:radial-gradient(ellipse at 25% 50%,#e2e9ed75,transparent 45%),radial-gradient(ellipse at 65% 48%,#a9c0d080,transparent 50%)}.sky-haze{position:absolute;inset:25% -20% -15%;background:radial-gradient(ellipse at 50% 80%,#fff6db20,transparent 70%);opacity:.7}.sky-particles{position:absolute;inset:0;overflow:hidden;contain:strict}.rain-drop{position:absolute;top:-50px;left:var(--x);width:1px;height:var(--size);background:linear-gradient(transparent,#e2edf880);opacity:0;animation:rain-fall var(--speed) linear infinite;animation-delay:var(--delay);transform:rotate(12deg)}.snow-flake{position:absolute;top:-20px;left:var(--x);width:var(--size);height:var(--size);border-radius:50%;background:#f9fcff;opacity:0;animation:snow-fall var(--speed) linear infinite;animation-delay:var(--delay)}.star{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);background:#e7f0ff;border-radius:50%;box-shadow:0 0 6px 1px #cbdfff55;opacity:var(--alpha);}.star-field{position:absolute;inset:0;animation:stars-breathe 12s ease-in-out infinite alternate}.sky-vignette{position:absolute;inset:0;background:linear-gradient(180deg,#ffffff09,transparent 38%,#17394a10),radial-gradient(ellipse at 50% 50%,transparent 45%,#172f4612)}
/* Keep existing panel geometry and type; only add stable glass surfaces. */
#canvas>.weather{background:rgba(244,248,241,.93);border-color:#ffffff70;box-shadow:0 8px 30px #1b3b4b0b}#canvas>.transit{background:rgba(248,250,245,.94);border:1px solid #ffffff66;border-radius:25px;padding:12px 22px}#canvas>.notes{background:rgba(249,247,235,.96);border:1px solid #ffffff77}#canvas>.campaign-placement{background:rgba(245,241,230,.97);border-color:#ffffff88;box-shadow:0 10px 38px #18394c0d}#canvas>.top,#canvas>.intro,#canvas>.footer{transition:color 1400ms ease}.atmosphere-dark #canvas>.top,.atmosphere-dark #canvas>.intro,.atmosphere-dark #canvas>.footer{color:#f4f6f1;text-shadow:0 2px 18px #152c4940}.atmosphere-dark #canvas .date,.atmosphere-dark #canvas .intro p{color:#dae4e8}.atmosphere-dark #canvas .brandmark{border-color:#ebf0e4}.atmosphere-dark #canvas .brandmark:after{border-color:#ebf0e4;background:#3c5564}.atmosphere-dark #canvas>.demo{color:#dfebed;opacity:.8}.atmosphere-dark #canvas>.footer .pill{color:#edf3eb;border-color:#d7e3df55;background:#122b432e}.atmosphere-dark #canvas .top .brand>span>span{color:#c4d7ba!important}.atmosphere-static .sky-cloud,.atmosphere-static .solar-glow,.atmosphere-static .rain-drop,.atmosphere-static .snow-flake,.atmosphere-static .star-field,.atmosphere-paused .sky-cloud,.atmosphere-paused .solar-glow,.atmosphere-paused .rain-drop,.atmosphere-paused .snow-flake,.atmosphere-paused .star-field{animation-play-state:paused}.atmosphere-static .rain-drop{opacity:.22;top:var(--static-y)}.atmosphere-static .snow-flake{opacity:.6;top:var(--static-y)}
@keyframes cloud-drift{from{transform:translate3d(-100px,0,0) scale(1)}to{transform:translate3d(110px,20px,0) scale(1.04)}}@keyframes light-breathe{from{transform:scale(.96);opacity:.7}to{transform:scale(1.05);opacity:1}}@keyframes rain-fall{0%{transform:translate3d(0,-100px,0) rotate(12deg);opacity:0}8%{opacity:.45}92%{opacity:.4}100%{transform:translate3d(-260px,2100px,0) rotate(12deg);opacity:0}}@keyframes snow-fall{0%{transform:translate3d(0,-40px,0);opacity:0}8%{opacity:.75}50%{transform:translate3d(45px,1000px,0);opacity:.75}95%{opacity:.7}100%{transform:translate3d(-25px,2020px,0);opacity:0}}@keyframes stars-breathe{from{opacity:.6}to{opacity:.95}}
@media(prefers-reduced-motion:reduce){.sky-cloud,.solar-glow,.rain-drop,.snow-flake,.star-field{animation:none!important}.rain-drop{opacity:.22;top:var(--static-y)}.snow-flake{opacity:.6;top:var(--static-y)}.weather-scene,#canvas>.top,#canvas>.intro,#canvas>.footer{transition:none!important}}
@supports not (contain:strict){.sky-cloud{will-change:auto}}
body[data-weather]{background:#cbdbe0;transition:background-color 2000ms ease}body.atmosphere-dark{background:#142b3c}.weather-scene[data-condition=rainy][data-period=day]{background:linear-gradient(165deg,#314f68,#76909f 55%,#a5b9b8)}#canvas>.demo{background:#f5faefdd;color:#425b4b;opacity:1;padding:5px 10px;border-radius:20px}body.atmosphere-dark #canvas>.demo{background:#19334bd9;color:#edf5ed;opacity:1}#canvas .transit .sectionhead span{color:#57695d}#canvas .weather .eyebrow{color:#52705c}#canvas .campaign-layer .ad-overline,#canvas .campaign-counter{color:#52634c}.atmosphere-static .rain-drop,.atmosphere-static .snow-flake,.atmosphere-static .sky-cloud,.atmosphere-static .solar-glow,.atmosphere-static .star-field{animation:none}
.atmosphere-static .sky-cloud{will-change:auto}@media(prefers-reduced-motion:reduce){.sky-cloud{will-change:auto}}
