/* Screen-centre cinematic VFX. These rules intentionally override the legacy cell effect. */
.battle-cinematic .cinematic-missile{z-index:3;width:17px;height:64px;border-radius:52% 52% 34% 34%;background:linear-gradient(90deg,#475b63,#f2f6f2 46%,#697b82);box-shadow:0 0 9px #fff;transform:translate(-58vw,-57vh) rotate(135deg)}
.battle-cinematic .cinematic-missile:before{content:'';position:absolute;left:2px;top:-12px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:15px solid #f4f7f1}
.battle-cinematic .cinematic-trail{z-index:2;width:11px;height:190px;background:linear-gradient(to top,#fff1a1 0,#ff7d2f 15%,rgba(225,242,245,.55) 38%,transparent 100%);filter:blur(2px);transform:translate(-47vw,-72vh) rotate(135deg);transform-origin:bottom}
.battle-cinematic.run .cinematic-missile{animation:aaa-missile-in 1s cubic-bezier(.14,.66,.23,1) both}
.battle-cinematic.run .cinematic-trail{animation:aaa-missile-trail-in 1s cubic-bezier(.14,.66,.23,1) both}
.battle-cinematic.run .cinematic-vfx{animation-delay:.82s!important;animation-duration:1.7s!important}
.battle-cinematic.run .cinematic-glow{animation-delay:.9s}
.battle-cinematic.run .cinematic-shockwave{animation-delay:.98s}
@keyframes aaa-missile-in{0%{opacity:0;transform:translate(-58vw,-57vh) rotate(135deg)}8%{opacity:1}84%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(135deg)}}
@keyframes aaa-missile-trail-in{0%{opacity:0;transform:translate(-47vw,-72vh) rotate(135deg)}10%,72%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(135deg) scaleY(.25)}}
body.force-battle-effects .battle-cinematic.run .cinematic-missile,body.force-battle-effects .battle-cinematic.run .cinematic-trail{animation-duration:1s!important}
body.force-battle-effects .battle-cinematic.run .cinematic-vfx{animation-duration:1.7s!important}
