
/* start of file: /application/modules/qiclub/assets/css/qiclub.cidades.carousel.css */



/* --- AJUSTE DE CONTAINER MOBILE --- */
#citiesCarousel {
    position: relative;
    /* Adicionamos padding lateral para empurrar os cards para o centro */
    /* Isso cria o espaço onde as setas vão ficar sem serem cortadas */
    padding: 20px 40px;
    overflow: hidden; /* Garante que o 5º card continue invisível */
}

#citiesCarousel .owl-stage-outer {
    overflow: hidden !important;
    padding-bottom: 25px !important;
}

/* --- SETAS BRANCAS (FORA DOS CARDS) --- */
@media (min-width: 640px) {
    #citiesCarousel .owl-nav {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        width: 100%;
        display: flex;
        justify-content: space-between;
        transform: translateY(-50%);
        pointer-events: none;
        z-index: 50;
    }

    #citiesCarousel .owl-prev,
    #citiesCarousel .owl-next {
        pointer-events: auto;
        background: white !important;
        color: #374151 !important;
        width: 40px;
        height: 40px;
        border-radius: 50% !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
        display: flex !important;
        align-items: center;
        justify-content: center;
        font-size: 18px !important;
        transition: all 0.2s ease;
        position: absolute;
        border: none !important;
    }

    /* Posicionamos as setas nas extremidades do padding que criamos */
    #citiesCarousel .owl-prev {
        left: 5px;
    }
    #citiesCarousel .owl-next {
        right: 5px;
    }

    #citiesCarousel .owl-prev:hover,
    #citiesCarousel .owl-next:hover {
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
        color: white !important;
        transform: scale(1.1);
    }
}

/* Ajuste mobile: remove o padding excessivo para não espremer o card único */
@media (max-width: 639px) {
    #citiesCarousel {
        padding: 20px 0;
    }
    #citiesCarousel .owl-nav { display: none; }
}

/* --- 3. DOTS --- */
#citiesCarousel .owl-dots {
    margin-top: 10px;
    display: flex;
    justify-content: center;
    gap: 8px;
}

#citiesCarousel .owl-dot span {
    width: 8px;
    height: 8px;
    background: #d1d5db !important;
    border-radius: 50%;
    display: block;
}

#citiesCarousel .owl-dot.active span {
    width: 20px;
    border-radius: 10px;
    background: #667eea !important;
}

/* Garante que os controles fiquem acima dos slides */
.carousel-prev, .carousel-next, .carousel-dot {
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 99 !important;
}

/* O container dos slides não pode bloquear os cliques */
.carousel-slide {
    pointer-events: none; /* O slide em si não recebe clique para não bloquear botões */
}

/* Mas os links dentro do slide (como "Ver detalhes") devem funcionar */
.carousel-slide.active a,
.carousel-slide.active button {
    pointer-events: auto;
}

/* Esconder setas no mobile (abaixo de 768px) */
@media (max-width: 767px) {
    .carousel-prev, .carousel-next {
        display: none !important;
    }
}

/* Container do Carrossel */
#featuredCarousel {
    position: relative;
    touch-action: pan-y; /* Melhora o scroll vertical enquanto permite swipe lateral */
}

/* Setas: Somente Desktop */
@media (min-width: 768px) {
    .carousel-prev, .carousel-next {
        display: flex !important;
        position: absolute;
        z-index: 50;
        cursor: pointer;
        top: 50%;
        transform: translateY(-50%);
    }
}
@media (max-width: 767px) {
    .carousel-prev, .carousel-next { display: none !important; }
}

/* Dots (Estilo Pill/Instagram) */
.carousel-dots-container {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 60;
    display: flex;
    gap: 8px;
}

.carousel-dot {
    width: 8px;
    height: 8px;
    background-color: rgba(255, 255, 255, 0.3); /* Inativo: bem discreto */
    border-radius: 50%;
    transition: all 0.3s ease;
    cursor: pointer;
    border: none;
    padding: 0;
}

.carousel-dot.active {
    background-color: #ffffff; /* Ativo: branco puro */
    width: 20px; /* Vira uma "pílula" quando ativo */
    border-radius: 4px;
}

/* Container que agrupa os dots */
.carousel-dots-container {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 100; /* Garante que fique acima de tudo */
    display: flex;
    gap: 12px;
    pointer-events: auto; /* Garante o clique */
}

/* ESTADO INATIVO (O que você não está vendo) */
.carousel-dot {
    width: 10px;
    height: 10px;
    background-color: rgba(255, 255, 255, 0.4) !important; /* Cor cinza/transparente visível */
    border-radius: 50%;
    cursor: pointer;
    border: 1px solid rgba(0, 0, 0, 0.1); /* Um contorno leve para destacar em fundos claros */
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ESTADO ATIVO */
.carousel-dot.active {
    background-color: #ffffff !important; /* Branco puro */
    width: 24px; /* Estica para o estilo pílula */
    border-radius: 6px;
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
}
/* end of file: /application/modules/qiclub/assets/css/qiclub.cidades.carousel.css */
