/* ============================================================
   妍知美 · 营销站模板 base.css  v1.9(2026-08-24)
   设计系统:医美消费感(非医疗感)| 暖豆沙主色 | 零依赖原生 CSS。
   ⛔ 品牌禁令(母版 design-system.css:6,58 模式):
      禁紫 #8B5CF6 系 / 禁医疗蓝 #2F6FB3 系 / 禁蓝紫渐变 / 禁纯黑 #000;
      移动端正文字号最小 14px(caption 类标签除外,向母版红线看齐)。
   页面专属样式请放各页 <style> 块,勿改本文件。
   ------------------------------------------------------------
   v1.9:Pillar 导航组件(2026-08-24)——金刚区滚动/渐隐样式自 page-index.css
        迁入(首页与 /xiangmu/ 共用);新增 .kk-item.is-building 建设中不可点卡
        与 .kk-status 状态签(live=false 降级呈现)。
   v1.8:「大家都在看/热门问答」内链升级(GEO)——相关卡拆 .rk-title(2行钳制)
        +新增 .rk-desc(1行省略描述);侧栏排行新增 .sl-body/.sl-title/.sl-desc
        (标题/描述各1行省略);配套 15 页 ItemList JSON-LD(HTML 侧)。
   v1.7:金刚区图标矩阵接入实拍图标——13 栏目 .kk-icon 由两字文字芯片
        改 images/icon-*.png 透明底图标(用户供图),去除交替彩色底;
        新增 .kk-icon img 规则。Tabbar 第5项「我的」改「医生」(HTML 侧)。
   v1.6.1:页脚三链接组移动端并排——≤767px 时 .footer-in 改 3 列,
        .footer-brand 独占首行,链接组由竖堆叠改并排(纯 CSS,25 页零改动)。
   v1.6:母版借鉴落地(WP1)——新增组件:.thumb+.thumb-badge 敏感区占位角标、
        .authority-badge 审核徽标、价格三件套(.price-row/.price-note/.price-table/
        .stats-bar)、.timeline 恢复时间线、.toc 长文目录、.trust-strip 信任条、
        .ref-list 参考文献、.search-panel 搜索建议面板;tabbar safe-area ↔ body
        padding-bottom 对应关系核对(一致,见 Tabbar 节注释);文件头补品牌禁令。
   v1.5:相关阅读卡(.related-grid a)标签1行+标题2行定高,等高防抖动。
   v1.4:卡片定行数等比 + Tab 面板堆叠防抖动(切换资讯/百科/攻略零跳动)。
   v1.3:PC 顶栏改单行(logo+导航+搜索+按钮),导航移入 header。
   v1.2:新增 list-video 列表页配套 + PC 侧栏吸顶跟随。
   v1.1:修复移动端横向溢出(金刚区/表格/区块头/顶栏/全局护栏)。
   ============================================================ */

/* ---------- 设计令牌 ---------- */
:root{
  --brand:#D9766C;          /* 暖豆沙红(主色) */
  --brand-deep:#BE5F55;     /* 主色加深(悬停/强调) */
  --brand-soft:#FAEAE7;     /* 主色浅底 */
  --gold:#D3A05A;           /* 暖金(点缀) */
  --gold-soft:#F7EEDD;
  --bg:#FBF6F3;             /* 暖白底 */
  --card:#FFFFFF;
  --ink:#372B28;            /* 暖黑正文 */
  --ink-2:#6E5F5B;          /* 次级文字 */
  --muted:#9C8E8A;          /* 弱化文字 */
  --line:#F1E4DF;           /* 分隔线 */
  --ok:#5FA884;             /* 资质/通过(暖绿) */
  --warn:#D98E4A;
  --r-s:10px; --r-m:14px; --r-l:20px;
  --shadow:0 6px 24px rgba(190,95,85,.08);
  --shadow-hover:0 10px 32px rgba(190,95,85,.14);
  --header-h:64px;
  --tabbar-h:56px;
  --maxw:1200px;
}

