/* A book on a reading table; controls remain outside the printed artwork. */
.reader .physical-book-stage{position:relative;isolation:isolate;aspect-ratio:1.789;margin:0;min-height:220px;background:radial-gradient(ellipse at 50% 40%,#f7eddc 15%,#dfccb2 100%);overflow:hidden;touch-action:pan-y pinch-zoom}
.reader .physical-book-stage:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(4deg,transparent 0 31px,#967b5610 32px,transparent 34px);pointer-events:none}
.reader .physical-book-canvas{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 16px 13px #3c234b24)}
.reader .physical-book-stage .illustrated-spread{height:100%;padding:18px 24px;background:none;animation:none;touch-action:pan-y pinch-zoom}
.reader .physical-book-stage .illustrated-spread img{height:100%;width:auto;max-width:100%;object-fit:contain;margin:auto;box-shadow:0 8px 0 #e2d7c3,0 12px 0 #594171,0 24px 30px #3e2c4c30;border-radius:2px}
.reader .physical-book-stage.physical-ready .illustrated-spread{visibility:hidden}
.reader .physical-book-stage .illustrated-spread:after{display:none}
.reader .physical-book-stage.is-turning{cursor:grabbing}
.reader .reader-touch-hint{position:absolute;bottom:5px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.04em;color:#695671;pointer-events:none}
.reader .reader-progress{z-index:6}
.reader .reader-controls{z-index:6}
.reader .reader-controls .button[aria-busy=true]{cursor:wait}
.reader .reader-options{background:#fbfbf7;border-top:1px solid #d3c3aa}
@media(min-width:900px){.reader .physical-book-stage{min-height:180px;max-height:none;aspect-ratio:auto;height:clamp(180px,calc(94dvh - 220px),650px)}}
@media(max-width:600px){.reader .physical-book-stage{aspect-ratio:1.48;min-height:260px}.reader .physical-book-stage.closed-book{aspect-ratio:.93;max-height:58dvh}.reader .reader-touch-hint{font-size:9px;bottom:8px}.reader .physical-book-stage .illustrated-spread{padding:20px 12px}.reader .physical-book-stage .portrait-page img{width:auto;height:100%}}
@media(prefers-reduced-motion:reduce){.reader .physical-book-stage,.reader .physical-book-canvas{animation:none;transition:none}}
