/* ===== Qidian theme — 深色顶栏 / 三栏密集 / 金色点缀 ===== */
:root{
  --ink:#1c1c22;
  --ink-2:#2a2a33;
  --gold:#c9a227;
  --gold-l:#e0bf55;
  --text:#22222a;
  --text-2:#7b7b86;
  --line:#e6e2d9;
  --bg:#f6f4ef;
  --card:#ffffff;
  --r:4px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  font:14px/1.65 "PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;
  color:var(--text);background:var(--bg);
}
a{color:inherit;text-decoration:none}
img{display:block;border:0;max-width:100%}
ul,ol{list-style:none}
button{font:inherit;cursor:pointer;border:0;background:none}
em{font-style:normal}
.s_gray,.gray{color:var(--text-2)}
.tc{text-align:center}
.hl{color:var(--gold);font-style:normal;font-weight:700}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 16px}
.page{padding-top:18px;padding-bottom:40px}

/* ---------- header ---------- */
.site-head{background:var(--ink);border-bottom:2px solid var(--gold)}
.head-inner{display:flex;align-items:center;gap:22px;height:64px}
.brand{display:flex;align-items:baseline;gap:6px;color:var(--gold);font-size:22px;font-weight:800;letter-spacing:1px;white-space:nowrap}
.brand em{font-size:12px;font-weight:400;color:#8b8b96;letter-spacing:0;font-style:normal}
.search-box{flex:1;max-width:440px;display:flex;height:34px;background:#2c2c35;border:1px solid #3a3a45;border-radius:var(--r);overflow:hidden}
.search-box:focus-within{border-color:var(--gold)}
.search-box .search_input{flex:1;min-width:0;border:0;background:none;outline:none;padding:0 12px;font-size:13.5px;color:#dedee4}
.search-box .search_input::placeholder{color:#6f6f7c}
.search-box button{width:52px;background:var(--gold);color:#231f10;font-size:14px}
.search-box button:hover{background:var(--gold-l)}
.head-links{display:flex;gap:20px;font-size:14px;color:#b9b9c2;margin-left:auto}
.head-links a:hover{color:var(--gold-l)}
.cat-strip{background:var(--ink-2)}
.cat-strip-inner{display:flex;gap:0;overflow-x:auto;height:42px;align-items:stretch;scrollbar-width:none}
.cat-strip-inner::-webkit-scrollbar{display:none}
.cat-strip-inner a{display:flex;align-items:center;padding:0 16px;font-size:14px;color:#a9a9b4;white-space:nowrap;border-right:1px solid #333340}
.cat-strip-inner a:hover{color:#fff;background:#33333d}
.cat-strip-inner a.on{color:#231f10;background:var(--gold);font-weight:700}
.cat-strip-inner a.end{margin-left:auto;color:var(--gold-l);border-right:0}

/* ---------- 3 col ---------- */
.layout-3{display:grid;grid-template-columns:196px minmax(0,1fr) 272px;gap:16px;align-items:start}
.side-left,.side-right{position:sticky;top:120px;display:flex;flex-direction:column;gap:12px}
.side-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.side-box h4{font-size:13px;font-weight:700;color:#fff;background:var(--ink);padding:9px 12px;letter-spacing:.5px}
.cat-list{padding:6px 0}
.cat-list li a{display:block;padding:7px 14px;font-size:13.5px;color:#4a4a55;border-left:3px solid transparent}
.cat-list li a:hover{background:#faf8f3;color:var(--gold);border-left-color:var(--gold)}
.cat-list li a.on{color:var(--gold);font-weight:700;background:#fbf7ea;border-left-color:var(--gold)}
.side-rank{padding:8px 12px}
.side-rank li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;border-bottom:1px dotted #eee9de}
.side-rank li:last-child{border-bottom:0}
.side-rank .no{flex:0 0 18px;height:18px;display:grid;place-items:center;font-size:11px;font-weight:700;background:#efeadf;color:#9a9483;border-radius:2px}
.side-rank .no.hot{background:var(--gold);color:#231f10}
.side-rank a{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.side-rank a:hover{color:var(--gold)}
.side-list{padding:8px 12px}
.side-list li{display:flex;gap:8px;padding:5px 0;font-size:13px;border-bottom:1px dotted #eee9de}
.side-list li:last-child{border-bottom:0}
.side-list a{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.side-list a:hover{color:var(--gold)}
.side-list em{color:#b3ada0;font-size:12px;white-space:nowrap}

/* ---------- panel ---------- */
.main-col{display:flex;flex-direction:column;gap:14px;min-width:0}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px 16px}
.panel-head{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--line);padding-bottom:9px;margin-bottom:14px}
.panel-head h3{font-size:16px;font-weight:800;position:relative;padding-left:10px}
.panel-head h3::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:3px;background:var(--gold)}
.panel-head .more{font-size:12.5px;color:var(--text-2)}
.panel-head .more:hover{color:var(--gold)}

/* focus */
.focus{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.focus-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:.2s}
.focus-card:hover{border-color:var(--gold);box-shadow:0 6px 18px rgba(28,28,34,.08)}
.focus-cover{position:relative;aspect-ratio:3/4;overflow:hidden;background:#eee}
.focus-cover img{width:100%;height:100%;object-fit:cover}
.focus-info{padding:10px 12px 12px}
.focus-info h2{font-size:14.5px;font-weight:800;line-height:1.4;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.focus-author{font-size:12px;color:var(--text-2);margin-bottom:6px}
.focus-intro{font-size:12.5px;line-height:1.6;color:#5f5f6a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.badge{position:absolute;left:0;top:0;background:rgba(28,28,34,.82);color:var(--gold-l);font-size:11px;padding:2px 7px;border-bottom-right-radius:3px}

/* book grid */
.book-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px 10px}
.book{min-width:0}
.book-cover{aspect-ratio:3/4;border-radius:3px;overflow:hidden;background:#f0ece3;border:1px solid var(--line)}
.book-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.book:hover .book-cover img{transform:scale(1.04)}
.book-name{margin-top:6px;font-size:13px;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.book:hover .book-name{color:var(--gold)}
.book-sub{font-size:11.5px;color:#a8a29a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* update table */
.update-table li{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dotted #ece7dc;font-size:13px}
.update-table li:last-child{border-bottom:0}
.t-name{flex:0 0 34%;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t-name:hover{color:var(--gold)}
.t-cat{flex:0 0 auto;font-size:11.5px;color:#8a8578;background:#f4f1e9;padding:1px 6px;border-radius:2px}
.t-chap{flex:1;min-width:0;color:#6c6c78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t-chap:hover{color:var(--gold)}
.t-author{flex:0 0 90px;color:#8f8a7e;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}
.t-time{flex:0 0 42px;color:#b0aa9c;font-size:12px;text-align:right}

/* ---------- book rows (category) ---------- */
.book-rows li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #f0ece3}
.book-rows li:last-child{border-bottom:0}
.row-cover{flex:0 0 62px;width:62px;aspect-ratio:3/4;border-radius:3px;overflow:hidden;border:1px solid var(--line);background:#f2eee6}
.row-cover img{width:100%;height:100%;object-fit:cover}
.row-main{flex:1;min-width:0}
.row-name{font-size:14.5px;font-weight:700}
.row-name:hover{color:var(--gold)}
.row-intro{font-size:12.5px;color:#6c6c78;line-height:1.6;margin:4px 0 5px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.row-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#9d978a}
.row-meta a:hover{color:var(--gold)}

/* ---------- detail ---------- */
.detail{display:flex;gap:20px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:14px}
.detail-cover{position:relative;flex:0 0 142px;width:142px;aspect-ratio:3/4;border-radius:3px;overflow:hidden;border:1px solid var(--line)}
.detail-cover img{width:100%;height:100%;object-fit:cover}
.detail-main{flex:1;min-width:0}
.detail-main h1{font-size:22px;font-weight:800;line-height:1.4;margin-bottom:8px}
.detail-sub{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:#6c6c78;margin-bottom:8px}
.detail-sub .tag{background:#f4f1e9;padding:2px 8px;font-size:12px;border-radius:2px;color:#6c6c78}
.detail-sub .tag.gray{color:#9d978a}
.detail-last{font-size:13px;color:#6c6c78;margin-bottom:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detail-last a{color:var(--gold);font-weight:600}
.detail-last em{color:#b0aa9c;font-size:12px;margin-left:6px}
.detail-btns{display:flex;flex-wrap:wrap;gap:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 22px;font-size:14px;font-weight:700;border-radius:var(--r);transition:.18s}
.btn.primary{background:var(--gold);color:#231f10}
.btn.primary:hover{background:var(--gold-l)}
.btn.ghost{background:#f4f1e9;color:#4a4a55;border:1px solid var(--line)}
.btn.ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn.sm{height:30px;padding:0 14px;font-size:12.5px}
.btn.block{width:100%}

.tabs{display:flex;gap:0;background:var(--card);border:1px solid var(--line);border-bottom:0;border-radius:var(--r) var(--r) 0 0}
.tab{padding:12px 22px;font-size:14.5px;color:#6c6c78;font-weight:600;border-right:1px solid var(--line)}
.tab.on{color:var(--gold);background:#fbf7ea;box-shadow:inset 0 -2px 0 var(--gold)}
.intro-box{background:var(--card);border:1px solid var(--line);border-top:0;border-radius:0 0 var(--r) var(--r);padding:18px;font-size:14px;line-height:2;color:#3a3a44}
.intro-box p+p{margin-top:10px}
.kw{font-size:12.5px;color:var(--text-2);margin-top:12px!important}
.kw a{margin-right:8px;color:#6c6c78}
.chapter-grid{display:block;column-count:3;column-gap:22px}
.chapter-grid li{padding:7px 0;border-bottom:1px dotted #ece7dc;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;break-inside:avoid;-webkit-column-break-inside:avoid}
.chapter-grid li a:hover{color:var(--gold)}
.chapter-grid li.vol{grid-column:1/-1;font-weight:700;color:#fff;background:var(--ink);padding:6px 10px;border-radius:2px;margin-top:8px;border-bottom:0}

/* ---------- reader ---------- */
.reader{max-width:880px;padding-top:14px}
.reader-bar{position:sticky;top:106px;z-index:30;display:flex;align-items:center;gap:12px;height:44px;background:rgba(246,244,239,.96);border-bottom:1px solid var(--line);margin-bottom:16px}
.reader-bar .back{font-size:13.5px;color:#6c6c78}
.reader-bar-title{flex:1;text-align:center;font-size:13.5px;color:#9d978a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reader-bar .cog{color:#8a8578;padding:4px}
#text_control{position:absolute;right:0;top:44px;display:none;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(28,28,34,.12);padding:12px;min-width:200px;z-index:60}
#text_control.on{display:block}
.fontsize{display:flex;gap:6px;margin-bottom:10px}
.fontsize button{flex:1;height:32px;background:#f4f1e9;font-size:13px;font-weight:700}
.fontsize button:hover{background:#fbf7ea;color:var(--gold)}
.reader-tools{display:flex;gap:14px;justify-content:center;font-size:14px;color:#6c6c78}
.reader-tools a:hover{color:var(--gold)}
.reader-tools .rep{font-size:12px;color:#b03a3a}
.reader-body{background:var(--card);border:1px solid var(--line);padding:30px 44px 40px}
.reader-title{font-size:21px;font-weight:800;line-height:1.5;margin-bottom:8px}
.reader-meta{font-size:12.5px;color:#9d978a;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.reader-meta a:hover{color:var(--gold)}
.reader-meta span{color:#d3ccbe}
.content{font-size:17px;line-height:2.05;color:#2b2b35;letter-spacing:.2px;word-break:break-word}
.content p{margin-bottom:1.05em;text-indent:2em}
.reader-nav{display:flex;gap:8px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line)}
.reader-nav a{flex:1;height:42px;display:flex;align-items:center;justify-content:center;gap:6px;background:#f4f1e9;font-size:14px;font-weight:700;border-radius:var(--r)}
.reader-nav a:hover{background:#fbf7ea;color:var(--gold)}
.reader-nav a.disabled{color:#bdb7aa;pointer-events:none}
.reader-tips{margin-top:14px;text-align:center;font-size:12px}

/* ---------- lists ---------- */
.result-list{display:flex;flex-direction:column;gap:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:4px 16px}
.result-list>li{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid #f0ece3}
.result-list>li:last-child{border-bottom:0}
.result-list>li.empty{flex-direction:column;align-items:center;gap:12px;padding:44px 0;color:var(--text-2)}
.r-cover{flex:0 0 76px;width:76px;aspect-ratio:3/4;border-radius:3px;overflow:hidden;border:1px solid var(--line);background:#f2eee6}
.r-cover img{width:100%;height:100%;object-fit:cover}
.r-main{flex:1;min-width:0}
.r-main h3{font-size:15.5px;font-weight:700;margin-bottom:4px}
.r-main h3:hover{color:var(--gold)}
.r-meta{font-size:12.5px;color:#9d978a;margin-bottom:5px}
.r-intro{font-size:13px;color:#6c6c78;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:5px}
.r-last{font-size:12.5px;color:#8a8578}
.r-last a:hover{color:var(--gold)}

/* page head / filter */
.page-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.page-head h1{font-size:20px;font-weight:800;position:relative;padding-left:11px}
.page-head h1::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--gold)}
.page-head .count{font-size:12.5px;color:var(--text-2)}
.filter-bar{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;margin-bottom:14px}
.filter-row{display:flex;flex-wrap:wrap;gap:8px}
.filter-row+.filter-row{margin-top:10px;padding-top:10px;border-top:1px solid #f0ece3}
.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 14px;font-size:13px;background:#f4f1e9;color:#5f5a50;border-radius:2px;border:1px solid transparent}
.chip:hover{border-color:var(--gold);color:var(--gold)}
.chip.on{background:var(--gold);color:#231f10;font-weight:700}

/* ranks */
.rank-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rank-col h4{font-size:13px;font-weight:700;color:#8a8578;padding-bottom:7px;border-bottom:1px solid var(--line);margin-bottom:8px}
.rank-ol li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px}
.rank-ol .no{flex:0 0 18px;height:18px;display:grid;place-items:center;font-size:11px;font-weight:700;background:#f4f1e9;color:#9a9483}
.rank-ol .no.hot{background:var(--gold);color:#231f10}
.rank-ol a{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rank-ol a:hover{color:var(--gold)}
.rank-ol em{font-size:11.5px;color:#b3ada0;white-space:nowrap}
.rank-list li{display:flex;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;margin-bottom:10px}
.rank-no{flex:0 0 26px;height:26px;display:grid;place-items:center;font-size:13px;font-weight:800;background:#f4f1e9;color:#9a9483}
.rank-no.hot{background:var(--gold);color:#231f10}
.rank-body{flex:1;min-width:0}
.rank-name{font-size:15px;font-weight:700}
.rank-name:hover{color:var(--gold)}
.rank-intro{font-size:12.5px;color:#6c6c78;margin:5px 0;line-height:1.6;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.rank-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#9d978a}
.rank-meta a:hover{color:var(--gold)}

/* pages */
.pages,.pagelink{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:20px 0}
.pagelink a,.pagelink strong{min-width:34px;height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;background:#fff;border:1px solid var(--line);border-radius:2px;color:#5f5a50}
.pagelink a:hover{border-color:var(--gold);color:var(--gold)}
.pagelink strong{background:var(--gold);border-color:var(--gold);color:#231f10;font-weight:700}

/* auth */
.auth-card{max-width:380px;margin:36px auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;border-top:3px solid var(--gold)}
.auth-card h1{font-size:20px;font-weight:800;margin-bottom:4px}
.auth-sub{font-size:12.5px;color:var(--text-2);margin-bottom:20px}
.auth-card label{display:block;margin-bottom:12px}
.auth-card label span{display:block;font-size:12.5px;color:#6c6c78;margin-bottom:5px}
.auth-card input{width:100%;height:40px;border:1px solid var(--line);border-radius:2px;padding:0 12px;font-size:13.5px;outline:none;background:#fbfaf6}
.auth-card input:focus{border-color:var(--gold);background:#fff}
.auth-tip{margin-top:14px;font-size:12.5px;color:var(--text-2);text-align:center}
.auth-tip a{color:var(--gold)}

/* footer */
.site-foot{margin-top:30px;background:var(--ink);color:#8b8b96;padding:26px 0;text-align:center}
.foot-brand a{font-size:16px;font-weight:800;color:var(--gold)}
.foot-desc{font-size:12.5px;margin-top:5px}
.foot-meta{font-size:12px;margin-top:9px;color:#6f6f7c}
.foot-meta a{color:#9a9aa6}
.foot-meta span{margin:0 6px}
.links{font-size:12.5px;line-height:2;color:var(--text-2)}
.links a{margin-right:12px}
.links a:hover{color:var(--gold)}
.tabbar{display:none}

/* night */
body.night{background:#141416;color:#c3c3cc}
body.night .panel,body.night .side-box,body.night .detail,body.night .tabs,body.night .intro-box,body.night .reader-body,body.night .result-list,body.night .rank-list li,body.night .pagelink a,body.night .auth-card,body.night .filter-bar{background:#1d1d22;border-color:#2c2c34}
body.night .content{color:#bfbfc8}
body.night .intro-box{color:#a5a5b0}
body.night .site-head,body.night .cat-strip,body.night .site-foot{background:#101013}

/* responsive */
@media(max-width:1080px){
  .layout-3{grid-template-columns:170px minmax(0,1fr)}
  .side-right{display:none}
  .book-grid{grid-template-columns:repeat(5,1fr)}
}
@media(max-width:820px){
  .layout-3{grid-template-columns:1fr}
  .side-left{position:static;flex-direction:row;overflow-x:auto}
  .side-left .side-box{min-width:220px}
  .focus{grid-template-columns:repeat(2,minmax(0,1fr))}
  .focus-card:last-child{display:none}
  .book-grid{grid-template-columns:repeat(4,1fr)}
  .chapter-grid{column-count:2}
  .t-author,.t-cat{display:none}
  .head-inner{height:56px;gap:12px}
  .brand{font-size:18px}
  .head-links{display:none}
  .reader-body{padding:20px 16px 26px}
  .reader-bar{top:98px}
  .rank-3col{grid-template-columns:1fr}
  .detail{padding:14px;gap:14px}
  .detail-cover{flex:0 0 104px;width:104px}
  .detail-main h1{font-size:18px}
  .book-grid{grid-template-columns:repeat(3,1fr)}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;height:52px;background:#141418;border-top:1px solid #2c2c34;z-index:60}
  .tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11px;color:#777782}
  .tabbar a.on{color:var(--gold)}
  .tabbar a i{font-size:16px}
  body{padding-bottom:52px}
}

/* ===== 详情/阅读页细节优化 2026-11-12 ===== */
/* 简介书名行 */
.intro-book{font-weight:700;font-size:14.5px;color:var(--text);margin-bottom:10px;padding-bottom:8px;border-bottom:1px dashed var(--line)}

/* 模板通用块（info 页结构）映射到起点风格：直角卡片 + 金色竖标 */
.block{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:14px}
.block-head{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--line);padding-bottom:9px;margin-bottom:12px}
.block-head h3{font-size:15px;font-weight:800;position:relative;padding-left:10px}
.block-head h3::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;background:var(--gold)}
.crumbs{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-2);margin-bottom:10px}
.crumbs a{color:var(--text-2)}
.crumbs a:hover{color:var(--gold)}
.crumbs i{font-style:normal;color:#c4bfb2;font-size:11px}
.crumbs span{color:var(--text);max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detail-stats{display:flex;gap:26px;margin:2px 0 14px}
.detail-stats span{font-size:12px;color:var(--text-2)}
.detail-stats b{display:block;font-size:16px;font-weight:800;color:var(--text);line-height:1.35}
.detail-stats span:nth-child(1) b{color:var(--gold)}
.intro-paras p{margin:0 0 10px}
.intro-paras p:last-child{margin-bottom:0}
.intro-paras.clamp{max-height:152px;overflow:hidden;position:relative}
.intro-paras.clamp::after{content:"";position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(rgba(255,255,255,0),var(--card))}
.intro-toggle{display:block;margin:12px auto 0;background:none;border:1px solid var(--line);padding:5px 18px;font-size:12.5px;color:var(--text-2);cursor:pointer;border-radius:2px}
.intro-toggle:hover{color:var(--gold);border-color:var(--gold)}
.kw{display:none}
.kw-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.kw-tags:first-child{margin-top:0}
.ktag{font-size:12.5px;background:#f4f1e9;border-radius:2px;padding:3px 10px;color:var(--text-2);transition:.15s}
.ktag:hover{color:var(--gold)}
.ktag-link{color:var(--gold)}
.catalog-more{text-align:center;padding-top:13px;border-top:1px dotted #ece7dc;margin-top:6px}
.catalog-more a{font-size:13px;color:var(--gold);font-weight:700}
.block-tools{display:flex;gap:10px;align-items:center}
.order-toggle{font-size:12.5px;color:var(--text-2);border:1px solid var(--line);padding:2px 12px;cursor:pointer;background:#fff;border-radius:2px}
.order-toggle:hover{color:var(--gold);border-color:var(--gold)}
.chapter-grid li.vol{column-span:all;-webkit-column-span:all}
#read_progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#a8841b,var(--gold-l));z-index:300;transition:width .08s linear}
.to-top{position:fixed;right:20px;bottom:88px;width:42px;height:42px;background:var(--ink);color:var(--gold-l);display:none;align-items:center;justify-content:center;font-size:18px;z-index:80;border:1px solid var(--ink-2)}
.to-top.on{display:flex}
.to-top:hover{color:#fff}
.reader-bar-title{color:inherit}
.reader-bar-title:hover{color:var(--gold)}
.reader-nav a.next-hot{background:var(--ink);color:var(--gold-l);border:1px solid var(--ink-2)}
.reader-nav a.next-hot:hover{color:#fff}
body.night .block{background:#1d1d22;border-color:#2c2c34}
body.night .block-head{border-color:#2c2c34}
body.night .intro-paras.clamp::after{background:linear-gradient(rgba(29,29,34,0),#1d1d22)}
body.night .intro-toggle,body.night .order-toggle{background:#1d1d22;border-color:#3a3a44;color:#9a9ea4}
body.night .ktag{background:#26262e;color:#a5a5b0}
body.night .to-top{background:#1d1d22}
@media(max-width:820px){
  .detail-stats{gap:18px}
  .to-top{bottom:66px;right:14px}
}
/* 夜间模式补充：阅读/详情页面 */
body.night .reader-bar{background:#1d1d22;border-color:#2c2c34}
body.night .reader-bar .back,body.night .reader-bar-title,body.night .crumbs a{color:#9a9ea4}
body.night .reader-title,body.night .detail-main h1,body.night .detail-stats b,body.night .intro-book{color:#c9c9d2}
body.night .reader-tips,body.night .detail-sub .tag,body.night .detail-last{color:#777782}
body.night .detail-last a,body.night .reader-meta a{color:var(--gold)}
body.night .detail-sub .tag{background:#26262e;color:#9a9ea4}

/* ---------- 最新章节（带边框版式 2026-11-12） ---------- */
.latest .block-head h3 i{color:var(--gold);font-size:14px}
.latest .block-head .more{font-size:12.5px;white-space:nowrap}
.latest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 10px}
.latest-grid li{padding:0;border-bottom:0;break-inside:auto}
.latest-grid li a{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:3px;padding:8px 11px;font-size:13px;color:var(--text);background:#fff;transition:color .15s,border-color .15s,background .15s}
.latest-grid li a:hover{color:var(--gold);border-color:var(--gold)}
.latest-grid li.first a{border-color:#d9c98f;background:#fbf7ea}
.latest-grid .c-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.latest-grid .l-badge{flex:none;font-size:10px;font-weight:800;line-height:1;color:#fff;background:var(--gold);border-radius:2px;padding:3px 7px;letter-spacing:.5px}
@media(max-width:820px){.latest-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.latest-grid{grid-template-columns:1fr}}
body.night .latest-grid li a{background:#22222a;border-color:#33333c;color:#b9b9c2}
body.night .latest-grid li a:hover{color:var(--gold);border-color:var(--gold)}
body.night .latest-grid li.first a{background:#2a2620;border-color:#4a4330}

/* ---------- 阅读页（番茄式工具条 2026-11-12 v2，起点金配色） ---------- */
body:has(.rd-top) .site-head,body:has(.rd-top) .site-foot,body:has(.rd-top) .tabbar{display:none}
body:has(.rd-top){background:var(--bg)}
.rd-top{position:sticky;top:0;z-index:50;background:var(--card);border-bottom:1px solid var(--line)}
.rd-top-in{max-width:800px;margin:0 auto;height:60px;padding:0 20px;display:flex;align-items:center;justify-content:space-between}
.rd-back{display:flex;align-items:center;gap:8px;font-size:15px;color:#40434a;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-back svg{width:12px;height:24px;flex:none}
.rd-back:hover{color:var(--gold)}
.rd-pos{font-size:13px;color:var(--text-2);white-space:nowrap}
.rd-article{max-width:800px;margin:0 auto;background:var(--card);border-left:1px solid var(--line);border-right:1px solid var(--line);padding:38px 32px 30px}
.rd-title{font-size:23px;font-weight:800;color:var(--ink);line-height:1.4;margin-bottom:12px}
.rd-meta{font-size:13px;color:var(--text-2);margin-bottom:30px}
.rd-meta span{margin:0 8px}
.rd-content{font-size:16px;color:#2b2b31}
.rd-content p{text-indent:2em;line-height:2;margin-bottom:14px}
.rd-btns{display:flex;justify-content:center;gap:16px;margin:46px 0 8px}
.rd-chbtn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 40px;background:#f0ece2;border:1px solid var(--line);border-radius:22px;font-size:15px;color:#3d3a32;transition:background .15s,color .15s,border-color .15s}
.rd-chbtn:hover{background:var(--gold);border-color:var(--gold);color:#fff}
.rd-chbtn.disabled{color:#b7b1a3;cursor:default;background:#f0ece2;border-color:var(--line)}
.rd-chbtn.disabled:hover{background:#f0ece2;border-color:var(--line);color:#b7b1a3}
.rd-tips{display:none}
.rd-report{text-align:center;font-size:12.5px;color:var(--text-2);margin:8px 0 26px}
.rd-report a{color:var(--text-2);text-decoration:underline dotted}
.rd-report a:hover{color:var(--gold)}
/* 右侧悬浮工具条 */
.rd-toolbar{position:fixed;right:26px;top:40%;z-index:60;display:flex;flex-direction:column;gap:12px}
.rd-item{width:56px;height:56px;background:var(--card);border:1px solid var(--line);border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;color:#5c5f66;transition:color .15s,border-color .15s}
.rd-item svg{width:22px;height:22px}
.rd-item:hover{color:var(--gold);border-color:var(--gold)}
.rd-item-wrap{position:relative}
.rd-pop{position:absolute;right:72px;top:50%;transform:translateY(-50%);width:280px;background:var(--card);border:1px solid var(--line);border-radius:4px;box-shadow:0 6px 24px rgba(30,30,40,.15);padding:20px 20px 14px;display:none}
.rd-item-wrap.open .rd-pop{display:block}
.rd-slider{display:flex;align-items:center;gap:12px}
.rd-a{font-size:13px;font-weight:700;color:#5c5f66;cursor:pointer;user-select:none}
.rd-a:hover{color:var(--gold)}
.rd-a-big{font-size:20px}
.rd-road{position:relative;flex:1;height:4px;border-radius:2px;background:#e6e2d9;cursor:pointer}
.rd-bar{position:absolute;left:0;top:0;height:100%;border-radius:2px;background:var(--gold);width:0}
.rd-dot{position:absolute;top:50%;width:8px;height:8px;border-radius:50%;background:#fff;border:1.5px solid #c9c2b1;transform:translate(-50%,-50%);z-index:2}
.rd-dot:nth-of-type(1){left:0%}.rd-dot:nth-of-type(2){left:25%}.rd-dot:nth-of-type(3){left:50%}.rd-dot:nth-of-type(4){left:75%}.rd-dot:nth-of-type(5){left:100%}
.rd-knob{position:absolute;top:50%;left:0;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--gold);transform:translate(-50%,-50%);box-shadow:0 1px 4px rgba(30,30,40,.25);z-index:3;pointer-events:none}
.rd-marks{display:flex;justify-content:space-between;margin:9px 34px 0;font-size:11px;color:var(--text-2)}
/* 夜间 */
body.night:has(.rd-top){background:#141416}
body.night .rd-top,body.night .rd-article{background:#1d1d22;border-color:#2c2c34}
body.night .rd-back{color:#b9b9c2}
body.night .rd-title{color:#c9c9d2}
body.night .rd-content{color:#a8a8b2}
body.night .rd-chbtn{background:#22222a;border-color:#33333c;color:#b9b9c2}
body.night .rd-chbtn:hover{background:var(--gold);border-color:var(--gold);color:#fff}
body.night .rd-chbtn.disabled{color:#4a4a54}
body.night .rd-chbtn.disabled:hover{background:#22222a;border-color:#33333c;color:#4a4a54}
body.night .rd-item{background:#1d1d22;border-color:#2c2c34;color:#a5a5b0}
body.night .rd-item:hover{color:var(--gold);border-color:var(--gold)}
body.night .rd-pop{background:#1d1d22;border-color:#2c2c34}
body.night .rd-road{background:#33333c}
body.night .rd-dot{background:#1d1d22;border-color:#4a4a54}
body.night .rd-knob{background:#1d1d22;border-color:var(--gold)}
body.night .rd-marks,body.night .rd-pos,body.night .rd-meta,body.night .rd-report{color:#777782}
body.night .rd-a{color:#a5a5b0}
/* 移动端：工具条落底 */
@media(max-width:820px){
  .rd-toolbar{right:auto;left:0;top:auto;bottom:0;width:100%;flex-direction:row;justify-content:space-around;gap:0;background:var(--card);border-top:1px solid var(--line);padding:6px 0 8px;box-shadow:0 -2px 12px rgba(30,30,40,.06)}
  .rd-item{width:64px;height:50px;border-radius:0;border-left:0;border-right:0}
  .rd-pop{position:fixed;right:12px;left:12px;top:auto;bottom:72px;width:auto;transform:none}
  .rd-article{padding:24px 16px 110px;border-left:0;border-right:0}
  .rd-title{font-size:20px}
}
body.night .rd-toolbar{background:#1d1d22}

/* ---------- 侧滑章节目录（2026-11-12 v3，起点金配色） ---------- */
.rd-mask{position:fixed;inset:0;background:rgba(18,18,22,.45);opacity:0;visibility:hidden;transition:opacity .22s;z-index:120}
.rd-mask.show{opacity:1;visibility:visible}
.rd-drawer{position:fixed;top:0;right:0;bottom:0;width:400px;max-width:88vw;background:var(--card);z-index:121;transform:translateX(103%);transition:transform .26s ease;display:flex;flex-direction:column;border-left:1px solid var(--line);box-shadow:-10px 0 30px rgba(28,28,34,.14)}
.rd-drawer.open{transform:none}
.rd-dw-head{display:flex;align-items:center;justify-content:space-between;padding:17px 14px 13px 18px;border-bottom:1px solid var(--line);flex:none;background:var(--card)}
.rd-dw-title{font-size:16px;font-weight:800;color:var(--ink);display:flex;align-items:baseline;gap:8px;letter-spacing:.5px}
.rd-dw-title::before{content:"";width:3px;height:15px;background:var(--gold);display:inline-block;margin-right:2px;align-self:center}
.rd-dw-count{font-size:12px;font-weight:400;color:var(--text-2);letter-spacing:0}
.rd-dw-tools{display:flex;align-items:center;gap:6px}
.rd-dw-btn{font-size:12.5px;color:var(--text-2);border:1px solid var(--line);border-radius:3px;padding:4px 11px;line-height:1.4;background:#fbf9f3}
.rd-dw-btn:hover{color:var(--gold);border-color:var(--gold)}
.rd-dw-close{width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:var(--text-2)}
.rd-dw-close svg{width:17px;height:17px}
.rd-dw-close:hover{color:var(--gold)}
.rd-dw-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:6px 8px 14px}
.rd-dw-item{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:3px;font-size:13.5px;color:var(--text);line-height:1.5}
.rd-dw-item em{flex:none;min-width:32px;font-style:normal;font-size:12px;color:var(--text-2);font-variant-numeric:tabular-nums}
.rd-dw-item span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-dw-item:hover{background:#fbf7ea;color:var(--gold)}
.rd-dw-item.cur{background:#fbf7ea;color:var(--gold);font-weight:700;box-shadow:inset 3px 0 0 var(--gold)}
.rd-dw-item.cur em{color:var(--gold)}
.rd-dw-cur{flex:none;font-style:normal;font-size:10px;font-weight:700;color:#fff;background:var(--gold);border-radius:2px;padding:2px 6px;line-height:1.6}
.rd-dw-loading{padding:40px 16px;text-align:center;font-size:13.5px;color:var(--text-2)}
.rd-dw-loading a{color:var(--gold);text-decoration:underline}
.rd-dw-foot{flex:none;border-top:1px solid var(--line);padding:12px 18px;text-align:center;font-size:12.5px;background:#fbf9f3}
.rd-dw-foot a{color:var(--text-2)}
.rd-dw-foot a:hover{color:var(--gold)}
body.night .rd-drawer{background:#1d1d22;border-left-color:#2c2c34}
body.night .rd-dw-head{background:#1d1d22;border-color:#2c2c34}
body.night .rd-dw-title{color:#c9c9d2}
body.night .rd-dw-item{color:#b0b0ba}
body.night .rd-dw-item:hover{background:#25252c;color:var(--gold)}
body.night .rd-dw-item.cur{background:#2a2620;color:var(--gold)}
body.night .rd-dw-close:hover{color:var(--gold)}
body.night .rd-dw-btn{background:#22222a;border-color:#33333c;color:#a5a5b0}
body.night .rd-dw-foot{background:#1d1d22;border-color:#2c2c34}
@media(max-width:820px){
  .rd-drawer{width:100%;max-width:100%;border-left:0;box-shadow:none}
  .rd-dw-body{padding-bottom:80px}
}

/* ---------- 足迹/阅读记录（2026-11-12，起点金） ---------- */
.hist-head{display:flex;align-items:center;gap:10px;padding:2px 0 14px;border-bottom:1px solid var(--line);margin-bottom:14px}
.hist-title{font-size:17px;font-weight:800;margin:0;color:var(--ink);display:flex;align-items:center}
.hist-title::before{content:"";width:3px;height:15px;background:var(--gold);display:inline-block;margin-right:8px}
.hist-count{font-size:12.5px;color:var(--text-2);background:#fbf9f3;border:1px solid var(--line);border-radius:3px;padding:2px 10px}
.hist-clear{margin-left:auto;font-size:12.5px;color:var(--text-2);border:1px solid var(--line);border-radius:3px;padding:5px 14px;background:#fbf9f3}
.hist-clear:hover{color:#e5484d;border-color:#e5484d}
.hist-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hist-item{display:flex;gap:14px;padding:13px;border:1px solid var(--line);border-radius:3px;background:var(--card)}
.hist-cover{flex:none;width:82px;height:110px;border-radius:2px;overflow:hidden;background:#fbf9f3;display:block}
.hist-cover img{width:100%;height:100%;object-fit:cover;display:block}
.hist-info{flex:1;min-width:0;display:flex;flex-direction:column}
.hist-name{margin:0;font-size:15px;font-weight:700;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hist-name a{color:var(--text)}
.hist-name a:hover{color:var(--gold)}
.hist-meta,.hist-progress{margin:5px 0 0;font-size:12.5px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hist-btns{margin-top:auto;display:flex;gap:8px;padding-top:10px}
.hist-btn{display:inline-flex;align-items:center;font-size:12.5px;padding:6px 14px;border-radius:3px;border:1px solid var(--line);color:var(--text);transition:all .15s}
.hist-btn.main{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:700}
.hist-btn.main:hover{background:var(--gold-l);border-color:var(--gold-l);color:#fff}
.hist-btn.ghost:hover{color:var(--gold);border-color:var(--gold)}
.hist-empty{padding:56px 16px;text-align:center;color:var(--text-2);font-size:14px;border:1px dashed var(--line);border-radius:3px;background:#fbf9f3}
.hist-empty i{display:block;font-size:28px;margin-bottom:12px;color:var(--gold)}
@media(max-width:720px){.hist-list{grid-template-columns:1fr}}
body.night .hist-item{background:#1d1d22;border-color:#2c2c34}
body.night .hist-name a{color:#c9c9d2}
body.night .hist-count,body.night .hist-empty{background:#22222a;border-color:#33333c}
body.night .hist-clear{background:#22222a;border-color:#33333c}
body.night .hist-title{color:#c9c9d2}
body.night .hist-btn{color:#b0b0ba;border-color:#33333c}
body.night .hist-btn.ghost:hover{color:var(--gold)}
body.night .hist-meta,body.night .hist-progress{color:#777782}

/* ---------- 首页分类：纯文字列表 + 一行两个类目（2026-11-12，起点金） ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.bk-list{display:flex;flex-direction:column}
.bk{display:flex;align-items:center;gap:9px;min-width:0;padding:8px 6px;border-bottom:1px dotted #ece7dc;transition:background .15s}
.bk:last-child{border-bottom:0}
.bk:hover{background:#fbf7ea}
.bk-idx{flex:none;width:16px;font-size:12px;font-weight:800;color:#cbc4b4;font-variant-numeric:tabular-nums}
.bk:nth-child(-n+3) .bk-idx{color:var(--gold)}
.bk-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.bk-name{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;line-height:1.3;color:var(--ink);white-space:nowrap;overflow:hidden}
.bk-name em{flex:none;font-style:normal;font-size:10.5px;font-weight:700;line-height:1.7;color:#8a8578;background:#f4f1e9;border-radius:2px;padding:0 5px}
.bk-name em.full{color:#8a6d13;background:#fbf3d8;border:1px solid #ecdfae}
.bk:hover .bk-name{color:var(--gold)}
.bk-sub{font-size:11.5px;color:#8a8578;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bk-sub i{font-style:normal;color:#c9c2b1;margin:0 5px}
.bk-arrow{flex:none;font-size:12px;color:#d6cfbe;transition:color .15s}
.bk:hover .bk-arrow{color:var(--gold)}
@media(max-width:1024px){.cat-grid{grid-template-columns:1fr}}
body.night .bk{border-bottom-color:#2c2c34}
body.night .bk:hover{background:#25252c}
body.night .bk-name{color:#c9c9d2}
body.night .bk-name em{background:#25252c;color:#8a8a94}
body.night .bk-name em.full{background:#2a2620;border-color:#4a4330;color:#d9c98f}
body.night .bk-idx{color:#4c4c56}
body.night .bk-sub{color:#777782}

/* ---------- 首页焦点推荐：6 项文字版式（2026-11-12，起点金） ---------- */
.focus-txt .ft-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ft{display:block;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:3px;background:#fdfcf8;transition:border-color .15s,background .15s}
.ft:hover{border-color:var(--gold);background:#fbf7ea}
.ft-head{display:flex;align-items:center;gap:6px;min-width:0}
.ft-name{font-size:13.5px;font-weight:800;line-height:1.35;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ft:hover .ft-name{color:var(--gold)}
.ft-tag{flex:none;font-style:normal;font-size:10.5px;line-height:1.7;color:#8a6d13;background:#fbf3d8;border:1px solid #ecdfae;border-radius:2px;padding:0 6px}
.ft-meta{display:block;margin-top:5px;font-size:11.5px;color:#8a8578;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ft-meta i{font-style:normal;color:#c9c2b1;margin:0 5px}
.ft-desc{display:-webkit-box;margin-top:6px;font-size:12px;line-height:1.6;color:#8a8578;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:760px){.focus-txt .ft-grid{grid-template-columns:1fr}}
body.night .ft{background:#1d1d22;border-color:#2c2c34}
body.night .ft:hover{background:#25252c;border-color:var(--gold)}
body.night .ft-name{color:#c9c9d2}
body.night .ft-tag{background:#2a2620;border-color:#4a4330;color:#d9c98f}
body.night .ft-meta,body.night .ft-desc{color:#777782}
