.book-page { padding:16px 0 24px; }
.book-layout { display:grid;grid-template-columns:250px minmax(0,1fr);gap:32px;align-items:start; }
.book-reading { min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:24px;color:var(--ink); }
.book-reading h1 { font:38px/1.2 Georgia,serif;color:var(--ink); }
.book-chapter-content { font:19px/1.8 Georgia,serif;text-align:justify;hyphens:auto;overflow-wrap:break-word; }
.book-chapter-content p { margin:0 0 .65em;text-align:justify; }
.book-chapter-content h2,.book-chapter-content h3,.book-chapter-content h4 { color:var(--ink);text-align:left;line-height:1.35; }
.book-chapter-content img { max-width:100%;height:auto; }
.book-chapter-content table { display:block;max-width:100%;overflow:auto; }
.book-toc { background:transparent;border:0;border-radius:0;padding:0 12px 0 0;max-height:75vh;overflow:auto;position:sticky;top:20px; }
.book-toc a { color:var(--accent); }
.book-toc a.is-current { background:#dce8dc;color:var(--ink); }
.book-toc-title { font:23px/1.3 Georgia,serif; }
.book-card { background:var(--paper);border:1px solid var(--line);border-radius:16px; }
.book-card h2 { font:29px/1.3 Georgia,serif;color:var(--ink); }
.book-card p,.book-intro-description { text-align:justify;hyphens:auto; }
.book-button { background:var(--accent);color:white!important; }
.book-chapter-nav a { color:var(--accent);padding:12px;min-height:44px;overflow-wrap:anywhere; }
.book-crumbs { margin-bottom:14px; }
@media(max-width:480px) { .book-intro img { float:none;display:block;margin:0 auto 24px;max-width:100%;height:auto; }.book-intro p { text-align:justify;hyphens:auto; } }
@media(max-width:800px) { .book-layout { grid-template-columns:1fr;gap:20px; }.book-toc { position:static;max-height:none;padding:0; }.book-toc-details > summary { display:block;padding:12px;border:1px solid var(--line);border-radius:8px;background:#e4ebdf;cursor:pointer; }.book-reading { padding:16px; }.book-reading h1 { font-size:29px; }.book-chapter-content { font-size:18px; }.book-card { flex-direction:column;padding:22px; }.book-card img { max-width:130px; }.book-toc a { min-height:44px;display:block; }.book-chapter-nav { flex-direction:column; }.book-page { padding-top:16px; } }
