/* Original fonts, colors, positions, proportions and rounded cards remain in app.css.
   This layer retains only the agreed information-page type scale. */
html[data-design="editorial"]:root { --ds-body:17px; --ds-leading:1.85; }
html[data-design="editorial"]:root body[data-page-family] { --fs-prose:var(--ds-body); --lh-prose:var(--ds-leading); }
html[data-design="editorial"]:root body[data-page-family="collection"] .section-head > h2,
html[data-design="editorial"]:root body[data-page-family="catalog"] .section-head > h2,
html[data-design="editorial"]:root body[data-page-family] .topic-index-header h1 { font-size:34px; line-height:1.45; }
html[data-design="editorial"]:root body[data-page-family] :is(.card-title,.trial-title,.news-title) { font-size:19px!important; line-height:1.6; }
html[data-design="editorial"]:root body[data-page-family] :is(.card-meta,.trial-meta,.news-meta,.title-en,.brief-issue-meta) { font-size:13px!important; line-height:1.7; }
html[data-design="editorial"]:root body[data-page-family="collection"] :is(.summary,.card-highlight,.card-summary,.news-sum) { font-size:15px!important; line-height:1.8!important; }
html[data-design="editorial"]:root body[data-page-family="catalog"] :is(.modality-catalog-summary,.topic-index-intro) { font-size:16px!important; line-height:1.85; }
html[data-design="editorial"]:root body[data-page-family="reading"] :is(.detail-title,.topic-article-header h1,.brief-hero h1) { font-size:30px!important; line-height:1.5!important; }
html[data-design="editorial"]:root body[data-page-family="reading"] :is(.summary,.paper-section p,.topic-prose-section p,.topic-lead,.ai-answer p,.qa-answer p,.news-sum,.news-facts,.news-why) { font-size:var(--ds-body)!important; line-height:var(--ds-leading)!important; letter-spacing:normal!important; text-justify:inter-character; }
html[data-design="editorial"]:root body[data-page-family="reading"] :is(.summary.en,.paper-section p.en) { text-align:left; font-size:15px!important; }
html[data-design="editorial"]:root body[data-page-family] .detail-main > h3 { font-size:19px; }
html[data-design="editorial"]:root body[data-page-family] .topic-prose-section h2 { font-size:21px!important; }
/* The hotspot introduction has its own surface: give text breathing room. */
html[data-design="editorial"]:root body[data-page-family] .brief-page .brief-hero { padding:24px 28px; border-radius:var(--radius); }
@media(max-width:720px) {
 html[data-design="editorial"]:root { --ds-body:16px; }
 html[data-design="editorial"]:root body[data-page-family] :is(.section-head h2,.topic-index-header h1) { font-size:26px!important; }
 html[data-design="editorial"]:root body[data-page-family="reading"] :is(.detail-title,.topic-article-header h1,.brief-hero h1) { font-size:24px!important; line-height:1.6!important; }
 html[data-design="editorial"]:root body[data-page-family] :is(.card-title,.trial-title,.news-title) { font-size:18px!important; }
 html[data-design="editorial"]:root body[data-page-family] :is(.summary,.topic-prose-section p,.news-sum) { text-justify:inter-character!important; letter-spacing:normal!important; }
 html[data-design="editorial"]:root body[data-page-family] .brief-page .brief-hero { padding:20px; }
 /* 移动端卡片层次（用户 2026-10-01：「论文页面字号层次分布不合理」）：
    列表卡片里的摘要（`.card-highlight`）原来是 15px，比它上面的英文原题 / 元信息
    （13px）**还大**，一张卡里字号上小下大。移动端收拢成摘要 14 / 那两行 13.5。
    ⚠️ 必须写在本文件、且带 !important：第 10 行那条 `15px!important` 与这里同特异性，
    而本文件在 app.css **之后**加载 —— 放进 app.css 是压不住的。 */
 html[data-design="editorial"]:root body[data-page-family="collection"] :is(.summary,.card-highlight,.card-summary,.news-sum) { font-size:14px!important; line-height:1.7!important; }
 html[data-design="editorial"]:root body[data-page-family] :is(.card-meta,.title-en) { font-size:13.5px!important; }
 /* 试验 / 论文**详情页**的「简要介绍」= `<p class="summary">`（reading 家族，
    第 13 行给的是 --ds-body = 16px / 1.85）。用户 2026-10-01：「移动端，试验里的
    简要介绍字号要小一号，目前大了」→ 16px 收到 15px；**当天又追一句**
    「移动端，简要介绍 正文的字号还可以调小一号」→ **再收到 14px**
    （与同页 `h3` 的 14px 齐平、仍高过正文里的 13.5px 列表项）。
    只改字号，行高沿用第 13 行那条 1.85；桌面端不动。
    ⚠️ 选择器必须写到 `p.summary.summary`（同名类写两遍，只是提特异性，匹配范围不变）：
    第 13 行用了 `:is(.summary,.paper-section p,…)`，而 `:is()` 取**参数里最具体的那个**
    （`.paper-section p` = 0,1,1）→ 那条是 (0,4,3)。写成 `.summary` (0,4,2) 或
    `p.summary` (0,4,3) **都压不住**（实测仍是 16px，同特异性下它先落地），
    `p.summary.summary` = (0,5,3) 才赢得下来。**别删掉任何一个 `.summary`。** */
 html[data-design="editorial"]:root body[data-page-family="reading"] p.summary.summary { font-size:14px!important; }
}

