.login-body { display: flex; align-items: center; justify-content: center; min-height: 100vh; padding: 24px; }
.login-card { width: 100%; max-width: 380px; background: var(--panel); border: 1px solid var(--border);
  border-radius: 16px; padding: 32px 28px; text-align: center; }
.login-logo { font-size: 34px; margin-bottom: 10px; }
.login-card h1 { margin: 0 0 6px; font-size: 21px; letter-spacing: -.01em; }
.login-card .hint { margin: 0 0 22px; font-size: 13px; line-height: 1.5; }
.login-card form { text-align: left; display: flex; flex-direction: column; gap: 14px; }
.login-card .primary { width: 100%; margin-top: 4px; }
.login-card .form-msg { text-align: center; min-height: 18px; }
