/**
 * SECTOR: 02 - Autenticación, Registro Categorizado y 2FA
 * URL PLATAFORMA: /assets/css/auth_extras.css
 * DESCRIPCIÓN: Componentes agregados en la Etapa B: fila remember/olvido en login,
 *              enlaces del panel Blindaje activos y notas del formulario forgot.
 */

.auth-login-extras { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 4px; flex-wrap: wrap; }
.auth-forgot-link { color: var(--nexo-primary); font-size: 13px; text-decoration: none; }
.auth-forgot-link:hover { text-decoration: underline; }
.auth-form-note { font-size: 12px; color: var(--nexo-text-muted); margin: 8px 0 0; text-align: center; }
.auth-card-forgot { max-width: 520px; }
a.auth-blindaje-btn { text-decoration: none; cursor: pointer; opacity: 1; }
a.auth-blindaje-btn:hover, button.auth-blindaje-btn:hover { border-color: var(--nexo-primary); opacity: 1; }
button.auth-blindaje-btn { cursor: pointer; opacity: 1; }

/* Captcha del registro: destacado (es obligatorio y se pasaba por alto) */
.auth-captcha {
  border: 1px solid var(--nexo-primary);
  border-radius: 10px;
  padding: 12px 14px;
  background: var(--nexo-primary-glow);
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.auth-captcha label { color: var(--nexo-text); font-weight: 600; margin: 0; }
.auth-captcha .nexo-input { max-width: 130px; }
.auth-captcha::before {
  content: 'security';
  font-family: 'Material Symbols Outlined';
  color: var(--nexo-primary); font-size: 22px;
}

/* --- Etapa C: setup y verificación 2FA --- */
.auth-2fa-status { display: flex; align-items: center; gap: 8px; border-radius: 10px; padding: 12px 16px; font-size: 14px; margin-bottom: 18px; border: 1px solid var(--nexo-border); }
.auth-2fa-status.ok { background: var(--nexo-primary-glow); color: var(--nexo-primary); }
.auth-2fa-status.off { color: var(--nexo-text-muted); }
.auth-2fa-methods { margin-bottom: 8px; }
.auth-2fa-zone { margin-top: 18px; border-top: 1px solid var(--nexo-border); padding-top: 18px; }
.auth-2fa-zone h3 { color: var(--nexo-text); font-size: 17px; margin: 0 0 8px; }
.auth-2fa-zone p { color: var(--nexo-text-muted); font-size: 14px; }
.auth-2fa-qr { display: flex; gap: 16px; align-items: center; margin: 12px 0; flex-wrap: wrap; }
.auth-2fa-qr img { border-radius: 12px; background: #fff; padding: 8px; }
.auth-2fa-secret { font-size: 16px; letter-spacing: 2px; color: var(--nexo-primary); background: var(--nexo-surface); border: 1px solid var(--nexo-border); border-radius: 8px; padding: 10px 14px; user-select: all; }
.auth-2fa-confirm { display: flex; gap: 10px; align-items: center; }
.auth-2fa-confirm .nexo-input { max-width: 160px; }
.auth-2fa-confirm .nexo-btn-primary { border: none; cursor: pointer; padding: 12px 20px; }
.auth-2fa-recovery-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 10px; }
.auth-2fa-recovery-list code { background: var(--nexo-surface); border: 1px solid var(--nexo-border); border-radius: 8px; padding: 8px; text-align: center; color: var(--nexo-tertiary); font-size: 14px; letter-spacing: 1px; }
.auth-btn-danger { background: linear-gradient(135deg, #e0245e 0%, #b01040 100%); color: #fff; }
