.book-stage{--book-depth:30px;position:relative;width:100%;aspect-ratio:2/3;perspective:2400px;touch-action:pan-y;cursor:grab;outline-offset:20px;isolation:isolate;-webkit-user-select:none;user-select:none}
.book-stage::after{content:'';position:absolute;z-index:-1;left:12%;right:-6%;bottom:-4%;height:12%;background:radial-gradient(ellipse,#17160d2b 0,transparent 65%);transform:rotate(-7deg);pointer-events:none}
.book-stage:active{cursor:grabbing}.book-stage:focus-visible{outline:2px solid #ad7c27;outline-offset:18px}
.book-model{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateY(17deg) scale(.94);transition:transform .75s cubic-bezier(.18,.73,.2,1);will-change:transform}
.book-stage.dragging .book-model{transition:none}
.book-face{position:absolute;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;outline:1px solid transparent}
.book-face img{width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-drag:none}
.book-front,.book-back{inset:0;background:#080805}
.book-front{transform:translateZ(calc(var(--book-depth) / 2));box-shadow:1px 0 1px #7b704344}
.book-back{transform:rotateY(180deg) translateZ(calc(var(--book-depth) / 2))}
.book-spine,.book-pages{width:var(--book-depth);height:100%;top:0}
.book-spine{left:0;transform:translateX(-50%) rotateY(-90deg);background:#080805}
.book-pages{left:100%;transform:translateX(-50%) rotateY(90deg);background:repeating-linear-gradient(90deg,#eee6cf 0,#eee6cf 1px,#c6bba0 1px,#e4dcc4 2px);border-block:3px solid #171710}
.book-top,.book-bottom{left:0;width:100%;height:var(--book-depth);background:repeating-linear-gradient(0deg,#e8dfc6 0,#e8dfc6 1px,#c6bca2 1px,#e6ddc5 2px);border-inline:3px solid #14140e}
.book-top{top:0;transform:translateY(-50%) rotateX(90deg)}.book-bottom{top:100%;transform:translateY(-50%) rotateX(-90deg)}
.book-interaction{margin-top:27px;text-align:center}.book-interaction>p{font-size:11px;color:var(--muted);margin:0 0 10px;line-height:1.7}.book-drag-icon{font-size:20px;vertical-align:-1px;margin-right:6px;color:var(--gold)}
.book-view-controls{display:flex;justify-content:center;gap:2px;align-items:center;flex-wrap:wrap}.book-view-controls button{border:0;border-bottom:1px solid transparent;background:transparent;color:#5b614f;font-size:11px;line-height:1.4;min-height:42px;padding:8px 15px;transition:color .15s,border-color .15s}
.book-view-controls button:hover{color:var(--ink)}.book-view-controls button[aria-pressed=true]{color:var(--ink);border-color:#9e8654}.book-view-controls #book-enlarge{border-left:1px solid #c5c4b7;margin-left:9px;padding-left:17px;display:inline-flex;gap:12px;align-items:center}.book-view-controls #book-enlarge span{font-size:16px}
.cover-dialog{max-width:780px;padding:24px 35px 28px;background:#efede5;width:calc(100% - 32px)}.cover-dialog-header{position:sticky;top:-24px;background:#efede5;z-index:1;padding-block:5px;display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:23px}.cover-dialog-header h2{font:22px/1.4 var(--serif);letter-spacing:-.03em}.cover-dialog .dialog-close{position:static;flex:none}.cover-dialog>img{width:100%;height:auto;margin:auto}.cover-dialog[data-view=spine]>img{width:80px;max-height:none}.cover-dialog>p{font-size:11px;color:var(--muted);margin:20px 0 0;text-align:center}
body:not(.js) .book-interaction{display:none}body:not(.js) .book-model{transform:none}
@media(max-width:1190px){.book-stage{--book-depth:26px}.book-interaction>p{font-size:10px}.book-view-controls button{padding-inline:12px}.book-view-controls #book-enlarge{margin-left:7px;padding-left:12px}.book-caption{margin-top:17px}}
@media(max-width:950px){.book-stage{--book-depth:23px}.book-interaction>p{font-size:10px;max-width:245px;margin-inline:auto}.book-view-controls button{padding-inline:10px;font-size:10px}.book-view-controls #book-enlarge{padding-left:11px;margin-left:5px;gap:7px}}
@media(max-width:700px){.book-stage{--book-depth:23px;perspective:1900px}.book-interaction{margin-top:21px}.book-interaction>p{font-size:11px;max-width:none;white-space:normal}.book-view-controls button{padding-inline:13px;font-size:11px;min-height:44px}.book-view-controls #book-enlarge{margin-left:5px;padding-left:12px}.cover-dialog{padding:16px 17px 21px}.cover-dialog-header{margin-bottom:17px}.cover-dialog-header h2{font-size:21px}}
@media(max-width:370px){.book-view-controls button{padding-inline:10px;font-size:10px}.book-view-controls #book-enlarge{padding-left:9px;gap:7px}.book-interaction>p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.book-model{transition:none!important}}
@media print{.book-interaction,.book-stage::after{display:none}.book-model{transform:none}.book-front{transform:none}.book-back,.book-spine,.book-pages,.book-top,.book-bottom{display:none}}

.cover-transcript{margin-top:20px;border-top:1px solid #c9c3b3;padding-top:12px}.cover-transcript>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px}.cover-transcript>summary>span{font-size:22px}.cover-transcript[open]>summary>span{transform:rotate(45deg)}.cover-transcript>div{font:19px/1.8 var(--serif);padding-top:15px}.cover-transcript p{margin:0 0 1.2em}

/* The assigned ISBN is rendered as a separate website overlay. Print artwork stays untouched. */
.display-barcode{position:absolute;left:62.5%;top:83.8735%;width:33.3333%;height:13.3488%;background:#fff;pointer-events:none;overflow:hidden}
.display-barcode svg{display:block;width:100%;height:100%}
.cover-enlarged-art{position:relative;width:100%;margin-inline:auto}
.cover-enlarged-art>img{display:block;width:100%;height:auto}
.cover-enlarged-art .display-barcode{display:none}
.cover-dialog[data-view=back] .cover-enlarged-art .display-barcode{display:block}
.cover-dialog[data-view=spine] .cover-enlarged-art{width:80px}
