/* ==========================================================================
   HP AUTH — صفحه های ورود، نام نویسی، بازیابی گذرواژه و تایید کد
   وابسته به hp-ui.css. بعد از آن صف بندی شود.
   مارک آپ ویوها دست نخورده مانده تا اسکریپت های موجود نشکنند.
   ========================================================================== */

.hp-auth{
  margin:0;min-height:100vh;
  background:var(--hp-ink);
  color:var(--hp-text);
  font-family:var(--hp-font);
  position:relative;overflow-x:hidden;
}
[data-theme="dark"] .hp-auth{background:var(--hp-app-bg)}

/* شبکه نقطه ای پس زمینه، بسیار کم رنگ تا متن را شلوغ نکند */
.hp-auth > canvas,
.hp-auth .particles-js-canvas-el{
  position:fixed!important;inset:0;z-index:0;opacity:.14;pointer-events:none;
}

/* ---------- چیدمان ---------- */
.hp-auth .wrapper{
  position:relative;z-index:1;
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  padding:var(--hp-s-8) var(--hp-s-4);
}
.hp-auth .container{width:100%;max-width:460px;padding:0}
.hp-auth .row{margin:0}
.hp-auth .account-box{
  width:100%;max-width:100%;flex:0 0 100%;padding:0!important;
}

/* ---------- کارت ---------- */
.hp-auth .content{
  background:var(--hp-surface);
  border:var(--hp-bw) solid var(--hp-line);
  border-radius:var(--hp-r-lg);
  box-shadow:var(--hp-shadow-lg);
  padding:var(--hp-s-8) var(--hp-s-6) var(--hp-s-6);
  width:100%;height:auto;min-height:0;max-height:none;float:none;margin:0;
}

/* ---------- سرصفحه کارت ---------- */
.hp-auth .content h1{
  font-size:var(--hp-fs-h3)!important;font-weight:var(--hp-fw-bold);
  color:var(--hp-text-strong);margin:0 0 var(--hp-s-4)!important;text-align:center;
}
.hp-auth .content > .col-12:first-child{padding:0!important;margin-bottom:var(--hp-s-5)}
.hp-auth .content img{
  max-height:72px!important;width:auto;margin:0 auto var(--hp-s-4);display:block;
}
.hp-auth .content p{
  color:var(--hp-muted);font-size:var(--hp-fs-sm);line-height:var(--hp-lh-read);
  text-align:start!important;margin:0;padding:0!important;
}
.hp-auth .content p i{font-style:normal;font-weight:var(--hp-fw-bold);color:var(--hp-text)}

/* ---------- فرم ---------- */
.hp-auth .form-group{margin:0}
.hp-auth .inpdiv{padding:0!important;margin-bottom:var(--hp-s-4)}
.hp-auth .inpdiv label{
  display:block;width:100%;padding:0!important;margin:0 0 var(--hp-s-2);
  font-size:var(--hp-fs-sm);font-weight:var(--hp-fw-bold);color:var(--hp-text);
}
.hp-auth input.form-control,
.hp-auth .form-control{
  width:100%;height:var(--hp-control-h);padding:0 var(--hp-s-3);
  background:var(--hp-surface);color:var(--hp-text);
  border:var(--hp-bw) solid var(--hp-line);border-radius:var(--hp-r-sm);
  font-size:var(--hp-fs-base);box-shadow:none;text-align:start;
  transition:border-color var(--hp-t-base) var(--hp-ease),box-shadow var(--hp-t-base) var(--hp-ease);
}
.hp-auth input[type=password],
.hp-auth input[name=phone_number],
.hp-auth input[name=phone_number_forget],
.hp-auth input[name=code]{direction:ltr;unicode-bidi:embed;text-align:start;font-variant-numeric:tabular-nums}
.hp-auth input[name=code]{letter-spacing:6px;text-align:center;font-size:var(--hp-fs-h3);font-weight:var(--hp-fw-bold);height:var(--hp-control-h-lg)}
.hp-auth .form-control:hover{border-color:var(--hp-line-strong)}
.hp-auth .form-control:focus{border-color:var(--hp-brand);box-shadow:var(--hp-ring);outline:none}
.hp-auth ::placeholder{color:var(--hp-placeholder)}

