:root{
  --slx-slider-bg:#244857;
  --slx-slider-hover:#d85c3e;
  --slx-slider-size:42px;
}

/* Sun&Lux — boutons de navigation homogènes.
   Le widget conserve son positionnement natif. Le module ne change que l'aspect. */
.slick-prev,
.slick-next,
.swiper-button-prev,
.swiper-button-next,
.elementor-swiper-button-prev,
.elementor-swiper-button-next,
.wpr-swiper-button-prev,
.wpr-swiper-button-next,
.wpr-slider-prev-arrow,
.wpr-slider-next-arrow,
.wpr-grid-slider-prev-arrow,
.wpr-grid-slider-next-arrow,
.carousel-control-prev,
.carousel-control-next{
  width:var(--slx-slider-size)!important;
  height:var(--slx-slider-size)!important;
  min-width:var(--slx-slider-size)!important;
  min-height:var(--slx-slider-size)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  background:var(--slx-slider-bg)!important;
  border:0!important;
  border-radius:50%!important;
  color:#fff!important;
  font-size:0!important;
  line-height:1!important;
  opacity:1!important;
  box-shadow:none!important;
  transition:background-color .14s ease!important;
  /* Fige uniquement la transformation native mesurée par le JS afin
     qu'un hover du thème ne puisse plus déplacer le bouton. */
  transform:var(--slx-native-transform, none)!important;
}

.slick-prev:hover,
.slick-next:hover,
.swiper-button-prev:hover,
.swiper-button-next:hover,
.elementor-swiper-button-prev:hover,
.elementor-swiper-button-next:hover,
.wpr-swiper-button-prev:hover,
.wpr-swiper-button-next:hover,
.wpr-slider-prev-arrow:hover,
.wpr-slider-next-arrow:hover,
.wpr-grid-slider-prev-arrow:hover,
.wpr-grid-slider-next-arrow:hover,
.carousel-control-prev:hover,
.carousel-control-next:hover{
  background:var(--slx-slider-hover)!important;
  box-shadow:none!important;
  transform:var(--slx-native-transform, none)!important;
}

/* Masque tous les pictogrammes natifs. */
.slick-prev > svg,.slick-next > svg,
.swiper-button-prev > svg,.swiper-button-next > svg,
.elementor-swiper-button-prev > svg,.elementor-swiper-button-next > svg,
.wpr-swiper-button-prev > svg,.wpr-swiper-button-next > svg,
.wpr-slider-prev-arrow > svg,.wpr-slider-next-arrow > svg,
.wpr-grid-slider-prev-arrow > svg,.wpr-grid-slider-next-arrow > svg,
.carousel-control-prev > svg,.carousel-control-next > svg,
.slick-prev > i,.slick-next > i,
.elementor-swiper-button-prev > i,.elementor-swiper-button-next > i,
.wpr-swiper-button-prev > i,.wpr-swiper-button-next > i,
.wpr-slider-prev-arrow > i,.wpr-slider-next-arrow > i,
.wpr-grid-slider-prev-arrow > i,.wpr-grid-slider-next-arrow > i,
.carousel-control-prev-icon,.carousel-control-next-icon{
  opacity:0!important;
  visibility:hidden!important;
}

/* Neutralise les pseudo-icônes natives de Slick / Swiper / widgets. */
.slick-prev::before,
.slick-next::before,
.swiper-button-prev::after,
.swiper-button-next::after,
.elementor-swiper-button-prev::after,
.elementor-swiper-button-next::after,
.wpr-swiper-button-prev::after,
.wpr-swiper-button-next::after,
.wpr-slider-prev-arrow::after,
.wpr-slider-next-arrow::after,
.wpr-grid-slider-prev-arrow::after,
.wpr-grid-slider-next-arrow::after,
.carousel-control-prev::after,
.carousel-control-next::after{
  content:none!important;
  display:none!important;
}

/* Notre pictogramme est un vrai élément HTML injecté par le module.
   Il ne dépend donc plus des classes ou glyphes du widget. */
.slx-slider-arrow-icon{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:11px!important;
  height:11px!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0 solid #fff!important;
  border-top-width:2.4px!important;
  border-right-width:2.4px!important;
  border-radius:1px!important;
  pointer-events:none!important;
  transform-origin:center!important;
}

.slx-slider-direction-prev > .slx-slider-arrow-icon{
  transform:translate(-38%,-50%) rotate(-135deg)!important;
}

.slx-slider-direction-next > .slx-slider-arrow-icon{
  transform:translate(-62%,-50%) rotate(45deg)!important;
}

.slick-prev:focus-visible,.slick-next:focus-visible,
.swiper-button-prev:focus-visible,.swiper-button-next:focus-visible,
.elementor-swiper-button-prev:focus-visible,.elementor-swiper-button-next:focus-visible,
.wpr-swiper-button-prev:focus-visible,.wpr-swiper-button-next:focus-visible,
.wpr-slider-prev-arrow:focus-visible,.wpr-slider-next-arrow:focus-visible,
.wpr-grid-slider-prev-arrow:focus-visible,.wpr-grid-slider-next-arrow:focus-visible,
.carousel-control-prev:focus-visible,.carousel-control-next:focus-visible{
  outline:2px solid rgba(216,92,62,.58)!important;
  outline-offset:3px!important;
}

.swiper-button-disabled,.slick-disabled{
  opacity:.32!important;
  cursor:default!important;
  pointer-events:none!important;
}

@media(max-width:767px){
  :root{--slx-slider-size:38px}
  .slx-slider-arrow-icon{
    width:10px!important;
    height:10px!important;
    border-top-width:2.2px!important;
    border-right-width:2.2px!important;
  }
}
