/* =============================================================================
   NOMISMA — 文字サイズの規定（2026-09-04）
   オーナー指摘「60 代の人も多く見るので文字サイズがこれで本当に良いのか」「要点や要約はもっと大きくてわかりやすく」

   実測（pc-audit/fontsize.tsv・21 頁・PC 1440 と SP 390）:
     学校の面と入口の土台は 15px。教本の本文は PC 17px・SP 16px。しかし
     - 用語集の一覧は 12.6px が文字の 84%、実物の一覧は 12px が 43%、史料室の表は 14px が 70%
     - 学びの画面（科目・実物・用語・航路の一覧）は 10〜11px の文字が 3〜6 割（符号・出典・数）
     - 教本の「ここまでの要点」「この章を 3 行で」「この一冊を 3 分で」は本文より小さい 14〜14.5px、
       その見出し（要点・3 行で）は 11〜12px。演習帳の本文は 12.5px、図の説明と典拠は 11.5〜12px
   根拠:
     - デジタル庁デザインシステム: 本文・UI は 16 CSS px 以上、14px 未満は原則許容しない、行高は 1.5 倍以上、
       行長は全角 40 字程度（https://design.digital.go.jp/dads/foundations/typography/）
     - JIS S 0032:2003（高齢者・障害者配慮設計指針 — 日本語文字の最小可読文字サイズ推定方法）:
       年齢・視距離・輝度・視力から最小可読サイズを推定。講義資料の例示は「普通の明るさの事務所で 50cm、64 歳なら 14 ポイント」
       （14pt ≒ 18.7 CSS px。最小可読であって快適な大きさではない）
     - WCAG 2.1 SC 1.4.4: 最小サイズは定めず、200% 拡大で欠けないことを求める（相対単位・折り返しで満たす）
   規定:
     ① どの文字も 14px 以上（ラベル・注記・出典・表・符号を含む）
     ② 本文と UI は 16px 以上。読む本文（教本・科目・停）と要点・要約は PC（1024px 以上）で 18px
     ③ 行高は 1.5 倍以上（本文は 1.8〜2.0）。行長は 40 字前後（layout-pc.css の 46rem）
     ④ 拡大に耐える: px の固定幅で文字を閉じ込めない（折り返し）。教本の紙の列は 46rem で相対
   ⚠ 色は変えない（対比の門は既に通っている）。ここは大きさと行高だけ。
   ⚠ この一枚は theme-dark.css・layout-pc.css・style.css より後に読む（後勝ちで上書き）。詳細度は html … で揃える
   ========================================================================== */

/* ── 1. 土台: 学校の面（.ac）と入口 ── */
html .ac, html body .ac { font-size: 16px; line-height: 1.7; }
@media (min-width: 1024px) { html .ac, html body .ac { font-size: 17px; } }
html .ac-lede { font-size: 17px; line-height: 1.8; }
@media (min-width: 1024px) { html .ac-lede { font-size: 18px; } }
html .ac-body { font-size: 18px; line-height: 1.8; }
html .ac-card-desc, html .ac-course .ac-card-desc { font-size: 16px; line-height: 1.75; }
html .ac-small, html .ac-note, html .ac-src-note, html .ac-num-src, html .ac-num-src span, html .ac-num-src a,
html .ac-foot a, html .ac-foot-brand p, html .ac-foot-bottom, html .ac-inside-card small, html .ac-inside-coin small,
html .ac-one-fig small, html .ac-adm-price span, html .ac-stat-l, html .ac-gain-out, html .ac-chip small,
html .ac-card-foot, html .ac-course-n, html .ac-book-meta, html .ac-axismap small, html .ac-axis > h2 > small,
html .ac-spec small, html .ac-ledger-sub, html .ac-ledger th, html .ac-src-dl dt, html .ac-src-hash, html .ac-crumb,
html .ac-menu-panel small, html .ac-head-top-in .nav-state, html .lang-sel { font-size: 14px; line-height: 1.6; }
html .ac-label, html .ac-inside-k, html .ac-inside-link, html .ac-btn, html .ac-head-top .ac-head-cta,
html .ac-head-top-in a.ac-head-cta, html .ac-trust-log .ac-label, html .ac-in-langs .ac-label { font-size: 14px; }
html .ac-one-a, html .ac-drill-q, html .ac-drill-choices, html .ac-fit-list li, html .ac-howline span,
html .ac-ledger, html .ac-src-dl, html .ac-src-claims, html .ac-axismap b, html .ac-spec b,
html .ac-card-meta, html .ac-course .ac-card-meta, html .ac-book .ac-card-meta { font-size: 16px; }
html .ac-nav a, html .ac-drop > summary, html .ac-head-top-in a { font-size: 15px; }
html .ac-foot li { margin-bottom: 14px; }

