:root {
  --primary: #9b59b6;
  --primary-dark: #6c3483;
  --accent: #d7a8e8;
  --bg: #120a17;
  --card: #1c1024;
  --text: #f1e6f5;
  --muted: #b199bd;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
  background: radial-gradient(circle at top, #241330, var(--bg));
  min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Inter', Arial, sans-serif;
  color: var(--text);
}
.auth-card {
  background: var(--card);
  border: 1px solid rgba(155,89,182,0.3);
  border-radius: 16px;
  padding: 40px 32px;
  width: 100%; max-width: 380px;
  box-shadow: 0 0 40px rgba(155,89,182,0.15);
}
.auth-card h1 { text-align: center; font-size: 26px; }
.auth-card h1 span { color: var(--primary); }
.sub { text-align: center; color: var(--muted); margin: 8px 0 24px; font-size: 14px; }
form { display: flex; flex-direction: column; gap: 14px; }
input {
  background: #241530; border: 1px solid rgba(155,89,182,0.3);
  border-radius: 8px; padding: 12px 14px; color: var(--text); font-size: 14px;
}
input:focus { outline: none; border-color: var(--primary); }
button {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  color: #fff; border: none; border-radius: 8px; padding: 12px;
  font-weight: 600; cursor: pointer; margin-top: 6px;
}
.error {
  background: rgba(231,76,60,0.15); border: 1px solid rgba(231,76,60,0.4);
  color: #ff8a80; padding: 10px; border-radius: 8px; font-size: 13px; margin-bottom: 16px;
}
.switch { text-align: center; margin-top: 18px; font-size: 13px; color: var(--muted); }
.switch a { color: var(--accent); text-decoration: none; font-weight: 600; }

.logo { display: block; margin: 0 auto 12px; width: 64px; height: 64px; border-radius: 14px; object-fit: cover; }
.whatsapp {
  display: block; text-align: center; margin-top: 16px;
  color: #25D366; font-size: 13px; text-decoration: none; font-weight: 600;
}
