/* =========================================================
   Iran Network Support Desk Pro — Exact Agent Heart Theme 3.4.4
   Customer login/register uses the exact visual language of agent login.
   ========================================================= */

html:has(.isdp-heart-stage),
body:has(.isdp-heart-stage){
  overflow:hidden!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  background:#020202!important;
}
body:has(.isdp-heart-stage) #wpadminbar,
body:has(.isdp-heart-stage) .site-header,
body:has(.isdp-heart-stage) .site-footer,
body:has(.isdp-heart-stage) .entry-header,
body:has(.isdp-heart-stage) .page-header,
body:has(.isdp-heart-stage) .entry-title,
body:has(.isdp-heart-stage) .page-title,
body:has(.isdp-heart-stage) .breadcrumbs,
body:has(.isdp-heart-stage) .breadcrumb,
body:has(.isdp-heart-stage) nav:not(.isdp-auth-tabs),
body:has(.isdp-heart-stage) aside,
body:has(.isdp-heart-stage) > header,
body:has(.isdp-heart-stage) > footer{display:none!important}
body:has(.isdp-heart-stage) #page,
body:has(.isdp-heart-stage) #content,
body:has(.isdp-heart-stage) .site,
body:has(.isdp-heart-stage) .site-content,
body:has(.isdp-heart-stage) .content-area,
body:has(.isdp-heart-stage) main,
body:has(.isdp-heart-stage) article,
body:has(.isdp-heart-stage) .entry-content{
  width:100%!important;
  max-width:none!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

.isdp-heart-stage{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  isolation:isolate;
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  min-height:520px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:max(14px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));
  color:#fff;
  background:
    radial-gradient(circle at 50% 46%,rgba(109,24,10,.24),transparent 29%),
    radial-gradient(circle at 18% 18%,rgba(89,24,8,.16),transparent 24%),
    linear-gradient(180deg,#020202 0%,#080200 52%,#160600 100%)!important;
}
.isdp-heart-stage::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  background:
    radial-gradient(circle at 50% 50%,rgba(255,84,12,.08),transparent 32%),
    linear-gradient(115deg,transparent 0 46%,rgba(255,112,27,.03) 46% 46.3%,transparent 46.3% 100%);
  animation:isdp-customer-heart-ambient 7s ease-in-out infinite alternate;
}
.isdp-heart-canvas{
  position:absolute;
  inset:0;
  z-index:-1;
  width:100%;
  height:100%;
  display:block;
  pointer-events:none;
}
.isdp-heart-glow{
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(255,93,17,.12),transparent 45%);
  mix-blend-mode:screen;
}

.isdp-heart-card-wrap{
  position:relative;
  z-index:2;
  width:min(390px,calc(100vw - 34px));
  max-height:min(640px,calc(100dvh - 56px));
  overflow:auto;
  scrollbar-width:none;
  opacity:1;
  transform:none;
}
.isdp-heart-card-wrap::-webkit-scrollbar{display:none}
.isdp-heart-js .isdp-heart-stage .isdp-heart-card-wrap{
  opacity:0;
  transform:translateY(18px) scale(.88);
  pointer-events:none;
  transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .78s cubic-bezier(.2,.9,.2,1);
}
.isdp-heart-js .isdp-heart-stage.isdp-heart-ready .isdp-heart-card-wrap{
  opacity:1;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}

