*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:root{--primary:#4f6ef7;--primary-light:#eef1ff;--vowel:#ff6b6b;--vowel-light:#fff0f0;--diphthong:#ff9f43;--diphthong-light:#fff7ed;--consonant:#48c774;--consonant-light:#eefbf3;--bg:#f5f7fa;--card:#fff;--text:#2d3748;--subtext:#718096;--border:#e2e8f0}body{background:var(--bg);color:var(--text);min-height:100vh;padding-bottom:env(safe-area-inset-bottom);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@keyframes wave{0%,to{transform:scaleY(.5)}50%{transform:scaleY(1)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.header[data-v-f4ee6f91]{color:#fff;z-index:100;background:linear-gradient(135deg,#4f6ef7 0%,#6c63ff 100%);padding:20px 16px 28px;position:sticky;top:0}.header-main[data-v-f4ee6f91]{justify-content:space-between;align-items:flex-start;display:flex}.header h1[data-v-f4ee6f91]{letter-spacing:.5px;font-size:20px;font-weight:700}.header p[data-v-f4ee6f91]{opacity:.85;margin-top:4px;font-size:13px}.lang-toggle[data-v-f4ee6f91]{color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff26;border:1px solid #ffffff59;border-radius:20px;flex-shrink:0;align-items:center;gap:2px;margin-top:2px;padding:5px 12px;font-size:13px;font-weight:600;transition:background .2s;display:flex}.lang-toggle[data-v-f4ee6f91]:active{background:#ffffff40}.lang-toggle span[data-v-f4ee6f91]{opacity:.5;transition:opacity .2s}.lang-toggle span.active[data-v-f4ee6f91]{opacity:1}.divider[data-v-f4ee6f91]{margin:0 1px;opacity:.4!important}.tabs[data-v-96c930e1]{border-bottom:1px solid var(--border);scrollbar-width:none;z-index:99;background:#fff;display:flex;position:sticky;top:72px;overflow-x:auto}.tabs[data-v-96c930e1]::-webkit-scrollbar{display:none}.tab[data-v-96c930e1]{color:var(--subtext);cursor:pointer;white-space:nowrap;border-bottom:2px solid #0000;flex:none;padding:12px 20px;font-size:14px;font-weight:500;transition:all .2s}.tab.active[data-v-96c930e1]{color:var(--primary);border-bottom-color:var(--primary)}.toast[data-v-ffc7d13a]{bottom:calc(20px + env(safe-area-inset-bottom));color:#fff;z-index:999;white-space:nowrap;background:#000000bf;border-radius:24px;padding:10px 20px;font-size:13px;transition:transform .3s;position:fixed;left:50%;transform:translate(-50%)translateY(100px)}.toast.show[data-v-ffc7d13a]{transform:translate(-50%)translateY(0)}.empty-state[data-v-2446c110]{text-align:center;color:var(--subtext);padding:60px 20px}.emoji[data-v-2446c110]{margin-bottom:12px;font-size:48px}.empty-state p[data-v-2446c110]{font-size:14px}.stats-row[data-v-0f1255bb]{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.stat-card[data-v-0f1255bb]{background:var(--card);text-align:center;border-radius:12px;padding:12px;box-shadow:0 1px 4px #0000000f}.stat-num[data-v-0f1255bb]{color:var(--primary);font-size:22px;font-weight:700}.stat-label[data-v-0f1255bb]{color:var(--subtext);margin-top:2px;font-size:11px}.phoneme-card[data-v-63d55b81]{background:var(--card);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #0000;border-radius:14px;padding:14px 10px;transition:all .15s;position:relative;overflow:hidden;box-shadow:0 1px 4px #0000000f}.phoneme-card[data-v-63d55b81]:active{transform:scale(.95)}.phoneme-card.type-vowel[data-v-63d55b81]{border-color:#ffe5e5}.phoneme-card.type-diphthong[data-v-63d55b81]{border-color:#ffe9cc}.phoneme-card.type-consonant[data-v-63d55b81]{border-color:#d6f5e3}.phoneme-card.playing[data-v-63d55b81]{transform:scale(.97)}.phoneme-card.type-vowel.playing[data-v-63d55b81]{background:var(--vowel-light);border-color:var(--vowel)}.phoneme-card.type-diphthong.playing[data-v-63d55b81]{background:var(--diphthong-light);border-color:var(--diphthong)}.phoneme-card.type-consonant.playing[data-v-63d55b81]{background:var(--consonant-light);border-color:var(--consonant)}.phoneme-symbol[data-v-63d55b81]{margin-bottom:6px;font-size:28px;font-weight:700;line-height:1}.type-vowel .phoneme-symbol[data-v-63d55b81]{color:var(--vowel)}.type-diphthong .phoneme-symbol[data-v-63d55b81]{color:var(--diphthong)}.type-consonant .phoneme-symbol[data-v-63d55b81]{color:var(--consonant)}.phoneme-name[data-v-63d55b81]{color:var(--subtext);margin-bottom:4px;font-size:11px}.phoneme-example[data-v-63d55b81]{color:var(--text);font-size:12px;font-weight:600}.phoneme-example[data-v-63d55b81] em{font-style:normal;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.sound-icon[data-v-63d55b81]{opacity:.4;width:18px;height:18px;position:absolute;top:8px;right:8px}.sound-icon.active[data-v-63d55b81]{opacity:1}.wave-bars[data-v-63d55b81]{justify-content:center;align-items:center;gap:2px;height:16px;display:none;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.phoneme-card.playing .wave-bars[data-v-63d55b81]{display:flex}.wave-bar[data-v-63d55b81]{border-radius:2px;width:3px;height:12px;animation:.8s infinite wave}.type-vowel .wave-bar[data-v-63d55b81]{background:var(--vowel)}.type-diphthong .wave-bar[data-v-63d55b81]{background:var(--diphthong)}.type-consonant .wave-bar[data-v-63d55b81]{background:var(--consonant)}.wave-bar[data-v-63d55b81]:nth-child(2){animation-delay:.1s}.wave-bar[data-v-63d55b81]:nth-child(3){animation-delay:.2s}.wave-bar[data-v-63d55b81]:nth-child(4){animation-delay:.1s}.group-title[data-v-c0d8b39e]{color:var(--text);align-items:center;gap:8px;margin:20px 0 10px;font-size:15px;font-weight:700;display:flex}.badge[data-v-c0d8b39e]{border-radius:20px;padding:2px 8px;font-size:11px;font-weight:600}.badge-vowel[data-v-c0d8b39e]{background:var(--vowel-light);color:var(--vowel)}.badge-diphthong[data-v-c0d8b39e]{background:var(--diphthong-light);color:var(--diphthong)}.badge-consonant[data-v-c0d8b39e]{background:var(--consonant-light);color:var(--consonant)}.phoneme-grid[data-v-c0d8b39e]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.modal-overlay[data-v-f54178c9]{z-index:200;background:#00000080;align-items:flex-end;display:flex;position:fixed;inset:0}.modal[data-v-f54178c9]{padding:24px 20px calc(24px + env(safe-area-inset-bottom));background:#fff;border-radius:24px 24px 0 0;width:100%;animation:.3s slideUp}.modal-handle[data-v-f54178c9]{background:#e2e8f0;border-radius:2px;width:40px;height:4px;margin:0 auto 20px}.modal-symbol[data-v-f54178c9]{text-align:center;margin-bottom:8px;font-size:64px;font-weight:700}.modal-phoneme-name[data-v-f54178c9]{text-align:center;color:var(--subtext);margin-bottom:20px;font-size:16px}.modal-play-btn[data-v-f54178c9]{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;margin-bottom:20px;padding:14px 32px;font-size:16px;font-weight:600;transition:background .2s;display:flex}.modal-play-btn[data-v-f54178c9]:active{background:#3d5ae0}.modal-examples[data-v-f54178c9]{background:var(--bg);border-radius:12px;padding:14px}.modal-examples h4[data-v-f54178c9]{color:var(--subtext);margin-bottom:10px;font-size:13px}.example-list[data-v-f54178c9]{flex-direction:column;gap:8px;display:flex}.example-item[data-v-f54178c9]{background:#fff;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.example-word[data-v-f54178c9]{font-size:16px;font-weight:700}.example-word[data-v-f54178c9] em{color:var(--primary);font-style:normal}.example-meaning[data-v-f54178c9]{color:var(--subtext);font-size:13px}.example-play[data-v-f54178c9]{background:var(--primary-light);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.close-modal[data-v-f54178c9]{text-align:center;color:var(--subtext);cursor:pointer;margin-top:14px;padding:8px;font-size:14px}.phoneme-intro[data-v-4b2d550b]{background:var(--card);color:var(--subtext);border-left:3px solid var(--primary);border-radius:12px;margin-bottom:16px;padding:14px 16px;font-size:13px;line-height:1.6}.phoneme-intro[data-v-4b2d550b] span{color:var(--primary);font-weight:600}.speak-btn[data-v-580d8c9d]{color:#4f6ef7;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background .15s,color .15s;display:inline-flex}.speak-btn[data-v-580d8c9d]:hover{background:#4f6ef71a}.speak-btn[data-v-580d8c9d]:active{background:#4f6ef733}.speak-btn svg[data-v-580d8c9d]{width:16px;height:16px}.speak-btn.playing[data-v-580d8c9d]{color:#6c63ff}.wave-icon[data-v-580d8c9d]{animation:.8s ease-in-out infinite alternate pulse-580d8c9d}@keyframes pulse-580d8c9d{0%{opacity:1;transform:scale(1)}to{opacity:.6;transform:scale(.9)}}.sentence-tab[data-v-c06ffcc4]{max-width:680px;margin:0 auto;padding:12px 16px 0}.loading[data-v-c06ffcc4]{flex-direction:column;gap:12px;padding:16px 0;display:flex}.skeleton[data-v-c06ffcc4]{background:linear-gradient(90deg, var(--border) 25%, color-mix(in srgb, var(--border) 50%, transparent) 50%, var(--border) 75%);background-size:200% 100%;border-radius:8px;animation:1.4s infinite shimmer-c06ffcc4}.skeleton-title[data-v-c06ffcc4]{width:60%;height:24px}.skeleton-text[data-v-c06ffcc4]{height:16px}.skeleton-text.short[data-v-c06ffcc4]{width:75%}@keyframes shimmer-c06ffcc4{0%{background-position:200% 0}to{background-position:-200% 0}}.error-state[data-v-c06ffcc4]{text-align:center;color:var(--text);padding:48px 0}.btn-retry[data-v-c06ffcc4]{border:1px solid var(--border);cursor:pointer;color:var(--text);background:0 0;border-radius:8px;margin-top:12px;padding:8px 20px;font-size:14px}.card[data-v-c06ffcc4]{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:16px}.sentence-card[data-v-c06ffcc4]{margin-bottom:4px}.sentence-card-top[data-v-c06ffcc4]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.sentence-badge[data-v-c06ffcc4]{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#4f6ef7 0%,#6c63ff 100%);border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.english[data-v-c06ffcc4]{color:var(--text-h);margin:0 0 10px;font-size:17px;font-weight:500;line-height:1.65}.chinese[data-v-c06ffcc4]{color:var(--text);margin:0;font-size:14px;line-height:1.7}.section[data-v-c06ffcc4]{margin-top:16px}.section-header[data-v-c06ffcc4]{color:var(--text);text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:6px;margin-bottom:8px;font-size:13px;font-weight:700;display:flex}.section-icon[data-v-c06ffcc4]{font-size:14px}.grammar-card[data-v-c06ffcc4]{color:var(--text);text-align:justify;font-size:14px;line-height:1.8}.vocab-list[data-v-c06ffcc4]{flex-direction:column;gap:8px;display:flex}.vocab-card[data-v-c06ffcc4]{padding:12px 14px}.vocab-head[data-v-c06ffcc4]{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:5px;display:flex}.vocab-word[data-v-c06ffcc4]{color:var(--text-h);font-size:16px;font-weight:700}.vocab-word.small[data-v-c06ffcc4]{font-size:14px}.vocab-phonetic[data-v-c06ffcc4]{color:#4f6ef7;font-size:13px;font-family:var(--mono)}.vocab-explanation[data-v-c06ffcc4]{color:var(--text);margin:0 0 4px;font-size:13px;line-height:1.6}.vocab-explanation.small[data-v-c06ffcc4]{font-size:12px}.vocab-meta[data-v-c06ffcc4]{color:var(--text);align-items:flex-start;gap:5px;margin-top:4px;font-size:12px;line-height:1.6;display:flex}.vocab-meta.small[data-v-c06ffcc4]{font-size:11px}.meta-label[data-v-c06ffcc4]{letter-spacing:.3px;border-radius:4px;flex-shrink:0;margin-top:2px;padding:1px 5px;font-size:10px;font-weight:700}.memory-label[data-v-c06ffcc4]{color:#92400e;background:#fef3c7}.colloc-label[data-v-c06ffcc4]{color:#1e40af;background:#dbeafe}.deriv-label[data-v-c06ffcc4]{color:#065f46;background:#d1fae5}.theme-card[data-v-c06ffcc4]{margin-bottom:8px}.theme-name[data-v-c06ffcc4]{color:#4f6ef7;margin-bottom:10px;font-size:13px;font-weight:700}.theme-words[data-v-c06ffcc4]{flex-direction:column;gap:8px;display:flex}.theme-word-item[data-v-c06ffcc4]{border-bottom:1px solid var(--border);padding:8px 0}.theme-word-item[data-v-c06ffcc4]:last-child{border-bottom:none;padding-bottom:0}.theme-word-row[data-v-c06ffcc4]{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:3px;display:flex}.theme-phrase-row[data-v-c06ffcc4]{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.theme-phrase[data-v-c06ffcc4]{color:var(--text-h);font-size:14px;font-weight:600}.theme-translation[data-v-c06ffcc4]{color:var(--text);font-size:13px}.nav-spacer[data-v-c06ffcc4]{height:80px}.bottom-nav[data-v-c06ffcc4]{background:var(--bg);border-top:1px solid var(--border);box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;max-width:1126px;padding:12px 20px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-btn[data-v-c06ffcc4]{border:1px solid var(--border);background:var(--bg);cursor:pointer;color:var(--text-h);border-radius:24px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s}.next-btn[data-v-c06ffcc4]{color:#fff;background:linear-gradient(135deg,#4f6ef7 0%,#6c63ff 100%);border:none}.nav-btn[data-v-c06ffcc4]:disabled{opacity:.5;cursor:not-allowed}.nav-btn[data-v-c06ffcc4]:not(:disabled):active{transform:scale(.97)}.nav-indicator[data-v-c06ffcc4]{color:var(--text);text-align:center;min-width:24px;font-size:13px;font-weight:600}.nav-placeholder[data-v-c06ffcc4]{width:90px}.content[data-v-8387b855]{padding:16px}
