@charset "UTF-8";@font-face{font-family:Gumdrop;src:url(/assets/GUMDROP-B1KxH8mh.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:Mysterio;src:url(/assets/Mysterio-d0lNAhaw.woff) format("woff");font-weight:400;font-style:normal}.reward-modal,.failure-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .5s ease-out}.reward-content,.failure-content{border-radius:20px;padding:2rem;width:90%;max-width:500px;border:1px solid rgba(255,255,255,.15);text-align:center;transform:scale(.9);animation:scaleIn .5s ease-out forwards}.reward-content h2,.failure-content h2{font-size:2.5rem;margin-bottom:1rem;text-shadow:0 0 10px rgba(255,255,255,.3);color:#fff}.reward-content p,.failure-content p{color:#fff;font-size:1.2rem;margin-bottom:2rem;line-height:1.6}.reward-content{background:linear-gradient(145deg,#1a237e,#0d47a1);box-shadow:0 10px 30px #000000b3,0 0 20px #1a237e80,0 0 40px #0d47a14d}.failure-content{background:linear-gradient(145deg,#c62828,#b71c1c);box-shadow:0 10px 30px #000000b3,0 0 20px #c6282880,0 0 40px #b71c1c4d}.failure-content h2{color:#fff}.reward-stars{display:flex;justify-content:center;margin-bottom:1.5rem}.reward-stars .star{font-size:3rem;margin:0 .5rem;animation:starPulse 2s infinite alternate}.reward-stars .star:nth-child(1){animation-delay:0s}.reward-stars .star:nth-child(2){animation-delay:.2s}.reward-stars .star:nth-child(3){animation-delay:.4s}.reward-stars .star:nth-child(4){animation-delay:.6s}.reward-stars .star:nth-child(5){animation-delay:.8s}.reward-buttons,.failure-buttons{display:flex;flex-direction:column;align-items:center;gap:1rem}.reward-buttons button,.failure-buttons button{padding:1rem 2rem;border-radius:12px;font-size:1.2rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;width:100%;max-width:350px;color:#fff;box-shadow:0 4px 8px #0003}.reward-buttons button:hover,.failure-buttons button:hover{transform:translateY(-3px);box-shadow:0 6px 12px #0000004d}.reward-buttons .level-up-button{background:linear-gradient(145deg,#4caf50,#2e7d32)}.reward-buttons .back-to-menu-button{background:linear-gradient(145deg,#0984e3,#0874c3)}.failure-buttons .retry-button{background:linear-gradient(145deg,#ff9800,#f57c00)}.failure-buttons .back-to-menu-button{background:linear-gradient(145deg,#0984e3,#0874c3)}@keyframes scaleIn{0%{transform:scale(.9)}to{transform:scale(1)}}@keyframes starPulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.2);opacity:1}}@media (min-width: 768px){.reward-content{padding:3rem;max-width:600px}.reward-content h2{font-size:3rem}.reward-content p{font-size:1.4rem}.reward-stars .star{font-size:4rem}.reward-buttons{flex-direction:row;justify-content:center}.reward-buttons button{max-width:250px}}@font-face{font-family:Gumdrop;src:url(/assets/GUMDROP-B1KxH8mh.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:Mysterio;src:url(/assets/Mysterio-d0lNAhaw.woff) format("woff");font-weight:400;font-style:normal}.tutorial-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;pointer-events:all;display:flex;justify-content:center;align-items:center}.tutorial-overlay .tutorial-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000000b3}.tutorial-overlay .spotlight{position:absolute;border-radius:50%;background-color:transparent;box-shadow:0 0 0 9999px #000000b3;pointer-events:none;z-index:1001;-webkit-backdrop-filter:none;backdrop-filter:none;width:60px;height:60px}.tutorial-overlay .spotlight.step-1{animation:hover-beads 5s ease-in-out infinite}.tutorial-overlay .spotlight.step-2{left:50%;top:65%;animation:hover-beads 5s ease-in-out infinite}.tutorial-overlay .spotlight.step-3{animation:hover-beads 5s ease-in-out infinite}.tutorial-overlay .spotlight:before{content:"";position:absolute;top:5px;left:5px;right:5px;bottom:5px;border-radius:50%;background:radial-gradient(circle at center,rgba(255,255,255,.3),transparent 70%);box-shadow:0 0 15px 5px #4a90e266}.tutorial-overlay .spotlight .pulse-animation{position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px;border-radius:50%;border:2px dashed rgba(255,255,255,.7)}.tutorial-overlay .tutorial-content{position:absolute;background-color:#2a3543;top:20%;left:20%;border-radius:12px;padding:20px;width:220px;max-height:30vh;max-width:50vw;box-shadow:0 10px 25px #0000004d;color:#fff;z-index:1002;border:1px solid rgba(255,255,255,.1)}.tutorial-overlay .tutorial-content h3{margin:0 0 10px;font-size:1rem;color:#e2e8f0}.tutorial-overlay .tutorial-content p{margin:0 0 2px;font-size:.8rem!important;line-height:1;color:#a0aec0}.tutorial-overlay .tutorial-content .tutorial-buttons{display:flex;justify-content:space-between;margin-bottom:15px;transform:translateY(-15px)}.tutorial-overlay .tutorial-content .tutorial-buttons button{padding:4px 8px;border-radius:6px;border:none;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.8rem!important;margin:0}.tutorial-overlay .tutorial-content .tutorial-buttons button.next-button{background-color:#4a90e2;color:#fff;font-size:.8rem!important}.tutorial-overlay .tutorial-content .tutorial-buttons button.next-button:hover{background-color:#3a7bc8}.tutorial-overlay .tutorial-content .tutorial-buttons button.back-button{background-color:transparent;color:#a0aec0;border:1px solid #4a5568;font-size:.8rem!important}.tutorial-overlay .tutorial-content .tutorial-buttons button.back-button:hover{background-color:#ffffff0d}.tutorial-overlay .tutorial-content .tutorial-buttons button.skip-button{background-color:transparent;color:#a0aec0;padding:8px 0;font-size:.8rem!important}.tutorial-overlay .tutorial-content .tutorial-buttons button.skip-button:hover{color:#fff}.tutorial-overlay .tutorial-content .step-indicators{display:flex;justify-content:center;gap:8px}.tutorial-overlay .tutorial-content .step-indicators .step-dot{width:8px;height:8px;border-radius:50%;background-color:#ffffff4d;transition:all .2s ease}.tutorial-overlay .tutorial-content .step-indicators .step-dot.active{background-color:#4a90e2;transform:scale(1.2)}@keyframes pulse{0%{transform:scale(1);opacity:1}to{transform:scale(1.3);opacity:0}}@keyframes hover-beads{0%{transform:translate(-270%)}50%{transform:translate(180%)}to{transform:translate(-270%)}}@media (min-width: 496px){.tutorial-overlay .spotlight.step-1{left:50%!important;top:49%!important}}@media (min-width: 768px){.tutorial-overlay .spotlight{width:100px;height:100px}.tutorial-overlay .tutorial-content{width:240px;padding:15px}.tutorial-overlay .tutorial-content h3{font-size:1rem}.tutorial-overlay .tutorial-content p{font-size:.5rem;margin-bottom:15px}.tutorial-overlay .tutorial-content .tutorial-buttons{flex-wrap:wrap;gap:10px}.tutorial-overlay .tutorial-content .tutorial-buttons button{padding:6px 12px;font-size:.5rem}}.fullscreen-toggle{position:fixed;top:20px;right:20px;z-index:1000;width:40px;height:40px;border-radius:50%;background:#0009;border:2px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:0;box-shadow:0 2px 10px #0000004d}.fullscreen-toggle:hover{background:#000c;transform:scale(1.05)}.fullscreen-toggle:active{transform:scale(.95)}.fullscreen-toggle svg{width:24px;height:24px;transition:all .3s ease}.fullscreen-toggle.active{background:#000c}.fullscreen-prompt{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease-out}.fullscreen-prompt-content{background:linear-gradient(145deg,#222,#1a1a1a);border-radius:20px;padding:2rem;width:90%;max-width:400px;text-align:center;box-shadow:0 10px 30px #00000080;border:1px solid rgba(255,255,255,.1);position:relative;animation:scaleIn .3s ease-out}.fullscreen-prompt-content h3{color:#fff;font-size:1.5rem;margin-bottom:1rem;font-weight:700}.fullscreen-prompt-content p{color:#fffc;margin-bottom:1.5rem;font-size:1rem;line-height:1.5}.fullscreen-prompt-button{background:linear-gradient(145deg,#4ecdc4,#2e9d94);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:block;width:100%;margin-bottom:.5rem}.fullscreen-prompt-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #4ecdc466}.fullscreen-prompt-button:active{transform:translateY(1px)}.fullscreen-prompt-close{position:absolute;top:10px;right:10px;background:none;border:none;color:#fff9;font-size:1.2rem;cursor:pointer;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.fullscreen-prompt-close:hover{color:#fff;background:#ffffff1a}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@media (max-width: 768px){.fullscreen-toggle{top:10px;right:10px;width:36px;height:36px}.fullscreen-toggle svg{width:20px;height:20px}.fullscreen-prompt-content{padding:1.5rem}.fullscreen-prompt-content h3{font-size:1.3rem}.fullscreen-prompt-content p{font-size:.9rem;margin-bottom:1.2rem}}*,*:before,*:after{box-sizing:inherit}html{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;max-width:100vw;height:100%;box-sizing:border-box;font-family:sans-serif;overflow-x:hidden;background:linear-gradient(135deg,#f6f8fa,#e9ecef)}@font-face{font-family:Gumdrop;src:url(/assets/GUMDROP-B1KxH8mh.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:Mysterio;src:url(/assets/Mysterio-d0lNAhaw.woff) format("woff");font-weight:400;font-style:normal}@keyframes fadeIn{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.mode-selector{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100vw;padding:2rem 1rem;min-height:100vh;margin:0 auto;position:relative;background:linear-gradient(to bottom right,#080808,#0e0e0e,#0e0e0f);z-index:0;box-sizing:border-box}.mode-selector:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url(/assets/modeSelectorBg-DTkgZ9ev.jpg) center/cover no-repeat;filter:blur(5px);z-index:-19;transform:scale(1) translateY(-200px);overflow:hidden}@media (min-width: 768px){.mode-selector{padding:3rem 2rem;max-width:768px}.mode-selector .mode:before{transform:scale(1.3) translateY(-200px)}}.abacus-viewer-container{width:100%;max-width:400px;aspect-ratio:1.2/1;position:relative;margin-bottom:1rem;transform:translateY(-2rem)!important;display:flex;justify-content:center;align-items:center}.abacus-viewer-container canvas{width:100%!important;height:100%!important;display:block}@media (min-width: 768px){.abacus-viewer-container{max-width:300px;margin-bottom:10rem;margin-top:0rem;aspect-ratio:1/1;transform:translateY(2rem)!important}}.abacus-viewer-container .abacus-app-title-container{perspective:500px;width:100%;text-align:center}.abacus-viewer-container .abacus-app-title{font-family:Gumdrop,cursive;font-size:3.5rem;font-weight:700;color:#ffeb3b;text-shadow:0 1px 0 #ccc,0 2px 0 #c9c9c9,0 3px 0 #bbb,0 4px 0 #b9b9b9,0 5px 0 #aaa,0 6px 1px rgba(0,0,0,.1),0 0 5px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.3),0 3px 5px rgba(0,0,0,.2),0 5px 10px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.2),0 20px 20px rgba(0,0,0,.15);animation:float 6s ease-in-out infinite;transform-style:preserve-3d}@media (max-width: 768px){.abacus-viewer-container .abacus-app-title{font-size:2.5rem}}.abacus-viewer-container .text-3d-char{display:inline-block;animation:wave 2s ease-in-out infinite;animation-delay:calc(.1s * var(--i, 0));transform-style:preserve-3d}.abacus-viewer-container .text-3d-char:nth-child(1){--i: 1}.abacus-viewer-container .text-3d-char:nth-child(2){--i: 2}.abacus-viewer-container .text-3d-char:nth-child(3){--i: 3}.abacus-viewer-container .text-3d-char:nth-child(4){--i: 4}.abacus-viewer-container .text-3d-char:nth-child(5){--i: 5}.abacus-viewer-container .text-3d-char:nth-child(6){--i: 6}.abacus-viewer-container .text-3d-char:nth-child(7){--i: 7}.abacus-viewer-container .text-3d-char:nth-child(8){--i: 8}.abacus-viewer-container .text-3d-char:nth-child(9){--i: 9}.abacus-viewer-container .text-3d-char:nth-child(10){--i: 10}@keyframes float{0%,to{transform:translateY(0) rotateX(5deg)}50%{transform:translateY(-20px) rotateX(-5deg)}}@keyframes wave{0%,to{transform:translateY(0)}50%{transform:translateY(-15px) rotateX(20deg) rotateY(10deg)}}.mode-title{font-family:Gumdrop,cursive!important;font-size:2.5rem;color:#ffeb3b!important;text-shadow:2px 2px 0 #000;margin:.8rem 0;letter-spacing:1.5px}@media screen and (min-width: 768px){.mode-title{font-size:3rem!important;margin:1rem 0;letter-spacing:5px}}.mode-sub{font-family:Gumdrop,cursive!important;font-size:1rem;color:#ffb266;letter-spacing:2px;margin-bottom:1rem}@media (min-width: 768px){.mode-sub{font-size:1.5rem;letter-spacing:4px;margin-bottom:6rem}}.mode-buttons{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:80%;margin-top:6rem;z-index:1}@media (min-width: 768px){.mode-buttons{gap:1.5rem;max-width:70%;margin-top:2rem}}.mode-button{padding:.8rem;font-size:2.5rem;font-weight:600;font-family:Gumdrop,sans-serif;border:none;letter-spacing:.5px;border-radius:12px;background:linear-gradient(to top,#4f46e5,#6c63ff);color:#fff;width:100%;z-index:1;transition:all .25s ease;box-shadow:0 6px #3b32c0,0 10px 20px #0000004d;transform:translateY(0);position:relative}.mode-button:hover{background:linear-gradient(to top,#5f54f1,#7c74ff);transform:translateY(-2px);box-shadow:0 7px #3b32c0,0 12px 24px #00000059}@media (min-width: 768px){.mode-button{padding:1rem;font-size:2.5rem;letter-spacing:1px}}.mode-icon{width:100%;max-width:250px;height:auto;margin-bottom:1rem;opacity:.9}@media (min-width: 768px){.mode-icon{max-width:350px}}.app{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;gap:1.5rem;background:linear-gradient(135deg,#f6f8fa,#e9ecef);width:100%;max-width:100vw;min-height:100vh;box-sizing:border-box;margin:0 auto;overflow-x:hidden;z-index:-20}@media (min-width: 768px){.app{padding:2rem;gap:2rem}}@media (min-width: 1024px){.app{padding:3rem;gap:2.5rem;max-width:600px}}.question-content{flex-grow:1;position:relative;min-height:120px;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-bottom:20px}.question-box{background:linear-gradient(145deg,#222,#1a1a1a);border-radius:20px;padding:1rem;width:90%;max-width:500px;box-shadow:0 10px 30px #000000b3,0 0 20px #642b734d,0 0 40px #203f8133;border:1px solid rgba(255,255,255,.1);transform-style:preserve-3d;transform:perspective(1000px) translateZ(0);transition:all .3s ease;margin-bottom:4rem;margin-top:30px}@media (max-width: 768px){.question-box{margin-bottom:1rem;margin-top:-30px}}.question-box:hover{transform:perspective(1000px) translateZ(20px);box-shadow:0 15px 40px #000c,0 0 30px #642b7366,0 0 50px #203f814d}.question{font-size:min(10vw,1.5rem);font-weight:800;color:#fff;margin-bottom:1.5rem;text-shadow:0 0 10px rgba(255,255,255,.3);text-align:center;word-wrap:break-word;padding:0 10px;line-height:1.3}.question.question-very-easy{font-size:min(12vw,2.5rem)}.question.question-easy{font-size:min(11vw,2.2rem)}.question.question-medium{font-size:min(10vw,1.9rem)}.question.question-hard{font-size:min(9vw,1.6rem)}.question.question-very-hard{font-size:min(8vw,1.4rem)}.check-button{background:linear-gradient(145deg,#4caf50,#2e7d32);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-size:min(5vw,1.5rem);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:4px 4px 8px #0003}.check-button.page-absolute{position:absolute;right:2rem;z-index:100;bottom:3vh}.check-button:hover,.next-button:hover{transform:translateY(-2px);box-shadow:6px 6px 12px #0000004d}.next-button{background:linear-gradient(145deg,#0984e3,#0874c3);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:4px 4px 8px #0003;margin-left:12px}.next-button.page-absolute{position:absolute;right:2rem;bottom:3rem;z-index:100}.try-again-button{background:linear-gradient(145deg,#e17055,#d63031);margin-left:12px}.feedback{font-size:20px;font-weight:600;padding:.75rem;border-radius:12px;text-align:center;transition:all .3s ease;position:absolute;bottom:0;left:0;right:0;margin:0 auto;width:90%}.feedback.correct{background:linear-gradient(145deg,#00b894,#00a884);color:#fff;box-shadow:4px 4px 8px #00b8944d}.feedback.incorrect{background:linear-gradient(145deg,#d63031,#c62828);color:#fff;box-shadow:4px 4px 8px #d630314d}@media (min-width: 768px){.abacus-row{gap:20%}.next-button.page-absolute,.check-button.page-absolute{bottom:2rem}.feedback,.feedback-correct,.feedback-incorrect{margin-bottom:-1rem}.question-box{margin-top:-25px}}.abacus{position:relative;display:flex;justify-content:center;align-items:center;flex-direction:column;background:linear-gradient(145deg,#34495e,#2c3e50);border-radius:20px;padding-top:10px;padding-bottom:40px;width:100%;height:100%;min-width:min(400px,90vw);min-height:min(450px,60vh);box-shadow:0 10px 30px #0003,inset 0 0 60px #0000004d;border:8px solid #2c3e50;border-top-color:#3d5a73;border-left-color:#3d5a73}.shared-rod{position:absolute;top:120px;min-width:min(400px,90vw);width:100%;height:12px;background:linear-gradient(to bottom,#455a64,#37474f 40%,#263238 60%,#37474f);border-radius:6px;margin:10px 0;box-shadow:0 3px 6px #0000004d,inset 0 1px 3px #fff3,inset 0 -1px 3px #0003;z-index:2}.shared-rod:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#ffffff1a}.column{display:flex;flex-direction:column;align-items:center;position:relative;width:25%}.vertical-rod{position:absolute;top:-20px;bottom:-20px;width:8px;background:linear-gradient(to right,#455a64,#37474f 40%,#263238 60%,#37474f);border-radius:4px;z-index:0;box-shadow:2px 0 4px #0003,inset 1px 0 2px #ffffff1a}.bead{position:relative;z-index:10}.top-bead-wrapper{margin-bottom:20px;transform:translateY(-110px);z-index:10;position:relative}.bead{position:relative;width:45px;height:45px;background:radial-gradient(circle at 30% 30%,var(--bead-color, #ffd700),var(--bead-color, #ffa000) 50%,var(--bead-color, #ff8f00));border-radius:50%;margin:5px 0;box-shadow:inset -4px -4px 8px #0006,inset 4px 4px 8px #ffffff80,0 8px 16px #0000004d;transform-style:preserve-3d;transform:perspective(2000px) rotateX(15deg) translateZ(10px);transition:all .2s ease-out;will-change:transform}.bead:hover{transform:perspective(2000px) rotateX(15deg) translateZ(25px) translateY(-10px);filter:brightness(1.2);box-shadow:inset -4px -4px 8px #00000080,inset 4px 4px 8px #ffffffe6,0 20px 25px #0000004d;cursor:pointer;z-index:10}@media (min-width: 768px){.abacus,.shared-rod{width:100%;max-width:90%}.bead{width:min(10vw,50px);height:min(10vw,50px)}}.bead:after{content:"";position:absolute;top:6px;left:6px;width:60%;height:30%;background:#fff9;border-radius:50%;filter:blur(1px);pointer-events:none;transform:rotate(-20deg)}.bead .gloss{content:"";position:absolute;top:6px;left:6px;width:60%;height:30%;background:#fff9;border-radius:50%;filter:blur(1px);pointer-events:none;transform:rotate(-20deg)}@keyframes moveTopToBottom{0%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(0)}45%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(53px)}65%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(47px)}85%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(51px)}to{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(50px)}}@keyframes moveBottomToTop{0%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(50px)}45%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(-3px)}65%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(3px)}85%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(-1px)}to{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(0)}}@keyframes moveTopToTop{0%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(50px)}45%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(-3px)}65%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(3px)}85%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(-1px)}to{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(0)}}@keyframes moveBottomToBottom{0%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(0)}45%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(53px)}65%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(47px)}85%{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(51px)}to{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(50px)}}.bead.top{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(0)}.bead.top.active{animation:moveTopToBottom .3s ease-out forwards}.bead.top.inactive{animation:moveTopToTop .3s ease-out forwards}.bead.bottom{transform:perspective(2000px) rotateX(15deg) translateZ(10px) translateY(50px)}.bead.bottom.active{animation:moveBottomToTop .3s ease-out forwards}.bead.bottom.inactive{animation:moveBottomToBottom .3s ease-out forwards}.bead.top.active,.bead.top.inactive,.bead.bottom.active,.bead.bottom.inactive{animation-fill-mode:both}.bead.top.active:hover,.bead.bottom:hover{transform:perspective(2000px) rotateX(15deg) translateZ(20px) translateY(50px)}.bead.bottom.active:hover{transform:perspective(2000px) rotateX(15deg) translateZ(20px) translateY(0)}.abacus-row{display:flex;justify-content:center;gap:12%;position:relative}.abacus-row.bottom-beads{transform:translateY(20px)}.top-bead-wrapper{transform:translateY(-20px);z-index:10;position:relative}.quiz-setup{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:1rem;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);color:#fff;animation:fadeIn .5s ease-out;position:relative;overflow:hidden}.quiz-setup:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 48%,rgba(255,255,255,.03) 50%,transparent 52%),linear-gradient(-45deg,transparent 48%,rgba(255,255,255,.03) 50%,transparent 52%);background-size:3rem 3rem;animation:patternMove 30s linear infinite;z-index:0}.quiz-setup:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(255,107,107,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,142,83,.1) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(255,235,59,.05) 0%,transparent 70%);filter:blur(1px);z-index:0}.quiz-setup>*{position:relative;z-index:1}.quiz-setup h2{font-size:2rem;color:#ffeb3b;text-shadow:2px 2px 0 #000;margin-bottom:1rem;text-align:center}@media (min-width: 768px){.quiz-setup h2{font-size:3.5rem;margin-bottom:1.5rem}}.quiz-setup p{font-size:1rem;color:#fff;text-align:center;margin-bottom:1.5rem;letter-spacing:.5px;padding:0 1rem}@media (min-width: 768px){.quiz-setup p{font-size:1.5rem;margin-bottom:2rem;letter-spacing:1px;padding:0}}.quiz-setup .progress-container{width:100%;max-width:90%;margin:1rem 0 2rem;z-index:1;display:flex;flex-direction:column;align-items:center}.quiz-setup .progress-container .progress-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:1rem}.quiz-setup .progress-container .progress-header h3{color:#fff;font-size:1.5rem;margin:0;text-shadow:0 0 10px rgba(255,255,255,.2)}.quiz-setup .progress-container .no-progress-message{margin-top:1rem;font-size:1rem;color:#ffffffb3;text-align:center;font-style:italic;animation:pulse 2s infinite}.quiz-setup .progress-container.empty .level-indicator .level-number{background:linear-gradient(145deg,#2d2d2d,#1a1a1a);color:#666;opacity:.7}.quiz-setup .progress-container .clear-progress-button{font-size:.9rem;padding:.5rem 1rem;background:linear-gradient(145deg,#e74c3c,#c0392b);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 8px #0000004d}.quiz-setup .progress-container .clear-progress-button:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0006}.quiz-setup .progress-container .clear-progress-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000004d}.quiz-setup .progress-container .clear-progress-button:disabled{background:linear-gradient(145deg,#888,#666);cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}@media (min-width: 768px){.quiz-setup .progress-container{max-width:800px}.quiz-setup .progress-container .progress-header h3{font-size:2rem}.quiz-setup .progress-container .no-progress-message{font-size:1.2rem;margin-top:1.5rem}.quiz-setup .progress-container .clear-progress-button{font-size:1rem;padding:.6rem 1.2rem}}.quiz-setup .sub-level-header{width:100%;max-width:90%;margin:0 0 1.5rem;text-align:center}.quiz-setup .sub-level-header h3{color:#4caf50;font-size:1.8rem;margin-bottom:.5rem;text-shadow:0 0 10px rgba(76,175,80,.3)}.quiz-setup .sub-level-header p{font-size:1.2rem;margin-bottom:1rem}@media (min-width: 768px){.quiz-setup .sub-level-header{max-width:800px}.quiz-setup .sub-level-header h3{font-size:2.2rem}.quiz-setup .sub-level-header p{font-size:1.4rem}}.quiz-setup .level-progress{display:flex;justify-content:space-around;align-items:center;background:linear-gradient(145deg,#1e1e1e,#282828);border-radius:15px;padding:1.5rem 1rem;box-shadow:0 4px 12px #0000004d,0 0 0 1px #ffffff0d;position:relative;overflow:hidden;width:100%;min-height:80px;gap:min(5vw,1.5rem)}.quiz-setup .level-progress:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.03),transparent);animation:shimmer 2s infinite}@media (min-width: 768px){.quiz-setup .level-progress{padding:2rem 1.5rem;gap:3rem;min-height:100px}}.quiz-setup .level-indicator{display:flex;flex-direction:column;align-items:center;position:relative;margin:0 .5rem}.quiz-setup .level-indicator .level-number{width:min(10vw,50px);height:min(10vw,50px);border-radius:50%;background:linear-gradient(145deg,#333,#222);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.5rem;color:#aaa;box-shadow:0 4px 10px #00000080,0 0 0 1px #ffffff1a;transition:all .3s ease}@media (min-width: 768px){.quiz-setup .level-indicator .level-number{width:60px;height:60px;font-size:1.8rem}}.quiz-setup .level-indicator .mastery-badge{position:absolute;top:-10px;right:-10px;font-size:1.2rem;animation:pulse 2s infinite}@media (min-width: 768px){.quiz-setup .level-indicator .mastery-badge{font-size:1.5rem}}.quiz-setup .level-indicator.mastered .level-number{background:linear-gradient(145deg,#4caf50,#2e7d32);color:#fff;box-shadow:0 4px 12px #2e7d32b3,0 0 20px #4caf5080}.quiz-setup .digit-buttons{display:grid;grid-template-columns:1fr;gap:.8rem;width:100%;max-width:90%;padding:.5rem}@media (min-width: 768px){.quiz-setup .digit-buttons{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;max-width:800px;padding:1rem}}.quiz-setup .digit-buttons .digit-button{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;font-size:1.1rem;padding:1rem;cursor:pointer;transition:all .3s ease;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);position:relative}.quiz-setup .digit-buttons .digit-button:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-2px);box-shadow:0 5px 15px #0003}.quiz-setup .digit-buttons .digit-button:active{transform:translateY(1px)}.quiz-setup .digit-buttons .digit-button.mastered{background:linear-gradient(145deg,#1a237e,#0d47a1);border-color:#ffffff4d;box-shadow:0 5px 15px #0000004d,0 0 15px #1a237e4d}.quiz-setup .digit-buttons .digit-button.mastered:hover{box-shadow:0 8px 20px #0006,0 0 20px #1a237e66}.quiz-setup .digit-buttons .digit-button .mastery-icon{position:absolute;top:10px;right:10px;font-size:1.2rem;animation:pulse 2s infinite}@media (min-width: 768px){.quiz-setup .digit-buttons .digit-button .mastery-icon{font-size:1.5rem}}.quiz-setup .sub-level-buttons{display:grid;grid-template-columns:1fr;gap:.8rem;width:100%;max-width:90%;padding:.5rem}@media (min-width: 768px){.quiz-setup .sub-level-buttons{grid-template-columns:repeat(5,1fr);gap:1rem;max-width:800px;padding:1rem}}.quiz-setup .sub-level-buttons .sub-level-button{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;padding:1rem .5rem;cursor:pointer;transition:all .3s ease;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100px}.quiz-setup .sub-level-buttons .sub-level-button .sub-level-content{display:flex;flex-direction:column;align-items:center;gap:.5rem}.quiz-setup .sub-level-buttons .sub-level-button .sub-level-number{font-size:1.8rem;font-weight:700;color:#fff}.quiz-setup .sub-level-buttons .sub-level-button .sub-level-difficulty{font-size:.9rem;color:#fffc}.quiz-setup .sub-level-buttons .sub-level-button:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-2px);box-shadow:0 5px 15px #0003}.quiz-setup .sub-level-buttons .sub-level-button:active{transform:translateY(1px)}.quiz-setup .sub-level-buttons .sub-level-button.mastered{background:linear-gradient(145deg,#4caf50,#2e7d32);border-color:#ffffff4d;box-shadow:0 5px 15px #0000004d,0 0 15px #4caf504d}.quiz-setup .sub-level-buttons .sub-level-button.mastered:hover{box-shadow:0 8px 20px #0006,0 0 20px #4caf5066}.quiz-setup .sub-level-buttons .sub-level-button .mastery-icon{position:absolute;top:5px;right:5px;font-size:1.2rem;animation:pulse 2s infinite}@media (min-width: 768px){.quiz-setup .sub-level-buttons .sub-level-button .mastery-icon{font-size:1.5rem}}@media (min-width: 768px){.quiz-setup .sub-level-buttons .sub-level-button{padding:1.2rem .8rem}.quiz-setup .sub-level-buttons .sub-level-button .sub-level-number{font-size:2.2rem}.quiz-setup .sub-level-buttons .sub-level-button .sub-level-difficulty{font-size:1rem}}.quiz-setup .back-button{position:absolute;bottom:2rem;left:2rem;background:#00000080;color:#fff;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.quiz-setup .back-button:hover{background:#000000b3;transform:translateY(-2px)}.quiz-setup .back-button:active{transform:translateY(1px)}.quiz-setup .clear-progress-button.floating{position:absolute;bottom:2rem;right:2rem;background:linear-gradient(145deg,#e74c3c,#c0392b);color:#fff;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 8px #0000004d;z-index:10}.quiz-setup .clear-progress-button.floating:hover{background:linear-gradient(145deg,#c0392b,#e74c3c);transform:translateY(-2px);box-shadow:0 6px 12px #0006}.quiz-setup .clear-progress-button.floating:active{transform:translateY(0);box-shadow:0 2px 4px #0000004d}@media (min-width: 768px){.quiz-setup .clear-progress-button.floating{font-size:1.1rem;padding:.8rem 1.6rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes patternMove{0%{background-position:0 0}to{background-position:6rem 6rem}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes pulse{0%{transform:scale(1);opacity:.8}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:.8}}@media (min-width: 768px){.quiz-setup{max-width:768px;margin:0 auto}}.quiz-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background-color:#000;background-image:radial-gradient(circle at 10% 20%,#642b7366,#0400041a 90%),radial-gradient(circle at 90% 80%,#203f8166,#0000001a 90%),linear-gradient(135deg,#000c,#000000f2);position:relative;overflow:hidden}.quiz-container .abacus{position:relative;width:90%;max-width:min(400px,90vw);padding:0;box-sizing:border-box}.quiz-container .abacus-row{width:100%;position:relative;display:flex;justify-content:center;gap:0;margin-left:-5px}.quiz-container .column{width:18%;display:flex;flex-direction:column;align-items:center;margin:0 1%}.quiz-container .top-bead-wrapper{margin-top:0;transform:translateY(-40px)}.quiz-container .abacus-row.bottom-beads{transform:translateY(-5px)}.quiz-container .vertical-rod{transform:translateY(-10px)}.quiz-container h2{color:#fff;font-size:2rem;margin-bottom:1.5rem;text-shadow:0 0 10px rgba(255,255,255,.3);z-index:10;text-align:center}.quiz-container .level-indicator-container{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem;width:100%}@media (max-width: 767px){.quiz-container .level-indicator-container{margin-top:-30px}}@media (min-width: 768px){.quiz-container .level-indicator-container{margin-bottom:.5rem}}.quiz-container .level-indicator-container h2{margin-bottom:.5rem}.quiz-container .current-level-indicator{display:flex;align-items:center;justify-content:center;gap:1rem;background:#0000004d;padding:.5rem 1rem;border-radius:20px;margin-bottom:1rem;box-shadow:0 4px 8px #0003}.quiz-container .current-level-indicator .digit-level{color:#64b5f6;font-weight:700;font-size:1rem}.quiz-container .current-level-indicator .difficulty-level{color:#4caf50;font-weight:700;font-size:1rem}@media (min-width: 768px){.quiz-container .current-level-indicator{padding:.7rem 1.5rem}.quiz-container .current-level-indicator .digit-level,.quiz-container .current-level-indicator .difficulty-level{font-size:1.2rem}}.quiz-container .back-button{background:linear-gradient(145deg,#e74c3c,#c0392b);color:#fff;border:none;padding:.7rem 1rem;border-radius:12px;font-size:min(5vw,1.5rem);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 8px #0000004d}.quiz-container .back-button:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0006}.quiz-container .back-button.page-absolute{position:absolute;left:2rem;bottom:3vh;z-index:100}.quiz-container:before,.quiz-container:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;z-index:-1}.quiz-container:before{background-image:radial-gradient(circle at 85% 15%,#ffffff0d,#fff0 50%),radial-gradient(circle at 15% 85%,#ffffff0d,#fff0 50%),radial-gradient(circle at 50% 50%,#ffffff08,#fff0 70%);animation:shimmer 15s infinite linear}.quiz-container:after{background-image:radial-gradient(circle 8px at 10% 30%,#ff408166,#ff408100 60%),radial-gradient(circle 6px at 80% 40%,#00bcd466,#00bcd400 60%),radial-gradient(circle 10px at 40% 70%,#ffd70066,#ffd70000 60%),radial-gradient(circle 8px at 70% 90%,#0f66,#0f60 60%),radial-gradient(circle 6px at 30% 20%,#1e90ff66,#1e90ff00 60%);animation:float 20s infinite ease-in-out}@media (min-width: 768px){.quiz-container{max-width:768px;margin:0 auto}.quiz-container h2{font-size:2.5rem}.quiz-container .back-button{font-size:1.2rem;padding:.8rem 1.6rem}.quiz-container .back-button.page-absolute{bottom:2rem}}@keyframes shimmer{0%{background-position:0% 0%}to{background-position:100% 100%}}@keyframes float{0%,to{transform:translateY(0) translate(0)}25%{transform:translateY(-10px) translate(5px)}50%{transform:translateY(5px) translate(-10px)}75%{transform:translateY(10px) translate(5px)}}.level-up-button,.retry-button,.back-to-menu-button{background:linear-gradient(145deg,#4caf50,#2e7d32);color:#fff;border:none;border-radius:12px;padding:.75rem 1.5rem;font-size:1rem;cursor:pointer;margin:.5rem;box-shadow:0 4px 8px #0000004d;transition:all .3s ease}.level-up-button:hover,.retry-button:hover,.back-to-menu-button:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0006}.level-up-button:active,.retry-button:active,.back-to-menu-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000004d}.landing-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 20%,rgb(0,6,10) 0%,transparent 45%),radial-gradient(circle at 70% 65%,rgb(0,0,0) 0%,transparent 45%),radial-gradient(circle at 85% 25%,rgb(0,0,0) 0%,transparent 40%),linear-gradient(135deg,#010108,#02021a 30%,#040425 70%,#010108);position:relative;overflow:hidden;max-width:430px;margin:0 auto}.landing-page:before,.landing-page:after{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;background:radial-gradient(circle at 40% 40%,rgba(82,179,255,.05) 0%,transparent 70%),radial-gradient(circle at 60% 60%,rgba(198,83,255,.05) 0%,transparent 70%);filter:blur(40px);animation:smoke 20s linear infinite}.landing-page:after{animation-delay:-10s;filter:blur(60px);opacity:.7}@keyframes smoke{0%{transform:translate(0) rotate(0) scale(1)}25%{transform:translate(-10%,15%) rotate(90deg) scale(1.2)}50%{transform:translate(10%,-5%) rotate(180deg) scale(.9)}75%{transform:translate(-15%,-15%) rotate(270deg) scale(1.1)}to{transform:translate(0) rotate(360deg) scale(1)}}.landing-page .hidden{opacity:0;visibility:hidden}.landing-page .bead-container{position:absolute;width:min(90vw,400px);height:min(90vw,400px);left:50%;top:50%;transform:translate(-50%,-50%);transform-style:preserve-3d;pointer-events:none}.landing-page .bead-container .bead{position:absolute;width:min(10vw,45px);height:min(10vw,45px);border-radius:50%;transform-style:preserve-3d;box-shadow:inset min(1vw,4px) min(1vw,4px) min(1.5vw,8px) #fffc,inset calc(-1*min(1vw,4px)) calc(-1*min(1vw,4px)) min(1.5vw,8px) #00000080,calc(min(1vw,4px)/2) calc(min(1vw,4px)/2) min(2vw,10px) #3498db4d;border:1px solid rgba(52,152,219,.6);left:calc(50% - min(5vw,22.5px));top:calc(50% - min(5vw,22.5px));opacity:0}.landing-page .bead-container .bead:nth-child(1){background:linear-gradient(135deg,#ff6b6b,#ee5253,#c23616)}.landing-page .bead-container .bead:nth-child(2){background:linear-gradient(135deg,#4ecdc4,#45b7af,#2e8b84)}.landing-page .bead-container .bead:nth-child(3){background:linear-gradient(135deg,#ffd93d,#f6c90e,#bf9b06)}.landing-page .bead-container .bead:nth-child(4){background:linear-gradient(135deg,#a8e6cf,#7fd1b3,#4b9b82)}.landing-page .bead-container .bead:nth-child(5){background:linear-gradient(135deg,#ff9a9e,#ff7b82,#cc4e54)}.landing-page .bead-container .bead:nth-child(6){background:linear-gradient(135deg,#6c5ce7,#5849be,#3c2f94)}.landing-page .bead-container .bead:nth-child(7){background:linear-gradient(135deg,#00b894,#009b7a,#006b53)}.landing-page .bead-container .bead:nth-child(8){background:linear-gradient(135deg,#ffa07a,coral,#cc5b2d)}.landing-page .bead-container .bead:nth-child(9){background:linear-gradient(135deg,#a3a1ff,#8785e6,#5f5db3)}.landing-page .bead-container .bead:nth-child(10){background:linear-gradient(135deg,#e056fd,#be2edd,#9b27ae)}.landing-page .bead-container .bead:before{content:"";position:absolute;width:100%;height:100%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.8) 0%,rgba(255,255,255,.4) 25%,rgba(255,255,255,.1) 50%,transparent 70%);border-radius:50%;filter:blur(min(.15vw,.8px))}.landing-page .bead-container .bead:after{content:"";position:absolute;width:min(2.5vw,12px);height:min(2.5vw,12px);background:#fff;border-radius:50%;top:min(1.2vw,6px);left:min(1.2vw,6px);filter:blur(min(.2vw,1px));box-shadow:0 0 min(1.5vw,8px) #fff9}.landing-page .bead-container .bead.animate:nth-child(1){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) .15s forwards,moveToOrbit1 1.2s cubic-bezier(.4,0,.2,1) 1.35s forwards,orbit1 15s linear 2.55s infinite}.landing-page .bead-container .bead.animate:nth-child(2){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) .3s forwards,moveToOrbit2 1.2s cubic-bezier(.4,0,.2,1) 1.5s forwards,orbit2 15s linear 2.7s infinite}.landing-page .bead-container .bead.animate:nth-child(3){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) .45s forwards,moveToOrbit3 1.2s cubic-bezier(.4,0,.2,1) 1.65s forwards,orbit3 15s linear 2.85s infinite}.landing-page .bead-container .bead.animate:nth-child(4){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) .6s forwards,moveToOrbit4 1.2s cubic-bezier(.4,0,.2,1) 1.8s forwards,orbit4 15s linear 3s infinite}.landing-page .bead-container .bead.animate:nth-child(5){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) .75s forwards,moveToOrbit5 1.2s cubic-bezier(.4,0,.2,1) 1.95s forwards,orbit5 15s linear 3.15s infinite}.landing-page .bead-container .bead.animate:nth-child(6){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) .9s forwards,moveToOrbit6 1.2s cubic-bezier(.4,0,.2,1) 2.1s forwards,orbit6 15s linear 3.3s infinite}.landing-page .bead-container .bead.animate:nth-child(7){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) 1.05s forwards,moveToOrbit7 1.2s cubic-bezier(.4,0,.2,1) 2.25s forwards,orbit7 15s linear 3.45s infinite}.landing-page .bead-container .bead.animate:nth-child(8){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) 1.2s forwards,moveToOrbit8 1.2s cubic-bezier(.4,0,.2,1) 2.4s forwards,orbit8 15s linear 3.6s infinite}.landing-page .bead-container .bead.animate:nth-child(9){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) 1.35s forwards,moveToOrbit9 1.2s cubic-bezier(.4,0,.2,1) 2.55s forwards,orbit9 15s linear 3.75s infinite}.landing-page .bead-container .bead.animate:nth-child(10){animation:fallDown 1s cubic-bezier(.34,1.56,.64,1) 1.5s forwards,moveToOrbit10 1.2s cubic-bezier(.4,0,.2,1) 2.7s forwards,orbit10 15s linear 3.9s infinite}.landing-page .bead-container .bead.hidden{animation:none;opacity:0}.landing-page .title{font-family:Gumdrop,cursive;font-size:min(10vw,3rem);margin:0;margin-top:2rem;display:flex;gap:.5rem;position:relative;z-index:10;transform-style:preserve-3d;opacity:0;animation:fadeIn .5s ease-out 3.5s forwards}.landing-page .title span:nth-child(1){color:#ff6b6b;text-shadow:2px 2px 0 #EE5253,4px 4px 0 #C23616}.landing-page .title span:nth-child(2){color:#4ecdc4;text-shadow:2px 2px 0 #45B7AF,4px 4px 0 #2E8B84}.landing-page .title span:nth-child(3){color:#ffd93d;text-shadow:2px 2px 0 #F6C90E,4px 4px 0 #BF9B06}.landing-page .title span:nth-child(4){color:#a8e6cf;text-shadow:2px 2px 0 #7FD1B3,4px 4px 0 #4B9B82}.landing-page .title span:nth-child(5){color:#6c5ce7;text-shadow:2px 2px 0 #5849BE,4px 4px 0 #3C2F94}.landing-page .title span:nth-child(6){color:#00b894;text-shadow:2px 2px 0 #009B7A,4px 4px 0 #006B53}.landing-page .title span{display:inline-block;transform:translateY(20px);animation:titleLetterIn .5s ease-out forwards;transform:translateZ(10px)}.landing-page .title span:nth-child(1){animation-delay:3.6s}.landing-page .title span:nth-child(2){animation-delay:3.7s}.landing-page .title span:nth-child(3){animation-delay:3.8s}.landing-page .title span:nth-child(4){animation-delay:3.9s}.landing-page .title span:nth-child(5){animation-delay:4s}.landing-page .title span:nth-child(6){animation-delay:4.1s}.landing-page .subtitle{font-family:Gumdrop,cursive;color:#81d4fa;font-size:1rem;margin-top:1rem;letter-spacing:1px;text-shadow:1px 1px 0 #29B6F6,2px 2px 0 #0288D1;opacity:0;animation:fadeInUp .5s ease-out 4.5s forwards}.landing-page .enter-prompt{font-family:Gumdrop,cursive;color:#f7c649;font-size:.9rem;margin-top:2rem;letter-spacing:1px;opacity:0;text-shadow:0 0 15px rgba(52,152,219,.3);animation:pulse 2s ease-in-out 5.5s infinite;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes titleLetterIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fallDown{0%{opacity:0;transform:translateY(-300px) scale(.2)}70%{opacity:1;transform:translateY(0) scale(1)}85%{transform:translateY(-15px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes moveToOrbit1{0%{transform:translateY(0) scale(1)}50%{transform:rotate(20deg) translate(min(17.5vw,90px)) rotate(-20deg) scale(.9)}to{transform:rotate(40deg) translate(min(35vw,180px)) rotate(-40deg) scale(1)}}@keyframes orbit1{0%{transform:rotate(40deg) translate(min(35vw,180px)) rotate(-40deg)}to{transform:rotate(400deg) translate(min(35vw,180px)) rotate(-400deg)}}@keyframes moveToOrbit2{0%{transform:translateY(0) scale(1)}50%{transform:rotate(40deg) translate(min(17.5vw,90px)) rotate(-40deg) scale(.9)}to{transform:rotate(80deg) translate(min(35vw,180px)) rotate(-80deg) scale(1)}}@keyframes orbit2{0%{transform:rotate(80deg) translate(min(35vw,180px)) rotate(-80deg)}to{transform:rotate(440deg) translate(min(35vw,180px)) rotate(-440deg)}}@keyframes moveToOrbit3{0%{transform:translateY(0) scale(1)}50%{transform:rotate(60deg) translate(min(17.5vw,90px)) rotate(-60deg) scale(.9)}to{transform:rotate(120deg) translate(min(35vw,180px)) rotate(-120deg) scale(1)}}@keyframes orbit3{0%{transform:rotate(120deg) translate(min(35vw,180px)) rotate(-120deg)}to{transform:rotate(480deg) translate(min(35vw,180px)) rotate(-480deg)}}@keyframes moveToOrbit4{0%{transform:translateY(0) scale(1)}50%{transform:rotate(80deg) translate(min(17.5vw,90px)) rotate(-80deg) scale(.9)}to{transform:rotate(160deg) translate(min(35vw,180px)) rotate(-160deg) scale(1)}}@keyframes orbit4{0%{transform:rotate(160deg) translate(min(35vw,180px)) rotate(-160deg)}to{transform:rotate(520deg) translate(min(35vw,180px)) rotate(-520deg)}}@keyframes moveToOrbit5{0%{transform:translateY(0) scale(1)}50%{transform:rotate(100deg) translate(min(17.5vw,90px)) rotate(-100deg) scale(.9)}to{transform:rotate(200deg) translate(min(35vw,180px)) rotate(-200deg) scale(1)}}@keyframes orbit5{0%{transform:rotate(200deg) translate(min(35vw,180px)) rotate(-200deg)}to{transform:rotate(560deg) translate(min(35vw,180px)) rotate(-560deg)}}@keyframes moveToOrbit6{0%{transform:translateY(0) scale(1)}50%{transform:rotate(120deg) translate(min(17.5vw,90px)) rotate(-120deg) scale(.9)}to{transform:rotate(240deg) translate(min(35vw,180px)) rotate(-240deg) scale(1)}}@keyframes orbit6{0%{transform:rotate(240deg) translate(min(35vw,180px)) rotate(-240deg)}to{transform:rotate(600deg) translate(min(35vw,180px)) rotate(-600deg)}}@keyframes moveToOrbit7{0%{transform:translateY(0) scale(1)}50%{transform:rotate(140deg) translate(min(17.5vw,90px)) rotate(-140deg) scale(.9)}to{transform:rotate(280deg) translate(min(35vw,180px)) rotate(-280deg) scale(1)}}@keyframes orbit7{0%{transform:rotate(280deg) translate(min(35vw,180px)) rotate(-280deg)}to{transform:rotate(640deg) translate(min(35vw,180px)) rotate(-640deg)}}@keyframes moveToOrbit8{0%{transform:translateY(0) scale(1)}50%{transform:rotate(160deg) translate(min(17.5vw,90px)) rotate(-160deg) scale(.9)}to{transform:rotate(320deg) translate(min(35vw,180px)) rotate(-320deg) scale(1)}}@keyframes orbit8{0%{transform:rotate(320deg) translate(min(35vw,180px)) rotate(-320deg)}to{transform:rotate(680deg) translate(min(35vw,180px)) rotate(-680deg)}}@keyframes moveToOrbit9{0%{transform:translateY(0) scale(1)}50%{transform:rotate(180deg) translate(min(17.5vw,90px)) rotate(-180deg) scale(.9)}to{transform:rotate(360deg) translate(min(35vw,180px)) rotate(-360deg) scale(1)}}@keyframes orbit9{0%{transform:rotate(360deg) translate(min(35vw,180px)) rotate(-360deg)}to{transform:rotate(720deg) translate(min(35vw,180px)) rotate(-720deg)}}@keyframes moveToOrbit10{0%{transform:translateY(0) scale(1)}50%{transform:rotate(200deg) translate(min(17.5vw,90px)) rotate(-200deg) scale(.9)}to{transform:rotate(400deg) translate(min(35vw,180px)) rotate(-400deg) scale(1)}}@keyframes orbit10{0%{transform:rotate(400deg) translate(min(35vw,180px)) rotate(-400deg)}to{transform:rotate(760deg) translate(min(35vw,180px)) rotate(-760deg)}}@keyframes unused_fallDown{0%{opacity:0;transform:translateY(-200px) scale(.3)}60%{opacity:1;transform:translateY(20px) scale(1.1)}80%{transform:translateY(-10px) scale(.9)}to{transform:translateY(0) scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.5) rotate(-15deg) translateY(20px);color:#e74c3c}70%{transform:scale(1.2) rotate(5deg) translateY(-10px);color:#3498db}to{opacity:1;transform:scale(1) rotate(0) translateY(0);color:#fff}}@keyframes letterWave{0%,to{transform:translateY(0);color:#fff;text-shadow:0 0 20px rgba(52,152,219,.5)}25%{transform:translateY(-15px);color:#3498db;text-shadow:0 0 30px rgba(52,152,219,.8)}50%{transform:translateY(0);color:#3498db;text-shadow:0 0 30px rgba(52,152,219,.8)}75%{transform:translateY(15px);color:#3498db;text-shadow:0 0 30px rgba(52,152,219,.8)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@media (min-width: 768px){.landing-page{max-width:768px}.landing-page .title{font-size:min(10vw,4rem)}.landing-page .subtitle{font-size:1.5rem;letter-spacing:1px;margin-top:1rem;margin-bottom:1rem}.landing-page .enter-prompt{font-size:1.5rem;cursor:pointer}.landing-page .bead-container{width:min(90vw,400px);height:min(90vw,400px)}.landing-page .bead-container .bead{width:min(10vw,65px);height:min(10vw,65px)}.landing-page .bead-container .bead:after{width:min(3.5vw,18px);height:min(3.5vw,18px);top:min(1.8vw,10px);left:min(1.8vw,10px);filter:blur(min(.3vw,1.5px));box-shadow:0 0 min(2.5vw,12px) #ffffffb3}@keyframes moveToOrbit1{0%{transform:translateY(0) scale(1)}50%{transform:rotate(20deg) translate(min(22vw,120px)) rotate(-20deg) scale(.9)}to{transform:rotate(40deg) translate(min(45vw,250px)) rotate(-40deg) scale(1)}}@keyframes orbit1{0%{transform:rotate(40deg) translate(min(45vw,250px)) rotate(-40deg)}to{transform:rotate(400deg) translate(min(45vw,250px)) rotate(-400deg)}}@keyframes moveToOrbit2{0%{transform:translateY(0) scale(1)}50%{transform:rotate(40deg) translate(min(22vw,120px)) rotate(-40deg) scale(.9)}to{transform:rotate(80deg) translate(min(45vw,250px)) rotate(-80deg) scale(1)}}@keyframes orbit2{0%{transform:rotate(80deg) translate(min(45vw,250px)) rotate(-80deg)}to{transform:rotate(440deg) translate(min(45vw,250px)) rotate(-440deg)}}@keyframes moveToOrbit3{0%{transform:translateY(0) scale(1)}50%{transform:rotate(60deg) translate(min(22vw,120px)) rotate(-60deg) scale(.9)}to{transform:rotate(120deg) translate(min(45vw,250px)) rotate(-120deg) scale(1)}}@keyframes orbit3{0%{transform:rotate(120deg) translate(min(45vw,250px)) rotate(-120deg)}to{transform:rotate(480deg) translate(min(45vw,250px)) rotate(-480deg)}}@keyframes moveToOrbit4{0%{transform:translateY(0) scale(1)}50%{transform:rotate(80deg) translate(min(22vw,120px)) rotate(-80deg) scale(.9)}to{transform:rotate(160deg) translate(min(45vw,250px)) rotate(-160deg) scale(1)}}@keyframes orbit4{0%{transform:rotate(160deg) translate(min(45vw,250px)) rotate(-160deg)}to{transform:rotate(520deg) translate(min(45vw,250px)) rotate(-520deg)}}@keyframes moveToOrbit5{0%{transform:translateY(0) scale(1)}50%{transform:rotate(100deg) translate(min(22vw,120px)) rotate(-100deg) scale(.9)}to{transform:rotate(200deg) translate(min(45vw,250px)) rotate(-200deg) scale(1)}}@keyframes orbit5{0%{transform:rotate(200deg) translate(min(45vw,250px)) rotate(-200deg)}to{transform:rotate(560deg) translate(min(45vw,250px)) rotate(-560deg)}}@keyframes moveToOrbit6{0%{transform:translateY(0) scale(1)}50%{transform:rotate(120deg) translate(min(22vw,120px)) rotate(-120deg) scale(.9)}to{transform:rotate(240deg) translate(min(45vw,250px)) rotate(-240deg) scale(1)}}@keyframes orbit6{0%{transform:rotate(240deg) translate(min(45vw,250px)) rotate(-240deg)}to{transform:rotate(600deg) translate(min(45vw,250px)) rotate(-600deg)}}@keyframes moveToOrbit7{0%{transform:translateY(0) scale(1)}50%{transform:rotate(140deg) translate(min(22vw,120px)) rotate(-140deg) scale(.9)}to{transform:rotate(280deg) translate(min(45vw,250px)) rotate(-280deg) scale(1)}}@keyframes orbit7{0%{transform:rotate(280deg) translate(min(45vw,250px)) rotate(-280deg)}to{transform:rotate(640deg) translate(min(45vw,250px)) rotate(-640deg)}}@keyframes moveToOrbit8{0%{transform:translateY(0) scale(1)}50%{transform:rotate(160deg) translate(min(22vw,120px)) rotate(-160deg) scale(.9)}to{transform:rotate(320deg) translate(min(45vw,250px)) rotate(-320deg) scale(1)}}@keyframes orbit8{0%{transform:rotate(320deg) translate(min(45vw,250px)) rotate(-320deg)}to{transform:rotate(680deg) translate(min(45vw,250px)) rotate(-680deg)}}@keyframes moveToOrbit9{0%{transform:translateY(0) scale(1)}50%{transform:rotate(180deg) translate(min(22vw,120px)) rotate(-180deg) scale(.9)}to{transform:rotate(360deg) translate(min(45vw,250px)) rotate(-360deg) scale(1)}}@keyframes orbit9{0%{transform:rotate(360deg) translate(min(45vw,250px)) rotate(-360deg)}to{transform:rotate(720deg) translate(min(45vw,250px)) rotate(-720deg)}}@keyframes moveToOrbit10{0%{transform:translateY(0) scale(1)}50%{transform:rotate(200deg) translate(min(22vw,120px)) rotate(-200deg) scale(.9)}to{transform:rotate(400deg) translate(min(45vw,250px)) rotate(-400deg) scale(1)}}@keyframes orbit10{0%{transform:rotate(400deg) translate(min(45vw,250px)) rotate(-400deg)}to{transform:rotate(760deg) translate(min(45vw,250px)) rotate(-760deg)}}}.learn-mode{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f6f8fa,#e9ecef)}.learn-mode .page-content{width:100%;max-width:800px;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;position:relative}.learn-mode .page-content .content-card{background:#fff;border-radius:24px;padding:3rem;width:100%;max-width:600px;box-shadow:0 10px 30px #0000001a,0 1px 8px #0000000d;text-align:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#fffffff2,#ffffffd9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.learn-mode .page-content .content-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--page-color, #4ECDC4)}.learn-mode .page-content .content-card h1{font-size:2.5rem;color:#2c3e50;margin-bottom:2rem;background:linear-gradient(45deg,var(--page-color, #4ECDC4),rgb(45.4845814978,161.0154185022,152.8281938326));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.learn-mode .page-content .content-card p{font-size:1.2rem;line-height:1.6;color:#4a5568;margin-bottom:1.5rem}.learn-mode .page-content .content-card .step-list{list-style:none;padding:0;text-align:left}.learn-mode .page-content .content-card .step-list li{font-size:1.1rem;color:#4a5568;padding:1rem 1.5rem;margin:.5rem 0;background:#ffffff80;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;align-items:center}.learn-mode .page-content .content-card .step-list li:before{content:"•";color:var(--page-color, #4ECDC4);font-size:1.5rem;margin-right:1rem}.learn-mode .navigation-buttons{display:flex;justify-content:center;gap:1rem;margin-top:2rem;margin-bottom:2rem}.learn-mode .navigation-buttons .nav-button{padding:.8rem 1.5rem;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;background:#fff;color:#4a5568;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014;transition:all .2s ease}.learn-mode .navigation-buttons .nav-button:hover{transform:translateY(-2px);box-shadow:0 7px 14px #0000001a,0 3px 6px #00000014}.learn-mode .navigation-buttons .nav-button.next,.learn-mode .navigation-buttons .nav-button.finish{background:var(--page-color, #4ECDC4);color:#fff}.learn-mode .navigation-buttons .nav-button.prev{background:#fff;border:2px solid var(--page-color, #4ECDC4);color:var(--page-color, #4ECDC4)}.learn-mode .progress-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.learn-mode .progress-dots .dot{width:10px;height:10px;border-radius:50%;background:#cbd5e0;transition:all .3s ease}.learn-mode .progress-dots .dot.active{background:var(--page-color, #4ECDC4);transform:scale(1.2)}@media (min-width: 768px){.learn-mode{max-width:768px;margin:0 auto}.learn-mode .page-content,.learn-mode .content-card,.learn-mode .navigation-buttons,.learn-mode .progress-dots{width:100%;max-width:768px}}.column:nth-child(1) .bead{--bead-color: #ff6b6b}.column:nth-child(2) .bead{--bead-color: #4ecdc4}.column:nth-child(3) .bead{--bead-color: #ffe66d}.column:nth-child(4) .bead{--bead-color: #2ecc71}.column:nth-child(5) .bead{--bead-color: #4a90e2}.abacus-demo{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem}.abacus-demo .abacus-frame{background:#2a3543;padding:2.5rem;border-radius:24px;display:flex;flex-direction:row-reverse;justify-content:center;align-items:center;gap:.5rem;max-width:370px;margin:0 auto;box-shadow:0 20px 40px #0003,inset 0 2px 5px #ffffff0d;position:relative}.abacus-demo .abacus-frame:after{content:"";position:absolute;left:0;right:0;top:26%;height:6px;background:linear-gradient(to bottom,#4b5563,#1f2937 50%,#4b5563);transform:translateY(-75%);border-radius:6px;box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #ffffff1a;z-index:1}.abacus-demo .abacus-frame .column-wrapper{display:flex;flex-direction:column;align-items:center;gap:1rem;width:60px}.abacus-demo .abacus-frame .column-wrapper .place-value{color:#e2e8f0;font-size:1.25rem;font-weight:600;margin-top:.75rem;padding:.4rem .8rem;background:#0003;border-radius:8px;box-shadow:inset 0 1px 3px #0000004d,0 1px 2px #ffffff1a;text-shadow:0 1px 2px rgba(0,0,0,.5);letter-spacing:.5px}.abacus-demo .abacus-frame:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,#ffffff1a,#ffffff0d);border-radius:24px;pointer-events:none;z-index:-1}.abacus-demo .abacus-frame .column{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative}.abacus-demo .abacus-frame .column .vertical-rod{position:absolute;left:50%;transform:translate(-50%);width:4px;height:100%;background:#2d3748;border-radius:2px;z-index:0;box-shadow:-1px 0 1px #0006,1px 0 1px #ffffff1a}.abacus-demo .abacus-frame .column .top-bead-wrapper{padding:.5rem 0}.abacus-demo .abacus-frame .column .bottom-beads{display:flex;flex-direction:column;padding:.5rem 0 1rem;margin-top:-1rem}.abacus-demo .abacus-frame .column .bead{width:40px;height:40px;border-radius:50%;position:relative;cursor:pointer;z-index:3;transition:transform .3s cubic-bezier(.34,1.56,.64,1);background:radial-gradient(circle at 30% 30%,color-mix(in srgb,white 40%,var(--bead-color)) 0%,var(--bead-color) 50%,color-mix(in srgb,black 30%,var(--bead-color)) 100%);box-shadow:0 2px 4px #0003,inset 0 -2px 4px #0003,inset 0 2px 4px #ffffff4d}.abacus-demo .abacus-frame .column .bead.active{transform:translateY(8px)}.abacus-demo .abacus-frame .column .bead.inactive{transform:translateY(0)}.abacus-demo .abacus-frame .column .bead:hover{box-shadow:0 3px 6px #0000001a,inset 0 -1px 3px #00000026,inset 0 1px 3px #fff3}.abacus-demo .total-value{color:#f8fafc;font-size:1.75rem;font-weight:700;margin-top:2rem;padding:1rem 2rem;background:linear-gradient(135deg,#2d3748e6,#1a202cf2);border-radius:16px;box-shadow:0 6px 16px #00000040,0 2px 4px #00000026,inset 0 1px 1px #ffffff1a;text-shadow:0 2px 4px rgba(0,0,0,.4);letter-spacing:1px;position:relative;overflow:hidden;border:1px solid rgba(74,85,104,.4)}.abacus-demo .total-value:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,rgba(255,255,255,.3),transparent)}.abacus-demo .total-value:after{content:"";position:absolute;bottom:0;left:10%;right:10%;height:1px;background:linear-gradient(to right,transparent,rgba(255,255,255,.1),transparent)}@media (min-width: 768px){.abacus-demo{padding:1rem;width:100%;max-width:768px}.abacus-demo .abacus-frame{margin:0;width:100%;max-width:768px!important;gap:2rem}.abacus-demo .abacus-container{width:100%!important;max-width:700px!important}.abacus-demo .bead{width:50px!important;height:50px!important}}