/* Desktop: reduce only text sizes introduced by this design layer. */
@media(min-width:1024px) {
 html[data-design="editorial"]:root { --ds-body:15px; }
 html[data-design="editorial"]:root body[data-page-family] :is(.section-head > h2,.topic-index-header h1) { font-size:32px!important; }
 html[data-design="editorial"]:root body[data-page-family] :is(.card-title,.trial-title,.news-title) { font-size:17px!important; }
 html[data-design="editorial"]:root body[data-page-family] :is(.card-meta,.trial-meta,.news-meta,.title-en,.brief-issue-meta) { font-size:12px!important; }
 html[data-design="editorial"]:root body[data-page-family="collection"] :is(.summary,.card-highlight,.card-summary,.news-sum) { font-size:14px!important; }
 html[data-design="editorial"]:root body[data-page-family="catalog"] :is(.modality-catalog-summary,.topic-index-intro) { font-size:14px!important; }
 html[data-design="editorial"]:root body[data-page-family="reading"] :is(.detail-title,.topic-article-header h1,.brief-hero h1) { font-size:28px!important; }
 html[data-design="editorial"]:root body[data-page-family="reading"] :is(.summary.en,.paper-section p.en) { font-size:14px!important; }
 html[data-design="editorial"]:root body[data-page-family] .topic-prose-section h2 { font-size:19px!important; }
 html[data-design="editorial"]:root body[data-page-family] .detail-main > h3 { font-size:17px; }
}



/* Disease and therapy directories share the evidence-list shell. */
html[data-design="editorial"]:root body.treatment-index .topic-index {
 max-width:none; margin:0 0 26px; padding:28px;
}
html[data-design="editorial"]:root body.treatment-index .topic-index-header {
 display:block; margin-bottom:16px;
}
html[data-design="editorial"]:root body.treatment-index .topic-index-header h1 {
 margin:0 0 12px; font-size:32px;
}
html[data-design="editorial"]:root body.treatment-index .topic-index-header .eyebrow { margin-top:0; }
html[data-design="editorial"]:root body.treatment-index .topic-index-label { padding-bottom:12px; }
html[data-design="editorial"]:root body.treatment-index .topic-reading-list li { padding:22px 0; }
html[data-design="editorial"]:root body:is(.catalog-index,.therapy-page) .section-head :is(h1,h2) {
 font-size:32px!important; line-height:1.45; margin-top:0;
}
@media(max-width:720px) {
 html[data-design="editorial"]:root body.treatment-index .topic-index { padding:18px!important; }
 html[data-design="editorial"]:root body.treatment-index .topic-index-header h1,
 html[data-design="editorial"]:root body:is(.catalog-index,.therapy-page) .section-head :is(h1,h2) { font-size:26px!important; }
}

/* Trial overview and eligibility use the same body scale. */
@media(min-width:1024px) {
 html[data-design="editorial"]:root body[data-page-family="reading"] .detail-main:has(.eligibility) .summary {
  font-size:var(--fs-elig)!important; line-height:var(--lh-prose)!important;
 }
}
html[data-design="editorial"]:root body.treatment-index section.topic-index { border-radius:var(--radius); }

