/* Login, register and password reset. Requires leximo-tokens.css + leximo-app.css. */

.auth-body {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 32px 16px;
  background: var(--bg);
  background-image: var(--aurora-glow);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.auth-theme-toggle {
  position: fixed;
  top: 18px;
  right: 18px;
  z-index: 10;
}

.auth-wrapper {
  width: 100%;
}

.auth-content {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}

.auth-content .card {
  margin-bottom: 0;
  box-shadow: var(--elev-3);
}

.auth-content .card-body {
  padding: 32px 28px;
}

.auth-logo {
  display: block;
  max-width: 150px;
  margin: 0 auto 20px;
}

.auth-title {
  margin: 0 0 22px;
  font-size: 19px;
  font-weight: 600;
  text-align: center;
}

.auth-message {
  display: block;
  margin-bottom: 20px;
  font-size: 14px;
  text-align: center;
}

.auth-lead {
  margin-bottom: 20px;
  color: var(--text-muted);
  font-size: 14px;
  text-align: center;
}

.auth-content .form-control {
  width: 100%;
  margin-bottom: 14px;
}

.auth-content .btn {
  width: 100%;
}

.auth-footnote {
  margin: 18px 0 0;
  color: var(--text-muted);
  font-size: 13.5px;
  text-align: center;
}

.auth-footnote + .auth-footnote {
  margin-top: 7px;
}

/* Social sign-in */
.social-signin-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  width: 100%;
  height: 42px;
  margin-bottom: 10px;
  padding: 0 16px;
  border: 1px solid var(--border);
  border-radius: var(--radius-control);
  background: var(--surface-2);
  color: var(--text);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.social-signin-btn:hover {
  border-color: var(--border-hover);
  background: var(--surface-3);
  color: var(--text);
  text-decoration: none;
}

.auth-divider {
  display: flex;
  align-items: center;
  margin: 18px 0;
  color: var(--text-faint);
  font-size: 13px;
}

.auth-divider .divider-line {
  flex: 1;
  height: 1px;
  background: var(--border);
}

.auth-divider .divider-text {
  padding: 0 14px;
}

/* Django's error list on the reset forms */
.auth-content .errorlist {
  margin: 0 0 12px;
  padding: 9px 13px;
  border: 1px solid rgba(var(--red-rgb), 0.4);
  border-radius: var(--radius-control);
  background: rgba(var(--red-rgb), 0.12);
  color: var(--red);
  font-size: 13px;
  list-style: none;
}

.auth-content .helptext {
  display: block;
  margin: -8px 0 14px;
  color: var(--text-faint);
  font-size: 12px;
  text-align: left;
}
