/* Auth Pages */
:root { --brand:#6C47FF; --brand-dark:#4A28E0; --font:'Inter',sans-serif }
* { box-sizing:border-box; margin:0; padding:0 }
body { font-family:var(--font) }
.auth-page { background:linear-gradient(135deg,#0D0D12 0%,#1A1A30 100%); min-height:100vh; display:flex; align-items:center; justify-content:center; padding:20px }
.auth-card { background:#1A1A25; border:1px solid rgba(255,255,255,.08); border-radius:16px; padding:40px; width:100%; max-width:420px }
.auth-logo { text-align:center; font-size:22px; font-weight:900; color:#fff; margin-bottom:24px }
.auth-logo a { color:#fff; text-decoration:none }
.auth-card h1 { font-size:22px; font-weight:800; color:#fff; text-align:center; margin-bottom:24px }
.auth-tabs { display:flex; gap:4px; margin-bottom:20px; background:rgba(255,255,255,.05); border-radius:8px; padding:4px }
.auth-tabs a { flex:1; text-align:center; padding:8px; border-radius:6px; font-size:13px; font-weight:600; color:#888; text-decoration:none; transition:all .2s }
.auth-tabs a.active { background:var(--brand); color:#fff }
.form-group { margin-bottom:16px }
.form-group label { display:block; font-size:13px; font-weight:600; color:#aaa; margin-bottom:6px }
.form-group input { width:100%; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:8px; color:#fff; font-size:14px; padding:11px 14px; transition:border-color .2s; font-family:var(--font) }
.form-group input:focus { outline:none; border-color:var(--brand); background:rgba(108,71,255,.1) }
.btn-primary { width:100%; background:var(--brand); color:#fff; font-size:15px; font-weight:700; padding:13px; border:none; border-radius:8px; cursor:pointer; transition:background .2s }
.btn-primary:hover { background:var(--brand-dark) }
.btn-secondary { width:100%; background:transparent; color:#aaa; font-size:15px; font-weight:700; padding:13px; border:1px solid rgba(255,255,255,.15); border-radius:8px; cursor:pointer; transition:all .2s }
.btn-secondary:hover { color:#fff; border-color:#fff }
.alert { padding:12px 16px; border-radius:8px; font-size:14px; margin-bottom:16px }
.alert-error   { background:rgba(239,68,68,.15); border:1px solid rgba(239,68,68,.3); color:#f87171 }
.alert-success { background:rgba(34,197,94,.15); border:1px solid rgba(34,197,94,.3); color:#4ade80 }
.auth-link { text-align:center; font-size:13px; color:#888; margin-top:20px }
.auth-link a { color:var(--brand); text-decoration:none; font-weight:600 }
