:root{--ink:#152f2c;--paper:#f5f1e8;--line:#d5cdbd;--gold:#a67a31;--red:#9b4538}
[hidden]{display:none!important}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei",sans-serif}button,input{font:inherit}header{height:72px;padding:0 max(24px,5vw);display:flex;align-items:center;gap:38px;background:#fff;border-bottom:1px solid var(--line)}header>a{font:27px serif;color:var(--ink);text-decoration:none}header nav{display:flex;gap:24px}header nav a{color:#687873;text-decoration:none}header span{margin-left:auto;color:#687873}.hero,main>section{width:min(1180px,calc(100% - 32px));margin:auto}.hero{padding:55px 0 42px;display:flex;justify-content:space-between}.hero p{font-size:11px;letter-spacing:2px;color:var(--gold)}.hero h1{font:52px serif;margin:7px 0}.hero span{color:#62716e}.seal{border:1px solid var(--red);color:var(--red);font:26px serif;padding:14px 20px;line-height:1.5}.library{display:grid;grid-template-columns:190px 1fr;gap:30px}.book-search{width:100%;padding:11px 12px;margin-bottom:10px;border:1px solid var(--line);background:#fff;color:var(--ink)}.filter button{width:100%;text-align:left;padding:12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.filter button.active{color:var(--red);font-weight:700}.source-note{font-size:12px;color:#77837f;line-height:1.7}.shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.book{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;min-height:232px;padding:16px;background:#fff;border:1px solid var(--line);cursor:pointer;overflow:hidden;transition:border-color .18s,box-shadow .18s}.book:hover,.book:focus{border-color:var(--gold);box-shadow:0 5px 18px #17332e12;outline:none}.cover{width:96px;height:128px;padding:10px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;font:21px/1.35 serif;border:4px double #ffffff66;overflow-wrap:anywhere}.cover.jade{background:#376d62}.cover.cinnabar{background:#8d4439}.cover.ink{background:#283836}.cover.gold{background:#94743d}.book-info{min-width:0;display:flex;flex-direction:column;min-height:198px}.book h3{font:23px/1.3 serif;margin:8px 0}.book-category{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--gold)}.book-plain{font-size:13px;line-height:1.65;color:#5e706c;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.book-stats{display:flex;flex-wrap:wrap;gap:3px 10px;color:#667570;font-size:12px}.book-access{margin-top:auto;color:var(--red)}.reader{background:#fff;border:1px solid var(--line);margin-top:30px!important;margin-bottom:48px!important}.reader-head{display:flex;justify-content:space-between;gap:24px;padding:24px;border-bottom:1px solid var(--line)}.reader-head h2{font:34px serif;margin:5px 0}.book-guide{max-width:760px;margin:8px 0 0;color:#5e706c;line-height:1.8;font-size:15px}.reader button{padding:10px 15px;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer}.reader-head>button{height:42px;white-space:nowrap}.reader-grid{display:grid;grid-template-columns:240px minmax(0,1fr)}.reader-grid>aside{border-right:1px solid var(--line);max-height:720px;overflow:auto}.reader-grid>aside button{display:block;width:100%;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);text-align:left}.reader-grid>aside button.active{background:#f0ebe0;color:var(--red);font-weight:700}.reader-grid article{min-width:0;padding:28px}.reader-label{margin:0;color:var(--gold);font-size:12px}.reader-grid h3{font:28px serif;margin:8px 0 18px}.chapter-text{min-height:420px;max-height:640px;overflow:auto;padding:28px;border:1px solid var(--line);font:20px/2.05 serif;color:var(--ink);background:#fcfbf7;white-space:pre-wrap;overflow-wrap:anywhere}.source{margin-top:18px;font-size:12px;color:#71807c;line-height:1.7}
@media(max-width:850px){.shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.reader-grid{grid-template-columns:1fr}.reader-grid>aside{border-right:0;max-height:180px}.library{grid-template-columns:1fr}}
@media(max-width:560px){header{gap:18px;padding:0 16px}header nav{display:none}header span{font-size:12px}.shelf{grid-template-columns:1fr}.hero h1{font-size:40px}.book{grid-template-columns:88px minmax(0,1fr);min-height:215px}.cover{width:88px;height:120px}.book-info{min-height:180px}.reader-head{align-items:flex-start}.reader-grid article{padding:18px}.chapter-text{padding:18px;font-size:18px}.book-guide{font-size:14px}}
.chapter-text{min-height:150px;max-height:none;overflow:visible}
