* { 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%; }
.volitem, .panelgrid, .unit, .mainlink, .namemeta2 { max-width: 980px; margin: 0 auto; }

.covermod { height: 30px; background: #f7f7f7; border-bottom: 1px solid #ddd; color: #777; font-size: 12px; }
.panelgrid { display: flex; gap: 24px; align-items: center; height: 30px; }
.titlerow { border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; padding: 0; }
.titlerow:hover { color: #0871bd; text-decoration: underline; }
.homebar { background: #2f8ed8; }
.unit { height: 76px; display: flex; align-items: center; gap: 28px; }
.menu9 { width: 170px; font-size: 34px; line-height: 1; font-weight: 700; }
.menu9 a { color: #fff; letter-spacing: 0; }
.menu9 a:hover { color: inherit; text-decoration: none; }
.box9 { flex: 1; display: flex; max-width: 470px; }
.timebox { flex: 1; height: 38px; padding: 0 12px; border: 0; outline: 0; font-size: 14px; }
.list { width: 78px; height: 38px; border: 0; background: #f5a623; color: #fff; font-size: 15px; cursor: pointer; }
.imgsec7 { margin-left: auto; display: flex; gap: 10px; }
.imgsec7 a { color: #fff; padding: 5px 10px; border: 1px solid rgba(255,255,255,.5); border-radius: 2px; }

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

.row { display: grid; grid-template-columns: 2fr 1fr; gap: 12px; margin-bottom: 12px; }
.wrap4, .sitetext, .tagpanel, .bookrow, .gridimg3, .desc5, .toolrow { background: #fff; border: 1px solid #ddd; }
.wrap4 { display: grid; grid-template-columns: 1fr 1fr; padding: 12px; gap: 12px; }
.grid3 { display: flex; min-height: 132px; overflow: hidden; }
.grid3 .mainblock5 { width: 88px; flex: 0 0 88px; margin-right: 12px; }
.grid3 .mainblock5 img { width: 88px; height: 120px; object-fit: cover; border: 1px solid #ddd; }
.grid3 dt { height: 28px; line-height: 28px; overflow: hidden; font-weight: 700; }
.grid3 dt span { float: right; max-width: 72px; color: #888; font-size: 12px; font-weight: 400; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.grid3 dd { color: #555; height: 88px; overflow: hidden; font-size: 13px; }
.grid3 dd a { color: #555; }
.imgcon, .tagpanel h2, .gridimg3 h2, .desc5 h2 { height: 38px; line-height: 38px; padding: 0 12px; border-bottom: 1px solid #ddd; background: #f9f9f9; color: #287dc2; font-size: 16px; }
.catpanel2, .textunit, .tag9, .foot4, .conttext4 { list-style: none; }
.catpanel2 li, .tag9 li, .conttext4 li { display: flex; height: 35px; line-height: 35px; padding: 0 12px; border-bottom: 1px dashed #e5e5e5; overflow: hidden; }
.descpanel, .rowcell7 { width: 86px; color: #888; flex: 0 0 86px; }
.box, .catcon8 { flex: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.sortcol { width: 220px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.descimg, .listmeta2 { width: 88px; color: #777; text-align: right; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.mainmod { width: 70px; color: #888; text-align: right; }

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

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

.tag { background: #f6f1e7; border: 1px solid #d8cfbd; padding: 0 24px 26px; }
.story { height: 38px; line-height: 38px; color: #777; border-bottom: 1px solid #e4dccd; font-size: 13px; }
.pagecell2 { text-align: center; padding: 20px 0 10px; border-bottom: 1px dashed #d8cfbd; }
.pagecell2 h1 { font-size: 26px; font-weight: 500; color: #222; }
.pagecell2 p { color: #777; margin-top: 6px; }
.siteinner { padding: 20px 8px; color: #222; font: 20px/2 "Microsoft YaHei", "PingFang SC", serif; }
.text { 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; }
.siteinner p { text-indent: 2em; margin-bottom: 14px; text-align: justify; }
.homearea { display: flex; justify-content: center; gap: 12px; padding: 18px 0 0; border-top: 1px dashed #d8cfbd; }
.homearea.pagecol { padding: 14px 0; border-top: 0; border-bottom: 1px dashed #d8cfbd; }
.tag .homearea.descsec { margin-bottom: 18px; }
.homearea a, .homearea span { min-width: 110px; height: 34px; line-height: 34px; text-align: center; background: #fff; border: 1px solid #d8cfbd; color: #555; }
.homearea a:hover { background: #287dc2; color: #fff; text-decoration: none; border-color: #287dc2; }

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

@media (max-width: 768px) {
    .volitem, .panelgrid, .unit, .mainlink, .namemeta2 { width: 100%; max-width: none; }
    .covermod { display: none; }
    .homebar { padding: 10px; }
    .unit { height: auto; display: block; }
    .menu9 { width: auto; margin-bottom: 10px; font-size: 28px; text-align: center; }
    .box9 { max-width: none; }
    .imgsec7 { display: none; }
    .mainlink { display: none; }
    .namemeta2 { display: flex; overflow-x: auto; background: #287dc2; }
    .namemeta2 a { color: #fff; line-height: 38px; padding: 0 14px; white-space: nowrap; }
    .readinfo3 { padding: 8px; }
    .row, .numsec { display: block; }
    .wrap4 { grid-template-columns: 1fr; margin-bottom: 10px; }
    .sitetext, .tagpanel { margin-bottom: 10px; }
    .descpanel, .sortcol, .descimg, .rowcell7, .listmeta2, .mainmod { display: none; }
    .textunit { columns: 1; }
    .bookrow { display: block; text-align: center; }
    .bookrow .blockbar { margin: 0 auto 12px; }
    .catpanel h1 { height: auto; line-height: 1.4; font-size: 24px; }
    .storywrap { justify-content: center; }
    .foot4 { grid-template-columns: 1fr; }
    .tag { padding: 0 12px 18px; }
    .pagecell2 h1 { font-size: 22px; }
    .siteinner { font-size: 18px; line-height: 1.95; padding: 14px 0; }
    .text { display: block; font-size: 18px; margin-bottom: 12px; padding-bottom: 8px; line-height: 1.45; }
    .homearea { gap: 8px; }
    .homearea a, .homearea span { min-width: 0; flex: 1; }
}

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

/* Screenshot-style desktop home layout */
body { background: #e6f8fb; color: #555; font-size: 14px; }
a { color: #4d6da8; }
.volitem, .panelgrid, .unit, .mainlink, .namemeta2 { max-width: 1160px; }
.covermod { background: #d9eef3; border-bottom: 1px solid #b8dce7; }
.panelgrid { color: #6d8f9e; }
.homebar { background: #e6f8fb; }
.unit { height: 82px; gap: 24px; }
.menu9 { width: 150px; font-size: 36px; font-family: Georgia, "Microsoft YaHei", serif; text-shadow: 2px 2px 0 #c3e3f1; }
.menu9 a { color: #0871bd; }
.box9 { max-width: 480px; margin-left: auto; }
.timebox { height: 36px; border: 1px solid #9bc7df; background: #fff; }
.list { height: 36px; background: #ddd; color: #222; }
.imgsec7 { display: none; }
.mainlink { height: 44px; background: #79c2e3; padding: 0 10px; }
.mainlink a { line-height: 44px; padding: 0 11px; border-right: 0; color: #fff; font-weight: 700; }
.mainlink a:hover { background: #5eb1d8; }
.readinfo3 { padding: 12px 0 24px; }

.boxft { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px 22px; padding: 14px; margin-bottom: 22px; border: 3px solid #b9dff1; background: #fffdf6; }
.secbox8 { display: grid; grid-template-columns: 126px 1fr; gap: 12px; min-height: 176px; }
.newmod8 img { width: 126px; height: 170px; object-fit: cover; border: 1px solid #abc6d4; padding: 3px; background: #fff; }
.sortline8 h2 { height: 28px; line-height: 28px; font-size: 15px; border-bottom: 1px dotted #c7d8e3; overflow: hidden; }
.sortline8 h2 a { color: #5b6fad; font-weight: 700; }
.sortline8 h2 span { float: right; color: #aaa; font-weight: 400; }
.sortline8 p { padding-top: 8px; color: #555; line-height: 1.85; height: 132px; overflow: hidden; text-indent: 2em; }
.rowname2 { display: grid; grid-template-columns: 1fr 335px; gap: 14px; align-items: start; }
.img, .headmeta { border: 3px solid #86c9e8; background: #eef6f6; }
.img h2, .headmeta h2 { height: 36px; line-height: 36px; padding: 0 12px; background: #9bd3e9; color: #456; font-size: 16px; }
.cont, .maincol { list-style: none; padding: 8px 12px; }
.cont 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; }
.cont .blocktext2 { color: #555; }
.cont .panelcell, .cont .sort, .cont .authors { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.cont .authors, .cont .mainmodunit { color: #aaa; text-align: right; }
.maincol li { display: grid; grid-template-columns: 78px 1fr 58px; gap: 6px; height: 31px; line-height: 31px; border-bottom: 1px solid #d8e2e4; overflow: hidden; }
.maincol span { color: #555; }
.maincol a { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.maincol em { color: #666; font-style: normal; text-align: right; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.itemmod { display: grid; grid-template-columns: 190px 1fr 190px; gap: 18px; padding: 14px 12px; }
.itemmod a, .itemmod select { height: 40px; border: 0; background: #4eadd0; color: #fff; text-align: center; border-radius: 3px; font-weight: 700; }
.itemmod a { line-height: 40px; }
.itemmod select { background: #fff; color: #222; border: 1px solid #d8e2e4; padding: 0 12px; }
.textmain { 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; }
    .volitem, .panelgrid, .unit, .mainlink, .namemeta2 { width: 100%; max-width: none; }
    .covermod { display: none; }
    .homebar { padding: 10px; background: #dff5fb; }
    .unit { display: block; height: auto; }
    .menu9 { width: auto; font-size: 30px; text-align: left; margin: 0 0 10px; padding-right: 58px; }
    .box9 { max-width: none; display: flex; margin-left: 0; }
    .timebox { height: 38px; font-size: 14px; }
    .list { width: 72px; height: 38px; }
    .mainlink { display: none; }
    .namemeta2 { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); overflow: hidden; height: 40px; background: #79c2e3; padding: 0; }
    .namemeta2 a { min-width: 0; color: #fff; line-height: 40px; padding: 0 2px; text-align: center; font-weight: 700; white-space: nowrap; }
    .unit .namemeta2 { margin-bottom: 8px; }
    .readinfo3 { padding: 8px; }
    .boxft { display: block; padding: 8px; margin-bottom: 10px; border-width: 2px; }
    .secbox8 { display: grid; grid-template-columns: 82px 1fr; gap: 10px; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #d8e2e4; }
    .secbox8:last-child { border-bottom: 0; }
    .newmod8 img { width: 82px; height: 110px; padding: 2px; }
    .sortline8 h2 { height: 24px; line-height: 24px; font-size: 15px; }
    .sortline8 h2 span { display: none; }
    .sortline8 p { height: 78px; line-height: 1.7; padding-top: 5px; text-indent: 0; }
    .rowname2 { display: block; }
    .rankimg { display: flex; flex-direction: column; }
    .rankimg .headmeta { order: 1; }
    .rankimg .img { order: 2; }
    .img, .headmeta { border-width: 2px; margin-bottom: 10px; }
    .img h2, .headmeta h2 { height: 34px; line-height: 34px; font-size: 15px; }
    .cont, .maincol { padding: 4px 8px; }
    .cont 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; }
    .cont .authors, .cont .mainmodunit { display: none; }
    .cont .blocktext2 { display: block; width: auto; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #555; }
    .cont .panelcell { font-weight: 700; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .cont .sort { color: #777; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .maincol li { grid-template-columns: minmax(0, 1fr) 88px; height: 34px; line-height: 34px; }
    .maincol span { display: none; }
    .itemmod { grid-template-columns: 1fr 1fr; gap: 8px; padding: 10px 8px; }
    .itemmod select { grid-column: 1 / -1; order: -1; }
    .textmain { padding: 14px 8px; line-height: 1.7; }
}

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

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

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

.area { position: fixed; right: 18px; bottom: 26px; z-index: 50; display: grid; gap: 8px; }
.area 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); }
.area button:hover { background: #4eadd0; }
body.readpanel4 { background: #1e1e1e; color: #aaa; }
body.readpanel4 a { color: #9eb8e8; }
body.readpanel4 .covermod,
body.readpanel4 .homebar,
body.readpanel4 .textmain { background: #252525; border-color: #3a3a3a; color: #888; }
body.readpanel4 .mainlink,
body.readpanel4 .namemeta2 { background: #333; }
body.readpanel4 .mainlink a:hover,
body.readpanel4 .namemeta2 a:hover { background: #444; }
body.readpanel4 .boxft,
body.readpanel4 .rowlink,
body.readpanel4 .contlist7,
body.readpanel4 .pagetext,
body.readpanel4 .cateunit,
body.readpanel4 .metalink,
body.readpanel4 .bookrow,
body.readpanel4 .gridimg3,
body.readpanel4 .desc5,
body.readpanel4 .toolrow,
body.readpanel4 .img,
body.readpanel4 .headmeta,
body.readpanel4 .volimg,
body.readpanel4 .textcover { background: #2a2a2a; border-color: #444; }
body.readpanel4 .tag { background: #202020; border-color: #444; }
body.readpanel4 .siteinner { color: #b8b8b8; }
body.readpanel4 .imgcon,
body.readpanel4 .tagpanel h2,
body.readpanel4 .gridimg3 h2,
body.readpanel4 .desc5 h2,
body.readpanel4 .img h2,
body.readpanel4 .headmeta h2,
body.readpanel4 .volimg h2,
body.readpanel4 .cateunit h1,
body.readpanel4 .toolrow h1,
body.readpanel4 .contsec h2,
body.readpanel4 .metalink h1 { background: #333; color: #ccc; border-color: #444; }
body.readpanel4 .sortline8 p,
body.readpanel4 .numlist p,
body.readpanel4 .footcell p,
body.readpanel4 .cellinfo p,
body.readpanel4 .gridimg3 p,
body.readpanel4 .catpanel p,
body.readpanel4 .titlename .hot5 { color: #aaa; }
body.readpanel4 .boxcol6 th { background: #333; color: #ccc; }
body.readpanel4 .boxcol6 th,
body.readpanel4 .boxcol6 td,
body.readpanel4 .cont li,
body.readpanel4 .maincol li,
body.readpanel4 .volimg li,
body.readpanel4 .headcover li { border-color: #444; }
body.readpanel4 .timebox,
body.readpanel4 .home input,
body.readpanel4 .itemmod select { background: #222; color: #ddd; border-color: #555; }
@media (max-width: 768px) {
    .area { right: 10px; bottom: 14px; }
    .area button { width: 48px; height: 32px; font-size: 13px; }
}

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

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

.pagerow { border: 3px solid #86c9e8; background: #eef6f6; margin-bottom: 22px; }
.pagerow .story { height: 34px; line-height: 34px; padding: 0 12px; color: #456; border-bottom: 1px solid #b9dff1; background: #dcecef; }
.listline8 { display: grid; grid-template-columns: 160px 1fr; gap: 24px; padding: 14px 28px 18px; }
.infolist {
    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;
}
.infolist img {
    display: block;
    width: 100%;
    height: 176px;
    max-width: 100%;
    object-fit: contain;
    object-position: center;
}
.cate h1 { font-size: 30px; line-height: 44px; color: #333; }
.bar9 { display: grid; grid-template-columns: 1fr 1fr; column-gap: 28px; border-bottom: 1px dashed #86aebd; padding-bottom: 6px; margin-bottom: 8px; }
.bar9 p { height: 28px; line-height: 28px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #444; }
.bar9 .novel { color: #b54800; font-weight: 700; grid-column: 1 / -1; }
.metalist { grid-column: 2; line-height: 1.8; color: #444; }
.wrapft { display: none; }
.imgmeta { display: none; }
.numsec5 { border: 3px solid #4eadd0; background: #eef6f6; margin-bottom: 30px; }
.numsec5 h2 { height: 38px; line-height: 38px; text-align: center; background: #9fb6bd; color: #333; font-size: 16px; border-bottom: 1px solid #9fc9db; }
.numsec5 .foot4 { display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 12px; list-style: none; }
.numsec5 .foot4 li { height: 40px; line-height: 40px; border-bottom: 1px dashed #9fb6bd; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; padding-right: 16px; }
.numsec5 .foot4.page li { font-weight: 700; }
.numunit5 { display: grid; grid-template-columns: 250px 1fr 250px; gap: 18px; padding: 16px 12px; }
.numunit5 a, .numunit5 span, .numunit5 button, .numunit5 select { height: 40px; line-height: 40px; border: 0; text-align: center; border-radius: 3px; }
.numunit5 a, .numunit5 span, .numunit5 button { background: #1e6f8a; color: #fff; cursor: pointer; font: inherit; }
.numunit5 button:disabled { cursor: default; opacity: .65; }
.numunit5 select { background: #fff; border: 1px solid #ddd; padding: 0 12px; text-align: left; }
.shu { background: #eee; padding: 18px 14px; margin-bottom: 20px; }
.shu h2 { text-align: center; color: #777; font-size: 16px; margin-bottom: 14px; font-weight: 400; }
.booklist { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px 45px; }
.booklist a { display: block; height: 38px; line-height: 38px; text-align: center; background: #e3e3e3; color: #333; border-radius: 3px; }
@media (max-width: 768px) {
    .pagerow, .numsec5 { border-width: 2px; margin-bottom: 12px; }
    .pagerow .story { height: auto; line-height: 1.5; padding: 8px; }
    .listline8 { display: grid; grid-template-columns: 96px 1fr; gap: 10px; padding: 10px; align-items: start; }
    .infolist { width: 96px; min-height: 126px; padding: 4px; background: rgba(255,255,255,.45); }
    .infolist img { width: 100%; height: 118px; object-fit: contain; object-position: center; }
    .cate { min-width: 0; }
    .cate h1 { font-size: 18px; line-height: 28px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .bar9 { display: block; border-bottom: 0; padding-bottom: 0; margin-bottom: 6px; }
    .bar9 p { height: 26px; line-height: 26px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .wrapft { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; grid-column: 1 / -1; margin: 2px 0 8px; }
    .wenrow { 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; }
    .wenrow:hover { color: #fff; text-decoration: none; opacity: .92; }
    .wenrow.authorline5 { background: #f0305a; }
    .wenrow.textcell5 { background: #f1a51e; }
    .wenrow.descsec { background: #5b8cc3; }
    .metalist { grid-column: 1 / -1; max-height: 118px; overflow: hidden; line-height: 1.85; color: #444; }
    .metalist.authorwrap { max-height: none; }
    .imgmeta { 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; }
    .numsec5 .foot4 { grid-template-columns: 1fr; padding: 0 8px; }
    .numsec5 .foot4 li { height: 36px; line-height: 36px; padding-right: 0; }
    .numunit5 { grid-template-columns: 1fr 1fr; gap: 8px; padding: 10px 8px; }
    .numunit5 select { grid-column: 1 / -1; order: -1; }
    .booklist { grid-template-columns: 1fr; gap: 8px; }
}

.area 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; }
.area a:hover { background: #4eadd0; color: #fff; text-decoration: none; }
@media (max-width: 768px) {
    .homearea { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
    .homearea a, .homearea span { width: 100%; }
    .area a { width: 48px; height: 32px; line-height: 32px; font-size: 13px; }
}

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

@media (max-width: 768px) {
    html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
    .volitem, .readinfo3, .homebar, .unit, .tag, .pagerow, .numsec5 { max-width: 100%; overflow-x: hidden; }
    .box9 { width: 100%; max-width: 100%; }
    .timebox { min-width: 0; }
    .list { flex: 0 0 68px; width: 68px; }
    .namemeta2 { max-width: 100%; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; }
    .tag { padding-left: 10px; padding-right: 10px; }
    .story { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .pagecell2 h1 { max-width: 100%; overflow-wrap: anywhere; word-break: break-word; }
    .pagecell2 p { white-space: normal; overflow-wrap: anywhere; }
    .siteinner { max-width: 100%; overflow-wrap: break-word; word-break: break-word; }
    .siteinner p { max-width: 100%; overflow-wrap: break-word; word-break: break-word; }
    .area { right: 8px; }
}

.catline7 { 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; }
.catline7:hover { color: #fff; background: rgba(255,255,255,.16); text-decoration: none; }
@media (max-width: 768px) {
    .unit { position: relative; }
    .catline7 { 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; }
    .catline7:hover { color: #0871bd; background: rgba(255,255,255,.8); }
}

.rowlist7 {
    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;
}
.rowlist7.descsec { border-top: 1px dashed #d8cfbd; border-bottom: 0; margin-top: 8px; }
.rowlist7 span { color: #287dc2; }
.rowlist7 label { display: flex; align-items: center; gap: 4px; white-space: nowrap; }
.rowlist7 select { height: 28px; border: 1px solid #83bfe0; background: #fff; }
.rowlist7 button { height: 28px; border: 1px solid #1e8bd1; background: #fff; color: #006eb8; border-radius: 3px; cursor: pointer; }
.rowlist7 button.chabd { background: #d8effc; font-weight: 700; }
@media (min-width: 1024px) {
    .tag { position: relative; }
    .tag > .story { padding-right: 390px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .tag > .rowlist7:not(.descsec) {
        position: absolute;
        top: 5px;
        right: 24px;
        z-index: 2;
        width: auto;
        padding: 0;
        background: transparent;
        border: 0;
    }
    .tag > .rowlist7.descsec { display: none; }
}
.bookimg8 { margin: 18px 0; padding: 18px 14px; background: #eee; }
.bookimg8 h2 { text-align: center; color: #777; font-size: 16px; font-weight: 400; margin-bottom: 14px; }
.cardwrap { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px 36px; }
.cardwrap 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.readpanel4 .bookimg8 { background: #2a2a2a; }
body.readpanel4 .cardwrap a { background: #333; color: #bbb; }
@media (max-width: 768px) {
    .rowlist7 { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; padding: 8px 0; border-bottom: 1px dashed #d8cfbd; }
    .rowlist7.descsec { border-top: 1px dashed #d8cfbd; border-bottom: 0; margin-top: 8px; }
    .rowlist7 button,
    .rowlist7 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; }
    .rowlist7 button { cursor: pointer; }
    .rowlist7 a:hover { text-decoration: none; }
    body.readpanel4 .rowlist7 button,
    body.readpanel4 .rowlist7 a { background: #333; border-color: #555; color: #9eb8e8; }
    .bookimg8 { margin: 12px 0; padding: 12px 8px; }
    .cardwrap { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .cardwrap a { height: 32px; line-height: 32px; font-size: 13px; }
}

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

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

body.readpanel4 .menu9 a { color: #b8d7ef; text-shadow: 1px 1px 0 #1a3c55; }
body.readpanel4 .tag { background: #242424; }
body.readpanel4 .pagecell2 h1 { color: #ddd; }
body.readpanel4 .pagecell2 p,
body.readpanel4 .story { color: #aaa; }
body.readpanel4 .siteinner { color: #d2d2d2; }
body.readpanel4 .siteinner p { color: #d2d2d2; }
body.readpanel4.catimg .tag,
body.readpanel4.blockmod .tag,
body.readpanel4.pic6 .tag { background: #242424; }
@media (max-width: 768px) {
    .rowlist7 { grid-template-columns: auto 28px 28px 28px 1fr 42px; }
    body.readpanel4 .rowlist7 { background: #2b2b2b; border-color: #555; }
}

:root { --reader-bg-custom: #E9FAFF; }
.tag { background: var(--reader-bg-custom, #f6f1e7); }
body:not(.readpanel4) .tag { background: var(--reader-bg-custom, #E9FAFF); }
body:not(.readpanel4) .siteinner { color: #333; }

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

@media (max-width: 768px) {
    .tag > .story,
    .tag > .pagecell2 { display: none; }
    .tag { padding-top: 0; }
}

/* 关灯只作用于章节正文，头部、搜索、工具栏和翻页保持原样。 */
body.readpanel4 { background: #e6f8fb; color: #555; }
body.readpanel4 a { color: #4d6da8; }
body.readpanel4 .covermod { background: #d9eef3; border-color: #b8dce7; color: #6d8f9e; }
body.readpanel4 .homebar,
body.readpanel4 .textmain { background: #e6f8fb; border-color: #72c4e8; color: #555; }
body.readpanel4 .mainlink,
body.readpanel4 .namemeta2 { background: #79c2e3; }
body.readpanel4 .mainlink a,
body.readpanel4 .namemeta2 a { color: #fff; }
body.readpanel4 .timebox,
body.readpanel4 .home input,
body.readpanel4 .itemmod select { background: #fff; color: #333; border-color: #9bc7df; }
body.readpanel4 .tag,
body.readpanel4.catimg .tag,
body.readpanel4.blockmod .tag,
body.readpanel4.pic6 .tag { background: #2f3437; border-color: #444; }
body.readpanel4 .pagecell2 h1 { color: #ddd; }
body.readpanel4 .pagecell2 p,
body.readpanel4 .story { color: #aaa; }
body.readpanel4 .homearea a,
body.readpanel4 .homearea span { background: #363b3f; border-color: #555; color: #c8c8c8; }
body.readpanel4 .rowlist7 { background: #2f3437; border-color: #555; }
body.readpanel4 .rowlist7 span,
body.readpanel4 .rowlist7 label { color: #c8c8c8; }
body.readpanel4 .rowlist7 select,
body.readpanel4 .rowlist7 button { background: #363b3f; border-color: #6b747b; color: #c8d7e8; }
body.readpanel4 .siteinner { background: transparent; color: #aaa; }
body.readpanel4 .text { border-color: #555; color: #bbb; }
body.readpanel4 .siteinner p { color: #aaa; }
body.readpanel4 .menu9 a { color: #0871bd; text-shadow: 2px 2px 0 #c3e3f1; }
body.readpanel4 .catline7 { color: #0871bd; border-color: #79c2e3; background: rgba(255,255,255,.55); }
body.readpanel4 .catline7:hover { color: #0871bd; background: rgba(255,255,255,.8); }
body.readpanel4 .bookimg8 { background: #eee; }
body.readpanel4 .bookimg8 h2 { color: #777; }
body.readpanel4 .cardwrap a { background: #e3e3e3; color: #333; }
.tagitem { text-align: center; padding: 54px 20px 62px; border: 3px solid #86c9e8; background: #fffdf6; }
.tagitem h1 { margin-bottom: 12px; color: #287dc2; font-size: 30px; font-weight: 700; }
.tagitem p { margin: 8px 0; color: #555; }
.barcon { display: inline-block; min-width: 110px; height: 34px; margin-top: 12px; line-height: 34px; background: #4eadd0; color: #fff; border-radius: 3px; }
.barcon:hover { color: #fff; text-decoration: none; background: #287dc2; }
@media (max-width: 768px) {
    body.readpanel4 .homebar { background: #dff5fb; }
    .tagitem { padding: 42px 12px 48px; border-width: 2px; }
    .tagitem h1 { font-size: 24px; }
}

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

/* Home update/new panels alignment fix */
.rankimg .img,
.rankimg .headmeta { align-self: start; }
.rankimg .cont,
.rankimg .maincol { padding: 8px 10px; font-size: 13px; }
.rankimg .cont li,
.rankimg .maincol li { height: 31px; line-height: 31px; border-bottom: 1px solid #d8e2e4; }
.rankimg .cont li { grid-template-columns: 92px 188px minmax(0, 1fr) 78px 42px; gap: 7px; }
.rankimg .maincol li { grid-template-columns: 82px minmax(0, 1fr) 62px; gap: 7px; }
.rankimg .cont .blocktext2,
.rankimg .cont .panelcell,
.rankimg .cont .sort,
.rankimg .cont .authors,
.rankimg .cont .mainmodunit,
.rankimg .maincol span,
.rankimg .maincol a,
.rankimg .maincol em { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
@media (max-width: 768px) {
    .rankimg .cont,
    .rankimg .maincol { padding: 4px 8px; font-size: 14px; }
    .rankimg .cont li,
    .rankimg .maincol li { height: 34px; line-height: 34px; }
    .rankimg .cont li { grid-template-columns: 72px minmax(0, 1fr) minmax(0, 1fr); gap: 6px; }
    .rankimg .maincol li { grid-template-columns: minmax(0, 1fr) 88px; gap: 6px; }
}

/* rank-static-layout */
.pagetext.maincon5 {
    display: block !important;
    border: 2px solid #86c7e7;
    background: #fffdf6;
    padding: 10px 12px;
    margin: 12px auto 0;
    box-sizing: border-box;
}
.pagetext.maincon5 .rowwrap {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 18px;
}
.pagetext.maincon5 .areaitem {
    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;
}
.pagetext.maincon5 .readcell4,
.pagetext.maincon5 .readcell4 img {
    display: block;
    width: 116px;
    height: 154px;
}
.pagetext.maincon5 .readcell4 img {
    object-fit: cover;
    border: 1px solid #b7cbd4;
    background: #f4f4f4;
    box-sizing: border-box;
}
.pagetext.maincon5 .cellinfo {
    min-width: 0;
    overflow: hidden;
}
.pagetext.maincon5 .cellinfo 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;
}
.pagetext.maincon5 .cellinfo h2 a {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.pagetext.maincon5 .picsec {
    margin-left: auto;
    max-width: 66px;
    color: #aaa;
    font-weight: 400;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.pagetext.maincon5 .read {
    margin: 0;
    color: #333;
    font-size: 13px;
    line-height: 24px;
    text-indent: 2em;
    max-height: 120px;
    overflow: hidden;
}
.pagetext.maincon5 .blocktext {
    grid-column: 1 / -1;
    margin: 0;
    padding: 12px;
    color: #555;
}
@media (max-width: 720px) {
    .pagetext.maincon5 {
        padding: 8px;
    }
    .pagetext.maincon5 .rowwrap {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .pagetext.maincon5 .areaitem {
        min-height: 108px;
        grid-template-columns: 78px minmax(0, 1fr);
        gap: 8px;
        padding: 8px 0;
    }
    .pagetext.maincon5 .readcell4,
    .pagetext.maincon5 .readcell4 img {
        width: 76px;
        height: 100px;
    }
    .pagetext.maincon5 .cellinfo h2 {
        font-size: 14px;
        line-height: 20px;
    }
    .pagetext.maincon5 .read {
        font-size: 13px;
        line-height: 20px;
        max-height: 60px;
        text-indent: 0;
    }
}
/* /rank-static-layout */

/* static rank page, bqg style */
.pagetext.bdarea {
  display: block;
  border: 2px solid #8ed1ef;
  background: #fffdf6;
  padding: 12px;
}
.bdarea .boxbar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  margin: 0 0 10px;
  min-height: 28px;
}
.bdarea .boxbar h2 {
  margin: 0;
  font-size: 22px;
  line-height: 28px;
  color: #444;
  font-weight: 700;
}
.bdarea .boxbar strong {
  grid-column: 2 / 3;
  text-align: center;
  font-size: 18px;
  line-height: 28px;
  color: #444;
}
.bdarea .novelbox {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 16px;
  row-gap: 12px;
}
.bdarea .imgbar {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 10px;
  min-height: 156px;
  overflow: hidden;
}
.bdarea .listmeta img {
  width: 110px;
  height: 148px;
  object-fit: cover;
  border: 1px solid #b7d2dd;
  background: #fff;
}
.bdarea .collink {
  min-width: 0;
}
.bdarea .imgbar 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;
}
.bdarea .imgbar h3 a {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bdarea .imgbar h3 span,
.bdarea .imgbar h3 em {
  color: #999;
  font-weight: 400;
  font-style: normal;
  white-space: nowrap;
}
.bdarea .headft9 {
  margin: 4px 0;
  font-size: 13px;
  line-height: 22px;
  text-align: center;
}
.bdarea .headft9 a {
  display: inline;
}
.bdarea .read {
  margin: 6px 0 0;
  color: #333;
  font-size: 13px;
  line-height: 23px;
  max-height: 92px;
  overflow: hidden;
}
@media (max-width: 720px) {
  .pagetext.bdarea {
    padding: 8px;
  }
  .bdarea .boxbar {
    display: flex;
    justify-content: space-between;
  }
  .bdarea .boxbar h2 {
    font-size: 20px;
  }
  .bdarea .boxbar strong {
    font-size: 16px;
  }
  .bdarea .novelbox {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  .bdarea .imgbar {
    grid-template-columns: 86px minmax(0, 1fr);
    min-height: 116px;
  }
  .bdarea .listmeta img {
    width: 86px;
    height: 116px;
  }
  .bdarea .read {
    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; }
.volitem, .panelgrid, .unit, .secbox { width: 980px; max-width: 980px; margin: 0 auto; }
.homebar { background: #e6f8fb; }
.unit { height: 86px; display: flex; align-items: center; gap: 28px; }
.menu9 { width: 180px; font-size: 34px; line-height: 1; font-family: Georgia, "Microsoft YaHei", serif; font-weight: 700; }
.menu9 a { color: #0871bd; text-shadow: 2px 3px 3px rgba(0, 90, 150, .28); }
.menu9 a:hover { text-decoration: none; color: #0871bd; }
.box9 { margin-left: auto; flex: 0 0 470px; display: flex; height: 38px; border: 1px solid #9bd5ee; background: #fff; }
.timebox { flex: 1; height: 36px; padding: 0 12px; border: 0; font-size: 14px; outline: 0; }
.list { width: 78px; height: 36px; border: 0; background: #ddd; color: #222; cursor: pointer; }
.mainlink { width: 980px; max-width: 980px; height: 42px; margin: 0 auto; background: #74c0df; display: block; overflow: hidden; }
.secbox { display: flex; height: 42px; width: 980px; }
.mainlink a { display: block; color: #fff; font-weight: 700; line-height: 42px; padding: 0 12px; white-space: nowrap; }
.mainlink a:hover, .mainlink a.chabd { background: #57acd2; color: #fff; text-decoration: none; }
.readinfo3 { padding: 12px 0 20px; }

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

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

.datebd { display: grid; grid-template-columns: 1fr 300px; gap: 12px; margin-bottom: 12px; }
.cathd, .site9, .shucell8 { border: 3px solid #9bd5ee; background: #eefafa; }
.cathd h2, .site9 h2 { height: 36px; line-height: 36px; padding: 0 12px; background: #9bd5ee; font-size: 16px; color: #333; }
.tag9 li, .sortunit li, .conttext4 li { display: grid; align-items: center; min-height: 30px; line-height: 30px; border-bottom: 1px solid #d1e3e8; overflow: hidden; }
.tag9 li { grid-template-columns: 88px minmax(120px,1.15fr) minmax(180px,1.45fr) 90px 50px; column-gap: 8px; padding: 0 10px; }
.sortunit li { grid-template-columns: 76px minmax(0, 1fr) 76px; column-gap: 0; padding: 0 10px; }
.sortunit li.timecover { grid-template-columns: 76px minmax(0, 1fr); }
.conttext4 li { grid-template-columns: 90px minmax(220px,1fr) minmax(240px,1.2fr) 120px 78px; column-gap: 8px; padding: 0 12px; }
.tag9 a, .sortunit a, .conttext4 a, .cellcol, .storyline2, .imgitem2, .home6, .sortunit em { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.cellcol { color: #555; }
.storyline2, .imgitem2, .home6, .sortunit em { color: #777; font-style: normal; text-align: right; }
.shucell8 { padding-bottom: 8px; }
.shucell8 h2 { height: 42px; line-height: 42px; padding: 0 12px; background: #fff; border-bottom: 1px solid #ddd; color: #0871bd; font-size: 18px; }
.navlink { display: grid; grid-template-columns: 160px minmax(160px, 1fr) 160px; gap: 12px; padding: 12px 10px 10px; background: #eefafa; }
.navlink button, .navlink select { width: 100%; height: 36px; border-radius: 2px; font: inherit; }
.navlink button { border: 0; background: #4badd3; color: #fff; cursor: pointer; }
.navlink button:disabled { opacity: .55; cursor: default; }
.navlink select { border: 1px solid #b9d7e3; background: #fff; padding: 0 10px; }
.card { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) minmax(0, 1fr); gap: 5px; width: 100%; padding: 10px 6px; box-sizing: border-box; }
.card button, .card select { min-width: 0; padding-left: 3px; padding-right: 3px; font-size: 13px; }
.cardname > [hidden] { display: none !important; }
.paneltext { margin: 0; padding: 28px 20px; background: #fff; border: 1px solid #ddd; }
.paneltext h2 { margin: 0 0 8px; font-size: 22px; color: #555; }
.paneltext p, .read6 { color: #555; }

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

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

@media (max-width: 1023px) {
  .volitem, .panelgrid, .unit, .mainlink, .secbox { width: auto; max-width: none; }
  .covermod { display: block; }
  .panelgrid { padding: 0 10px; justify-content: center; }
  .homebar { padding: 10px; }
  .unit { height: auto; display: block; }
  .menu9 { width: auto; margin-bottom: 8px; font-size: 28px; }
  .box9 { width: 100%; max-width: none; margin: 0; flex-basis: auto; }
  .mainlink { margin: 0 10px; height: 38px; overflow-x: auto; }
  .secbox { display: flex; height: 38px; min-width: max-content; }
  .mainlink a { line-height: 38px; padding: 0 12px; }
  .readinfo3 { padding: 8px 10px 16px; }
  .linkbar8 { display: block; padding: 8px; }
  .linkbar8 .tops { grid-template-columns: 86px 1fr; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #ddd; }
  .linkbar8 .blockbar, .linkbar8 .blockbar img { width: 86px; }
  .linkbar8 .blockbar img { height: 116px; }
  .ranklink { display: block; }
  .coverwrap { min-height: 0; border-right: 0; }
  .datebd { display: flex; flex-direction: column; }
  .site9 { order: 1; }
  .cathd { order: 2; }
  .tag9 li { grid-template-columns: 1fr 1fr; gap: 0 10px; min-height: 28px; line-height: 28px; }
  .tag9 .cellcol, .tag9 .storyline2, .tag9 .home6 { display: none; }
  .sortunit li { grid-template-columns: 1fr 72px; min-height: 28px; line-height: 28px; }
  .sortunit li span { display: none; }
  .conttext4 li { grid-template-columns: 1fr 72px; min-height: 30px; line-height: 30px; }
  .conttext4 .cellcol, .conttext4 .blockline { display: none; }
  .conttext4 .storyline2, .conttext4 .imgitem2 { text-align: right; }
  .shucell8 h2 { height: 36px; line-height: 36px; font-size: 16px; }
  .navlink { grid-template-columns: 1fr 1.25fr 1fr; gap: 8px; padding: 10px 8px; }
  .card { grid-template-columns: 1fr 1.25fr 1fr; }
  .topitem4 { display: block; }
  .listhd3 { grid-template-columns: 86px 1fr; min-height: 116px; padding: 8px 0; border-bottom: 1px solid #ddd; }
  .readcell4 img { width: 86px; height: 116px; }
}

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

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

  .topname .tops {
    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;
  }

  .topname .tops:last-child {
    border-bottom: 0;
  }

  .topname .blockbar,
  .topname .blockbar img {
    width: 82px;
  }

  .topname .blockbar img {
    height: 110px;
    object-fit: cover;
  }

  .topname .desccon6 {
    min-width: 0;
  }

  .topname .desccon6 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;
  }

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

  .topname .desccon6 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;
  }

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

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

  .numbd .cathd,
  .numbd .site9 {
    width: 100%;
    margin: 0 0 10px;
    border: 2px solid #8fd1ed;
    box-sizing: border-box;
  }

  .numbd .cathd h2,
  .numbd .site9 h2 {
    padding: 8px 10px;
    font-size: 14px;
    line-height: 20px;
  }

  .numbd .tag9 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;
  }

  .numbd .tag9 .cellcol,
  .numbd .tag9 .homemod3,
  .numbd .tag9 .blockline {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 13px;
  }

  .numbd .tag9 .cellcol {
    display: none;
  }

  .numbd .tag9 .storyline2,
  .numbd .tag9 .home6 {
    display: none;
  }

  .numbd .sortunit 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;
  }

  .numbd .sortunit li.timecover {
    grid-template-columns: minmax(0, 1fr);
  }

  .numbd .sortunit li > span {
    display: none;
  }

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

/* desktop bqg scale restore */
@media (min-width: 1024px) {
  .volitem,
  .panelgrid,
  .unit,
  .secbox {
    width: 1024px;
    max-width: 1024px;
  }

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

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

  .linkbar8 .blockbar,
  .linkbar8 .blockbar img {
    width: 120px;
  }

  .linkbar8 .blockbar img {
    height: 160px;
  }

  .linkbar8 .desccon6 h3,
  .ranklink .desccon6 h3 {
    font-size: 15px;
    line-height: 23px;
  }

  .linkbar8 .desccon6 p,
  .ranklink .desccon6 p {
    font-size: 14px;
    line-height: 24px;
  }

  .coverwrap {
    padding: 10px 12px;
  }

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

  .coverwrap .blockbar,
  .coverwrap .blockbar img {
    width: 92px;
  }

  .coverwrap .blockbar img {
    height: 124px;
  }

  .hotimg7 li,
  .sortunit li,
  .tag9 li {
    font-size: 14px;
    min-height: 24px;
    line-height: 24px;
  }

  .cathd h2,
  .site9 h2,
  .coverwrap h2 {
    font-size: 16px;
  }
}

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

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

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

  .authorline {
    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;
  }

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

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

  .authorline .linkbar8 .tops:nth-child(n+5) {
    display: none;
  }

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

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

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

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

  .hdunit 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;
  }

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

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

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

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

  .authorline .linkbar8 {
    display: block;
    border: 0;
    margin: 0;
    padding: 0;
    background: transparent;
  }

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

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

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

  .hdunit 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;
  }

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

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

/* 2026-07-12: force desktop nav/header width to 1024px */
@media (min-width: 1024px) {
  .panelgrid,
  .unit,
  .secbox,
  .volitem {
    width: 1024px !important;
    max-width: 1024px !important;
    box-sizing: border-box;
  }

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

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

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

.mainlink a:hover,
.namemeta2 a:hover,
.secbox 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) {
  .panelgrid,
  .unit,
  .secbox,
  .volitem,
  .mainlink,
  .namemeta2 {
    width: 1024px !important;
    max-width: 1024px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .mainlink,
  .namemeta2 {
    overflow: hidden !important;
  }
}

@media (max-width: 1023px) {
  .panelgrid,
  .unit,
  .secbox,
  .volitem,
  .mainlink,
  .namemeta2 {
    width: auto !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }

  .volitem,
  .unit,
  .panelgrid {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }

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

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

/* nav-hover-disabled: 导航条不保留 hover / focus / active 印记 */
.homebar nav a:hover,
.homebar nav a:focus,
.homebar nav a.chabd,
.homebar nav .chabd,
.unit nav a:hover,
.unit nav a:focus,
.unit nav a.chabd,
.unit nav .chabd,
.mainlink a:hover,
.mainlink a:focus,
.mainlink a.chabd,
.mainlink .chabd,
.namemeta2 a:hover,
.namemeta2 a:focus,
.namemeta2 a.chabd,
.namemeta2 .chabd {
    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) {
    .panelgrid,
    .homebar .unit,
    .unit,
    .volitem,
    .readinfo3,
    .hotinner,
    .newbd,
    .titlemeta,
    .mainlink,
    .namemeta2 {
        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;
    }

    .covermod,
    .homebar,
    .readinfo3,
    .textmain,
    .panelgrid,
    .homebar .unit,
    .unit,
    .volitem,
    .titlemeta,
    .hotinner,
    .newbd,
    .picbd,
    .mainlink,
    .namemeta2 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    .panelgrid,
    .homebar .unit,
    .unit,
    .volitem,
    .hotinner,
    .newbd,
    .readinfo3 {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

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

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

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

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

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

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

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

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

    .pagetext,
    .updateblock,
    .rowwrap,
    .itemhd,
    .newlist,
    .shucell8 .cardbox,
    .conttext4,
    .cardbox,
    .covergrid,
    .metablock,
    .shuunit7,
    .pagerow {
        display: block !important;
        grid-template-columns: none !important;
        columns: auto !important;
        width: 100% !important;
    }

    .sortbd,
    .blockcol,
    .cardbox .contbd5,
    .conttext4 .contbd5,
    .covergrid .contbd5,
    .metablock .contbd5,
    .shuunit7 .contbd5,
    .pagelink,
    .grid3 {
        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;
    }

    .sortbd img,
    .blockcol img,
    .readcell4 img,
    .cardbox .contbd5 img,
    .conttext4 .contbd5 img,
    .covergrid .contbd5 img,
    .metablock .contbd5 img,
    .shuunit7 .contbd5 img,
    .pagelink img,
    .grid3 img {
        width: 88px !important;
        height: 118px !important;
        object-fit: cover !important;
    }

    .cellinfo,
    .head,
    .desccon6,
    .catpanel,
    .grid3 dl,
    .grid3 .descs {
        min-width: 0 !important;
    }

    .linkwrap,
    .toolmod5,
    .row,
    .itemcover {
        display: block !important;
        grid-template-columns: none !important;
        width: 100% !important;
    }

    .linkwrap > *,
    .toolmod5 > *,
    .row > *,
    .itemcover > * {
        width: 100% !important;
        margin-bottom: 10px !important;
        box-sizing: border-box !important;
    }
}

/* 导航条不保留 hover/focus/active 视觉印记 */
.mainlink a:hover,
.mainlink a:focus,
.mainlink a:active,
.mainlink a.chabd,
.mainlink .chabd,
.namemeta2 a:hover,
.namemeta2 a:focus,
.namemeta2 a:active,
.namemeta2 a.chabd,
.namemeta2 .chabd,
.homebar nav a:hover,
.homebar nav a:focus,
.homebar nav a:active,
.homebar nav a.chabd,
.unit nav a:hover,
.unit nav a:focus,
.unit nav a:active,
.unit nav a.chabd {
    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) {
  .authorline .desccon6 p,
  .topname .desccon6 p {
    height: 130px;
    line-height: 26px;
  }
}

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

  .unit {
    height: 68px;
  }

  .mainlink,
  .secbox {
    height: 38px;
  }

  .mainlink a,
  .secbox a {
    line-height: 38px;
  }

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

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

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

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

  .homebar .unit,
  .unit {
    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;
  }

  .homebar .menu9,
  .homebar 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;
  }

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

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

  .link3 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;
  }

  .cat {
    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;
  }

  .cat 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;
  }

  .homebar .box9,
  .unit .box9 {
    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;
  }

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

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

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

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

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

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

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

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

  .listline8 .cate {
    display: contents !important;
  }

  .listline8 .cate 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;
  }

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

  .listline8 .bar9 p {
    height: 25px !important;
    line-height: 25px !important;
  }

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

  .listline8 .metalist {
    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;
  }

  .listline8 .metalist.authorwrap {
    max-height: none !important;
  }

  .listline8 .imgmeta {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
  }

  .numsec5 .foot4 {
    grid-template-columns: 1fr !important;
  }

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

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

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

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

  .readinfo3 .volitem > .shu {
    margin: 0 0 14px !important;
    padding: 14px 10px 16px !important;
    background: #fff !important;
  }

  .readinfo3 .volitem > .shu .booklist {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 14px !important;
  }

  .readinfo3 .volitem > .shu .booklist 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) {
  .numbd .tag9 li {
    height: 35px;
    min-height: 35px;
    line-height: 35px;
  }

  .numbd .sortunit li,
  .numbd .sortunit li.timecover {
    height: 30px;
    min-height: 30px;
    line-height: 30px;
  }

  /* 数据不足49条时，左右条数相同，统一使用35px行高。 */
  .numbd.listpanel .sortunit li,
  .numbd.listpanel .sortunit li.timecover {
    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. */
.numbd { align-items: stretch; }
.numbd .cathd,
.numbd .site9 { min-width: 0; }
.numbd .site9 { display: flex; flex-direction: column; }
.numbd .site9 .sortunit { flex: 0 0 auto; }
.numbd .homerow {
  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;
}
.numbd .homerow > a,
.numbd .homerow > span,
.numbd .homerow > select {
  width: 100%;
  height: 36px;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
}
.numbd .homerow > a,
.numbd .homerow > span {
  display: flex;
  align-items: center;
  justify-content: center;
}
.numbd .homerow > select {
  border: 1px solid #b9d7e3;
  background: #fff;
  padding: 0 10px;
}
.numbd .grid9 {
  margin: auto 0 0;
  padding: 12px 10px 10px;
  border-top: 1px solid #cbdde3;
  box-sizing: border-box;
}
.numbd .grid9 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) {
  .numbd .homerow {
    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) {
  .readinfo3.blockhd9,
  .readinfo3.cell2,
  .readinfo3.picimg {
    width: 100% !important;
    max-width: none !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    box-sizing: border-box !important;
  }

  .readinfo3.blockhd9 > .volitem,
  .readinfo3.cell2 > .volitem,
  .readinfo3.picimg > .volitem {
    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;
  }

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

  .readinfo3.imglist > .volitem {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  .readinfo3.imglist .tag {
    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;
  }

  .readinfo3.imglist .siteinner {
    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;
  }

  .readinfo3.imglist .rowlist7,
  .readinfo3.imglist .homearea {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
}
