/* Zählwiese Memory v222: abundant illustrated rewards with bounded, low-overdraw animations. */
body .zw213-pair-fx.zw222-celebration{
  position:fixed!important;
  inset:auto!important;
  left:var(--scene-left)!important;
  top:var(--scene-top)!important;
  width:var(--scene-width)!important;
  height:var(--scene-height)!important;
  max-width:var(--scene-width)!important;
  max-height:var(--scene-height)!important;
  overflow:hidden!important;
  z-index:999997!important;
  pointer-events:none!important;
  contain:layout style paint!important;
}
body .zw222-celebration .zw213-confetti{
  width:clamp(9px,2.5vw,14px)!important;
  height:clamp(12px,3.2vw,19px)!important;
  filter:drop-shadow(0 1px 1px #66533d27)!important;
}
body .zw222-celebration .zw213-balloon{
  width:clamp(27px,8vw,48px)!important;
  height:clamp(48px,15vw,82px)!important;
  filter:drop-shadow(0 2px 1px #7c513835)!important;
}
body .zw222-celebration .zw215-reward{
  width:clamp(18px,5vw,29px)!important;
  height:clamp(18px,5vw,29px)!important;
}
body .zw222-celebration.zw222-finale .zw213-balloon{
  animation-duration:3.1s!important;
}
#app .memory127-page .zw222-clap{
  position:absolute!important;
  z-index:30!important;
  width:min(78%,340px)!important;
  height:clamp(148px,24vh,230px)!important;
  left:50%!important;top:49%!important;
  transform:translate(-50%,-50%)!important;
  overflow:visible!important;
  isolation:isolate!important;
  pointer-events:none!important;
  animation:zw222-clap-stage 1.9s ease both!important;
}
#app .memory127-page .zw222-clap::before{
  content:''!important;
  position:absolute!important;inset:0!important;
  background:radial-gradient(ellipse at 50% 59%,#fff6c2d4 0%,#fff2c88c 42%,transparent 73%)!important;
  border-radius:50%!important;filter:blur(2px)!important;
  z-index:-1!important;
}
#app .memory127-page .zw222-clap img.zw222-clap-hand{
  position:absolute!important;
  width:48%!important;height:97%!important;
  top:0!important;object-fit:contain!important;
  object-position:center bottom!important;
  filter:drop-shadow(0 3px 2px #74503952)!important;
  transform-origin:50% 90%!important;
  will-change:transform!important;
}
#app .memory127-page .zw222-clap-left{
  left:0!important;
  animation:zw222-hand-left 1.9s cubic-bezier(.22,.73,.3,1) both!important;
}
#app .memory127-page .zw222-clap-right{
  right:0!important;
  animation:zw222-hand-right 1.9s cubic-bezier(.22,.73,.3,1) both!important;
}
#app .memory127-page .zw222-clap-spark{
  position:absolute!important;
  left:50%!important;top:22%!important;
  width:clamp(23px,6vw,34px)!important;
  height:clamp(23px,6vw,34px)!important;
  object-fit:contain!important;pointer-events:none!important;
  filter:drop-shadow(0 2px 2px #85523348)!important;
  animation:zw222-clap-spark 1.9s ease both!important;
  animation-delay:calc(var(--spark-index)*110ms)!important;
}
@keyframes zw222-clap-stage{
  0%{opacity:0}9%{opacity:1}87%{opacity:1}100%{opacity:0}
}
@keyframes zw222-hand-left{
  0%{transform:translate3d(-39%,12px,0) rotate(-14deg) scale(.89)}
  20%{transform:translate3d(-20%,2px,0) rotate(-7deg) scale(.97)}
  30%{transform:translate3d(19%,0,0) rotate(12deg) scale(1.06)}
  37%{transform:translate3d(-18%,7px,0) rotate(-9deg) scale(.98)}
  49%{transform:translate3d(22%,0,0) rotate(13deg) scale(1.07)}
  57%{transform:translate3d(-14%,6px,0) rotate(-6deg) scale(.99)}
  68%{transform:translate3d(23%,0,0) rotate(12deg) scale(1.07)}
  77%{transform:translate3d(-10%,5px,0) rotate(-5deg) scale(1)}
  88%,100%{transform:translate3d(10%,0,0) rotate(5deg) scale(1.03)}
}
@keyframes zw222-hand-right{
  0%{transform:translate3d(39%,12px,0) rotate(14deg) scale(.89)}
  20%{transform:translate3d(20%,2px,0) rotate(7deg) scale(.97)}
  30%{transform:translate3d(-19%,0,0) rotate(-12deg) scale(1.06)}
  37%{transform:translate3d(18%,7px,0) rotate(9deg) scale(.98)}
  49%{transform:translate3d(-22%,0,0) rotate(-13deg) scale(1.07)}
  57%{transform:translate3d(14%,6px,0) rotate(6deg) scale(.99)}
  68%{transform:translate3d(-23%,0,0) rotate(-12deg) scale(1.07)}
  77%{transform:translate3d(10%,5px,0) rotate(5deg) scale(1)}
  88%,100%{transform:translate3d(-10%,0,0) rotate(-5deg) scale(1.03)}
}
@keyframes zw222-clap-spark{
  0%,22%{opacity:0;transform:translate3d(0,15px,0) scale(.15) rotate(-20deg)}
  32%{opacity:1;transform:translate3d(var(--dx),var(--dy),0) scale(1.08) rotate(5deg)}
  50%{opacity:.85;transform:translate3d(var(--dx),calc(var(--dy) - 22px),0) scale(.95) rotate(-12deg)}
  83%{opacity:.8;transform:translate3d(var(--dx),calc(var(--dy) - 34px),0) scale(.8) rotate(14deg)}
  100%{opacity:0;transform:translate3d(var(--dx),-96px,0) scale(.4) rotate(-10deg)}
}
@media(orientation:landscape) and (max-height:539px){
  #app .memory127-page .zw222-clap{
    left:67%!important;top:48%!important;
    width:min(50%,300px)!important;height:clamp(126px,49vh,187px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #app .memory127-page .zw222-clap{animation:none!important;opacity:1!important}
  #app .memory127-page .zw222-clap-left{animation:none!important;transform:translateX(12%) rotate(5deg)!important}
  #app .memory127-page .zw222-clap-right{animation:none!important;transform:translateX(-12%) rotate(-5deg)!important}
  #app .memory127-page .zw222-clap-spark{animation:none!important;opacity:.9!important}
  body .zw222-celebration .zw213-balloon{animation-duration:.9s!important}
  body .zw222-celebration .zw213-confetti{animation-duration:.7s!important}
}