/* Decorative leaves never intercept navigation, shopping, or reading. */
.falling-leaves{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:6;contain:strict}
.falling-leaves[hidden],.leaf-motion-toggle[hidden]{display:none}
.leaf-drift{position:absolute;left:var(--x);top:-45px;animation:leaf-fall var(--duration) linear var(--delay) infinite;opacity:0;pointer-events:none}
.leaf-sway{display:block;animation:leaf-sway var(--flutter) ease-in-out var(--delay) infinite alternate;perspective:300px}
.drifting-leaf{display:block;position:relative;width:var(--size);height:calc(var(--size) * var(--ratio));border-radius:2% 90% 4% 90%;background:linear-gradient(140deg,var(--tone),var(--leaf-highlight,#c3b879));box-shadow:inset 0 -1px 1px #415a3226;animation:leaf-tumble var(--flip) linear var(--delay) infinite;transform-origin:45% 55%;backface-visibility:visible}
.drifting-leaf:after{content:'';position:absolute;left:10%;top:50%;width:85%;height:1px;background:#f0eac766;transform:rotate(-22deg)}
@keyframes leaf-fall{0%{transform:translate3d(0,-40px,0);opacity:0}10%{opacity:var(--alpha)}85%{opacity:var(--alpha)}100%{transform:translate3d(var(--sway),calc(100vh + 90px),0);opacity:0}}
@keyframes leaf-sway{from{transform:translateX(calc(-1 * var(--swing))) rotate(-12deg)}to{transform:translateX(var(--swing)) rotate(18deg)}}
.falling-leaves.is-paused .leaf-drift,.falling-leaves.is-paused .leaf-sway,.falling-leaves.is-paused .drifting-leaf{animation-play-state:paused}
.leaf-motion-toggle{position:fixed;bottom:14px;left:14px;z-index:7;border:1px solid #bdc5ae;background:#f6f4ebeb;color:#40583c;border-radius:20px;padding:8px 12px;font:12px 'DM Sans',Arial,sans-serif;cursor:pointer;box-shadow:0 2px 10px #253e3110}
@media(max-width:800px){.leaf-drift:nth-child(n+49){display:none}.leaf-motion-toggle{bottom:10px;left:10px}}
@media(prefers-reduced-motion:reduce){.falling-leaves,.leaf-motion-toggle{display:none!important}.leaf-drift,.leaf-sway,.drifting-leaf{animation:none!important}}

.leaf-drift[data-shape="1"] .drifting-leaf{border-radius:50% 4% 50% 4%}.leaf-drift[data-shape="2"] .drifting-leaf{border-radius:70% 8% 70% 35%}.leaf-drift[data-shape="3"] .drifting-leaf{border-radius:8% 80% 30% 80%;clip-path:polygon(0 45%,18% 14%,50% 0,83% 15%,100% 50%,78% 82%,40% 100%,12% 75%)}

html[data-theme=winter]{--leaf-highlight:#db9b51}

@keyframes leaf-tumble{from{transform:rotateZ(var(--turn)) rotateX(0deg) rotateY(0deg)}to{transform:rotateZ(calc(var(--turn) + var(--flip-z))) rotateX(var(--flip-x)) rotateY(var(--flip-y))}}
@keyframes leaf-roll{from{transform:rotateZ(var(--turn)) rotateY(0deg)}to{transform:rotateZ(calc(var(--turn) + var(--flip-z))) rotateY(var(--flip-y))}}
@keyframes leaf-end-over-end{from{transform:rotateZ(var(--turn)) rotateX(0deg)}to{transform:rotateZ(calc(var(--turn) + var(--flip-z))) rotateX(var(--flip-x))}}
.leaf-drift[data-motion="1"] .drifting-leaf{animation-name:leaf-roll}
.leaf-drift[data-motion="2"] .drifting-leaf{animation-name:leaf-end-over-end}
.leaf-drift[data-shape="4"] .drifting-leaf{border-radius:0;clip-path:polygon(50% 0,61% 26%,79% 12%,77% 37%,100% 34%,85% 57%,97% 68%,64% 78%,51% 100%,43% 77%,12% 78%,20% 59%,0 42%,28% 38%,24% 16%,41% 28%)}
.leaf-drift[data-shape="5"] .drifting-leaf{border-radius:50% 50% 48% 48%;clip-path:polygon(50% 0,65% 12%,60% 22%,83% 26%,74% 39%,96% 47%,83% 60%,91% 73%,67% 80%,50% 100%,32% 82%,10% 75%,18% 60%,3% 46%,25% 38%,16% 25%,39% 22%,36% 11%)}
.leaf-drift[data-shape="6"] .drifting-leaf{border-radius:0 85% 0 85%;height:calc(var(--size) * .3)}
.leaf-drift[data-shape="7"] .drifting-leaf{border-radius:60% 60% 10% 60%;clip-path:polygon(50% 0,70% 18%,86% 20%,83% 39%,100% 50%,83% 68%,82% 82%,60% 86%,50% 100%,37% 84%,15% 81%,16% 63%,0 49%,18% 33%,20% 17%,39% 15%)}

/* Botanical artwork replaces the original flat CSS silhouettes. */
.leaf-drift .drifting-leaf{width:var(--size);height:calc(var(--size) * 1.08)!important;background:none!important;border-radius:0!important;clip-path:none!important;box-shadow:none;color:var(--tone);filter:drop-shadow(1px 2px 1px #4b301525)}
.drifting-leaf:after{display:none}.drifting-leaf svg{display:block;width:100%;height:100%;overflow:visible}
