/* Original woodland decorations: CSS animation only; no sound or pointer trail. */
.forest-stage{position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none;contain:layout paint;user-select:none}
.forest-stage svg{display:block;width:100%;height:auto;overflow:visible}
.forest-orbit{position:absolute;display:block;width:40px;opacity:.78;animation:forest-meander var(--forest-duration,28s) ease-in-out var(--forest-delay,0s) infinite;transform-origin:center;pointer-events:none}
.forest-orbit-1{left:8%;top:25%;width:38px}
.forest-orbit-2{left:39%;top:40%;width:25px;opacity:.6}
.forest-orbit-3{right:9%;top:19%;width:30px;opacity:.67}
.forest-butterfly-wings{transform-origin:35px 31px;animation:forest-wingbeat 2.1s ease-in-out infinite}
[data-forest-season=summer] .forest-orbit{--glow:#efac72}
[data-forest-season=autumn] .forest-orbit{width:34px;opacity:.84;animation-name:forest-leaf-turn}
[data-forest-season=autumn] .forest-orbit-1{--leaf:#d79a41;top:19%}
[data-forest-season=autumn] .forest-orbit-2{--leaf:#bd6740;width:26px;left:31%;top:57%}
[data-forest-season=autumn] .forest-orbit-3{--leaf:#e2b65d;width:40px;top:29%}
[data-forest-season=winter] .forest-orbit{width:24px;opacity:.62;animation-name:forest-snow-dance;animation-duration:36s}
[data-forest-season=winter] .forest-orbit-2{width:15px;left:68%;top:45%}
.forest-owl{position:absolute;display:block;left:-220px;top:21%;width:175px;height:auto;visibility:hidden;pointer-events:none}
.forest-owl.is-flying{visibility:visible;animation:forest-owl-crossing 15s linear both}
.forest-owl-wing-left{transform-origin:99px 56px;animation:forest-owl-wing-left 2.2s ease-in-out infinite alternate}
.forest-owl-wing-right{transform-origin:122px 56px;animation:forest-owl-wing-right 2.2s ease-in-out infinite alternate}
.forest-surprise{position:relative;isolation:isolate;display:table;max-width:100%;margin-top:17px}
.scene-copy .forest-spell{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;max-width:100%;padding:9px 5px;color:#f0d69e;background:transparent;border:0;border-bottom:1px dashed #bda16e8c;border-radius:0;font:inherit;font-size:.76rem;line-height:1.4;text-align:left;cursor:pointer;transition:color .2s,border-color .2s}
.scene-copy .forest-spell:hover{color:#fff1c9;border-bottom-color:#edd59a}
.forest-spell-spark{font-size:1.55rem;line-height:1;display:inline-block}
.scene-copy .forest-spell:focus-visible{outline:2px solid #f6d699;outline-offset:5px;border-radius:4px}
.scene-copy .forest-spell:disabled{opacity:.62;cursor:default;color:#ded8bd;border-bottom-color:#a29c834f}
.forest-spell-status{position:absolute!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;width:1px!important;height:1px!important;overflow:hidden!important;white-space:nowrap!important}
.forest-burst-particle{position:absolute;left:50%;top:50%;z-index:4;width:10px;height:16px;border-radius:90% 0 85% 0;background:var(--leaf-light);pointer-events:none;transform:translate(-50%,-50%);opacity:0;animation:forest-burst 2.1s cubic-bezier(.12,.65,.28,1) var(--burst-delay,0ms) both}
.forest-burst-star{width:14px;height:14px;background:none;border-radius:0;color:#f9d79a;font-size:17px;line-height:1}
@keyframes forest-meander{0%,100%{transform:translate3d(0,0,0) rotate(-14deg)}30%{transform:translate3d(35px,-19px,0) rotate(11deg)}65%{transform:translate3d(16px,22px,0) rotate(-6deg)}}
@keyframes forest-wingbeat{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.52)}}
@keyframes forest-leaf-turn{0%,100%{transform:translate3d(0,-8px,0) rotate(-28deg)}50%{transform:translate3d(-32px,64px,0) rotate(39deg)}}
@keyframes forest-snow-dance{0%,100%{transform:translate3d(0,-18px,0) rotate(0)}50%{transform:translate3d(24px,55px,0) rotate(55deg)}}
@keyframes forest-owl-crossing{0%{transform:translate3d(0,8px,0) rotate(-3deg)}20%{transform:translate3d(calc(var(--forest-flight-distance)*.2),-12px,0) rotate(3deg)}45%{transform:translate3d(calc(var(--forest-flight-distance)*.45),29px,0) rotate(-2deg)}70%{transform:translate3d(calc(var(--forest-flight-distance)*.7),-15px,0) rotate(2deg)}100%{transform:translate3d(var(--forest-flight-distance),-3px,0) rotate(-3deg)}}
@keyframes forest-owl-wing-left{from{transform:rotate(-7deg) scaleY(.86)}to{transform:rotate(9deg) scaleY(1)}}
@keyframes forest-owl-wing-right{from{transform:rotate(7deg) scaleY(.86)}to{transform:rotate(-9deg) scaleY(1)}}
@keyframes forest-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(0)}12%{opacity:1}75%{opacity:.8}100%{opacity:0;transform:translate(calc(-50% + var(--burst-x)),calc(-50% + var(--burst-y))) scale(.55) rotate(var(--burst-turn))}}
body[data-motion=paused] .forest-stage,body.forest-resting .forest-stage{visibility:hidden}
body[data-motion=paused] .forest-stage *,body.forest-resting .forest-stage *,body[data-motion=paused] .forest-burst-particle,body.forest-resting .forest-burst-particle{animation:none!important}
body[data-motion=paused] .forest-burst-particle,body.forest-resting .forest-burst-particle{display:none}
@media(max-width:800px){.forest-owl{width:145px;top:20%}.forest-orbit-1{left:4%}.forest-orbit-3{right:5%}}
@media(max-width:520px){.forest-stage{bottom:auto;height:370px}.forest-owl{width:122px;top:35%}.forest-owl.is-flying{animation-duration:11s}.forest-orbit-1{width:30px;left:7%;top:49%}.forest-orbit-2{display:none}.forest-orbit-3{width:23px;right:8%;top:27%}[data-forest-season=autumn] .forest-orbit-1{width:29px;top:44%}[data-forest-season=autumn] .forest-orbit-3{width:30px;top:31%}.forest-surprise{margin-top:12px}.scene-copy .forest-spell{font-size:.73rem;min-height:44px;padding:8px 3px}.forest-burst-particle{width:8px;height:12px}}
@media(prefers-reduced-motion:reduce){.forest-stage,.forest-burst-particle{display:none!important}.forest-stage *,.forest-burst-particle{animation:none!important}.scene-copy .forest-spell{transition:none}}
