/* ES WP Login - Front Login Page - Modern Light Theme */
:root{
	--es-wpl-primary:#6d5efc;
	--es-wpl-primary-dark:#5643f5;
	--es-wpl-link:#6d5efc;
	--es-wpl-accent:#00d4b8;
	--es-wpl-bg:#f4f5fb;
	--es-wpl-card:#ffffff;
	--es-wpl-text:#241f3d;
	--es-wpl-muted:#8b87a6;
	--es-wpl-border:#e7e6f5;
	--es-wpl-danger:#ff5470;
	--es-wpl-success:#12b886;
	--es-wpl-radius:20px;
	--es-wpl-shadow:0 20px 50px -15px rgba(93,71,255,.25);
}

html, body.es-wpl-standalone-body{
	margin:0;
	padding:0;
	background:#f4f5fb;
}
body.es-wpl-standalone-body *{ box-sizing:border-box; }

.es-wpl-wrap{
	font-family:'Vazirmatn', Tahoma, sans-serif;
	min-height:100vh;
	display:flex;
	align-items:center;
	justify-content:center;
	background:linear-gradient(160deg,#f4f5fb 0%,#eef0fc 45%,#e9eefc 100%);
	position:relative;
	overflow:hidden;
	padding:32px 16px;
	box-sizing:border-box;
}

.es-wpl-bg-shape{
	position:absolute;
	border-radius:50%;
	filter:blur(4px);
	opacity:.35;
	z-index:0;
}
.es-wpl-shape-1{
	width:420px;height:420px;
	background:linear-gradient(135deg,var(--es-wpl-primary),var(--es-wpl-accent));
	top:-140px;right:-140px;
}
.es-wpl-shape-2{
	width:320px;height:320px;
	background:linear-gradient(135deg,var(--es-wpl-accent),var(--es-wpl-primary));
	bottom:-120px;left:-120px;
	opacity:.25;
}

.es-wpl-card{
	position:relative;
	z-index:1;
	width:100%;
	max-width:420px;
	background:var(--es-wpl-card);
	border-radius:var(--es-wpl-radius);
	box-shadow:var(--es-wpl-shadow);
	padding:40px 36px 32px;
	box-sizing:border-box;
	border:1px solid var(--es-wpl-border);
}

.es-wpl-brand{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
	gap:10px;
	margin-bottom:22px;
}
.es-wpl-logo{
	max-width:250px;
	max-height:100px;
	object-fit:contain;
}
.es-wpl-brand-name{ font-weight:700; color:var(--es-wpl-text); font-size:16px; }
.es-wpl-brand-name-solo{ font-weight:800; color:var(--es-wpl-text); font-size:19px; }

.es-wpl-title{
	font-size:22px;
	font-weight:800;
	margin:0 0 6px;
	color:var(--es-wpl-text);
	text-align:center;
}
.es-wpl-subtitle{
	font-size:13.5px;
	color:var(--es-wpl-muted);
	margin:0 0 26px;
	line-height:1.9;
	text-align:center;
}

.es-wpl-alert{
	background:#fff1f3;
	border:1px solid #ffd3dc;
	color:var(--es-wpl-danger);
	padding:10px 14px;
	border-radius:12px;
	font-size:13px;
	margin-bottom:16px;
}
.es-wpl-alert.is-success{
	background:#eafff6;
	border-color:#bdf0dc;
	color:var(--es-wpl-success);
}

.es-wpl-steps{ position:relative; }

.es-wpl-step{
	display:none;
	flex-direction:column;
	gap:14px;
	opacity:0;
	transform:translateX(10px);
}
.es-wpl-step.is-active{
	display:flex;
	animation:es-wpl-fade-in .32s ease forwards;
}
@keyframes es-wpl-fade-in{
	from{ opacity:0; transform:translateX(10px); }
	to{ opacity:1; transform:translateX(0); }
}

.es-wpl-form{ flex-direction:column; gap:14px; }

.es-wpl-otp-actions{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	margin-top:2px;
}
.es-wpl-dot-sep{ color:var(--es-wpl-border); font-size:12px; }

.es-wpl-label{ font-size:13px; font-weight:600; color:var(--es-wpl-text); margin-bottom:2px; }

.es-wpl-input-group{
	position:relative;
	display:flex;
	align-items:center;
}
.es-wpl-input-icon{
	position:absolute;
	right:14px;
	color:var(--es-wpl-muted);
	display:flex;
}
.es-wpl-input-group input{
	width:100%;
	box-sizing:border-box;
	padding:14px 44px 14px 16px;
	border-radius:14px;
	border:1.5px solid var(--es-wpl-border);
	background:#fbfbff;
	font-family:inherit;
	font-size:15px;
	color:var(--es-wpl-text);
	direction:ltr;
	text-align:center;
	letter-spacing:1px;
	transition:.2s border-color, .2s box-shadow;
}
.es-wpl-input-group input:focus{
	outline:none;
	border-color:var(--es-wpl-primary);
	box-shadow:0 0 0 4px rgba(109,94,252,.12);
	background:#fff;
}

.es-wpl-otp-hint{
	font-size:13px;
	color:var(--es-wpl-muted);
	text-align:center;
	margin:0 0 4px;
}
.es-wpl-otp-hint strong{ color:var(--es-wpl-text); }
.es-wpl-linklike{
	background:none;border:none;color:var(--es-wpl-link);
	font-size:12.5px;cursor:pointer;padding:0;
	font-family:inherit;font-weight:600;
}
.es-wpl-linklike:disabled{ color:var(--es-wpl-muted); cursor:not-allowed; }
#es-wpl-resend-timer{ color:var(--es-wpl-muted); font-weight:400; }

.es-wpl-otp-inputs{
	display:flex;
	justify-content:center;
	gap:10px;
	margin:6px 0 4px;
}
.es-wpl-otp-box{
	width:48px;
	height:56px;
	text-align:center;
	font-size:22px;
	font-weight:700;
	border-radius:14px;
	border:1.5px solid var(--es-wpl-border);
	background:#fbfbff;
	color:var(--es-wpl-text);
	transition:.2s border-color, .2s box-shadow;
}
.es-wpl-otp-box:focus{
	outline:none;
	border-color:var(--es-wpl-primary);
	box-shadow:0 0 0 4px rgba(109,94,252,.12);
	background:#fff;
}

.es-wpl-btn{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	width:100%;
	padding:14px 18px;
	border-radius:14px;
	border:none;
	font-family:inherit;
	font-size:15px;
	font-weight:700;
	cursor:pointer;
	text-decoration:none;
	box-sizing:border-box;
	transition:.2s transform, .2s box-shadow, .2s opacity;
}
.es-wpl-btn:active{ transform:scale(.98); }
.es-wpl-btn-primary{
	background:linear-gradient(135deg,var(--es-wpl-primary),var(--es-wpl-primary-dark));
	color:#fff;
	box-shadow:0 12px 24px -8px rgba(109,94,252,.55);
}
.es-wpl-btn-primary:hover{ opacity:.94; }
.es-wpl-btn-primary:disabled{ opacity:.6; cursor:not-allowed; box-shadow:none; }
.es-wpl-btn-ghost{
	background:transparent;
	color:var(--es-wpl-muted);
	border:1.5px dashed var(--es-wpl-border);
}
.es-wpl-btn-ghost:disabled{ opacity:.6; cursor:not-allowed; }
.es-wpl-btn-outline{
	background:#fff;
	color:var(--es-wpl-primary);
	border:1.5px solid var(--es-wpl-primary);
}

.es-wpl-spinner{
	width:16px;height:16px;
	border-radius:50%;
	border:2px solid rgba(255,255,255,.5);
	border-top-color:#fff;
	animation:es-wpl-spin .7s linear infinite;
}
@keyframes es-wpl-spin{ to{ transform:rotate(360deg); } }

.es-wpl-captcha{ margin-top:-2px; }
.es-wpl-captcha-math-row{ gap:10px; }
.es-wpl-captcha-math-row .es-wpl-captcha-equation{
	background:#fbfbff;
	border:1.5px solid var(--es-wpl-border);
	border-radius:14px;
	padding:14px 16px;
	font-weight:700;
	font-size:15px;
	color:var(--es-wpl-text);
	white-space:nowrap;
}
.es-wpl-captcha-math-row input{
	text-align:center;
	direction:ltr;
}
.es-wpl-captcha-recaptcha,
.es-wpl-captcha-turnstile{
	display:flex;
	justify-content:center;
}

.es-wpl-footer{
	margin-top:24px;
	text-align:center;
	font-size:11.5px;
	color:var(--es-wpl-muted);
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:12px;
	line-height:1.9;
}
.es-wpl-terms-link{
	color:var(--es-wpl-link);
	text-decoration:underline;
	text-underline-offset:2px;
	font-weight:600;
}
.es-wpl-back-site{
	display:inline-flex;
	align-items:center;
	gap:5px;
	color:var(--es-wpl-link);
	text-decoration:none;
	font-size:12.5px;
	font-weight:700;
}
.es-wpl-back-site svg{ transform:scaleX(-1); }
.es-wpl-back-site:hover{ color:var(--es-wpl-primary-dark); }

.es-wpl-loggedin{ text-align:center; }
.es-wpl-loggedin .es-wpl-link{
	display:block;margin-top:12px;color:var(--es-wpl-danger);font-size:13px;text-decoration:none;
}

.es-wpl-wc-notice{
	background:#fbfbff;
	border:1px solid var(--es-wpl-border);
	border-radius:16px;
	padding:20px;
	text-align:center;
}
.es-wpl-wc-notice .es-wpl-btn{ margin-top:12px; }

@media (max-width:480px){
	.es-wpl-card{ padding:30px 22px 26px; }
	.es-wpl-otp-box{ width:42px; height:50px; font-size:19px; }
}

/* ===========================
   تم تیره صفحه ورود (Dark Mode)
   =========================== */
.es-wpl-wrap.es-wpl-theme-dark{
	--es-wpl-bg:#12131c;
	--es-wpl-card:#1a1c29;
	--es-wpl-text:#f1f1f8;
	--es-wpl-muted:#9296b0;
	--es-wpl-border:#2b2e42;
	--es-wpl-danger:#ff6b85;
	--es-wpl-success:#2fd399;
	--es-wpl-shadow:0 20px 50px -15px rgba(0,0,0,.55);
	background:linear-gradient(160deg,#101119 0%,#14151f 45%,#181a26 100%);
}
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-card{
	background:var(--es-wpl-card);
	border-color:var(--es-wpl-border);
}
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-bg-shape{ opacity:.18; }
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-input-group input,
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-otp-box{
	background:rgba(34,36,56,.4);
	border-color:var(--es-wpl-border);
	color:var(--es-wpl-text);
}
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-input-group input:focus,
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-otp-box:focus{
	background:#242739;
	box-shadow:0 0 0 4px rgba(109,94,252,.18);
}
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-input-group input::placeholder{ color:#5c6080; }
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-btn-ghost{ border-color:var(--es-wpl-border); color:var(--es-wpl-muted); }
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-btn-outline{ background:#1f2130; border-color:var(--es-wpl-primary); }
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-alert{
	background:#3a2230; border-color:#5a2c3c; color:var(--es-wpl-danger);
}
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-alert.is-success{
	background:#173a30; border-color:#1f5744; color:var(--es-wpl-success);
}
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-logo{ filter:brightness(0) invert(1); }
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-brand-name-solo{ color:var(--es-wpl-text); }
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-captcha-equation{
	background:rgba(34,36,56,.4);
	border-color:var(--es-wpl-border);
	color:var(--es-wpl-text);
}
.es-wpl-wrap.es-wpl-theme-dark .es-wpl-wc-notice{
	background:#1f2130; border-color:var(--es-wpl-border);
}
