.auth-page{min-height:100dvh;min-height:calc(var(--vh, 1vh) * 100);background-color:#F8FAF6;padding:var(--header-height) 5vw clamp(2rem,5dvh,60px);display:flex;justify-content:center;align-items:center}.auth-container{width:100%;max-width:460px;background:white;padding:48px 40px;border-radius:28px;box-shadow:0 12px 48px rgba(0,0,0,.04),0 4px 12px rgba(0,0,0,.02);display:flex;flex-direction:column}.auth-logo{margin:0 auto 2rem;display:flex;justify-content:center}.auth-logo img{height:64px;width:auto}.auth-toggle-pill{display:flex;position:relative;background:#f0f2f5;border-radius:100px;padding:6px;margin-bottom:2.5rem}.auth-toggle-pill .toggle-bg{position:absolute;top:6px;left:6px;bottom:6px;width:calc(50% - 6px);background:white;border-radius:100px;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:transform .3s cubic-bezier(.25,1,.5,1)}.auth-toggle-pill .toggle-bg.slide-right{transform:translateX(100%)}.toggle-btn{flex:1 1;text-align:center;padding:10px 0;font-size:.95rem;font-weight:600;color:var(--text-light);background:transparent;border:none;cursor:pointer;position:relative;z-index:1;transition:color .3s}.step-indicator,.toggle-btn.active{color:var(--text-dark)}.step-indicator{font-family:var(--font-heading);font-size:1.35rem;font-weight:700;margin-bottom:.5rem;text-align:center}.step-subtitle{text-align:center;font-size:.95rem;color:var(--text-medium);margin-bottom:2rem}.social-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px;margin-bottom:12px;background:white;border:1px solid #e5e7eb;border-radius:12px;font-size:.95rem;font-weight:600;color:#374151;cursor:pointer;transition:all .2s ease}.social-btn:hover{background:#F9FAFB;border-color:#D1D5DB}.social-btn svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;text-align:center;margin:1.75rem 0;color:#9CA3AF;font-size:.85rem}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;border-bottom:1px solid #e5e7eb}.auth-divider span{padding:0 16px}.auth-form{gap:1.35rem}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:6px;position:relative}.form-group label{font-size:.85rem;font-weight:600;color:#4B5563;margin-left:4px}.form-group input{padding:14px 16px;border-radius:12px;border:1px solid #e5e7eb;font-family:var(--font-main);font-size:1rem;color:#111827;background:#F9FAFB;transition:all .2s ease}.form-group input::placeholder{color:#9CA3AF;opacity:.8}.form-group input:focus{outline:none;background:white;border-color:var(--primary-green);box-shadow:0 0 0 3px rgba(143,179,106,.15)}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1 1}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:48px}.password-toggle{position:absolute;right:14px;background:none;border:none;color:#9CA3AF;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;transition:color .2s}.password-toggle:hover{color:#4B5563}.auth-primary-btn{width:100%;padding:16px;border-radius:12px;border:none;background:var(--primary-green);color:white;font-weight:600;font-size:1.05rem;cursor:pointer;transition:all .25s ease;margin-top:1rem;box-shadow:0 4px 12px rgba(143,179,106,.15)}.auth-primary-btn:hover{background:#7a9c5a;transform:translateY(-2px);box-shadow:0 8px 16px rgba(143,179,106,.2)}.form-actions-row{display:flex;gap:1rem;margin-top:1rem}.auth-secondary-btn{flex:1 1;padding:14px;border-radius:12px;border:1px solid #e5e7eb;background:white;color:#374151;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.auth-secondary-btn:hover{background:#F9FAFB}.form-actions-row .auth-primary-btn{flex:2 1;margin-top:0}.otp-group{display:flex;gap:1rem;width:100%}.otp-group input{width:100%;text-align:center;letter-spacing:.5em;font-size:1.25rem;font-weight:600}.secondary-action{display:block;text-align:center;font-size:.95rem;color:var(--primary-green);cursor:pointer;background:none;border:none;padding:.5rem 0;font-weight:600}.forgot-password,.secondary-action.login-method-toggle{margin-top:.25rem}.forgot-password{font-size:.85rem;color:var(--text-medium)!important;text-align:right!important;margin-bottom:.25rem;display:block;text-decoration:none;font-weight:500}.forgot-password:hover{color:var(--primary-green)!important}.privacy-microcopy{font-size:.8rem;color:#6B7280;text-align:center;margin-top:2rem}.photo-upload{flex-direction:column;gap:14px;margin-bottom:.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.photo-preview,.photo-upload{display:flex;align-items:center}.photo-preview{width:88px;height:88px;border-radius:50%;background:#eef1ec;justify-content:center;overflow:hidden;border:2px dashed rgba(143,179,106,.4)}.photo-preview img{width:100%;height:100%;object-fit:cover}.upload-btn{font-size:.875rem;color:var(--primary-green);cursor:pointer;font-weight:600}@media (max-width:480px){.auth-container{padding:36px 24px;border-radius:24px}}