/* ==========================================================================
   FORMULARIOS — campo genérico .field (label + input/select/textarea)
   ========================================================================== */
.field { display: grid; gap: .45rem; }
.field label {
  font-size: .72rem; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--gris);
}
.field input, .field select, .field textarea {
  width: 100%;
  background: var(--blanco);
  border: 1.5px solid var(--linea);
  border-radius: var(--radio-s);
  padding: .8rem .95rem;
  color: var(--tinta);
  transition: border-color var(--tr), box-shadow var(--tr);
}
.field input:focus, .field select:focus, .field textarea:focus {
  outline: none; border-color: var(--primario);
  box-shadow: 0 0 0 3px var(--menta);
}
.field input::placeholder, .field textarea::placeholder { color: var(--gris-suave); }

/* ---- Formulario en columna + línea de error ----
   Compartidos por la reserva (index.html) y el acceso al panel (admin.html) */
.booking-form { display: grid; gap: 1rem; }
.booking-error { display: none; text-align: center; font-size: .8rem; font-weight: 500; color: var(--error); }
