/* =======================================================
   SINGLE PRODUCT: GALLERY
   Снимки, тъмбнейли и къстъм стрелки
======================================================= */
.product-images { display: flex !important; flex-direction: column; gap: 12px !important; position: relative !important; }
.product-images .product-gallery-slider { margin-bottom: 0 !important; border-radius: var(--fiptec-radius-lg) !important; border: 1px solid var(--fiptec-slate-100) !important; background-color: var(--fiptec-white) !important; box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.05) !important; overflow: hidden !important; }
.product-images .product-gallery-slider .woocommerce-product-gallery__image img { width: 100% !important; height: auto !important; aspect-ratio: 1 / 1 !important; object-fit: cover !important; }

/* Тъмбнейли (Малки снимки отдолу) - Видими на десктоп */
.product-thumbnails { padding-top: 12px !important; }
.product-thumbnails .col { padding: 0 clamp(4px, 1vw, 6px) !important; }
.product-thumbnails .col a { display: block !important; border-radius: clamp(var(--fiptec-radius-md), 1vw, var(--fiptec-radius-lg)) !important; overflow: hidden !important; border: 2px solid transparent !important; opacity: 0.7 !important; background-color: var(--fiptec-slate-50) !important; transition: all 0.3s ease-in-out !important; transform: translateZ(0); }
.product-thumbnails .col img { width: 100% !important; height: 100% !important; aspect-ratio: 1 / 1 !important; object-fit: cover !important; display: block !important; border-radius: clamp(6px, 1vw, 10px) !important; }
.product-thumbnails .col a:hover { opacity: 1 !important; border-color: rgba(59, 130, 246, 0.5) !important; }
.product-thumbnails .col.is-selected a, .product-thumbnails .col.is-nav-selected a { opacity: 1 !important; border-color: var(--fiptec-blue) !important; }

/* Къстъм Стрелки за Десктоп */
.product-images .flickity-prev-next-button svg, .product-thumbnails .flickity-prev-next-button svg { display: none !important; }
.product-images .flickity-prev-next-button, .product-thumbnails .flickity-prev-next-button { background-color: var(--fiptec-white) !important; border-radius: 50% !important; box-shadow: var(--fiptec-shadow-md) !important; width: clamp(36px, 4vw, 40px) !important; height: clamp(36px, 4vw, 40px) !important; border: 1px solid var(--fiptec-slate-100) !important; background-position: center !important; background-repeat: no-repeat !important; background-size: 16px 16px !important; opacity: 0 !important; visibility: hidden !important; transform: scale(0.9) !important; transition: all 0.3s ease !important; z-index: var(--z-elevated) !important; }
.product-images:hover .flickity-prev-next-button, .product-thumbnails:hover .flickity-prev-next-button { opacity: 1 !important; visibility: visible !important; transform: scale(1) !important; }
.product-images .flickity-prev-next-button.previous, .product-thumbnails .flickity-prev-next-button.previous { left: 12px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23475569' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15 19l-7-7 7-7'%3E%3C/path%3E%3C/svg%3E") !important; }
.product-images .flickity-prev-next-button.next, .product-thumbnails .flickity-prev-next-button.next { right: 12px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23475569' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5l7 7-7 7'%3E%3C/path%3E%3C/svg%3E") !important; }
.product-images .flickity-prev-next-button:hover, .product-thumbnails .flickity-prev-next-button:hover { transform: scale(1.1) !important; box-shadow: var(--fiptec-shadow-lg) !important; }
.product-images .flickity-prev-next-button.previous:hover, .product-thumbnails .flickity-prev-next-button.previous:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563eb' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15 19l-7-7 7-7'%3E%3C/path%3E%3C/svg%3E") !important; }
.product-images .flickity-prev-next-button.next:hover, .product-thumbnails .flickity-prev-next-button.next:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563eb' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5l7 7-7 7'%3E%3C/path%3E%3C/svg%3E") !important; }
.product-images .flickity-prev-next-button:disabled, .product-thumbnails .flickity-prev-next-button:disabled { display: none !important; }

/* Дизайн на самото продуктово изображение */
.product-display-image .img-inner { padding-top: 0 !important; border-radius: clamp(1rem, 3vw, 1.5rem) !important; overflow: hidden !important; background-color: var(--fiptec-slate-100) !important; border: 1px solid var(--fiptec-slate-100) !important; box-shadow: var(--fiptec-shadow-md) !important; aspect-ratio: 4 / 3 !important; }
@media (min-width: 640px) { .product-display-image .img-inner { aspect-ratio: 16 / 9 !important; } }
.product-display-image .img-inner img { position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important; transition: transform 0.5s ease !important; }

/* =======================================================
   MOBILE UX: MODERN PAGINATION DOTS (Tailwind Style)
======================================================= */
.fiptec-mobile-dots {
    display: none !important; /* Скрити на десктоп по подразбиране */
}

@media (max-width: 768px) {
    /* Скриваме тъмбнейлите и стрелките на мобилен, за да ползваме само точки и суайп */
    .product-thumbnails,
    .product-images .flickity-prev-next-button,
    .product-images .flickity-page-dots {
        display: none !important;
    }

    .fiptec-mobile-dots {
        position: absolute !important;
        bottom: 20px !important;
        left: 0 !important;
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 6px !important; /* Съвпада с gap-1.5 */
        z-index: var(--z-elevated, 10) !important;
        pointer-events: none; /* Да не блокира суайпа върху снимката */
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .fiptec-mobile-dots .fiptec-dot {
        width: 6px !important;  /* w-1.5 */
        height: 6px !important; /* h-1.5 */
        background-color: var(--fiptec-slate-300, #cbd5e1) !important;
        border-radius: 9999px !important; /* rounded-full */
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        pointer-events: auto; /* Самите точки да могат да се кликат */
        cursor: pointer !important;
    }
    
    .fiptec-mobile-dots .fiptec-dot.is-selected {
        width: 20px !important; /* Удължен Pill формат за активната точка */
        background-color: var(--fiptec-blue, #2563eb) !important;
    }
}