@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap";:root{--font-kids:"Nunito", "Nunito Fallback", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--primary-blue:#3e8bff;--primary-dark:#1e50a2;--primary-light:#e8f1ff;--bg-gradient:linear-gradient(135deg, #f2f7ff 0%, #e3edfc 100%);--card-bg:#fff;--text-dark:#1f2d5a;--text-muted:#798eaa;--yellow-star:#ffd026;--yellow-light:#fff9e6;--orange-accent:#ff7b39;--orange-light:#fff0e8;--green-success:#22c55e;--green-light:#dcfce7;--purple-accent:#8b5cf6;--purple-light:#f3e8ff;--pink-accent:#ec4899;--pink-light:#fce7f3;--teal-accent:#06b6d4;--teal-light:#ecfeff;--radius-sm:8px;--radius-md:14px;--radius-card:20px;--radius-banner:24px;--radius-pill:50px;--shadow-soft:0 10px 30px #1e50a20d;--shadow-card:0 8px 20px #1e50a20a;--shadow-hover:0 16px 36px #1e50a21f;--transition-fast:.2s ease;--transition-normal:.3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;font-family:var(--font-kids);-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{background:var(--bg-gradient);color:var(--text-dark);min-height:100vh;font-size:16px;overflow-x:hidden}.app-container{min-height:100vh;display:flex;position:relative}.sidebar{background-color:var(--primary-dark);color:#fff;z-index:100;width:260px;height:calc(100vh - 32px);transition:var(--transition-normal);border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;padding:24px 16px;display:flex;position:fixed;top:16px;bottom:16px;left:16px;box-shadow:0 12px 36px #00000026}.logo-container{align-items:center;gap:12px;margin-bottom:30px;padding-left:8px;display:flex}.logo-icon{color:var(--yellow-star);font-size:28px;animation:3s ease-in-out infinite float}.logo-text h2{letter-spacing:.5px;font-size:22px;font-weight:900}.logo-text p{opacity:.8;text-transform:uppercase;font-size:11px;font-weight:700}.sidebar-menu{flex-direction:column;flex-grow:1;gap:6px;padding-right:4px;list-style:none;display:flex;overflow-y:auto}.sidebar-menu::-webkit-scrollbar{width:4px}.sidebar-menu::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.menu-item{border-radius:var(--radius-card);color:#ffffffd9;cursor:pointer;transition:var(--transition-fast);align-items:center;gap:12px;padding:12px 16px;font-weight:700;text-decoration:none;display:flex}.menu-item:hover{color:#fff;background-color:#ffffff1a;transform:translate(4px)}.menu-item.active{color:var(--primary-dark);background-color:#fff}.menu-item.special-grade3{border:1.5px dashed var(--yellow-star);color:var(--yellow-star);background-color:#ffd0261f;font-weight:850}.menu-item.special-grade3:hover{color:var(--yellow-star);background-color:#ffd02640}.menu-item.special-grade3.active{background-color:var(--yellow-star);color:var(--primary-dark);border-style:solid}#subgroup-grades{border-radius:var(--radius-card);margin-top:6px;margin-bottom:6px;transition:all .2s ease-in-out;background-color:var(--orange-light)!important;color:var(--orange-accent)!important;border:2px dashed var(--orange-accent)!important}#subgroup-grades:hover{transform:translate(4px)scale(1.02);color:var(--orange-accent)!important;background-color:#ff7b392e!important}#subgroup-grades.active{background-color:var(--orange-accent)!important;color:#fff!important;border-style:solid!important}#subgroup-grades.active i{color:#fff!important}.menu-subgroup-header{border-radius:var(--radius-card);color:#ffffffd9;cursor:pointer;transition:var(--transition-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:700;display:flex}.menu-subgroup-header:hover{color:#fff;background-color:#ffffff14;transform:translate(4px)}.menu-subgroup-header .sub-arrow-icon{margin-left:auto;font-size:10px;transition:transform .2s}.sub-grade-item{margin-bottom:6px;border:2px dashed var(--yellow-star)!important;color:var(--yellow-star)!important;background-color:#ffd0260d!important;border-radius:16px!important;padding:10px 14px!important;font-weight:900!important}.sub-grade-item:hover{transform:translate(4px);background-color:#ffd02626!important}.sub-grade-item.active{background-color:var(--yellow-star)!important;color:var(--primary-dark)!important;border-style:solid!important}.sub-grade-item.active i{color:var(--primary-dark)!important}.sidebar-group-item{flex-direction:column;list-style:none;display:flex}.menu-group-header{border-radius:var(--radius-card);color:#ffffffbf;cursor:pointer;transition:var(--transition-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:12px 16px;font-weight:800;display:flex}.menu-group-header:hover{color:#fff;background-color:#ffffff14}.menu-group-header.expanded{color:#fff;background-color:#ffffff0a}.menu-group-items{visibility:hidden;grid-template-rows:0fr;padding-left:12px;list-style:none;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1),visibility .3s;display:grid;overflow:hidden}.menu-group-items.expanded{visibility:visible;grid-template-rows:1fr}.menu-group-inner{border-left:2px dashed #ffffff26;flex-direction:column;gap:6px;min-height:0;margin-top:4px;margin-bottom:4px;padding-left:12px;display:flex}.arrow-icon{opacity:.6;margin-left:auto;font-size:10px;transition:transform .3s}.menu-group-header.expanded .arrow-icon{opacity:.9;transform:rotate(-180deg)}.menu-icon{justify-content:center;align-items:center;font-size:20px;display:flex}.mascot-container{border-radius:var(--radius-card);background:#ffffff1f;border:1px dashed #ffffff40;align-items:center;gap:12px;margin-top:auto;padding:12px;display:flex;position:relative;overflow:visible}.mascot-dino{object-fit:contain;width:50px;height:50px;animation:2s ease-in-out infinite bounceMini}.mascot-bubble{flex:1}.mascot-bubble h4{color:var(--yellow-star);margin-bottom:2px;font-size:13px;font-weight:800}.mascot-bubble p{opacity:.9;font-size:11px;line-height:1.3}.main-content{min-height:100vh;transition:var(--transition-normal);flex-direction:column;flex:1;gap:24px;min-width:0;margin-left:292px;padding:24px 30px;display:flex}#page-container{flex-direction:column;gap:24px;width:100%;min-width:0;display:flex}.right-panel{background-color:#0000;flex-direction:column;flex-shrink:0;gap:24px;width:320px;padding:24px;display:flex}.right-panel .kid-card{border:2.5px solid var(--primary-light)}.right-panel .quests-card{border:2.5px solid #8b5cf659}.right-panel .leaderboard-card{border:2.5px solid #ffd02673}@media (width>=768px){.right-panel{scrollbar-width:thin;scrollbar-color:#1e50a226 transparent;height:100vh;position:sticky;top:0;overflow-y:auto}.right-panel::-webkit-scrollbar{width:6px}.right-panel::-webkit-scrollbar-thumb{background:#1e50a226;border-radius:10px;transition:background .2s}.right-panel::-webkit-scrollbar-thumb:hover{background:#1e50a259}.right-panel::-webkit-scrollbar-track{background:0 0}}.study-widget-glass{-webkit-backdrop-filter:blur(14px)saturate(180%);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s;background-image:linear-gradient(#e8f1ffd9, #e8f1ffd9), linear-gradient(135deg, var(--primary-blue) 0%, var(--primary-dark) 100%)!important;border-radius:var(--radius-card)!important;background-origin:padding-box,border-box!important;background-clip:padding-box,border-box!important;border:3.5px solid #0000!important;box-shadow:0 16px 36px #1e50a20f!important}.timer-preset-btn,#timer-custom-btn{transition:all .2s cubic-bezier(.4,0,.2,1)!important}.timer-preset-btn:hover,#timer-custom-btn:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 4px 8px #1e50a226}.timer-preset-btn:active,#timer-custom-btn:active{transform:translateY(0)scale(.95)}#widget-timer-play-btn,#widget-timer-reset-btn,#widget-music-play-btn{transition:all .3s cubic-bezier(.4,0,.2,1)!important}#widget-timer-play-btn:hover,#widget-timer-reset-btn:hover,#widget-music-play-btn:hover{transform:scale(1.15)rotate(8deg);box-shadow:0 6px 12px #0000001f}#widget-timer-play-btn:active,#widget-timer-reset-btn:active,#widget-music-play-btn:active{transform:scale(.92)}#widget-music-prev-btn,#widget-music-next-btn{transition:all .2s cubic-bezier(.4,0,.2,1)!important}#widget-music-prev-btn:hover{transform:translate(-4px)scale(1.2)}#widget-music-next-btn:hover{transform:translate(4px)scale(1.2)}#widget-music-prev-btn:active{transform:translate(-2px)scale(.9)}#widget-music-next-btn:active{transform:translate(2px)scale(.9)}@keyframes spinDisc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rotate-animate{transform-origin:50%;animation:4s linear infinite spinDisc;display:inline-block!important}.header-bar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:10px;display:flex}.greeting-section h1{color:var(--text-dark);font-size:28px;font-weight:900}.greeting-section p{color:var(--text-muted);margin-top:4px;font-size:16px;font-weight:600}.stats-badges{align-items:center;gap:12px;display:flex}.stat-badge{background-color:var(--card-bg);border-radius:var(--radius-card);box-shadow:var(--shadow-card);border:2px solid var(--primary-light);align-items:center;gap:8px;padding:8px 16px;font-weight:800;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s;display:flex}.stat-badge:hover{transform:translateY(-4px)scale(1.05);box-shadow:0 10px 24px #1e50a21a}.badge-icon{font-size:20px}.level-progress-mini{background-color:#e2e8f0;border-radius:4px;width:50px;height:6px;margin-top:3px;overflow:hidden}.level-progress-bar{background-color:var(--primary-blue);border-radius:4px;width:70%;height:100%}.avatar-container{cursor:pointer;position:relative}.avatar-img{width:44px;height:44px;box-shadow:var(--shadow-soft);object-fit:cover;transition:var(--transition-fast);border:3px solid #fff;border-radius:50%}.avatar-img:hover{border-color:var(--primary-blue);transform:scale(1.05)}.kid-card{background-color:var(--card-bg);border-radius:var(--radius-card);box-shadow:var(--shadow-card);border:none;padding:24px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s,background-color .3s;position:relative;overflow:hidden}.kid-card:hover{transform:translateY(-6px)scale(1.02);box-shadow:0 16px 36px #1e50a21f}.hero-banner{border-radius:var(--radius-banner);color:#fff;background:linear-gradient(135deg,#7cd3ff 0%,#3e8bff 100%);justify-content:space-between;align-items:center;min-height:200px;padding:35px 40px;display:flex;position:relative;overflow:hidden;box-shadow:0 15px 35px #3e8bff40}.hero-content{z-index:2;max-width:60%}.hero-content h2{text-shadow:0 2px 4px #0000001a;margin-bottom:10px;font-size:32px;font-weight:900}.hero-content p{opacity:.95;margin-bottom:20px;font-size:16px;font-weight:700;line-height:1.4}.hero-btn{background-color:var(--yellow-star);color:var(--text-dark);border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition-fast);border:none;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:800;display:inline-flex;box-shadow:0 6px 15px #ffd0264d}.hero-btn:hover{background-color:#ffe066;transform:scale(1.05);box-shadow:0 8px 20px #ffd02673}.hero-graphics{z-index:1;justify-content:center;align-items:flex-end;width:35%;display:flex;position:absolute;top:0;bottom:0;right:40px}.hero-avatar-boy{object-fit:contain;height:90%;margin-right:-10px;animation:4s ease-in-out infinite wave}.hero-avatar-cat{object-fit:contain;height:60%;animation:4s ease-in-out infinite alternate float}.section-title{color:var(--text-dark);margin-bottom:16px;font-size:20px;font-weight:850}.progress-cards-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.progress-card{justify-content:space-between;align-items:center;gap:15px;display:flex}.progress-info{flex:1}.progress-label{color:var(--text-muted);margin-bottom:6px;font-size:14px;font-weight:700}.progress-val{color:var(--text-dark);margin-bottom:10px;font-size:22px;font-weight:900}.progress-bar-container{border-radius:var(--radius-pill);background-color:#ebf2fa;height:10px;position:relative;overflow:hidden}.progress-bar-fill{border-radius:var(--radius-pill);height:100%;transition:width 1s ease-out}.progress-icon-box{border-radius:var(--radius-card);flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;font-size:22px;display:flex}.carousel-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.unit-card{cursor:pointer}.unit-tag{color:#fff;text-transform:uppercase;border-radius:6px;margin-bottom:8px;padding:4px 8px;font-size:11px;font-weight:850;display:inline-block}.unit-name{color:var(--text-dark);-webkit-line-clamp:2;-webkit-box-orient:vertical;height:40px;margin-bottom:12px;font-size:15px;font-weight:800;display:-webkit-box;overflow:hidden}.unit-stats{color:var(--text-muted);justify-content:space-between;margin-bottom:6px;font-size:12px;font-weight:700;display:flex}.explore-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.explore-card{cursor:pointer;align-items:center;gap:15px;padding:16px 20px;display:flex}.explore-icon{font-size:28px}.explore-name{margin-bottom:2px;font-size:16px;font-weight:850}.explore-desc{color:var(--text-muted);font-size:12px;font-weight:600}.quests-card{background-color:#f0f6ff;flex-direction:column;gap:16px;display:flex}.quest-item{border-radius:var(--radius-md);background-color:#fff;border:none;align-items:center;gap:12px;padding:10px 14px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s;display:flex;box-shadow:0 4px 10px #1e50a205}.quest-item:hover{transform:translateY(-3px)scale(1.025);box-shadow:0 8px 16px #1e50a20f}.quest-icon{justify-content:center;align-items:center;width:24px;height:24px;font-size:16px;display:flex}.quest-detail{flex:1}.quest-text{color:var(--text-dark);font-size:13px;font-weight:750}.quest-progress-text{color:var(--text-muted);margin-top:2px;font-size:11px;font-weight:700}.quest-reward{color:var(--orange-accent);background-color:var(--orange-light);border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:850;display:flex}.quest-claim-btn{background:linear-gradient(135deg, var(--green-success) 0%, #15803d 100%);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:850;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 10px #22c55e33}.quest-claim-btn:hover{transform:scale(1.05);box-shadow:0 6px 14px #22c55e59}.quest-claim-btn:active{transform:scale(.95)}.quest-claimed-badge{color:#03543f;white-space:nowrap;background-color:#def7ec;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:850}.claim-reward-btn{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--yellow-star) 0%, var(--orange-accent) 100%);color:#fff;cursor:pointer;width:100%;transition:var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:15px;font-weight:850;display:flex;box-shadow:0 6px 16px #ff7b3933}.claim-reward-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 8px 20px #ff7b3959}.claim-reward-btn:disabled{color:#94a3b8;cursor:not-allowed;box-shadow:none;background:#e2e8f0}.leaderboard-card{background-color:#fffdf0;flex-direction:column;gap:12px;display:flex}.leaderboard-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.leaderboard-filter{color:var(--text-dark);cursor:pointer;background-color:#fff;border:none;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:800;box-shadow:0 2px 6px #00000005}.leaderboard-list{flex-direction:column;gap:8px;display:flex}.leaderboard-item{border-radius:var(--radius-md);background-color:#fff;border:none;align-items:center;gap:12px;padding:8px 12px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s;display:flex;box-shadow:0 4px 10px #b4530905}.leaderboard-item:hover{transform:translateY(-3px)scale(1.025);box-shadow:0 8px 16px #b453090f}.leaderboard-item.highlight{background-color:var(--primary-light);border:none}.rank-number{text-align:center;width:16px;color:var(--text-muted);font-size:14px;font-weight:900}.rank-1 .rank-number{color:#eab308;font-size:16px}.rank-2 .rank-number{color:var(--primary-blue)}.rank-3 .rank-number{color:#b45309}.rank-avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.rank-name{color:var(--text-dark);flex:1;font-size:13px;font-weight:750}.rank-score{color:var(--text-dark);align-items:center;gap:4px;font-size:13px;font-weight:850;display:flex}.rank-score-icon{color:var(--yellow-star);font-size:14px}.view-leaderboard-btn{background-color:var(--primary-light);width:100%;color:var(--primary-blue);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);text-align:center;border:none;padding:10px;font-size:13px;font-weight:850}.view-leaderboard-btn:hover{background-color:var(--primary-blue);color:#fff}.vocab-category-bar{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#1e50a240 #1e50a20a;align-items:center;gap:10px;width:100%;padding-bottom:12px;display:flex;overflow-x:auto}.vocab-category-bar::-webkit-scrollbar{height:8px}.vocab-category-bar::-webkit-scrollbar-track{background:#1e50a20a;border-radius:4px}.vocab-category-bar::-webkit-scrollbar-thumb{background:#1e50a240 padding-box padding-box;border:1.5px solid #0000;border-radius:4px}.vocab-category-bar::-webkit-scrollbar-thumb:hover{background-color:#1e50a266}.category-pill-btn{border-radius:var(--radius-pill);background-color:var(--card-bg);color:var(--text-dark);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-card);transition:var(--transition-fast);border:1px solid #1e50a20a;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:800;display:flex}.category-pill-btn:hover{box-shadow:var(--shadow-soft);transform:translateY(-2px)}.category-pill-btn.active{background-color:var(--primary-blue);color:#fff;box-shadow:0 6px 15px #3e8bff33}.vocab-topic-header{background-color:var(--card-bg);border-radius:var(--radius-card);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.vocab-topic-title{align-items:center;gap:12px;display:flex}.vocab-topic-title h3{color:var(--text-dark);font-size:18px;font-weight:900}.vocab-count-badge{background-color:var(--primary-light);color:var(--primary-blue);border-radius:8px;padding:4px 8px;font-size:12px;font-weight:850}.vocab-practice-btn{background-color:var(--purple-accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);border:none;padding:8px 16px;font-size:13px;font-weight:850;box-shadow:0 4px 10px #8b5cf633}.vocab-practice-btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px #8b5cf64d}.vocab-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.vocab-card{text-align:center;flex-direction:column;align-items:center;padding:20px;display:flex;position:relative}.vocab-card-index{background-color:var(--primary-light);width:22px;height:22px;color:var(--primary-blue);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:900;display:flex;position:absolute;top:14px;left:14px}.vocab-card-star{color:var(--yellow-star);font-size:16px;position:absolute;top:14px;right:14px}.vocab-card-icon{transition:var(--transition-fast);filter:drop-shadow(0 8px 8px #0000000f);margin-top:10px;margin-bottom:12px;font-size:48px}.vocab-card:hover .vocab-card-icon{transform:scale(1.15)rotate(3deg)}.vocab-card-word{color:var(--text-dark);margin-bottom:2px;font-size:18px;font-weight:850}.vocab-card-ipa{color:var(--text-muted);margin-bottom:4px;font-size:13px;font-weight:700}.vocab-card-meaning{color:#475569;margin-bottom:15px;font-size:14px;font-weight:800}.vocab-speaker-btn{background-color:var(--primary-blue);color:#fff;cursor:pointer;width:38px;height:38px;transition:var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex;box-shadow:0 4px 10px #3e8bff40}.vocab-speaker-btn:hover{background-color:var(--primary-dark);transform:scale(1.1)}.vocab-speaker-btn.playing{animation:.6s infinite alternate pulseSpeaker}.vocab-progress-card{border:2.5px solid var(--primary-blue);background-color:#f8fafc;flex-direction:column;align-items:center;gap:16px;display:flex}.progress-donut-container{justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative}.progress-donut-text{color:var(--primary-blue);font-size:22px;font-weight:900;position:absolute}.progress-stats-list{flex-direction:column;gap:10px;width:100%;margin-top:10px;display:flex}.progress-stat-row{justify-content:space-between;font-size:13px;font-weight:750;display:flex}.progress-stat-row span:last-child{font-weight:850}.bottom-congrats-banner{background:linear-gradient(135deg, var(--yellow-light) 0%, #fff3c4 100%);border-radius:var(--radius-card);border:1px solid #ffd02633;justify-content:space-between;align-items:center;margin-top:10px;padding:16px 30px;display:flex}.congrats-content{align-items:center;gap:15px;display:flex}.congrats-star-mascot{font-size:32px;animation:1.5s ease-in-out infinite alternate bounceMini}.congrats-text h4{color:var(--text-dark);margin-bottom:2px;font-size:15px;font-weight:850}.congrats-text p{color:var(--text-muted);font-size:13px;font-weight:700}.congrats-rewards{align-items:center;gap:12px;display:flex}.reward-tag{border-radius:var(--radius-md);align-items:center;gap:5px;padding:6px 12px;font-size:13px;font-weight:850;display:flex}.reward-tag.points{background-color:var(--yellow-light);color:#b45309}.reward-tag.diamond{background-color:var(--purple-light);color:var(--purple-accent)}.congrats-btn{background:linear-gradient(135deg, var(--primary-blue) 0%, var(--primary-dark) 100%);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);border:none;padding:10px 20px;font-size:13px;font-weight:850;box-shadow:0 4px 12px #3e8bff40}.congrats-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3e8bff59}.bottom-nav{z-index:1000;background-color:#fff;border-top-left-radius:16px;border-top-right-radius:16px;justify-content:space-around;align-items:center;height:64px;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 15px #0000000d}.bottom-nav-item{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:800;text-decoration:none;display:flex}.bottom-nav-item.active{color:var(--primary-blue)}.bottom-nav-icon{font-size:20px}@keyframes wobble{0%,to{transform:rotate(0)}15%{transform:rotate(-5deg)}30%{transform:rotate(4deg)}45%{transform:rotate(-4deg)}60%{transform:rotate(3deg)}75%{transform:rotate(-2deg)}}.mascot-wobble{transform-origin:bottom;animation:2.5s ease-in-out infinite wobble;display:inline-block}@keyframes float{0%{transform:translateY(0)}to{transform:translateY(-8px)}}@keyframes bounceMini{0%{transform:translateY(0)}to{transform:translateY(-6px)}}@keyframes bounceMiniInverse{0%{transform:translateY(0)}to{transform:translateY(6px)}}@keyframes wave{0%,to{transform:rotate(0)}50%{transform:rotate(6deg)}}@keyframes pulseSpeaker{0%{transform:scale(1);box-shadow:0 0 #3e8bff66}to{transform:scale(1.15);box-shadow:0 0 12px #3e8bffb3}}.click-particle{pointer-events:none;will-change:transform, opacity;animation:.6s cubic-bezier(.1,.8,.3,1) forwards particle-pop;position:absolute}@keyframes particle-pop{0%{opacity:1;transform:translate(-50%,-50%)scale(1)translate(0)}to{transform:translate(-50%, -50%) scale(0) translate(var(--tx), var(--ty));opacity:0}}@media (width<=1599px){.right-panel{width:280px;padding:16px}.main-content{padding:20px}.progress-cards-grid{gap:12px}.vocab-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=768px) and (width<=1024px){.app-container{flex-wrap:wrap}.sidebar{width:80px;height:calc(100vh - 32px);padding:24px 8px;top:16px;bottom:16px;left:16px}.logo-text,.mascot-container,.menu-item .menu-text{display:none}.menu-item{justify-content:center;padding:12px}.menu-group-header .menu-text,.menu-group-header .arrow-icon{display:none}.menu-group-header{justify-content:center;padding:12px}.menu-group-items{padding-left:0}.menu-group-inner{border-left:none;align-items:center;gap:8px;margin-top:6px;margin-bottom:6px;padding-left:0}.main-content{flex:none;width:calc(100% - 112px);margin-left:112px;padding:20px}.right-panel{flex-flow:wrap;gap:16px;width:calc(100% - 112px);margin-left:112px;padding:20px;height:auto!important;position:static!important;overflow:visible!important}.right-panel>div{flex:1;min-width:280px}.progress-cards-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.progress-cards-grid .progress-card:nth-child(3){grid-column:span 2}.carousel-grid,.explore-grid,.vocab-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=767px){.sidebar{display:none}.bottom-nav{display:flex}.main-content{min-height:auto;margin-left:0;padding:16px 16px 80px}.right-panel{width:100%;margin-left:0;padding:16px 16px 80px}.app-container{flex-direction:column}.kid-card,.progress-card,.unit-card,.explore-card,.vocab-card,.quest-item,.leaderboard-card,.attendance-card,.reports-card{padding:16px!important}.progress-cards-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.progress-cards-grid .progress-card:nth-child(3){grid-column:span 2}.progress-card{gap:8px;padding:12px!important}.progress-icon-box{width:32px!important;height:32px!important;font-size:16px!important}.progress-val{margin-top:6px!important;margin-bottom:6px!important;font-size:16px!important}.progress-label{font-size:11px!important;line-height:1.2!important}.carousel-grid{grid-template-columns:repeat(2,1fr)}.unit-card{padding:12px!important}.unit-card .unit-name{font-size:12.5px!important}.unit-card .unit-tag{padding:2px 6px!important;font-size:9px!important}.explore-grid,.vocab-grid{grid-template-columns:repeat(2,1fr)}.hero-banner{flex-direction:column;align-items:flex-start;gap:16px;min-height:auto;padding:24px}.hero-content{max-width:100%}.hero-graphics{display:none}.header-bar{flex-direction:column;align-items:flex-start;gap:12px}.stats-badges{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;display:flex}.stat-badge{padding:6px 12px!important;font-size:12px!important}.vocab-topic-header{flex-direction:column;align-items:flex-start;gap:12px}.vocab-practice-btn{text-align:center;width:100%}.bottom-congrats-banner{flex-direction:column;align-items:flex-start;gap:12px}.congrats-rewards{justify-content:space-between;width:100%}}@media (width<=480px){.carousel-grid,.explore-grid{grid-template-columns:repeat(2,1fr);gap:8px}.explore-card{gap:6px;padding:10px 8px!important}.explore-icon{font-size:22px}.explore-name{font-size:12px}.explore-desc{display:none}.vocab-grid{grid-template-columns:repeat(2,1fr);gap:8px}}@keyframes shakeError{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.shake-error{animation:.4s ease-in-out shakeError}.listening-option-card{text-align:center;cursor:pointer;flex-direction:column;align-items:center;padding:24px;display:flex;position:relative}.listening-option-card .option-index{background-color:var(--primary-light);width:24px;height:24px;color:var(--primary-blue);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:flex;position:absolute;top:14px;left:14px}.listening-option-card .option-icon{margin-top:8px;margin-bottom:12px;font-size:54px;transition:transform .2s}.listening-option-card:hover .option-icon{transform:scale(1.15)rotate(2deg)}.listening-option-card .option-word-vietnamese{color:var(--text-dark);font-size:14px;font-weight:800}.listening-play-audio-btn{background:var(--pink-accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:32px;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s;display:inline-flex;box-shadow:0 8px 20px #ec48994d}.listening-play-audio-btn:hover{transform:scale(1.1);box-shadow:0 10px 24px #ec489973}.listening-play-audio-btn.pulse-active{animation:.6s infinite alternate pulseSpeaker}.memory-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.memory-card-wrapper{aspect-ratio:1/1.15;perspective:1000px;cursor:pointer}.memory-card{text-align:center;width:100%;height:100%;transform-style:preserve-3d;border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:transform .6s cubic-bezier(.175,.885,.32,1.2);position:relative}.memory-card-wrapper:hover .memory-card{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.memory-card-wrapper.flipped:hover .memory-card{transform:rotateY(180deg)translateY(-4px)}.memory-card-wrapper.flipped .memory-card{transform:rotateY(180deg)}.memory-card-face{backface-visibility:hidden;border-radius:var(--radius-card);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:100%;height:100%;padding:16px;display:flex;position:absolute}.memory-card-face.back{color:var(--pink-accent);background:linear-gradient(135deg,#ffe4e6 0%,#fbcfe8 100%)}.memory-card-face.back .back-icon{font-size:36px;animation:1.5s ease-in-out infinite alternate bounceMini}.memory-card-face.front{background-color:#fff;transform:rotateY(180deg)}.memory-card-wrapper.matched .memory-card-face.front{background-color:var(--green-light);border:3px solid var(--green-success)}.memory-card-face.front.text{background-color:var(--primary-light);color:var(--primary-blue)}.memory-card-face.front.emoji{background-color:var(--yellow-light)}.readable-word{cursor:pointer;border-radius:6px;padding:2px 4px;transition:all .15s;display:inline-block}.readable-word:hover{background-color:#00000014;transform:scale(1.05)}.readable-word.highlight-word{transform:scale(1.1);background-color:var(--primary-blue)!important;color:#fff!important}.read-sentence-speaker-btn{background-color:var(--purple-light);width:28px;height:28px;color:var(--purple-accent);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:4px;font-size:12px;transition:transform .2s;display:inline-flex}.read-sentence-speaker-btn:hover{background-color:var(--purple-accent);color:#fff;transform:scale(1.15)}.read-sentence-speaker-btn.playing{animation:.6s infinite alternate pulseSpeaker}.reading-quiz-option-btn{border-radius:var(--radius-md);width:100%;color:var(--text-dark);text-align:left;cursor:pointer;background-color:#fff;border:none;padding:14px 20px;font-size:14px;font-weight:800;transition:transform .2s,background-color .2s;box-shadow:0 4px 10px #00000005}.reading-quiz-option-btn:hover{background-color:#f8fafc;transform:translateY(-2px);box-shadow:0 6px 15px #0000000a}.reading-quiz-option-btn.correct-opt{box-shadow:0 6px 15px #22c55e33;background-color:var(--green-success)!important;color:#fff!important}.reading-quiz-option-btn.incorrect-opt{box-shadow:0 6px 15px #ec489933;background-color:var(--pink-accent)!important;color:#fff!important}.report-chart-container{border-radius:var(--radius-card);background-color:#f8fafc;justify-content:space-between;align-items:flex-end;height:220px;padding:20px 10px 10px;display:flex}.report-bar-wrapper{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.report-bar-fill{cursor:pointer;background:linear-gradient(#a5b4fc 0%,#6366f1 100%);border-top-left-radius:8px;border-top-right-radius:8px;width:32px;transition:height .8s cubic-bezier(.175,.885,.32,1.1)}.report-bar-fill.active{background:linear-gradient(180deg, #ff8a8a 0%, var(--pink-accent) 100%)}.report-bar-wrapper:hover .report-bar-fill{filter:brightness(1.05);transform:scaleX(1.1)}.report-bar-tooltip{color:var(--text-dark);box-shadow:var(--shadow-soft);opacity:0;pointer-events:none;white-space:nowrap;background-color:#fff;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:850;transition:opacity .2s,bottom .2s;position:absolute;bottom:calc(100% - 10px)}.report-bar-wrapper:hover .report-bar-tooltip{opacity:1;bottom:calc(100% + 5px)}.report-bar-day{color:var(--text-muted);margin-top:10px;font-size:12px;font-weight:800}.report-badges-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.report-badge-card{border-radius:var(--radius-card);align-items:center;gap:15px;padding:16px;transition:transform .2s;display:flex}.report-badge-card:hover{transform:translateY(-3px)}.report-badge-card.unlocked{background-color:var(--green-light)}.report-badge-card.locked{opacity:.65;background-color:#f1f5f9}.badge-card-icon{font-size:32px}.badge-card-name{color:var(--text-dark);font-size:14px;font-weight:850}.badge-card-desc{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:650}.badge-card-status{border-radius:6px;margin-left:auto;padding:4px 8px;font-size:11px;font-weight:850}.unlocked .badge-card-status{color:var(--green-success);background-color:#fff}.locked .badge-card-status{color:#94a3b8;background-color:#e2e8f0}@media (width<=767px){.memory-grid{grid-template-columns:repeat(3,1fr)}.report-badges-grid{grid-template-columns:1fr}.report-bar-fill{width:24px}.header-avatar-container{display:none!important}#logout-btn{border-radius:8px!important;padding:6px 12px!important;font-size:11px!important}.stats-badges{justify-content:space-between;width:100%;flex-wrap:nowrap!important;gap:6px!important}.stat-badge{gap:4px!important;padding:6px 10px!important;font-size:12px!important}.stat-badge .badge-icon{font-size:14px!important}}.quote-item-card{transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s}.quote-item-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)scale(1.02)}.quote-item-card:active{transform:scale(.98)}.category-pill-btn{color:var(--text-dark);cursor:pointer;-webkit-user-select:none;user-select:none;background-color:#f8fafc;border:2px solid #e2e8f0;border-radius:20px;padding:8px 16px;font-family:Nunito,sans-serif;font-size:13.5px;font-weight:800;transition:all .2s}.category-pill-btn:hover{border-color:var(--primary-blue);color:var(--primary-blue);background-color:#3e8bff14}.category-pill-btn.active{background-color:var(--primary-blue);border-color:var(--primary-blue);color:#fff;box-shadow:0 4px 10px #3e8bff4d}#quotes-grid::-webkit-scrollbar{width:6px}#quotes-grid::-webkit-scrollbar-track{background:#00000008;border-radius:10px}#quotes-grid::-webkit-scrollbar-thumb{background:#00000026;border-radius:10px}#quotes-grid::-webkit-scrollbar-thumb:hover{background:#00000040}.hero-graphics img{animation:4s ease-in-out infinite floatMascot}@keyframes floatMascot{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-12px)rotate(1.5deg)}}.wiggle-animate{animation:.6s iconWiggle;display:inline-block}@keyframes iconWiggle{0%{transform:rotate(0)scale(1)}15%{transform:rotate(-15deg)scale(1.25)}30%{transform:rotate(10deg)scale(1.25)}45%{transform:rotate(-10deg)scale(1.25)}60%{transform:rotate(5deg)scale(1.15)}75%{transform:rotate(-5deg)scale(1.15)}to{transform:rotate(0)scale(1)}}.study-widget-glass:hover{transform:translateY(-4px);box-shadow:0 20px 48px #1e50a21f!important}.rotate-animate{animation:5s linear infinite spinDisc;display:inline-block}.grade-tab-btn{transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.grade-tab-btn:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 6px 12px #3e8bff26!important}.grade-tab-btn:active{transform:translateY(0)scale(.98)}.timer-preset-btn{transition:all .2s}.timer-preset-btn:hover{transform:scale(1.05);background-color:var(--primary-light)!important;color:var(--primary-blue)!important}.edit-student-btn:hover,.delete-unit-btn:hover{transform:scale(1.05)!important}.mascot-wiggle-static{transform-origin:bottom;animation:3s ease-in-out infinite mascotWiggleStatic;display:inline-block;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important}@keyframes mascotWiggleStatic{0%,to{transform:rotate(0)scale(1)}25%{transform:rotate(-2deg)scale(1.01)}50%{transform:rotate(0)scale(1)}75%{transform:rotate(2deg)scale(1.01)}}.play-container{flex-direction:column;align-items:center;gap:20px;width:100%;max-width:680px;margin:0 auto;padding:10px 0;display:flex}.flashcard-wrapper{perspective:1000px;cursor:pointer;width:100%;max-width:420px;height:300px;margin:20px 0}.flashcard-card,.flashcard-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.flashcard-card.flipped,.flashcard-card-inner.flipped{transform:rotateY(180deg)}.flashcard-face{backface-visibility:hidden;border-radius:var(--radius-banner);flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:24px;display:flex;position:absolute;box-shadow:0 12px 30px #0000001a}.flashcard-front{color:var(--text-dark);background:linear-gradient(135deg,#fff5f5 0%,#ffe3e3 100%);border:4.5px dashed #ff8e53}.flashcard-back{color:var(--text-dark);background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border:4.5px dashed #4d96ff;transform:rotateY(180deg)}.flashcard-emoji{filter:drop-shadow(0 4px 6px #0000001a);margin-bottom:12px;font-size:80px}.flashcard-word{letter-spacing:.5px;color:var(--primary-blue);margin-bottom:4px;font-size:32px;font-weight:900}.flashcard-ipa{color:var(--text-muted);margin-bottom:16px;font-size:18px;font-weight:700}.flashcard-btn-speak{cursor:pointer;width:50px;height:50px;box-shadow:var(--shadow-soft);background-color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;transition:transform .2s;display:flex}.flashcard-btn-speak:hover{transform:scale(1.15)rotate(8deg)}.flashcard-meaning{color:#0369a1;margin-bottom:16px;font-size:26px;font-weight:850}.flashcard-example-en{color:var(--text-dark);text-align:center;margin-bottom:6px;font-size:15px;font-weight:750}.flashcard-example-vi{color:var(--text-muted);text-align:center;font-size:13.5px;font-style:italic;font-weight:700}.flashcard-actions{gap:16px;width:100%;max-width:420px;display:flex}.btn-card-action{border-radius:var(--radius-card);color:#fff;cursor:pointer;box-shadow:var(--shadow-soft);border:none;flex:1;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:15px;font-weight:850;transition:transform .2s,box-shadow .2s;display:flex}.btn-card-action:hover{transform:translateY(-3px)scale(1.03)}.btn-card-action:active{transform:translateY(0)scale(.97)}.btn-card-need{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);box-shadow:0 4px 12px #ef44444d}.btn-card-learned{background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 4px 12px #10b9814d}.quiz-header{justify-content:space-between;align-items:center;width:100%;margin-bottom:10px;display:flex}.quiz-lives{gap:6px;font-size:24px;display:flex}.quiz-score-badge{background-color:var(--yellow-light);border:2px solid var(--yellow-star);border-radius:var(--radius-pill);color:#854d0e;align-items:center;gap:6px;padding:6px 14px;font-size:14px;font-weight:850;display:flex}.quiz-question-box{border-radius:var(--radius-card);width:100%;box-shadow:var(--shadow-card);text-align:center;background-color:#fffdf5;border:4.5px dashed #ffd93d;padding:24px;position:relative}.quiz-question-title{color:var(--text-dark);margin-bottom:16px;font-size:18px;font-weight:850}.quiz-question-display{flex-direction:column;justify-content:center;align-items:center;min-height:120px;display:flex}.quiz-question-emoji{filter:drop-shadow(0 4px 8px #0000001a);font-size:90px}.quiz-question-text{color:var(--primary-blue);font-size:30px;font-weight:900}.quiz-options-grid{grid-template-columns:repeat(2,1fr);gap:14px;width:100%;margin-top:10px;display:grid}.quiz-option-btn{border-radius:var(--radius-card);color:var(--text-dark);cursor:pointer;box-shadow:var(--shadow-soft);text-align:center;background-color:#fff;border:3.5px dashed #cbd5e1;padding:16px 20px;font-size:16px;font-weight:800;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.quiz-option-btn:hover{border-color:var(--primary-blue);border-style:dashed;transform:translateY(-3px);box-shadow:0 6px 16px #1e50a214}.quiz-option-btn:active{transform:translateY(0)}.quiz-option-btn.correct{color:#065f46;background-color:#ecfdf5;border-color:#10b981}.quiz-option-btn.incorrect{color:#991b1b;background-color:#fef2f2;border-color:#ef4444}.quiz-option-btn.disabled{pointer-events:none;opacity:.6}.quiz-scramble-word-slots{flex-wrap:wrap;justify-content:center;gap:8px;margin:16px 0;display:flex}.quiz-scramble-slot{width:44px;height:48px;color:var(--primary-blue);text-transform:uppercase;background-color:#fffdf5;border:3.5px dashed #ffd93d;border-radius:10px;justify-content:center;align-items:center;font-size:20px;font-weight:900;display:flex}.quiz-scramble-slot.filled{border-style:solid;border-color:var(--primary-blue);background-color:#eff6ff}.quiz-scramble-balloons{flex-wrap:wrap;justify-content:center;gap:12px;margin:20px 0;display:flex}.quiz-scramble-balloon{color:var(--text-dark);cursor:pointer;text-transform:uppercase;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 30% 30%,#ff9a9e 0%,#fecfef 99% 100%);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:900;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:0 4px 10px #0000001a}.quiz-scramble-balloon:hover{transform:translateY(-4px)scale(1.1);box-shadow:0 6px 14px #00000026}.quiz-scramble-balloon.selected{visibility:hidden;opacity:0;pointer-events:none;transform:scale(.5)}.quiz-feedback-panel{border-radius:var(--radius-card);width:100%;box-shadow:var(--shadow-card);background-color:#fff;justify-content:space-between;align-items:center;margin-top:10px;padding:16px 24px;display:none}.quiz-feedback-panel.correct{background:linear-gradient(135deg,#ecfdf5 0%,#d1fae5 100%);border-left:8px solid #10b981}.quiz-feedback-panel.incorrect{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-left:8px solid #ef4444}.quiz-feedback-content{align-items:center;gap:12px;display:flex}.quiz-feedback-mascot{object-fit:contain;width:50px;height:50px}.quiz-feedback-text h4{font-size:15px;font-weight:850}.quiz-feedback-text p{color:var(--text-muted);font-size:13px;font-weight:700}.quiz-feedback-panel.correct h4{color:#065f46}.quiz-feedback-panel.incorrect h4{color:#991b1b}.btn-next-question{background-color:var(--primary-blue);color:#fff;border-radius:var(--radius-pill);cursor:pointer;border:none;align-items:center;gap:6px;padding:12px 24px;font-size:14px;font-weight:850;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #1e50a233}.btn-next-question:hover{transform:scale(1.05);box-shadow:0 6px 16px #1e50a259}.result-card{border-radius:var(--radius-banner);text-align:center;box-shadow:var(--shadow-card);background-color:#fff;border:5px dashed #ff8e53;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:480px;padding:40px 24px;display:flex;position:relative;overflow:hidden}.result-title{margin-bottom:6px;font-size:28px;font-weight:900}.result-title.victory{color:var(--green-success);background:linear-gradient(90deg,#10b981,#059669);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.result-title.gameover{color:#ef4444}.result-stars{justify-content:center;gap:8px;margin:10px 0;font-size:32px;display:flex}.star-bounce{animation:2s ease-in-out infinite alternate float}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.shake-animate{animation:.4s ease-in-out shake}.confetti-container{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.confetti-particle{background-color:pink;border-radius:50%;width:8px;height:8px;animation:3s linear forwards confettiFall;position:absolute}@keyframes confettiFall{0%{opacity:1;transform:translateY(-20px)rotate(0)}to{opacity:0;transform:translateY(400px)rotate(360deg)}}.menu-icon i,.bottom-nav-icon i{font-size:22px;transition:transform .2s}.menu-item:hover .menu-icon i,.menu-group-header:hover .menu-icon i,.bottom-nav-item:hover .bottom-nav-icon i{transform:scale(1.2)rotate(5deg)}.fill-heart{color:#ef4444!important}.empty-heart{color:#94a3b8!important}.gold-star{color:var(--yellow-star,#fbbf24)!important}.speak-btn-interactive{color:#475569;cursor:pointer;background-color:#fff;border:2.5px solid #cbd5e1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;box-shadow:0 4px 6px #0000000d}.speak-btn-interactive:hover,.speak-btn-interactive.active-speak{background-color:var(--primary-blue);border-color:var(--primary-blue);transform:scale(1.15)rotate(-6deg);box-shadow:0 6px 12px #3e8bff40;color:#fff!important}.speak-btn-interactive:active{transform:scale(.95)}.speak-btn-interactive i{color:inherit!important}@keyframes mascot-float{0%{transform:translateY(0)rotate(0)}50%{transform:translateY(-8px)rotate(3deg)}to{transform:translateY(0)rotate(0)}}.hero-mascot-float{animation:3s ease-in-out infinite mascot-float}@keyframes dino-gentle-wiggle{0%,to{transform:rotate(0)scale(1)}25%{transform:rotate(-5deg)scale(1.05)}75%{transform:rotate(5deg)scale(1.05)}}.grade-dino-selector-img{margin:0 auto;animation:1.5s ease-in-out infinite dino-gentle-wiggle;display:block}@keyframes badgeWiggle{0%,to{transform:rotate(0)scale(1)}20%{transform:rotate(-8deg)scale(1.1)}40%{transform:rotate(8deg)scale(1.1)}60%{transform:rotate(-4deg)scale(1)}80%{transform:rotate(4deg)scale(1)}}.badge-wiggling{cursor:pointer;filter:drop-shadow(0 4px 6px #0000001a);transition:transform .2s;animation:2s ease-in-out infinite badgeWiggle}.badge-wiggling:hover{transform:scale(1.25)!important}.roadmap-pathway-wrapper{border-radius:var(--radius-card);background-color:#f8fafc;margin-top:15px;padding:30px 20px;overflow-x:auto;box-shadow:inset 0 2px 8px #00000005}.roadmap-pathway-scroll{box-sizing:border-box;align-items:center;min-height:250px;padding:40px 60px;display:flex;position:relative}.roadmap-pathway-svg{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.roadmap-node-container{z-index:2;cursor:pointer;flex-direction:column;align-items:center;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}.roadmap-node-container:hover{transform:scale(1.15)translateY(-5px)}.roadmap-node-bubble{width:120px;color:var(--text-dark);text-align:center;pointer-events:none;white-space:normal;background:#fff;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;padding:6px 10px;font-size:11px;font-weight:850;line-height:1.3;display:flex;position:absolute;box-shadow:0 4px 10px #0000000f}.roadmap-node-bubble:after{content:"";border:6px solid #0000;position:absolute}.roadmap-node-container.bubble-top .roadmap-node-bubble{bottom:60px}.roadmap-node-container.bubble-top .roadmap-node-bubble:after{border-top-color:#fff;top:100%;left:50%;transform:translate(-50%)}.roadmap-node-container.bubble-bottom .roadmap-node-bubble{top:60px}.roadmap-node-container.bubble-bottom .roadmap-node-bubble:after{border-bottom-color:#fff;bottom:100%;left:50%;transform:translate(-50%)}.roadmap-node-circle{border:3.5px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;transition:all .2s;display:flex;box-shadow:0 4px 12px #0000001a}.roadmap-node-circle.completed{background-color:var(--green-success);color:#fff}.roadmap-node-circle.current{background-color:var(--yellow-star);color:var(--primary-dark);animation:1.5s infinite pulseLight;box-shadow:0 0 15px #ffd02666}.roadmap-node-circle.locked{color:#94a3b8;filter:grayscale();background-color:#cbd5e1}.reports-tab-container{background-color:var(--primary-light);border:2.5px dashed #1e40af40;border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;padding:10px 12px;display:flex}.reports-tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:12px;padding:10px 20px;font-size:13.5px;font-weight:850;transition:all .2s}.reports-tab-btn:hover{color:var(--text-dark);background:#0000000a;transform:translateY(-1px)}.reports-tab-btn.active{background:var(--primary-blue);color:#fff;box-shadow:0 4px 10px #3e8bff40}.reports-tab-btn.tab-overview{background-color:var(--orange-light)!important;color:#9a3412!important;border:2.5px dashed #fed7aa!important}.reports-tab-btn.tab-overview.active{transform:translateY(-1px);background:var(--orange-accent)!important;color:#fff!important;border:2.5px solid var(--orange-accent)!important;box-shadow:0 4px 10px #f9731640!important}.reports-tab-btn.tab-roadmap{background-color:var(--primary-light)!important;color:#1e50a2!important;border:2.5px dashed #bfdbfe!important}.reports-tab-btn.tab-roadmap.active{transform:translateY(-1px);background:var(--primary-blue)!important;color:#fff!important;border:2.5px solid var(--primary-blue)!important;box-shadow:0 4px 10px #3e8bff40!important}.reports-tab-btn.tab-companion{background-color:var(--teal-light)!important;color:#0891b2!important;border:2.5px dashed #cffafe!important}.reports-tab-btn.tab-companion.active{transform:translateY(-1px);background:var(--teal-accent)!important;color:#fff!important;border:2.5px solid var(--teal-accent)!important;box-shadow:0 4px 10px #06b6d440!important}.reports-tab-btn.tab-secrets{background-color:var(--purple-light)!important;color:#5b21b6!important;border:2.5px dashed #e9d5ff!important}.reports-tab-btn.tab-secrets.active{transform:translateY(-1px);background:var(--purple-accent)!important;color:#fff!important;border:2.5px solid var(--purple-accent)!important;box-shadow:0 4px 10px #8b5cf640!important}.vocab-category-bar .category-pill-btn{border-radius:var(--radius-pill);font-weight:800;transition:all .2s;border:2px dashed var(--primary-blue)!important;color:var(--primary-blue)!important;background-color:var(--primary-light)!important;box-shadow:none!important}.vocab-category-bar .category-pill-btn:hover{transform:translateY(-2px);background-color:#3e8bff26!important}.vocab-category-bar .category-pill-btn.active{background-color:var(--primary-blue)!important;color:#fff!important;border-style:solid!important;box-shadow:0 6px 15px #3e8bff40!important}.vocab-category-bar .category-pill-btn[data-grade=grade-1]{border-color:var(--pink-accent)!important;color:var(--pink-accent)!important;background-color:var(--pink-light)!important}.vocab-category-bar .category-pill-btn[data-grade=grade-1]:hover{background-color:#ec489926!important}.vocab-category-bar .category-pill-btn[data-grade=grade-1].active{background-color:var(--pink-accent)!important;color:#fff!important;border-style:solid!important}.vocab-category-bar .category-pill-btn[data-grade=grade-2]{border-color:var(--orange-accent)!important;color:var(--orange-accent)!important;background-color:var(--orange-light)!important}.vocab-category-bar .category-pill-btn[data-grade=grade-2]:hover{background-color:#f9731626!important}.vocab-category-bar .category-pill-btn[data-grade=grade-2].active{background-color:var(--orange-accent)!important;color:#fff!important;border-style:solid!important}.vocab-category-bar .category-pill-btn[data-grade=grade-3-kntt],.vocab-category-bar .category-pill-btn[data-grade=grade-3]{border-color:var(--teal-accent)!important;color:var(--teal-accent)!important;background-color:var(--teal-light)!important}.vocab-category-bar .category-pill-btn[data-grade=grade-3-kntt]:hover,.vocab-category-bar .category-pill-btn[data-grade=grade-3]:hover{background-color:#14b8a626!important}.vocab-category-bar .category-pill-btn[data-grade=grade-3-kntt].active,.vocab-category-bar .category-pill-btn[data-grade=grade-3].active{background-color:var(--teal-accent)!important;color:#fff!important;border-style:solid!important}.vocab-category-bar .category-pill-btn[data-grade=grade-4]{border-color:var(--green-success)!important;color:var(--green-success)!important;background-color:var(--green-light)!important}.vocab-category-bar .category-pill-btn[data-grade=grade-4]:hover{background-color:#22c55e26!important}.vocab-category-bar .category-pill-btn[data-grade=grade-4].active{background-color:var(--green-success)!important;color:#fff!important;border-style:solid!important}.vocab-category-bar .category-pill-btn[data-grade=grade-5]{border-color:var(--purple-accent)!important;color:var(--purple-accent)!important;background-color:var(--purple-light)!important}.vocab-category-bar .category-pill-btn[data-grade=grade-5]:hover{background-color:#8b5cf626!important}.vocab-category-bar .category-pill-btn[data-grade=grade-5].active{background-color:var(--purple-accent)!important;color:#fff!important;border-style:solid!important}.vocab-card-refresh{transition:transform .2s,color .2s}.vocab-card-refresh:hover{transform:scale(1.25)rotate(15deg);color:var(--primary-blue)!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vocab-card-refresh.spinning{pointer-events:none;animation:.8s linear infinite spin;color:var(--primary-blue)!important}.onboarding-grade-card{text-align:center;background:#fff;border-radius:20px;padding:24px 20px;transition:all .3s cubic-bezier(.25,.8,.25,1);position:relative}.onboarding-grade-card:hover{transform:translateY(-8px);box-shadow:0 15px 30px #0000001a}.onboarding-grade-card .grade-icon-wrapper{border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 12px;font-size:28px;display:flex}.onboarding-grade-card .grade-select-btn{background:var(--primary-blue);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:10px 16px;font-weight:850;transition:all .2s;box-shadow:0 4px 10px #3e8bff40}.onboarding-grade-card .grade-select-btn:hover{transform:scale(1.05)}.grade-card-pink{border:3px solid var(--pink-accent);background-color:#fff5f7}.grade-card-pink .grade-icon-wrapper{background-color:var(--pink-light);border:2px solid var(--pink-accent)}.grade-card-pink .grade-select-btn{background:var(--pink-accent);box-shadow:0 4px 10px #ec489940}.grade-card-orange{border:3px solid var(--orange-accent);background-color:#fffbf5}.grade-card-orange .grade-icon-wrapper{background-color:var(--orange-light);border:2px solid var(--orange-accent)}.grade-card-orange .grade-select-btn{background:var(--orange-accent);box-shadow:0 4px 10px #f9731640}.grade-card-teal{border:3px solid var(--teal-accent);background-color:#f0fdfa}.grade-card-teal .grade-icon-wrapper{background-color:var(--teal-light);border:2px solid var(--teal-accent)}.grade-card-teal .grade-select-btn{background:var(--teal-accent);box-shadow:0 4px 10px #14b8a640}.grade-card-green{border:3px solid var(--green-success);background-color:#f0fdf4}.grade-card-green .grade-icon-wrapper{background-color:var(--green-light);border:2px solid var(--green-success)}.grade-card-green .grade-select-btn{background:var(--green-success);box-shadow:0 4px 10px #22c55e40}.grade-card-purple{border:3px solid var(--purple-accent);background-color:#faf5ff}.grade-card-purple .grade-icon-wrapper{background-color:var(--purple-light);border:2px solid var(--purple-accent)}.grade-card-purple .grade-select-btn{background:var(--purple-accent);box-shadow:0 4px 10px #a855f740}
