/* ════════════════════════════════════════════════════════════
   LOGIN / REGISTRO — Directorio CODIFICANDO
   Tarjeta moderna centrada + botón de Google destacado.
   Solo afecta las páginas de autenticación (.oe_website_login_container)
   ════════════════════════════════════════════════════════════ */

.oe_website_login_container {
  max-width: 440px !important;
  width: calc(100% - 2rem);
  margin: 2.5rem auto 3.5rem !important;
  padding: 2rem 1.7rem 1.7rem !important;
  background: #fff;
  border: 1px solid #ececf2;
  border-radius: 22px;
  box-shadow: 0 14px 48px rgba(29,28,41,.14);
}

/* Encabezado de marca (lo inyecta la plantilla heredada) */
.dir-authpage-head {
  text-align: center;
  margin-bottom: 1.4rem;
}
.dir-authpage-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto .9rem;
  border-radius: 20px;
  background: linear-gradient(135deg, #F28C28, #f6ac4e);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 24px rgba(242,140,40,.35);
}
.dir-authpage-head h3 {
  font-weight: 900;
  color: #242332 !important;
  letter-spacing: -.01em;
  margin-bottom: .3rem;
}
.dir-authpage-head p {
  color: #7a7a8c !important;
  font-size: .9rem;
  margin: 0;
}

/* Campos */
.oe_website_login_container label {
  font-weight: 700 !important;
  color: #242332 !important;
  font-size: .85rem;
  margin-bottom: .3rem;
}
.oe_website_login_container .form-control {
  border: 2px solid #ececf2 !important;
  border-radius: 12px !important;
  padding: .68rem .95rem !important;
  font-size: .95rem;
  transition: border-color .2s ease, box-shadow .2s ease;
  background: #f9f9fc;
}
.oe_website_login_container .form-control:focus {
  border-color: #F28C28 !important;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(242,140,40,.12) !important;
  outline: none;
}
.oe_website_login_container .mb-3,
.oe_website_login_container .field-login,
.oe_website_login_container .field-password {
  margin-bottom: .9rem !important;
}

