.animate-bounce-slow{animation:bounce-slow 3s infinite}@keyframes bounce-slow{0%,to{transform:translateY(-5%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.map-enter{animation:map-enter .6s ease-out forwards}@keyframes map-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.chat-scrollbar{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.chat-scrollbar::-webkit-scrollbar{width:8px}.chat-scrollbar::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.chat-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px;border:2px solid #f1f5f9}.chat-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b8}.animate-confetti{animation:confetti-fall linear forwards}.animate-star-burst{animation:star-burst 1.5s ease-out forwards;font-size:2rem}@keyframes star-burst{0%{transform:scale(0) rotate(0deg);opacity:0}50%{transform:scale(1.5) rotate(180deg);opacity:1}to{transform:scale(0) rotate(1turn);opacity:0}}.animate-bounce-in{animation:bounce-in .5s cubic-bezier(.68,-.55,.265,1.55) forwards}@keyframes bounce-in{0%{transform:scale(0);opacity:0}60%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.animate-scale-pop{animation:scale-pop .5s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes scale-pop{0%{transform:scale(0)}80%{transform:scale(1.2)}to{transform:scale(1)}}.animate-shake{animation:shake .5s ease-in-out infinite}@keyframes shake{0%,to{transform:translateX(0) rotate(0deg)}25%{transform:translateX(-5px) rotate(-5deg)}50%{transform:translateX(5px) rotate(5deg)}75%{transform:translateX(-5px) rotate(-5deg)}}.animate-float{animation:float 3s ease-in-out infinite}.animate-slide-up{animation:slide-up .4s ease-out forwards}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-spin-slow{animation:spin 3s linear infinite}.animate-wiggle{animation:wiggle 1s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.animate-count-up{animation:count-up 1s ease-out forwards}@keyframes count-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.animate-xp-fill{animation:xp-fill 1s ease-out forwards}@keyframes xp-fill{0%{width:0}}.animate-sparkle{animation:sparkle 1.5s ease-in-out infinite}@keyframes sparkle{0%,to{transform:scale(1) rotate(0deg);opacity:1}50%{transform:scale(1.3) rotate(180deg);opacity:.8}}.ring-gradient{background:linear-gradient(90deg,red,#ff7f00,#ff0,#0f0,#00f,indigo,#8f00ff);background-size:400% 400%;animation:gradient-rotate 3s ease infinite;-webkit-background-clip:padding-box;background-clip:padding-box}@keyframes gradient-rotate{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.hover-scale-102:hover{transform:scale(1.02)}.hover-scale-105:hover{transform:scale(1.05)}.animate-chest-open{animation:chest-open .5s ease-out forwards}@keyframes chest-open{0%{transform:rotate(0deg) scale(1)}30%{transform:rotate(-10deg) scale(1.1)}60%{transform:rotate(10deg) scale(1.1)}to{transform:rotate(0deg) scale(1.2)}}.animate-level-up{animation:level-up .8s ease-out forwards}@keyframes level-up{0%{transform:scale(0) translateY(50px);opacity:0}60%{transform:scale(1.2) translateY(-20px)}to{transform:scale(1) translateY(0);opacity:1}}.animate-notification-pulse{animation:notification-pulse 2s ease-in-out infinite}@keyframes notification-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.animate-reward-pulse{animation:reward-pulse .5s ease-out forwards}@keyframes reward-pulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(250,204,21,.7)}50%{transform:scale(1.15);box-shadow:0 0 20px 10px rgba(250,204,21,.4)}to{transform:scale(1);box-shadow:0 0 0 0 rgba(250,204,21,0)}}.particle-trail{position:fixed;pointer-events:none;z-index:99999}.particle-trail:after{content:"";position:absolute;width:100%;height:100%;background:inherit;filter:blur(4px);opacity:.5;transform:scale(1.2)}.animate-number-up{animation:number-up .3s ease-out}@keyframes number-up{0%{transform:translateY(0);opacity:1}50%{transform:translateY(-10px);opacity:.5}to{transform:translateY(0);opacity:1}}[data-reward-target]{transition:box-shadow .3s ease,transform .3s ease}[data-reward-target].receiving-reward{box-shadow:0 0 20px rgba(250,204,21,.6);transform:scale(1.05)}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(90deg,transparent 0,hsla(0,0%,100%,.3) 50%,transparent);transform:rotate(30deg);animation:shimmer 3s infinite}@keyframes shimmer{0%{transform:translateX(-100%) rotate(30deg)}to{transform:translateX(100%) rotate(30deg)}}.rainbow-glow{animation:rainbow-glow 3s ease-in-out infinite}@keyframes rainbow-glow{0%,to{box-shadow:0 0 20px rgba(255,0,0,.5)}16%{box-shadow:0 0 20px rgba(255,165,0,.5)}33%{box-shadow:0 0 20px rgba(255,255,0,.5)}50%{box-shadow:0 0 20px rgba(0,255,0,.5)}66%{box-shadow:0 0 20px rgba(0,0,255,.5)}83%{box-shadow:0 0 20px rgba(128,0,128,.5)}}.golden-pulse{animation:golden-pulse 2s ease-in-out infinite}@keyframes golden-pulse{0%,to{box-shadow:0 0 10px rgba(255,215,0,.4),0 0 20px rgba(255,215,0,.2)}50%{box-shadow:0 0 20px rgba(255,215,0,.6),0 0 40px rgba(255,215,0,.4)}}.fire-glow{animation:fire-glow 1.5s ease-in-out infinite}@keyframes fire-glow{0%,to{box-shadow:0 0 10px rgba(255,100,0,.5),0 0 20px rgba(255,50,0,.3)}50%{box-shadow:0 0 20px rgba(255,150,0,.7),0 0 40px rgba(255,100,0,.5)}}.magic-glow{animation:magic-glow 2s ease-in-out infinite}@keyframes magic-glow{0%,to{box-shadow:0 0 10px rgba(168,85,247,.4),0 0 20px rgba(168,85,247,.2)}50%{box-shadow:0 0 20px rgba(168,85,247,.6),0 0 40px rgba(236,72,153,.4)}}.sparkle-container{position:relative}.sparkle-container:after,.sparkle-container:before{content:"✨";position:absolute;font-size:10px;animation:sparkle-float 2s ease-in-out infinite}.sparkle-container:before{top:-5px;right:-5px;animation-delay:0s}.sparkle-container:after{bottom:-5px;left:-5px;animation-delay:1s}@keyframes sparkle-float{0%,to{transform:translateY(0) scale(1);opacity:1}50%{transform:translateY(-5px) scale(1.2);opacity:.7}}.breathing{animation:breathing 3s ease-in-out infinite}@keyframes breathing{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.glitter-text{background:linear-gradient(90deg,#fff,#fff 40%,gold 50%,#fff 60%,#fff);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:glitter 3s linear infinite}@keyframes glitter{0%{background-position:200%}to{background-position:-200%}}.bounce-attention{animation:bounce-attention 2s ease-in-out infinite}@keyframes bounce-attention{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}.animate-twinkle{animation:twinkle 3s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.animate-float{animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-10px) rotate(1deg)}50%{transform:translateY(0) rotate(0deg)}75%{transform:translateY(-5px) rotate(-1deg)}}.animate-orbit{animation:orbit 20s linear infinite;transform-origin:-100px -100px}@keyframes orbit{0%{transform:rotate(0deg) translateX(80px) rotate(0deg)}to{transform:rotate(1turn) translateX(80px) rotate(-1turn)}}.animate-orbit-fast{animation:orbit 8s linear infinite;transform-origin:-100px -100px}.animate-rocket-fly{animation:rocket-fly 20s linear infinite}@keyframes rocket-fly{0%{transform:translateX(0) translateY(0);opacity:0}5%{opacity:1}95%{opacity:1}to{transform:translateX(calc(100vw + 100px)) translateY(-50px);opacity:0}}.animate-spin-slow{animation:spin 30s linear infinite}.animate-fade-in{animation:fade-in .3s ease-out forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-glow-pulse{animation:glow-pulse 2s ease-in-out infinite}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px hsla(0,0%,100%,.2)}50%{box-shadow:0 0 40px hsla(0,0%,100%,.4)}}.animate-nebula{animation:nebula 10s ease-in-out infinite}@keyframes nebula{0%,to{transform:scale(1) rotate(0deg);opacity:.3}50%{transform:scale(1.1) rotate(5deg);opacity:.5}}.animate-shooting-star{animation:shooting-star 5s linear infinite}.animate-warp{animation:warp .5s ease-out forwards}@keyframes warp{0%{transform:scale(1);opacity:1}to{transform:scale(0) translateZ(1000px);opacity:0}}.star-twinkle{animation:star-twinkle 3s ease-in-out infinite;will-change:opacity,transform}@keyframes star-twinkle{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.planet-float{animation:planet-float 5s ease-in-out infinite;will-change:transform}@keyframes planet-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.glow-pulse{animation:glow-pulse-light 3s ease-in-out infinite;will-change:opacity}@keyframes glow-pulse-light{0%,to{opacity:.3}50%{opacity:.6}}.planet-orbit{animation:planet-orbit 20s linear infinite;will-change:transform}@keyframes planet-orbit{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.moon-orbit{animation:moon-orbit 10s linear infinite;will-change:transform;transform-origin:80px 80px}@keyframes moon-orbit{0%{transform:rotate(0deg) translateX(10px)}to{transform:rotate(1turn) translateX(10px)}}.hover-bounce{animation:hover-bounce .5s ease-out;will-change:transform}@keyframes hover-bounce{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.sparkle-badge{animation:sparkle-badge 2s ease-in-out infinite;will-change:transform}@keyframes sparkle-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.shooting-star{position:absolute;width:4px;height:4px;background:#fff;border-radius:50%;box-shadow:0 0 6px 2px hsla(0,0%,100%,.8);animation:shooting-star 6s linear infinite;will-change:transform,opacity}.shooting-star:after{content:"";position:absolute;top:50%;right:100%;transform:translateY(-50%);width:80px;height:2px;background:linear-gradient(270deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.3),transparent);border-radius:2px}@keyframes shooting-star{0%{transform:translateX(0) translateY(0);opacity:0}2%{opacity:1}30%{transform:translateX(400px) translateY(200px);opacity:0}to{transform:translateX(400px) translateY(200px);opacity:0}}.trail-card-hover{transition:transform .3s ease-out,box-shadow .3s ease-out;will-change:transform}.trail-card-hover:hover{transform:scale(1.05) translateY(-5px)}.emoji-bounce{animation:emoji-bounce 2s ease-in-out infinite;will-change:transform}@keyframes emoji-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.1)}}.attention-grab{animation:attention-grab 3s ease-in-out infinite;will-change:transform}@keyframes attention-grab{0%,90%,to{transform:rotate(0deg)}93%{transform:rotate(-3deg)}96%{transform:rotate(3deg)}}.progress-fill{animation:progress-fill 1s ease-out forwards;will-change:width}@keyframes progress-fill{0%{width:0}}.glow-ring{animation:glow-ring 2s ease-in-out infinite;will-change:opacity,transform}@keyframes glow-ring{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}.card-enter{animation:card-enter .4s ease-out forwards;will-change:transform,opacity}@keyframes card-enter{0%{transform:translateY(20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.dopamine-burst{animation:dopamine-burst .6s ease-out forwards;will-change:transform,opacity}@keyframes dopamine-burst{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.spaceship-cursor{will-change:transform;transition:transform .03s linear}.spaceship-cursor>div{animation:spaceship-float 2s ease-in-out infinite;will-change:transform}@keyframes spaceship-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.spaceship-cursor.shooting>div{animation:spaceship-shoot .1s ease-in-out infinite}.spaceship-cursor.shooting svg{filter:brightness(1.4) drop-shadow(0 0 12px rgba(0,255,255,1)) drop-shadow(0 0 25px rgba(255,200,0,.8));color:#0ff!important}@keyframes spaceship-shoot{0%,to{transform:translateX(0)}50%{transform:translateX(2px)}}.laser-dot{width:3px;height:3px;background:#0ff;border-radius:50%;box-shadow:0 0 6px #0ff,0 0 12px #0ff,0 0 18px #0ff,0 0 24px rgba(0,255,255,.5);animation:laser-dot-pulse .3s ease-in-out infinite;will-change:transform,opacity}.laser-particle-glow{filter:drop-shadow(0 0 4px #00FFFF)}@keyframes laser-dot-pulse{0%,to{transform:scale(1);box-shadow:0 0 6px #0ff,0 0 12px #0ff,0 0 18px #0ff}50%{transform:scale(1.3);box-shadow:0 0 8px #0ff,0 0 16px #0ff,0 0 24px #0ff,0 0 32px rgba(0,255,255,.6)}}.explosion-animation{animation:explosion-scale .8s ease-out forwards;will-change:transform,opacity}@keyframes explosion-scale{0%{transform:scale(0) rotate(0deg);opacity:1}30%{transform:scale(1.3) rotate(120deg);opacity:1}60%{transform:scale(1.5) rotate(240deg);opacity:.9}to{transform:scale(2.5) rotate(1turn);opacity:0}}.explode-core{animation:explode-core .8s ease-out forwards;will-change:transform,opacity}@keyframes explode-core{0%{transform:scale(0);opacity:1}20%{transform:scale(1.2);opacity:1}50%{transform:scale(1.8);opacity:.8}to{transform:scale(3.5);opacity:0}}.explode-flash{animation:explode-flash .2s ease-out forwards;will-change:transform,opacity}@keyframes explode-flash{0%{transform:scale(0);opacity:.8}50%{transform:scale(1.2);opacity:.4}to{transform:scale(1.8);opacity:0}}.explode-particle-large{animation:explode-particle-large .8s ease-out forwards;will-change:transform,opacity}@keyframes explode-particle-large{0%{transform:translateX(0) translateY(0) scale(1);opacity:1}to{transform:translateX(var(--tx,50px)) translateY(var(--ty,50px)) scale(0);opacity:0}}.explode-ring-outer{animation:explode-ring .8s ease-out forwards;will-change:transform,opacity}@keyframes explode-ring{0%{transform:scale(0);opacity:.6}50%{transform:scale(1.2);opacity:.4}to{transform:scale(2);opacity:0}}.explode-core-bright{animation:explode-core-bright .8s ease-out forwards;will-change:transform,opacity}@keyframes explode-core-bright{0%{transform:scale(0);opacity:1}30%{transform:scale(1.5);opacity:1}to{transform:scale(2.5);opacity:0}}.explode-ray{animation:explode-ray .6s ease-out forwards;will-change:transform,opacity}@keyframes explode-ray{0%{transform:rotate(var(--rotation,0deg)) scaleY(0);opacity:.8}50%{transform:rotate(var(--rotation,0deg)) scaleY(1.2);opacity:.6}to{transform:rotate(var(--rotation,0deg)) scaleY(2);opacity:0}}.explode-smoke{animation:explode-smoke 1s ease-out forwards;will-change:transform,opacity}@keyframes explode-smoke{0%{transform:translateX(0) translateY(0) scale(1);opacity:.6}to{transform:translateX(var(--tx,50px)) translateY(var(--ty,50px)) scale(1.5);opacity:0}}.explode-particle{animation:explode-particle .6s ease-out forwards;will-change:transform,opacity}@keyframes explode-particle{0%{transform:translateX(0) translateY(0) scale(1);opacity:1}to{transform:translateX(var(--tx,50px)) translateY(var(--ty,50px)) scale(0);opacity:0}}.satellite-fly:hover,.spaceship-fly:hover,.ufo-fly:hover{filter:brightness(1.3) drop-shadow(0 0 10px rgba(255,255,0,.8));transform:scale(1.1);transition:filter .2s,transform .2s}.ufo-fly{animation:ufo-fly 25s ease-in-out infinite;will-change:transform;z-index:5}@keyframes ufo-fly{0%{transform:translateX(0) translateY(0);opacity:0}5%{opacity:1}25%{transform:translateX(calc(-30vw)) translateY(-30px)}50%{transform:translateX(calc(-60vw)) translateY(20px)}75%{transform:translateX(calc(-85vw)) translateY(-20px)}90%{opacity:1}to{transform:translateX(calc(-100vw - 150px)) translateY(0);opacity:0}}.spaceship-fly{animation:spaceship-fly 20s linear infinite;will-change:transform;z-index:5}@keyframes spaceship-fly{0%{transform:translateX(0) translateY(0);opacity:0}3%{opacity:1}20%{transform:translateX(25vw) translateY(-15px)}40%{transform:translateX(50vw) translateY(10px)}60%{transform:translateX(75vw) translateY(-5px)}92%{opacity:1}to{transform:translateX(calc(100vw + 150px)) translateY(0);opacity:0}}.satellite-fly{animation:satellite-fly 35s linear infinite;will-change:transform;z-index:5}@keyframes satellite-fly{0%{transform:translateX(0) rotate(0deg);opacity:0}5%{opacity:.9}50%{transform:translateX(calc(-50vw)) rotate(5deg)}90%{opacity:.9}to{transform:translateX(calc(-100vw - 100px)) rotate(10deg);opacity:0}}.animate-spin-slow{animation:spin 4s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}[data-academy-page]~header:not([data-academy-header]),body:has([data-academy-page]) header:not([data-academy-header]),header:not([data-academy-header]){display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;overflow:hidden!important}[data-academy-page] * header:not([data-academy-header]),[data-academy-page]+* header{display:none!important}@keyframes celebration-entrance{0%{transform:scale(.3) rotate(-10deg);opacity:0}20%{transform:scale(1.1) rotate(5deg);opacity:1}40%{transform:scale(.95) rotate(-3deg)}60%{transform:scale(1.05) rotate(2deg)}80%{transform:scale(.98) rotate(-1deg)}to{transform:scale(1) rotate(0deg);opacity:1}}.animate-celebration-entrance{animation:celebration-entrance .8s cubic-bezier(.68,-.55,.265,1.55);will-change:transform,opacity}@keyframes celebration-bounce{0%,to{transform:translateY(0) scale(1)}10%{transform:translateY(-10px) scale(1.1) rotate(-5deg)}20%{transform:translateY(0) scale(1) rotate(5deg)}30%{transform:translateY(-8px) scale(1.08) rotate(-3deg)}40%{transform:translateY(0) scale(1) rotate(3deg)}50%{transform:translateY(-5px) scale(1.05) rotate(-2deg)}60%{transform:translateY(0) scale(1) rotate(2deg)}70%{transform:translateY(-3px) scale(1.02) rotate(-1deg)}80%{transform:translateY(0) scale(1) rotate(1deg)}}.animate-celebration-bounce{animation:celebration-bounce 1.2s ease-out;will-change:transform}@keyframes float-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float-gentle{animation:float-gentle 3s ease-in-out infinite;will-change:transform}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0deg);opacity:1}to{transform:translateY(100vh) rotate(2turn);opacity:0}}.animate-confetti-fall{animation:confetti-fall 3s ease-out forwards}@keyframes modal-entrance{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.animate-modal-entrance{animation:modal-entrance .3s ease-out}.solar-system-rotate{animation:solar-system-rotate 120s linear infinite;will-change:transform;transform-origin:50% 50%}@keyframes solar-system-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.planet-counter-rotate{animation:planet-counter-rotate 120s linear infinite;will-change:transform;transform-origin:50% 50%}@keyframes planet-counter-rotate{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}