:root{--font-sans: "Be Vietnam Pro", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Be Vietnam Pro", sans-serif;--font-handwriting: "Be Vietnam Pro", sans-serif;--font-chinese: "Noto Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif;--font-pinyin: "Be Vietnam Pro", "Inter", "Segoe UI", Roboto, sans-serif;--nav-height: 70px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--container-width: 1200px;--transition-fast: .2s ease;--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .6s cubic-bezier(.4, 0, .2, 1)}html{--font-sans: "Be Vietnam Pro", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Be Vietnam Pro", sans-serif;--font-chinese: "Noto Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif;--font-pinyin: "Be Vietnam Pro", "Inter", "Segoe UI", Roboto, sans-serif;--radius-sm: 12px;--radius-md: 18px;--radius-lg: 26px;--radius-xl: 36px;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-glass: #ffffff;--border-glass: #e5e7eb;--border-glass-hover: #58cc02;--text-primary: #2b3a4a;--text-secondary: #52657a;--text-muted: #8b9eb0;--accent-primary: #58cc02;--accent-primary-hover: #46a302;--accent-blue: #1cb0f6;--accent-purple: #ce82ff;--accent-amber: #ffc800;--accent-rose: #ff4b4b;--card-bg-front: #ffffff;--card-bg-back: #eef8ff;--success: #58cc02;--success-bg: #e5f9d3;--warning: #ffb100;--warning-bg: #fff5d6;--danger: #ff4b4b;--danger-bg: #ffe5e5;--shadow-sm: 0 3px 0 #e5e7eb;--shadow-md: 0 5px 0 #d1d5db;--shadow-lg: 0 8px 0 #9ca3af;--shadow-glow: 0 6px 20px rgba(88, 204, 2, .25);--btn-3d-green: 0 4px 0 #46a302;--btn-3d-blue: 0 4px 0 #1899d6;--btn-3d-amber: 0 4px 0 #e5b200;--btn-3d-purple: 0 4px 0 #b45be6;--scrollbar-thumb: #cbd5e1;--scrollbar-track: transparent}html.dark{--bg-primary: #0b0f19;--bg-secondary: #1e293b;--bg-card: #1e293b;--bg-glass: #1e293b;--border-glass: #2b4550;--border-glass-hover: #58cc02;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--card-bg-front: #1e293b;--card-bg-back: #1e293b;--shadow-sm: 0 3px 0 rgba(0,0,0,.2);--shadow-md: 0 5px 0 rgba(0,0,0,.3);--shadow-lg: 0 8px 0 rgba(0,0,0,.4);--shadow-glow: 0 6px 25px rgba(88, 204, 2, .35);--scrollbar-thumb: #2b4550;--scrollbar-track: #131f24}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}button,a,input,select,textarea,.btn,.nb-lesson-check-card,.topic-card,.mini-rad-card{font-family:inherit;touch-action:manipulation}html,body{margin:0;padding:0;width:100%;min-height:100vh;overflow-x:hidden;-webkit-overflow-scrolling:touch}body{font-family:var(--font-sans);background:url(/assets/app_bg_night_v3.png) no-repeat center center fixed / cover!important;color:var(--text-primary);line-height:1.6;transition:background .5s ease-in-out,color var(--transition-normal);padding-bottom:80px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}a{color:inherit;text-decoration:none}.glass-panel{background:var(--bg-glass);border:1.5px solid var(--border-glass);box-shadow:var(--shadow-sm);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.glass-panel:hover{border-color:var(--border-glass-hover);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.hsk-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;letter-spacing:.03em;box-shadow:0 4px 12px #00000026;text-transform:uppercase}.hsk-badge-1{background:var(--hsk-1, linear-gradient(135deg, #10b981, #059669))}.hsk-badge-2{background:var(--hsk-2, linear-gradient(135deg, #06b6d4, #0891b2))}.hsk-badge-3{background:var(--hsk-3, linear-gradient(135deg, #3b82f6, #2563eb))}.hsk-badge-4{background:var(--hsk-4, linear-gradient(135deg, #8b5cf6, #7c3aed))}.hsk-badge-5{background:var(--hsk-5, linear-gradient(135deg, #f59e0b, #d97706))}.hsk-badge-6{background:var(--hsk-6, linear-gradient(135deg, #ef4444, #dc2626))}.navbar{position:sticky;top:0;z-index:100;height:var(--nav-height);background:var(--bg-secondary);border-bottom:1px solid var(--border-glass);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.nav-container{max-width:var(--container-width);margin:0 auto;height:100%;display:flex;justify-content:space-between;align-items:center;padding:0 24px}.nav-brand{display:flex;align-items:center;gap:10px;cursor:pointer}.brand-logo-img{height:52px;width:auto;object-fit:contain;transition:transform var(--transition-fast);filter:drop-shadow(0 0 1px rgba(255,255,255,.4))}html.dark .brand-logo-img{filter:drop-shadow(0 0 2px rgba(255,255,255,.8))}.brand-logo-img:hover{transform:scale(1.03)}.nav-links{display:flex;list-style:none;gap:8px;height:100%;align-items:center}.nav-link{font-weight:500;font-size:.95rem;color:var(--text-secondary);padding:10px 16px;border-radius:var(--radius-sm);display:flex;align-items:center;gap:8px;transition:all var(--transition-fast)}.nav-link:hover,.nav-link.active{color:var(--text-primary);background:#3b82f614}.nav-chevron{font-size:.75rem;transition:transform var(--transition-fast)}.dropdown{position:relative;height:100%;display:flex;align-items:center}.dropdown-menu{position:absolute;top:100%;left:0;background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:200px;padding:8px;opacity:0;transform:translateY(10px);pointer-events:none;transition:all var(--transition-fast);list-style:none}.dropdown:hover .dropdown-menu{opacity:1;transform:translateY(0);pointer-events:auto}.dropdown:hover .nav-chevron{transform:rotate(180deg)}.dropdown-menu li a{display:block;padding:10px 16px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.9rem;font-weight:500;transition:all var(--transition-fast)}.dropdown-menu li a:hover{background:#3b82f614;color:var(--text-primary)}.nav-right{display:flex;align-items:center;gap:16px}.theme-toggle-btn{background:none;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.theme-toggle-btn:hover{background:#ffffff14;color:var(--text-primary);transform:scale(1.05)}.auth-container{display:flex;align-items:center;border-left:1px solid var(--border-glass);padding-left:16px;height:40px}.logged-out-view{display:flex;align-items:center;gap:12px}#demo-login-btn{height:36px;padding:0 12px;font-size:.85rem;border-radius:var(--radius-sm);background-color:var(--bg-secondary);border:1px solid var(--border-glass);color:var(--text-secondary);font-weight:600;display:flex;align-items:center;gap:6px;cursor:pointer;transition:all var(--transition-fast)}#demo-login-btn:hover{background-color:#3b82f614;border-color:var(--text-muted);color:var(--text-primary)}#google-signin-button{height:36px;display:flex;align-items:center}.auth-container.logged-out .logged-in-view,.auth-container.logged-in .logged-out-view{display:none!important}.user-profile{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.user-avatar-img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-blue);box-shadow:var(--shadow-sm)}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent-blue),var(--accent-purple));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;font-family:var(--font-display)}.user-info{display:flex;flex-direction:column}.user-name{font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.75rem;color:var(--text-muted);white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}.user-dropdown{position:relative;height:100%;display:flex;align-items:center}.profile-chevron{font-size:.75rem;color:var(--text-muted);transition:transform var(--transition-fast)}.profile-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;width:100%;background:var(--bg-card, #1e293b);background-color:#1e293bf5;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass, rgba(255, 255, 255, .18));border-radius:var(--radius-md, 12px);box-shadow:0 14px 35px #00000080;min-width:180px;padding:8px 6px;opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s ease;list-style:none;z-index:9999}body.light-mode .profile-dropdown-menu,.light .profile-dropdown-menu{background-color:#fffffff5;border:1px solid rgba(0,0,0,.12);box-shadow:0 14px 35px #0000002e}.user-dropdown.show-menu .profile-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.user-dropdown.show-menu .profile-chevron{transform:rotate(180deg)}.profile-dropdown-menu li a{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-sm, 8px);color:var(--text-secondary, #94a3b8);font-size:.88rem;font-weight:500;text-decoration:none;transition:all var(--transition-fast)}body.light-mode .profile-dropdown-menu li a,.light .profile-dropdown-menu li a{color:#334155}.profile-dropdown-menu li a:hover{background:#3b82f61f;color:var(--accent-blue, #3b82f6)}.profile-dropdown-menu li a.logout-link:hover{background:#ef44441f;color:var(--danger, #ef4444)}.main-layout{width:100%!important;max-width:none!important;margin:0!important;padding:40px 24px;box-sizing:border-box!important}.hero-banner{background:linear-gradient(135deg,#1d4ed8,#06b6d4,#7c3aed);border-radius:var(--radius-xl);padding:60px 40px;text-align:center;color:#fff;margin-bottom:48px;position:relative;overflow:hidden;box-shadow:var(--shadow-lg),var(--shadow-glow)}.hero-banner:before{content:"";position:absolute;top:-30%;left:-20%;width:60%;height:120%;background:radial-gradient(circle,#ffffff1f,#fff0 70%);transform:rotate(-15deg);pointer-events:none}.hero-badge{display:inline-block;background:#fff3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:6px 16px;border-radius:50px;font-size:.8rem;font-weight:600;letter-spacing:.05em;margin-bottom:24px;border:1px solid rgba(255,255,255,.15)}.hero-title{font-family:var(--font-display);font-size:3.25rem;font-weight:800;margin-bottom:16px;letter-spacing:-.02em;text-shadow:0 4px 12px rgba(0,0,0,.15)}.hero-subtitle{font-size:1.15rem;opacity:.9;max-width:650px;margin:0 auto 32px;font-weight:400}.hero-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-weight:700;font-size:.95rem;line-height:1.4;padding:10px 20px 12px;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);gap:8px;overflow:visible!important}.sidebar-section-label{font-size:.72rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:14px 14px 6px}.sidebar-group{margin-bottom:2px}.sidebar-dropdown-toggle{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--radius-md);cursor:pointer;font-weight:600;color:var(--text-secondary);transition:all .2s ease}.sidebar-dropdown-toggle:hover{background:#3b82f614;color:var(--text-primary)}.sidebar-dropdown-toggle .dropdown-arrow{font-size:.75rem;transition:transform .25s ease;margin-left:auto}.sidebar-group.open .sidebar-dropdown-toggle .dropdown-arrow{transform:rotate(180deg)}.sidebar-submenu{list-style:none;display:none;flex-direction:column;gap:2px;padding-left:18px;margin-top:4px}.sidebar-group.open .sidebar-submenu{display:flex}.sidebar-subitem{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.sidebar-subitem:hover{background:#3b82f61f;color:var(--accent-blue);transform:translate(3px)}.badge-vip{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:.65rem;font-weight:800;padding:1px 6px;border-radius:6px;margin-left:6px}.sidebar-upgrade-btn{background:linear-gradient(135deg,#fbbf24,#f59e0b)!important;color:#0f172a!important;font-weight:800!important;box-shadow:0 4px 12px #f59e0b4d!important;border:1px solid #f59e0b!important}.sidebar-upgrade-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #f59e0b66!important}.btn-lg{padding:14px 28px;border-radius:var(--radius-lg);font-size:1.05rem}.btn-sm{padding:6px 12px;border-radius:var(--radius-sm);font-size:.85rem}.btn-primary{background-color:#fff;color:var(--accent-blue);box-shadow:0 4px 14px #0000001a}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026;background-color:#f8fafc}.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}.btn-outline:hover{background:#ffffff1a;border-color:#fff;transform:translateY(-2px)}.btn-secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-glass)}.btn-secondary:hover{background-color:#3b82f614;border-color:var(--text-muted)}.circle-btn{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-glass);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.circle-btn:hover{transform:scale(1.08);border-color:var(--text-muted);box-shadow:var(--shadow-md);color:var(--accent-blue)}.workspace-section{margin-bottom:48px;scroll-margin-top:calc(var(--nav-height) + 20px)}.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;flex-wrap:wrap;gap:20px}.section-title{font-family:var(--font-display);font-size:2rem;font-weight:700;margin-bottom:6px;display:flex;align-items:center;gap:12px}.section-desc{color:var(--text-secondary);font-size:.95rem}.stats-summary-widget{display:flex;gap:12px;flex-wrap:wrap}.widget-item{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:12px 20px;display:flex;flex-direction:column;align-items:center;box-shadow:var(--shadow-sm);min-width:110px;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.widget-item[data-status]:hover{transform:translateY(-2px);border-color:var(--accent-blue);background-color:#3b82f614;box-shadow:var(--shadow-md)}.widget-item[data-status]:active{transform:translateY(0)}.study-row-btn:hover{background-color:var(--success)!important;color:#fff!important}.star-row-btn{background:#f59e0b1a;color:var(--text-secondary)}.star-row-btn.active{background-color:var(--warning)!important;color:#1e1b1b!important}.star-row-btn.active:hover{background-color:var(--warning)!important;color:#1e1b1b!important;opacity:.9}.star-row-btn:hover:not(.active){background-color:#f59e0b40!important;color:var(--warning)!important}.check-row-btn{background:#10b9811a;color:var(--text-secondary)}.check-row-btn.active{background-color:var(--success)!important;color:#fff!important}.check-row-btn.active:hover{background-color:var(--success)!important;color:#fff!important;opacity:.9}.check-row-btn:hover:not(.active){background-color:#10b98140!important;color:var(--success)!important}.speak-row-btn:hover{background-color:var(--accent-blue)!important;color:#fff!important}.list-tab-btn{padding:8px 16px;font-size:.9rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--border-glass);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.list-tab-btn:hover{background:#ffffff0d;color:var(--text-primary);border-color:#fff3}.list-tab-btn.active{background:#3b82f626!important;color:var(--text-primary)!important;border-color:var(--accent-blue)!important;box-shadow:0 0 10px #3b82f633}.widget-value{font-family:var(--font-display);font-size:1.5rem;font-weight:700}.widget-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.text-warning{color:var(--warning)}.text-muted{color:var(--text-muted)}.controls-dashboard{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;padding:20px 24px;margin-bottom:32px}@media (max-width: 900px){.controls-dashboard{grid-template-columns:1fr;gap:16px}}.control-group{display:flex;flex-direction:column;gap:8px}.control-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.level-tabs{display:flex;gap:6px;flex-wrap:wrap}.level-tab{background:var(--bg-secondary);border:1px solid var(--border-glass);color:var(--text-secondary);padding:8px 16px;border-radius:var(--radius-sm);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--transition-fast)}.level-tab:hover{background:#3b82f60d;color:var(--text-primary);border-color:var(--text-muted)}.level-tab.active{background-color:var(--accent-blue);color:#fff;border-color:var(--accent-blue);box-shadow:0 4px 10px #3b82f64d}.form-select{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-glass);border-radius:var(--radius-sm);padding:9px 12px;font-size:.9rem;font-weight:500;outline:none;cursor:pointer;transition:border var(--transition-fast)}.form-select:focus{border-color:var(--accent-blue)}.select-sm{padding:6px 8px;font-size:.8rem}.select-voice{max-width:180px}.inline-controls{flex-direction:row;align-items:flex-end;justify-content:flex-end;gap:12px;flex-wrap:wrap}.autoplay-wrap,.tts-voice-wrap{display:flex;align-items:center;gap:8px;height:38px}.search-container{margin-bottom:24px}.search-box{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:16px;color:var(--text-muted);font-size:1rem}.search-box input{width:100%;background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:14px 16px 14px 44px;color:var(--text-primary);font-size:.95rem;outline:none;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.search-box input:focus{border-color:var(--accent-blue);box-shadow:var(--shadow-glow),var(--shadow-md);background:var(--bg-secondary)}.clear-btn{position:absolute;right:16px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:4px}.clear-btn:hover{color:var(--text-primary)}.flashcard-workspace{max-width:650px;margin:0 auto}.card-viewport{position:relative;display:flex;flex-direction:column;gap:24px;align-items:center}.progress-bar-container{width:100%;height:8px;background-color:#3b82f614;border-radius:var(--radius-sm);overflow:hidden;position:relative;display:flex;align-items:center;margin-top:10px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-blue),var(--accent-teal));border-radius:var(--radius-sm);transition:width var(--transition-normal);box-shadow:0 0 10px #06b6d466}.progress-text{position:absolute;right:8px;font-size:.7rem;font-weight:700;color:var(--text-muted)}.flashcard-card-container{width:100%;perspective:1200px;-webkit-perspective:1200px;min-height:420px;height:420px;position:relative}.flashcard-swipe-track{width:100%;height:100%;position:relative;touch-action:pan-y;user-select:none;-webkit-user-select:none;transform-origin:center bottom;will-change:transform,opacity}.swipe-stamp{position:absolute;top:24px;z-index:50;padding:8px 18px;border-radius:12px;font-weight:900;font-size:1.15rem;letter-spacing:1px;opacity:0;pointer-events:none;transition:opacity .12s ease;display:flex;align-items:center;gap:8px;box-shadow:0 4px 16px #00000040}.swipe-stamp.stamp-memorized{left:20px;color:#10b981;border:3px solid #10b981;background:#10b98138;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transform:rotate(-12deg)}.swipe-stamp.stamp-unmemorized{right:20px;color:#ef4444;border:3px solid #ef4444;background:#ef444438;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transform:rotate(12deg)}.flashcard-swipe-hint-bar{display:flex;align-items:center;justify-content:center;gap:10px;font-size:.82rem;font-weight:700;color:var(--text-secondary);padding:6px 12px;border-radius:20px;background:#ffffff0d;border:1px solid var(--border-glass);margin-top:8px;margin-bottom:4px;-webkit-user-select:none;user-select:none}.flashcard-swipe-hint-bar .hint-swipe-left{color:#ef4444;display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:4px 10px;border-radius:12px;transition:all .2s ease}.flashcard-swipe-hint-bar .hint-swipe-left:hover{background:#ef44441f;transform:translate(-2px)}.flashcard-swipe-hint-bar .hint-swipe-left:active{transform:scale(.95)}.flashcard-swipe-hint-bar .hint-swipe-right{color:#10b981;display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:4px 10px;border-radius:12px;transition:all .2s ease}.flashcard-swipe-hint-bar .hint-swipe-right:hover{background:#10b9811f;transform:translate(2px)}.flashcard-swipe-hint-bar .hint-swipe-right:active{transform:scale(.95)}.flashcard-swipe-hint-bar .hint-separator{opacity:.35}.flashcard-complete-container{display:flex;flex-direction:column;align-items:center;text-align:center;padding:36px 24px;border-radius:var(--radius-xl);border:1px solid var(--border-glass-hover);background:var(--bg-card);box-shadow:0 16px 40px #00000040;animation:fadeIn .3s ease;margin:12px auto;max-width:480px;width:100%;box-sizing:border-box}.fc-complete-icon{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#f59e0b33,#eab3081a);border:2px solid rgba(245,158,11,.4);color:#f59e0b;font-size:2rem;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.fc-complete-title{font-size:1.4rem;font-weight:800;color:var(--text-primary);margin:0 0 8px;font-family:var(--font-display)}.fc-complete-desc{font-size:.92rem;color:var(--text-secondary);margin:0 0 18px;line-height:1.5}.fc-complete-stats{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:24px;width:100%}.fc-stat-chip{padding:8px 14px;border-radius:99px;font-weight:700;font-size:.85rem;display:inline-flex;align-items:center;gap:6px}.fc-stat-chip.chip-total{background:#3b82f61f;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.fc-stat-chip.chip-mem{background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.3)}.fc-stat-chip.chip-unmem{background:#ef44441f;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.fc-complete-actions{display:flex;flex-direction:column;gap:10px;width:100%;max-width:320px}.fc-complete-actions .btn{width:100%;padding:12px 18px;border-radius:14px;font-weight:700;font-size:.92rem;display:flex;align-items:center;justify-content:center;gap:8px}html.light-mode .flashcard-complete-container,html.light .flashcard-complete-container,html:not(.dark) .flashcard-complete-container{background:#fff;border-color:#0000001a;box-shadow:0 16px 40px #00000014}.flashcard-card{width:100%;height:100%;position:relative;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform var(--transition-slow);cursor:pointer}.flashcard-card.flipped{transform:rotateY(180deg);-webkit-transform:rotateY(180deg)}.card-side{position:absolute;top:0;left:0;width:100%;height:100%;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;border-radius:var(--radius-xl);padding:28px 24px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-lg);border:1px solid var(--border-glass);box-sizing:border-box;transition:opacity .25s ease;overflow-y:auto;scrollbar-width:thin}.card-front{background:var(--card-bg-front);transform:rotateY(0);-webkit-transform:rotateY(0deg);z-index:2;opacity:1;visibility:visible}.card-back{background:var(--card-bg-back);transform:rotateY(180deg);-webkit-transform:rotateY(180deg);z-index:1;opacity:0;visibility:hidden}.flashcard-card.flipped .card-front{z-index:1;pointer-events:none;opacity:0!important;visibility:hidden!important}.flashcard-card.flipped .card-back{z-index:2;pointer-events:auto;opacity:1!important;visibility:visible!important}.card-header-tags{display:flex;justify-content:space-between;align-items:center}.badge{display:inline-flex;padding:6px 12px;font-size:.75rem;font-weight:700;border-radius:var(--radius-sm);text-transform:uppercase}.badge-level{background:#3b82f626;color:var(--accent-blue)}.badge-category{background:#8b5cf626;color:var(--accent-purple)}.card-content-main{flex-grow:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.chinese-word{font-family:var(--font-chinese);font-size:5.5rem;font-weight:700;color:var(--text-primary);letter-spacing:.05em;line-height:1;-webkit-user-select:none;user-select:none}.pinyin-text,.card-pinyin,.card-pinyin-back,.vocab-pinyin,.word-pinyin,.dict-pinyin,.q-pinyin,.vd-pinyin,.char-pinyin,.flashcard-pinyin,.table-pinyin,.detail-pinyin,.dict-popular-pinyin,.pinyin-card,.recent-pinyin,.recent-title-pinyin,#quiz-pinyin,[class*=pinyin],[class*=Pinyin],[data-pinyin]{font-family:var(--font-pinyin),"Be Vietnam Pro","Inter","Segoe UI",Roboto,sans-serif!important}.pinyin-text{font-family:var(--font-pinyin),"Be Vietnam Pro","Inter","Segoe UI",Roboto,sans-serif!important;font-size:2.2rem;font-weight:700;color:var(--accent-teal);margin-bottom:8px;-webkit-user-select:none;user-select:none}.meaning-text{font-size:1.35rem;font-weight:500;color:var(--text-primary);margin-bottom:20px}.example-box{background:#00000026;border-radius:var(--radius-md);padding:16px 20px;width:100%;max-width:480px;text-align:left}.example-title{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px}.example-zh{font-family:var(--font-sans);font-size:1.15rem;color:var(--text-primary);margin-bottom:4px;display:flex;justify-content:space-between;align-items:center;gap:12px}.example-vi{font-size:.95rem;color:var(--text-secondary);font-style:italic}.speak-example-btn{background:none;border:none;color:var(--accent-teal);cursor:pointer;font-size:.9rem;padding:4px;transition:all var(--transition-fast)}.speak-example-btn:hover{color:#fff;transform:scale(1.1)}.card-action-bar{display:flex;justify-content:space-between;align-items:center}.speak-btn{background:#3b82f61a;color:var(--accent-blue);border-color:#3b82f633}.speak-btn:hover{background-color:var(--accent-blue);color:#fff}.click-hint{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:6px}.placeholder-icon{width:48px}.card-hud-controls{display:flex;align-items:center;gap:16px;width:100%;justify-content:space-between;margin-top:10px}.btn-hud{flex-grow:1;max-width:160px;background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-glass);box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:.9rem;border-radius:50px}.btn-hud:hover{color:var(--text-primary);border-color:var(--text-muted);transform:translateY(-2px);box-shadow:var(--shadow-md)}.mark-btn.active{background-color:var(--success-bg);border-color:var(--success);color:var(--success);font-weight:700}.mark-btn.active:hover{background-color:var(--success);color:#fff}.star-btn.active{background-color:var(--warning-bg);border-color:var(--warning);color:var(--warning);font-weight:700}.star-btn.active:hover{background-color:var(--warning);color:#fff}.unmark-btn.active{background-color:var(--danger-bg);border-color:var(--danger);color:var(--danger);font-weight:700}.unmark-btn.active:hover{background-color:var(--danger);color:#fff}.card-page-indicator{font-size:.85rem;color:var(--text-muted);font-weight:600}.empty-state{width:100%;height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.empty-icon{font-size:3.5rem;color:var(--text-muted);margin-bottom:20px;opacity:.6}.empty-state h3{font-family:var(--font-display);font-size:1.35rem;font-weight:700;margin-bottom:8px}.empty-state p{color:var(--text-secondary);font-size:.9rem;max-width:320px;margin-bottom:24px}.grid-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px}@media (max-width: 900px){.grid-layout{grid-template-columns:1fr;gap:24px}}.panel-header{margin-bottom:24px}.panel-header h3{font-family:var(--font-display);font-size:1.35rem;font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:10px}.panel-header p{color:var(--text-secondary);font-size:.85rem}.text-primary{color:var(--accent-blue)}.text-success{color:var(--success)}.add-word-form{display:flex;flex-direction:column;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-item{display:flex;flex-direction:column;gap:6px}.form-item.full-width{grid-column:span 2}@media (max-width: 500px){.form-item.full-width{grid-column:span 1}.form-grid{grid-template-columns:1fr}}.form-item label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.required{color:var(--danger)}.form-item input{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-glass);border-radius:var(--radius-sm);padding:10px 14px;font-size:.9rem;outline:none;transition:all var(--transition-fast)}.form-item input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f626}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:10px}.custom-words-table-wrapper{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border-glass)}.custom-words-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.custom-words-table th{background-color:#3b82f60d;color:var(--text-secondary);font-weight:600;padding:12px 16px;border-bottom:1px solid var(--border-glass)}.custom-words-table td{padding:12px 16px;border-bottom:1px solid var(--border-glass);color:var(--text-primary)}.custom-words-table tbody tr:last-child td{border-bottom:none}.custom-words-table tbody tr:hover{background-color:#ffffff05}.table-empty{text-align:center;color:var(--text-muted);font-style:italic;padding:30px!important}.delete-btn{background:none;border:none;color:var(--danger);cursor:pointer;font-size:1rem;padding:6px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.delete-btn:hover{background-color:var(--danger-bg);transform:scale(1.1)}.hotkeys-section{padding:24px;margin-top:48px}.hotkeys-section h4{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:10px;color:var(--text-secondary)}.hotkeys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.hotkey-item{font-size:.85rem;color:var(--text-secondary);display:flex;align-items:center;gap:8px}.key-badge{background:var(--bg-secondary);border:1px solid var(--border-glass);border-bottom:2px solid var(--scrollbar-thumb);padding:2px 8px;border-radius:4px;font-family:monospace;font-weight:700;font-size:.8rem;color:var(--text-primary)}.toast{position:fixed;bottom:28px;top:auto!important;left:50%!important;transform:translate(-50%) translateY(20px);background-color:var(--bg-secondary, rgba(15, 23, 42, .95));color:var(--text-primary, #ffffff);border:1px solid var(--border-glass, rgba(255, 255, 255, .2));border-left:4px solid var(--accent-blue, #3b82f6);padding:12px 24px;border-radius:12px;box-shadow:0 10px 30px #0000004d;z-index:999999;opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.16,1,.3,1);white-space:nowrap;max-width:90vw;height:auto!important;min-height:unset!important;max-height:unset!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.toast.show{opacity:1;transform:translate(-50%) translateY(0)!important}@keyframes logoPulse{0%{transform:scale(1);filter:drop-shadow(0 0 0px rgba(229,62,62,0))}to{transform:scale(1.05);filter:drop-shadow(0 0 8px rgba(229,62,62,.6))}}.level-selector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px}.level-card{padding:32px 24px;display:flex;flex-direction:column;gap:16px;position:relative;transition:transform var(--transition-fast),border-color var(--transition-fast)}.level-card:hover{transform:translateY(-5px);border-color:var(--accent-blue);box-shadow:var(--shadow-md),var(--shadow-glow)}.level-card h3{font-family:var(--font-display);font-size:1.35rem;font-weight:700}.level-desc{color:var(--text-secondary);font-size:.9rem;flex-grow:1}.level-meta{display:flex;gap:16px;font-size:.85rem;font-weight:600;color:var(--text-muted)}.level-meta i{color:var(--accent-blue)}.btn-full{width:100%}.exam-papers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-top:20px}.exam-paper-card{padding:24px;display:flex;flex-direction:column;gap:12px;transition:transform var(--transition-fast),border-color var(--transition-fast)}.exam-paper-card:hover{transform:translateY(-4px);border-color:var(--accent-blue)}.exam-paper-card h3{font-family:var(--font-display);font-size:1.15rem;font-weight:700}.exam-paper-meta{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-secondary)}.exam-paper-status{font-size:.75rem;font-weight:700;padding:4px 8px;border-radius:var(--radius-sm);text-transform:uppercase}.status-todo{background:var(--border-glass);color:var(--text-secondary)}.status-done{background:var(--success-bg);color:var(--success)}.exam-player-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;margin-bottom:24px}.player-header-left{display:flex;align-items:center;gap:12px}.player-header-left h3{font-family:var(--font-display);font-size:1.35rem}.exam-timer-widget{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--warning);display:flex;align-items:center;gap:8px}.exam-timer-widget.warning-time{color:var(--danger);animation:timerWarning 1s infinite alternate}@keyframes timerWarning{0%{transform:scale(1)}to{transform:scale(1.05)}}.exam-player-layout{display:grid;grid-template-columns:280px 1fr;gap:24px}@media (max-width: 900px){.exam-player-layout{grid-template-columns:1fr}}.exam-player-nav{padding:24px;display:flex;flex-direction:column;gap:16px;max-height:500px;overflow-y:auto}.exam-player-nav h4{font-family:var(--font-display);font-weight:700;font-size:1.05rem;border-bottom:1px solid var(--border-glass);padding-bottom:8px}.nav-sections-wrap{display:flex;flex-direction:column;gap:16px}.nav-section-title{font-size:.8rem;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.nav-questions-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.q-btn{height:36px;border-radius:var(--radius-sm);border:1px solid var(--border-glass);background:var(--bg-secondary);color:var(--text-secondary);font-weight:600;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.q-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}.q-btn.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.q-btn.answered{background:var(--success-bg);border-color:var(--success);color:var(--success)}.q-btn.answered.active{background:var(--success);color:#fff;border-color:var(--success)}.exam-player-main{padding:32px;display:flex;flex-direction:column;gap:24px}.question-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-glass);padding-bottom:12px}.question-header span{font-family:var(--font-display);font-weight:600;color:var(--text-secondary)}.question-body{flex-grow:1;display:flex;flex-direction:column;gap:16px}.question-audio-container{display:flex;align-items:center;gap:12px}.audio-hint{font-size:.85rem;color:var(--text-muted)}.question-text{font-size:1.25rem;font-weight:500;line-height:1.5;color:var(--text-primary)}.question-options-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.option-item{display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:var(--radius-md);border:1px solid var(--border-glass);background:var(--bg-secondary);cursor:pointer;transition:all var(--transition-fast)}.option-item:hover{border-color:var(--border-glass-hover);background:#3b82f60a}.option-item.selected{border-color:var(--accent-blue);background:#3b82f614}.option-item input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-blue)}.option-label{font-size:1rem;font-weight:500;color:var(--text-primary)}.question-actions{display:flex;justify-content:space-between;align-items:center;margin-top:24px}.submit-exam-btn{background-color:var(--success);color:#fff}.submit-exam-btn:hover{background-color:#059669}.result-header-panel{padding:40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:32px}.result-badge-wrap{width:90px;height:90px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.result-status-badge{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:1.15rem;color:#fff;box-shadow:var(--shadow-sm)}.result-status-badge.pass{background:var(--success);box-shadow:0 0 20px #10b98166}.result-status-badge.fail{background:var(--danger);box-shadow:0 0 20px #ef444466}.result-stats-row{display:flex;gap:24px;margin:16px 0;flex-wrap:wrap;justify-content:center}.result-stat-box{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:16px 28px;display:flex;flex-direction:column;align-items:center;min-width:140px}.result-stat-box .stat-num{font-family:var(--font-display);font-size:1.75rem;font-weight:700;color:var(--text-primary)}.result-stat-box .stat-lbl{font-size:.8rem;color:var(--text-muted);font-weight:600}.result-review-panel{padding:32px}.review-desc{color:var(--text-secondary);font-size:.95rem;margin-bottom:24px}.review-questions-list{display:flex;flex-direction:column;gap:24px}.review-q-item{padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border-glass);background:var(--bg-secondary)}.review-q-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;border-bottom:1px solid var(--border-glass);padding-bottom:8px}.review-q-header .q-num{font-family:var(--font-display);font-weight:700;font-size:1rem}.review-options-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}.rev-option{padding:10px 16px;border-radius:var(--radius-sm);border:1px solid var(--border-glass);font-size:.95rem}.rev-option.correct{border-color:var(--success);background:var(--success-bg);color:var(--success);font-weight:600}.rev-option.wrong{border-color:var(--danger);background:var(--danger-bg);color:var(--danger);font-weight:600}.explanation-box{margin-top:16px;padding:16px;border-radius:var(--radius-md);background:#3b82f60f;border-left:4px solid var(--accent-blue)}html.dark .explanation-box{background:#3b82f61a}.explanation-box h5{font-family:var(--font-display);font-weight:700;color:var(--accent-blue);margin-bottom:6px}.explanation-box p{font-size:.9rem;color:var(--text-secondary);line-height:1.45}.stats-table{width:100%;border-collapse:collapse}.stats-table th,.stats-table td{padding:12px;border-bottom:1px solid var(--border-glass)}.stats-table tr{transition:background-color var(--transition-fast)}.stats-table tr:hover{background:#ffffff05}html:not(.dark) .stats-table tr:hover{background:#00000003}.segmented-control{border:1px solid var(--border-glass);background:var(--bg-glass)}.segmented-control button{background:transparent;color:var(--text-secondary);border:none;cursor:pointer;font-weight:600;transition:all var(--transition-fast)}.segmented-control button.active-mode{background:var(--accent-blue)!important;color:#fff!important;box-shadow:0 4px 10px #3b82f640}.attempt-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background-color:var(--scrollbar-thumb);transition:background-color .2s,transform .2s}.attempt-dot.active-dot{background-color:var(--success);box-shadow:0 0 8px #10b98166}.attempt-dot.active-dot.warning-dot{background-color:var(--warning);box-shadow:0 0 8px #f59e0b66}.attempt-dot.active-dot.danger-dot{background-color:var(--danger);box-shadow:0 0 8px #ef444466}.typing-card-container{display:flex;flex-direction:column;justify-content:space-between;background:var(--bg-card, #0f172a)!important;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-glass);box-sizing:border-box;animation:fadeIn var(--transition-normal);backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.light-mode .typing-card-container,html.light .typing-card-container,html:not(.dark) .typing-card-container{background:#fff!important;border:1.5px solid #e2e8f0!important;color:#0f172a!important;box-shadow:0 10px 32px #1f268714!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.shake{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-8px)}20%,40%,60%,80%{transform:translate(8px)}}.correct-glow{border-color:var(--success)!important;box-shadow:0 0 15px #10b9814d!important}.incorrect-glow{border-color:var(--danger)!important;box-shadow:0 0 15px #ef44444d!important}.custom-lists-container{margin-top:20px}.list-pill{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border-glass);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-weight:500;font-size:.9rem}.list-pill:hover{border-color:var(--border-glass-hover);color:var(--text-primary);background:#ffffff08}html:not(.dark) .list-pill:hover{background:#00000005}.list-pill.active-list{background:linear-gradient(135deg,#3b82f61f,#3b82f60d);border-color:var(--accent-blue);color:var(--accent-blue);font-weight:600;box-shadow:var(--shadow-sm)}.list-pill-actions{display:flex;gap:6px;opacity:.3;transition:opacity var(--transition-fast)}.list-pill:hover .list-pill-actions,.list-pill.active-list .list-pill-actions{opacity:1}.list-action-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;font-size:.8rem;transition:color var(--transition-fast),transform var(--transition-fast)}.list-action-btn:hover{transform:scale(1.15)}.list-action-btn.study-btn:hover{color:var(--success)}.list-action-btn.delete-btn:hover{color:var(--danger)}.list-word-count{font-size:.75rem;background:var(--border-glass);padding:2px 8px;border-radius:20px;color:var(--text-muted)}@media (max-width: 900px){.custom-lists-container{grid-template-columns:1fr!important}}.card-viewport.typing-mode-active .flashcard-card-container,.card-viewport.typing-mode-active .lesson-study-card,.card-viewport.typing-mode-active .sentence-card-container{display:none!important}.card-viewport.typing-mode-active #typing-card-container{display:flex!important}.card-viewport.typing-mode-active #mark-memorized-btn,.card-viewport.typing-mode-active #mark-unmemorized-btn,.card-viewport.typing-mode-active #mark-starred-btn,.card-viewport.sentence-mode-active .flashcard-card-container,.card-viewport.sentence-mode-active .lesson-study-card,.card-viewport.sentence-mode-active #typing-card-container{display:none!important}.card-viewport.sentence-mode-active .sentence-card-container{display:flex!important}.card-viewport.sentence-mode-active #mark-memorized-btn,.card-viewport.sentence-mode-active #mark-unmemorized-btn,.card-viewport.sentence-mode-active #mark-starred-btn{display:none!important}html.light-mode #sentence-card-input,html.light #sentence-card-input,html:not(.dark) #sentence-card-input{background:#f8fafc!important;border-color:#cbd5e1!important;color:#0f172a!important}html.light-mode #sentence-card-input:focus,html.light #sentence-card-input:focus,html:not(.dark) #sentence-card-input:focus{border-color:#8b5cf6!important;background:#fff!important;box-shadow:0 0 0 3px #8b5cf626!important}html.light-mode #sentence-card-word,html.light #sentence-card-word,html:not(.dark) #sentence-card-word{color:#0f172a!important}html.light-mode #sentence-card-meaning,html.light #sentence-card-meaning,html:not(.dark) #sentence-card-meaning{color:#0f172a!important}html.light-mode .sentence-card-container .card-action-bar,html.light .sentence-card-container .card-action-bar,html:not(.dark) .sentence-card-container .card-action-bar{border-top:1px dashed rgba(0,0,0,.1)!important}.chatbot-widget{position:fixed;bottom:24px;right:24px;z-index:100005;font-family:var(--font-sans);pointer-events:auto}.chatbot-toggle-btn{width:60px;height:60px;border-radius:50%!important;background:linear-gradient(135deg,#0284c7,#2563eb,#7c3aed)!important;border:2.5px solid rgba(255,255,255,.85)!important;color:#fff!important;font-size:1.65rem!important;cursor:pointer;box-shadow:0 8px 25px #2563eb8c,0 0 16px #0284c773!important;display:flex;align-items:center;justify-content:center;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease,background .3s!important;position:relative;animation:chatBtnBreathe 3s infinite ease-in-out}@keyframes chatBtnBreathe{0%,to{box-shadow:0 8px 25px #2563eb8c,0 0 16px #0284c773;transform:scale(1)}50%{box-shadow:0 10px 30px #7c3aeda6,0 0 24px #2563eb99;transform:scale(1.05)}}.chatbot-toggle-btn:hover{transform:scale(1.12) rotate(-4deg);box-shadow:0 10px 30px #2563eba6,0 0 28px #7c3aed99!important}.chatbot-toggle-btn:active{transform:scale(.94)}html.light-mode .chatbot-toggle-btn,body.light-mode .chatbot-toggle-btn{background:linear-gradient(135deg,#0284c7,#2563eb,#7c3aed)!important;border:2.5px solid #ffffff!important;color:#fff!important;box-shadow:0 8px 25px #2563eb80,0 0 18px #0284c766!important}.chatbot-widget.dock-left{right:auto!important;left:24px!important}.chatbot-badge{position:absolute;top:-2px;right:-2px;background-color:var(--danger);color:#fff;font-size:.75rem;font-weight:700;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-primary);box-shadow:var(--shadow-sm);animation:pulseBadge 2s infinite}@keyframes pulseBadge{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.chatbot-panel{position:absolute;bottom:74px;right:0;width:380px;height:520px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-glass);box-shadow:var(--shadow-lg),0 10px 30px #00000026;animation:slideInUp .3s cubic-bezier(.16,1,.3,1);transform-origin:bottom right}.chatbot-widget:not(.dock-left) .chatbot-panel{right:76px;bottom:0}.chatbot-widget.dock-left .chatbot-panel{left:0;right:auto;transform-origin:bottom left}body.chatbot-panel-open .screen-pen-floating-bubble{transform:translateY(-460px) scale(.9)!important;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .25s!important;opacity:.9!important;z-index:9999!important}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-bullet-line{display:flex;align-items:flex-start;gap:8px;margin:4px 0;line-height:1.45}.chat-bullet-dot{color:#38bdf8;font-weight:900;font-size:1.1rem;line-height:1.2}html.light-mode .chat-bullet-dot,body.light-mode .chat-bullet-dot{color:#2563eb}.rad-tab-btn{background:#ffffff0d;color:var(--text-muted, #94a3b8);border:1px solid rgba(255,255,255,.12);padding:8px 18px;border-radius:99px;font-weight:700;font-size:.9rem;cursor:pointer;white-space:nowrap;transition:all .2s ease}.rad-tab-btn:hover{background:#2563eb26;color:#3b82f6;border-color:#2563eb4d}.rad-tab-btn.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#2563eb;box-shadow:0 4px 12px #2563eb59}.chatbot-header{padding:16px 20px;background:#0003;border-bottom:1px solid var(--border-glass);display:flex;align-items:center;justify-content:space-between}.chatbot-title-wrap{display:flex;align-items:center;gap:12px}.chatbot-avatar{width:38px;height:38px;border-radius:50%;background:#3b82f626;color:var(--accent-blue);display:flex;align-items:center;justify-content:center;font-size:1.15rem;border:1px solid rgba(59,130,246,.25);box-shadow:0 0 10px #3b82f61a}.chatbot-name{font-family:var(--font-display);font-size:.95rem;font-weight:700;margin:0;color:var(--text-primary)}.chatbot-status{font-size:.7rem;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.status-dot{width:6px;height:6px;background-color:var(--success);border-radius:50%;display:inline-block;box-shadow:0 0 6px var(--success)}.chatbot-close-btn{background:none;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;transition:color var(--transition-fast);padding:4px}.chatbot-close-btn:hover{color:var(--danger)}.chatbot-messages{flex-grow:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;background:#0000000d}.chat-message{max-width:80%;padding:10px 14px;border-radius:var(--radius-md);font-size:.88rem;line-height:1.5;word-wrap:break-word;box-shadow:var(--shadow-sm);white-space:pre-line}.chat-message.bot{align-self:flex-start;background:var(--bg-secondary);color:var(--text-primary);border-bottom-left-radius:4px;border:1px solid var(--border-glass)}.chat-message.bot strong{color:var(--accent-teal)}.chat-message.user{align-self:flex-end;background:linear-gradient(135deg,var(--accent-blue) 0%,#1d4ed8 100%);color:#fff;border-bottom-right-radius:4px}.chatbot-typing{align-self:flex-start;background:var(--bg-secondary);padding:10px 18px;border-radius:var(--radius-md);border-bottom-left-radius:4px;border:1px solid var(--border-glass);display:flex;gap:4px;align-items:center;margin-left:20px;margin-bottom:14px}.chatbot-typing .dot{width:6px;height:6px;background-color:var(--text-muted);border-radius:50%;display:inline-block;animation:bounceDot 1.4s infinite ease-in-out both}.chatbot-typing .dot:nth-child(1){animation-delay:-.32s}.chatbot-typing .dot:nth-child(2){animation-delay:-.16s}@keyframes bounceDot{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chatbot-input-area{padding:12px 16px;border-top:1px solid var(--border-glass);background:#00000026;display:flex;gap:8px}.chatbot-input-area input{flex-grow:1;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border-glass);background:#0003;color:var(--text-primary);outline:none;font-size:.88rem;transition:border-color var(--transition-fast)}.chatbot-input-area input:focus{border-color:var(--accent-blue);background:#0000004d}.chatbot-input-area button{width:40px;height:40px;border-radius:var(--radius-md);background:var(--accent-blue);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast),transform var(--transition-fast)}.chatbot-input-area button:hover{background-color:#1d4ed8;transform:translateY(-1px)}.chatbot-input-area button:active{transform:translateY(0)}@media (max-width: 768px){.chatbot-widget{bottom:20px!important;right:16px!important;z-index:100005!important}.chatbot-widget.dock-left{left:16px!important;right:auto!important}body.chatbot-panel-open #floating-theme-widget,body.chatbot-panel-open .floating-theme-widget,body.chatbot-panel-open .screen-pen-floating-bubble,body.chatbot-panel-open .chatbot-toggle-btn{display:none!important;opacity:0!important;pointer-events:none!important}#chatbot-side-dock-btn{display:none!important}.chatbot-panel,.chatbot-widget:not(.dock-left) .chatbot-panel,.chatbot-widget.dock-left .chatbot-panel{position:fixed!important;left:8px!important;right:8px!important;bottom:12px!important;top:auto!important;width:calc(100vw - 16px)!important;max-width:480px!important;margin-left:auto!important;margin-right:auto!important;height:min(78vh,600px)!important;max-height:calc(100vh - 48px)!important;border-radius:24px!important;border:1.5px solid rgba(255,255,255,.18)!important;box-shadow:0 16px 48px #000000a6,0 0 0 100vw #00000073!important;z-index:100010!important;transform-origin:center bottom!important;animation:mobileChatSlideUp .28s cubic-bezier(.16,1,.3,1)!important}.chatbot-header{padding:12px 16px!important}.chatbot-name{font-size:.95rem!important}.chatbot-avatar{width:34px!important;height:34px!important}.chatbot-messages{padding:14px!important}.chat-message{max-width:90%!important;font-size:.88rem!important;line-height:1.45!important}.chatbot-input-area{padding:10px 12px!important;padding-bottom:max(10px,env(safe-area-inset-bottom))!important;gap:8px!important}.chatbot-input-area input{font-size:16px!important;padding:10px 14px!important}.chatbot-input-area button{width:42px!important;height:42px!important;flex-shrink:0!important}}@keyframes mobileChatSlideUp{0%{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.chatbot-header-action-btn{background:none;border:none;color:var(--text-muted);font-size:1rem;cursor:pointer;transition:color var(--transition-fast),transform var(--transition-fast);padding:4px;display:flex;align-items:center;justify-content:center}.chatbot-header-action-btn:hover{color:var(--accent-blue);transform:scale(1.15)}.review-banner-container{width:100%}.review-banner{background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:24px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-md);position:relative;overflow:hidden;transition:all var(--transition-fast)}.review-banner:before{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(59,130,246,.15) 0%,transparent 70%);z-index:1;pointer-events:none}.review-banner-content{display:flex;align-items:baseline;gap:10px;z-index:2}.review-banner-title{font-family:var(--font-display);font-size:2.8rem;font-weight:800;color:#fff;margin:0;line-height:1;text-shadow:0 2px 10px rgba(59,130,246,.3)}.review-banner-text{font-size:1.1rem;font-weight:500;color:var(--text-secondary);margin:0}.review-banner-panda{font-size:2.5rem;color:var(--accent-blue);background:#3b82f626;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(59,130,246,.25);z-index:2;box-shadow:0 0 15px #3b82f633;animation:pulseGraduation 3s infinite ease-in-out}@keyframes pulseGraduation{0%,to{transform:scale(1);box-shadow:0 0 15px #3b82f633}50%{transform:scale(1.05);box-shadow:0 0 25px #3b82f666}}.deck-category-section{margin-top:32px}.deck-category-title{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:16px;display:flex;align-items:center;gap:10px}.deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.deck-card{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:20px;cursor:pointer;position:relative;overflow:hidden;transition:all var(--transition-normal);display:flex;flex-direction:column;justify-content:space-between;min-height:140px;box-shadow:var(--shadow-sm)}.deck-card:hover{transform:translateY(-5px);border-color:var(--border-glass-hover);box-shadow:var(--shadow-md);background:#ffffff05}.deck-card-glow{position:absolute;top:0;left:0;width:4px;height:100%;background:var(--accent-blue)}.deck-card.personal-wrong .deck-card-glow{background:var(--danger)}.deck-card.personal-starred .deck-card-glow{background:var(--warning)}.deck-card.personal-custom .deck-card-glow{background:var(--accent-teal)}.deck-card.hsk-1 .deck-card-glow{background:#3b82f6}.deck-card.hsk-2 .deck-card-glow{background:#06b6d4}.deck-card.hsk-3 .deck-card-glow{background:#10b981}.deck-card.hsk-4 .deck-card-glow{background:#f59e0b}.deck-card.hsk-5 .deck-card-glow{background:#f97316}.deck-card.hsk-6 .deck-card-glow{background:#ef4444}.deck-card.premium-locked .deck-card-glow{background:var(--text-muted)}.deck-card-top{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.deck-card-title{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0;display:flex;align-items:center;justify-content:space-between}.deck-card-subtitle{font-size:.85rem;color:var(--text-secondary);margin:0}.deck-card-bottom{margin-top:auto;display:flex;flex-direction:column;gap:8px}.deck-progress-container{width:100%;display:flex;flex-direction:column;gap:4px}.deck-progress-bar-bg{width:100%;height:6px;background:#ffffff0d;border-radius:10px;overflow:hidden}.deck-progress-bar-fill{height:100%;background:var(--accent-blue);border-radius:10px;width:0%;transition:width .8s cubic-bezier(.4,0,.2,1)}.deck-card.personal-wrong .deck-progress-bar-fill{background:var(--danger)}.deck-card.personal-starred .deck-progress-bar-fill{background:var(--warning)}.deck-card.personal-custom .deck-progress-bar-fill{background:var(--accent-teal)}.deck-card.hsk-1 .deck-progress-bar-fill{background:#3b82f6}.deck-card.hsk-2 .deck-progress-bar-fill{background:#06b6d4}.deck-card.hsk-3 .deck-progress-bar-fill{background:#10b981}.deck-card.hsk-4 .deck-progress-bar-fill{background:#f59e0b}.deck-card.hsk-5 .deck-progress-bar-fill{background:#f97316}.deck-card.hsk-6 .deck-progress-bar-fill{background:#ef4444}.deck-progress-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);font-weight:500}.deck-card.premium-locked{opacity:.75}.deck-card.premium-locked:hover{opacity:.95;cursor:pointer}.deck-lock-badge{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3);font-size:.7rem;padding:2px 6px;border-radius:4px;font-weight:600;display:flex;align-items:center;gap:4px}.deck-new-badge{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3);font-size:.7rem;padding:2px 6px;border-radius:4px;font-weight:600}.flex-stats{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;width:100%!important}@media (max-width: 768px){.flex-stats{grid-template-columns:repeat(2,1fr)!important}.study-header{flex-direction:column-reverse!important;align-items:stretch!important}.study-deck-title-wrap{text-align:left!important}}.premium-brand-header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 0 24px;width:100%}.brand-cap-text{font-family:var(--font-sans);color:var(--accent-primary);font-size:.8rem;font-weight:800;letter-spacing:.15em;display:flex;align-items:center;gap:6px;margin-bottom:16px;text-transform:uppercase}.brand-blocks{display:flex;gap:8px;justify-content:center;align-items:center;margin-bottom:12px}.brand-block{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.4rem;font-weight:800;font-family:var(--font-sans);box-shadow:0 4px 10px #00000026;transition:transform .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none}.brand-block:hover{transform:scale(1.15) rotate(0)!important;box-shadow:0 8px 16px #00000040;cursor:pointer}.brand-block:nth-child(1){background-color:#ff5e7e;transform:rotate(-5deg)}.brand-block:nth-child(2){background-color:#10b981;transform:rotate(4deg)}.brand-block:nth-child(3){background-color:#3b82f6;transform:rotate(-3deg)}.brand-block:nth-child(4){background-color:#f59e0b;transform:rotate(6deg)}.brand-block:nth-child(5){background-color:#8b5cf6;transform:rotate(-4deg)}.brand-block:nth-child(6){background-color:#f97316;transform:rotate(5deg)}.brand-block:nth-child(7){background-color:#06b6d4;transform:rotate(-2deg)}.brand-slogan{font-size:.95rem;font-style:italic;color:var(--text-secondary);font-weight:400;letter-spacing:.02em}.premium-welcome-card{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;padding:36px 40px;border-radius:24px;margin-bottom:40px;align-items:center;background:linear-gradient(135deg,#fff5f2,#fffaf5);border:1px solid rgba(229,62,62,.12);box-shadow:0 10px 30px #e53e3e0d;transition:transform .2s ease,box-shadow .2s ease}html.dark .premium-welcome-card{background:linear-gradient(135deg,#1f1816,#151312);border:1px solid rgba(229,62,62,.15);box-shadow:0 10px 30px #0000004d}.premium-welcome-card:hover{border-color:#e53e3e40;box-shadow:0 12px 36px #e53e3e14}html.dark .premium-welcome-card:hover{box-shadow:0 12px 36px #0006}.welcome-content-left{display:flex;flex-direction:column}.welcome-tag{align-self:flex-start;background:#e53e3e14;color:var(--accent-primary);border:1px solid rgba(229,62,62,.15);padding:5px 14px;border-radius:50px;font-size:.72rem;font-weight:800;letter-spacing:.05em;margin-bottom:18px;text-transform:uppercase}.welcome-title{font-family:var(--font-sans);font-size:2.1rem;font-weight:800;line-height:1.3;margin-bottom:12px;color:#1e293b}html.dark .welcome-title{color:#f8fafc}.welcome-title span{color:var(--accent-primary)}.welcome-desc{font-size:.95rem;line-height:1.6;color:#475569;margin-bottom:24px}html.dark .welcome-desc{color:#94a3b8}.welcome-actions{display:flex;gap:16px;flex-wrap:wrap}.btn-red-pill{background-color:var(--accent-primary);color:#fff!important;border-radius:50px;padding:12px 28px;font-weight:700;box-shadow:0 4px 15px #e53e3e4d;transition:transform .2s,box-shadow .2s,background-color .2s;display:inline-flex;align-items:center;gap:8px}.btn-red-pill:hover{transform:translateY(-2px);background-color:#c53030;box-shadow:0 6px 20px #e53e3e66}.btn-outline-pill{background:transparent;color:#475569!important;border:1px solid rgba(71,85,105,.25);border-radius:50px;padding:12px 28px;font-weight:700;transition:all .2s}html.dark .btn-outline-pill{color:#cbd5e1!important;border-color:#cbd5e140}.btn-outline-pill:hover{background:#00000008;color:#1e293b!important;border-color:#1e293b;transform:translateY(-2px)}html.dark .btn-outline-pill:hover{background:#ffffff0d;color:#f8fafc!important;border-color:#f8fafc}.welcome-stats-right{display:flex;flex-direction:column;gap:16px}.welcome-stat-card{background:#fff;border-radius:16px;padding:16px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 16px #00000008;border:1px solid rgba(0,0,0,.03);transition:transform .2s}html.dark .welcome-stat-card{background:#1e1b1a80;border-color:#ffffff0d;box-shadow:0 4px 16px #00000026}.welcome-stat-card:hover{transform:translateY(-2px)}.welcome-stat-icon-wrapper{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.welcome-stat-icon-wrapper.orange{background:#fff0eb;color:#f97316}html.dark .welcome-stat-icon-wrapper.orange{background:#f9731626}.welcome-stat-icon-wrapper.pink{background:#fff0f3;color:#ff5e7e}html.dark .welcome-stat-icon-wrapper.pink{background:#ff5e7e26}.welcome-stat-icon-wrapper.blue{background:#eff6ff;color:#3b82f6}html.dark .welcome-stat-icon-wrapper.blue{background:#3b82f626}.welcome-stat-info{display:flex;flex-direction:column}.welcome-stat-label{font-size:.75rem;color:#64748b;margin-bottom:2px;font-weight:500}html.dark .welcome-stat-label{color:#94a3b8}.welcome-stat-value{font-size:1.15rem;font-weight:800;color:#1e293b}html.dark .welcome-stat-value{color:#f8fafc}.section-accent-header{font-family:var(--font-sans);font-size:1.35rem;font-weight:800;margin-top:10px;margin-bottom:20px;display:flex;align-items:center;gap:12px;color:#1e293b;border-left:4px solid var(--accent-primary);padding-left:12px}html.dark .section-accent-header{color:#f8fafc}.curriculum-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:40px}.curriculum-card{padding:24px 28px;border-radius:20px;cursor:pointer;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s;background:var(--bg-glass);border:1px solid var(--border-glass)}.curriculum-card:hover{transform:translateY(-4px);border-color:var(--border-glass-hover);box-shadow:var(--shadow-lg)}.curriculum-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.curriculum-badge{font-size:.85rem;font-weight:800;padding:4px 10px;border-radius:6px;text-transform:uppercase}.curriculum-badge.red{background:#e53e3e1a;color:var(--accent-primary)}.curriculum-badge.green{background:#10b9811a;color:#10b981}.curriculum-desc-right{font-size:.78rem;color:var(--text-muted);font-weight:500}.curriculum-card h3{font-family:var(--font-sans);font-size:1.25rem;font-weight:800;color:var(--text-primary)}.bottom-nav-bar{display:none!important}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-secondary);cursor:pointer;width:70px;height:100%;transition:all .2s ease;font-weight:600;font-size:.72rem;border-radius:8px;-webkit-user-select:none;user-select:none}.bottom-nav-item i{font-size:1.2rem;transition:transform .2s ease}.bottom-nav-item:hover{color:var(--text-primary)}.bottom-nav-item:hover i{transform:translateY(-2px)}.bottom-nav-item.active{color:var(--accent-primary)}.bottom-nav-item.active i{transform:scale(1.1)}@media (max-width: 800px){.premium-welcome-card{grid-template-columns:1fr;gap:24px;padding:28px}.curriculum-grid{grid-template-columns:1fr;gap:16px}}.smart-flashcard-config{background:#ffffff61;backdrop-filter:blur(6px) saturate(160%);-webkit-backdrop-filter:blur(6px) saturate(160%);border:1px solid rgba(255,255,255,.75);border-radius:24px;padding:40px;max-width:900px;margin:0 auto 32px;box-shadow:0 10px 30px #00000014;font-family:Be Vietnam Pro,sans-serif}html.dark .smart-flashcard-config{background:#0f172a47!important;backdrop-filter:blur(6px) saturate(160%)!important;-webkit-backdrop-filter:blur(6px) saturate(160%)!important;border:1px solid rgba(255,255,255,.25)!important;box-shadow:0 10px 30px #0000004d!important}.config-header{text-align:center;margin-bottom:36px}.config-title{font-size:1.8rem;font-weight:800;color:#1e293b;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px}html.dark .config-title{color:#f8fafc}.config-title .title-icon{color:#ff2a5f;animation:pulseGraduation 3s infinite ease-in-out}.config-subtitle{color:#64748b;font-size:.95rem;line-height:1.6;max-width:700px;margin:0 auto}html.dark .config-subtitle{color:#94a3b8}.config-steps-grid{display:flex;flex-direction:column;gap:36px}.config-step-section{border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:28px}html.dark .config-step-section{border-bottom-color:var(--border-glass)}.config-step-section:last-child{border-bottom:none;padding-bottom:0}.step-title{font-size:.95rem;font-weight:800;color:#0f172a;margin-bottom:16px;letter-spacing:.03em;display:flex;align-items:center;gap:8px}html.dark .step-title{color:#cbd5e1}.curriculum-selection-row,.mode-selection-row,.range-selection-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media (max-width: 640px){.curriculum-selection-row,.mode-selection-row,.range-selection-row{grid-template-columns:1fr;gap:12px}}.smart-flashcard-config .selection-card{background:#fff;border:1.5px solid #edf2f7;border-radius:16px;padding:24px;cursor:pointer;display:flex;flex-direction:column;gap:6px;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #00000003;-webkit-user-select:none;user-select:none}html.dark .smart-flashcard-config .selection-card{background:#1e1b1a33;border-color:var(--border-glass)}.smart-flashcard-config .selection-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000a;border-color:#cbd5e1}html.dark .smart-flashcard-config .selection-card:hover{border-color:var(--border-glass-hover);background:#1e1b1a66;box-shadow:0 8px 20px #0003}.smart-flashcard-config .selection-card.active{background:#fff5f6;border-color:#ff2a5f;box-shadow:0 4px 20px #ff2a5f14}html.dark .smart-flashcard-config .selection-card.active{background:#ff2a5f0f;border-color:#ff2a5f;box-shadow:0 4px 20px #ff2a5f26}.smart-flashcard-config .selection-card-title{font-size:1.25rem;font-weight:800;color:#1e293b;transition:color .2s}html.dark .smart-flashcard-config .selection-card-title{color:#f8fafc}.smart-flashcard-config .selection-card.active .selection-card-title{color:#e11d48}html.dark .smart-flashcard-config .selection-card.active .selection-card-title{color:#ff5e7e}.smart-flashcard-config .selection-card-subtitle{font-size:.85rem;color:#64748b;line-height:1.5}html.dark .smart-flashcard-config .selection-card-subtitle{color:#94a3b8}.smart-flashcard-config .check-badge{position:absolute;top:24px;right:24px;font-size:1.3rem;color:#edf2f7;transition:color .2s,transform .2s}html.dark .smart-flashcard-config .check-badge{color:#ffffff14}.smart-flashcard-config .selection-card.active .check-badge{color:#ff2a5f;transform:scale(1.15)}.level-selection-row{display:flex;flex-wrap:wrap;gap:12px}.level-pill{background:#fff;border:1px solid #edf2f7;border-radius:10px;padding:12px 24px;font-size:.9rem;font-weight:700;color:#475569;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}html.dark .level-pill{background:#1e1b1a33;border-color:var(--border-glass);color:#cbd5e1}.level-pill:hover{background:#f8fafc;color:#1e293b;border-color:#cbd5e1;transform:translateY(-1px)}html.dark .level-pill:hover{background:#ffffff0a;color:#f8fafc;border-color:var(--border-glass-hover)}.level-pill.active{background:#ff2a5f;color:#fff;border-color:#ff2a5f;box-shadow:0 4px 12px #ff2a5f33}html.dark .level-pill.active{background:#ff2a5f;color:#fff;border-color:#ff2a5f;box-shadow:0 4px 12px #ff2a5f59}.config-action-container{display:flex;justify-content:center;margin-top:36px}.btn-start-smart{background:#ff2a5f;color:#fff;font-size:1.1rem;font-weight:700;border:none;border-radius:50px;padding:16px 48px;cursor:pointer;display:inline-flex;align-items:center;gap:10px;box-shadow:0 6px 20px #ff2a5f40;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.btn-start-smart:hover{background:#e11d48;transform:translateY(-2px);box-shadow:0 8px 25px #ff2a5f59}.btn-start-smart:active{transform:translateY(0)}.smart-config-custom-picker{margin-top:18px;padding:20px;background:#00000003;border:1px dashed rgba(0,0,0,.08);border-radius:16px;display:none;animation:fadeIn .25s ease-out}html.dark .smart-config-custom-picker{background:#ffffff03;border-color:var(--border-glass)}.smart-mini-deck-card{background:#fff;border:1px solid #edf2f7;border-radius:12px;padding:16px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:space-between}html.dark .smart-mini-deck-card{background:#1e1b1a4d;border-color:var(--border-glass)}.smart-mini-deck-card:hover{border-color:#cbd5e1;background:#f8fafc}html.dark .smart-mini-deck-card:hover{border-color:var(--border-glass-hover);background:#ffffff05}.smart-mini-deck-card.active{border-color:#ff2a5f;background:#fff5f6}html.dark .smart-mini-deck-card.active{border-color:#ff2a5f;background:#ff2a5f0d}.smart-mini-deck-title{font-weight:700;font-size:.88rem;color:var(--text-primary)}.smart-mini-deck-count{font-size:.75rem;color:var(--text-secondary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.lessons-top-banner{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.lessons-cap-title{font-size:.85rem;font-weight:800;color:var(--text-muted);letter-spacing:.05em}.lessons-curriculum-pills{display:flex;gap:12px}.lessons-pill-btn{background:#fff;border:1px solid #edf2f7;color:#475569;font-size:.85rem;font-weight:700;padding:8px 20px;border-radius:50px;cursor:pointer;transition:all .2s}html.dark .lessons-pill-btn{background:#1e1b1a33;border-color:var(--border-glass);color:#cbd5e1}.lessons-pill-btn:hover{background:#f8fafc;color:#1e293b;border-color:#cbd5e1}html.dark .lessons-pill-btn:hover{background:#ffffff0a;border-color:var(--border-glass-hover)}.lessons-pill-btn.active{background:#ff2a5f;border-color:#ff2a5f;color:#fff!important;box-shadow:0 4px 12px #ff2a5f40}.lessons-header-card{background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:20px;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;box-shadow:0 4px 20px #00000003;gap:24px}html.dark .lessons-header-card{background:linear-gradient(135deg,#181616,#111010);border-color:#ffffff0d;box-shadow:0 4px 20px #0003}.lessons-book-icon-wrapper{background:#fff0f3;color:#ff2a5f;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}html.dark .lessons-book-icon-wrapper{background:#ff2a5f1f}.lessons-header-title{font-family:var(--font-sans);font-size:1.6rem;font-weight:800;color:#1e293b;margin-bottom:8px}html.dark .lessons-header-title{color:#f8fafc}.lessons-header-subtitle{color:#64748b;font-size:.9rem;line-height:1.5;max-width:600px}html.dark .lessons-header-subtitle{color:#94a3b8}.lessons-level-pills{display:flex;gap:12px;flex-shrink:0}.lessons-level-btn{background:#fff;border:1.5px solid #cbd5e1;color:#1e293b;font-size:.88rem;font-weight:700;padding:10px 24px;border-radius:12px;cursor:pointer;transition:all .2s}html.dark .lessons-level-btn{background:#1e1b1a33;border-color:var(--border-glass);color:#cbd5e1}.lessons-level-btn:hover{background:#f8fafc;border-color:#94a3b8}html.dark .lessons-level-btn:hover{background:#ffffff0a;border-color:var(--border-glass-hover)}.lessons-level-btn.active{background:#ff2a5f;border-color:#ff2a5f;color:#fff!important;box-shadow:0 4px 12px #ff2a5f40}.lessons-volume-pills{display:flex;gap:8px;flex-shrink:0}.lessons-volume-btn{background:#fff;border:1.5px solid #cbd5e1;color:#475569;font-size:.8rem;font-weight:600;padding:6px 14px;border-radius:8px;cursor:pointer;transition:all .2s}html.dark .lessons-volume-btn{background:#1e1b1a4d;border-color:var(--border-glass);color:#94a3b8}.lessons-volume-btn:hover{background:#f1f5f9}html.dark .lessons-volume-btn:hover{background:#ffffff14}.lessons-volume-btn.active{background:#0284c7;border-color:#0284c7;color:#fff!important;box-shadow:0 2px 8px #0284c740}.lessons-dropdown-select{background:#ffffff14;border:1.5px solid rgba(255,255,255,.15);border-radius:10px;color:#f1f5f9;font-size:.85rem;font-weight:600;font-family:inherit;padding:8px 36px 8px 14px;cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%2394a3b8' d='M4.5 6l3.5 4 3.5-4z'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-size:14px;min-width:140px;transition:border-color .2s ease,box-shadow .2s ease}.lessons-dropdown-select:hover,.lessons-dropdown-select:focus{border-color:#ff2a5f99;box-shadow:0 0 0 3px #ff2a5f1f}.lessons-dropdown-select option{background:#1e1b26;color:#f1f5f9;font-weight:600;padding:6px 12px}html:not(.dark) .lessons-dropdown-select{background-color:#fff;border:1.5px solid #cbd5e1;color:#0f172a!important;font-weight:700;box-shadow:0 2px 6px #0000000d;background-image:url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%23334155' d='M4.5 6l3.5 4 3.5-4z'/></svg>")}html:not(.dark) .lessons-dropdown-select:hover,html:not(.dark) .lessons-dropdown-select:focus{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e26}html:not(.dark) .lessons-dropdown-select option{background:#fff;color:#0f172a}.lessons-objectives-bar{background:#fffdf9;border:1px solid rgba(245,158,11,.12);border-radius:12px;padding:14px 20px;display:flex;align-items:center;gap:12px;margin-bottom:32px;font-size:.9rem;color:#b45309}html.dark .lessons-objectives-bar{background:#f59e0b0a;border-color:#f59e0b26;color:#f59e0b}.lessons-objectives-bar .info-icon{font-size:1.1rem;color:#f59e0b}.lessons-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}@media (max-width: 768px){.lessons-grid{grid-template-columns:1fr;gap:18px}.lessons-header-card{flex-direction:column;align-items:flex-start;padding:20px}.lessons-level-pills{width:100%;overflow-x:auto;padding-bottom:6px}}.lesson-card{background:#fff;border:1.5px solid #edf2f7;border-radius:16px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;min-height:180px;transition:all .25s ease;min-height:220px;transition:all .2s ease;box-shadow:var(--shadow-sm)}html.dark .lesson-card{background:var(--bg-card);border-color:var(--border-glass);box-shadow:0 4px 15px #0003}.lesson-card:hover{transform:translateY(-4px);border-color:var(--accent-primary);box-shadow:var(--shadow-glow)}.lesson-modules-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px;padding-top:14px;border-top:2px dashed var(--border-glass)}.lesson-mod-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;border-radius:var(--radius-md);border:none;font-family:var(--font-display);font-weight:700;font-size:.85rem;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.lesson-mod-btn i{font-size:1.15rem}.lesson-mod-btn small{font-size:.7rem;opacity:.85}.lesson-mod-btn.mod-vocab{background:#58cc02;color:#fff;box-shadow:0 4px #46a302}.lesson-mod-btn.mod-vocab:hover{background:#61df02}.lesson-mod-btn.mod-vocab:active{box-shadow:0 1px #46a302;transform:translateY(3px)}.lesson-mod-btn.mod-grammar{background:#1cb0f6;color:#fff;box-shadow:0 4px #1899d6}.lesson-mod-btn.mod-grammar:hover{background:#24bbfd}.lesson-mod-btn.mod-grammar:active{box-shadow:0 1px #1899d6;transform:translateY(3px)}.lesson-mod-btn.mod-text{background:#ffc800;color:#4b3200;box-shadow:0 4px #e5b200}.lesson-mod-btn.mod-text:hover{background:#ffd21a}.lesson-mod-btn.mod-text:active{box-shadow:0 1px #e5b200;transform:translateY(3px)}.lesson-mod-btn.mod-review{background:#ce82ff;color:#fff;box-shadow:0 4px #b45be6}.lesson-mod-btn.mod-review:hover{background:#d896ff}.lesson-mod-btn.mod-review:active{box-shadow:0 1px #b45be6;transform:translateY(3px)}.lesson-mod-btn.mod-video{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px #b91c1c}.lesson-mod-btn.mod-video:hover{background:linear-gradient(135deg,#f87171,#ef4444)}.lesson-mod-btn.mod-video:active{box-shadow:0 1px #b91c1c;transform:translateY(3px)}.stepper-extra-video-btn{background:#ef444426!important;border-color:#ef444466!important;color:#fca5a5!important;transition:all .2s ease!important}.stepper-extra-video-btn:hover{background:#ef44444d!important;border-color:#ef4444!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 14px #ef444466}.stepper-extra-video-btn:active{transform:scale(.96)}html.light-mode .stepper-extra-video-btn,body.light-mode .stepper-extra-video-btn{background:#fef2f2!important;border-color:#fca5a5!important;color:#dc2626!important}.lesson-badge{align-self:flex-start;background:#e53e3e0f;color:#ff2a5f;border:1px solid rgba(229,62,62,.15);font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:4px;text-transform:uppercase;margin-bottom:12px}.lesson-title{font-size:1.15rem;font-weight:700;color:#1e293b;margin-bottom:8px}html.dark .lesson-title{color:#f8fafc}.lesson-desc{font-size:.88rem;line-height:1.5;color:#64748b;margin-bottom:20px}html.dark .lesson-desc{color:#cbd5e1}.lesson-footer{border-top:1px solid rgba(0,0,0,.04);padding-top:14px;margin-top:auto;display:flex;justify-content:space-between;align-items:center}html.dark .lesson-footer{border-top-color:var(--border-glass)}.lesson-words-indicator{font-size:.8rem;color:var(--text-muted);display:flex;align-items:center;gap:6px;font-weight:500}.lesson-detail-link{font-size:.85rem;color:#ff2a5f;font-weight:700;text-decoration:none;display:flex;align-items:center;gap:4px;transition:transform .2s;cursor:pointer}.lesson-detail-link:hover{transform:translate(3px);color:#e11d48}.dict-segmented-control{border-radius:50px;background:var(--bg-glass);border:1px solid var(--border-glass);width:100%}.dict-tab-btn{background:transparent;color:var(--text-secondary);border:none;font-weight:700;transition:all var(--transition-fast) ease}.dict-tab-btn:hover{color:var(--text-primary)}.dict-tab-btn.active{background:var(--accent-blue)!important;color:#fff!important;box-shadow:0 4px 12px #3b82f640}.dict-popular-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:12px;border:1px solid var(--border-glass);background:var(--bg-glass);cursor:pointer;transition:all var(--transition-fast);text-align:left;-webkit-user-select:none;user-select:none}html.dark .dict-popular-item{background:#1e1b1a33}.dict-popular-item:hover{transform:translate(2px);border-color:var(--border-glass-hover);background:#ffffff05}.dict-popular-item.active{border-color:#ff2a5f;background:#fff5f6}html.dark .dict-popular-item.active{background:#ff2a5f0d}.dict-popular-word{font-family:var(--font-chinese);font-size:1.1rem;font-weight:700;color:var(--text-primary)}.dict-popular-pinyin{font-size:.85rem;color:var(--text-secondary);margin-left:6px}.dict-popular-meaning{font-size:.82rem;color:var(--text-muted);max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dict-grammar-card{background:#3b82f608;border:1px solid rgba(59,130,246,.1);border-radius:12px;padding:16px 20px;border-left:4px solid var(--accent-blue);text-align:left}html.dark .dict-grammar-card{background:#3b82f60d;border-color:#ffffff0d}.dict-grammar-title{font-weight:800;font-size:.95rem;color:var(--text-primary);margin-bottom:6px}.dict-grammar-explain{font-size:.88rem;line-height:1.5;color:var(--text-secondary);margin:0}.dict-correction-item{border:1.5px solid var(--border-glass);border-radius:14px;padding:18px;background:var(--bg-glass);display:flex;flex-direction:column;gap:8px;text-align:left}.dict-correction-header{display:flex;align-items:center;gap:8px;font-weight:800;font-size:.85rem;color:var(--text-primary)}.dict-correction-header.error{color:var(--danger)}.dict-correction-desc{font-size:.88rem;line-height:1.5;color:var(--text-secondary);margin:0}.dict-correction-original{font-family:var(--font-chinese);text-decoration:line-through;color:var(--danger);font-weight:500}.dict-correction-fixed{font-family:var(--font-chinese);color:var(--success);font-weight:700}.dict-stroke-writer-grid{position:relative;box-shadow:inset 0 0 10px #0000001a;overflow:hidden}.dict-stroke-writer-grid:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:linear-gradient(to right,rgba(239,68,68,.12) 1px,transparent 1px) 50% 0 / 100% 100% repeat-y,linear-gradient(to bottom,rgba(239,68,68,.12) 1px,transparent 1px) 0 50% / 100% 100% repeat-x,repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(239,68,68,.06) 4px,rgba(239,68,68,.06) 5px),repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(239,68,68,.06) 4px,rgba(239,68,68,.06) 5px);z-index:1}.dict-stroke-writer-grid svg{position:relative;z-index:2}@keyframes mic-pulse{0%{transform:scale(1);box-shadow:0 0 #10b98166}70%{transform:scale(1.08);box-shadow:0 0 0 12px #10b98100}to{transform:scale(1);box-shadow:0 0 #10b98100}}.mic-recording-pulse{animation:mic-pulse 1.4s infinite!important;background:var(--success)!important;color:#fff!important}.dict-quick-save-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;font-size:.8rem;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast) ease;text-align:left}.dict-quick-save-item:hover{background:#ffffff0d;color:var(--text-primary)}html.light .dict-quick-save-item:hover{background:#0000000d}.dict-tutor-prompt-pill{padding:6px 12px;border-radius:20px;background:#3b82f614;border:1px solid rgba(59,130,246,.15);color:var(--accent-blue);font-size:.78rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast) ease}.dict-tutor-prompt-pill:hover{background:var(--accent-blue);color:#fff;transform:translateY(-1px);box-shadow:0 2px 6px #3b82f633}.topic-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.topic-card:hover{transform:translateY(-5px);border-color:var(--accent-blue)!important;box-shadow:var(--shadow-lg),0 0 15px #3b82f626!important;background:#ffffff08!important}html.dark .topic-card:hover{background:#ffffff05!important}#nb-start-flashcard-btn:hover{border-color:var(--accent-blue)!important;background:#3b82f60f!important;transform:scale(1.01)}#nb-start-typing-btn:hover{border-color:var(--success)!important;background:#10b9810f!important;transform:scale(1.01)}#nb-start-sentence-btn:hover{border-color:#a855f7!important;background:#a855f714!important;transform:scale(1.01)}#nb-start-quiz-btn:hover{border-color:var(--warning)!important;background:#f59e0b0f!important;transform:scale(1.01)}.quiz-option-btn{display:block;width:100%;padding:16px 24px;font-size:1.05rem;font-weight:600;text-align:left;background:#ffffff08;border:1.5px solid var(--border-glass);border-radius:12px;color:var(--text-primary);cursor:pointer;transition:all .2s ease;outline:none;font-family:var(--font-sans)}.quiz-option-btn:hover:not([disabled]){background:#ffffff14;border-color:var(--text-secondary);transform:translate(4px)}.quiz-option-btn.correct{background:var(--success-bg)!important;border-color:var(--success)!important;color:var(--success)!important;font-weight:700}.quiz-option-btn.incorrect{background:var(--danger-bg)!important;border-color:var(--danger)!important;color:var(--danger)!important;font-weight:700}.quiz-option-btn[disabled]{cursor:not-allowed}.study-method-card{box-shadow:0 4px 12px #00000008}.study-method-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014;border-color:var(--accent-blue);background:var(--bg-card)}.study-method-card.quiz-card:hover{border-color:#f59e0b;box-shadow:0 6px 16px #f59e0b26}.filter-btn,.limit-btn{padding:7px 16px!important;border-radius:10px!important;font-size:.86rem!important;font-weight:700!important;cursor:pointer!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;border:1.5px solid #cbd5e1!important;background:#fff!important;color:#475569!important;box-shadow:0 1px 3px #0000000d!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.filter-btn:hover,.limit-btn:hover{background:#f1f5f9!important;border-color:#94a3b8!important;color:#0f172a!important;transform:translateY(-1px)}.filter-btn.active-filter,html.light-mode .filter-btn.active-filter,html:not(.dark) .filter-btn.active-filter{background:linear-gradient(135deg,#9333ea,#7e22ce)!important;color:#fff!important;border:1.5px solid #6b21a8!important;font-weight:900!important;box-shadow:0 4px 14px #9333ea73!important;transform:translateY(-1px)}.limit-btn.active-limit,html.light-mode .limit-btn.active-limit,html:not(.dark) .limit-btn.active-limit{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;color:#fff!important;border:1.5px solid #1e40af!important;font-weight:900!important;box-shadow:0 4px 14px #2563eb73!important;transform:translateY(-1px)}html.dark .filter-btn,body.dark-mode .filter-btn,html.dark .limit-btn,body.dark-mode .limit-btn{background:#ffffff0d!important;border:1.5px solid rgba(255,255,255,.16)!important;color:#cbd5e1!important;box-shadow:none!important}html.dark .filter-btn:hover,body.dark-mode .filter-btn:hover,html.dark .limit-btn:hover,body.dark-mode .limit-btn:hover{background:#ffffff1a!important;border-color:#ffffff4d!important;color:#fff!important}html.dark .filter-btn.active-filter,body.dark-mode .filter-btn.active-filter{background:linear-gradient(135deg,#a855f7,#7c3aed)!important;color:#fff!important;border:1.5px solid #c084fc!important;box-shadow:0 4px 16px #a855f780!important;font-weight:900!important}html.dark .limit-btn.active-limit,body.dark-mode .limit-btn.active-limit{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important;border:1.5px solid #60a5fa!important;box-shadow:0 4px 16px #3b82f680!important;font-weight:900!important}html,body{-webkit-tap-highlight-color:transparent;touch-action:manipulation;overflow-x:hidden}body{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}button,input,select,textarea,.btn,.nav-item,.quiz-option-btn,.speaker-btn{touch-action:manipulation;min-height:44px}.table-responsive,.custom-words-table-wrap,.detail-table-wrap{-webkit-overflow-scrolling:touch}@media (max-width: 768px){.flashcard-card-container{min-height:460px!important;height:470px!important;max-height:65vh!important;margin-bottom:10px!important}.flashcard-card{min-height:100%!important;height:100%!important;padding:0!important}.card-side{padding:16px 16px 14px!important;border-radius:20px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;box-sizing:border-box!important}.card-back .card-content-main{flex:1 1 auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;min-height:0!important;max-height:100%!important;justify-content:flex-start!important;padding:4px 2px!important;margin:4px 0!important;scrollbar-width:thin!important}.chinese-word{font-size:4rem!important;line-height:1.1!important}.pinyin-text{font-size:1.65rem!important;margin-bottom:3px!important}.meaning-text{font-size:1.08rem!important;margin-bottom:6px!important;line-height:1.35!important}.example-box{padding:9px 12px!important;margin:6px 0!important;border-radius:12px!important;box-sizing:border-box!important}.example-zh{font-size:.96rem!important;gap:8px!important;line-height:1.3!important}.example-vi{font-size:.82rem!important;line-height:1.25!important}.card-action-bar{flex-shrink:0!important;padding-top:8px!important;margin-top:auto!important;border-top:1px solid var(--border-glass)!important;position:relative!important;z-index:5!important}.flashcard-swipe-hint-bar{font-size:.78rem!important;padding:6px 14px!important;gap:8px!important;margin:8px auto 6px!important;width:fit-content!important;max-width:95%!important;border-radius:20px!important}.card-hud-controls{gap:6px!important;margin-top:12px!important;margin-bottom:12px!important;width:100%!important;justify-content:center!important;display:flex!important;flex-wrap:nowrap!important}.btn-hud{padding:10px 8px!important;font-size:.8rem!important;flex:1 1 auto!important;max-width:none!important;gap:4px!important;border-radius:30px!important;white-space:nowrap!important}#mark-starred-btn span{display:none!important}#mark-starred-btn{flex:0 0 40px!important;width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;padding:0!important;border-radius:50%!important}#prev-card-btn,#next-card-btn{flex:0 0 40px!important;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;border-radius:50%!important}.card-viewport{gap:8px!important;padding-bottom:95px!important}}@media (max-width: 380px){.flashcard-card-container{min-height:440px!important;height:450px!important}.chinese-word{font-size:3.4rem!important}.card-hud-controls{gap:4px!important}.btn-hud{padding:8px 6px!important;font-size:.74rem!important;gap:3px!important}#prev-card-btn,#next-card-btn,#mark-starred-btn{flex:0 0 36px!important;width:36px!important;height:36px!important;min-width:36px!important}.study-controls{flex-wrap:wrap;gap:8px}.control-btn{flex:1 1 45%}}.zubi-dashboard-container{display:flex;flex-direction:column;gap:28px;margin-bottom:40px}.zubi-header-banner{background:linear-gradient(135deg,#1d4ed8,#2563eb,#3b82f6);border-radius:20px;padding:36px 40px 64px;position:relative;overflow:hidden;color:#fff;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:0 10px 30px #2563eb40}html.dark .zubi-header-banner{background:linear-gradient(135deg,#1e3a8a,#1d4ed8 60%,#2563eb);box-shadow:0 12px 36px #0006}.zubi-header-title{display:flex;align-items:center;gap:12px;margin-bottom:8px}.zubi-header-title .title-bar{width:4px;height:28px;background:#fff;border-radius:4px}.zubi-header-title h1{font-family:var(--font-display);font-size:2.2rem;font-weight:800;color:#fff;margin:0;letter-spacing:-.02em}.zubi-header-subtitle{font-size:.95rem;color:#ffffffd9;margin:0;font-weight:400}.zubi-header-illustration{display:flex;gap:12px;align-items:center}.illustration-badge{width:56px;height:56px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:1.6rem;color:#fff}.illustration-badge.secondary{width:44px;height:44px;font-size:1.2rem;background:#ffffff26}.zubi-stat-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:0;position:relative;z-index:10;padding:0}@media (max-width: 900px){.zubi-stat-cards-grid{grid-template-columns:1fr;margin-top:0}}.zubi-stat-card{background:linear-gradient(135deg,#ffffff8c,#e1eeff61);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.85);border-radius:16px;padding:22px 24px;box-shadow:0 10px 32px #1f268714,inset 0 1px 1px #ffffffe6;display:flex;flex-direction:column;gap:12px;transition:transform .25s ease,box-shadow .25s ease}html.dark .zubi-stat-card{background:linear-gradient(135deg,#0f172aa6,#1e293b80)!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 10px 32px #0000005e!important}.zubi-stat-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px #0000001f}.zubi-stat-top{display:flex;justify-content:space-between;align-items:center}.zubi-circle-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem}.zubi-circle-icon.pink{background:#fce7f3;color:#ec4899}.zubi-circle-icon.orange{background:#ffedd5;color:#f97316}.zubi-circle-icon.cyan{background:#e0f2fe;color:#0284c7}html.dark .zubi-circle-icon.pink{background:#ec489933}html.dark .zubi-circle-icon.orange{background:#f9731633}html.dark .zubi-circle-icon.cyan{background:#0284c733}.zubi-eye-icon{color:#94a3b8;font-size:1.05rem;cursor:pointer;transition:color .2s ease}.zubi-eye-icon:hover{color:#3b82f6}.zubi-stat-val{font-family:var(--font-display);font-size:1.85rem;font-weight:800;color:#0f172a;line-height:1.1}html.dark .zubi-stat-val{color:#f8fafc}.zubi-stat-label{font-size:.85rem;font-weight:500;color:#64748b}html.dark .zubi-stat-label{color:#94a3b8}.zubi-section-block{display:flex;flex-direction:column;gap:16px}.zubi-section-header h2{font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:#0f172a;margin:0}html.dark .zubi-section-header h2{color:#f8fafc}.zubi-recent-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.zubi-recent-card{background:linear-gradient(135deg,#ffffff8c,#e1eeff61);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.85);border-radius:16px;padding:20px 22px;box-shadow:0 8px 32px #1f268714;display:flex;flex-direction:column;gap:14px;transition:transform .2s ease,box-shadow .2s ease}html.dark .zubi-recent-card{background:linear-gradient(135deg,#0f172aa6,#1e293b80)!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 10px 32px #0000005e!important}.zubi-recent-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.recent-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.recent-title{font-weight:700;font-size:.95rem;color:#0f172a;line-height:1.3}html.dark .recent-title{color:#f8fafc}.recent-val{font-family:var(--font-display);font-size:1.6rem;font-weight:800}.recent-val.green-text{color:#10b981}.recent-val.cyan-text{color:#06b6d4}.recent-card-footer{display:flex;justify-content:space-between;align-items:center}.recent-date{font-size:.8rem;color:#94a3b8;font-weight:500}.zubi-pill{padding:4px 12px;border-radius:50px;font-size:.75rem;font-weight:700;display:inline-block}.zubi-pill.warning{background:#fef3c7;color:#d97706}.zubi-pill.danger{background:#fee2e2;color:#ef4444}.zubi-pill.success{background:#d1fae5;color:#059669}html.dark .zubi-pill.warning{background:#d9770633;color:#fbbf24}html.dark .zubi-pill.danger{background:#ef444433;color:#f87171}html.dark .zubi-pill.success{background:#10b98133;color:#34d399}.zubi-table-wrap{background:linear-gradient(135deg,#ffffff8c,#e1eeff61);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.85);border-radius:16px;padding:16px 20px;box-shadow:0 8px 32px #1f268714;overflow-x:auto}html.dark .zubi-table-wrap{background:linear-gradient(135deg,#0f172aa6,#1e293b80)!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 10px 32px #0000005e!important}.zubi-table{width:100%;border-collapse:collapse;text-align:left;font-size:.88rem}.zubi-table th{padding:14px 16px;color:#94a3b8;font-size:.72rem;font-weight:700;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}html.dark .zubi-table th{border-bottom-color:#ffffff14}.zubi-table td{padding:16px;color:#334155;border-bottom:1px solid #f1f5f9}html.dark .zubi-table td{color:#cbd5e1;border-bottom-color:#ffffff0d}.zubi-table tr:last-child td{border-bottom:none}.zubi-progress-bar-wrap{width:120px;height:8px;background:#e2e8f0;border-radius:50px;overflow:hidden}html.dark .zubi-progress-bar-wrap{background:#ffffff1a}.zubi-progress-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:50px}.zubi-action-link{color:#2563eb;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:color .2s ease}.zubi-action-link:hover{color:#1d4ed8;text-decoration:underline}html.dark .zubi-action-link{color:#60a5fa}html:not(.dark) .zubi-stat-card{background:#fffffff2!important;border-color:#e2e8f0e6!important;box-shadow:0 10px 25px #0000000d!important}html:not(.dark) .zubi-stat-val{color:#0f172a!important}html:not(.dark) .zubi-stat-label{color:#64748b!important}html:not(.dark) .zubi-recent-card{background:#fffffff2!important;border-color:#e2e8f0e6!important;box-shadow:0 4px 16px #0000000d!important}html:not(.dark) .zubi-recent-card .recent-title{color:#0f172a!important}html:not(.dark) .zubi-recent-card .recent-date{color:#64748b!important}html:not(.dark) .zubi-eye-icon{color:#64748b!important}html:not(.dark) .zubi-dashboard-hero{background:linear-gradient(135deg,#eff6fff2,#f5f3fff2)!important;border-color:#e2e8f0e6!important;box-shadow:0 10px 30px #0000000a!important}html:not(.dark) #zubi-hero-title,html:not(.dark) #zubi-hero-user-name{color:#0f172a!important}html:not(.dark) #zubi-hero-subtitle,html:not(.dark) #zubi-hero-tip{color:#475569!important}html:not(.dark) .zubi-dashboard-table-container{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 20px #0000000d!important}html:not(.dark) .zubi-table th,html:not(.dark) .zubi-th{background:#f8fafc!important;color:#0f172a!important;border-bottom:1px solid #e2e8f0!important}html:not(.dark) .zubi-table td,html:not(.dark) .zubi-td{color:#1e293b!important;border-bottom-color:#f1f5f9!important}html:not(.dark) #zubi-stat-modal>div,html:not(.dark) #about-hongtai-modal>div{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 20px 50px #00000026!important;color:#1e293b!important}html:not(.dark) #zubi-modal-title,html:not(.dark) #about-hongtai-modal h2,html:not(.dark) #about-hongtai-modal h3{color:#0f172a!important}html:not(.dark) #zubi-modal-subtitle,html:not(.dark) #about-hongtai-modal p{color:#475569!important}html.dark #about-hongtai-modal .about-quote-box{background:#1e293b!important;color:#f1f5f9!important;border-left-color:#38bdf8!important}html:not(.dark) #about-hongtai-modal .about-quote-box{background:#f0f9ff!important;color:#0f172a!important;border-left-color:#0284c7!important}html.dark #about-hongtai-modal .about-card-box{background:#1e293b!important;border:1px solid rgba(255,255,255,.08)!important;color:#cbd5e1!important}html:not(.dark) #about-hongtai-modal .about-card-box{background:#f8fafc!important;border:1px solid #e2e8f0!important;color:#334155!important}html.dark #about-hongtai-modal .about-card-box p{color:#cbd5e1!important}html:not(.dark) #about-hongtai-modal .about-card-box p{color:#475569!important}html.dark #about-hongtai-modal .about-mission-box{background:#ef44441f!important;border:1px solid rgba(239,68,68,.3)!important}html:not(.dark) #about-hongtai-modal .about-mission-box{background:#fef2f2!important;border:1px solid #fca5a5!important}html.dark #about-hongtai-modal .about-mission-title{color:#fff!important}html:not(.dark) #about-hongtai-modal .about-mission-title{color:#991b1b!important}html.dark #about-hongtai-modal .about-mission-box p{color:#cbd5e1!important}html:not(.dark) #about-hongtai-modal .about-mission-box p{color:#7f1d1d!important}#about-hongtai-modal .btn-primary{background:linear-gradient(135deg,#2563eb,#3b82f6)!important;color:#fff!important;box-shadow:0 4px 14px #2563eb4d!important}html.dark #about-hongtai-modal .about-modal-footer{background:#1e293b!important;border-top-color:#ffffff1a!important;color:#94a3b8!important}html:not(.dark) #about-hongtai-modal .about-modal-footer{background:#f8fafc!important;border-top-color:#e2e8f0!important;color:#64748b!important}html.dark .zubi-section-title{color:#fff!important}html:not(.dark) .zubi-section-title{color:#0f172a!important}html.dark .zubi-table-wrap{background:#1e293b!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 4px 20px #0000004d!important}html:not(.dark) .zubi-table-wrap{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 20px #0000000d!important}html.dark .zubi-th{color:#cbd5e1!important;border-bottom:1px solid rgba(255,255,255,.1)!important;background:#0f172a!important}html:not(.dark) .zubi-th{color:#0f172a!important;border-bottom:1px solid #e2e8f0!important;background:#f8fafc!important}html.dark .zubi-td{color:#f1f5f9!important;border-bottom:1px solid rgba(255,255,255,.08)!important}html:not(.dark) .zubi-td{color:#1e293b!important;border-bottom:1px solid #f1f5f9!important}html.dark .zubi-td-bold{color:#fff!important}html:not(.dark) .zubi-td-bold{color:#0f172a!important}html.dark .zubi-table-btn{color:#60a5fa!important}html:not(.dark) .zubi-table-btn{color:#2563eb!important}.exam-mode-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;font-size:.9rem;font-weight:700;font-family:inherit;border:none;border-bottom:3px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:0;transition:color .2s,border-color .2s;white-space:nowrap;position:relative;bottom:-2px}.exam-mode-tab:hover{color:#f1f5f9}.exam-mode-tab.active{color:#ff2a5f;border-bottom-color:#ff2a5f}html:not(.dark) .exam-mode-tab{color:#64748b}html:not(.dark) .exam-mode-tab:hover{color:#1e293b}html:not(.dark) .exam-mode-tab.active{color:#ff2a5f}.exam-tab-badge{background:#ff2a5f2e;color:#ff2a5f;border-radius:20px;font-size:.72rem;font-weight:800;padding:2px 8px}.exam-lib-card{background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:18px 20px;transition:border-color .2s,box-shadow .2s,transform .15s;position:relative;overflow:hidden}.exam-lib-card:hover{border-color:#ff2a5f66;box-shadow:0 4px 20px #ff2a5f1f;transform:translateY(-2px)}html:not(.dark) .exam-lib-card,html.light-mode .exam-lib-card,html.light .exam-lib-card{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 16px #0000000d!important}html.dark .exam-lib-card{background:#1e293b!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 4px 20px #00000040!important}html:not(.dark) .exam-lib-card:hover{border-color:#ff2a5f!important;box-shadow:0 8px 25px #ff2a5f26!important}.exam-lib-card-level-badge{display:inline-block;background:linear-gradient(135deg,#ff2a5f,#e11d48);color:#fff;font-size:.7rem;font-weight:800;padding:3px 10px;border-radius:20px;margin-bottom:10px;letter-spacing:.05em}.exam-lib-card-code{font-size:1.05rem;font-weight:800;color:#f1f5f9;margin:0 0 4px}html:not(.dark) .exam-lib-card-code{color:#1e293b}.exam-lib-card-meta{font-size:.8rem;color:var(--text-muted);margin:0 0 14px}.exam-lib-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;border-top:1px solid rgba(255,255,255,.08);padding-top:14px}html:not(.dark) .exam-lib-actions{border-top-color:#e2e8f0}.exam-lib-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:8px;font-size:.8rem;font-weight:700;font-family:inherit;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:all .18s;white-space:nowrap}.exam-lib-btn-pdf{background:#ef44441f;color:#f87171;border-color:#ef444440}.exam-lib-btn-pdf:hover{background:#ef444440;color:#fca5a5}.exam-lib-btn-mp3{background:#22c55e1a;color:#4ade80;border-color:#22c55e33}.exam-lib-btn-mp3:hover{background:#22c55e38;color:#86efac}.exam-lib-btn-ans{background:#fbbf241a;color:#fcd34d;border-color:#fbbf2433}.exam-lib-btn-ans:hover{background:#fbbf2438;color:#fde68a}html:not(.dark) .exam-lib-btn-mp3{color:#16a34a;border-color:#bbf7d0;background:#f0fdf4}html:not(.dark) .exam-lib-btn-mp3:hover{background:#dcfce7}html:not(.dark) .exam-lib-btn-pdf{color:#dc2626;border-color:#fecaca;background:#fff1f2}html:not(.dark) .exam-lib-btn-pdf:hover{background:#fee2e2}html:not(.dark) .exam-lib-btn-ans{color:#b45309;border-color:#fde68a;background:#fffbeb}html:not(.dark) .exam-lib-btn-ans:hover{background:#fef3c7}.exam-lib-pill{padding:7px 16px;border-radius:20px;font-size:.82rem;font-weight:700;font-family:inherit;border:1.5px solid rgba(255,255,255,.15);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .18s}.exam-lib-pill:hover{border-color:#ff2a5f80;color:#f1f5f9}.exam-lib-pill.active{background:#ff2a5f;border-color:#ff2a5f;color:#fff;box-shadow:0 2px 10px #ff2a5f4d}html:not(.dark) .exam-lib-pill{border-color:#cbd5e1;color:#64748b}html:not(.dark) .exam-lib-pill:hover{border-color:#ff2a5f;color:#1e293b}html:not(.dark) .exam-lib-pill.active{background:#ff2a5f;color:#fff}body{display:flex;flex-direction:column;min-height:100vh;width:100%;padding-bottom:0!important}.app-sidebar{width:260px;height:100vh;height:100dvh;position:fixed;top:0;left:0;z-index:500;background:var(--bg-glass, rgba(15, 23, 42, .95));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--border-glass, rgba(255, 255, 255, .1));display:flex!important;flex-direction:column!important;justify-content:flex-start!important;padding:16px 12px 60px!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent;box-sizing:border-box!important;transition:transform .25s ease,opacity .25s ease}@media (min-width: 768px){body:not(.sidebar-collapsed) .app-sidebar:not(.global-sidebar-drawer){transform:translate(0)!important;visibility:visible!important;pointer-events:auto!important;opacity:1!important;position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:260px!important;display:flex!important}body:not(.sidebar-collapsed) .main-layout{margin-left:260px!important;width:calc(100% - 260px)!important;max-width:calc(100% - 260px)!important}}.global-sidebar-drawer,#global-sidebar-mount .app-sidebar{width:290px!important;max-width:86vw!important;height:100vh!important;height:100dvh!important;position:fixed!important;top:0!important;left:0!important;bottom:0!important;z-index:100000!important;background:#0f172afa!important;backdrop-filter:blur(24px) saturate(180%)!important;-webkit-backdrop-filter:blur(24px) saturate(180%)!important;box-shadow:4px 0 32px #000000a6!important;border-right:1px solid var(--border-glass, rgba(255, 255, 255, .1))!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;padding:16px 14px calc(140px + env(safe-area-inset-bottom,30px))!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;box-sizing:border-box!important;transform:translate(-105%)!important;transition:transform .3s cubic-bezier(.16,1,.3,1)!important;pointer-events:none!important;visibility:hidden!important}.global-sidebar-drawer.open,.global-sidebar-drawer.active,#global-sidebar-mount .app-sidebar.open,#global-sidebar-mount .app-sidebar.active,body.sidebar-open .global-sidebar-drawer,body.sidebar-open #global-sidebar-mount .app-sidebar{transform:translate(0)!important;opacity:1!important;pointer-events:auto!important;visibility:visible!important}.app-sidebar::-webkit-scrollbar,.global-sidebar-drawer::-webkit-scrollbar{width:5px}.app-sidebar::-webkit-scrollbar-thumb,.global-sidebar-drawer::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:4px}.app-sidebar .sidebar-menu-wrapper,.global-app-sidebar .sidebar-menu-wrapper{width:100%!important;display:flex!important;flex-direction:column!important;flex:none!important;height:auto!important;overflow:visible!important;padding-bottom:50px!important;box-sizing:border-box!important}.sidebar-header{display:flex;align-items:center;gap:12px;padding:8px 12px 20px;border-bottom:1px solid var(--border-glass);margin-bottom:16px;flex-shrink:0!important}.sidebar-logo{height:44px;width:auto;object-fit:contain;filter:drop-shadow(0 0 2px rgba(255,255,255,.6))}.app-sidebar .sidebar-menu,.global-app-sidebar .sidebar-menu{list-style:none;display:flex;flex-direction:column;gap:6px;width:100%;margin:0;padding:0;overflow:visible!important;flex:none!important}.sidebar-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:var(--radius-md);font-size:.95rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.sidebar-item i{font-size:1.15rem;width:22px;text-align:center;color:var(--text-muted);transition:color var(--transition-fast)}.sidebar-item:hover{background:#3b82f61a;color:var(--text-primary)}.sidebar-item:hover i{color:var(--accent-blue)}.sidebar-item.active{background:linear-gradient(135deg,#e53e3e2e,#ef444414);color:var(--accent-primary);border:1px solid rgba(229,62,62,.25);box-shadow:0 4px 12px #e53e3e26}.sidebar-item.active i{color:var(--accent-primary)}.app-sidebar .auth-container{border-left:none;padding:0 0 14px;height:auto;width:100%;position:relative;border-bottom:1px solid var(--border-glass);margin-bottom:12px}.app-sidebar .user-dropdown{width:100%;position:relative}.app-sidebar .sidebar-profile-card{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-glass);cursor:pointer;width:100%;box-sizing:border-box;transition:background .2s}.app-sidebar .sidebar-profile-card:hover{background:#3b82f614}.app-sidebar .sidebar-avatar-wrap{flex-shrink:0;width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--bg-tertiary, #334155);display:flex;align-items:center;justify-content:center;border:2px solid var(--border-glass)}.app-sidebar .user-avatar-img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:none;box-shadow:none}.app-sidebar .sidebar-avatar-placeholder{width:44px;height:44px;border-radius:50%;background:transparent;color:var(--text-muted);font-size:1.3rem;display:flex;align-items:center;justify-content:center}.app-sidebar .user-info{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.app-sidebar .user-name{font-size:.93rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.app-sidebar .user-sub{font-size:.76rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.app-sidebar .user-role-badge{display:inline-block;font-size:.72rem;font-weight:600;color:var(--accent-blue, #3b82f6);margin-top:1px}.app-sidebar .profile-chevron{flex-shrink:0;color:var(--text-muted)}.app-sidebar .profile-dropdown-menu{top:calc(100% + 6px);bottom:auto;left:0;right:0;width:100%}.sidebar-footer{padding-top:16px;border-top:1px solid var(--border-glass);display:flex;flex-direction:column;gap:12px;position:relative}.navbar{display:none!important}.main-layout{margin-left:260px;width:calc(100% - 260px)!important;max-width:none!important;padding:32px 40px;box-sizing:border-box!important}.roadmap-step-title,.hsk-badge-label,.comic-title{font-family:var(--font-handwriting);font-weight:700;letter-spacing:.02em}.roadmap-timeline{position:relative;max-width:900px;margin:30px auto;padding:20px 0}.roadmap-timeline:before{content:"";position:absolute;top:0;bottom:0;left:28px;width:4px;background:linear-gradient(180deg,var(--accent-blue),var(--accent-primary),var(--accent-teal));border-radius:4px}.roadmap-step{position:relative;padding-left:70px;margin-bottom:36px}.roadmap-step-icon{position:absolute;left:8px;top:0;width:44px;height:44px;border-radius:50%;background:var(--bg-secondary);border:3px solid var(--accent-blue);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:1.1rem;box-shadow:0 0 15px #3b82f666;z-index:2}.roadmap-step.completed .roadmap-step-icon{border-color:var(--success);background:var(--success);color:#fff;box-shadow:0 0 15px #10b98166}.roadmap-step-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:20px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-md);transition:transform .2s ease,border-color .2s ease}.roadmap-step-card:hover{transform:translateY(-2px);border-color:var(--border-glass-hover)}.roadmap-container{width:100%;max-width:1000px;margin:0 auto;padding:10px 0 60px}.cartoon-roadmap-hero{border-radius:28px!important;padding:36px 32px 28px;position:relative;overflow:hidden;margin-bottom:32px;transition:all .5s ease-in-out}html:not(.dark) .cartoon-roadmap-hero,html.light-mode .cartoon-roadmap-hero{background:linear-gradient(135deg,#ffffffad,#e1eeff7a)!important;backdrop-filter:blur(24px) saturate(180%)!important;-webkit-backdrop-filter:blur(24px) saturate(180%)!important;border:2px solid rgba(255,255,255,.85)!important;box-shadow:0 12px 35px #1f268714,inset 0 1px 1px #ffffffe6!important}html:not(.dark) .cartoon-roadmap-hero .hero-title{font-family:var(--font-display, sans-serif);font-size:2.2rem;font-weight:900;color:#0f172a!important;text-shadow:none!important;margin:0;line-height:1.2}html:not(.dark) .cartoon-roadmap-hero .hero-subtitle{font-family:var(--font-display);font-size:1.2rem;font-weight:800;color:#d97706!important;text-shadow:none!important;margin-top:4px}html:not(.dark) .cartoon-roadmap-hero .hero-desc{color:#1e293b!important;font-size:.95rem;font-weight:700;text-shadow:none!important;margin:8px 0 0;max-width:520px;line-height:1.5}html:not(.dark) .cartoon-roadmap-hero .hero-progress-card{background:linear-gradient(135deg,#ffffffad,#e1eeff80)!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:2px solid rgba(255,255,255,.9)!important;border-radius:22px;padding:16px 24px;margin-top:20px;width:100%;max-width:540px;box-shadow:0 10px 30px #1f26871a!important;color:#0f172a!important}html:not(.dark) .cartoon-roadmap-hero .hero-ver-label{font-size:.8rem;font-weight:800;color:#0f172a!important;text-transform:uppercase;font-family:var(--font-display);text-shadow:0 1px 3px rgba(255,255,255,.8)}html:not(.dark) .cartoon-roadmap-hero .roadmap-ver-pill{background:#ffffffbf!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;border:2px solid rgba(255,255,255,.9)!important;color:#0f172a!important;font-weight:800!important;box-shadow:0 4px 12px #1f268714!important}html:not(.dark) .cartoon-roadmap-hero .roadmap-ver-pill:hover{background:#fffffff2!important;transform:translateY(-2px);box-shadow:0 6px 16px #1f268726!important}html:not(.dark) .cartoon-roadmap-hero .roadmap-ver-pill.active{background:#2563eb!important;border-color:#fff!important;color:#fff!important;box-shadow:0 4px 14px #2563eb66!important}html.dark .cartoon-roadmap-hero{background:linear-gradient(135deg,#0f172aa6,#1e293b80)!important;backdrop-filter:blur(24px) saturate(180%)!important;-webkit-backdrop-filter:blur(24px) saturate(180%)!important;border:1.5px solid rgba(255,255,255,.18)!important;box-shadow:0 12px 35px #00000059,inset 0 1px 1px #ffffff1a!important}html.dark .cartoon-roadmap-hero .hero-title{font-family:var(--font-display, sans-serif);font-size:2.2rem;font-weight:900;color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.5)!important;margin:0;line-height:1.2}html.dark .cartoon-roadmap-hero .hero-subtitle{font-family:var(--font-display);font-size:1.2rem;font-weight:800;color:#fbbf24!important;text-shadow:0 1px 3px rgba(0,0,0,.4)!important;margin-top:4px}html.dark .cartoon-roadmap-hero .hero-desc{color:#f8fafc!important;font-size:.95rem;font-weight:700;text-shadow:none!important;margin:8px 0 0;max-width:520px;line-height:1.5}html.dark .cartoon-roadmap-hero .hero-progress-card{background:linear-gradient(135deg,#0f172ab8,#1e293b99)!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:2px solid rgba(255,255,255,.2)!important;border-radius:22px;padding:16px 24px;margin-top:20px;width:100%;max-width:540px;box-shadow:0 10px 30px #00000059!important;color:#fff!important}html.dark .cartoon-roadmap-hero .hero-ver-label{font-size:.8rem;font-weight:800;color:#fff!important;text-transform:uppercase;font-family:var(--font-display);text-shadow:0 1px 3px rgba(0,0,0,.5)}html.dark .cartoon-roadmap-hero .roadmap-ver-pill{background:#1e293bbf!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;border:2px solid rgba(255,255,255,.2)!important;color:#f8fafc!important;font-weight:800!important;box-shadow:0 4px 12px #0003!important}html.dark .cartoon-roadmap-hero .roadmap-ver-pill:hover{background:#1e293bf2!important;transform:translateY(-2px);box-shadow:0 6px 16px #0000004d!important}html.dark .cartoon-roadmap-hero .roadmap-ver-pill.active{background:#3b82f6!important;border-color:#fff!important;color:#fff!important;box-shadow:0 4px 14px #3b82f666!important}#home-view-section{background:transparent;padding:0}#roadmap-view-section,#flashcard-section,#custom-section{background:#0f172a73!important;backdrop-filter:blur(28px) saturate(200%)!important;-webkit-backdrop-filter:blur(28px) saturate(200%)!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:28px;padding:28px;box-shadow:0 10px 40px #0000004d!important}html.light-mode #roadmap-view-section,html.light-mode #flashcard-section,html.light-mode #custom-section{background:#fff9!important;backdrop-filter:blur(28px) saturate(200%)!important;-webkit-backdrop-filter:blur(28px) saturate(200%)!important;border:1px solid rgba(255,255,255,.8)!important;box-shadow:0 10px 40px #00000014!important}.roadmap-path-trail{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;gap:32px;padding:20px 0}.roadmap-node-item{width:100%;max-width:520px;display:flex;align-items:center;gap:20px;position:relative;z-index:5}.roadmap-node-item:nth-child(2n){flex-direction:row-reverse}.roadmap-node-item:nth-child(4n+1){transform:translate(-15%)}.roadmap-node-item:nth-child(4n+2){transform:translate(0)}.roadmap-node-item:nth-child(4n+3){transform:translate(15%)}.roadmap-node-item:nth-child(4n+4){transform:translate(0)}.roadmap-connector-arrow{text-align:center;font-size:2rem;color:#fff9;text-shadow:0 2px 4px rgba(0,0,0,.2);margin:-15px 0;z-index:1}.node-icon-circle{width:76px;height:76px;border-radius:50%;background:linear-gradient(180deg,#fbbf24,#d97706);border:4px solid #ffffff;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.6rem;font-weight:900;cursor:pointer;position:relative;box-shadow:0 10px #b45309,0 14px 20px #00000059;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.node-icon-circle:before{content:"";position:absolute;top:4px;left:10px;width:52px;height:24px;background:linear-gradient(180deg,#ffffffbf,#ffffff1a);border-radius:40px 40px 20px 20px;pointer-events:none}.node-icon-circle:hover{transform:translateY(-4px) scale(1.06);box-shadow:0 14px #b45309,0 18px 25px #0006}.node-icon-circle:active{transform:translateY(6px) scale(.96);box-shadow:0 4px #b45309,0 6px 10px #0000004d}.node-icon-circle .node-num{font-size:1.5rem;font-weight:900;text-shadow:0 2px 4px rgba(0,0,0,.5);font-family:var(--font-display)}.node-done .node-icon-circle{background:linear-gradient(180deg,#f472b6,#db2777);border-color:#fff;box-shadow:0 10px #9d174d,0 14px 20px #db277766}.node-done .node-icon-circle:hover{box-shadow:0 14px #9d174d,0 18px 25px #db277780}.node-active .node-icon-circle{background:linear-gradient(180deg,#fbbf24,#f59e0b);border-color:#fff;animation:candyPulse 1.8s infinite alternate;box-shadow:0 10px #b45309,0 14px 25px #f59e0b99}.node-locked .node-icon-circle{background:linear-gradient(180deg,#94a3b8,#64748b);border-color:#e2e8f0;box-shadow:0 8px #334155,0 10px 15px #0003;filter:grayscale(.5)}@keyframes candyPulse{0%{transform:scale(1)}to{transform:scale(1.1);box-shadow:0 12px #b45309,0 0 30px #fbbf24cc}}.node-info-card{flex:1;max-width:380px;background:#0f172ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px 20px;box-shadow:0 8px 24px #0000004d}.node-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.node-card-title{font-weight:800;font-size:1.05rem;color:#fff}.roadmap-badge{font-size:.72rem;font-weight:800;padding:3px 10px;border-radius:12px;text-transform:uppercase}.roadmap-badge.done{background:#10b98133;color:#34d399}.roadmap-badge.active-pulse{background:#3b82f640;color:#60a5fa}.roadmap-badge.locked{background:#64748b33;color:var(--text-muted)}.node-card-sub{font-size:.85rem;color:var(--text-secondary);margin-bottom:12px}.btn-node-start{width:100%;padding:8px 14px;background:#3b82f6;border:none;border-radius:10px;color:#fff;font-weight:700;font-size:.88rem;cursor:pointer;transition:all .2s}@media (max-width: 768px){.roadmap-container{padding:0 4px 60px!important;overflow-x:hidden!important}.roadmap-node-item,.roadmap-node-item:nth-child(4n+1),.roadmap-node-item:nth-child(4n+2),.roadmap-node-item:nth-child(4n+3),.roadmap-node-item:nth-child(4n+4){transform:none!important;width:100%!important;max-width:100%!important;gap:10px!important;box-sizing:border-box!important;padding:0!important;margin-bottom:20px!important;flex-direction:row!important}.node-icon-circle{width:58px!important;height:58px!important;font-size:1.3rem!important;flex-shrink:0!important;box-shadow:0 6px #b45309,0 8px 14px #0000004d!important}.node-icon-circle:before{width:38px!important;height:16px!important}.node-info-card{max-width:none!important;width:100%!important;padding:12px 14px!important;box-sizing:border-box!important;min-width:0!important}.node-card-top{flex-wrap:wrap!important;gap:6px!important}.node-card-title{font-size:.95rem!important}.node-card-sub{font-size:.8rem!important;line-height:1.35!important;margin-bottom:8px!important}.btn-node-start{padding:10px 14px!important;font-size:.85rem!important}}html.light-mode .level-tab.active,html.light-mode .status-filter-btn.active{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important}html.light-mode .flashcard-card,html.light .flashcard-card,html:not(.dark) .flashcard-card{background:transparent!important;border:none!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.light-mode .card-side,html.light .card-side,html:not(.dark) .card-side{background:#fff!important;border:1.5px solid #e2e8f0!important;color:#0f172a!important;box-shadow:0 10px 32px #1f268714!important}html.light-mode .card-word-front{color:#0f172a!important}html.light-mode .card-pinyin-back{color:#1d4ed8!important}html.light-mode .card-meaning-back,html.light-mode .card-example-zh-back{color:#0f172a!important}html.light-mode .card-example-vi-back{color:#334155!important}html.light-mode .flashcard-swipe-hint-bar,html.light .flashcard-swipe-hint-bar,html:not(.dark) .flashcard-swipe-hint-bar{background:#0000000a!important;border-color:#00000014!important;color:#64748b!important}.game-hub-guide-card{background:linear-gradient(145deg,#0f172a,#1e293b)!important;border:2px solid rgba(245,158,11,.45)!important;border-radius:24px!important;width:90%!important;max-width:480px!important;padding:30px!important;text-align:center!important;color:#fff!important;position:relative!important;box-shadow:0 25px 60px #000c!important;animation:modalPop .25s cubic-bezier(.175,.885,.32,1.275)}.system-dark-modal-card{background:linear-gradient(145deg,#0f172a,#1e293b)!important;border:1.5px solid rgba(255,255,255,.15)!important;border-radius:20px!important;width:90%!important;max-width:480px!important;padding:28px!important;text-align:center!important;color:#fff!important;position:relative!important;box-shadow:0 25px 60px #000000bf!important}html.light-mode .modal-card,html.light-mode .modal-dialog-content{background:#fff!important;border:1px solid #e2e8f0!important;color:#0f172a!important;box-shadow:0 20px 60px #00000040!important}#leaderboard-modal{display:flex;position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:99999;align-items:center;justify-content:center;padding:20px}html.light-mode #leaderboard-modal,html:not(.dark) #leaderboard-modal{background:#0f172a59!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}html.dark #leaderboard-modal{background:#000000b8!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}.leaderboard-modal-content{border-radius:28px!important;width:100%;max-width:680px;padding:24px 28px;position:relative;transition:all .3s ease;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.lb-close-btn{position:absolute;top:18px;right:18px;background:#fff3;border:1px solid rgba(255,255,255,.4);color:var(--text-muted, #94a3b8);font-size:1.4rem;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease}.lb-close-btn:hover{transform:scale(1.1);background:#ef444433;color:#ef4444}.lb-modal-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.lb-mascot-img{width:68px;height:68px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(251,191,36,.4));animation:floatMascot 3s ease-in-out infinite alternate}@keyframes floatMascot{0%{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-6px) rotate(3deg)}}.lb-title{font-size:1.35rem;font-weight:900;margin:0;letter-spacing:-.01em}.lb-subtitle{font-size:.8rem;opacity:.85;margin-top:2px;font-weight:600}.lb-body-container{overflow-y:auto;padding-right:4px;display:flex;flex-direction:column;gap:16px}.lb-podium-stage{display:flex;align-items:flex-end;justify-content:center;gap:12px;padding:20px 10px 10px;margin-bottom:8px;position:relative}.lb-podium-slot{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.rank-1-slot{order:2;z-index:3}.rank-2-slot{order:1;z-index:2}.rank-3-slot{order:3;z-index:1}.lb-podium-crown{font-size:1.6rem;margin-bottom:-6px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3));z-index:2}.gold-crown{font-size:2.2rem;margin-bottom:-8px;animation:pulseGold 2s infinite alternate}@keyframes pulseGold{0%{transform:scale(1)}to{transform:scale(1.12)}}.lb-podium-avatar-wrap{position:relative;margin-bottom:6px;display:flex;align-items:center;justify-content:center}.lb-podium-user{font-weight:800;font-size:.88rem;max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.gold-user{font-size:1rem;font-weight:900}.lb-podium-score{font-weight:900;font-size:.8rem;margin-bottom:8px}.lb-podium-stand{width:100%;border-radius:18px 18px 8px 8px;display:flex;align-items:center;justify-content:center;font-weight:900;box-shadow:0 10px 25px #00000026;position:relative;transition:all .3s ease}.p-1{height:110px}.p-2{height:85px}.p-3{height:68px}.lb-podium-num{font-size:2.2rem;font-weight:900;opacity:.9;font-family:var(--font-display)}html.light-mode .leaderboard-modal-content,html:not(.dark) .leaderboard-modal-content{background:#fff!important;border:1.5px solid #e2e8f0!important;box-shadow:0 20px 60px #00000026!important;color:#0f172a!important}html.light-mode .p-1,html:not(.dark) .p-1{background:#fef3c7!important;border:2px solid #f59e0b!important;color:#b45309!important;box-shadow:0 6px 18px #d977062e!important}html.light-mode .p-2,html:not(.dark) .p-2{background:#f1f5f9!important;border:2px solid #94a3b8!important;color:#475569!important;box-shadow:0 6px 18px #4755691f!important}html.light-mode .p-3,html:not(.dark) .p-3{background:#fee2e2!important;border:2px solid #f87171!important;color:#b91c1c!important;box-shadow:0 6px 18px #e11d481f!important}html.light-mode .gold-user,html:not(.dark) .gold-user{color:#b45309!important}html.light-mode .gold-score,html:not(.dark) .gold-score{color:#d97706!important}html.light-mode .lb-podium-user,html:not(.dark) .lb-podium-user{color:#0f172a!important}html.light-mode .lb-podium-score,html:not(.dark) .lb-podium-score{color:#2563eb!important}html.dark .leaderboard-modal-content{background:#1e293b!important;border:1.5px solid rgba(255,255,255,.15)!important;box-shadow:0 20px 60px #0009!important;color:#fff!important}html.dark .p-1{background:linear-gradient(180deg,#f59e0b59,#d9770633)!important;border:2px solid rgba(251,191,36,.7)!important;color:#fbbf24!important;box-shadow:0 10px 25px #fbbf2440!important}html.dark .p-2{background:linear-gradient(180deg,#94a3b84d,#64748b2e)!important;border:2px solid rgba(148,163,184,.6)!important;color:#e2e8f0!important;box-shadow:0 8px 20px #94a3b833!important}html.dark .p-3{background:linear-gradient(180deg,#e11d484d,#b453092e)!important;border:2px solid rgba(244,63,94,.6)!important;color:#f43f5e!important;box-shadow:0 8px 20px #f43f5e33!important}html.dark .gold-user,html.dark .gold-score{color:#fbbf24!important}html.dark .lb-podium-user{color:#fff!important}html.dark .lb-podium-score{color:#38bdf8!important}.lb-rest-title{font-weight:800;font-size:.95rem;margin-top:10px;margin-bottom:6px;padding-left:4px;letter-spacing:.03em;text-transform:uppercase}html.light-mode .lb-rest-title,html:not(.dark) .lb-rest-title{color:#3b82f6!important}html.dark .lb-rest-title{color:#38bdf8!important}.lb-rest-list{display:flex;flex-direction:column;gap:8px}.leaderboard-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:16px;transition:all .2s ease}html.light-mode .leaderboard-item,html:not(.dark) .leaderboard-item{background:linear-gradient(135deg,#ffffffa6,#f0f6ff80)!important;backdrop-filter:blur(16px) saturate(180%)!important;-webkit-backdrop-filter:blur(16px) saturate(180%)!important;border:1.5px solid rgba(255,255,255,.9)!important;box-shadow:0 4px 16px #1f26870f!important;color:#0f172a!important}html.dark .leaderboard-item{background:linear-gradient(135deg,#1e293ba6,#0f172a8c)!important;backdrop-filter:blur(16px) saturate(180%)!important;-webkit-backdrop-filter:blur(16px) saturate(180%)!important;border:1.5px solid rgba(255,255,255,.14)!important;box-shadow:0 4px 16px #00000040!important;color:#fff!important}.lb-rank-num{font-weight:800;font-size:.95rem;width:32px;text-align:center;opacity:.8}.lb-row-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(255,255,255,.4)}.lb-row-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}.rank-page-body{min-height:100vh;margin:0;padding:0;display:flex;flex-direction:column}.rank-header-nav{height:64px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);position:sticky;top:0;z-index:100}html.light-mode .rank-header-nav,html:not(.dark) .rank-header-nav{background:#ffffffb8!important;border-bottom:1.5px solid rgba(255,255,255,.85)!important}html.dark .rank-header-nav{background:#0f172abf!important;border-bottom:1.5px solid rgba(255,255,255,.12)!important}.rank-brand-logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:1.15rem}.rank-brand-logo img{width:38px;height:38px;object-fit:contain}html.light-mode .rank-brand-logo span,html:not(.dark) .rank-brand-logo span{color:#0f172a!important}html.dark .rank-brand-logo span{color:#fff!important}.rank-nav-right{display:flex;align-items:center;gap:12px}.theme-btn-text,.home-btn-text,.nav-btn-text{display:none!important}.theme-toggle-btn-top,.btn-theme-toggle,.btn-home-top,.nav-home-btn,.rank-theme-btn,.rank-nav-btn,.particle-toggle-btn{width:40px!important;height:40px!important;padding:0!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:1.1rem!important;text-decoration:none!important;line-height:1!important;cursor:pointer!important}.particle-toggle-btn{pointer-events:auto!important;z-index:1000!important;position:relative!important;cursor:pointer!important}.particle-toggle-btn.particles-off{opacity:.5!important;filter:grayscale(80%)!important}.rank-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:40px;border-radius:20px;font-size:1.1rem;text-decoration:none;transition:all .2s ease}html.light-mode .rank-nav-btn,html:not(.dark) .rank-nav-btn{background:#fffc!important;border:1.5px solid rgba(255,255,255,.95)!important;color:#0f172a!important;box-shadow:0 4px 12px #1f268714!important}html.dark .rank-nav-btn{background:#1e293bb3!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}.rank-nav-btn:hover{transform:translateY(-2px)}.rank-theme-btn{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;font-size:1.1rem;transition:all .2s ease}html.light-mode .rank-theme-btn,html:not(.dark) .rank-theme-btn{background:#ffffffd9!important;color:#d97706!important;border:1.5px solid rgba(255,255,255,.95)!important}html.dark .rank-theme-btn{background:#1e293bcc!important;color:#fbbf24!important;border:1.5px solid rgba(255,255,255,.15)!important}.rank-main-wrapper{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 16px}.rank-modal-standalone{margin:0 auto;max-width:720px!important}.rank-modal-standalone .lb-close-btn{display:none!important}html.light-mode #gameHistoryModal .modal-content,html.light-mode .modal-card{background:#fff!important;border:1px solid #e2e8f0!important;color:#0f172a!important;box-shadow:0 16px 40px #00000026!important}html.light-mode #gameHistoryModal table th{color:#1d4ed8!important;background:#f8fafc!important}html.light-mode #gameHistoryModal table td{color:#334155!important;border-color:#e2e8f0!important}html.light-mode .badge,html.light-mode .level-badge,html.light-mode .hsk-badge{background:#2563eb1f!important;color:#1d4ed8!important;border-color:#2563eb40!important}html.light-mode .stats-bar,html.light-mode .stat-item{background:linear-gradient(135deg,#ffffff8c,#e1eeff61)!important;backdrop-filter:blur(16px) saturate(180%)!important;-webkit-backdrop-filter:blur(16px) saturate(180%)!important;border:1px solid rgba(255,255,255,.82)!important;color:#0f172a!important}html.light-mode .stat-value{color:#1d4ed8!important}html.light-mode .stat-label{color:#334155!important}html.light-mode #toast{background:#0f172ad9!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;color:#f8fafc!important;border:1px solid rgba(255,255,255,.2)!important}html.light-mode .chest-desc,html.light-mode [style*="color: #64748b"],html.light-mode [style*="color:#64748b"]{color:#475569!important}html.light-mode [style*="background: rgba(15,23,42"],html.light-mode [style*="background:rgba(15,23,42"],html.light-mode [style*="background: rgba(15, 23, 42"],html.light-mode [style*="background: rgba(30,41,59"],html.light-mode [style*="background:rgba(30,41,59"],html.light-mode [style*="background: rgba(30, 41, 59"]{background:#f8fafc!important;border-color:#e2e8f0!important}html.light-mode .google-acc-card{background:#f8fafc!important;border-color:#e2e8f0!important;color:#1e293b!important}html.light-mode .google-acc-card:hover{background:#f1f5f9!important;border-color:#cbd5e1!important}html.light-mode .modal-card{background:#fff!important;color:#0f172a!important;border-color:#e2e8f0!important}html.light-mode .zubi-stat-card{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 16px #0000000f!important;color:#1e293b!important}html.light-mode .app-sidebar,html.light .app-sidebar,html:not(.dark) .app-sidebar,body.light-mode .app-sidebar{background:linear-gradient(135deg,#ffffff6b,#dcebff47)!important;backdrop-filter:blur(24px) saturate(180%)!important;-webkit-backdrop-filter:blur(24px) saturate(180%)!important;border-right:1px solid rgba(255,255,255,.75)!important;box-shadow:0 10px 35px #1f268714,inset 0 1px 1px #ffffffe6,inset -1px 0 #ffffff80!important}html.light-mode .sidebar-menu-item,html.light-mode .sidebar-item,html.light-mode .sidebar-subitem,html.light-mode .sidebar-dropdown-toggle,html.light .sidebar-item,html.light .sidebar-subitem,html:not(.dark) .sidebar-item,html:not(.dark) .sidebar-subitem{color:#0f172a!important;font-weight:700!important}html.light-mode .sidebar-item i,html.light-mode .sidebar-subitem i,html.light .sidebar-item i,html:not(.dark) .sidebar-item i{color:#1e293b!important;font-weight:700!important}html.light-mode .sidebar-section-label,html.light .sidebar-section-label,html:not(.dark) .sidebar-section-label{color:#0f172a!important;font-weight:800!important;letter-spacing:.04em!important}html.light-mode .sidebar-header span,html.light .sidebar-header span,html:not(.dark) .sidebar-header span{color:#0f172a!important;font-weight:900!important}html.light-mode .sidebar-menu-item:hover,html.light-mode .sidebar-item:hover,html.light-mode .sidebar-subitem:hover,html.light-mode .sidebar-dropdown-toggle:hover{background:#2563eb24!important;border:1px solid rgba(37,99,235,.25)!important;color:#1d4ed8!important}html.light-mode .sidebar-menu-item.active,html.light-mode .sidebar-item.active,html.light-mode .sidebar-subitem.active{background:linear-gradient(135deg,#1d4ed8,#1e40af)!important;color:#fff!important;font-weight:800!important;box-shadow:0 4px 14px #1d4ed866!important}html.light-mode .sidebar-item.active i,html.light-mode .sidebar-subitem.active i{color:#fff!important}html.light-mode .sidebar-profile-card{background:#ffffffd9!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;backdrop-filter:blur(20px) saturate(180%)!important;border:1px solid rgba(255,255,255,.95)!important;box-shadow:0 4px 16px #00000014!important;color:#0f172a!important}html.light-mode .sidebar-profile-card .user-name{color:#0f172a!important;font-weight:800!important}html.light-mode .sidebar-profile-card .user-sub{color:#475569!important;font-weight:600!important}html.light-mode .sidebar-profile-card:hover{background:#f1f5f9!important;border-color:#2563eb!important}html.light-mode #sidebar-theme-toggle{background:#f1f5f9!important;border-color:#cbd5e1!important;color:#0f172a!important}html.light-mode #sidebar-theme-toggle:hover{background:#e2e8f0!important;color:#1d4ed8!important}html.dark .app-sidebar{background:#0b0f1973!important;backdrop-filter:blur(28px) saturate(200%)!important;-webkit-backdrop-filter:blur(28px) saturate(200%)!important;border-right:1px solid rgba(255,255,255,.18)!important;box-shadow:0 10px 40px #0000004d!important}html.dark .sidebar-profile-card,html.dark .user-profile,html.dark .google-acc-card{background:#ffffff14!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:18px!important;box-shadow:0 6px 20px #0003!important;color:#fff!important}html.dark .sidebar-menu-item,html.dark .sidebar-item,html.dark .sidebar-subitem,html.dark .sidebar-dropdown-toggle{color:#f1f5f9!important;border-radius:14px!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}html.dark .sidebar-menu-item:hover,html.dark .sidebar-item:hover,html.dark .sidebar-subitem:hover,html.dark .sidebar-dropdown-toggle:hover{background:#ffffff26!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important}html.dark .sidebar-menu-item.active,html.dark .sidebar-item.active,html.dark .sidebar-subitem.active{background:linear-gradient(135deg,#3b82f6d9,#2563ebf2)!important;border:1px solid rgba(255,255,255,.4)!important;color:#fff!important;font-weight:800!important;box-shadow:0 6px 20px #2563eb73!important}html.dark .user-name{color:#fff!important;font-weight:700!important}html.dark .user-sub,html.dark .sidebar-section-label{color:#94a3b8!important}html.dark #sidebar-theme-toggle{background:#1e293b!important;border-color:#ffffff1f!important;color:#fff!important}html.dark #sidebar-theme-toggle:hover{background:#334155!important;color:#fff!important}html.light-mode .vocab-table tr:nth-child(2n){background:#f8fafc!important}html.light-mode .vocab-table th{background:#f1f5f9!important;color:#475569!important}html.light-mode .vocab-table td{color:#334155!important;border-color:#e2e8f0!important}html.light-mode .lesson-card,html.light-mode .lesson-item{background:#fff!important;border-color:#e2e8f0!important;color:#1e293b!important}html.dark{--bg-primary: #0b0f19;--bg-secondary: #131c31;--border-glass-hover: rgba(255, 255, 255, .15);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;color:#f8fafc!important}html.dark body{background:url(/assets/app_bg_night_v3.png) no-repeat center center fixed / cover!important;color:#f8fafc!important;transition:background .5s ease-in-out}html.dark .zubi-stat-card,html.dark .zubi-recent-card,html.dark .zubi-table-card,html.dark .google-acc-card,html.dark .modal-card,html.dark .glass-panel,html.dark .voice-control-bar,html.dark .info-sub-card,html.dark .group-block,html.dark .char-detail-inspector,html.dark .vd-box,html.dark .modal-content:not(#game-hub-guide-modal *),html.dark .vocab-panel,html.dark .filter-section,html.dark .writing-workshop,html.dark .sidebar-profile-card{background:#1e293b!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 4px 18px #0000004d!important;color:#fff!important}html.dark .zubi-stat-val,html.dark .recent-title,html.dark .zubi-td-bold{color:#fff!important}html.dark .zubi-stat-label,html.dark .zubi-eye-icon,html.dark .text-secondary{color:#94a3b8!important}html.light-mode{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-glass: #ffffff;--border-glass: #e2e8f0;--border-glass-hover: #cbd5e1;--text-primary: #0f172a;--text-secondary: #334155;--text-muted: #64748b;--card-bg-front: #ffffff;--card-bg-back: #f8fafc;color:#0f172a!important}html.light-mode body{background:url(/assets/app_bg_day_v3.png) no-repeat center center fixed / cover!important;color:#0f172a!important;transition:background .5s ease-in-out}html.light-mode h1:not(.btn *),html.light-mode h2:not(.btn *),html.light-mode h3:not(.btn *),html.light-mode h4:not(.btn *),html.light-mode h5:not(.btn *),html.light-mode h6:not(.btn *),html.light-mode p:not(.btn *):not(.dict-word-popover *),html.light-mode span:not(.btn *):not(.badge):not(.badge *):not(.c-red):not(.c-blue):not(.c-green):not(.c-yellow):not(.rd-card-banner *):not(.rd-badge-lvl):not(.phidao-wrapper *):not(.phidao-stat *):not(#cannon-score-val):not(#cannon-combo-val):not(.dict-word-popover *),html.light-mode div:not(.btn *):not(.badge *):not(.btn-node-start):not(.rd-card-banner *):not(.rd-card-category-tag):not(.phidao-wrapper *):not(.phidao-stat):not(.dict-word-popover):not(.dict-word-popover *),html.light-mode td,html.light-mode th,html.light-mode li,html.light-mode label{color:inherit}html.light-mode [style*="color: #fff"]:not(.btn *):not(.btn):not(.badge *):not(.roadmap-header-banner *):not(.btn-node-start):not(.rd-card-banner *):not(.rd-card-category-tag):not(.phidao-wrapper *):not(.phidao-stat *):not(#cannon-score-val):not(#cannon-combo-val):not(.announcement-glass-card *):not(.announcement-badge):not(.announcement-badge *):not(.announcement-btn):not(.announcement-btn *),html.light-mode [style*="color:#fff"]:not(.btn *):not(.btn):not(.badge *):not(.roadmap-header-banner *):not(.btn-node-start):not(.rd-card-banner *):not(.rd-card-category-tag):not(.phidao-wrapper *):not(.phidao-stat *):not(#cannon-score-val):not(#cannon-combo-val):not(.announcement-glass-card *):not(.announcement-badge):not(.announcement-badge *):not(.announcement-btn):not(.announcement-btn *),html.light-mode [style*="color: #ffffff"]:not(.btn *):not(.btn):not(.badge *):not(.roadmap-header-banner *):not(.btn-node-start):not(.rd-card-banner *):not(.rd-card-category-tag):not(.phidao-wrapper *):not(.phidao-stat *):not(#cannon-score-val):not(#cannon-combo-val):not(.announcement-glass-card *):not(.announcement-badge):not(.announcement-badge *):not(.announcement-btn):not(.announcement-btn *),html.light-mode [style*="color:#ffffff"]:not(.btn *):not(.btn):not(.badge *):not(.roadmap-header-banner *):not(.btn-node-start):not(.rd-card-banner *):not(.rd-card-category-tag):not(.phidao-wrapper *):not(.phidao-stat *):not(#cannon-score-val):not(#cannon-combo-val):not(.announcement-glass-card *):not(.announcement-badge):not(.announcement-badge *):not(.announcement-btn):not(.announcement-btn *),html.light-mode [style*="color: white"]:not(.btn *):not(.btn):not(.badge *):not(.roadmap-header-banner *):not(.btn-node-start):not(.rd-card-banner *):not(.rd-card-category-tag):not(.phidao-wrapper *):not(.phidao-stat *):not(#cannon-score-val):not(#cannon-combo-val):not(.announcement-glass-card *):not(.announcement-badge):not(.announcement-badge *):not(.announcement-btn):not(.announcement-btn *),html.light-mode [style*="color:white"]:not(.btn *):not(.btn):not(.badge *):not(.roadmap-header-banner *):not(.btn-node-start):not(.rd-card-banner *):not(.rd-card-category-tag):not(.phidao-wrapper *):not(.phidao-stat *):not(#cannon-score-val):not(#cannon-combo-val):not(.announcement-glass-card *):not(.announcement-badge):not(.announcement-badge *):not(.announcement-btn):not(.announcement-btn *){color:#0f172a!important}html.light-mode .rd-card-banner,html:not(.dark) .rd-card-banner{overflow:hidden!important}html.light-mode .rd-card-banner-watermark,html:not(.dark) .rd-card-banner-watermark{color:#ffffff38!important}html.light-mode .rd-card-category-tag,html:not(.dark) .rd-card-category-tag{color:#fff!important;background:#00000052!important}html.light-mode .rd-badge-lvl,html:not(.dark) .rd-badge-lvl{color:#0f172a!important;background:#fff!important}html.light-mode .phidao-stat,html.light-mode .phidao-stat span,html:not(.dark) .phidao-stat,html:not(.dark) .phidao-stat span{text-shadow:0 1px 2px rgba(0,0,0,.5)!important}html.light-mode #cannon-score-val,html:not(.dark) #cannon-score-val{color:#fde047!important;text-shadow:none!important}html.light-mode #cannon-combo-val,html:not(.dark) #cannon-combo-val{color:#fb923c!important;text-shadow:none!important}html.light-mode [style*="color: #f8fafc"],html.light-mode [style*="color:#f8fafc"],html.light-mode [style*="color: #e2e8f0"],html.light-mode [style*="color:#e2e8f0"],html.light-mode [style*="color: #cbd5e1"],html.light-mode [style*="color:#cbd5e1"],html.light-mode [style*="color: #94a3b8"],html.light-mode [style*="color:#94a3b8"],html.light-mode [style*="color: #64748b"],html.light-mode [style*="color:#64748b"]{color:#334155!important}html.light-mode [style*="background: rgba(15,23,42"],html.light-mode [style*="background:rgba(15,23,42"],html.light-mode [style*="background: rgba(15, 23, 42"],html.light-mode [style*="background: rgba(30,41,59"],html.light-mode [style*="background:rgba(30,41,59"],html.light-mode [style*="background: rgba(30, 41, 59"],html.light-mode [style*="background: #0f172a"],html.light-mode [style*="background:#0f172a"],html.light-mode [style*="background: #1e293b"],html.light-mode [style*="background:#1e293b"],html.light-mode [style*="background: #0b0f19"],html.light-mode [style*="background:#0b0f19"],html.light-mode [style*="background:rgba(30, 41, 59"],html.light-mode [style*="background: rgba(30,41,59,0.9)"],html.light-mode [style*="background: rgba(30, 41, 59, 0.9)"],html.light-mode [style*="background: rgba(30, 41, 59, 0.95)"],html.light-mode [style*="background: rgba(30,41,59,0.95)"],html.light-mode [style*="background: rgba(30, 41, 59, 0.6)"],html.light-mode [style*="background: rgba(30,41,59,0.6)"]{background:#fff!important;border-color:#e2e8f0!important;color:#0f172a!important;box-shadow:0 4px 16px #0000000d!important}html.light-mode .roadmap-ver-pill{background:#fff!important;border-color:#e2e8f0!important;color:#334155!important}html.light-mode .roadmap-ver-pill:hover{background:#f1f5f9!important;color:#0f172a!important}html.light-mode .roadmap-ver-pill.active{background:#3b82f6!important;border-color:#2563eb!important;color:#fff!important;box-shadow:0 4px 12px #2563eb4d!important}html.light-mode .node-info-card{background:#fff!important;border:1px solid #e2e8f0!important;color:#0f172a!important;box-shadow:0 4px 16px #0000000d!important}html.light-mode .node-card-title{color:#0f172a!important}html.dark .roadmap-connector-arrow{color:#fff6!important}html:not(.dark) .roadmap-connector-arrow{color:#3b82f6!important}html.light-mode .app-sidebar,html.light .app-sidebar,html:not(.dark) .app-sidebar,body.light-mode .app-sidebar{background:#fff!important;border-right:1px solid #e2e8f0!important;box-shadow:2px 0 10px #0000000a!important}html.light-mode .sidebar-section-label{color:#64748b!important}html.light-mode .btn-primary,html.light-mode .btn-success,html.light-mode .btn-danger,html.light-mode .btn-warning,html.light-mode .ans-btn,html.light-mode .c-red,html.light-mode .c-blue,html.light-mode .c-yellow,html.light-mode .c-green,html.light-mode .btn-node-start{color:#fff!important}.nb-lesson-pill{font-size:.78rem;padding:6px 14px;border-radius:50px;cursor:pointer;border:1px solid rgba(148,163,184,.3);background:#f1f5f9e6;color:#1e293b!important;font-weight:600;transition:all .2s ease}html.dark .nb-lesson-pill,body.dark .nb-lesson-pill{background:#ffffff14;color:#f1f5f9!important;border-color:#ffffff26}.nb-lesson-pill:hover{border-color:#3b82f6;color:#2563eb!important}html.dark .nb-lesson-pill:hover,body.dark .nb-lesson-pill:hover{border-color:#60a5fa;color:#60a5fa!important}.nb-lesson-pill.active{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important;font-weight:700;box-shadow:0 2px 8px #2563eb4d}.sidebar-expand-float-btn{display:none;position:fixed;top:16px;left:16px;z-index:999;background:var(--bg-glass, #ffffff)}html.light-mode,body.light-mode,html.light{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-glass: #ffffff;--border-glass: #e2e8f0;--text-primary: #0f172a;--text-secondary: #334155;--text-muted: #64748b;color:#0f172a!important}html.light-mode body,body.light-mode{background:url(/assets/app_bg_day_v3.png) no-repeat center center fixed / cover!important;color:#0f172a!important;transition:background .5s ease-in-out}html.light-mode .glass-panel,html.light-mode .voice-control-bar,html.light-mode .zubi-stat-card,html.light-mode .zubi-recent-card,html.light-mode .zubi-table-card,html.light-mode .info-sub-card,html.light-mode .group-block,html.light-mode .char-detail-inspector,html.light-mode .vd-box,html.light-mode .modal-content:not(#game-hub-guide-modal *),html.light-mode .vocab-panel,html.light-mode .filter-section,html.light-mode .writing-workshop,html.light-mode .sidebar-profile-card,html.light-mode .user-profile,html.light-mode .google-acc-card{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 16px #0000000d!important;color:#0f172a!important}.sidebar-expand-float-btn{display:none;position:fixed;top:16px;left:16px;z-index:99998!important;background:#0f172af0!important;border:1.5px solid #38bdf8!important;color:#38bdf8!important;padding:8px 18px;border-radius:30px;font-weight:700;font-size:.88rem;cursor:pointer;box-shadow:0 6px 20px #00000080;align-items:center;gap:8px;transition:all .25s ease;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}.sidebar-expand-float-btn:hover{background:#2563eb!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 12px 28px #2563eb66}.sidebar-toggle-btn{background:#ffffff14;border:1px solid var(--border-glass, rgba(255, 255, 255, .12));color:var(--text-secondary, #cbd5e1);width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-left:auto;transition:all .2s ease}.sidebar-toggle-btn:hover{background:#2563eb;color:#fff;border-color:#2563eb}body.sidebar-collapsed .app-sidebar{transform:translate(-105%)!important;opacity:0;pointer-events:none}body.sidebar-collapsed .main-layout{margin-left:0!important;width:100%!important;max-width:100%!important}body.sidebar-collapsed .sidebar-expand-float-btn{display:flex!important}@media (max-width: 900px){#sidebar-expand-float-btn,.sidebar-expand-float-btn{display:inline-flex!important;position:fixed!important;top:14px!important;left:14px!important;z-index:99995!important;background:#0f172aeb!important;border:1.5px solid rgba(56,189,248,.55)!important;color:#38bdf8!important;padding:8px 16px!important;border-radius:999px!important;font-weight:700!important;font-size:.88rem!important;box-shadow:0 6px 22px #00000080!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;align-items:center!important;gap:7px!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;transition:all .2s ease!important}#sidebar-expand-float-btn:hover,.sidebar-expand-float-btn:hover{background:#2563eb!important;color:#fff!important;transform:translateY(-2px) scale(1.02)!important}#sidebar-expand-float-btn:active,.sidebar-expand-float-btn:active{transform:scale(.95)!important;background:#1d4ed8!important;color:#fff!important}}.btn,.node-btn,.btn-node-start,.lesson-mod-btn,.circle-btn,button{border-radius:16px!important;font-family:var(--font-display),"Be Vietnam Pro",sans-serif!important;font-weight:700!important;letter-spacing:.02em;transition:transform .1s ease,box-shadow .1s ease,background-color .2s ease!important}.btn-primary,.btn-cartoon-green{background:#58cc02!important;color:#fff!important;box-shadow:0 4px #46a302,0 6px 12px #58cc024d!important;border:none!important}.btn-primary:active,.btn-cartoon-green:active{transform:translateY(3px)!important;box-shadow:0 1px #46a302!important}.btn-secondary,.btn-cartoon-blue{background:#1cb0f6!important;color:#fff!important;box-shadow:0 4px #1899d6,0 6px 12px #1cb0f64d!important;border:none!important}.btn-secondary:active,.btn-cartoon-blue:active{transform:translateY(3px)!important;box-shadow:0 1px #1899d6!important}.modal-content:not(#game-hub-guide-modal *),.zubi-stat-card,.glass-panel,.card,.dashboard-card{border-radius:24px!important;border:1.5px solid var(--border-glass, #e2e8f0)!important;box-shadow:0 6px 20px #00000014!important}.roadmap-badge,.badge,.zubi-pill,.lesson-badge{border-radius:50px!important;font-family:var(--font-display),sans-serif!important;font-weight:800!important}.tab-btn,.pill-btn,.nb-lesson-pill{border-radius:20px!important;font-weight:700!important}.tab-btn.active,.nb-lesson-pill.active{box-shadow:0 3px #00000026!important}html,body,#app{margin:0!important;padding:0!important;width:100%!important;min-width:100vw!important;max-width:100vw!important;min-height:100vh!important;overflow-x:hidden!important;box-sizing:border-box!important;background-attachment:fixed!important}html,body,#app,html.dark,html.dark body,body.dark,html.dark #app{background:url(/assets/app_bg_night_v3.png) no-repeat center center fixed / cover!important}html.light-mode,html.light-mode body,body.light-mode,html.light,html.light body,html.light-mode #app{background:url(/assets/app_bg_day_v3.png) no-repeat center center fixed / cover!important}.zubi-dashboard-container,#home-view-section,.workspace-section,.app-container,.content-wrapper{background:transparent!important;box-shadow:none!important;border-radius:0!important;margin:0!important;width:100%!important;max-width:100%!important;padding:20px 28px!important;box-sizing:border-box!important}@media (min-width: 901px){body:not(.sidebar-collapsed) .main-layout{margin-left:260px!important;width:calc(100% - 260px)!important}}@media (max-width: 900px){.main-layout{margin-left:0!important;width:100%!important;max-width:100%!important}}body.sidebar-collapsed .main-layout,body.sidebar-collapsed .zubi-dashboard-container{margin-left:0!important;width:100%!important;max-width:100%!important}html.dark .zubi-header-banner,html.dark .zubi-stat-card,html.dark .zubi-recent-card,html.dark .zubi-table-wrap,html.dark .zubi-table-card,html.dark .glass-panel,html.dark .controls-dashboard,html.dark .review-banner,html.dark .deck-card,html.dark .notebook-card,html.dark .modal-content:not(#game-hub-guide-modal *),html.dark .sidebar-profile-card,html.dark .google-acc-card,html.dark .pinyin-card,html.dark .phonetic-card,html.dark .grammar-card,html.dark .hub-card,html.dark .reader-card,html.dark .info-sub-card,html.dark .char-detail-inspector,html.dark .vd-box,html.dark .vocab-panel,html.dark .filter-section,html.dark .writing-workshop,html.dark .voice-control-bar,html.dark .phonetics-header,html.dark .table-card,html.dark .game-card,html.dark .chat-card,html.dark .rules-card,html.dark .detail-card,html.dark .top-bar,html.dark .custom-words-table-wrapper,html.dark .dict-search-panel,html.dark .dict-details-panel,html.dark .smart-flashcard-config,html.dark .topic-card,html.dark .selection-card,html.dark #flashcard-topics-view,html.dark #flashcard-subdecks-view,html.dark #deck-selection-view,html.dark #roadmap-view-section,html.dark #flashcard-section,html.dark #custom-section{background:#1e293b!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 4px 20px #0000004d!important;color:#fff!important}html.light-mode .zubi-header-banner,html.light-mode .zubi-stat-card,html.light-mode .zubi-recent-card,html.light-mode .zubi-table-wrap,html.light-mode .zubi-table-card,html.light-mode .glass-panel,html.light-mode .controls-dashboard,html.light-mode .review-banner,html.light-mode .deck-card,html.light-mode .notebook-card,html.light-mode .modal-content:not(#game-hub-guide-modal *),html.light-mode .sidebar-profile-card,html.light-mode .google-acc-card,html.light-mode .pinyin-card,html.light-mode .phonetic-card,html.light-mode .grammar-card,html.light-mode .hub-card,html.light-mode .reader-card,html.light-mode .info-sub-card,html.light-mode .char-detail-inspector,html.light-mode .vd-box,html.light-mode .vocab-panel,html.light-mode .filter-section,html.light-mode .writing-workshop,html.light-mode .voice-control-bar,html.light-mode .phonetics-header,html.light-mode .table-card,html.light-mode .game-card,html.light-mode .chat-card,html.light-mode .rules-card,html.light-mode .detail-card,html.light-mode .top-bar,html.light-mode .custom-words-table-wrapper,html.light-mode .dict-search-panel,html.light-mode .dict-details-panel,html.light-mode .smart-flashcard-config,html.light-mode .topic-card,html.light-mode .selection-card,html.light-mode #flashcard-topics-view,html.light-mode #flashcard-subdecks-view,html.light-mode #deck-selection-view,html.light-mode #roadmap-view-section,html.light-mode #flashcard-section,html.light-mode #custom-section{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 16px #0000000d!important;color:#0f172a!important}.hero-stage-wrapper{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:32px;position:relative}.stage-arrow-btn{background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#f8fafc;width:48px;height:48px;border-radius:50%;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 8px 20px #00000040;flex-shrink:0}html.light-mode .stage-arrow-btn{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 6px 18px #00000014!important}.stage-arrow-btn:hover{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important;transform:scale(1.1)}.hero-flashcard-card{background:#1e293b;border:1.5px solid rgba(255,255,255,.18);border-radius:26px;padding:32px 38px;width:100%;max-width:1000px;box-shadow:0 25px 60px #00000073;transition:all .3s ease;position:relative}.bk-tab-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.18);color:#94a3b8;padding:10px 18px;border-radius:12px;font-weight:700;font-size:.92rem;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:all .2s ease}.bk-tab-btn:hover{background:#3b82f633;color:#fff;border-color:#3b82f666}.bk-tab-btn.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#3b82f6;box-shadow:0 4px 14px #2563eb66}html.light-mode .hero-flashcard-card{background:#fff!important;border:1.5px solid #e2e8f0!important;color:#0f172a!important;box-shadow:0 20px 50px #00000014!important}.hero-info-badge{background:#2563eb2e;border:1px solid rgba(37,99,235,.35);color:#60a5fa;padding:8px 16px;border-radius:12px;font-weight:800;font-size:1.05rem;display:inline-flex;align-items:center;gap:8px}html.light-mode .hero-info-badge{background:#2563eb1a!important;border-color:#2563eb40!important;color:#2563eb!important}.bottom-list-card{background:#0f172aa6;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:24px;box-shadow:0 16px 40px #0000004d}html.light-mode .bottom-list-card{background:#ffffffd1!important;border:1.5px solid rgba(255,255,255,.95)!important;color:#0f172a!important;box-shadow:0 12px 32px #0000000f!important}.mini-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;max-height:380px;overflow-y:auto;padding-right:6px}.mini-cards-grid::-webkit-scrollbar{width:6px}.mini-cards-grid::-webkit-scrollbar-thumb{background:#fff3;border-radius:99px}.mini-rad-card{background:#0f172a80;border:1.5px solid rgba(255,255,255,.1);border-radius:16px;padding:12px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .22s ease;text-align:center}html.light-mode .mini-rad-card{background:#ffffffbf!important;border:1.5px solid rgba(226,232,240,.9)!important;color:#0f172a!important}.mini-rad-card:hover{transform:translateY(-3px);border-color:#2563eb!important;box-shadow:0 8px 20px #2563eb40!important}.mini-rad-card.active{background:#2563eb47!important;border:2px solid #2563eb!important;box-shadow:0 8px 24px #2563eb66!important}html.light-mode .mini-rad-card.active{background:#e0f2fef2!important;border:2px solid #2563eb!important}.lesson-stepper-hub-bar{background:#0f172ad9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:10px 16px;margin-bottom:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;box-shadow:0 10px 30px #00000059;position:relative;z-index:50}html.light-mode .lesson-stepper-hub-bar,html.light .lesson-stepper-hub-bar{background:#fffffff2!important;border-color:#e2e8f0e6!important;box-shadow:0 10px 25px #00000014!important}.lesson-stepper-tabs{display:flex;gap:8px;flex-wrap:wrap}.stepper-tab-btn{font-family:var(--font-sans);background:#ffffff14;border:1.5px solid rgba(255,255,255,.15);color:#cbd5e1;padding:8px 16px;border-radius:12px;font-weight:700;font-size:.88rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;white-space:nowrap}html.light-mode .stepper-tab-btn,html.light .stepper-tab-btn{background:#f8fafc!important;border-color:#cbd5e1!important;color:#475569!important}.stepper-tab-btn:hover{background:#38bdf82e!important;border-color:#38bdf8!important;color:#fff!important;transform:translateY(-2px)}html.light-mode .stepper-tab-btn:hover,html.light .stepper-tab-btn:hover{background:#e0f2fe!important;border-color:#0284c7!important;color:#0284c7!important}.stepper-tab-btn.active{color:#fff!important;transform:translateY(-1px)}.stepper-tab-btn.active-vocab,.stepper-tab-btn.active[data-step=vocab]{background:linear-gradient(135deg,#10b981,#059669)!important;border-color:#34d399!important;box-shadow:0 4px 16px #10b98173!important}.stepper-tab-btn.active-grammar,.stepper-tab-btn.active[data-step=grammar]{background:linear-gradient(135deg,#0284c7,#2563eb)!important;border-color:#38bdf8!important;box-shadow:0 4px 16px #2563eb73!important}.stepper-tab-btn.active-text,.stepper-tab-btn.active[data-step=text]{background:linear-gradient(135deg,#8b5cf6,#6d28d9)!important;border-color:#a78bfa!important;box-shadow:0 4px 16px #8b5cf673!important}.stepper-tab-btn.active-quiz,.stepper-tab-btn.active[data-step=quiz]{background:linear-gradient(135deg,#f59e0b,#d97706)!important;border-color:#fbbf24!important;box-shadow:0 4px 16px #f59e0b73!important}.custom-grammar-table{width:100%;border-collapse:collapse;font-size:.9rem;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.12);margin-top:8px}.custom-grammar-table th{background:#1e293be6;color:#38bdf8;font-weight:700;padding:10px 14px;text-align:left;border-bottom:1px solid rgba(255,255,255,.12)}.custom-grammar-table td{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06);color:#cbd5e1}.custom-grammar-table tr:nth-child(2n){background:#ffffff05}.grammar-formula-box{background:#38bdf814;border-left:4px solid #38bdf8}.grammar-formula-title{color:#38bdf8}.grammar-note-box{background:#f59e0b1f;border-left:4px solid #f59e0b}.grammar-note-title{color:#fbbf24}.grammar-note-text{color:#fde68a}html.light-mode #lesson-grammar-popup-modal .glass-panel,html.light #lesson-grammar-popup-modal .glass-panel{background:#fff!important;border-color:#cbd5e1!important;color:#0f172a!important}html.light-mode #grammar-modal-title,html.light #grammar-modal-title{color:#0f172a!important}html.light-mode .grammar-card-box,html.light .grammar-card-box{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 16px #0000000d!important}html.light-mode .grammar-card-title,html.light .grammar-card-title{color:#0f172a!important}html.light-mode .grammar-formula-box,html.light .grammar-formula-box{background:#f0f9ff!important;border-left:4px solid #0284c7!important;border-top:1px solid #e0f2fe!important;border-right:1px solid #e0f2fe!important;border-bottom:1px solid #e0f2fe!important}html.light-mode .grammar-formula-title,html.light .grammar-formula-title{color:#0284c7!important}html.light-mode .grammar-formula-text,html.light .grammar-formula-text{color:#0369a1!important}html.light-mode .grammar-exp-text,html.light .grammar-exp-text{color:#334155!important}html.light-mode .grammar-note-box,html.light .grammar-note-box{background:#fffbeb!important;border-left:4px solid #d97706!important;border-top:1px solid #fef3c7!important;border-right:1px solid #fef3c7!important;border-bottom:1px solid #fef3c7!important}html.light-mode .grammar-note-title,html.light .grammar-note-title{color:#b45309!important}html.light-mode .grammar-note-text,html.light .grammar-note-text{color:#92400e!important;font-weight:500!important}html.light-mode .grammar-example-item,html.light .grammar-example-item{background:#f8fafc!important;border:1px solid #e2e8f0!important}html.light-mode .grammar-ex-zh,html.light .grammar-ex-zh{color:#0f172a!important}html.light-mode .grammar-ex-py,html.light .grammar-ex-py{color:#0284c7!important}html.light-mode .grammar-ex-vi,html.light .grammar-ex-vi{color:#475569!important}html.light-mode .custom-grammar-table,html.light .custom-grammar-table{border:1px solid #cbd5e1!important}html.light-mode .custom-grammar-table th,html.light .custom-grammar-table th{background:#e0f2fe!important;color:#0369a1!important;border-bottom:2px solid #bae6fd!important}html.light-mode .custom-grammar-table td,html.light .custom-grammar-table td{color:#1e293b!important;border-bottom:1px solid #f1f5f9!important}html.light-mode .custom-grammar-table tr:nth-child(2n),html.light .custom-grammar-table tr:nth-child(2n){background:#f8fafc!important}html.light-mode .grammar-speak-btn,html.light .grammar-speak-btn{background:#e0f2fe!important;border:1px solid #bae6fd!important;color:#0284c7!important}.fc-circle-btn,.stepper-action-btn,.card-fullscreen-quick-btn,.top-fullscreen-btn{width:44px;height:44px;border-radius:50%!important;background:#0f172acc!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:2px solid rgba(255,255,255,.22)!important;color:#38bdf8!important;font-size:1.25rem!important;cursor:pointer;box-shadow:0 6px 20px #00000040;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:all .3s cubic-bezier(.175,.885,.32,1.275)!important;flex-shrink:0;text-decoration:none;padding:0!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;position:relative;z-index:9999;-webkit-user-select:none;user-select:none}.fc-circle-btn:hover,.stepper-action-btn:hover,.card-fullscreen-quick-btn:hover,.top-fullscreen-btn:hover{transform:scale(1.15)!important;border-color:#38bdf8!important;background:linear-gradient(135deg,#0284c7,#2563eb)!important;color:#fff!important;box-shadow:0 0 24px #38bdf880!important}.fc-circle-btn.active-fullscreen,.stepper-action-btn.active-fullscreen,.card-fullscreen-quick-btn.active-fullscreen,.top-fullscreen-btn.active-fullscreen{background:linear-gradient(135deg,#f59e0b,#d97706)!important;border-color:#fbbf24!important;color:#fff!important;box-shadow:0 0 24px #f59e0b8c!important}html.light-mode .fc-circle-btn,html.light-mode .stepper-action-btn,html.light-mode .card-fullscreen-quick-btn,html.light-mode .top-fullscreen-btn,body.light-mode .fc-circle-btn,body.light-mode .stepper-action-btn,body.light-mode .card-fullscreen-quick-btn,body.light-mode .top-fullscreen-btn{background:#fff!important;border:2px solid #cbd5e1!important;color:#0284c7!important;box-shadow:0 6px 18px #0000001a!important}html.light-mode .fc-circle-btn:hover,html.light-mode .card-fullscreen-quick-btn:hover,html.light-mode .top-fullscreen-btn:hover,body.light-mode .fc-circle-btn:hover,body.light-mode .card-fullscreen-quick-btn:hover,body.light-mode .top-fullscreen-btn:hover{background:linear-gradient(135deg,#0284c7,#2563eb)!important;color:#fff!important;border-color:#0284c7!important}.fc-fullscreen-toggle-btn{height:42px;border-radius:50px!important;background:#0f172acc!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:2px solid rgba(56,189,248,.35)!important;color:#38bdf8!important;font-size:.92rem!important;font-weight:800!important;padding:0 16px!important;cursor:pointer;box-shadow:0 6px 20px #00000040;display:inline-flex!important;align-items:center!important;gap:8px!important;transition:all .3s cubic-bezier(.175,.885,.32,1.275)!important;white-space:nowrap}.fc-fullscreen-toggle-btn:hover{transform:scale(1.08) translateY(-1px)!important;background:linear-gradient(135deg,#0284c7,#2563eb)!important;color:#fff!important;border-color:#38bdf8!important;box-shadow:0 8px 24px #2563eb73!important}.fc-fullscreen-toggle-btn.active-fullscreen{background:linear-gradient(135deg,#f59e0b,#d97706)!important;border-color:#fbbf24!important;color:#fff!important;box-shadow:0 8px 24px #f59e0b73!important}html.light-mode .fc-fullscreen-toggle-btn,body.light-mode .fc-fullscreen-toggle-btn{background:#fff!important;border:2px solid #cbd5e1!important;color:#0284c7!important;box-shadow:0 6px 18px #00000014!important}html.light-mode .fc-fullscreen-toggle-btn:hover,body.light-mode .fc-fullscreen-toggle-btn:hover{background:linear-gradient(135deg,#0284c7,#2563eb)!important;color:#fff!important;border-color:#0284c7!important}body.flashcard-fullscreen-mode{overflow:hidden!important}#flashcard-study-view.fullscreen-flashcard-active,#radicals-flashcard-view.fullscreen-flashcard-active{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;z-index:9999999!important;background:radial-gradient(circle at center,#0f172a,#090d16 60%,#030712)!important;padding:20px!important;margin:0!important;box-sizing:border-box!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;animation:fullscreenFadeIn .22s cubic-bezier(.16,1,.3,1)!important}html.light-mode #flashcard-study-view.fullscreen-flashcard-active,body.light-mode #flashcard-study-view.fullscreen-flashcard-active,html.light-mode #radicals-flashcard-view.fullscreen-flashcard-active,body.light-mode #radicals-flashcard-view.fullscreen-flashcard-active{background:radial-gradient(circle at center,#f1f5f9,#e2e8f0 60%,#cbd5e1)!important}@keyframes fullscreenFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}#flashcard-study-view.fullscreen-flashcard-active .lesson-stepper-hub-bar,#flashcard-study-view.fullscreen-flashcard-active .study-header,#flashcard-study-view.fullscreen-flashcard-active .stats-summary-container,#flashcard-study-view.fullscreen-flashcard-active .flashcard-filter-bar,#flashcard-study-view.fullscreen-flashcard-active .bottom-list-card,#flashcard-study-view.fullscreen-flashcard-active .vocab-grid-container,#flashcard-study-view.fullscreen-flashcard-active [style*="Đang Ở Bước 1"],#flashcard-study-view.fullscreen-flashcard-active .lesson-step-action-bar,#radicals-flashcard-view.fullscreen-flashcard-active .radical-flashcard-header,#radicals-flashcard-view.fullscreen-flashcard-active .bottom-list-card{display:none!important}body.flashcard-fullscreen-mode #floating-theme-widget,body.flashcard-fullscreen-mode #chatbot-widget,body.flashcard-fullscreen-mode .top-nav-wrap,body.flashcard-fullscreen-mode header,body.flashcard-fullscreen-mode #main-nav{display:none!important}#flashcard-study-view.fullscreen-flashcard-active .hero-stage-wrapper,#radicals-flashcard-view.fullscreen-flashcard-active .hero-stage-wrapper{width:100%!important;max-width:95vw!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(16px,2.5vw,40px)!important;margin:0 auto!important;padding:0 10px!important;box-sizing:border-box!important;position:relative!important}#flashcard-study-view.fullscreen-flashcard-active .stage-arrow-btn,#radicals-flashcard-view.fullscreen-flashcard-active .stage-arrow-btn{display:flex!important;width:60px!important;height:60px!important;border-radius:50%!important;background:#0f172ad9!important;backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;border:1.5px solid rgba(255,255,255,.25)!important;color:#fff!important;font-size:1.45rem!important;cursor:pointer!important;align-items:center!important;justify-content:center!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important;box-shadow:0 10px 30px #0009,inset 0 1px #ffffff40!important;flex-shrink:0!important;z-index:10!important}#flashcard-study-view.fullscreen-flashcard-active .stage-arrow-btn:hover,#radicals-flashcard-view.fullscreen-flashcard-active .stage-arrow-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border-color:#60a5fa!important;color:#fff!important;transform:scale(1.12)!important;box-shadow:0 0 28px #2563eba6,0 12px 35px #000000b3!important}html.light-mode #flashcard-study-view.fullscreen-flashcard-active .stage-arrow-btn,body.light-mode #flashcard-study-view.fullscreen-flashcard-active .stage-arrow-btn,html.light-mode #radicals-flashcard-view.fullscreen-flashcard-active .stage-arrow-btn,body.light-mode #radicals-flashcard-view.fullscreen-flashcard-active .stage-arrow-btn{background:#fffffff2!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 8px 25px #0000001f!important}html.light-mode #flashcard-study-view.fullscreen-flashcard-active .stage-arrow-btn:hover,body.light-mode #flashcard-study-view.fullscreen-flashcard-active .stage-arrow-btn:hover,html.light-mode #radicals-flashcard-view.fullscreen-flashcard-active .stage-arrow-btn:hover,body.light-mode #radicals-flashcard-view.fullscreen-flashcard-active .stage-arrow-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border-color:#2563eb!important;color:#fff!important}#flashcard-study-view.fullscreen-flashcard-active .hero-flashcard-card,#radicals-flashcard-view.fullscreen-flashcard-active .hero-flashcard-card{width:100%!important;max-width:1260px!important;padding:clamp(24px,3vh,44px) clamp(28px,3.5vw,56px)!important;border-radius:28px!important;background:#0f172af0!important;backdrop-filter:blur(40px) saturate(200%)!important;-webkit-backdrop-filter:blur(40px) saturate(200%)!important;border:1.5px solid rgba(255,255,255,.22)!important;box-shadow:0 30px 90px #000000bf,inset 0 1px #ffffff40!important;box-sizing:border-box!important}@media (min-width: 1440px){#flashcard-study-view.fullscreen-flashcard-active .hero-flashcard-card,#radicals-flashcard-view.fullscreen-flashcard-active .hero-flashcard-card{max-width:1420px!important}}html.light-mode #flashcard-study-view.fullscreen-flashcard-active .hero-flashcard-card,html.light-mode #radicals-flashcard-view.fullscreen-flashcard-active .hero-flashcard-card{background:#fffffff5!important;border:1.5px solid rgba(203,213,225,.9)!important;box-shadow:0 24px 70px #0000002e!important}#flashcard-study-view.fullscreen-flashcard-active .card-fullscreen-quick-btn,.card-fullscreen-quick-btn.active-fullscreen{background:linear-gradient(135deg,#f59e0b,#d97706)!important;border-color:#fbbf24!important;color:#fff!important;box-shadow:0 0 28px #f59e0bb3,0 4px 14px #0006!important}.lesson-stepper-hub-bar.toolbar-collapsed{padding:6px 14px!important;background:#0f172abf!important;border-radius:99px!important;width:auto!important;max-width:max-content!important;margin:0 auto 16px!important}.lesson-stepper-hub-bar.toolbar-collapsed .stepper-left-group,.lesson-stepper-hub-bar.toolbar-collapsed .lesson-stepper-tabs{display:none!important}.live-pulse-dot{width:9px;height:9px;border-radius:50%;background:#10b981;box-shadow:0 0 10px #10b981;display:inline-block;animation:livePulseAnim 2s infinite cubic-bezier(.4,0,.6,1);flex-shrink:0}@keyframes livePulseAnim{0%{transform:scale(.92);box-shadow:0 0 #10b981bf}70%{transform:scale(1.15);box-shadow:0 0 0 8px #10b98100}to{transform:scale(.92);box-shadow:0 0 #10b98100}}html.light-mode .home-live-stats-row>div{background:#ffffffd9!important;border-color:#cbd5e1cc!important;box-shadow:0 4px 14px #0000000f!important}html.light-mode .home-live-stats-row span[style*="color: #cbd5e1"]{color:#475569!important}@media (max-width: 868px){#flashcard-study-view.fullscreen-flashcard-active,#radicals-flashcard-view.fullscreen-flashcard-active{padding:12px 8px!important}#flashcard-study-view.fullscreen-flashcard-active .hero-stage-wrapper,#radicals-flashcard-view.fullscreen-flashcard-active .hero-stage-wrapper{gap:8px!important;padding:0 4px!important}#flashcard-study-view.fullscreen-flashcard-active .stage-arrow-btn,#radicals-flashcard-view.fullscreen-flashcard-active .stage-arrow-btn{width:44px!important;height:44px!important;font-size:1.15rem!important}#flashcard-study-view.fullscreen-flashcard-active .hero-flashcard-card,#radicals-flashcard-view.fullscreen-flashcard-active .hero-flashcard-card{padding:20px 16px!important;border-radius:20px!important}}body.hide-pinyin .chat-py,body.hide-pinyin .bk-pinyin-line,body.hide-pinyin [data-role=pinyin],html.hide-pinyin .chat-py,html.hide-pinyin .bk-pinyin-line,html.hide-pinyin [data-role=pinyin],.hide-pinyin .chat-py,.hide-pinyin .bk-pinyin-line,.hide-pinyin [data-role=pinyin]{display:none!important}.screen-drawing-canvas{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;z-index:999998!important;pointer-events:none!important;opacity:1;transition:opacity .2s ease;touch-action:none}.screen-drawing-canvas.active{pointer-events:auto!important}.screen-drawing-canvas[data-mode=pen],.screen-drawing-canvas[data-mode=highlighter],.screen-drawing-canvas[data-mode=laser]{cursor:crosshair!important}.screen-drawing-canvas[data-mode=eraser]{cursor:cell!important}.screen-pen-floating-bubble{position:fixed!important;right:24px!important;bottom:95px!important;width:56px!important;height:56px!important;border-radius:50%!important;z-index:999999!important;cursor:pointer!important;background:linear-gradient(135deg,#ec4899,#8b5cf6)!important;box-shadow:0 8px 25px #ec489973!important;border:2px solid rgba(255,255,255,.35)!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),background .3s,box-shadow .3s!important;-webkit-user-select:none!important;user-select:none!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important}.screen-pen-floating-bubble:hover{transform:scale(1.14)!important;box-shadow:0 12px 30px #ec4899a6!important}.screen-pen-floating-bubble.active{background:linear-gradient(135deg,#10b981,#059669)!important;border-color:#34d399!important;box-shadow:0 8px 25px #10b9818c!important;animation:penBubblePulse 2s infinite ease-in-out}@keyframes penBubblePulse{0%,to{box-shadow:0 0 #10b98199}50%{box-shadow:0 0 0 12px #10b98100}}.screen-pen-floating-bubble .bubble-inner{display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.35rem}.screen-pen-floating-bubble .bubble-badge{position:absolute;top:-4px;right:-4px;font-size:.95rem;background:#0f172ae6;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0000004d;border:1px solid rgba(255,255,255,.2)}.screen-drawing-toolbar{position:fixed!important;top:18px!important;left:50%!important;transform:translate(-50%)!important;z-index:999999!important;display:none;align-items:center!important;gap:8px!important;padding:8px 14px!important;background:#0f172af0!important;backdrop-filter:blur(28px)!important;-webkit-backdrop-filter:blur(28px)!important;border:1.5px solid rgba(255,255,255,.22)!important;border-radius:50px!important;box-shadow:0 16px 45px #000000a6!important;-webkit-user-select:none!important;user-select:none!important;max-width:96vw!important;overflow-x:auto!important}.screen-drawing-toolbar.active{display:flex!important;animation:toolbarSlideDown .25s cubic-bezier(.16,1,.3,1)!important}@keyframes toolbarSlideDown{0%{opacity:0;transform:translate(-50%,-15px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}html.light-mode .screen-drawing-toolbar,body.light-mode .screen-drawing-toolbar{background:#fffffff5!important;border-color:#cbd5e1e6!important;box-shadow:0 12px 35px #00000026!important}.dt-drag-handle{cursor:grab!important;color:#64748b;padding:4px 6px;display:flex;align-items:center;justify-content:center;font-size:1rem}.dt-drag-handle:active{cursor:grabbing!important}.dt-group{display:flex;align-items:center;gap:6px}.dt-divider{width:1px;height:24px;background:#ffffff29;margin:0 2px}html.light-mode .dt-divider,body.light-mode .dt-divider{background:#cbd5e1cc}.dt-btn{height:36px;padding:0 12px;border-radius:30px;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:#cbd5e1;font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap}html.light-mode .dt-btn,body.light-mode .dt-btn{background:#f1f5f9;border-color:#e2e8f0;color:#334155}.dt-btn:hover{background:#ffffff2e;color:#fff;transform:translateY(-1px)}html.light-mode .dt-btn:hover,body.light-mode .dt-btn:hover{background:#e2e8f0;color:#0f172a}.dt-btn.active{background:linear-gradient(135deg,#0284c7,#2563eb)!important;border-color:#38bdf8!important;color:#fff!important;box-shadow:0 4px 14px #2563eb73}.dt-action-btn{width:36px;padding:0;justify-content:center}.dt-btn-clear{background:#ef44442e!important;border-color:#ef444459!important;color:#f87171!important;padding:0 12px!important}.dt-btn-clear:hover{background:#ef4444!important;color:#fff!important;box-shadow:0 4px 14px #ef444473!important}.dt-close-btn{width:36px;padding:0;justify-content:center;background:#ffffff14;border-radius:50%;color:#94a3b8}.dt-close-btn:hover{background:#ef4444!important;color:#fff!important}.dt-color-btn{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.4);cursor:pointer;transition:all .2s ease;padding:0}.dt-color-btn:hover{transform:scale(1.22)}.dt-color-btn.active{transform:scale(1.28);border-color:#fff!important;box-shadow:0 0 12px currentColor}.dt-color-picker-wrap{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer}.dt-color-picker-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:2px solid rgba(255,255,255,.5);cursor:pointer;transition:all .2s ease;box-shadow:0 0 8px #0000004d;flex-shrink:0}.dt-color-picker-btn:hover{transform:scale(1.22);box-shadow:0 0 14px #fff6}.dt-size-btn{width:28px;height:28px;border-radius:50%;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:#cbd5e1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s ease}.dt-size-btn:hover{background:#fff3;color:#fff}.dt-size-btn.active{background:#2563eb;border-color:#38bdf8;color:#fff}@media (max-width: 768px){.dt-label{display:none}.screen-drawing-toolbar{padding:6px 10px!important;gap:5px!important;top:10px!important}.screen-pen-floating-bubble{right:16px!important;bottom:85px!important;width:50px!important;height:50px!important}}#screen-snipping-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:9999999!important;background:#0000007a!important;cursor:crosshair!important;-webkit-user-select:none!important;user-select:none!important;touch-action:none!important}.snipping-top-bar{position:absolute;top:18px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:8px 16px;background:#0f172af0;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1.5px solid rgba(255,255,255,.25);border-radius:50px;box-shadow:0 16px 40px #0009;z-index:10000000;pointer-events:auto}.snipping-mode-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:#cbd5e1;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap}.snipping-mode-btn:hover{background:#fff3;color:#fff}.snipping-mode-btn.active{background:linear-gradient(135deg,#0284c7,#2563eb)!important;border-color:#38bdf8!important;color:#fff!important;box-shadow:0 4px 14px #2563eb73}.snipping-tip-badge{color:#94a3b8;font-size:.78rem;font-weight:600;margin-left:6px}#snip-selection-box{position:absolute;border:2px solid #38bdf8;box-shadow:0 0 0 9999px #0000007a,0 0 16px #38bdf8cc;pointer-events:none;z-index:9999999}#snip-dim-tag{position:absolute;bottom:-28px;right:0;background:#0f172ae6;color:#38bdf8;font-size:.75rem;font-weight:800;padding:3px 8px;border-radius:6px;border:1px solid rgba(56,189,248,.5);white-space:nowrap}#screen-camera-flash{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;background:#fff!important;z-index:100000000!important;pointer-events:none!important;opacity:.85;transition:opacity .25s cubic-bezier(.16,1,.3,1)!important}#screen-snipping-preview-widget{position:fixed!important;bottom:24px!important;left:24px!important;background:#0f172af5!important;backdrop-filter:blur(28px)!important;-webkit-backdrop-filter:blur(28px)!important;border:1.5px solid rgba(56,189,248,.6)!important;border-radius:20px!important;padding:14px 18px!important;box-shadow:0 20px 50px #000000a6!important;z-index:99999999!important;display:flex!important;align-items:center!important;gap:16px!important;max-width:440px!important;animation:snipSlideUp .35s cubic-bezier(.16,1,.3,1)!important}@keyframes snipSlideUp{0%{opacity:0;transform:translateY(40px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.snip-widget-thumb{width:90px;height:60px;object-fit:cover;border-radius:10px;border:1.5px solid rgba(255,255,255,.25);background:#000;flex-shrink:0;box-shadow:0 4px 12px #0006}.snip-widget-title{font-size:.92rem;font-weight:800;color:#fff;margin-bottom:2px;display:flex;align-items:center;gap:6px}.snip-widget-sub{font-size:.78rem;color:#94a3b8;margin-bottom:8px;line-height:1.3}.snip-widget-actions{display:flex;gap:6px}.snip-widget-btn{padding:5px 10px;border-radius:8px;font-size:.75rem;font-weight:700;border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:#cbd5e1;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .2s ease}.snip-widget-btn:hover{background:#fff3;color:#fff}.snip-widget-btn.primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none}.next-lesson-hub-btn,.prev-lesson-hub-btn{padding:8px 14px;border-radius:12px;font-weight:700;font-size:.85rem;display:inline-flex;align-items:center;gap:6px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:#cbd5e1;cursor:pointer;transition:all .2s ease;white-space:nowrap}.next-lesson-hub-btn{background:linear-gradient(135deg,#10b98133,#05966947);border-color:#34d39973;color:#34d399}.next-lesson-hub-btn:hover{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border-color:#34d399!important;transform:translateY(-1px);box-shadow:0 4px 16px #10b98173}.prev-lesson-hub-btn:hover{background:#ffffff2e!important;color:#fff!important;transform:translateY(-1px)}html.light-mode .next-lesson-hub-btn,body.light-mode .next-lesson-hub-btn{background:#dcfce7!important;border-color:#86efac!important;color:#15803d!important}html.light-mode .next-lesson-hub-btn:hover,body.light-mode .next-lesson-hub-btn:hover{background:#16a34a!important;color:#fff!important}.next-lesson-big-btn{padding:12px 24px;border-radius:14px;font-weight:800;font-size:.95rem;background:linear-gradient(135deg,#10b981,#059669)!important;border:none!important;color:#fff!important;cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 6px 20px #10b98173;transition:all .2s cubic-bezier(.16,1,.3,1)}.next-lesson-big-btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 24px #10b98199}.yt-sub-hanzi-word.karaoke-word-active{color:#f59e0b!important;font-weight:900!important;text-shadow:none!important;transform:scale(1.1);display:inline-block;transition:all .08s ease-out;border-bottom:2px solid #f59e0b}.hero-star-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:99px;font-size:.82rem;font-weight:700;cursor:pointer;background:#ffffff14;border:1.5px solid rgba(255,255,255,.2);color:#94a3b8;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.hero-star-btn:hover{background:#f59e0b2e;border-color:#f59e0b80;color:#fbbf24;transform:translateY(-1px)}.hero-star-btn.active{background:linear-gradient(135deg,#f59e0b47,#d9770638)!important;border-color:#f59e0b!important;color:#fbbf24!important;box-shadow:0 0 16px #f59e0b66}.hero-star-btn.active i{color:#fbbf24!important;filter:drop-shadow(0 0 4px rgba(245,158,11,.7))}.hero-star-btn:active{transform:scale(.96)}.mini-card-star-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#00000059;border:1px solid rgba(255,255,255,.18);color:#94a3b8;font-size:.75rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:5}.mini-card-star-btn:hover{background:#f59e0b4d;border-color:#f59e0b99;color:#fbbf24;transform:scale(1.15)}.mini-card-star-btn.active{background:#f59e0b47!important;border-color:#f59e0b!important;color:#fbbf24!important;box-shadow:0 0 10px #f59e0b66}.mini-card-star-btn.active i{color:#fbbf24!important;filter:drop-shadow(0 0 3px rgba(245,158,11,.7))}html.light-mode .hero-star-btn,body.light-mode .hero-star-btn{background:#0000000d!important;border-color:#00000026!important;color:#64748b!important}html.light-mode .hero-star-btn.active,body.light-mode .hero-star-btn.active{background:#fef3c7f2!important;border-color:#d97706!important;color:#b45309!important}html.light-mode .mini-card-star-btn,body.light-mode .mini-card-star-btn{background:#ffffffe6!important;border-color:#0000001f!important;color:#94a3b8!important}html.light-mode .mini-card-star-btn.active,body.light-mode .mini-card-star-btn.active{background:#fef3c7f2!important;border-color:#f59e0b!important;color:#d97706!important}.btn-create-notebook-glow{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;background:linear-gradient(135deg,#0284c7,#2563eb,#7c3aed);background-size:200% 200%;color:#fff!important;border:1.5px solid rgba(255,255,255,.35);border-radius:14px;font-weight:800;font-size:.95rem;cursor:pointer;box-shadow:0 6px 24px #2563eb73,inset 0 1px #ffffff4d;transition:all .3s cubic-bezier(.16,1,.3,1);text-decoration:none;animation:createBtnGlowShift 5s ease infinite}@keyframes createBtnGlowShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.btn-create-notebook-glow:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 32px #2563eba6}.btn-create-notebook-glow:active{transform:scale(.98)}.topic-corner-badge{position:absolute;top:12px;right:12px;font-size:.72rem;font-weight:800;padding:3px 10px;border-radius:99px;border:1px solid transparent;letter-spacing:.3px}.nb-picker-pill{padding:6px 14px;border-radius:10px;font-size:.82rem;font-weight:700;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#cbd5e1;cursor:pointer;transition:all .2s ease;white-space:nowrap}.nb-picker-pill:hover{background:#38bdf826;border-color:#38bdf866;color:#38bdf8}.nb-picker-pill.active{background:linear-gradient(135deg,#0284c7,#2563eb)!important;border-color:#38bdf8!important;color:#fff!important;box-shadow:0 4px 14px #2563eb73}.create-nb-word-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;border-bottom:1px solid rgba(255,255,255,.06);transition:background .15s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.create-nb-word-row:hover{background:#38bdf814}.create-nb-word-row.selected{background:#10b98126;border-color:#10b9814d}.custom-nb-hub-card{background:#0f172a8c;border:1.5px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;transition:all .25s cubic-bezier(.16,1,.3,1);position:relative}.custom-nb-hub-card:hover{transform:translateY(-3px);border-color:#38bdf873;box-shadow:0 10px 24px #00000059}html.light-mode .nb-picker-pill{background:#0000000a;border-color:#0000001f;color:#475569}html.light-mode .nb-picker-pill.active{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}html.light-mode .create-nb-word-row{border-bottom-color:#0000000f}html.light-mode .create-nb-word-row.selected{background:#dcfce7!important}html.light-mode .custom-nb-hub-card{background:#fffc!important;border-color:#e2e8f0e6!important;color:#0f172a!important}.create-nb-tab-btn{padding:8px 18px;border-radius:12px;font-size:.86rem;font-weight:700;cursor:pointer;transition:all .22s cubic-bezier(.16,1,.3,1);display:inline-flex;align-items:center;gap:8px;border:1.5px solid rgba(255,255,255,.12);background:#ffffff0a;color:#cbd5e1;-webkit-user-select:none;user-select:none}.create-nb-tab-btn:hover{background:#38bdf81f;border-color:#38bdf866;color:#38bdf8;transform:translateY(-1px)}.create-nb-tab-btn.active{background:linear-gradient(135deg,#0284c7,#2563eb)!important;border-color:#38bdf8!important;color:#fff!important;box-shadow:0 4px 16px #2563eb6b}.create-nb-dict-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;transition:all .18s ease}.create-nb-dict-card:hover{background:#38bdf814;border-color:#38bdf847}.create-nb-dict-card.is-added{background:#10b9811a;border-color:#10b9814d}.create-nb-selected-card{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:#0f172ad9;border:1px solid rgba(56,189,248,.3);border-radius:10px;font-size:.84rem;color:#fff;transition:all .18s ease;box-shadow:0 2px 8px #0003}.create-nb-selected-card:hover{border-color:#38bdf8;transform:translateY(-1px)}html.light-mode .create-nb-tab-btn{background:#0000000a;border-color:#0000001f;color:#475569}html.light-mode .create-nb-tab-btn.active{background:linear-gradient(135deg,#0284c7,#2563eb)!important;border-color:#2563eb!important;color:#fff!important}html.light-mode .create-nb-dict-card{background:#00000005;border-color:#00000014}html.light-mode .create-nb-selected-card{background:#fff;border-color:#2563eb4d;color:#0f172a}.subdeck-card-locked{cursor:not-allowed!important;opacity:.85!important;border-color:#f59e0b59!important;background:linear-gradient(135deg,#f59e0b0a,#0f172a99)!important}.subdeck-card-locked:hover{transform:none!important;border-color:#f59e0b8c!important;box-shadow:0 4px 18px #f59e0b33!important}.nb-picker-pill.pill-locked{opacity:.75;border-color:#f59e0b40}.nb-picker-pill.pill-locked:hover{border-color:#f59e0b66;color:#fbbf24}html.light-mode .subdeck-card-locked{background:linear-gradient(135deg,#fef3c780,#ffffffe6)!important;border-color:#f59e0b66!important}.nb-lesson-check-card{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:#ffffff08;border:1.5px solid var(--border-glass, rgba(255, 255, 255, .08));cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none;font-size:.88rem;color:var(--text-secondary, #cbd5e1);transform:translateZ(0)}.nb-lesson-check-card:hover{background:#38bdf814;border-color:#38bdf859;color:var(--text-primary, #ffffff);transform:translateY(-1px)}.nb-lesson-check-card.selected{background:linear-gradient(135deg,#2563eb33,#38bdf81f);border-color:#38bdf8;color:#fff;font-weight:700;box-shadow:0 4px 14px #38bdf826}.nb-lesson-check-card .nb-check-icon{font-size:1.15rem;display:flex;align-items:center;justify-content:center;color:#64748b;transition:color .15s ease,transform .15s ease}.nb-lesson-check-card.selected .nb-check-icon{color:#38bdf8;transform:scale(1.08)}.nb-lesson-check-card.locked{cursor:not-allowed;opacity:.65;background:#0f172a66;border-color:#f59e0b33}.nb-lesson-check-card.locked:hover{background:#f59e0b0f;border-color:#f59e0b66;transform:none}.nb-lesson-check-card .nb-lesson-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html.light-mode .nb-lesson-check-card{background:#fff;border-color:#e2e8f0;color:#334155;box-shadow:0 1px 3px #0000000a}html.light-mode .nb-lesson-check-card:hover{background:#f0f9ff;border-color:#38bdf8;color:#0369a1}html.light-mode .nb-lesson-check-card.selected{background:#e0f2fe;border-color:#0284c7;color:#0369a1}html.light-mode .nb-lesson-check-card.locked{background:#f8fafc;border-color:#cbd5e1;opacity:.7}.smart-custom-grid,.notebook-stats-grid,#nb-hsk-lessons-list,.smart-flashcard-config{transform:translateZ(0);backface-visibility:hidden}.disc-filter-pill{padding:6px 14px;border-radius:20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);color:var(--text-secondary, #94a3b8);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;align-items:center;gap:4px}.disc-filter-pill:hover{background:#38bdf81a;border-color:#38bdf859;color:#fff}.disc-filter-pill.active{background:linear-gradient(135deg,#0284c7,#2563eb);border-color:#38bdf8;color:#fff;font-weight:700;box-shadow:0 2px 10px #38bdf84d}.disc-post-card{background:#1e293b80;border:1.5px solid rgba(255,255,255,.08);border-radius:16px;padding:18px 20px;transition:all .2s ease;display:flex;flex-direction:column;gap:12px}.disc-post-card:hover{border-color:#38bdf859;background:#1e293bb3;box-shadow:0 6px 24px #00000040}.disc-cat-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.disc-cat-feedback{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.disc-cat-study{background:#38bdf826;color:#38bdf8;border:1px solid rgba(56,189,248,.3)}.disc-cat-qa{background:#a855f726;color:#c084fc;border:1px solid rgba(168,85,247,.3)}.disc-cat-tips{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.disc-action-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:6px 12px;font-size:.8rem;font-weight:600;color:#94a3b8;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:6px}.disc-action-btn:hover{background:#ffffff1a;color:#fff}.disc-action-btn.liked{background:#ef444426;border-color:#ef444466;color:#f87171}.disc-comment-item{background:#0f172a99;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:10px 14px;display:flex;gap:10px}html.light-mode .disc-post-card{background:#fff;border-color:#e2e8f0;color:#1e293b;box-shadow:0 2px 8px #0000000a}html.light-mode .disc-post-card:hover{border-color:#38bdf8;box-shadow:0 6px 20px #38bdf81f}html.light-mode .disc-filter-pill{background:#f1f5f9;border-color:#cbd5e1;color:#475569}html.light-mode .disc-filter-pill.active{background:linear-gradient(135deg,#0284c7,#2563eb);color:#fff}html.light-mode .disc-comment-item{background:#f8fafc;border-color:#e2e8f0}.admin-users-table{width:100%;border-collapse:separate;border-spacing:0 8px}.admin-users-table th{padding:10px 14px;font-size:.76rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}.admin-user-row{background:#1e293b73;border:1px solid rgba(255,255,255,.06);border-radius:12px;transition:all .2s ease}.admin-user-row:hover{background:#1e293bbf;border-color:#f43f5e40;transform:translateY(-1px)}.admin-user-row td{padding:12px 14px;vertical-align:middle;border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04)}.admin-user-row td:first-child{border-left:1px solid rgba(255,255,255,.04);border-top-left-radius:12px;border-bottom-left-radius:12px}.admin-user-row td:last-child{border-right:1px solid rgba(255,255,255,.04);border-top-right-radius:12px;border-bottom-right-radius:12px}.admin-role-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:.72rem;font-weight:800}.admin-role-super{background:linear-gradient(135deg,#f43f5e,#e11d48);color:#fff;box-shadow:0 2px 8px #f43f5e59}.admin-role-admin{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.admin-role-teacher{background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff}.admin-role-user{background:#94a3b826;color:#94a3b8;border:1px solid rgba(148,163,184,.25)}.admin-status-online{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:#22c55e}.admin-status-online .dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px #22c55e;animation:pulseGreen 2s infinite}.admin-status-offline{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:#64748b}.admin-status-offline .dot{width:8px;height:8px;border-radius:50%;background:#64748b}@keyframes pulseGreen{0%{transform:scale(.95);box-shadow:0 0 #22c55eb3}70%{transform:scale(1.1);box-shadow:0 0 0 6px #22c55e00}to{transform:scale(.95);box-shadow:0 0 #22c55e00}}html.light-mode #admin-management-modal>div{background:#fff;border-color:#cbd5e1;color:#1e293b}html.light-mode .admin-user-row{background:#f8fafc;border-color:#e2e8f0}html.light-mode .admin-user-row:hover{background:#f1f5f9}@keyframes pulseVideoCard{0%{box-shadow:0 4px 18px #ef444440,0 0 #ef444466;border-color:#ef444473}50%{box-shadow:0 8px 30px #ef444473,0 0 0 6px #ef444426;border-color:#ef4444d9}to{box-shadow:0 4px 18px #ef444440,0 0 #ef444466;border-color:#ef444473}}@keyframes youtubeWave{0%{box-shadow:0 0 #ef4444b3;transform:scale(1)}50%{box-shadow:0 0 0 10px #ef444400;transform:scale(1.06)}to{box-shadow:0 0 #ef444400;transform:scale(1)}}@keyframes blinkLiveDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}@keyframes iconWiggle{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.15) rotate(-10deg)}75%{transform:scale(1.15) rotate(10deg)}}@keyframes pulseButtonGlow{0%,to{box-shadow:0 4px 15px #ef444473;transform:translateY(0)}50%{box-shadow:0 6px 22px #ef4444bf;transform:translateY(-1.5px)}}#modal-lesson-extra-video-box{cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)!important;animation:pulseVideoCard 2.8s infinite ease-in-out!important}#modal-lesson-extra-video-box:hover{transform:translateY(-3px) scale(1.012)!important;border-color:#ef4444!important;box-shadow:0 12px 32px #ef44448c!important}#modal-lesson-extra-video-box .video-icon-anim{animation:youtubeWave 2.2s infinite ease-in-out!important}#modal-lesson-extra-video-box:hover .video-icon-anim{animation:iconWiggle .6s infinite ease-in-out!important}#modal-btn-open-video{animation:pulseButtonGlow 2.4s infinite ease-in-out!important}#modal-btn-open-video:hover{transform:translateY(-2px) scale(1.05)!important;box-shadow:0 6px 24px #ef4444cc!important}.stepper-extra-video-btn,.lesson-nav-extra-video-btn,#modal-btn-mod-video{animation:pulseButtonGlow 2.5s infinite ease-in-out!important;cursor:pointer;transition:all .25s ease!important}.stepper-extra-video-btn:hover,.lesson-nav-extra-video-btn:hover,#modal-btn-mod-video:hover{transform:translateY(-2px) scale(1.04)!important;box-shadow:0 6px 20px #ef4444a6!important}.stepper-extra-video-btn i,.lesson-nav-extra-video-btn i,#modal-btn-mod-video i{display:inline-block;transition:transform .25s ease}.stepper-extra-video-btn:hover i,.lesson-nav-extra-video-btn:hover i,#modal-btn-mod-video:hover i{animation:iconWiggle .7s infinite ease-in-out!important}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#ef4444;margin-right:4px;animation:blinkLiveDot 1.4s infinite ease-in-out!important}.notebook-games-hub-wrapper{background:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1.5px solid #e2e8f0;border-radius:24px;padding:24px;color:#0f172a;box-shadow:0 10px 40px #0000000f;margin-bottom:24px;transition:background .3s ease,border-color .3s ease}html.dark .notebook-games-hub-wrapper{background:#0f172ad9;border-color:#ffffff1f;color:#f1f5f9;box-shadow:0 20px 50px #00000080}.games-hub-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px;border-bottom:1px solid #e2e8f0;padding-bottom:18px}html.dark .games-hub-header{border-bottom:1px solid rgba(255,255,255,.1)}.hub-header-left{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.games-hub-title{margin:0;font-size:1.5rem;font-weight:800;font-family:var(--font-display);color:#0f172a;display:flex;align-items:center;gap:10px}html.dark .games-hub-title{color:#fff}.games-hub-sub{margin:4px 0 0;font-size:.85rem;color:#475569}html.dark .games-hub-sub{color:#94a3b8}.beta-pill{background:linear-gradient(135deg,#f59e0b26,#d9770633);border:1.5px solid rgba(245,158,11,.5);color:#d97706;font-size:.82rem;font-weight:800;padding:6px 14px;border-radius:50px;display:inline-flex;align-items:center;gap:6px;box-shadow:0 2px 8px #f59e0b26}html.dark .beta-pill{color:#fbbf24;background:linear-gradient(135deg,#f59e0b33,#d9770640)}.games-selector-intro{text-align:center;margin-bottom:28px}.games-selector-intro h3{font-size:1.45rem;font-weight:800;color:#0f172a;margin-bottom:6px}html.dark .games-selector-intro h3{color:#fff}.games-selector-intro p{color:#475569;font-size:.95rem}html.dark .games-selector-intro p{color:#94a3b8}.games-selector-grid-6{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1200px;margin:0 auto}@media (max-width: 1100px){.games-selector-grid-6{grid-template-columns:repeat(3,1fr)}}@media (max-width: 840px){.games-selector-grid-6{grid-template-columns:repeat(2,1fr)}}@media (max-width: 540px){.games-selector-grid-6{grid-template-columns:1fr}}.game-choice-card{background:#fff;border:2px solid #e2e8f0;border-radius:20px;padding:22px 18px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 16px #0000000d}html.dark .game-choice-card{background:linear-gradient(145deg,#1e293bd9,#0f172ad9);border-color:#ffffff1f;box-shadow:0 4px 20px #0006}.game-choice-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px #0000001f}html.dark .game-choice-card:hover{box-shadow:0 16px 36px #00000080}.card-quiz-highlight{border-top:4px solid #6366f1!important;background:linear-gradient(180deg,#f5f3ff,#fff)!important}html.dark .card-quiz-highlight{background:linear-gradient(145deg,#6366f126,#111827d9)!important}.card-cannon{border-top:4px solid #dc2626!important;background:linear-gradient(180deg,#fef2f2,#fff)!important}html.dark .card-cannon{border-color:#ef4444!important;background:linear-gradient(145deg,#ef444426,#111827d9)!important}.card-snake{border-top:4px solid #059669!important;background:linear-gradient(180deg,#ecfdf5,#fff)!important}html.dark .card-snake{border-color:#10b981!important;background:linear-gradient(145deg,#10b98126,#111827d9)!important}.card-alchemist{border-top:4px solid #9333ea!important;background:linear-gradient(180deg,#faf5ff,#fff)!important}html.dark .card-alchemist{border-color:#a855f7!important;background:linear-gradient(145deg,#a855f726,#111827d9)!important}.card-mahjong{border-top:4px solid #d97706!important;background:linear-gradient(180deg,#fffbeb,#fff)!important}html.dark .card-mahjong{border-color:#f59e0b!important;background:linear-gradient(145deg,#f59e0b26,#111827d9)!important}.card-rhythm{border-top:4px solid #db2777!important;background:linear-gradient(180deg,#fdf2f8,#fff)!important}html.dark .card-rhythm{border-color:#ec4899!important;background:linear-gradient(145deg,#ec489926,#111827d9)!important}.card-locked-beta{opacity:.82;filter:grayscale(.2)}.card-tag{font-size:.72rem;font-weight:800;padding:4px 10px;border-radius:50px;margin-bottom:12px;letter-spacing:.3px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.card-quiz-highlight .card-tag{background:#e0e7ff;color:#4338ca;border:1px solid #c7d2fe}.card-cannon .card-tag{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.card-snake .card-tag{background:#d1fae5;color:#047857;border:1px solid #a7f3d0}.card-alchemist .card-tag{background:#f3e8ff;color:#7e22ce;border:1px solid #e9d5ff}.card-mahjong .card-tag{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.card-rhythm .card-tag{background:#fce7f3;color:#be185d;border:1px solid #fbcfe8}html.dark .card-quiz-highlight .card-tag{background:#6366f140;color:#a5b4fc;border-color:#6366f173}html.dark .card-cannon .card-tag{background:#ef444440;color:#f87171;border-color:#ef444473}html.dark .card-snake .card-tag{background:#10b98140;color:#34d399;border-color:#10b98173}html.dark .card-alchemist .card-tag{background:#a855f740;color:#c084fc;border-color:#a855f773}html.dark .card-mahjong .card-tag{background:#f59e0b40;color:#fbbf24;border-color:#f59e0b73}html.dark .card-rhythm .card-tag{background:#ec489940;color:#f472b6;border-color:#ec489973}.card-icon-hero{font-size:3.2rem;margin-bottom:12px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.15))}.card-title{font-size:1.25rem;font-weight:800;color:#0f172a;margin-bottom:8px}html.dark .card-title{color:#fff}.card-desc{font-size:.86rem;color:#475569;line-height:1.5;margin-bottom:16px;flex-grow:1}html.dark .card-desc{color:#cbd5e1}.card-features{display:flex;flex-direction:column;gap:6px;font-size:.78rem;font-weight:600;color:#64748b;margin-bottom:18px;width:100%}html.dark .card-features{color:#94a3b8}.card-features span{display:flex;align-items:center;gap:6px;justify-content:center}.game-launch-btn{width:100%;padding:10px 16px;font-weight:800;font-size:.9rem;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all .15s ease}.game-launch-btn:hover{transform:translateY(-2px) scale(1.02)}.games-access-denied-card{text-align:center;padding:50px 24px;background:#0000000d;border-radius:20px;border:1.5px dashed #cbd5e1}html.dark .games-access-denied-card{background:#0000004d;border-color:#f59e0b66}.cannon-game-wrapper{display:flex;flex-direction:column;gap:16px}.cannon-hud-bar{background:#0f172ad9;border:1px solid var(--border-glass);border-radius:16px;padding:12px 20px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.hud-item{display:flex;align-items:center;gap:10px}.hud-content{display:flex;flex-direction:column}.hud-label{font-size:.72rem;font-weight:800;color:var(--text-muted);letter-spacing:.5px}.hud-value{font-size:1.25rem;font-weight:900;color:var(--text-primary)}.hud-combo-meter{width:90px;height:8px;background:#ffffff1a;border-radius:10px;overflow:hidden}.hud-combo-fill{height:100%;background:linear-gradient(90deg,#f97316,#ef4444);transition:width .2s ease}.hud-hearts{display:flex;gap:5px;font-size:1.1rem}.cannon-arena-layout{display:grid;grid-template-columns:1fr 280px;gap:18px}@media (max-width: 900px){.cannon-arena-layout{grid-template-columns:1fr}}.cannon-playfield{background:#fff;border-radius:20px;height:520px;position:relative;overflow:hidden;box-shadow:inset 0 0 30px #0000000f,0 10px 30px #0003;border:2px solid #e2e8f0}html.dark .cannon-playfield{background:#090d16;border-color:#ffffff1f;box-shadow:inset 0 0 30px #00000080}.cannon-buff-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#38bdf8;border:1px solid #38bdf8;padding:5px 16px;border-radius:50px;font-size:.82rem;font-weight:800;z-index:10;box-shadow:0 4px 14px #0000004d}.cannon-words-layer,.cannon-fx-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.cannon-word-card{position:absolute;padding:8px 18px;border-radius:14px;background:#fff;box-shadow:0 6px 16px #0000001f;display:flex;flex-direction:column;align-items:center;transition:transform .1s linear;pointer-events:auto;border:2px solid #cbd5e1}html.dark .cannon-word-card{background:#1e293b;color:#f8fafc}.cannon-word-card.type-normal{border-color:#22c55e}.cannon-word-card.type-normal .word-dash-line{background:#22c55e}.cannon-word-card.type-bomb{border-color:#ef4444;background:#fff1f2}html.dark .cannon-word-card.type-bomb{background:#3a151b;border-color:#ef4444}.cannon-word-card.type-bomb .word-dash-line{background:#ef4444}.cannon-word-card.type-bonus{border-color:#f59e0b;background:#fffbeb}html.dark .cannon-word-card.type-bonus{background:#392b0f;border-color:#fbbf24}.cannon-word-card.type-bonus .word-dash-line{background:#f59e0b}.word-zh{font-size:1.35rem;font-weight:800;font-family:var(--font-hanzi);display:flex;align-items:center;gap:6px;color:#0f172a}html.dark .word-zh{color:#fff}.word-dash-line{width:24px;height:3px;border-radius:2px;margin-top:4px}.cannon-station{position:absolute;bottom:85px;left:50%;transform:translate(-50%);width:70px;height:70px;pointer-events:none;z-index:5}.cannon-body-wrap{width:100%;height:100%;position:relative;transform-origin:center center;transition:transform .08s ease-out}.cannon-barrel-graphic{width:22px;height:48px;background:linear-gradient(180deg,#38bdf8,#0284c7);border:2px solid #0f172a;border-radius:8px 8px 3px 3px;position:absolute;top:-12px;left:50%;transform:translate(-50%);box-shadow:0 0 10px #38bdf880}.cannon-base-graphic{width:54px;height:32px;background:linear-gradient(180deg,#ef4444,#991b1b);border:2px solid #0f172a;border-radius:50px 50px 8px 8px;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 4px 10px #0000004d}.cannon-bullet{position:absolute;width:12px;height:12px;border-radius:50%;background:#fbbf24;box-shadow:0 0 12px #f59e0b,0 0 20px #ef4444;pointer-events:none;z-index:6}.cannon-floating-text{position:absolute;font-size:1.1rem;font-weight:900;pointer-events:none;animation:floatFadeUp .9s forwards ease-out;text-shadow:0 2px 8px rgba(0,0,0,.5);z-index:8}@keyframes floatFadeUp{0%{transform:translateY(0) scale(.8);opacity:1}to{transform:translateY(-45px) scale(1.1);opacity:0}}.cannon-explosion{position:absolute;width:60px;height:60px;border-radius:50%;background:radial-gradient(circle,#fbbf24 20%,#ef4444 60%,transparent 80%);animation:explodeAnim .5s forwards ease-out;pointer-events:none;z-index:7}@keyframes explodeAnim{0%{transform:scale(.2);opacity:1}to{transform:scale(1.6);opacity:0}}.cannon-input-bar{position:absolute;bottom:12px;left:50%;transform:translate(-50%);width:90%;max-width:600px;z-index:10}.cannon-input-wrap{display:flex;gap:8px}.cannon-pinyin-input{flex:1;background:#fff;border:2px solid #38bdf8;border-radius:12px;padding:12px 18px;font-size:1.15rem;font-weight:700;color:#0f172a;outline:none;box-shadow:0 4px 14px #38bdf840;transition:all .2s ease}html.dark .cannon-pinyin-input{background:#1e293b;color:#fff;border-color:#38bdf8}.cannon-pinyin-input:focus{border-color:#0284c7;box-shadow:0 0 0 3px #38bdf866}.cannon-fire-btn{background:linear-gradient(135deg,#0284c7,#2563eb);color:#fff;border:none;border-radius:12px;padding:0 20px;font-weight:800;font-size:.95rem;cursor:pointer;box-shadow:0 4px 12px #2563eb59;white-space:nowrap}.cannon-input-hint{text-align:center;font-size:.78rem;color:#64748b;margin-top:6px;font-weight:600}html.dark .cannon-input-hint{color:#94a3b8}.cannon-sidebar{background:#0f172acc;border:1px solid var(--border-glass);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:12px}.cannon-shop-header{text-align:center;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:8px}.cannon-shop-title{font-size:.85rem;font-weight:800;color:#cbd5e1;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.cannon-skill-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;opacity:.7;transition:all .2s ease;text-align:left;color:inherit}.cannon-skill-card:hover{transform:translate(4px);background:#ffffff14}.cannon-skill-card.affordable{opacity:1;cursor:pointer;border-color:#38bdf880;background:#38bdf81a;box-shadow:0 0 12px #38bdf833}.cannon-skill-card.affordable:hover{transform:translate(4px) scale(1.02);background:#38bdf833;border-color:#38bdf8}.skill-icon-box{width:38px;height:38px;min-width:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem}.skill-info{flex-grow:1}.skill-name{font-size:.85rem;font-weight:800;color:var(--text-primary)}.skill-desc{font-size:.72rem;color:var(--text-secondary);line-height:1.3}.skill-cost-badge{font-size:.95rem;font-weight:900;color:#38bdf8;text-align:right}.skill-cost-badge small{display:block;font-size:.6rem;color:#94a3b8}.cannon-sidebar-combo-box{background:#f973161f;border:1px solid rgba(249,115,22,.3);border-radius:12px;padding:10px 14px;display:flex;align-items:center;gap:12px}.cannon-mascot-box{margin-top:auto;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;display:flex;align-items:center;gap:10px}.mascot-tip{font-size:.75rem;color:#cbd5e1;line-height:1.4}.mascot-dragon-img{font-size:2.2rem;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.cannon-footer-rules{display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#0f172a99;border:1px solid var(--border-glass);border-radius:16px;padding:18px 22px}@media (max-width: 768px){.cannon-footer-rules{grid-template-columns:1fr}}.rules-title{font-size:.85rem;font-weight:800;color:#38bdf8;margin-bottom:12px;text-transform:uppercase}.word-types-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.word-type-item{background:#00000040;border-radius:10px;padding:10px;border:1px solid rgba(255,255,255,.06);text-align:center}.word-type-item p{font-size:.72rem;color:var(--text-secondary);margin:4px 0 8px;line-height:1.3}.type-badge-normal{font-size:.72rem;font-weight:800;color:#22c55e}.type-badge-bomb{font-size:.72rem;font-weight:800;color:#ef4444}.type-badge-bonus{font-size:.72rem;font-weight:800;color:#f59e0b}.demo-card{font-size:.95rem;font-weight:800;padding:4px 8px;border-radius:8px;display:inline-block;background:#fff;color:#0f172a}.demo-normal{border:1.5px solid #22c55e}.demo-bomb{border:1.5px solid #ef4444}.demo-bonus{border:1.5px solid #f59e0b}.rules-list{margin:0;padding-left:20px;font-size:.82rem;color:#cbd5e1;line-height:1.6}.cannon-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0f172ae0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;border-radius:20px}.cannon-result-card{background:#0f172a!important;border:1.5px solid rgba(255,255,255,.15)!important;border-radius:24px!important;padding:24px!important;max-width:580px!important;width:100%!important;max-height:90vh!important;display:flex!important;flex-direction:column!important;text-align:center!important;box-shadow:0 25px 60px #000c!important;color:#f8fafc!important;overflow:hidden!important}.result-icon{font-size:3rem;margin-bottom:4px}.result-title{font-size:1.4rem;font-weight:800;color:#fff;margin-bottom:4px}.result-desc{font-size:.86rem;color:#94a3b8;margin-bottom:14px;line-height:1.4}.result-stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:12px}.stat-pill{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px}.stat-pill .label{display:block;font-size:.68rem;color:#94a3b8;font-weight:700;margin-bottom:2px;text-transform:uppercase}.stat-pill .val{font-size:1.15rem;font-weight:900;color:#38bdf8}.result-beta-note{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);color:#fbbf24;font-size:.75rem;padding:6px 12px;border-radius:8px;line-height:1.35;margin-top:6px}.game-results-word-summary{margin-top:10px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px;text-align:left;flex:1;min-height:220px;max-height:clamp(320px,52vh,480px);overflow:hidden}.summary-tabs-header{display:flex;gap:6px;background:#ffffff0d;padding:4px;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.summary-tab-btn{flex:1;background:transparent;border:none;color:#94a3b8;font-weight:700;font-size:.78rem;padding:6px 8px;border-radius:8px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:5px}.summary-tab-btn.active{background:#ffffff26;color:#fff;box-shadow:0 2px 8px #0003}.summary-tab-btn.correct-tab.active{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.4)}.summary-tab-btn.wrong-tab.active{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4)}.summary-words-list{overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:4px;flex:1}.summary-words-list::-webkit-scrollbar{width:6px}.summary-words-list::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.summary-word-card{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#ffffff0a;border:1.5px solid rgba(255,255,255,.08);border-radius:12px;gap:10px;transition:all .2s ease}.summary-word-card.is-correct{border-color:#22c55e59;background:#22c55e0f}.summary-word-card.is-wrong{border-color:#ef444459;background:#ef44440f}.sw-badge{padding:3px 8px;border-radius:6px;font-size:.72rem;font-weight:800;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.sw-badge.badge-correct{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.sw-badge.badge-wrong{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.3)}.sw-main{display:flex;align-items:baseline;gap:8px;flex:1;flex-wrap:wrap}.sw-hanzi{font-size:1.15rem;font-weight:800;color:#fff;font-family:var(--font-hanzi, "Noto Sans SC", sans-serif)}.sw-pinyin{font-size:.85rem;font-weight:700;color:#38bdf8}.sw-meaning{font-size:.85rem;color:#cbd5e1}.sw-speak-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#38bdf8;width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:.85rem;flex-shrink:0}.sw-speak-btn:hover{background:#38bdf8;color:#0f172a;transform:scale(1.1)}.cannon-hud-bar,.snake-hud-bar,.mahjong-hud-bar,.alchemist-hud-bar,.rhythm-hud-bar{background:#fff!important;border:1.5px solid #cbd5e1!important;border-radius:14px!important;padding:8px 14px!important;display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;color:#0f172a!important;box-shadow:0 4px 15px #0000000d!important}html.dark .cannon-hud-bar,html.dark .snake-hud-bar,html.dark .mahjong-hud-bar,html.dark .alchemist-hud-bar,html.dark .rhythm-hud-bar{background:#0f172a!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#f8fafc!important;box-shadow:0 8px 25px #00000073!important}.hud-item{display:inline-flex!important;align-items:center!important;gap:6px!important;font-size:.88rem!important;font-weight:700!important;color:#1e293b!important}html.dark .hud-item{color:#f8fafc!important}.hud-label{color:#475569!important;font-weight:800!important;font-size:.76rem!important;letter-spacing:.05em!important;text-transform:uppercase!important}html.dark .hud-label{color:#94a3b8!important}.hud-value{color:#0284c7!important;font-weight:900!important;font-size:.95rem!important}.hud-score .hud-value{color:#d97706!important}html.dark .hud-score .hud-value{color:#fbbf24!important}.hud-progress .hud-value{color:#7c3aed!important}html.dark .hud-progress .hud-value{color:#c084fc!important}.hud-timer .hud-value{color:#0284c7!important;font-family:monospace!important;font-size:1.05rem!important;font-weight:900!important}html.dark .hud-timer .hud-value{color:#38bdf8!important}.snake-game-wrapper{display:flex;flex-direction:column;gap:16px}.snake-hud-bar{background:#fdfbf7;border:1.5px solid #e2e8f0;border-radius:16px;padding:10px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;color:#0f172a}html.dark .snake-hud-bar{background:#0f172a;border-color:#ffffff1f;color:#f8fafc}.hud-item-title{font-size:1.15rem;font-weight:900;display:flex;align-items:center;gap:6px}.hud-level-badge{background:#2563eb1a;border:1px solid rgba(37,99,235,.3);color:#2563eb;padding:4px 12px;border-radius:50px;font-size:.85rem;font-weight:800}html.dark .hud-level-badge{color:#38bdf8;border-color:#38bdf866}.hud-streak-wrap{display:flex;align-items:center;gap:10px}.hud-beads-container{display:flex;gap:4px}.bead{width:10px;height:10px;border-radius:50%;background:#e2e8f0;border:1.5px solid #cbd5e1;transition:all .2s ease}.bead.filled{background:#22c55e;border-color:#16a34a;box-shadow:0 0 6px #22c55e99;transform:scale(1.15)}.snake-arena-layout{display:grid;grid-template-columns:1fr 270px;gap:14px;align-items:start;width:100%}@media (max-width: 900px){.snake-arena-layout{grid-template-columns:1fr}}.snake-battle-column{width:100%;display:flex;flex-direction:column;gap:8px}.snake-sidebar{display:flex;flex-direction:column;gap:10px;width:100%}.snake-mode-selector-bar{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:2px}.snake-mode-btn{background:#0f172a0d;border:1.5px solid rgba(15,23,42,.15);color:#475569;padding:6px 14px;border-radius:50px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}html.dark .snake-mode-btn{background:#ffffff0f;border-color:#ffffff26;color:#cbd5e1}.snake-mode-btn:hover{background:#0ea5e926;border-color:#38bdf8;color:#0284c7;transform:translateY(-1px)}html.dark .snake-mode-btn:hover{color:#38bdf8}.snake-mode-btn.active{background:linear-gradient(135deg,#0284c7,#0369a1);border-color:#38bdf8;color:#fff!important;box-shadow:0 4px 12px #0284c759}.snake-target-banner{background:linear-gradient(135deg,#0284c7,#0369a1);border:2px solid #38bdf8;border-radius:18px;padding:16px 14px;box-shadow:0 6px 20px #0284c759;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;color:#fff;box-sizing:border-box;width:100%}html.dark .snake-target-banner{background:linear-gradient(135deg,#0f172a,#1e293b);border-color:#38bdf8;box-shadow:0 6px 20px #00000073}.target-badge-label{font-size:.75rem;font-weight:900;letter-spacing:.06em;color:#0369a1;text-transform:uppercase;background:#fff;padding:4px 14px;border-radius:50px;display:inline-flex;align-items:center;gap:4px;box-shadow:0 2px 6px #00000026}html.dark .target-badge-label{color:#0f172a;background:#38bdf8}.target-word-row{display:flex;align-items:center;justify-content:center;gap:10px;margin:4px 0;width:100%}.target-zh{font-size:clamp(1.4rem,2.2vw,2.4rem);font-weight:900;color:#fef08a!important;font-family:var(--font-hanzi, "Noto Sans SC", sans-serif);line-height:1.15;text-shadow:0 2px 8px rgba(0,0,0,.4);word-break:break-word;max-width:100%}html.dark .target-zh{color:#fef08a!important}.target-pinyin{display:none!important}.target-speak-btn{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;width:36px;height:36px;border-radius:50%;font-size:1rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.target-speak-btn:hover{background:#fff;color:#0284c7;transform:scale(1.1)}.target-speak-btn:active{transform:scale(.92)}html.dark .target-speak-btn{background:#38bdf833;border-color:#38bdf880;color:#38bdf8}html.dark .target-speak-btn:hover{background:#38bdf8;color:#0f172a}.target-action-hint{font-size:.82rem;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;background:#00000040;padding:6px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.18);line-height:1.35;width:100%;box-sizing:border-box}html.dark .target-action-hint{color:#f1f5f9;background:#0006}.target-action-hint strong{color:#fde047}.snake-canvas-container{position:relative;background:#fff;border-radius:16px;overflow:hidden;border:2px solid #0284c7;display:flex;flex-direction:column;align-items:center;box-shadow:0 8px 24px #0000001f;touch-action:none!important;user-select:none!important;-webkit-user-select:none!important;width:100%}html.dark .snake-canvas-container{background:#0f172a;border-color:#ffffff1f}.snake-canvas{display:block;max-width:100%;height:auto;cursor:crosshair;touch-action:none!important;user-select:none!important;-webkit-user-select:none!important}.snake-controls-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:18px;padding:12px 18px;flex-wrap:wrap}html.dark .snake-controls-panel{background:#1e293b;border-color:#ffffff1a}.snake-dpad-wrapper{display:flex;flex-direction:column;align-items:center;gap:6px}.dpad-row{display:flex;gap:8px}.dpad-btn{width:62px;height:50px;border-radius:14px;background:linear-gradient(135deg,#fff,#f1f5f9);border:2px solid #cbd5e1;color:#0f172a;font-size:1.1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;transition:all .1s ease;box-shadow:0 3px 8px #00000014;user-select:none;-webkit-user-select:none}html.dark .dpad-btn{background:linear-gradient(135deg,#334155,#1e293b);border-color:#475569;color:#f8fafc;box-shadow:0 3px 8px #00000040}.dpad-btn span{font-size:.65rem;font-weight:800;text-transform:uppercase}.dpad-btn:hover{border-color:#0284c7;color:#0284c7;transform:translateY(-2px)}.dpad-btn:active,.dpad-btn.active{transform:scale(.92);background:#0284c7;border-color:#0284c7;color:#fff}.snake-keys-guide{flex:1;min-width:220px}.guide-title{font-size:.8rem;font-weight:800;color:#64748b;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:6px}html.dark .guide-title{color:#94a3b8}.guide-tags{display:flex;flex-wrap:wrap;gap:8px}.guide-tag{display:inline-flex;align-items:center;gap:4px;background:#fffc;border:1px solid #cbd5e1;padding:4px 10px;border-radius:8px;font-size:.78rem;font-weight:700;color:#334155}html.dark .guide-tag{background:#0f172a99;border-color:#475569;color:#cbd5e1}.guide-tag kbd{background:#e2e8f0;border:1px solid #94a3b8;border-radius:4px;padding:1px 5px;font-size:.75rem;font-weight:800;font-family:monospace;color:#0f172a;box-shadow:0 1px 2px #0000001a}html.dark .guide-tag kbd{background:#334155;border-color:#64748b;color:#f8fafc}.snake-sidebar-card{background:#fdfbf7;border:1.5px solid #e2e8f0;border-radius:18px;padding:16px;color:#0f172a}html.dark .snake-sidebar-card{background:#1e293b;border-color:#ffffff1a;color:#f8fafc}.sidebar-sec-title{font-size:.82rem;font-weight:800;text-transform:uppercase;color:#64748b;margin-bottom:10px}html.dark .sidebar-sec-title{color:#94a3b8}.sidebar-bullets{margin:0;padding-left:18px;font-size:.8rem;line-height:1.5;color:#475569}html.dark .sidebar-bullets{color:#cbd5e1}.powerup-item-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.p-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.p-title{font-size:.82rem;font-weight:800}.p-desc{font-size:.72rem;color:#64748b;line-height:1.3}html.dark .p-desc{color:#94a3b8}.snake-rules-main-card{background:#fdfbf7;border:1.5px solid #e2e8f0;border-radius:18px;padding:20px;color:#0f172a}html.dark .snake-rules-main-card{background:#1e293b;border-color:#ffffff1a;color:#f8fafc}.snake-rules-flow-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:20px}@media (max-width: 768px){.snake-rules-flow-grid{grid-template-columns:1fr}}.flow-block{background:#00000005;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:14px}html.dark .flow-block{background:#0003;border-color:#ffffff0f}.flow-tag{font-size:.75rem;font-weight:800;display:inline-block;padding:2px 8px;border-radius:4px;margin-bottom:6px}.tag-correct{background:#dcfce7;color:#16a34a}.tag-wrong{background:#fee2e2;color:#dc2626}.flow-desc{font-size:.78rem;color:#64748b;margin-bottom:10px}html.dark .flow-desc{color:#94a3b8}.flow-steps{display:flex;align-items:center;gap:8px}.step-card{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;font-size:.75rem;text-align:center;flex:1}html.dark .step-card{background:#0f172a;border-color:#ffffff26}.step-arrow{color:#94a3b8;font-size:.8rem}.summary-list{margin:0;padding-left:18px;font-size:.78rem;line-height:1.6;color:#475569}html.dark .summary-list{color:#cbd5e1}.snake-stepper-row{border-top:1px solid rgba(0,0,0,.08);padding-top:14px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}html.dark .snake-stepper-row{border-top-color:#ffffff14}.stepper-label{font-size:.82rem;font-weight:800;color:#64748b}html.dark .stepper-label{color:#94a3b8}.stepper-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.step-pill{font-size:.78rem;font-weight:700;padding:4px 10px;border-radius:50px;border:1px solid #cbd5e1;color:#64748b}.step-pill.active{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 2px 8px #2563eb59}.step-pill.done{background:#dcfce7;color:#16a34a;border-color:#86efac}.stepper-notes{font-size:.75rem;color:#64748b;margin-left:auto}html.dark .stepper-notes{color:#94a3b8}.games-selector-grid-6{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.card-quiz-highlight{border-top:4px solid #6366f1!important;background:linear-gradient(145deg,#6366f126,#111827d9)!important;box-shadow:0 10px 30px #6366f140!important;border-color:#6366f14d!important}.card-quiz-highlight:hover{border-color:#818cf8!important;box-shadow:0 16px 40px #6366f166!important;transform:translateY(-4px)!important}.card-locked-beta{position:relative!important;opacity:.85!important;border-style:dashed!important}.card-locked-beta:hover{opacity:.95!important}.card-locked-badge{position:absolute;top:14px;right:14px;background:#f59e0b40;border:1px solid rgba(245,158,11,.5);color:#fbbf24;padding:4px 10px;border-radius:50px;font-size:.75rem;font-weight:800;display:flex;align-items:center;gap:4px;box-shadow:0 2px 8px #0000004d}.card-alchemist{border-top:4px solid #a855f7}.card-alchemist:hover{border-color:#c084fc;box-shadow:0 12px 32px #a855f733}.card-mahjong{border-top:4px solid #f59e0b}.card-mahjong:hover{border-color:#fbbf24;box-shadow:0 12px 32px #f59e0b33}.card-rhythm{border-top:4px solid #ec4899}.card-rhythm:hover{border-color:#f472b6;box-shadow:0 12px 32px #ec489933}.alchemist-game-wrapper{display:flex;flex-direction:column;gap:16px}.alchemist-arena-grid{display:grid;grid-template-columns:280px 1fr 300px;gap:16px;align-items:stretch}@media (max-width: 980px){.alchemist-arena-grid{grid-template-columns:1fr}}.alchemist-target-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 4px 16px #0000000d}html.dark .alchemist-target-card{background:#0f172ad9;border-color:var(--border-glass)}.alchemist-quest-tag{font-size:.72rem;font-weight:800;letter-spacing:.5px;color:#7e22ce;background:#f3e8ff;border:1px solid #e9d5ff;padding:4px 12px;border-radius:50px;margin-bottom:14px}html.dark .alchemist-quest-tag{color:#c084fc;background:#a855f726;border-color:#a855f74d}.alchemist-target-main{width:100%;display:flex;flex-direction:column;align-items:center}.target-mystery-box{width:100%;display:flex;justify-content:center;margin:6px 0 12px}.target-mystery-orb{width:110px;height:110px;border-radius:24px;background:radial-gradient(circle at 35% 35%,#9333ea,#581c87 70%,#3b0764);border:3px solid rgba(192,132,252,.6);box-shadow:0 8px 24px #9333ea59,inset 0 2px 10px #ffffff4d;display:flex;align-items:center;justify-content:center;position:relative;transition:all .4s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.target-mystery-orb .mystery-question-mark{font-size:3.2rem;font-weight:900;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.4);animation:mysteryFloat 2.4s infinite ease-in-out}@keyframes mysteryFloat{0%,to{transform:scale(1) translateY(0);filter:brightness(1)}50%{transform:scale(1.1) translateY(-3px);filter:brightness(1.3)}}.target-mystery-orb.revealed{background:radial-gradient(circle at 35% 35%,#10b981,#047857 70%,#064e3b);border-color:#34d399;box-shadow:0 4px 16px #34d39966,inset 0 0 15px #fff6;transform:rotateY(360deg)}.target-mystery-orb.revealed .mystery-question-mark{display:none}.target-mystery-orb .revealed-hanzi{display:none;font-size:3.2rem;font-weight:900;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.4)}.target-mystery-orb.revealed .revealed-hanzi{display:block}.target-pinyin-wrap{display:flex;align-items:center;gap:8px;margin-top:4px}.target-pinyin-glow{font-size:1.25rem;color:#7e22ce;font-weight:800}html.dark .target-pinyin-glow{color:#38bdf8}.pinyin-speaker-btn{background:#a855f71f;border:1px solid rgba(168,85,247,.25);color:#9333ea;border-radius:50%;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:.8rem}.pinyin-speaker-btn:hover{background:#9333ea;color:#fff;transform:scale(1.12)}html.dark .pinyin-speaker-btn{background:#38bdf826;border-color:#38bdf859;color:#38bdf8}html.dark .pinyin-speaker-btn:hover{background:#38bdf8;color:#0f172a}.target-meaning-box{margin-top:12px;padding:12px 16px;background:#faf5ff;border-radius:14px;border:1.5px solid #e9d5ff;width:100%}html.dark .target-meaning-box{background:#ffffff0a;border-color:#a855f740}.target-meaning-box .meaning-label{font-size:.72rem;font-weight:700;text-transform:uppercase;color:#64748b;display:block;letter-spacing:.5px}html.dark .target-meaning-box .meaning-label{color:#94a3b8}.target-meaning-box .meaning-val{font-size:1.15rem;font-weight:900;color:#6b21a8;margin-top:4px}html.dark .target-meaning-box .meaning-val{color:#fbbf24}.alchemist-hint-box{margin-top:auto;padding-top:14px;font-size:.78rem;color:#64748b;line-height:1.4;display:flex;align-items:center;gap:8px;text-align:left}html.dark .alchemist-hint-box{color:#94a3b8}.alchemist-cauldron-container{background:radial-gradient(circle at center,#1e1b4b,#0f172a);border:1px solid rgba(168,85,247,.3);border-radius:20px;padding:24px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;min-height:380px}.cauldron-aura{position:absolute;width:280px;height:280px;background:radial-gradient(circle,rgba(168,85,247,.25) 0%,transparent 70%);filter:blur(20px);animation:auraPulse 3s infinite ease-in-out;pointer-events:none}@keyframes auraPulse{0%,to{transform:scale(.9);opacity:.6}50%{transform:scale(1.15);opacity:1}}.cauldron-pot{min-width:270px;width:270px;max-width:96%;height:185px;background:linear-gradient(180deg,#1e293b,#0f172a);border:4px solid #475569;border-radius:20px 20px 100px 100px;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px #0009,inset 0 -10px 25px #a855f766;transition:width .35s cubic-bezier(.34,1.56,.64,1),min-width .35s ease}.cauldron-pot.slots-2{min-width:270px;width:270px}.cauldron-pot.slots-3{min-width:360px;width:360px}.cauldron-pot.slots-4{min-width:440px;width:440px}.cauldron-rim{position:absolute;top:-12px;left:-10px;right:-10px;height:24px;background:#334155;border:3px solid #64748b;border-radius:50px}.cauldron-liquid{position:absolute;top:8px;left:12px;right:12px;bottom:12px;background:linear-gradient(180deg,#7e22ce,#3b0764);border-radius:0 0 90px 90px;opacity:.85;overflow:hidden;transition:all .3s ease}.cauldron-liquid.fusion-success{background:linear-gradient(180deg,#10b981,#064e3b);box-shadow:0 0 35px #10b981}.cauldron-liquid.fusion-fail{background:linear-gradient(180deg,#64748b,#1e293b);box-shadow:0 0 25px #ef4444}.cauldron-bubble{position:absolute;background:#fff6;border-radius:50%;animation:bubbleUp 2s infinite ease-in}.cauldron-bubble.b1{width:14px;height:14px;left:30px;bottom:10px;animation-delay:0s}.cauldron-bubble.b2{width:10px;height:10px;left:50%;bottom:10px;animation-delay:.6s}.cauldron-bubble.b3{width:18px;height:18px;right:30px;bottom:10px;animation-delay:1.2s}@keyframes bubbleUp{0%{transform:translateY(0) scale(.5);opacity:0}50%{opacity:.8}to{transform:translateY(-110px) scale(1.2);opacity:0}}.cauldron-slots-wrap{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 8px;max-width:100%}.cauldron-slot{width:56px;height:56px;background:#0f172ae0;border:2px dashed rgba(192,132,252,.6);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:800;color:#c084fc;cursor:pointer;transition:all .2s ease;box-shadow:inset 0 2px 8px #00000080;-webkit-user-select:none;user-select:none}.cauldron-slot.filled{border-style:solid;border-color:#a855f7;background:#a855f740;color:#fff;box-shadow:0 0 15px #a855f7b3;animation:slotPop .25s ease-out}@keyframes slotPop{0%{transform:scale(.85)}60%{transform:scale(1.1)}to{transform:scale(1)}}.slot-placeholder{color:#ffffff4d;font-size:1.2rem}.slot-plus{font-size:1.4rem;font-weight:900;color:#c084fc}.cauldron-actions{display:flex;gap:14px;margin-top:24px;z-index:5}.btn-fuse-glow{background:linear-gradient(135deg,#a855f7,#6b21a8);color:#fff;border-radius:50px;padding:10px 24px;font-weight:800;box-shadow:0 4px 16px #a855f780;transition:all .2s ease}.btn-fuse-glow:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 6px 22px #a855f7b3}.alchemist-shelf-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;padding:18px;display:flex;flex-direction:column;box-shadow:0 4px 16px #0000000d}html.dark .alchemist-shelf-card{background:#0f172ad9;border-color:var(--border-glass)}.shelf-title{font-size:.95rem;font-weight:800;color:#0284c7;margin-bottom:4px}html.dark .shelf-title{color:#38bdf8}.shelf-hint{font-size:.75rem;color:#64748b;margin-bottom:14px}html.dark .shelf-hint{color:#94a3b8}.radicals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;overflow-y:auto;max-height:320px;padding-right:4px}.radical-crystal-btn{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;position:relative}html.dark .radical-crystal-btn{background:#ffffff0a;border-color:#38bdf840}.radical-crystal-btn:hover{background:#f0fdf4;border-color:#22c55e;transform:translateY(-3px);box-shadow:0 4px 12px #22c55e33}html.dark .radical-crystal-btn:hover{background:#38bdf826;border-color:#38bdf8;box-shadow:0 4px 12px #38bdf84d}.radical-crystal-btn .rad-char{font-size:1.6rem;font-weight:900;color:#0f172a}html.dark .radical-crystal-btn .rad-char{color:#fff}.radical-crystal-btn .rad-sparkle{font-size:.65rem;opacity:.7}.mahjong-game-wrapper{display:flex;flex-direction:column;gap:16px}.mahjong-arena-layout{display:grid;grid-template-columns:1fr 270px;gap:18px;align-items:start}@media (max-width: 900px){.mahjong-arena-layout{grid-template-columns:1fr}}.mahjong-board-container{background:#f8fafc;border:2px solid #e2e8f0;border-radius:20px;padding:24px;position:relative;min-height:440px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #0000000f;overflow:hidden}html.dark .mahjong-board-container{background:#0f172ae6;border-color:#38bdf833;box-shadow:0 4px 25px #0006}.mahjong-line-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:20}.mahjong-tiles-grid{display:grid;gap:10px;width:100%;max-width:720px;z-index:10;position:relative}.mahjong-tile{background:#fff;border:2px solid #cbd5e1;border-radius:14px;padding:10px 6px;min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease,border-color .18s ease,background .18s ease;position:relative;box-shadow:0 4px 10px #00000012;-webkit-user-select:none;user-select:none}html.dark .mahjong-tile{background:linear-gradient(145deg,#1e293b,#0f172a);border-color:#334155;box-shadow:0 4px 12px #00000059}.mahjong-tile:hover{transform:translateY(-3px) scale(1.02);border-color:#38bdf8;box-shadow:0 8px 18px #38bdf840}html.dark .mahjong-tile:hover{border-color:#38bdf8;box-shadow:0 8px 18px #38bdf859}.mahjong-tile.selected{border-color:#f59e0b;background:#fffbeb;transform:scale(1.06);box-shadow:0 0 20px #f59e0b8c;z-index:15}html.dark .mahjong-tile.selected{border-color:#fbbf24;background:#f59e0b33;box-shadow:0 0 22px #f59e0bb3}.mahjong-tile.matched-glow{border-color:#10b981!important;background:#ecfdf5!important;transform:scale(1.08)!important;box-shadow:0 0 25px #10b981b3!important;z-index:18}html.dark .mahjong-tile.matched-glow{border-color:#34d399!important;background:#10b98140!important;box-shadow:0 0 28px #34d399cc!important}.mahjong-tile.matched-vanish{animation:matchedVanishAnim .35s forwards cubic-bezier(.4,0,.2,1)}@keyframes matchedVanishAnim{0%{transform:scale(1.08);opacity:1}50%{transform:scale(1.15);opacity:.8;filter:brightness(1.4)}to{transform:scale(.3);opacity:0;visibility:hidden}}.mahjong-tile.shake-tile{animation:tileShakeAnim .35s ease;border-color:#ef4444!important}@keyframes tileShakeAnim{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.mahjong-tile.hint-pulse{animation:hintBeaconAnim .7s infinite alternate ease-in-out;z-index:16}@keyframes hintBeaconAnim{0%{transform:scale(1);border-color:#38bdf8;box-shadow:0 0 10px #38bdf880}to{transform:scale(1.08);border-color:#10b981;box-shadow:0 0 24px #10b981d9}}.mahjong-tile.cleared{opacity:0;pointer-events:none;visibility:hidden}.tile-inner-text{font-size:1.15rem;font-weight:800;color:#0f172a!important;text-align:center;line-height:1.25;word-break:break-word;max-width:100%}html.dark .tile-inner-text{color:#f8fafc!important}.tile-type-tag{font-size:.65rem;font-weight:800;padding:2px 7px;border-radius:6px;margin-top:5px;letter-spacing:.5px;text-transform:uppercase}.mahjong-tile.type-hanzi .tile-type-tag{background:#fef3c7;color:#b45309}.mahjong-tile.type-pinyin .tile-type-tag{background:#e0f2fe;color:#0369a1}.mahjong-tile.type-meaning .tile-type-tag{background:#dcfce7;color:#15803d}html.dark .mahjong-tile.type-hanzi .tile-type-tag{background:#f59e0b2e;color:#fbbf24}html.dark .mahjong-tile.type-pinyin .tile-type-tag{background:#38bdf82e;color:#38bdf8}html.dark .mahjong-tile.type-meaning .tile-type-tag{background:#10b9812e;color:#34d399}.mahjong-tools-panel{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 16px #0000000d}html.dark .mahjong-tools-panel{background:#0f172ad9;border-color:var(--border-glass)}.tool-sec-title{font-size:.85rem;font-weight:800;color:#0f172a;text-transform:uppercase;letter-spacing:.5px;text-align:center;border-bottom:1px solid #e2e8f0;padding-bottom:8px}html.dark .tool-sec-title{color:#cbd5e1;border-bottom-color:#ffffff14}.mahjong-tool-card{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .2s ease;color:inherit;text-align:left}html.dark .mahjong-tool-card{background:#ffffff08;border-color:#ffffff14}.mahjong-tool-card:hover{transform:translate(4px);background:#eff6ff;border-color:#38bdf8}html.dark .mahjong-tool-card:hover{background:#ffffff14}.tool-icon{width:38px;height:38px;min-width:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.tool-info{flex-grow:1}.tool-name{font-size:.85rem;font-weight:800;color:#0f172a}html.dark .tool-name{color:var(--text-primary)}.tool-desc{font-size:.72rem;color:#64748b}html.dark .tool-desc{color:var(--text-secondary)}.tool-badge{font-size:.9rem;font-weight:900;color:#d97706}html.dark .tool-badge{color:#fbbf24}.mahjong-rules-tip{font-size:.75rem;color:#64748b;line-height:1.4;margin-top:auto;padding-top:12px;border-top:1px solid #e2e8f0}html.dark .mahjong-rules-tip{color:#94a3b8;border-top-color:#ffffff14}.rhythm-game-wrapper{display:flex;flex-direction:column;gap:14px}.rhythm-arena-container{display:flex;flex-direction:column;align-items:center;position:relative;width:100%}.rhythm-stage-layout{display:flex;align-items:stretch;justify-content:center;gap:16px;width:100%;max-width:1140px;position:relative;margin:0 auto}.rhythm-wing-dock{width:220px;display:flex;flex-direction:column;gap:12px;flex-shrink:0;justify-content:space-between}.rhythm-dock-card{background:linear-gradient(160deg,#1e293b,#0f172a);border:1.5px solid rgba(56,189,248,.3);border-radius:18px;padding:14px 16px;box-shadow:0 10px 25px #0006,inset 0 1px 1px #ffffff1a;display:flex;flex-direction:column;gap:6px;transition:all .2s ease}.rhythm-dock-card:hover{border-color:#38bdf899;transform:translateY(-2px);box-shadow:0 14px 30px #00000080,0 0 15px #38bdf833}.dock-card-header{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.08)}.dock-hearts-row{display:flex;gap:6px;font-size:1.35rem;padding:4px 0;filter:drop-shadow(0 0 8px rgba(239,68,68,.5))}.dock-big-val{font-size:1.9rem;font-weight:900;font-family:Inter,system-ui,sans-serif;line-height:1.1;letter-spacing:-.02em}.dock-big-val.text-gold{color:#facc15}.dock-big-val.text-fire{color:#fb923c}.dock-big-val.text-sky{color:#38bdf8}.dock-sub-status{font-size:.76rem;font-weight:700;color:#cbd5e1;line-height:1.3}.dock-progress-bar-wrap{width:100%;height:8px;background:#0006;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.1);margin-top:4px}.dock-progress-fill{height:100%;background:linear-gradient(90deg,#38bdf8,#0284c7);border-radius:20px;transition:width .3s ease;box-shadow:0 0 10px #38bdf899}.dock-tone-cheatsheet{display:flex;flex-direction:column;gap:5px;margin-top:2px}.tone-cheat-item{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:#00000040;border-radius:8px;font-size:.75rem;font-weight:700}.tone-cheat-item .t-badge{background:#ffffff1a;padding:1px 6px;border-radius:5px;font-family:monospace;color:#f1f5f9;font-weight:800}.tone-cheat-item.tone-1 .t-name{color:#38bdf8}.tone-cheat-item.tone-2 .t-name{color:#34d399}.tone-cheat-item.tone-3 .t-name{color:#fbbf24}.tone-cheat-item.tone-4 .t-name{color:#f87171}.tone-cheat-item.tone-0 .t-name{color:#c084fc}@media (max-width: 1200px){.rhythm-wing-dock{display:none!important}.rhythm-stage-layout{max-width:640px!important;width:100%!important}}.rhythm-fever-banner{background:linear-gradient(90deg,#ec4899,#f43f5e,#fbbf24);color:#fff;font-weight:900;font-size:.92rem;padding:6px 22px;border-radius:50px;margin-bottom:8px;animation:feverPulse .5s infinite alternate;letter-spacing:.5px;box-shadow:0 4px 15px #ec489966}@keyframes feverPulse{0%{transform:scale(1);box-shadow:0 0 10px #ec4899}to{transform:scale(1.05);box-shadow:0 0 25px #fbbf24}}.rhythm-speed-bar{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.rhythm-controls-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#0f172a!important;border:1.5px solid rgba(255,255,255,.12)!important;border-radius:16px!important;padding:8px 16px!important;color:#f8fafc!important;box-shadow:0 8px 25px #00000059!important}.rhythm-mode-selector-wrap,.rhythm-speed-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.control-label{font-size:.78rem;font-weight:800;color:#cbd5e1;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:5px}.rhythm-mode-tabs,.rhythm-speed-tabs{display:inline-flex;gap:5px;background:#ffffff0f;padding:3px;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.rhythm-mode-btn{background:transparent;border:none;color:#94a3b8;font-size:.78rem;font-weight:800;padding:6px 12px;border-radius:9px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:5px}.rhythm-mode-btn:hover{color:#fff;background:#ffffff14}.rhythm-mode-btn.active{background:#38bdf8;color:#0f172a;font-weight:900;box-shadow:0 2px 10px #38bdf866}.rhythm-mode-btn.vip-btn.active{background:linear-gradient(135deg,#f59e0b,#ea580c);color:#fff;box-shadow:0 2px 12px #f59e0b80}.speed-opt-btn{padding:5px 12px;border-radius:9px;border:none;background:transparent;color:#94a3b8;font-size:.78rem;font-weight:800;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px}.speed-opt-btn:hover{color:#fff;background:#ffffff14}.speed-opt-btn.active{background:#10b981;color:#fff;box-shadow:0 2px 8px #10b98166}.rhythm-highway{width:100%;max-width:640px;height:500px;background:linear-gradient(180deg,#030712,#0f172a);border:2px solid rgba(56,189,248,.35);border-radius:22px;position:relative;overflow:hidden;box-shadow:0 15px 40px #000000b3,inset 0 0 30px #38bdf80d;-webkit-user-select:none;user-select:none;touch-action:manipulation}.rhythm-highway-lanes{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;pointer-events:none}.highway-lane-track{flex:1;height:100%;border-right:1px dashed rgba(255,255,255,.12);position:relative}.highway-lane-track:last-child{border-right:none}.highway-lane-track.lane-1-bg{background:#38bdf808}.highway-lane-track.lane-2-bg{background:#34d39908}.highway-lane-track.lane-3-bg{background:#fbbf2408}.highway-lane-track.lane-4-bg{background:#f43f5e08}.highway-lane-track.lane-0-bg{background:#a855f708}.rhythm-notes-layer{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.rhythm-falling-word-block{position:absolute;top:0;left:50%;width:auto;min-width:130px;max-width:280px;border-radius:18px;background:linear-gradient(145deg,#1e293b,#0f172a)!important;border:2px solid #38bdf8!important;box-shadow:0 10px 30px #0009,0 0 20px #38bdf866!important;z-index:5;box-sizing:border-box;text-align:center;will-change:transform;pointer-events:auto;cursor:pointer;padding:8px 14px 10px;transition:box-shadow .15s ease,border-color .15s ease}html.dark .rhythm-falling-word-block{background:linear-gradient(145deg,#1e293b,#0f172a)!important;border-color:#38bdf8!important;box-shadow:0 14px 40px #000c,0 0 25px #38bdf873!important}.rhythm-falling-word-block.word-card-completed{border-color:#10b981!important;box-shadow:0 0 45px #10b981e6!important;animation:wordCompleteFlash .35s ease forwards}@keyframes wordCompleteFlash{0%{transform:scale(1);filter:brightness(1.2)}50%{transform:scale(1.05);filter:brightness(1.5)}to{transform:scale(1.02);filter:brightness(1);opacity:.9}}.rhythm-word-card-inner{display:flex;flex-direction:column;gap:4px;align-items:center}.word-card-top-header{display:flex;align-items:center;justify-content:center;gap:6px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:4px;margin-bottom:4px;width:100%}.word-card-meaning{color:#7dd3fc;font-size:.78rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.8);white-space:nowrap}.word-card-steps-flow{display:flex;align-items:stretch;justify-content:center;gap:8px}.rhythm-tone-step-badge{background:#0f172a99;border:2px solid rgba(255,255,255,.15);border-radius:12px;padding:6px 10px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:60px;transition:all .15s ease;position:relative}.rhythm-tone-step-badge.step-current{border-color:#fbbf24!important;background:#fbbf2426!important;box-shadow:0 0 18px #fbbf2499!important;transform:scale(1.06)}.rhythm-tone-step-badge.step-done{border-color:#10b981!important;background:#10b98126!important;box-shadow:0 0 14px #10b98166!important}.rhythm-tone-step-badge .step-header{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:1px}.rhythm-tone-step-badge .step-idx{font-size:.65rem;font-weight:900;color:#94a3b8}.rhythm-tone-step-badge .step-char{font-size:1.55rem;font-weight:800;color:#fff;font-family:var(--font-hanzi, "Noto Sans SC", sans-serif);line-height:1.1;text-shadow:0 0 10px rgba(255,255,255,.7)}.rhythm-tone-step-badge .step-pinyin{font-size:.82rem;font-weight:800;color:#93c5fd;letter-spacing:.5px}.rhythm-tone-step-badge.step-current .step-pinyin{color:#fde047;text-shadow:0 0 6px rgba(234,179,8,.8)}.rhythm-tone-step-badge .step-char{font-size:1.65rem;font-weight:900;color:#0f172a;font-family:var(--font-hanzi, "Noto Sans SC", sans-serif);line-height:1.1}html.dark .rhythm-tone-step-badge .step-char{color:#fff}.rhythm-tone-step-badge .step-pinyin{font-size:.92rem;font-weight:800;color:#475569;letter-spacing:.5px}html.dark .rhythm-tone-step-badge .step-pinyin{color:#cbd5e1}.rhythm-tone-step-badge .step-tone-pill{font-size:.72rem;font-weight:900;padding:3px 8px;border-radius:8px;background:#0000000f;color:#64748b;display:inline-block}.rhythm-tone-step-badge .step-tone-pill.target-pill{background:#fef3c7;color:#b45309;border:1px solid #fde68a;font-weight:900}html.dark .rhythm-tone-step-badge .step-tone-pill.target-pill{background:#f59e0b40;color:#fbbf24;border-color:#f59e0b66}.rhythm-tone-step-badge .step-tone-pill.done-pill{background:#dcfce7;color:#15803d;border:1px solid #86efac;font-weight:900}html.dark .rhythm-tone-step-badge .step-tone-pill.done-pill{background:#22c55e40;color:#4ade80;border-color:#22c55e66}.rhythm-tone-step-badge .step-tone-pill.upcoming-pill{background:#f1f5f9;color:#94a3b8}html.dark .rhythm-tone-step-badge .step-tone-pill.upcoming-pill{background:#ffffff0f;color:#64748b}.rhythm-tone-step-badge .step-key-hint{font-size:.65rem;color:#94a3b8;font-weight:700}.rhythm-tone-step-badge.step-current{border-color:#f59e0b!important;background:#fffbeb!important;box-shadow:0 0 16px #f59e0b73!important;transform:scale(1.04);animation:stepPulse .9s infinite ease-in-out}html.dark .rhythm-tone-step-badge.step-current{background:#f59e0b2e!important;border-color:#fbbf24!important}@keyframes stepPulse{0%,to{box-shadow:0 0 10px #f59e0b59}50%{box-shadow:0 0 22px #f59e0bbf}}.rhythm-tone-step-badge.step-done{border-color:#10b981!important;background:#ecfdf5!important}html.dark .rhythm-tone-step-badge.step-done{background:#10b98133!important;border-color:#34d399!important}.rhythm-tone-step-badge.step-done .step-char{color:#059669!important}html.dark .rhythm-tone-step-badge.step-done .step-char{color:#34d399!important}.step-check-icon{color:#10b981;font-size:.85rem;animation:checkPop .25s cubic-bezier(.175,.885,.32,1.275)}@keyframes checkPop{0%{transform:scale(0)}to{transform:scale(1)}}.rhythm-tone-step-badge.step-wrong-shake{border-color:#ef4444!important;background:#fef2f2!important;animation:stepShake .35s ease!important}html.dark .rhythm-tone-step-badge.step-wrong-shake{background:#ef444440!important;border-color:#f87171!important}@keyframes stepShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.rhythm-screen-shake{animation:rhythmHighwayShake .35s ease}@keyframes rhythmHighwayShake{0%,to{transform:translate(0)}20%{transform:translate(-4px,3px)}40%{transform:translate(4px,-3px)}60%{transform:translate(-3px,2px)}80%{transform:translate(3px,-2px)}}.note-char{font-size:1.55rem;line-height:1.1;font-weight:900;color:#fff;font-family:var(--font-hanzi, "Noto Sans SC", sans-serif);text-shadow:0 2px 8px rgba(0,0,0,.7)}.note-pinyin{font-size:.88rem;font-weight:800;color:#fef08a;letter-spacing:.3px;margin-top:1px;text-shadow:0 1px 4px rgba(0,0,0,.7)}.note-hidden-pinyin{color:#cbd5e1!important;font-size:.72rem!important;font-weight:700!important;opacity:.85}.note-hidden-hanzi{font-size:1.4rem!important;color:#fff!important}.note-listen-icon{font-size:1.5rem!important;color:#fff!important;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}.note-listen-txt{font-size:.72rem!important;color:#fed7aa!important;font-weight:800!important}.note-word-ctx{font-size:.65rem;color:#e0f2fe;font-weight:700;max-width:96%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.rhythm-hit-zone{position:absolute;bottom:94px;left:0;right:0;height:8px;background:#ffffff40;display:flex;box-shadow:0 0 12px #fff6;z-index:4}.hit-indicator{flex:1;height:100%;border-right:1px solid rgba(255,255,255,.15);transition:all .1s ease}.hit-indicator:last-child{border-right:none}.hit-indicator.hit-lane-1{background:#38bdf873}.hit-indicator.hit-lane-2{background:#34d39973}.hit-indicator.hit-lane-3{background:#fbbf2473}.hit-indicator.hit-lane-4{background:#f43f5e73}.hit-indicator.hit-lane-0{background:#a855f773}.hit-indicator.active-beam{filter:brightness(2.5);box-shadow:0 -30px 40px currentColor}.rhythm-pads-row{position:absolute;bottom:0;left:0;right:0;height:94px;display:flex;background:#fff!important;border-top:2px solid #cbd5e1!important;box-shadow:0 -4px 16px #00000026;z-index:6}html.dark .rhythm-pads-row{background:#0f172a!important;border-top:2px solid #334155!important;box-shadow:0 -4px 20px #0009}.rhythm-pad{flex:1;border:none;background:#f8fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .08s ease;border-right:1px solid #e2e8f0;padding:6px 2px 4px;outline:none;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:manipulation}html.dark .rhythm-pad{background:#1e293b;border-right-color:#334155}.rhythm-pad:last-child{border-right:none}.pad-accent-line{position:absolute;top:0;left:0;right:0;height:4px}.rhythm-pad.pad-1 .pad-accent-line{background:linear-gradient(90deg,#0284c7,#38bdf8)}.rhythm-pad.pad-2 .pad-accent-line{background:linear-gradient(90deg,#059669,#34d399)}.rhythm-pad.pad-3 .pad-accent-line{background:linear-gradient(90deg,#d97706,#fbbf24)}.rhythm-pad.pad-4 .pad-accent-line{background:linear-gradient(90deg,#e11d48,#f43f5e)}.rhythm-pad.pad-0 .pad-accent-line{background:linear-gradient(90deg,#7c3aed,#a855f7)}.pad-num-badge{position:absolute;top:6px;left:6px;font-size:.7rem;font-weight:900;line-height:1;padding:2px 5px;border-radius:4px;background:#00000014;color:#475569}html.dark .pad-num-badge{background:#ffffff1f;color:#94a3b8}.rhythm-pad .pad-symbol{font-size:1.55rem;font-weight:900;line-height:1;margin-top:1px}.rhythm-pad.pad-1 .pad-symbol{color:#0284c7}.rhythm-pad.pad-2 .pad-symbol{color:#059669}.rhythm-pad.pad-3 .pad-symbol{color:#d97706}.rhythm-pad.pad-4 .pad-symbol{color:#e11d48}.rhythm-pad.pad-0 .pad-symbol{color:#7c3aed}html.dark .rhythm-pad.pad-1 .pad-symbol{color:#38bdf8}html.dark .rhythm-pad.pad-2 .pad-symbol{color:#34d399}html.dark .rhythm-pad.pad-3 .pad-symbol{color:#fbbf24}html.dark .rhythm-pad.pad-4 .pad-symbol{color:#f43f5e}html.dark .rhythm-pad.pad-0 .pad-symbol{color:#a855f7}.pad-title{font-size:.72rem;font-weight:900;color:#0f172a;margin-top:2px;letter-spacing:.2px;white-space:nowrap}html.dark .pad-title{color:#fff}.pad-key{font-size:.65rem;font-weight:800;color:#475569;background:#e2e8f0;border:1px solid #cbd5e1;padding:1px 6px;border-radius:4px;margin-top:2px;white-space:nowrap}html.dark .pad-key{color:#e2e8f0;background:#334155;border-color:#475569}.rhythm-pad.hit-active{background:#e0f2fe!important;transform:scale(.93)}html.dark .rhythm-pad.hit-active{background:#1e3a5f!important}.rhythm-hit-feedback{position:absolute;bottom:110px;transform:translate(-50%);font-size:1.15rem;font-weight:900;animation:floatFadeUp .65s forwards ease-out;text-shadow:0 2px 10px rgba(0,0,0,.9);z-index:15;pointer-events:none}@keyframes floatFadeUp{0%{opacity:1;transform:translate(-50%) scale(.8)}50%{transform:translate(-50%,-20px) scale(1.15)}to{opacity:0;transform:translate(-50%,-40px) scale(1)}}.rhythm-countdown-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0f172abf;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:25;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.countdown-num{font-size:4.5rem;font-weight:900;color:#fbbf24;text-shadow:0 2px 8px rgba(0,0,0,.5);animation:countPulse .8s infinite ease-in-out}@keyframes countPulse{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.rhythm-start-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0b0f19eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.rhythm-start-card{background:linear-gradient(180deg,#1e293b,#0f172a);border:2px solid rgba(56,189,248,.35);border-radius:24px;max-width:620px;width:100%;padding:24px 28px;box-shadow:0 25px 60px #000c,0 0 35px #38bdf833;color:#f8fafc;display:flex;flex-direction:column;gap:16px;max-height:92vh;overflow-y:auto;box-sizing:border-box}.start-card-hero{text-align:center}.start-card-hero .hero-icon{font-size:2.5rem;display:inline-block;margin-bottom:4px}.start-card-hero h2{font-size:1.45rem;font-weight:900;color:#f472b6;margin:0 0 4px;letter-spacing:.5px}.start-card-hero .hero-sub{font-size:.82rem;color:#94a3b8;margin:0}.start-section-box{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.section-title{font-size:.78rem;font-weight:900;color:#e2e8f0;display:flex;align-items:center;gap:6px;letter-spacing:.3px}.start-difficulty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media (max-width: 540px){.start-difficulty-grid{grid-template-columns:1fr}}.start-diff-card{background:#0f172a99;border:2px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 10px;text-align:left;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:4px;color:#fff}.start-diff-card:hover{transform:translateY(-2px);border-color:#38bdf880;background:#1e293bcc}.start-diff-card.active{border-color:#10b981;background:#10b98126;box-shadow:0 4px 18px #10b98159}.start-diff-card[data-speed=normal].active{border-color:#38bdf8;background:#38bdf826;box-shadow:0 4px 18px #38bdf859}.start-diff-card[data-speed=hard].active{border-color:#f43f5e;background:#f43f5e26;box-shadow:0 4px 18px #f43f5e59}.diff-badge{font-size:.82rem;font-weight:900;padding:3px 8px;border-radius:8px;display:inline-block;width:fit-content}.diff-badge.badge-easy{background:#059669;color:#fff}.diff-badge.badge-normal{background:#0284c7;color:#fff}.diff-badge.badge-hard{background:#e11d48;color:#fff}.diff-speed-desc{font-size:.76rem;font-weight:700;color:#fbbf24;margin-top:2px}.diff-detail{font-size:.68rem;color:#94a3b8;line-height:1.3}.start-modes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (max-width: 500px){.start-modes-grid{grid-template-columns:1fr}}.start-mode-pill{background:#0f172a99;border:1.5px solid rgba(255,255,255,.1);border-radius:12px;padding:8px 12px;color:#94a3b8;font-size:.75rem;font-weight:700;cursor:pointer;text-align:left;transition:all .18s ease;display:flex;align-items:center;gap:6px}.start-mode-pill:hover{color:#fff;border-color:#ffffff40;background:#1e293bcc}.start-mode-pill.active{border-color:#38bdf8;background:#38bdf82e;color:#38bdf8;font-weight:900;box-shadow:0 2px 10px #38bdf840}.start-mode-pill.vip-pill.active{border-color:#f59e0b;background:#f59e0b2e;color:#fbbf24;box-shadow:0 2px 10px #f59e0b40}.start-keys-bar{display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap;background:#0000004d;padding:8px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.key-pill{display:flex;align-items:center;gap:4px;font-size:.7rem}.k-code{background:#ffffff1f;padding:2px 6px;border-radius:6px;font-weight:800;color:#fff}.pill-1 .k-name{color:#38bdf8;font-weight:800}.pill-2 .k-name{color:#34d399;font-weight:800}.pill-3 .k-name{color:#fbbf24;font-weight:800}.pill-4 .k-name{color:#f43f5e;font-weight:800}.pill-0 .k-name{color:#c084fc;font-weight:800}.start-actions-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:4px}.start-play-btn{padding:12px 28px!important;font-size:1rem!important;font-weight:900!important;border-radius:50px!important;background:linear-gradient(135deg,#10b981,#059669)!important;box-shadow:0 6px 20px #10b98166!important;transition:all .2s ease!important}.start-play-btn:hover{transform:translateY(-2px) scale(1.03)!important;box-shadow:0 8px 25px #10b98180!important}.rhythm-guide-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.rhythm-guide-card{background:#fff;border-radius:20px;max-width:540px;width:100%;max-height:90vh;overflow-y:auto;padding:24px;box-shadow:0 20px 40px #0000004d;position:relative}html.dark .rhythm-guide-card{background:#0f172a;border:1px solid rgba(255,255,255,.1);color:#f8fafc}.guide-tone-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:.88rem}.guide-tone-table th,.guide-tone-table td{padding:8px 10px;border-bottom:1px solid #e2e8f0;text-align:left}html.dark .guide-tone-table th,html.dark .guide-tone-table td{border-bottom-color:#ffffff14}@media (max-width: 640px){.rhythm-highway{height:440px}.rhythm-hit-zone{bottom:82px}.rhythm-pads-row{height:82px}.rhythm-pad{padding:4px 1px 2px}.pad-num-badge{top:4px;left:4px;font-size:.62rem;padding:1px 4px}.rhythm-pad .pad-symbol{font-size:1.35rem;margin-top:0}.pad-title{font-size:.62rem;margin-top:1px}.pad-key{font-size:.58rem;padding:0 4px;margin-top:1px}.note-char{font-size:1.25rem}.note-pinyin{font-size:.75rem}.note-word-ctx{font-size:.58rem}}.cannon-modal-overlay{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;background:#0b0f19e0!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;z-index:999999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:16px!important;box-sizing:border-box!important;overflow-y:auto!important;pointer-events:auto!important}.cannon-modal-overlay[style*="display: none"]{display:none!important}.cannon-modal-overlay[style*="display: flex"],.cannon-modal-overlay.active{display:flex!important}.cannon-result-card{background:#fff!important;border:2px solid #cbd5e1!important;border-radius:24px!important;padding:24px 20px 16px!important;max-width:500px!important;width:100%!important;max-height:90vh!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important;text-align:center!important;box-shadow:0 25px 60px #00000059!important;position:relative!important;z-index:1000000!important;pointer-events:auto!important;margin:auto!important;box-sizing:border-box!important;animation:resultModalPop .3s cubic-bezier(.175,.885,.32,1.275) forwards!important}.result-modal-close-btn{position:absolute!important;top:12px!important;right:14px!important;width:32px!important;height:32px!important;border-radius:50%!important;border:1px solid rgba(0,0,0,.15)!important;background:#0000000f!important;color:#475569!important;font-size:1.3rem!important;font-weight:700!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;transition:all .15s ease!important;z-index:1000002!important;line-height:1!important}html.dark .result-modal-close-btn{background:#ffffff1a!important;border-color:#fff3!important;color:#cbd5e1!important}.result-modal-close-btn:hover{background:#ef4444!important;border-color:#ef4444!important;color:#fff!important;transform:scale(1.1)!important}@keyframes resultModalPop{0%{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}.result-icon{font-size:3rem!important;margin-bottom:8px!important;display:inline-block!important;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))!important}.result-title{font-size:1.35rem!important;font-weight:900!important;color:#0f172a!important;margin:0 0 6px!important}html.dark .result-title{color:#fff!important}.result-desc{font-size:.85rem!important;color:#475569!important;margin:0 0 14px!important;line-height:1.4!important}html.dark .result-desc{color:#94a3b8!important}.result-stats-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin-bottom:14px!important}.stat-pill{background:#f8fafc!important;border:1.5px solid #e2e8f0!important;border-radius:12px!important;padding:8px 4px!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:2px!important}html.dark .stat-pill{background:#1e293b!important;border-color:#ffffff1a!important}.stat-pill .label{font-size:.68rem!important;color:#64748b!important;font-weight:700!important}html.dark .stat-pill .label{color:#94a3b8!important}.stat-pill .val{font-size:1.15rem!important;font-weight:900!important;color:#0284c7!important}html.dark .stat-pill .val{color:#38bdf8!important}.result-beta-note{background:#fffbeb!important;border:1px solid #fde68a!important;border-radius:10px!important;padding:6px 10px!important;font-size:.72rem!important;color:#b45309!important;margin-bottom:12px!important;line-height:1.35!important}.cannon-result-card-actions{display:flex!important;gap:10px!important;justify-content:center!important;align-items:center!important;margin-top:12px!important;padding-top:10px!important;border-top:1px solid #e2e8f0!important;flex-wrap:wrap!important;position:sticky!important;bottom:0!important;background:inherit!important;z-index:1000005!important}html.dark .cannon-result-card-actions{border-top-color:#ffffff1f!important}.cannon-result-card-actions .btn,.cannon-result-card button{cursor:pointer!important;pointer-events:auto!important;font-weight:800!important;border-radius:12px!important;padding:9px 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:40px!important;font-size:.85rem!important;touch-action:manipulation!important;transition:all .12s ease!important}.cannon-result-card button:hover{transform:translateY(-2px) scale(1.02)!important}.cannon-result-card button:active{transform:translateY(1px) scale(.98)!important}.game-center-countdown-tick{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);font-size:5.5rem;font-weight:900;color:#ef4444;text-shadow:0 2px 8px rgba(0,0,0,.6);pointer-events:none;z-index:9999;opacity:0;-webkit-user-select:none;user-select:none;font-family:var(--font-display, "Outfit", sans-serif)}.game-center-countdown-tick.tick-anim{animation:countdownTickPop .85s ease-out forwards}@keyframes countdownTickPop{0%{opacity:1;transform:translate(-50%,-50%) scale(1.6)}40%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}to{opacity:0;transform:translate(-50%,-50%) scale(.85)}}.hud-timer.timer-warning-60{animation:timerPulseBlue 1s 2 ease-in-out}.hud-timer.timer-warning-30{background:#f59e0b40!important;border-color:#f59e0b!important;color:#fbbf24!important}.hud-timer.timer-urgent-10{background:#ef444459!important;border-color:#ef4444!important;color:#fca5a5!important;animation:timerPulseRed .5s infinite ease-in-out!important}@keyframes timerPulseRed{0%,to{transform:scale(1);box-shadow:0 0 10px #ef444466}50%{transform:scale(1.08);box-shadow:0 0 25px #ef4444cc}}@keyframes timerPulseBlue{0%,to{transform:scale(1)}50%{transform:scale(1.08);box-shadow:0 0 20px #38bdf899}}.cannon-game-wrapper{display:flex;flex-direction:column;gap:14px;width:100%;max-width:980px;margin:0 auto;-webkit-user-select:none;user-select:none}.cannon-top-hud{display:flex;align-items:center;gap:14px;background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:16px;padding:10px 16px;flex-wrap:wrap;box-shadow:0 4px 16px #0000000d}html.dark .cannon-top-hud{background:#0f172a!important;border-color:#ffffff26!important;box-shadow:0 4px 16px #0006}.hud-item{display:flex;align-items:center;gap:8px;color:#0f172a!important;font-weight:700;font-size:.95rem}html.dark .hud-item{color:#fff!important}.hud-value{color:#0284c7!important;font-weight:900;font-size:1.1rem}html.dark .hud-value{color:#38bdf8!important}.cannon-main-stage{display:grid;grid-template-columns:1fr 280px;gap:16px}@media (max-width: 768px){.cannon-main-stage{grid-template-columns:1fr}}.cannon-playfield{position:relative;background:radial-gradient(circle at 50% 100%,#1e1b4b,#0f172a 70%)!important;border:2px solid rgba(99,102,241,.3)!important;border-radius:20px;height:480px;overflow:hidden;box-shadow:inset 0 0 40px #0009,0 10px 30px #0006}.cannon-words-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:auto}.cannon-word-card{position:absolute;padding:8px 16px;border-radius:12px;background:#fff!important;border:2px solid #38bdf8!important;box-shadow:0 6px 16px #0003;cursor:pointer;transform:translateZ(0);transition:transform .1s ease;z-index:5}html.dark .cannon-word-card{background:#1e293b!important;border-color:#38bdf8!important}.cannon-word-card.type-normal .word-zh{color:#0f172a!important}html.dark .cannon-word-card.type-normal .word-zh{color:#fff!important}.cannon-word-card.type-bomb{border-color:#ef4444!important;background:#fef2f2!important}html.dark .cannon-word-card.type-bomb{background:#450a0a!important}.cannon-word-card.type-bomb .word-zh{color:#b91c1c!important}html.dark .cannon-word-card.type-bomb .word-zh{color:#fca5a5!important}.cannon-word-card.type-bonus{border-color:#f59e0b!important;background:#fffbeb!important}html.dark .cannon-word-card.type-bonus{background:#451a03!important}.cannon-word-card.type-bonus .word-zh{color:#b45309!important}html.dark .cannon-word-card.type-bonus .word-zh{color:#fde68a!important}.cannon-word-card .word-zh{font-size:1.25rem!important;font-weight:900!important}.cannon-sidebar{background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 16px #0000000d}html.dark .cannon-sidebar{background:#0f172a!important;border-color:#ffffff26!important}.cannon-shop-title{font-size:.85rem!important;font-weight:900!important;color:#d97706!important;letter-spacing:.5px;text-align:center;padding-bottom:8px;border-bottom:1px solid #e2e8f0}html.dark .cannon-shop-title{color:#fbbf24!important;border-bottom-color:#ffffff1a}.cannon-skills-list{display:flex;flex-direction:column;gap:8px}.cannon-skill-card{display:flex!important;align-items:center!important;gap:10px!important;background:#f8fafc!important;border:1.5px solid #e2e8f0!important;border-radius:14px!important;padding:10px 12px!important;cursor:pointer!important;opacity:.55!important;text-align:left!important;transition:all .15s ease!important}html.dark .cannon-skill-card{background:#1e293b!important;border-color:#ffffff26!important}.cannon-skill-card.affordable{opacity:1!important;border-color:#3b82f6!important;background:#eff6ff!important;box-shadow:0 4px 12px #3b82f626!important}html.dark .cannon-skill-card.affordable{background:#1e293b!important;border-color:#38bdf8!important}.cannon-skill-card.affordable:hover{transform:translateY(-2px)!important}.skill-icon-box{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.skill-info{flex:1;display:flex;flex-direction:column;gap:2px}.skill-name{font-size:.85rem!important;font-weight:900!important;color:#0f172a!important;letter-spacing:.3px}html.dark .skill-name{color:#fff!important}.skill-desc{font-size:.72rem!important;color:#475569!important;line-height:1.2}html.dark .skill-desc{color:#cbd5e1!important}.skill-cost-badge{font-size:.82rem!important;font-weight:900!important;color:#b45309!important;background:#fef3c7;border:1px solid #fde68a;padding:3px 6px;border-radius:8px;text-align:center;flex-shrink:0}html.dark .skill-cost-badge{color:#fbbf24!important;background:#fbbf2426;border-color:#fbbf244d}.cannon-sidebar-combo-box{display:flex;align-items:center;gap:12px;background:#fff7ed!important;border:1.5px solid #fed7aa!important;border-radius:14px;padding:10px 14px}html.dark .cannon-sidebar-combo-box{background:#1e293b!important;border-color:#f9731659!important}.cannon-mascot-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between}html.dark .cannon-mascot-box{background:#ffffff0a;border-color:#ffffff14}.mascot-tip{font-size:.75rem!important;color:#334155!important;line-height:1.4}html.dark .mascot-tip{color:#e2e8f0!important}.mascot-dragon-img{font-size:1.8rem}.cannon-footer-rules{background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:18px;padding:16px 20px;display:grid;grid-template-columns:1fr 1fr;gap:20px;box-shadow:0 4px 16px #0000000d}html.dark .cannon-footer-rules{background:#0f172a!important;border-color:#ffffff1f!important}@media (max-width: 640px){.cannon-footer-rules{grid-template-columns:1fr}}.rules-title{font-size:.85rem!important;font-weight:900!important;color:#0f172a!important;margin-bottom:10px;letter-spacing:.5px}html.dark .rules-title{color:#fbbf24!important}.word-types-grid{display:flex;flex-direction:column;gap:8px}.word-type-item{display:flex;align-items:center;gap:10px;background:#f8fafc!important;padding:6px 12px;border-radius:10px;border:1px solid #e2e8f0}html.dark .word-type-item{background:#1e293b!important;border-color:#ffffff14}.word-type-item p{font-size:.78rem!important;color:#475569!important;margin:0;flex:1}html.dark .word-type-item p{color:#cbd5e1!important}.rules-list{margin:0;padding-left:20px;font-size:.8rem!important;color:#475569!important;line-height:1.6}html.dark .rules-list{color:#cbd5e1!important}.cannon-input-bar{display:flex;gap:10px;padding:10px 14px;background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:16px;box-shadow:0 4px 16px #0000000d}html.dark .cannon-input-bar{background:#0f172a!important;border-color:#ffffff26!important}.cannon-pinyin-input{flex:1;background:#f8fafc!important;border:1.5px solid #cbd5e1!important;border-radius:12px;padding:10px 16px;font-size:1.1rem!important;font-weight:700!important;color:#0f172a!important}html.dark .cannon-pinyin-input{background:#1e293b!important;border-color:#fff3!important;color:#fff!important}.cannon-pinyin-input:focus{border-color:#38bdf8!important;outline:none;box-shadow:0 0 12px #38bdf866!important}html.dark .admin-users-table th{background:#0f172af2!important;color:#e2e8f0!important;font-weight:800!important;font-size:.78rem!important;text-transform:uppercase!important;letter-spacing:.05em!important;border-bottom:2px solid rgba(255,255,255,.12)!important;padding:12px 14px!important}html.dark .admin-users-table td{border-bottom:1px solid rgba(255,255,255,.06)!important;padding:12px 14px!important}html:not(.dark) #admin-management-modal,html.light-mode #admin-management-modal{background:#0f172a99!important}html:not(.dark) #admin-management-modal>div,html.light-mode #admin-management-modal>div{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 25px 60px #0000002e,0 0 30px #f43f5e1a!important;color:#0f172a!important}html:not(.dark) #admin-management-modal h2,html.light-mode #admin-management-modal h2{color:#0f172a!important}html:not(.dark) #admin-management-modal p,html.light-mode #admin-management-modal p{color:#64748b!important}html:not(.dark) #admin-management-modal>div>div:first-child,html.light-mode #admin-management-modal>div>div:first-child{background:#f8fafc!important;border-bottom:1px solid #e2e8f0!important}html:not(.dark) #admin-management-modal .btn-icon-only,html.light-mode #admin-management-modal .btn-icon-only{background:#0000000d!important;color:#334155!important;border:1px solid #cbd5e1!important}html:not(.dark) #admin-management-modal .btn-icon-only:hover,html.light-mode #admin-management-modal .btn-icon-only:hover{background:#0000001a!important;color:#0f172a!important}html:not(.dark) #admin-management-modal>div>div:nth-child(2),html.light-mode #admin-management-modal>div>div:nth-child(2){background:#f1f5f9!important;border-bottom:1px solid #e2e8f0!important}html:not(.dark) #admin-management-modal>div>div:nth-child(2)>div,html.light-mode #admin-management-modal>div>div:nth-child(2)>div{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 14px #0000000a!important}html:not(.dark) #admin-kpi-total-users,html.light-mode #admin-kpi-total-users{color:#0f172a!important}html:not(.dark) #admin-super-grant-container,html.light-mode #admin-super-grant-container{background:#fff1f2!important;border-bottom:1px dashed #fecdd3!important}html:not(.dark) #admin-super-grant-container span,html.light-mode #admin-super-grant-container span{color:#9f1239!important}html:not(.dark) #admin-grant-email-input,html.light-mode #admin-grant-email-input{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) #admin-grant-email-input::placeholder,html.light-mode #admin-grant-email-input::placeholder{color:#94a3b8!important}html:not(.dark) #admin-grant-role-select,html.light-mode #admin-grant-role-select{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) #admin-management-modal>div>div:nth-of-type(4),html.light-mode #admin-management-modal>div>div:nth-of-type(4){background:#f8fafc!important;border-bottom:1px solid #e2e8f0!important}html:not(.dark) #admin-user-search-input,html.light-mode #admin-user-search-input{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) #admin-user-search-input::placeholder,html.light-mode #admin-user-search-input::placeholder{color:#94a3b8!important}html:not(.dark) #admin-users-table-container,html.light-mode #admin-users-table-container{background:#fff!important}html:not(.dark) .admin-users-table,html.light-mode .admin-users-table{width:100%;border-collapse:collapse}html:not(.dark) .admin-users-table th,html.light-mode .admin-users-table th{background:#f1f5f9!important;color:#334155!important;font-weight:800!important;font-size:.78rem!important;text-transform:uppercase!important;letter-spacing:.05em!important;border-bottom:2px solid #e2e8f0!important;padding:12px 14px!important}html:not(.dark) .admin-user-row,html.light-mode .admin-user-row{background:#fff!important;border-bottom:1px solid #f1f5f9!important}html:not(.dark) .admin-user-row:hover,html.light-mode .admin-user-row:hover{background:#f8fafc!important}html:not(.dark) .admin-user-row td,html.light-mode .admin-user-row td{color:#1e293b!important;border-bottom:1px solid #f1f5f9!important;padding:12px 14px!important}html:not(.dark) .admin-user-row div[style*="color: #ffffff"],html.light-mode .admin-user-row div[style*="color: #ffffff"]{color:#0f172a!important}html:not(.dark) .admin-user-row span[style*="color: #e2e8f0"],html.light-mode .admin-user-row span[style*="color: #e2e8f0"]{color:#334155!important}html:not(.dark) .admin-status-offline,html.light-mode .admin-status-offline{color:#64748b!important}html:not(.dark) #admin-user-history-detail-modal>div,html.light-mode #admin-user-history-detail-modal>div{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 25px 60px #0000002e!important;color:#0f172a!important}html:not(.dark) #admin-user-history-detail-modal h3,html.light-mode #admin-user-history-detail-modal h3{color:#0f172a!important}html:not(.dark) #admin-user-history-detail-modal p,html.light-mode #admin-user-history-detail-modal p{color:#64748b!important}html:not(.dark) #admin-user-history-detail-modal div[style*="border-bottom: 1px solid rgba(255,255,255,0.1)"],html.light-mode #admin-user-history-detail-modal div[style*="border-bottom: 1px solid rgba(255,255,255,0.1)"]{border-bottom-color:#e2e8f0!important}html:not(.dark) #admin-user-history-detail-modal div[style*="background: rgba(255,255,255,0.03)"],html.light-mode #admin-user-history-detail-modal div[style*="background: rgba(255,255,255,0.03)"]{background:#f8fafc!important;border:1px solid #e2e8f0!important}html:not(.dark) #admin-user-history-detail-modal div[style*="background: rgba(0,0,0,0.2)"],html.light-mode #admin-user-history-detail-modal div[style*="background: rgba(0,0,0,0.2)"]{background:#fff!important;border:1px solid #e2e8f0!important}html:not(.dark) #admin-user-history-detail-modal table tr,html.light-mode #admin-user-history-detail-modal table tr{border-bottom:1px solid #f1f5f9!important}html:not(.dark) #admin-user-history-detail-modal table thead tr,html.light-mode #admin-user-history-detail-modal table thead tr{background:#f1f5f9!important;color:#334155!important;border-bottom:2px solid #e2e8f0!important}html:not(.dark) #admin-user-history-detail-modal table td,html.light-mode #admin-user-history-detail-modal table td{color:#1e293b!important}html:not(.dark) #admin-user-history-detail-modal button[style*="position: absolute"],html.light-mode #admin-user-history-detail-modal button[style*="position: absolute"]{background:#f1f5f9!important;color:#475569!important;border:1px solid #cbd5e1!important}html:not(.dark) #admin-role-picker-modal>div,html.light-mode #admin-role-picker-modal>div{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 25px 60px #0000002e!important;color:#0f172a!important}html:not(.dark) #admin-role-picker-modal h3,html.light-mode #admin-role-picker-modal h3{color:#0f172a!important}html:not(.dark) #admin-role-picker-modal p,html.light-mode #admin-role-picker-modal p{color:#64748b!important}html:not(.dark) #admin-role-picker-modal button[style*="position: absolute"],html.light-mode #admin-role-picker-modal button[style*="position: absolute"]{background:#f1f5f9!important;color:#475569!important;border:1px solid #cbd5e1!important}html:not(.dark) #admin-role-picker-modal select,html.light-mode #admin-role-picker-modal select{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) #discussion-forum-modal .glass-panel,html.light-mode #discussion-forum-modal .glass-panel{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 25px 60px #0000002e!important;color:#0f172a!important}html:not(.dark) #discussion-forum-modal h2,html.light-mode #discussion-forum-modal h2{color:#0f172a!important}html:not(.dark) #discussion-forum-modal p,html.light-mode #discussion-forum-modal p{color:#64748b!important}html:not(.dark) #discussion-forum-modal>div>div:first-child,html.light-mode #discussion-forum-modal>div>div:first-child{background:#f8fafc!important;border-bottom:1px solid #e2e8f0!important}html:not(.dark) #disc-create-form-container,html.light-mode #disc-create-form-container{background:#f1f5f9!important;border-bottom:1px solid #e2e8f0!important}html:not(.dark) #disc-create-form-container label,html.light-mode #disc-create-form-container label{color:#475569!important}html:not(.dark) #disc-new-category,html:not(.dark) #disc-new-title,html:not(.dark) #disc-new-content,html.light-mode #disc-new-category,html.light-mode #disc-new-title,html.light-mode #disc-new-content{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) #disc-new-title::placeholder,html:not(.dark) #disc-new-content::placeholder,html.light-mode #disc-new-title::placeholder,html.light-mode #disc-new-content::placeholder{color:#94a3b8!important}html:not(.dark) #discussion-forum-modal>div>div:nth-of-type(3),html.light-mode #discussion-forum-modal>div>div:nth-of-type(3){background:#f8fafc!important;border-bottom:1px solid #e2e8f0!important}html:not(.dark) #disc-search-input,html.light-mode #disc-search-input{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) #disc-search-input::placeholder,html.light-mode #disc-search-input::placeholder{color:#94a3b8!important}html:not(.dark) #disc-posts-stream,html.light-mode #disc-posts-stream{background:#f8fafc!important}html:not(.dark) .disc-post-card,html.light-mode .disc-post-card{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 4px 16px #0000000a!important;color:#0f172a!important}html:not(.dark) .disc-post-title,html.light-mode .disc-post-title{color:#0f172a!important}html:not(.dark) .disc-post-content,html.light-mode .disc-post-content{color:#334155!important}html:not(.dark) .disc-post-author,html.light-mode .disc-post-author{color:#0f172a!important}html:not(.dark) .disc-comment-box,html.light-mode .disc-comment-box{background:#f8fafc!important;border-top:1px solid #e2e8f0!important}html:not(.dark) .disc-cmt-item,html.light-mode .disc-cmt-item{background:#fff!important;border:1px solid #e2e8f0!important;color:#1e293b!important}html:not(.dark) .disc-cmt-input,html.light-mode .disc-cmt-input{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) .disc-filter-pill,html.light-mode .disc-filter-pill{background:#fff!important;color:#475569!important;border:1.5px solid #e2e8f0!important;font-weight:700!important}html:not(.dark) .disc-filter-pill:hover,html.light-mode .disc-filter-pill:hover{background:#f1f5f9!important;color:#0f172a!important;border-color:#cbd5e1!important}html:not(.dark) .disc-filter-pill.active,html.light-mode .disc-filter-pill.active{background:linear-gradient(135deg,#0284c7,#2563eb)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 4px 14px #2563eb4d!important}html:not(.dark) #create-notebook-modal>div,html.light-mode #create-notebook-modal>div{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 25px 60px #0000002e!important;color:#0f172a!important}html:not(.dark) #create-notebook-modal h2,html.light-mode #create-notebook-modal h2{color:#0f172a!important}html:not(.dark) #create-notebook-modal p,html:not(.dark) #create-notebook-modal label,html.light-mode #create-notebook-modal p,html.light-mode #create-notebook-modal label{color:#475569!important}html:not(.dark) #create-nb-name,html:not(.dark) #create-nb-desc,html:not(.dark) #create-nb-word-search,html.light-mode #create-nb-name,html.light-mode #create-nb-desc,html.light-mode #create-nb-word-search{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html:not(.dark) #create-nb-words-checklist,html.light-mode #create-nb-words-checklist{background:#f8fafc!important;border:1.5px solid #e2e8f0!important}html:not(.dark) #create-notebook-modal div[style*="border-top: 1px solid rgba(255,255,255,0.12)"],html.light-mode #create-notebook-modal div[style*="border-top: 1px solid rgba(255,255,255,0.12)"]{border-top-color:#e2e8f0!important}html:not(.dark) #create-notebook-modal div[style*="color: #e2e8f0"],html.light-mode #create-notebook-modal div[style*="color: #e2e8f0"]{color:#1e293b!important}html:not(.dark) select,html.light-mode select{color:#0f172a;background-color:#fff}html:not(.dark) input[type=text],html:not(.dark) input[type=email],html:not(.dark) input[type=search],html:not(.dark) textarea,html.light-mode input[type=text],html.light-mode input[type=email],html.light-mode input[type=search],html.light-mode textarea{color:#0f172a}html:not(.dark) .custom-scrollbar::-webkit-scrollbar-thumb,html.light-mode .custom-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e1}html:not(.dark) .custom-scrollbar::-webkit-scrollbar-thumb:hover,html.light-mode .custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b8}.announcement-glass-card{background:#1e293b;border:1px solid rgba(255,255,255,.15)}.announcement-donate-card{border:1.5px solid rgba(16,185,129,.4)!important}.announcement-dictation-card{border:1.5px solid rgba(239,68,68,.4)!important}html.light-mode .announcement-glass-card,html:not(.dark) .announcement-glass-card{background:#fff!important;border:1.5px solid #e2e8f0!important;box-shadow:0 4px 20px #0000000f!important}html.light-mode .announcement-donate-card,html:not(.dark) .announcement-donate-card{background:#fff!important;border:1.5px solid #10b981!important;box-shadow:0 4px 20px #10b9811a!important}html.light-mode .announcement-dictation-card,html:not(.dark) .announcement-dictation-card{background:#fff!important;border:1.5px solid #ef4444!important;box-shadow:0 4px 20px #ef44441a!important}html.light-mode .announcement-title,html:not(.dark) .announcement-title{color:#0f172a!important}html.light-mode .announcement-desc,html:not(.dark) .announcement-desc{color:#334155!important}html.light-mode .announcement-time,html:not(.dark) .announcement-time{color:#64748b!important}.announcement-badge,.announcement-btn,.announcement-glass-card .announcement-badge,.announcement-glass-card .announcement-btn,.announcement-glass-card button,.announcement-glass-card a[style*=background],.announcement-glass-card span[style*=background],html.light-mode .announcement-badge,html.light-mode .announcement-btn,html.light-mode .announcement-glass-card .announcement-badge,html.light-mode .announcement-glass-card .announcement-btn,html.light-mode .announcement-glass-card button,html.light-mode .announcement-glass-card a[style*=background],html.light-mode .announcement-glass-card span[style*=background],html:not(.dark) .announcement-badge,html:not(.dark) .announcement-btn,html:not(.dark) .announcement-glass-card .announcement-badge,html:not(.dark) .announcement-glass-card .announcement-btn,html:not(.dark) .announcement-glass-card button,html:not(.dark) .announcement-glass-card a[style*=background],html:not(.dark) .announcement-glass-card span[style*=background]{color:#fff!important}.announcement-badge *,.announcement-btn *,.announcement-glass-card .announcement-badge *,.announcement-glass-card .announcement-btn *,.announcement-glass-card button *,.announcement-glass-card a[style*=background] *,.announcement-glass-card span[style*=background] *,html.light-mode .announcement-badge *,html.light-mode .announcement-btn *,html.light-mode .announcement-glass-card .announcement-badge *,html.light-mode .announcement-glass-card .announcement-btn *,html.light-mode .announcement-glass-card button *,html.light-mode .announcement-glass-card a[style*=background] *,html.light-mode .announcement-glass-card span[style*=background] *,html:not(.dark) .announcement-badge *,html:not(.dark) .announcement-btn *,html:not(.dark) .announcement-glass-card .announcement-badge *,html:not(.dark) .announcement-glass-card .announcement-btn *,html:not(.dark) .announcement-glass-card button *,html:not(.dark) .announcement-glass-card a[style*=background] *,html:not(.dark) .announcement-glass-card span[style*=background] *{color:#fff!important}html.light-mode .btn-outline,html:not(.dark) .btn-outline{color:#0f172a!important;background:#fff!important;border:1.5px solid #cbd5e1!important;font-weight:700!important}html.light-mode .btn-outline:hover,html:not(.dark) .btn-outline:hover{background:#f1f5f9!important;border-color:#94a3b8!important}html.light-mode #dict-user-profile-badge,html:not(.dark) #dict-user-profile-badge{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}.notebook-games-hub-wrapper{color:#0f172a}html.dark .notebook-games-hub-wrapper{color:#f8fafc}.games-hub-header{background:#fff!important;border:1.5px solid #cbd5e1!important;border-radius:20px!important;padding:16px 20px!important;box-shadow:0 4px 16px #0000000d!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.dark .games-hub-header{background:#0f172a!important;border-color:#ffffff26!important;box-shadow:0 4px 20px #0006!important}.games-hub-title{color:#0f172a!important;font-weight:900!important}html.dark .games-hub-title{color:#fff!important}.games-hub-sub{color:#475569!important}html.dark .games-hub-sub{color:#94a3b8!important}.games-selector-intro h3{color:#0f172a!important;font-weight:900!important}html.dark .games-selector-intro h3{color:#fff!important}.games-selector-intro p{color:#475569!important}html.dark .games-selector-intro p{color:#cbd5e1!important}.game-choice-card{background:#fff!important;border:1.5px solid #cbd5e1!important;border-radius:22px!important;padding:22px!important;box-shadow:0 4px 18px #0000000f!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important}html.dark .game-choice-card{background:#1e293b!important;border-color:#ffffff26!important;box-shadow:0 6px 20px #00000059!important}.game-choice-card:hover{transform:translateY(-4px)!important;box-shadow:0 12px 30px #0000001f!important}html.dark .game-choice-card:hover{box-shadow:0 12px 30px #00000080!important}.card-title{color:#0f172a!important;font-weight:900!important;font-size:1.25rem!important}html.dark .card-title{color:#fff!important}.card-desc{color:#334155!important;font-size:.88rem!important;line-height:1.5!important}html.dark .card-desc{color:#cbd5e1!important}.card-features span{background:#f1f5f9!important;border:1px solid #e2e8f0!important;color:#334155!important;font-weight:700!important;padding:4px 10px!important;border-radius:8px!important}html.dark .card-features span{background:#ffffff0f!important;border-color:#ffffff1f!important;color:#e2e8f0!important}.rhythm-hud-bar{display:flex!important;align-items:center!important;gap:12px!important;background:#fff!important;border:1.5px solid #cbd5e1!important;border-radius:18px!important;padding:10px 16px!important;flex-wrap:wrap!important;box-shadow:0 4px 16px #0000000d!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.dark .rhythm-hud-bar{background:#0f172a!important;border-color:#ffffff26!important;box-shadow:0 4px 16px #0006!important}.rhythm-hud-bar .hud-item-title strong{color:#db2777!important;font-weight:900!important}html.dark .rhythm-hud-bar .hud-item-title strong{color:#f472b6!important}.rhythm-hud-bar .hud-label{color:#475569!important;font-weight:800!important;font-size:.82rem!important}html.dark .rhythm-hud-bar .hud-label{color:#94a3b8!important}.rhythm-hud-bar .hud-value{color:#0284c7!important;font-weight:900!important}html.dark .rhythm-hud-bar .hud-value{color:#38bdf8!important}.rhythm-hud-bar #rhythm-top-back-btn,.rhythm-hud-bar #rhythm-pause-btn,.rhythm-hud-bar #rhythm-exit-btn{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;font-weight:800!important}.rhythm-hud-bar #rhythm-top-back-btn:hover,.rhythm-hud-bar #rhythm-pause-btn:hover,.rhythm-hud-bar #rhythm-exit-btn:hover{background:#f1f5f9!important;border-color:#94a3b8!important}html.dark .rhythm-hud-bar #rhythm-top-back-btn,html.dark .rhythm-hud-bar #rhythm-pause-btn,html.dark .rhythm-hud-bar #rhythm-exit-btn{background:#1e293b!important;border-color:#fff3!important;color:#fff!important}html.dark .rhythm-hud-bar #rhythm-top-back-btn:hover,html.dark .rhythm-hud-bar #rhythm-pause-btn:hover,html.dark .rhythm-hud-bar #rhythm-exit-btn:hover{background:#334155!important}.rhythm-hud-bar #rhythm-guide-btn{background:#eff6ff!important;border:1.5px solid #3b82f6!important;color:#1d4ed8!important;font-weight:800!important}html.dark .rhythm-hud-bar #rhythm-guide-btn{background:#38bdf826!important;border-color:#38bdf8!important;color:#38bdf8!important}.rhythm-controls-bar{background:#fff!important;border:1.5px solid #cbd5e1!important;border-radius:16px!important;padding:8px 16px!important;color:#0f172a!important;box-shadow:0 4px 16px #0000000d!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.dark .rhythm-controls-bar{background:#0f172a!important;border-color:#ffffff26!important;color:#f8fafc!important;box-shadow:0 8px 25px #00000059!important}.rhythm-controls-bar .control-label{color:#0f172a!important;font-weight:900!important}html.dark .rhythm-controls-bar .control-label{color:#cbd5e1!important}.rhythm-mode-tabs,.rhythm-speed-tabs{background:#f1f5f9!important;border:1.5px solid #e2e8f0!important;border-radius:12px!important;padding:3px!important}html.dark .rhythm-mode-tabs,html.dark .rhythm-speed-tabs{background:#1e293b!important;border-color:#ffffff1f!important}.rhythm-mode-btn,.speed-opt-btn{color:#475569!important;background:transparent!important;font-weight:800!important}html.dark .rhythm-mode-btn,html.dark .speed-opt-btn{color:#94a3b8!important}.rhythm-mode-btn:hover,.speed-opt-btn:hover{color:#0f172a!important;background:#e2e8f0!important}html.dark .rhythm-mode-btn:hover,html.dark .speed-opt-btn:hover{color:#fff!important;background:#ffffff1a!important}.rhythm-mode-btn.active{background:#0284c7!important;color:#fff!important;box-shadow:0 2px 10px #0284c766!important}.rhythm-mode-btn.vip-btn.active{background:linear-gradient(135deg,#d97706,#b45309)!important;color:#fff!important}.speed-opt-btn.active{background:#059669!important;color:#fff!important;box-shadow:0 2px 8px #05966966!important}.speed-opt-btn[data-speed=normal].active{background:#0284c7!important}.speed-opt-btn[data-speed=hard].active{background:#dc2626!important}.rhythm-pads-row{background:#fff!important;border-top:2px solid #cbd5e1!important}html.dark .rhythm-pads-row{background:#0f172a!important;border-top-color:#ffffff26!important}.rhythm-pad{background:#f8fafc!important;border-right:1px solid #cbd5e1!important}html.dark .rhythm-pad{background:#1e293b!important;border-right-color:#ffffff1a!important}.rhythm-pad:hover{background:#f1f5f9!important}html.dark .rhythm-pad:hover{background:#334155!important}.pad-title{color:#0f172a!important;font-weight:800!important}html.dark .pad-title{color:#f8fafc!important}.pad-key{color:#475569!important;background:#e2e8f0!important;font-weight:800!important}html.dark .pad-key{color:#cbd5e1!important;background:#334155!important}.rhythm-start-overlay{background:#0f172abf!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.rhythm-start-card{background:#fff!important;border:2px solid #cbd5e1!important;box-shadow:0 25px 60px #0003!important;color:#0f172a!important}html.dark .rhythm-start-card{background:#0f172a!important;border-color:#38bdf859!important;box-shadow:0 25px 60px #000c,0 0 35px #38bdf833!important;color:#f8fafc!important}.start-card-hero h2{color:#db2777!important;font-weight:900!important}html.dark .start-card-hero h2{color:#f472b6!important}.start-card-hero .hero-sub{color:#475569!important}html.dark .start-card-hero .hero-sub{color:#94a3b8!important}.start-section-box{background:#f8fafc!important;border:1.5px solid #e2e8f0!important}html.dark .start-section-box{background:#1e293b!important;border-color:#ffffff1a!important}.start-section-box .section-title{color:#0f172a!important;font-weight:900!important}html.dark .start-section-box .section-title{color:#fff!important}.start-diff-card{background:#fff!important;border:2px solid #cbd5e1!important;color:#0f172a!important}html.dark .start-diff-card{background:#0f172a!important;border-color:#ffffff26!important;color:#fff!important}.start-diff-card:hover{border-color:#0284c7!important;background:#f0f9ff!important}html.dark .start-diff-card:hover{border-color:#38bdf8!important;background:#1e293b!important}.start-diff-card.active{border-color:#059669!important;background:#ecfdf5!important;box-shadow:0 4px 16px #05966940!important}html.dark .start-diff-card.active{border-color:#10b981!important;background:#10b98126!important}.start-diff-card[data-speed=normal].active{border-color:#0284c7!important;background:#eff6ff!important;box-shadow:0 4px 16px #0284c740!important}html.dark .start-diff-card[data-speed=normal].active{border-color:#38bdf8!important;background:#38bdf826!important}.start-diff-card[data-speed=hard].active{border-color:#dc2626!important;background:#fef2f2!important;box-shadow:0 4px 16px #dc262640!important}html.dark .start-diff-card[data-speed=hard].active{border-color:#f43f5e!important;background:#f43f5e26!important}.diff-speed-desc{color:#b45309!important}html.dark .diff-speed-desc{color:#fbbf24!important}.diff-detail{color:#475569!important}html.dark .diff-detail{color:#cbd5e1!important}.start-mode-pill{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;font-weight:800!important}html.dark .start-mode-pill{background:#0f172a!important;border-color:#ffffff26!important;color:#cbd5e1!important}.start-mode-pill:hover{background:#f1f5f9!important;color:#0f172a!important;border-color:#94a3b8!important}html.dark .start-mode-pill:hover{background:#1e293b!important;color:#fff!important}.start-mode-pill.active{border-color:#0284c7!important;background:#eff6ff!important;color:#0284c7!important}html.dark .start-mode-pill.active{border-color:#38bdf8!important;background:#38bdf833!important;color:#38bdf8!important}.start-mode-pill.vip-pill.active{border-color:#d97706!important;background:#fffbeb!important;color:#b45309!important}html.dark .start-mode-pill.vip-pill.active{border-color:#f59e0b!important;background:#f59e0b33!important;color:#fbbf24!important}.start-keys-bar{background:#f1f5f9!important;border:1.5px solid #e2e8f0!important}html.dark .start-keys-bar{background:#1e293b!important;border-color:#ffffff1a!important}.k-code{background:#e2e8f0!important;color:#0f172a!important;border:1px solid #cbd5e1!important}html.dark .k-code{background:#334155!important;color:#fff!important;border-color:#ffffff26!important}.rhythm-guide-card{background:#fff!important;border:2px solid #cbd5e1!important;color:#0f172a!important}html.dark .rhythm-guide-card{background:#0f172a!important;border-color:#ffffff26!important;color:#f8fafc!important}.rhythm-guide-header{display:flex!important;align-items:center!important;justify-content:space-between!important;border-bottom:1.5px solid #e2e8f0!important;padding-bottom:12px!important;margin-bottom:14px!important}html.dark .rhythm-guide-header{border-bottom-color:#ffffff1a!important}.rhythm-guide-title{margin:0!important;display:flex!important;align-items:center!important;gap:8px!important;color:#db2777!important;font-weight:900!important}html.dark .rhythm-guide-title{color:#ec4899!important}.rhythm-guide-body{font-size:.9rem!important;line-height:1.6!important;color:#334155!important}html.dark .rhythm-guide-body{color:#cbd5e1!important}.guide-tone-table th{background:#f1f5f9!important;color:#0f172a!important;font-weight:800!important;border-bottom:2px solid #cbd5e1!important}html.dark .guide-tone-table th{background:#1e293b!important;color:#fff!important;border-bottom-color:#ffffff26!important}.guide-tone-table td{color:#334155!important;border-bottom:1px solid #e2e8f0!important}html.dark .guide-tone-table td{color:#cbd5e1!important;border-bottom-color:#ffffff14!important}.guide-tone-table code{background:#f1f5f9!important;color:#0f172a!important;border:1px solid #cbd5e1!important;padding:2px 6px!important;border-radius:6px!important}html.dark .guide-tone-table code{background:#334155!important;color:#fff!important;border-color:#ffffff26!important}.guide-modes-box{background:#f0f9ff!important;border-left:4px solid #0284c7!important;padding:10px 14px!important;border-radius:8px!important;margin:12px 0!important;color:#0c4a6e!important}html.dark .guide-modes-box{background:#38bdf81f!important;border-left-color:#38bdf8!important;color:#e0f2fe!important}.cannon-modal-overlay{background:#0f172acc!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.cannon-result-card{background:#fff!important;border:2px solid #cbd5e1!important;box-shadow:0 25px 60px #00000040!important;color:#0f172a!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.dark .cannon-result-card{background:#0f172a!important;border-color:#ffffff2e!important;box-shadow:0 25px 60px #000c!important;color:#fff!important}.cannon-result-card .result-title{color:#0f172a!important;font-weight:900!important}html.dark .cannon-result-card .result-title{color:#fff!important}.cannon-result-card .result-desc{color:#475569!important}html.dark .cannon-result-card .result-desc{color:#94a3b8!important}.cannon-result-card .stat-pill{background:#f8fafc!important;border:1.5px solid #e2e8f0!important}html.dark .cannon-result-card .stat-pill{background:#1e293b!important;border-color:#ffffff1a!important}.cannon-result-card .stat-pill .label{color:#64748b!important}html.dark .cannon-result-card .stat-pill .label{color:#94a3b8!important}.cannon-result-card .stat-pill .val{color:#0284c7!important;font-weight:900!important}html.dark .cannon-result-card .stat-pill .val{color:#38bdf8!important}.result-beta-note{background:#fffbeb!important;border:1.5px solid #fde68a!important;color:#b45309!important}html.dark .result-beta-note{background:#f59e0b26!important;border-color:#f59e0b4d!important;color:#fbbf24!important}.game-results-word-summary{background:#f8fafc!important;border:1.5px solid #e2e8f0!important;border-radius:16px!important;padding:12px!important;margin-bottom:16px!important}html.dark .game-results-word-summary{background:#1e293b!important;border-color:#ffffff1a!important}.summary-tabs-header{display:flex!important;gap:6px!important;background:#e2e8f0!important;padding:4px!important;border-radius:12px!important;margin-bottom:10px!important}html.dark .summary-tabs-header{background:#0f172a!important}.summary-tab-btn{flex:1!important;background:transparent!important;border:none!important;color:#475569!important;font-weight:800!important;padding:6px 8px!important;border-radius:8px!important;cursor:pointer!important;font-size:.78rem!important}html.dark .summary-tab-btn{color:#94a3b8!important}.summary-tab-btn.active{background:#fff!important;color:#0f172a!important;box-shadow:0 2px 6px #00000014!important}html.dark .summary-tab-btn.active{background:#334155!important;color:#fff!important}.summary-tab-btn.correct-tab.active{background:#dcfce7!important;color:#15803d!important}html.dark .summary-tab-btn.correct-tab.active{background:#22c55e40!important;color:#4ade80!important}.summary-tab-btn.wrong-tab.active{background:#fee2e2!important;color:#b91c1c!important}html.dark .summary-tab-btn.wrong-tab.active{background:#ef444440!important;color:#f87171!important}.summary-words-list{max-height:clamp(280px,48vh,460px)!important;overflow-y:auto!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:8px!important;padding-right:4px!important;align-content:start!important}@media (max-width: 600px){.summary-words-list{grid-template-columns:1fr!important;max-height:42vh!important}}.summary-word-card{background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:12px!important;padding:8px 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}html.dark .summary-word-card{background:#0f172a!important;border-color:#ffffff1a!important}.summary-word-card.is-correct{border-color:#86efac!important;background:#f0fdf4!important}html.dark .summary-word-card.is-correct{background:#22c55e1f!important;border-color:#22c55e59!important}.summary-word-card.is-wrong{border-color:#fca5a5!important;background:#fef2f2!important}html.dark .summary-word-card.is-wrong{background:#ef44441f!important;border-color:#ef444459!important}.sw-hanzi{color:#0f172a!important;font-weight:900!important;font-size:1.1rem!important}html.dark .sw-hanzi{color:#fff!important}.sw-pinyin{color:#0284c7!important;font-weight:800!important;font-size:.85rem!important}html.dark .sw-pinyin{color:#38bdf8!important}.sw-meaning{color:#334155!important;font-size:.8rem!important}html.dark .sw-meaning{color:#cbd5e1!important}.sw-speak-btn{background:#f1f5f9!important;border:1px solid #cbd5e1!important;color:#0f172a!important;border-radius:50%!important;width:32px!important;height:32px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important}html.dark .sw-speak-btn{background:#1e293b!important;border-color:#fff3!important;color:#fff!important}.sw-badge{font-size:.72rem!important;font-weight:800!important;padding:3px 8px!important;border-radius:6px!important}.sw-badge.badge-correct{background:#dcfce7!important;color:#15803d!important}html.dark .sw-badge.badge-correct{background:#22c55e33!important;color:#4ade80!important}.sw-badge.badge-wrong{background:#fee2e2!important;color:#b91c1c!important}html.dark .sw-badge.badge-wrong{background:#ef444433!important;color:#f87171!important}#rhythm-retry-btn,#snake-retry-btn,#cannon-retry-btn,#mahjong-retry-btn,#alchemist-retry-btn{background:#059669!important;color:#fff!important;border:none!important;font-weight:800!important;border-radius:50px!important}#rhythm-retry-btn:hover,#snake-retry-btn:hover,#cannon-retry-btn:hover,#mahjong-retry-btn:hover,#alchemist-retry-btn:hover{background:#047857!important;transform:translateY(-2px)!important}#rhythm-back-hub-btn,#snake-back-hub-btn,#cannon-back-hub-btn,#mahjong-back-hub-btn,#alchemist-back-hub-btn{background:#0284c7!important;color:#fff!important;border:none!important;font-weight:800!important;border-radius:50px!important}#rhythm-back-hub-btn:hover,#snake-back-hub-btn:hover,#cannon-back-hub-btn:hover,#mahjong-back-hub-btn:hover,#alchemist-back-hub-btn:hover{background:#0369a1!important;transform:translateY(-2px)!important}#rhythm-finish-btn,#snake-finish-btn,#cannon-finish-btn,#mahjong-finish-btn,#alchemist-finish-btn{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;font-weight:800!important;border-radius:50px!important}html.dark #rhythm-finish-btn,html.dark #snake-finish-btn,html.dark #cannon-finish-btn,html.dark #mahjong-finish-btn,html.dark #alchemist-finish-btn{background:#1e293b!important;border-color:#fff3!important;color:#fff!important}.cannon-top-hud,.snake-top-hud,.alchemist-hud-bar,.mahjong-hud-bar{background:#fff!important;border:1.5px solid #cbd5e1!important;box-shadow:0 4px 16px #0000000d!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.dark .cannon-top-hud,html.dark .snake-top-hud,html.dark .alchemist-hud-bar,html.dark .mahjong-hud-bar{background:#0f172a!important;border-color:#ffffff26!important;box-shadow:0 4px 20px #0006!important}.cannon-sidebar,.snake-sidebar,.alchemist-inventory-card,.mahjong-tools-panel{background:#fff!important;border:1.5px solid #cbd5e1!important;box-shadow:0 4px 16px #0000000d!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.dark .cannon-sidebar,html.dark .snake-sidebar,html.dark .alchemist-inventory-card,html.dark .mahjong-tools-panel{background:#0f172a!important;border-color:#ffffff26!important}html.light-mode body,html:not(.dark) body,body.light-mode{background:#f1f5f9!important;color:#0f172a!important}html.dark body{background:#0b0f19 url(/assets/app_bg_night_v3.png) no-repeat center center fixed / cover!important;color:#f8fafc!important}.glass-panel,.card-glass,.glass-card,.modal-glass,.header-card,.phonetics-header,.dict-top-nav,.dict-hero-banner,.dict-workspace-card,.dict-karaoke-box,.dict-input-box,.writing-workshop,.vocab-panel,.filter-section,.threads-sidebar,.chat-view-header,.rules-header,.rule-card,.toolbar-bar,.controls-panel,.hero-flashcard-card{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}html.light-mode .glass-panel,html.light-mode .card-glass,html.light-mode .glass-card,html.light-mode .modal-glass,html:not(.dark) .glass-panel,html:not(.dark) .card-glass,html:not(.dark) .glass-card,html:not(.dark) .modal-glass{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 18px #0000000d!important}html.dark .glass-panel,html.dark .card-glass,html.dark .glass-card,html.dark .modal-glass{background:#1e293b!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important;box-shadow:0 4px 20px #00000059!important}html.light-mode .dict-top-nav,html:not(.dark) .dict-top-nav{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 16px #0000000d!important}html.dark .dict-top-nav{background:#0f172a!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .dict-brand-title,html:not(.dark) .dict-brand-title{color:#0f172a!important}html.dark .dict-brand-title{color:#fff!important}html.light-mode .dict-lesson-card,html:not(.dark) .dict-lesson-card{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 18px #0000000d!important}html.dark .dict-lesson-card{background:#1e293b!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .dict-card-title,html:not(.dark) .dict-card-title{color:#0f172a!important;font-weight:800!important}html.dark .dict-card-title{color:#fff!important}html.light-mode .dict-card-desc,html:not(.dark) .dict-card-desc{color:#334155!important}html.dark .dict-card-desc{color:#cbd5e1!important}html.light-mode .dict-workspace-card,html:not(.dark) .dict-workspace-card{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 20px #0000000f!important}html.dark .dict-workspace-card{background:#1e293b!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .dict-karaoke-box,html:not(.dark) .dict-karaoke-box{background:#f8fafc!important;border:1.5px solid #e2e8f0!important;color:#0f172a!important}html.dark .dict-karaoke-box{background:#0f172a!important;border:1.5px solid rgba(255,255,255,.12)!important;color:#fff!important}html.light-mode .dict-hanzi-line,html:not(.dark) .dict-hanzi-line{color:#0f172a!important}html.dark .dict-hanzi-line{color:#fff!important}html.light-mode .dict-meaning-line,html:not(.dark) .dict-meaning-line{color:#334155!important}html.dark .dict-meaning-line{color:#cbd5e1!important}html.light-mode .dict-input-field,html:not(.dark) .dict-input-field{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html.dark .dict-input-field{background:#0f172a!important;border-color:#fff3!important;color:#fff!important}html.light-mode .question-card,html:not(.dark) .question-card{background:#fff!important;border:2px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 20px #0000000f!important}html.dark .question-card{background:#1e293b!important;border:2px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .ans-btn,html:not(.dark) .ans-btn{background:#f8fafc!important;border:2px solid #cbd5e1!important;color:#0f172a!important;font-weight:800!important}html.light-mode .ans-btn:hover,html:not(.dark) .ans-btn:hover{background:#f0f9ff!important;border-color:#0284c7!important;color:#0284c7!important}html.dark .ans-btn{background:#0f172a!important;border:2px solid rgba(255,255,255,.15)!important;color:#fff!important;font-weight:800!important}html.dark .ans-btn:hover{background:#1e293b!important;border-color:#38bdf8!important;color:#38bdf8!important}html.light-mode .rules-header,html:not(.dark) .rules-header{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 16px #0000000d!important}html.dark .rules-header{background:#1e293b!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .rule-card,html:not(.dark) .rule-card{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 14px #0000000a!important}html.dark .rule-card{background:#1e293b!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .rule-card h3,html:not(.dark) .rule-card h3{color:#0f172a!important}html.dark .rule-card h3{color:#fff!important}html.light-mode .rule-card p,html:not(.dark) .rule-card p{color:#334155!important}html.dark .rule-card p{color:#cbd5e1!important}html.light-mode .grammar-card,html:not(.dark) .grammar-card{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 4px 18px #0000000d!important}html.dark .grammar-card{background:#1e293b!important;border:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .gm-title,html:not(.dark) .gm-title{color:#0f172a!important}html.dark .gm-title{color:#fff!important}html.light-mode .gm-structure-box,html:not(.dark) .gm-structure-box{background:#f8fafc!important;border:1.5px solid #e2e8f0!important;color:#0284c7!important;font-weight:800!important}html.dark .gm-structure-box{background:#0f172a!important;border:1.5px solid rgba(255,255,255,.12)!important;color:#38bdf8!important}html.light-mode .threads-sidebar,html:not(.dark) .threads-sidebar{background:#fff!important;border-right:1.5px solid #cbd5e1!important}html.dark .threads-sidebar{background:#0f172a!important;border-right:1.5px solid rgba(255,255,255,.15)!important}html.light-mode .chat-view,html:not(.dark) .chat-view{background:#f8fafc!important}html.dark .chat-view{background:#090d16!important}html.light-mode .chat-view-header,html:not(.dark) .chat-view-header{background:#fff!important;border-bottom:1.5px solid #cbd5e1!important;color:#0f172a!important}html.dark .chat-view-header{background:#0f172a!important;border-bottom:1.5px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .rank-header-nav,html:not(.dark) .rank-header-nav{background:#fff!important;border-bottom:1.5px solid #cbd5e1!important}html.dark .rank-header-nav{background:#0f172a!important;border-bottom:1.5px solid rgba(255,255,255,.15)!important}html.light-mode .leaderboard-modal-content,html:not(.dark) .leaderboard-modal-content{background:#fff!important;border:2px solid #cbd5e1!important;color:#0f172a!important;box-shadow:0 10px 40px #00000014!important}html.dark .leaderboard-modal-content{background:#1e293b!important;border:2px solid rgba(255,255,255,.15)!important;color:#fff!important}html.light-mode .lb-title,html:not(.dark) .lb-title{color:#0f172a!important}html.dark .lb-title{color:#fff!important}html.light-mode .lb-subtitle,html:not(.dark) .lb-subtitle{color:#475569!important}html.dark .lb-subtitle{color:#94a3b8!important}.game-choice-card,.lesson-card-item,.flashcard-main,.hsk-word-card,.mini-rad-card,.hanzi-card{contain:content;content-visibility:auto;contain-intrinsic-size:280px 180px}@media (max-width: 767px),(prefers-reduced-motion: reduce){*{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.modal-overlay,#game-hub-guide-modal,#lesson-detail-popup-modal,.system-dark-modal-card{background:#0f172af5!important}.sidebar,.lesson-stepper-hub-bar{background:#0f172afa!important}}button,.btn,.sidebar-item,.game-choice-card,.nav-pill-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (max-width: 900px){.sidebar,.app-sidebar,.global-app-sidebar,.global-sidebar-drawer{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:290px!important;max-width:86vw!important;height:100vh!important;height:100dvh!important;transform:translate(-105%)!important;transition:transform .3s cubic-bezier(.16,1,.3,1)!important;z-index:100000!important;box-shadow:4px 0 32px #000000a6!important;background:#0f172afa!important;backdrop-filter:blur(24px) saturate(180%)!important;-webkit-backdrop-filter:blur(24px) saturate(180%)!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;padding:16px 14px calc(140px + env(safe-area-inset-bottom,30px))!important;box-sizing:border-box!important;pointer-events:auto!important}.sidebar.open,.sidebar.active,.app-sidebar.open,.app-sidebar.active,.global-app-sidebar.open,.global-app-sidebar.active,.global-sidebar-drawer.open,.global-sidebar-drawer.active,body.sidebar-open .sidebar,body.sidebar-open .app-sidebar,body.sidebar-open .global-app-sidebar,body.sidebar-open .global-sidebar-drawer{transform:translate(0)!important;opacity:1!important;pointer-events:auto!important;visibility:visible!important}.app-sidebar .sidebar-menu-wrapper,.global-app-sidebar .sidebar-menu-wrapper,.global-sidebar-drawer .sidebar-menu-wrapper{overflow:visible!important;flex:none!important;height:auto!important;width:100%!important;padding-bottom:24px!important;box-sizing:border-box!important}.app-sidebar .sidebar-footer,.global-app-sidebar .sidebar-footer,.global-sidebar-drawer .sidebar-footer{margin-top:16px!important;padding-bottom:24px!important;flex-shrink:0!important;width:100%!important;box-sizing:border-box!important}.home-hero-banner{margin-top:48px!important}}.sidebar-backdrop{display:none!important}.app-sidebar.open,.app-sidebar.active,.global-app-sidebar.open,.global-app-sidebar.active,.global-sidebar-drawer.open,.global-sidebar-drawer.active,body.sidebar-open .app-sidebar,body.sidebar-open .global-app-sidebar,body.sidebar-open .global-sidebar-drawer{z-index:100000!important}@media (max-width: 900px){.sidebar-backdrop{display:block!important;position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#0000008c!important;backdrop-filter:blur(2px)!important;-webkit-backdrop-filter:blur(2px)!important;z-index:99990!important;opacity:0!important;pointer-events:none!important;transition:opacity .28s ease!important}body.sidebar-open .sidebar-backdrop,.sidebar-backdrop.active{opacity:1!important;pointer-events:auto!important}body.sidebar-open{overflow:hidden!important;touch-action:none!important}}body.sidebar-open #sidebar-expand-float-btn,body.sidebar-open .sidebar-expand-float-btn,body.sidebar-open #mobile-nav-toggle-btn,body.sidebar-open .floating-vocab-fab,body.sidebar-open .floating-fab,body.sidebar-open .floating-btn,body.sidebar-open #floating-chat-bubble,body.sidebar-open .chatbot-toggle-btn,body.sidebar-open #radical-top-fullscreen-btn{display:none!important}.app-sidebar *,.global-app-sidebar *{pointer-events:auto}.app-sidebar .sidebar-item,.global-app-sidebar .sidebar-item,.app-sidebar .sidebar-subitem,.global-app-sidebar .sidebar-subitem,.app-sidebar .sidebar-profile-card,.global-app-sidebar .sidebar-profile-card{cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(56,189,248,.2)!important;user-select:none!important;-webkit-user-select:none!important}@media (max-width: 768px){.dict-page-container,.reading-container,.grammar-container,.hanzi-container,.main-layout,.container{padding-left:14px!important;padding-right:14px!important;padding-top:12px!important;padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))!important}.top-nav,.navbar,.dict-top-nav,.reading-top-nav{padding:8px 12px!important;border-radius:14px!important;margin-bottom:14px!important;min-height:52px!important;gap:8px!important}.brand-title,.logo-text,.dict-brand-title{font-size:clamp(1rem,4vw,1.25rem)!important;white-space:nowrap!important;letter-spacing:.02em!important}.brand-logo-img,.dict-brand img{width:32px!important;height:32px!important}.floating-vocab-fab,.floating-fab,.floating-btn{bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;right:14px!important;width:46px!important;height:46px!important;font-size:1.15rem!important;box-shadow:0 4px 18px #00000073!important;z-index:990!important}.swipeable-chips-bar,.dict-category-filter,.level-filter-chips,.cat-pills-row,.passage-levels-scroll,.rad-filter-scroll{display:flex!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;padding:4px 2px 8px!important;gap:8px!important;white-space:nowrap!important}.swipeable-chips-bar::-webkit-scrollbar,.dict-category-filter::-webkit-scrollbar,.level-filter-chips::-webkit-scrollbar{display:none!important}.cat-pill-btn,.passage-level-btn,.filter-chip-btn{flex-shrink:0!important;padding:7px 14px!important;font-size:.82rem!important;min-height:36px!important;display:inline-flex!important;align-items:center!important;border-radius:99px!important}input[type=text],input[type=search],textarea,select{font-size:16px!important}button,.btn{min-height:42px!important}.hongtai-color-blocks{display:flex!important;flex-wrap:nowrap!important;gap:clamp(4px,1.4vw,8px)!important;justify-content:center!important;align-items:center!important;max-width:100%!important}.color-block{width:clamp(28px,8vw,46px)!important;height:clamp(32px,8.8vw,50px)!important;font-size:clamp(1.05rem,4vw,1.8rem)!important;border-radius:clamp(6px,1.8vw,12px)!important;flex-shrink:0!important}.home-hero-banner{margin-top:52px!important;padding:18px 12px!important;border-radius:20px!important}.hero-brand-subtitle{font-size:.88rem!important;letter-spacing:.15em!important;white-space:nowrap!important}.top-home-btn,.btn-home-top,.rules-header a[href="/index.html"],.phonetics-header .btn-close[title="Trang Chủ"],.header-card a[href="/index.html"].top-home-btn,.dict-top-nav button[onclick*="location.href='/'"],#dict-user-profile-badge,.dict-brand small{display:none!important}}.menu-toggle-btn,.global-hamburger-btn,.header-icon-btn.global-hamburger-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;padding:0 8px!important;background:#ffffff14!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:10px!important;color:#fff!important;font-family:inherit!important;font-weight:800!important;font-size:.92rem!important;cursor:pointer!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;white-space:nowrap!important;flex-shrink:0!important;-webkit-user-select:none!important;user-select:none!important;touch-action:manipulation!important;box-shadow:0 4px 14px #00000040!important;box-sizing:border-box!important;z-index:1001!important}.global-hamburger-btn:not(:has(.btn-text)):not(:has(span)){width:38px!important;padding:0!important}.menu-toggle-btn i,.global-hamburger-btn i,.header-icon-btn.global-hamburger-btn i{font-size:1.15rem!important;color:#fff!important;line-height:1!important}.menu-toggle-btn:hover,.global-hamburger-btn:hover,.header-icon-btn.global-hamburger-btn:hover{background:#ffffff29!important;color:#fff!important;border-color:#ffffff4d!important;transform:translateY(-1px)!important;box-shadow:0 6px 20px #00000059!important}.menu-toggle-btn:hover i,.global-hamburger-btn:hover i,.header-icon-btn.global-hamburger-btn:hover i{color:#fff!important}html.light-mode .menu-toggle-btn,html:not(.dark) .menu-toggle-btn,body.light-mode .menu-toggle-btn,html.light-mode .global-hamburger-btn,html:not(.dark) .global-hamburger-btn,body.light-mode .global-hamburger-btn,html.light-mode .header-icon-btn.global-hamburger-btn,body.light-mode .header-icon-btn.global-hamburger-btn{background:#f1f5f9!important;border-color:#cbd5e1!important;color:#0f172a!important;box-shadow:0 2px 8px #0000000d!important}html.light-mode .menu-toggle-btn i,html:not(.dark) .menu-toggle-btn i,body.light-mode .menu-toggle-btn i,html.light-mode .global-hamburger-btn i,html:not(.dark) .global-hamburger-btn i,body.light-mode .global-hamburger-btn i,html.light-mode .header-icon-btn.global-hamburger-btn i,body.light-mode .header-icon-btn.global-hamburger-btn i{color:#0f172a!important}html.light-mode .global-hamburger-btn:hover,body.light-mode .global-hamburger-btn:hover{background:#e2e8f0!important;border-color:#94a3b8!important}.floating-menu-trigger-btn{position:fixed!important;top:14px!important;left:14px!important;width:44px!important;height:44px!important;border-radius:12px!important;background:#0f172af0!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;border:1.5px solid #38bdf8!important;color:#38bdf8!important;font-size:1.25rem!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;z-index:99998!important;box-shadow:0 6px 22px #0009!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;touch-action:manipulation!important}html.light-mode .floating-menu-trigger-btn,html:not(.dark) .floating-menu-trigger-btn,body.light-mode .floating-menu-trigger-btn{background:#fffffff2!important;border-color:#0284c7!important;color:#0284c7!important;box-shadow:0 6px 20px #00000026!important}.floating-menu-trigger-btn:hover{transform:scale(1.08)!important;border-color:#38bdf8!important}@media (max-width: 768px){.menu-toggle-btn .btn-text,.global-hamburger-btn .btn-text,.menu-toggle-btn span,.global-hamburger-btn span{display:none!important}.menu-toggle-btn,.global-hamburger-btn{padding:0!important;width:40px!important;height:40px!important;min-width:40px!important;border-radius:10px!important;flex-shrink:0!important}.menu-toggle-btn i,.global-hamburger-btn i{font-size:1.2rem!important}}html.light-mode .app-sidebar,html:not(.dark) .app-sidebar,body.light-mode .app-sidebar,html.light-mode .global-app-sidebar,html:not(.dark) .global-app-sidebar,body.light-mode .global-app-sidebar{background:#fffffffa!important;border-right:1.5px solid #e2e8f0!important;box-shadow:4px 0 32px #00000026!important}#floating-theme-widget,.floating-theme-widget{position:fixed!important;bottom:24px!important;left:284px!important;z-index:400!important;display:flex!important;gap:12px!important;align-items:center!important;touch-action:manipulation!important;transition:left .3s cubic-bezier(.16,1,.3,1),transform .3s ease,opacity .25s ease!important}body.sidebar-collapsed #floating-theme-widget,body.sidebar-collapsed .floating-theme-widget{left:24px!important}@media (max-width: 900px){#floating-theme-widget,.floating-theme-widget{display:flex!important;position:fixed!important;bottom:20px!important;left:16px!important;z-index:99990!important;gap:10px!important;align-items:center!important;pointer-events:auto!important;touch-action:manipulation!important}#floating-theme-widget button,.floating-theme-widget button,#floating-theme-toggle-btn,#particle-toggle-btn{width:48px!important;height:48px!important;border-radius:50%!important;background:var(--bg-card, rgba(15, 23, 42, .9))!important;border:2px solid var(--border-glass, rgba(255, 255, 255, .18))!important;color:var(--text-primary, #ffffff)!important;font-size:1.25rem!important;cursor:pointer!important;box-shadow:0 6px 20px #0006!important;display:flex!important;align-items:center!important;justify-content:center!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;touch-action:manipulation!important;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),background .2s ease,box-shadow .2s ease!important}#particle-toggle-btn{color:#60a5fa!important}#floating-theme-widget button:active,.floating-theme-widget button:active,#floating-theme-toggle-btn:active,#particle-toggle-btn:active{transform:scale(.9)!important}body.sidebar-open #floating-theme-widget,body.sidebar-open .floating-theme-widget{opacity:0!important;pointer-events:none!important;visibility:hidden!important}}html.light #floating-theme-widget button,html.light-mode #floating-theme-widget button,body.light-mode #floating-theme-widget button{background:#fffffff2!important;border-color:#0000001f!important;color:#0f172a!important;box-shadow:0 4px 16px #00000026!important}html.light #particle-toggle-btn,html.light-mode #particle-toggle-btn,body.light-mode #particle-toggle-btn{color:#2563eb!important}body.is-subpage #floating-theme-widget,body.is-subpage .floating-theme-widget,.dictation-body #floating-theme-widget,.reading-body #floating-theme-widget{display:none!important;visibility:hidden!important;pointer-events:none!important}.dict-word-popover{position:fixed;z-index:100000;background:#0f172afa!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1.5px solid rgba(56,189,248,.5)!important;box-shadow:0 20px 45px #000000bf,0 0 30px #38bdf826!important;border-radius:18px;padding:16px 20px;min-width:240px;max-width:320px;display:none;animation:popoverFadeIn .2s cubic-bezier(.16,1,.3,1)}.dict-word-popover .popover-word-title{font-size:1.9rem!important;font-weight:900!important;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.dict-word-popover #popover-word-text{color:#38bdf8!important;font-size:1.9rem!important;font-weight:900!important;text-shadow:0 2px 10px rgba(56,189,248,.3)!important;line-height:1.2!important}.dict-word-popover .popover-hsk-badge{font-size:.72rem!important;font-weight:800!important;background:linear-gradient(135deg,#ec4899,#8b5cf6)!important;color:#fff!important;padding:3px 8px!important;border-radius:6px!important;letter-spacing:.05em!important}.dict-word-popover .popover-pinyin,.dict-word-popover #popover-pinyin-text{font-size:1.1rem!important;font-weight:800!important;color:#fbbf24!important;margin-bottom:6px!important;letter-spacing:.02em!important}.dict-word-popover .popover-meaning,.dict-word-popover #popover-meaning-text{font-size:.95rem!important;font-weight:600!important;color:#f1f5f9!important;line-height:1.5!important;margin-bottom:14px!important}.dict-word-popover .popover-actions{display:flex;gap:8px}.dict-word-popover .popover-btn{flex:1;padding:7px 12px;border-radius:10px;border:1.5px solid rgba(255,255,255,.18)!important;background:#ffffff17!important;color:#fff!important;font-size:.82rem!important;font-weight:700!important;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s ease}.dict-word-popover .popover-btn:hover{background:#38bdf84d!important;border-color:#38bdf8!important;color:#fff!important}html.light-mode .dict-word-popover,body.light-mode .dict-word-popover,html.light .dict-word-popover{background:#fffffffa!important;border:1.5px solid rgba(14,165,233,.4)!important;box-shadow:0 16px 36px #0f172a33,0 0 0 1px #0000000f!important}html.light-mode .dict-word-popover #popover-word-text,body.light-mode .dict-word-popover #popover-word-text,html.light .dict-word-popover #popover-word-text{color:#0284c7!important;text-shadow:none!important}html.light-mode .dict-word-popover .popover-pinyin,html.light-mode .dict-word-popover #popover-pinyin-text,body.light-mode .dict-word-popover .popover-pinyin,body.light-mode .dict-word-popover #popover-pinyin-text,html.light .dict-word-popover .popover-pinyin,html.light .dict-word-popover #popover-pinyin-text{color:#b45309!important}html.light-mode .dict-word-popover .popover-meaning,html.light-mode .dict-word-popover #popover-meaning-text,body.light-mode .dict-word-popover .popover-meaning,body.light-mode .dict-word-popover #popover-meaning-text,html.light .dict-word-popover .popover-meaning,html.light .dict-word-popover #popover-meaning-text{color:#0f172a!important}html.light-mode .dict-word-popover .popover-btn,body.light-mode .dict-word-popover .popover-btn,html.light .dict-word-popover .popover-btn{background:#f1f5f9!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html.light-mode .dict-word-popover .popover-btn:hover,body.light-mode .dict-word-popover .popover-btn:hover,html.light .dict-word-popover .popover-btn:hover{background:#e2e8f0!important;border-color:#0284c7!important;color:#0284c7!important}.menu-bubble-widget,#menu-bubble-widget{display:none!important;visibility:hidden!important;pointer-events:none!important}.game-history-table-wrap{flex-grow:1;overflow-y:auto;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:16px;border-radius:12px;background:#00000026;border:1px solid var(--border-glass)}.game-history-table{width:100%;min-width:520px;border-collapse:collapse;text-align:left;font-size:.88rem}@media (max-width: 640px){#game-history-modal{padding:10px!important}#game-history-modal .glass-panel,#game-history-modal .game-history-panel{padding:16px 12px!important;max-height:92vh!important;border-radius:16px!important;width:100%!important;box-sizing:border-box!important}#game-history-modal h3{font-size:1.05rem!important}.game-history-table{min-width:480px!important;font-size:.78rem!important}.game-history-table th,.game-history-table td{padding:8px 10px!important}}@media (max-width: 640px){.rank-header-nav{height:56px!important;padding:0 12px!important}.rank-brand-logo{gap:8px!important}.rank-brand-logo img{width:32px!important;height:32px!important}.rank-brand-logo span{font-size:.95rem!important}.rank-nav-right{gap:6px!important}.rank-nav-btn,.rank-theme-btn,.particle-toggle-btn{width:34px!important;height:34px!important;font-size:.85rem!important}.rank-main-wrapper{padding:12px 8px!important}.rank-modal-standalone{padding:16px 12px!important;border-radius:20px!important;box-sizing:border-box!important;width:100%!important}.lb-title{font-size:1.05rem!important;line-height:1.3!important}.lb-subtitle{font-size:.74rem!important}.lb-podium-stage{gap:6px!important;padding:10px 2px!important}.lb-podium-user{max-width:78px!important;font-size:.74rem!important}.lb-podium-score{font-size:.7rem!important}.lb-podium-crown{font-size:1.3rem!important}.gold-crown{font-size:1.7rem!important}.lb-podium-stand{padding:6px 4px!important}.lb-podium-stand.p-1{height:70px!important}.lb-podium-stand.p-2{height:52px!important}.lb-podium-stand.p-3{height:38px!important}.lb-rest-list .leaderboard-item{padding:10px 8px!important;gap:8px!important}.lb-row-avatar,.lb-row-avatar-placeholder{width:36px!important;height:36px!important;font-size:.85rem!important}.lb-user-name{font-size:.86rem!important}.lb-score-val{font-size:.88rem!important}.lb-subtext{font-size:.7rem!important}}@media (max-width: 768px){#admin-management-modal,.admin-modal-overlay{padding:8px!important;box-sizing:border-box!important}#admin-management-modal>div,.admin-modal-dialog{max-height:96vh!important;border-radius:16px!important;width:100%!important;box-sizing:border-box!important}.admin-modal-header{padding:12px 14px!important;gap:8px!important}.admin-modal-header h2{font-size:1.02rem!important}.admin-header-subtitle{font-size:.72rem!important;line-height:1.3!important}.admin-btn-text{display:none!important}.admin-excel-btn{padding:0 10px!important;width:36px!important;justify-content:center!important}.admin-kpi-row{grid-template-columns:repeat(2,1fr)!important;gap:8px!important;padding:10px 12px!important}.admin-kpi-row>div{padding:8px 10px!important;gap:8px!important;border-radius:10px!important}.admin-kpi-row>div>div:first-child{width:32px!important;height:32px!important;font-size:.9rem!important;border-radius:8px!important}.admin-kpi-row>div>div:last-child>div:first-child{font-size:.68rem!important}.admin-kpi-row>div>div:last-child>div:last-child{font-size:1.05rem!important}.admin-super-grant-wrap{padding:10px 12px!important}.admin-super-grant-wrap form{flex-direction:column!important;align-items:stretch!important;gap:8px!important}.admin-super-grant-wrap input,.admin-super-grant-wrap select,.admin-super-grant-wrap button{width:100%!important;min-width:0!important;box-sizing:border-box!important}.admin-toolbar-row{padding:8px 12px!important;gap:8px!important;flex-direction:column!important;align-items:stretch!important}#admin-filter-tabs-container{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;gap:6px!important;padding-bottom:4px!important;-webkit-overflow-scrolling:touch!important;width:100%!important;scrollbar-width:none}#admin-filter-tabs-container::-webkit-scrollbar{display:none}#admin-filter-tabs-container .disc-filter-pill{white-space:nowrap!important;font-size:.76rem!important;padding:5px 10px!important;flex-shrink:0!important}.admin-search-wrap{width:100%!important;min-width:0!important}.admin-users-table-container,#admin-users-table-container{padding:10px 12px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;width:100%!important;box-sizing:border-box!important}.admin-users-table{min-width:650px!important;width:100%!important}.admin-users-table th,.admin-users-table td{padding:8px 10px!important;font-size:.78rem!important}}.btn-add-video-glow{white-space:nowrap;border-radius:50px;padding:8px 20px;background:linear-gradient(135deg,#ef4444,#f97316);color:#fff!important;cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 16px #ef444466;font-weight:800;border:none;transition:all .25s ease}.btn-add-video-glow:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef44448c}.nav-survey-pill{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f59e0b2e,#ec48992e);border:1.5px solid rgba(245,158,11,.4);color:#fbbf24!important;padding:6px 14px;border-radius:99px;font-size:.85rem;font-weight:700;text-decoration:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 14px #f59e0b33;transition:all .25s ease;cursor:pointer}.nav-survey-pill:hover{background:linear-gradient(135deg,#f59e0b59,#ec489959);border-color:#f59e0bb3;box-shadow:0 6px 20px #f59e0b59;transform:translateY(-1px);color:#fff!important}.nav-survey-pill .nav-survey-badge{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-size:.68rem;font-weight:800;padding:1px 6px;border-radius:99px;text-transform:uppercase}.survey-hero-pill-btn{background:linear-gradient(135deg,#f59e0b38,#ec489938);border:1.5px solid rgba(245,158,11,.45);border-radius:99px;padding:8px 20px;display:inline-flex;align-items:center;gap:10px;text-decoration:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 6px 20px #f59e0b40;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.survey-hero-pill-btn:hover{background:linear-gradient(135deg,#f59e0b61,#ec489961);border-color:#fbbf24;transform:translateY(-2px) scale(1.02);box-shadow:0 10px 28px #f59e0b66}.survey-hero-pill-btn .survey-pill-icon{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#ef4444);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem;box-shadow:0 2px 8px #f59e0b66}.survey-hero-pill-btn .survey-pill-text{font-size:.92rem;font-weight:800;color:#fff;letter-spacing:.01em}.survey-hero-pill-btn .survey-pill-tag{background:#ffffff2e;border:1px solid rgba(255,255,255,.3);color:#fef08a;font-size:.72rem;font-weight:800;padding:2px 8px;border-radius:99px;display:inline-flex;align-items:center;gap:4px}.survey-hero-pill-btn .survey-pill-arrow{color:#fbbf24;font-size:.8rem;transition:transform .25s ease}.survey-hero-pill-btn:hover .survey-pill-arrow{transform:translate(3px)}.home-survey-feature-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.home-survey-feature-card:hover{border-color:#f59e0b99!important;box-shadow:0 20px 48px #00000073,0 0 32px #f59e0b33!important;transform:translateY(-2px)}.btn-survey-main:hover{transform:translateY(-2px);box-shadow:0 10px 28px #f59e0b80!important;filter:brightness(1.08)}.home-survey-card-title{color:#fff}.home-survey-card-desc{color:#cbd5e1}.btn-survey-external{background:#ffffff14;color:#f1f5f9;border:1.5px solid rgba(255,255,255,.2);padding:12px 18px;border-radius:14px;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .25s ease}.btn-survey-external span{color:inherit}.btn-survey-external i{font-size:.82rem;color:#94a3b8;transition:color .25s ease}.btn-survey-external:hover{background:#ffffff26!important;border-color:#fff6!important;transform:translateY(-2px);color:#fff!important}.btn-survey-external:hover i{color:#fff}.btn-survey-modal-external{background:#ffffff14;border:1px solid rgba(255,255,255,.18);color:#cbd5e1;font-size:.8rem;font-weight:700;padding:6px 12px;border-radius:10px;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.btn-survey-modal-external i{font-size:.72rem}.announcement-panel-title{color:#fff}.announcement-survey-text{color:#f8fafc}.announcement-survey-ext{color:#cbd5e1;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:4px}html.light-mode .home-survey-feature-card,body.light-mode .home-survey-feature-card{background:linear-gradient(135deg,#fffffff5,#fef3c780)!important;border:1.5px solid rgba(245,158,11,.5)!important;box-shadow:0 14px 32px #f59e0b1f,0 4px 16px #0000000d!important}html.light-mode .home-survey-card-title,body.light-mode .home-survey-card-title{color:#0f172a!important}html.light-mode .home-survey-card-desc,body.light-mode .home-survey-card-desc{color:#475569!important}html.light-mode .btn-survey-external,body.light-mode .btn-survey-external{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#1e293b!important;box-shadow:0 4px 12px #00000014!important}html.light-mode .btn-survey-external span,body.light-mode .btn-survey-external span{color:#1e293b!important;font-weight:800!important}html.light-mode .btn-survey-external i,body.light-mode .btn-survey-external i{color:#334155!important}html.light-mode .btn-survey-external:hover,body.light-mode .btn-survey-external:hover{background:#fffbeb!important;border-color:#f59e0b!important;box-shadow:0 6px 18px #f59e0b40!important;transform:translateY(-2px)}html.light-mode .btn-survey-external:hover span,body.light-mode .btn-survey-external:hover span,html.light-mode .btn-survey-external:hover i,body.light-mode .btn-survey-external:hover i{color:#b45309!important}html.light-mode #student-survey-modal .modal-card,body.light-mode #student-survey-modal .modal-card{background:#fff!important;border-color:#f59e0b80!important;box-shadow:0 25px 60px #00000040!important}html.light-mode #student-survey-modal .modal-card>div:first-child,body.light-mode #student-survey-modal .modal-card>div:first-child{background:#f8fafc!important;border-bottom:1px solid #e2e8f0!important}html.light-mode #student-survey-modal h3,body.light-mode #student-survey-modal h3{color:#0f172a!important}html.light-mode #student-survey-modal p,body.light-mode #student-survey-modal p{color:#64748b!important}html.light-mode .btn-survey-modal-external,body.light-mode .btn-survey-modal-external{background:#fff!important;border:1px solid #cbd5e1!important;color:#1e293b!important;box-shadow:0 2px 6px #0000000f!important}html.light-mode .btn-survey-modal-external span,body.light-mode .btn-survey-modal-external span{color:#1e293b!important;font-weight:700!important}html.light-mode .btn-survey-modal-external i,body.light-mode .btn-survey-modal-external i{color:#334155!important}html.light-mode .btn-survey-modal-external:hover,body.light-mode .btn-survey-modal-external:hover{background:#fffbeb!important;border-color:#f59e0b!important}html.light-mode .btn-survey-modal-external:hover span,html.light-mode .btn-survey-modal-external:hover i{color:#b45309!important}html.light-mode #student-survey-modal button[onclick*=closeSurveyModal],body.light-mode #student-survey-modal button[onclick*=closeSurveyModal]{background:#fff!important;border:1px solid #cbd5e1!important;color:#475569!important}html.light-mode .announcement-panel-wrap,body.light-mode .announcement-panel-wrap{background:#fffffff2!important;border:1px solid #e2e8f0!important;box-shadow:0 10px 30px #00000012!important}html.light-mode .announcement-panel-title,body.light-mode .announcement-panel-title{color:#0f172a!important}html.light-mode .announcement-survey-text,body.light-mode .announcement-survey-text{color:#1e293b!important}html.light-mode .announcement-survey-ext,body.light-mode .announcement-survey-ext{color:#475569!important}html.light-mode .announcement-panel-wrap div[style*="background: rgba(255,255,255,0.04)"],body.light-mode .announcement-panel-wrap div[style*="background: rgba(255,255,255,0.04)"]{background:#f8fafc!important;border-color:#e2e8f0!important}html.light-mode .nav-survey-pill,body.light-mode .nav-survey-pill{background:#fef3c7eb!important;border-color:#f59e0b99!important;color:#b45309!important;box-shadow:0 2px 8px #f59e0b26!important}html.light-mode .survey-hero-pill-btn,body.light-mode .survey-hero-pill-btn{background:#fffffff2!important;border-color:#f59e0b8c!important;box-shadow:0 6px 18px #f59e0b26!important}html.light-mode .survey-hero-pill-btn .survey-pill-text,body.light-mode .survey-hero-pill-btn .survey-pill-text{color:#0f172a!important}html.light-mode .survey-hero-pill-btn .survey-pill-tag,body.light-mode .survey-hero-pill-btn .survey-pill-tag{background:#f59e0b26!important;border-color:#f59e0b59!important;color:#b45309!important}@media (max-width: 768px){.home-survey-feature-card{flex-direction:column!important;align-items:stretch!important;padding:20px!important}.home-survey-feature-card>div:last-child{width:100%;display:flex;flex-direction:column}.home-survey-feature-card .btn-survey-main,.home-survey-feature-card .btn-survey-external{width:100%;justify-content:center;text-align:center}.survey-hero-pill-btn{padding:6px 14px}.survey-hero-pill-btn .survey-pill-text{font-size:.82rem}.nav-survey-pill span:not(.nav-survey-badge){display:none}}.lesson-ai-sentence-card{background:#0f172ab3;border:1.5px solid rgba(139,92,246,.35);border-radius:18px;padding:18px 20px;width:100%;box-sizing:border-box;box-shadow:0 6px 20px #00000040;transition:all .25s ease}html.light-mode .lesson-ai-sentence-card,body.light-mode .lesson-ai-sentence-card{background:linear-gradient(135deg,#faf5ff,#f3e8ff)!important;border:1.5px solid #d8b4fe!important;box-shadow:0 6px 20px #a855f714!important}html.light-mode .lesson-ai-sentence-card input#lesson-ai-sentence-input,body.light-mode .lesson-ai-sentence-card input#lesson-ai-sentence-input,html.light-mode .lesson-ai-sentence-card input#deck-ai-sentence-input,body.light-mode .lesson-ai-sentence-card input#deck-ai-sentence-input{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html.light-mode .lesson-ai-sentence-card input#lesson-ai-sentence-input:focus,body.light-mode .lesson-ai-sentence-card input#lesson-ai-sentence-input:focus,html.light-mode .lesson-ai-sentence-card input#deck-ai-sentence-input:focus,body.light-mode .lesson-ai-sentence-card input#deck-ai-sentence-input:focus{border-color:#8b5cf6!important;box-shadow:0 0 0 3px #8b5cf626!important}.lesson-ai-result-box{background:#0f172ad9;border:1.5px solid rgba(139,92,246,.4);color:#fff}html.light-mode .lesson-ai-result-box,body.light-mode .lesson-ai-result-box{background:#fff!important;border:1.5px solid #d8b4fe!important;color:#0f172a!important;box-shadow:0 6px 20px #8b5cf61a!important}.ai-fb-text{background:#ffffff0d;color:#cbd5e1}html.light-mode .ai-fb-text,body.light-mode .ai-fb-text{background:#f8fafc!important;color:#334155!important}.ai-improved-box{background:#38bdf81f;border-color:#38bdf84d}html.light-mode .ai-improved-box,body.light-mode .ai-improved-box{background:#f0fdf4!important;border-color:#86efac!important}.ai-improved-text{color:#fff}html.light-mode .ai-improved-text,body.light-mode .ai-improved-text{color:#166534!important}.ai-improved-trans{color:#94a3b8}html.light-mode .ai-improved-trans,body.light-mode .ai-improved-trans{color:#475569!important}.lesson-vocab-practice-card{background:#0f172abf;border:1.5px solid rgba(139,92,246,.35);border-radius:18px;padding:18px 20px;width:100%;box-sizing:border-box;box-shadow:0 6px 20px #00000040;transition:all .25s ease}.vocab-practice-header{display:flex;align-items:center;justify-content:center;margin-bottom:14px;width:100%;box-sizing:border-box}.vocab-mode-toggle-group{display:flex;align-items:center;width:100%;max-width:100%;background:#00000059;padding:4px;border-radius:14px;border:1.5px solid rgba(255,255,255,.12);gap:6px;box-sizing:border-box}.vocab-mode-btn{flex:1;min-width:0;background:transparent;border:none;color:#94a3b8;padding:10px 14px;border-radius:10px;font-size:.92rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;box-sizing:border-box;text-align:center}.vocab-mode-btn:hover{color:#fff;background:#ffffff14}.vocab-mode-btn.active#vocab-mode-btn-translate,.vocab-mode-btn.active#deck-vocab-mode-btn-translate{background:linear-gradient(135deg,#0284c7,#2563eb);color:#fff;box-shadow:0 4px 14px #2563eb59}.vocab-mode-btn.active#vocab-mode-btn-sentence,.vocab-mode-btn.active#deck-vocab-mode-btn-sentence{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 4px 14px #8b5cf659}.vocab-mode-desc-pill{display:none!important}html.light-mode .lesson-vocab-practice-card,body.light-mode .lesson-vocab-practice-card{background:linear-gradient(135deg,#fff,#f8fafc)!important;border:1.5px solid #cbd5e1!important;box-shadow:0 6px 20px #0000000f!important}html.light-mode .vocab-practice-header,body.light-mode .vocab-practice-header{border-bottom-color:transparent!important}html.light-mode .vocab-mode-toggle-group,body.light-mode .vocab-mode-toggle-group{background:#f1f5f9!important;border:1.5px solid #cbd5e1!important}html.light-mode .vocab-mode-btn,body.light-mode .vocab-mode-btn{color:#64748b!important}html.light-mode .vocab-mode-btn:hover,body.light-mode .vocab-mode-btn:hover{color:#0f172a!important;background:#fffc!important}html.light-mode .vocab-mode-btn.active#vocab-mode-btn-translate,html.light-mode .vocab-mode-btn.active#deck-vocab-mode-btn-translate,body.light-mode .vocab-mode-btn.active#vocab-mode-btn-translate,body.light-mode .vocab-mode-btn.active#deck-vocab-mode-btn-translate{background:linear-gradient(135deg,#0284c7,#2563eb)!important;color:#fff!important}html.light-mode .vocab-mode-btn.active#vocab-mode-btn-sentence,html.light-mode .vocab-mode-btn.active#deck-vocab-mode-btn-sentence,body.light-mode .vocab-mode-btn.active#vocab-mode-btn-sentence,body.light-mode .vocab-mode-btn.active#deck-vocab-mode-btn-sentence{background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important;color:#fff!important}html.light-mode input#lesson-typing-input,body.light-mode input#lesson-typing-input{background:#fff!important;border:1.5px solid #cbd5e1!important;color:#0f172a!important}html.light-mode input#lesson-typing-input:focus,body.light-mode input#lesson-typing-input:focus{border-color:#0284c7!important;box-shadow:0 0 0 3px #0284c726!important}html.light-mode .lesson-hint-card:not(.char-correct):not(.char-wrong):not(.char-revealed):not([data-status=correct]):not([data-status=wrong]):not([data-status=revealed]),body.light-mode .lesson-hint-card:not(.char-correct):not(.char-wrong):not(.char-revealed):not([data-status=correct]):not([data-status=wrong]):not([data-status=revealed]){background:#f8fafc!important;border:1.5px solid #cbd5e1!important;color:#64748b!important;box-shadow:0 2px 8px #0000000d!important}.lesson-hint-card.char-correct,.lesson-hint-card[data-status=correct],html.light-mode .lesson-hint-card.char-correct,body.light-mode .lesson-hint-card.char-correct,html.light-mode .lesson-hint-card[data-status=correct],body.light-mode .lesson-hint-card[data-status=correct]{background:#dcfce7!important;border:2.5px solid #16a34a!important;color:#15803d!important;box-shadow:0 0 16px #16a34a66!important;transform:translateY(-2px)}.lesson-hint-card.char-correct span,.lesson-hint-card[data-status=correct] span,html.light-mode .lesson-hint-card.char-correct span,body.light-mode .lesson-hint-card.char-correct span,html.light-mode .lesson-hint-card[data-status=correct] span,body.light-mode .lesson-hint-card[data-status=correct] span{color:#15803d!important;font-weight:900!important}.lesson-hint-card.char-wrong,.lesson-hint-card[data-status=wrong],html.light-mode .lesson-hint-card.char-wrong,body.light-mode .lesson-hint-card.char-wrong,html.light-mode .lesson-hint-card[data-status=wrong],body.light-mode .lesson-hint-card[data-status=wrong]{background:#fee2e2!important;border:2px solid #ef4444!important;color:#dc2626!important;box-shadow:0 0 16px #ef444459!important}.lesson-hint-card.char-wrong i,.lesson-hint-card[data-status=wrong] i,html.light-mode .lesson-hint-card.char-wrong i,body.light-mode .lesson-hint-card.char-wrong i,html.light-mode .lesson-hint-card[data-status=wrong] i,body.light-mode .lesson-hint-card[data-status=wrong] i{color:#ef4444!important}.lesson-hint-card.char-revealed,.lesson-hint-card[data-status=revealed],html.light-mode .lesson-hint-card.char-revealed,body.light-mode .lesson-hint-card.char-revealed,html.light-mode .lesson-hint-card[data-status=revealed],body.light-mode .lesson-hint-card[data-status=revealed]{background:#fff!important;border:1.5px solid #94a3b8!important;color:#0f172a!important;box-shadow:0 4px 12px #0000001a!important}.lesson-hint-card.char-revealed span,.lesson-hint-card[data-status=revealed] span,html.light-mode .lesson-hint-card.char-revealed span,body.light-mode .lesson-hint-card.char-revealed span,html.light-mode .lesson-hint-card[data-status=revealed] span,body.light-mode .lesson-hint-card[data-status=revealed] span{color:#0f172a!important;font-weight:800!important}html.dark .lesson-hint-card.char-correct,body.dark .lesson-hint-card.char-correct,html.dark .lesson-hint-card[data-status=correct],body.dark .lesson-hint-card[data-status=correct]{background:#10b98140!important;border:2px solid #10b981!important;color:#34d399!important;box-shadow:0 0 16px #10b98173!important}html.dark .lesson-hint-card.char-correct span,body.dark .lesson-hint-card.char-correct span,html.dark .lesson-hint-card[data-status=correct] span,body.dark .lesson-hint-card[data-status=correct] span{color:#34d399!important}html.dark .lesson-hint-card.char-wrong,body.dark .lesson-hint-card.char-wrong,html.dark .lesson-hint-card[data-status=wrong],body.dark .lesson-hint-card[data-status=wrong]{background:#ef444440!important;border:2px solid #ef4444!important;color:#f87171!important;box-shadow:0 0 16px #ef444466!important}html.dark .lesson-hint-card.char-wrong i,body.dark .lesson-hint-card.char-wrong i,html.dark .lesson-hint-card[data-status=wrong] i,body.dark .lesson-hint-card[data-status=wrong] i{color:#f87171!important}html.dark .lesson-hint-card.char-revealed,body.dark .lesson-hint-card.char-revealed,html.dark .lesson-hint-card[data-status=revealed],body.dark .lesson-hint-card[data-status=revealed]{background:#fff!important;border:1px solid rgba(255,255,255,.2)!important;color:#0f172a!important;box-shadow:0 4px 12px #0000004d!important}html.dark .lesson-hint-card.char-revealed span,body.dark .lesson-hint-card.char-revealed span,html.dark .lesson-hint-card[data-status=revealed] span,body.dark .lesson-hint-card[data-status=revealed] span{color:#0f172a!important}.create-nb-tab-btn{padding:8px 16px;border-radius:12px;font-size:.86rem;font-weight:700;cursor:pointer;background:#ffffff0d;border:1.5px solid rgba(255,255,255,.12);color:#94a3b8;display:inline-flex;align-items:center;gap:8px;transition:all .2s cubic-bezier(.4,0,.2,1)}.create-nb-tab-btn:hover{background:#ffffff1a;color:#fff;border-color:#38bdf866;transform:translateY(-1px)}.create-nb-tab-btn.active{background:linear-gradient(135deg,#0284c740,#2563eb59);border-color:#38bdf8;color:#fff;box-shadow:0 4px 16px #38bdf840}.create-nb-dict-card{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;gap:12px;transition:all .15s ease}.create-nb-dict-card:hover{background:#ffffff12;border-color:#38bdf84d}.create-nb-dict-card.is-added{background:#10b98114;border-color:#10b98159}.create-nb-selected-card{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#0f172ad9;border:1px solid rgba(56,189,248,.3);border-radius:99px;box-shadow:0 2px 8px #00000040;animation:popIn .2s cubic-bezier(.175,.885,.32,1.275);transition:all .15s ease}.create-nb-selected-card:hover{border-color:#38bdf8;box-shadow:0 4px 12px #38bdf833;transform:translateY(-1px)}@keyframes popIn{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.roadmap-bookshelf-container{width:100%;max-width:1400px;margin:0 auto;box-sizing:border-box}.roadmap-shelf-filter-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:28px;background:#0f172aa6;border:2px solid #0f172a;border-radius:18px;padding:12px 18px;box-shadow:3px 4px #0f172a;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}html.light .roadmap-shelf-filter-bar,html.light-mode .roadmap-shelf-filter-bar,body.light .roadmap-shelf-filter-bar,body.light-mode .roadmap-shelf-filter-bar{background:#ffffffe6;border:2.5px solid #0f172a;box-shadow:3px 4px #0f172a}html.dark .roadmap-shelf-filter-bar,body.dark .roadmap-shelf-filter-bar{background:#0f172ad9;border-color:#334155;box-shadow:3px 4px #000}.roadmap-filter-pills{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.roadmap-filter-btn{background:#ffffff14;border:2px solid #0f172a;color:#94a3b8;padding:8px 16px;border-radius:12px;font-size:.88rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .18s cubic-bezier(.4,0,.2,1);box-shadow:2px 2px #0f172a}html.light .roadmap-filter-btn,html.light-mode .roadmap-filter-btn,body.light .roadmap-filter-btn,body.light-mode .roadmap-filter-btn{background:#fff!important;color:#0f172a!important;border:2px solid #0f172a!important;box-shadow:2px 2px #0f172a!important}html.light .roadmap-filter-btn *,html.light-mode .roadmap-filter-btn *,body.light .roadmap-filter-btn *,body.light-mode .roadmap-filter-btn *{color:#0f172a!important}html.light .roadmap-filter-btn:hover:not(.active),html.light-mode .roadmap-filter-btn:hover:not(.active){background:#f1f5f9!important;color:#2563eb!important}html.light .roadmap-filter-btn:hover:not(.active) *{color:#2563eb!important}html.dark .roadmap-filter-btn{background:#1e293b;border-color:#475569;color:#cbd5e1;box-shadow:2px 2px #000}.roadmap-filter-btn:hover{transform:translateY(-2px);box-shadow:3px 3.5px #0f172a;color:#38bdf8}html.dark .roadmap-filter-btn:hover{box-shadow:3px 3.5px #000}html.light .roadmap-filter-btn.active,html.light-mode .roadmap-filter-btn.active,body.light .roadmap-filter-btn.active,body.light-mode .roadmap-filter-btn.active{background:#2563eb!important;color:#fff!important;border:2px solid #0f172a!important;box-shadow:2.5px 3px #1e3a8a!important}html.light .roadmap-filter-btn.active *,html.light-mode .roadmap-filter-btn.active *,body.light .roadmap-filter-btn.active *,body.light-mode .roadmap-filter-btn.active *{color:#fff!important;fill:#fff!important}html.dark .roadmap-filter-btn.active,body.dark .roadmap-filter-btn.active{background:#3b82f6!important;color:#fff!important;border-color:#60a5fa!important;box-shadow:2.5px 3px #000!important}html.dark .roadmap-filter-btn.active *,body.dark .roadmap-filter-btn.active *{color:#fff!important;fill:#fff!important}.roadmap-view-mode-toggle{display:inline-flex;background:#00000040;border:2px solid #0f172a;border-radius:12px;padding:3px;gap:4px}html.light .roadmap-view-mode-toggle,html.light-mode .roadmap-view-mode-toggle,body.light .roadmap-view-mode-toggle,body.light-mode .roadmap-view-mode-toggle{background:#e2e8f0!important;border:2px solid #0f172a!important}html.dark .roadmap-view-mode-toggle{background:#0f172a;border-color:#334155}.roadmap-view-toggle-btn{border:none;background:transparent;color:#94a3b8;padding:6px 12px;border-radius:9px;font-size:.8rem;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}html.light .roadmap-view-toggle-btn,html.light-mode .roadmap-view-toggle-btn,body.light .roadmap-view-toggle-btn,body.light-mode .roadmap-view-toggle-btn{color:#0f172a!important;font-weight:800!important}html.light .roadmap-view-toggle-btn *,html.light-mode .roadmap-view-toggle-btn *,body.light .roadmap-view-toggle-btn *,body.light-mode .roadmap-view-toggle-btn *{color:#0f172a!important}html.light .roadmap-view-toggle-btn.active,html.light-mode .roadmap-view-toggle-btn.active,body.light .roadmap-view-toggle-btn.active,body.light-mode .roadmap-view-toggle-btn.active{background:#2563eb!important;color:#fff!important;box-shadow:0 2px 8px #2563eb66!important}html.light .roadmap-view-toggle-btn.active *,html.light-mode .roadmap-view-toggle-btn.active *,body.light .roadmap-view-toggle-btn.active *,body.light-mode .roadmap-view-toggle-btn.active *{color:#fff!important;fill:#fff!important}html.dark .roadmap-view-toggle-btn.active,body.dark .roadmap-view-toggle-btn.active{background:#3b82f6!important;color:#fff!important;box-shadow:0 2px 8px #3b82f666!important}html.dark .roadmap-view-toggle-btn.active *,body.dark .roadmap-view-toggle-btn.active *{color:#fff!important;fill:#fff!important}.bookshelf-shelf{margin-bottom:38px;transition:opacity .2s ease}.bookshelf-shelf-header{display:flex;align-items:center;gap:14px;margin-bottom:18px;position:relative;padding-left:14px}.bookshelf-shelf-header:before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:5px;border-radius:4px;background:var(--shelf-accent, #3b82f6)}.bookshelf-mascot-badge{width:48px;height:48px;border-radius:14px;border:2.5px solid #0f172a;background:#fff;box-shadow:2.5px 3px #0f172a;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}html.dark .bookshelf-mascot-badge{background:#1e293b;border-color:#475569;box-shadow:2.5px 3px #000}.bookshelf-mascot-img{width:40px;height:40px;object-fit:contain}.bookshelf-shelf-titles{display:flex;flex-direction:column}.bookshelf-shelf-title{font-size:1.35rem;font-weight:900;color:#0f172a;margin:0;letter-spacing:-.3px;line-height:1.25}html.light .bookshelf-shelf-title,html.light-mode .bookshelf-shelf-title,body.light .bookshelf-shelf-title,body.light-mode .bookshelf-shelf-title{color:#0f172a!important}html.dark .bookshelf-shelf-title{color:#f8fafc}.bookshelf-shelf-subtitle{font-size:.88rem;font-weight:600;color:#64748b;margin:3px 0 0}html.light .bookshelf-shelf-subtitle,html.light-mode .bookshelf-shelf-subtitle,body.light .bookshelf-shelf-subtitle,body.light-mode .bookshelf-shelf-subtitle{color:#334155!important;font-weight:700!important}html.dark .bookshelf-shelf-subtitle{color:#94a3b8}.bookshelf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (min-width: 640px){.bookshelf-grid{grid-template-columns:repeat(4,1fr);gap:16px}}@media (min-width: 1024px){.bookshelf-grid{grid-template-columns:repeat(6,1fr);gap:20px}}.comic-book-card{position:relative;aspect-ratio:1 / 1.48;border-radius:14px;border:2.5px solid #0f172a;background:#fff;box-shadow:3px 4px #0f172a;overflow:hidden;cursor:pointer;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s ease;user-select:none;-webkit-user-select:none;display:flex;flex-direction:column}html.dark .comic-book-card{border-color:#334155;box-shadow:3px 4px #000;background:#1e293b}.comic-book-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:4px 8px #0f172a}html.dark .comic-book-card:hover{box-shadow:4px 8px #000}.comic-book-card:active{transform:translateY(1px);box-shadow:1.5px 2px #0f172a}.comic-book-cover-img{width:100%;height:100%;object-fit:cover;display:block}.comic-book-spine-overlay{position:absolute;top:0;left:0;bottom:0;width:14px;background:linear-gradient(to right,rgba(255,255,255,.5) 0%,rgba(0,0,0,.15) 30%,transparent 100%);pointer-events:none;z-index:3}.comic-book-gloss-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.03) 45%,transparent 100%);pointer-events:none;z-index:3}.comic-book-status-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border:1.5px solid rgba(255,255,255,.7)!important;font-size:.68rem;font-weight:800!important;padding:3px 8px;border-radius:999px;display:inline-flex;align-items:center;gap:4px;z-index:4;box-shadow:0 2px 8px #00000059;text-shadow:0 1px 2px rgba(0,0,0,.45);white-space:nowrap;max-width:calc(100% - 14px);overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.comic-book-status-badge,.comic-book-status-badge *,.comic-book-status-badge i,.comic-book-status-badge span{color:#fff!important;fill:#fff!important}.comic-book-status-badge.available{background:linear-gradient(135deg,#10b981,#059669)!important;border-color:#ffffffbf!important;box-shadow:0 2px 8px #10b98173,0 1px 3px #0000004d!important}.comic-book-status-badge.reading{background:linear-gradient(135deg,#0284c7,#2563eb)!important;border-color:#ffffffbf!important;box-shadow:0 2px 8px #0284c773,0 1px 3px #0000004d!important}.comic-book-status-badge.done{background:linear-gradient(135deg,#eab308,#ca8a04)!important;border-color:#ffffffd9!important;box-shadow:0 2px 8px #eab30873,0 1px 3px #0000004d!important}.styled-vol-card{width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:12px 10px;color:#0f172a;position:relative;box-sizing:border-box}.styled-vol-card .vol-sub{font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:#334155!important;text-shadow:none!important;background:#ffffffbf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.9);border-radius:6px;padding:2px 7px;max-width:calc(100% - 50px);box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;width:fit-content}.styled-vol-card .vol-name{font-size:.88rem;font-weight:900;line-height:1.25;margin-top:5px;color:#0f172a!important;text-shadow:none!important;font-family:var(--font-display, sans-serif)}.styled-vol-card .vol-center-emblem{margin:auto 0;display:flex;align-items:center;justify-content:center}.styled-vol-card .vol-emblem-badge{width:50px;height:50px;border-radius:50%;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:2px solid rgba(255,255,255,.95);box-shadow:0 4px 12px #0000000f,inset 0 1px 2px #ffffffe6;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.styled-vol-card .vol-emblem-char{font-size:1.25rem;font-weight:900;font-family:"Noto Serif SC",Songti SC,PingFang SC,SimSun,serif;line-height:1;letter-spacing:.5px}.styled-vol-card .vol-footer{display:flex;align-items:flex-end;justify-content:space-between}.styled-vol-card .vol-foot-label{font-size:.62rem;font-weight:800;line-height:1.2;color:#475569!important;text-shadow:none!important}.styled-vol-card .vol-number-badge{font-size:2.1rem;font-weight:900;font-style:italic;line-height:.9;text-shadow:0 1px 2px rgba(255,255,255,.8)!important}@media (max-width: 640px){.roadmap-shelf-filter-bar{padding:8px 10px;gap:8px;border-radius:14px}.roadmap-filter-pills{display:flex;overflow-x:auto;flex-wrap:nowrap;gap:6px;padding-bottom:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none;width:100%}.roadmap-filter-pills::-webkit-scrollbar{display:none}.roadmap-filter-btn{padding:6px 10px;font-size:.75rem;white-space:nowrap;flex-shrink:0}.bookshelf-shelf{margin-bottom:24px}.bookshelf-shelf-header{gap:8px;margin-bottom:12px;padding-left:10px}.bookshelf-mascot-badge{width:38px;height:38px;border-radius:10px}.bookshelf-mascot-img{width:30px;height:30px}.bookshelf-shelf-title{font-size:1.05rem}.bookshelf-shelf-subtitle{font-size:.74rem}.bookshelf-grid{grid-template-columns:repeat(3,1fr);gap:8px}.comic-book-card{border-radius:10px;border-width:2px;box-shadow:2px 2.5px #0f172a}.comic-book-status-badge{top:4px;right:4px;padding:2px 5px;font-size:.56rem;border-radius:999px;gap:3px;max-width:calc(100% - 8px)}.comic-book-spine-overlay{width:8px}.styled-vol-card{padding:6px 5px}.styled-vol-card .vol-sub{font-size:.52rem;padding:1.5px 5px;max-width:calc(100% - 38px)}.styled-vol-card .vol-name{font-size:.72rem;line-height:1.15;margin-top:3px}.styled-vol-card .vol-emblem-badge{width:36px;height:36px}.styled-vol-card .vol-emblem-char{font-size:.92rem}.styled-vol-card .vol-foot-label{font-size:.52rem;line-height:1.1}.styled-vol-card .vol-number-badge{font-size:1.45rem}}.announcement-ticker-bar{display:flex;align-items:center;gap:12px;background:#0f172ad1;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1.5px solid rgba(56,189,248,.28);border-radius:16px;padding:8px 14px 8px 10px;font-size:.9rem;color:#e2e8f0;box-shadow:0 8px 24px #00000059;overflow:hidden;position:relative;z-index:20;transition:all .35s cubic-bezier(.16,1,.3,1);box-sizing:border-box;width:100%}.announcement-ticker-bar.dismissed{opacity:0;transform:translateY(-10px) scale(.98);margin-bottom:-50px;pointer-events:none}.announcement-ticker-bar .ticker-badge{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(135deg,#ef4444,#f97316);color:#fff;font-weight:800;font-size:.72rem;letter-spacing:.06em;padding:5px 12px;border-radius:10px;flex-shrink:0;box-shadow:0 3px 10px #ef444473;-webkit-user-select:none;user-select:none}.announcement-ticker-bar .ticker-icon-pulse{animation:tickerPulse 1.8s ease-in-out infinite;display:inline-block}@keyframes tickerPulse{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.2) rotate(-8deg)}50%{transform:scale(1.1) rotate(6deg)}75%{transform:scale(1.25) rotate(-4deg)}}.announcement-ticker-bar .ticker-content-track{flex:1;min-width:0;overflow:hidden;position:relative;mask-image:linear-gradient(to right,transparent,black 15px,black calc(100% - 15px),transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 15px,black calc(100% - 15px),transparent)}.announcement-ticker-bar .ticker-track-inner{display:flex;width:max-content;will-change:transform;animation:marqueeContinuous 38s linear infinite}.announcement-ticker-bar .ticker-content-track:hover .ticker-track-inner,.announcement-ticker-bar .ticker-content-track:active .ticker-track-inner{animation-play-state:paused}.announcement-ticker-bar .ticker-content-loop{display:flex;align-items:center;gap:36px;padding-right:36px;flex-shrink:0}.announcement-ticker-bar .ticker-item{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-size:.88rem;color:#cbd5e1}.announcement-ticker-bar .ticker-item strong{color:#fff;font-weight:700}.announcement-ticker-bar .ticker-tag{display:inline-flex;align-items:center;font-size:.68rem;font-weight:800;padding:2px 7px;border-radius:6px;letter-spacing:.04em;text-transform:uppercase}.announcement-ticker-bar .ticker-tag.hot{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4)}.announcement-ticker-bar .ticker-tag.new{background:#a855f733;color:#c084fc;border:1px solid rgba(168,85,247,.4)}.announcement-ticker-bar .ticker-tag.feat{background:#38bdf833;color:#38bdf8;border:1px solid rgba(56,189,248,.4)}.announcement-ticker-bar .ticker-tag.book{background:#06b6d433;color:#22d3ee;border:1px solid rgba(6,182,212,.4)}.announcement-ticker-bar .ticker-tag.trophy{background:#f59e0b33;color:#fbbf24;border:1px solid rgba(245,158,11,.4)}.announcement-ticker-bar .ticker-action-link{display:inline-flex;align-items:center;gap:3px;color:#38bdf8;font-weight:700;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease;margin-left:4px}.announcement-ticker-bar .ticker-action-link:hover{color:#7dd3fc;text-decoration:underline}.announcement-ticker-bar .ticker-close-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#94a3b8;border-radius:8px;cursor:pointer;flex-shrink:0;font-size:.85rem;transition:all .2s ease}.announcement-ticker-bar .ticker-close-btn:hover{background:#ef444433;color:#f87171;border-color:#ef444466;transform:scale(1.08)}@keyframes marqueeContinuous{0%{transform:translate(0)}to{transform:translate(-50%)}}html.light-mode .announcement-ticker-bar,body.light-mode .announcement-ticker-bar,html:not(.dark) .announcement-ticker-bar{background:#fffffff0!important;border-color:#cbd5e1e6!important;box-shadow:0 4px 20px #0000000f!important;color:#0f172a!important}html.light-mode .announcement-ticker-bar .ticker-item,body.light-mode .announcement-ticker-bar .ticker-item,html:not(.dark) .announcement-ticker-bar .ticker-item{color:#334155!important}html.light-mode .announcement-ticker-bar .ticker-item strong,body.light-mode .announcement-ticker-bar .ticker-item strong,html:not(.dark) .announcement-ticker-bar .ticker-item strong{color:#0f172a!important}html.light-mode .announcement-ticker-bar .ticker-action-link,body.light-mode .announcement-ticker-bar .ticker-action-link,html:not(.dark) .announcement-ticker-bar .ticker-action-link{color:#0284c7!important}html.light-mode .announcement-ticker-bar .ticker-close-btn,body.light-mode .announcement-ticker-bar .ticker-close-btn,html:not(.dark) .announcement-ticker-bar .ticker-close-btn{background:#f1f5f9!important;border-color:#cbd5e1!important;color:#64748b!important}html.light-mode .announcement-ticker-bar .ticker-close-btn:hover,body.light-mode .announcement-ticker-bar .ticker-close-btn:hover,html:not(.dark) .announcement-ticker-bar .ticker-close-btn:hover{background:#fee2e2!important;color:#ef4444!important;border-color:#fca5a5!important}@media (max-width: 768px){.announcement-ticker-bar{padding:7px 10px;gap:8px;border-radius:12px}.announcement-ticker-bar .ticker-badge{padding:4px 8px;font-size:.65rem}.announcement-ticker-bar .ticker-badge-text{display:none}.announcement-ticker-bar .ticker-item{font-size:.8rem;gap:6px}.announcement-ticker-bar .ticker-content-loop{gap:24px;padding-right:24px}}