/* Trial section headings are peers: introduction and eligibility match. */
html[data-design="editorial"]:root body[data-page-family="reading"] .detail-main:has(.trial-block) > h3,
html[data-design="editorial"]:root body[data-page-family="reading"] .detail-main .trial-block > h3 {
 font-size:14px!important; line-height:1.5;
}

/* Detail headings match the existing paper-information heading. */
html[data-design="editorial"]:root body[data-page-family="reading"] .detail-main > h3,
html[data-design="editorial"]:root body[data-page-family="reading"] .detail-main .trial-block > h3 {
 font-size:14px!important; line-height:1.5;
}
@media(min-width:1024px) {
 html[data-design="editorial"]:root body[data-page-family="reading"] .detail-main :is(.summary,.summary.en,.paper-section p,.paper-section p.en) {
  font-size:var(--fs-meta)!important; line-height:1.85!important;
 }
}

/* Long guideline and consensus detail titles: desktop 32 → 30px. */
@media(min-width:1024px) {
 html[data-design="editorial"]:root body[data-page-family="reading"]:has(.gd-fields) section.lv1 > .section-head > h2 {
  font-size:30px!important; line-height:1.45;
 }
}

/* All page families, both desktop and mobile: continuous prose aligns on both edges.
   Short labels and controls retain their own alignment; final lines never stretch. */
html[data-design="editorial"]:root body[data-page-family] :is(
 p:not(.eyebrow):not(.card-meta):not(.trial-meta):not(.news-meta):not(.title-en):not(.brief-issue-meta):not(.source):not(.count):not(.mh-hero-lead):not(.mh-colophon),
 .summary,.card-highlight,.card-summary,.news-sum,.news-facts,.news-why,
 .eligibility-list li,.eligibility,.elig-scroll,
 .gd-field dd,.gd-gap-finding,.gd-gap-action,
 .pd-line > div,.pd-warn-text,.pg-note,.pg-editor-note,.pg-industry-note,
 .reg-access-note,.reg-src-note,.intel-quote,.intel-note,.intel-synth-item,
 .invite-rules,.invite-foot,.pricing-note
) {
 text-align:justify!important;
 text-align-last:start!important;
 text-justify:inter-character!important;
 letter-spacing:normal!important;
}


/* Topic detail uses the same shell and reading grid as paper detail. */
html[data-design="editorial"]:root body.treatment-reading .topic-reading-shell {
 display:block; max-width:none; margin:0 0 18px; padding:26px; border-radius:var(--radius);
}
html[data-design="editorial"]:root body.treatment-reading .topic-article {
 max-width:none; margin:0; padding:0!important;
}
html[data-design="editorial"]:root body.treatment-reading .topic-article-header { margin:0 0 20px; padding:0; border:0; }
html[data-design="editorial"]:root body.treatment-reading .topic-article-header h1 { margin:0 0 12px; font-size:26px!important; line-height:1.45!important; }
html[data-design="editorial"]:root body.treatment-reading .topic-article-header .note {
 background:transparent!important; border:0!important; box-shadow:none!important; padding:0!important; font-size:var(--fs-meta);
}
html[data-design="editorial"]:root body.treatment-reading .topic-contents { position:sticky; top:100px; padding:16px; border:1px solid var(--hair); border-radius:var(--radius); background:var(--navy-3); }
html[data-design="editorial"]:root body.treatment-reading .topic-contents ol { border:0; padding:0; }
/* 小节标题不再单独压到 14px（2026-10-01）—— 那是"详情页小标题"的尺度，
   会让专题正文的小节标题比正文还小。这两页的正文基准现在由文件尾部的
   `--ds-body` 覆盖（桌面 13.5 / 移动 14），小节标题统一 16/17（见文件尾部）。 */
@media(min-width:1024px) {
 /* 桌面正文与导语 = 这两页的正文基准（--fs-prose = 13.5px，见文件尾部）。
    此前用的是 `--fs-meta`（12.5px）—— 正文和来源说明、参考条目同号，整页偏小。 */
 html[data-design="editorial"]:root body.treatment-reading :is(.topic-prose-section p,.topic-lead) { font-size:var(--fs-prose)!important; line-height:var(--lh-prose)!important; }
}
@media(max-width:760px) {
 html[data-design="editorial"]:root body.treatment-reading .topic-reading-shell { padding:18px!important; }
 html[data-design="editorial"]:root body.treatment-reading .topic-article-header h1 { font-size:24px!important; }
 html[data-design="editorial"]:root body.treatment-reading .topic-contents { display:none; }
}

