/* 设计变量与全局 */
:root{
  --bg:#f7f7f6; /* 石墨淡灰底 */
  --text:#222222; /* 主文本色，石墨深 */
  --muted:#6b6b6b;
  --accent:#caa20a; /* 芥末黄 */
  --max-title-width:1200px;
  --max-content-width:860px;
  --page-gap:28px; /* 紧凑密度 */
  --line:1.5; /* 人文杂志风格松行高用于正文 */
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial;
  --serif:Georgia, Cambria, "Times New Roman", Times, serif;
  box-sizing:border-box;
}
*,:before,:after{box-sizing:inherit}
html,body{height:100%;margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a.home-link{font-weight:600;color:var(--text)}
.site-toolbar{background:transparent;border-bottom:1px solid rgba(34,34,34,0.04)}
.tool-bar,.toolbar-inner{max-width:var(--max-title-width);margin:0 auto}
.toolbar-inner{display:flex;align-items:center;gap:12px;padding:12px 20px;justify-content:flex-start}
.breadcrumb{color:var(--muted);font-size:13px}
.breadcrumb .crumb{margin:0 6px}

/* 顶部广告容器样式（不悬浮、不覆盖） */
.ad{max-width:var(--max-title-width);margin:12px auto;padding:10px 16px;background:transparent;color:var(--muted);font-size:13px}
.ad-top{margin-top:8px}

/* 标题带区：桌面与移动宽度分离 */
.title-band{padding:18px 16px 0}
.title-inner{max-width:var(--max-title-width);margin:0 auto}
.eyebrow{color:var(--muted);font-size:13px;margin-bottom:6px}
.article{background:transparent}
.article-header{padding:8px 0 12px}
.article-title{font-family:var(--serif);font-size:28px;line-height:1.08;margin:0;color:var(--text);font-weight:700}
.meta{color:var(--muted);font-size:13px;margin-top:8px}
.summary{margin:12px 0 18px;color:var(--muted);font-size:15px;max-width:980px}

/* 正文：独立宽度容器（桌面约860px） */
.article-body{display:block}
.article-body .content{background:transparent;max-width:var(--max-content-width);margin:0 auto;padding:6px 12px 24px;color:var(--text);font-size:16px;line-height:var(--line)}
.article-body .content p{margin:0 0 12px}
.article-body .content h2, .article-body .content h3{margin:18px 0 10px;font-family:var(--serif);color:var(--text)}

/* 视觉签名：章节标题带短编号线（不自动生成编号） */
.section-title{display:flex;align-items:center;gap:12px;font-size:16px;margin:18px 0 10px;color:var(--text);font-weight:600}
.section-title::before{content:'';width:28px;height:2px;background:var(--accent);display:inline-block;border-radius:2px}

/* FAQ 区：桌面两列，手机单列 */
.faq{max-width:var(--max-content-width);margin:0 auto;padding-bottom:8px}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.faq-grid > *{background:transparent;padding:8px;border-top:1px solid rgba(34,34,34,0.04)}

/* 相关推荐：底部三列（桌面），移动一列 */
.related{max-width:var(--max-title-width);margin:22px auto 30px;padding:0 12px}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.related-grid > *{background:transparent;padding:10px;border-top:1px solid rgba(34,34,34,0.04)}

/* 底部广告 */
.ad-bottom{max-width:var(--max-title-width);margin:6px auto 18px;padding:10px 16px}

.site-footer{border-top:1px solid rgba(34,34,34,0.04);color:var(--muted);font-size:13px}
.footer-inner{max-width:var(--max-title-width);margin:14px auto;padding:8px 16px}

/* 可访问性：文本不脱节 */
@media (min-width:1024px){
  /* 桌面规则：标题区与正文使用不同宽度，正文约860px居中 */
  .title-band{padding:28px 24px}
  .title-inner{max-width:var(--max-title-width)}
  .article-title{font-size:36px}
  .summary{font-size:16px}
  .article-body .content{padding:8px 12px 36px}

  /* 相关推荐在底部三列展开（满足desktop_contract） */
  .related-grid{grid-template-columns:repeat(3,1fr)}

  /* FAQ 保持两列（profile 指定） */
  .faq-grid{grid-template-columns:1fr 1fr}

  /* 结构差异：在大屏上标题行比正文更宽（title-inner 更宽） */
  .title-inner{padding:0 12px}
}

@media (max-width:767px){
  /* 手机规则：正文全宽减安全边距 */
  :root{--page-gap:14px}
  .toolbar-inner{padding:10px 12px}
  .title-band{padding:12px 12px}
  .title-inner{max-width:100%;padding:0}
  .article-title{font-size:20px}
  .summary{font-size:14px;margin-bottom:12px}

  /* 正文占满可用宽度并有左右安全边距 */
  .article-body .content{max-width:100%;padding:6px 8px 18px}

  /* FAQ 单列（faq_pattern 要求） */
  .faq-grid{grid-template-columns:1fr;gap:10px}

  /* 相关推荐单列（mobile_contract 要求：底部三列变单列） */
  .related-grid{grid-template-columns:1fr;gap:12px}

  /* 广告容器与正文流合并但不可为固定位置 */
  .ad{padding:8px}
}

/* 防止横向滚动 */
html,body,.page,.title-inner,.article-body .content{min-width:0}
