* { box-sizing: border-box; margin: 0; padding: 0; }
body { background: #f4f4f4; color: #333; font: 14px/1.8 "Microsoft YaHei", "PingFang SC", Arial, sans-serif; }
a { color: #333; text-decoration: none; }
a:hover { color: #c00; text-decoration: underline; }
img { display: block; max-width: 100%; }
.pagecell, .cate, .tool5, .linkcover, .boxunit { max-width: 980px; margin: 0 auto; }

.gridmetainner { height: 30px; background: #f7f7f7; border-bottom: 1px solid #ddd; color: #777; font-size: 12px; }
.cate { display: flex; gap: 24px; align-items: center; height: 30px; }
.timearea4 { border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; padding: 0; }
.timearea4:hover { color: #0871bd; text-decoration: underline; }
.piclink { background: #2f8ed8; }
.tool5 { height: 76px; display: flex; align-items: center; gap: 28px; }
.numbox3 { width: 170px; font-size: 34px; line-height: 1; font-weight: 700; }
.numbox3 a { color: #fff; letter-spacing: 0; }
.numbox3 a:hover { color: inherit; text-decoration: none; }
.colcell6 { flex: 1; display: flex; max-width: 470px; }
.authorline { flex: 1; height: 38px; padding: 0 12px; border: 0; outline: 0; font-size: 14px; }
.contmeta { width: 78px; height: 38px; border: 0; background: #f5a623; color: #fff; font-size: 15px; cursor: pointer; }
.wencol { margin-left: auto; display: flex; gap: 10px; }
.wencol a { color: #fff; padding: 5px 10px; border: 1px solid rgba(255,255,255,.5); border-radius: 2px; }

.linkcover { display: flex; height: 42px; background: #287dc2; overflow: hidden; }
.linkcover a { color: #fff; line-height: 42px; padding: 0 13px; white-space: nowrap; border-right: 1px solid rgba(255,255,255,.12); }
.linkcover a:hover { background: #1d6fb0; text-decoration: none; color: #fff; }
.boxunit { display: none; }
.menucell8 { padding: 12px 0 20px; }

.metamain3 { display: grid; grid-template-columns: 2fr 1fr; gap: 12px; margin-bottom: 12px; }
.datebd, .datearea5, .colpanel, .volpanel3, .bdline, .time4, .main3 { background: #fff; border: 1px solid #ddd; }
.datebd { display: grid; grid-template-columns: 1fr 1fr; padding: 12px; gap: 12px; }
.datebox { display: flex; min-height: 132px; overflow: hidden; }
.datebox .story { width: 88px; flex: 0 0 88px; margin-right: 12px; }
.datebox .story img { width: 88px; height: 120px; object-fit: cover; border: 1px solid #ddd; }
.datebox dt { height: 28px; line-height: 28px; overflow: hidden; font-weight: 700; }
.datebox dt span { float: right; max-width: 72px; color: #888; font-size: 12px; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.datebox dd { color: #555; height: 88px; overflow: hidden; font-size: 13px; }
.datebox dd a { color: #555; }
.imgtext2, .colpanel h2, .bdline h2, .time4 h2 { height: 38px; line-height: 38px; padding: 0 12px; border-bottom: 1px solid #ddd; background: #f9f9f9; color: #287dc2; font-size: 16px; }
.bookinner, .numarea, .ft8, .contlist6, .grid { list-style: none; }
.bookinner li, .ft8 li, .grid li { display: flex; height: 35px; line-height: 35px; padding: 0 12px; border-bottom: 1px dashed #e5e5e5; overflow: hidden; }
.text5, .namegrid9 { width: 86px; color: #888; flex: 0 0 86px; }
.imgwrap, .wrapunit8 { flex: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.linkrow { width: 220px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.hotmeta, .page3 { width: 88px; color: #777; text-align: right; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.pic { width: 70px; color: #888; text-align: right; }

.updateblock { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.hotcell5 { display: flex; padding: 12px; border-bottom: 1px dashed #ddd; }
.hotcell5 .story { width: 76px; flex: 0 0 76px; margin-right: 12px; }
.hotcell5 .story img { width: 76px; height: 104px; object-fit: cover; border: 1px solid #ddd; }
.hotcell5 dt { font-weight: 700; height: 28px; line-height: 28px; overflow: hidden; }
.hotcell5 dd { height: 72px; overflow: hidden; color: #555; font-size: 13px; }
.hotcell5 dd a { color: #555; }
.numarea { padding: 7px 12px; columns: 2; }
.numarea li { height: 28px; line-height: 28px; overflow: hidden; break-inside: avoid; }

.volpanel3 { display: flex; padding: 18px; margin-bottom: 12px; }
.volpanel3 .bookft { width: 150px; flex: 0 0 150px; margin-right: 22px; }
.volpanel3 .bookft img { width: 150px; height: 200px; object-fit: cover; border: 1px solid #ccc; padding: 2px; background: #fff; }
.hdgrid h1 { height: 44px; line-height: 44px; font-size: 28px; font-weight: 500; border-bottom: 1px dashed #ddd; margin-bottom: 8px; }
.hdgrid p { height: 30px; line-height: 30px; color: #555; }
.picft { margin-top: 18px; display: flex; gap: 12px; }
.headimg { display: inline-block; min-width: 110px; height: 36px; line-height: 36px; text-align: center; background: #287dc2; color: #fff; border-radius: 2px; }
.headimg.barinfo { background: #f5a623; }
.headimg:hover { color: #fff; text-decoration: none; opacity: .9; }
.bdline { margin-bottom: 12px; }
.bdline p { padding: 14px 16px; color: #555; text-indent: 2em; }
.contlist6 { display: grid; grid-template-columns: repeat(3, 1fr); padding: 10px 12px; }
.contlist6 li { height: 34px; line-height: 34px; border-bottom: 1px dashed #e5e5e5; overflow: hidden; padding-right: 18px; white-space: nowrap; text-overflow: ellipsis; }
.main3 h1 { height: 42px; line-height: 42px; padding: 0 12px; font-size: 18px; color: #287dc2; border-bottom: 1px solid #ddd; background: #f9f9f9; }

.wen { background: #f6f1e7; border: 1px solid #d8cfbd; padding: 0 24px 26px; }
.menuinfo4 { height: 38px; line-height: 38px; color: #777; border-bottom: 1px solid #e4dccd; font-size: 13px; }
.ftcol { text-align: center; padding: 20px 0 10px; border-bottom: 1px dashed #d8cfbd; }
.ftcol h1 { font-size: 26px; font-weight: 500; color: #222; }
.ftcol p { color: #777; margin-top: 6px; }
.chahd { padding: 20px 8px; color: #222; font: 20px/2 "Microsoft YaHei", "PingFang SC", serif; }
.unittext { display: none; margin: 0 0 16px; padding: 2px 0 10px; border-bottom: 1px dashed #d8cfbd; color: #222; font-size: 22px; font-weight: 700; line-height: 1.45; text-align: center; text-indent: 0; }
.chahd p { text-indent: 2em; margin-bottom: 14px; text-align: justify; }
.bditem8 { display: flex; justify-content: center; gap: 12px; padding: 18px 0 0; border-top: 1px dashed #d8cfbd; }
.bditem8.cardcover { padding: 14px 0; border-top: 0; border-bottom: 1px dashed #d8cfbd; }
.wen .bditem8.tagrow2 { margin-bottom: 18px; }
.bditem8 a, .bditem8 span { min-width: 110px; height: 34px; line-height: 34px; text-align: center; background: #fff; border: 1px solid #d8cfbd; color: #555; }
.bditem8 a:hover { background: #287dc2; color: #fff; text-decoration: none; border-color: #287dc2; }

.topgrid8 { background: #fff; border: 1px solid #ddd; padding: 20px; }
.mod2 { border-top: 1px solid #ddd; background: #f7f7f7; color: #888; text-align: center; padding: 20px 0; font-size: 12px; }

@media (max-width: 768px) {
    .pagecell, .cate, .tool5, .linkcover, .boxunit { width: 100%; max-width: none; }
    .gridmetainner { display: none; }
    .piclink { padding: 10px; }
    .tool5 { height: auto; display: block; }
    .numbox3 { width: auto; margin-bottom: 10px; font-size: 28px; text-align: center; }
    .colcell6 { max-width: none; }
    .wencol { display: none; }
    .linkcover { display: none; }
    .boxunit { display: flex; overflow-x: auto; background: #287dc2; }
    .boxunit a { color: #fff; line-height: 38px; padding: 0 14px; white-space: nowrap; }
    .menucell8 { padding: 8px; }
    .metamain3, .updateblock { display: block; }
    .datebd { grid-template-columns: 1fr; margin-bottom: 10px; }
    .datearea5, .colpanel { margin-bottom: 10px; }
    .text5, .linkrow, .hotmeta, .namegrid9, .page3, .pic { display: none; }
    .numarea { columns: 1; }
    .volpanel3 { display: block; text-align: center; }
    .volpanel3 .bookft { margin: 0 auto 12px; }
    .hdgrid h1 { height: auto; line-height: 1.4; font-size: 24px; }
    .picft { justify-content: center; }
    .contlist6 { grid-template-columns: 1fr; }
    .wen { padding: 0 12px 18px; }
    .ftcol h1 { font-size: 22px; }
    .chahd { font-size: 18px; line-height: 1.95; padding: 14px 0; }
    .unittext { display: block; font-size: 18px; margin-bottom: 12px; padding-bottom: 8px; line-height: 1.45; }
    .bditem8 { gap: 8px; }
    .bditem8 a, .bditem8 span { min-width: 0; flex: 1; }
}

.wenarea { background: #fff; border: 1px solid #ddd; padding: 14px; }
.wenarea h1 { height: 38px; line-height: 38px; font-size: 18px; color: #287dc2; border-bottom: 1px solid #ddd; margin-bottom: 14px; }
.boxft2 { display: flex; max-width: 560px; margin-bottom: 12px; }
.boxft2 input { flex: 1; height: 36px; padding: 0 10px; border: 1px solid #ccc; border-right: 0; outline: 0; }
.boxft2 button { width: 76px; border: 0; background: #287dc2; color: #fff; cursor: pointer; }
.text { color: #777; padding: 8px 0 12px; }
.sechd { list-style: none; }
.sechd li { display: flex; padding: 12px 0; border-top: 1px dashed #e5e5e5; }
.sechd li[hidden] { display: none !important; }
.sechd li.titlebox { display: block; color: #888; }
.headcol { width: 72px; flex: 0 0 72px; margin-right: 12px; }
.headcol img { width: 72px; height: 96px; object-fit: cover; border: 1px solid #ddd; }
.textbd h2 { font-size: 16px; height: 28px; line-height: 28px; overflow: hidden; }
.textbd .title { color: #888; font-size: 13px; margin-bottom: 4px; }
.textbd .cellbox7 { color: #555; height: 48px; overflow: hidden; line-height: 1.7; }
@media (max-width: 768px) {
    .wenarea { padding: 10px; }
    .boxft2 { max-width: none; }
}

/* Screenshot-style desktop home layout */
body { background: #e6f8fb; color: #555; font-size: 14px; }
a { color: #4d6da8; }
.pagecell, .cate, .tool5, .linkcover, .boxunit { max-width: 1160px; }
.gridmetainner { background: #d9eef3; border-bottom: 1px solid #b8dce7; }
.cate { color: #6d8f9e; }
.piclink { background: #e6f8fb; }
.tool5 { height: 82px; gap: 24px; }
.numbox3 { width: 150px; font-size: 36px; font-family: Georgia, "Microsoft YaHei", serif; text-shadow: 2px 2px 0 #c3e3f1; }
.numbox3 a { color: #0871bd; }
.colcell6 { max-width: 480px; margin-left: auto; }
.authorline { height: 36px; border: 1px solid #9bc7df; background: #fff; }
.contmeta { height: 36px; background: #ddd; color: #222; }
.wencol { display: none; }
.linkcover { height: 44px; background: #79c2e3; padding: 0 10px; }
.linkcover a { line-height: 44px; padding: 0 11px; border-right: 0; color: #fff; font-weight: 700; }
.linkcover a:hover { background: #5eb1d8; }
.menucell8 { padding: 12px 0 24px; }

.authorpanel { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px 22px; padding: 14px; margin-bottom: 22px; border: 3px solid #b9dff1; background: #fffdf6; }
.infoimg { display: grid; grid-template-columns: 126px 1fr; gap: 12px; min-height: 176px; }
.ftlist4 img { width: 126px; height: 170px; object-fit: cover; border: 1px solid #abc6d4; padding: 3px; background: #fff; }
.ftinner2 h2 { height: 28px; line-height: 28px; font-size: 15px; border-bottom: 1px dotted #c7d8e3; overflow: hidden; }
.ftinner2 h2 a { color: #5b6fad; font-weight: 700; }
.ftinner2 h2 span { float: right; color: #aaa; font-weight: 400; }
.ftinner2 p { padding-top: 8px; color: #555; line-height: 1.85; height: 132px; overflow: hidden; text-indent: 2em; }
.sort { display: grid; grid-template-columns: 1fr 335px; gap: 14px; align-items: start; }
.namewrap8, .imggrid3 { border: 3px solid #86c9e8; background: #eef6f6; }
.namewrap8 h2, .imggrid3 h2 { height: 36px; line-height: 36px; padding: 0 12px; background: #9bd3e9; color: #456; font-size: 16px; }
.cardbar8, .authorbox { list-style: none; padding: 8px 12px; }
.cardbar8 li { display: grid; grid-template-columns: 95px 190px 1fr 90px 50px; gap: 8px; height: 32px; line-height: 32px; border-bottom: 1px solid #d8e2e4; overflow: hidden; }
.cardbar8 .bookbd8 { color: #555; }
.cardbar8 .headpanel, .cardbar8 .num, .cardbar8 .textpanel4 { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.cardbar8 .textpanel4, .cardbar8 .listpanel { color: #aaa; text-align: right; }
.authorbox li { display: grid; grid-template-columns: 78px 1fr 58px; gap: 6px; height: 31px; line-height: 31px; border-bottom: 1px solid #d8e2e4; overflow: hidden; }
.authorbox span { color: #555; }
.authorbox a { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.authorbox em { color: #666; font-style: normal; text-align: right; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.authorcell { display: grid; grid-template-columns: 190px 1fr 190px; gap: 18px; padding: 14px 12px; }
.authorcell a, .authorcell select { height: 40px; border: 0; background: #4eadd0; color: #fff; text-align: center; border-radius: 3px; font-weight: 700; }
.authorcell a { line-height: 40px; }
.authorcell select { background: #fff; color: #222; border: 1px solid #d8e2e4; padding: 0 12px; }
.mod2 { background: #e6f8fb; border-top: 2px solid #72c4e8; color: #555; }

/* Desktop vs mobile are intentionally different. */
@media (max-width: 768px) {
    body { background: #e6f8fb; font-size: 14px; }
    .pagecell, .cate, .tool5, .linkcover, .boxunit { width: 100%; max-width: none; }
    .gridmetainner { display: none; }
    .piclink { padding: 10px; background: #dff5fb; }
    .tool5 { display: block; height: auto; }
    .numbox3 { width: auto; font-size: 30px; text-align: left; margin: 0 0 10px; padding-right: 58px; }
    .colcell6 { max-width: none; display: flex; margin-left: 0; }
    .authorline { height: 38px; font-size: 14px; }
    .contmeta { width: 72px; height: 38px; }
    .linkcover { display: none; }
    .boxunit { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); overflow: hidden; height: 40px; background: #79c2e3; padding: 0; }
    .boxunit a { min-width: 0; color: #fff; line-height: 40px; padding: 0 2px; text-align: center; font-weight: 700; white-space: nowrap; }
    .tool5 .boxunit { margin-bottom: 8px; }
    .menucell8 { padding: 8px; }
    .authorpanel { display: block; padding: 8px; margin-bottom: 10px; border-width: 2px; }
    .infoimg { display: grid; grid-template-columns: 82px 1fr; gap: 10px; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #d8e2e4; }
    .infoimg:last-child { border-bottom: 0; }
    .ftlist4 img { width: 82px; height: 110px; padding: 2px; }
    .ftinner2 h2 { height: 24px; line-height: 24px; font-size: 15px; }
    .ftinner2 h2 span { display: none; }
    .ftinner2 p { height: 78px; line-height: 1.7; padding-top: 5px; text-indent: 0; }
    .sort { display: block; }
    .box7 { display: flex; flex-direction: column; }
    .box7 .imggrid3 { order: 1; }
    .box7 .namewrap8 { order: 2; }
    .namewrap8, .imggrid3 { border-width: 2px; margin-bottom: 10px; }
    .namewrap8 h2, .imggrid3 h2 { height: 34px; line-height: 34px; font-size: 15px; }
    .cardbar8, .authorbox { padding: 4px 8px; }
    .cardbar8 li { display: grid; grid-template-columns: 72px minmax(0, 1fr) minmax(0, 1fr); gap: 6px; height: 34px; min-height: 34px; line-height: 34px; padding: 0; }
    .cardbar8 .textpanel4, .cardbar8 .listpanel { display: none; }
    .cardbar8 .bookbd8 { display: block; width: auto; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #555; }
    .cardbar8 .headpanel { font-weight: 700; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .cardbar8 .num { color: #777; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .authorbox li { grid-template-columns: minmax(0, 1fr) 88px; height: 34px; line-height: 34px; }
    .authorbox span { display: none; }
    .authorcell { grid-template-columns: 1fr 1fr; gap: 8px; padding: 10px 8px; }
    .authorcell select { grid-column: 1 / -1; order: -1; }
    .mod2 { padding: 14px 8px; line-height: 1.7; }
}

.blockcell { border: 3px solid #b9dff1; background: #fffdf6; }
.blockcell h1 { height: 38px; line-height: 38px; padding: 0 12px; background: #dcecef; color: #444; font-size: 15px; }
.cate3 { overflow-x: auto; }
.newmeta { width: 100%; border-collapse: collapse; table-layout: fixed; }
.newmeta th, .newmeta td { height: 45px; padding: 0 12px; border-bottom: 1px solid #ddd7ca; text-align: left; color: #4d6da8; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.newmeta th { color: #444; background: #fffaf0; font-weight: 700; }
.newmeta th:nth-child(1), .newmeta td:nth-child(1) { width: 58px; }
.newmeta th:nth-child(2), .newmeta td:nth-child(2) { width: 220px; }
.newmeta th:nth-child(4), .newmeta td:nth-child(4) { width: 140px; }
.newmeta th:nth-child(5), .newmeta td:nth-child(5) { width: 110px; }
.newmeta th:nth-child(6), .newmeta td:nth-child(6) { width: 80px; color: red; }
.newmeta .titlebox { text-align: center; color: #888; }
.modinner4 { border: 0; background: transparent; color: red; cursor: pointer; }
@media (max-width: 768px) {
    .blockcell { border-width: 2px; }
    .blockcell h1 { height: auto; line-height: 1.5; padding: 8px; font-size: 14px; }
    .cate3 { overflow-x: hidden; }
    .newmeta { min-width: 0; table-layout: fixed; }
    .newmeta th, .newmeta td { height: 40px; padding: 0 8px; }
    .newmeta th:nth-child(1),
    .newmeta td:nth-child(1),
    .newmeta th:nth-child(4),
    .newmeta td:nth-child(4),
    .newmeta th:nth-child(5),
    .newmeta td:nth-child(5) { display: none; }
    .newmeta th:nth-child(2),
    .newmeta td:nth-child(2) { width: 34%; }
    .newmeta th:nth-child(3),
    .newmeta td:nth-child(3) { width: 49%; }
    .newmeta th:nth-child(6),
    .newmeta td:nth-child(6) { width: 17%; text-align: center; }
}

/* Desktop home v2: hero + classic sidebar + 3x2 category matrix */
.cover8 { display: grid; grid-template-columns: 1fr 340px; gap: 0; border: 3px solid #b9dff1; background: #fffdf6; margin-bottom: 16px; }
.homemod { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 22px; padding: 12px; }
.chapanel7 { display: grid; grid-template-columns: 142px 1fr; gap: 14px; min-height: 178px; }
.wrapunit img { width: 142px; height: 170px; object-fit: cover; border: 1px solid #abc6d4; padding: 3px; background: #fff; }
.wenlist5 h2 { height: 30px; line-height: 30px; font-size: 15px; border-bottom: 1px dotted #c7d8e3; overflow: hidden; }
.wenlist5 h2 a { color: #5b6fad; font-weight: 700; }
.wenlist5 h2 span { float: right; max-width: 78px; color: #aaa; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.wenlist5 p { padding-top: 8px; color: #555; line-height: 1.85; height: 132px; overflow: hidden; text-indent: 2em; }
.shusec { border-left: 3px solid #b9dff1; background: #eef6f6; }
.shusec h2 { height: 39px; line-height: 39px; padding: 0 12px; background: #dcecef; color: #444; font-size: 16px; }
.shusec ul { list-style: none; padding: 7px 12px; }
.shusec li { display: grid; grid-template-columns: 78px 1fr 58px; gap: 6px; height: 31px; line-height: 31px; border-bottom: 1px solid #d8e2e4; overflow: hidden; }
.shusec span { color: #555; }
.shusec a { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.shusec em { font-style: normal; color: #666; text-align: right; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.contcell { display: grid; grid-template-columns: repeat(3, 1fr); border: 3px solid #86c9e8; background: #fffdf6; }
.imgmod2 { min-height: 318px; padding: 0 12px 9px; border-right: 1px dotted #9fc9db; border-bottom: 1px solid #b9dff1; overflow: hidden; }
.imgmod2:nth-child(3n) { border-right: 0; }
.imgmod2 h2 { height: 34px; line-height: 34px; color: #444; font-size: 16px; border-bottom: 1px solid #c7d8e3; }
.hdline { display: grid; grid-template-columns: 82px 1fr; gap: 12px; padding: 12px 0 8px; }
.wrapline2 img { width: 82px; height: 104px; object-fit: cover; border: 1px solid #abc6d4; padding: 2px; background: #fff; }
.hdline h3 { height: 24px; line-height: 24px; font-size: 14px; overflow: hidden; }
.hdline h3 a { color: #4d6da8; }
.hdline p { height: 76px; overflow: hidden; line-height: 1.7; color: #555; }
.authortext { list-style: none; }
.authortext li { height: 26px; line-height: 26px; border-bottom: 1px solid #d8e2e4; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
@media (max-width: 768px) {
    .cover8 { display: block; border-width: 2px; margin-bottom: 10px; }
    .homemod { display: block; padding: 8px; }
    .chapanel7 { grid-template-columns: 82px 1fr; gap: 10px; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #d8e2e4; }
    .chapanel7:last-child { border-bottom: 0; }
    .wrapunit img { width: 82px; height: 110px; padding: 2px; }
    .wenlist5 h2 { height: 24px; line-height: 24px; font-size: 15px; }
    .wenlist5 h2 span { display: block; float: right; max-width: 82px; margin-right: 2px; color: #999; font-size: 13px; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .wenlist5 p { height: 78px; line-height: 1.7; padding-top: 5px; text-indent: 0; }
    .shusec { border-left: 0; border-top: 2px solid #b9dff1; }
    .shusec ul { padding-right: 12px; }
    .shusec li { grid-template-columns: minmax(0, 1fr) 82px; }
    .shusec span { display: none; }
    .contcell { display: block; border-width: 2px; }
    .imgmod2 { min-height: 0; border-right: 0; padding-bottom: 6px; }
    .imgmod2:nth-child(n+4) { display: none; }
    .hdline { grid-template-columns: 72px 1fr; gap: 10px; }
    .wrapline2 img { width: 72px; height: 94px; }
    .authortext li { height: 30px; line-height: 30px; }
}

.catcon { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 18px; padding: 12px; border: 3px solid #b9dff1; background: #fffdf6; }
.rowcell7 { display: grid; grid-template-columns: 126px 1fr; gap: 14px; min-height: 178px; padding-bottom: 12px; margin-bottom: 12px; overflow: hidden; }
.navcover img { width: 126px; height: 170px; object-fit: cover; border: 1px solid #abc6d4; padding: 3px; background: #fff; }
.titlepanel h2 { height: 30px; line-height: 30px; font-size: 15px; border-bottom: 1px dotted #c7d8e3; overflow: hidden; }
.titlepanel h2 a { color: #5b6fad; font-weight: 700; }
.titlepanel h2 span { float: right; max-width: 82px; color: #aaa; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.titlepanel p { padding-top: 8px; color: #555; line-height: 1.85; height: 132px; overflow: hidden; text-indent: 2em; }
@media (max-width: 768px) {
    .catcon { display: block; padding: 8px; border-width: 2px; }
    .rowcell7 { grid-template-columns: 82px 1fr; gap: 10px; min-height: 116px; padding: 8px 0; margin: 0; border-bottom: 1px solid #d8e2e4; }
    .navcover img { width: 82px; height: 110px; padding: 2px; }
    .titlepanel h2 { height: 24px; line-height: 24px; font-size: 15px; }
    .titlepanel h2 span { display: none; }
    .titlepanel p { height: 78px; line-height: 1.7; padding-top: 5px; text-indent: 0; }
}

.toptext7 { position: fixed; right: 18px; bottom: 26px; z-index: 50; display: grid; gap: 8px; }
.toptext7 button { width: 54px; height: 34px; border: 1px solid #5eb1d8; background: #79c2e3; color: #fff; border-radius: 3px; cursor: pointer; font-weight: 700; box-shadow: 0 2px 8px rgba(0,0,0,.12); }
.toptext7 button:hover { background: #4eadd0; }
body.ft { background: #1e1e1e; color: #aaa; }
body.ft a { color: #9eb8e8; }
body.ft .gridmetainner,
body.ft .piclink,
body.ft .mod2 { background: #252525; border-color: #3a3a3a; color: #888; }
body.ft .linkcover,
body.ft .boxunit { background: #333; }
body.ft .linkcover a:hover,
body.ft .boxunit a:hover { background: #444; }
body.ft .authorpanel,
body.ft .cover8,
body.ft .contcell,
body.ft .catcon,
body.ft .blockcell,
body.ft .wenarea,
body.ft .volpanel3,
body.ft .bdline,
body.ft .time4,
body.ft .main3,
body.ft .namewrap8,
body.ft .imggrid3,
body.ft .shusec,
body.ft .topgrid8 { background: #2a2a2a; border-color: #444; }
body.ft .wen { background: #202020; border-color: #444; }
body.ft .chahd { color: #b8b8b8; }
body.ft .imgtext2,
body.ft .colpanel h2,
body.ft .bdline h2,
body.ft .time4 h2,
body.ft .namewrap8 h2,
body.ft .imggrid3 h2,
body.ft .shusec h2,
body.ft .blockcell h1,
body.ft .main3 h1,
body.ft .imgmod2 h2,
body.ft .wenarea h1 { background: #333; color: #ccc; border-color: #444; }
body.ft .ftinner2 p,
body.ft .wenlist5 p,
body.ft .hdline p,
body.ft .titlepanel p,
body.ft .bdline p,
body.ft .hdgrid p,
body.ft .textbd .cellbox7 { color: #aaa; }
body.ft .newmeta th { background: #333; color: #ccc; }
body.ft .newmeta th,
body.ft .newmeta td,
body.ft .cardbar8 li,
body.ft .authorbox li,
body.ft .shusec li,
body.ft .authortext li { border-color: #444; }
body.ft .authorline,
body.ft .boxft2 input,
body.ft .authorcell select { background: #222; color: #ddd; border-color: #555; }
@media (max-width: 768px) {
    .toptext7 { right: 10px; bottom: 14px; }
    .toptext7 button { width: 48px; height: 32px; font-size: 13px; }
}

.wrapcell9 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px 22px; padding: 12px; border: 3px solid #b9dff1; background: #fffdf6; margin-bottom: 18px; }
.listimg { display: grid; grid-template-columns: 126px 1fr; gap: 14px; min-height: 176px; overflow: hidden; }
.menu img { width: 126px; height: 170px; object-fit: cover; border: 1px solid #abc6d4; padding: 3px; background: #fff; }
.secinfo h2 { height: 30px; line-height: 30px; font-size: 15px; border-bottom: 1px dotted #c7d8e3; overflow: hidden; }
.secinfo h2 a { color: #5b6fad; font-weight: 700; }
.secinfo h2 span { float: right; max-width: 78px; color: #aaa; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.secinfo p { padding-top: 8px; color: #555; line-height: 1.85; height: 132px; overflow: hidden; text-indent: 2em; }
.imgmeta9 { display: grid; grid-template-columns: 1fr 335px; gap: 14px; align-items: start; }
.infocell, .toolinner { margin-bottom: 18px; }
@media (max-width: 768px) {
    .wrapcell9 { display: block; padding: 8px; border-width: 2px; margin-bottom: 10px; }
    .listimg { grid-template-columns: 82px 1fr; gap: 10px; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #d8e2e4; }
    .listimg:last-child { border-bottom: 0; }
    .menu img { width: 82px; height: 110px; padding: 2px; }
    .secinfo h2 { height: 24px; line-height: 24px; font-size: 15px; }
    .secinfo h2 span { display: none; }
    .secinfo p { height: 78px; line-height: 1.7; padding-top: 5px; text-indent: 0; }
    .imgmeta9 { display: block; }
}

.box7 { display: grid; grid-template-columns: 1fr 335px; gap: 14px; align-items: start; margin-top: 16px; }
@media (max-width: 768px) {
    .box7 { display: flex; flex-direction: column; width: 100%; max-width: 100%; margin-top: 10px; }
    .box7 .imggrid3 { order: 1; }
    .box7 .namewrap8 { order: 2; }
    .box7 .imggrid3,
    .box7 .namewrap8 { width: 100%; max-width: 100%; min-width: 0; }
}

.name { border: 3px solid #86c9e8; background: #eef6f6; margin-bottom: 22px; }
.name .menuinfo4 { height: 34px; line-height: 34px; padding: 0 12px; color: #456; border-bottom: 1px solid #b9dff1; background: #dcecef; }
.newblock { display: grid; grid-template-columns: 160px 1fr; gap: 24px; padding: 14px 28px 18px; }
.cellsec {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 160px;
    min-height: 200px;
    box-sizing: border-box;
    background: rgba(0,0,0,.04);
    padding: 12px;
    overflow: hidden;
}
.cellsec img {
    display: block;
    width: 100%;
    height: 176px;
    max-width: 100%;
    object-fit: contain;
    object-position: center;
}
.panelmeta9 h1 { font-size: 30px; line-height: 44px; color: #333; }
.rankcover { display: grid; grid-template-columns: 1fr 1fr; column-gap: 28px; border-bottom: 1px dashed #86aebd; padding-bottom: 6px; margin-bottom: 8px; }
.rankcover p { height: 28px; line-height: 28px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #444; }
.rankcover .catinner9 { color: #b54800; font-weight: 700; grid-column: 1 / -1; }
.updateft { grid-column: 2; line-height: 1.8; color: #444; }
.head { display: none; }
.menuimg7 { display: none; }
.blockcol7 { border: 3px solid #4eadd0; background: #eef6f6; margin-bottom: 30px; }
.blockcol7 h2 { height: 38px; line-height: 38px; text-align: center; background: #9fb6bd; color: #333; font-size: 16px; border-bottom: 1px solid #9fc9db; }
.blockcol7 .contlist6 { display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 12px; list-style: none; }
.blockcol7 .contlist6 li { height: 40px; line-height: 40px; border-bottom: 1px dashed #9fb6bd; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; padding-right: 16px; }
.blockcol7 .contlist6.bookmain6 li { font-weight: 700; }
.descinner5 { display: grid; grid-template-columns: 250px 1fr 250px; gap: 18px; padding: 16px 12px; }
.descinner5 a, .descinner5 span, .descinner5 button, .descinner5 select { height: 40px; line-height: 40px; border: 0; text-align: center; border-radius: 3px; }
.descinner5 a, .descinner5 span, .descinner5 button { background: #1e6f8a; color: #fff; cursor: pointer; font: inherit; }
.descinner5 button:disabled { cursor: default; opacity: .65; }
.descinner5 select { background: #fff; border: 1px solid #ddd; padding: 0 12px; text-align: left; }
.listname { background: #eee; padding: 18px 14px; margin-bottom: 20px; }
.listname h2 { text-align: center; color: #777; font-size: 16px; margin-bottom: 14px; font-weight: 400; }
.cover { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px 45px; }
.cover a { display: block; height: 38px; line-height: 38px; text-align: center; background: #e3e3e3; color: #333; border-radius: 3px; }
@media (max-width: 768px) {
    .name, .blockcol7 { border-width: 2px; margin-bottom: 12px; }
    .name .menuinfo4 { height: auto; line-height: 1.5; padding: 8px; }
    .newblock { display: grid; grid-template-columns: 96px 1fr; gap: 10px; padding: 10px; align-items: start; }
    .cellsec { width: 96px; min-height: 126px; padding: 4px; background: rgba(255,255,255,.45); }
    .cellsec img { width: 100%; height: 118px; object-fit: contain; object-position: center; }
    .panelmeta9 { min-width: 0; }
    .panelmeta9 h1 { font-size: 18px; line-height: 28px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .rankcover { display: block; border-bottom: 0; padding-bottom: 0; margin-bottom: 6px; }
    .rankcover p { height: 26px; line-height: 26px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .head { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; grid-column: 1 / -1; margin: 2px 0 8px; }
    .ftlink { display: block; height: 32px; line-height: 32px; border: 0; border-radius: 4px; color: #fff; text-align: center; font-weight: 700; font-size: 14px; cursor: pointer; }
    .ftlink:hover { color: #fff; text-decoration: none; opacity: .92; }
    .ftlink.areacell { background: #f0305a; }
    .ftlink.tag3 { background: #f1a51e; }
    .ftlink.tagrow2 { background: #5b8cc3; }
    .updateft { grid-column: 1 / -1; max-height: 118px; overflow: hidden; line-height: 1.85; color: #444; }
    .updateft.weninner8 { max-height: none; }
    .menuimg7 { display: block; grid-column: 1 / -1; justify-self: center; margin-top: -2px; border: 0; background: transparent; color: #4d6da8; font-weight: 700; font-size: 14px; cursor: pointer; }
    .blockcol7 .contlist6 { grid-template-columns: 1fr; padding: 0 8px; }
    .blockcol7 .contlist6 li { height: 36px; line-height: 36px; padding-right: 0; }
    .descinner5 { grid-template-columns: 1fr 1fr; gap: 8px; padding: 10px 8px; }
    .descinner5 select { grid-column: 1 / -1; order: -1; }
    .cover { grid-template-columns: 1fr; gap: 8px; }
}

.toptext7 a { width: 54px; height: 34px; line-height: 34px; border: 1px solid #5eb1d8; background: #79c2e3; color: #fff; border-radius: 3px; cursor: pointer; font-weight: 700; box-shadow: 0 2px 8px rgba(0,0,0,.12); text-align: center; }
.toptext7 a:hover { background: #4eadd0; color: #fff; text-decoration: none; }
@media (max-width: 768px) {
    .bditem8 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
    .bditem8 a, .bditem8 span { width: 100%; }
    .toptext7 a { width: 48px; height: 32px; line-height: 32px; font-size: 13px; }
}

@media (max-width: 768px) {
    .wen .bditem8 { grid-template-columns: 1fr 1fr; }
    .wen .bditem8 a:last-child,
    .wen .bditem8 span:last-child { grid-column: 1 / -1; }
}

@media (max-width: 768px) {
    html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
    .pagecell, .menucell8, .piclink, .tool5, .wen, .name, .blockcol7 { max-width: 100%; overflow-x: hidden; }
    .colcell6 { width: 100%; max-width: 100%; }
    .authorline { min-width: 0; }
    .contmeta { flex: 0 0 68px; width: 68px; }
    .boxunit { max-width: 100%; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; }
    .wen { padding-left: 10px; padding-right: 10px; }
    .menuinfo4 { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .ftcol h1 { max-width: 100%; overflow-wrap: anywhere; word-break: break-word; }
    .ftcol p { white-space: normal; overflow-wrap: anywhere; }
    .chahd { max-width: 100%; overflow-wrap: break-word; word-break: break-word; }
    .chahd p { max-width: 100%; overflow-wrap: break-word; word-break: break-word; }
    .toptext7 { right: 8px; }
}

.hdgrid5 { display: none; margin-left: auto; padding: 6px 13px; color: #fff; border: 1px solid rgba(255,255,255,.65); border-radius: 3px; font-weight: 700; white-space: nowrap; }
.hdgrid5:hover { color: #fff; background: rgba(255,255,255,.16); text-decoration: none; }
@media (max-width: 768px) {
    .tool5 { position: relative; }
    .hdgrid5 { display: inline-block; position: absolute; right: 0; top: 0; margin-left: 0; padding: 4px 9px; color: #0871bd; border-color: #79c2e3; background: rgba(255,255,255,.55); font-size: 13px; }
    .hdgrid5:hover { color: #0871bd; background: rgba(255,255,255,.8); }
}

.authorgrid9 {
    display: grid;
    grid-template-columns: auto 32px 32px 32px auto 48px 48px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 12px;
    background: #fff;
    border-bottom: 1px dashed #d8cfbd;
}
.authorgrid9.tagrow2 { border-top: 1px dashed #d8cfbd; border-bottom: 0; margin-top: 8px; }
.authorgrid9 span { color: #287dc2; }
.authorgrid9 label { display: flex; align-items: center; gap: 4px; white-space: nowrap; }
.authorgrid9 select { height: 28px; border: 1px solid #83bfe0; background: #fff; }
.authorgrid9 button { height: 28px; border: 1px solid #1e8bd1; background: #fff; color: #006eb8; border-radius: 3px; cursor: pointer; }
.authorgrid9 button.topinfo { background: #d8effc; font-weight: 700; }
@media (min-width: 1024px) {
    .wen { position: relative; }
    .wen > .menuinfo4 { padding-right: 390px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .wen > .authorgrid9:not(.tagrow2) {
        position: absolute;
        top: 5px;
        right: 24px;
        z-index: 2;
        width: auto;
        padding: 0;
        background: transparent;
        border: 0;
    }
    .wen > .authorgrid9.tagrow2 { display: none; }
}
.readpanel9 { margin: 18px 0; padding: 18px 14px; background: #eee; }
.readpanel9 h2 { text-align: center; color: #777; font-size: 16px; font-weight: 400; margin-bottom: 14px; }
.cateline6 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px 36px; }
.cateline6 a { display: block; height: 34px; line-height: 34px; text-align: center; background: #e3e3e3; color: #333; border-radius: 3px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
body.ft .readpanel9 { background: #2a2a2a; }
body.ft .cateline6 a { background: #333; color: #bbb; }
@media (max-width: 768px) {
    .authorgrid9 { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; padding: 8px 0; border-bottom: 1px dashed #d8cfbd; }
    .authorgrid9.tagrow2 { border-top: 1px dashed #d8cfbd; border-bottom: 0; margin-top: 8px; }
    .authorgrid9 button,
    .authorgrid9 a { height: 28px; line-height: 28px; border: 1px solid #d8cfbd; background: #fff; color: #287dc2; border-radius: 2px; text-align: center; font-size: 12px; padding: 0; }
    .authorgrid9 button { cursor: pointer; }
    .authorgrid9 a:hover { text-decoration: none; }
    body.ft .authorgrid9 button,
    body.ft .authorgrid9 a { background: #333; border-color: #555; color: #9eb8e8; }
    .readpanel9 { margin: 12px 0; padding: 12px 8px; }
    .cateline6 { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .cateline6 a { height: 32px; line-height: 32px; font-size: 13px; }
}

@media (max-width: 768px) {
    .wen .bditem8 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
    .wen .bditem8 a,
    .wen .bditem8 span { border-radius: 0; }
    .wen .bditem8 a:last-child,
    .wen .bditem8 span:last-child { grid-column: auto; }
}

body.menubd .wen { background: #e9fbfb; }
body.menu2 .wen { background: #f6f1e7; }
body.texthd7 .wen { background: #eeeeee; }
@media (max-width: 768px) {
    .authorgrid9 { grid-template-columns: auto 28px 28px 28px 1fr 42px 42px; align-items: center; gap: 4px; padding: 7px 4px; background: #fff; }
    .authorgrid9 span { color: #287dc2; font-size: 13px; }
    .authorgrid9 label { display: flex; align-items: center; gap: 3px; min-width: 0; font-size: 12px; color: #333; white-space: nowrap; }
    .authorgrid9 select { width: 54px; height: 25px; border: 1px solid #83bfe0; background: #fff; font-size: 12px; }
    .authorgrid9 button { height: 25px; line-height: 23px; border: 1px solid #1e8bd1; background: #fff; color: #006eb8; border-radius: 3px; font-size: 12px; }
    .authorgrid9 button.topinfo { background: #d8effc; font-weight: 700; }
    .authorgrid9 a { display: none; }
    body.ft .authorgrid9 { background: #292929; }
    body.ft .authorgrid9 span,
    body.ft .authorgrid9 label { color: #bbb; }
    body.ft .authorgrid9 select,
    body.ft .authorgrid9 button { background: #333; border-color: #666; color: #9eb8e8; }
}

body.ft .numbox3 a { color: #b8d7ef; text-shadow: 1px 1px 0 #1a3c55; }
body.ft .wen { background: #242424; }
body.ft .ftcol h1 { color: #ddd; }
body.ft .ftcol p,
body.ft .menuinfo4 { color: #aaa; }
body.ft .chahd { color: #d2d2d2; }
body.ft .chahd p { color: #d2d2d2; }
body.ft.menu2 .wen,
body.ft.menubd .wen,
body.ft.texthd7 .wen { background: #242424; }
@media (max-width: 768px) {
    .authorgrid9 { grid-template-columns: auto 28px 28px 28px 1fr 42px; }
    body.ft .authorgrid9 { background: #2b2b2b; border-color: #555; }
}

:root { --reader-bg-custom: #E9FAFF; }
.wen { background: var(--reader-bg-custom, #f6f1e7); }
body:not(.ft) .wen { background: var(--reader-bg-custom, #E9FAFF); }
body:not(.ft) .chahd { color: #333; }

@media (max-width: 768px) {
    .authorgrid9 { grid-template-columns: auto 28px 28px 28px 1fr 42px 42px; }
}

@media (max-width: 768px) {
    .wen > .menuinfo4,
    .wen > .ftcol { display: none; }
    .wen { padding-top: 0; }
}

/* 关灯只作用于章节正文，头部、搜索、工具栏和翻页保持原样。 */
body.ft { background: #e6f8fb; color: #555; }
body.ft a { color: #4d6da8; }
body.ft .gridmetainner { background: #d9eef3; border-color: #b8dce7; color: #6d8f9e; }
body.ft .piclink,
body.ft .mod2 { background: #e6f8fb; border-color: #72c4e8; color: #555; }
body.ft .linkcover,
body.ft .boxunit { background: #79c2e3; }
body.ft .linkcover a,
body.ft .boxunit a { color: #fff; }
body.ft .authorline,
body.ft .boxft2 input,
body.ft .authorcell select { background: #fff; color: #333; border-color: #9bc7df; }
body.ft .wen,
body.ft.menu2 .wen,
body.ft.menubd .wen,
body.ft.texthd7 .wen { background: #2f3437; border-color: #444; }
body.ft .ftcol h1 { color: #ddd; }
body.ft .ftcol p,
body.ft .menuinfo4 { color: #aaa; }
body.ft .bditem8 a,
body.ft .bditem8 span { background: #363b3f; border-color: #555; color: #c8c8c8; }
body.ft .authorgrid9 { background: #2f3437; border-color: #555; }
body.ft .authorgrid9 span,
body.ft .authorgrid9 label { color: #c8c8c8; }
body.ft .authorgrid9 select,
body.ft .authorgrid9 button { background: #363b3f; border-color: #6b747b; color: #c8d7e8; }
body.ft .chahd { background: transparent; color: #aaa; }
body.ft .unittext { border-color: #555; color: #bbb; }
body.ft .chahd p { color: #aaa; }
body.ft .numbox3 a { color: #0871bd; text-shadow: 2px 2px 0 #c3e3f1; }
body.ft .hdgrid5 { color: #0871bd; border-color: #79c2e3; background: rgba(255,255,255,.55); }
body.ft .hdgrid5:hover { color: #0871bd; background: rgba(255,255,255,.8); }
body.ft .readpanel9 { background: #eee; }
body.ft .readpanel9 h2 { color: #777; }
body.ft .cateline6 a { background: #e3e3e3; color: #333; }
.num6 { text-align: center; padding: 54px 20px 62px; border: 3px solid #86c9e8; background: #fffdf6; }
.num6 h1 { margin-bottom: 12px; color: #287dc2; font-size: 30px; font-weight: 700; }
.num6 p { margin: 8px 0; color: #555; }
.cateinfo2 { display: inline-block; min-width: 110px; height: 34px; margin-top: 12px; line-height: 34px; background: #4eadd0; color: #fff; border-radius: 3px; }
.cateinfo2:hover { color: #fff; text-decoration: none; background: #287dc2; }
@media (max-width: 768px) {
    body.ft .piclink { background: #dff5fb; }
    .num6 { padding: 42px 12px 48px; border-width: 2px; }
    .num6 h1 { font-size: 24px; }
}

@media (max-width: 768px) {
    .authorgrid9 {
        align-items: center;
    }
    .authorgrid9 span,
    .authorgrid9 label,
    .authorgrid9 button,
    .authorgrid9 select {
        height: 25px;
        line-height: 25px;
        vertical-align: middle;
    }
    .authorgrid9 span,
    .authorgrid9 label {
        display: flex;
        align-items: center;
    }
    .authorgrid9 button {
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }
    .authorgrid9 select {
        padding: 0 4px;
        line-height: 25px;
    }
}

/* Home update/new panels alignment fix */
.box7 .namewrap8,
.box7 .imggrid3 { align-self: start; }
.box7 .cardbar8,
.box7 .authorbox { padding: 8px 10px; font-size: 13px; }
.box7 .cardbar8 li,
.box7 .authorbox li { height: 31px; line-height: 31px; border-bottom: 1px solid #d8e2e4; }
.box7 .cardbar8 li { grid-template-columns: 92px 188px minmax(0, 1fr) 78px 42px; gap: 7px; }
.box7 .authorbox li { grid-template-columns: 82px minmax(0, 1fr) 62px; gap: 7px; }
.box7 .cardbar8 .bookbd8,
.box7 .cardbar8 .headpanel,
.box7 .cardbar8 .num,
.box7 .cardbar8 .textpanel4,
.box7 .cardbar8 .listpanel,
.box7 .authorbox span,
.box7 .authorbox a,
.box7 .authorbox em { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
@media (max-width: 768px) {
    .box7 .cardbar8,
    .box7 .authorbox { padding: 4px 8px; font-size: 14px; }
    .box7 .cardbar8 li,
    .box7 .authorbox li { height: 34px; line-height: 34px; }
    .box7 .cardbar8 li { grid-template-columns: 72px minmax(0, 1fr) minmax(0, 1fr); gap: 6px; }
    .box7 .authorbox li { grid-template-columns: minmax(0, 1fr) 88px; gap: 6px; }
}

/* rank-static-layout */
.catcon.toolmod4 {
    display: block !important;
    border: 2px solid #86c7e7;
    background: #fffdf6;
    padding: 10px 12px;
    margin: 12px auto 0;
    box-sizing: border-box;
}
.catcon.toolmod4 .contunit6 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 18px;
}
.catcon.toolmod4 .rowcell7 {
    float: none !important;
    width: auto !important;
    min-height: 164px;
    margin: 0 !important;
    padding: 0 0 10px;
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    gap: 12px;
    border-bottom: 1px dotted #b9ccd2;
    box-sizing: border-box;
    overflow: hidden;
}
.catcon.toolmod4 .navcover,
.catcon.toolmod4 .navcover img {
    display: block;
    width: 116px;
    height: 154px;
}
.catcon.toolmod4 .navcover img {
    object-fit: cover;
    border: 1px solid #b7cbd4;
    background: #f4f4f4;
    box-sizing: border-box;
}
.catcon.toolmod4 .titlepanel {
    min-width: 0;
    overflow: hidden;
}
.catcon.toolmod4 .titlepanel h2 {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 5px;
    padding: 0 0 4px;
    border-bottom: 1px dotted #b9ccd2;
    font-size: 15px;
    line-height: 22px;
    white-space: nowrap;
}
.catcon.toolmod4 .titlepanel h2 a {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.catcon.toolmod4 .secwrap5 {
    margin-left: auto;
    max-width: 66px;
    color: #aaa;
    font-weight: 400;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.catcon.toolmod4 .storycell {
    margin: 0;
    color: #333;
    font-size: 13px;
    line-height: 24px;
    text-indent: 2em;
    max-height: 120px;
    overflow: hidden;
}
.catcon.toolmod4 .itembox {
    grid-column: 1 / -1;
    margin: 0;
    padding: 12px;
    color: #555;
}
@media (max-width: 720px) {
    .catcon.toolmod4 {
        padding: 8px;
    }
    .catcon.toolmod4 .contunit6 {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .catcon.toolmod4 .rowcell7 {
        min-height: 108px;
        grid-template-columns: 78px minmax(0, 1fr);
        gap: 8px;
        padding: 8px 0;
    }
    .catcon.toolmod4 .navcover,
    .catcon.toolmod4 .navcover img {
        width: 76px;
        height: 100px;
    }
    .catcon.toolmod4 .titlepanel h2 {
        font-size: 14px;
        line-height: 20px;
    }
    .catcon.toolmod4 .storycell {
        font-size: 13px;
        line-height: 20px;
        max-height: 60px;
        text-indent: 0;
    }
}
/* /rank-static-layout */

/* static rank page, bqg style */
.catcon.homepanel6 {
  display: block;
  border: 2px solid #8ed1ef;
  background: #fffdf6;
  padding: 12px;
}
.homepanel6 .catlist {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  margin: 0 0 10px;
  min-height: 28px;
}
.homepanel6 .catlist h2 {
  margin: 0;
  font-size: 22px;
  line-height: 28px;
  color: #444;
  font-weight: 700;
}
.homepanel6 .catlist strong {
  grid-column: 2 / 3;
  text-align: center;
  font-size: 18px;
  line-height: 28px;
  color: #444;
}
.homepanel6 .toplink {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 16px;
  row-gap: 12px;
}
.homepanel6 .hdarea8 {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 10px;
  min-height: 156px;
  overflow: hidden;
}
.homepanel6 .pichd img {
  width: 110px;
  height: 148px;
  object-fit: cover;
  border: 1px solid #b7d2dd;
  background: #fff;
}
.homepanel6 .bookblock3 {
  min-width: 0;
}
.homepanel6 .hdarea8 h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 6px;
  padding-bottom: 2px;
  border-bottom: 1px dotted #9fc7d6;
  font-size: 14px;
  line-height: 22px;
}
.homepanel6 .hdarea8 h3 a {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.homepanel6 .hdarea8 h3 span,
.homepanel6 .hdarea8 h3 em {
  color: #999;
  font-weight: 400;
  font-style: normal;
  white-space: nowrap;
}
.homepanel6 .storylink {
  margin: 4px 0;
  font-size: 13px;
  line-height: 22px;
  text-align: center;
}
.homepanel6 .storylink a {
  display: inline;
}
.homepanel6 .storycell {
  margin: 6px 0 0;
  color: #333;
  font-size: 13px;
  line-height: 23px;
  max-height: 92px;
  overflow: hidden;
}
@media (max-width: 720px) {
  .catcon.homepanel6 {
    padding: 8px;
  }
  .homepanel6 .catlist {
    display: flex;
    justify-content: space-between;
  }
  .homepanel6 .catlist h2 {
    font-size: 20px;
  }
  .homepanel6 .catlist strong {
    font-size: 16px;
  }
  .homepanel6 .toplink {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  .homepanel6 .hdarea8 {
    grid-template-columns: 86px minmax(0, 1fr);
    min-height: 116px;
  }
  .homepanel6 .pichd img {
    width: 86px;
    height: 116px;
  }
  .homepanel6 .storycell {
    max-height: 66px;
  }
}

/* static category layout fix */
body { background: #e6f8fb; color: #333; font: 14px/1.8 "Microsoft YaHei", "PingFang SC", Arial, sans-serif; }
a { color: #2d65ad; }
a:hover { color: #c00; text-decoration: underline; }
.pagecell, .cate, .tool5, .rowmod { width: 980px; max-width: 980px; margin: 0 auto; }
.piclink { background: #e6f8fb; }
.tool5 { height: 86px; display: flex; align-items: center; gap: 28px; }
.numbox3 { width: 180px; font-size: 34px; line-height: 1; font-family: Georgia, "Microsoft YaHei", serif; font-weight: 700; }
.numbox3 a { color: #0871bd; text-shadow: 2px 3px 3px rgba(0, 90, 150, .28); }
.numbox3 a:hover { text-decoration: none; color: #0871bd; }
.colcell6 { margin-left: auto; flex: 0 0 470px; display: flex; height: 38px; border: 1px solid #9bd5ee; background: #fff; }
.authorline { flex: 1; height: 36px; padding: 0 12px; border: 0; font-size: 14px; outline: 0; }
.contmeta { width: 78px; height: 36px; border: 0; background: #ddd; color: #222; cursor: pointer; }
.linkcover { width: 980px; max-width: 980px; height: 42px; margin: 0 auto; background: #74c0df; display: block; overflow: hidden; }
.rowmod { display: flex; height: 42px; width: 980px; }
.linkcover a { display: block; color: #fff; font-weight: 700; line-height: 42px; padding: 0 12px; white-space: nowrap; }
.linkcover a:hover, .linkcover a.topinfo { background: #57acd2; color: #fff; text-decoration: none; }
.menucell8 { padding: 12px 0 20px; }

.wraplink { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px 18px; border: 3px solid #9bd5ee; background: #fffdf5; padding: 10px; margin-bottom: 12px; }
.wraplink .tool, .pichd9 .tool { display: grid; grid-template-columns: 112px 1fr; gap: 12px; min-height: 150px; overflow: hidden; }
.bookft { display: block; width: 112px; }
.bookft img { width: 112px; height: 150px; object-fit: cover; border: 1px solid #b7d3df; background: #fff; }
.name4 { min-width: 0; }
.name4 h3 { height: 26px; line-height: 26px; margin: 0 0 6px; border-bottom: 1px dotted #b9cfd7; font-size: 15px; overflow: hidden; }
.name4 h3 a { font-weight: 700; }
.name4 h3 span { float: right; max-width: 72px; color: #aaa; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.name4 p { margin: 0; text-indent: 2em; height: 108px; overflow: hidden; color: #333; line-height: 1.85; }

.pichd9 { display: grid; grid-template-columns: repeat(3, 1fr); border: 3px solid #9bd5ee; background: #fffdf5; margin-bottom: 12px; }
.homebd { min-height: 275px; padding: 8px 12px; border-right: 1px dotted #9bd5ee; border-bottom: 1px solid #ddd; overflow: hidden; }
.homebd:nth-child(3n) { border-right: 0; }
.homebd h2 { margin: 0 0 8px; height: 24px; line-height: 24px; border-bottom: 1px solid #cddbe0; font-size: 16px; color: #333; }
.homebd .tool { grid-template-columns: 86px 1fr; min-height: 116px; margin-bottom: 6px; }
.homebd .bookft, .homebd .bookft img { width: 86px; }
.homebd .bookft img { height: 116px; }
.homebd .name4 h3 { font-size: 14px; height: 24px; line-height: 24px; }
.homebd .name4 p { height: 96px; font-size: 13px; line-height: 24px; }
.modcover3, .storyarea, .ft8, .grid { list-style: none; margin: 0; padding: 0; }
.modcover3 li { display: flex; align-items: center; height: 24px; line-height: 24px; border-top: 1px solid #ddd; overflow: hidden; }
.modcover3 a { flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.modcover3 span { width: 74px; margin-left: 6px; color: #666; text-align: right; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

.cell2 { display: grid; grid-template-columns: 1fr 300px; gap: 12px; margin-bottom: 12px; }
.cellinner9, .boxft, .topbox { border: 3px solid #9bd5ee; background: #eefafa; }
.cellinner9 h2, .boxft h2 { height: 36px; line-height: 36px; padding: 0 12px; background: #9bd5ee; font-size: 16px; color: #333; }
.ft8 li, .storyarea li, .grid li { display: grid; align-items: center; min-height: 30px; line-height: 30px; border-bottom: 1px solid #d1e3e8; overflow: hidden; }
.ft8 li { grid-template-columns: 88px minmax(120px,1.15fr) minmax(180px,1.45fr) 90px 50px; column-gap: 8px; padding: 0 10px; }
.storyarea li { grid-template-columns: 76px minmax(0, 1fr) 76px; column-gap: 0; padding: 0 10px; }
.storyarea li.boxtext { grid-template-columns: 76px minmax(0, 1fr); }
.grid li { grid-template-columns: 90px minmax(220px,1fr) minmax(240px,1.2fr) 120px 78px; column-gap: 8px; padding: 0 12px; }
.ft8 a, .storyarea a, .grid a, .page, .new, .linkmod, .picrow, .storyarea em { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.page { color: #555; }
.new, .linkmod, .picrow, .storyarea em { color: #777; font-style: normal; text-align: right; }
.topbox { padding-bottom: 8px; }
.topbox h2 { height: 42px; line-height: 42px; padding: 0 12px; background: #fff; border-bottom: 1px solid #ddd; color: #0871bd; font-size: 18px; }
.covercell { display: grid; grid-template-columns: 160px minmax(160px, 1fr) 160px; gap: 12px; padding: 12px 10px 10px; background: #eefafa; }
.covercell button, .covercell select { width: 100%; height: 36px; border-radius: 2px; font: inherit; }
.covercell button { border: 0; background: #4badd3; color: #fff; cursor: pointer; }
.covercell button:disabled { opacity: .55; cursor: default; }
.covercell select { border: 1px solid #b9d7e3; background: #fff; padding: 0 10px; }
.gridmeta { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) minmax(0, 1fr); gap: 5px; width: 100%; padding: 10px 6px; box-sizing: border-box; }
.gridmeta button, .gridmeta select { min-width: 0; padding-left: 3px; padding-right: 3px; font-size: 13px; }
.boxbar > [hidden] { display: none !important; }
.gridrow { margin: 0; padding: 28px 20px; background: #fff; border: 1px solid #ddd; }
.gridrow h2 { margin: 0 0 8px; font-size: 22px; color: #555; }
.gridrow p, .datebar { color: #555; }

.homepanel6 { border: 3px solid #9bd5ee; background: #fffdf5; padding: 10px; }
.catlist { display: grid; grid-template-columns: 1fr 1fr; height: 38px; line-height: 38px; border-bottom: 1px solid #ddd; margin-bottom: 8px; }
.catlist h2, .catlist strong { font-size: 20px; color: #333; }
.metahd { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px 18px; }
.topinfolink { display: grid; grid-template-columns: 112px 1fr; gap: 12px; min-height: 164px; overflow: hidden; }
.navcover img { width: 112px; height: 150px; object-fit: cover; border: 1px solid #b7d3df; }
.titlepanel h3 { height: 26px; line-height: 26px; border-bottom: 1px dotted #b9cfd7; font-size: 15px; overflow: hidden; }
.titlepanel h3 span { float: right; max-width: 72px; color: #aaa; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.titlepanel h3 em { float: right; margin-left: 6px; color: #999; font-style: normal; font-weight: 400; }
.storylink { height: auto !important; color: #555; font-size: 13px; }
.titlepanel p { padding-top: 0; height: 130px; max-height: 130px; overflow: hidden; line-height: 26px; }

.mod2 { border-top: 2px solid #74c0df; padding: 18px 0 24px; text-align: center; color: #444; font-size: 12px; }
.toptext7 { position: fixed; right: 16px; bottom: 16px; z-index: 20; }
.toptext7 button { border: 1px solid #54afd4; background: #74c0df; color: #fff; border-radius: 3px; padding: 8px 10px; cursor: pointer; }

@media (max-width: 1023px) {
  .pagecell, .cate, .tool5, .linkcover, .rowmod { width: auto; max-width: none; }
  .gridmetainner { display: block; }
  .cate { padding: 0 10px; justify-content: center; }
  .piclink { padding: 10px; }
  .tool5 { height: auto; display: block; }
  .numbox3 { width: auto; margin-bottom: 8px; font-size: 28px; }
  .colcell6 { width: 100%; max-width: none; margin: 0; flex-basis: auto; }
  .linkcover { margin: 0 10px; height: 38px; overflow-x: auto; }
  .rowmod { display: flex; height: 38px; min-width: max-content; }
  .linkcover a { line-height: 38px; padding: 0 12px; }
  .menucell8 { padding: 8px 10px 16px; }
  .wraplink { display: block; padding: 8px; }
  .wraplink .tool { grid-template-columns: 86px 1fr; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #ddd; }
  .wraplink .bookft, .wraplink .bookft img { width: 86px; }
  .wraplink .bookft img { height: 116px; }
  .pichd9 { display: block; }
  .homebd { min-height: 0; border-right: 0; }
  .cell2 { display: flex; flex-direction: column; }
  .boxft { order: 1; }
  .cellinner9 { order: 2; }
  .ft8 li { grid-template-columns: 1fr 1fr; gap: 0 10px; min-height: 28px; line-height: 28px; }
  .ft8 .page, .ft8 .new, .ft8 .picrow { display: none; }
  .storyarea li { grid-template-columns: 1fr 72px; min-height: 28px; line-height: 28px; }
  .storyarea li span { display: none; }
  .grid li { grid-template-columns: 1fr 72px; min-height: 30px; line-height: 30px; }
  .grid .page, .grid .pagegrid { display: none; }
  .grid .new, .grid .linkmod { text-align: right; }
  .topbox h2 { height: 36px; line-height: 36px; font-size: 16px; }
  .covercell { grid-template-columns: 1fr 1.25fr 1fr; gap: 8px; padding: 10px 8px; }
  .gridmeta { grid-template-columns: 1fr 1.25fr 1fr; }
  .metahd { display: block; }
  .topinfolink { grid-template-columns: 86px 1fr; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #ddd; }
  .navcover img { width: 86px; height: 116px; }
}

/* mobile category layout restore: compact bqg-style category pages */
@media (max-width: 1023px) {
  .menucell8 > .pagecell {
    width: auto;
    margin-left: 8px;
    margin-right: 8px;
  }

  .metaline {
    display: block;
    padding: 8px 10px;
    border: 2px solid #8fd1ed;
    background: #fffdf4;
    margin-bottom: 10px;
    box-sizing: border-box;
  }

  .metaline .tool {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 10px;
    min-height: 112px;
    padding: 8px 0;
    border-bottom: 1px solid #d8d8d8;
    overflow: hidden;
    box-sizing: border-box;
  }

  .metaline .tool:last-child {
    border-bottom: 0;
  }

  .metaline .bookft,
  .metaline .bookft img {
    width: 82px;
  }

  .metaline .bookft img {
    height: 110px;
    object-fit: cover;
  }

  .metaline .name4 {
    min-width: 0;
  }

  .metaline .name4 h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: space-between;
    margin: 0 0 4px;
    padding-bottom: 3px;
    border-bottom: 1px dotted #b7d1da;
    font-size: 14px;
    line-height: 20px;
    overflow: hidden;
  }

  .metaline .name4 h3 a {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .metaline .name4 h3 span {
    flex: 0 0 auto;
    max-width: 5.5em;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #999;
    font-size: 12px;
    font-weight: normal;
  }

  .metaline .name4 p {
    margin: 0;
    font-size: 13px;
    line-height: 22px;
    max-height: 66px;
    overflow: hidden;
  }

  .catecol {
    display: block;
    margin-top: 10px;
  }

  .catecol .cellinner9,
  .catecol .boxft {
    width: 100%;
    margin: 0 0 10px;
    border: 2px solid #8fd1ed;
    box-sizing: border-box;
  }

  .catecol .cellinner9 h2,
  .catecol .boxft h2 {
    padding: 8px 10px;
    font-size: 14px;
    line-height: 20px;
  }

  .catecol .ft8 li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
    gap: 6px;
    align-items: center;
    min-height: 32px;
    padding: 0 8px;
    box-sizing: border-box;
  }

  .catecol .ft8 .page,
  .catecol .ft8 .chainfo,
  .catecol .ft8 .pagegrid {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 13px;
  }

  .catecol .ft8 .page {
    display: none;
  }

  .catecol .ft8 .new,
  .catecol .ft8 .picrow {
    display: none;
  }

  .catecol .storyarea li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 72px;
    gap: 6px;
    align-items: center;
    min-height: 32px;
    padding: 0 8px;
    box-sizing: border-box;
  }

  .catecol .storyarea li.boxtext {
    grid-template-columns: minmax(0, 1fr);
  }

  .catecol .storyarea li > span {
    display: none;
  }

  .catecol .storyarea span,
  .catecol .storyarea a,
  .catecol .storyarea em {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 13px;
  }
}

/* desktop bqg scale restore */
@media (min-width: 1024px) {
  .pagecell,
  .cate,
  .tool5,
  .rowmod {
    width: 1024px;
    max-width: 1024px;
  }

  .wraplink {
    gap: 14px 20px;
    padding: 10px 12px;
  }

  .wraplink .tool {
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 14px;
    min-height: 160px;
  }

  .wraplink .bookft,
  .wraplink .bookft img {
    width: 120px;
  }

  .wraplink .bookft img {
    height: 160px;
  }

  .wraplink .name4 h3,
  .pichd9 .name4 h3 {
    font-size: 15px;
    line-height: 23px;
  }

  .wraplink .name4 p,
  .pichd9 .name4 p {
    font-size: 14px;
    line-height: 24px;
  }

  .homebd {
    padding: 10px 12px;
  }

  .homebd .tool {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 12px;
    min-height: 124px;
  }

  .homebd .bookft,
  .homebd .bookft img {
    width: 92px;
  }

  .homebd .bookft img {
    height: 124px;
  }

  .modcover3 li,
  .storyarea li,
  .ft8 li {
    font-size: 14px;
    min-height: 24px;
    line-height: 24px;
  }

  .cellinner9 h2,
  .boxft h2,
  .homebd h2 {
    font-size: 16px;
  }
}

/* 2026-07-12: desktop home layout restore: 4 featured + classic sidebar */
@media (min-width: 1024px) {
  .pagecell,
  .cate,
  .tool5,
  .rowmod {
    width: 1024px;
    max-width: 1024px;
    box-sizing: border-box;
  }

  .rowmod {
    display: flex;
    align-items: stretch;
    overflow: visible;
    height: 40px;
  }

  .rowmod a,
  .boxunit a {
    flex: 0 0 auto;
    display: block;
    padding: 0 10px;
    font-size: 14px;
    line-height: 40px;
    white-space: nowrap;
    box-sizing: border-box;
  }

  .hotblock8 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 12px;
    border: 3px solid #9bd5ee;
    background: #fffdf5;
    padding: 10px;
    margin: 0 0 12px;
    box-sizing: border-box;
  }

  .hotblock8 .wraplink {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 18px;
    border: 0;
    margin: 0;
    padding: 0;
    background: transparent;
  }

  .hotblock8 .wraplink .tool {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    min-height: 160px;
    gap: 14px;
    padding: 0;
    border: 0;
    background: transparent;
  }

  .hotblock8 .wraplink .tool:nth-child(n+5) {
    display: none;
  }

  .hotblock8 .bookft,
  .hotblock8 .bookft img {
    width: 120px;
    height: 160px;
    object-fit: cover;
  }

  .bd8 {
    border-left: 3px solid #9bd5ee;
    background: #eefafa;
    margin: -10px -10px -10px 0;
    min-width: 0;
  }

  .bd8 h2 {
    height: 36px;
    line-height: 36px;
    margin: 0;
    padding: 0 12px;
    background: #d9edf0;
    color: #333;
    font-size: 16px;
    font-weight: 700;
  }

  .bd8 ul {
    list-style: none;
    margin: 0;
    padding: 6px 10px;
  }

  .bd8 li {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) 68px;
    gap: 6px;
    height: 28px;
    line-height: 28px;
    border-bottom: 1px solid #d3e1e4;
    overflow: hidden;
  }

  .bd8 li span,
  .bd8 li a,
  .bd8 li em {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-style: normal;
    font-size: 13px;
  }

  .bd8 li a {
    color: #3366aa;
  }

  .bd8 li em {
    color: #666;
    text-align: right;
  }
}

@media (max-width: 1023px) {
  .hotblock8 {
    display: block;
    border: 2px solid #8fd1ed;
    background: #fffdf4;
    padding: 8px;
    margin-bottom: 10px;
  }

  .hotblock8 .wraplink {
    display: block;
    border: 0;
    margin: 0;
    padding: 0;
    background: transparent;
  }

  .bd8 {
    margin-top: 8px;
    border: 2px solid #8fd1ed;
    background: #eefafa;
  }

  .bd8 h2 {
    height: 34px;
    line-height: 34px;
    margin: 0;
    padding: 0 10px;
    background: #d9edf0;
    font-size: 15px;
  }

  .bd8 ul {
    list-style: none;
    margin: 0;
    padding: 4px 8px;
  }

  .bd8 li {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) 58px;
    gap: 4px;
    height: 30px;
    line-height: 30px;
    border-bottom: 1px solid #d3e1e4;
    overflow: hidden;
  }

  .bd8 li span,
  .bd8 li a,
  .bd8 li em {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-style: normal;
    font-size: 13px;
  }

  .bd8 li em {
    text-align: right;
  }
}

/* 2026-07-12: force desktop nav/header width to 1024px */
@media (min-width: 1024px) {
  .cate,
  .tool5,
  .rowmod,
  .pagecell {
    width: 1024px !important;
    max-width: 1024px !important;
    box-sizing: border-box;
  }

  .linkcover,
  .boxunit {
    width: 1024px !important;
    max-width: 1024px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }

  .rowmod {
    display: flex !important;
    align-items: stretch !important;
    overflow: visible !important;
  }
}

/* 2026-07-12: remove current-menu selection mark, keep nav visually flat */
.linkcover a.topinfo,
.linkcover a[aria-current="page"],
.boxunit a.topinfo,
.boxunit a[aria-current="page"],
.rowmod a.topinfo,
.rowmod a[aria-current="page"] {
  background: transparent !important;
  color: #fff !important;
  text-decoration: none !important;
}

.linkcover a:hover,
.boxunit a:hover,
.rowmod a:hover {
  background: #57acd2 !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* 2026-07-12: desktop starts at 1024px; below 1024 uses mobile adaptive layout */
@media (min-width: 1024px) {
  .cate,
  .tool5,
  .rowmod,
  .pagecell,
  .linkcover,
  .boxunit {
    width: 1024px !important;
    max-width: 1024px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .linkcover,
  .boxunit {
    overflow: hidden !important;
  }
}

@media (max-width: 1023px) {
  .cate,
  .tool5,
  .rowmod,
  .pagecell,
  .linkcover,
  .boxunit {
    width: auto !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }

  .pagecell,
  .tool5,
  .cate {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }

  .linkcover,
  .boxunit {
    margin-left: 10px !important;
    margin-right: 10px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .rowmod {
    min-width: max-content !important;
    display: flex !important;
  }
}

/* nav-hover-disabled: 导航条不保留 hover / focus / active 印记 */
.piclink nav a:hover,
.piclink nav a:focus,
.piclink nav a.topinfo,
.piclink nav .topinfo,
.tool5 nav a:hover,
.tool5 nav a:focus,
.tool5 nav a.topinfo,
.tool5 nav .topinfo,
.linkcover a:hover,
.linkcover a:focus,
.linkcover a.topinfo,
.linkcover .topinfo,
.boxunit a:hover,
.boxunit a:focus,
.boxunit a.topinfo,
.boxunit .topinfo {
    background: transparent !important;
    color: #fff !important;
    text-decoration: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* responsive-1024-fix:start */
/* 桌面版：传统站宽度固定 1024，导航与主体保持同宽 */
@media (min-width: 1024px) {
    .cate,
    .piclink .tool5,
    .tool5,
    .pagecell,
    .menucell8,
    .hdrow,
    .new2,
    .hdcover,
    .linkcover,
    .boxunit {
        width: 1024px !important;
        max-width: 1024px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }
}

/* 小于等于 1024：立即切到移动自适应，不再保留桌面定宽 */
@media (max-width: 1023px) {
    html,
    body {
        width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
    }

    body {
        margin: 0 !important;
    }

    .gridmetainner,
    .piclink,
    .menucell8,
    .mod2,
    .cate,
    .piclink .tool5,
    .tool5,
    .pagecell,
    .hdcover,
    .hdrow,
    .new2,
    .timelist5,
    .linkcover,
    .boxunit {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    .cate,
    .piclink .tool5,
    .tool5,
    .pagecell,
    .hdrow,
    .new2,
    .menucell8 {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .piclink .tool5,
    .tool5 {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .numbox3,
    .piclink h1,
    .piclink .numbox3 {
        flex: 0 0 auto !important;
        width: auto !important;
        margin: 0 !important;
        text-align: left !important;
    }

    .hdgrid5 {
        margin-left: auto !important;
    }

    .colcell6 {
        order: 3 !important;
        flex: 0 0 100% !important;
        display: flex !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .colcell6 .authorline,
    .colcell6 input[type="text"] {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
    }

    .colcell6 .contmeta,
    .colcell6 button,
    .colcell6 input[type="submit"] {
        flex: 0 0 82px !important;
        width: 82px !important;
    }

    .linkcover,
    .boxunit {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 0 !important;
    }

    .linkcover a,
    .boxunit a {
        flex: 0 0 auto !important;
        padding: 0 12px !important;
        text-align: center !important;
    }

    .catcon,
    .blockcon,
    .contunit6,
    .novelmain4,
    .itemsec,
    .topbox .sidebox,
    .grid,
    .sidebox,
    .desccol,
    .picname,
    .grid2,
    .name {
        display: block !important;
        grid-template-columns: none !important;
        columns: auto !important;
        width: 100% !important;
    }

    .picft9,
    .card4,
    .sidebox .novelbar,
    .grid .novelbar,
    .desccol .novelbar,
    .picname .novelbar,
    .grid2 .novelbar,
    .updatecol,
    .datebox {
        display: grid !important;
        grid-template-columns: 88px minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        min-height: 118px !important;
        margin: 0 0 12px !important;
        padding-bottom: 10px !important;
        border-bottom: 1px dotted #98c9d9 !important;
        box-sizing: border-box !important;
        break-inside: avoid !important;
    }

    .picft9 img,
    .card4 img,
    .navcover img,
    .sidebox .novelbar img,
    .grid .novelbar img,
    .desccol .novelbar img,
    .picname .novelbar img,
    .grid2 .novelbar img,
    .updatecol img,
    .datebox img {
        width: 88px !important;
        height: 118px !important;
        object-fit: cover !important;
    }

    .titlepanel,
    .cardlink,
    .name4,
    .hdgrid,
    .datebox dl,
    .datebox .hdwrap {
        min-width: 0 !important;
    }

    .bar2,
    .numcover8,
    .metamain3,
    .box {
        display: block !important;
        grid-template-columns: none !important;
        width: 100% !important;
    }

    .bar2 > *,
    .numcover8 > *,
    .metamain3 > *,
    .box > * {
        width: 100% !important;
        margin-bottom: 10px !important;
        box-sizing: border-box !important;
    }
}

/* 导航条不保留 hover/focus/active 视觉印记 */
.linkcover a:hover,
.linkcover a:focus,
.linkcover a:active,
.linkcover a.topinfo,
.linkcover .topinfo,
.boxunit a:hover,
.boxunit a:focus,
.boxunit a:active,
.boxunit a.topinfo,
.boxunit .topinfo,
.piclink nav a:hover,
.piclink nav a:focus,
.piclink nav a:active,
.piclink nav a.topinfo,
.tool5 nav a:hover,
.tool5 nav a:focus,
.tool5 nav a:active,
.tool5 nav a.topinfo {
    background: transparent !important;
    color: #fff !important;
    text-decoration: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
}
/* responsive-1024-fix:end */
/* Homepage featured descriptions: clip at exactly five complete lines. */
@media (min-width: 1024px) {
  .hotblock8 .name4 p,
  .metaline .name4 p {
    height: 130px;
    line-height: 26px;
  }
}

/* Compact desktop header while preserving independent mobile layout. */
@media (min-width: 1024px) {
  .gridmetainner,
  .cate {
    height: 28px;
  }

  .tool5 {
    height: 68px;
  }

  .linkcover,
  .rowmod {
    height: 38px;
  }

  .linkcover a,
  .rowmod a {
    line-height: 38px;
  }

  .menucell8 {
    padding-top: 8px;
  }
}

/* Target-site adaptive header: up to 1023px mobile; 1024px and above desktop. */
.top6,
.maininner {
  display: none;
}

@media (max-width: 1023px) {
  .gridmetainner {
    display: none !important;
  }

  .piclink {
    padding: 0 !important;
    background: #e6f8fb !important;
  }

  .piclink .tool5,
  .tool5 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 0 !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
    background: #e6f8fb !important;
  }

  .piclink .numbox3,
  .piclink h1 {
    height: 52px !important;
    line-height: 52px !important;
    padding-left: 12px !important;
    margin: 0 !important;
    color: #0871bd !important;
    font-size: 27px !important;
    text-shadow: 2px 3px 3px rgba(0, 90, 150, .28) !important;
  }

  .piclink .numbox3 a {
    color: #0871bd !important;
    text-shadow: 2px 3px 3px rgba(0, 90, 150, .28) !important;
  }

  .top6 {
    display: flex !important;
    gap: 8px !important;
    padding-right: 10px !important;
  }

  .top6 a {
    display: block !important;
    min-width: 48px !important;
    height: 30px !important;
    line-height: 30px !important;
    padding: 0 8px !important;
    border-radius: 3px !important;
    background: #74c0df !important;
    color: #fff !important;
    text-align: center !important;
    font-size: 13px !important;
  }

  .maininner {
    display: grid !important;
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    height: 42px !important;
    background: #74c0df !important;
    border-top: 0 !important;
  }

  .maininner a {
    min-width: 0 !important;
    height: 42px !important;
    line-height: 42px !important;
    padding: 0 !important;
    color: #fff !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
  }

  .piclink .colcell6,
  .tool5 .colcell6 {
    display: flex !important;
    grid-column: 1 / -1 !important;
    order: initial !important;
    width: auto !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 9px 10px !important;
    border: 0 !important;
    background: #e6f8fb !important;
    box-sizing: border-box !important;
  }

  .piclink .colcell6 .authorline,
  .piclink .colcell6 input[type="text"] {
    height: 34px !important;
    border: 1px solid #8dcde7 !important;
    border-right: 0 !important;
  }

  .piclink .colcell6 .contmeta,
  .piclink .colcell6 button {
    flex: 0 0 82px !important;
    width: 82px !important;
    height: 34px !important;
    border: 1px solid #8dcde7 !important;
    background: #ddd !important;
    color: #222 !important;
  }

  body > .linkcover,
  body > nav.linkcover {
    display: none !important;
  }

  .menucell8 {
    padding-top: 0 !important;
  }

  .hotblock8 {
    margin-top: 0 !important;
  }

  /* Book detail: keep metadata beside the cover, but move actions/intro full width. */
  .newblock {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) !important;
    gap: 8px 10px !important;
    padding: 10px !important;
    align-items: start !important;
  }

  .newblock .cellsec {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    width: 96px !important;
    min-height: 126px !important;
    padding: 4px !important;
  }

  .newblock .cellsec img {
    width: 100% !important;
    height: 118px !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  .newblock .panelmeta9 {
    display: contents !important;
  }

  .newblock .panelmeta9 h1 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    height: auto !important;
    line-height: 27px !important;
    font-size: 18px !important;
    white-space: normal !important;
  }

  .newblock .rankcover {
    grid-column: 2 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  .newblock .rankcover p {
    height: 25px !important;
    line-height: 25px !important;
  }

  .newblock .head {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
    margin: 2px 0 0 !important;
  }

  .newblock .updateft {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    max-height: 112px !important;
    padding-top: 2px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .newblock .updateft.weninner8 {
    max-height: none !important;
  }

  .newblock .menuimg7 {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
  }

  .blockcol7 .contlist6 {
    grid-template-columns: 1fr !important;
  }

  .wen .listname {
    margin: 14px 0 0 !important;
    padding: 14px 10px 16px !important;
    background: #fff !important;
  }

  .wen .listname h2 {
    margin-bottom: 12px !important;
    color: #888 !important;
    font-weight: 400 !important;
  }

  .wen .cover {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 14px !important;
  }

  .wen .cover a {
    min-width: 0 !important;
    padding: 0 8px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
  }

  .menucell8 .pagecell > .listname {
    margin: 0 0 14px !important;
    padding: 14px 10px 16px !important;
    background: #fff !important;
  }

  .menucell8 .pagecell > .listname .cover {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 14px !important;
  }

  .menucell8 .pagecell > .listname .cover a {
    min-width: 0 !important;
    padding: 0 8px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
  }
}

/* 分类页桌面双栏等高：左侧 42×35px，右侧 49×30px。 */
@media (min-width: 1024px) {
  .catecol .ft8 li {
    height: 35px;
    min-height: 35px;
    line-height: 35px;
  }

  .catecol .storyarea li,
  .catecol .storyarea li.boxtext {
    height: 30px;
    min-height: 30px;
    line-height: 30px;
  }

  /* 数据不足49条时，左右条数相同，统一使用35px行高。 */
  .catecol.book5 .storyarea li,
  .catecol.book5 .storyarea li.boxtext {
    height: 35px;
    min-height: 35px;
    line-height: 35px;
  }
}

/* Category footer controls: keep the three paging controls on one row and
   pin the right-column entry to the bottom of the equally tall panel. */
.catecol { align-items: stretch; }
.catecol .cellinner9,
.catecol .boxft { min-width: 0; }
.catecol .boxft { display: flex; flex-direction: column; }
.catecol .boxft .storyarea { flex: 0 0 auto; }
.catecol .novelunit {
  display: grid;
  grid-template-columns: minmax(90px, 160px) minmax(120px, 1fr) minmax(90px, 160px);
  gap: 10px;
  align-items: center;
  padding: 12px 10px 10px;
  box-sizing: border-box;
}
.catecol .novelunit > a,
.catecol .novelunit > span,
.catecol .novelunit > select {
  width: 100%;
  height: 36px;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
}
.catecol .novelunit > a,
.catecol .novelunit > span {
  display: flex;
  align-items: center;
  justify-content: center;
}
.catecol .novelunit > select {
  border: 1px solid #b9d7e3;
  background: #fff;
  padding: 0 10px;
}
.catecol .unit {
  margin: auto 0 0;
  padding: 12px 10px 10px;
  border-top: 1px solid #cbdde3;
  box-sizing: border-box;
}
.catecol .unit a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 36px;
  background: #4badd3;
  color: #fff;
  box-sizing: border-box;
}
@media (max-width: 1023px) {
  .catecol .novelunit {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, 1fr);
    gap: 5px;
    padding: 10px 6px;
  }
}

/* Mobile reader width: avoid stacking page/container/reader side gutters. */
@media (max-width: 1023px) {
  .menucell8.updatebd7,
  .menucell8.catitem7,
  .menucell8.contft {
    width: 100% !important;
    max-width: none !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    box-sizing: border-box !important;
  }

  .menucell8.updatebd7 > .pagecell,
  .menucell8.catitem7 > .pagecell,
  .menucell8.contft > .pagecell {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  .menucell8.bookhd {
    width: 100% !important;
    max-width: none !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    box-sizing: border-box !important;
  }

  .menucell8.bookhd > .pagecell {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  .menucell8.bookhd .wen {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: clamp(6px, 2vw, 16px) !important;
    padding-right: clamp(6px, 2vw, 16px) !important;
    box-sizing: border-box !important;
  }

  .menucell8.bookhd .chahd {
    width: 100% !important;
    max-width: none !important;
    padding-left: clamp(2px, 1.2vw, 10px) !important;
    padding-right: clamp(2px, 1.2vw, 10px) !important;
    box-sizing: border-box !important;
  }

  .menucell8.bookhd .authorgrid9,
  .menucell8.bookhd .bditem8 {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
}
