* { box-sizing: border-box; margin: 0; padding: 0; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: linear-gradient(135deg, #0f172a, #1e293b);
  min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
}
.auth-wrap { width: 100%; max-width: 420px; }
.auth-card {
  background: #fff; border-radius: 16px; padding: 36px 32px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}
.auth-card h1 { font-size: 24px; color: #0f172a; margin-bottom: 4px; }
.auth-sub { color: #64748b; font-size: 14px; margin-bottom: 24px; }
.auth-card label { display: block; font-size: 13px; font-weight: 600; color: #334155; margin: 14px 0 6px; }
.auth-card input, .auth-card select {
  width: 100%; padding: 11px 12px; border: 1px solid #cbd5e1; border-radius: 8px;
  font-size: 14px; outline: none;
}
.auth-card input:focus, .auth-card select:focus { border-color: #2563eb; }
.auth-card button {
  width: 100%; margin-top: 22px; padding: 12px; background: #2563eb; color: #fff;
  border: none; border-radius: 8px; font-size: 15px; font-weight: 600; cursor: pointer;
}
.auth-card button:hover { background: #1d4ed8; }
.auth-foot { margin-top: 18px; font-size: 13px; color: #64748b; text-align: center; }
.auth-foot a { color: #2563eb; text-decoration: none; font-weight: 600; }
.alert { padding: 10px 12px; border-radius: 8px; font-size: 13px; margin-bottom: 12px; }
.alert-error { background: #fee2e2; color: #991b1b; }
