/* =========================================================
   Readability pass — 全站正文/标签字号 +2~3px
   加载顺序在 styles.css 之后，用相同的选择器覆盖原有字号。
   ========================================================= */

/* 基础界面 */
body { font-size: 16.5px; }
.side-nav a { font-size: 16px; }
.side-tagline { font-size: 14px; }
.nav-count { font-size: 11.5px; }
.side-goal-head { font-size: 13px; }
.side-goal-head b { font-size: 14px; }
.side-goal p { font-size: 13px; }
.side-goal-link { font-size: 14px; }
.side-utils button { font-size: 13px; }
.side-foot { font-size: 11px; }
.brand-copy strong { font-size: 23px; }
.brand-copy small { font-size: 11px; }
.topbar-title h2 { font-size: 21px; }
.topbar-title p { font-size: 14px; }
.global-search input { font-size: 15px; }
.streak-pill { font-size: 14px; }
.streak-pill b { font-size: 16px; }
.streak-pill span { font-size: 12px; }
kbd { font-size: 11.5px; }
.site-foot { font-size: 11px; }

/* 通用组件 */
.eyebrow { font-size: 12px; }
.card-head h2 { font-size: 24px; }
.page-head p { font-size: 15.5px; }
.btn { font-size: 15.5px; }
.btn-lg { font-size: 16px; }
.btn-sm { height: 37px; font-size: 13.5px; }
.text-btn { font-size: 14px; }
.link-btn { font-size: 14px; }
.badge { height: 24px; font-size: 11.5px; }
.level-tag { font-size: 11px; }
.chip { height: 38px; font-size: 14px; }
.chip span { font-size: 11.5px; }
.cat-chip { height: 38px; font-size: 14px; }
.segmented button { height: 32px; font-size: 12.5px; }
.empty-state h3 { font-size: 20px; }
.empty-state p { font-size: 14.5px; }
.empty-inline h4 { font-size: 15px; }
.empty-inline p { font-size: 13.5px; }

/* 今日 */
.hero-kicker { font-size: 12.5px; }
.hero-sub { font-size: 16px; }
.hero-progress-copy strong { font-size: 15px; }
.hero-progress-copy span { font-size: 13px; }
.ring-label strong { font-size: 22px; }
.ring-label strong small { font-size: 11.5px; }
.ring-label span { font-size: 11px; }
.wotd-tag { font-size: 10px; }
.wotd-meta { font-size: 11px; }
.wotd-ipa { font-size: 12px; }
.wotd-meaning { font-size: 13.5px; }
.wotd-body .link-btn { font-size: 12.5px; }
.stat-value { font-size: 26px; }
.stat-value small { font-size: 11.5px; }
.stat-label { font-size: 14px; }
.stat-note { font-size: 12px; }
.due-main strong { font-size: 19px; }
.due-main small { font-size: 13px; }
.due-time { font-size: 11.5px; }
.due-more { font-size: 12px; }
.week-total { font-size: 12px; }
.week-count { font-size: 11px; }
.week-label { font-size: 11.5px; }
.week-foot { font-size: 12px; }
.goal-line::after { font-size: 10px; }
.cat-copy strong { font-size: 14px; }
.cat-copy small { font-size: 11.5px; }
.cat-count { font-size: 11px; }
.core-banner-copy .eyebrow { font-size: 10px; }
.core-banner-copy strong { font-size: 15px; }
.core-banner-copy small { font-size: 12.5px; }
.core-banner-progress small { font-size: 10px; }
.tip-banner p { font-size: 14px; }

