.auth-module__A_DBwq__page{min-height:calc(100vh - var(--navbar-height));background:var(--bg);grid-template-columns:1.1fr 1fr;display:grid}.auth-module__A_DBwq__leftPanel{background:radial-gradient(circle at 10% 20%, color-mix(in srgb, var(--primary) 12%, transparent) 0%, transparent 60%), linear-gradient(160deg, color-mix(in srgb, var(--primary) 8%, var(--bg)) 0%, var(--bg) 100%);border-right:1px solid var(--border);flex-direction:column;justify-content:space-between;padding:50px 60px;display:flex;position:relative;overflow:hidden}.auth-module__A_DBwq__leftPanel:before{content:"";background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.35;pointer-events:none;background-size:36px 36px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80% at 30% 30%,#000,#0000);mask-image:radial-gradient(80% 80% at 30% 30%,#000,#0000)}.auth-module__A_DBwq__leftLogo{align-items:center;gap:var(--space-3);color:var(--text);letter-spacing:-.035em;z-index:1;width:fit-content;font-size:1.25rem;font-weight:800;text-decoration:none;display:inline-flex;position:relative}.auth-module__A_DBwq__leftLogo:hover{opacity:.85;color:var(--text)}.auth-module__A_DBwq__leftLogoIcon{background:linear-gradient(135deg, var(--primary) 0%, #c4b5fd 100%);border-radius:var(--radius-md);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;box-shadow:0 4px 12px #8b7cf84d}.auth-module__A_DBwq__leftBody{z-index:1;max-width:480px;position:relative}.auth-module__A_DBwq__leftTitle{letter-spacing:-.035em;color:var(--text-heading,var(--text));margin-bottom:var(--space-4);font-size:clamp(1.75rem,3vw,2.35rem);font-weight:800;line-height:1.2}.auth-module__A_DBwq__leftTitle span{background:linear-gradient(120deg, var(--primary) 0%, #a78bfa 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.auth-module__A_DBwq__leftSub{color:var(--text-muted);margin-bottom:var(--space-6);font-size:.95rem;line-height:1.6}.auth-module__A_DBwq__leftFeatures{gap:var(--space-4);margin-top:var(--space-6);flex-direction:column;display:flex}.auth-module__A_DBwq__leftFeature{align-items:flex-start;gap:var(--space-3);display:flex}.auth-module__A_DBwq__leftFeatureIcon{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:34px;height:34px;color:var(--primary-text);box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;display:flex}.auth-module__A_DBwq__leftFeatureText{flex-direction:column;gap:2px;display:flex}.auth-module__A_DBwq__leftFeatureTitle{color:var(--text);letter-spacing:-.01em;font-size:.9rem;font-weight:600}.auth-module__A_DBwq__leftFeatureSub{color:var(--text-muted);font-size:.8125rem;line-height:1.4}.auth-module__A_DBwq__leftFooter{color:var(--text-subtle);z-index:1;font-size:.8125rem;position:relative}.auth-module__A_DBwq__rightPanel{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.auth-module__A_DBwq__formWrap{width:100%;max-width:400px;animation:.25s auth-module__A_DBwq__slideUp}@keyframes auth-module__A_DBwq__slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.auth-module__A_DBwq__header{margin-bottom:var(--space-6)}.auth-module__A_DBwq__title{color:var(--text);margin-bottom:var(--space-1);letter-spacing:-.035em;font-size:1.65rem;font-weight:800}.auth-module__A_DBwq__sub{color:var(--text-muted);font-size:.875rem}.auth-module__A_DBwq__googleBtn{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text);cursor:pointer;box-sizing:border-box;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);justify-content:center;align-items:center;gap:10px;padding:11px 16px;font-size:.9375rem;font-weight:600;text-decoration:none;display:flex}.auth-module__A_DBwq__googleBtn:hover{border-color:var(--border-hover,#a78bfa);background:color-mix(in srgb, var(--primary) 5%, var(--surface));color:var(--text);transform:translateY(-1px)}.auth-module__A_DBwq__divider{color:var(--text-subtle);align-items:center;margin:20px 0;font-size:.8125rem;display:flex}.auth-module__A_DBwq__divider:before,.auth-module__A_DBwq__divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-module__A_DBwq__divider span{text-transform:uppercase;letter-spacing:.05em;padding:0 12px;font-size:.75rem;font-weight:600}.auth-module__A_DBwq__errorBanner,.auth-module__A_DBwq__errorBox{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);color:#ef4444;margin-bottom:var(--space-4);background:#ef44441a;border:1px solid #ef4444;padding:11px 14px;font-size:.875rem;animation:.28s auth-module__A_DBwq__shake;display:flex}@keyframes auth-module__A_DBwq__shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.auth-module__A_DBwq__noticeBox{border-radius:var(--radius-md);margin-bottom:var(--space-4);padding:11px 14px;font-size:.875rem;animation:.2s auth-module__A_DBwq__slideUp}.auth-module__A_DBwq__takenBanner{align-items:flex-start;gap:var(--space-2);border-radius:var(--radius-md);color:var(--text);margin-bottom:var(--space-4);background:#3b82f61a;border:1px solid #3b82f6;padding:11px 14px;font-size:.875rem;line-height:1.5;animation:.2s auth-module__A_DBwq__slideUp;display:flex}.auth-module__A_DBwq__takenBanner svg{color:#3b82f6;flex-shrink:0;margin-top:2px}.auth-module__A_DBwq__takenBanner strong{font-weight:600}.auth-module__A_DBwq__takenLink{color:#3b82f6;white-space:nowrap;font-weight:600;text-decoration:none}.auth-module__A_DBwq__takenLink:hover{opacity:.8}.auth-module__A_DBwq__form{gap:var(--space-4);flex-direction:column;display:flex}.auth-module__A_DBwq__field{gap:var(--space-1);flex-direction:column;display:flex}.auth-module__A_DBwq__labelRow{justify-content:space-between;align-items:center;display:flex}.auth-module__A_DBwq__fieldLabel{color:var(--text);letter-spacing:-.01em;font-size:.8125rem;font-weight:600}.auth-module__A_DBwq__forgotLink{color:var(--text-muted);transition:color var(--transition-fast);font-size:.8rem;text-decoration:none}.auth-module__A_DBwq__forgotLink:hover{color:var(--primary-text)}.auth-module__A_DBwq__input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:.9375rem;font-family:var(--font-sans);color:var(--text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;outline:none;padding:11px 14px}.auth-module__A_DBwq__input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 15%, transparent)}.auth-module__A_DBwq__input::placeholder{color:var(--text-subtle)}.auth-module__A_DBwq__pwdWrapper,.auth-module__A_DBwq__passwordWrap{width:100%;position:relative}.auth-module__A_DBwq__pwdWrapper .auth-module__A_DBwq__input,.auth-module__A_DBwq__passwordWrap .auth-module__A_DBwq__input{padding-right:42px}.auth-module__A_DBwq__togglePwd,.auth-module__A_DBwq__showPwd{color:var(--text-subtle);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.auth-module__A_DBwq__togglePwd:hover,.auth-module__A_DBwq__showPwd:hover{color:var(--text)}.auth-module__A_DBwq__strengthWrap{align-items:center;gap:var(--space-3);margin-top:6px;display:flex}.auth-module__A_DBwq__strengthBars{flex:1;gap:4px;display:flex}.auth-module__A_DBwq__strengthBar{background:var(--border);border-radius:var(--radius-full);height:3px;transition:background var(--transition-base);flex:1}.auth-module__A_DBwq__strengthLabel{flex-shrink:0;font-size:.7rem;font-weight:600}.auth-module__A_DBwq__strengthWeak .auth-module__A_DBwq__strengthBar:nth-child(-n+1),.auth-module__A_DBwq__strengthWeak .auth-module__A_DBwq__strengthLabel{color:#ef4444;background:#ef4444}.auth-module__A_DBwq__strengthFair .auth-module__A_DBwq__strengthBar:nth-child(-n+2),.auth-module__A_DBwq__strengthFair .auth-module__A_DBwq__strengthLabel{color:#f59e0b;background:#f59e0b}.auth-module__A_DBwq__strengthGood .auth-module__A_DBwq__strengthBar:nth-child(-n+3),.auth-module__A_DBwq__strengthGood .auth-module__A_DBwq__strengthLabel{color:#10b981;background:#10b981}.auth-module__A_DBwq__strengthStrong .auth-module__A_DBwq__strengthBar,.auth-module__A_DBwq__strengthStrong .auth-module__A_DBwq__strengthLabel{color:#059669;background:#059669}.auth-module__A_DBwq__submitBtn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:12px var(--space-6);background:var(--primary);color:#fff;border-radius:var(--radius-md);font-size:.95rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);margin-top:var(--space-2);border:none;display:flex;box-shadow:0 2px 10px #8b7cf84d}.auth-module__A_DBwq__submitBtn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 16px #8b7cf866}.auth-module__A_DBwq__submitBtn:disabled{opacity:.65;cursor:wait}.auth-module__A_DBwq__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.5s linear infinite auth-module__A_DBwq__spin}@keyframes auth-module__A_DBwq__spin{to{transform:rotate(360deg)}}.auth-module__A_DBwq__terms{color:var(--text-subtle);text-align:center;margin-top:12px;font-size:.775rem;line-height:1.5}.auth-module__A_DBwq__terms a{color:var(--text-muted);text-underline-offset:2px;text-decoration:underline}.auth-module__A_DBwq__terms a:hover{color:var(--primary-text)}.auth-module__A_DBwq__switchLink{text-align:center;margin-top:var(--space-5);color:var(--text-muted);font-size:.875rem}.auth-module__A_DBwq__switchLink a{color:var(--primary-text);font-weight:600;text-decoration:none}.auth-module__A_DBwq__switchLink a:hover{opacity:.8;color:var(--primary-text)}@media (max-width:900px){.auth-module__A_DBwq__page{grid-template-columns:1fr}.auth-module__A_DBwq__leftPanel{display:none}.auth-module__A_DBwq__rightPanel{justify-content:flex-start;padding:40px 24px}.auth-module__A_DBwq__formWrap{max-width:100%}}
