@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpSmooth{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .5s ease-out forwards}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes dropdownSlideDown{0%{opacity:0;transform:translateY(-10px) scaleY(.95);transform-origin:top}to{opacity:1;transform:translateY(0) scaleY(1);transform-origin:top}}@keyframes listItemSlideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}@keyframes checkPop{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes expandWidth{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideDownSmooth{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100px)}}@keyframes dropdownSlideUp{0%{opacity:1;transform:translateY(0) scaleY(1);transform-origin:top}to{opacity:0;transform:translateY(-10px) scaleY(.95);transform-origin:top}}@keyframes slideDownAndFade{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideUpAndFade{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-content-animate{animation-duration:.3s;animation-timing-function:cubic-bezier(.16,1,.3,1);will-change:transform,opacity}.dropdown-content-animate[data-side=top]{animation-name:slideUpAndFade}.dropdown-content-animate[data-side=bottom]{animation-name:slideDownAndFade}@keyframes pulse-scale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.search-button{transition:all .2s cubic-bezier(.16,1,.3,1)}.search-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px rgba(48,164,108,.3)}.search-button:active:not(:disabled){transform:scale(.98)}.search-button-loading{animation:pulse-scale 1.5s ease-in-out infinite}