:root{
  --bg: #fffaf0; /* 象牙白 */
  --ink: #2b2330; /* 深紫灰 */
  --muted: #6b636b;
  --accent: #392b40; /* 主题色，用于竖线 */
  --border: #e7e3df;
  --max-wrap: 1280px;
  --min-wrap: 1120px;
  --gap: 20px;
  --mast-width: 220px;
}

/* 基础版式 */
*{box-sizing:border-box}
html,body{height:100%;margin:0;background:var(--bg);color:var(--ink);font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;line-height:1.6}
.page{display:flex;min-height:100vh}

/* Masthead - 左侧纵向刊头（桌面）/ 顶部横条（移动） */
.masthead{background:transparent;border-right:1px solid var(--accent);display:flex;flex-direction:column;align-items:stretch;padding:16px 12px}
.masthead-inner{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.mast-top{font-weight:700;font-family: Georgia, 'Times New Roman', serif;font-size:20px;color:var(--ink);letter-spacing:0.4px}
.mast-sub{font-size:12px;color:var(--muted)}
.mast-nav{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--muted)}
.mast-nav a{color:var(--ink);text-decoration:none;font-weight:600}
.mast-year{font-size:12px;color:var(--muted)}
.mast-divider{width:1px;background:var(--accent);height:100%;position:relative;top:0}

/* Wrap main content */
.wrap{flex:1;padding:28px 24px}
.article-frame{display:flex;flex-direction:column}
.article{max-width:100%}
.article-header .eyebrow{font-size:13px;color:var(--accent);font-weight:600;letter-spacing:0.6px}
.article-header h1{font-family: Georgia, 'Times New Roman', serif;font-size:28px;margin:6px 0 10px 0;color:var(--ink);line-height:1.15}
.meta{font-size:13px;color:var(--muted);margin-bottom:10px}
.summary{background:#fff; border:1px solid var(--border);padding:12px; margin:0 0 16px 0}

/* Grid: content and side note */
.article-grid{display:grid;grid-template-columns:3fr 1fr;gap:20px}
.content-column{min-width:0}
.content{background:transparent;border:1px solid var(--border);padding:18px;white-space:pre-wrap}
.side-column{display:flex;flex-direction:column;gap:16px}
.side-box{border:1px solid var(--border);padding:12px}
.side-title{font-size:14px;margin:0 0 8px 0;color:var(--ink)}
.side-note{font-size:13px;color:var(--muted);margin:0}

.section-title{font-size:15px;margin:0 0 10px 0;color:var(--ink);font-weight:700}
.faq{border-top:1px dashed var(--border);padding-top:12px}
.faq-body{font-size:14px;color:var(--muted)}
.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.related .related-grid > *{padding:8px;border:1px solid var(--border);background:#fff}

.ad-slot{border:1px dashed var(--border);padding:10px;background:transparent;color:var(--muted);font-size:13px}

.site-footer{padding:18px 24px;border-top:1px solid var(--border);font-size:13px;color:var(--muted)}

/* 视觉签名：贯穿页面的1px主题竖线；在 masthead 与主区之间用 border-right（已设置） */

/* TYPOGRAPHY 调整（人文杂志 宽松型） */
h1,h2,h3{font-family: Georgia, 'Times New Roman', serif}
p,li{font-size:15px;color:var(--ink)}

/* 禁止阴影（视觉限制） - 明确无 box-shadow */
*{box-shadow:none}

/* 桌面规则 - 必须包含 (min-width: 1024px) */
@media (min-width:1024px){
  .page{align-items:stretch}
  .masthead{width:var(--mast-width);min-width:var(--mast-width);padding:28px 16px}
  /* 保证内容容器在 1120px—1440px 之间 */
  .wrap{width:clamp(1120px,85vw,1280px);margin:0 auto;padding:36px}

  /* 标题跨主区：让 h1 跨越两个内部栏位（通过 article-grid 设置的列） */
  .article-header{grid-column:1/-1;padding:0 0 12px 0}
  .article-grid{grid-template-columns:3fr 1fr;gap:28px}

  /* 相关四列紧凑标题网格（desktop） */
  .related-grid{grid-template-columns:repeat(4,1fr);gap:10px}
  .related .related-grid > *{padding:10px;font-size:13px}

  /* 边注视觉：方角框线，局部底色 */
  .side-box{background:#fff;padding:14px;border:1px solid var(--border)}

  .article-header h1{font-size:34px}
  .summary{max-width:900px}
}

/* 手机规则 - 必须包含 (max-width: 767px) */
@media (max-width:767px){
  .page{flex-direction:column}
  .masthead{flex-direction:row;align-items:center;border-right:none;border-bottom:1px solid var(--accent);padding:10px 12px}
  .masthead-inner{flex-direction:row;align-items:center;gap:12px}
  .mast-top{font-size:16px}
  .mast-sub{display:none}
  .mast-nav{display:flex;flex-direction:row;gap:10px;font-size:12px}
  .mast-divider{display:none}

  .wrap{padding:18px}
  .article-grid{display:block}
  .content-column{order:0}
  .side-column{order:1}

  /* 单列顺序：正文、边注、FAQ、推荐（相关） */
  .content{padding:14px}
  .article-header h1{font-size:20px;margin-top:6px}
  .meta{font-size:12px}
  .summary{padding:10px}

  /* 相关在手机端恢复为紧凑单列或两列 */
  .related-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .related .related-grid > *{padding:8px}

  /* 320px 时避免横向滚动 */
  body,html{min-width:0}
  .masthead,.wrap{width:100%}
}

/* FAQ 编号样式（若内容为列表会继承） */
.faq-body ol{counter-reset:qidx;margin:0;padding-left:18px}
.faq-body ol li{counter-increment:qidx;margin:8px 0}
.faq-body ol li::marker{font-weight:700;color:var(--accent)}
