*{box-sizing:border-box}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes float{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-24px) rotate(8deg)}to{transform:translateY(0) rotate(0)}}@keyframes popIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.25);opacity:1}to{transform:scale(1)}}@keyframes wiggle{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(360deg);opacity:0}}@keyframes shakeSlide{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}body{margin:0;font-family:Comic Sans MS,Segoe UI,sans-serif;background:linear-gradient(135deg,#fef6e4,#e0f7fa);min-height:100vh;color:#333;overflow-x:hidden}.floating-decor-layer{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.floating-decor{position:absolute;font-size:2.4rem;opacity:.55;animation:float 6s ease-in-out infinite}.app-container{position:relative;z-index:1;max-width:640px;margin:0 auto;padding:24px 16px 60px}.music-toggle-btn{position:fixed;top:16px;right:16px;z-index:2;width:48px;height:48px;border-radius:50%;border:none;background:#fff;box-shadow:0 4px 10px #00000026;font-size:1.4rem;cursor:pointer;transition:transform .15s ease}.music-toggle-btn:hover{transform:scale(1.1)}.music-credit{text-align:center;font-size:.75rem;color:#888;margin-top:8px}.music-credit a{color:#888}h1{text-align:center;color:#ff6f61;font-size:2.2rem}.title-emoji{display:inline-block;animation:bounce 1.6s ease-in-out infinite}.card{background:#fff;border-radius:20px;padding:24px;margin-bottom:24px;box-shadow:0 6px 16px #00000014;animation:fadeInUp .4s ease both}.card h2{margin-top:0;color:#3a86ff}.field-group{margin-bottom:20px}.field-group>label{display:block;font-weight:700;margin-bottom:8px}.preset-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.preset-btn{padding:8px 16px;border-radius:999px;border:2px solid #3a86ff;background:#fff;color:#3a86ff;font-size:1rem;cursor:pointer;transition:transform .15s ease}.preset-btn:hover{transform:scale(1.08)}.preset-btn.active{background:#3a86ff;color:#fff}.range-inputs{display:flex;gap:16px}.range-inputs label{display:flex;flex-direction:column;font-weight:400;gap:4px}.range-inputs input{width:90px;padding:8px;font-size:1rem;border-radius:8px;border:1px solid #ccc}.operation-row{display:flex;flex-wrap:wrap;gap:12px}.checkbox-pill{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff3cd;font-weight:400;cursor:pointer}select{font-size:1rem;padding:8px;border-radius:8px;border:1px solid #ccc}.error-text{color:#d00000;font-weight:700}.primary-btn{background:#ff6f61;color:#fff;border:none;padding:12px 24px;font-size:1.1rem;border-radius:999px;cursor:pointer;transition:transform .15s ease}.primary-btn:hover{transform:scale(1.06)}.primary-btn:active{transform:scale(.95)}.secondary-btn{background:#fff;color:#ff6f61;border:2px solid #ff6f61;padding:12px 24px;font-size:1.1rem;border-radius:999px;cursor:pointer;transition:transform .15s ease}.secondary-btn:hover{transform:scale(1.06)}.secondary-btn:active{transform:scale(.95)}.button-row{display:flex;gap:12px;flex-wrap:wrap}.slide-nav-row{justify-content:space-between}.question-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.question-row{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:12px;font-size:1.4rem;animation:fadeInUp .35s ease both}.question-index{font-weight:700;color:#3a86ff}.question-expr{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.answer-input{width:90px;padding:10px;font-size:1.3rem;border-radius:8px;border:2px solid #3a86ff;text-align:center}.answer-input.invalid{border-color:#d00000;background:#fff0f0;animation:wiggle .4s ease}.score-text{font-size:1.5rem;font-weight:700;color:#ff6f61}.slide-progress{text-align:center;font-weight:700;color:#3a86ff;font-size:1.1rem;margin-bottom:12px}.result-slide{display:flex;flex-direction:column;align-items:center;gap:16px;padding:28px 16px;border-radius:16px;margin-bottom:20px;animation:fadeInUp .3s ease both}.result-slide.correct{background:#d8f3dc}.result-slide.incorrect{background:#ffd6d6;animation:fadeInUp .3s ease both,shakeSlide .4s ease .3s}.confetti-layer{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:5}.confetti-piece{position:absolute;top:-20px;width:10px;height:16px;border-radius:2px;animation-name:confettiFall;animation-timing-function:ease-in;animation-fill-mode:forwards}.result-slide-expr{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;font-size:2rem;font-weight:700;text-align:center}.result-slide-answer{color:#3a86ff;text-decoration:underline}.result-slide-icon{font-size:3rem;animation:popIn .4s ease both}.result-slide.incorrect .result-slide-icon{animation:wiggle .5s ease}.slide-correct-answer{color:#d00000;font-weight:700;font-size:1.2rem;text-align:center}.secondary-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.celebration-banner{text-align:center;font-size:1.8rem;margin-bottom:16px;animation:bounce 1s ease-in-out infinite}.history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.history-list li{display:grid;grid-template-columns:170px 1fr 60px;align-items:center;gap:8px;padding:10px 12px;background:#f1f3f5;border-radius:10px;font-size:1.05rem}.history-score{font-weight:700;color:#3a86ff;text-align:right}@media (max-width: 480px){.history-list li{grid-template-columns:1fr;gap:2px}.history-score{text-align:left}.question-row{grid-template-columns:28px 1fr;gap:8px;font-size:1.15rem}.question-expr{gap:8px}.answer-input{width:72px;font-size:1.1rem;padding:8px}.result-slide-expr{font-size:1.5rem;gap:8px}.result-slide-icon{font-size:2.4rem}.celebration-banner{font-size:1.4rem}}