/* ---------- دکمه ---------- */
.hp-auth .btn,
.hp-auth button.login,.hp-auth button.register,
.hp-auth button.resetp,.hp-auth button.submit,.hp-auth button.verify{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--hp-s-2);
  height:var(--hp-control-h);padding:0 var(--hp-s-5);
  background:var(--hp-brand);color:var(--hp-on-brand)!important;
  border:var(--hp-bw) solid var(--hp-brand);border-radius:var(--hp-r-sm)!important;
  font-size:var(--hp-fs-base);font-weight:var(--hp-fw-bold);line-height:var(--hp-type-leading-unit-1);
  cursor:pointer;box-shadow:none;text-shadow:none;
  transition:background var(--hp-t-base) var(--hp-ease);
}
.hp-auth .btn:hover,.hp-auth button.login:hover,.hp-auth button.register:hover,
.hp-auth button.resetp:hover,.hp-auth button.submit:hover,.hp-auth button.verify:hover{
  background:var(--hp-brand-hover);border-color:var(--hp-brand-hover);
}
.hp-auth .btn:focus,.hp-auth button:focus{box-shadow:var(--hp-ring);outline:none}
.hp-auth .btn i{font-size:var(--hp-type-size-14)}

/* ردیف دکمه و لینک کمکی */
.hp-auth .inpdiv.row{display:flex;align-items:center;gap:var(--hp-s-3);flex-wrap:wrap;margin:0!important}
.hp-auth .forgetr{padding:0!important;flex:1 1 auto;max-width:none}
.hp-auth .inpdiv.row .btn{flex:1 1 auto;max-width:none}
.hp-auth .forget,.hp-auth .loginer{
  color:var(--hp-brand);font-size:var(--hp-fs-sm);font-weight:var(--hp-fw-bold);cursor:pointer;
}
.hp-auth .forget:hover,.hp-auth .loginer:hover{color:var(--hp-brand-hover);text-decoration:underline}

/* ---------- پیام ---------- */
.hp-auth .alert{
  display:none;margin:var(--hp-s-4) 0 0;padding:var(--hp-s-3) var(--hp-s-4);
  background:var(--hp-warning-bg);border:var(--hp-bw) solid var(--hp-warning-line);
  border-inline-start:4px solid var(--hp-warning);border-radius:var(--hp-r-sm);
  color:var(--hp-warning-text);font-size:var(--hp-fs-sm);line-height:var(--hp-lh-ui);text-align:start;
}
.hp-auth .alert.error{
  background:var(--hp-danger-bg);border-color:var(--hp-danger-line);
  border-inline-start-color:var(--hp-danger);color:var(--hp-danger-text);
}