/* ── 2. 索引と本文の頁（.yo）。読む本文は 17〜18px、添えの行は 14〜15px ── */
html .yo { font-size: 16px; line-height: 1.8; }
@media (min-width: 1024px) { html .yo { font-size: 17px; } }
html .yo-lede { font-size: 1.15em; line-height: 1.9; }
html .yo h2 { font-size: 14px; letter-spacing: .16em; }
html .yo-yomi, html .yo-crumb, html .yo-back, html .yo-alias, html .yo-idx small, html .yo-fig figcaption,
html .yo-fig.coins b, html .yo-fig.coins i, html .ac-cross small, html .jt-lbl, html .jt-pos, html .yo small,
html .yo-side, html .yo-side .yo-tags a, html .ac-src-link { font-size: 15px; }
html .yo-idx small { font-size: 16px; }
html .yo-tags a, html .ac-cross a, html .yo-table { font-size: 16px; }
html .yo-side { line-height: 1.7; }
html .yo-side h2 { font-size: 14px; }
html .yo-side > .yo-back:first-child { font-size: 15px; }
html .yo-take { display: block; font-size: 16px; color: var(--ink-mid); margin: 2px 0 8px; }
html .ac-books .ac-book-sub { font-size: 16px; }

/* ── 3. 学びの画面（style.css の rem 指定を 14px の床で受ける）── */
html .code, html .coin-meta, html .before, html .fig-src, html .src, html .gl-where, html .gl-more,
html .course-meta, html .card .s, html .summary-note, html .rail-lab, html .lesson-no, html .fig-no,
html .rating-q, html .drill label, html button.small, html .msg, html .chip, html .takeaway b, html .path-lab { font-size: 14px; }
html .rail a { font-size: 14.5px; line-height: 1.55; }
html .rail-sub a { font-size: 14px; }
html .card .t { font-size: 17px; }
html .lesson p, html .body p, html .deck, html .drill .q, html .textbook p { font-size: 17px; line-height: 1.9; }
@media (min-width: 1024px) { html .lesson p, html .body p, html .deck, html .drill .q, html .textbook p { font-size: 18px; } }
/* 要点（takeaway）と章末のまとめ（summary）は本文と同じ大きさ、見出しは一段大きく */
html .takeaway { font-size: 17px; line-height: 1.9; padding: 14px 18px; }
@media (min-width: 1024px) { html .takeaway { font-size: 18px; } }
html .takeaway b { font-size: 14px; letter-spacing: .12em; }
html .summary-lab { font-size: 19px; }
html .summary-list li { font-size: 17px; line-height: 1.9; }
@media (min-width: 1024px) { html .summary-list li { font-size: 18px; } }
html .summary-list li a { font-size: 14px; }
html .summary-note { font-size: 15px; }

/* ── 4. 再計測で残った 14px 未満の部品（2026-09-04・pc-audit の実測から選択子で特定）── */
/* 学びの画面の札（科目・実物・航路）・脚部・タグ */
html .cards.plates .card .s, html .cards .card .s { font-size: 15px; line-height: 1.6; }
html .card .meta span, html .entry .meta span, html .card .code, html .cards.plates .code, html .code i.field,
html .foot span, html .foot-legal a, html .axis-head .count, html p.course-meta a.more, html a.more,
html .tag, html .tag.tag-gold, html .entry-mark, html .route-parts .tag-dim, html .kt-meta, html .filters .flab,
html .gl-item dt span, html .gl-alias, html button.btn.ghost, html .gl-count, html .drill .src, html a.watch-link,
html p.fig-read b, html .rc-row a.more, html .route-act a.more { font-size: 14px; }
html .entry-text em, html .readings .why, html figcaption.fig-cap, html .part-t i, html .route-kind h2 small,
html .route-kind p.sub { font-size: 15px; line-height: 1.7; }
/* 入口と学校の面 */
html .ac-gain-route a, html .ac-foot-sub, html .ac-stats .ac-stat-l, html .ac-sec--navy .ac-stat-l, html .ac-foot h2 /* 2026-09-08: フッターの列見出しを h4→h2 にした（見出しの階層の飛びを直すため）。ここが追随しないと 14px の床から外れる */,
html .ac-lang > summary span, html .ac-inside-coin b, html .ac-one-k em { font-size: 14px; }

/* ── 2026-09-04 マイページ（#/me）の実測で 14px 未満だった学びの画面の共通部品 ──
   .note 13.76 / .btn・button 12.8 / .stages .stage 13.76 / .stages .stage b 10.56 / .card .code 10.56。
   裁定「どの文字も 14px 以上」（09-04）。部品は全画面共通なので、ここで一括して底上げする */
html .note, html .stages .stage { font-size: 15px; line-height: 1.7; }
html .btn, html button, html .btn.ghost { font-size: 14px; }
html .stages .stage b, html .card .code { font-size: 14px; }

/* 2026-09-05 実測: 入口の脚の一文（.ac-foot-sub）が 13px だった。どの文字も 14px 以上（09-04 裁定） */
html .ac-foot-brand p.ac-foot-sub { font-size: 14px; }   /* academic.css の .ac-foot-brand p.ac-foot-sub（13px）より詳細度を上げる */

