.auth-page { min-height: 100vh; display: grid; place-items: center; padding: 1.5rem; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; color: #f8fafc; background: #080a12; }
.auth-bg { position: fixed; inset: 0; background: radial-gradient(circle at 20% 20%, rgba(99,102,241,.25), transparent 40%), radial-gradient(circle at 80% 0%, rgba(236,72,153,.15), transparent 35%), #080a12; }
.auth-wrap { position: relative; width: min(420px, 100%); }
.auth-card { background: rgba(15,18,30,.92); border: 1px solid rgba(255,255,255,.08); border-radius: 20px; padding: 1.75rem; box-shadow: 0 24px 80px rgba(0,0,0,.45); }
.auth-logo { display: flex; gap: .75rem; align-items: center; margin-bottom: 1rem; }
.auth-logo img { width: 44px; height: 44px; }
.auth-logo strong { display: block; font-size: .95rem; }
.auth-logo span { font-size: .75rem; color: #94a3b8; }
.auth-title { margin: 0 0 .35rem; font-size: 1.5rem; }
.auth-sub { margin: 0 0 1.25rem; color: #94a3b8; font-size: .875rem; line-height: 1.5; }
.auth-field { margin-bottom: .9rem; }
.auth-label { display: block; margin-bottom: .35rem; font-size: .78rem; font-weight: 600; color: #cbd5e1; }
.auth-input { width: 100%; padding: .7rem .8rem; border-radius: 12px; border: 1px solid rgba(255,255,255,.12); background: rgba(8,10,18,.9); color: #fff; }
.auth-btn { width: 100%; margin-top: .5rem; border: none; border-radius: 12px; padding: .8rem 1rem; background: linear-gradient(135deg, #6366f1, #8b5cf6); color: #fff; font-weight: 700; cursor: pointer; }
.auth-error { margin-bottom: 1rem; padding: .75rem .9rem; border-radius: 12px; background: rgba(239,68,68,.12); border: 1px solid rgba(239,68,68,.35); color: #fecaca; font-size: .8125rem; }
.auth-success { margin-bottom: 1rem; padding: .75rem .9rem; border-radius: 12px; background: rgba(16,185,129,.12); border: 1px solid rgba(16,185,129,.35); color: #a7f3d0; font-size: .8125rem; }
.auth-link { margin-top: 1rem; text-align: center; font-size: .8125rem; color: #94a3b8; }
.auth-link a { color: #a5b4fc; text-decoration: none; }
