/**
 * PŘEBITÍ STYLU ŠABLONY:
 * Cílíme na widget, který obsahuje náš carousel, a nulujeme mu padding,
 * aby se carousel mohl roztáhnout na plnou šířku.
 * Tento blok řeší problém s velkými okraji způsobenými šablonou.
 * Používáme !important, abychom měli jistotu, že styl šablony přebijeme.
 */
.widget_pcs_widget {
    padding: 0 !important;
}

/**
 * Frontend styles for Portfolio Carousel Sets
 */

.pcs-widget-wrapper {
    width: 100%;
}

/* Obal pro celý set */
.pcs-set {
    margin-bottom: 40px;
}

/* Obal pro jeden konkrétní carousel */
.pcs-carousel-wrapper {
    position: relative;
    width: 100%;
    margin-bottom: 25px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    background-color: #f0f0f0;
}

.pcs-carousel {
    width: 100%;
    height: auto;
}

.pcs-carousel .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* ====================================================
   KLÍČOVÁ ČÁST: SJEDNOCENÍ VELIKOSTI FOTEK
   ==================================================== */
.pcs-carousel img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s ease;
}

.pcs-carousel-wrapper:hover img {
    transform: scale(1.04);
}

/* ====================================================
   MODERNÍ TITULEK
   ==================================================== */
.pcs-title-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 100%);
    color: #ffffff;
    padding: 40px 20px 20px 20px; /* ZMĚNA: Snížen horní padding */
    font-size: 15px; /* ZMĚNA: Mírně menší písmo */
    font-weight: 600;
    line-height: 1.4; /* PŘIDÁNO: Zajišťuje správné řádkování pro víceřádkový text */
    text-transform: uppercase;
    letter-spacing: 0.5px; /* ZMĚNA: Menší proklad písmen pro úsporu místa */
    z-index: 10;
    pointer-events: none;
    text-align: left;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
}

/* ====================================================
   OVLÁDACÍ ŠIPKY (NAVIGACE)
   ==================================================== */
.pcs-carousel .swiper-button-next,
.pcs-carousel .swiper-button-prev {
    color: #fff;
    background: rgba(0, 0, 0, 0.4);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    backdrop-filter: blur(4px);
    transition: all 0.3s ease;
}

.pcs-carousel .swiper-button-next:after,
.pcs-carousel .swiper-button-prev:after {
    font-size: 18px;
    font-weight: 900;
}

.pcs-carousel .swiper-button-next:hover,
.pcs-carousel .swiper-button-prev:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: scale(1.1);
}

/* ====================================================
   TEČKY DOLE (PAGINACE)
   ==================================================== */
.pcs-carousel .swiper-pagination-bullet {
    background: #ffffff;
    opacity: 0.5;
    width: 8px;
    height: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.5);
    transition: all 0.3s ease;
}

.pcs-carousel .swiper-pagination-bullet-active {
    background: #ffffff;
    opacity: 1;
    width: 24px;
    border-radius: 4px;
}

/* ====================================================
   PŘIDÁNO: OPTIMALIZACE PRO MALÉ DISPLEJE (MOBILY)
   ==================================================== */
@media (max-width: 480px) {
    .pcs-title-overlay {
        font-size: 13px; /* Ještě menší písmo na mobilech */
        padding: 30px 15px 15px 15px; /* Menší padding */
    }
}