@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap";:root{--bg: #FFF8F0;--text: #2D1B4E;--text-light: #6B5B7B;--card-shadow: 0 4px 15px rgba(0,0,0,.1);--card-shadow-hover: 0 8px 25px rgba(0,0,0,.15);--radius: 1.25rem;--radius-sm: .75rem}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;font-family:Nunito,-apple-system,sans-serif;background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent}body{background:radial-gradient(circle at 20% 20%,rgba(255,107,107,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(78,205,196,.08) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(255,230,109,.06) 0%,transparent 50%),var(--bg)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes bounceGentle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes pop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes confettiFall{0%{transform:translateY(-10vh) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.bounce{animation:bounce .6s ease-in-out}.bounce-gentle{animation:bounceGentle 2s ease-in-out infinite}.confetti-container{position:fixed;top:0;left:0;right:0;height:100vh;pointer-events:none;z-index:1000;overflow:hidden}.confetti-piece{position:absolute;top:-10px;border-radius:50%;animation:confettiFall 2s ease-in forwards}.stars-display{display:flex;gap:2px;align-items:center;flex-wrap:wrap;justify-content:center}.star-icon{font-size:1.2rem}.star-extra{font-size:.9rem;font-weight:700;color:var(--text-light);margin-left:4px}.home-screen{min-height:100vh;padding:1.5rem;display:flex;flex-direction:column;align-items:center;max-width:600px;margin:0 auto}.home-header{text-align:center;padding:1.5rem 0 1rem;width:100%}.mascot{font-size:3.5rem;margin-bottom:.5rem}.home-title{font-size:2.2rem;font-weight:900;background:linear-gradient(135deg,#ff6b6b,#4ecdc4,#ffe66d,#aa96da);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s ease-in-out infinite}.home-subtitle{color:var(--text-light);font-size:1.05rem;font-weight:600;margin-top:.25rem}.home-stars{margin-top:.75rem}.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.875rem;width:100%;animation:fadeIn .5s ease}.category-card{background:#fff;border:3px solid var(--card-color, #ddd);border-radius:var(--radius);padding:1.25rem .75rem;display:flex;flex-direction:column;align-items:center;gap:.35rem;cursor:pointer;transition:all .2s ease;box-shadow:var(--card-shadow);font-family:inherit;position:relative;overflow:hidden}.category-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-color)}.category-card:hover,.category-card:active{transform:translateY(-3px);box-shadow:var(--card-shadow-hover)}.category-card:active{transform:scale(.97)}.category-emoji{font-size:2.5rem}.category-label{font-size:1.1rem;font-weight:800}.category-desc{font-size:.75rem;color:var(--text-light);font-weight:600}.parent-btn{margin-top:1.5rem;background:#fff;border:2px solid #E0D5F0;border-radius:var(--radius-sm);padding:.75rem 1.5rem;font-size:.95rem;font-weight:700;font-family:inherit;cursor:pointer;color:var(--text);transition:all .2s}.parent-btn:hover{background:#f5f0ff}.game-screen{min-height:100vh;padding:1rem 1.25rem 2rem;max-width:600px;margin:0 auto;animation:fadeIn .3s ease}.game-title{text-align:center;font-size:1.7rem;font-weight:900;margin:.5rem 0 1rem}.back-btn{background:#fff;border:2px solid #E8E0F0;border-radius:var(--radius-sm);padding:.5rem 1rem;font-size:.9rem;font-weight:700;font-family:inherit;cursor:pointer;color:var(--text);transition:all .15s}.back-btn:hover{background:#f5f0ff}.back-btn.small{font-size:.8rem;padding:.35rem .75rem;margin-bottom:.75rem}.mode-toggle{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.mode-btn{background:#fff;border:2px solid #E8E0F0;border-radius:var(--radius-sm);padding:.5rem 1.25rem;font-size:.9rem;font-weight:700;font-family:inherit;cursor:pointer;color:var(--text);transition:all .15s}.mode-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.letter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.625rem}.letter-card{background:#fff;border:2.5px solid var(--card-color, #ddd);border-radius:var(--radius);padding:.75rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.15rem;cursor:pointer;transition:all .2s;box-shadow:var(--card-shadow);font-family:inherit;animation:pop .3s ease backwards}.letter-card:nth-child(2){animation-delay:.02s}.letter-card:nth-child(3){animation-delay:.04s}.letter-card:nth-child(4){animation-delay:.06s}.letter-card:nth-child(5){animation-delay:.08s}.letter-card:nth-child(6){animation-delay:.1s}.letter-card:hover,.letter-card:active{transform:scale(1.05)}.letter-card:active{transform:scale(.95)}.letter-char{font-size:1.8rem;font-weight:900;color:var(--card-color)}.letter-emoji{font-size:1.3rem}.number-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.number-card{background:#fff;border:2.5px solid var(--card-color, #ddd);border-radius:var(--radius);padding:1rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;transition:all .2s;box-shadow:var(--card-shadow);font-family:inherit}.number-card:hover,.number-card:active{transform:scale(1.05)}.number-char{font-size:2.2rem;font-weight:900;color:var(--card-color)}.number-word{font-size:.8rem;font-weight:700;color:var(--text-light)}.number-emoji{font-size:1.1rem}.color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.color-card{background:#fff;border:2.5px solid var(--card-color, #ddd);border-radius:var(--radius);padding:1rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s;box-shadow:var(--card-shadow);font-family:inherit}.color-card:hover,.color-card:active{transform:scale(1.03)}.color-swatch-small{width:2.5rem;height:2.5rem;border-radius:50%;flex-shrink:0}.color-label{font-size:1.1rem;font-weight:800}.shape-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.shape-card{background:#fff;border:2.5px solid var(--card-color, #ddd);border-radius:var(--radius);padding:1.25rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s;box-shadow:var(--card-shadow);font-family:inherit}.shape-card:hover,.shape-card:active{transform:scale(1.05)}.shape-emoji{font-size:2.5rem}.shape-label{font-size:1rem;font-weight:800}.animal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.625rem}.animal-card{background:#fff;border:2.5px solid var(--card-color, #ddd);border-radius:var(--radius);padding:.875rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;transition:all .2s;box-shadow:var(--card-shadow);font-family:inherit}.animal-card:hover,.animal-card:active{transform:scale(1.05)}.animal-emoji{font-size:2rem}.animal-label{font-size:.8rem;font-weight:700}.detail-view{text-align:center;animation:fadeIn .3s ease}.detail-card{background:#fff;border:3px solid var(--card-color, #ddd);border-radius:var(--radius);padding:2rem 1.5rem;margin-top:.75rem;box-shadow:var(--card-shadow)}.detail-letter,.detail-number{font-size:5rem;font-weight:900;color:var(--card-color);line-height:1}.detail-emoji{font-size:3rem;margin:.5rem 0}.detail-emoji.large{font-size:4rem}.detail-word{font-size:1.8rem;font-weight:800;margin:.25rem 0}.detail-label{font-size:1.2rem;color:var(--text-light);font-weight:600}.detail-desc{font-size:1rem;color:var(--text-light);font-weight:600;margin:.25rem 0}.detail-sub{font-size:.9rem;color:var(--text-light);font-style:italic}.shape-display,.animal-display{font-size:5rem;margin:.5rem 0}.color-swatch{width:6rem;height:6rem;border-radius:50%;margin:.5rem auto;box-shadow:0 4px 15px #00000026}.speak-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:var(--radius-sm);padding:.75rem 1.5rem;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;margin-top:.75rem;transition:all .2s;box-shadow:0 4px 12px #667eea4d}.speak-btn:hover{transform:scale(1.05)}.speak-btn:active{transform:scale(.95)}.action-btn{background:#fff;border:2.5px solid #E8E0F0;border-radius:var(--radius-sm);padding:.65rem 1.25rem;font-size:.95rem;font-weight:700;font-family:inherit;cursor:pointer;color:var(--text);transition:all .2s;margin:.25rem}.action-btn:hover{background:#f5f0ff}.action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent;box-shadow:0 4px 12px #667eea4d}.action-btn.primary:hover{transform:scale(1.05)}.action-btn.large{padding:.85rem 2rem;font-size:1.1rem}.result-actions{display:flex;gap:.5rem;justify-content:center;margin-top:1rem;flex-wrap:wrap}.quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.5rem 1rem;background:#fff;border-radius:var(--radius-sm);border:2px solid #E8E0F0}.quiz-progress{font-weight:700;font-size:.9rem}.quiz-score{font-weight:800;font-size:1rem}.quiz-prompt{text-align:center;margin:1rem 0}.quiz-emoji{font-size:4rem;margin-bottom:.5rem}.quiz-prompt p{font-size:1.2rem;font-weight:700}.quiz-options{display:flex;flex-direction:column;gap:.625rem}.quiz-options.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.quiz-option{background:#fff;border:2.5px solid #E8E0F0;border-radius:var(--radius);padding:1rem;font-size:1.1rem;font-weight:700;font-family:inherit;cursor:pointer;color:var(--text);transition:all .2s;box-shadow:var(--card-shadow)}.quiz-option:hover:not(:disabled){transform:scale(1.03);border-color:#667eea}.quiz-option.correct{background:#e8f5e9;border-color:#4caf50;animation:pulse .3s ease}.quiz-option.wrong{background:#ffebee;border-color:#f44336;animation:wiggle .3s ease}.quiz-start{text-align:center;padding:3rem 1rem}.quiz-start-emoji{font-size:5rem;margin-bottom:1rem}.quiz-start h2{font-size:2rem;font-weight:900;margin-bottom:.5rem}.quiz-start p{font-size:1.1rem;color:var(--text-light);margin-bottom:1.5rem}.result-screen{text-align:center;padding:2rem 1rem;animation:fadeIn .5s ease}.result-emoji{font-size:5rem;margin-bottom:.5rem}.result-screen h2{font-size:2rem;font-weight:900;margin-bottom:.5rem}.result-screen p{font-size:1.1rem;color:var(--text-light);margin-bottom:.75rem}.counting-game{text-align:center;animation:fadeIn .3s ease}.counting-game h3{font-size:1.5rem;font-weight:800;margin:.5rem 0}.counting-game p{color:var(--text-light);margin-bottom:1rem}.count-grid{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:1rem 0}.count-item{width:3.5rem;height:3.5rem;border-radius:var(--radius-sm);border:2.5px solid #E8E0F0;background:#fff;font-size:1.5rem;cursor:pointer;transition:all .2s;font-family:inherit;display:flex;align-items:center;justify-content:center;animation:pop .3s ease backwards}.count-item:hover:not(.counted){transform:scale(1.1);border-color:#667eea}.count-item.counted{background:#e8f5e9;border-color:#4caf50}.count-complete{font-size:1.3rem;font-weight:800;color:#4caf50;margin-top:1rem}.paint-game{text-align:center;animation:fadeIn .3s ease}.paint-game h3{font-size:1.3rem;font-weight:800;margin:.5rem 0}.color-palette{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin:.75rem 0}.palette-color{width:2.5rem;height:2.5rem;border-radius:50%;cursor:pointer;transition:all .2s;border:3px solid transparent}.palette-color:hover{transform:scale(1.15)}.palette-color.selected{border-color:var(--text);transform:scale(1.15);box-shadow:0 0 0 3px #0000001a}.paint-canvas{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;max-width:280px;margin:1rem auto;background:#fff;padding:.5rem;border-radius:var(--radius);border:2px solid #E8E0F0}.canvas-cell{aspect-ratio:1;border:1.5px dashed #E8E0F0;border-radius:6px;cursor:pointer;transition:all .15s;background:#fafafa;font-size:0}.canvas-cell:hover{border-color:#667eea}.canvas-cell.painted{border:none}.match-game{text-align:center;animation:fadeIn .3s ease}.match-game h3{font-size:1.3rem;font-weight:800;margin:.5rem 0}.match-game p{color:var(--text-light);margin-bottom:.75rem}.match-shapes{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin:1rem 0}.match-shape{width:4rem;height:4rem;border-radius:var(--radius);border:2.5px solid var(--card-color, #E8E0F0);background:#fff;font-size:2rem;cursor:pointer;transition:all .2s;font-family:inherit;display:flex;align-items:center;justify-content:center}.match-shape:hover:not(.matched){transform:scale(1.1)}.match-shape.picked{border-width:3px;box-shadow:0 0 0 3px #667eea4d}.match-shape.matched{background:#e8f5e9;border-color:#4caf50}.match-names{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.75rem}.match-name{background:#fff;border:2px solid #E8E0F0;border-radius:var(--radius-sm);padding:.65rem;font-size:.9rem;font-weight:700;font-family:inherit;cursor:pointer;color:var(--text);transition:all .15s}.match-name:hover:not(:disabled){border-color:#667eea}.match-name:disabled{opacity:.5;cursor:default}.match-name.matched{background:#e8f5e9;border-color:#4caf50}.quiz-mode{text-align:center;animation:fadeIn .3s ease}.sound-prompt{background:#fff;border-radius:var(--radius);padding:1.5rem;margin:1rem 0;border:2.5px solid #E8E0F0;box-shadow:var(--card-shadow)}.sound-emoji{font-size:3rem;display:block}.sound-text{font-size:1.5rem;font-weight:800;margin-top:.5rem}.animal-quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.animal-quiz-option{background:#fff;border:2.5px solid #E8E0F0;border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:var(--card-shadow)}.animal-quiz-option:hover:not(:disabled){transform:scale(1.03)}.animal-quiz-option.correct{background:#e8f5e9;border-color:#4caf50}.animal-quiz-option.wrong{background:#ffebee;border-color:#f44336}.aq-emoji{font-size:2.5rem}.aq-label{font-size:1rem;font-weight:700}.word-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.625rem}.word-card{background:#fff;border:2.5px solid var(--card-color, #ddd);border-radius:var(--radius);padding:1rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;transition:all .2s;box-shadow:var(--card-shadow);font-family:inherit}.word-card:hover,.word-card:active{transform:scale(1.05)}.word-emoji{font-size:2rem}.word-label{font-size:.85rem;font-weight:700}.category-tabs{display:flex;gap:.35rem;overflow-x:auto;padding-bottom:.5rem;margin-bottom:.75rem;-webkit-overflow-scrolling:touch}.cat-tab{background:#fff;border:2px solid #E8E0F0;border-radius:var(--radius-sm);padding:.4rem .85rem;font-size:.8rem;font-weight:700;font-family:inherit;cursor:pointer;color:var(--text);white-space:nowrap;transition:all .15s}.cat-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.flashcard-view{text-align:center;animation:fadeIn .3s ease}.flashcard-progress{font-weight:700;color:var(--text-light);margin-bottom:.75rem}.flashcard{background:#fff;border:3px solid var(--card-color, #ddd);border-radius:var(--radius);padding:2.5rem 2rem;margin:.75rem auto;max-width:300px;box-shadow:var(--card-shadow);animation:pop .3s ease}.flashcard-emoji{font-size:4rem;margin-bottom:.5rem}.flashcard-word{font-size:2rem;font-weight:900}.flashcard-label{font-size:1.2rem;color:var(--text-light);font-weight:600;margin-top:.25rem}.song-list{display:flex;flex-direction:column;gap:.75rem}.song-card{background:#fff;border:2.5px solid var(--card-color, #ddd);border-radius:var(--radius);padding:1rem 1.25rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s;box-shadow:var(--card-shadow);font-family:inherit}.song-card:hover,.song-card:active{transform:scale(1.02)}.song-card-emoji{font-size:2rem}.song-card-title{font-size:1.1rem;font-weight:800;flex:1}.song-card-lines{font-size:.8rem;color:var(--text-light);font-weight:600}.song-player{text-align:center;animation:fadeIn .3s ease}.song-display{background:#fff;border:3px solid var(--card-color, #ddd);border-radius:var(--radius);padding:2rem 1.5rem;margin:.75rem 0;box-shadow:var(--card-shadow)}.song-emoji{font-size:3rem;margin-bottom:.5rem}.song-display h3{font-size:1.3rem;font-weight:800;margin-bottom:1rem}.lyric-line{font-size:1.4rem;font-weight:700;color:var(--card-color);min-height:2rem;margin:1rem 0}.lyric-progress{display:flex;gap:6px;justify-content:center;margin-top:1rem}.lyric-dot{width:10px;height:10px;border-radius:50%;background:#e8e0f0;transition:all .3s}.lyric-dot.active{background:var(--card-color, #667eea);transform:scale(1.2)}.parent-screen{padding-bottom:3rem}.parent-stats{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem}.stat-card{background:#fff;border:2.5px solid #E8E0F0;border-radius:var(--radius);padding:1.25rem;text-align:center;box-shadow:var(--card-shadow)}.stat-emoji{font-size:2rem;margin-bottom:.25rem}.stat-number{font-size:2rem;font-weight:900;color:#667eea}.stat-label{font-size:.85rem;color:var(--text-light);font-weight:600}.progress-list{margin-bottom:1.5rem}.progress-list h3{font-size:1.1rem;font-weight:800;margin-bottom:.75rem}.progress-item{margin-bottom:.75rem}.progress-label{display:flex;justify-content:space-between;font-size:.9rem;font-weight:700;margin-bottom:.35rem}.progress-bar{height:12px;background:#f0ebf5;border-radius:6px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;transition:width .5s ease;min-width:2%}.parent-tips{background:#fff;border:2.5px solid #E8E0F0;border-radius:var(--radius);padding:1.25rem;box-shadow:var(--card-shadow)}.parent-tips h3{font-size:1.1rem;font-weight:800;margin-bottom:.75rem}.parent-tips ul{list-style:none;padding:0}.parent-tips li{font-size:.9rem;color:var(--text-light);font-weight:600;padding:.4rem 0 .4rem 1.25rem;position:relative}.parent-tips li:before{content:"•";position:absolute;left:0;color:#667eea;font-weight:900}@media(max-width:400px){.letter-grid{grid-template-columns:repeat(3,1fr)}.animal-grid,.word-grid{grid-template-columns:repeat(2,1fr)}.home-title{font-size:1.8rem}.category-emoji{font-size:2rem}}
