:root{--book-page:100%;--book-spine:0px;--book-stack:0px}@media (width>=48rem){:root{--book-page:min(72rem, 100% - 3rem);--book-spine:calc((100% - var(--book-page)) / 2);--book-stack:.7rem}}.book{z-index:-1;pointer-events:none;position:fixed;inset:0}.book-paper{inset-block:0;left:var(--book-spine);width:var(--book-page);background-color:var(--card);position:absolute;box-shadow:0 0 2.5rem #00000024}.book-paper:before{content:"";inset-block:0;background-image:linear-gradient(90deg,oklch(0% none none/.22),oklch(0% none none/.07) 30%,#0000);width:4rem;position:absolute;left:0}.book-paper:after{content:"";inset-block:0;background-image:linear-gradient(90deg,oklch(100% 5.96046e-8 none/.12),#0000);width:1.5rem;position:absolute;left:4rem}.book-stack{width:var(--book-stack);background-image:repeating-linear-gradient(90deg, color-mix(in oklch, var(--card) 88%, black) 0 1px, var(--card) 1px 3px);position:absolute;inset-block:.75rem}.book-stack-left{left:calc(var(--book-spine) - var(--book-stack) * var(--read));width:calc(var(--book-stack) * var(--read));border-radius:2px 0 0 2px;box-shadow:-1px 0 3px #00000029}.book-stack-right{left:calc(var(--book-spine) + var(--book-page));width:calc(var(--book-stack) * (1 - var(--read)));border-radius:0 2px 2px 0;box-shadow:1px 0 3px #00000029}.book-shade,.book-gloss{inset-block:0;left:var(--book-spine);width:var(--book-page);position:absolute}.book-shade{view-transition-name:turn-shade}.book-gloss{view-transition-name:turn-gloss}html[data-page-turn]{--bow-r:calc(var(--book-page) * 2)}html[data-page-turn]::view-transition-image-pair(root){perspective:190vw;perspective-origin:var(--book-spine) 40%;overflow:clip}html[data-page-turn]::view-transition-image-pair(turn-gloss){perspective:190vw;perspective-origin:0 40%}html[data-page-turn]::view-transition-image-pair(turn-shade){overflow:clip}html[data-page-turn]::view-transition-group(turn-shade){z-index:5}html[data-page-turn]::view-transition-group(turn-gloss){z-index:6}html[data-page-turn]::view-transition-group(site-nav){z-index:10}html[data-page-turn]::view-transition-group(mobile-nav){z-index:10}html[data-page-turn]::view-transition-group(chapter-prev){z-index:10}html[data-page-turn]::view-transition-group(chapter-next){z-index:10}html[data-page-turn]::view-transition-old(root){mix-blend-mode:normal;animation-duration:.6s;animation-timing-function:linear;animation-fill-mode:both}html[data-page-turn]::view-transition-new(root){mix-blend-mode:normal;animation-duration:.6s;animation-timing-function:linear;animation-fill-mode:both}html[data-page-turn]::view-transition-new(turn-shade){mix-blend-mode:normal;animation-duration:.6s;animation-timing-function:linear;animation-fill-mode:both}html[data-page-turn]::view-transition-new(turn-gloss){mix-blend-mode:normal;animation-duration:.6s;animation-timing-function:linear;animation-fill-mode:both}html[data-page-turn]::view-transition-old(root){background-color:var(--background);transform-origin:var(--book-spine) center}html[data-page-turn]::view-transition-new(root){background-color:var(--background);transform-origin:var(--book-spine) center}html[data-page-turn=forward]::view-transition-old(root){-webkit-mask-image:linear-gradient(90deg, transparent 0 var(--book-spine), black var(--book-spine) calc(var(--book-spine) + var(--book-page)), transparent calc(var(--book-spine) + var(--book-page)));mask-image:linear-gradient(90deg, transparent 0 var(--book-spine), black var(--book-spine) calc(var(--book-spine) + var(--book-page)), transparent calc(var(--book-spine) + var(--book-page)))}html[data-page-turn=back]::view-transition-new(root){-webkit-mask-image:linear-gradient(90deg, transparent 0 var(--book-spine), black var(--book-spine) calc(var(--book-spine) + var(--book-page)), transparent calc(var(--book-spine) + var(--book-page)));mask-image:linear-gradient(90deg, transparent 0 var(--book-spine), black var(--book-spine) calc(var(--book-spine) + var(--book-page)), transparent calc(var(--book-spine) + var(--book-page)))}html[data-page-turn]::view-transition-old(turn-shade){display:none}html[data-page-turn]::view-transition-old(turn-gloss){display:none}html[data-page-turn]::view-transition-new(turn-shade){background-image:linear-gradient(90deg,#00000057 0,#00000030 8%,#00000012 21%,#0000 46%)}html[data-page-turn]::view-transition-new(turn-gloss){transform-origin:0;background-image:linear-gradient(90deg,#0000 0,#0000001a 34%,#ffffff12 58%,#0000001f 82%,#0000 100%),linear-gradient(90deg,#0000 0 45%,#0000000d 75%,#0000001f 100%);background-repeat:no-repeat;background-size:46% 100%,100% 100%}html[data-page-turn=forward]::view-transition-old(root){z-index:2;animation-name:leaf-lift}html[data-page-turn=forward]::view-transition-new(root){z-index:1;animation-name:none}html[data-page-turn=forward]::view-transition-new(turn-shade){animation-name:shade-open}html[data-page-turn=forward]::view-transition-new(turn-gloss){animation-name:gloss-lift}html[data-page-turn=back]::view-transition-old(root){z-index:1;animation-name:none}html[data-page-turn=back]::view-transition-new(root){z-index:2;animation-name:leaf-lay}html[data-page-turn=back]::view-transition-new(turn-shade){animation-name:shade-close}html[data-page-turn=back]::view-transition-new(turn-gloss){animation-name:gloss-lay}@keyframes leaf-lift{0%{opacity:1;clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9783) 50%);transform:rotateY(0)rotate(0)}8%{transform:rotateY(-8deg)rotate(-.4deg)}18%{clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9893) 50%);transform:rotateY(-24deg)rotate(-.9deg)}28%{transform:rotateY(-46deg)rotate(-1.3deg)}38%{clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * 1.0003) 50%);transform:rotateY(-72deg)rotate(-1.2deg)}46%{transform:rotateY(-94deg)rotate(-1deg)}56%{clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * 1.0003) 50%);transform:rotateY(-120deg)rotate(-.8deg)}68%{clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9893) 50%);transform:rotateY(-142deg)rotate(-.5deg)}82%{opacity:1;transform:rotateY(-156deg)rotate(-.2deg)}to{opacity:0;clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9783) 50%);transform:rotateY(-164deg)rotate(0)}}@keyframes leaf-lay{0%{opacity:0;clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9783) 50%);transform:rotateY(-150deg)rotate(-.2deg)}10%{opacity:1;transform:rotateY(-140deg)rotate(-.4deg)}22%{clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9893) 50%);transform:rotateY(-118deg)rotate(-.7deg)}34%{transform:rotateY(-96deg)rotate(-1deg)}44%{clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * 1.0003) 50%);transform:rotateY(-74deg)rotate(-1.2deg)}56%{transform:rotateY(-48deg)rotate(-1.3deg)}70%{clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9893) 50%);transform:rotateY(-26deg)rotate(-.9deg)}84%{transform:rotateY(-10deg)rotate(-.4deg)}to{opacity:1;clip-path:ellipse(var(--bow-r) 340% at calc(var(--book-spine) - var(--book-page) * .9783) 50%);transform:rotateY(0)rotate(0)}}@keyframes gloss-lift{0%{opacity:0;clip-path:ellipse(200% 340% at -97.83%);background-color:#0000;background-position:138% 0,0 0;transform:rotateY(0)rotate(0)}8%{opacity:.5;background-position:126% 0,0 0;transform:rotateY(-8deg)rotate(-.4deg)}18%{opacity:.9;clip-path:ellipse(200% 340% at -98.93%);background-position:106% 0,0 0;transform:rotateY(-24deg)rotate(-.9deg)}28%{opacity:1;background-color:#0000000d;background-position:78% 0,0 0;transform:rotateY(-46deg)rotate(-1.3deg)}38%{clip-path:ellipse(200% 340% at -100.03%);background-color:#0000001a;background-position:44% 0,0 0;transform:rotateY(-72deg)rotate(-1.2deg)}42%{background-color:#00000029}46%{background-position:8% 0,0 0;background-color:color-mix(in srgb, var(--card) 92%, transparent);transform:rotateY(-94deg)rotate(-1deg)}56%{clip-path:ellipse(200% 340% at -100.03%);background-position:-18% 0,0 0;transform:rotateY(-120deg)rotate(-.8deg)}68%{clip-path:ellipse(200% 340% at -98.93%);transform:rotateY(-142deg)rotate(-.5deg)}82%{opacity:1;transform:rotateY(-156deg)rotate(-.2deg)}to{background-position:-18% 0,0 0;background-color:color-mix(in srgb, var(--card) 92%, transparent);opacity:0;clip-path:ellipse(200% 340% at -97.83%);transform:rotateY(-164deg)rotate(0)}}@keyframes gloss-lay{0%{background-position:-18% 0,0 0;background-color:color-mix(in srgb, var(--card) 92%, transparent);opacity:0;clip-path:ellipse(200% 340% at -97.83%);transform:rotateY(-150deg)rotate(-.2deg)}10%{opacity:1;transform:rotateY(-140deg)rotate(-.4deg)}22%{clip-path:ellipse(200% 340% at -98.93%);background-position:-6% 0,0 0;transform:rotateY(-118deg)rotate(-.7deg)}32%{background-color:color-mix(in srgb, var(--card) 92%, transparent)}34%{background-position:8% 0,0 0;transform:rotateY(-96deg)rotate(-1deg)}38%{background-color:#00000024}44%{clip-path:ellipse(200% 340% at -100.03%);background-color:#00000017;background-position:40% 0,0 0;transform:rotateY(-74deg)rotate(-1.2deg)}56%{background-color:#0000000d;background-position:76% 0,0 0;transform:rotateY(-48deg)rotate(-1.3deg)}70%{opacity:.95;clip-path:ellipse(200% 340% at -98.93%);background-position:104% 0,0 0;transform:rotateY(-26deg)rotate(-.9deg)}84%{opacity:.6;background-position:124% 0,0 0;transform:rotateY(-10deg)rotate(-.4deg)}to{opacity:0;clip-path:ellipse(200% 340% at -97.83%);background-color:#0000;background-position:138% 0,0 0;transform:rotateY(0)rotate(0)}}@keyframes shade-open{0%{opacity:0;transform:translate(100%)}8%{opacity:.4;transform:translate(105%)}18%{opacity:.75;transform:translate(110%)}28%{opacity:.95;transform:translate(100%)}38%{opacity:.8;transform:translate(55%)}46%{opacity:.5;transform:translate(0%)}62%{opacity:.22;transform:translate(0%)}78%{opacity:0;transform:translate(0%)}}@keyframes shade-close{0%{opacity:0;transform:translate(0%)}12%{opacity:.22;transform:translate(0%)}24%{opacity:.4;transform:translate(0%)}34%{opacity:.5;transform:translate(0%)}44%{opacity:.8;transform:translate(55%)}56%{opacity:.95;transform:translate(100%)}70%{opacity:.75;transform:translate(110%)}84%{opacity:.4;transform:translate(105%)}to{opacity:0;transform:translate(100%)}}@media (prefers-reduced-motion:reduce){html[data-page-turn]::view-transition-old(root){animation:none}html[data-page-turn]::view-transition-new(root){animation:none}html[data-page-turn]::view-transition-new(turn-shade){animation:none}html[data-page-turn]::view-transition-new(turn-gloss){animation:none}}
