/* © Pascal Evrard / Agence digitale afondlacom' 2026 */
/* Je rends ici le sélecteur flottant collé au bord de page avec un style discret et stable. */

.aflcfloatlang {
  position: fixed;
  top: var(--aflc-top-desktop, 48px);
  z-index: 2147482000;
  pointer-events: none;
  line-height: 1;
}

.aflcfloatlang,
.aflcfloatlang *,
.aflcfloatlang *::before,
.aflcfloatlang *::after {
  box-sizing: border-box;
}

.aflcfloatlang--desktop-right {
  right: 0;
}

.aflcfloatlang--desktop-left {
  left: 0;
}

/* Je conserve le conteneur en dehors du flux, mais je rends les boutons cliquables. */
.aflcfloatlang__list {
  list-style: none;
  margin: 0;
  padding: 6px 4px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: rgba(255, 255, 255, var(--aflc-panel-opacity, 0.92));
  -webkit-backdrop-filter: saturate(145%) blur(8px);
  backdrop-filter: saturate(145%) blur(8px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
}

.aflcfloatlang--desktop-right .aflcfloatlang__list {
  border-radius: 10px 0 0 10px;
  padding-right: 3px;
}

.aflcfloatlang--desktop-left .aflcfloatlang__list {
  border-radius: 0 10px 10px 0;
  padding-left: 3px;
}

.aflcfloatlang__item {
  margin: 0;
  padding: 0;
}

.aflcfloatlang__link {
  pointer-events: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 38px;
  gap: 6px;
  padding: 6px 7px;
  text-decoration: none !important;
  border: 0;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.55);
  color: #1f1f1f !important;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease, opacity .18s ease;
  -webkit-tap-highlight-color: transparent;
}

.aflcfloatlang__link:hover,
.aflcfloatlang__link:focus,
.aflcfloatlang__link:active {
  text-decoration: none !important;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.10);
  transform: translateX(0);
  outline: none;
}

.aflcfloatlang--desktop-right .aflcfloatlang__link:hover,
.aflcfloatlang--desktop-right .aflcfloatlang__link:focus {
  transform: translateX(-1px);
}

.aflcfloatlang--desktop-left .aflcfloatlang__link:hover,
.aflcfloatlang--desktop-left .aflcfloatlang__link:focus {
  transform: translateX(1px);
}

.aflcfloatlang__link.is-current {
  background: rgba(255, 255, 255, 0.95);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08);
}

.aflcfloatlang__flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 12px;
  line-height: 1;
}


.aflcfloatlang__flag-image {
  display: block;
  width: 18px;
  height: 12px;
  min-width: 18px;
  min-height: 12px;
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
  object-fit: cover;
}

.aflcfloatlang__code {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #1f1f1f;
}

.aflcfloatlang--with-labels .aflcfloatlang__link {
  min-width: 56px;
  justify-content: center;
}

/* Je prévois ici une compatibilité propre sur les écrans plus petits. */
@media (max-width: 991px) {
  .aflcfloatlang {
    top: var(--aflc-top-mobile, 42px);
  }

  .aflcfloatlang--mobile-right {
    right: 0;
    left: auto;
  }

  .aflcfloatlang--mobile-left {
    left: 0;
    right: auto;
  }

  .aflcfloatlang__list {
    gap: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
  }

  .aflcfloatlang__link {
    min-width: 36px;
    min-height: 36px;
    padding: 6px;
  }
}

/* Je force ici une lisibilité maximale si le navigateur ne gère pas le flou de fond. */
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .aflcfloatlang__list {
    background: rgba(255, 255, 255, 0.96);
  }
}
