/* ============================ */
/* Formulario: base y tipografía */
/* ============================ */
.webform-submission-form {
  max-width: 800px;
  margin: 0 auto;
  padding: 2em;
  border: 1px solid #ddd;
  border-radius: 8px;
  background-color: #f9f9f9;
  font-family: 'Poppins', sans-serif; /* si ya la cargas en el tema */
}

/* Espaciado entre items */
.webform-submission-form .form-item,
.webform-submission-form .form-group {
  margin-bottom: 25px;
}

/* Labels */
.webform-submission-form label {
  font-weight: 600;
  color: #333;
  margin-bottom: 5px;
  display: block;
}

/* Inputs y selects (base) */
.webform-submission-form input[type="text"],
.webform-submission-form input[type="email"],
.webform-submission-form input[type="tel"],
.webform-submission-form input[type="number"],
.webform-submission-form input[type="date"],
.webform-submission-form textarea,
.webform-submission-form select {
  width: 100%;
  padding: 12px;
  margin-top: 5px;
  margin-bottom: 20px;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-sizing: border-box;
  font-size: 16px;
}

/* Checkboxes */
.webform-submission-form input[type="checkbox"] {
  margin-right: 8px;
}
.webform-submission-form .form-type-checkbox {
  margin-bottom: 20px; /* unificado (antes 15/20) */
}

/* Botonera */
.webform-buttons {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 25px;
}

/* Botón principal */
.webform-submission-form input[type="submit"] {
  background-color: #005239;
  color: #ffffff;
  padding: 15px 25px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  transition: background-color 0.3s ease;
}

/* Botón secundario (si existe) */
.webform-submission-form .button--anterior {
  background-color: #6c757d;
  color: #ffffff;
  padding: 15px 25px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  transition: background-color 0.3s ease;
}

/* Hovers (simplificados) */
.webform-submission-form input[type="submit"]:hover {
  background-color: #92cdb9;
}
.webform-submission-form .button--anterior:hover {
  background-color: #5a6268;
}

/* Progreso (si usas progress-tracker) */
.webform-submission-form .webform-progress-tracker li.is-active .progress-text [role="link"] {
  color: #005239 !important;
}
.webform-submission-form .webform-progress-tracker li.is-complete::after {
  background-color: #005239 !important;
}

/* Tipografía uniforme en labels y opciones */
.webform-submission-form label,
.webform-submission-form .option {
  font-size: 16px;
  font-weight: 600;
  color: #333;
}
/* Label principal por item */
.webform-submission-form .form-item > label {
  font-size: 18px;
  font-weight: 600;
}
/* Opciones (radios/checkboxes) */
.webform-submission-form .option {
  font-size: 16px;
  font-weight: normal;
}

/* ============================ */
/* TELÉFONO (intl-tel-input fix) */
/* ============================ */

/* Deja espacio a la bandera dentro del input */
.webform-submission-form input[type="tel"] {
  padding-left: 50px !important;
  box-sizing: border-box;
}

/* Posiciona la bandera centrada */
.webform-submission-form .iti__flag-container {
  position: absolute !important;
  top: 50% !important;
  left: 10px !important;
  transform: translateY(-50%) !important;
  z-index: 2;
}

/* Asegura que el wrapper ocupe todo el ancho del control */
.webform-submission-form .iti {
  width: 100% !important;
  display: block;
}

/* ============================ */
/* (Opcional) Alineación fila Teléfono/Asunto */
/* ============================ */
/* ⚠️ SOLO si tu fila de Teléfono/Asunto tiene un contenedor de columnas específico.
   Sustituye .webform-flexbox-telefono-asunto por la clase/ID REAL de esa fila para no afectar checkboxes. */

/*
.webform-submission-form .webform-flexbox-telefono-asunto {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;  // alinea verticalmente ambos
}
.webform-submission-form .webform-flexbox-telefono-asunto > .form-item {
  flex: 1;
  min-width: 300px;
}
*/

/* Igualar altura visual de los controles SOLO dentro de esa fila */
/*
.webform-submission-form .webform-flexbox-telefono-asunto input[type="tel"],
.webform-submission-form .webform-flexbox-telefono-asunto select {
  height: 44px !important;
  line-height: 44px !important;
}
*/

/* ====== Alinear Teléfono y Asunto ====== */
.webform-submission-form .form-item input[type="tel"],
.webform-submission-form .form-item select {
  height: 44px !important;       /* misma altura */
  line-height: 44px !important;  /* texto centrado */
  box-sizing: border-box !important;
}

/* Mantener bandera dentro del input */
.webform-submission-form input[type="tel"] {
  padding-left: 50px !important; /* espacio para bandera */
}

/* Igualar tamaño de las casillas */
.webform-submission-form input[type="checkbox"] {
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  vertical-align: middle;
}

/* Alinear texto con la casilla */
.webform-submission-form .form-type-checkbox {
  display: flex;
  align-items: center;
  gap: 8px; /* espacio entre casilla y texto */
}
