/* Páginas de autenticación: login y registro */
.body-auth {
  padding: max(20px, env(safe-area-inset-top)) 16px 24px;
}

.page-header {
  text-align: center;
  margin-bottom: 24px;
}

.auth-logo {
  display: block;
  height: 80px;
  width: auto;
  margin: 0 auto 16px;
}

.page-header h1 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 4px;
}

.page-header p {
  font-size: 14px;
  color: var(--text-muted);
}

.card {
  background: var(--card);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 24px;
  margin-bottom: 16px;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.btn {
  margin-top: 20px;
}

.msg {
  padding: 12px;
  border-radius: 10px;
  margin-bottom: 16px;
  font-size: 14px;
}

.msg.error {
  background: #ffebee;
  color: #c62828;
}

.msg.success {
  background: #e8f5e9;
  color: #2e7d32;
}

.msg.success a {
  color: #1b5e20;
  font-weight: 600;
}

.link-footer {
  text-align: center;
  margin-top: 20px;
  font-size: 14px;
  color: var(--text-muted);
}

.link-footer a {
  color: var(--accent);
  font-weight: 500;
  text-decoration: none;
}
