/**
 * Custom CSS overrides for Creative Elements content
 * Module: creativeelementsoverride
 */

/* Links inside Creative Elements rich-text content
 * Scope: text-editor + HTML widgets (rich text)
 * Excludes buttons / CTAs / image galleries (styled separately)
 */
.elementor-widget-text-editor .elementor-widget-container a,
.elementor-widget-html .elementor-widget-container a,
.elementor-widget-shortcode .elementor-widget-container a {
    text-decoration: underline;
}

.elementor-widget-text-editor .elementor-widget-container a:hover,
.elementor-widget-text-editor .elementor-widget-container a:focus,
.elementor-widget-html .elementor-widget-container a:hover,
.elementor-widget-html .elementor-widget-container a:focus,
.elementor-widget-shortcode .elementor-widget-container a:hover,
.elementor-widget-shortcode .elementor-widget-container a:focus {
    color: var(--bs-link-hover-color, var(--bs-primary));
    text-decoration: underline;
}

/* ============================================================
 * Sliders / Swiper — cacher les navigations avant init
 * ============================================================
 * Tant que Swiper n'a pas ajouté la classe .swiper-initialized,
 * on cache les flèches et les dots pour éviter le flash
 * "navigation visible avant init" — et surtout pas d'espace réservé.
 *
 * Après init, Swiper gère lui-même la visibilité :
 *  - .swiper-button-lock     -> flèches masquées (peu de slides)
 *  - .swiper-pagination-lock -> dots masqués (peu de slides)
 *  - .swiper-button-disabled -> flèche grisée (début/fin)
 */
.swiper:not(.swiper-initialized) .swiper-arrow-wrapper,
.swiper:not(.swiper-initialized) .elementor-swiper-button,
.swiper:not(.swiper-initialized) .swiper-pagination {
    display: none !important;
}

/* Sécurité : si Swiper marque la nav comme "lock" (pas besoin), on force le masquage */
.swiper .swiper-button-lock,
.swiper .swiper-pagination-lock {
    display: none !important;
}

/* Si toutes les flèches du wrapper sont en lock, on cache aussi le wrapper
 * (évite la marge vide quand il n'y a pas assez de slides) */
.swiper-arrow-wrapper:has(.elementor-swiper-button-prev.swiper-button-lock):has(.elementor-swiper-button-next.swiper-button-lock) {
    display: none !important;
}
