.auth-page-wrapper{min-height:100vh;font-family:var(--font-body,system-ui, -apple-system, sans-serif);background:#fff;justify-content:center;align-items:center;padding:40px 20px;display:flex}.auth-container{width:100%;max-width:440px;box-shadow:none;background:#fff;border:none;border-radius:0;padding:42px 36px;animation:.5s cubic-bezier(.16,1,.3,1) forwards slideUpFade}@keyframes slideUpFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:28px}.auth-title{color:#111827;letter-spacing:-.02em;margin-bottom:8px;font-size:1.85rem;font-weight:700}.auth-subtitle{color:#6b7280;max-width:340px;margin:0 auto;font-size:.88rem;font-weight:400;line-height:1.45}.auth-tab-bar{border-bottom:1px solid #e5e7eb;margin-bottom:26px;display:flex;position:relative}.auth-tab-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;flex:1;padding:12px 0;font-size:.95rem;font-weight:500;transition:all .25s;position:relative}.auth-tab-btn:hover{color:#111827}.auth-tab-btn.active{color:var(--primary,#e26314);font-weight:600}.auth-tab-btn.active:after{content:"";background:var(--primary,#e26314);border-radius:3px 3px 0 0;height:2.5px;position:absolute;bottom:-1px;left:0;right:0}.auth-error-banner{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:20px;padding:10px 14px;font-size:.85rem;font-weight:500}.auth-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:7px;display:flex}.form-label{color:#374151;gap:10px;font-size:.85rem;font-weight:600;flex-flow:row!important;align-items:center!important;display:flex!important}.form-label svg{display:block;flex-shrink:0!important}.label-with-forgot{justify-content:space-between;align-items:center;display:flex}.forgot-link-btn{color:var(--primary,#e26314);cursor:pointer;background:0 0;border:none;padding:0;font-size:.82rem;font-weight:600;transition:opacity .2s}.forgot-link-btn:hover{opacity:.85;text-decoration:underline}.phone-input-wrapper{background:#fff;border:1px solid #d1d5db;border-radius:12px;align-items:center;transition:all .25s;display:flex;overflow:hidden}.phone-input-wrapper:focus-within{border-color:var(--primary,#e26314);box-shadow:0 0 0 3px #e263141f}.phone-country-code{color:#374151;-webkit-user-select:none;user-select:none;background:#f9fafb;border-right:1px solid #e5e7eb;padding:13px 14px;font-size:.95rem;font-weight:600}.auth-input{color:#111827;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:12px;outline:none;width:100%;padding:13px 14px;font-size:.95rem;font-weight:500;transition:all .25s}.auth-input.phone-field{border:none;border-radius:0}.auth-input::placeholder{color:#9ca3af;font-weight:400}.auth-input:focus{border-color:var(--primary,#e26314);box-shadow:0 0 0 3px #e263141f}.password-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.password-input-wrapper .auth-input{padding-right:44px}.password-toggle-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex;position:absolute;right:12px}.password-toggle-btn:hover{color:var(--primary,#e26314)}.auth-submit-btn.pill-btn{background:var(--primary,#e26314);color:#fff;cursor:pointer;border:none;border-radius:50px;width:100%;margin-top:6px;padding:14px 24px;font-size:1rem;font-weight:600;transition:all .25s;box-shadow:0 4px 14px #e2631440}.auth-submit-btn.pill-btn:hover:not(:disabled){background:var(--primary-dark,#c4500a);transform:translateY(-1px);box-shadow:0 6px 18px #e2631459}.auth-submit-btn.pill-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{opacity:.65;cursor:not-allowed;transform:none}.phone-disclaimer{color:#6b7280;text-align:center;margin-top:10px;font-size:.78rem;line-height:1.45}.otp-step-header{background:#f9fafb;border:1px solid #f3f4f6;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.otp-sent-text{color:#374151;margin:0;font-size:.85rem}.change-phone-btn{color:var(--primary,#e26314);cursor:pointer;background:0 0;border:none;font-size:.82rem;font-weight:600}.change-phone-btn:hover{text-decoration:underline}.otp-boxes-container{justify-content:center;gap:12px;margin:16px 0;display:flex}.otp-box{text-align:center;color:#111827;border:1.5px solid #d1d5db;border-radius:12px;outline:none;width:52px;height:58px;font-size:1.4rem;font-weight:700;transition:all .2s}.otp-box:focus{border-color:var(--primary,#e26314);box-shadow:0 0 0 3px #e263141f}.otp-timer-row{text-align:center;color:#6b7280;margin-bottom:4px;font-size:.85rem}.resend-otp-btn{color:var(--primary,#e26314);cursor:pointer;background:0 0;border:none;font-size:.85rem;font-weight:600}.resend-otp-btn.disabled{color:#9ca3af;cursor:not-allowed}.auth-footer{text-align:center;color:#6b7280;margin-top:26px;font-size:.88rem;font-weight:400}.auth-link{color:var(--primary,#e26314);margin-left:5px;font-weight:600;text-decoration:none;transition:opacity .2s}.auth-link:hover{opacity:.85;text-decoration:underline}.spinner-container{justify-content:center;align-items:center;gap:8px;display:flex}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-form-skeleton{flex-direction:column;gap:20px;display:flex}.skeleton-item{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%) 0 0/200% 100%;animation:1.5s infinite skeletonLoading}@keyframes skeletonLoading{0%{background-position:200% 0}to{background-position:-200% 0}}.label-skeleton{border-radius:4px;width:90px;height:16px;margin-bottom:6px}.input-skeleton{border-radius:12px;width:100%;height:48px}.button-skeleton{border-radius:50px;width:100%;height:48px;margin-top:6px}.footer-skeleton{border-radius:4px;width:200px;height:16px;margin:20px auto 0}@media (max-width:640px){.auth-page-wrapper{padding:24px 16px}.auth-container{border-radius:16px;padding:32px 22px}.auth-title{font-size:1.65rem}.otp-boxes-container{gap:8px}.otp-box{width:44px;height:52px;font-size:1.25rem}}
