@import"https://fonts.googleapis.com/css2?family=Lexend:wght@300;400;500;600;700;800&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;width:100%;overflow-x:hidden}#root{width:100%;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Lexend,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-center{text-align:center}.space-y-8>*+*{margin-top:2rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-4>*+*{margin-top:1rem}.text-7xl{font-size:4.5rem;line-height:1}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.mb-6{margin-bottom:1.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:1rem}.gap-3{gap:.75rem}.gap-2{gap:.5rem}.max-w-md{max-width:28rem}.mx-auto{margin-left:auto;margin-right:auto}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-12px)}20%,40%,60%,80%{transform:translate(12px)}}@keyframes pulseRing{0%{transform:translate(-50%,-50%) scale(.8);opacity:1}to{transform:translate(-50%,-50%) scale(1.2);opacity:0}}@keyframes successPop{0%{transform:translate(-50%,-50%) scale(0);opacity:0}50%{transform:translate(-50%,-50%) scale(1.3);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-up{animation:slideUp .5s ease-out forwards}@keyframes discoSpin{0%{transform:scale(.1) rotate(0);opacity:0}20%{opacity:1}70%{transform:scale(1.2) rotate(720deg)}to{transform:scale(1) rotate(720deg)}}@keyframes discoRainbow{0%{color:#ff1493;text-shadow:0 0 20px #FF1493,0 0 40px #FF1493,0 0 60px #FF1493,0 0 80px #FF1493}20%{color:#ff6b35;text-shadow:0 0 20px #FF6B35,0 0 40px #FF6B35,0 0 60px #FF6B35,0 0 80px #FF6B35}40%{color:gold;text-shadow:0 0 20px #FFD700,0 0 40px #FFD700,0 0 60px #FFD700,0 0 80px #FFD700}60%{color:#32cd32;text-shadow:0 0 20px #32CD32,0 0 40px #32CD32,0 0 60px #32CD32,0 0 80px #32CD32}80%{color:#00bfff;text-shadow:0 0 20px #00BFFF,0 0 40px #00BFFF,0 0 60px #00BFFF,0 0 80px #00BFFF}to{color:#ff1493;text-shadow:0 0 20px #FF1493,0 0 40px #FF1493,0 0 60px #FF1493,0 0 80px #FF1493}}@keyframes discoBeatPulse{0%,to{transform:scale(1)}10%{transform:scale(1.15)}20%{transform:scale(1)}30%{transform:scale(1.1)}40%{transform:scale(1)}50%{transform:scale(1.12)}60%{transform:scale(1)}70%{transform:scale(1.08)}80%{transform:scale(1)}90%{transform:scale(1.05)}}@keyframes discoStrobeRainbow{0%,to{box-shadow:0 0 60px 30px #ff1493b3,0 0 100px 60px #ff6b3566,0 0 140px 90px #ffd70033}25%{box-shadow:0 0 80px 40px #ffd700b3,0 0 120px 70px #32cd3266,0 0 160px 100px #00bfff33}50%{box-shadow:0 0 100px 50px #32cd32cc,0 0 140px 80px #00bfff80,0 0 180px 110px #ff14934d}75%{box-shadow:0 0 70px 35px #00bfffb3,0 0 110px 65px #ff149366,0 0 150px 95px #ff6b3533}}@keyframes discoRaysRainbow{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.disco-s-enter{animation:discoSpin 2s ease-out forwards;color:#ff1493;text-shadow:0 0 30px #FF1493,0 0 60px #FF1493}.disco-s-glow{font-weight:900;animation:discoRainbow 1.5s linear infinite,discoBeatPulse .8s ease-in-out infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes gentlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.gentle-pulse{animation:gentlePulse 2s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-5deg)}40%{transform:rotate(5deg)}60%{transform:rotate(-3deg)}80%{transform:rotate(3deg)}}.wiggle{animation:wiggle .6s ease-in-out}.wiggle-continuous{animation:wiggle .6s ease-in-out infinite}@keyframes softShadowPulse{0%,to{box-shadow:0 4px 12px #25938826}50%{box-shadow:0 4px 20px #25938866,0 0 30px #25938833}}.soft-shadow-pulse{animation:softShadowPulse 2.5s ease-in-out infinite}@keyframes soundWaveRipple{0%{transform:scale(0);opacity:.6}to{transform:scale(3);opacity:0}}.sound-wave{animation:soundWaveRipple .8s ease-out forwards}@keyframes bounceIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.bounce-in{animation:bounceIn .6s cubic-bezier(.68,-.55,.265,1.55)}@keyframes floatAndGlow{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-12px) scale(1.08)}}.float-and-glow{animation:floatAndGlow 2s ease-in-out infinite}@keyframes subtlePulseDelayed{0%,80%{transform:scale(1)}85%{transform:scale(1.05)}90%,to{transform:scale(1)}}.subtle-pulse-delayed{animation:subtlePulseDelayed 5s ease-in-out infinite}.green-glow-breathe{animation:greenGlowBreathe 2s ease-in-out infinite}@keyframes greenGlowBreathe{0%,to{transform:scale(1);box-shadow:0 0 20px #25938880,0 0 40px #25938833,0 4px 12px #0000001a}50%{transform:scale(1.06);box-shadow:0 0 35px #259388cc,0 0 60px #25938866,0 4px 12px #0000001a}}.silent-e-glow{animation:silentEGlow 2s ease-in-out infinite}@keyframes silentEGlow{0%,to{box-shadow:0 0 15px #9b59b680,0 4px 12px #0000001a}50%{box-shadow:0 0 25px #9b59b6b3,0 0 40px #9b59b64d,0 4px 12px #0000001a}}@keyframes wave{0%,to{height:20px}50%{height:50px}}@keyframes surprisePop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes robotBounce{0%,to{transform:translateY(0)}15%{transform:translateY(-15px)}30%{transform:translateY(0)}45%{transform:translateY(-10px)}60%{transform:translateY(0)}75%{transform:translateY(-5px)}90%{transform:translateY(0)}}.robot-excited{animation:robotBounce 1s ease-in-out}button{transition:all .3s ease}button:hover:not(:disabled){transform:scale(1.05)}button:active:not(:disabled){transform:scale(.95)}button:disabled{cursor:not-allowed;opacity:.5}input:focus{outline:none;ring:2px;ring-color:#259388}@keyframes toastSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes shipSailing{0%,to{transform:rotate(-5deg) translateY(0)}25%{transform:rotate(3deg) translateY(-4px)}50%{transform:rotate(-3deg) translateY(2px)}75%{transform:rotate(5deg) translateY(-2px)}}.ship-sailing{display:inline-block;animation:shipSailing 2s ease-in-out infinite}@keyframes wheelSpinning{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.wheel-spinning{display:inline-block;animation:wheelSpinning 2s linear infinite}@keyframes discoGrooving{0%,to{transform:scale(1);filter:drop-shadow(0 0 8px #FF1493)}25%{transform:scale(1.1);filter:drop-shadow(0 0 12px #FFD700)}50%{transform:scale(1);filter:drop-shadow(0 0 8px #00BFFF)}75%{transform:scale(1.15);filter:drop-shadow(0 0 12px #32CD32)}}.disco-grooving{display:inline-block;animation:discoGrooving 1s ease-in-out infinite}.inactivity-toast{position:fixed;bottom:24px;right:24px;background:linear-gradient(135deg,#7356df,#9b6dff);color:#fff;padding:16px 24px;border-radius:16px;box-shadow:0 8px 32px #7356df66;display:flex;align-items:center;gap:12px;font-family:Lexend,sans-serif;font-weight:600;font-size:1.1rem;z-index:9999;animation:toastSlideIn .4s ease-out forwards;max-width:320px}.inactivity-toast.hiding{animation:toastSlideOut .3s ease-in forwards}.inactivity-toast-emoji{font-size:2.5rem;line-height:1}.inactivity-toast-message{flex:1}@media(max-width:768px){.text-7xl{font-size:3rem}.text-4xl{font-size:1.875rem}.text-3xl{font-size:1.5rem}.text-2xl{font-size:1.25rem}}@keyframes starFlyToPoints{0%{opacity:1;transform:translate(var(--offset-x, 0),var(--offset-y, 0)) scale(1);filter:drop-shadow(0 0 8px gold)}30%{opacity:1;transform:translate(calc(var(--offset-x, 0) - 50px),calc(var(--offset-y, 0) - 150px)) scale(1.2);filter:drop-shadow(0 0 12px gold)}70%{opacity:1;filter:drop-shadow(0 0 8px gold)}to{opacity:0;transform:translate(calc(100vw - 250px),calc(-100vh + 220px)) scale(.6);filter:drop-shadow(0 0 4px gold)}}@keyframes sSlideInBounce{0%{transform:translate(120px) scaleX(1) scaleY(1);opacity:0}40%{transform:translate(0) scaleX(1.25) scaleY(.8);opacity:1}60%{transform:translate(0) scaleX(.9) scaleY(1.1)}80%{transform:translate(0) scaleX(1.05) scaleY(.95)}to{transform:translate(0) scaleX(1) scaleY(1);opacity:1}}@keyframes plantGrow{0%{transform:scale(.85)}60%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes objectMultiply{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.learning-path-scroll::-webkit-scrollbar{display:none}.learning-path-scroll{-ms-overflow-style:none;scrollbar-width:none}@keyframes lessonNodePulse{0%,to{transform:scale(1);box-shadow:0 0 #fff6}50%{transform:scale(1.08);box-shadow:0 0 24px 8px #ffffff40}}.lesson-node-current{animation:lessonNodePulse 2s ease-in-out infinite}@keyframes stageCardFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes slideUpOverlay{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDownOverlay{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes sproutGrow{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15);opacity:1}80%{transform:scale(.95)}to{transform:scale(1);opacity:1}}@keyframes sproutDance{0%,to{transform:rotate(0)}15%{transform:rotate(-12deg)}30%{transform:rotate(10deg)}45%{transform:rotate(-8deg)}60%{transform:rotate(6deg)}75%{transform:rotate(-3deg)}}@keyframes sparkleBurst{0%{transform:scale(0);opacity:1}50%{transform:scale(1.3);opacity:1}to{transform:scale(1.6);opacity:0}}@keyframes goalBarFill{0%{transform:scaleX(0)}70%{transform:scaleX(1.08)}to{transform:scaleX(1)}}@keyframes goalTextPulse{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}