/* ---------- 重置 ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
html,body{overflow-x:clip}   /* v1.1 全局横向溢出护栏 */
body{
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Segoe UI",sans-serif;
  color:var(--ink);background:var(--bg);line-height:1.7;font-size:16px;
  padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{font:inherit;border:0;background:none;cursor:pointer;color:inherit}
input{font:inherit;border:0;outline:none;background:none}
table{border-collapse:collapse;width:100%}
h1,h2,h3,h4{line-height:1.35;font-weight:700}
h1{font-size:1.75rem}h2{font-size:1.4rem}h3{font-size:1.15rem}h4{font-size:1rem}
@media(min-width:768px){h1{font-size:2.1rem}h2{font-size:1.6rem}}
/* v1.1 长文本断行护栏 */
h1,h2,h3,h4,.card-title,.card-desc,.doc-name,.doc-spec,
.related-grid a,.list-item-body,.kk-name,.info-table td,
.filter-opts a,.faq summary{overflow-wrap:break-word}

/* ---------- 布局 ---------- */
.container{max-width:var(--maxw);margin:0 auto;padding:0 16px}
@media(min-width:768px){.container{padding:0 24px}}
.layout{display:grid;gap:24px;grid-template-columns:1fr;margin:24px 0}
@media(min-width:1024px){.layout.has-side{grid-template-columns:minmax(0,1fr) 300px}}

/* ---------- 图片占位(无真实素材时使用) ---------- */
.ph{position:relative;overflow:hidden;background:
  linear-gradient(135deg,var(--brand-soft),var(--gold-soft));
  border-radius:var(--r-m);display:flex;align-items:center;justify-content:center;
  color:var(--brand-deep);font-size:.85rem;letter-spacing:.05em;text-align:center;padding:12px}
.ph::after{content:"";position:absolute;inset:0;border-radius:inherit;
  border:1px solid rgba(217,118,108,.15)}
.ph-169{aspect-ratio:16/9}.ph-43{aspect-ratio:4/3}.ph-11{aspect-ratio:1/1}.ph-34{aspect-ratio:3/4}

/* ---------- 顶部栏 ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.header-in{display:flex;align-items:center;gap:16px;height:var(--header-h)}
.logo{display:flex;align-items:center;gap:8px;font-size:1.25rem;font-weight:800;color:var(--brand-deep);white-space:nowrap}
.logo-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--brand),var(--gold));
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem;font-weight:800}
.search-box{flex:1;min-width:0;max-width:460px;display:flex;align-items:center;gap:8px;background:var(--bg);
  border:1px solid var(--line);border-radius:999px;padding:7px 16px;color:var(--muted);font-size:.9rem}
.search-box input{flex:1;min-width:0;color:var(--ink)}
.header-cta{white-space:nowrap}
.menu-toggle{display:flex;flex-direction:column;gap:4px;padding:8px}
.menu-toggle span{width:20px;height:2px;background:var(--ink);border-radius:2px}
@media(min-width:1024px){.menu-toggle{display:none}}

/* ---------- 主导航(v1.3:PC 单行 logo+导航+搜索+按钮) ---------- */
.nav-main{display:none;background:var(--card)}
.nav-main.open{display:block;position:fixed;inset:var(--header-h) 0 auto 0;z-index:49;box-shadow:var(--shadow);border-bottom:1px solid var(--line)}
.nav-main ul{display:flex;flex-wrap:wrap}
.nav-main a{display:block;padding:13px 18px;font-size:.95rem;color:var(--ink-2);border-bottom:2px solid transparent}
.nav-main a:hover,.nav-main a.active{color:var(--brand-deep);border-bottom-color:var(--brand)}
@media(max-width:1023px){.nav-main.open ul{flex-direction:column}.nav-main a{padding:12px 24px}}
@media(min-width:1024px){
  .nav-main{display:block;position:static;background:transparent;box-shadow:none;
    flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
  .nav-main ul{flex-wrap:nowrap}
  .nav-main a{padding:8px 10px;font-size:.92rem;white-space:nowrap}
}
/* 中等桌面宽度收紧,保证单行不溢出 */
@media(min-width:1024px) and (max-width:1279px){
  .header-in{gap:10px}
  .logo{font-size:1.1rem}
  .nav-main a{padding:8px 6px;font-size:.86rem}
  .search-box{max-width:190px;padding:6px 12px}
}

/* ---------- 按钮/标签 ---------- */
.btn{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:9px 22px;
  font-size:.92rem;font-weight:600;transition:.2s}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-deep)}
