.ju-import-form input[type="file"] {
  padding: 8px;
  background: #fff;
}
.ju_user_import_label, .ju_profil_import_label, .ju_activites_import_label {
  color: black !important;
  font-size: 1em;
}
.ju_button {
  text-decoration: none !important;
  font-weight: normal !important;
}
#ju_dry_run, #ju_allow_overwrite, #ju_dry_run_users, #ju_dry_run_activites{
  float: left;
}

small {
  font-size: .8em !important;
}

/* ============================================================
 *  Bouton sauvegarde brouillon
 * ============================================================ */

.ju-save-draft {
  cursor: pointer !important;
}

/* ============================================================
 *  Champs verrouillés (Profil Membre uniquement)
 * ============================================================ */

form input[readonly][name^="de_fb_"] {
  background: #eee !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
}

form [disabled] {
  background: #eee !important;
  cursor: not-allowed !important;
  opacity: 0.8;
}

/* ============================================================
 *  Overlay global de sauvegarde
 * ============================================================ */

#ju-save-overlay {
  position: fixed;
  inset: 0;
  background: rgba(255, 255, 255, 0.75);
  z-index: 99999;

  display: flex;
  align-items: center;
  justify-content: center;

  cursor: wait;
}

#ju-save-overlay .ju-save-message {
  font-size: 1.1rem;
  color: #333;
  background: #fff;

  padding: 1.2rem 1.6rem;
  border-radius: 6px;

  box-shadow: 0 6px 20px rgba(0,0,0,.15);
}

/* ============================================================
 *  Toast de confirmation – Profil Membre
 * ============================================================ */

.ju-pm-toast {
  position: fixed;
  bottom: 20px;
  right: 20px;

  background: #2d2d2d;
  color: #fff;

  padding: 10px 14px;
  border-radius: 4px;

  font-size: 14px;
  line-height: 1.4;

  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;

  transition: opacity 0.2s ease, transform 0.2s ease;
  z-index: 9999;
}

.ju-pm-toast.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Accessibilité – réduire les animations si demandé */
@media (prefers-reduced-motion: reduce) {
  .ju-pm-toast {
    transition: none;
  }
}

/* ============================================================
 *  Message de succès – soumission Divi
 * ============================================================ */

.message_wrapper {
  margin: 1.5rem 0;
}

.message.message_success {
  background: #e6f7ef;
  color: #155724;

  border-left: 4px solid #2fbf71;
  padding: 14px 18px;
  border-radius: 4px;

  font-size: 15px;
  line-height: 1.5;

  box-shadow: 0 2px 6px rgba(0,0,0,.05);
}
.message_wrapper .message_success {
  background: #e6f7ec;
  border: 1px solid #2ecc71;
  color: #1e7e34;
  padding: 1rem 1.2rem;
  border-radius: 6px;
  margin-bottom: 1.5rem;
  font-weight: 500;
}

/* Mobile */
@media (max-width: 600px) {
  .ju-pm-toast {
    left: 50%;
    right: auto;
    transform: translate(-50%, 10px);
  }

  .ju-pm-toast.is-visible {
    transform: translate(-50%, 0);
  }
}

.de_fb_form_0 p.et_pb_contact_field :is(input, select, textarea):focus {
  border-color: #2d3940;
}

