/* ============================================================
   清教徒恩言
   美学：羊皮纸底 / 墨色字 / 深碧玉点缀 / 庄重适读。
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Cormorant+Garamond:wght@500;600&display=swap');
@import url('https://cdn.jsdelivr.net/npm/lxgw-wenkai-webfont/style.css');

:root{
  --bg:#f6f1e6; --bg2:#efe7d6; --card:#fcf9f1; --ink:#2a2521;
  --sub:#7c6f57; --rule:#cdbb93; --accent:#2f5d50; --accent2:#3f7868;
  --dark:#1f2a25; --gold:#c7a96a;
  --en:"EB Garamond","Georgia",serif;
  --zh:"LXGW WenKai","Kaiti SC","STKaiti","KaiTi",serif;
  --disp:"Cormorant Garamond","EB Garamond",serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--ink);line-height:1.85;font-size:19px;
  font-family:var(--en);-webkit-font-smoothing:antialiased;}
a{color:var(--accent);text-decoration:none;transition:.2s;}
a:hover{color:var(--accent2);}

/* ---- 中英切换：默认显英文 ---- */
.l-zh,.pane-zh{display:none;}
body.lang-zh .l-en,body.lang-zh .pane-en{display:none;}
body.lang-zh .l-zh{display:inline;}
body.lang-zh .pane-zh{display:block;}
/* 中文模式整体改用中文字体 */
body.lang-zh{font-family:var(--zh);}

/* ---------- 顶栏 ---------- */
.nav{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;
  align-items:center;gap:16px;flex-wrap:wrap;padding:13px 5vw;
  background:rgba(246,241,230,.95);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--rule);}
.brand{display:block;line-height:1.1;color:var(--ink);}
.brand .bz{font-size:21px;letter-spacing:3px;}
.brand small{display:block;font-size:10.5px;letter-spacing:4px;color:var(--sub);
  font-family:var(--disp);}