.btn-ghost{border:1px solid var(--brand);color:var(--brand-deep);background:#fff}
.btn-ghost:hover{background:var(--brand-soft)}
.tag{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;
  background:var(--brand-soft);color:var(--brand-deep)}
.tag-gold{background:var(--gold-soft);color:#A2762F}
.tag-green{background:#E8F4EC;color:var(--ok)}
.badge-video{position:absolute;top:10px;left:10px;background:rgba(55,43,40,.75);color:#fff;
  font-size:.72rem;padding:3px 10px;border-radius:999px}

/* ---------- 区块标题 ---------- */
.section{margin:36px 0}
.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  gap:8px 14px;margin-bottom:18px}   /* v1.1 允许换行 */
.section-title{display:flex;align-items:center;gap:10px;font-size:1.3rem}
.section-title::before{content:"";width:6px;height:22px;border-radius:3px;
  background:linear-gradient(180deg,var(--brand),var(--gold))}
.section-more{font-size:.85rem;color:var(--muted)}
.section-more:hover{color:var(--brand-deep)}
.section-sub{font-size:.88rem;color:var(--muted);margin-top:-12px;margin-bottom:18px}

/* ---------- Hero / Banner ---------- */
.hero{border-radius:var(--r-l);overflow:hidden;margin:20px 0 8px;position:relative}
.hero-slide{min-height:280px;display:flex;flex-direction:column;justify-content:center;gap:14px;
  padding:40px 32px;background:linear-gradient(120deg,var(--brand-soft) 0%,var(--gold-soft) 100%);border-radius:var(--r-l)}
@media(min-width:768px){.hero-slide{min-height:320px;padding:48px 56px}}
.hero-kicker{font-size:.85rem;color:var(--brand-deep);font-weight:600;letter-spacing:.1em}
.hero-title{font-size:1.7rem;max-width:22em}
@media(min-width:768px){.hero-title{font-size:2.2rem}}
.hero-desc{color:var(--ink-2);max-width:38em;font-size:.95rem}
.hero-dots{display:flex;gap:8px;justify-content:center;padding:12px 0}
.hero-dots i{width:8px;height:8px;border-radius:50%;background:var(--line);cursor:pointer}
.hero-dots i.on{width:22px;border-radius:5px;background:var(--brand)}

/* ---------- 金刚区(栏目图标矩阵;Pillar 导航组件,首页与 /xiangmu/ 共用,2026-08-24 自 page-index.css 迁入) ---------- */
.kingkong{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px 4px;position:relative}  /* v1.1 minmax(0,1fr) 防中文名撑宽 */
@media(min-width:768px){.kingkong{grid-template-columns:repeat(7,minmax(0,1fr));gap:14px 8px}}
@media(min-width:1024px){.kingkong{grid-template-columns:repeat(13,minmax(0,1fr))}}
.kingkong::after{content:"";position:absolute;right:0;top:0;bottom:0;width:24px;
  background:linear-gradient(to right,transparent,var(--bg) 80%);pointer-events:none;
  opacity:0;transition:opacity .2s}
.kingkong.has-more::after{opacity:1}
@media(max-width:1023px){.kingkong{padding-bottom:calc(var(--tabbar-h) + 24px + env(safe-area-inset-bottom))}}
@media(max-width:767px){
  .kingkong{
    display:flex;
    gap:6px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:4px 4px 12px;
    margin:0 -4px;
  }
  .kingkong::-webkit-scrollbar{display:none}
  .kingkong .kk-item{
    flex:none;
    width:74px;
    scroll-snap-align:start;
    padding:8px 4px;
    gap:6px;
  }
  .kingkong .kk-icon{width:38px;height:38px}
  .kingkong .kk-name{font-size:.7rem;line-height:1.3}
}
.kk-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 4px;border-radius:var(--r-m);transition:.2s;min-width:0}
.kk-item:hover{background:var(--card);box-shadow:var(--shadow);transform:translateY(-2px)}
.kk-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center}
.kk-icon img{width:100%;height:100%;object-fit:contain;display:block}
.kk-name{font-size:.85rem;color:var(--ink-2);text-align:center}
/* 建设中不可点卡(live=false;Pillar 上线滑期安全阀) */
.kk-item.is-building{opacity:.55;cursor:default}
.kk-item.is-building:hover{background:transparent;box-shadow:none;transform:none}
.kk-status{font-size:.68rem;color:var(--muted);border:1px dashed var(--line);border-radius:999px;padding:1px 8px;line-height:1.5}

