@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-slide-in-right{animation:slideInRight .3s ease-out}.animate-slide-in-left{animation:slideInLeft .3s ease-out}.animate-slide-in-up{animation:slideInUp .4s ease-out}.animate-slide-in-down{animation:slideInDown .3s ease-out}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-pulse-slow{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.hover-lift{transition:transform .2s ease-out,box-shadow .2s ease-out}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003}button,a,input,select,textarea{transition:all .2s ease-out}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,#2a2a2a,#3a3a3a,#2a2a2a);background-size:1000px 100%;animation:shimmer 2s infinite}.glass{background:#26262699;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4a4a4a}