/* ── 2026-09-05 配信面の全数測定（tools/check_typescale.mjs・PC 1280 と SP 390・108 面）で 14px 未満だったもの ──
   裁定「どの文字も 14px 以上（ラベル・注記・出典・表・符号を含む）」（09-04）。CSS を読む検査では見つからず、描画して測った。
   学びの画面（SPA）: 目次の現在地 11.84 / 課程の札 10.88 / 科目札の分野 11.84 / 帯の件数 11 / 用語の種別釦 13.12 /
   航路の種別の添え書き 9.92 / 入学の段 13.44 / 入学の値札 12.48 / ログインの欄名 11.84 / 教本一覧の「全文無料」12 / 教員の名の読み 12 */
html .toc-btn .toc-now, html .course-meta .lvl, html .card-text .code .field, html .card .code .field, html .ac-tabs a span,
html .gl-tabs button, html .kind-tab .kt-meta, html .enroll-steps li, html .enroll-steps li span, html .lp-offer .lp-price,
html .wrap form label, html .ac-tag-free, html .ac-card-in .ac-h3 span { font-size: 14px !important; }
/* 教本（.tb）: 章の札 12 / 「次の章へ」「まず、見る」「手の中の確認」10.5〜11 / 課題の札 13 / 正解の札 12 / 四つの器 13.5 /
   図録の札 13.5・12.5 / 停の場所 12 / 史料の札 13 / 表 13 / 図の要点 13 / 状況 13 / 節の札 13 / 表紙の札 11〜12。
   各冊の style は本文の後に読み込まれ `.tb .tsushi-open .label` のように詳細度が高い（0,3,0）。床なので !important で勝つ（2026-09-05 実測: html 前置だけでは負けた） */
html .tb .label, html .tb .lbl, html .tb .labelbox p, html .tb .hand b, html .tb .look b, html .tb .next b, html .tb .seen b,
html .tb .ex-head b, html .tb .answer .label, html .tb .four dt, html .tb .four dd, html .tb .plate-meta, html .tb .plate-none,
html .tb .stwhere, html .tb .srcmeta, html .tb .srcmeta a, html .tb table.data, html .tb table.data td, html .tb table.data th,
html .tb table.data a, html .tb .figpoint, html .tb .status, html .tb .csTry, html .tb h2.secH, html .tb .chapNo,
html .tb .cover .school, html .tb .cover .course, html .tb .cover .coincap, html .tb .cover .ed, html .tb .bigq .label { font-size: 14px !important; }
/* 図（SVG）の文字の床: server/lib/svgfloor.js と figures.js が「最小の文字が 14px になる幅」を min-width に付ける。
   容器は横送り（PC の本文欄より狭いので PC では変わらない。SP で図が 5〜7px に縮んでいた・2026-09-05 実測） */
html .tb figure, html .fig-box, html .cs-fig { overflow-x: auto; }
html .tb figure svg, html .cs-chart svg { width: 100%; height: auto; display: block; }
/* 2026-09-05 学びの画面の残り: 朗読の釦 .listen 0.64rem（10.24px）・「ここから、手を動かす」.half-break span 0.68rem */
html .read-act .listen, html .listen, html .half-break span { font-size: 14px !important; }

/* ── 2026-09-05 LP のセールス分析 §12-3〜5（撮って測った: PC 1280・SP 390）──
   到達文（.ac-gain-out・金色の一文）と現代の一行（.ac-gain-modern）は「要点」— 上の説明 16px より小さい 14px だった → 18px。
   釦（.ac-btn）と検定への一文（.ac-note-link）は UI/本文 → 16px。入学の値札の添え（税込・買い切り）・内訳の表・FAQ の答えは本文 → 16px */
html .ac-gain-out, html .ac-gain-modern { font-size: 18px; line-height: 1.75; }
html .ac-btn, html .ac-note-link, html .ac-adm-price span, html .ac-adm-dl dt, html .ac-adm-dl dd, html .ac-faq--dark p, html .ac-faq p,
html .ac-adm-main a { font-size: 16px; }
/* 頭部の入学案内の釦（.ac-head-cta）も釦 → 16px（目次に畳んだ言語でも残る唯一の釦） */
html .ac-head-top .ac-head-cta, html .ac-head-top-in a.ac-head-cta { font-size: 16px; }
/* 2026-09-06 実測（check:typescale・118 面）: 事件簿の一覧の添え（.cs-meta 12.5px・事件 9 件を公開して初めて出た）と、科目の参考文献の注（.ref-list small 13.3px・本番から取り込んだ欄）。床は 14px */
html .cs-list .cs-meta, html .ref-list small { font-size: 14px; }
/* 橋・読む順（2026-09-06）: 段の名 16px 以上・番号 22px */
body .ac-bridge span, body .ac-paths ol { font-size: max(16px, 1em) !important; }
