:root{--bg-dark:#0a0a0f;--glass-bg:#ffffff08;--glass-border:#ffffff14;--text-primary:#fff;--text-secondary:#94a3b8;--primary-accent:#6366f1;--primary-hover:#4f46e5;--error:#ef4444;--success:#10b981;--input-bg:#0003;--input-border:#ffffff1a;--input-focus:#6366f180}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,sans-serif}body{background-color:var(--bg-dark);color:var(--text-primary);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.bg-blobs{z-index:-1;width:100vw;height:100vh;position:absolute;top:0;left:0;overflow:hidden}.blob{filter:blur(80px);opacity:.5;border-radius:50%;animation:20s infinite alternate float;position:absolute}.blob-1{background:#6366f1;width:400px;height:400px;animation-delay:0s;top:-100px;left:-100px}.blob-2{background:#ec4899;width:300px;height:300px;animation-delay:-5s;bottom:-50px;right:-50px}@keyframes float{0%{transform:translate(0)scale(1)}to{transform:translate(100px,50px)scale(1.2)}}.container{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);opacity:0;border-radius:24px;width:100%;max-width:420px;padding:2.5rem;animation:.6s cubic-bezier(.16,1,.3,1) forwards slideUp;transform:translateY(20px);box-shadow:0 25px 50px -12px #00000080}@keyframes slideUp{to{opacity:1;transform:translateY(0)}}h1{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2rem;font-weight:600}p.subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem}.form-group{margin-bottom:1.25rem}label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}input{background:var(--input-bg);border:1px solid var(--input-border);width:100%;color:var(--text-primary);border-radius:12px;outline:none;padding:.875rem 1rem;font-size:1rem;transition:all .2s}input:focus{border-color:var(--primary-accent);box-shadow:0 0 0 4px var(--input-focus)}input::placeholder{color:#fff3}.btn{background:var(--primary-accent);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex;position:relative;overflow:hidden}.btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 10px 20px -10px var(--primary-accent);transform:translateY(-2px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.7;cursor:not-allowed}.btn-secondary{border:1px solid var(--glass-border);background:0 0}.btn-secondary:hover:not(:disabled){box-shadow:none;background:#ffffff0d}.toggle-text{text-align:center;color:var(--text-secondary);margin-top:1.5rem;font-size:.9rem}.toggle-link{color:var(--primary-accent);cursor:pointer;font-weight:500;transition:color .2s}.toggle-link:hover{color:#818cf8}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:none}.btn.loading .spinner{display:block}.btn.loading .btn-text{display:none}@keyframes spin{to{transform:rotate(360deg)}}.toast-container{z-index:1000;flex-direction:column;gap:10px;display:flex;position:fixed;top:20px;right:20px}.toast{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border-left:4px solid var(--primary-accent);word-break:break-word;background:#141414e6;border-radius:12px;max-width:300px;padding:1rem 1.5rem;font-size:.9rem;font-weight:500;transition:transform .3s cubic-bezier(.68,-.55,.265,1.55);transform:translate(120%);box-shadow:0 10px 30px -10px #00000080}.toast.show{transform:translate(0)}.toast.error{border-left-color:var(--error)}.toast.success{border-left-color:var(--success)}.profile-card{text-align:center}.avatar{background:linear-gradient(135deg, var(--primary-accent), #ec4899);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto 1.5rem;font-size:2.5rem;font-weight:700;display:flex;box-shadow:0 0 30px #6366f14d}.profile-info{text-align:left;background:#0003;border-radius:16px;margin-bottom:2rem;padding:1.5rem}.info-row{border-bottom:1px solid var(--glass-border);justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem;display:flex}.info-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-label{color:var(--text-secondary);font-size:.85rem}.info-value{color:var(--text-primary);font-weight:500}.hidden{display:none!important}
