/* Auth Pages — Login & Register */
.auth-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-dark);position:relative;overflow:hidden}
.auth-wrapper::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(ellipse at 30% 20%,rgba(33,150,243,.08) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(24,209,201,.06) 0%,transparent 50%);animation:authBgShift 20s ease infinite}
@keyframes authBgShift{0%,100%{transform:translate(0,0)}50%{transform:translate(-2%,2%)}}
.auth-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:60px 60px}
.auth-card{width:100%;max-width:420px;background:rgba(31,28,45,.85);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:40px;position:relative;z-index:1;animation:authCardIn .5s ease}
@keyframes authCardIn{from{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.auth-logo{text-align:center;margin-bottom:32px}
.auth-logo img{height:64px;margin-bottom:16px;filter:drop-shadow(0 0 20px rgba(24,209,201,.3))}
.auth-logo h1{font-size:1.5rem;font-weight:700;color:var(--text-white);margin-bottom:4px}
.auth-logo h1 span{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.auth-logo p{font-size:.85rem;color:var(--text-secondary)}
.auth-card .form-group{margin-bottom:20px}
.auth-card .form-group label{display:block;font-size:.8rem;font-weight:500;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}
.auth-card .form-control{width:100%;padding:12px 16px;background:rgba(18,24,41,.8);border:1px solid var(--surface-border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:'Inter',sans-serif;font-size:.9rem;transition:all var(--transition-fast);outline:none}
.auth-card .form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}
.auth-card .form-control::placeholder{color:var(--text-muted)}
.auth-card .input-icon-wrapper{position:relative}
.auth-card .input-icon-wrapper i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);width:16px;height:16px}
.auth-card .input-icon-wrapper .form-control{padding-left:42px}
.auth-btn{width:100%;padding:14px;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-family:'Inter',sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 20px rgba(33,150,243,.3);margin-top:8px}
.auth-btn:hover{transform:translateY(-2px);box-shadow:0 6px 28px rgba(33,150,243,.45)}
.auth-btn:active{transform:translateY(0)}
.auth-footer{text-align:center;margin-top:24px;font-size:.85rem;color:var(--text-secondary)}
.auth-footer a{color:var(--accent);font-weight:500}
.auth-footer a:hover{color:var(--primary)}
.auth-divider{display:flex;align-items:center;gap:16px;margin:24px 0;color:var(--text-muted);font-size:.8rem}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--surface-border)}
