:root{
  --bg-ivory:#F7F5F2;
  --deep-purple-gray:#2b2430; /* 主题深色 */
  --accent:#6b5b7a; /* 主题点线色 */
  --text:#222;
  --muted:#666;
  --line:rgba(0,0,0,0.06);
  --max-container:1440px;
  --min-container:1120px;
  --gap:28px;
  --track-width:160px; /* 侧轨窄列 */
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

/* 基础重置与语义 */
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg-ivory);color:var(--text);line-height:1.65}
a{color:var(--accent);text-decoration:none}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* 双层报头：上层稳重，次层极窄 */
.site-header{background:var(--deep-purple-gray);color:var(--bg-ivory)}
.header-top{max-width:var(--max-container);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:18px 20px}
.brand .home-link{font-weight:700;color:var(--bg-ivory)}
.top-nav ul{display:flex;gap:18px;list-style:none;padding:0;margin:0}
.top-nav a, .top-nav span{color:var(--bg-ivory);font-size:14px}
.header-slim{height:6px;background:linear-gradient(90deg, rgba(107,91,122,0.15), rgba(43,36,48,0.08))}

/* 页面容器与视觉竖线（visual_signature） */
.page-wrap{max-width:var(--max-container);margin:22px auto;padding:0 20px}
.layout-grid{display:grid;grid-template-columns:var(--track-width) var(--gap) 820px 1fr;grid-column-gap:var(--gap);align-items:start;min-width:var(--min-container);max-width:var(--max-container);position:relative}
.layout-grid::before{content:"";position:absolute;left:calc((100% - (820px + var(--gap) + var(--track-width) + 1fr))/2 + var(--track-width) + var(--gap) - 1px);top:0;bottom:0;width:1px;background:var(--accent);opacity:0.18;pointer-events:none}

/* 侧轨（章节轨道） */
.chap-track{padding:6px 12px;background:#fff;border:1px solid var(--line);box-shadow:none}
.chap-track ol{margin:0;padding:10px 8px;list-style:none}
.chap-track li{padding:8px 0;color:var(--muted);font-size:13px}

/* 主体内容区 */
.content-area{grid-column:3/4}
.article-head{background:#fff;padding:18px;border:1px solid var(--line);display:block}
.head-grid{display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start}
.title-wrap h1{margin:0;font-size:28px;line-height:1.2;color:var(--deep-purple-gray)}
.title-wrap .meta{margin-top:10px;font-size:13px;color:var(--muted)}
.summary{background:#fff;padding:12px;border:1px solid var(--line);font-size:15px;color:var(--muted)}

/* 文章样式 */
.article{background:#fff;border:1px solid var(--line);padding:22px;margin-top:18px}
.article-body{color:var(--text)}
.article-body p{margin:0 0 14px}

/* 广告容器（独立块） */
.ad{background:#fff;border:1px dashed var(--line);padding:12px;margin:18px 0;color:var(--muted);font-size:13px}
.ad-top,.ad-middle,.ad-bottom{max-width:100%}

/* FAQ 区（主题色顶部边线） */
.faq{margin-top:20px;background:#fff;border:1px solid var(--line);padding:12px}
.faq::before{content:'';display:block;height:4px;background:var(--accent);margin:-12px -12px 12px}
.faq-inner{color:var(--text)}

/* 相关阅读 - 桌面四列紧凑网格 */
.related{margin-top:18px;padding:12px;background:#fff;border:1px solid var(--line)}
.related-title{margin:0 0 10px 0;font-size:14px;color:var(--muted)}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.related-grid > *{font-size:14px;color:var(--accent);padding:6px 4px;border-top:1px solid transparent}

/* 填充列用于保持非对称感 */
.filler{grid-column:4/5}

/* 页脚 */
.site-footer{padding:18px 20px;text-align:center;color:var(--muted);font-size:13px}

/* 可访问性与排版密度 */
h1,h2,h3{color:var(--deep-purple-gray);margin:0}
p,li{font-size:15px}

/* 桌面专属规则（>=1024px）——明确的桌面结构差异 */
@media (min-width:1024px){
  /* Desktop container 强制范围（合同要求 1120-1440） */
  .page-wrap{width:clamp(1120px, 78vw, 1440px);}
  .layout-grid{grid-template-columns:var(--track-width) var(--gap) 820px 1fr;}
  .head-grid{grid-template-columns:1fr 320px}
  .title-wrap h1{font-size:34px}
  .summary{font-size:15px}
}

/* 移动端规则（<=767px）——独立重排，侧轨下移并变成横线 */
@media (max-width:767px){
  .page-wrap{padding:0 12px}
  .layout-grid{display:block;min-width:0}
  .chap-track{order:2;margin-top:12px;border-left:0;border-right:0;border-top:0;border-bottom:1px solid var(--line);background:transparent;padding:8px 0}
  .chap-track ol{display:flex;gap:12px;overflow:auto;padding:6px 2px}
  .chap-track li{white-space:nowrap}
  .content-area{order:1}
  .head-grid{display:block}
  .title-wrap h1{font-size:20px}
  .summary{margin-top:12px;border:1px solid var(--line)}
  .article{padding:16px}
  .related-grid{display:grid;grid-template-columns:1fr;gap:8px}
  .layout-grid::before{display:none}
  .page-wrap{width:100%}
}

/* 中间断点：平板到小屏（768-1023） */
@media (min-width:768px) and (max-width:1023px){
  .page-wrap{width:100%;padding:0 18px}
  .layout-grid{display:grid;grid-template-columns:80px 20px 1fr;grid-auto-flow:row}
  .chap-track{grid-column:1/2}
  .content-area{grid-column:3/4}
  .head-grid{grid-template-columns:1fr}
  .related-grid{grid-template-columns:repeat(2,1fr)}
}