/* 词库 */
.search-field input { font-size: 15px; }
.result-bar { font-size: 13px; }
.result-bar strong { font-size: 16px; }
.result-cat, .result-query { font-size: 12px; }
.sort-select select { font-size: 13px; }
.wc-level { font-size: 10px; }
.wc-title h3 { font-size: 26px; }
.wc-pos { font-size: 11px; }
.wc-ipa { font-size: 12px; }
.wc-meaning { min-height: 40px; font-size: 14.5px; }
.cat-label { font-size: 11.5px; }
.library-more .btn small { font-size: 11px; }
.level-chip { font-size: 13px; }
.level-chip-label { font-size: 12px; }
.daily-plan-card .card-head h2 { font-size: 24px; }
.plan-count { font-size: 13px; }
.plan-word span { font-size: 17px; }
.plan-word small { font-size: 12px; }
.plan-foot > small { font-size: 12px; }
.plan-view-all { font-size: 12.5px; }
.plan-modal-head p { font-size: 14px; }
.plan-row-word { font-size: 19px; }
.plan-row-word small { font-size: 13px; }
.plan-row-state { font-size: 12px; }
.plan-row-index { font-size: 12px; }
.plan-record-date strong { font-size: 14px; }
.plan-record-date small { font-size: 11.5px; }
.plan-record-count strong { font-size: 18px; }
.plan-record-count small { font-size: 11.5px; }
.forms-tabs button { font-size: 14px; }
.verb-base strong { font-size: 22px; }
.verb-base small { font-size: 11px; }
.verb-cell b { font-size: 14px; }
.verb-meaning { font-size: 13px; }
.verb-table-head { font-size: 11.5px; }
.affix-head strong { font-size: 23px; }
.affix-card p { font-size: 12.5px; }
.affix-card small { font-size: 11.5px; }
.affix-word strong { font-size: 16px; }
.affix-word span { font-size: 11.5px; }
.morph-label { font-size: 11px; }
.morph-cell small { font-size: 10px; }
.morph-cell b { font-size: 14px; }
.affix-pill { font-size: 14px; }
.affix-pill small { font-size: 10.5px; }
.photo-empty small { font-size: 11px; }
.photo-empty strong { font-size: 22px; }
.wd-media .photo-empty strong { font-size: 34px; }

/* 学习 */
.setup-copy > p { font-size: 14.5px; }
.session-pill { height: 34px; font-size: 13px; }
.setup-meta { font-size: 12px; }
.explain-item h3 { font-size: 15px; }
.explain-item p { font-size: 13.5px; }
.study-progress-meta { font-size: 11.5px; }
.study-progress-meta b { font-size: 12.5px; }
.study-streak { font-size: 13px; }
.study-cat { font-size: 11.5px; }
.study-new { font-size: 10px; }
.study-ipa { font-size: 14px; }
.study-ipa span { font-size: 12px; }
.recall-hint strong { font-size: 14.5px; }
.recall-hint p { font-size: 13px; }
.reveal-meaning { font-size: 24px; }
.reveal-en { font-size: 14px; }
.example { font-size: 18px; }
.example span { font-size: 13px; }
.tip-box strong { font-size: 11.5px; }
.tip-box p { font-size: 13.5px; }
.word-chips span { font-size: 11.5px; }
.core-learn-note p { font-size: 13px; }
.my-note p { font-size: 13px; }
.rate-top { font-size: 14px; }
.rate-btn small { font-size: 11px; }
.study-foot-hint { font-size: 12px; }
.summary-card > p { font-size: 14px; }
.summary-stats strong { font-size: 26px; }
.summary-stats strong small { font-size: 11.5px; }
.summary-stats span { font-size: 11px; }
.summary-row-word { font-size: 16px; }
.summary-row-rating { font-size: 11px; }
.summary-row-meaning { font-size: 12.5px; }

/* 测验 */
.mode-copy strong { font-size: 17px; }
.mode-copy small { font-size: 13px; }
.config-left h3 { font-size: 18px; }
.config-note { font-size: 12px; }
.config-right > span:last-child { font-size: 11px; }
.quiz-tips strong { font-size: 13px; }
.quiz-tips span { font-size: 11px; }
.quiz-progress-meta { font-size: 11.5px; }
.quiz-combo { font-size: 11px; }
.q-ipa { font-size: 14px; }
.q-ipa span { font-size: 12px; }
.q-instruction { font-size: 13px; }
.q-hint-line { font-size: 12px; }
.replay { font-size: 12px; }
.quiz-option { font-size: 15px; }
.opt-letter { font-size: 12px; }
.quiz-helper { font-size: 11.5px; }
.answer-title { font-size: 13.5px; }
.answer-word { font-size: 14px; }
.answer-word strong { font-size: 18px; }
.answer-example { font-size: 13.5px; }
.wrong-row strong { font-size: 16px; }
.wrong-row small { font-size: 12px; }
.spell-meaning { font-size: 19px; }
.spell-meaning span { font-size: 11.5px; }
.spell-attempts { font-size: 12px; }
.spell-feedback { font-size: 13.5px; }
.spell-feedback strong { font-size: 16px; }

