/* 起初查经网站 · 2026-10-28 约翰设计。纸色底、墨色字、金色点题；封面是夜里的山，跟起初动画一个调子。 */
:root{--paper:#fbf7ef;--card:#fffdf8;--ink:#1f2a3c;--muted:#5b6475;--line:#e6dccb;--gold:#b08a3e;--goldbg:#f6ecd4;--night:#151a2c;
--serif:"Songti SC","Noto Serif SC","Source Han Serif SC","STSong",serif;--sans:-apple-system,"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif;--kai:"Kaiti SC","STKaiti","KaiTi",serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.75}
a{color:inherit}
.top{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:10px 18px;background:rgba(21,26,44,.94);color:#f3e6c4;backdrop-filter:blur(6px)}
.top .logo{font-family:var(--serif);font-size:20px;letter-spacing:.3em;text-decoration:none;font-weight:700}
.top nav a{margin-left:18px;font-size:14px;text-decoration:none;opacity:.85}
.wrap{max-width:720px;margin:0 auto;padding:0 18px 40px}
.wrap.narrow{max-width:620px;padding-top:30px}
.kicker{font-size:13px;letter-spacing:.08em;color:var(--gold)}
.dim{color:#a3a9b5}
.small{font-size:12px}

/* 首页 */
.home{position:relative;min-height:clamp(360px,62vh,560px);display:flex;align-items:flex-end;color:#f3e6c4;overflow:hidden;
background:radial-gradient(ellipse at 50% 120%,#6b5a46 0%,#3b3440 30%,#1c2034 60%,var(--night) 100%)}
.home .stars{position:absolute;inset:0;background-image:radial-gradient(1px 1px at 12% 18%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 33% 9%,#f3e6c4 50%,transparent 51%),radial-gradient(1.5px 1.5px at 58% 22%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 77% 12%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 88% 30%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 22% 36%,#f3e6c4 50%,transparent 51%),radial-gradient(1.5px 1.5px at 66% 40%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 46% 30%,#f3e6c4 50%,transparent 51%);opacity:.7}
.home .htxt,.hero .htxt{position:relative;padding:0 22px 34px;max-width:720px;margin:0 auto;width:100%}
.home h1{font-family:var(--serif);font-size:64px;letter-spacing:.35em;margin:6px 0 4px;font-weight:700}
.home .v1{font-family:var(--serif);font-size:19px;margin:0}
cite{display:block;font-style:normal;font-size:13px;color:var(--muted);margin-top:4px}
.home cite{color:#c9b98f}
.bh{font-family:var(--serif);font-size:22px;margin:38px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.bh small{font-family:var(--sans);font-size:13px;color:var(--muted);font-weight:400;margin-left:8px}
.stops{display:grid;gap:12px}
.stop{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;padding:14px 16px}
.stop b{font-family:var(--serif);font-size:18px}
.stop p{font-family:var(--serif);margin:6px 0 0}
.howto{color:var(--muted);font-size:15px}
.todaycard{display:block;text-decoration:none;background:var(--night);color:#f3e6c4;border-radius:12px;padding:20px}
.todaycard b{display:block;font-family:var(--serif);font-size:28px;margin:4px 0}
.todaycard span:last-child{opacity:.8}
.book{font-family:var(--serif);font-size:17px;color:var(--gold);margin:22px 0 8px}
.list .it{display:flex;align-items:baseline;gap:10px;padding:10px 4px;border-bottom:1px dashed var(--line);text-decoration:none}
.list .it .no{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px;width:2.6em}
.list .it .tt{font-family:var(--serif);font-size:17px;flex:1}
.list .it .rg{font-size:13px;color:var(--muted)}
.list .it .soon{font-size:11px;color:#a3a9b5;border:1px solid var(--line);border-radius:10px;padding:0 7px}
.list .it:not(.on) .tt{color:#8b919c}
.list .it.on .tt{font-weight:700}
.list .it.on::after{content:"›";color:var(--gold);font-size:20px}

/* 每期 */
.hero{position:relative;color:#f3e6c4;background:var(--night);overflow:hidden}
.hero .art svg{display:block;width:100%;height:clamp(260px,46vh,420px)}
.hero .htxt{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(21,26,44,.85))}
.hero h1{font-family:var(--serif);font-size:42px;margin:4px 0 0;letter-spacing:.08em}
.hero .sub{font-family:var(--serif);font-size:17px;opacity:.85}
.keyverse{font-family:var(--serif);font-size:21px;line-height:1.7;margin:26px 0 0;padding:18px 20px;background:var(--card);border:1px solid var(--line);border-radius:12px;text-align:center}
.seg{position:sticky;top:46px;z-index:10;display:flex;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line);margin:18px -18px 0;padding:0 10px}
.seg a{flex:1;text-align:center;padding:10px 0;text-decoration:none;font-size:15px;color:var(--muted)}
.seg a:hover{color:var(--ink)}
.block{scroll-margin-top:96px}
audio{width:100%}
.tag,.tag2{display:inline-block;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.05em;color:#fff;background:var(--gold);border-radius:4px;padding:1px 8px;margin-right:10px;vertical-align:3px}
.tag2{background:var(--ink)}
.pray{font-family:var(--serif);background:var(--goldbg);border-radius:10px;padding:12px 16px;margin-bottom:10px}
.hint{font-size:13px;color:var(--muted)}
.keyswatch{background:var(--goldbg);padding:0 4px}
details.chap{background:var(--card);border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:0 16px}
details.chap>summary{font-family:var(--serif);font-size:18px;font-weight:700;padding:14px 0;cursor:pointer}
.phead{font-family:var(--kai);color:#2a64a8;margin:16px 0 4px;font-size:16px}
p.v{font-family:var(--serif);font-size:18px;line-height:1.9;margin:2px 0;padding:2px 6px;border-radius:4px}
p.v sup{font-family:var(--sans);font-size:11px;color:var(--gold);margin-right:4px;font-weight:600}
p.v.key{background:var(--goldbg)}
.ednote{font-size:13px;color:var(--muted);margin:0 6px 8px 22px;padding-left:10px;border-left:2px solid var(--gold)}
details.toc{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 16px;margin-bottom:10px}
details.toc summary{padding:12px 0;cursor:pointer;font-weight:600}
details.toc a{display:block;text-decoration:none;padding:6px 0;border-top:1px dashed var(--line);font-size:15px}
details.toc a b{color:var(--gold);margin-right:10px}
.long{font-family:var(--serif);font-size:18px;line-height:1.95}
.long h2{font-size:23px;margin:40px 0 10px;scroll-margin-top:96px}
.long h3{font-size:19px;margin:28px 0 6px;color:var(--ink)}
.long h3::before{content:"◆ ";color:var(--gold);font-size:13px;vertical-align:2px}
.long p{margin:10px 0}
.long blockquote,.wrap.narrow blockquote{margin:18px 0;padding:14px 18px;border-left:4px solid var(--gold);background:var(--card);border-radius:0 10px 10px 0;font-size:19px}
.note{margin:18px 0;padding:14px 16px;background:#eef1f6;border-radius:10px;font-size:16px;line-height:1.85}
figure{margin:22px -6px}
figure svg{width:100%;height:auto;display:block;border-radius:10px;border:1px solid var(--line)}
figcaption{font-family:var(--sans);font-size:13px;color:var(--muted);margin-top:6px;text-align:center}
.tcap{font-family:var(--sans);font-size:14px;font-weight:600;margin:20px 0 6px}
.tbl{overflow-x:auto;margin:0 -6px}
table{border-collapse:collapse;font-family:var(--sans);font-size:14px;line-height:1.6;min-width:560px}
th,td{border:1px solid var(--line);padding:6px 8px;vertical-align:top;text-align:left}
th{background:var(--goldbg)}
.sources{font-family:var(--sans);font-size:13px;color:var(--muted);margin-top:24px}
.slides{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 18px;padding:0 18px 8px;margin:0 -18px}
.slide{flex:0 0 88%;scroll-snap-align:start}
.slide img{width:100%;display:block;border-radius:10px;border:1px solid var(--line)}
.prayer{font-family:var(--serif);font-size:19px;line-height:2;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 22px}
.prayer p{margin:6px 0}
.pn{display:flex;justify-content:space-between;margin-top:40px;font-size:15px}
.pn a{text-decoration:none;color:var(--gold)}
.pt{font-family:var(--serif)}
.foot{text-align:center;color:var(--muted);font-family:var(--serif);padding:30px 18px 50px;border-top:1px solid var(--line)}
@media (min-width:760px){
 .stops{grid-template-columns:repeat(3,1fr)}
 .home h1{font-size:88px}
 .slide{flex-basis:70%}
 .hero h1{font-size:54px}
}
/* 001—018 没有封面图：夜空 */
.hero.plain{min-height:clamp(230px,36vh,330px);background:radial-gradient(ellipse at 50% 130%,#6b5a46 0%,#3b3440 30%,#1c2034 62%,var(--night) 100%)}
.hero.plain .stars{position:absolute;inset:0;background-image:radial-gradient(1px 1px at 14% 20%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 36% 12%,#f3e6c4 50%,transparent 51%),radial-gradient(1.5px 1.5px at 61% 26%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 80% 14%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 90% 34%,#f3e6c4 50%,transparent 51%),radial-gradient(1px 1px at 24% 40%,#f3e6c4 50%,transparent 51%);opacity:.7}
figure img{width:100%;height:auto;display:block;border-radius:10px;border:1px solid var(--line);background:#fff}
