/* Single-page comic surface; the reader header, footer and page count stay shared. */
.comic-viewport{position:relative;isolation:isolate;height:100%;min-height:0;overflow:auto!important;padding:0!important;background:var(--paper,#f4f2ec);touch-action:pan-y pinch-zoom;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:auto!important}
.comic-stage{position:relative;box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:100%;min-height:100%;padding:12px;user-select:none;-webkit-user-select:none}
.comic-fit-width .comic-stage{align-items:flex-start}
.comic-page-image{display:block;flex:none;max-width:none!important;max-height:none!important;object-fit:contain;opacity:0;box-shadow:0 3px 20px #0000000c;-webkit-user-drag:none;user-select:none;-webkit-user-select:none}
.comic-page-image.is-ready{opacity:1}
.comic-page-image[hidden]{display:none}
.comic-page-status{position:absolute;inset:40% 24px auto;margin:0;text-align:center;color:var(--muted,#6f7972);font-size:15px;line-height:1.8}
.comic-page-status[hidden]{display:none}
.comic-zoom-controls{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:calc(78px + env(safe-area-inset-bottom));z-index:8;display:flex;align-items:center;gap:0;border:1px solid #8b948333;border-radius:24px;background:var(--paper,#fbfaf6);color:var(--text,#263f36);box-shadow:0 4px 16px #0000000f;overflow:hidden}
.comic-zoom-controls button{display:block;min-width:40px;min-height:40px;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;font-size:20px;cursor:pointer;touch-action:manipulation}
.comic-zoom-controls button:nth-child(2){min-width:56px;font-size:12px;font-variant-numeric:tabular-nums}
.comic-zoom-controls button:disabled{opacity:.3;cursor:default}
.comic-zoom-controls button:focus-visible{outline:2px solid currentColor;outline-offset:-4px}
.comic-is-zoomed{touch-action:pan-x pan-y pinch-zoom}
@media(prefers-reduced-motion:no-preference){.comic-page-image{transition:opacity .12s ease}}
@media(min-width:800px){.comic-zoom-controls{right:max(36px,env(safe-area-inset-right));bottom:calc(88px + env(safe-area-inset-bottom))}}
