/* Saisons LMDB · boutons d'aide « WhatsApp » et « Appeler »
   En bas, côté début de ligne (à gauche en français, à droite en arabe) : l'autre coin reste libre
   pour les boutons de saison (compteur de la chasse, mode calme).
   Couleurs : jetons de la saison en cours s'ils existent (--lmdb-*), sinon valeurs neutres. */

.lmdb-contact {
  position: fixed;
  inset-inline-start: max(14px, env(safe-area-inset-left, 0px));
  bottom: calc(14px + env(safe-area-inset-bottom, 0px));
  z-index: 1440;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  max-width: calc(100vw - 28px);
  transition: transform 0.3s ease;
  font-family: inherit;
}

/* La barre d'achat collante des landings (mobile) occupe le bas : on remonte au-dessus */
body:has(.lmdb-sticky-cta:not([hidden]):not(.is-away)) .lmdb-contact { transform: translateY(-78px); }

.lmdb-contact__help {
  flex-basis: 100%;
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--lmdb-ink, #1D1D1B);
  text-shadow: 0 0 6px var(--lmdb-bg, #FFFFFF), 0 0 2px var(--lmdb-bg, #FFFFFF);
}
.lmdb-contact__hours { display: block; font-weight: 500; opacity: 0.85; }

.lmdb-contact__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 18px 0 14px;
  border-radius: 999px;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.lmdb-contact__btn svg { flex-shrink: 0; }
.lmdb-contact__btn:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(0, 0, 0, 0.28); text-decoration: none; }
.lmdb-contact__btn:focus-visible { outline: 3px solid var(--lmdb-accent, #1D1D1B); outline-offset: 3px; }

.lmdb-contact__btn--wa,
.lmdb-contact__btn--wa:hover,
.lmdb-contact__btn--wa:focus { background: #1F8F4E; color: #FFFFFF; }

.lmdb-contact__btn--call,
.lmdb-contact__btn--call:hover,
.lmdb-contact__btn--call:focus {
  background: var(--lmdb-surface, #FFFFFF);
  color: var(--lmdb-ink, #1D1D1B);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22), inset 0 0 0 1.5px var(--lmdb-line, #D6D6D6);
}
.lmdb-contact__num { unicode-bidi: isolate; font-variant-numeric: tabular-nums; }

/* Téléphone : deux pastilles rondes, sans texte (libellés complets pour les lecteurs d'écran) */
@media (max-width: 767px) {
  .lmdb-contact__help { display: none; }
  .lmdb-contact__btn { width: 52px; min-height: 52px; padding: 0; justify-content: center; }
  .lmdb-contact__btn svg { width: 26px; height: 26px; }
  .lmdb-contact__label {
    position: absolute; width: 1px; height: 1px; overflow: hidden;
    clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
  }
}

/* Halloween : pastille d'appel couleur de nuit, lueur de citrouille au survol */
body.aesthetic-halloween .lmdb-contact__btn--call { background: rgba(37, 26, 85, 0.94); color: #F6F2FF; box-shadow: 0 8px 24px rgba(8, 4, 30, 0.5), inset 0 0 0 1px rgba(201, 190, 240, 0.25); }
body.aesthetic-halloween .lmdb-contact__btn:hover { box-shadow: 0 0 0 1px rgba(255, 231, 163, 0.3), 0 0 26px rgba(255, 154, 77, 0.45); }
body.aesthetic-halloween .lmdb-contact__help { color: #F6F2FF; text-shadow: 0 1px 8px rgba(8, 4, 30, 0.9); }

/* Arabe */
.lang-rtl .lmdb-contact { letter-spacing: 0; }

@media (prefers-reduced-motion: reduce) {
  .lmdb-contact, .lmdb-contact__btn { transition: none; }
  .lmdb-contact__btn:hover { transform: none; }
}
@media (forced-colors: active) {
  .lmdb-contact__btn { border: 2px solid ButtonText; }
}
@media print { .lmdb-contact { display: none; } }
