:root{color-scheme:dark;--blue:#063bcc;--red:#ed1010;--ink:#061633}
*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden}
body.cr-viewer{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background:#061431;color:#fff}
.cr-backdrop{position:fixed;inset:0;background-image:linear-gradient(115deg,var(--cr-left) 0%,var(--cr-left-mid) 42%,var(--cr-right) 100%),linear-gradient(0deg,rgba(0,0,0,.42),rgba(0,0,0,.08)),var(--cr-background);background-size:cover;background-position:center;filter:saturate(.95);transform:scale(1.03)}
.cr-backdrop:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,transparent 0 24%,rgba(1,8,28,.7) 100%),repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 12px)}
.cr-app{position:relative;z-index:1;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:8px;padding:clamp(8px,1.4vh,18px) clamp(10px,2vw,30px) max(8px,env(safe-area-inset-bottom))}
.cr-header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1px;min-height:0}
.cr-logo-link{display:block;line-height:0;border-radius:10px;outline-offset:4px}
.cr-logo{display:block;width:min(400px,72vw);height:clamp(120px,22vh,250px);object-fit:contain;filter:drop-shadow(0 5px 13px rgba(0,0,0,.45))}
.cr-edition{font-size:clamp(9px,1.1vw,13px);letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.78);font-weight:700}
.cr-reader{min-height:0;display:flex;align-items:center;justify-content:center;perspective:2200px;overflow:hidden;border-radius:8px;touch-action:none}
.cr-loading{display:flex;flex-direction:column;align-items:center;gap:9px;padding:26px 34px;border:1px solid rgba(255,255,255,.2);background:rgba(3,13,38,.72);border-radius:18px;box-shadow:0 18px 55px rgba(0,0,0,.35);backdrop-filter:blur(12px)}
.cr-loading[hidden]{display:none!important}
.cr-loading small{opacity:.7}.cr-spinner{width:34px;height:34px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.cr-book{position:relative;display:grid;grid-template-columns:1fr 1fr;transform-style:preserve-3d;transition:width .16s,height .16s;filter:drop-shadow(0 20px 26px rgba(0,0,0,.5));touch-action:none;user-select:none;-webkit-user-select:none;cursor:pointer}
.cr-book.is-zoomed{cursor:grab}.cr-book.is-dragging{cursor:grabbing;transition:none}
.cr-book.is-cover{grid-template-columns:1fr;transform:translateX(0)}
.cr-page{display:block;width:100%;height:100%;padding:clamp(7px,1vw,14px);background:#fff;object-fit:contain;backface-visibility:hidden;touch-action:none}
.cr-left{border-radius:5px 0 0 5px;box-shadow:inset -14px 0 18px -18px #000}.cr-right{border-radius:0 5px 5px 0;box-shadow:inset 14px 0 18px -18px #000}.cr-book.is-cover .cr-left{display:none}.cr-book.is-cover .cr-right{border-radius:5px}
.cr-book-shadow{position:absolute;z-index:-1;inset:1.5% 1% -1.5%;background:#090e1c;border-radius:8px;box-shadow:0 15px 50px rgba(0,0,0,.65)}
.cr-flip{display:none;position:absolute;z-index:5;top:0;right:0;width:50%;height:100%;transform-style:preserve-3d;transform-origin:left center;will-change:transform,filter}
.cr-book.is-cover .cr-flip{width:100%}
.cr-flip.active{display:block;animation:turnNext .92s cubic-bezier(.58,.01,.28,1) forwards}
.cr-flip.active.previous{right:50%;transform-origin:right center;animation:turnPrev .92s cubic-bezier(.58,.01,.28,1) forwards}
.cr-flip-face{position:absolute;inset:0;backface-visibility:hidden;background:#fff;overflow:hidden}.cr-flip-face canvas{width:100%;height:100%;padding:clamp(7px,1vw,14px);background:#fff}.cr-flip-front{box-shadow:-5px 0 14px rgba(0,0,0,.25)}.cr-flip-back{transform:rotateY(180deg);box-shadow:5px 0 14px rgba(0,0,0,.25)}
@keyframes turnNext{0%{transform:rotateY(0) skewY(0);filter:brightness(1)}38%{filter:brightness(.82)}52%{transform:rotateY(-92deg) skewY(-1.2deg);filter:brightness(.68);box-shadow:-42px 8px 48px rgba(0,0,0,.52)}72%{filter:brightness(.88)}100%{transform:rotateY(-180deg) skewY(0);filter:brightness(1)}}
@keyframes turnPrev{0%{transform:rotateY(0) skewY(0);filter:brightness(1)}38%{filter:brightness(.82)}52%{transform:rotateY(92deg) skewY(1.2deg);filter:brightness(.68);box-shadow:42px 8px 48px rgba(0,0,0,.52)}72%{filter:brightness(.88)}100%{transform:rotateY(180deg) skewY(0);filter:brightness(1)}}
.cr-toolbar{justify-self:center;display:flex;align-items:center;gap:5px;padding:5px 8px;background:rgba(2,11,32,.82);border:1px solid rgba(255,255,255,.17);border-radius:999px;box-shadow:0 10px 28px rgba(0,0,0,.34);backdrop-filter:blur(15px)}
.cr-toolbar button,.cr-toolbar a{border:0;background:transparent;color:#fff;width:36px;height:34px;border-radius:50%;display:grid;place-items:center;font:600 22px/1 inherit;text-decoration:none;cursor:pointer;transition:.2s}.cr-toolbar button:hover,.cr-toolbar a:hover{background:rgba(255,255,255,.15)}.cr-toolbar button:disabled{opacity:.28;cursor:not-allowed}.cr-toolbar #cr-counter{min-width:72px;text-align:center;font-size:12px;font-weight:700;letter-spacing:.04em}.cr-toolbar #cr-zoom-level{min-width:42px;text-align:center;font-size:10px;font-weight:800;color:rgba(255,255,255,.82)}.cr-separator{width:1px;height:21px;background:rgba(255,255,255,.2);margin:0 2px}.cr-help{text-align:center;margin:0;font-size:10px;opacity:.62;letter-spacing:.04em}
@media(max-width:700px){.cr-app{gap:6px;padding-left:7px;padding-right:7px}.cr-logo{width:min(330px,82vw);height:clamp(92px,17vh,170px)}.cr-edition{display:none}.cr-book{grid-template-columns:1fr!important}.cr-left{display:none!important}.cr-right{border-radius:4px!important;box-shadow:none!important}.cr-flip,.cr-flip.active.previous{width:100%;right:0!important;transform-origin:left center}.cr-flip.active.previous{transform-origin:right center}.cr-help{font-size:9px}.cr-toolbar{gap:2px;padding:4px}.cr-toolbar button,.cr-toolbar a{width:29px;height:30px}.cr-toolbar #cr-counter{min-width:48px}.cr-toolbar #cr-zoom-level{min-width:34px;font-size:9px}}
@media(max-height:620px){.cr-logo{width:230px;height:72px}.cr-header{flex-direction:row;justify-content:center;gap:15px}.cr-edition{display:block}.cr-help{display:none}}
@media(prefers-reduced-motion:reduce){.cr-flip.active,.cr-flip.active.previous{animation-duration:.01ms}}
