.book-preview-dialog{width:min(900px,calc(100% - 28px));max-width:none;max-height:min(94vh,1000px);padding:0;border:1px solid #dce4ed;border-radius:22px;background:#f6f9fc;color:#111d38;box-shadow:0 28px 90px #071a3540;overflow:auto}.book-preview-dialog::backdrop{background:#071326b8;backdrop-filter:blur(7px)}.book-preview-modal{padding:clamp(18px,4vw,34px)}.book-preview-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid #dfe7ef}.book-preview-header h2{margin:0;font:900 clamp(1.15rem,3vw,1.65rem)/1.15 'Nunito Sans',sans-serif;letter-spacing:-.035em}.preview-eyebrow{margin:0 0 5px;color:#0875e8;font:800 .65rem/1 Inter,Arial,sans-serif;letter-spacing:.16em}.preview-close{width:42px;height:42px;border:1px solid #dce4ed;border-radius:50%;background:#fff;color:#23324d;font-size:1.7rem;line-height:1;cursor:pointer}.preview-close:hover{background:#eef5fc}.preview-status{min-height:56vh;display:grid;place-items:center;text-align:center;color:#53647c;font-size:.95rem}.preview-status.is-error{color:#b42318}.preview-reader[hidden]{display:none}.preview-stage{min-height:58vh;display:grid;place-items:center;padding:28px 14px 16px;perspective:1800px}.preview-book{display:grid;grid-template-columns:minmax(20px,.12fr) minmax(0,1fr);align-items:stretch;max-width:760px;width:min(100%,680px);filter:drop-shadow(0 22px 24px #102a4b24);transform-style:preserve-3d}.preview-left-page{min-height:300px;background:linear-gradient(90deg,#d8e0e9,#fff 34%,#f9fbfd);border:1px solid #d3dce6;border-right:0;border-radius:8px 0 0 8px;box-shadow:inset -9px 0 14px #122b4512}.preview-right-page{position:relative;background:white;border:1px solid #d3dce6;border-left:1px solid #c6d0dc;border-radius:0 8px 8px 0;overflow:hidden;transform-origin:left center;backface-visibility:hidden}.preview-right-page:before{content:'';position:absolute;z-index:1;inset:0 auto 0 0;width:10px;background:linear-gradient(90deg,#182b45a0,transparent);pointer-events:none}.preview-right-page canvas{display:block;max-width:100%;height:auto;margin:auto}.preview-book.turn-next .preview-right-page{animation:page-turn-next .54s cubic-bezier(.2,.75,.25,1)}.preview-book.turn-previous .preview-right-page{animation:page-turn-previous .54s cubic-bezier(.2,.75,.25,1)}@keyframes page-turn-next{0%{transform:rotateY(0);filter:brightness(1)}45%{transform:rotateY(-68deg);filter:brightness(.7)}100%{transform:rotateY(0);filter:brightness(1)}}@keyframes page-turn-previous{0%{transform:rotateY(0);filter:brightness(1)}45%{transform:rotateY(68deg);filter:brightness(.7)}100%{transform:rotateY(0);filter:brightness(1)}}.preview-controls{display:flex;align-items:center;justify-content:center;gap:clamp(12px,5vw,42px);color:#53647c;font-size:.82rem}.preview-controls button{min-height:42px;border:1px solid #cbd8e6;border-radius:10px;background:#fff;padding:0 15px;color:#123e72;font-weight:700;cursor:pointer}.preview-controls button:hover:not(:disabled){border-color:#0875e8;color:#0757b7}.preview-controls button:disabled{opacity:.45;cursor:not-allowed}.preview-footnote{margin:17px 0 0;text-align:center;color:#7b8797;font-size:.7rem}.book-preview-open{cursor:zoom-in}.book-preview-open:focus-visible{outline:3px solid #80baff;outline-offset:4px}.book-actions{display:flex;align-items:center;gap:7px}.preview-button{border:1px solid #b8d6f3;background:#f5faff;color:#0757b7;border-radius:7px;padding:9px 10px;font-size:.71rem;font-weight:700;white-space:nowrap;cursor:pointer}.preview-button:hover{background:#e8f4ff;border-color:#0875e8}@media(max-width:700px){.book-preview-dialog{width:calc(100% - 16px);max-height:94dvh;border-radius:16px}.preview-stage{min-height:50vh;padding:18px 0 12px}.preview-book{grid-template-columns:minmax(12px,.09fr) minmax(0,1fr)}.preview-left-page{min-height:260px}.preview-controls{gap:10px;font-size:.72rem}.preview-controls button{padding:0 11px}.preview-controls button span{font-size:.69rem}.book-actions{width:100%;flex-direction:column;align-items:stretch}.preview-button{width:100%;text-align:center}.preview-book.turn-next .preview-right-page,.preview-book.turn-previous .preview-right-page{animation-duration:.42s}}@media(prefers-reduced-motion:reduce){.preview-book.turn-next .preview-right-page,.preview-book.turn-previous .preview-right-page{animation:none}}
