.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--navy-dark) 0,var(--navy) 45%,var(--indigo) 100%);padding:100px 24px 60px;position:relative;overflow:hidden}.auth-page:before{top:-120px;right:-120px;width:520px;height:520px;background:radial-gradient(circle,rgba(99,102,241,.28) 0,transparent 70%)}.auth-page:after,.auth-page:before{content:"";position:absolute;pointer-events:none}.auth-page:after{bottom:-80px;left:-80px;width:400px;height:400px;background:radial-gradient(circle,rgba(14,165,233,.18) 0,transparent 70%)}.auth-panel-right{background:var(--white);border-radius:24px;box-shadow:0 32px 80px rgba(0,0,0,.28),0 8px 24px rgba(0,0,0,.1);padding:48px;width:100%;max-width:520px;position:relative;z-index:1}.auth-form-wrap{width:100%}.auth-card-brand{display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--navy);text-decoration:none;margin-bottom:28px}.auth-card-brand-dot{width:9px;height:9px;background:var(--indigo-mid);border-radius:50%;flex-shrink:0}.auth-form-header{margin-bottom:32px}.auth-form-header h1{font-family:var(--font-display);font-size:2rem;font-weight:800;color:var(--navy);margin-bottom:8px}.auth-form-header p{font-size:14px;color:var(--slate)}.auth-form{gap:18px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:6px}.auth-label{font-size:13px;font-weight:600;color:var(--navy)}.auth-label span{color:var(--slate);font-weight:400;margin-left:4px}.auth-input-wrap{position:relative}.auth-input-wrap i.input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--slate);font-size:14px;pointer-events:none}.auth-input{width:100%;border:1.5px solid var(--border-dark);border-radius:var(--radius-sm);padding:12px 14px 12px 40px;font-size:14px;font-family:var(--font-body);color:var(--navy);background:var(--white);outline:none;transition:all .2s}.auth-input:focus{border-color:var(--indigo-light);box-shadow:0 0 0 4px rgba(99,102,241,.1)}.auth-input::placeholder{color:#b0bac8}.auth-input.no-icon{padding-left:14px}.auth-pw-wrap{position:relative}.auth-pw-wrap .auth-input{padding-right:42px}.auth-pw-toggle{position:absolute;right:13px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--slate);font-size:14px;padding:4px;line-height:1;transition:color .2s}.auth-pw-toggle:hover{color:var(--indigo)}select.auth-input{cursor:pointer;padding-left:40px}.auth-row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.avatar-upload-area{display:flex;align-items:center;gap:16px;padding:14px 16px;border:1.5px dashed var(--border-dark);border-radius:var(--radius-sm);background:var(--cream);cursor:pointer;transition:all .2s}.avatar-upload-area:hover{border-color:var(--indigo-light);background:var(--indigo-pale)}.avatar-preview{border-radius:50%;object-fit:cover;border:2px solid var(--indigo-light)}.avatar-placeholder,.avatar-preview{width:52px;height:52px;flex-shrink:0}.avatar-placeholder{border-radius:50%;background:var(--indigo-pale);border:2px dashed var(--indigo-light);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--indigo)}.avatar-info strong{display:block;font-size:13px;font-weight:600;color:var(--navy)}.avatar-info small{font-size:12px;color:var(--slate)}.avatar-remove{margin-left:auto;background:none;border:none;color:var(--red);cursor:pointer;font-size:14px;padding:4px 8px;border-radius:6px;transition:background .2s}.avatar-remove:hover{background:#fee2e2}.auth-submit{width:100%;background:var(--indigo-mid);color:#fff;border:none;border-radius:var(--radius-sm);padding:13px;font-size:15px;font-weight:700;font-family:var(--font-body);cursor:pointer;transition:all .25s;box-shadow:0 4px 14px rgba(67,56,202,.28);display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px}.auth-submit:hover:not(:disabled){background:var(--indigo);transform:translateY(-1px);box-shadow:0 8px 22px rgba(67,56,202,.38)}.auth-submit:disabled{opacity:.7;cursor:not-allowed}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--slate);font-size:12px;font-weight:500}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--border-dark)}.auth-google{width:100%;background:var(--white);color:var(--navy);border:1.5px solid var(--border-dark);border-radius:var(--radius-sm);padding:12px;font-size:14px;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px}.auth-google:hover{border-color:var(--indigo-light);background:var(--indigo-pale);color:var(--indigo)}.auth-alert{padding:12px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;display:flex;align-items:flex-start;gap:10px;animation:fadeSlideDown .3s ease}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.auth-alert.error{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.auth-alert.success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.auth-alert i{margin-top:1px;flex-shrink:0}.auth-footer-link{text-align:center;font-size:13px;color:var(--slate);margin-top:4px}.auth-footer-link a{color:var(--indigo-mid);font-weight:600}.auth-footer-link a:hover{text-decoration:underline}.auth-hint{font-size:12px;color:var(--slate);margin-top:2px}.auth-forgot{text-align:right;font-size:12px}.auth-forgot a{color:var(--indigo-mid);font-weight:600}.auth-forgot a:hover{text-decoration:underline}.pw-strength{display:flex;gap:4px;margin-top:6px}.pw-seg{flex:1 1;height:3px;border-radius:99px;background:var(--border-dark);transition:background .3s}.pw-seg.weak{background:var(--red)}.pw-seg.medium{background:var(--gold)}.pw-seg.strong{background:var(--green)}.otp-icon-wrap{display:flex;justify-content:center;margin-bottom:24px}.otp-icon-circle{width:80px;height:80px;border-radius:50%;border:3px solid rgba(99,102,241,.2);display:flex;justify-content:center;font-size:32px}.otp-email-badge,.otp-icon-circle{background:var(--indigo-pale);align-items:center;color:var(--indigo)}.otp-email-badge{display:inline-flex;gap:7px;border:1px solid rgba(99,102,241,.2);border-radius:99px;padding:6px 16px;font-size:13px;font-weight:600;margin-top:10px}.otp-inputs{display:flex;gap:10px;justify-content:center;margin:28px 0 24px}.otp-input{width:54px;height:66px;text-align:center;font-size:30px;font-weight:800;font-family:var(--font-body);color:var(--indigo);border:2px solid var(--border-dark);border-radius:14px;background:var(--white);outline:none;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;caret-color:transparent}.otp-input:focus{border-color:var(--indigo-light);box-shadow:0 0 0 4px rgba(99,102,241,.12);transform:scale(1.06)}.otp-input.filled{border-color:var(--indigo);background:var(--indigo-pale)}.otp-input.error{border-color:var(--red);background:#fee2e2;color:var(--red)}.otp-shake{animation:otpShake .5s ease}@keyframes otpShake{0%,to{transform:translateX(0)}15%{transform:translateX(-6px)}30%{transform:translateX(6px)}45%{transform:translateX(-5px)}60%{transform:translateX(5px)}75%{transform:translateX(-3px)}90%{transform:translateX(3px)}}.otp-resend-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;font-size:13px;color:var(--slate)}.otp-resend-btn{background:none;border:none;color:var(--indigo-mid);font-weight:700;font-size:13px;font-family:var(--font-body);cursor:pointer;padding:0;text-decoration:underline;transition:color .18s}.otp-resend-btn:hover{color:var(--indigo)}.otp-resend-btn:disabled{color:var(--slate);cursor:not-allowed;text-decoration:none}.otp-timer-count{font-weight:600;color:var(--slate);display:flex;align-items:center;gap:5px}@media (max-width:600px){.auth-page{align-items:flex-start;padding:96px 16px 48px}.auth-panel-right{padding:36px 24px;border-radius:20px}}@media (max-width:480px){.auth-row-2{grid-template-columns:1fr}.auth-panel-right{padding:28px 18px;border-radius:18px}.otp-inputs{gap:7px}.otp-input{width:46px;height:58px;font-size:26px;border-radius:12px}}