@property --book-fold{syntax:"<number>";inherits:true;initial-value:0}.book-cover-screen{--book-cover:#fbf5e6;--book-cover-ink:#d63a00;--book-cover-height:min(68dvh,720px,calc(100dvh - 190px));--book-cover-width:calc(var(--book-cover-height) * 0.669);--book-cover-scale:min(var(--book-cover-height),calc(var(--book-cover-width) / 0.669));--book-fold:0;position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;overflow:hidden;transition:opacity .26s ease,--book-fold .8s cubic-bezier(.45,.05,.25,1);animation:book-cover-screen-enter .3s ease backwards}.book-cover-screen:before{--book-hole-left:calc(var(--book-hole-front-x, 0px) + min(0px, (1 - 2 * var(--book-fold)) * var(--book-cover-width)));--book-hole-right:calc(var(--book-hole-front-x, 0px) + var(--book-cover-width) * min(1, var(--book-fold) * 1000));--book-hole-bottom:calc(var(--book-hole-y, 0px) + var(--book-cover-height));position:absolute;inset:0;z-index:-1;content:"";background:radial-gradient(ellipse 80% 60% at 50% 35%,hsl(var(--primary)/.13),transparent 70%),hsl(var(--background));clip-path:polygon(evenodd,0 0,100% 0,100% 100%,0 100%,0 0,var(--book-hole-left) var(--book-hole-y,0),var(--book-hole-right) var(--book-hole-y,0),var(--book-hole-right) var(--book-hole-bottom),var(--book-hole-left) var(--book-hole-bottom),var(--book-hole-left) var(--book-hole-y,0))}.book-cover-screen[data-side=back]:before{--book-hole-left:var(--book-hole-back-x,0px);--book-hole-right:calc(var(--book-hole-back-x, 0px) + var(--book-cover-width) * min(1, var(--book-fold) * 1000) * max(1, 2 * var(--book-fold)))}.book-cover-screen[data-arrived]:before{animation:book-cover-screen-enter .22s ease backwards}.dark .book-cover-screen{--book-cover:#060606;--book-cover-ink:#ff4500}.book-cover-bar{display:flex;justify-content:space-between;padding:6px 12px}.book-cover-scene{display:grid;flex:1;place-items:center;min-height:0}.book-cover-object{position:relative;width:var(--book-cover-width);height:var(--book-cover-height);border-radius:4px;box-shadow:0 24px 48px -16px #00000059,0 4px 14px #0000001f;transform:translate(var(--book-rest-x,0),var(--book-open-y,0));transition:transform .6s cubic-bezier(.4,0,.2,1),box-shadow .4s ease;animation:book-cover-enter .6s cubic-bezier(.2,.7,.2,1) backwards}.book-reader .book-cover-back,.book-reader .book-cover-front{position:absolute;inset:0;color:var(--book-cover-ink);background:var(--book-cover);border-radius:4px;box-shadow:inset 0 0 0 1px #00000014;transition:opacity .38s ease}.dark .book-reader .book-cover-back,.dark .book-reader .book-cover-front{box-shadow:inset 0 0 0 1px #ffffff1c}.book-reader .book-cover-front{display:grid;place-items:center;width:100%;cursor:pointer}.book-reader .book-cover-front:active,.book-reader .book-cover-front:hover{background:var(--book-cover);transform:none}.book-reader .book-cover-front span{font-family:Times New Roman,Times,Georgia,serif;font-size:calc(var(--book-cover-scale) * .49);font-weight:700;line-height:1}.book-reader .book-cover-back{padding:calc(var(--book-cover-scale) * .032) calc(var(--book-cover-scale) * .034);overflow:hidden;font-family:Times New Roman,Times,Georgia,serif;font-size:calc(var(--book-cover-scale) * .0143);line-height:1.42;text-align:left}.book-reader .book-cover-back p,.book-reader .book-cover-back ul{margin:0 0 .85em}.book-reader .book-cover-back>:last-child{margin-bottom:0}.book-reader .book-cover-back-open{position:absolute;inset:0;cursor:pointer;background:transparent;border-radius:4px}.book-cover-screen[data-side=front] .book-cover-back-open{display:none}.book-cover-screen[data-side=back] .book-cover-front,.book-cover-screen[data-side=front] .book-cover-back{pointer-events:none;opacity:0}.book-cover-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;padding:6px 16px max(6px,env(safe-area-inset-bottom));animation:book-footer-enter .5s cubic-bezier(.2,.7,.2,1) .25s backwards}.book-cover-actions button{display:inline-flex;gap:8px;align-items:center;min-height:38px;padding:0 18px;font-size:13px;border:1px solid hsl(var(--border));border-radius:999px}.book-reader .book-cover-open,.book-reader .book-cover-open:hover:not(:disabled){font-weight:600;color:hsl(var(--primary-foreground));background:hsl(var(--primary));border-color:transparent;box-shadow:0 6px 20px hsl(var(--primary)/.35)}.book-cover-actions,.book-cover-bar{transition:opacity .3s ease}.book-cover-screen[data-pose=open]{pointer-events:none}.book-cover-screen[data-pose=open] .book-cover-actions,.book-cover-screen[data-pose=open] .book-cover-bar{opacity:0}.book-cover-screen[data-pose=open] .book-cover-object{box-shadow:none;transform:translate(var(--book-open-x,0),var(--book-open-y,0))}.book-cover-screen[data-pose=open]{--book-fold:1}.book-reader .book-cover-front{clip-path:inset(0 calc(var(--book-fold) * 100%) 0 0)}.book-reader .book-cover-back{clip-path:inset(0 0 0 calc(var(--book-fold) * 100%))}.book-cover-flap{position:absolute;top:0;bottom:0;left:calc((1 - 2 * var(--book-fold)) * 100%);width:calc(var(--book-fold) * 100%);pointer-events:none;background:linear-gradient(to right,rgb(0 0 0/.16),rgb(0 0 0/.02) 12%,rgb(255 255 255/var(--book-gleam,.22)) 58%,rgb(0 0 0/.06) 86%,rgb(0 0 0/.32)),var(--book-cover);box-shadow:-14px 0 28px rgb(0 0 0/.28);opacity:min(1,calc((1 - var(--book-fold)) * 14))}.book-cover-screen[data-side=back] .book-cover-flap{left:calc(var(--book-fold) * 100%);transform:scaleX(-1)}.book-cover-fold{position:absolute;inset:0;overflow:hidden;pointer-events:none}.book-cover-shade{position:absolute;top:0;bottom:0;left:calc((1 - var(--book-fold)) * 100%);width:72px;background:linear-gradient(90deg,rgb(0 0 0/.28),transparent);opacity:calc(var(--book-fold) * (1 - var(--book-fold)) * 4)}.book-cover-screen[data-side=back] .book-cover-shade{right:calc((1 - var(--book-fold)) * 100%);left:auto;transform:scaleX(-1)}.book-cover-screen[data-side=back][data-pose=open] .book-cover-object{transform:translate(var(--book-back-x,0),var(--book-open-y,0))}.book-cover-screen[data-motion=opening]{opacity:0;transition-delay:calc(var(--book-travel, 0s) + .8s),var(--book-travel,0s)}.book-cover-screen[data-motion=closing] .book-cover-actions,.book-cover-screen[data-motion=closing] .book-cover-bar,.book-cover-screen[data-motion=closing] .book-cover-object{transition-delay:.8s}.book-cover-screen[data-settling] .book-cover-object{transition:none}.book-cover-screen[data-arrived],.book-cover-screen[data-arrived] .book-cover-actions,.book-cover-screen[data-arrived] .book-cover-object{animation:none}@keyframes book-cover-enter{0%{opacity:0;transform:translateY(28px) scale(.96)}}@keyframes book-cover-screen-enter{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.book-cover-actions,.book-cover-object,.book-cover-screen{animation:none}.book-cover-object,.book-cover-screen,.book-cover-screen:before,.book-reader .book-cover-back,.book-reader .book-cover-front{transition:none}}