body{position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle at 0 0,#2563eb29,#0000 28%),radial-gradient(circle at 100% 0,#7c3aed24,#0000 24%),radial-gradient(circle at bottom,#3b82f614,#0000 30%);position:fixed;inset:0}.auth-container{flex-direction:column;justify-content:flex-start;align-items:center;min-height:100vh;padding:10px 20px 30px;display:flex;position:relative}.auth-card{-webkit-backdrop-filter:blur(24px);background:#ffffffc7;border:1px solid #ffffffd9;border-radius:32px;width:100%;max-width:480px;margin-top:10px;padding:42px;position:relative;overflow:hidden;box-shadow:0 30px 80px #0f172a24}.auth-card:before{content:"";background:linear-gradient(90deg,#2563eb,#7c3aed);height:5px;position:absolute;top:0;left:0;right:0}.auth-brand{flex-direction:column;align-items:center;margin-bottom:28px;display:flex}.auth-logo{object-fit:contain;filter:drop-shadow(0 10px 24px #2563eb2e);width:84px;height:84px;margin-bottom:18px}.auth-brand-name{letter-spacing:-1px;color:#0f172a;margin-bottom:8px;font-size:30px;font-weight:900}.auth-brand-text{text-align:center;color:#64748b;max-width:320px;font-size:15px;line-height:1.6}.auth-card h2{text-align:center;letter-spacing:-1px;color:#0f172a;margin-bottom:10px;font-size:32px;font-weight:800}.subtitle{text-align:center;color:#64748b;margin-bottom:30px;font-size:15px;line-height:1.6}.auth-card form{flex-direction:column;gap:16px;display:flex}.auth-card input{color:#0f172a;background:#ffffffeb;border:1.5px solid #dbe4f0;border-radius:18px;width:100%;height:58px;padding:0 18px;font-size:15px;font-weight:500;transition:border-color .22s,box-shadow .22s,transform .22s,background .22s}.auth-card input::placeholder{color:#94a3b8;font-weight:400}.auth-card input:hover{border-color:#cbd5e1}.auth-card input:focus{background:#fff;border-color:#2563eb;outline:none;transform:translateY(-1px);box-shadow:0 0 0 5px #2563eb1f}.auth-card button{color:#fff;letter-spacing:.2px;cursor:pointer;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:18px;width:100%;height:58px;font-size:15px;font-weight:800;transition:transform .22s,box-shadow .22s,opacity .22s;box-shadow:0 18px 40px #2563eb3d}.auth-card button:hover{transform:translateY(-2px)scale(1.01);box-shadow:0 24px 50px #2563eb57}.auth-card button:active{transform:scale(.99)}.auth-card button:disabled{opacity:.7;cursor:not-allowed;transform:none}.auth-terms{color:#475569;flex-wrap:nowrap;align-items:center;gap:10px;margin-top:4px;font-size:14px;line-height:1.5;display:flex}.auth-terms span{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.auth-terms input{accent-color:#2563eb;flex-shrink:0;width:18px;height:18px;margin-top:3px}.auth-terms a{color:#2563eb;font-weight:700}.auth-terms a:hover{text-decoration:underline}.switch,.forgot-password-link{text-align:center;color:#64748b;margin-top:20px;font-size:14px}.switch a,.forgot-password-link a{color:#2563eb;font-weight:700;transition:opacity .2s}.switch a:hover,.forgot-password-link a:hover{opacity:.8}#message,#resendMessage{text-align:center;margin-top:6px;font-size:14px;line-height:1.6}#verificationBox{margin-top:14px;display:none}.auth-divider{text-align:center;margin:28px 0 10px;position:relative}.auth-divider:before{content:"";background:#e2e8f0;height:1px;position:absolute;top:50%;left:0;right:0}.auth-divider span{color:#94a3b8;background:#fff;padding:0 14px;font-size:13px;display:inline-block;position:relative}@media (width<=640px){.auth-container{padding:20px 14px}.auth-card{border-radius:26px;padding:28px 22px}.auth-card h2{font-size:28px}.auth-brand-name{font-size:26px}.auth-logo{width:74px;height:74px}.auth-card input,.auth-card button{border-radius:16px;height:54px}}.auth-card input[type=checkbox]{cursor:pointer;width:18px;min-width:18px;height:18px;box-shadow:none;border-radius:4px;flex-shrink:0;padding:0;transform:none}.auth-brand-link{flex-direction:column;align-items:center;text-decoration:none;transition:transform .22s,opacity .22s;display:flex}.auth-brand-link:hover{opacity:.96;transform:translateY(-2px)}.auth-brand-link:active{transform:scale(.98)}.password-row{align-items:center;gap:10px;display:flex}.password-row input{flex:1}.password-row .toggle-password{color:#475569;cursor:pointer;opacity:1;height:58px;box-shadow:none;background:#ffffffeb;border:1.5px solid #dbe4f0;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:flex;width:58px!important}.password-row .toggle-password:hover{opacity:1;border-color:#2563eb}.password-row .toggle-password:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 5px #2563eb1f}.toggle-password:hover{opacity:1}.password-requirements{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;margin-top:-6px;margin-bottom:6px;padding:14px 16px;font-size:14px;line-height:1.8}.password-requirements div{transition:color .2s}.password-valid{color:#10b981;font-weight:600}.password-invalid{color:#ef4444}
