.recommend > button { align-items: flex-start; }
.recommend > button > .cover { display:block!important; position:relative!important; width:82px!important; height:112px!important; min-width:82px!important; max-width:82px!important; flex:0 0 82px!important; aspect-ratio:auto!important; overflow:hidden!important; }
.recommend > button > .cover > img { position:absolute!important; inset:0!important; display:block!important; width:100%!important; height:100%!important; object-fit:cover!important; }
.recommend > button > .cover > .cover-fallback { position:absolute!important; inset:0!important; display:flex!important; height:auto!important; align-items:flex-end!important; }
.recommend > button > .cover:has(img) > .cover-fallback { display:none!important; }
.recommend > button > span:last-child { display:block!important; min-width:0!important; flex:1 1 0!important; overflow:hidden!important; }
.recommend > button > span:last-child strong,.recommend > button > span:last-child small,.recommend > button > span:last-child p,.recommend > button > span:last-child em { max-width:100%; overflow:hidden; }
.recommend > button > span:last-child strong { white-space:nowrap; text-overflow:ellipsis; }
.recommend > button > span:last-child p { word-break:break-all; }

/* All book covers must establish their own layout box before images load. */
.cover { position:relative!important; display:block!important; overflow:hidden!important; background:#d7c1b4!important; }
.cover > img { position:absolute!important; inset:0!important; display:block!important; width:100%!important; height:100%!important; object-fit:cover!important; }
.cover > .cover-fallback { position:absolute!important; inset:0!important; display:flex!important; align-items:flex-end!important; padding:10px!important; background:linear-gradient(145deg,#85594c,#d49a78)!important; color:#fff!important; font-size:14px!important; line-height:1.35!important; }
.cover:has(img) > .cover-fallback { display:none!important; }
.hot-book .cover { width:94px!important; height:130px!important; aspect-ratio:auto!important; }
.rank { min-height:76px!important; align-items:center!important; }
.rank > .cover { width:50px!important; height:68px!important; min-width:50px!important; flex:0 0 50px!important; aspect-ratio:auto!important; }
.rank > span { display:block!important; min-width:0!important; flex:1 1 0!important; overflow:hidden!important; }
.rank > span > b,.rank > span > small,.rank > span > p { overflow:hidden!important; max-width:100%!important; text-overflow:ellipsis!important; }
.rank > span > b { white-space:nowrap!important; }
.hot-row { align-items:flex-start!important; }
.hot-book { display:block!important; text-align:left!important; }
.nav { position:fixed!important; z-index:99!important; bottom:0!important; left:50%!important; display:flex!important; align-items:center!important; justify-content:space-around!important; width:min(100%,600px)!important; height:66px!important; margin:0!important; padding:0!important; transform:translateX(-50%)!important; border-top:1px solid #e8e8e8!important; background:#fff!important; }
.nav button { display:flex!important; width:33.333%!important; height:66px!important; align-items:center!important; justify-content:center!important; flex-direction:column!important; gap:2px!important; margin:0!important; padding:0!important; background:#fff!important; line-height:1!important; }
.nav i { display:block!important; margin:0!important; font-size:18px!important; line-height:20px!important; }
.reader-city { padding-bottom:74px!important; }
.reader-text h1{margin:0 0 32px!important;font-family:"Songti SC","STSong",serif!important;font-size:1.32em!important;font-weight:600!important;text-align:center!important}.reader-text p{margin:0 0 1.35em!important;text-indent:2em!important;line-height:2.12!important;white-space:pre-wrap!important}.reader-foot{gap:9px!important}.reader-foot button{white-space:nowrap!important}.sheet select{width:100%;height:40px;border:1px solid #ddd;border-radius:3px;background:#fff;padding:0 8px;color:#555}

/* Home: quiet, editorial reading-market rhythm without boxed modules. */
.reader-city{background:#fff!important;padding-bottom:82px!important}.reader-city .city-header{height:58px!important;padding:0 18px!important;gap:14px!important}.reader-city .city-header>b{flex:0 0 auto;color:#202020!important;font-size:21px!important;letter-spacing:.5px!important}.reader-city .city-search{min-width:0!important;height:34px!important;border-radius:18px!important;background:#f5f5f5!important;color:#aaa!important}.reader-city .city-search input{font-size:12px!important}.reader-city .city-user{flex:0 0 22px!important;padding:0!important;color:#4b4b4b!important}.reader-city .city-nav{width:100%!important;height:45px!important;gap:0!important;justify-content:space-between!important;padding:0 19px!important;border:0!important}.reader-city .city-nav button{height:45px!important;padding:0!important;background:transparent!important;color:#8b8b8b!important;font-size:14px!important}.reader-city .city-nav .selected{color:#202020!important;font-weight:650!important}.reader-city .city-nav .selected:after{bottom:1px!important;left:30%!important;width:40%!important;height:2px!important;background:#222!important}.reader-city .channel-row{gap:0!important;justify-content:flex-start!important;overflow-x:auto!important;padding:9px 14px 16px!important;border:0!important;background:#fff!important}.reader-city .channel-row button{margin-right:8px!important;padding:6px 11px!important;border-radius:14px!important;background:#f6f6f6!important;color:#777!important;font-size:12px!important}.reader-city .channel-row .active{background:#222!important;color:#fff!important;font-weight:500!important}.reader-city .recommend{padding:0 17px 23px!important;background:#fff!important}.reader-city .recommend>button{gap:16px!important;padding:0!important;background:transparent!important}.reader-city .recommend>button>.cover{width:93px!important;height:128px!important;min-width:93px!important;max-width:93px!important;border-radius:3px!important;box-shadow:0 10px 22px rgba(0,0,0,.12)!important}.reader-city .recommend>button>span:last-child{padding-top:3px!important}.reader-city .recommend i{color:#a27a59!important;letter-spacing:1px!important}.reader-city .recommend strong{margin:7px 0 5px!important;font-size:19px!important;font-weight:650!important}.reader-city .recommend p{margin:9px 0!important;color:#9a9a9a!important;line-height:1.55!important}.reader-city .recommend em{display:inline-block!important;margin-top:5px!important;color:#333!important;font-size:12px!important;font-style:normal!important}.reader-city .market-section{margin:0!important;padding:25px 17px 0!important;background:#fff!important}.reader-city .market-title{margin-bottom:15px!important}.reader-city .market-title h2{font-size:18px!important;font-weight:650!important}.reader-city .market-title span{color:#aaa!important}.reader-city .hot-row{gap:13px!important;padding-bottom:0!important}.reader-city .hot-book{width:calc((100% - 26px)/3)!important;max-width:120px!important;flex:0 0 calc((100% - 26px)/3)!important}.reader-city .hot-book .cover{width:100%!important;height:auto!important;aspect-ratio:3/4.16!important;border-radius:3px!important;box-shadow:0 6px 13px rgba(0,0,0,.12)!important}.reader-city .hot-book b{margin-top:9px!important;font-size:13px!important;font-weight:600!important}.reader-city .ranking{padding-bottom:6px!important}.reader-city .rank{min-height:84px!important;gap:12px!important;padding:10px 0!important;border:0!important}.reader-city .rank>.cover{width:48px!important;height:65px!important;min-width:48px!important;border-radius:2px!important}.reader-city .rank>i{width:17px!important;color:#c7c7c7!important;font-size:13px!important}.reader-city .rank:nth-child(3)>i,.reader-city .rank:nth-child(4)>i,.reader-city .rank:nth-child(5)>i{color:#b98960!important}.reader-city .rank p{color:#aaa!important}.reader-city .rank em{padding-right:1px!important}.reader-city .nav{height:68px!important;border:0!important;box-shadow:0 -6px 20px rgba(0,0,0,.045)!important}.reader-city .nav button{height:68px!important;color:#969696!important}.reader-city .nav .on{color:#202020!important}.reader-city .nav i{font-size:17px!important}.reader-city .nav button.on:after{width:4px;height:4px;margin-top:2px;border-radius:50%;background:#202020;content:""}
.reader-city .city-header{display:grid!important;grid-template-columns:max-content minmax(0,1fr) 22px!important;align-items:center!important}.reader-city .city-search{width:100%!important}.reader-city .city-search input{width:auto!important;min-width:0!important;flex:1 1 auto!important}.reader-city .city-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}.reader-city .city-nav button{min-width:0!important;white-space:nowrap!important}.reader-city .hot-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:hidden!important}.reader-city .hot-book{width:auto!important;max-width:none!important;min-width:0!important;flex:auto!important}
