@keyframes pulse-charging{0%,to{transform:scale(1);box-shadow:0 0 10px rgba(255,215,0,.6)}50%{transform:scale(1.05);box-shadow:0 0 20px gold}}@keyframes glow-action{0%,to{box-shadow:0 0 15px rgba(0,255,0,.8)}50%{box-shadow:0 0 25px #0f0,0 0 35px rgba(0,255,0,.6)}}@keyframes shine-ready{0%{background:linear-gradient(45deg,transparent 30%,hsla(0,0%,100%,.1) 50%,transparent 70%);background-size:200% 200%;background-position:-100% -100%}to{background-position:100% 100%}}.ability-charging{animation:pulse-charging 1.5s ease-in-out infinite;border:3px solid rgba(255,215,0,.9)!important}.ability-action,.ability-charging{position:relative;overflow:visible}.ability-action{animation:glow-action 1s ease-in-out infinite;border:3px solid rgba(0,255,0,.9)!important}.ability-ready:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;animation:shine-ready 3s ease-in-out infinite;pointer-events:none;border-radius:inherit}.ability-active{border:3px solid gold;box-shadow:0 0 15px rgba(255,215,0,.5)}.ability-target-label{bottom:-20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);color:gold;border-radius:3px;font-size:10px;white-space:nowrap;border:1px solid rgba(255,215,0,.3)}.ability-active-badge,.ability-target-label{position:absolute;padding:2px 6px;z-index:10}.ability-active-badge{top:-8px;right:-8px;background:#0f0;color:#000;border-radius:10px;font-size:9px;font-weight:700;box-shadow:0 0 10px rgba(0,255,0,.8)}