/* ============================================================
   领地 · FREEHOLD — 档案馆线（P2）
   /articles/ · 栏目 · 系列 · 文章详情 · 母题
   昼场景（纸）。仅换呈现层，复用既有 .gm-* DOM 与 JS 钩子。
   自带 :root token，只在档案馆线页面 enqueue，不污染其它页。
   ============================================================ */
:root{
  --paper:#f5f5f1;--paper-warm:#fdfdfb;--ink:#121212;--ink-soft:#6a6a66;
  --indigo:#3a3a36;--amber:#121212;--moss:#4a4a46;--flare:#FF4F00;
  --line:rgba(18,18,18,.08);--line-strong:rgba(18,18,18,.30);
  --serif:'Noto Serif SC','Source Han Serif SC','Songti SC','SimSun',serif;
  --sans:'Noto Sans SC','PingFang SC','Microsoft YaHei',system-ui,sans-serif;
  --mono:'IBM Plex Mono','SFMono-Regular',ui-monospace,'SF Mono','Menlo','Consolas',monospace;
}
.fh-inner-mono{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase}

/* ---- 内页顶栏：restyle 既有 .gm-site-header 为纸色测绘风 ---- */
body:not(.home) .gm-site-header{
  background:rgba(245,245,241,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);box-shadow:none;
}
body:not(.home) .gm-site-header__inner{max-width:1200px;margin:0 auto;padding:16px 40px}
body:not(.home) .gm-branding{display:inline-flex;align-items:center;gap:12px}
body:not(.home) .gm-branding::before{
  content:"";width:30px;height:30px;flex-shrink:0;
  background:url(logo-dark.png) center/contain no-repeat;
}
body:not(.home) .gm-brand-text strong{font-family:var(--serif);font-weight:700;font-size:15px;letter-spacing:.08em;color:var(--ink)}
body:not(.home) .gm-brand-text span{font-family:var(--mono);font-size:9px;letter-spacing:.22em;color:var(--ink-soft);text-transform:uppercase}
body:not(.home) .gm-nav a{font-size:13.5px;letter-spacing:.05em;color:var(--ink-soft);transition:color .25s}
body:not(.home) .gm-nav a:hover{color:var(--ink)}

/* ---- 通用容器 / 面包屑 ---- */
.gm-container{max-width:1200px;margin:0 auto;padding:0 40px}
.gm-breadcrumbs{
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-soft);padding:30px 0 8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;
}
.gm-breadcrumbs a{color:var(--ink-soft);transition:color .25s}
.gm-breadcrumbs a:hover{color:var(--flare)}
.gm-breadcrumbs__sep{opacity:.4}
.gm-breadcrumbs [aria-current="page"]{color:var(--ink)}

/* ---- 档案馆总目 header（复用 .gm-tax-hero.gm-card） ---- */
.gm-tax-hero.gm-card{
  background:none;border:0;border-bottom:1px solid var(--line);box-shadow:none;
  border-radius:0;padding:26px 0 40px;margin:8px 0 40px;position:relative;
}
.gm-tax-hero .gm-launch-kicker{
  font-family:var(--mono);font-size:11px;letter-spacing:.26em;color:var(--flare);
  text-transform:uppercase;margin-bottom:16px;display:inline-flex;align-items:center;gap:12px;
}
.gm-tax-hero .gm-launch-kicker::after{content:"";width:40px;height:1px;background:var(--flare);opacity:.5}
.gm-tax-hero h1{
  font-family:var(--serif);font-weight:900;font-size:clamp(32px,4vw,52px);
  letter-spacing:.03em;line-height:1.3;color:var(--ink);margin:0 0 14px;
}
.gm-tax-hero p{color:var(--ink-soft);font-size:15px;line-height:1.9;max-width:680px;margin:0}
.gm-tax-hero__stats{
  margin-top:22px;display:flex;flex-wrap:wrap;gap:26px;
  font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:var(--ink-soft);text-transform:uppercase;
}
.gm-tax-hero__stats strong{font-size:20px;color:var(--ink);letter-spacing:0}
.gm-tax-hero--series{border-bottom-style:dashed}

