/* =====================================================
   ECIG AUTH MAISON 1.1.0 — POPUP DE CONNEXION GLOBAL
   BuddyPress reste actif, seule l'interface Youzify est remplacée.
   ===================================================== */
html.ecig-auth-modal-open,
html.ecig-auth-modal-open body {
  overflow: hidden !important;
}

.ecig-auth-modal[hidden] {
  display: none !important;
}

.ecig-auth-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  display: grid !important;
  place-items: center !important;
  padding: 18px !important;
  font-family: inherit !important;
}

.ecig-auth-modal,
.ecig-auth-modal *,
.ecig-auth-modal *::before,
.ecig-auth-modal *::after {
  box-sizing: border-box !important;
}

.ecig-auth-modal__backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(24, 9, 35, .72) !important;
  backdrop-filter: blur(7px) !important;
  -webkit-backdrop-filter: blur(7px) !important;
  animation: ecigAuthBackdropIn .18s ease-out both !important;
}

.ecig-auth-modal__dialog {
  position: relative !important;
  width: min(460px, 100%) !important;
  max-height: calc(100vh - 36px) !important;
  overflow: auto !important;
  padding: 31px 32px 27px !important;
  border: 1px solid rgba(255,255,255,.9) !important;
  border-radius: 25px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255,118,72,.13), transparent 33%),
    linear-gradient(180deg, #fff 0%, #fff9f6 100%) !important;
  box-shadow: 0 32px 90px rgba(28,11,40,.34) !important;
  color: #241231 !important;
  animation: ecigAuthDialogIn .22s cubic-bezier(.2,.8,.2,1) both !important;
}

.ecig-auth-modal__dialog::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto !important;
  height: 4px !important;
  border-radius: 25px 25px 0 0 !important;
  background: linear-gradient(90deg,#7b3fc7,#d95785,#ff7648) !important;
}

.ecig-auth-modal__close {
  position: absolute !important;
  top: 13px !important;
  right: 13px !important;
  z-index: 2 !important;
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(36,18,49,.07) !important;
  color: #4d3659 !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.ecig-auth-modal__close:hover,
.ecig-auth-modal__close:focus-visible {
  background: rgba(123,63,199,.12) !important;
  color: #6d32ad !important;
  outline: 2px solid rgba(123,63,199,.25) !important;
  outline-offset: 2px !important;
}

.ecig-auth-modal__brand {
  margin: 0 42px 18px 0 !important;
  color: #7b3fc7 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .16em !important;
}

.ecig-auth-modal__kicker {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 27px !important;
  margin-bottom: 10px !important;
  padding: 5px 9px !important;
  border-radius: 999px !important;
  background: rgba(123,63,199,.08) !important;
  color: #6d32ad !important;
  font-size: 11px !important;
  font-weight: 850 !important;
}

.ecig-auth-modal__dialog h2 {
  margin: 0 0 8px !important;
  color: #241231 !important;
  font-size: clamp(27px, 5vw, 34px) !important;
  line-height: 1.06 !important;
  font-weight: 950 !important;
  letter-spacing: -.035em !important;
}

.ecig-auth-modal__intro {
  margin: 0 0 21px !important;
  color: #75687d !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  font-weight: 650 !important;
}

.ecig-auth-modal__form {
  display: grid !important;
  gap: 15px !important;
  margin: 0 !important;
}

.ecig-auth-modal__field {
  display: grid !important;
  gap: 7px !important;
  margin: 0 !important;
  color: #3a2447 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
}

.ecig-auth-modal__field > input,
.ecig-auth-modal__field .ecig-auth-password-wrap > input {
  width: 100% !important;
  height: 49px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid rgba(68,44,80,.17) !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: #241231 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.8) inset !important;
  outline: none !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}

.ecig-auth-modal__field .ecig-auth-password-wrap > input {
  padding-right: 80px !important;
}

.ecig-auth-modal__field input:focus {
  border-color: rgba(123,63,199,.62) !important;
  box-shadow: 0 0 0 4px rgba(123,63,199,.10) !important;
}

.ecig-auth-modal__options {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: -2px !important;
  color: #75687d !important;
  font-size: 11px !important;
  font-weight: 750 !important;
}

.ecig-auth-modal__options label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 !important;
  cursor: pointer !important;
}