/* Botón principal (Iniciar sesión / Registrarse) */
.oe_website_login_container button[type="submit"],
.oe_website_login_container .oe_login_buttons .btn-primary {
  width: 100%;
  background: linear-gradient(135deg, #F28C28, #f6ac4e) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: .75rem 1.4rem !important;
  font-weight: 800 !important;
  font-size: .98rem;
  color: #fff !important;
  letter-spacing: .02em;
  box-shadow: 0 6px 18px rgba(242,140,40,.35);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.oe_website_login_container button[type="submit"]:hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 10px 26px rgba(242,140,40,.42);
}

/* Enlaces secundarios (Restablecer contraseña / ¿No tienes cuenta?) */
.oe_website_login_container .oe_login_buttons a,
.oe_website_login_container a.btn-link,
.oe_website_login_container small a {
  color: #5a5a6b !important;
  font-weight: 600;
  font-size: .86rem;
  text-decoration: none !important;
}
.oe_website_login_container .oe_login_buttons a:hover,
.oe_website_login_container a.btn-link:hover {
  color: #F28C28 !important;
}

/* Separador "- o -" */
.oe_website_login_container .o_divider,
.oe_website_login_container hr {
  border-color: #ececf2;
}

/* ── Botón de Google (proveedores OAuth) ──
   Cubre el enlace del proveedor sin importar sus clases */
.oe_website_login_container a[href*="accounts.google"],
.oe_website_login_container a[href*="oauth"] {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  width: 100%;
  background: #fff !important;
  border: 2px solid #e6e6ee !important;
  border-radius: 50px !important;
  padding: .7rem 1.4rem !important;
  margin-top: .35rem;
  font-weight: 700 !important;
  font-size: .94rem;
  color: #3c4043 !important;
  text-decoration: none !important;
  box-shadow: 0 2px 10px rgba(29,28,41,.06);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.oe_website_login_container a[href*="accounts.google"]:hover,
.oe_website_login_container a[href*="oauth"]:hover {
  transform: translateY(-2px);
  border-color: #d4d4de !important;
  box-shadow: 0 8px 22px rgba(29,28,41,.12);
}
/* Logo multicolor de Google (reemplaza el ícono FontAwesome) */
.oe_website_login_container a[href*="accounts.google"] .fa,
.oe_website_login_container a[href*="oauth"] .fa {
  display: none !important;
}
.oe_website_login_container a[href*="accounts.google"]::before,
.oe_website_login_container a[href*="oauth"]::before {
  content: '';
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path fill="%23FFC107" d="M43.6 20.1H42V20H24v8h11.3C33.7 32.7 29.3 36 24 36c-6.6 0-12-5.4-12-12s5.4-12 12-12c3.1 0 5.9 1.2 8 3l5.7-5.7C34.3 6.1 29.4 4 24 4 13 4 4 13 4 24s9 20 20 20 20-9 20-20c0-1.3-.1-2.6-.4-3.9z"/><path fill="%23FF3D00" d="M6.3 14.7l6.6 4.8C14.7 15.1 19 12 24 12c3.1 0 5.9 1.2 8 3l5.7-5.7C34.3 6.1 29.4 4 24 4 16.3 4 9.7 8.3 6.3 14.7z"/><path fill="%234CAF50" d="M24 44c5.2 0 9.9-2 13.4-5.2l-6.2-5.2C29.2 35.1 26.7 36 24 36c-5.3 0-9.7-3.3-11.3-8l-6.5 5C9.5 39.6 16.2 44 24 44z"/><path fill="%231976D2" d="M43.6 20.1H42V20H24v8h11.3c-.8 2.2-2.2 4.1-4.1 5.5l6.2 5.2C41.4 35.4 44 30.2 44 24c0-1.3-.1-2.6-.4-3.9z"/></svg>') center / contain no-repeat;
}

/* Eliminar espacios vacíos del formulario (divs sin contenido,
   contenedores de captcha/oauth vacíos) */
.oe_website_login_container form div:empty,
.oe_website_login_container .o_login_auth:empty,
.oe_website_login_container form .alert:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
}

/* Compactar el formulario: el tema agrega contenedores intermedios con
   alturas/márgenes enormes entre la contraseña y el botón */
.oe_website_login_container form > div:not(.alert),
.oe_website_login_container form > p:not(.alert) {
  margin-top: 0 !important;
  margin-bottom: .95rem !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
  height: auto !important;
}
.oe_website_login_container form .oe_login_buttons {
  margin: 0 !important;
  padding: 0 !important;
  gap: .55rem;
}
.oe_website_login_container form br { display: none !important; }

/* CTA de registro bajo el formulario */
.dir-authpage-signup {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  flex-wrap: wrap;
  margin-top: 1.1rem;
  padding: .85rem 1rem;
  background: #fff5eb;
  border: 1.5px dashed rgba(242,140,40,.45);
  border-radius: 14px;
  font-size: .9rem;
  color: #5a5a6b;
}
.dir-authpage-signup-btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  background: linear-gradient(135deg, #F28C28, #f6ac4e);
  color: #fff !important;
  font-weight: 800;
  font-size: .88rem;
  padding: .45rem 1.2rem;
  border-radius: 50px;
  text-decoration: none !important;
  box-shadow: 0 4px 14px rgba(242,140,40,.35);
  transition: transform .2s ease, box-shadow .2s ease;
}
.dir-authpage-signup-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(242,140,40,.45);
  color: #fff !important;
}

/* Nota bajo el botón de Google (plantilla heredada) */
.dir-authpage-note {
  text-align: center;
  color: #9b9bab !important;
  font-size: .78rem;
  margin: 1rem 0 0;
}

@media (max-width: 575.98px) {
  .oe_website_login_container {
    margin: 1.2rem auto 2.2rem !important;
    padding: 1.5rem 1.1rem 1.3rem !important;
    border-radius: 18px;
  }
}
