:root{
  --bg:#f6f4ef; /* 米白 */
  --ink:#0b2f24; /* 墨绿深色用于文字 */
  --accent:#1f553f; /* 墨绿主色 */
  --muted:#8b8a82;
  --divider:#e6e4dc;
  --max-min-width:1120px;
  --max-width:1400px;
  --container-pad:28px;
  --reading-width:760px;
}

/* 全局重置与排版 */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans CJK SC", "Microsoft YaHei", sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

a{color:var(--accent);text-decoration:none}
a:focus{outline:2px solid rgba(31,85,63,.15);outline-offset:2px}

/* header */
.site-header{
  border-bottom:1px solid var(--divider);
  background:transparent;
}
.brand{
  max-width:var(--max-width);
  margin:0 auto;
  padding:12px var(--container-pad);
}
.brand .home{
  font-weight:700;
  color:var(--ink);
  letter-spacing:0.01em;
}

/* 页面容器：在桌面时宽度限制在 1120px—1440px */
.container{
  display:grid;
  grid-template-columns: 1fr;
  gap:32px;
  max-width:calc(var(--max-width));
  min-width:var(--max-min-width);
  margin:28px auto;
  padding:0 var(--container-pad);
}

/* 列通用 */
.col{background:transparent}
.col-left{order:1}
.col-main{order:2}

/* 文章主体 */
.article-header h1{
  margin:0 0 8px 0;
  font-size:1.75rem;
  font-weight:800; /* 报刊式紧凑标题 */
  letter-spacing:-0.01em;
  color:var(--ink);
  position:relative;
  padding-left:2px;
}

/* 标题压左并用粗细横线构图：用左右细线与粗下划线实现横向层次 */
.article-header h1::before,
.article-header h1::after{
  content:"";
  position:absolute;
  left:-8px;
  right:-8px;
  height:1px;
  background:var(--divider);
  top:calc(100% + 8px);
}
.article-header h1::after{
  height:3px;
  background:var(--accent);
  top:calc(100% + 10px);
  width:45px;
}

.meta{
  margin-top:10px;
  color:var(--muted);
  font-size:0.875rem;
  display:flex;
  gap:12px;
  align-items:center;
}

/* 摘要区使用窄色带 */
.summary{
  margin:18px 0 6px 0;
  padding-left:12px;
  position:relative;
  color:var(--ink);
  background:transparent;
  border-left:0;
}
.summary-band{
  display:inline-block;
  width:4px;              /* 窄色带 */
  height:1.05em;
  background:var(--accent);
  margin-right:10px;
  vertical-align:middle;
}

/* 正文 */
.content{
  margin-top:18px;
  color:var(--ink);
  font-size:1rem;
  line-height:1.78;
  max-width:var(--reading-width);
}
.content p{margin:0 0 16px 0}
.content h2{margin:28px 0 12px 0;font-size:1.125rem;color:var(--ink)}

/* FAQ 编号式问答：在模板内保持中性容器，具体编号依赖 {{faq}} 内容 */
.faq{margin-top:28px;border-top:1px solid var(--divider);padding-top:18px}
.faq h2{font-size:1rem;margin:0 0 12px 0;color:var(--ink)}
.faq-list{color:var(--ink)}

/* 相关阅读 / 关键词索引式列表 */
.col-left{
  border-right:1px solid var(--divider);
  padding-right:20px;
}
.aside-title{font-size:0.95rem;margin:0 0 10px 0;color:var(--accent)}
.related-list{font-size:0.95rem;color:var(--ink);line-height:1.75}
.related-list a{display:block;padding:6px 0;border-bottom:1px dashed var(--divider);color:var(--ink)}

/* 广告容器样式（静态块） */
.ad{padding:12px;margin:12px 0;border:1px solid var(--divider);background:transparent;font-size:0.95rem;color:var(--muted)}
.ad-top{max-width:var(--max-width);margin:10px auto;padding:10px var(--container-pad)}
.ad-middle{margin-top:22px}
.ad-bottom{margin-top:20px}

/* footer */
.site-footer{border-top:1px solid var(--divider);padding:18px 0;background:transparent}
.footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--container-pad);color:var(--muted)}

/* 手机端规则：单栏自然重排，顺序：标题、摘要、正文、FAQ、推荐（related）、广告中置底部化 */
@media (max-width:767px){
  :root{--container-pad:16px}
  .container{min-width:320px;max-width:100%;margin:14px auto;padding:0 var(--container-pad);grid-template-columns:1fr}
  .col-left{order:4;border-right:0;border-top:1px solid var(--divider);padding-top:14px;padding-right:0}
  .col-main{order:1}
  .article-header h1{font-size:1.375rem}
  .article-header h1::before,.article-header h1::after{display:none}
  .summary{margin:12px 0}
  .content{font-size:1rem;line-height:1.7}
  .ad-middle{order:5;margin-top:18px}
  .ad-top{margin:8px}
  .ad-bottom{margin-top:18px}
  /* 移动端确保不出现横向滚动 */
  body{overflow-x:hidden}
}

/* 桌面端规则（至少 1024px 以上形成非对称双栏布局，正文偏右，推荐偏左） */
@media (min-width:1024px){
  .container{
    display:grid;
    grid-template-columns:360px 1fr; /* 推荐偏左（窄），正文偏右（宽） */
    gap:40px;
    align-items:start;
    padding:0 var(--container-pad);
    margin:36px auto;
    max-width:calc(var(--max-width));
    min-width:var(--max-min-width);
  }
  .col-left{order:1}
  .col-main{order:2}
  .content{max-width:820px}
  /* 在桌面时把中部广告保持在左侧栏，避免插入正文 */
  .ad-middle{position:static}
  /* 保持页面视觉稳重，去除圆角与阴影 */
  *{border-radius:0}
}