/* ---------- 卡片网格 ---------- */
.grid{display:grid;gap:16px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:768px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.card{background:var(--card);border-radius:var(--r-m);overflow:hidden;box-shadow:var(--shadow);
  display:flex;flex-direction:column;transition:.2s;border:1px solid rgba(241,228,223,.6);min-width:0}
.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}
.card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}
.card-title{font-size:.98rem;font-weight:700;line-height:1.5;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3em} /* v1.4 固定2行 */
.card-title:hover{color:var(--brand-deep)}
.card-desc{font-size:.83rem;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;
  -webkit-box-orient:vertical;overflow:hidden;min-height:3.4em} /* v1.4 固定2行 */
.card-meta{margin-top:auto;display:flex;align-items:center;gap:10px;font-size:.76rem;
  color:var(--muted);flex-wrap:wrap;min-height:1.7em} /* v1.4 固定1行 */
.price{color:var(--brand-deep);font-weight:800}
.price small{font-weight:400;color:var(--muted);font-size:.72rem}

/* ---------- 医院/医生卡 ---------- */
.doc-card{text-align:center;align-items:center}
.doc-card .ph,.doc-card .thumb{width:96px;height:96px;border-radius:50%;margin:18px auto 0}
.doc-name{font-weight:700}
.doc-title{font-size:.8rem;color:var(--gold);font-weight:600}
.doc-spec{font-size:.78rem;color:var(--ink-2)}
.hos-card .card-body{gap:6px}
.hos-tags{display:flex;gap:6px;flex-wrap:wrap}

/* ---------- 列表页 ---------- */
.filter-bar{display:flex;flex-direction:column;gap:10px;background:var(--card);border-radius:var(--r-m);
  padding:16px;margin:20px 0;box-shadow:var(--shadow)}
