/* Sheema Autor-System Styles */

/* Autor-Bilder auf Produktseiten */
.author-image {
    border-radius: 50% !important;
    object-fit: cover !important;
    width: 100px !important;
    height: 100px !important;
}

/* Autor-Bild auf Autor-Einzelseiten */
body.single-book_author .et_pb_post_title:after {
    content: "";
    display: block;
    width: 400px;
    height: 400px;
    background-size: cover;
    background-position: center;
    border-radius: 50%;
    margin: 20px auto;
    box-shadow: 6px 6px 18px 0px rgba(0,0,0,0.3);
}

/* Autor-Zitat Styling */
.author-quote {
    text-align: center;
    margin: 15px auto 30px auto;
    max-width: 600px;
    position: relative;
}

.author-quote blockquote {
    margin: 0;
    padding: 0;
    border: none;
    background: none;
    font-style: italic;
    font-size: 16px;
    line-height: 1.6;
    color: #666;
    position: relative;
}

.author-quote blockquote:before {
    content: " ";
    font-size: 60px;
    color: #ddd;
    position: absolute;
    left: -20px;
    top: -10px;
    font-family: serif;
}

.author-quote blockquote:after {
    content: " ";
    font-size: 60px;
    color: #ddd;
    position: absolute;
    right: -20px;
    bottom: -30px;
    font-family: serif;
}

/* Bücher-Grid auf Autor-Seiten (Flexbox) */
.author-books-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 30px -12.5px 30px -12.5px;
}

.author-books-grid > div {
    flex: 1 1 300px;
    margin: 0 12.5px 25px 12.5px;
    min-width: 300px;
    max-width: calc(33.333% - 25px); /* Maximal 1/3 der Breite */
}

/* Für sehr kleine Container */
@media (max-width: 900px) {
    .author-books-grid > div {
        max-width: calc(50% - 25px); /* Auf kleineren Screens maximal 1/2 */
    }
}

@media (max-width: 600px) {
    .author-books-grid > div {
        max-width: none; /* Auf Mobile wieder volle Breite erlauben */
    }
}

.author-books-grid img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 5px;
}

.author-book-item {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
    text-align: center;
    background: white;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.author-book-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}

/* Autoren-Kategorie-Grid (Flexbox) */
.authors-category-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -12.5px;
}

.authors-category-grid > div {
    flex: 1 1 calc(33.333% - 25px);
    margin: 0 12.5px 25px 12.5px;
    min-width: 250px;
}

/* Responsive Design */
@media (max-width: 768px) {
    .product-author-section > div {
        flex-direction: column !important;
        text-align: center !important;
    }
    
    /* Autor-Bild auf Mobile kleiner */
    body.single-book_author .et_pb_post_title:after {
        width: 250px !important;
        height: 250px !important;
    }
    
    .author-books-grid > div {
        flex: 1 1 200px;
        min-width: 200px;
    }
    
    .author-books-grid img {
        height: 200px !important;
    }
    
    .author-book-item {
        padding: 15px !important;
    }
    
    .authors-category-grid > div {
        flex: 1 1 calc(50% - 25px);
        min-width: 200px;
    }
    
    /* Zitat responsive */
    .author-quote {
        margin: 10px 20px 25px 20px;
    }
    
    .author-quote blockquote {
        font-size: 14px;
    }
    
    .author-quote blockquote:before,
    .author-quote blockquote:after {
        font-size: 40px;
    }
    
    .author-quote blockquote:before {
        left: -10px;
        top: -5px;
    }
    
    .author-quote blockquote:after {
        right: -10px;
        bottom: -20px;
    }
}

@media (max-width: 480px) {
    /* Autor-Bild auf sehr kleinen Screens */
    body.single-book_author .et_pb_post_title:after {
        width: 200px !important;
        height: 200px !important;
    }
    
    .authors-category-grid > div {
        flex: 1 1 100%;
        min-width: auto;
    }
}