:root{--auth-bg:var(--body-bg,#f5f6fa);--auth-card-shadow:0 4px 32px #7c58001a;--auth-icon-bg:#7c580014;--auth-icon-color:var(--primary-color,var(--m3-primary,#7c5800));--auth-success-bg:#eaf5ec;--auth-success-color:#0d6b3e;--auth-success-border:#0d6b3e40;--auth-step-done:#0d6b3e;--auth-step-active:var(--primary-color,var(--m3-primary,#7c5800));--auth-step-idle:var(--border-color,#e8e8e8)}.dark-theme{--auth-bg:var(--dark-body-bg,#0e1520);--auth-icon-bg:#ffffff0f;--auth-success-bg:#0d6b3e26;--auth-success-color:#4ade80;--auth-success-border:#4ade8033}.auth-body{background:var(--auth-bg);flex-direction:column;min-height:100vh;display:flex}.auth-header{border-bottom:1px solid var(--border-color,#00000014);background:var(--card-bg,#fff);padding:14px 0}.dark-theme .auth-header{background:var(--dark-card-bg,#12202f)}.auth-header .container{justify-content:space-between;align-items:center;display:flex}.auth-header .logo img{width:auto;height:36px}.auth-wrapper{flex:1;align-items:center;padding:40px 0;display:flex}.auth-form-card{overflow:hidden;box-shadow:var(--auth-card-shadow)!important;border:1px solid var(--border-color,#0000000f)!important;border-radius:16px!important}.auth-form-card .card-body{padding:36px 32px}@media (width<=575px){.auth-form-card .card-body{padding:24px 20px}}.password-input{position:relative}.password-input .form-control{padding-inline-end:44px}.toggle-password{top:50%;cursor:pointer;color:var(--text-muted,#6b7280);z-index:4;background:0 0;border:none;padding:0;font-size:18px;line-height:1;transition:color .15s;position:absolute;inset-inline-end:12px;transform:translateY(-50%)}.toggle-password:hover{color:var(--primary-color,var(--m3-primary,#7c5800))}.password-strength{align-items:center;gap:8px;display:flex}.strength-track{background:var(--border-color,#e8e8e8);border-radius:2px;flex:1;height:4px;overflow:hidden}.strength-fill{border-radius:2px;width:0;height:100%;transition:width .3s,background .3s}.strength-label{text-align:end;min-width:60px;font-size:12px;font-weight:500}.or-hr{align-items:center;gap:12px;margin:20px 0;font-size:13px;display:flex}.or-hr:before,.or-hr:after{content:"";background:var(--border-color,#0000001a);flex:1;height:1px}.social-login{flex-direction:column;gap:10px;display:flex}.social-login .link{border:1px solid var(--border-color,#0000001a);border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:10px 16px;font-weight:500;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.social-login .link:hover{background:var(--hover-bg,#00000008)}.social-login .link img{width:20px;height:20px}.auth-icon-circle{background:var(--auth-icon-bg);width:72px;height:72px;color:var(--auth-icon-color);border:1px solid #7c58001f;border-radius:50%;justify-content:center;align-items:center;font-size:32px;display:flex}.auth-icon-circle--success{background:var(--auth-success-bg);color:var(--auth-success-color);border-color:var(--auth-success-border)}.auth-success-msg{background:var(--auth-success-bg);color:var(--auth-success-color);border:1px solid var(--auth-success-border);border-radius:10px;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.auth-success-msg i{flex-shrink:0;font-size:18px}.auth-trust-badge{color:var(--primary-color,var(--m3-primary,#7c5800));background:#7c580014;border:1px solid #7c58001f;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:500;display:inline-flex}.auth-steps{justify-content:center;align-items:center;display:flex}.auth-step{flex-direction:column;flex-shrink:0;align-items:center;gap:6px;display:flex}.step-dot{background:var(--auth-step-idle);width:32px;height:32px;color:var(--text-muted,#9ca3af);border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.auth-step.done .step-dot{background:var(--auth-step-done);color:#fff;border-color:var(--auth-step-done)}.auth-step.active .step-dot{background:var(--auth-step-active);color:#fff;border-color:var(--auth-step-active)}.step-text{color:var(--text-muted,#9ca3af);text-align:center;font-size:12px}.auth-step.done .step-text{color:var(--auth-step-done)}.auth-step.active .step-text{color:var(--auth-step-active);font-weight:500}.auth-step-line{background:var(--border-color,#e8e8e8);flex:1;min-width:24px;max-width:48px;height:2px;margin-bottom:18px}[dir=rtl] .rotate-ar{transform:scaleX(-1)}[dir=rtl] .toggle-password{left:12px;right:auto}.btn-ajax{position:relative;overflow:hidden}.btn-ajax .btn-label{align-items:center;gap:8px;transition:opacity .2s,transform .2s;display:inline-flex}.btn-ajax:after{content:"";opacity:0;pointer-events:none;border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;transition:opacity .2s,transform .2s;animation:.7s linear infinite paused auth-btn-spin;position:absolute;top:50%;left:50%;transform:scale(.6)}.btn-ajax.is-loading{cursor:progress}.btn-ajax.is-loading .btn-label{opacity:0;transform:translateY(6px)}.btn-ajax.is-loading:after{opacity:1;animation-play-state:running;transform:scale(1)}.btn-ajax:disabled{opacity:1}.btn-ajax .btn-check-icon{opacity:0;pointer-events:none;width:22px;height:22px;margin:-11px 0 0 -11px;position:absolute;top:50%;left:50%}.btn-ajax .btn-check-icon path{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px}.btn-ajax.is-success{background:#0d6b3e!important;border-color:#0d6b3e!important}.btn-ajax.is-success .btn-label{opacity:0;transform:translateY(6px)}.btn-ajax.is-success:after{opacity:0}.btn-ajax.is-success .btn-check-icon{opacity:1}.btn-ajax.is-success .btn-check-icon path{animation:.35s ease-out 50ms forwards auth-check-draw}@keyframes auth-btn-spin{to{transform:scale(1)rotate(360deg)}}@keyframes auth-check-draw{to{stroke-dashoffset:0}}.auth-shake{animation:.45s cubic-bezier(.36,.07,.19,.97) auth-shake}@keyframes auth-shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}.auth-alert{color:#c0392b;background:#e24b4a14;border:1px solid #e24b4a40;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.auth-alert i{flex-shrink:0;margin-top:1px;font-size:18px}.dark-theme .auth-alert{color:#f87171;background:#e24b4a24;border-color:#f8717140}.auth-error-in{animation:.25s ease-out auth-error-in}@keyframes auth-error-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.auth-shake,.auth-error-in,.btn-ajax .btn-label,.btn-ajax:after,.btn-ajax .btn-check-icon path{transition:none;animation:none}.btn-ajax.is-success .btn-check-icon path{stroke-dashoffset:0}}