.filter-row{display:flex;align-items:flex-start;gap:12px;font-size:.88rem}
.filter-label{flex:none;color:var(--muted);padding-top:5px;width:3.5em}
.filter-opts{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.filter-opts a{padding:4px 14px;border-radius:999px;color:var(--ink-2)}
.filter-opts a:hover{color:var(--brand-deep)}
.filter-opts a.on{background:var(--brand);color:#fff}
.list-flow{display:flex;flex-direction:column;gap:14px}
.list-item{display:flex;gap:16px;background:var(--card);border-radius:var(--r-m);padding:16px;
  box-shadow:var(--shadow);transition:.2s}
.list-item:hover{box-shadow:var(--shadow-hover)}
.list-item .ph{flex:none;width:120px;height:90px}
@media(min-width:768px){.list-item .ph{width:200px;height:130px}}
.list-item-body{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}
.pagination{display:flex;justify-content:center;gap:8px;margin:28px 0;flex-wrap:wrap}
.pagination a,.pagination span{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;
  border-radius:10px;background:var(--card);color:var(--ink-2);font-size:.88rem;box-shadow:var(--shadow)}
.pagination .on{background:var(--brand);color:#fff}

/* ---------- 面包屑 ---------- */
.breadcrumb{display:flex;flex-wrap:wrap;gap:6px;font-size:.82rem;color:var(--muted);padding:16px 0 0}
.breadcrumb a:hover{color:var(--brand-deep)}
.breadcrumb li+li::before{content:"/";margin-right:6px;color:var(--line)}

/* ---------- 内页头 ---------- */
.page-hero{background:linear-gradient(120deg,var(--brand-soft),var(--gold-soft));
  border-radius:var(--r-l);padding:32px 28px;margin:16px 0 0}
.page-hero h1{margin-bottom:8px}
.page-hero p{color:var(--ink-2);max-width:44em;font-size:.95rem}

/* ---------- 资讯感正文 ---------- */
.prose{background:var(--card);border-radius:var(--r-m);padding:24px 20px;box-shadow:var(--shadow)}
@media(min-width:768px){.prose{padding:36px 44px}}
.prose h2{margin:1.6em 0 .6em;padding-left:12px;border-left:4px solid var(--brand)}
.prose h3{margin:1.3em 0 .5em}
.prose p{margin:.8em 0;color:var(--ink)}
.prose ul,.prose ol{margin:.8em 0 .8em 1.4em}
.prose ul li{list-style:disc;margin:.35em 0}
.prose ol li{list-style:decimal;margin:.35em 0}
.prose table{display:block;max-width:100%;overflow-x:auto;margin:1.2em 0;font-size:.88rem} /* v1.1 表格横向滚动 */
.prose th{background:var(--brand-soft);color:var(--brand-deep);padding:10px 12px;text-align:left;white-space:nowrap}
.prose td{padding:10px 12px;border-bottom:1px solid var(--line);color:var(--ink-2)}
.lede{font-size:1.02rem;color:var(--ink);background:var(--brand-soft);border-radius:var(--r-s);
  padding:16px 18px;margin:0 0 1.2em}
.meta-bar{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.8rem;color:var(--muted);
  padding:12px 0;border-bottom:1px dashed var(--line);margin-bottom:18px}
.disclaimer{margin-top:1.5em;font-size:.78rem;color:var(--muted);background:var(--bg);
  border-radius:var(--r-s);padding:12px 16px}

/* ---------- FAQ ---------- */
.faq details{background:var(--card);border-radius:var(--r-s);margin-bottom:10px;box-shadow:var(--shadow)}
.faq summary{padding:15px 18px;font-weight:600;font-size:.95rem;cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:10px}
.faq summary::after{content:"+";color:var(--brand);font-size:1.2rem;flex:none}
.faq details[open] summary::after{content:"−"}
.faq .faq-a{padding:0 18px 16px;color:var(--ink-2);font-size:.9rem}
.faq .faq-a strong{color:var(--brand-deep)}

/* ---------- 侧栏 ---------- */
.side-card{background:var(--card);border-radius:var(--r-m);padding:18px;box-shadow:var(--shadow);margin-bottom:18px}
.side-card h3{font-size:1rem;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.side-card h3::before{content:"";width:4px;height:16px;border-radius:2px;background:var(--brand)}
.side-links a{display:flex;gap:10px;align-items:center;padding:9px 0;font-size:.88rem;color:var(--ink-2);border-bottom:1px dashed var(--line)}
.side-links a:last-child{border-bottom:0}
.side-links a:hover{color:var(--brand-deep)}
.side-links .num{flex:none;width:20px;height:20px;border-radius:6px;background:var(--brand-soft);
  color:var(--brand-deep);font-size:.72rem;display:flex;align-items:center;justify-content:center;font-weight:700}
.side-links .sl-body{flex:1;min-width:0}                     /* v1.8 排行链接标题+描述容器 */
.side-links .sl-title{display:block;line-height:1.45;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.side-links .sl-desc{display:block;margin-top:2px;font-size:.72rem;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}   /* v1.8 GEO 一句话描述 */

/* ---------- v1.2 PC 侧栏吸顶跟随 ---------- */
@media(min-width:1024px){
  .layout.has-side > aside{position:sticky;top:calc(var(--header-h) + 16px);align-self:start}
}

/* ---------- 大家都在看 / 热门问答 ---------- */
.related{margin:32px 0}
.related-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:768px){.related-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.related-grid a{background:var(--card);border-radius:var(--r-s);padding:14px;font-size:.85rem;
  color:var(--ink-2);box-shadow:var(--shadow);display:block;min-height:118px} /* v1.8 标签1行+标题2行+描述1行,等高防抖动 */
.related-grid a:hover{color:var(--brand-deep)}
.related-grid .rk-type{font-size:.7rem;color:var(--gold);display:block;margin-bottom:6px}
.related-grid .rk-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}
.related-grid .rk-desc{display:block;margin-top:6px;font-size:.75rem;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}   /* v1.8 GEO 一句话描述 */

/* ---------- 信息表(医院/医生详情字段) ---------- */
.info-table{display:block;max-width:100%;overflow-x:auto;background:var(--card);
  border-radius:var(--r-m);box-shadow:var(--shadow)}   /* v1.1 横向滚动 */
.info-table th{width:7.5em;background:var(--brand-soft);color:var(--brand-deep);
  padding:12px 16px;text-align:left;font-size:.88rem;white-space:nowrap}
.info-table td{padding:12px 16px;font-size:.9rem;color:var(--ink-2);border-bottom:1px solid var(--line)}
.info-table tr:last-child td{border-bottom:0}

/* ---------- 专题时间轴/分区 ---------- */
.topic-block{margin:28px 0}

/* ---------- 页脚 ---------- */
.site-footer{margin-top:48px;background:#3E3230;color:#CBB9B4;font-size:.84rem}
.footer-in{padding:36px 0 20px;display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
@media(min-width:768px){.footer-in{grid-template-columns:2fr 1fr 1fr 1fr}}
.site-footer h4{color:#F0E0DC;font-size:.95rem;margin-bottom:12px}
.site-footer a{display:block;padding:4px 0;color:#CBB9B4}
.site-footer a:hover{color:#fff}
.footer-brand .logo{color:#F0E0DC;margin-bottom:10px}
.footer-desc{color:#A8938D;font-size:.8rem;max-width:32em}
.footer-legal{border-top:1px solid #57453F;padding:16px 0 8px;text-align:center;
  font-size:.76rem;color:#A8938D;line-height:2}

/* ---------- 移动端 Tabbar ----------
   v1.6 核对(母版 design-system.css:1168-1190,1232-1233 模式):
   tabbar 高度 = calc(var(--tabbar-h) + env(safe-area-inset-bottom))
   ⇔ body{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom))}(见重置节),
   两处必须同改;≥1024px tabbar 隐藏且 body padding 归零(本节末媒体查询)。
   滚动锁由 main.js 移动菜单负责(body overflow:hidden + 滚动条宽度补偿)。 */
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:50;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));
  padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.96);backdrop-filter:blur(8px);
  border-top:1px solid var(--line);display:flex}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  font-size:.68rem;color:var(--muted);min-width:0}
.tabbar a i{font-style:normal;font-size:1.05rem}
.tabbar a.on{color:var(--brand-deep);font-weight:600}
@media(min-width:1024px){.tabbar{display:none}body{padding-bottom:0}}

/* ---------- v1.4 Tab 面板堆叠防抖动 ---------- */
.tab-stack{display:grid}
.tab-stack>[data-tab-pane]{grid-area:1/1;min-width:0;transition:opacity .18s ease}
.tab-stack>[data-tab-pane].off{visibility:hidden;opacity:0;pointer-events:none}

/* ---------- v1.1 移动端收紧(≤767px) ---------- */
@media(max-width:767px){
  .header-in{gap:10px}
  .logo{font-size:1.05rem}
  .logo-mark{width:26px;height:26px}
  .search-box{padding:6px 12px;font-size:.85rem}
  .header-cta{padding:7px 14px;font-size:.85rem}
  .hero-slide{padding:32px 20px}
  .kk-icon{width:44px;height:44px}
  .kk-name{font-size:.78rem}
  .prose{padding:20px 16px}
  .list-item{gap:12px;padding:14px}
  .list-item .ph{width:104px;height:80px}
  .page-hero{padding:24px 20px}
  .section-head .btn{padding:6px 14px;font-size:.82rem}
  /* v1.6.1 页脚三链接组并排:品牌块独占首行,内容频道/信息索引/关于我们 3 列并排 */
  .footer-in{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 14px}
  .footer-brand{grid-column:1/-1}
  .site-footer h4{font-size:.88rem;margin-bottom:8px}
  .site-footer a{padding:6px 0;font-size:.8rem}
}

/* ============================================================
   v1.6 母版借鉴组件(全部走 var() 令牌;出处行号 = 母版 design-system.css)
   ============================================================ */

/* ---------- 敏感区占位图 .thumb + 角标 .thumb-badge(母版 :500-517) ----------
   与 .ph 并存:.ph 保留给通用区;项目/医师/机构敏感区用 .thumb。
   角标文案(规范 §六.3):「原理图示·非真人」(项目)/「形象占位·非本人」(医师)/「环境示意·非实景」(机构)。 */
.thumb{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--brand-soft),var(--gold-soft));
  border-radius:var(--r-m);display:flex;align-items:center;justify-content:center;
  color:var(--brand-deep);font-size:.85rem;letter-spacing:.05em;text-align:center;padding:12px}
.thumb::after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid rgba(217,118,108,.15)}
.thumb-169{aspect-ratio:16/9}.thumb-43{aspect-ratio:4/3}.thumb-11{aspect-ratio:1/1}.thumb-34{aspect-ratio:3/4}
.thumb-badge{position:absolute;left:8px;bottom:8px;z-index:1;max-width:calc(100% - 16px);
  background:rgba(255,255,255,.92);color:var(--ink-2);font-size:.68rem;letter-spacing:0;
  padding:3px 10px;border-radius:999px}

/* ---------- 审核徽标 .authority-badge(母版 :613-628) ----------
   三要素(规范 §六.1):审核人+最近审核日 / 参考文献数 / 90 天复核;全部 detail-* 必备。 */
.authority-badge{display:inline-flex;align-items:center;gap:8px 10px;flex-wrap:wrap;
  background:linear-gradient(135deg,var(--gold-soft),var(--brand-soft));
  border:1px solid var(--gold);border-radius:var(--r-m);
  padding:8px 16px;font-size:.85rem;color:var(--ink-2);max-width:100%}
.authority-badge strong{color:var(--ink)}
.authority-badge .ab-icon{flex:none;width:22px;height:22px;border-radius:50%;
  background:#E8F4EC;color:var(--ok);display:flex;align-items:center;justify-content:center;
  font-size:.78rem;font-weight:700}
.authority-row{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}

/* ---------- 价格三件套(区间 + 仅供参考 + 以实际面诊为准) ---------- */
/* 卡片价行(母版 :533-552):虚线顶分隔 + 区间大号 + 说明小号(卡片内替代裸 .price) */
.price-row{display:flex;align-items:baseline;gap:4px 8px;flex-wrap:wrap;
  margin-top:auto;padding-top:10px;border-top:1px dashed var(--line);font-size:.85rem}
.price-row b{font-size:1.15rem;color:var(--brand-deep);font-weight:800}
.price-row small{font-size:.72rem;color:var(--muted)}
/* 区块级价格声明句(卡片组/区块共用一条,不必每卡重复) */
.price-note{font-size:.78rem;color:var(--muted);margin:10px 0 0}
/* 价格表(母版 :824-855):声明放 <caption>(底部) */
.price-table{width:100%;background:var(--card);border:1px solid var(--line);
  border-radius:var(--r-m);overflow:hidden;font-size:.88rem;margin:16px 0}
.price-table th,.price-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line)}
.price-table thead th{background:var(--brand-soft);color:var(--brand-deep);font-weight:600;white-space:nowrap}
.price-table td{color:var(--ink-2)}
.price-table tr:last-child td{border-bottom:0}
.price-table td.price{color:var(--brand-deep);font-weight:800}
.price-table caption{caption-side:bottom;text-align:left;padding:10px 16px;
  color:var(--muted);font-size:.78rem;background:var(--bg)}
/* 修复 2026-08-24:.prose table{display:block} 会把表格压成内容宽度(右侧大留白),
   价格表恢复 table 布局以占满栏宽;正文中其他表格仍走横向滚动 */
.prose .price-table{display:table}
/* 多档对比条(母版 :919-940) */
.stats-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;
  margin:18px 0;padding:18px;background:linear-gradient(135deg,var(--gold-soft),var(--brand-soft));
  border-radius:var(--r-m)}
.stats-bar .stat{text-align:center}
.stats-bar .stat b{display:block;font-size:1.5rem;color:var(--brand-deep);font-weight:800;line-height:1.2}
.stats-bar .stat span{font-size:.75rem;color:var(--muted)}

/* ---------- 恢复时间线 .timeline(母版 :858-892) ----------
   4 阶段顶边分品牌色(豆沙/暖金/暖橙/暖绿);用法见规范 §4.2,组件前须有个体差异提示句。
   ⚠️ hub-news.html 页内旧 .timeline(资讯列表)与本组件冲突,WP4-W3 须将页内类改名。 */
.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:18px 0}
.timeline-step{background:var(--card);border:1px solid var(--line);border-top:3px solid var(--brand);
  border-radius:var(--r-m);padding:14px 16px}
