/* 全局字号放大覆盖层 —— 需求方 2026-08-13：「客户都 40-50 岁了」，今晚做放大测试。
 *
 * 🔴 **本文件是覆盖层，`mobile.css` 一个字节都没动**（verify-ui 的 md5 断言照常 PASS）。
 *    回退 = 删掉 layout.tsx 里那一行 <link>，一处改动、零残留。
 *
 * 🔴 **分档按语义，不按字号** —— 这条是实测纠正来的：
 *    原以为"7–9px 是徽章角标等装饰"，实查 163 处 font-size 后发现
 *    **8–10px 共 102 处，其中绝大多数是正文**（.q-topic/.q-meta/.section-head p/
 *    .end-note p/.answer-tile>p/.privacy-note/.toast …）。
 *    ⇒ 若"7–9px 一律不动"，等于 73% 的文字原样留着，而那正是要给 40-50 岁看清的部分。
 *
 * 倍数：6–10px ×1.35 ／ 11–13px ×1.25 ／ 15–19px ×1.15 ／ 20–29px ×1.10 ／ 42px 不动
 *
 * ⚠️ **固定尺寸容器内的字一律不动**（width 与 height 同时写死的 39 个选择器，
 *    如 .company-mark 34×34、.avatar-stack span 28×28、.partner-chip i）——
 *    **放大必撑破容器**，那就是需求方说的"变形"。
 *
 * ⚠️ **本文件不动 line-height，一处都不动** —— 这是查证后撤掉的：
 *    `mobile.css` 里 40 处 `line-height` **全部是无单位倍数**（1.04–1.75），
 *    **无单位行高本来就随 font-size 等比缩放** ⇒ 字号 ×1.35，行距自动 ×1.35。
 *    初版我按"字放大了行距也要放"补了 ×1.06，**那是多余的，而且等于引入一个
 *    原型没有的视觉决策**（行距比例被我悄悄改宽了）。**撤掉。**
 *    ⚠️ 若将来有人在 mobile.css 里写了 `line-height: Npx`（绝对值），这条前提就失效，
 *    那时字号放大会真的挤在一起 —— **改行高单位的人要回来看这一段。**
 *
 * 🔴 **例外表（4 条，倍数被单独调低）—— 线上实撞后加的，不是随手改的**：
 *   需求方同事 2026-08-13 实测：首页「看看同行怎么解」按钮文字换成两行，挤在 42px 高的按钮里。
 *   根因：**这几处是「固定高度容器 + 一行文字」**，字号一放大就换行，
 *   而**换行既不撑高（height 写死）也不溢出（scrollWidth 不超）** ⇒ 原来的两条判据全绿、视觉已坏。
 *   **取值来自实测的"天花板"，不是估算** —— 对每条规则下的【全部】元素逐个二分，
 *   取"仍是一行"的最大字号，再取其中最小值（⚠️ 第一版我用 querySelector 只量了第一个元素，
 *   而换行的是文案更长的那一个，差点定错值）：
 *              基线   320px天花板  360px天花板   本文件取值
 *     ① .q-actions button     10px    11px       13px       11px
 *     ② .diagnosis-gift b     11px    11px       13px       11px（= 不放大）
 *     ③ .diagnosis-gift small  7px     7px        8px        7px（= 不放大）
 *     ④ .member-benefits li    8px     9px       10px        9px
 *   🔴 **取 320px 的天花板，不取 360px 的** —— 320 是最窄的常见屏（iPhone SE 一代），
 *   取 360 会让 320 用户继续看到换行，**而那正是这次报上来的现象**。
 *   ⚠️ **代价要说明白：②③ 实际等于没放大** —— 这两处的文案在 320px 下本来就顶满，
 *   **一个像素的余量都没有**。想让它们也变大，只能改文案或改容器（撞铁律一，需授权）。
 *   **只降这 4 条，其余 128 条不动** —— 整体降会让没问题的 128 处白白变小，
 *   而需求方要的正是"看得清"。
 *   ⚠️ **这是治标**：只要"固定高度 + 可变字号"这个组合还在，换文案、换系统字体、
 *   或再放大一次，同样的位置会再犯。**根治要改容器高度（撞铁律一，需授权）。已记案。**
 *   ⚠️ **还有一维我们没有判据也没有验证通道：用户调大了系统字体**
 *   （那位同事的真实成因很可能就是它）——它不在 320/360/375 任何一个断点里。
 *
 * 本文件由 mobile.css 机械推导，共 132 条；未覆盖 31 条（固定容器 / 已足够大）。
 * **重出时记得把上面 4 条例外重新应用** —— 它们不是推导结果，是实测修正。
 * 生成日期 2026-08-13。**改倍数请改生成规则后整体重出，别手改单条** ——
 * 手改会让"本文件是 mobile.css 的机械投影"这个前提失效。
 */

