/* ============================================================
 * slider.css
 * ============================================================ */

/* Убирает FOUC: контейнер скрыт, пока slick не инициализирован */
.js-slider:not(.slick-initialized) {
    visibility: hidden;
    min-height: 360px; /* подберите под высоту карточки */
}
.js-slider.slick-initialized {
    visibility: visible;
    min-height: 0;
}

/* Базовые правила, если slick-тема не подключена */
.js-slider .slick-slide { height: auto; }
.js-slider .slick-track { display: flex; align-items: stretch; }


/* ============================================================
 * Стрелки основного слайдера
 * ============================================================ */

.js-slider .slick-prev:before, .slick-next:before {
    color: var(--gray1-sw) !important;
}

.js-slider .slick-prev, .slick-next {
    width: 40px !important;
    height: 40px !important;
    z-index: 100 !important;
    /*background: var(--white);*/
    /*opacity: 0.95;*/
}

.js-slider .slick-prev {
    left: -26px !important;
}

.js-slider .slick-next {
    /*right: -5px !important;*/
}

.js-slider .slick-prev:before, .slick-next:before {
    font-size: 40px !important;
}


/* ============================================================
 * Обычные точки (когда customPaging НЕ используется)
 * ============================================================ */

.js-slider .slick-dots {
    position: relative;
    bottom: 0;
}

.js-slider .slick-dots li button {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ccc;
}

.js-slider .slick-dots li button:before {
    display: none;
}

.js-slider .slick-dots li.slick-active button {
    background: #000;
}


/* ============================================================
 * Превью-точки (customPaging): горизонтальная лента со стрелками
 * ============================================================ */

/* Обёртка: relative, чтобы absolute-стрелки приклеились к краям.
   padding по бокам освобождает место под стрелки. */
.js-slider--dots-preview .js-slider__dots-wrap {
    position: relative;
    margin-top: 16px;
    padding: 0 22px;
}

/* Сам ul.slick-dots — горизонтальная лента со скроллом */
.js-slider--dots-preview .js-slider__dots-wrap .slick-dots {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 8px;
    margin: 0;
    padding: 2px 0 6px 0;
    list-style: none;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    justify-content: flex-start;

    /* Скрыть скроллбар */
    scrollbar-width: none;       /* Firefox */
    -ms-overflow-style: none;    /* IE/Edge */
}
.js-slider--dots-preview .js-slider__dots-wrap .slick-dots::-webkit-scrollbar {
    display: none;               /* WebKit */
}

/* Каждая превью — фиксированного размера, не сжимается */
.js-slider--dots-preview .js-slider__dots-wrap .slick-dots li {
    flex: 0 0 80px;
    width: 80px;
    height: 60px;
    overflow: hidden;
    border-radius: 4px;
    cursor: pointer;
    opacity: 0.5;
    outline: 1px solid var(--gray-sw);
    transition: opacity 0.2s;
}

.js-slider--dots-preview .js-slider__dots-wrap .slick-dots li.slick-active {
    opacity: 1;
    outline: 2px solid var(--gray-sw);
}

.js-slider--dots-preview .js-slider__dots-wrap .slick-dots li a {
    display: block;
    width: 100%;
    height: 100%;
}

.js-slider--dots-preview .js-slider__dots-wrap .slick-dots li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}


/* ============================================================
 * Стрелки ленты превью
 * ============================================================ */

.js-slider__dots-arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 22px;
    border: 0;
    padding: 0;
    background: var(--white, #fff);
    cursor: pointer;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
    color: var(--gray1-sw, #333);
}

.js-slider__dots-arrow--prev { left: 0; }
.js-slider__dots-arrow--next { right: 0; }

/* Мягкое затухание к краям (эффект «шторки», как у WB) */
.js-slider__dots-arrow::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 16px;
    pointer-events: none;
}
.js-slider__dots-arrow--prev::before {
    left: 100%;
    background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0));
}
.js-slider__dots-arrow--next::before {
    right: 100%;
    background: linear-gradient(to left, rgba(255,255,255,1), rgba(255,255,255,0));
}

/* Скрытое состояние — когда скроллить некуда */
.js-slider__dots-arrow.is-hidden {
    opacity: 0;
    pointer-events: none;
}