/* Weather is a brief response to a permitted garden visitor. */
.garden-weather-effect { position: absolute; display: block; pointer-events: none; opacity: 0; transform-origin: center; contain: layout style; }
.garden-weather-clock { position: absolute; width: 0; height: 0; overflow: hidden; pointer-events: none; opacity: 0; }
.garden-weather-effect[data-weather-effect="cloudbreak"] { border-radius: 45% 55% 32% 68%; background: linear-gradient(165deg, var(--site-accent, #e2cd8c), transparent 83%); filter: blur(11px); clip-path: inset(0 round 15%); }
.garden-weather-effect:is([data-weather-effect="rain-rings"], [data-weather-effect="water-breeze"]) { box-sizing: border-box; border: 1px solid var(--site-ink, #83a5a5); border-radius: 50%; box-shadow: 0 3px 0 -1px var(--site-paper, #fffaf1); }
.garden-weather-effect[data-weather-effect="rain-curtain"] { border-radius: 100%; background: linear-gradient(transparent, var(--site-petal-light, #d9e5ed) 30%, var(--site-paper, #fffaf1)); }
.garden-weather-effect[data-weather-effect="snow-flurry"] > svg { width: 100%; height: 100%; display: block; }

@media (prefers-reduced-motion: no-preference) {
  :root.site-motion-awake[data-garden-weather="dew-glimmer"] .site-motion-event[data-behavior="bloom"] > .garden-art,
  :root.site-motion-awake[data-garden-weather="snow-glimmer"] .site-motion-event[data-behavior="snow"] > .garden-art { filter: brightness(1.08); transition: filter 1.2s ease-in-out; }
  :root.site-motion-awake[data-garden-weather] .garden-border-leaf,
  :root.site-motion-awake[data-garden-weather] .garden-border-flower { transition: translate .9s ease-in-out; translate: calc(var(--garden-wind-direction, 1) * var(--garden-wind-force, 0) * 2px) 0; }
  :root.site-motion-awake[data-garden-weather]:is(.site-motion-sway) .site-motion-event[data-behavior="bloom"] :is(.garden-sprig, .garden-flower-head) { transition: translate .9s ease-in-out; translate: calc(var(--garden-wind-direction, 1) * var(--garden-wind-force, 0) * 2px) 0; }
  :root.site-motion-awake[data-garden-weather="lull"] .site-motion-event[data-behavior="bloom"] :is(.garden-sprig, .garden-flower-head) { animation-duration: calc(8s * var(--site-motion-duration-scale, 1)); }
  :root.site-motion-awake[data-garden-weather="gust"] .site-motion-event[data-behavior="bloom"] :is(.garden-sprig, .garden-flower-head),
  :root.site-motion-awake[data-garden-weather="whirl"] .site-motion-event[data-behavior="bloom"] :is(.garden-sprig, .garden-flower-head) { animation-duration: calc(2.7s * var(--site-motion-duration-scale, 1)); }
}
@media (prefers-reduced-motion: reduce), print { .garden-weather-effect, .garden-weather-clock { display: none !important; } }
