/* Reader overlays: image stage owns the viewport, controls never size the image. */
.immersive-reader .reader-hud{position:absolute;z-index:10;top:max(6px,env(safe-area-inset-top));right:max(6px,env(safe-area-inset-right));left:max(6px,env(safe-area-inset-left));display:flex;gap:6px;align-items:center;pointer-events:none}
.immersive-reader .reader-hud>*{pointer-events:auto}.immersive-reader .reader-hud button,.immersive-reader .page-edge{min-width:44px;min-height:44px;border:1px solid #ffffff60;background:#251b35bf;color:#fff;border-radius:8px;padding:7px 12px;font:14px system-ui;cursor:pointer;backdrop-filter:blur(5px)}
.immersive-reader .reader-count{margin-right:auto;background:#251b35bf;color:white;padding:6px 9px;border-radius:8px;font:12px system-ui;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.immersive-reader .reader-drawer{position:absolute;z-index:9;top:max(58px,calc(env(safe-area-inset-top) + 58px));right:max(6px,env(safe-area-inset-right));width:min(460px,calc(100% - 12px));max-height:calc(100% - 74px - env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;background:#faf7fc;color:#32203e;border:1px solid #d4c8db;border-radius:10px;padding:10px;box-shadow:0 8px 30px #0005;display:none}
.immersive-reader.tools-open .reader-drawer{display:block}.immersive-reader .reader-drawer .viewerbar{padding:4px!important}.immersive-reader .reader-drawer .reader-help{margin:8px}.immersive-reader .reader-drawer .reader-social{padding:6px;flex-wrap:wrap}.immersive-reader .reader-drawer .comments-panel{max-height:none;padding:10px 4px}.immersive-reader .reader-drawer .reader-bottom{padding:6px;flex-wrap:wrap}.immersive-reader .reader-drawer h2{font-size:22px;margin:8px 0}.immersive-reader .reader-drawer .community-tools{margin:10px 0;gap:8px}.immersive-reader .reader-drawer a{color:#48245f}
.immersive-reader.controls-hidden .page-edge,.immersive-reader.controls-hidden .reader-count,.immersive-reader.controls-hidden .reader-fullscreen{visibility:hidden;pointer-events:none}
.immersive-reader :focus-visible{outline:3px solid #ffdc75;outline-offset:2px}.immersive-reader .reader-drawer :focus-visible{outline-color:#48245f}
#viewer.immersive-reader .book-stage{position:absolute;inset:0;min-height:0}.immersive-reader .page-edge.previous{left:max(6px,env(safe-area-inset-left))}.immersive-reader .page-edge.next{right:max(6px,env(safe-area-inset-right))}
#viewer.immersive-reader{padding:0}.immersive-reader #viewimage{box-shadow:none}.immersive-reader #viewbody{outline-offset:-4px}
.photo-dialog.immersive-reader{position:fixed;inset:0;width:calc(100vw - 32px);height:calc(100vh - 32px);height:calc(100dvh - 32px);max-height:none;max-width:1800px;padding:0;overflow:hidden;background:#30263f}
.photo-stage{position:absolute;inset:0;overflow:hidden;touch-action:none;user-select:none;cursor:zoom-in}.photo-stage.zoom{cursor:grab}.photo-stage img{position:absolute;left:50%;top:50%;max-width:none;max-height:none;pointer-events:none;user-select:none;-webkit-user-drag:none;transform-origin:center;object-fit:contain}
.immersive-reader .reader-load{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;color:#48245f;padding:10px;border-radius:8px}
@media(max-width:700px),(orientation:landscape) and (max-height:600px) and (max-width:1400px){#viewer.immersive-reader,.photo-dialog.immersive-reader{inset:0;margin:0;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;border-radius:0;border:0}.immersive-reader .reader-hud{gap:4px}.immersive-reader .reader-hud button{padding:7px 9px}}
#viewer.immersive-reader.reader-fullscreen-active,.photo-dialog.immersive-reader.reader-fullscreen-active{width:100%;height:100%;max-width:none;margin:0;border-radius:0}
@media(prefers-reduced-motion:reduce){.immersive-reader *{animation:none!important;transition:none!important}}
/* Keep the photographed page clear of display cutouts as well as the controls. */
#viewer.immersive-reader .book-stage,.photo-dialog.immersive-reader .photo-stage{inset:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
/* Inactivity never removes keyboard access or the persistent Close/Tools controls. */
.immersive-reader .page-edge,.immersive-reader .reader-count,.immersive-reader .reader-fullscreen{transition:opacity .25s ease}
.immersive-reader.controls-idle .page-edge,.immersive-reader.controls-idle .reader-count,.immersive-reader.controls-idle .reader-fullscreen{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.immersive-reader .page-edge,.immersive-reader .reader-count,.immersive-reader .reader-fullscreen{transition:none}}
