@keyframes wave{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes slideInFromBottom{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInFromTop{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.animate-slide-in-bottom{animation:slideInFromBottom .3s ease-out}.animate-slide-in-top{animation:slideInFromTop .3s ease-out}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}*{transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}input,textarea,select{transition:none}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.loading-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:wave 1.5s ease-in-out infinite}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #e91e63;outline-offset:2px}html{scroll-behavior:smooth}
