
/* Custom Book (details.php) */
.custom-book-viewport {
    position: relative;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    perspective: 2000px;
    display: flex;
    justify-content: center;
}
.custom-page {
    position: absolute;
    width: 50%;
    height: 100%;
    right: 0;
    transform-origin: left center;
    transform-style: preserve-3d;
    transition: transform 1s ease, z-index 1s;
    cursor: pointer;
}
.custom-page.flipped {
    transform: rotateY(-180deg);
}
.page-front, .page-back {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: var(--bs-card-bg);
    border: 1px solid var(--bs-border-color);
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: inset 0 0 20px rgba(0,0,0,0.1);
    overflow: hidden;
}
.page-back {
    transform: rotateY(180deg);
}
.custom-page-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.custom-page::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 15px;
    height: 100%;
    background: linear-gradient(to right, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0) 100%);
    z-index: 10;
}
