/* Estilos de marca Zona 3D que complementan a Tailwind */

[x-cloak] { display: none !important; }

.font-display { font-family: "Montserrat", ui-sans-serif, system-ui, sans-serif; }

/* Botones */
.btn-primary,
.btn-secondary {
  display: inline-block;
  border-radius: 0.5rem;
  padding: 0.55rem 1.1rem;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.25rem;
  transition: background-color .15s, color .15s, border-color .15s;
  cursor: pointer;
}
.btn-primary { background: #206eea; color: #fff; border: 1px solid #206eea; }
.btn-primary:hover { background: #1857c0; border-color: #1857c0; }
.btn-secondary { background: #fff; color: #0b1c3a; border: 1px solid #cbd5e1; }
.btn-secondary:hover { border-color: #0b1c3a; }

/* Formularios: aplica a los formularios propios y a los de django-allauth */
.zform p,
.zform .field { margin-bottom: 1rem; }
.zform label { display: block; font-size: 0.875rem; font-weight: 500; margin-bottom: 0.35rem; color: #0b1c3a; }
.zform input[type="text"],
.zform input[type="email"],
.zform input[type="password"],
.zform input[type="tel"],
.zform input[type="number"],
.zform select,
.zform textarea {
  width: 100%;
  border: 1px solid #cbd5e1;
  border-radius: 0.5rem;
  padding: 0.6rem 0.75rem;
  font-size: 0.95rem;
  background: #fff;
}
.zform input:focus,
.zform select:focus,
.zform textarea:focus { outline: 2px solid #206eea; outline-offset: 0; border-color: #206eea; }
.zform input[type="checkbox"] { margin-right: 0.4rem; }
.zform label:has(input[type="checkbox"]),
.zform label:has(input[type="radio"]) { display: flex; align-items: center; gap: 0.4rem; font-weight: 400; }
.zform input[type="radio"] { margin-right: 0.2rem; }
.zform fieldset legend { font-size: 1.05rem; }
.zform .helptext,
.zform .help-text,
.zform span.helptext { display: block; font-size: 0.8rem; color: #64748b; margin-top: 0.3rem; }
.zform .helptext ul { padding-left: 1rem; list-style: disc; }
.zform .errorlist { color: #b91c1c; font-size: 0.85rem; margin: 0.3rem 0; list-style: none; padding: 0; }
.zform button[type="submit"] {
  width: 100%;
  background: #206eea;
  color: #fff;
  border: 0;
  border-radius: 0.5rem;
  padding: 0.7rem 1rem;
  font-weight: 600;
  cursor: pointer;
}
.zform button[type="submit"]:hover { background: #1857c0; }

/* Contenido de páginas de cuenta que no tienen plantilla propia */
.auth-content h1 { font-family: "Montserrat", sans-serif; font-weight: 800; font-size: 1.6rem; color: #0b1c3a; margin-bottom: 1rem; }
.auth-content p { margin-bottom: 0.9rem; }
.auth-content a { color: #206eea; }
.auth-content form { margin-top: 1rem; }
