/* ===== 千锋录 阅读站 ===== */
:root{
  --ink:#16324f;          /* 墨蓝 */
  --cinnabar:#b3352b;     /* 朱砂 */
  --gold:#a8791f;
  --bg:#f4f1ea;
  --panel:#fbf9f4;
  --line:#e0d9cb;
  --text:#242019;
  --muted:#7a7264;
  --shadow:0 2px 14px rgba(30,25,15,.09);
  --sans:"PingFang SC","Microsoft YaHei","Hiragino Sans GB",system-ui,sans-serif;
  --serif:"Songti SC","SimSun","Noto Serif CJK SC",Georgia,serif;
}
body.theme-paper{ --bg:#f4f1ea; --panel:#fbf9f4; --text:#242019; --muted:#7a7264; --line:#e0d9cb; }
body.theme-sepia{ --bg:#efe4cd; --panel:#f7eddb; --text:#3b2f1e; --muted:#8a7860; --line:#ddcdae; }
body.theme-night{ --bg:#16181c; --panel:#1e2126; --text:#d6d2c8; --muted:#8b8880; --line:#31363d; --ink:#8fb4dc; --cinnabar:#e0705f; }

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:var(--bg);color:var(--text);font-family:var(--sans);
  -webkit-font-smoothing:antialiased;transition:background .25s,color .25s;}
button{font-family:inherit;cursor:pointer;}
kbd{background:var(--bg);border:1px solid var(--line);border-bottom-width:2px;
  border-radius:4px;padding:1px 6px;font-size:12px;font-family:var(--sans);}

/* ---- 顶栏 ---- */
.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:14px;
  padding:0 18px;height:56px;background:var(--panel);border-bottom:1px solid var(--line);}
.brand{display:flex;align-items:baseline;gap:10px;}
.brand-main{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--ink);letter-spacing:3px;}
.brand-sub{font-size:12px;color:var(--muted);letter-spacing:1px;}
.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px;}
.vc{font-size:12.5px;color:var(--muted);white-space:nowrap;}
.icon-btn{background:none;border:1px solid var(--line);border-radius:6px;color:var(--muted);
  width:34px;height:32px;font-size:15px;line-height:1;}
.icon-btn:hover{color:var(--ink);border-color:var(--ink);}
.only-mobile{display:none;}

/* ---- 布局 ---- */
.layout{display:flex;align-items:flex-start;max-width:1240px;margin:0 auto;}
.sidebar{position:sticky;top:56px;width:268px;flex:0 0 268px;height:calc(100vh - 56px);
  overflow-y:auto;background:var(--panel);border-right:1px solid var(--line);}
.side-head{padding:14px 14px 10px;border-bottom:1px solid var(--line);}
#chapSearch{width:100%;padding:8px 11px;font-size:13px;border:1px solid var(--line);
  border-radius:7px;background:var(--bg);color:var(--text);outline:none;font-family:inherit;}
#chapSearch:focus{border-color:var(--ink);}
.side-stat{margin-top:8px;font-size:11.5px;color:var(--muted);}
.chap-list{padding:6px 0 60px;}
.chap-item{display:block;width:100%;text-align:left;background:none;border:none;
  padding:8px 16px;font-size:13.5px;color:var(--text);line-height:1.5;
  border-left:3px solid transparent;font-family:inherit;}
.chap-item:hover{background:rgba(0,0,0,.035);}
.chap-item.active{color:var(--cinnabar);border-left-color:var(--cinnabar);
  background:rgba(179,53,43,.07);font-weight:600;}
.chap-item .ci-no{color:var(--muted);font-size:11.5px;margin-right:6px;}
.chap-item.active .ci-no{color:var(--cinnabar);}
body.theme-night .chap-item:hover{background:rgba(255,255,255,.05);}
.scrim{display:none;}

/* ---- 主区 ---- */
.main{flex:1;min-width:0;padding:34px 44px 60px;}
.view{max-width:760px;margin:0 auto;}
.hidden{display:none !important;}

/* ---- 正文 ---- */
.reader{font-family:var(--serif);font-size:18px;line-height:2.0;letter-spacing:.4px;}
.reader h2{font-family:var(--serif);
  font-size:26px;letter-spacing:2px;color:var(--ink);margin:0 0 24px;font-weight:700;}
/* 标题中的阿拉伯数字用无衬线渲染，避免宋体数字偏小 */
.reader h2 .num{font-family:var(--sans);}
.reader p{margin:0 0 1.15em;text-indent:2em;text-align:justify;}
/* 章节插画：插在对应情节段落上方，段间上下都留白 */
.reader .illust{display:block;width:100%;height:auto;margin:30px 0 26px;
  border-radius:10px;background:var(--line);
  box-shadow:0 2px 14px rgba(0,0,0,.10);}
/* 章首图紧跟标题，无需额外上边距 */
.reader h2 + .illust{margin-top:2px;}
body.theme-night .reader .illust{box-shadow:0 2px 14px rgba(0,0,0,.35);opacity:.92;}

.chap-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-top:48px;padding-top:22px;border-top:1px solid var(--line);}
.nav-btn{background:var(--panel);border:1px solid var(--line);border-radius:7px;
  padding:9px 16px;font-size:13.5px;color:var(--text);}
.nav-btn:hover{border-color:var(--ink);color:var(--ink);}
.nav-btn:disabled{opacity:.35;cursor:default;border-color:var(--line);color:var(--muted);}
.nav-mid{font-size:12.5px;color:var(--muted);}

/* ---- 响应式 ---- */
@media(max-width:900px){
  .only-mobile{display:inline-block;}
  .sidebar{position:fixed;top:56px;left:0;z-index:50;transform:translateX(-100%);
    transition:transform .25s;box-shadow:var(--shadow);height:calc(100vh - 56px);}
  .sidebar.open{transform:none;}
  .scrim{display:block;position:fixed;inset:56px 0 0;background:rgba(0,0,0,.4);
    z-index:45;opacity:0;pointer-events:none;transition:opacity .25s;}
  .scrim.on{opacity:1;pointer-events:auto;}
  .main{padding:22px 18px 80px;}
  .reader{font-size:17px;line-height:1.95;}
  .brand-sub{display:none;}
  #btnMenu{width:auto;padding:0 12px;font-size:13.5px;letter-spacing:1px;}
}