/* ---------- پاورقی کارت ---------- */
.hp-auth .footer{
  margin-top:var(--hp-s-4);padding:var(--hp-s-4);text-align:center;
  background:transparent;border:0;position:static;width:100%;
}
.hp-auth .footer a{color:var(--hp-brand-soft);font-size:var(--hp-fs-sm);font-weight:var(--hp-fw-bold)}
.hp-auth .footer a:hover{color:#fff}

/* ---------- کلید حالت روشن و تیره ---------- */
.hp-auth__theme{
  position:fixed;top:var(--hp-s-4);inset-inline-end:var(--hp-s-4);z-index:3;
  width:var(--hp-control-h-sm);height:var(--hp-control-h-sm);
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:var(--hp-r-sm);cursor:pointer;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#fff;
}
.hp-auth__theme:hover{background:rgba(255,255,255,.16)}

/* ---------- شمارنده و متن های کوچک ---------- */
.hp-auth .countdown,.hp-auth .text-muted{color:var(--hp-muted)!important;font-size:var(--hp-fs-sm)}
.hp-auth .text-danger{color:var(--hp-danger-text)!important}
.hp-auth hr{border-color:var(--hp-line)}

@media (max-width:575px){
  .hp-auth .wrapper{padding:var(--hp-s-5) var(--hp-s-3)}
  .hp-auth .content{padding:var(--hp-s-6) var(--hp-s-4)}
}

/* ==========================================================================
   ورود مدیریت و کارمندان — این دو صفحه مارک آپ اختصاصی دارند
   ========================================================================== */
.hp-authcard{
  width:100%;max-width:420px;
  background:var(--hp-surface);border:var(--hp-bw) solid var(--hp-line);
  border-radius:var(--hp-r-lg);box-shadow:var(--hp-shadow-lg);
  padding:var(--hp-s-8) var(--hp-s-6);
}
.hp-authcard__head{text-align:center;margin-bottom:var(--hp-s-6)}
.hp-authcard__badge{
  width:56px;height:56px;margin:0 auto var(--hp-s-4);border-radius:var(--hp-r-lg);
  background:var(--hp-brand-tint);color:var(--hp-brand);
  display:flex;align-items:center;justify-content:center;font-size:var(--hp-type-size-22);
}
.hp-authcard__title{font-size:var(--hp-fs-h3);font-weight:var(--hp-fw-bold);color:var(--hp-text-strong);margin:0}
.hp-authcard__sub{font-size:var(--hp-fs-sm);color:var(--hp-muted);margin:var(--hp-s-1) 0 0}
.hp-authcard .hp-field:last-of-type{margin-bottom:var(--hp-s-5)}
.hp-authcard__foot{margin-top:var(--hp-s-5);padding-top:var(--hp-s-4);border-top:var(--hp-bw) solid var(--hp-line);text-align:center}

/* ========================================================================== 
   v10 — جهت نوشتار صفحات ورود و نام نویسی
   ========================================================================== */
/* متن رابط فارسی راست چین است؛ داده های لاتین/عددی داخل ورودی ها چپ چین می مانند. */
.hp-auth{
  direction:rtl;
  text-align:right;
}
.hp-auth .content,
.hp-auth .form-group,
.hp-auth .inpdiv,
.hp-auth .hp-authcard,
.hp-auth .hp-authcard .hp-field{
  direction:rtl;
  text-align:right;
}
.hp-auth .content p,
.hp-auth .inpdiv label,
.hp-auth .hp-label,
.hp-auth .alert{
  direction:rtl;
  text-align:right!important;
}

/* ورودی های شماره/نام کاربری/رمز داده لاتین هستند. */
.hp-auth input[name="phone_number"],
.hp-auth input[name="phone_number_forget"],
.hp-auth input[name="mobile"],
.hp-auth input[name="otp_mobile"],
.hp-auth input[name="otp_code"],
.hp-auth input[name="username"],
.hp-auth input[name="password"],
.hp-auth input[name="password2"],
.hp-auth input[name="code"]{
  direction:ltr!important;
  unicode-bidi:embed;
  text-align:left!important;
  font-variant-numeric:tabular-nums;
}
.hp-auth input[name="code"],
.hp-auth input[name="otp_code"]{
  text-align:center!important;
}

/* اجزایی که ذاتاً باید وسط باشند. */
.hp-auth .content h1,
.hp-auth .hp-authcard__head,
.hp-auth .hp-authcard__foot,
.hp-auth .footer{
  text-align:center!important;
}

/* هیچ لینک یا لینک نمایی در صفحات احراز هویت روی hover خط زیر نگیرد. */
.hp-auth a,
.hp-auth a:hover,
.hp-auth a:focus,
.hp-auth .forget,
.hp-auth .forget:hover,
.hp-auth .loginer,
.hp-auth .loginer:hover{
  text-decoration:none!important;
}

/* v24 — نمایش/پنهان کردن گذرواژه */
.hp-auth .hp-password-wrap{position:relative;width:100%;direction:ltr}
.hp-auth .hp-password-wrap input{padding-inline-end:44px!important;width:100%}
.hp-auth .hp-password-toggle{
  position:absolute;inset-inline-end:6px;top:50%;transform:translateY(-50%);
  width:34px;height:34px;border:0;background:transparent;color:var(--hp-muted);
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px;z-index:2;
}
.hp-auth .hp-password-toggle:hover{background:var(--hp-brand-tint);color:var(--hp-brand)}
.hp-auth .hp-password-toggle:focus{outline:none;box-shadow:var(--hp-ring)}

/* v24 — انتخاب روش ورود */
.hp-auth .hp-auth-methods{display:flex;gap:8px;background:var(--hp-app-bg);padding:5px;border:1px solid var(--hp-line);border-radius:12px;margin-bottom:var(--hp-s-5)}
.hp-auth .hp-auth-method{flex:1;border:0;background:transparent;color:var(--hp-muted);height:38px;border-radius:9px;font-family:inherit;font-weight:var(--hp-type-weight-bold);cursor:pointer}
.hp-auth .hp-auth-method.is-active{background:var(--hp-surface);color:var(--hp-brand);box-shadow:0 1px 4px rgba(15,23,42,.08)}

/* ---------- v25: اکشن‌های ورود با کد یکبار مصرف ---------- */
.hp-auth .hp-otp-actions{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:4px;
}
.hp-auth .hp-otp-action{
  width:100%;
  min-height:48px;
  padding:0 18px;
  border:1px solid transparent;
  border-radius:10px;
  font-family:var(--hp-font)!important;
  font-size:var(--hp-type-size-14);
  font-weight:var(--hp-type-weight-extrabold);
  line-height:var(--hp-type-leading-unit-1-5);
  cursor:pointer;
  transition:background var(--hp-t-base) var(--hp-ease),border-color var(--hp-t-base) var(--hp-ease),color var(--hp-t-base) var(--hp-ease),box-shadow var(--hp-t-base) var(--hp-ease),transform var(--hp-t-fast) var(--hp-ease);
}
.hp-auth .hp-otp-action:focus{outline:none;box-shadow:var(--hp-ring)}
.hp-auth .hp-otp-action:active{transform:translateY(1px)}
.hp-auth .hp-otp-action:disabled{opacity:.62;cursor:not-allowed;transform:none}
.hp-auth .hp-otp-action--request,
.hp-auth .hp-otp-action--verify{
  background:var(--hp-brand);
  border-color:var(--hp-brand);
  color:var(--hp-on-brand);
}
.hp-auth .hp-otp-action--request:hover,
.hp-auth .hp-otp-action--verify:hover{
  background:var(--hp-brand-hover);
  border-color:var(--hp-brand-hover);
  color:var(--hp-on-brand);
}
/* پس از ارسال اولین کد، «ارسال دوباره» اکشن ثانویه است و دکمه ورود اکشن اصلی می‌ماند. */
.hp-auth .hp-otp-action--request.is-resend{
  background:var(--hp-surface);
  border-color:var(--hp-line-brand);
  color:var(--hp-brand);
}
.hp-auth .hp-otp-action--request.is-resend:hover{
  background:var(--hp-brand-wash);
  border-color:var(--hp-brand);
  color:var(--hp-brand-hover);
}
.hp-auth .otp-code-wrap{margin-bottom:4px}
@media (max-width:575px){
  .hp-auth .hp-otp-actions{gap:10px}
  .hp-auth .hp-otp-action{min-height:46px}
}

/* ========================================================================== 
   v33 — mobile auth spacing
   Keep the fixed theme toggle outside the registration/login card on phones.
   ========================================================================== */
@media (max-width:575px){
  .hp-auth .wrapper{
    padding-top:max(78px, calc(env(safe-area-inset-top, 0px) + 64px))!important;
    align-items:flex-start;
  }
  .hp-auth__theme{
    top:max(14px, env(safe-area-inset-top, 14px));
    inset-inline-end:14px;
    z-index:10;
  }
  .hp-auth .account-box,
  .hp-auth .content{
    position:relative;
    z-index:1;
  }
  .hp-auth .account-box{margin-top:0!important}
}

/* ==========================================================================
   v70 — دکمه‌های کمکی ورود/نام‌نویسی
   ========================================================================== */
.hp-auth .hp-auth-actions{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);
  align-items:center;gap:var(--hp-s-3);width:100%;margin:0!important;
}
.hp-auth .hp-auth-secondary-btn,
.hp-auth a.hp-auth-secondary-btn{
  min-width:0;width:100%;height:var(--hp-control-h);
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:0 var(--hp-s-4);margin:0;
  border:var(--hp-bw) solid var(--hp-line-brand);border-radius:var(--hp-r-sm)!important;
  background:var(--hp-brand-tint);color:var(--hp-brand)!important;
  font-size:var(--hp-fs-sm);font-weight:var(--hp-fw-bold);line-height:var(--hp-type-leading-unit-1);
  cursor:pointer;box-shadow:none;text-decoration:none!important;
  transition:background var(--hp-t-base) var(--hp-ease),border-color var(--hp-t-base) var(--hp-ease),color var(--hp-t-base) var(--hp-ease);
}
.hp-auth .hp-auth-secondary-btn:hover,
.hp-auth a.hp-auth-secondary-btn:hover{
  background:var(--hp-brand-wash);border-color:var(--hp-brand);color:var(--hp-brand-hover)!important;
  text-decoration:none!important;
}
.hp-auth .hp-auth-secondary-btn:focus,
.hp-auth a.hp-auth-secondary-btn:focus{outline:none;box-shadow:var(--hp-ring)}
.hp-auth .hp-auth-secondary-btn i{font-size:var(--hp-type-size-14);flex:0 0 auto}
.hp-auth .hp-auth-primary-btn{width:100%;min-width:0;max-width:none!important;margin:0!important}

