.animate-fade-in,.animate-slide-up,.animate-float,.animate-scale-in,.animate-slide-down{will-change:transform,opacity}.contain-layout{contain:layout}.contain-paint{contain:paint}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:500px}}@keyframes toggle-bounce{0%,to{transform:translate(0)}50%{transform:translate(2px)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scan{0%{top:0%;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}@keyframes scan-fast{0%{transform:translate3d(0,-100%,0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate3d(0,5000%,0);opacity:0}}@keyframes spin-reverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes bounce-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes pulse-gentle{0%,to{transform:scaleZ(1);opacity:1}50%{transform:scale3d(1.02,1.02,1);opacity:.95}}@keyframes loading-progress{0%{width:0%}50%{width:70%}to{width:100%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fade-in .3s ease-out}.animate-slide-up{animation:slide-up .4s ease-out}.animate-float{animation:float 3s ease-in-out infinite}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes scroll-reverse{0%{transform:translate(-50%)}to{transform:translate(0)}}.animate-scroll{animation:scroll 40s linear infinite}.animate-scroll-reverse{animation:scroll-reverse 40s linear infinite}.animate-scale-in{animation:scale-in .2s ease-out}.animate-slide-down{animation:slide-down .4s ease-out}.animate-scan{animation:scan 2s linear infinite}.animate-scan-fast{animation:scan-fast 2s linear infinite}.animate-spin-reverse{animation:spin-reverse 3s linear infinite}.animate-bounce-slow{animation:bounce-slow 2s ease-in-out infinite}.animate-pulse-gentle{animation:pulse-gentle 2s ease-in-out infinite}.animate-loading-progress{animation:loading-progress 4s ease-in-out infinite}button[role=switch]:active span{animation:toggle-bounce .3s ease-in-out}.scrollbar-thin::-webkit-scrollbar{width:6px}.scrollbar-thin::-webkit-scrollbar-track{background:transparent}.scrollbar-thin::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:#fff3}.scrollbar-thumb-white\/10::-webkit-scrollbar-thumb{background:#ffffff1a}.perspective-1000{perspective:1000px}
