/**
 * Component: Galeria Slider
 * File: assets/css/components/galeria-slider.css
 *
 * Depende de:
 *   assets/css/base/variables.css → --color-*, --radius-*, --transition-*, --spacing-*
 */

/* =========================================================
   #GALERIA SLIDER
   ========================================================= */
.galeria-slider {
    position: relative;
    overflow: hidden;
    border-radius: var(--radius-md);
}

.galeria-slider__track {
    display: flex;
    transition: transform var(--transition-base);
    will-change: transform;
    /* JS (galeria-slider.js) aplica transform: translateX(-N%) dinamicamente */
}

.galeria-slider__item {
    flex: 0 0 100%;
    margin: 0;
    padding: 0;
    line-height: 0;
}

.galeria-slider__item img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: var(--radius-md);
}

/* -------- Botões prev/next -------- */
.galeria-slider__btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background-color: var(--color-white);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
    transition: background-color var(--transition-base), opacity var(--transition-base);
    opacity: 0.85;
}

.galeria-slider__btn:hover,
.galeria-slider__btn:focus-visible {
    background-color: var(--color-primary);
    opacity: 1;
    outline: 2px solid var(--color-primary-dark);
    outline-offset: 2px;
}

.galeria-slider__btn svg {
    width: 20px;
    height: 20px;
    fill: var(--color-heading);
    pointer-events: none;
}

.galeria-slider__btn:hover svg,
.galeria-slider__btn:focus-visible svg {
    fill: var(--color-white);
}

.galeria-slider__btn--prev {
    left: var(--spacing-sm);
}

.galeria-slider__btn--next {
    right: var(--spacing-sm);
}

/* -------- Múltiplos slides visíveis (desktop) -------- */
@media (min-width: 768px) {
    .galeria-slider__item {
        flex: 0 0 33.333%;
    }
}

@media (min-width: 1024px) {
    .galeria-slider__item {
        flex: 0 0 25%;
    }
}
