/* Initial focus announces the title; keyboard navigation gets a quiet cue. */
#reader #book-title:focus{outline:none}
#reader .reader-toolbar button:focus-visible{outline:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
#reader .reader-toolbar .theme-compact:focus-visible{box-shadow:0 0 0 1px currentColor;border-radius:50%}
#reader .reader-toolbar #close-reader .return-label{font:inherit}
#reader .return-label-mobile{display:none}

@media(max-width:680px){
 #reader{--mobile-reader-bg:#f5f4f0;inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:var(--mobile-reader-bg);overflow:hidden}
 #reader[open]{overflow:hidden}
 #reader::backdrop{background:var(--mobile-reader-bg);backdrop-filter:none}
 #reader .reader-toolbar{position:relative;z-index:10;height:calc(64px + env(safe-area-inset-top,0px));min-height:calc(64px + env(safe-area-inset-top,0px));margin:0;padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px));border-bottom:1px solid #deddd6;background:var(--mobile-reader-bg)}
 #reader .reader-actions{display:flex;width:100%;height:64px;align-items:center;justify-content:flex-start;gap:12px;margin:0}
 #reader .reader-toolbar button{min-height:44px;font-size:14px}
 #reader #close-reader{order:0;gap:8px;padding:0 8px 0 0}
 #reader #close-reader .return-label{display:none}
 #reader #close-reader .return-label-mobile{display:inline;font:400 15px/1.5 Arial,sans-serif}
 #reader #reader-random{order:1;margin-left:auto;padding:9px 15px;min-height:44px}
 #reader .reader-toolbar .theme-compact{order:2;width:44px;height:44px;min-width:44px;padding:0}
 #reader .reader-body,#reader.is-opening .reader-body,#reader.is-returning .reader-body{display:block;flex:1 1 0;min-height:0;width:100%;padding:0 0 env(safe-area-inset-bottom,0px);margin:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
 #reader .reader-body::-webkit-scrollbar{display:none}
 #reader .open-book{display:block;width:100%;height:auto;min-height:100%;max-height:none;overflow:visible;background:var(--mobile-reader-bg)}
 #reader .left-page{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:auto;min-height:0;padding:24px 24px 0;gap:0;background:none;overflow:visible}
 #reader .left-page #book-illustration{order:1;flex:none;display:grid;place-items:center;width:100%;height:clamp(300px,48svh,440px);min-height:0;max-height:none;margin:0 0 36px;padding:0;perspective:1500px}
 #reader .book-object,#reader .book-object:has(.actual-cover){height:auto;width:min(340px,82%,calc(clamp(290px,45svh,410px) * var(--ratio)));max-width:none;max-height:100%;aspect-ratio:var(--ratio)}
 #reader .left-page .reader-heading{order:2;flex:none;width:100%;height:auto;min-height:0;max-height:none;margin:0;padding:0;overflow:visible;scrollbar-gutter:auto;text-align:center}
 #reader .left-page #book-title{max-width:28ch;margin:0 auto 12px;font:400 clamp(29px,7.7vw,36px)/1.13 Georgia,serif;letter-spacing:-.035em;text-align:center;color:var(--reading-ink)}
 #reader .left-page #book-author{max-width:35ch;margin:0 auto 8px;font:400 15px/1.5 Arial,sans-serif;text-align:center;color:var(--reading-muted)}
 #reader .left-page .book-edition{margin:4px auto 0;max-width:36ch;font-size:13px;text-align:center}
 #reader .book-caption{order:3;flex:none;width:100%;height:auto;min-height:0;margin:0;padding:14px 0 26px;gap:18px;overflow:visible}
 #reader .cover-actions{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 24px;width:100%}
 #reader .save-button{min-height:44px;padding:8px 0;font-size:14px}
 #reader .cover-details summary{min-height:44px;padding:8px 0;font-size:13px}
 #reader .cover-details-panel{left:auto;right:-10px;transform:none;width:min(310px,calc(100vw - 48px));max-height:50svh;overflow:auto}
 #reader .right-page{display:block;position:relative;height:auto;min-height:calc(100dvh - 64px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:0 24px 24px;overflow:visible;background:var(--mobile-reader-bg);border:0;border-radius:0;box-shadow:none;animation:none}
 #reader .reader-tabs{position:sticky;top:0;z-index:8;display:flex;align-items:stretch;justify-content:space-between;gap:12px;margin:0 -24px 28px;padding:0 24px;border-top:1px solid var(--reading-rule);border-bottom:1px solid var(--reading-rule);background:var(--mobile-reader-bg)}
 #reader .reader-tabs button{min-height:54px;padding:16px 0;font-size:14px;line-height:1.4;text-align:center;white-space:nowrap}
 #reader .page-content{height:auto;min-height:0;overflow:visible;padding:0;scrollbar-gutter:auto}
 #reader .page-content .reading-content{max-width:none;padding-bottom:0}
 #reader .page-content p{font-size:16px;line-height:1.75}
 #reader .page-content .lead-copy{font-size:22px;line-height:1.5}
 #reader .page-navigation{min-height:62px;padding-top:14px;margin-top:28px}
 #reader .page-navigation button{min-height:44px;font-size:14px}
 #reader .source-links a{min-height:44px;display:inline-flex;align-items:center}
 #reader .reader-note{display:none}
 [data-theme=night] #reader{--mobile-reader-bg:#202224}
 [data-theme=night] #reader .reader-toolbar{background:var(--mobile-reader-bg);border-color:#414345}
 [data-theme=night] #reader .open-book,[data-theme=night] #reader .right-page{background:var(--mobile-reader-bg)}
}
@media(max-width:360px){
 #reader .reader-actions{gap:6px}
 #reader #reader-random{padding:9px 11px}
 #reader .reader-toolbar .theme-compact{width:40px;min-width:40px}
 #reader .reader-tabs{gap:8px;padding:0 20px}
 #reader .reader-tabs button{font-size:13px}
 #reader .cover-actions{gap:18px}
 #reader .page-navigation button{font-size:13px}
}
