#readalong-tab:disabled{opacity:.4;cursor:default}
#follow-text{border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);padding:10px 14px;min-height:44px;font-size:13px;cursor:pointer}
.readalong-active .reader-toolbar{position:sticky;top:0;z-index:6;background:var(--paper);padding:12px 0;box-shadow:0 8px 12px -12px #193a3266}
.readalong-active main{padding-bottom:calc(var(--readalong-player-height,200px) + 50vh)}
#text p,.welcome-copy p,#chapter-title{transition:background-color .2s,box-shadow .2s}
.readalong-active .is-speaking{background:#e8eddf;box-shadow:-8px 0 0 #e8eddf,8px 0 0 #e8eddf;border-radius:3px}
.readalong-note{font:14px/1.5 Arial,Helvetica,sans-serif;color:var(--muted);margin:0 0 18px}
@media(max-width:800px){.reader-toolbar{gap:8px}.reader-toolbar .tabs{display:flex;flex:1;white-space:nowrap}.reader-toolbar .tabs button{padding:10px 12px;min-height:44px}#toc-toggle{padding:10px 12px}.readalong-active #follow-text{order:4;flex-basis:100%}.readalong-active .reader-toolbar{top:0}.readalong-active .reading{overflow:visible}}
@media(prefers-reduced-motion:reduce){#text p,.welcome-copy p,#chapter-title{transition:none}}
#page-mode{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--ink);padding:8px 10px;min-height:44px;font-size:13px;border-radius:8px;cursor:pointer}
#page-mode[aria-pressed=true]{background:#e8eddf}
#page-viewport{min-width:0}
#page-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 0;font:13px/1.4 Arial,Helvetica,sans-serif}
#page-controls button{min-height:44px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:8px 13px;cursor:pointer}
#page-controls button:disabled{opacity:.35;cursor:default}
#page-count{white-space:nowrap;font-variant-numeric:tabular-nums}
.reading.pages-active .reader-toolbar{position:sticky;top:0;z-index:6;background:var(--paper);padding:10px 0}
.reading.pages-active #page-viewport{overflow:hidden;overscroll-behavior-x:contain;touch-action:pan-y}
.reading.pages-active #page-content{height:var(--page-height,400px);width:100%;column-width:var(--page-width,400px);column-gap:32px;column-fill:auto}
.reading.pages-active #text{display:contents}
.reading.pages-active .personal-welcome{break-after:column;margin-top:0}
.reading.pages-active #chapter-label,.reading.pages-active h2,.reading.pages-active h3,.reading.pages-active h4{break-after:avoid-column}
.reading.pages-active #text p{orphans:2;widows:2}
.paged-reading main{padding-bottom:calc(var(--readalong-player-height,0px) + 24px)}
.reading.pages-active .chapter-nav{margin-top:20px}
@media(max-width:800px){#page-mode{padding:8px 6px;gap:5px}#page-controls{gap:6px}#page-controls button{padding:8px 9px}#page-controls button span{font-size:12px}}

.reading.pages-active #page-controls{position:fixed;z-index:8;margin:0;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:6px 8px;box-shadow:0 4px 20px #193a3214}
.library.toc-open .pages-active #page-controls{visibility:hidden}
#book-links{display:inline-flex;align-items:center;gap:6px;padding:8px 9px;min-height:44px;border-radius:8px;font-size:13px;white-space:nowrap}
#book-links small{min-width:18px;border-radius:20px;background:#e8e8df;font:11px/18px Arial,sans-serif}
#book-links[data-links-enabled=true]{background:#e8eddf}
a.book-link{color:inherit;text-decoration:none;cursor:inherit}
.book-links-enabled a.book-link{color:#315e4b;text-decoration:underline;text-underline-offset:.16em;text-decoration-thickness:1px;cursor:pointer}
.book-links-enabled a.book-link:hover{background:#e8eddf}
.reader-toolbar{column-gap:16px;row-gap:12px}
.reader-tools{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}
.reader-tools #font-size,.reader-tools #book-links,.reader-tools #page-mode{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:44px;padding:8px 12px;border-radius:8px;white-space:nowrap;font-size:14px}
.reader-tools #font-size{font-size:20px}
.reader-tools button:hover{background:#eeeee7}
.reader-tools #book-links[data-links-enabled=true],.reader-tools #page-mode[aria-pressed=true]{background:#e8eddf}
@media(max-width:800px){.reader-tools{flex-basis:100%;justify-content:center;margin-left:0;gap:8px}.reader-tools #font-size,.reader-tools #book-links,.reader-tools #page-mode{padding:8px 10px}}

/* Keep photographs together and within the page when turning pages. */
.reading.pages-active .book-photo{break-inside:avoid-column;margin:16px 0;max-width:100%}
.reading.pages-active .book-photo-open{display:flex;justify-content:center}
.reading.pages-active .book-photo img{width:auto;max-width:100%;max-height:max(40px,calc(var(--page-height,400px) - 110px));object-fit:contain}
.reading.pages-active .book-photo figcaption{font-size:12px;line-height:1.5;padding:8px 0}
.reading article a.book-link{text-decoration:none}
.book-links-enabled .reading article a.book-link{text-decoration:underline}

/* Reserve fixed slots for navigation, including disabled buttons and larger page numbers. */
.reading.pages-active #page-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(84px,110px) minmax(0,1fr);align-items:center;gap:8px;min-height:60px;height:60px}
#page-controls button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;height:44px;min-height:44px;white-space:nowrap;overflow:hidden}
#page-count{display:block;text-align:center;min-width:0;font-variant-numeric:tabular-nums}
@media(max-width:580px){.reading.pages-active #page-controls{grid-template-columns:minmax(0,1fr) 94px minmax(0,1fr);gap:4px;padding:6px}#page-controls button{padding:8px 5px}#page-controls button span{font-size:11px}}

/* Make enabled links recognisable without relying on colour alone. */
.book-links-enabled .reading article a.book-link{background:#e8eddf;border-radius:2px;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:.16em}
.reader-tools #book-links[data-links-enabled=true]{background:var(--ink);color:var(--paper)}
.reader-tools #book-links[data-links-enabled=true] small{background:#ffffff26;color:inherit}

#offline-open{min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:8px}
.offline-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:28px;font:15px/1.6 Arial,Helvetica,sans-serif}
.offline-dialog::backdrop{background:#10282080}
.offline-dialog h2{font:normal 28px/1.25 Georgia,serif;margin:32px 0 18px}
.offline-dialog .offline-close{position:absolute;top:10px;right:12px;min-height:44px;padding:8px}
.offline-dialog .offline-size,.offline-dialog .offline-help{color:var(--muted);font-size:13px}
.offline-dialog progress{width:100%;height:12px;accent-color:var(--ink)}
.offline-dialog .offline-status{min-height:1.6em}
.offline-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}
.offline-actions button{min-height:44px}
.offline-actions .offline-remove{text-decoration:underline;font-size:13px;padding:8px 0}
@media(max-width:580px){.top{gap:10px}.top nav{gap:6px}#offline-open{padding:7px;font-size:12px}.offline-dialog{padding:24px}}
