@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes slideDown{0%{transform:translateY(-16px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes dotBounce{0%,to{transform:translateY(0);opacity:.3}50%{transform:translateY(-7px);opacity:1}}
@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
@keyframes scaleIn{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}
@keyframes heroSlide{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}
@keyframes fabPulse{0%,to{box-shadow:0 8px 32px #6366f180}50%{box-shadow:0 8px 48px #6366f1cc,0 0 0 8px #6366f11a}}
@keyframes ringPulse{0%,to{opacity:.35}50%{opacity:.7}}
@keyframes arcRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes tooltipFade{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}
@keyframes formUnfold{0%{opacity:0;transform:translateY(-18px) scaleY(.96)}to{opacity:1;transform:translateY(0) scaleY(1)}}
@keyframes formHint{0%{opacity:0;transform:scale(.95)}60%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}
@keyframes heroEnter{0%{opacity:0;transform:translate(var(--hero-enter-x,4%))}to{opacity:1;transform:translate(0)}}
@keyframes heroExitLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-4%)}}
@keyframes heroExitRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(4%)}}
@keyframes dotProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes profileDropIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes profileDropOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.96)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes mmlShimmer{0%{background-position:-400px 0}to{background-position:400px 0}}
@keyframes malPopIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes malSheetUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}
@keyframes imSheetUp{0%{transform:translateY(100%);opacity:.4}to{transform:translateY(0);opacity:1}}
@keyframes rpFade{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes donateHeart{0%,60%,to{transform:scale(1);opacity:.9}20%{transform:scale(1.18);opacity:1}35%{transform:scale(.96);opacity:.85}}
@keyframes profOrbPulse{0%{transform:scale(.85);opacity:.9}80%,to{transform:scale(1.25);opacity:0}}