.reader-book-stage{perspective:2200px;transform-style:preserve-3d;background:radial-gradient(120% 60% at 50% 30%,#ffffff12,#0000 55%),radial-gradient(90% 50% at 50% 95%,#00000080,#0000 70%);overflow:hidden}.reader-book-stage--single{perspective:none}.reader-page-single{position:absolute;inset:clamp(12px,2vw,28px) clamp(12px,3vw,24px)}.reader-page-single-sheet{background:#040404;border-radius:clamp(3px,.6vw,8px);height:100%;position:relative;box-shadow:inset 0 0 0 1px #ffffff0f,0 14px 22px #0000004d}.reader-book-gutter{display:none}.reader-page-shell{transform-style:preserve-3d;backface-visibility:visible;will-change:transform;contain:layout paint;position:absolute;inset:0}.reader-page-shell:after{content:"";pointer-events:none;opacity:.44;background:linear-gradient(90deg,#00000047,#0000 18% 82%,#0000003d);position:absolute;inset:0}.reader-page-shell--flipping:after{opacity:.62}.reader-page-shell--active{z-index:2}.reader-page-shell--flipping{z-index:3;pointer-events:none}.reader-page-shell--spread:before,.reader-page-shell--spread:after,.reader-book-stage--single .reader-page-shell:after,.reader-page-shell--leaf:before,.reader-page-shell--leaf:after{display:none}.reader-page-leaf{transform-style:preserve-3d;will-change:transform, filter;position:absolute;inset:0}.reader-page-leaf--forward{transform-origin:0;animation:1.04s cubic-bezier(.18,.78,.24,1) forwards reader-page-leaf-full-forward}.reader-page-leaf--backward{transform-origin:100%;animation:1.04s cubic-bezier(.18,.78,.24,1) forwards reader-page-leaf-full-backward}.reader-page-leaf-face{backface-visibility:hidden;transform-style:preserve-3d;position:absolute;inset:0;overflow:hidden}.reader-page-leaf-face--front{background:#050505}.reader-page-leaf-face--back{background:linear-gradient(#f9f5ecfa,#e9e4dafa);transform:rotateY(180deg)}.reader-page-leaf-gloss,.reader-page-leaf-paper,.reader-page-leaf-paper-shadow{pointer-events:none;position:absolute;inset:0}.reader-page-leaf-gloss{opacity:.76;background:linear-gradient(90deg,#ffffff08,#ffffff24 16%,#ffffff57 34%,#0000001f 62%,#00000047)}.reader-page-leaf-paper{background:linear-gradient(90deg,#ffffffeb,#f3eee6f2 48%,#d6cec2fa)}.reader-page-leaf-paper-shadow{mix-blend-mode:multiply;background:linear-gradient(90deg,#00000038,#0000 34%,#00000029)}.reader-page-spread{--reader-spread-gap:0px;gap:var(--reader-spread-gap);grid-template-columns:1fr 1fr;align-items:stretch;display:grid;position:absolute;inset:clamp(12px,2vw,28px) clamp(10px,2.4vw,36px);overflow:hidden}.reader-page-half{background:#040404;border-radius:clamp(3px,.6vw,8px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f,0 14px 22px #0000004d}.reader-page-half--left{grid-column:1}.reader-page-half--right{grid-column:2}.reader-page-half--active,.reader-page-half--static{z-index:1}.reader-page-half--static:after{content:"";pointer-events:none;background:linear-gradient(90deg,#00000024,#0000 28% 78%,#0003);position:absolute;inset:0}.reader-page-half--turning-out,.reader-page-half--turning-in{width:50%;transform-style:preserve-3d;will-change:transform, opacity, filter;backface-visibility:hidden;grid-column:auto;position:absolute;top:0;bottom:0}.reader-page-half--turning-out.reader-page-half--left,.reader-page-half--turning-in.reader-page-half--left{left:0;right:auto}.reader-page-half--turning-out.reader-page-half--right,.reader-page-half--turning-in.reader-page-half--right{left:50%;right:auto}.reader-page-half--turning-out{z-index:3}.reader-page-half--turning-in{z-index:2;opacity:0}.reader-page-half--turning-out-forward{transform-origin:0;opacity:1;animation:1.04s cubic-bezier(.22,.61,.36,1) both reader-spread-turn-out-forward;transform:rotateY(0)}.reader-page-half--turning-out-backward{transform-origin:100%;opacity:1;animation:1.04s cubic-bezier(.22,.61,.36,1) both reader-spread-turn-out-backward;transform:rotateY(0)}.reader-page-half--turning-in-forward{transform-origin:100%;opacity:0;animation:1.04s cubic-bezier(.22,.61,.36,1) both reader-spread-turn-in-forward;transform:rotateY(92deg)}.reader-page-half--turning-in-backward{transform-origin:0;opacity:0;animation:1.04s cubic-bezier(.22,.61,.36,1) both reader-spread-turn-in-backward;transform:rotateY(-92deg)}.reader-page-paper-fallback{background:linear-gradient(#f7f2e8f5,#e6dfd2fa);position:absolute;inset:0}.reader-page-shell--forward{transform-origin:0 0;animation:.94s cubic-bezier(.18,.78,.24,1) forwards reader-page-flip-forward}.reader-page-shell--backward{transform-origin:100% 0;animation:.94s cubic-bezier(.18,.78,.24,1) forwards reader-page-flip-backward}.reader-page-shell--forward.reader-page-shell--landscape{animation:.98s cubic-bezier(.16,.8,.22,1) forwards reader-page-flip-forward-wide}.reader-page-shell--backward.reader-page-shell--landscape{animation:.98s cubic-bezier(.16,.8,.22,1) forwards reader-page-flip-backward-wide}.reader-page-shell--forward:before{transform-origin:0 0;background:radial-gradient(120% 95% at 0 0,#ffffff6b,#ffffff08 58%,#0000 72%),linear-gradient(140deg,#ffffff40,#0000 58%);animation:.94s cubic-bezier(.18,.78,.24,1) forwards reader-corner-grab-forward;left:0}.reader-page-shell--forward.reader-page-shell--landscape:before{background:radial-gradient(140% 110% at 0 0,#ffffff85,#ffffff14 54%,#0000 72%),linear-gradient(140deg,#ffffff47,#ffffff14 36%,#0000 66%);width:44%;height:42%;animation:.98s cubic-bezier(.16,.8,.22,1) forwards reader-corner-grab-forward-wide}.reader-page-shell--backward:before{transform-origin:100% 0;background:radial-gradient(120% 95% at 100% 0,#ffffff6b,#ffffff08 58%,#0000 72%),linear-gradient(220deg,#ffffff40,#0000 58%);animation:.94s cubic-bezier(.18,.78,.24,1) forwards reader-corner-grab-backward;right:0}.reader-page-shell--backward.reader-page-shell--landscape:before{background:radial-gradient(140% 110% at 100% 0,#ffffff85,#ffffff14 54%,#0000 72%),linear-gradient(220deg,#ffffff47,#ffffff14 36%,#0000 66%);width:44%;height:42%;animation:.98s cubic-bezier(.16,.8,.22,1) forwards reader-corner-grab-backward-wide}.reader-page-shell--enter-forward,.reader-page-shell--enter-backward{animation:none}.reader-page-image{object-fit:contain;backface-visibility:hidden;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 14px 16px #0000004d);width:100%;height:100%;position:absolute;inset:0;transform:translateZ(0)}.reader-page-image--sheet{object-fit:contain;background:#0a0a0a}.reader-page-image--thumb{z-index:0;transition:opacity .18s ease-out}.reader-page-image--display{z-index:1;opacity:0;visibility:hidden;filter:blur(1px);transition:opacity .18s ease-out,filter .18s ease-out}.reader-page-image--display.reader-page-image--display-ready{opacity:1;visibility:visible;filter:blur()}.reader-page-image--highres{z-index:2;opacity:0;visibility:hidden;filter:blur(1px);transition:opacity .18s ease-out,filter .18s ease-out}.reader-page-image--highres.reader-page-image--ready{opacity:1;visibility:visible;filter:blur()}.reader-page-half--left .reader-page-image--sheet{object-position:right center}.reader-page-half--right .reader-page-image--sheet{object-position:left center}.reader-page-image--half{width:200%;max-width:none}.reader-page-image--half-left{left:0}.reader-page-image--half-right{left:-100%}@keyframes reader-page-flip-forward{0%{opacity:1;transform:rotateY(0)rotateX(0)translateZ(0)}28%{transform:rotateY(-18deg)rotateX(.8deg)translateZ(0)}66%{transform:rotateY(-62deg)rotateX(0)translateZ(0)}to{opacity:0;transform:rotateY(-88deg)rotateX(0)translateZ(0)}}@keyframes reader-page-flip-backward{0%{opacity:1;transform:rotateY(0)rotateX(0)translateZ(0)}28%{transform:rotateY(18deg)rotateX(.8deg)translateZ(0)}66%{transform:rotateY(62deg)rotateX(0)translateZ(0)}to{opacity:0;transform:rotateY(88deg)rotateX(0)translateZ(0)}}@keyframes reader-page-flip-forward-wide{0%{opacity:1;transform:rotateY(0)rotateX(0)skewY(0)translate(0)translateZ(0)}18%{transform:rotateY(-10deg)rotateX(.8deg)skewY(-.5deg)translate(.2%)translateZ(0)}44%{transform:rotateY(-28deg)rotateX(1deg)skewY(-1.2deg)translate(.9%)translateZ(0)}70%{transform:rotateY(-56deg)rotateX(.4deg)skewY(-1.8deg)translate(1.9%)translateZ(0)}to{opacity:0;transform:rotateY(-88deg)rotateX(0)skewY(-2deg)translate(2.8%)translateZ(0)}}@keyframes reader-page-flip-backward-wide{0%{opacity:1;transform:rotateY(0)rotateX(0)skewY(0)translate(0)translateZ(0)}18%{transform:rotateY(10deg)rotateX(.8deg)skewY(.5deg)translate(-.2%)translateZ(0)}44%{transform:rotateY(28deg)rotateX(1deg)skewY(1.2deg)translate(-.9%)translateZ(0)}70%{transform:rotateY(56deg)rotateX(.4deg)skewY(1.8deg)translate(-1.9%)translateZ(0)}to{opacity:0;transform:rotateY(88deg)rotateX(0)skewY(2deg)translate(-2.8%)translateZ(0)}}@keyframes reader-spread-turn-out-forward{0%{opacity:1;filter:drop-shadow(0 10px 14px #00000038);transform:rotateY(0)}42%{opacity:1;filter:drop-shadow(-10px 9px 18px #00000047);transform:rotateY(-76deg)}50%{opacity:.82;filter:drop-shadow(-8px 8px 14px #0000003d);transform:rotateY(-89deg)}58%{opacity:.18;filter:drop-shadow(-4px 5px 8px #0000001f);transform:rotateY(-96deg)}to{opacity:0;filter:drop-shadow(-4px 5px 8px #0000001f);transform:rotateY(-96deg)}}@keyframes reader-spread-turn-out-backward{0%{opacity:1;filter:drop-shadow(0 10px 14px #00000038);transform:rotateY(0)}42%{opacity:1;filter:drop-shadow(10px 9px 18px #00000047);transform:rotateY(76deg)}50%{opacity:.82;filter:drop-shadow(8px 8px 14px #0000003d);transform:rotateY(89deg)}58%{opacity:.18;filter:drop-shadow(4px 5px 8px #0000001f);transform:rotateY(96deg)}to{opacity:0;filter:drop-shadow(4px 5px 8px #0000001f);transform:rotateY(96deg)}}@keyframes reader-spread-turn-in-forward{0%{opacity:0;filter:drop-shadow(-8px 8px 14px #0003);transform:rotateY(92deg)}50%{opacity:.42;filter:drop-shadow(-8px 8px 14px #0003);transform:rotateY(92deg)}58%{opacity:.82;filter:drop-shadow(-7px 8px 13px #0000002e);transform:rotateY(86deg)}66%{opacity:1;filter:drop-shadow(-7px 8px 13px #0003);transform:rotateY(72deg)}to{opacity:1;filter:drop-shadow(0 10px 14px #0003);transform:rotateY(0)}}@keyframes reader-spread-turn-in-backward{0%{opacity:0;filter:drop-shadow(8px 8px 14px #0003);transform:rotateY(-92deg)}50%{opacity:.42;filter:drop-shadow(8px 8px 14px #0003);transform:rotateY(-92deg)}58%{opacity:.82;filter:drop-shadow(7px 8px 13px #0000002e);transform:rotateY(-86deg)}66%{opacity:1;filter:drop-shadow(7px 8px 13px #0003);transform:rotateY(-72deg)}to{opacity:1;filter:drop-shadow(0 10px 14px #0003);transform:rotateY(0)}}@keyframes reader-page-leaf-full-forward{0%{filter:drop-shadow(0 10px 12px #0000002e);transform:rotateY(0)rotateX(0)translateZ(0)}18%{transform:rotateY(-8deg)rotateX(.4deg)translateZ(0)}44%{transform:rotateY(-26deg)rotateX(.8deg)translateZ(0)}72%{filter:drop-shadow(-12px 12px 24px #00000047);transform:rotateY(-74deg)rotateX(.2deg)translateZ(0)}to{filter:drop-shadow(-4px 6px 10px #0000001f);transform:rotateY(-179deg)rotateX(0)translateZ(0)}}@keyframes reader-page-leaf-full-backward{0%{filter:drop-shadow(0 10px 12px #0000002e);transform:rotateY(0)rotateX(0)translateZ(0)}18%{transform:rotateY(8deg)rotateX(.4deg)translateZ(0)}44%{transform:rotateY(26deg)rotateX(.8deg)translateZ(0)}72%{filter:drop-shadow(12px 12px 24px #00000047);transform:rotateY(74deg)rotateX(.2deg)translateZ(0)}to{filter:drop-shadow(4px 6px 10px #0000001f);transform:rotateY(179deg)rotateX(0)translateZ(0)}}@keyframes reader-corner-grab-forward{0%{opacity:0;transform:scale(.94)rotate(0)}20%{opacity:.75;transform:scale(1.02)rotate(-3deg)}62%{opacity:.5;transform:scale(1.06)rotate(-8deg)}to{opacity:0;transform:scale(1.1)rotate(-12deg)}}@keyframes reader-corner-grab-backward{0%{opacity:0;transform:scale(.94)rotate(0)}20%{opacity:.75;transform:scale(1.02)rotate(3deg)}62%{opacity:.5;transform:scale(1.06)rotate(8deg)}to{opacity:0;transform:scale(1.1)rotate(12deg)}}@keyframes reader-corner-grab-forward-wide{0%{opacity:0;transform:scale(.9)rotate(0)}16%{opacity:.9;transform:scale(1.03)rotate(-3deg)}52%{opacity:.68;transform:scale(1.1)rotate(-9deg)}to{opacity:0;transform:scale(1.18)rotate(-16deg)}}@keyframes reader-corner-grab-backward-wide{0%{opacity:0;transform:scale(.9)rotate(0)}16%{opacity:.9;transform:scale(1.03)rotate(3deg)}52%{opacity:.68;transform:scale(1.1)rotate(9deg)}to{opacity:0;transform:scale(1.18)rotate(16deg)}}@keyframes reader-page-enter-forward{0%{filter:brightness(.83);transform:translate(3%)scale(.992)}to{filter:brightness();transform:translate(0)scale(1)}}@keyframes reader-page-enter-backward{0%{filter:brightness(.83);transform:translate(-3%)scale(.992)}to{filter:brightness();transform:translate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.reader-page-shell,.reader-page-shell:after{transition:none!important;animation:none!important}.reader-page-shell--flipping{opacity:0}}
