/* ================================
   GJWS Postslider – Grundlayout
   ================================ */

.gjws-postslider-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden; /* WICHTIG: Nur sichtbare Slides zeigen */
    box-sizing: border-box;
}

/* Track enthält alle Slides nebeneinander */
.gjws-postslider-track {
    display: flex;
    transition: transform 0.4s ease; /* sanfter Übergang (0.4s wie gewünscht) */
    will-change: transform;
}

/* Einzelne Slides */
.gjws-postslider-slide {
    flex: 0 0 auto;
    box-sizing: border-box;
    padding: 6px; /* kleiner Abstand zwischen Slides */
}

/* Bilder styling */
.gjws-postslider-slide img {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 1/1; /* macht die Bilder quadratisch */
    object-fit: cover; /* Cropt, falls nicht exakt quadratisch */
    border-radius: 0px; /* leicht abgerundet, kann entfernt werden */
}

/* ================================
   RESPONSIVE GRID
   Anzahl der Slides pro Reihe
   wird über JS mit transform verschoben
   ================================ */

/* Desktop (Standard) */
@media (min-width: 1025px) {
    .gjws-postslider-slide {
        width: calc(100% / var(--gjws-desktop, 4));
    }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
    .gjws-postslider-slide {
        width: calc(100% / var(--gjws-tablet, 2));
    }
}

/* Smartphone */
@media (max-width: 767px) {
    .gjws-postslider-slide {
        width: calc(100% / var(--gjws-mobile, 1));
    }
}

/* ================================
   LIGHTBOX (minimal native)
   ================================ */

.gjws-lightbox-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999999;
    opacity: 0;
    visibility: hidden;
    transition: 0.25s ease;
}

.gjws-lightbox-overlay.active {
    opacity: 1;
    visibility: visible;
}

.gjws-lightbox-overlay img {
    max-width: 90vw;
    max-height: 90vh;
    border-radius: 0px;
}

/* Click-to-close affordance */
.gjws-lightbox-overlay::after {
    content: "✕";
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 28px;
    color: #fff;
    cursor: pointer;
}
