.fx22-layer{position:fixed;inset:0;z-index:6500;pointer-events:none!important;overflow:hidden;contain:strict}.fx22-layer *{pointer-events:none!important}.fx22-layer svg{display:block;overflow:hidden}.fx22-flash{opacity:0;animation:fx22-flash var(--fx-time) ease-out both}.fx22-cut{opacity:0;animation:fx22-cut var(--fx-time) ease-out both;animation-delay:calc(var(--fx-time)*var(--delay));stroke-dasharray:400;stroke-dashoffset:400}.fx22-particle,.fx22-droplet,.fx22-bubble{opacity:0;animation:fx22-particle calc(var(--fx-time)*.6) ease-out both;animation-delay:calc(var(--fx-time)*var(--delay))}.fx22-shield-left{animation:fx22-left var(--fx-time) ease-out both}.fx22-shield-right{animation:fx22-right var(--fx-time) ease-out both}.fx22-crack{animation:fx22-crack var(--fx-time) ease-out both}.fx22-stream{stroke-dasharray:1500;stroke-dashoffset:1500;animation:fx22-stream var(--fx-time) ease-out both}.fx22-vein{stroke-dasharray:350;stroke-dashoffset:350;animation:fx22-vein var(--fx-time) ease-out both}.fx22-inject{animation:fx22-flash var(--fx-time) ease-out both}.fx22-hammer{animation:fx22-hammer var(--fx-time) ease-in both;transform-origin:0 0}.fx22-ring{transform-box:fill-box;transform-origin:center;animation:fx22-ring var(--fx-time) ease-out both}.fx22-arrow{animation:fx22-arrow var(--fx-time) ease-out both}.fx22-rune{animation:fx22-rune var(--fx-time) ease-out both}.fx22-orb{animation:fx22-orb var(--fx-time) ease-out both}
@keyframes fx22-flash{0%,15%{opacity:0}35%{opacity:.8}100%{opacity:0}}
@keyframes fx22-cut{0%{opacity:0;stroke-dashoffset:400}15%{opacity:1}42%{stroke-dashoffset:0;opacity:1}85%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes fx22-particle{0%{opacity:0;transform:translate(0,0)}15%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy))}}
@keyframes fx22-left{0%{opacity:0;transform:scale(.8)}25%{opacity:1;transform:scale(1)}45%{opacity:1;transform:translate(0,0)}100%{opacity:0;transform:translate(-27px,22px) rotate(-22deg)}}
@keyframes fx22-right{0%{opacity:0;transform:scale(.8)}25%{opacity:1;transform:scale(1)}45%{opacity:1;transform:translate(0,0)}100%{opacity:0;transform:translate(27px,22px) rotate(22deg)}}
@keyframes fx22-crack{0%,22%{opacity:0}32%,52%{opacity:1}100%{opacity:0}}
@keyframes fx22-stream{0%{opacity:0;stroke-dashoffset:1500}12%{opacity:1}40%{stroke-dashoffset:0;opacity:1}70%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes fx22-vein{0%,25%{opacity:0;stroke-dashoffset:350}40%{opacity:1}65%{stroke-dashoffset:0;opacity:.9}100%{stroke-dashoffset:0;opacity:0}}
@keyframes fx22-hammer{0%{opacity:0;transform:translate(-20px,-40px) rotate(-45deg)}18%{opacity:1;transform:translate(-20px,-40px) rotate(-45deg)}35%{opacity:1;transform:translate(0,0) rotate(18deg)}65%,100%{opacity:0;transform:translate(0,8px) rotate(18deg)}}
@keyframes fx22-ring{0%,25%{opacity:0;transform:scale(.2)}40%{opacity:1}100%{opacity:0;transform:scale(1.7)}}
@keyframes fx22-arrow{0%,12%{opacity:0;transform:translateX(-75px)}35%{opacity:1;transform:translateX(0)}70%,100%{opacity:0;transform:translateX(0)}}
@keyframes fx22-rune{0%,20%{opacity:0;transform:scale(.4) rotate(-30deg)}45%{opacity:1;transform:scale(1) rotate(0)}100%{opacity:0;transform:scale(1.3) rotate(40deg)}}
@keyframes fx22-orb{0%,20%{opacity:0}40%,60%{opacity:1}100%{opacity:0}}

.fx22-cut,.fx22-stream,.fx22-crack,.fx22-vein{filter:drop-shadow(0 0 3px var(--fx-color))}