.hp-auth .hp-auth-register-cta{padding:0!important;margin-top:var(--hp-s-4)!important}
.hp-auth .hp-auth-footer-btn{
  width:100%;min-height:48px;padding:10px var(--hp-s-4);
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  border:1px solid rgba(255,255,255,.24);border-radius:var(--hp-r-sm);
  background:rgba(255,255,255,.08);color:#fff!important;
  font-size:var(--hp-fs-sm);font-weight:var(--hp-fw-medium);
  text-decoration:none!important;backdrop-filter:blur(4px);
  transition:background var(--hp-t-base) var(--hp-ease),border-color var(--hp-t-base) var(--hp-ease);
}
.hp-auth .hp-auth-footer-btn strong{font-weight:var(--hp-fw-bold);color:#fff}
.hp-auth .hp-auth-footer-btn:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.4);color:#fff!important}
.hp-auth .hp-auth-footer-btn:focus{outline:none;box-shadow:0 0 0 3px rgba(255,255,255,.14)}
.hp-auth .hp-auth-footer-btn i{font-size:var(--hp-type-size-16)}

[data-theme="dark"] .hp-auth .hp-auth-secondary-btn,
[data-theme="dark"] .hp-auth a.hp-auth-secondary-btn{
  background:var(--hp-surface-2);border-color:var(--hp-line-brand);color:var(--hp-brand-soft)!important;
}

