/* Shared mobile reading scale. Keep desktop and printed pages unchanged. */
@media screen and (max-width:700px) {
  body { font-size:19px; line-height:1.9; }
  .site-header .header-inner { column-gap:12px; }
  .site-header .site-nav { font-size:17px; gap:8px; }
  .site-header .site-nav a { min-height:44px; display:inline-flex; align-items:center; }
  .site-header .wordmark-name { font-size:24px; letter-spacing:.04em; }
  .search-field, .header-search .search-field { font-size:18px; }
  .search-submit, .header-search .search-submit { font-size:17px; min-height:48px; padding-inline:10px; }
  .search-label, .search-header .search-label { font-size:17px; }
  .hero-description, .post-excerpt, .archive-description, .search-empty p,
  .entry-content, .entry-content table { font-size:19px; line-height:1.9; }
  .hero-description, .post-excerpt { color:#5b6055; }
  .home .hero-description { max-width:none; }
  .post-meta, .eyebrow, .search-hint, .section-heading .section-note,
  .more-stories p, .nav-label, .entry-content figcaption { font-size:15px; line-height:1.8; }
  .section-heading { flex-wrap:wrap; gap:8px 18px; }
  .section-heading .section-note { max-width:none; text-align:left; }
  .section-heading h2, .post-card h2 { font-size:26px; }
  .entry-content h2 { font-size:29px; }
  .entry-content h3 { font-size:25px; }
  .text-link, .post-read-more, .section-heading>a,
  .more-stories-link, .page-numbers, .post-page-links, .article-footer { font-size:17px; }
  .text-link, .post-read-more, .more-stories-link, .page-numbers { min-height:48px; display:inline-flex; align-items:center; }
  .site-footer .footer-inner { font-size:16px; line-height:1.85; }
  .site-footer .footer-nav a { min-height:44px; }
  .site-footer .footer-back a { min-height:44px; }
  .site-footer .footer-motto { letter-spacing:.05em; }
  .site-footer .today-visitors { gap:8px 16px; }
  .site-footer .today-visitors strong, .site-footer .visitor-ordinal strong { font-size:28px; }
  .site-footer .today-visitors details { font-size:16px; line-height:1.85; }
  .site-footer .today-visitors summary { min-height:44px; padding-block:7px; }
  .site-footer .footer-icp { font-size:15px; white-space:normal; overflow-wrap:anywhere; }
  .site-footer .footer-icp a { min-height:44px; display:inline-flex; align-items:center; }
}

/* Mobile lesson reading: keep the large-character hierarchy and enlarge readable copy. */
@media screen and (max-width:700px) {
  .wang-page,
  .hanzi-page {
    font-size:19px;
    line-height:1.9;
    overflow-wrap:anywhere;
  }

  .wang-page .wang-intro,
  .hanzi-page .hanzi-intro,
  .wang-page .wang-meaning p,
  .hanzi-page .hanzi-meaning p,
  .wang-page .wang-note p,
  .hanzi-page .hanzi-note p,
  .wang-page .wang-origin-part p,
  .hanzi-page .hanzi-origin-part p,
  .wang-page .wang-origin-takeaway p,
  .wang-page .wang-words p,
  .hanzi-page .hanzi-words p,
  .wang-page .wang-compare p,
  .wang-page .wang-stroke-list p,
  .wang-page .wang-memory p,
  .wang-page .wang-take-home p:last-child,
  .hanzi-page .hanzi-take-home p:last-child {
    font-size:19px;
    line-height:1.9;
  }

  .wang-page .wang-section-heading>p:last-child:not(.wang-section-no),
  .wang-page .wang-section-heading>div>p:last-child:not(.wang-section-no),
  .hanzi-page .hanzi-section-heading>p:last-child:not(.hanzi-section-no),
  .wang-page .wang-example,
  .hanzi-page .hanzi-example,
  .wang-page .wang-note>span,
  .hanzi-page .hanzi-note>span,
  .wang-page .wang-memory>span,
  .wang-page .wang-board-caption,
  .hanzi-page .hanzi-board-caption,
  .wang-page .peng-writing-caption,
  .wang-page .peng-writing-note,
  .hanzi-page .hanzi-writing-note,
  .hanzi-page .hanzi-origin-reference,
  .wang-page .wang-words small,
  .hanzi-page .hanzi-words small,
  .wang-page .wang-compare-characters small,
  .wang-page .wang-compare-characters i,
  .wang-page .peng-drum-art figcaption,
  .wang-page .wang-audio-status,
  .hanzi-page .hanzi-audio-status,
  .wang-page .wang-sources,
  .hanzi-page .hanzi-sources,
  .wang-page .wang-sources h2,
  .hanzi-page .hanzi-sources h2 {
    font-size:16px;
    line-height:1.8;
  }

  .wang-page .wang-breadcrumb,
  .hanzi-page .hanzi-breadcrumb,
  .wang-page .wang-issue,
  .hanzi-page .hanzi-issue,
  .wang-page .wang-kicker,
  .hanzi-page .hanzi-kicker,
  .wang-page .wang-art-caption,
  .hanzi-page .hanzi-art-caption,
  .wang-page .wang-art-caption span,
  .hanzi-page .hanzi-art-caption span,
  .wang-page .wang-art-bottom,
  .hanzi-page .hanzi-art-bottom,
  .wang-page .wang-seal,
  .hanzi-page .hanzi-seal,
  .wang-page .wang-mini-label,
  .hanzi-page .hanzi-mini-label,
  .wang-page .wang-section-no,
  .hanzi-page .hanzi-section-no,
  .wang-page .wang-pill,
  .hanzi-page .hanzi-pill,
  .wang-page .wang-source-ref,
  .wang-page .wang-chapters em,
  .hanzi-page .hanzi-chapters em {
    font-size:14px;
    line-height:1.7;
  }

  .wang-page .wang-breadcrumb,
  .hanzi-page .hanzi-breadcrumb,
  .wang-page .wang-art-caption,
  .hanzi-page .hanzi-art-caption,
  .wang-page .wang-art-bottom,
  .hanzi-page .hanzi-art-bottom {
    flex-wrap:wrap;
    gap:8px 12px;
    letter-spacing:.04em;
  }

  .wang-page .wang-hero h1,
  .hanzi-page .hanzi-hero h1 { min-width:0; }
  .wang-page .wang-title-sub,
  .hanzi-page .hanzi-title-sub {
    min-width:0;
    font-size:clamp(22px,6vw,26px);
    text-wrap:wrap;
  }
  .wang-page .wang-section-heading h2,
  .hanzi-page .hanzi-section-heading h2,
  .wang-page .wang-take-home h2,
  .hanzi-page .hanzi-take-home h2 {
    font-size:28px;
    line-height:1.55;
  }
  .wang-page .wang-meaning h3,
  .hanzi-page .hanzi-meaning h3,
  .wang-page .wang-origin-part h3,
  .hanzi-page .hanzi-origin-part h3,
  .wang-page .wang-compare h3 { font-size:25px; }
  .wang-page .wang-meaning p { max-width:100%; }
  .wang-page .wang-meaning-mark { top:0; opacity:.25; }

  .wang-page .wang-facts,
  .hanzi-page .hanzi-facts { width:100%; }
  .wang-page .wang-facts>span,
  .hanzi-page .hanzi-facts>span {
    flex:1 1 0;
    min-width:0;
    padding-inline:12px;
  }
  .wang-page .wang-facts>span:first-child,
  .hanzi-page .hanzi-facts>span:first-child { padding-left:0; }
  .wang-page .wang-facts>span:last-child,
  .hanzi-page .hanzi-facts>span:last-child { padding-right:0; }
  .wang-page .wang-facts small,
  .hanzi-page .hanzi-facts small { font-size:16px; }
  .wang-page .wang-facts b,
  .hanzi-page .hanzi-facts b { font-size:21px; }
  .wang-page .wang-facts>span:last-child b,
  .hanzi-page .hanzi-facts>span:last-child b { font-size:19px; }

  .wang-page .wang-hero-actions,
  .hanzi-page .hanzi-hero-actions { flex-wrap:wrap; gap:10px 18px; }
  .wang-page .wang-button,
  .hanzi-page .hanzi-button,
  .wang-page .wang-button-text,
  .hanzi-page .hanzi-button-text,
  .wang-page .wang-sound,
  .hanzi-page .hanzi-sound,
  .wang-page .zs-stroke-controls button,
  .hanzi-page .zs-stroke-controls button {
    font-size:18px!important;
    line-height:1.55;
    min-height:48px;
  }
  .wang-page .wang-chapters,
  .hanzi-page .hanzi-chapters { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 16px; }
  .wang-page .wang-chapters a,
  .hanzi-page .hanzi-chapters a { font-size:18px; min-height:48px; gap:9px; }

  .wang-page .zs-stroke-controls,
  .hanzi-page .zs-stroke-controls {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:340px;
    gap:10px;
  }
  .wang-page .zs-stroke-controls button,
  .hanzi-page .zs-stroke-controls button { padding:10px 6px; }
  .wang-page .zs-stroke-status,
  .hanzi-page .zs-stroke-status {
    font-size:17px;
    line-height:1.8;
    block-size:176px;
    min-block-size:176px;
    max-block-size:176px;
    padding-top:14px;
    overflow:auto;
    overflow-wrap:anywhere;
  }
  .wang-page .wang-memory { display:block; }
  .wang-page .wang-memory>span { display:block; margin-bottom:8px; }
  .wang-page .wang-stroke-list li {
    grid-template-columns:28px minmax(0,1fr);
    gap:4px 12px;
    align-items:baseline;
    padding:15px 0;
  }
  .wang-page .wang-stroke-list li>span { font-size:15px; }
  .wang-page .wang-stroke-list strong { font-size:23px; }
  .wang-page .wang-stroke-list p { grid-column:2; }
  .wang-page .peng-stroke-list,
  .hanzi-page .hanzi-stroke-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .wang-page .peng-stroke-list li,
  .hanzi-page .hanzi-stroke-list li { min-width:0; padding:12px 10px; gap:9px; align-items:baseline; }
  .wang-page .peng-stroke-list li>span,
  .hanzi-page .hanzi-stroke-list li>span { font-size:15px; flex:none; }
  .wang-page .peng-stroke-list strong,
  .hanzi-page .hanzi-stroke-list strong { font-size:22px; white-space:normal; overflow-wrap:anywhere; }
  .wang-page .peng-writing-caption { flex-wrap:wrap; }

  .wang-page .wang-words>div,
  .hanzi-page .hanzi-words>div { display:block; padding:20px; }
  .wang-page .wang-words h3,
  .hanzi-page .hanzi-words h3 { font-size:32px; margin:5px 0 12px; }
  .wang-page .wang-origin-takeaway { align-items:flex-start; gap:12px; padding:16px; }
  .wang-page .wang-origin-takeaway>span { flex:none; }

  .wang-page .wang-quiz legend,
  .hanzi-page .hanzi-quiz legend { font-size:19px; line-height:1.8; }
  .wang-page .wang-quiz legend>span,
  .hanzi-page .hanzi-quiz legend>span { font-size:16px; margin-right:10px; }
  .wang-page .wang-options,
  .hanzi-page .hanzi-options { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
  .wang-page .wang-options label,
  .hanzi-page .hanzi-options label {
    min-width:0;
    min-height:48px;
    padding:12px;
    justify-content:flex-start;
    gap:10px;
    font-size:19px;
    line-height:1.85;
  }
  .wang-page .wang-options input,
  .hanzi-page .hanzi-options input { width:19px; height:19px; flex:none; }
  .wang-page .wang-question-feedback,
  .hanzi-page .hanzi-question-feedback,
  .wang-page .wang-quiz-actions [data-quiz-result],
  .hanzi-page .hanzi-quiz-actions [data-quiz-result] { font-size:17px; line-height:1.8; }
  .wang-page .wang-page-end,
  .hanzi-page .hanzi-page-end { font-size:16px; }
}
