.book-hero{border-bottom:1px solid var(--sv-border);grid-template-columns:240px minmax(0,1fr);align-items:start;gap:40px;padding-bottom:36px;display:grid}.book-cover .cover{box-shadow:16px 18px 36px #1c2e2238}.book-info{min-width:0}.book-title{font-family:var(--sv-serif);letter-spacing:-1px;overflow-wrap:anywhere;margin:4px 0 12px;font-size:clamp(30px,4vw,46px);font-weight:600;line-height:1.18}.book-badges{flex-wrap:wrap;gap:8px;margin:0 0 20px;display:flex}.book-stats{border:1px solid var(--sv-border);border-radius:var(--sv-radius);background:var(--sv-surface);grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin:0 0 20px;padding:16px 18px;display:grid}.book-stats div{min-width:0}.book-stats dt{color:var(--sv-muted);margin-bottom:4px;font-size:12px}.book-stats dd{color:var(--sv-text);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0;font-size:16px;font-weight:700}.book-genres{margin-bottom:24px}.book-actions{flex-wrap:wrap;gap:12px;display:flex}.book-section{padding-top:36px}.book-section-title{font-family:var(--sv-serif);letter-spacing:-.4px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 16px;font-size:26px;font-weight:600;display:flex}.book-desc{max-width:820px;color:var(--sv-text-soft);overflow-wrap:anywhere;font-size:16px;line-height:1.85}.book-desc p{margin:0 0 12px}.book-desc[data-collapsed]{max-height:9.25em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,#0000);mask-image:linear-gradient(#000 60%,#0000)}.book-more{cursor:pointer;background:0 0;border:0;min-height:44px;padding:0}.toc-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-bottom:16px;display:flex}.toc-head .book-section-title{margin:0}.toc-count{font-family:var(--sv-sans);letter-spacing:0;color:var(--sv-muted);font-size:14px;font-weight:500}.toc-tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toc-order{background:var(--sv-surface-2);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.toc-order a{min-height:40px;color:var(--sv-muted);border-radius:999px;align-items:center;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.toc-order a:hover{color:var(--sv-text)}.toc-order a[aria-current]{background:var(--sv-primary);color:var(--sv-on-primary)}.chapter-jump{color:var(--sv-muted);align-items:center;gap:8px;font-size:14px;display:flex}.chapter-jump input{border:1px solid var(--sv-border-strong);border-radius:var(--sv-radius-sm);background:var(--sv-surface);width:84px;min-height:48px;color:var(--sv-text);text-align:center;padding:10px 12px;font-size:16px}.toc-grid{border-top:1px solid var(--sv-border);grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;margin:0;padding:0;list-style:none;display:grid}.toc-grid li{border-bottom:1px solid var(--sv-border);min-width:0}.toc-item{min-height:48px;color:var(--sv-text);border-radius:6px;align-items:baseline;gap:12px;padding:13px 8px;font-size:14px;display:flex}.toc-item:hover{background:var(--sv-surface-2);color:var(--sv-link)}.toc-item:visited .toc-title{color:var(--sv-muted)}.toc-number{color:var(--sv-muted);font-variant-numeric:tabular-nums;flex:0 0 3em;font-size:13px}.toc-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.toc-vip{color:var(--sv-accent);flex:none;font-size:11px;font-weight:700}.toc-empty{color:var(--sv-muted)}@media (width<=900px){.toc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.book-hero{grid-template-columns:200px minmax(0,1fr);gap:28px}}@media (width<=650px){.book-hero{grid-template-rows:auto 1fr;grid-template-columns:112px minmax(0,1fr);gap:12px 16px;padding-bottom:24px}.book-cover{grid-row:1/span 2}.book-info{display:contents}.book-title{letter-spacing:-.4px;grid-column:2;margin:0;font-size:24px}.book-badges{grid-column:2;align-self:start;margin:0}.book-stats,.book-genres,.book-actions{grid-column:1/-1}.book-stats{grid-template-columns:1fr 1fr;margin:4px 0 0;padding:14px}.book-genres{margin:0}.book-actions .button{flex:100%}.book-section{padding-top:28px}.book-section-title{font-size:22px}.toc-tools{justify-content:space-between;width:100%}.chapter-jump label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.toc-grid{grid-template-columns:1fr}}