.brand b{font-size:15px}  /* 12→15 */
.brand small{font-size:11px}  /* 8→11 */
.anniversary{font-size:11px}  /* 8→11 */
.eyebrow{font-size:12px}  /* 9→12 */
.hero>p{font-size:15px}  /* 12→15 */
.hero-qr span{font-size:11px}  /* 8→11 */
.hero-mini p{font-size:12px}  /* 9→12 */
.progress-card span{font-size:12px}  /* 9→12 */
.progress-card b{font-size:14px}  /* 10→14 */
.progress-foot{font-size:11px}  /* 8→11 */
.section-head p{font-size:11px}  /* 8→11 */
.section-head h2{font-size:25px}  /* 23→25 */
.section-head>span{font-size:12px}  /* 9→12 */
.mode-tabs button{font-size:12px}  /* 9→12 */
.partner-chip{font-size:12px}  /* 9→12 */
.company small{font-size:9px}  /* 7→9 */
.company b{font-size:14px}  /* 11→14 */
.q-topic{font-size:11px}  /* 8→11 */
.question-card h3{font-size:28px}  /* 25→28 */
.question-card>p{font-size:14px}  /* 10→14 */
.q-meta{font-size:11px}  /* 8→11 */
.q-actions button{font-size:11px}  /* 10→11（例外①：320px 天花板 11px，实测；见头部例外表） */
.change-row span{font-size:12px}  /* 9→12 */
.swipe-tip{font-size:11px}  /* 8→11 */
.join-item b{font-size:15px}  /* 12→15 */
.join-item small{font-size:12px}  /* 9→12 */
.product-card h3{font-size:23px}  /* 21→23 */
.product-card>p{font-size:12px}  /* 9→12 */
.answer-demo span{font-size:9px}  /* 7→9 */
.answer-demo p{font-size:12px}  /* 9→12 */
.todo-demo div{font-size:11px}  /* 8→11 */
.benefit b{font-size:14px}  /* 10→14 */
.benefit small{font-size:11px}  /* 8→11 */
.participate-card small{font-size:11px}  /* 8→11 */
.participate-card h2{font-size:26px}  /* 24→26 */
.participate-card>p{font-size:12px}  /* 9→12 */
.participate-actions button{font-size:12px}  /* 9→12 */
.launch-card>small{font-size:11px}  /* 8→11 */
.launch-card h2{font-size:26px}  /* 24→26 */
.launch-card>p{font-size:12px}  /* 9→12 */
.launch-feature b{font-size:12px}  /* 9→12 */
.launch-feature small{font-size:9px}  /* 7→9 */
.diagnosis-gift b{font-size:11px}  /* 11→11 = 不放大（例外②：320px 天花板就是 11px，一点余量都没有） */
.diagnosis-gift small{font-size:7px}  /* 7→7 = 不放大（例外③：320px 天花板 7px） */
.member-benefits-title{font-size:12px}  /* 9→12 */
.member-benefits li{font-size:9px}  /* 8→9（例外④：320px 天花板 9px） */
.launch-cta{font-size:14px}  /* 10→14 */
.report-teaser .kicker{font-size:11px}  /* 8→11 */
.report-teaser h2{font-size:24px}  /* 22→24 */
.brief-head{font-size:12px}  /* 9→12 */
.risk-tag{font-size:9px}  /* 7→9 */
.brief-row p{font-size:12px}  /* 9→12 */
.brief-row small{font-size:9px}  /* 7→9 */
.report-teaser button{font-size:14px}  /* 10→14 */
.end-note p{font-size:11px}  /* 8→11 */
.end-note h3{font-size:22px}  /* 20→22 */
.bottom-nav button{font-size:12px}  /* 9→12 */
.sheet-company small{font-size:11px}  /* 8→11 */
.sheet-company b{font-size:16px}  /* 13→16 */
.sheet h2{font-size:28px}  /* 25→28 */
.sheet-context{font-size:14px}  /* 10→14 */
.answer-feed-head b{font-size:15px}  /* 12→15 */
.answer-feed-head span{font-size:11px}  /* 8→11 */
.answer-author b{font-size:11px}  /* 8→11 */
.answer-author small{font-size:8px}  /* 6→8 */
.answer-tag{font-size:8px}  /* 6→8 */
.answer-tile>p{font-size:11px}  /* 8→11 */
.answer-result{font-size:9px}  /* 7→9 */
.answer-foot{font-size:9px}  /* 7→9 */
.answer-foot button{font-size:8px}  /* 6→8 */
.load-more-answers{font-size:11px}  /* 8→11 */
.sheet-primary{font-size:14px}  /* 11→14 */
.flow-head b{font-size:15px}  /* 12→15 */
.flow-step>small{font-size:11px}  /* 8→11 */
.flow-step h1{font-size:31px}  /* 28→31 */
.flow-step>p{font-size:14px}  /* 10→14 */
.field>span{font-size:14px}  /* 10→14 */
.pills span{font-size:12px}  /* 9→12 */
.flow-question small{font-size:11px}  /* 8→11 */
.flow-question h3{font-size:21px}  /* 18→21 */
.voice-panel>small{font-size:11px}  /* 8→11 */
.voice{font-size:14px}  /* 10→14 */
.or-line{font-size:11px}  /* 8→11 */
.upload b{font-size:14px}  /* 11→14 */
.upload small{font-size:11px}  /* 8→11 */
.sample{font-size:11px}  /* 8→11 */
.member-head b{font-size:15px}  /* 12→15 */
.member-head small{font-size:11px}  /* 8→11 */
.phone-auth b{font-size:12px}  /* 9→12 */
.phone-auth small{font-size:11px}  /* 8→11 */
.phone-auth button{font-size:11px}  /* 8→11 */
.optional-title{font-size:11px}  /* 8→11 */
.privacy-note{font-size:11px}  /* 8→11 */
.anonymous-confirm h2{font-size:25px}  /* 23→25 */
.anonymous-confirm>p{font-size:14px}  /* 10→14 */
.anonymous-effects b{font-size:12px}  /* 9→12 */
.anonymous-effects small{font-size:9px}  /* 7→9 */
.complete-profile-btn{font-size:12px}  /* 9→12 */
.anonymous-member-note b{font-size:14px}  /* 10→14 */
.anonymous-member-note small{font-size:11px}  /* 8→11 */
.group-head small{font-size:11px}  /* 8→11 */
.group-head b{font-size:22px}  /* 19→22 */
.group-benefits span{font-size:9px}  /* 7→9 */
.group-btn{font-size:12px}  /* 9→12 */
.group-tip{font-size:9px}  /* 7→9 */
.flow-cta button{font-size:14px}  /* 11→14 */
.result-hero small{font-size:11px}  /* 8→11 */
.result-hero h1{font-size:32px}  /* 29→32 */
.result-hero p{font-size:14px}  /* 10→14 */
.result-card h3{font-size:22px}  /* 19→22 */
.ai-row b{font-size:14px}  /* 10→14 */
.ai-row small{font-size:11px}  /* 8→11 */
.share-card>small{font-size:11px}  /* 8→11 */
.share-card h3{font-size:24px}  /* 22→24 */
.share-card p{font-size:12px}  /* 9→12 */
.share-card-foot b{font-size:12px}  /* 9→12 */
.status-box h3{font-size:15px}  /* 12→15 */
.status-line b{font-size:12px}  /* 9→12 */
.status-line small{font-size:11px}  /* 8→11 */
.notice-box b{font-size:12px}  /* 9→12 */
.notice-box small{font-size:11px}  /* 8→11 */
.candidate-box>small{font-size:11px}  /* 8→11 */
.candidate-box h3{font-size:22px}  /* 19→22 */
.candidate-box p{font-size:12px}  /* 9→12 */
.candidate-points span{font-size:11px}  /* 8→11 */
.diagnosis-earned b{font-size:14px}  /* 10→14 */
.diagnosis-earned small{font-size:11px}  /* 8→11 */
.invite-note strong{font-size:21px}  /* 18→21 */
.invite-note p{font-size:12px}  /* 9→12 */
.todo-row b{font-size:14px}  /* 10→14 */
.todo-row small{font-size:11px}  /* 8→11 */
.toast{font-size:12px}  /* 9→12 */
