:root{
  --bg:#ffffff;
  --text:#111111;
  --muted:#666666;
  --line:#e6e6e6;
  --accent:#b21a18; /* 朱红强调色 */
  --max-width:1240px; /* 桌面容器在1120-1440之间，取中间值 */
  --min-width:1120px;
  --gutter:24px;
  --font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}

/* Reset-ish */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--font-stack);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

a{color:inherit; text-decoration:underline}
.sr-only{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}

/* Header: 报刊双层报头（工具栏 + 细规则） */
.site-header{padding:12px var(--gutter) 6px;}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{font-weight:700; font-size:18px; color:var(--text); text-decoration:none}
.breadcrumb-note{font-size:13px;color:var(--muted)}
.header-rule{border:none;border-top:1px solid var(--line);margin:10px 0}

/* Outer frame: 左右细边框（desktop），模块以顶部细线分隔，保持无圆角无阴影 */
.frame{
  margin:18px auto;
  padding:0;
  max-width:var(--max-width);
  min-width:var(--min-width);
}

.ad-container{font-size:13px;color:var(--muted);padding:10px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0}
.ad-top{border-top:0}

/* Article grid base */
.article-grid{
  display:block;
  background:var(--bg);
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}

/* Content and side basic styles */
.content{padding:28px 36px 40px}
.side{padding:28px 36px 40px;border-top:1px solid var(--line);}

/* Title composition: 标题居中 摘要左对齐 */
.title{
  margin:0 0 10px 0;
  font-size:28px;
  font-weight:700;
  text-align:center;
  letter-spacing:0.2px;
  line-height:1.15;
}
/* 视觉识别：标题首字母/首字使用克制强调色 */
.title::first-letter{color:var(--accent);font-weight:800}

.meta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:12px;color:var(--muted);font-size:13px}
.meta .published{opacity:0.95}
.current{color:var(--muted)}

.summary{margin:0 0 18px 0;color:var(--muted);text-align:left;max-width:100%}

.article-body{color:var(--text);font-size:16px}
.article-body :where(h2,h3){color:var(--text);margin:18px 0 8px}
.article-body p{margin:0 0 12px}

/* Panels */
.panel{border-top:1px solid var(--line);padding-top:12px}
.panel-title{margin:0 0 8px 0;font-size:14px}
.meta-panel dl{margin:0;font-size:14px;color:var(--muted)}
.meta-panel dt{font-weight:600;color:var(--text);display:inline}
.meta-panel dd{margin:2px 0 10px 0}

/* FAQ：桌面左问右答表格式 */
.faq{margin-top:18px}
.faq-inner dl{margin:0}
.faq-inner dt{font-weight:600;margin:12px 0;color:var(--text)}
.faq-inner dd{margin:6px 0 12px 0;color:var(--muted)}

/* Related: 两列摘要列表 */
.related{margin-top:22px;border-top:1px solid var(--line);padding-top:14px}
.related-heading{margin:0 0 12px 0;font-size:15px}
.related-list ul{list-style:none;padding:0;margin:0;display:block}
.related-list li{padding:10px 0;border-top:1px solid var(--line)}
.related-list a{font-weight:600;color:var(--text);text-decoration:none}
.related-list p{margin:6px 0 0;color:var(--muted);font-size:14px}

/* Footer */
.site-footer{border-top:1px solid var(--line);padding:14px 18px;text-align:center;color:var(--muted);font-size:13px}

/* Desktop rules (1024px and up): 两栏 8/4 非对称网格、外框细边线 */
@media (min-width:1024px){
  .frame{max-width:1240px;min-width:1120px}
  .article-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:32px;padding:0}
  .content{grid-column:1 / span 8;padding:40px 48px;border-top:1px solid var(--line)}
  .side{grid-column:9 / span 4;padding:40px 36px;border-left:1px solid var(--line);border-top:0}

  /* FAQ: 左问右答 */
  .faq-inner dl{display:grid;grid-template-columns:180px 1fr;column-gap:24px;border-top:1px solid var(--line);padding-top:12px}
  .faq-inner dt{margin:12px 0}
  .faq-inner dd{margin:12px 0}

  /* Related 两列列表 */
  .related-list ul{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  .related-list li{border-top:0;padding:0}
  .related-list li + li{padding-top:12px;border-top:1px solid var(--line)}
}

/* Mobile rules (max-width:767px): 移除左右边线、侧栏下移为顺序区块 */
@media (max-width:767px){
  :root{--gutter:16px}
  .frame{min-width:0;max-width:100%;margin:0;padding:0}
  .article-grid{border-left:0;border-right:0}
  .content{padding:18px}
  .side{padding:18px;border-left:0;border-top:1px solid var(--line)}
  .meta{justify-content:flex-start}
  .title{font-size:20px}
  .summary{font-size:15px}

  /* FAQ 在手机端恢复自然顺序（问题在上，答案下） */
  .faq-inner dl{display:block}
  .faq-inner dt{font-weight:600}
  .faq-inner dd{margin-left:0}

  /* Related two-column 改为单列 */
  .related-list ul{display:block}
  .related-list li{border-top:1px solid var(--line);padding:12px 0}

  /* 防止横向滚动 */
  body,html{overflow-x:hidden}
}

/* 中等屏（768-1023）使用紧凑布局（仍非手机） */
@media (min-width:768px) and (max-width:1023px){
  .content{padding:28px}
  .side{padding:20px;border-top:1px solid var(--line)}
  .title{font-size:22px}
}
