/* 通用变量与重置 */
:root{
  --brand:#5a3418; /* 深棕 */
  --paper:#fff9f2; /* 奶油白 */
  --muted:#6b5a50;
  --max-width:1320px; /* 在1120-1440之间，取中间偏小值以兼容 */
  --gap:28px;
  --vline:var(--brand);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--paper);
  color:#2b1f18;
  font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
  line-height:1.65;
  font-size:16px;
}
.container{
  max-width:var(--max-width);
  margin:28px auto;
  padding:0 20px;
  position:relative; /* 用于贯穿竖线定位 */
}
.site-header{
  padding:20px 0 8px;
  text-align:center;
}
.header-inner{display:flex;align-items:center;justify-content:center;gap:18px}
.brand{font-weight:700;color:var(--brand);text-decoration:none;font-size:18px}
.mini-nav{color:var(--muted);font-size:14px;display:inline-flex;gap:12px}
.header-rule{border:none;height:1px;background:rgba(90,52,24,0.12);margin:12px 0}
.ad{background:transparent;color:inherit;padding:10px 0;text-align:center;font-size:14px}
/* Split Headline */
.split-head{display:grid;gap:var(--gap);align-items:start;margin-bottom:18px}
.split-left{order:1}
.split-right{order:2}
.title{
  margin:0 0 8px 0;
  font-family: Georgia, 'Times New Roman', serif;
  color:var(--brand);
  font-weight:700;
  font-size:clamp(26px, 4.2vw, 40px);
  line-height:1.05;
  letter-spacing:-0.01em;
  /* 尽量不超过两行：限定最大高度为2行 */
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.meta-row{font-size:13px;color:var(--muted);display:flex;gap:12px;align-items:center}
.summary{margin:0;color:#3a2b22}
.keyword{margin-top:12px;color:var(--muted);font-size:13px}
.keyword span{color:var(--brand)}

/* Two-column area */
.two-col{display:block;margin-top:10px}
.main-col{background:transparent;padding-right:18px}
.small{font-size:13px;color:var(--muted);margin-bottom:10px}
.content{color:#2b1f18}
.side-col{background:transparent;border-left:1px solid rgba(90,52,24,0.06);padding-left:18px;margin-top:18px}
.aside-title{font-size:16px;margin:0 0 12px 0;color:var(--brand);font-weight:600}
.faq{font-size:15px;color:#34241c}
.related{margin-top:18px}
.related-title{font-size:15px;margin:0 0 10px 0;color:var(--brand);font-weight:600}
.related-list{display:grid;grid-template-columns:1fr;gap:10px}
.site-footer{padding:20px 0;text-align:center;color:var(--muted);font-size:13px;border-top:1px solid rgba(90,52,24,0.06);margin-top:36px}

/* 贯穿页面的1px主题竖线（视觉签名） */
.vline{position:absolute;top:0;bottom:0;width:1px;background:var(--vline);left:50%;transform:translateX(-0.5px);opacity:0.12;pointer-events:none}

/* FAQ 表格化支持：若模板方提供 dl/dt/dd 则生效 */
.faq dl{display:grid;grid-template-columns:1fr 2fr;gap:10px 20px;margin:0}
.faq dt{font-weight:600;color:var(--brand);font-size:15px}
.faq dd{margin:0;color:#3b2b22}
/* 相关阅读两列摘要列表（桌面启用） */
.related-list .item{padding:8px 0;border-bottom:1px dashed rgba(90,52,24,0.06)}
.related-list .item:last-child{border-bottom:none}

/* 可接受的内嵌 HTML（保底样式） */
.content p{margin:0 0 12px 0}
.content h2, .content h3{color:var(--brand);margin:18px 0 8px}
.content ul, .content ol{margin:0 0 12px 28px}

/* 桌面规则：>=1024px（必须包含） */
@media (min-width:1024px){
  .container{padding:0 32px}
  .split-head{grid-template-columns:1fr 1fr;align-items:start}
  .split-left{padding-right:24px}
  .split-right{padding-left:24px}

  /* 下方 7/5 两栏布局 */
  .two-col{display:grid;grid-template-columns:7fr 5fr;gap:28px;align-items:start}
  .main-col{padding-right:0}
  .side-col{margin-top:0}

  /* FAQ 桌面表格式：左问题右答案 */
  .faq dl{grid-template-columns:1fr 1fr}
  .related-list{grid-template-columns:1fr 1fr;gap:12px}

  /* 竖线位置：落在视觉中轴（居中）以贯穿左右分区 */
  .vline{left:50%;opacity:0.14}
}

/* 手机规则：<=767px（必须包含） */
@media (max-width:767px){
  body{font-size:15px}
  .container{margin:18px 14px;padding:0}
  .split-head{grid-template-columns:1fr;gap:12px}
  .split-left,.split-right{order:initial}
  .title{font-size:22px;-webkit-line-clamp:2}
  .meta-row{flex-direction:column;align-items:flex-start;gap:6px}

  /* 恢复自然阅读顺序：正文、FAQ、推荐依序显示 */
  .two-col{display:block}
  .main-col{padding-right:0}
  .side-col{padding-left:0;border-left:none}
  .ad{padding:8px 0}

  /* FAQ 在手机上改为垂直堆叠 */
  .faq dl{display:block}
  .faq dt{margin-top:12px}
  .faq dd{margin:4px 0 0 0}

  .related-list{grid-template-columns:1fr}

  /* 手机上把竖线收束到左边细条，避免妨碍视读 */
  .vline{left:12px;height:100%;opacity:0.08}
  .title{padding-left:6px}
}
