.character-sprite.anim-idle{animation:1.5s ease-in-out infinite idle-float}@keyframes idle-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}.enemy-slot .character-sprite.anim-idle{animation:1.5s ease-in-out infinite idle-float-enemy}@keyframes idle-float-enemy{0%,100%{transform:scaleX(-1) translateY(0)}50%{transform:scaleX(-1) translateY(-6px)}}#battle-arena.hit-freeze .character-sprite{animation-play-state:paused}#player-character .character-sprite.anim-attack{animation:.4s ease-out forwards player-attack}@keyframes player-attack{0%,100%{transform:translateX(0)}30%{transform:translateX(40px)}}.enemy-slot .character-sprite.anim-attack{animation:.35s ease-out forwards enemy-attack}@keyframes enemy-attack{0%,100%{transform:scaleX(-1) translateX(0)}30%{transform:scaleX(-1) translateX(-40px)}}#player-character .character-sprite.anim-hurt{animation:.25s ease-out forwards hurt-flash}@keyframes hurt-flash{0%,100%{filter:brightness(1);transform:translateX(0)}25%{filter:brightness(3);transform:translateX(-15px)}50%{filter:brightness(1);transform:translateX(-10px)}}.enemy-slot .character-sprite.anim-hurt{animation:.25s ease-out forwards hurt-flash-enemy}@keyframes hurt-flash-enemy{0%,100%{filter:brightness(1);transform:scaleX(-1) translateX(0)}25%{filter:brightness(3);transform:scaleX(-1) translateX(15px)}50%{filter:brightness(1);transform:scaleX(-1) translateX(10px)}}#player-character .character-sprite.anim-skill{animation:.5s ease-out forwards skill-attack}@keyframes skill-attack{0%{filter:brightness(1);transform:scale(1)}20%{filter:brightness(2) drop-shadow(0 0 15px #ffd700);transform:scale(1.15)}50%{transform:translateX(50px) scale(1.1)}100%{filter:brightness(1);transform:translateX(0) scale(1)}}.enemy-slot .character-sprite.anim-death{animation:.5s ease-out forwards enemy-death}@keyframes enemy-death{0%{opacity:1;transform:scaleX(-1) scale(1)}30%{filter:brightness(.3)}100%{opacity:0;transform:scaleX(-1) scale(.5) translateY(30px)}}@keyframes damage-float{0%{opacity:1;transform:translateY(0) scale(.6)}10%{transform:translateY(-8px) scale(1.2)}25%{transform:translateY(-18px) scale(1)}100%{opacity:0;transform:translateY(-40px) scale(.9)}}@keyframes critical-float{0%{opacity:1;transform:translateY(0) scale(.2) rotate(-5deg);filter:brightness(3)}8%{transform:translateY(-5px) scale(1.8) rotate(0);filter:brightness(2)}15%{transform:translateY(-12px) scale(1.4) rotate(2deg)}25%{transform:translateY(-20px) scale(1.3) rotate(-1deg)}40%{transform:translateY(-35px) scale(1.2);filter:brightness(1)}100%{opacity:0;transform:translateY(-70px) scale(1)}}@keyframes skill-float{0%{opacity:1;transform:translateY(0) scale(.5);filter:drop-shadow(0 0 8px currentColor)}12%{transform:translateY(-10px) scale(1.3);filter:drop-shadow(0 0 15px currentColor)}30%{transform:translateY(-25px) scale(1.1);filter:drop-shadow(0 0 10px currentColor)}100%{opacity:0;transform:translateY(-50px) scale(1);filter:drop-shadow(0 0 0 transparent)}}@keyframes execute-float{0%{opacity:1;transform:translateY(0) scale(.1);filter:brightness(5) saturate(2)}5%{transform:translateY(0) scale(2.2);filter:brightness(3) saturate(1.5)}12%{transform:translateY(-8px) scale(1.6);filter:brightness(1.5)}25%{transform:translateY(-20px) scale(1.4);filter:brightness(1)}100%{opacity:0;transform:translateY(-90px) scale(1)}}@keyframes heal-float{0%{opacity:.8;transform:translateY(0) scale(.8)}20%{opacity:1;transform:translateY(-8px) scale(1.1)}100%{opacity:0;transform:translateY(-35px) scale(1)}}@keyframes dot-float{0%{opacity:1;transform:translate(0,0) scale(.7)}15%{transform:translate(5px,-8px) scale(1.1)}30%{transform:translate(-3px,-16px) scale(1)}100%{opacity:0;transform:translate(8px,-30px) scale(.9)}}@keyframes skill-name-float{0%{opacity:0;transform:translateY(10px) scale(.8)}15%{opacity:1;transform:translateY(-5px) scale(1.1)}30%{transform:translateY(-15px) scale(1)}100%{opacity:0;transform:translateY(-40px) scale(.9)}}@keyframes skill-trigger-popup{0%{opacity:0;transform:translateY(15px) scale(.5)}15%{opacity:1;transform:translateY(-5px) scale(1.2)}30%{transform:translateY(-15px) scale(1)}100%{opacity:0;transform:translateY(-40px) scale(.9)}}@keyframes critical-trigger-flash{0%{opacity:0;transform:scale(.3) rotate(-10deg);filter:brightness(3)}15%{opacity:1;transform:scale(1.5) rotate(0);filter:brightness(2)}30%{transform:scale(1.1) rotate(3deg);filter:brightness(1.2)}100%{opacity:0;transform:scale(1) translateY(-30px);filter:brightness(1)}}@keyframes execute-trigger-explosive{0%{opacity:0;transform:scale(.1);filter:brightness(5) saturate(3)}10%{opacity:1;transform:scale(2);filter:brightness(3) saturate(2)}25%{transform:scale(1.3);filter:brightness(1.5)}100%{opacity:0;transform:scale(1) translateY(-50px);filter:brightness(1)}}@keyframes lifesteal-trigger-glow{0%{opacity:0;transform:scale(.8);filter:drop-shadow(0 0 0 #44ff44)}20%{opacity:1;transform:scale(1.15);filter:drop-shadow(0 0 20px #44ff44)}50%{filter:drop-shadow(0 0 10px #44ff44)}100%{opacity:0;transform:translateY(-25px);filter:drop-shadow(0 0 0 #44ff44)}}@keyframes buff-trigger-rise{0%{opacity:0;transform:translateY(10px) scale(.9)}20%{opacity:1;transform:translateY(0) scale(1.05)}100%{opacity:0;transform:translateY(-35px) scale(1)}}@keyframes buff-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes dot-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes melee-charge-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.enemy-slot.melee-charging .sprite-container{animation:.4s ease-in-out infinite melee-charge-pulse}#player-character .sprite-container.anim-player-death{transform-origin:center bottom;animation:.8s ease-out forwards player-death}@keyframes player-death{0%{filter:brightness(1);transform:scale(1);opacity:1}15%{filter:brightness(3)}40%{filter:brightness(1) grayscale(1)}100%{filter:grayscale(1) brightness(.6);transform:scale(.7);opacity:.35}}#player-character .sprite-container.ghost-state{transform-origin:center bottom;animation:ghost-struggle var(--respawn-duration,5s) ease-in-out forwards}@keyframes ghost-struggle{0%{opacity:.3;transform:scale(.7);filter:grayscale(1) brightness(.6) drop-shadow(0 0 6px rgba(100,150,255,.4))}7%{opacity:.45;transform:scale(.76) translateY(-4px);filter:grayscale(.7) brightness(.95) drop-shadow(0 0 12px rgba(100,150,255,.6))}13%{opacity:.32;transform:scale(.69);filter:grayscale(1) brightness(.58) drop-shadow(0 0 4px rgba(100,150,255,.3))}20%{opacity:.35;transform:scale(.73);filter:grayscale(.9) brightness(.65) drop-shadow(0 0 6px rgba(100,150,255,.4))}27%{opacity:.52;transform:scale(.81) translateY(-5px);filter:grayscale(.55) brightness(1) drop-shadow(0 0 14px rgba(100,150,255,.65))}33%{opacity:.37;transform:scale(.74);filter:grayscale(.85) brightness(.63) drop-shadow(0 0 4px rgba(100,150,255,.3))}40%{opacity:.42;transform:scale(.78);filter:grayscale(.75) brightness(.72) drop-shadow(0 0 8px rgba(100,150,255,.45))}47%{opacity:.6;transform:scale(.86) translateY(-5px);filter:grayscale(.35) brightness(1.1) drop-shadow(0 0 16px rgba(100,150,255,.7))}53%{opacity:.44;transform:scale(.79);filter:grayscale(.65) brightness(.7) drop-shadow(0 0 5px rgba(100,150,255,.35))}60%{opacity:.52;transform:scale(.83);filter:grayscale(.55) brightness(.8) drop-shadow(0 0 10px rgba(100,150,255,.5))}67%{opacity:.7;transform:scale(.92) translateY(-4px);filter:grayscale(.15) brightness(1.2) drop-shadow(0 0 18px rgba(100,150,255,.8))}73%{opacity:.54;transform:scale(.84);filter:grayscale(.45) brightness(.78) drop-shadow(0 0 6px rgba(100,150,255,.4))}80%{opacity:.58;transform:scale(.87);filter:grayscale(.4) brightness(.85) drop-shadow(0 0 10px rgba(100,150,255,.5))}88%{opacity:.78;transform:scale(.96) translateY(-3px);filter:grayscale(.05) brightness(1.3) drop-shadow(0 0 20px rgba(100,150,255,.9))}93%{opacity:.62;transform:scale(.88);filter:grayscale(.25) brightness(.85) drop-shadow(0 0 8px rgba(100,150,255,.45))}100%{opacity:.65;transform:scale(.9);filter:grayscale(.3) brightness(.9) drop-shadow(0 0 10px rgba(100,150,255,.5))}}#player-character .sprite-container.anim-player-revive{animation:.6s ease-out forwards player-revive}@keyframes player-revive{0%{filter:grayscale(.3) brightness(.9);transform:scale(.9);opacity:.65}30%{filter:brightness(3) drop-shadow(0 0 20px rgba(255, 215, 0, .9));transform:scale(1.15);opacity:1}60%{filter:brightness(1.5) drop-shadow(0 0 10px rgba(255, 215, 0, .5));transform:scale(.95)}100%{filter:brightness(1);transform:scale(1);opacity:1}}@keyframes aspect-icon-glow{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes aspect-icon-unique{0%,100%{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.2) rotate(10deg);opacity:.9}}@keyframes aspect-shine{0%,100%{opacity:.5}50%{opacity:1}}@keyframes powerful-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}