@keyframes shimmer{0%{transform:translate(-150%) skew(-45deg)}50%{transform:translate(150%) skew(-45deg)}to{transform:translate(150%) skew(-45deg)}}.animate-shimmer{animation:shimmer 3s infinite linear}@keyframes burst{0%{transform:scale(1);filter:brightness(1)}30%{transform:scale(1.1);filter:brightness(2)}to{transform:scale(.6);filter:brightness(4);opacity:0}}.animate-burst{animation:burst .55s forwards cubic-bezier(.19,1,.22,1)}@keyframes flash-clear{0%{opacity:0}40%{opacity:1}to{opacity:0}}.animate-flash-clear{animation:flash-clear .5s forwards}@keyframes fragment{0%{transform:translate(0) scale(1) rotate(0);opacity:1}to{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) scale(0) rotate(720deg);opacity:0}}.animate-fragment{animation:fragment .8s forwards cubic-bezier(.1,.8,.3,1)}@keyframes nebula-flow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.nebula-bg{background:radial-gradient(circle at 20% 30%,rgba(30,0,80,.6) 0%,transparent 40%),radial-gradient(circle at 80% 70%,rgba(0,40,100,.6) 0%,transparent 40%),#02020a;background-size:200% 200%;animation:nebula-flow 15s ease infinite}@keyframes squish-landing{0%{transform:scaleY(1) scaleX(1)}40%{transform:scaleY(.85) scaleX(1.15) translateY(5px)}to{transform:scaleY(1) scaleX(1) translateY(0)}}.animate-squish{animation:squish-landing .4s cubic-bezier(.2,.8,.2,1)}@keyframes lightning-pulse{0%,to{opacity:.3;box-shadow:inset 0 0 20px #3b82f666,0 0 20px #3b82f633}50%{opacity:1;box-shadow:inset 0 0 50px #3b82f6cc,0 0 40px #3b82f680}}.lightning-border{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border:4px solid rgba(59,130,246,.6);border-radius:inherit;pointer-events:none;z-index:60;animation:lightning-pulse .2s infinite}.shake-light{animation:shake .2s cubic-bezier(.36,.07,.19,.97) both}.shake-heavy{animation:shake-heavy .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}@keyframes shake-heavy{10%,90%{transform:translate3d(-4px,-2px,0)}20%,80%{transform:translate3d(8px,4px,0)}30%,50%,70%{transform:translate3d(-12px,-6px,0)}40%,60%{transform:translate3d(12px,6px,0)}}.frag-0{--tw-translate-x: -50px;--tw-translate-y: -50px;top:20%;left:20%}.frag-1{--tw-translate-x: 50px;--tw-translate-y: -50px;top:20%;left:70%}.frag-2{--tw-translate-x: -50px;--tw-translate-y: 50px;top:70%;left:20%}.frag-3{--tw-translate-x: 50px;--tw-translate-y: 50px;top:70%;left:70%}.frag-4{--tw-translate-x: 0px;--tw-translate-y: -70px;top:10%;left:50%}.frag-5{--tw-translate-x: 0px;--tw-translate-y: 70px;top:80%;left:50%}.frag-6{--tw-translate-x: -70px;--tw-translate-y: 0px;top:50%;left:10%}.frag-7{--tw-translate-x: 70px;--tw-translate-y: 0px;top:50%;left:80%}@keyframes popup-float{0%{transform:translate(0) scale(.5);opacity:0}20%{transform:translateY(-30px) scale(1.3);opacity:1}to{transform:translateY(-120px) scale(.8);opacity:0}}.animate-popup-float{animation:popup-float 1.2s forwards ease-out}@keyframes fade-in{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fade-in .8s forwards}@keyframes pulse-slow{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.02);filter:brightness(1.2)}}.animate-pulse-slow{animation:pulse-slow 3s infinite ease-in-out}@keyframes rainbow-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.02);box-shadow:0 0 15px #fff6}}.animate-rainbow-pulse{animation:rainbow-pulse 2s infinite ease-in-out}@keyframes hue-rotate{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.animate-hue-rotate{animation:hue-rotate 4s infinite linear}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin-slow{animation:spin-slow 10s infinite linear}html,body,#root{height:100%;margin:0;padding:0;overflow:hidden;background:#02020a}.h-screen{height:100dvh}.custom-scrollbar::-webkit-scrollbar{width:3px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff0d;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#ffffff26}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.05) transparent}