.ecig-auth-modal__options input {
  width: 15px !important;
  height: 15px !important;
  margin: 0 !important;
}

.ecig-auth-modal__options a,
.ecig-auth-modal__register a {
  color: #7137b3 !important;
  text-decoration: none !important;
  font-weight: 850 !important;
}

.ecig-auth-modal__options a:hover,
.ecig-auth-modal__register a:hover {
  text-decoration: underline !important;
}

.ecig-auth-modal__submit {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 51px !important;
  margin: 3px 0 0 !important;
  padding: 0 17px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: linear-gradient(100deg,#7637bd 0%,#9141ca 55%,#ff7549 130%) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  box-shadow: 0 12px 25px rgba(112,50,175,.24) !important;
  transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease !important;
}

.ecig-auth-modal__submit:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 15px 30px rgba(112,50,175,.29) !important;
}

.ecig-auth-modal__submit:disabled,
.ecig-auth-modal__submit.is-loading {
  opacity: .72 !important;
  cursor: wait !important;
  transform: none !important;
}

.ecig-auth-modal__register {
  margin-top: 18px !important;
  padding-top: 17px !important;
  border-top: 1px solid rgba(54,31,66,.10) !important;
  color: #75687d !important;
  text-align: center !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

.ecig-auth-modal__message {
  margin: 0 0 15px !important;
  padding: 11px 13px !important;
  border: 1px solid rgba(181,45,46,.17) !important;
  border-radius: 12px !important;
  background: #fff1f1 !important;
  color: #8e2526 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 800 !important;
}

.ecig-auth-modal__message.is-success {
  border-color: rgba(0,138,32,.18) !important;
  background: #effaf1 !important;
  color: #087625 !important;
}

.ecig-auth-modal__message[hidden] {
  display: none !important;
}


.ecig-auth-modal__field.is-error > span:first-child {
  color: #b42325 !important;
}

.ecig-auth-modal__field.is-error input,
.ecig-auth-modal__field input.is-error {
  border-color: #d83c3e !important;
  background: #fff7f7 !important;
  box-shadow: 0 0 0 3px rgba(216,60,62,.12) !important;
}

.ecig-auth-modal__field.is-error input:focus,
.ecig-auth-modal__field input.is-error:focus {
  border-color: #b42325 !important;
  box-shadow: 0 0 0 4px rgba(216,60,62,.16) !important;
}

@keyframes ecigAuthBackdropIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes ecigAuthDialogIn {
  from { opacity: 0; transform: translateY(12px) scale(.985); }
  to { opacity: 1; transform: none; }
}

@media (max-width: 520px) {
  .ecig-auth-modal {
    align-items: end !important;
    padding: 10px !important;
  }

  .ecig-auth-modal__dialog {
    width: 100% !important;
    max-height: calc(100vh - 20px) !important;
    padding: 27px 20px 22px !important;
    border-radius: 22px !important;
  }

  .ecig-auth-modal__options {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 9px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ecig-auth-modal__backdrop,
  .ecig-auth-modal__dialog {
    animation: none !important;
  }
}

/* Dépendances autonomes du popup : ne reposent pas sur auth.css. */
.ecig-auth-modal .ecig-auth-hp {
  position: absolute !important;
  left: -99999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.ecig-auth-modal .ecig-auth-password-wrap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.ecig-auth-modal .ecig-auth-password-toggle {
  position: absolute !important;
  top: 50% !important;
  right: 7px !important;
  transform: translateY(-50%) !important;
  width: auto !important;
  min-width: 63px !important;
  min-height: 31px !important;
  margin: 0 !important;
  padding: 5px 9px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: rgba(123,63,199,.08) !important;
  color: #6d32ad !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: none !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.ecig-auth-modal .ecig-auth-password-toggle:hover,
.ecig-auth-modal .ecig-auth-password-toggle:focus-visible {
  background: rgba(123,63,199,.14) !important;
  outline: 2px solid rgba(123,63,199,.18) !important;
  outline-offset: 1px !important;
}