.isdp-heart-stage .isdp-auth-card{
  width:100%;
  margin:0!important;
  padding:clamp(20px,3vh,30px) clamp(18px,3vw,28px)!important;
  border-radius:30px!important;
  background:linear-gradient(145deg,rgba(14,12,20,.78),rgba(24,12,12,.68))!important;
  border:1px solid rgba(255,143,76,.38)!important;
  box-shadow:0 28px 85px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.08)!important;
  backdrop-filter:blur(18px) saturate(125%);
  -webkit-backdrop-filter:blur(18px) saturate(125%);
  color:#fff!important;
}
.isdp-heart-stage .isdp-auth-brand{text-align:center;margin-bottom:16px}
.isdp-heart-stage .isdp-eyebrow{
  display:block;
  width:max-content;
  max-width:100%;
  margin:0 auto;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(255,113,37,.12)!important;
  border:1px solid rgba(255,132,61,.2)!important;
  color:#ff9a58!important;
  font-size:10.5px;
  font-weight:900;
  letter-spacing:.14em;
  white-space:nowrap;
}
.isdp-heart-stage .isdp-auth-brand h2{
  margin:14px 0 10px!important;
  color:#fff!important;
  text-align:center;
  font-size:clamp(25px,4.2vw,34px)!important;
  line-height:1.25;
  font-weight:900;
  text-shadow:0 4px 18px rgba(0,0,0,.36);
}
.isdp-heart-stage .isdp-auth-brand p{
  margin:0;
  color:#d8c8c0!important;
  font-size:13px;
  line-height:1.85;
}