/* 游戏 */
.game-copy h2 { font-size: 25px; }
.game-copy > p { font-size: 13.5px; }
.game-meta { font-size: 11.5px; }
.game-bubble { font-size: 12px; }
.game-tip p { font-size: 13.5px; }
.match-stats span { font-size: 11.5px; }
.match-stats b { font-size: 12.5px; }
.match-hint { font-size: 12px; }
.match-front small { font-size: 8px; }
.match-result h2 { font-size: 22px; }
.match-result p { font-size: 13px; }

/* 数据 */
.level-line h2 { font-size: 22px; }
.level-main p { font-size: 11.5px; }
.level-side strong { font-size: 15px; }
.level-side small { font-size: 10px; }
.level-orb span { font-size: 8.5px; }
.legend { font-size: 12px; }
.legend strong { font-size: 13px; }
.mastery-note { font-size: 11px; }
.cat-row-main strong { font-size: 13px; }
.cat-row-main small { font-size: 10.5px; }
.recent-row strong { font-size: 12.5px; }
.recent-row small { font-size: 10.5px; }
.recent-xp { font-size: 10.5px; }
.ach-count { font-size: 11.5px; }
.ach-copy strong { font-size: 12.5px; }
.ach-copy small { font-size: 10.5px; }
.ach-status { font-size: 10px; }
.data-strip p { font-size: 11.5px; }

/* 词卡弹窗与设置 */
.wd-cat, .wd-level { font-size: 10.5px; }
.wd-ipa { font-size: 14px; }
.wd-meaning { font-size: 19px; }
.wd-en { font-size: 13px; }
.wd-actions .btn { font-size: 13.5px; }
.wd-meta { font-size: 10.5px; }
.pronounce-head > span { font-size: 12px; }
.pronounce-head small { font-size: 10.5px; }
.pronounce-result { font-size: 12px; }
.note-field > span { font-size: 12px; }
.note-field textarea { font-size: 13px; }
.settings-head p { font-size: 13px; }
.settings-group h3 { font-size: 13px; }
.setting-row strong { font-size: 14px; }
.setting-row small { font-size: 11px; }
.text-input { font-size: 13px; }
.range-wrap output { font-size: 12px; }
.shortcut-grid span { font-size: 11.5px; }
.settings-foot { font-size: 10.5px; }
.toast-copy strong { font-size: 13px; }
.toast-copy span { font-size: 11.5px; }

/* 手机端仍保留较大字号，但给紧凑区域留一点空间 */
@media (max-width: 700px) {
  .stat-value { font-size: 23px; }
  .wc-title h3 { font-size: 23px; }
  .wc-meaning { min-height: 36px; font-size: 13.5px; }
  .wc-ipa { font-size: 11.5px; }
  .cat-label { font-size: 11px; }
  .rate-top { font-size: 12.5px; }
  .rate-btn small { font-size: 10px; }
  .study-ipa { font-size: 13px; }
  .reveal-meaning { font-size: 22px; }
  .example { font-size: 16.5px; }
  .example span { font-size: 12.5px; }
  .quiz-option { font-size: 14px; }
  .setting-row strong { font-size: 13.5px; }
  .setting-row small { font-size: 10.5px; }
  .side-nav a { font-size: 16px; }
  .mobile-nav a { font-size: 10.5px; }
  .mobile-nav a small { font-size: 10px; }
  .brand-mobile strong { font-size: 19px; }
  .study-page .rating-grid { bottom: calc(79px + env(safe-area-inset-bottom)); }
}
