/**
 * Styles pour les formulaires
 */

/* Styles généraux pour les formulaires */
.is-form-container {
  width: 100%;
  max-width: 976px;
  border-radius: var(--wp--custom--radius-fluid);
  padding: var(--wp--custom--spacer-fluid);
  box-shadow: var(--wp--custom--shadow-medium);
  margin: 0 auto;
}

/* Champs de texte et textarea */
form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="number"],
form input[type="url"],
form input[type="password"],
form select,
form textarea {
    width: 100%;
    padding: 10px 25px;
    border: 1px solid var(--wp--preset--color--gray-200, #E5E5E5);
    border-radius: 100px; /* Border-radius arrondi de 100px */
    background-color: var(--wp--preset--color--white);
    font-size: 1rem;
    transition: all 0.3s ease;
}

/* Textarea avec un border-radius plus petit pour éviter une déformation excessive */
form textarea {
    border-radius: 25px;
    min-height: 150px;
    padding: 25px;
}

/* Focus sur les champs */
form input:focus,
form textarea:focus {
    outline: none;
    border-color: var(--wp--preset--color--primary);
    box-shadow: 0 0 0 2px rgba(var(--wp--preset--color--primary-rgb), 0.2);
}

/* Boutons du formulaire */
form button,
form input[type="submit"] {
    position: relative;
    border-radius: 100px;
    background-image: var(--wp--custom--button-gradient-bg-color);
    color: var(--wp--custom--button-gradient-txt-color);
    border: none;
    padding: 0.9375rem 1.5625rem;
    font-family: var(--wp--preset--font-family--text);
    font-size: var(--wp--preset--font-size--buttons);
    line-height: var(--wp--custom--line-height-buttons);
    font-weight: 500;
    z-index: 1;
    cursor: pointer;
}

.submit-button {
  display: flex;
  width: fit-content;
  align-items: start;
}

.submit-button img {
  width: 8px;
  height: auto;
  margin-left: var(--wp--custom--spacer-l-fluid);
  margin-right: 0;
}

/* Hover sur les boutons */
/* form button:hover,
form input[type="submit"]:hover {
    background-image: var(--wp--preset--button-gradient-bg-color) !important;
    transform: translateY(-2px);
} */

/* Labels des champs */
form label {
    display: block;
    font-weight: 500;
}

/* Groupe de champs */
.form-50-fields {
  display: flex;
  flex-direction: column;
  gap: var(--wp--custom--spacer-s-fluid);
}

.form-50-fields div {
  width: 100%;
}

/* Messages d'erreur */
.form-error {
    color: var(--wp--preset--color--error, #dc3545);
    font-size: 0.875rem;
    margin-top: 5px;
}

/* Messages de succès */
.form-success {
    color: var(--wp--preset--color--success, #28a745);
    font-size: 0.875rem;
    margin-top: 5px;
}

/* Disposition en colonnes pour les grands écrans */
@media (min-width: 768px) {
  .form-row {
    display: flex;
    gap: var(--wp--custom--spacer-m);
  }
  
  .form-col {
    flex: 1;
  }
  
  /* Restaurer la disposition en ligne pour les groupes de champs sur desktop */
  .form-50-fields {
    flex-direction: row;
  }
  
  .form-50-fields div {
    width: 50%;
  }
}

/* Ajustements pour les petits écrans */
@media (max-width: 767px) {
  .is-form-container {
    padding: var(--wp--custom--spacer-s-fluid, 15px);
  }
  
  form input[type="text"],
  form input[type="email"],
  form input[type="tel"],
  form input[type="number"],
  form input[type="url"],
  form input[type="password"],
  form select,
  form textarea {
    padding: 8px 15px;
  }
  
  form textarea {
    padding: 15px;
    min-height: 120px;
  }
  
  form button,
  form input[type="submit"] {
    width: 100%;
    padding: var(--wp--custom--spacer-xs, 8px) var(--wp--custom--spacer-m, 16px);
  }
}
