:root{--ink:#1f2d3d;--ink-soft:#5a6b7d;--paper:#faf8f4;--paper-warm:#f5efe3;--brand:#2f5d50;--brand-deep:#22453b;--accent:#c8442c;--gold:#c8a45d;--line:#e8e2d6;--card:#fff;--shadow:0 8px 30px rgba(31,45,61,.08)}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:PingFang SC,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 24px}.site-header{background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.site-header .inner{display:flex;align-items:center;gap:28px;padding:14px 0}.logo{font-size:22px;font-weight:800;color:var(--brand);letter-spacing:2px}.logo i{font-style:normal;color:var(--accent)}.logo-img{height:44px}.logo-img,.wap-logo-img{display:block;width:auto}.wap-logo-img{height:28px}.wap-logo-text{font-size:18px;font-weight:800;color:var(--ink);letter-spacing:2px}.site-nav{display:flex;gap:20px;font-size:14px}.site-nav a{padding-bottom:4px}.site-nav a:hover{color:var(--accent)}.header-search{margin-left:auto;display:flex;border:1.5px solid var(--brand);border-radius:20px;overflow:hidden}.header-search input{border:none;outline:none;padding:7px 14px;font-size:13px;width:200px}.header-search button{border:none;background:var(--brand);color:#fff;padding:0 18px;font-size:13px;cursor:pointer}.book-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.book-card{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:.25s;display:block}.book-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.cover{aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;color:#fff;font-family:PingFang SC,Microsoft YaHei,Source Han Sans SC,Heiti SC,sans-serif;font-size:18px;letter-spacing:2px;text-align:center;padding:12px;background:linear-gradient(150deg,#22453b,#3a6e5f);position:relative;overflow:hidden}.cover b{position:absolute;top:8px;left:0;background:var(--accent);font-size:10px;padding:2px 8px;border-radius:0 4px 4px 0;font-family:sans-serif;z-index:2}.cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.book-card .info{padding:10px 12px}.book-card .info h5{font-size:13px;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.book-card .info p{font-size:11px;color:var(--ink-soft)}.section-title{display:flex;align-items:baseline;gap:12px;margin:28px 0 14px}.section-title h4{font-size:19px}.section-title span{font-size:12px;color:var(--ink-soft);margin-left:auto}.rank-list{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px}.rank-item{gap:10px;font-size:13px;padding:7px 0}.rank-item,.rank-num{display:flex;align-items:center}.rank-num{width:20px;height:20px;border-radius:5px;background:#efe9dc;color:var(--ink-soft);font-size:11px;justify-content:center;flex-shrink:0}.rank-item.top .rank-num{background:var(--accent);color:#fff}.rank-item small{margin-left:auto;color:var(--ink-soft);font-size:11px}.badge-vip{font-size:10px;color:var(--accent);border:1px solid var(--accent);border-radius:3px;padding:0 4px;margin-left:6px}.chip-nav{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px 0}.chip-nav a{font-size:12px;color:var(--ink-soft);background:#fff;border:1px solid var(--line);border-radius:14px;padding:5px 14px}.chip-nav a:hover{color:var(--accent);border-color:var(--accent)}.pager{display:flex;gap:12px;justify-content:center;padding:24px 16px;font-size:13px}.pager a{background:#fff;border:1px solid var(--line);border-radius:18px;padding:7px 20px;color:var(--brand)}.cat-zone{display:flex;flex-direction:column;gap:24px}.cat-group-title{display:flex;align-items:baseline;gap:8px;margin:0 0 12px;padding-left:10px;border-left:3px solid var(--brand);font-size:15px;font-weight:700;color:var(--ink)}.cat-group-title span{font-size:12px;font-weight:400;color:var(--ink-soft)}.cat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.cat-card{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:86px;padding:12px 14px;border:1px solid transparent;border-radius:8px;text-decoration:none;transition:.25s}.cat-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(31,45,61,.14)}.cat-card-name{font-size:15px;font-weight:700;letter-spacing:.5px;white-space:nowrap}.cat-card-meta{margin-top:5px;font-size:12px;opacity:.72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-card-initial{position:absolute;right:-4px;bottom:-18px;font-size:48px;font-weight:800;line-height:1;opacity:.1;pointer-events:none;-webkit-user-select:none;user-select:none}.cat-card.is-empty{opacity:.5}@media (max-width:1100px){.cat-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:620px){.cat-grid{grid-template-columns:repeat(3,1fr)}.cat-card{min-height:78px}}.catlib-zone{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.catlib-card{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}.catlib-card.is-empty{opacity:.55}.catlib-head{display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(120deg,var(--brand),#3a6e5f);color:#fff}.catlib-head:hover{background:linear-gradient(120deg,var(--brand-deep),var(--brand))}.catlib-name{font-size:15px;font-weight:700;letter-spacing:1px}.catlib-count{margin-left:auto;font-size:11px;color:rgba(255,255,255,.75)}.catlib-list{list-style:none;margin:0;padding:2px 0}.catlib-list li+li .catlib-item{border-top:1px dashed var(--line)}.catlib-item{display:flex;align-items:baseline;gap:12px;padding:8px 14px;font-size:13.5px}.catlib-title{flex:1 1;min-width:0}.catlib-author,.catlib-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catlib-author{flex-shrink:0;max-width:40%;font-size:12px;color:var(--ink-soft)}.catlib-item:hover .catlib-title{color:var(--brand)}.catlib-none{margin:0;padding:18px 14px;font-size:12px;color:var(--ink-soft);text-align:center}@media (max-width:1100px){.catlib-zone{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.catlib-zone{grid-template-columns:1fr}}.friend-zone{margin-top:32px}.friend-grid{display:flex;flex-wrap:wrap;gap:10px}.friend-item{display:inline-flex;align-items:center;gap:7px;max-width:220px;padding:7px 14px;font-size:12.5px;color:var(--ink-soft);background:var(--card);border:1px solid var(--line);border-radius:18px;transition:.2s}.friend-item:hover{color:var(--brand);border-color:var(--brand);transform:translateY(-2px)}.friend-logo{width:16px;height:16px;border-radius:3px;object-fit:cover;flex-shrink:0}.friend-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0}.friend-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero{position:relative;border-radius:12px;background:linear-gradient(120deg,#22453b,#3a6e5f 60%,#4f8572);color:#fff;padding:38px 42px;min-height:240px;display:flex;flex-direction:column;justify-content:flex-end}.hero-cover{position:absolute;right:42px;top:50%;width:148px;transform:translateY(-50%) rotate(2.5deg);border-radius:8px;box-shadow:0 14px 30px rgba(0,0,0,.38);outline:3px solid rgba(255,255,255,.85);overflow:hidden;transition:transform .3s}.hero:hover .hero-cover{transform:translateY(-50%) rotate(0deg) scale(1.03)}@media (max-width:1100px){.hero-cover{width:120px;right:32px}}@media (max-width:900px){.hero-cover{display:none}}.hero .tag{display:inline-block;background:var(--accent);font-size:11px;padding:3px 10px;border-radius:3px;width:fit-content;margin-bottom:12px}.hero h1{font-size:28px;font-family:PingFang SC,Microsoft YaHei,Source Han Sans SC,Heiti SC,sans-serif;letter-spacing:2px;margin-bottom:10px}.hero p{color:#d8e4de;max-width:460px;line-height:1.8;margin-bottom:16px}.btn,.hero p{font-size:13px}.btn{display:inline-block;border-radius:20px;padding:9px 26px;font-weight:600;background:var(--gold);color:#5a4420;width:fit-content}.btn-primary{background:var(--brand);color:#fff}.book-hero{display:flex;gap:24px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px;margin-top:24px}.book-hero .cover{width:150px;border-radius:10px;flex-shrink:0}.book-hero h1{font-size:24px;margin-bottom:8px}.book-meta{margin-bottom:12px}.book-intro,.book-meta{font-size:13px;color:var(--ink-soft)}.book-intro{line-height:1.9;margin-bottom:16px}.chapter-list{column-count:3;gap:24px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;margin:20px 0}.chapter-list a{display:block;font-size:13px;padding:7px 4px;border-bottom:1px dashed #f0ebe0;page-break-inside:avoid;break-inside:avoid}.chapter-list a:hover{color:var(--accent)}.reader{background:var(--reader-bg,var(--paper-warm));min-height:100vh;color:var(--reader-fg,var(--ink))}.reader-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:960px;margin:0 auto;padding:18px 40px 12px;font-size:14px;color:var(--reader-fg,var(--ink-soft))}.reader-topbar a{color:var(--brand)}.reader-topbar span{opacity:.7}.reader-inner{max-width:960px;margin:0 auto;padding:32px 40px 56px;font-family:PingFang SC,Microsoft YaHei,Source Han Sans SC,Heiti SC,sans-serif}.reader-inner h1{margin:0 0 24px;padding-bottom:16px;font-size:28px;line-height:1.45;font-weight:700;color:var(--reader-fg,#3a352a);border-bottom:1px solid rgba(0,0,0,.1)}.reader-inner .reader-html p,.reader-inner article p{margin:0 0 .75em;text-indent:2em;font-size:var(--reader-font,19px);line-height:1.95;color:var(--reader-fg,#3a352a);text-align:justify}.reader-inner .reader-html p:empty,.reader-inner article p:empty{display:none}.reader-nav{display:flex;justify-content:space-between;gap:12px;max-width:960px;margin:0 auto;padding:8px 40px 96px}.reader-nav a{font-size:15px;color:var(--brand);border:1px solid var(--line);background:#fff;border-radius:22px;padding:11px 28px}.reader-nav a:hover{border-color:var(--brand)}.reader-nav.is-top{padding:0 40px 14px}.reader-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;max-width:960px;margin:0 auto;display:flex;justify-content:space-around;gap:4px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:rgba(28,31,30,.94);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#e8e2d6;font-size:13px}.reader-bar a,.reader-bar button{background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:6px 16px;border-radius:8px;text-align:center}.reader-bar a:hover,.reader-bar button:hover{background:rgba(255,255,255,.1)}.reader-bar button.on{color:var(--gold)}.reader-bar i{display:block;font-style:normal;font-size:20px;text-align:center;margin-bottom:4px}.reader-panel{position:fixed;left:0;right:0;bottom:0;z-index:61;max-width:960px;margin:0 auto;background:var(--reader-soft,#efe7d6);border-top:1px solid rgba(0,0,0,.1);padding:14px 20px 84px;color:var(--reader-fg,#3a352a);font-size:13px}.reader-panel-row{display:flex;align-items:center;gap:10px;font-size:12px;margin-bottom:12px}.reader-panel-row>span{width:46px;color:var(--ink-soft);flex-shrink:0}.reader-theme{width:40px;height:40px;border-radius:8px;border:2px solid transparent;cursor:pointer;font-size:10px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4)}.reader-theme.on{border-color:var(--accent)}.reader-panel input[type=range]{flex:1 1}.reader-hint{font-size:12px;color:var(--ink-soft);text-align:center;margin-top:8px}.locked-wall{text-align:center;padding:80px 20px}.locked-wall h2{font-size:20px;margin-bottom:12px}.locked-wall p{color:var(--ink-soft);font-size:14px;margin-bottom:24px}.wap-body{max-width:640px;margin:0 auto;background:var(--paper);min-height:100vh}.wap-header{background:var(--card);padding:12px 16px;border-bottom:1px solid var(--line);gap:12px;position:sticky;top:0;z-index:50}.wap-header,.wap-header .logo{display:flex;align-items:center}.wap-header .logo{font-size:18px;gap:6px}.wap-search{flex:1 1;background:#f2efe8;border-radius:16px;padding:7px 14px;font-size:12px;color:var(--ink-soft)}.wap-banner{margin:12px 16px;border-radius:12px;background:linear-gradient(120deg,#22453b,#4f8572);color:#fff;padding:20px;font-family:PingFang SC,Microsoft YaHei,Source Han Sans SC,Heiti SC,sans-serif}.wap-banner h1{font-size:19px;letter-spacing:2px;margin-bottom:6px}.wap-banner p{font-size:11px;opacity:.85;font-family:sans-serif}.wap-cats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:6px 16px 12px;text-align:center}.wap-cats a{font-size:11px;color:var(--ink-soft)}.wap-cats i{display:block;width:38px;height:38px;margin:0 auto 6px;border-radius:12px;background:#fff;border:1px solid var(--line);font-style:normal;font-size:17px;line-height:38px}.wap-list{padding:0 16px;flex-direction:column}.wap-book,.wap-list{display:flex;gap:10px}.wap-book{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px}.wap-book .cover{width:52px;border-radius:6px;font-size:11px;flex-shrink:0}.wap-book h5{font-size:13px;margin-bottom:3px}.wap-book p{font-size:11px;color:var(--ink-soft);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wap-search-form{display:flex;gap:8px;padding:12px 16px}.wap-search-form input{flex:1 1;border:1px solid var(--line);border-radius:18px;outline:none;padding:9px 16px;font-size:13px;background:#fff}.wap-search-form button{border:none;background:var(--brand);color:#fff;border-radius:18px;padding:0 18px;font-size:13px;cursor:pointer}.mine-head{background:linear-gradient(135deg,var(--brand),var(--brand-deep));color:#fff;padding:24px 20px 40px;border-radius:0 0 24px 24px}.mine-user{gap:12px}.avatar,.mine-user{display:flex;align-items:center}.avatar{width:52px;height:52px;border-radius:50%;background:var(--gold);justify-content:center;font-size:20px;color:#fff;font-family:PingFang SC,Microsoft YaHei,Source Han Sans SC,Heiti SC,sans-serif;flex-shrink:0}.mine-user h6{font-size:16px;margin-bottom:3px}.mine-user p{font-size:11px;opacity:.8}.vip-badge{display:inline-block;background:linear-gradient(90deg,var(--gold),#e0c288);color:#5a4420;font-size:10px;padding:2px 10px;border-radius:10px;font-weight:600;margin-left:6px}.mine-stats{display:flex;margin:-26px 16px 0;background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:16px 0}.mine-stats div{flex:1 1;text-align:center}.mine-stats b{display:block;font-size:17px;color:var(--ink)}.mine-stats span{font-size:10px;color:var(--ink-soft)}.sign-card{margin:12px 16px;background:linear-gradient(90deg,#fdf6e8,#fbf0d9);border:1px solid #f0e2c2;border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:10px;font-size:12px}.sign-card button{margin-left:auto;background:var(--accent);color:#fff;border:none;border-radius:14px;padding:6px 16px;font-size:11px;cursor:pointer}.mine-menu{margin:14px 16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px 0}.mine-menu a,.mine-menu button{display:flex;align-items:center;gap:12px;padding:12px 18px;font-size:13px;border:none;border-bottom:1px solid #f5f1e8;width:100%;text-align:left;background:none;color:inherit;cursor:pointer;font-family:inherit}.mine-menu a:last-child,.mine-menu button:last-child{border-bottom:none}.mine-menu i{font-style:normal;font-size:16px}.mine-menu small{margin-left:auto;color:var(--ink-soft);font-size:10px}.shelf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:30px}.shelf-card{display:flex;gap:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}.shelf-card .cover{width:76px;flex-shrink:0;border-radius:8px;font-size:12px}.shelf-actions{display:flex;gap:8px;margin-top:8px;align-items:center}.shelf-actions .btn{font-size:12px;padding:6px 16px;border-radius:14px}.shelf-actions button{border:1px solid var(--line);background:#fff;color:var(--ink-soft);border-radius:14px;padding:6px 14px;font-size:12px;cursor:pointer}.wap-tabbar{position:sticky;bottom:0;display:flex;border-top:1px solid var(--line);background:#fff;padding:8px 0 calc(10px + env(safe-area-inset-bottom));margin-top:20px}.wap-tabbar a{flex:1 1;text-align:center;font-size:10px;color:var(--ink-soft)}.wap-tabbar a.on{color:var(--brand);font-weight:600}.wap-tabbar i{display:block;font-style:normal;font-size:18px;margin-bottom:2px}@media (max-width:768px){.book-grid{grid-template-columns:repeat(3,1fr)}.chapter-list{column-count:1}.reader-topbar{padding:12px 18px 10px}.reader-inner{padding:18px 18px 44px}.reader-inner h1{font-size:21px;margin-bottom:18px;padding-bottom:12px}.reader-nav{padding:0 18px 84px}.reader-nav.is-top{padding:0 18px 12px}.site-nav{display:none}.shelf-grid{grid-template-columns:1fr}}.legal-article{max-width:720px;margin:0 auto;padding:32px 0 48px;font-size:14px;line-height:1.9;color:var(--ink,#1f2d3d)}.legal-article h1{font-size:24px;margin:0 0 4px;color:var(--ink,#1f2d3d)}.legal-updated{font-size:12px;color:var(--ink-soft,#5a6b7d);margin:0 0 24px}.legal-article h2{font-size:16px;margin:24px 0 8px;padding-left:10px;border-left:3px solid var(--brand,#2f5d50)}.legal-article p{margin:0 0 12px}.legal-mail{color:var(--brand,#2f5d50);font-weight:600;text-decoration:underline}.legal-links{margin-top:28px;padding-top:16px;border-top:1px dashed var(--line,#e8e2d6);font-size:13px}.legal-links a{color:var(--brand,#2f5d50)}