.duel-sky{position:fixed;inset:0;z-index:-2;background:radial-gradient(ellipse at 35% 25%,#d1d2bc,transparent 65%),linear-gradient(#647f89,#b4c5bf 65%,#718e94)}.duel-clouds{position:absolute;inset:-20%;opacity:.5;background:radial-gradient(ellipse at 20% 35%,#e4e7df,transparent 25%),radial-gradient(ellipse at 75% 70%,#e0e7dd,transparent 22%);animation:cloud-drift 35s ease-in-out infinite alternate}.home-stage,.arena-stage{position:fixed;inset:90px 6vw 170px;display:grid;place-items:center;container-type:size;pointer-events:none;z-index:-1}.island{position:relative;width:min(100cqw,150cqh,1150px);aspect-ratio:3/2;animation:home-float 7s ease-in-out infinite}body[data-screen=world] #two-duel,body[data-screen=duel] #two-home{display:none}.arena-float{width:min(100cqw,150cqh,1280px);animation:arena-float 9s ease-in-out infinite}#arena{position:relative;width:100%;aspect-ratio:3/2}#arena img{display:block;width:100%;height:auto}#arena .paint-effects{position:absolute;inset:0;width:100%;height:100%;overflow:visible}#arena.rebound{animation:rebound .62s ease-in-out}.island.review .seal-light{opacity:1;filter:drop-shadow(0 0 12px #b2e7d7)}@keyframes home-float{50%{transform:translateY(-10px)}}@keyframes arena-float{50%{transform:translateY(-2px)}}@keyframes rebound{0%,100%{transform:none}18%{transform:translate(.7px,-.4px) rotate(.025deg)}42%{transform:translate(-.45px,.25px) rotate(-.015deg)}68%{transform:translate(.2px,-.1px)}}@keyframes cloud-drift{to{transform:translate(5%,2%)}}@media(max-width:650px){.home-stage{inset:90px -18px 280px}.arena-stage{inset:130px 0 170px}}@media(prefers-reduced-motion:reduce){.island,.arena-float,#arena.rebound,.duel-clouds{animation:none}}
#arena .vine-source{opacity:0}#arena .vine-art{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
#scene-fog-transition{position:fixed;inset:0;z-index:1000000;pointer-events:auto;background:linear-gradient(155deg,#9eb8b2,#cad4c7 48%,#839f9c);opacity:0}
#scene-fog-transition[hidden]{display:none}
#scene-fog-transition::before,#scene-fog-transition::after{content:'';position:absolute;inset:-12%;background:radial-gradient(ellipse at 25% 40%,#edf0dda8,transparent 44%),radial-gradient(ellipse at 80% 65%,#dce6ddaa,transparent 40%);animation:transition-fog-drift 3s ease-in-out infinite alternate}
#scene-fog-transition::after{animation-direction:alternate-reverse;opacity:.65}
@keyframes transition-fog-drift{to{transform:translate(4%,-2%)}}
@media(prefers-reduced-motion:reduce){#scene-fog-transition::before,#scene-fog-transition::after{animation:none}}
