
:root{
  --ink:#1c1a17; --sub:#6b655d; --line:#e5e0d8;
  --bg:#faf8f4; --accent:#8c2f22; --card:#fffdf9;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg);color:var(--ink);
  font-family:"Songti SC","Source Han Serif SC","Noto Serif CJK SC",Georgia,serif;
  line-height:1.95;-webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;}
header{
  border-bottom:1px solid var(--line);
  padding:18px 0;background:rgba(250,248,244,.92);
  position:sticky;top:0;z-index:10;backdrop-filter:blur(8px);
}
.hd{max-width:760px;margin:0 auto;padding:0 24px;display:flex;
    align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.brand{font-size:19px;letter-spacing:.16em;}
.brand:hover{color:var(--accent);}
nav a{font-size:13px;letter-spacing:.1em;color:var(--sub);margin-left:18px;}
nav a:hover{color:var(--accent);}
nav a.on{color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:2px;}
.wrap{max-width:760px;margin:0 auto;padding:0 24px;}
footer{border-top:1px solid var(--line);margin-top:80px;padding:28px 0 48px;}
.fin{max-width:760px;margin:0 auto;padding:0 24px;font-size:12px;
     color:var(--sub);letter-spacing:.1em;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}
/* 首页 */
.hero{padding:clamp(56px,12vh,120px) 0 64px;}
.hero h1{font-size:clamp(36px,7vw,54px);letter-spacing:.18em;font-weight:400;margin:0 0 10px;}
.hero .en{font-family:Georgia,serif;font-size:12px;letter-spacing:.32em;
          text-transform:uppercase;color:var(--sub);margin-bottom:38px;}
.hero .rule{width:48px;height:1px;background:var(--accent);margin:0 0 30px;}
.hero .lead{font-size:20px;margin:0 0 18px;}
.hero .note{color:var(--sub);font-size:16px;margin:0;}
/* 目录 */
.vol{margin-top:56px;}
.vol h2{font-size:14px;letter-spacing:.24em;color:var(--sub);font-weight:400;
        border-bottom:1px solid var(--line);padding-bottom:12px;margin:0 0 4px;}
.vol .tag{font-size:12px;color:var(--sub);letter-spacing:.14em;margin-top:10px;}
.toc{list-style:none;margin:0;padding:0;}
.toc li{border-bottom:1px solid var(--line);}
.toc a{display:flex;justify-content:space-between;gap:16px;
       padding:15px 2px;font-size:16.5px;}
.toc a:hover{color:var(--accent);}
.toc .no{font-family:Georgia,serif;font-size:12px;color:var(--sub);
         letter-spacing:.08em;flex:0 0 auto;padding-top:4px;}
/* 文章 */
.art{padding:56px 0 0;}
.crumb{font-size:12px;color:var(--sub);letter-spacing:.12em;margin-bottom:26px;}
.crumb a:hover{color:var(--accent);}
.art h1{font-size:clamp(26px,4.6vw,34px);font-weight:400;letter-spacing:.06em;
        margin:0 0 10px;line-height:1.5;}
.meta{font-size:12px;color:var(--sub);letter-spacing:.1em;
      border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:38px;}
.body{font-size:17px;}
.body h2{font-size:22px;font-weight:400;letter-spacing:.05em;margin:44px 0 18px;}
.body h3{font-size:18px;font-weight:400;letter-spacing:.04em;margin:34px 0 14px;}
.body p{margin:0 0 20px;text-align:justify;}
.body ul,.body ol{margin:0 0 20px;padding-left:1.4em;}
.body li{margin:0 0 8px;}
.body blockquote{margin:24px 0;padding:2px 0 2px 18px;
                 border-left:2px solid var(--accent);color:var(--sub);}
.body hr{border:0;border-top:1px solid var(--line);margin:36px 0;}
.body code{font-family:ui-monospace,Menlo,monospace;font-size:.9em;
           background:#f1ede6;padding:1px 5px;border-radius:3px;}
.body pre{background:#f1ede6;padding:16px;overflow:auto;border-radius:3px;font-size:13px;}
.body pre code{background:none;padding:0;}
.body strong{font-weight:600;}
.body table{border-collapse:collapse;width:100%;margin:0 0 22px;font-size:15px;}
.body th,.body td{border:1px solid var(--line);padding:9px 12px;text-align:left;}
.body th{background:#f4f0e9;font-weight:400;}
/* 翻页 */
.pager{display:flex;justify-content:space-between;gap:20px;margin-top:64px;
       border-top:1px solid var(--line);padding-top:24px;font-size:14px;}
.pager a:hover{color:var(--accent);}
.pager .dir{font-size:11px;color:var(--sub);letter-spacing:.14em;display:block;margin-bottom:6px;}
.terms h3{font-size:17px;font-weight:400;letter-spacing:.06em;
  color:var(--accent);margin:34px 0 8px;padding-bottom:6px;
  border-bottom:1px solid var(--line);}
.terms p{margin:0 0 6px;font-size:16px;line-height:1.85;}
.toc li.lock{color:#b8b2a8;cursor:default;}
.toc li.lock .no{color:#c9c4bb;}
.toc li.lock .t{padding:15px 0;}
.hold{font-size:12px;color:var(--sub);letter-spacing:.1em;
      margin-top:14px;padding:10px 14px;border-left:2px solid var(--line);
      background:#f4f0e9;}
@media (max-width:640px){
  .hd{padding:0 26px;}
  .wrap{padding:0 26px;}
  .fin{padding:0 26px;}
  nav a{margin-left:0;margin-right:16px;}
  .toc a{font-size:16px;padding:16px 0;}
  body{font-size:17px;line-height:2.0;}
  .body p{margin:0 0 1.2em;}
  /* 正文页单独加宽：正文比页框再收进来一档，两侧各 8px 额外留白 */
  .wrap.art{padding:0 34px;}
  .art .body p,.art .body li{text-align:left;}
}
@media (max-width:400px){
  .hd{padding:0 22px;}
  .wrap{padding:0 22px;}
  .fin{padding:0 22px;}
  .wrap.art{padding:0 26px;}
  body{font-size:16.5px;}
}
