/* The book stays in place: its cover turns, revealing the pages beneath it. */
.vignette-library .vignette-book-pages{opacity:1;transform:none;clip-path:inset(0 0 0 50%);transition:clip-path 3.6s cubic-bezier(.22,.55,.25,1) .35s}
.vignette-library.is-solved .vignette-book-pages{opacity:1;transform:none;clip-path:inset(0)}
.vignette-library .vignette-book-cover::after{content:"";position:absolute;inset:0;background:url('/assets/escape/realistic/open-book.webp') left center/200% 100% no-repeat;opacity:0;pointer-events:none}
.vignette-library.is-solved .vignette-book-cover>img,.vignette-library.is-solved .vignette-book-equation{animation:library-cover-front 3.6s .35s both}
.vignette-library.is-solved .vignette-book-cover::after{animation:library-cover-back 3.6s .35s both}
@keyframes library-cover-front{0%,19.99%{opacity:1}20%,100%{opacity:0}}
@keyframes library-cover-back{0%,19.99%{opacity:0}20%,100%{opacity:1}}
.vignette-library .vignette-reward{transition:opacity .7s 3.7s,transform .9s 3.7s}
@media(prefers-reduced-motion:reduce){.vignette-library.is-solved .vignette-book-cover>img,.vignette-library.is-solved .vignette-book-equation,.vignette-library.is-solved .vignette-book-cover::after{animation:none!important}}

.vignette-gate .vignette-door{top:5%;height:82%}