/* Technology directory: name → definition → primary link → supporting metadata. */
html[data-design="editorial"]:root body.modality-index .modality-catalog { gap:20px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-card { padding:24px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-head h3 { font-size:20px; margin-bottom:7px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-head > p { color:var(--slate); font-size:12px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-summary { color:var(--slate); font-size:14px!important; line-height:1.85; margin:20px 0 24px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-focus > span,
html[data-design="editorial"]:root body.modality-index .modality-catalog-diseases > span { color:var(--slate); font-size:11px; opacity:.8; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-focus p { color:var(--slate); font-size:12px; margin:0 0 20px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-diseases a { background:transparent; border:0; padding:2px 0; color:var(--slate); font-size:12px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-diseases > div { gap:6px 14px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-foot { padding-top:18px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-foot strong { color:var(--slate); font-size:13px; font-weight:400; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-foot > a { font-size:13px; font-weight:500; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-evidence { margin-top:16px; font-size:12px; }
html[data-design="editorial"]:root body.modality-index .modality-catalog-card a:hover { color:var(--champagne-2); }
@media(max-width:720px) {
 html[data-design="editorial"]:root body.modality-index .modality-catalog-card { padding:20px; }
}

/* News and Q&A follow the same main-left / support-right reading order. */
@media(min-width:901px) {
 html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-page.with-side {
  display:grid; grid-template-columns:minmax(0,1fr) 268px; gap:30px;
 }
 html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-main { grid-column:1; grid-row:1; }
 html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-side { grid-column:2; grid-row:1; top:100px; min-width:0; }
}
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-side-day { color:var(--slate); font-size:16px; font-weight:500; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) :is(.brief-edition,.brief-method summary) { color:var(--slate); font-size:13px; line-height:1.8; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-edition { margin:8px 0; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-method { margin-top:12px; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) :is(.news-sum,.news-facts,.news-why,.ai-answer p,.qa-answer p) { color:var(--slate); font-size:14px!important; line-height:1.85!important; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .news-title { color:var(--white); font-size:17px!important; line-height:1.6; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .news-hotwhy-tag { border:0; padding:0; color:var(--slate); font-size:12px; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .news-hotwhy { font-size:12px; margin:8px 0 14px; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .board-head h2 { font-size:18px!important; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) :is(.board-tail,.brief-issue-meta) { color:var(--slate); font-size:12px!important; }
html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .news-card { padding:20px 0; }
@media(max-width:900px) {
 html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-page.with-side { display:flex; flex-direction:column; gap:20px; }
 html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-main { order:0; width:100%; }
 html[data-design="editorial"]:root body:is(.brief-body,.qa-body) .brief-side { order:1; width:100%; position:static; }
}

/* Technology cards sit one tonal step above their surrounding panel. */
/**
 * 🔴 2026-10-01 用户：「技术路线的卡片颜色太亮，调暗，可以参考网页背景色，颜色暗，层次分明。」
 *
 * 上一版是 `linear-gradient(145deg,#102638,#0d2030)` —— 顶端 #102638 比页面底色
 * （`--navy: #06111d`）亮了整整一档，整页看起来是一堆发蓝的亮块浮在黑底上。
 * 现在**以页面底色为锚**往下压：顶端只比底色亮一点点（#0a1b29，Δ≈+4/+10/+12），
 * 底端几乎落回底色（#081522，Δ≈+2/+5/+9）—— 卡片是"暗底上的一层薄台阶"，
 * 不再是"亮块"。
 *
 * 「层次分明」靠**边框 + 内侧 1px 高光 + 投影**给，不靠把底色提亮：
 * 底色负责分层，亮线负责勾边。三者一起才有"卡片"的形状感。
 */
html[data-design="editorial"]:root body.modality-index .modality-catalog-card {
 background:linear-gradient(155deg,#0a1b29 0%,#081522 100%);
 border-color:rgba(148,176,200,.13);
 box-shadow:0 12px 28px rgba(0,0,0,.26),inset 0 1px rgba(255,255,255,.028);
}
html[data-design="editorial"][data-theme="light"]:root body.modality-index .modality-catalog-card {
 background:linear-gradient(145deg,#ffffff 0%,#f4f8fb 100%);
 border-color:rgba(52,77,98,.14);
 box-shadow:0 6px 20px rgba(27,51,71,.05);
}

/* ==========================================================================
   定位页 `/positioning` 与细胞治疗专题（2026-10-01）：字号归位。
   用户选定「站内基准档」：正文回到 13px 上下（桌面 13.5 / 移动 14），
   只修「标题比正文小、note 比正文小」的层级毛病，整体不再放大。
   ========================================================================== */

/* 三页的正文基准 = 站内详情页那一档（桌面 13.5 / 移动 14）：
   通过覆盖 `--ds-body` 生效，`--fs-prose` 跟着变，页内所有正文段落一步到位。 */
html[data-design="editorial"]:root body:is(.positioning-page,.treatment-reading,.treatment-index) { --ds-body:13.5px; }
@media(max-width:720px) {
 html[data-design="editorial"]:root body:is(.positioning-page,.treatment-reading,.treatment-index) { --ds-body:14px; }
}

/* 定位页：note（首屏导语 + 卡内引导段）跟随正文基准（--fs-prose 现在就是 13.5/14）。
   外观（浅底 / 金线 / 卡内去壳）仍归 app.css。 */
html[data-design="editorial"]:root .positioning .note { font-size:var(--fs-prose); line-height:var(--lh-prose); }

/* 定位页首屏 h1：与阅读页标题同一尺度（30 / 桌面 28 / 移动 24）。
   站内 `.page-title` 移动端是 32px，比桌面那 30px 还大 —— 这一页此前正好是反的。 */
html[data-design="editorial"]:root body[data-page-family] .positioning .page-title { font-size:30px!important; line-height:1.5!important; }
@media(min-width:1024px) {
 html[data-design="editorial"]:root body[data-page-family] .positioning .page-title { font-size:28px!important; }
}
@media(max-width:720px) {
 html[data-design="editorial"]:root body[data-page-family] .positioning .page-title { font-size:24px!important; line-height:1.6!important; }
}

/* 定位页卡片里四条入口的小标题：15/16 —— 高于正文（13.5/14）、低于卡片标题（17/18）。 */
html[data-design="editorial"]:root .positioning .card .lv3 > .section-head > h3 { font-size:15px; line-height:1.5; }
@media(max-width:720px) {
 html[data-design="editorial"]:root .positioning .card .lv3 > .section-head > h3 { font-size:16px; }
}

/* 专题目录列表标题：17/18（站内卡片标题同一档，比正文大两档）。 */
html[data-design="editorial"]:root body.treatment-index .topic-reading-list li > a { font-size:17px!important; line-height:1.6; }
@media(max-width:720px) {
 html[data-design="editorial"]:root body.treatment-index .topic-reading-list li > a { font-size:18px!important; }
}
/* 专题说明：是正文，别让 app.css 那档 15px（桌面）把它放大。 */
html[data-design="editorial"]:root body.treatment-index .topic-reading-list li > p { font-size:13.5px!important; line-height:1.85; }
@media(max-width:720px) {
 html[data-design="editorial"]:root body.treatment-index .topic-reading-list li > p { font-size:14px!important; }
}
/* 专题目录导语：是正文不是板块标题，别再用 catalog 全站那档 16/14。 */
html[data-design="editorial"]:root body.treatment-index .topic-index-intro { font-size:13.5px!important; line-height:1.85!important; }
@media(max-width:720px) {
 html[data-design="editorial"]:root body.treatment-index .topic-index-intro { font-size:14px!important; }
}

/* 专题正文小节标题与页脚「继续查阅」：16/17 —— 高于正文（13.5/14），
   比全站默认的 19/21 小一档，标题不再是"比正文还小"的反例。 */
html[data-design="editorial"]:root body.treatment-reading :is(.topic-prose-section h2,.topic-next-step h2) { font-size:16px!important; line-height:1.5; }
@media(max-width:720px) {
 html[data-design="editorial"]:root body.treatment-reading :is(.topic-prose-section h2,.topic-next-step h2) { font-size:17px!important; }
}
