/* ═══════════════════════════════════════════════════════════
   FINVEST AI — animations.css
═══════════════════════════════════════════════════════════ */

@keyframes fi   { from { opacity: 0; transform: translateY(5px); }  to { opacity: 1; transform: translateY(0); } }
@keyframes mIn  { from { opacity: 0; transform: scale(.9) translateY(18px); } to { opacity: 1; transform: scale(1) translateY(0); } }
@keyframes mfd  { from { opacity: 0; transform: translateY(5px); }  to { opacity: 1; transform: translateY(0); } }
@keyframes tda  { 0%,60%,100% { transform: translateY(0); } 30% { transform: translateY(-4px); } }
@keyframes fp   {
  0%,100% { box-shadow: 0 4px 18px rgba(155,109,255,.5); }
  50%     { box-shadow: 0 4px 28px rgba(155,109,255,.8), 0 0 0 6px rgba(155,109,255,.07); }
}
@keyframes spin { to { transform: rotate(360deg); } }