/* ---- 书架标签：栏目切换 ---- */
.gm-column-switch{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.gm-column-switch__item{
  font-family:var(--sans);font-size:13.5px;letter-spacing:.03em;color:var(--ink-soft);
  border:1px solid var(--line);border-radius:3px;padding:8px 14px;
  display:inline-flex;align-items:center;gap:8px;transition:border-color .25s,color .25s,background .25s;
}
.gm-column-switch__item small{font-family:var(--mono);font-size:10px;color:var(--flare);letter-spacing:.1em}
.gm-column-switch__item:hover{border-color:var(--line-strong);color:var(--ink)}
.gm-column-switch__item.is-current{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.gm-column-switch__item.is-current small{color:var(--paper)}

/* ---- 系列 chips ---- */
.gm-series-chips{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 40px}
.gm-series-chips__label{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--ink-soft);text-transform:uppercase}
.gm-series-chips__item{
  font-size:12.5px;color:var(--moss);border:1px dashed rgba(18,18,18,.2);border-radius:3px;
  padding:6px 12px;transition:border-color .25s,color .25s;
}
.gm-series-chips__item small{font-family:var(--mono);color:var(--ink-soft)}
.gm-series-chips__item:hover{border-color:var(--flare);color:var(--ink)}

/* ---- 档案签卡（复用 .gm-archive-card，与首页 slip 一致） ---- */
.gm-post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin:0 0 50px}
.gm-archive-card{
  position:relative;background:var(--paper-warm);border:1px solid var(--line);
  border-radius:4px;padding:30px 30px 26px;display:flex;flex-direction:column;
  transition:border-color .3s;box-shadow:none;
}
.gm-archive-card:hover{border-color:var(--line-strong)}
.gm-post-meta{
  display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-bottom:14px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;color:var(--ink-soft);text-transform:uppercase;
}
.gm-post-meta__series{color:var(--flare)}
.gm-archive-card h2{margin:0 0 12px}
.gm-archive-card h2 a{
  font-family:var(--serif);font-weight:700;font-size:19px;line-height:1.6;letter-spacing:.02em;color:var(--ink);
  transition:color .25s;
}
.gm-archive-card h2 a:hover{color:var(--flare)}
.gm-entry-summary{
  font-size:13.5px;color:var(--ink-soft);line-height:1.85;flex:1;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.gm-read-more{
  margin-top:18px;font-size:13px;color:var(--indigo);letter-spacing:.08em;
  display:inline-flex;gap:6px;transition:color .3s,transform .3s;
}
.gm-archive-card:hover .gm-read-more{color:var(--flare);transform:translateX(3px)}

/* ---- 分页 ---- */
.gm-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:20px 0 70px}
.gm-pagination .page-numbers{
  font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;color:var(--ink-soft);
  border:1px solid var(--line);border-radius:3px;padding:9px 14px;transition:border-color .25s,color .25s,background .25s;
}
.gm-pagination a.page-numbers:hover{border-color:var(--line-strong);color:var(--ink)}
.gm-pagination .page-numbers.current{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* ---- 系列时间轴（系列页 .gm-series-list） ---- */
.gm-series-list{list-style:none;margin:0 0 70px;padding:0;position:relative}
.gm-series-list::before{content:"";position:absolute;left:19px;top:8px;bottom:8px;width:1px;background-image:linear-gradient(var(--indigo) 45%,transparent 45%);background-size:1px 8px;opacity:.5}
.gm-series-list__item{display:flex;gap:26px;padding:22px 0;position:relative}
.gm-series-list__index{
  font-family:var(--mono);font-size:13px;font-weight:600;color:var(--flare);letter-spacing:.08em;
  width:40px;flex-shrink:0;text-align:center;background:var(--paper);padding:2px 0;z-index:1;
}
.gm-series-list__body h2{margin:6px 0 10px}
.gm-series-list__body h2 a{font-family:var(--serif);font-weight:700;font-size:20px;line-height:1.5;color:var(--ink);transition:color .25s}
.gm-series-list__body h2 a:hover{color:var(--flare)}

/* ============================================================
   文章详情页（单列 720px 阅读优先）
   ============================================================ */
.gm-single-layout{display:block;max-width:720px;margin:0 auto}
.gm-single-card{background:none;border:0;box-shadow:none;border-radius:0;padding:0}
.gm-single-header{border-bottom:1px solid var(--line);padding-bottom:34px;margin-bottom:38px}
.gm-single-eyebrow{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.gm-tag{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  border:1px solid var(--line-strong);border-radius:3px;padding:5px 10px;color:var(--ink-soft);
  transition:border-color .25s,color .25s;
}
.gm-tag:hover{border-color:var(--flare);color:var(--flare)}
.gm-tag--column{color:var(--ink);border-color:var(--ink)}
.gm-tag--series{color:var(--moss)}
.gm-single-header h1{
  font-family:var(--serif);font-weight:900;font-size:clamp(28px,3.4vw,40px);
  line-height:1.42;letter-spacing:.02em;color:var(--ink);margin:0 0 22px;
}
.gm-archive-no{
  font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--flare);
  text-transform:uppercase;margin-bottom:18px;display:flex;align-items:center;gap:12px;
}
.gm-archive-no::before{content:"+";opacity:.7}
.gm-single-meta{
  display:flex;flex-wrap:wrap;gap:18px;align-items:center;
  font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--ink-soft);text-transform:uppercase;
}
.gm-single-meta a{color:var(--indigo)}
.gm-single-meta a:hover{color:var(--flare)}
.gm-single-intro{
  font-family:var(--serif);font-size:17px;line-height:1.95;color:var(--ink);
  letter-spacing:.02em;margin-top:22px;padding-left:18px;border-left:3px solid var(--flare);
}
/* 顶部内联目录 */
.gm-single-content + *,.gm-toc{margin-top:0}
.gm-single-card > .gm-toc{
  background:var(--paper-warm);border:1px solid var(--line);border-radius:4px;
  padding:22px 26px;margin-bottom:40px;
}
.gm-toc__label{font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--flare);text-transform:uppercase;display:block;margin-bottom:14px}
.gm-toc ol{list-style:none;margin:0;padding:0}
.gm-toc__item{margin:7px 0;line-height:1.6}
.gm-toc__item a{font-size:14px;color:var(--ink-soft);transition:color .25s}
.gm-toc__item a:hover{color:var(--flare)}
.gm-toc__item--l3{padding-left:20px;font-size:13px}
/* 正文排版升级 */
.gm-single-content{font-size:16.5px;line-height:1.95;color:var(--ink);letter-spacing:.01em}
.gm-single-content h2{font-family:var(--serif);font-weight:700;font-size:25px;letter-spacing:.03em;margin:2.2em 0 .8em;line-height:1.5}
.gm-single-content h3{font-family:var(--serif);font-weight:700;font-size:20px;letter-spacing:.03em;margin:1.8em 0 .7em}
.gm-single-content h2::before{content:"— ";color:var(--flare)}
.gm-single-content p{margin:0 0 1.5em}
.gm-single-content a{color:var(--indigo);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(58,58,54,.35)}
.gm-single-content a:hover{color:var(--flare);text-decoration-color:var(--flare)}
.gm-single-content blockquote{
  margin:1.8em 0;padding:6px 0 6px 24px;border-left:3px solid var(--amber);
  font-family:var(--serif);font-size:17px;line-height:1.9;color:var(--ink-soft);
}
.gm-single-content img{max-width:100%;height:auto;border-radius:4px;margin:1.5em 0}
.gm-single-content code{font-family:var(--mono);font-size:.9em;background:rgba(18,18,18,.05);padding:2px 6px;border-radius:3px}
.gm-single-content pre{background:var(--night,#0e0e0e);color:#f2f1ec;padding:20px 22px;border-radius:4px;overflow-x:auto;margin:1.6em 0;font-family:var(--mono);font-size:13.5px;line-height:1.7}
.gm-single-content pre code{background:none;padding:0;color:inherit}
.gm-single-content ul,.gm-single-content ol{margin:0 0 1.5em;padding-left:1.4em}
.gm-single-content li{margin:.5em 0}
/* 关键词标签 */
.gm-single-tags{display:flex;flex-wrap:wrap;gap:10px;margin:40px 0}
.gm-tag--keyword{color:var(--moss);border-color:var(--line-strong)}
/* 系列上下篇：沿此线索继续读 */
.gm-series-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;margin:44px 0}
.gm-series-nav__label{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;color:var(--flare);text-transform:uppercase;margin-bottom:18px}
.gm-series-nav__links{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.gm-series-nav__link{display:block}
.gm-series-nav__link span{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--ink-soft);text-transform:uppercase;display:block;margin-bottom:6px}
.gm-series-nav__link--next{text-align:right}
.gm-series-nav__link strong{font-family:var(--serif);font-weight:700;font-size:16px;line-height:1.5;color:var(--ink);transition:color .25s}
.gm-series-nav__link:hover strong{color:var(--flare)}

/* 文末：相关档案 + 问档案馆（新增区块，见 single.php） */
.gm-single-foot{max-width:720px;margin:56px auto 0}
.gm-foot-head{font-family:var(--mono);font-size:11px;letter-spacing:.24em;color:var(--flare);text-transform:uppercase;margin-bottom:22px;display:flex;align-items:center;gap:12px}
.gm-foot-head::after{content:"";flex:1;height:1px;background:var(--line)}
.gm-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:60px}
.gm-related-slip{background:var(--paper-warm);border:1px solid var(--line);border-radius:4px;padding:20px 20px 18px;transition:border-color .3s}
.gm-related-slip:hover{border-color:var(--line-strong)}
.gm-related-slip .d{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--ink-soft);text-transform:uppercase;display:block;margin-bottom:10px}
.gm-related-slip .t{font-family:var(--serif);font-weight:700;font-size:15.5px;line-height:1.6;color:var(--ink);transition:color .25s;display:block}
.gm-related-slip:hover .t{color:var(--flare)}
/* 内嵌问档案馆（复用 ask JS） */
.gm-inline-ask{background:var(--paper-warm);border:1px solid var(--line);border-radius:4px;padding:28px 30px;margin-bottom:60px;position:relative}
.gm-inline-ask::before{content:"REQ · 带着这篇继续问";position:absolute;top:-9px;left:26px;background:var(--paper-warm);padding:0 12px;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--flare)}
.gm-inline-ask h3{font-family:var(--serif);font-weight:700;font-size:18px;letter-spacing:.03em;color:var(--ink);margin:0 0 6px}
.gm-inline-ask p{font-size:13px;color:var(--ink-soft);margin:0 0 18px}
.gm-inline-ask form{display:flex;gap:16px;align-items:stretch}
.gm-inline-ask .gm-ask__input{flex:1;border:none;background:transparent;outline:none;font-family:var(--sans);font-size:15px;color:var(--ink);padding:12px 4px;border-bottom:1px dashed rgba(18,18,18,.22)}
.gm-inline-ask .gm-ask__submit{flex-shrink:0;border:1.5px solid var(--ink);background:transparent;color:var(--ink);font-family:var(--serif);font-weight:700;font-size:14px;letter-spacing:.22em;padding:11px 26px;border-radius:6px;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.gm-inline-ask .gm-ask__submit:hover{background:var(--flare);border-color:var(--flare);color:#060606}
.gm-inline-ask .gm-ask__result{margin-top:20px}

@media (max-width:900px){
  .gm-post-grid{grid-template-columns:1fr}
  .gm-related-grid{grid-template-columns:1fr}
  .gm-series-nav__links{grid-template-columns:1fr}
  .gm-series-nav__link--next{text-align:left}
}
@media (max-width:768px){
  .gm-container{padding:0 22px}
  body:not(.home) .gm-site-header__inner{padding:14px 22px}
  .gm-single-content{font-size:16px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
