.zlf-wrap {
  width: 100%;
  max-width: 600px !important;
  background: #ffffff;
  border-radius: 12px;
  padding: 28px 24px;
  color: #111827;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Helvetica,Arial,sans-serif;
  box-shadow: 0 2px 12px rgba(0,0,0,.08);
}

.zlf-title {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 16px;
  color:#0f172a;
  text-align:center;
}

/* ==== CAMPOS ==== */
.zlf-field { 
  margin: 0 0 18px 0; /* margen por defecto para todos los campos */
}

/* inputs, selects y textarea */
.zlf-input,
.zlf-textarea,
.zlf-select {
  width: 100%;
  background: #fff !important;
  border: 1px solid #d1d5db !important;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 15px;
  color: #111827;
  outline: none;
  transition: border-color .2s, box-shadow .2s, background-color .2s;
}

.zlf-input::placeholder { color: #9ca3af; }
.zlf-select option { background:#fff; color:#111827; }

/* Placeholder de select */
.zlf-select option[disabled] { color: #9ca3af; }
.zlf-select:invalid,
.zlf-select option[disabled]:checked { color: #9ca3af; }

/* Focus */
.zlf-input:focus,
.zlf-textarea:focus,
.zlf-select:focus {
  border-color: #FFCB0F;
  box-shadow: 0 0 0 3px rgba(255,203,15,.35);
  background-color: #fffef8;
}

/* ==== FILAS HORIZONTALES ==== */
.zlf-row {
  display: flex;
  gap: 12px;
}

.zlf-row .zlf-field {
  flex: 1 1 0;
  min-width: 0;
}

/* País más estrecho */
.zlf-row-mix .zlf-field:first-child {
  flex: 0 0 auto;
}

.zlf-row-mix .zlf-field:first-child .zlf-select {
  width: auto;
  min-width: 160px;
}

/* Teléfono ocupa el resto */
.zlf-row-mix .zlf-field:last-child {
  flex: 1 1 0;
  min-width: 0;
}

/* ==== LEGAL ==== */
.zlf-legal {
  display:flex;
  align-items:flex-start;
  margin-top:16px;
  font-size:13px;
  color:#374151;
  line-height:1.4;
}

.zlf-legal input[type=checkbox]{
  margin-right:8px;
  margin-top:3px;
}

/* ==== BOTÓN ==== */
.zlf-cta {
  display:block;
  width:100%;
  background:#FFCB0F;
  color:#fff;
  font-weight:600;
  font-size:16px;
  border:none;
  border-radius:8px;
  padding:14px;
  cursor:pointer;
  text-align:center;
  margin-top:18px;
  transition: background .2s, transform .1s;
}

.zlf-cta:hover{
  background:#dfb008;
}

/* ==== ERRORES ==== */
.zoho-error{
  color:#b91c1c;
  background:rgba(185,28,28,.05);
  padding:6px 10px;
  border-radius:6px;
  margin-top:6px;
  font-size:13px;
  display:block;
}

.zlf-invalid {
  border-color:#b91c1c !important;
  box-shadow:0 0 0 2px rgba(185,28,28,.15) !important;
}

/* ==== RESPONSIVE ==== */
@media (max-width: 768px) {
  .zlf-row {
    flex-direction: column;
  }
  .zlf-row-mix .zlf-field:first-child {
    flex: 1 1 auto;
  }
  .zlf-row-mix .zlf-field:first-child .zlf-select {
    width: 100%;
    min-width: unset;
  }
}


textarea {
  color: #666;
  padding: .75em;
  height: auto;
  border-width: .50px;
  border-style: solid;
  border-color: #666;
  width: 100%;
  border-radius: 2px;  
  box-shadow: none;
  box-sizing: border-box;
  transition: all .2s linear;
}