.isdp-heart-stage .isdp-auth-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
  margin:0 0 14px;
  padding:5px;
  border-radius:15px;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.11)!important;
}
.isdp-heart-stage .isdp-auth-tabs button{
  border:0;
  border-radius:11px;
  padding:11px 12px;
  background:transparent;
  color:#d8cbc5;
  font:inherit;
  font-size:13.5px;
  font-weight:800;
  cursor:pointer;
}
.isdp-heart-stage .isdp-auth-tabs button.active{
  color:#1d0700!important;
  background:linear-gradient(90deg,#ff4d16,#ff8c25 55%,#ffc04d)!important;
  box-shadow:0 10px 24px rgba(255,91,18,.24)!important;
}
.isdp-heart-stage .isdp-auth-panel{display:none}
.isdp-heart-stage .isdp-auth-panel.active{display:block;animation:isdp-customer-auth-rise .35s ease both}

.isdp-heart-stage .isdp-public-form,
.isdp-heart-stage .isdp-auth-form{display:grid;gap:clamp(10px,1.7vh,14px)!important;margin-top:10px!important}
.isdp-heart-stage .isdp-public-form label,
.isdp-heart-stage .isdp-auth-form label{
  display:grid;
  gap:7px;
  margin:0!important;
  color:#e7d9d2!important;
  font-size:12.5px!important;
  font-weight:700!important;
}
.isdp-heart-stage .isdp-public-form input:not([type=checkbox]):not([type=radio]),
.isdp-heart-stage .isdp-auth-form input:not([type=checkbox]):not([type=radio]),
.isdp-heart-stage .isdp-public-form select,
.isdp-heart-stage .isdp-auth-form select,
.isdp-heart-stage .isdp-public-form textarea,
.isdp-heart-stage .isdp-auth-form textarea{
  width:100%;
  min-height:clamp(46px,6.3vh,54px)!important;
  border-radius:15px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(255,255,255,.075)!important;
  color:#fff!important;
  padding:12px 14px!important;
  font:inherit;
  font-size:14px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 30px rgba(0,0,0,.12)!important;
}
.isdp-heart-stage input::placeholder{color:rgba(255,238,229,.35)!important}
.isdp-heart-stage input:focus,
.isdp-heart-stage select:focus,
.isdp-heart-stage textarea:focus{
  outline:none!important;
  border-color:rgba(255,135,63,.76)!important;
  box-shadow:0 0 0 4px rgba(255,102,24,.14),0 12px 30px rgba(0,0,0,.18)!important;
}
.isdp-heart-stage .isdp-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.isdp-heart-stage .isdp-checkbox{
  display:flex!important;
  align-items:center!important;
  grid-template-columns:auto 1fr!important;
  gap:9px!important;
  color:#decfc8!important;
}
.isdp-heart-stage .isdp-checkbox input{
  width:18px!important;
  height:18px!important;
  margin:0!important;
  accent-color:#ff6c22!important;
}

.isdp-heart-stage .isdp-primary,
.isdp-heart-stage button.isdp-primary{
  width:100%;
  min-height:clamp(50px,6.7vh,58px)!important;
  border:0!important;
  border-radius:17px!important;
  background:linear-gradient(90deg,#ff4d16,#ff8c25 55%,#ffc04d)!important;
  color:#1d0700!important;
  box-shadow:0 15px 38px rgba(255,91,18,.28)!important;
  font-size:clamp(15px,2vw,17px)!important;
  font-weight:900!important;
  cursor:pointer;
}
.isdp-heart-stage .isdp-primary:hover{transform:translateY(-1px);filter:brightness(1.06)}
.isdp-heart-stage .isdp-secondary,
.isdp-heart-stage button.isdp-secondary{
  width:100%;
  min-height:46px;
  border-radius:15px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(255,255,255,.075)!important;
  color:#ffb17b!important;
  font-weight:800!important;
}
.isdp-heart-stage .isdp-auth-back,
.isdp-heart-stage .isdp-auth-resend-button{color:#ffac72!important;text-align:center;text-decoration:none!important}
.isdp-heart-stage .isdp-form-help{color:#eadbd3!important;font-size:12px!important;line-height:1.8}
.isdp-heart-stage .isdp-auth-divider{display:flex;align-items:center;gap:10px;color:#bdaaa0;font-size:11.5px;margin:14px 0}
.isdp-heart-stage .isdp-auth-divider::before,.isdp-heart-stage .isdp-auth-divider::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.12)}
.isdp-heart-stage .isdp-alert{margin:0 0 12px!important;background:rgba(14,10,15,.55)!important;color:#fff!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:14px!important;padding:11px 13px!important;text-align:center}
.isdp-heart-stage .isdp-alert.success{color:#a8ffd9!important;border-color:rgba(64,255,171,.32)!important}
.isdp-heart-stage .isdp-alert.error{color:#ffc0c9!important;border-color:rgba(255,99,120,.38)!important}
.isdp-heart-stage input[name=otp_code]{font-size:28px!important;letter-spacing:10px!important;text-align:center!important;direction:ltr!important}
.isdp-heart-stage .isdp-auth-actions{display:grid;gap:12px;margin-top:16px}

.isdp-heart-secure{
  position:absolute;
  inset:auto 0 max(8px,env(safe-area-inset-bottom)) 0;
  z-index:3;
  text-align:center;
  color:rgba(255,226,206,.66)!important;
  font-size:11px!important;
  pointer-events:none;
}
.isdp-heart-secure::before{content:"◈";color:#ff9a58;margin-inline-end:7px}
.isdp-auth-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

@keyframes isdp-customer-heart-ambient{from{opacity:.72;transform:scale(1)}to{opacity:1;transform:scale(1.045)}}
@keyframes isdp-customer-auth-rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}

@media(max-height:740px){
  .isdp-heart-card-wrap{max-height:calc(100dvh - 34px)}
  .isdp-heart-stage .isdp-auth-card{padding:18px 20px!important;border-radius:24px!important}
  .isdp-heart-stage .isdp-auth-brand h2{margin:9px 0 8px!important;font-size:24px!important}
  .isdp-heart-stage .isdp-auth-brand p{display:none}
  .isdp-heart-stage .isdp-public-form,.isdp-heart-stage .isdp-auth-form{gap:9px!important}
  .isdp-heart-stage .isdp-eyebrow{font-size:9px!important;padding:5px 10px!important}
  .isdp-heart-secure{display:none}
}
@media(max-height:600px){
  .isdp-heart-card-wrap{width:min(430px,calc(100vw - 20px))}
  .isdp-heart-stage .isdp-auth-card{padding:12px 17px!important}
  .isdp-heart-stage .isdp-auth-brand h2{font-size:21px!important;margin:5px 0 7px!important}
  .isdp-heart-stage input,.isdp-heart-stage select{min-height:42px!important}
  .isdp-heart-stage .isdp-primary{min-height:44px!important}
}
@media(max-width:520px){
  .isdp-heart-card-wrap{width:calc(100vw - 24px)}
  .isdp-heart-stage .isdp-auth-card{border-radius:25px!important}
  .isdp-heart-stage .isdp-fields{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .isdp-heart-stage::before{animation:none}
  .isdp-heart-js .isdp-heart-stage .isdp-heart-card-wrap{transition:none}
}
