.bookshelf-carousel .bookshelf-card.placeholder{background:linear-gradient(90deg,var(--skeleton-base)0%,var(--skeleton-shine)50%,var(--skeleton-base)100%);background-size:200% 100%;border-radius:12px;animation:1.5s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.bookshelf-carousel .bookshelf-books-stack>div{transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;image-rendering:-webkit-optimize-contrast;-webkit-transform:translateZ(0)}.bookshelf-carousel .bookshelf-books-stack img{image-rendering:-webkit-optimize-contrast;-webkit-backface-visibility:hidden;backface-visibility:hidden}.bookshelf-carousel .bookshelf-books-stack svg{shape-rendering:geometricPrecision}@media (hover:hover) and (pointer:fine){.bookshelf-carousel .bookshelf-card{transition:transform .2s,box-shadow .2s}.bookshelf-carousel .bookshelf-card:hover{transform:translateY(-8px)}.bookshelf-carousel .bookshelf-card:hover .bookshelf-books-stack{box-shadow:0 12px 24px rgba(0,0,0,.3)}.bookshelf-carousel .bookshelf-card:active{transform:translateY(-8px)scale(.96)}.bookshelf-carousel .bookshelf-books-stack{transition:transform .2s,box-shadow .2s}.bookshelf-carousel .embla-viewport{margin-top:-16px;padding-top:16px;overflow:visible}}@media (max-width:820px){.bookshelf-carousel .carousel-btn.left{left:0!important}.bookshelf-carousel .carousel-btn.right{right:0!important}}@media (max-width:640px){.bookshelf-carousel .carousel-btn.left{left:0!important}.bookshelf-carousel .carousel-btn.right{right:0!important}.bookshelf-carousel .carousel-btn{display:none}}@media (hover:none),(pointer:coarse){.bookshelf-carousel .embla-slide{isolation:isolate;contain:layout style}.bookshelf-carousel .embla-slide .bookshelf-card{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;transform-origin:50%;transition:transform .1s ease-out!important;transform:none!important}.bookshelf-carousel .embla-slide .bookshelf-card:active,.bookshelf-carousel .embla-slide .bookshelf-card:hover{transform:none!important}.bookshelf-carousel .embla-slide .bookshelf-card.bookshelf-pressed,.bookshelf-carousel .embla-slide .bookshelf-card.bookshelf-pressed:active,.bookshelf-carousel .embla-slide .bookshelf-card.long-press-active,.bookshelf-carousel .embla-slide .bookshelf-card.long-press-active:active{transform:scale(.95)!important}}