@media (max-width:575px){
  .hp-auth .hp-auth-actions{grid-template-columns:1fr}
  .hp-auth .hp-auth-secondary-btn,.hp-auth a.hp-auth-secondary-btn,.hp-auth .hp-auth-primary-btn{width:100%}
}


/* ========================================================================== 
   v71 — بازیابی رمز و سنجش قدرت گذرواژه
   ========================================================================== */
.hp-auth .hp-reset-card{padding-bottom:var(--hp-s-5)!important}
.hp-auth .hp-reset-head{text-align:center;margin-bottom:20px}
.hp-auth .hp-reset-logo{display:inline-flex;justify-content:center;width:100%;margin-bottom:8px}
.hp-auth .hp-reset-logo img{max-height:112px;max-width:82%;object-fit:contain}
.hp-auth .hp-reset-icon{width:48px;height:48px;margin:0 auto 10px;display:grid;place-items:center;border-radius:14px;background:var(--hp-brand-tint);color:var(--hp-brand);font-size:var(--hp-type-size-18)}
.hp-auth .hp-reset-head h1{margin:0 0 8px;color:var(--hp-text-strong);font-size:var(--hp-type-size-18);font-weight:var(--hp-type-weight-extrabold)}
.hp-auth .hp-reset-head p{max-width:460px;margin:0 auto!important;color:var(--hp-muted)!important;font-size:var(--hp-type-size-13);line-height:var(--hp-type-leading-unit-2);text-align:center!important}
.hp-auth .hp-reset-steps{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 20px;padding:5px;background:var(--hp-app-bg);border:1px solid var(--hp-line);border-radius:13px}
.hp-auth .hp-reset-step{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;padding:7px 10px;border-radius:9px;color:var(--hp-muted);font-size:var(--hp-type-size-12)}
.hp-auth .hp-reset-step span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:var(--hp-surface);border:1px solid var(--hp-line);font-family:var(--hp-type-family);font-size:var(--hp-type-size-12);font-weight:var(--hp-type-weight-extrabold)}
.hp-auth .hp-reset-step strong{font-weight:var(--hp-type-weight-extrabold)}
.hp-auth .hp-reset-step.is-active{background:var(--hp-surface);color:var(--hp-brand);box-shadow:0 1px 5px rgba(15,23,42,.07)}
.hp-auth .hp-reset-step.is-active span,.hp-auth .hp-reset-step.is-done span{background:var(--hp-brand);border-color:var(--hp-brand);color:#fff}
.hp-auth .hp-reset-step.is-done{color:var(--hp-text)}
.hp-auth .hp-reset-panel{padding:18px;border:1px solid var(--hp-line);border-radius:14px;background:var(--hp-surface-2)}
.hp-auth .hp-reset-mobile{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:16px;padding:11px 12px;border-radius:10px;background:var(--hp-brand-tint);color:var(--hp-text);font-size:var(--hp-type-size-12)}
.hp-auth .hp-reset-mobile i{color:var(--hp-brand);font-size:var(--hp-type-size-16)}.hp-auth .hp-reset-mobile strong{direction:ltr;unicode-bidi:isolate}
.hp-auth .hp-reset-field{margin-bottom:15px}.hp-auth .hp-reset-field label{display:block;margin:0 0 7px;font-size:var(--hp-type-size-12);font-weight:var(--hp-type-weight-extrabold);color:var(--hp-text-strong)}
.hp-auth .hp-reset-field small{display:block;margin-top:6px;color:var(--hp-muted);font-size:var(--hp-type-size-12);line-height:var(--hp-type-leading-unit-1-8)}
.hp-auth .hp-reset-code{height:54px!important;text-align:center!important;direction:ltr!important;font-family:var(--hp-type-family);font-size:var(--hp-type-size-22)!important;font-weight:var(--hp-type-weight-extrabold)!important;letter-spacing:.32em!important;padding-inline-start:calc(.32em + 12px)!important}
.hp-auth .hp-reset-submit,.hp-auth .hp-reset-save{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;border:1px solid var(--hp-brand);border-radius:10px;background:var(--hp-brand);color:#fff;font-family:var(--hp-font)!important;font-size:var(--hp-type-size-13);font-weight:var(--hp-type-weight-extrabold);cursor:pointer;transition:.18s ease}
.hp-auth .hp-reset-submit:hover,.hp-auth .hp-reset-save:hover{background:var(--hp-brand-hover);border-color:var(--hp-brand-hover)}
.hp-auth .hp-reset-submit:focus,.hp-auth .hp-reset-save:focus{outline:none;box-shadow:var(--hp-ring)}
.hp-auth .hp-reset-submit:disabled,.hp-auth .hp-reset-save:disabled{opacity:.65;cursor:wait}
.hp-auth .hp-reset-notice{display:flex;align-items:flex-start;gap:9px;margin-bottom:16px;padding:11px 12px;border:1px solid var(--hp-success-line);border-radius:10px;background:var(--hp-success-bg);color:var(--hp-text);font-size:var(--hp-type-size-12);line-height:var(--hp-type-leading-unit-1-9)}
.hp-auth .hp-reset-notice i{color:var(--hp-success);font-size:var(--hp-type-size-16);margin-top:3px}
.hp-auth .hp-reset-message{margin-top:12px;padding:11px 13px;border-radius:10px;font-size:var(--hp-type-size-12);line-height:var(--hp-type-leading-unit-1-9);text-align:right!important}.hp-auth .hp-reset-message.is-error{background:var(--hp-danger-bg);border:1px solid var(--hp-danger-line);color:var(--hp-danger)}.hp-auth .hp-reset-message.is-success{background:var(--hp-success-bg);border:1px solid var(--hp-success-line);color:var(--hp-success)}
.hp-auth .hp-reset-back{width:100%;min-height:42px;margin-top:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--hp-line);border-radius:10px;background:var(--hp-surface);color:var(--hp-muted)!important;font-size:var(--hp-type-size-12);font-weight:var(--hp-type-weight-bold);text-decoration:none!important}
.hp-auth .hp-reset-back:hover{color:var(--hp-brand)!important;border-color:var(--hp-line-brand);background:var(--hp-brand-wash)}

/* مشترک: سنجش قدرت گذرواژه */
.hp-password-meter{margin:2px 0 16px;padding:12px;border:1px solid var(--hp-line);border-radius:11px;background:var(--hp-surface)}
.hp-password-meter__top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:var(--hp-type-size-12);color:var(--hp-muted)}
.hp-password-meter__top strong{font-size:var(--hp-type-size-12);color:var(--hp-text-strong)}
.hp-password-meter__track{height:6px;overflow:hidden;border-radius:999px;background:var(--hp-surface-2)}
.hp-password-meter__track span{display:block;height:100%;width:0;border-radius:inherit;background:var(--hp-danger);transition:width .2s ease,background .2s ease}
.hp-password-meter[data-score="2"] .hp-password-meter__track span{background:var(--hp-warning)}
.hp-password-meter[data-score="3"] .hp-password-meter__track span{background:#d6a400}
.hp-password-meter[data-score="4"] .hp-password-meter__track span{background:var(--hp-info)}
.hp-password-meter[data-score="5"] .hp-password-meter__track span{background:var(--hp-success)}
.hp-password-rules{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin:11px 0 0!important;padding:0!important;list-style:none!important}
.hp-password-rules li{display:flex;align-items:center;gap:6px;margin:0!important;color:var(--hp-muted);font-size:var(--hp-type-size-12);line-height:var(--hp-type-leading-unit-1-6)}
.hp-password-rules li i{width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:var(--hp-surface-2);color:var(--hp-muted);font-size:var(--hp-type-size-12)}
.hp-password-rules li.is-valid{color:var(--hp-success);font-weight:var(--hp-type-weight-bold)}.hp-password-rules li.is-valid i{background:var(--hp-success-bg);color:var(--hp-success)}
.hp-password-match{display:block;min-height:18px;margin-top:6px;font-size:var(--hp-type-size-12)}.hp-password-match.is-valid{color:var(--hp-success)}.hp-password-match.is-invalid{color:var(--hp-danger)}

@media(max-width:575px){
  .hp-auth .hp-reset-card{padding-inline:14px!important}
  .hp-auth .hp-reset-panel{padding:14px}
  .hp-auth .hp-reset-code{font-size:var(--hp-type-size-18)!important;letter-spacing:.24em!important}
  .hp-password-rules{grid-template-columns:1fr}
}

/* ========================================================================== 
   v86 — کلید جابه‌جایی ورود مدیریت / کارمندان
   ========================================================================== */
.hp-auth .hp-authcard__foot .hp-auth-switch{
  width:100%;min-height:44px;height:44px;margin:0;
  border-color:var(--hp-line-brand);background:var(--hp-brand-wash);
  color:var(--hp-brand)!important;font-family:var(--hp-font)!important;
  font-size:var(--hp-type-size-12);font-weight:var(--hp-type-weight-extrabold);border-radius:10px;
}
.hp-auth .hp-authcard__foot .hp-auth-switch span,
.hp-auth .hp-authcard__foot .hp-auth-switch i{color:inherit!important}
.hp-auth .hp-authcard__foot .hp-auth-switch i{font-size:var(--hp-type-size-14)}
.hp-auth .hp-authcard__foot .hp-auth-switch:hover{
  background:var(--hp-brand-tint);border-color:var(--hp-brand);color:var(--hp-brand-hover)!important;
}
.hp-auth .hp-authcard__foot .hp-auth-switch:focus-visible{outline:none;box-shadow:var(--hp-ring)}
@media(max-width:575px){
  .hp-auth .hp-authcard__foot{margin-top:18px;padding-top:14px}
  .hp-auth .hp-authcard__foot .hp-auth-switch{min-height:46px;height:46px}
}

/* Login primary action: preserve brand blue in all pointer states. */
.hp-auth button.login.hp-auth-primary-btn,
.hp-auth button.login.hp-auth-primary-btn.btn-success,
.hp-auth button.login.hp-auth-primary-btn:hover,
.hp-auth button.login.hp-auth-primary-btn:focus,
.hp-auth button.login.hp-auth-primary-btn:active,
.hp-auth button.login.hp-auth-primary-btn:focus-visible,
.hp-auth button.login.hp-auth-primary-btn:not(:disabled):not(.disabled):active{
 background:#3f5aef!important;border-color:#3f5aef!important;color:#fff!important;
 background-image:none!important;box-shadow:none!important;
}
.hp-auth button.login.hp-auth-primary-btn:hover{background:#344edb!important;border-color:#344edb!important}
.hp-auth button.login.hp-auth-primary-btn:focus-visible{outline:2px solid #a9b9ff!important;outline-offset:2px}
.hp-auth button.login.hp-auth-primary-btn span,.hp-auth button.login.hp-auth-primary-btn i{color:#fff!important}


/* 2026-10-12 — Login form fields: honor native dark palette, including autofill */
html[data-theme="dark"] body.hp-auth input.form-control,
html[data-theme="dark"] body.hp-auth .form-control,
html[data-theme="dark"] body.hp-auth input.form-control:focus,
html[data-theme="dark"] body.hp-auth input.form-control:disabled {
  background-color:var(--hp-surface-2,#1a1534)!important;
  color:var(--hp-text,#f3f4ff)!important;
  border-color:var(--hp-line,rgba(130,144,204,.23))!important;
  -webkit-text-fill-color:var(--hp-text,#f3f4ff);
  caret-color:var(--hp-text,#f3f4ff);
  color-scheme:dark;
}
html[data-theme="dark"] body.hp-auth input.form-control::placeholder {
  color:var(--hp-muted,#a6a2bc)!important;
  -webkit-text-fill-color:var(--hp-muted,#a6a2bc);
  opacity:1;
}
html[data-theme="dark"] body.hp-auth input.form-control:focus {
  border-color:var(--hp-brand,#3f5aef)!important;
  box-shadow:var(--hp-ring,0 0 0 3px rgba(63,90,239,.15))!important;
}
html[data-theme="dark"] body.hp-auth input.form-control:-webkit-autofill,
html[data-theme="dark"] body.hp-auth input.form-control:-webkit-autofill:hover,
html[data-theme="dark"] body.hp-auth input.form-control:-webkit-autofill:focus {
  -webkit-box-shadow:0 0 0 1000px var(--hp-surface-2,#1a1534) inset!important;
  box-shadow:0 0 0 1000px var(--hp-surface-2,#1a1534) inset!important;
  -webkit-text-fill-color:var(--hp-text,#f3f4ff)!important;
  caret-color:var(--hp-text,#f3f4ff)!important;
  transition:background-color 9999s ease-out 0s;
}

/* 2026-10-12: login action text contrast in native dark mode */
html[data-theme="dark"] body.hp-auth .loginform button.forget.hp-auth-secondary-btn,
html[data-theme="dark"] body.hp-auth .forgetform button.loginer.hp-auth-secondary-btn{
 background:var(--hp-surface-2,#1a1534)!important;
 border-color:rgba(125,146,255,.45)!important;
 color:#c7d2ff!important;
 opacity:1!important;
}
html[data-theme="dark"] body.hp-auth .loginform button.forget.hp-auth-secondary-btn span,
html[data-theme="dark"] body.hp-auth .loginform button.forget.hp-auth-secondary-btn i,
html[data-theme="dark"] body.hp-auth .forgetform button.loginer.hp-auth-secondary-btn span,
html[data-theme="dark"] body.hp-auth .forgetform button.loginer.hp-auth-secondary-btn i{color:inherit!important;opacity:1!important}
html[data-theme="dark"] body.hp-auth .loginform button.forget.hp-auth-secondary-btn:hover,
html[data-theme="dark"] body.hp-auth .forgetform button.loginer.hp-auth-secondary-btn:hover{
 background:rgba(63,90,239,.18)!important;color:#fff!important;border-color:#8296ff!important;
}
html[data-theme="dark"] body.hp-auth .loginform button.login.hp-auth-primary-btn,
html[data-theme="dark"] body.hp-auth .forgetform button.resetp.hp-auth-primary-btn{
 background:#3f5aef!important;border-color:#3f5aef!important;color:#fff!important;opacity:1!important;
}
html[data-theme="dark"] body.hp-auth .loginform button.login.hp-auth-primary-btn span,
html[data-theme="dark"] body.hp-auth .loginform button.login.hp-auth-primary-btn i,
html[data-theme="dark"] body.hp-auth .forgetform button.resetp.hp-auth-primary-btn span,
html[data-theme="dark"] body.hp-auth .forgetform button.resetp.hp-auth-primary-btn i{color:#fff!important;opacity:1!important}
html[data-theme="dark"] body.hp-auth .loginform button.login.hp-auth-primary-btn:hover,
html[data-theme="dark"] body.hp-auth .forgetform button.resetp.hp-auth-primary-btn:hover{
 background:#344edb!important;border-color:#344edb!important;
}

/* v135 dark auth: native hp-input controls and saved-browser autofill */
html[data-theme="dark"] body.hp-auth .hp-authcard input.hp-input {
  background-color:var(--hp-surface-2,#1a1534)!important;
  color:var(--hp-text,#f3f4ff)!important;
  border-color:var(--hp-line,rgba(130,144,204,.23))!important;
  -webkit-text-fill-color:var(--hp-text,#f3f4ff)!important;
  caret-color:var(--hp-text,#f3f4ff)!important;
  color-scheme:dark;
}
html[data-theme="dark"] body.hp-auth .hp-authcard input.hp-input:focus {
  border-color:var(--hp-brand,#3f5aef)!important;
  box-shadow:var(--hp-ring,0 0 0 3px rgba(63,90,239,.15))!important;
}
html[data-theme="dark"] body.hp-auth .hp-authcard input.hp-input:-webkit-autofill,
html[data-theme="dark"] body.hp-auth .hp-authcard input.hp-input:-webkit-autofill:hover,
html[data-theme="dark"] body.hp-auth .hp-authcard input.hp-input:-webkit-autofill:focus {
  -webkit-box-shadow:0 0 0 1000px var(--hp-surface-2,#1a1534) inset!important;
  box-shadow:0 0 0 1000px var(--hp-surface-2,#1a1534) inset!important;
  -webkit-text-fill-color:var(--hp-text,#f3f4ff)!important;
  caret-color:var(--hp-text,#f3f4ff)!important;
  transition:background-color 9999s ease-out 0s;
}
html[data-theme="dark"] body.hp-auth .hp-authcard input.hp-input::placeholder {
  color:var(--hp-muted,#a6a2bc)!important;
  -webkit-text-fill-color:var(--hp-muted,#a6a2bc)!important;
}
