/* browse.css */
/* Scoped to the catalog and ranking templates. */
body.b-browse{background:#222;color:#ccc;font-family:Arial,"Microsoft YaHei",sans-serif;--browse-accent:#26bf99}body.br-page{background:#333}
body.b-browse #app{width:950px;max-width:100%;padding:0 0 26px;margin:0 auto}body.b-browse .header-inner{max-width:950px}body.b-browse header{background:#121414;border-color:#121414}body.b-browse header:after{background:#26bf99}body.b-browse .header-inner nav a{font-size:14px;font-weight:600}body.b-browse .header-inner nav a.active{background:transparent;color:#fff;box-shadow:none}
.b-browse #app :is(h1,h2,h3,p,ol){margin:0}.b-browse #app a{text-decoration:none;color:inherit}.b-browse #app a:hover{color:var(--browse-accent)}.b-browse #app :is(a,button,select):focus-visible{outline:2px solid var(--browse-accent);outline-offset:3px}
.bl-crumb{display:flex;align-items:center;gap:12px;height:48px;padding:0 12.8px;font-size:12px;line-height:18px;color:#ddd}.bl-crumb>span:nth-child(2){font-size:18px;color:#999}
body.bl-page #app .bl-heading{text-align:center;padding:0 12.8px 12px}body.bl-page #app .bl-heading h1{font:400 16px/22px Arial,"Microsoft YaHei",sans-serif;color:#ddd}body.bl-page #app .bl-heading p{font-size:12px;color:#999;line-height:22px;margin-top:2px}
.bl-filters{padding:0 12.8px}.bl-filter-row{display:flex;gap:8px;align-items:flex-start;padding:5px 0}.bl-filter-label{flex:0 0 30px;padding:3px 0;color:#888;font-size:11px;line-height:21px}.bl-filter-row>div{display:flex;flex-wrap:wrap;gap:3px 5px;min-width:0}.bl-filter-row a{padding:3px 10px;min-height:27px;font-size:12px;color:#999!important;line-height:21px;border-radius:20px;white-space:nowrap}.bl-filter-row a.active{color:#10231d!important;background:#26bf99;font-weight:600}
.bl-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12.8px 10px;font-size:11px;color:#888}.bl-toolbar form{display:flex;align-items:center;gap:8px}.bl-toolbar label{font-size:11px;color:#888}.bl-toolbar select,.br-filters select{font:12px/20px Arial,"Microsoft YaHei",sans-serif;color:#aaa;background:transparent;border:0;padding:3px 2px;cursor:pointer;max-width:125px}.bl-toolbar option,.br-filters option{background:#292929;color:#ddd}.bl-toolbar button,.br-filters button{font-size:11px;line-height:20px;color:#999;background:transparent;border:1px solid #444;border-radius:3px;padding:2px 7px;cursor:pointer}
.bl-books{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12.8px;padding:0 12.8px}.bl-book{display:flex;gap:12.8px;min-width:0;min-height:175px;align-items:flex-start}.bl-cover{display:block;flex:0 0 121px;width:121px;height:175px;overflow:hidden;border-radius:0 5px 5px 0}
body.b-browse #app .bl-cover .cover{width:121px;height:175px;margin:0;border:0;border-radius:0 5px 5px 0;padding:0;transform:none;box-shadow:none}.b-browse #app .bl-cover img,.b-browse #app .br-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:none;inset:0}
.bl-book-copy{min-width:0;flex:1;overflow:hidden;padding:1px 0}.b-browse #app .bl-book-copy h2{font:400 14px/22px Arial,"Microsoft YaHei",sans-serif;color:#ddd;max-height:44px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bl-meta{font-size:12px;color:#999;line-height:24px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bl-meta a{color:#999}.bl-tags{display:flex;gap:5px;align-items:center;overflow:hidden;height:30px}.bl-tags a{flex:0 0 auto;color:#999!important;border:1px solid #444;border-radius:4px;font-size:11px;line-height:23px;padding:0 5px;white-space:nowrap;max-width:92px;overflow:hidden;text-overflow:ellipsis}.bl-intro{font-size:12px;line-height:20px;color:#999;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:5px!important}.bl-updated{display:block;font-size:10px;line-height:18px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}
.b-browse #app .bl-empty{grid-column:1/-1;padding:55px 15px;text-align:center;color:#999}.b-browse #app .bl-empty h2{font-size:16px;line-height:26px;font-weight:400}.bl-empty p{font-size:12px;line-height:26px}.bl-empty a{display:inline-block;margin-top:12px;color:#26bf99!important;font-size:12px}
.b-browse #app .ds-pagination{margin:28px 12.8px 10px;gap:7px}.b-browse #app .ds-pagination>a,.b-browse #app .ds-pagination>span{border:1px solid #3b3b3b;background:transparent;border-radius:3px;color:#999;padding:6px 9px;min-width:30px;font-size:12px}.b-browse #app .ds-pagination>a.active{background:#26bf99;color:#13261d;border-color:#26bf99}
.br-heading{justify-content:space-between;gap:8px}.br-heading>div{display:flex;gap:12px;align-items:center}.br-heading>div>span:nth-child(2){font-size:18px;color:#999}.br-filters{display:flex;align-items:center;gap:9px;min-width:0}.br-filters select{font-size:11px;max-width:105px}
.br-panel{display:flex;align-items:stretch;min-width:0}.br-rail{flex:0 0 162.8px;background:#222;min-width:0}.br-rail>a{display:flex;flex-direction:column;align-items:center;justify-content:center;height:90.9px;gap:0;color:#999!important;text-align:center;padding:5px;line-height:15px}.br-rail>a.active{background:#333;color:#26bf99!important}.br-rail small{font-size:12px;font-weight:700;line-height:13px;letter-spacing:-.5px}.br-rail span{font-size:12px;line-height:15px}
.br-scroll{flex:1;min-width:0;height:705px;overflow-y:auto;overscroll-behavior-y:contain;background:#333;padding:12.8px;scrollbar-color:#888 #e6e6e6;scrollbar-width:auto;outline-offset:-3px!important}.br-books{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12.8px;list-style:none;padding:0;align-content:start}.br-books>li{display:grid;grid-template-columns:69px minmax(10px,max-content) minmax(0,1fr);gap:12.8px;min-width:0;height:100px}.br-cover{display:block;width:69px;height:100px;overflow:hidden;border-radius:0 5px 5px 0}body.b-browse #app .br-cover .cover{width:69px;height:100px;max-width:none;margin:0;padding:0;border:0;border-radius:0 5px 5px 0;transform:none;box-shadow:none}.br-position{display:flex;align-items:center;color:#26bf99;font-size:14px;font-weight:700;line-height:20px;height:100px}.br-copy{min-width:0;overflow:hidden;padding-top:1px}.b-browse #app .br-copy h2{font:400 14px/22px Arial,"Microsoft YaHei",sans-serif;color:#eee;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:44px}.br-author{font-size:12px;line-height:25px;color:#999;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.br-meta{font-size:12px;line-height:24px;color:#999;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
@media(min-width:761px) and (max-width:970px){body.b-browse #app{max-width:calc(100% - 24px)}.br-rail{flex-basis:130px}.br-books>li{gap:9px}}
@media(max-width:760px){body.b-browse #app{width:100%;max-width:100%;padding-bottom:20px}body.b-browse header{height:51.2px}body.b-browse header .header-inner{height:51.2px!important;min-height:0!important;max-width:100%;padding:0 12.8px;gap:12px}body.b-browse .header-inner .search{height:32px}body.b-browse .header-inner .search input{font-size:12px;padding-top:5px;padding-bottom:5px}.bl-heading{padding-bottom:8px!important}.bl-heading p{font-size:11px!important}.bl-filter-row{gap:3px;padding:4px 0}.bl-filter-label{flex-basis:25px;font-size:10px}.bl-filter-row>div{gap:2px 1px}.bl-filter-row a{padding:3px 7px;font-size:12px;min-height:26px}.bl-books{grid-template-columns:minmax(0,1fr)}.bl-book-copy h2{font-size:14px}.bl-intro{-webkit-line-clamp:3}.bl-toolbar{padding-top:8px}.bl-toolbar>span{font-size:10px}.bl-toolbar label{display:none}.br-heading{gap:4px;padding-left:12.8px;padding-right:8px}.br-heading>div{gap:7px;flex-shrink:0}.br-filters{gap:5px}.br-filters select{max-width:80px;font-size:10px;padding:3px 0}.br-filters button{padding:1px 4px;font-size:10px}.br-rail{flex-basis:75.1px}.br-rail>a{height:53.8px}.br-rail small{font-size:10px}.br-rail span{font-size:11px}.br-scroll{height:min(600px,calc(100dvh - 160px));min-height:300px;padding:12.8px;scroll-padding-bottom:15px}.br-books{grid-template-columns:minmax(0,1fr)}.br-books>li{gap:12.8px}.b-browse #app .br-copy h2{font-size:14px}.br-meta,.br-author{font-size:12px}.b-browse #app .ds-pagination{gap:5px;margin-top:23px}.b-browse #app .ds-pagination>a{padding:6px 7px}}
@media(max-width:360px){.br-filters button{display:none}.br-filters select{max-width:65px}.br-books>li{gap:8px}.br-heading>div{gap:5px;font-size:11px}.br-copy h2{line-height:20px!important}.br-meta,.br-author{font-size:11px;line-height:22px}.bl-meta{font-size:11px}.bl-updated{font-size:9px}}


/* rank-rich.css */
/* Rankings share the catalog card layout and use the page's normal scrolling. */
body.br-rich{background:#222}
body.br-rich #app .rank-title{padding:0 12.8px 16px}
body.br-rich #app .rank-title h1{font-size:19px;font-weight:600;line-height:28px;color:#e5ebe7}
body.br-rich #app .rank-title p{font-size:12px;line-height:22px;color:#a4b0a7;margin-top:3px}
.rank-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0 12.8px 14px;border-bottom:1px solid #3b423d}
body.br-rich #app .rank-tabs>a{display:block;text-align:center;padding:10px 6px;border-bottom:2px solid transparent;font-size:14px;line-height:22px;color:#b0bab4}
body.br-rich #app .rank-tabs>a.active{color:#7cdbb0;border-bottom-color:#3dbb8a;font-weight:600}
body.br-rich #app .rank-tabs>a:hover{color:#a3e5be}
.rank-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12.8px 14px;min-width:0}
.rank-toolbar>span{font-size:13px;line-height:25px;color:#d0d8d2;white-space:nowrap}
.rank-toolbar small{font-size:10px;color:#9eaaa2;margin-left:7px}
.rank-filters{display:flex;align-items:center;gap:8px;min-width:0}
.rank-filters select,.rank-filters button{font-family:inherit;font-size:12px;line-height:22px;color:#bec9c1;border:1px solid #465349;border-radius:4px;background:#262e28;padding:4px 8px;cursor:pointer}
.rank-filters select{max-width:125px}
.rank-filters option{background:#262e28;color:#d0d8d2}
body.br-rich #app .rank-books{list-style:none;margin:0;align-items:start}
.rank-book{position:relative}
.rank-order-badge{position:absolute;top:0;left:0;min-width:24px;height:23px;padding:0 6px;line-height:23px;text-align:center;font-family:inherit;font-style:normal;font-size:13px;font-weight:700;color:#a2edc8;background:#173a2eeb;border-radius:0 0 5px 0;z-index:2}
body.br-rich #app .rank-tabs>a:focus-visible,.rank-filters :is(select,button):focus-visible{outline:2px solid #91dfb6;outline-offset:2px}
@media(max-width:760px){
 body.br-rich #app .rank-title{padding-bottom:12px}
 body.br-rich #app .rank-title h1{font-size:18px;line-height:26px}
 .rank-tabs{margin-bottom:12px}
 body.br-rich #app .rank-tabs>a{font-size:13px;padding:9px 3px;line-height:21px}
 .rank-toolbar{gap:7px;padding-bottom:12px}
 .rank-toolbar>span{font-size:12px}
 .rank-toolbar small{display:none}
 .rank-filters{gap:5px}
 .rank-filters select,.rank-filters button{font-size:11px;padding:3px 5px;line-height:22px}
 .rank-filters select{max-width:90px}
}
@media(max-width:360px){.rank-filters select{max-width:76px}.rank-filters{gap:4px}.rank-toolbar{gap:5px}}


/* 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}
}

