.auth-body {
  min-height: 100vh;
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  padding: var(--s-6);
}

.auth-card {
  width: 100%; max-width: 400px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r-xl);
  box-shadow: var(--shadow-lg);
  padding: var(--s-10) var(--s-8);
  animation: card-in .3s var(--ease);
}
@keyframes card-in { from { opacity: 0; transform: translateY(8px); } }

.auth-logo { display: flex; align-items: center; gap: var(--s-2); margin-bottom: var(--s-6); }
.auth-logo-mark { color: var(--primary); font-size: 1.5rem; }
.auth-logo-text { font-weight: 700; font-size: var(--text-lg); }

.auth-title { font-size: var(--text-xl); margin-bottom: var(--s-1); }
.auth-subtitle { color: var(--text-2); font-size: var(--text-sm); margin-bottom: var(--s-6); }

.auth-row {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: var(--s-5);
}
.auth-alt { margin-top: var(--s-5); text-align: center; }
.auth-footer { margin-top: var(--s-5); font-size: var(--text-xs); color: var(--text-3); }
