* { box-sizing: border-box; }
body { font-family: -apple-system, system-ui, sans-serif; margin: 0; min-height: 100vh; display: grid; place-items: center; background: linear-gradient(135deg, #1e293b, #0f172a); color: #e2e8f0; }
.login-card { background: #1e293b; padding: 40px; border-radius: 16px; box-shadow: 0 20px 40px rgba(0,0,0,.5); width: min(400px, 90vw); }
h1 { margin: 0 0 8px; font-size: 28px; color: #6366f1; }
.subtitle { margin: 0 0 24px; color: #94a3b8; }
label { display: block; margin-bottom: 16px; font-size: 14px; }
input { display: block; width: 100%; padding: 12px; margin-top: 4px; border: 1px solid #334155; background: #0f172a; color: #e2e8f0; border-radius: 8px; font-size: 16px; }
input:focus { outline: 2px solid #6366f1; }
button { width: 100%; padding: 14px; background: #6366f1; color: white; border: none; border-radius: 8px; font-size: 16px; font-weight: 600; cursor: pointer; }
button:hover { background: #4f46e5; }
.error { background: #7f1d1d; color: #fecaca; padding: 12px; border-radius: 8px; margin-bottom: 16px; font-size: 14px; }