.timeline-step:nth-child(2){border-top-color:var(--gold)}
.timeline-step:nth-child(3){border-top-color:var(--warn)}
.timeline-step:nth-child(4){border-top-color:var(--ok)}
.timeline-step .day{font-size:.78rem;color:var(--muted);font-weight:700;margin-bottom:4px}
.timeline-step h4{font-size:.92rem;margin-bottom:6px}
.timeline-step p{font-size:.8rem;color:var(--ink-2);margin:0;line-height:1.6}

/* ---------- 长文目录 .toc(母版 :751-780;视觉复用 .side-card) ----------
   桌面端侧栏顶部 sticky,移动端静态平铺(规范 §4.3/D2);高亮态 .active 由 main.js 维护。 */
.toc{background:var(--card);border-radius:var(--r-m);padding:18px;box-shadow:var(--shadow);margin-bottom:18px}
.toc h3{font-size:1rem;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.toc h3::before{content:"";width:4px;height:16px;border-radius:2px;background:var(--brand)}
.toc a{display:block;padding:6px 0 6px 12px;border-left:2px solid var(--line);
  color:var(--ink-2);font-size:.88rem;line-height:1.5;transition:.2s}
.toc a:hover,.toc a.active{border-left-color:var(--brand);color:var(--brand-deep);font-weight:600}
@media(min-width:1024px){.toc{position:sticky;top:calc(var(--header-h) + 16px)}}

/* ---------- 信任条 .trust-strip(母版 :409-432;首页 4 承诺,规范 §5.2) ---------- */
.trust-strip{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:18px 0;margin:16px 0}
.trust-strip-inner{display:flex;justify-content:space-around;align-items:center;flex-wrap:wrap;gap:16px}
.trust-item{display:flex;align-items:center;gap:12px;font-size:.85rem;color:var(--ink-2)}
.trust-item .ti-icon{flex:none;width:36px;height:36px;border-radius:50%;
  background:#E8F4EC;color:var(--ok);display:flex;align-items:center;justify-content:center;font-size:.95rem}
.trust-item b{display:block;color:var(--ink);font-weight:600}
@media(max-width:767px){.trust-strip-inner{flex-direction:column;align-items:flex-start;gap:14px}}

/* ---------- 参考文献 .ref-list(母版 show-baike.html:446 内联样式类化;规范 §4.1 第⑧段) ---------- */
.ref-list{margin:.8em 0 .8em 1.4em;font-size:.85rem;color:var(--ink-2);line-height:1.85}
.ref-list li{list-style:decimal;margin:.4em 0}
.ref-list em{font-style:italic}
.ref-note{font-size:.78rem;color:var(--muted);margin-top:10px}

/* ---------- 搜索建议面板 .search-panel(main.js 动态生成;替代 v1.0 JS 内联样式) ---------- */
[data-search]{position:relative}
.search-panel{position:absolute;left:0;right:0;top:110%;z-index:60;display:none;
  background:var(--card);border-radius:12px;box-shadow:var(--shadow-hover);overflow:hidden}
.search-panel a{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:10px 16px;font-size:.88rem;color:var(--ink-2)}
.search-panel a:hover{background:var(--brand-soft);color:var(--brand-deep)}
.search-panel .sp-type{flex:none;font-size:.72rem;color:var(--muted)}

/* ---------- 工具类 ---------- */
.mt-0{margin-top:0}.mb-0{margin-bottom:0}
.tc{text-align:center}
.hide-m{display:none}
@media(min-width:768px){.hide-m{display:block}}
.only-m{display:block}
@media(min-width:768px){.only-m{display:none}}
/* 全站共享补强:头部 logo / 搜索框 / 页脚法务区(拆自静态版各页内联样式,单一出处) */
.header-in .logo{display:flex;align-items:center;gap:8px;text-decoration:none}
.header-in .logo-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;
  border-radius:8px;background:var(--brand);color:#fff;font-weight:700;font-size:1rem}
.header-in .logo-text{display:inline-flex;flex-direction:column;line-height:1.15}
.header-in .logo-name{font-size:1.05rem;font-weight:700;color:var(--ink)}
.header-in .logo-sub{font-size:.66rem;color:var(--muted);letter-spacing:.02em}
@media(max-width:1023px){.header-in .logo-sub{display:none}}
@media(min-width:1024px){
  .header-in .logo-text{padding-top:1px}
  .header-in .search-box{max-width:280px;flex:0 1 280px}
  .header-in .search-box input::placeholder{font-size:.82rem;color:var(--muted);opacity:1}
}
.footer-legal{display:flex;flex-direction:column;gap:8px;padding-top:18px;margin-top:18px;
  border-top:1px solid var(--line);font-size:.8rem;color:var(--muted);line-height:1.7}
.footer-legal b{color:var(--ink-2);font-weight:600;margin-right:6px}
.footer-legal .disclaimer{padding-top:10px;margin-top:6px;border-top:1px dashed var(--line);color:var(--ink-2)}
.footer-legal .ai-tag{display:inline-flex;align-items:center;gap:6px;background:var(--brand-soft);color:var(--brand-deep);
  padding:4px 10px;border-radius:8px;font-size:.74rem;font-weight:600;margin-top:4px;align-self:flex-start}
@media(max-width:767px){.footer-legal{font-size:.76rem}}
.section-disclaimer{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;color:#BE5F55;
  background:#FFF1EE;padding:4px 10px;border-radius:8px;border:1px solid #F5D9D3;margin-top:-12px;margin-bottom:18px}
.section-disclaimer::before{content:"⚠";font-size:.85rem}
