/* home.css */
/* Homepage only: reference proportions and compact typography. */
body.home-clone{background:#222!important;color:#ddd;--bh-accent:#27bf99}
body.home-clone #app{width:950px;max-width:100%;padding:0 0 28px;margin:0 auto}body.home-clone .header-inner{max-width:950px}body.home-clone header{background:#121414;border-color:#121414}body.home-clone header:after{background:#26bf99}body.home-clone .header-inner nav a{font-size:14px;font-weight:600}body.home-clone .header-inner nav a.active{box-shadow:none;background:transparent;color:#fff}
.bh-home{padding-top:13px;color:#ddd;font:12px/1.6 Arial,"Microsoft YaHei",sans-serif}.bh-home *{box-sizing:border-box}.bh-home h2,.bh-home h3,.bh-home h4,.bh-home p,.bh-home ol{margin:0}.bh-home a{color:inherit;text-decoration:none}.bh-home button{font-family:inherit;cursor:pointer}.bh-home a:hover{color:var(--bh-accent)}.bh-home :is(a,button):focus-visible{outline:2px solid var(--bh-accent);outline-offset:3px}
.bh-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,458px) minmax(0,1fr);gap:14px;align-items:stretch}.bh-types,.bh-guesses{min-width:0;border:1px solid #333;border-radius:5px;background:#222;padding:17px 13px}.bh-home .bh-types h2,.bh-home .bh-guesses h2{font-size:15px;font-weight:700;line-height:20px;color:#ddd}.bh-types>a{display:block;font-size:14px;line-height:22px;padding:5px 13px}.bh-types h2{padding:0 12px;margin-bottom:8px}
.home-clone .bh-carousel{width:100%;height:auto!important;aspect-ratio:1;min-height:0;position:relative;border:0;border-radius:5px;background:#151515;overflow:hidden;isolation:isolate}.bh-slides{position:absolute;inset:0}.bh-carousel .bh-slide{position:absolute;inset:0;background:#151515;opacity:0;visibility:hidden;transition:opacity .3s ease;pointer-events:none;transform:none}.bh-carousel .bh-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}.bh-slide-link{position:absolute;inset:0;display:block}.bh-hero-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%}.bh-shade{position:absolute;inset:0;background:linear-gradient(0deg,#111 0%,#111f 14%,#111b 21%,#1110 43%);pointer-events:none}.bh-slide-copy{position:absolute;bottom:24px;left:12.8px;right:12.8px;min-width:0}.bh-home .bh-slide-copy h2{font-size:17px;font-weight:700;line-height:26px;color:#eee;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bh-slide-meta{display:flex;gap:12px;color:#32c6a3;font-size:11px;line-height:19px}.bh-slide-meta>span:first-child{color:#aaa;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bh-slide-copy p{color:#999;font-size:12px;line-height:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bh-carousel-bottom{position:absolute;bottom:0;left:0;right:0;height:23px;display:flex;align-items:center;justify-content:center;z-index:3}.bh-dots{position:static!important;display:flex!important;gap:6px;width:auto!important;margin:0!important;justify-content:center;align-items:center;padding:0!important}.bh-dots .carousel-dot{border:0;background:transparent;width:14px;height:22px;padding:0;display:flex;align-items:center;justify-content:center}.bh-dots .carousel-dot>span{display:block;width:14px;height:4px;border-radius:4px;background:#444}.bh-dots .carousel-dot.is-active>span{background:#27bf99}.bh-carousel-tools{position:absolute;right:8px;bottom:4px;display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .2s;background:#1b2421e8;border-radius:4px;padding:0 3px}.bh-carousel:hover .bh-carousel-tools,.bh-carousel:focus-within .bh-carousel-tools{opacity:1}.bh-carousel-tools button{background:transparent;color:#ccc;border:0;font-size:18px;width:24px;height:22px;line-height:22px;padding:0}.bh-carousel-tools .carousel-count{display:none}
.bh-guesses-head{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px}.bh-guesses-head button{font-size:10px;color:#999;background:none;border:0;padding:2px 0;white-space:nowrap}.bh-guesses-head button:hover{color:#27bf99}.bh-guesses #feature-rows>a{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:6px 0;min-height:31px}.bh-guesses strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;color:#ddd}.bh-guesses small{font-size:11px;color:#999;flex:0 0 auto;max-width:56px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.bh-section{padding:0 12.8px;margin-top:25px;min-width:0}.bh-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;line-height:20px}.bh-home .bh-section-head h2{font-size:15px;line-height:20px;font-weight:700;color:#ddd}.bh-section-head>a{padding:0 4px;font-size:22px;font-weight:400;line-height:20px;color:#ccc}.bh-home .bh-notice{margin-top:9px}.bh-notice .bh-section-head{margin-bottom:9px}.bh-notice-bar{background:#333;border-radius:5px;padding:12px 14px;min-height:44px;display:flex;gap:9px;align-items:center;font-size:12px;color:#ccc}.bh-notice-bar>span{color:#27bf99}.bh-notice-bar>p{flex:1;min-width:0}.bh-notice-bar>a{font-size:11px;color:#aaa;white-space:nowrap}
.bh-shelf{display:flex;gap:12.8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:2px;scroll-snap-type:x proximity}.bh-shelf::-webkit-scrollbar{display:none}.bh-shelf-book{flex:0 0 125px;width:125px;min-width:0;scroll-snap-align:start}.bh-cover{display:block;position:relative;background:linear-gradient(150deg,var(--bh-cover-color),#1b2529);overflow:hidden;width:125px;height:180px;border-radius:0 5px 5px 0;color:#e7e5db;box-shadow:inset 5px 0 #ffffff1c}.bh-cover:before{content:'';position:absolute;inset:12px;border:1px solid #ffffff18}.bh-cover>img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.bh-shelf-title{display:block;font-size:14px;font-weight:400;line-height:23px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#ddd}
.bh-rankings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.bh-rank-column{min-width:0}.bh-home .bh-rank-column>h3{display:flex;justify-content:space-between;align-items:center;font-size:15px;line-height:25px;border-bottom:1px solid #383838;padding:0 0 12px}.bh-rank-column>h3>a:last-child{font-size:20px;font-weight:400}.bh-rank-column ol{list-style:none;padding:0;display:grid;gap:12.8px;margin-top:13px}.bh-rank-item{display:flex;align-items:flex-start;gap:12.8px;min-height:100px;position:relative}.bh-rank-cover{flex:0 0 69px;width:69px;height:100px}.bh-rank-copy{min-width:0;padding-top:1px}.bh-home .bh-rank-copy h4{font-size:14px;font-weight:400;line-height:22px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bh-rank-copy p{font-size:12px;line-height:22px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bh-rank-copy small{font-size:11px;line-height:22px;color:#999}.bh-rank-number{position:absolute;left:0;top:0;background:#16261fd9;color:#32c6a3;padding:0 4px;font-size:10px;line-height:17px}
.bh-genre-tabs{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none;margin-bottom:13px}.bh-genre-tabs button{flex:0 0 auto;border:0;background:transparent;color:#999;font-size:12px;line-height:23px;padding:2px 8px;border-radius:4px}.bh-genre-tabs button[aria-pressed=true]{background:#2b2b2b;color:#32c6a3}.bh-update-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12.8px}.bh-update-item{display:flex;gap:12.8px;min-width:0;min-height:180px}.bh-update-cover-link{flex:0 0 125px;align-self:flex-start}.bh-update-copy{min-width:0;padding:1px 0}.bh-home .bh-update-copy h3{font-size:14px;font-weight:400;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bh-update-meta{font-size:12px;line-height:23px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#999}.bh-tags{display:flex;gap:5px;overflow:hidden;height:30px;align-items:center}.bh-tags>a{flex:0 0 auto;font-size:11px;line-height:22px;color:#999;border:1px solid #444;border-radius:4px;padding:0 5px;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bh-update-intro{font-size:12px;line-height:20px;color:#999;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.bh-update-latest{display:block;font-size:11px;line-height:22px;color:#888!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px}.bh-more{display:block;margin-top:20px;border:1px solid #3b3b3b;border-radius:4px;padding:10px;text-align:center;font-size:12px;color:#aaa!important}
@media(min-width:761px) and (max-width:970px){body.home-clone #app{max-width:calc(100% - 24px)}.bh-stage{grid-template-columns:minmax(130px,1fr) minmax(0,2fr) minmax(150px,1fr)}.bh-types,.bh-guesses{padding:13px 10px}.bh-types>a{padding:4px 0}.bh-types h2{padding:0}.bh-guesses #feature-rows>a{min-height:0;padding:4px 0}.bh-rankings{gap:16px}}
@media(max-width:760px){body.home-clone #app{width:100%;max-width:100%;padding:0 0 25px}.bh-home{padding-top:12px}.bh-stage{display:block;padding:0 5.3px}.bh-types,.bh-guesses{display:none}.home-clone .bh-carousel{width:100%;aspect-ratio:1;height:auto!important}.bh-slide-copy{bottom:25px;left:12.8px;right:12.8px}.bh-home .bh-slide-copy h2{font-size:17px;line-height:26px}.bh-carousel-tools{display:none}.bh-section{margin-top:22px;padding:0 12.8px}.bh-home .bh-notice{margin-top:9px}.bh-notice-bar{padding:12px;min-height:44px}.bh-notice-bar>a{display:none}.bh-shelf-book{flex-basis:112px;width:112px}.bh-shelf-book>.bh-cover{width:112px;height:163px}.bh-shelf-title{font-size:14px;line-height:22px}.bh-rankings{display:flex;gap:32px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}.bh-rank-column{flex:0 0 230px;scroll-snap-align:start}.bh-genre-tabs button{padding-left:7px;padding-right:7px}.bh-update-list{grid-template-columns:minmax(0,1fr)}.bh-update-item{min-height:163px}.bh-update-cover-link{flex-basis:112px}.bh-update-cover{width:112px;height:163px}.bh-update-intro{-webkit-line-clamp:3}.bh-home .bh-section-head h2{font-size:15px}}
@media(prefers-reduced-motion:reduce){.bh-carousel .bh-slide{transition:none}}
body.home-clone #app .bh-home :is(h2,h3,h4){font-family:Arial,"Microsoft YaHei",sans-serif;letter-spacing:0;margin:0;color:#ddd}
body.home-clone #app .bh-home .bh-section-head h2,body.home-clone #app .bh-types h2,body.home-clone #app .bh-guesses h2{font-size:15px;line-height:20px;font-weight:700}
body.home-clone #app .bh-slide-copy h2{font-size:17px;line-height:26px;font-weight:700;color:#eee}
body.home-clone #app .bh-rank-column>h3{font-size:15px;line-height:25px;font-weight:700}
body.home-clone #app .bh-rank-copy h4,body.home-clone #app .bh-update-copy h3{font-size:14px;line-height:22px;font-weight:400}
.home-clone .bh-carousel{align-self:start}
@media(min-width:761px) and (max-width:970px){.bh-guesses #feature-rows>a{padding:2px 0}}
.bh-hero-image{object-position:center top}.bh-notice-bar>p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){body.home-clone .header-inner{height:51.2px;min-height:51.2px;padding:0 12.8px;gap:12px}body.home-clone .header-inner .search{height:32px}body.home-clone .header-inner .search input{padding-top:5px;padding-bottom:5px;font-size:12px}}
@media(max-width:760px){body.home-clone header{height:51.2px}body.home-clone header .header-inner{height:51.2px!important;min-height:0!important}}


/* list-contrast.css */
/* Color-only refinements: preserve established sizes, spacing and line wrapping. */
body.banshanren-theme:not(.reader-body) #app :is(.bh-home,.bl-catalog,.br-ranking,.ref-catalog){--list-title:#e5ebe7;--list-copy:#c0c9c3;--list-meta:#b0bab4;--list-dim:#a4b0a7}
body.banshanren-theme:not(.reader-body) #app :is(.bh-section-head h2,.bh-types h2,.bh-guesses h2,.bh-rank-column>h3,.bh-slide-copy h2,.bh-rank-copy h4,.bh-update-copy h3,.bl-heading h1,.bl-book-copy h2,.br-copy h2,.ed-book-copy h3,.ref-catalog>h1,.related-book h3,.read-shelf-info h2){color:var(--list-title,#e5ebe7)}
body.banshanren-theme:not(.reader-body) #app :is(.bh-shelf-title,.bh-types>a,.bh-guesses strong,.bh-update-intro,.bl-intro,.ed-book-copy>p){color:var(--list-copy,#c0c9c3)}
body.banshanren-theme:not(.reader-body) #app :is(.bh-guesses small,.bh-rank-copy p,.bh-rank-copy small,.bh-update-meta,.bl-meta,.bl-meta a,.br-copy .br-status,.br-author,.br-meta,.ed-book-copy>div,.ref-crumb,.bl-crumb,.bl-heading p,.related-book>div>span,.related-book>div>p,.read-shelf-info>span,.read-shelf-info p,.read-shelf-details){color:var(--list-meta,#b0bab4)}
body.banshanren-theme:not(.reader-body) #app :is(.bh-update-latest,.bl-updated,.bl-toolbar,.bl-toolbar label,.bl-toolbar select,.bl-filter-label,.br-filters select,.bh-guesses-head button,.ref-catalog-tools,.ed-book-copy .read-card-action){color:var(--list-dim,#a4b0a7)!important}
body.banshanren-theme:not(.reader-body) #app :is(.bh-slide-copy p,.bh-slide-meta>span:first-child,.bh-notice-bar,.bh-notice-bar>a){color:#b8c2bb}
body.banshanren-theme:not(.reader-body) #app :is(.bl-filter-row a:not(.active),.bh-genre-tabs button:not([aria-pressed=true])){color:#b3bfb7!important}
body.banshanren-theme:not(.reader-body) #app :is(.bl-filter-row a:not(.active),.bh-genre-tabs button:not([aria-pressed=true])):hover{color:#91dfb6!important;text-decoration:underline;text-underline-offset:3px}
body.banshanren-theme:not(.reader-body) #app :is(.bh-tags>a,.bl-tags>a,.ref-filters>a.tag,.detail-tags>a){background-color:#28372f;border-color:#647f6e;color:#c4e4ce!important;cursor:pointer}
body.banshanren-theme:not(.reader-body) #app :is(.bh-tags>a,.bl-tags>a,.ref-filters>a.tag,.detail-tags>a):hover{background-color:#304a3a;border-color:#84b699;color:#ebfff1!important;text-decoration:underline;text-underline-offset:3px}
body.banshanren-theme:not(.reader-body) #app :is(.bh-tags>a,.bl-tags>a,.ref-filters>a.tag,.detail-tags>a):focus-visible{outline:2px solid #a3dfbb;outline-offset:2px;background-color:#304a3a;color:#ebfff1!important}
body.banshanren-theme:not(.reader-body) #app a.ed-book-genre{color:#b5dfc4;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
body.banshanren-theme:not(.reader-body) #app .br-rail>a{color:#b5beb8!important}
body.banshanren-theme:not(.reader-body) #app .br-rail>a.active{color:#6cceaa!important}


/* cover-captions.css */
/* One caption treatment for permanent fallback covers throughout this site. */
body.banshanren-theme #app .b-cover-frame{container-type:inline-size;isolation:isolate}
body.banshanren-theme #app .b-cover-frame:before,
body.banshanren-theme #app .b-cover-frame:after{content:none}
body.banshanren-theme #app .b-cover-caption{position:absolute;z-index:1;inset:auto 0 0;display:block;margin:0;padding:clamp(15px,24cqw,40px) clamp(5px,8.8cqw,16px) clamp(6px,9.6cqw,20px);background:linear-gradient(transparent,rgba(0,0,0,.9) 55%);text-shadow:0 1px 3px #000;text-align:left;white-space:normal}
body.banshanren-theme #app .b-cover-title{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;margin:0;font-family:"Songti SC",SimSun,serif;font-size:clamp(10px,13.6cqw,26px);font-weight:600;font-style:normal;line-height:1.45;letter-spacing:0;color:#fff}
body.banshanren-theme #app .b-cover-author{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:5px 0 0;font-size:clamp(8px,8cqw,12px);font-weight:400;line-height:1.5;color:#e0e6e1}
/* Leave the caption clear of the status badge on search/tag/author cards. */
body.banshanren-theme #app .ed-cover:has(.b-cover-caption)>.ed-status{top:8px;bottom:auto;left:8px;z-index:2}
body.banshanren-theme #app .read-shelf-cover .b-cover-frame{height:95px}
@media(max-width:760px){body.banshanren-theme #app .read-shelf-cover .b-cover-frame{height:80px}}
@container (max-width:160px){body.banshanren-theme #app .b-cover-title{-webkit-line-clamp:3}}
@container (max-width:80px){
 body.banshanren-theme #app .b-cover-title{font-size:clamp(10px,16cqw,11px);-webkit-line-clamp:3}
 body.banshanren-theme #app .b-cover-author{display:none}
}

