.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(600px circle at 30% 20%,rgba(168,85,247,.1),transparent 60%),radial-gradient(500px circle at 70% 80%,rgba(217,70,239,.07),transparent 60%),#08080c}.auth-card{width:100%;max-width:420px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);border-radius:20px;padding:40px 32px}.auth-logo{display:flex;align-items:center;justify-content:center;margin:0 auto 28px;filter:drop-shadow(0 0 16px rgba(168,85,247,.35))}.auth-title{font-family:Syne,system-ui,sans-serif;font-size:24px;font-weight:700;text-align:center;margin-bottom:6px;color:#f0f0f5}.auth-subtitle{text-align:center;font-size:14px;color:rgba(240,240,245,.5);margin-bottom:28px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:rgba(240,240,245,.55);margin-bottom:6px}.auth-field input{width:100%;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.09);border-radius:10px;color:#f0f0f5;font-family:Montserrat,Segoe UI,system-ui,sans-serif;font-size:14px;padding:12px 14px;transition:border-color .25s}.auth-field input:focus{outline:none;border-color:rgba(168,85,247,.55)}.auth-submit{width:100%;margin-top:8px;border:none;border-radius:999px;background:linear-gradient(135deg,#a855f7,#d946ef);color:#fff;font-family:Montserrat,Segoe UI,system-ui,sans-serif;font-size:15px;font-weight:700;padding:14px 20px;cursor:pointer;transition:transform .2s,box-shadow .3s,opacity .2s}.auth-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 34px rgba(168,85,247,.35)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-error{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);border-radius:10px;padding:10px 14px;color:#fca5a5}.auth-error,.auth-switch{font-size:13px;text-align:center}.auth-switch{margin-top:20px;color:rgba(240,240,245,.45)}.auth-switch a{color:#a855f7;text-decoration:none;font-weight:600}.auth-switch a:hover{text-decoration:underline}@media (max-width:480px){.auth-card{padding:32px 20px;border-radius:16px}.auth-field input{font-size:16px}}