/**
 * JEDINEČNO - Stylování produktového lightboxu (PhotoSwipe)
 * Přizpůsobení barev a vzhledu pro konzistenci s designem
 */

/* === OVERLAY (pozadí) - úplně neprůhledné === */
.pswp__bg {
    background-color: #F6F4F2 !important;
    opacity: 1 !important;
}

/* Vypnout všechny animace opacity na pozadí */
.pswp--animate_opacity .pswp__bg {
    opacity: 1 !important;
}

/* === HLAVNÍ KONTEJNER === */
.pswp {
    z-index: 999999;
    background-color: #F6F4F2 !important;
}

/* === SCROLL WRAP === */
.pswp__scroll-wrap {
    background-color: transparent !important;
}

/* === CONTAINER === */
.pswp__container {
    background-color: transparent !important;
}

/* === UI VRSTVA === */
.pswp__ui {
    background-color: transparent !important;
}

/* === OBRÁZKY V LIGHTBOXU === */
.pswp__img {
    border-radius: 4px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

/* === TOP BAR - neprůhledná s krémovou barvou === */
.pswp__top-bar {
    background-color: #F6F4F2 !important;
    opacity: 1 !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    padding: 0 20px !important;
    gap: 12px !important;
}

/* ============================================================================
   PŘEBARVENÍ A ZVĚTŠENÍ VŠECH OVLÁDACÍCH PRVKŮ NA #051F34
   ============================================================================ */

:root {
    --jedinecno-lightbox-color: #051F34;
    --jedinecno-lightbox-size-desktop: 68px;
    --jedinecno-lightbox-size-mobile: 52px;
}

/* Základní nastavení pro všechna tlačítka (close, zoom, fullscreen, share) */
.pswp__button,
button.pswp__button {
    width: var(--jedinecno-lightbox-size-desktop) !important;
    height: var(--jedinecno-lightbox-size-desktop) !important;
    background-color: transparent !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 28px 28px !important;
    border: none !important;
    opacity: 1 !important;
    transition: transform 0.2s ease, opacity 0.2s ease !important;
}

.pswp__button:hover,
button.pswp__button:hover {
    transform: scale(1.07) !important;
    opacity: 1 !important;
    background-color: transparent !important;
}

/* Odstranit původní sprite */
.pswp__button:before,
.pswp__button:after {
    background: none !important;
}

.pswp__button,
.pswp__button:hover,
.pswp__button:focus {
    filter: none !important;
}

/* Close (X) */
.pswp__button--close,
button.pswp__button--close {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23051F34' d='M18.3 5.7a1 1 0 0 0-1.4 0L12 10.6 7.1 5.7a1 1 0 0 0-1.4 1.4l4.9 4.9-4.9 4.9a1 1 0 1 0 1.4 1.4L12 13.4l4.9 4.9a1 1 0 0 0 1.4-1.4L13.4 12l4.9-4.9a1 1 0 0 0 0-1.4z'/%3E%3C/svg%3E") !important;
    background-size: 36px 36px !important;
}

/* Zoom */
.pswp__button--zoom,
button.pswp__button--zoom {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='6' fill='none' stroke='%23051F34' stroke-width='2'/%3E%3Cline x1='16.5' y1='16.5' x2='20' y2='20' stroke='%23051F34' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-size: 30px 30px !important;
}

/* Fullscreen */
.pswp__button--fs,
button.pswp__button--fs {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23051F34' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M7 3H3v4M17 3h4v4M21 17v4h-4M3 17v4h4'/%3E%3C/svg%3E") !important;
    background-size: 30px 30px !important;
}

/* Share */
.pswp__button--share,
button.pswp__button--share {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23051F34' d='M12 5a1 1 0 0 1 1.62-.78l6 4.8a1 1 0 0 1 0 1.56l-6 4.8A1 1 0 0 1 12 15v-2.62c-2.7.1-6.1.82-8.3 4.16a1 1 0 0 1-1.82-.55c0-7.32 7.27-8.49 10.12-8.66V5z'/%3E%3C/svg%3E") !important;
    background-size: 32px 32px !important;
}

/* Navigační šipky */
.pswp__button--arrow--left,
.pswp__button--arrow--right,
button.pswp__button--arrow--left,
button.pswp__button--arrow--right {
    display: block !important;
    width: var(--jedinecno-lightbox-size-desktop) !important;
    height: var(--jedinecno-lightbox-size-desktop) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 36px 36px !important;
}

.pswp__button--arrow--left,
button.pswp__button--arrow--left {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23051F34' d='M15.7 5.3a1 1 0 0 0-1.4 0L7.6 12l6.7 6.7a1 1 0 0 0 1.4-1.4L10.4 12l5.3-5.3a1 1 0 0 0 0-1.4z'/%3E%3C/svg%3E") !important;
}

.pswp__button--arrow--right,
button.pswp__button--arrow--right {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23051F34' d='M8.3 5.3a1 1 0 0 1 1.4 0l6.7 6.7-6.7 6.7a1 1 0 1 1-1.4-1.4L13.6 12 8.3 6.7a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E") !important;
}

.pswp__button--arrow--left:hover,
button.pswp__button--arrow--left:hover {
    background-color: transparent !important;
    opacity: 1 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23051F34' d='M15.7 5.3a1 1 0 0 0-1.4 0L7.6 12l6.7 6.7a1 1 0 0 0 1.4-1.4L10.4 12l5.3-5.3a1 1 0 0 0 0-1.4z'/%3E%3C/svg%3E") !important;
}

.pswp__button--arrow--right:hover,
button.pswp__button--arrow--right:hover {
    background-color: transparent !important;
    opacity: 1 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23051F34' d='M8.3 5.3a1 1 0 0 1 1.4 0l6.7 6.7-6.7 6.7a1 1 0 1 1-1.4-1.4L13.6 12 8.3 6.7a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E") !important;
}

/* Loading indikátor */
.pswp__preloader__icn {
    background-color: transparent !important;
}

.pswp__preloader__donut {
    border-color: var(--jedinecno-lightbox-color) transparent transparent transparent !important;
}

/* Počítadlo */
.pswp__counter {
    color: var(--jedinecno-lightbox-color) !important;
    font-family: 'Figtree', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    text-shadow: none !important;
    margin-right: auto !important;
    padding: 0 !important;
}

/* Caption */
.pswp__caption {
    background-color: transparent !important;
}

.pswp__caption__center {
    color: var(--jedinecno-lightbox-color) !important;
    font-family: 'Figtree', sans-serif !important;
    font-size: 15px !important;
    text-align: center;
    text-shadow: none !important;
}

/* ============================================================================ 
   MOBILNÍ ÚPRAVY (max-width: 768px)
   ============================================================================ */
@media (max-width: 768px) {
    /* Skrýt zoom, fullscreen, share na mobilu - jen křížek */
    .pswp__button--zoom,
    button.pswp__button--zoom,
    .pswp__button--fs,
    button.pswp__button--fs,
    .pswp__button--share,
    button.pswp__button--share {
        display: none !important;
    }

    /* Křížek - větší a vpravo nahoře */
    .pswp__button--close,
    button.pswp__button--close {
        width: var(--jedinecno-lightbox-size-mobile) !important;
        height: var(--jedinecno-lightbox-size-mobile) !important;
        background-size: 32px 32px !important;
        position: absolute !important;
        top: 16px !important;
        right: 16px !important;
        left: auto !important;
        z-index: 10000 !important;
    }

    /* Top bar - jen pro counter */
    .pswp__top-bar {
        height: 70px !important;
        padding: 0 16px !important;
        gap: 0 !important;
        justify-content: flex-start !important;
    }

    .pswp__counter {
        font-size: 18px !important;
        margin-left: 0 !important;
    }

    /* Navigační šipky - dole pod obrázkem, viditelné */
    .pswp__button--arrow--left,
    .pswp__button--arrow--right,
    button.pswp__button--arrow--left,
    button.pswp__button--arrow--right {
        width: var(--jedinecno-lightbox-size-mobile) !important;
        height: var(--jedinecno-lightbox-size-mobile) !important;
        background-size: 28px 28px !important;
        display: block !important;
        position: fixed !important;
        bottom: 30px !important;
        top: auto !important;
        z-index: 10000 !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .pswp__button--arrow--left,
    button.pswp__button--arrow--left {
        left: calc(50% - 60px) !important;
        right: auto !important;
    }

    .pswp__button--arrow--right,
    button.pswp__button--arrow--right {
        left: calc(50% + 12px) !important;
        right: auto !important;
    }
}

/* Zajistit, že šipky jsou viditelné i na dotykových zařízeních */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right,
.pswp--touch button.pswp__button--arrow--left,
.pswp--touch button.pswp__button--arrow--right {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* === ZOOM ANIMACE === */
.pswp__img--placeholder {
    background-color: rgba(246, 244, 242, 0.3);
}

/* === FOCUS STAVY (přístupnost) === */
.pswp__button:focus {
    outline: 2px solid #CA9174;
    outline-offset: 2px;
}