.links{display:flex;align-items:center;flex-wrap:wrap;gap:0;}
.links a{margin-left:20px;color:var(--sub);font-size:16px;letter-spacing:.5px;}
.links a.on{color:var(--accent);border-bottom:2px solid var(--rule);padding-bottom:3px;}
.channels{display:inline-flex;align-items:center;gap:8px;margin-left:22px;padding-left:18px;border-left:1px solid var(--rule);}
.channel-link{margin-left:0!important;border:1px solid var(--rule);border-radius:999px;padding:3px 10px;font-size:13px!important;color:var(--accent)!important;background:rgba(252,249,241,.62);}
.channel-link:hover{background:var(--accent);color:#fff!important;text-decoration:none;}
.langbtn{margin-left:22px;background:transparent;border:1.4px solid var(--accent);
  color:var(--accent);border-radius:999px;padding:4px 16px;font-size:14px;
  letter-spacing:1px;cursor:pointer;font-family:var(--disp);transition:.2s;}
.langbtn:hover{background:var(--accent);color:#f7efde;}
@media(max-width:760px){.nav{align-items:flex-start}.links{row-gap:10px}.channels{order:3;margin-left:0;padding-left:0;border-left:0;width:100%;}.links a{margin-left:13px;font-size:15px;}
  .langbtn{margin-left:13px;}}

/* ---------- 首页 hero ---------- */
.hero{max-width:900px;margin:0 auto;padding:84px 24px 26px;text-align:center;}
.hero h1{font-size:50px;letter-spacing:10px;font-weight:400;}
body.lang-en .hero h1{font-family:var(--disp);letter-spacing:6px;}
.hero-en{font-family:var(--disp);letter-spacing:7px;color:var(--sub);
  font-size:16px;margin-top:6px;}
body.lang-zh .hero-en{display:none;}
.mission{font-size:21px;color:var(--accent);letter-spacing:1.5px;margin-top:20px;}
.kicker{font-size:14px;letter-spacing:4px;color:var(--gold);margin-bottom:10px;}
.quick-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px;}
.cta{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 18px;border:1.4px solid var(--accent);border-radius:999px;color:var(--accent);background:transparent;font-size:15px;letter-spacing:1px;}
.cta:hover{background:var(--accent);color:#fff;text-decoration:none;}
.cta.primary{background:var(--accent);color:#fff;}
.cta.primary:hover{background:var(--accent2);}
.rule{width:84px;height:2px;background:var(--rule);margin:34px auto 0;}

/* ---------- 区块 ---------- */
main{min-height:60vh;}
section{max-width:1060px;margin:0 auto;padding:40px 5vw;}
.home-sec.alt{background:var(--bg2);max-width:none;}
.home-sec.alt>*{max-width:1060px;margin-left:auto;margin-right:auto;}
.sec-title{text-align:center;font-size:30px;letter-spacing:5px;font-weight:400;
  margin-bottom:30px;}
body.lang-en .sec-title,body.lang-en .page-head h1{font-family:var(--disp);letter-spacing:3px;}
.more{text-align:center;margin-top:28px;font-size:16px;letter-spacing:1px;}
.page-head{text-align:center;padding-top:64px;padding-bottom:6px;}
.page-head h1{font-size:40px;font-weight:400;letter-spacing:6px;}
.lead{max-width:620px;margin:16px auto 0;color:var(--sub);font-size:17px;}

/* ---------- 首页阅读区 ---------- */
.spread-grid,.channel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;}
.spread-card,.channel-panel{background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:24px 22px;box-shadow:0 2px 12px rgba(120,90,50,.07);}
.spread-card .num{display:inline-block;font-family:var(--disp);font-size:15px;color:var(--gold);letter-spacing:2px;margin-bottom:10px;}
.spread-card h3,.channel-panel h3{font-size:22px;font-weight:500;color:var(--accent);line-height:1.35;margin-bottom:10px;}
body.lang-en .spread-card h3,body.lang-en .channel-panel h3{font-family:var(--disp);}
.spread-card p,.channel-panel p{color:#5c5346;font-size:16px;line-height:1.75;}
.channel-zone{padding-bottom:54px;}
.channel-panel{display:flex;flex-direction:column;gap:12px;}
.channel-panel .cta{align-self:flex-start;margin-top:auto;}
.pill{display:inline-flex!important;align-self:flex-start;border:1px solid var(--rule);border-radius:999px;padding:3px 12px!important;color:var(--gold)!important;background:#f7f0df;font-family:var(--disp);font-size:13px!important;letter-spacing:2px;text-indent:0!important;margin:0!important;}
.home-note{text-align:center;color:var(--sub);font-size:14px;margin-top:20px;}

/* ---------- 首页精选 ---------- */
[hidden]{display:none!important;}
.feature-stage{padding-top:28px;}
.feature-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  gap:22px;align-items:stretch;}
.feature-card{background:var(--card);border:1px solid var(--rule);border-radius:8px;
  padding:30px 28px;box-shadow:0 2px 12px rgba(120,90,50,.07);}
.feature-kicker{color:var(--gold);font-size:13px;letter-spacing:3px;
  font-family:var(--disp);text-transform:uppercase;margin-bottom:14px;}
.featured-quote blockquote{border:0;margin:0;color:#29241f;font-size:27px;line-height:1.85;}
body.lang-zh .featured-quote blockquote{font-size:25px;line-height:1.95;}
.featured-quote footer{margin-top:20px;color:var(--sub);display:flex;justify-content:space-between;
  gap:16px;flex-wrap:wrap;font-size:16px;}
.featured-audio{background:linear-gradient(180deg,#fdfaf2 0%,#efe6d3 100%);
  display:flex;flex-direction:column;justify-content:center;}
.featured-audio h2{font-size:28px;line-height:1.35;font-weight:500;color:var(--accent);margin-bottom:8px;}
body.lang-en .featured-audio h2{font-family:var(--disp);}
.featured-audio p{color:#5c5346;font-size:16px;line-height:1.75;}
.feature-author{color:var(--sub)!important;font-size:15px!important;margin-bottom:10px;}
.feature-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;}
.audio-empty{border-style:dashed;background:var(--bg2);}
@media(max-width:820px){.feature-grid{grid-template-columns:1fr}.featured-quote blockquote{font-size:23px;}
  body.lang-zh .featured-quote blockquote{font-size:22px;}}

/* ---------- 搜索与直达 ---------- */
.library-tools{max-width:900px;margin:0 auto 22px;padding:18px 5vw 8px;}
.search-field{display:flex;align-items:center;gap:12px;max-width:680px;margin:0 auto 14px;
  color:var(--sub);font-size:15px;}
.search-field span{white-space:nowrap;color:var(--accent);}
.search-field input{width:100%;border:1px solid var(--rule);border-radius:8px;background:var(--card);
  color:var(--ink);font:inherit;font-size:16px;line-height:1.4;padding:9px 12px;outline:none;}
.search-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(47,93,80,.12);}
.chipbar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:9px auto 0;max-width:860px;}
.chipbar.compact{max-height:164px;overflow:auto;padding-bottom:4px;}
.tool-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rule);border-radius:999px;
  background:rgba(252,249,241,.76);color:var(--accent);padding:5px 12px;font-size:14px;
  line-height:1.35;cursor:pointer;font-family:inherit;}
.tool-chip:hover,.tool-chip.active{background:var(--accent);border-color:var(--accent);color:#fff;}
.tool-chip .cnt{font-size:12px;color:var(--sub);}
.tool-chip.active .cnt,.tool-chip:hover .cnt{color:#e9ddc3;}
.filter-empty{text-align:center;color:var(--sub);font-size:16px;margin-top:18px;}
@media(max-width:640px){.search-field{align-items:stretch;flex-direction:column;gap:6px;}
  .tool-chip{font-size:13px;padding:5px 10px;}}

/* ---------- 语录墙 ---------- */
.gem-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:22px;margin-top:10px;}
.gem{background:var(--card);border:1px solid var(--rule);border-radius:10px;
  padding:28px 26px 22px;box-shadow:0 2px 10px rgba(120,90,50,.06);
  display:flex;flex-direction:column;justify-content:center;}
.gem:hover{box-shadow:0 8px 22px rgba(120,90,50,.12);transform:translateY(-2px);}
.gem blockquote{border:none;font-size:20px;line-height:1.95;color:#33302a;quotes:none;}
body.lang-zh .gem blockquote{font-size:19px;line-height:2.0;}
.gem figcaption{margin-top:16px;text-align:right;color:var(--sub);font-size:14.5px;
  font-family:var(--disp);letter-spacing:.5px;}
body.lang-zh .gem figcaption{font-family:var(--zh);}
.gem-section{padding-top:14px;}
.author{font-size:24px;font-weight:400;letter-spacing:2px;color:var(--accent);
  border-bottom:1px solid var(--rule);padding-bottom:8px;margin-bottom:22px;}
.author .years{font-size:14px;color:var(--sub);font-family:var(--disp);letter-spacing:1px;}
.prep{color:#b09a6f;font-style:italic;font-size:16px;}

/* ---------- 文章列表 ---------- */
.source-group{max-width:900px;margin:0 auto;padding:30px 5vw 22px;border-top:1px solid var(--rule);}
.source-group:first-of-type{border-top:0;}
.source-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;
  flex-wrap:wrap;margin:0 auto 22px;max-width:780px;}
.source-head h2{font-size:28px;font-weight:400;letter-spacing:3px;color:var(--accent);line-height:1.35;}
.source-head p{color:var(--sub);font-size:14.5px;}
.source-kicker{font-size:12px!important;letter-spacing:3px;color:var(--gold)!important;margin-bottom:4px;}
.source-head .years{font-size:14px;color:var(--sub);font-family:var(--disp);letter-spacing:1px;}
.source-head a{color:var(--accent);}
.source-group .article-author-group{padding:10px 0 24px;max-width:780px;}
.source-group .article-author-group .author{font-size:22px;margin-bottom:8px;}
.art-list{display:flex;flex-direction:column;gap:2px;max-width:780px;margin:0 auto;}
.art-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;
  flex-wrap:wrap;padding:18px 18px;border-bottom:1px dashed var(--rule);
  border-radius:8px;color:var(--ink);}
.art-row:hover{background:var(--card);}
.art-title{font-size:21px;letter-spacing:.5px;}
.art-meta{color:var(--sub);font-size:14.5px;font-family:var(--disp);letter-spacing:.5px;}
body.lang-zh .art-meta{font-family:var(--zh);}
.badge{display:inline-block;margin-left:8px;font-size:12px;padding:2px 9px;border-radius:999px;
  letter-spacing:.5px;vertical-align:middle;}
.badge.ok{background:#e3efe9;color:#2f5d50;border:1px solid #bcd8cd;}
.badge.todo{background:#f1e8d6;color:#9a7b3e;border:1px solid #e0cda0;}
.badge.short{background:#f6efe2;color:#8b6f3d;border:1px solid #ddc99f;}
.badge.same-title{background:#eef0ea;color:#5a6254;border:1px solid #ccd2c2;}

/* ---------- 文章正文 ---------- */
.article{max-width:720px;margin:0 auto;padding:64px 24px 30px;}
.art-head{text-align:center;border-bottom:1px solid var(--rule);
  padding-bottom:24px;margin-bottom:8px;}
.art-head h1{font-size:34px;font-weight:500;letter-spacing:2px;line-height:1.3;}
body.lang-en .art-head h1{font-family:var(--disp);}
.byline{margin-top:14px;color:var(--sub);font-size:15px;font-family:var(--disp);letter-spacing:.5px;}
body.lang-zh .byline{font-family:var(--zh);}
.art-body{padding-top:14px;}
.art-body h2{font-size:25px;font-weight:500;letter-spacing:1px;margin:34px 0 10px;color:var(--accent);}
.art-body h3{font-size:20px;font-weight:600;margin:26px 0 8px;}
.art-body p{margin:0 0 18px;}
.art-body blockquote{margin:16px 0;padding:8px 22px;border-left:3px solid var(--rule);
  color:#4a4336;font-style:italic;background:var(--card);}
.art-body strong{color:var(--accent);font-weight:600;}
.art-body hr{border:none;border-top:1px solid var(--rule);margin:30px 0;}
.prep-box{background:var(--bg2);border:1px dashed var(--rule);border-radius:10px;
  padding:26px;color:#7c6f57;text-align:center;font-size:17px;}

/* ---------- 阅读区（关于页等）---------- */
.reading{max-width:700px;margin:0 auto;}
.reading p{margin:0 0 18px;}

/* ---------- 页脚 ---------- */
.foot{margin-top:50px;border-top:1px solid var(--rule);background:var(--bg2);
  text-align:center;padding:30px 5vw;color:var(--sub);font-size:15px;line-height:1.8;}
.foot a{color:var(--accent);}
.foot .tiny{font-size:12.5px;opacity:.7;margin-top:6px;}

/* ---------- 灵修文章（纯中文栏目）---------- */
.devo .art-body{font-family:var(--zh);}
.art-source{max-width:720px;margin:26px auto 0;color:var(--sub);font-size:14px;
  font-family:var(--zh);}
.copyright{max-width:720px;margin:8px auto 0;color:var(--sub);font-size:13px;
  font-family:var(--zh);border-top:1px dashed var(--rule);padding-top:14px;opacity:.85;}

/* ---------- 灵修文章 · 作者分类 ---------- */
.devo-chips{max-width:760px;margin:0 auto 10px;padding:0 24px;display:flex;
  flex-wrap:wrap;gap:10px;justify-content:center;}
.devo-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;
  border:1px solid var(--rule);border-radius:999px;background:var(--card);
  color:var(--accent);font-size:14px;font-family:var(--zh);text-decoration:none;}
.devo-chip:hover{background:var(--bg2);}
.devo-chip .cnt{font-size:12px;color:var(--sub);}
.devo-author{max-width:760px;margin:0 auto;padding:18px 24px 0;}
.devo-author .author{scroll-margin-top:80px;}
