/*
 * DSA Header — «تابلوی سنجش»
 * هدر شیشه‌ای شرکت دیدبان سنجش امیرکبیر. RTL. دسکتاپ ≥1200px، دراور زیر آن.
 *
 * ایدهٔ بصری: هدر مثل یک تابلوی ابزار (Instrument Panel) به بالای صفحه نصب شده است.
 * به‌جای قرصِ هاورِ معمول، یک «عقربه» زیر آیتم فعال می‌ایستد — همان عقربهٔ
 * داخل لوگو — و یک خط نور دور تا دور قاب شیشه‌ای می‌چرخد.
 */

.dsa,
.dsa-drawer,
.dsa-dock {
	/* رنگ‌ها از خود لوگو نمونه‌برداری شده‌اند (نارنجی بالا-راست ← سبز پایین-چپ). */
	--dsa-o: #f2952f;
	--dsa-o2: #e2562b;
	--dsa-g: #5c9146;
	--dsa-g2: #3e7434;

	/* نارنجی روی سفید ۲٫۲:۱ است؛ برای متن هرگز خودِ رنگ برند را به کار نبر. */
	--dsa-o-ink: color-mix(in srgb, var(--dsa-o2) 88%, #000);
	--dsa-g-ink: color-mix(in srgb, var(--dsa-g2) 92%, #000);

	/* دوتُن برند: فقط برای خط‌های نازک، نور چرخان و متنِ گرادیانی. */
	--dsa-grad: linear-gradient(115deg, var(--dsa-o2) 0%, var(--dsa-o) 38%, var(--dsa-g) 82%, var(--dsa-g2) 100%);
	/*
	 * سطح‌های تو‌پر (دکمه، چیپ آیکون) گرادیان گرم می‌گیرند: مسیر نارنجی→سبز روی یک دکمهٔ
	 * کوچک از قهوه‌ایِ گِلی رد می‌شود و انتهای سبز تیره‌اش مثل سایهٔ سیاه دیده می‌شود.
	 */
	--dsa-grad-btn: linear-gradient(115deg, var(--dsa-o2) 0%, var(--dsa-o) 62%, color-mix(in srgb, var(--dsa-o) 80%, #fff) 100%);
	--dsa-grad-soft: linear-gradient(115deg, color-mix(in srgb, var(--dsa-o) 16%, #fff), color-mix(in srgb, var(--dsa-g) 16%, #fff));

	--dsa-ink: #152018;
	--dsa-ink-2: #3c4a40;
	--dsa-muted: #6b7a6e;
	--dsa-line: #e4eae3;

	--dsa-h: 80px;
	--dsa-rail-h: 40px;
	/* فاصلهٔ نوار بالایی از لبهٔ صفحه — تا مثل خود شیشه شناور بنشیند. */
	--dsa-rail-gap: 10px;
	--dsa-max: 100%;
	--dsa-ease: cubic-bezier(.22, .8, .24, 1);

	font-family: "YekanBakh", Vazirmatn, Tahoma, system-ui, sans-serif;
	direction: rtl;
	text-align: right;
	color: var(--dsa-ink);
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}

.dsa *, .dsa *::before, .dsa *::after,
.dsa-drawer *, .dsa-drawer *::before, .dsa-drawer *::after,
.dsa-dock *, .dsa-dock *::before, .dsa-dock *::after { box-sizing: border-box; }
.dsa ul, .dsa-drawer ul, .dsa-dock ul { list-style: none; margin: 0; padding: 0; }
.dsa a, .dsa-drawer a, .dsa-dock a { text-decoration: none; color: inherit; }
/* هر جا عنوان و زیرعنوان کنار هم می‌آیند، باید زیر هم بنشینند. */
.dsa .dsa-text, .dsa-drawer .dsa-text { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.dsa svg, .dsa-drawer svg, .dsa-dock svg { display: block; flex-shrink: 0; }
.dsa p, .dsa-drawer p { margin: 0; }

/*
 * خنثی‌سازی استایل دکمه‌های قالب/المنتور. فقط حالت پایه — اگر hover هم اینجا ریست شود،
 * این سلکتور از قواعد پایهٔ خود کامپوننت‌ها قوی‌تر می‌شود و دکمه موقع هاور می‌پرد.
 */
body :is(.dsa, .dsa-drawer, .dsa-dock) button.dsa-b {
	-webkit-appearance: none;
	appearance: none;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: inherit;
	font: inherit;
	letter-spacing: normal;
	text-transform: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}

:is(.dsa, .dsa-drawer, .dsa-dock) a:focus-visible,
body :is(.dsa, .dsa-drawer, .dsa-dock) button.dsa-b:focus-visible {
	outline: 2px solid var(--dsa-g-ink);
	outline-offset: 3px;
	border-radius: 8px;
}

.dsa-sr {
	position: absolute !important;
	width: 1px; height: 1px;
	margin: -1px; padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

/* ============================================================ پوسته */

.dsa {
	position: relative;
	z-index: 990;
	/* ۲۴ پیکسل اضافه = فضای شناور بودن صفحهٔ شیشه‌ای زیر نوار بالایی. */
	height: calc(var(--dsa-h) + var(--dsa-rail-h) + var(--dsa-rail-gap) + 24px);
}

.dsa-top {
	position: absolute;
	top: 0; right: 0; left: 0;
	transition: box-shadow .35s ease;
}

.dsa.is-stuck .dsa-top {
	position: fixed;
	top: var(--wp-admin--admin-bar--height, 0px);
	box-shadow: 0 18px 44px -26px rgba(21, 32, 24, .55);
}

/* ============================================================ نوار بالایی */

.dsa-rail {
	position: relative;
	z-index: 1;
	height: var(--dsa-rail-h);
	margin-top: var(--dsa-rail-gap);
	overflow: hidden;
	/* گوشه‌ها هم‌خانوادهٔ قاب شیشه‌ای (۲۲px روی ۸۰px) تا نوار مستطیل خام دیده نشود. */
	border-radius: 14px;
	background: linear-gradient(100deg,
		color-mix(in srgb, var(--dsa-o) 12%, #fff),
		color-mix(in srgb, var(--dsa-g) 12%, #fff));
	color: var(--dsa-ink-2);
	font-size: 12.5px;
	box-shadow: 0 8px 22px -18px rgba(21, 32, 24, .55);
	transition: height .4s var(--dsa-ease), margin-top .4s var(--dsa-ease), opacity .3s ease;
}

/* قاب نازک گرادیانی برند دور نوار بالایی (خط صاف کف با گوشهٔ گرد جور نبود). */
.dsa-rail::after {
	content: "";
	position: absolute;
	inset: 0;
	padding: 1px;
	border-radius: inherit;
	background: var(--dsa-grad);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
	opacity: .35;
	pointer-events: none;
}

/* در حالت چسبیده، نوار بالایی جمع می‌شود تا هدر سبک‌تر شود. */
.dsa.is-stuck .dsa-rail { height: 0; margin-top: 0; opacity: 0; }

.dsa-rail-in {
	display: flex;
	align-items: center;
	gap: 18px;
	max-width: var(--dsa-max);
	height: var(--dsa-rail-h);
	margin: 0 auto;
	padding: 0 18px;
}

.dsa-rail-info { display: flex; align-items: center; min-width: 0; }
.dsa-rail-info li { display: flex; align-items: center; }
.dsa-rail-info li + li::before {
	content: "";
	width: 1px; height: 14px;
	margin: 0 12px;
	background: color-mix(in srgb, var(--dsa-ink) 14%, transparent);
}

.dsa-rail-item {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	white-space: nowrap;
	transition: color .2s ease;
}
.dsa-rail-item svg { width: 15px; height: 15px; color: var(--dsa-g-ink); opacity: .75; transition: color .2s ease, opacity .2s ease; }
a.dsa-rail-item:hover { color: var(--dsa-o-ink); }
a.dsa-rail-item:hover svg { opacity: 1; color: var(--dsa-o-ink); }
.dsa-rail-item b { font-weight: 600; letter-spacing: .2px; }

.dsa-rail-trust {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-inline-start: auto;
	padding: 4px 12px;
	border: 1px solid color-mix(in srgb, var(--dsa-g) 25%, transparent);
	border-radius: 999px;
	background: rgba(255, 255, 255, .78);
	font-size: 12px;
	font-weight: 700;
	color: var(--dsa-ink);
	white-space: nowrap;
}
.dsa-rail-trust svg { width: 15px; height: 15px; color: var(--dsa-o-ink); }
.dsa-rail-trust span { color: var(--dsa-muted); font-weight: 500; }

.dsa-rail-social { display: flex; align-items: center; gap: 2px; }
.dsa-rail-social a {
	display: grid;
	place-items: center;
	width: 28px; height: 28px;
	border-radius: 9px;
	color: var(--dsa-muted);
	transition: background .2s ease, color .2s ease, transform .2s var(--dsa-ease);
}
.dsa-rail-social a:hover {
	background: rgba(255, 255, 255, .85);
	color: var(--dsa-g-ink);
	transform: translateY(-2px);
}
.dsa-rail-social svg { width: 16px; height: 16px; }

/* ============================================================ نوار اصلی (شیشه) */

/* پوستهٔ بیرونی فقط فاصله می‌دهد؛ خود شیشه روی .dsa-shell است. */
.dsa-bar { position: relative; z-index: 0; padding: 12px 0; }
.dsa.is-stuck .dsa-bar { padding-top: 8px; }

/*
 * شیشه روی ::before سوار است نه خود عنصر: هر عنصری که backdrop-filter بگیرد
 * «ریشهٔ backdrop» می‌شود و بلورِ کارت‌های مگامنوی داخلش از کار می‌افتد.
 * به همین دلیل روی والدهای .dsa-card هرگز filter / opacity<1 / transform دائمی نگذار.
 */
.dsa-shell {
	position: relative;
	z-index: 0;
	display: flex;
	align-items: center;
	gap: 16px;
	max-width: var(--dsa-max);
	height: var(--dsa-h);
	margin: 0 auto;
	padding: 0 22px;
	border-radius: 22px;
	transition: height .35s var(--dsa-ease);
	animation: dsa-in .7s var(--dsa-ease) backwards;
}

.dsa-shell::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .58));
	-webkit-backdrop-filter: blur(24px) saturate(180%);
	backdrop-filter: blur(24px) saturate(180%);
	border: 1px solid rgba(255, 255, 255, .78);
	box-shadow:
		0 0 0 1px rgba(21, 32, 24, .05),
		inset 0 1px 0 rgba(255, 255, 255, .95),
		0 14px 44px -20px rgba(21, 32, 24, .3);
	transition: background .35s ease, box-shadow .35s ease;
}

/*
 * خط نوری که دور تا دور قاب می‌چرخد. یک گرادیان مخروطی که با ماسک به قابی ۱٫۵ پیکسلی
 * تبدیل شده (padding-box از border-box بریده می‌شود)؛ --dsa-orbit آن را می‌چرخاند.
 * مرورگرهای بدون @property یک حلقهٔ ثابت و کم‌رنگ نشان می‌دهند.
 */
@property --dsa-orbit {
	syntax: "<angle>";
	inherits: false;
	initial-value: 0deg;
}
.dsa-shell::after {
	content: "";
	position: absolute;
	inset: 0;
	padding: 1.5px;
	border-radius: inherit;
	background: conic-gradient(
		from var(--dsa-orbit),
		transparent 0deg,
		transparent 232deg,
		color-mix(in srgb, var(--dsa-g) 35%, transparent) 276deg,
		var(--dsa-g) 308deg,
		var(--dsa-o) 334deg,
		var(--dsa-o2) 350deg,
		transparent 360deg
	);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
	filter: drop-shadow(0 0 3px color-mix(in srgb, var(--dsa-o) 55%, transparent));
	pointer-events: none;
	animation: dsa-orbit 7s linear infinite;
}
@keyframes dsa-orbit {
	to { --dsa-orbit: 360deg; }
}

.dsa.is-stuck .dsa-shell { height: calc(var(--dsa-h) - 10px); }
.dsa.is-stuck .dsa-shell::before {
	background: linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .68));
	box-shadow:
		0 0 0 1px rgba(21, 32, 24, .06),
		inset 0 1px 0 rgba(255, 255, 255, .95),
		0 22px 52px -22px rgba(21, 32, 24, .4);
}

@keyframes dsa-in {
	from { opacity: 0; transform: translateY(-14px); }
}
@keyframes dsa-up {
	from { opacity: 0; transform: translateY(8px); }
}

/* ---------- عقربه ---------- */

/*
 * تنها نشانگر زیر هدر: عقربه‌ای که با جاوااسکریپت زیر آیتم هاورشده می‌ایستد.
 * نوار درجه‌بندی و خط نور عبوری حذف شدند — کنار خط نور چرخانِ قاب، شلوغ می‌شدند.
 */
.dsa-gauge {
	position: absolute;
	right: 0; bottom: 0; left: 0;
	height: 10px;
	pointer-events: none;
}

.dsa-needle {
	position: absolute;
	right: 0; bottom: 0;
	width: 0;
	height: 100%;
	opacity: 0;
	transform: translateX(50%);
	transition: transform .42s var(--dsa-ease), width .42s var(--dsa-ease), opacity .22s ease;
}
.dsa-needle.is-on { opacity: 1; }
.dsa-needle.is-snap { transition: opacity .22s ease; }

/* بدنهٔ عقربه: تیغهٔ باریک گرادیانی با هالهٔ نرم و یک نگین سفید */
.dsa-needle::before {
	content: "";
	position: absolute;
	right: 50%; bottom: 0;
	width: 38px;
	height: 3px;
	border-radius: 3px 3px 0 0;
	background: var(--dsa-grad);
	transform: translateX(50%);
	box-shadow: 0 -2px 14px color-mix(in srgb, var(--dsa-o) 55%, transparent);
}
.dsa-needle::after {
	content: "";
	position: absolute;
	right: 50%; bottom: 4px;
	width: 7px; height: 7px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--dsa-o2);
	transform: translateX(50%);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--dsa-o) 22%, transparent);
}

@media (prefers-reduced-motion: reduce) {
	.dsa-shell::after { animation: none; }
	.dsa-shell,
	.dsa-nav .dsa-item--d0 { animation: none !important; }
}

/* ============================================================ لوگو */

.dsa-brand {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	flex-shrink: 0;
	min-width: 0;
}

.dsa-brand-mark {
	position: relative;
	display: grid;
	place-items: center;
	width: 52px; height: 52px;
	flex-shrink: 0;
	transition: transform .45s var(--dsa-ease);
}
.dsa-brand:hover .dsa-brand-mark { transform: rotate(-14deg) scale(1.05); }

/*
 * اندازهٔ لوگو اجباری است: المنتور «.elementor img{height:auto}» را با همین وزن و دیرتر لود می‌کند
 * و بدون !important لوگو با ابعاد فایل رندر می‌شود.
 */
body :is(.dsa, .dsa-drawer) .dsa-brand-mark img {
	position: relative;
	z-index: 1;
	display: block;
	width: auto !important;
	height: 46px !important;
	max-width: 56px !important;
	max-height: none !important;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	object-fit: contain;
}

/* هالهٔ نرمِ برند پشت لوگو که آرام نفس می‌کشد. */
.dsa-brand-mark::before {
	content: "";
	position: absolute;
	inset: -6px;
	border-radius: 50%;
	background: radial-gradient(closest-side, color-mix(in srgb, var(--dsa-o) 28%, transparent), transparent 72%);
	animation: dsa-breathe 3.6s ease-in-out infinite alternate;
}
@keyframes dsa-breathe {
	from { opacity: .45; transform: scale(.88); }
	to   { opacity: 1; transform: scale(1.06); }
}
@media (prefers-reduced-motion: reduce) {
	.dsa-brand-mark::before { animation: none; opacity: .7; }
}

.dsa-brand-text { display: flex; flex-direction: column; min-width: 0; gap: 4px; line-height: 1.45; }

.dsa-brand-fa {
	font-size: 17px;
	font-weight: 800;
	letter-spacing: -.2px;
	color: var(--dsa-ink);
	white-space: nowrap;
}
.dsa-brand-en {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .7px;
	color: var(--dsa-muted);
	white-space: nowrap;
	text-transform: uppercase;
}
.dsa-brand-en::before {
	content: "";
	width: 16px; height: 2px;
	border-radius: 2px;
	background: var(--dsa-grad);
}

.dsa-brand-word {
	font-size: 20px;
	font-weight: 800;
	background: var(--dsa-grad);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.dsa-sep { flex-shrink: 0; width: 1px; height: 34px; background: var(--dsa-line); }

.dsa-empty {
	padding: 6px 10px;
	border: 1px dashed #d97706;
	border-radius: 10px;
	font-size: 13px;
	color: #b45309;
}

/* ============================================================ ناوبری دسکتاپ */

.dsa-nav { display: flex; align-self: stretch; flex: 1 1 auto; min-width: 0; }
.dsa-nav > .dsa-menu { display: flex; align-items: stretch; gap: 2px; }
.dsa-nav > .dsa-empty { align-self: center; }

.dsa-nav .dsa-item--d0 {
	position: relative;
	display: flex;
	align-items: center;
	animation: dsa-up .55s var(--dsa-ease) backwards;
}
.dsa-nav .dsa-item--d0:nth-child(1) { animation-delay: .12s; }
.dsa-nav .dsa-item--d0:nth-child(2) { animation-delay: .17s; }
.dsa-nav .dsa-item--d0:nth-child(3) { animation-delay: .22s; }
.dsa-nav .dsa-item--d0:nth-child(4) { animation-delay: .27s; }
.dsa-nav .dsa-item--d0:nth-child(5) { animation-delay: .32s; }
.dsa-nav .dsa-item--d0:nth-child(6) { animation-delay: .37s; }
.dsa-nav .dsa-item--d0:nth-child(n+7) { animation-delay: .42s; }

/* مگامنو نسبت به کل هدر پهن می‌شود، پس آیتمش نباید مرجع موقعیت باشد. */
.dsa-nav .dsa-item--d0.dsa-has-mega { position: static; }

.dsa-nav .dsa-item--d0 > .dsa-row { position: relative; display: flex; align-items: center; }

.dsa .dsa-nav .dsa-item--d0 > .dsa-row > .dsa-link {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 13px;
	border-radius: 11px;
	font-size: 15px;
	font-weight: 600;
	color: var(--dsa-ink-2);
	white-space: nowrap;
	transition: color .22s ease, background .22s ease;
}
.dsa .dsa-nav .dsa-has-sub > .dsa-row > .dsa-link { padding-left: 4px; }
.dsa-nav .dsa-item--d0 > .dsa-row .dsa-ico,
.dsa-nav .dsa-item--d0 > .dsa-row .dsa-subtitle,
.dsa-nav .dsa-item--d0 > .dsa-row .dsa-desc { display: none; }

.dsa .dsa-nav .dsa-item--d0:hover > .dsa-row > .dsa-link,
.dsa .dsa-nav .dsa-item--d0.is-open > .dsa-row > .dsa-link,
.dsa .dsa-nav .dsa-item--d0.dsa-current > .dsa-row > .dsa-link {
	color: var(--dsa-g-ink);
	background: color-mix(in srgb, var(--dsa-g) 8%, transparent);
}

body .dsa .dsa-nav button.dsa-toggle,
body .dsa .dsa-nav button.dsa-toggle:focus {
	display: grid;
	place-items: center;
	width: 26px; height: 36px;
	padding-left: 6px;
	border-radius: 10px;
	color: var(--dsa-muted);
}
body .dsa .dsa-nav button.dsa-toggle:hover,
body .dsa .dsa-nav .is-open > .dsa-row > button.dsa-toggle { color: var(--dsa-g-ink); }
.dsa-toggle svg { width: 15px; height: 15px; transition: transform .3s var(--dsa-ease); }
.dsa-nav .is-open > .dsa-row > .dsa-toggle svg,
.dsa-mnav .is-open > .dsa-row > .dsa-toggle svg { transform: rotate(180deg); }

.dsa .dsa-badge,
.dsa-drawer .dsa-badge {
	display: inline-block;
	margin-right: 6px;
	padding: 0 7px;
	border-radius: 999px;
	background: var(--dsa-grad);
	color: #fff;
	font-size: 10.5px;
	font-weight: 700;
	line-height: 18px;
	vertical-align: 2px;
	white-space: nowrap;
}

/* ============================================================ پنل‌های دسکتاپ */

.dsa-nav .dsa-panel {
	position: absolute;
	top: 100%;
	z-index: 20;
	padding-top: 12px;
	opacity: 0;
	visibility: hidden;
	transition: opacity .18s ease, visibility 0s linear .3s;
}
.dsa-nav .is-open > .dsa-panel,
.dsa:not(.dsa-js) .dsa-nav .dsa-item--d0:hover > .dsa-panel,
.dsa:not(.dsa-js) .dsa-nav .dsa-item--d0:focus-within > .dsa-panel {
	opacity: 1;
	visibility: visible;
	transition: opacity .24s ease, visibility 0s;
}

.dsa-nav .dsa-panel--drop { right: 0; width: 320px; }
/* مگامنو به لبه‌های خودِ صفحهٔ شیشه‌ای می‌چسبد (نه به آیتم منو). */
.dsa-nav .dsa-panel--mega { right: 0; left: 0; }

/* کارت شیشه‌ای که با فنر باز می‌شود و نورِ دنبال‌کنندهٔ نشانگر دارد. */
.dsa-card {
	--mx: -999px;
	--my: -999px;
	position: relative;
	overflow: hidden;
	padding: 14px;
	background:
		radial-gradient(460px circle at var(--mx) var(--my), color-mix(in srgb, var(--dsa-o) 12%, transparent), transparent 62%),
		linear-gradient(165deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .78));
	-webkit-backdrop-filter: blur(26px) saturate(180%);
	backdrop-filter: blur(26px) saturate(180%);
	border: 1px solid rgba(255, 255, 255, .85);
	border-radius: 22px;
	box-shadow:
		0 0 0 1px rgba(21, 32, 24, .06),
		inset 0 1px 0 #fff,
		0 34px 70px -28px rgba(21, 32, 24, .34);
	transform-origin: top center;
	animation: dsa-card-in .34s var(--dsa-ease);
}

/* نوار گرادیانی بالای کارت — امضای برند */
.dsa-card::before {
	content: "";
	position: absolute;
	top: 0; right: 0; left: 0;
	height: 3px;
	background: var(--dsa-grad);
	opacity: .9;
}

@keyframes dsa-card-in {
	from { opacity: 0; transform: translateY(-10px) scale(.985); }
}
@media (prefers-reduced-motion: reduce) {
	.dsa-card { animation: none; }
}

/* ---------- کشوی ساده ---------- */

.dsa-nav .dsa-panel--drop .dsa-sub--d1 { display: flex; flex-direction: column; gap: 2px; }

.dsa .dsa-nav .dsa-panel--drop .dsa-link {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 11px;
	border-radius: 13px;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--dsa-ink-2);
	transition: background .2s ease, color .2s ease, transform .25s var(--dsa-ease);
}
.dsa .dsa-nav .dsa-panel--drop .dsa-link:hover {
	background: var(--dsa-grad-soft);
	color: var(--dsa-ink);
	transform: translateX(-4px);
}
/* آیکون کشوی ساده همان چیپ کاشی‌های مگامنو است، فقط کمی کوچک‌تر. */
.dsa-nav .dsa-panel--drop .dsa-ico {
	width: 34px;
	height: 34px;
	border-radius: 11px;
	background: var(--dsa-grad-soft);
	color: var(--dsa-g-ink);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .8);
}
.dsa-nav .dsa-panel--drop .dsa-ico svg { width: 18px; height: 18px; }

/* ---------- مگامنو ---------- */

.dsa-nav .dsa-panel--mega .dsa-sub--d1 {
	display: grid;
	grid-template-columns: repeat(var(--dsa-cols, 3), minmax(0, 1fr));
	gap: 8px;
}
.dsa-nav .dsa-panel--mega.dsa-panel--promo .dsa-sub--d1 {
	grid-template-columns: repeat(var(--dsa-cols, 3), minmax(0, 1fr)) minmax(0, .92fr);
}

/* سرستون هر ستون مگامنو */
.dsa-nav .dsa-panel--mega .dsa-item--d1 > .dsa-row { margin-bottom: 4px; }
.dsa .dsa-nav .dsa-panel--mega .dsa-item--d1 > .dsa-row > .dsa-link {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 8px 10px;
	border-radius: 12px;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .2px;
	color: var(--dsa-muted);
	text-transform: none;
}
.dsa .dsa-nav .dsa-panel--mega .dsa-item--d1 > .dsa-row > .dsa-link:hover { color: var(--dsa-g-ink); }
.dsa-nav .dsa-panel--mega .dsa-item--d1 > .dsa-row > .dsa-link .dsa-ico {
	display: grid;
	place-items: center;
	width: 22px; height: 22px;
	border-radius: 7px;
	background: var(--dsa-grad-soft);
	color: var(--dsa-g-ink);
}
.dsa-nav .dsa-panel--mega .dsa-item--d1 > .dsa-row > .dsa-link .dsa-ico svg { width: 13px; height: 13px; }

/* کاشی‌های سرویس داخل ستون‌ها */
.dsa-nav .dsa-panel--mega .dsa-sub--d2 { display: flex; flex-direction: column; gap: 2px; }

.dsa .dsa-nav .dsa-panel--mega .dsa-item--d2 .dsa-link {
	position: relative;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 9px 10px;
	border-radius: 14px;
	color: var(--dsa-ink-2);
	transition: background .22s ease, transform .3s var(--dsa-ease);
}
.dsa .dsa-nav .dsa-panel--mega .dsa-item--d2 .dsa-link:hover {
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 10px 26px -16px rgba(21, 32, 24, .45);
	transform: translateX(-4px);
}

.dsa-nav .dsa-panel--mega .dsa-item--d2 .dsa-ico {
	display: grid;
	place-items: center;
	width: 38px; height: 38px;
	flex-shrink: 0;
	border-radius: 12px;
	background: var(--dsa-grad-soft);
	color: var(--dsa-g-ink);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .8);
	transition: background .28s ease, color .28s ease, transform .35s var(--dsa-ease);
}
.dsa-nav .dsa-panel--mega .dsa-item--d2 .dsa-ico svg { width: 19px; height: 19px; }
.dsa .dsa-nav .dsa-panel--mega .dsa-item--d2 .dsa-link:hover .dsa-ico {
	background: var(--dsa-grad);
	color: #fff;
	transform: rotate(-6deg) scale(1.05);
}

/*
 * آیکون‌های خدمات، فایل تصویری خود سایت‌اند (خاکستری با لهجهٔ نارنجی) و رنگشان ثابت است.
 * پس چیپشان موقع هاور وارونه نمی‌شود؛ فقط روشن‌تر و کمی بزرگ‌تر می‌شود.
 */
/*
 * تور ایمنی. `.dsa-ico-img` پایین‌تر با درصد اندازه می‌گیرد (۷۲٪ چیپ)، پس اگر جایی
 * از منو چیپ را اندازه‌گذاری نکند، درصد روی یک جعبهٔ auto حل می‌شود و تصویر تا
 * عرض کل ردیف باز می‌شود. SVGهای درون‌خطی چون width/height خودشان را دارند این
 * حفره را پنهان می‌کردند — تا وقتی کارفرما در پیشخوان به یک آیتمِ «کشوی ساده»
 * آیکون تصویری داد و ردیف منفجر شد. ویژگی این قاعده (0,2,0) است تا همهٔ
 * قاعده‌های اختصاصیِ پایین‌تر رویش را بگیرند.
 */
:is(.dsa, .dsa-drawer) .dsa-ico {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border-radius: 11px;
}

body :is(.dsa, .dsa-drawer) .dsa-ico-img {
	width: 72%;
	height: 72%;
	max-width: none !important;
	max-height: none !important;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	object-fit: contain;
}
.dsa .dsa-ico--img,
.dsa-drawer .dsa-ico--img { background: var(--dsa-grad-soft); }
.dsa .dsa-nav .dsa-panel--mega .dsa-item--d2 .dsa-link:hover .dsa-ico--img {
	background: #fff;
	box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--dsa-o) 28%, transparent);
	transform: scale(1.08);
}

.dsa-nav .dsa-panel .dsa-text { display: flex; flex-direction: column; min-width: 0; }
.dsa-nav .dsa-panel .dsa-title { font-size: 14px; font-weight: 600; color: var(--dsa-ink); }
.dsa-nav .dsa-panel .dsa-subtitle {
	font-size: 10.5px;
	font-weight: 500;
	letter-spacing: .3px;
	color: var(--dsa-muted);
	opacity: .85;
}
.dsa-nav .dsa-panel .dsa-desc {
	font-size: 12px;
	color: var(--dsa-muted);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* ---------- کارت ویژه در مگامنو ---------- */

.dsa-nav .dsa-promo { display: flex; }
.dsa .dsa-nav .dsa-promo-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
	padding: 18px;
	overflow: hidden;
	border-radius: 18px;
	background: var(--dsa-grad-btn);
	background-size: 150% 100%;
	color: #fff;
	transition: transform .35s var(--dsa-ease), box-shadow .35s ease;
}
.dsa .dsa-nav .dsa-promo-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 26px 46px -24px rgba(21, 32, 24, .7);
}

/* نور گرادیانی برند که در گوشهٔ کارت می‌تابد */
.dsa-nav .dsa-promo-card::before {
	content: "";
	position: absolute;
	top: -55%; right: -25%;
	width: 240px; height: 240px;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(255, 255, 255, .65), transparent);
	filter: blur(26px);
	opacity: .8;
	transition: opacity .35s ease, transform .5s var(--dsa-ease);
}
.dsa .dsa-nav .dsa-promo-card:hover::before { opacity: .8; transform: scale(1.15); }

.dsa-nav .dsa-promo-card > * { position: relative; }

.dsa-nav .dsa-promo-ico {
	display: grid;
	place-items: center;
	width: 42px; height: 42px;
	border-radius: 13px;
	background: rgba(255, 255, 255, .14);
	border: 1px solid rgba(255, 255, 255, .2);
	color: #fff;
}
.dsa-nav .dsa-promo-ico svg { width: 21px; height: 21px; }
.dsa-nav .dsa-promo-title { margin-top: 2px; font-size: 16px; font-weight: 800; }
.dsa-nav .dsa-promo-desc { font-size: 12.5px; line-height: 1.7; color: rgba(255, 255, 255, .88); }
.dsa-nav .dsa-promo-cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: auto;
	padding-top: 8px;
	font-size: 13px;
	font-weight: 800;
	color: #fff;
}
.dsa-nav .dsa-promo-cta svg { width: 15px; height: 15px; transition: transform .3s var(--dsa-ease); }
.dsa .dsa-nav .dsa-promo-card:hover .dsa-promo-cta svg { transform: translateX(-4px); }

/* ============================================================ اکشن‌های سمت چپ */

.dsa-actions { display: flex; align-items: center; gap: 10px; margin-inline-start: auto; flex-shrink: 0; }

.dsa-phone {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 7px 12px 7px 14px;
	border-radius: 14px;
	border: 1px solid var(--dsa-line);
	background: rgba(255, 255, 255, .6);
	transition: border-color .25s ease, background .25s ease, transform .3s var(--dsa-ease);
}
.dsa-phone:hover {
	border-color: color-mix(in srgb, var(--dsa-g) 35%, transparent);
	background: #fff;
	transform: translateY(-2px);
}

.dsa-phone-ico {
	position: relative;
	display: grid;
	place-items: center;
	width: 34px; height: 34px;
	border-radius: 11px;
	background: var(--dsa-grad-btn);
	color: #fff;
}
.dsa-phone-ico svg { width: 17px; height: 17px; }
/* پالس ملایم دور آیکن تماس */
.dsa-phone-ico::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	box-shadow: 0 0 0 0 color-mix(in srgb, var(--dsa-o) 60%, transparent);
	animation: dsa-pulse 2.6s ease-out infinite;
}
@keyframes dsa-pulse {
	70%  { box-shadow: 0 0 0 10px transparent; }
	100% { box-shadow: 0 0 0 0 transparent; }
}
@media (prefers-reduced-motion: reduce) {
	.dsa-phone-ico::after { animation: none; }
}

.dsa-phone-text { display: flex; flex-direction: column; gap: 3px; line-height: 1.5; }
.dsa-phone-label { font-size: 10.5px; font-weight: 500; color: var(--dsa-muted); }
.dsa-phone-num { font-size: 14.5px; font-weight: 700; letter-spacing: .4px; color: var(--dsa-ink); direction: ltr; }

/* دکمهٔ اصلی: قرص گرادیانی با درخششِ عبوری */
.dsa .dsa-cta {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 20px;
	overflow: hidden;
	border-radius: 14px;
	background: var(--dsa-grad-btn);
	background-size: 160% 100%;
	color: #fff;
	font-size: 14.5px;
	font-weight: 700;
	white-space: nowrap;
	box-shadow: 0 12px 26px -12px color-mix(in srgb, var(--dsa-o2) 70%, transparent);
	transition: background-position .5s var(--dsa-ease), transform .3s var(--dsa-ease), box-shadow .3s ease;
}
.dsa .dsa-cta:hover {
	background-position: 100% 0;
	transform: translateY(-2px);
	box-shadow: 0 18px 32px -14px color-mix(in srgb, var(--dsa-o2) 65%, transparent);
}
.dsa-cta svg { width: 17px; height: 17px; }
.dsa-cta::after {
	content: "";
	position: absolute;
	top: 0; bottom: 0;
	right: -60%;
	width: 45%;
	background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .45), transparent);
	transform: skewX(-18deg);
	transition: right .6s var(--dsa-ease);
}
.dsa .dsa-cta:hover::after { right: 115%; }

.dsa-icon-btn {
	display: grid;
	place-items: center;
	width: 42px; height: 42px;
	border-radius: 13px;
	border: 1px solid var(--dsa-line);
	background: rgba(255, 255, 255, .6);
	color: var(--dsa-ink-2);
	transition: border-color .25s ease, color .25s ease, background .25s ease;
}
.dsa-icon-btn:hover { border-color: color-mix(in srgb, var(--dsa-g) 35%, transparent); color: var(--dsa-g-ink); background: #fff; }
.dsa-icon-btn svg { width: 19px; height: 19px; }

/* همبرگر */
body .dsa button.dsa-burger {
	display: none;
	place-items: center;
	width: 44px; height: 44px;
	border-radius: 14px;
	border: 1px solid var(--dsa-line);
	background: rgba(255, 255, 255, .7);
	color: var(--dsa-ink);
}
.dsa-burger-lines { display: grid; gap: 4px; width: 20px; }
.dsa-burger-lines i {
	display: block;
	height: 2px;
	border-radius: 2px;
	background: currentColor;
	transition: transform .3s var(--dsa-ease), opacity .2s ease, width .3s var(--dsa-ease);
}
.dsa-burger-lines i:nth-child(2) { width: 70%; margin-inline-start: auto; background: var(--dsa-o2); }
body .dsa button.dsa-burger:hover .dsa-burger-lines i:nth-child(2) { width: 100%; }

/* ============================================================ دراور موبایل */

.dsa-drawer {
	position: fixed;
	inset: 0;
	z-index: 9999;
	visibility: hidden;
	pointer-events: none;
}
.dsa-drawer.is-open { visibility: visible; pointer-events: auto; }

.dsa-overlay {
	position: absolute;
	inset: 0;
	background: rgba(12, 20, 14, .55);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	opacity: 0;
	transition: opacity .35s ease;
}
.dsa-drawer.is-open .dsa-overlay { opacity: 1; }

.dsa-sheet {
	position: absolute;
	top: 0; right: 0; bottom: 0;
	display: flex;
	flex-direction: column;
	width: min(92vw, 400px);
	background: linear-gradient(170deg, #ffffff, #f4f7f3);
	box-shadow: -24px 0 60px -24px rgba(21, 32, 24, .5);
	transform: translateX(100%);
	transition: transform .42s var(--dsa-ease);
}
.dsa-drawer.is-open .dsa-sheet { transform: none; }

.dsa-sheet-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 18px;
	border-bottom: 1px solid var(--dsa-line);
}

body .dsa-drawer button.dsa-close {
	display: grid;
	place-items: center;
	width: 40px; height: 40px;
	flex-shrink: 0;
	border-radius: 13px;
	border: 1px solid var(--dsa-line);
	background: #fff;
	color: var(--dsa-ink-2);
	transition: color .2s ease, border-color .2s ease, transform .3s var(--dsa-ease);
}
body .dsa-drawer button.dsa-close:hover { color: var(--dsa-o-ink); border-color: color-mix(in srgb, var(--dsa-o) 40%, transparent); transform: rotate(90deg); }
.dsa-close svg { width: 19px; height: 19px; }

.dsa-sheet-body { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 16px 16px 24px; }

.dsa-sheet-cta {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
	padding: 14px;
	border-radius: 18px;
	background: var(--dsa-grad-btn);
	background-size: 150% 100%;
	color: #fff;
	position: relative;
	overflow: hidden;
}
.dsa-sheet-cta::before {
	content: "";
	position: absolute;
	top: -60%; right: -20%;
	width: 200px; height: 200px;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(255, 255, 255, .6), transparent);
	filter: blur(24px);
	opacity: .85;
}
.dsa-sheet-cta > * { position: relative; }
.dsa-sheet-cta-ico {
	display: grid;
	place-items: center;
	width: 42px; height: 42px;
	flex-shrink: 0;
	border-radius: 13px;
	background: rgba(255, 255, 255, .16);
	border: 1px solid rgba(255, 255, 255, .22);
}
.dsa-sheet-cta-ico svg { width: 20px; height: 20px; }
.dsa-sheet-cta .dsa-text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; line-height: 1.5; }
.dsa-sheet-cta-title { font-size: 14.5px; font-weight: 700; }
.dsa-sheet-cta-sub { font-size: 11.5px; color: rgba(255, 255, 255, .85); }
.dsa-sheet-cta-go { flex-shrink: 0; color: #fff; }
.dsa-sheet-cta-go svg { width: 20px; height: 20px; }

/* منوی آکاردئونی */
.dsa-mnav .dsa-menu { display: flex; flex-direction: column; gap: 4px; }

.dsa-mnav .dsa-row { display: flex; align-items: center; gap: 4px; }

.dsa .dsa-mnav .dsa-link,
.dsa-drawer .dsa-mnav .dsa-link {
	display: flex;
	align-items: center;
	gap: 11px;
	flex: 1;
	min-width: 0;
	padding: 12px 12px;
	border-radius: 14px;
	font-size: 15px;
	font-weight: 600;
	color: var(--dsa-ink-2);
	transition: background .2s ease, color .2s ease;
}
.dsa-drawer .dsa-mnav .dsa-item--d0 > .dsa-row > .dsa-link { font-weight: 700; color: var(--dsa-ink); }
.dsa-drawer .dsa-mnav .dsa-link:hover,
.dsa-drawer .dsa-mnav .dsa-current > .dsa-row > .dsa-link { background: var(--dsa-grad-soft); color: var(--dsa-ink); }

.dsa-drawer .dsa-mnav .dsa-ico {
	display: grid;
	place-items: center;
	width: 34px; height: 34px;
	flex-shrink: 0;
	border-radius: 11px;
	background: var(--dsa-grad-soft);
	color: var(--dsa-g-ink);
}
.dsa-drawer .dsa-mnav .dsa-ico svg { width: 17px; height: 17px; }
.dsa-drawer .dsa-mnav .dsa-subtitle { font-size: 10.5px; color: var(--dsa-muted); }
.dsa-drawer .dsa-mnav .dsa-desc { display: none; }

body .dsa-drawer button.dsa-toggle {
	display: grid;
	place-items: center;
	width: 40px; height: 40px;
	flex-shrink: 0;
	border-radius: 12px;
	background: #fff;
	border: 1px solid var(--dsa-line);
	color: var(--dsa-muted);
}
body .dsa-drawer button.dsa-toggle:hover { color: var(--dsa-g-ink); }
.dsa-drawer .dsa-toggle svg { width: 16px; height: 16px; transition: transform .3s var(--dsa-ease); }

/* زیرمنوی جمع‌شونده */
.dsa-mnav .dsa-panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .38s var(--dsa-ease);
}
.dsa-mnav .is-open > .dsa-panel { grid-template-rows: 1fr; }
.dsa-mnav .dsa-panel > .dsa-card {
	min-height: 0;
	overflow: hidden;
	padding: 0;
	background: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	animation: none;
}
.dsa-mnav .dsa-panel > .dsa-card::before { display: none; }

.dsa-mnav .dsa-sub {
	margin: 4px 16px 6px 0;
	padding-right: 12px;
	border-right: 2px solid color-mix(in srgb, var(--dsa-g) 22%, transparent);
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.dsa-drawer .dsa-mnav .dsa-sub .dsa-link { padding: 9px 10px; font-size: 14px; font-weight: 500; }
.dsa-drawer .dsa-mnav .dsa-sub .dsa-ico { width: 28px; height: 28px; border-radius: 9px; }
.dsa-drawer .dsa-mnav .dsa-sub .dsa-ico svg { width: 15px; height: 15px; }

/* پانوشت دراور */
.dsa-sheet-foot { padding: 14px 16px calc(14px + env(safe-area-inset-bottom)); border-top: 1px solid var(--dsa-line); background: #fff; }

.dsa-call {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 12px;
	border-radius: 15px;
	background: var(--dsa-grad-soft);
	border: 1px solid color-mix(in srgb, var(--dsa-g) 18%, transparent);
}
.dsa-call-ico {
	display: grid;
	place-items: center;
	width: 38px; height: 38px;
	flex-shrink: 0;
	border-radius: 12px;
	background: var(--dsa-grad-btn);
	color: #fff;
}
.dsa-call-ico svg { width: 18px; height: 18px; }
.dsa-call .dsa-text { flex: 1; display: flex; flex-direction: column; gap: 3px; line-height: 1.5; }
.dsa-call-label { font-size: 11px; color: var(--dsa-muted); }
.dsa-call-go {
	padding: 7px 14px;
	border-radius: 999px;
	background: #fff;
	font-size: 12.5px;
	font-weight: 700;
	color: var(--dsa-g-ink);
	box-shadow: 0 4px 12px -6px rgba(21, 32, 24, .4);
}

.dsa-sheet-socials { display: flex; justify-content: center; gap: 8px; margin-top: 12px; }
.dsa-sheet-socials a {
	display: grid;
	place-items: center;
	width: 38px; height: 38px;
	border-radius: 12px;
	border: 1px solid var(--dsa-line);
	color: var(--dsa-muted);
	transition: color .2s ease, border-color .2s ease, transform .25s var(--dsa-ease);
}
.dsa-sheet-socials a:hover { color: var(--dsa-g-ink); border-color: color-mix(in srgb, var(--dsa-g) 35%, transparent); transform: translateY(-2px); }
.dsa-sheet-socials svg { width: 18px; height: 18px; }

/* ============================================================ داک پایین موبایل */

.dsa-dock {
	position: fixed;
	right: 0; bottom: 0; left: 0;
	z-index: 9990;
	display: none;
	padding: 8px 12px calc(8px + env(safe-area-inset-bottom));
	pointer-events: none;
	transition: opacity .3s ease, transform .35s var(--dsa-ease);
}

/* وقتی دراور باز است داک کنار می‌رود تا پانوشت دراور پشتش پنهان نشود. */
.dsa-drawer-open .dsa-dock { opacity: 0; transform: translateY(100%); pointer-events: none; }

.dsa-dock-bar {
	position: relative;
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: 1fr;
	max-width: 520px;
	margin: 0 auto;
	padding: 8px 6px 6px;
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .8));
	-webkit-backdrop-filter: blur(22px) saturate(180%);
	backdrop-filter: blur(22px) saturate(180%);
	border: 1px solid rgba(255, 255, 255, .8);
	box-shadow:
		0 0 0 1px rgba(21, 32, 24, .06),
		0 20px 40px -18px rgba(21, 32, 24, .45);
	pointer-events: auto;
}

/*
 * «چراغ سنجش»: یک نوار نور کوچک روی لبهٔ بالایی داک که روی آیتم فعال می‌ایستد.
 * موقعیتش از --dsa-dock-i (شمارهٔ آیتم فعال) و --dsa-dock-n (تعداد آیتم‌ها) می‌آید.
 */
.dsa-dock-lamp {
	position: absolute;
	top: 0;
	right: calc(6px + (100% - 12px) / var(--dsa-dock-n, 4) * var(--dsa-dock-i, 0));
	width: calc((100% - 12px) / var(--dsa-dock-n, 4));
	height: 100%;
	pointer-events: none;
	transition: right .42s var(--dsa-ease);
}
.dsa-dock.is-idle .dsa-dock-lamp { opacity: 0; }

.dsa-dock-lamp::before {
	content: "";
	position: absolute;
	top: -1px; right: 50%;
	width: 34px; height: 3px;
	border-radius: 0 0 4px 4px;
	background: var(--dsa-grad);
	transform: translateX(50%);
	box-shadow: 0 2px 14px color-mix(in srgb, var(--dsa-o) 70%, transparent);
}
/* مخروط نور که روی آیکن فعال می‌تابد */
.dsa-dock-lamp::after {
	content: "";
	position: absolute;
	top: 0; right: 50%;
	width: 66px; height: 54px;
	background: linear-gradient(180deg, color-mix(in srgb, var(--dsa-o) 26%, transparent), transparent 75%);
	clip-path: polygon(34% 0, 66% 0, 100% 100%, 0 100%);
	transform: translateX(50%);
}

.dsa-dock-item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
	padding: 6px 2px 4px;
	border-radius: 16px;
	color: var(--dsa-muted);
	font-size: 10.5px;
	font-weight: 600;
	transition: color .25s ease;
	-webkit-tap-highlight-color: transparent;
}
.dsa-dock-item.is-active { color: var(--dsa-g-ink); }

.dsa-dock-ico { position: relative; display: grid; place-items: center; height: 24px; transition: transform .35s var(--dsa-ease); }
.dsa-dock-ico svg { width: 21px; height: 21px; }
.dsa-dock-item.is-active .dsa-dock-ico { transform: translateY(-2px); }

.dsa-dock-dot {
	position: absolute;
	top: -1px; left: -3px;
	width: 7px; height: 7px;
	border-radius: 50%;
	background: var(--dsa-o2);
	border: 1.5px solid #fff;
}

/* ============================================================ ریسپانسیو */

@media (max-width: 1199px) {
	.dsa { --dsa-h: 72px; }
	.dsa-nav { display: none; }
	body .dsa button.dsa-burger { display: grid; }
}

@media (max-width: 1080px) {
	.dsa-rail-info li:nth-child(n+3) { display: none; }
}

@media (max-width: 900px) {
	.dsa-rail-social { display: none; }
	.dsa-rail-info li:nth-child(n+2) { display: none; }
}

@media (max-width: 760px) {
	.dsa { --dsa-rail-h: 36px; --dsa-rail-gap: 8px; }
	.dsa-rail { border-radius: 12px; }
	.dsa-rail-in { padding: 0 14px; gap: 10px; }
	.dsa-rail { font-size: 11.5px; }
	.dsa-rail-trust { padding: 3px 10px; font-size: 11px; }
	.dsa-rail-trust span { display: none; }
	.dsa-shell { padding: 0 14px; gap: 10px; }
	.dsa-phone { display: none; }
	.dsa .dsa-cta { padding: 10px 14px; font-size: 13.5px; }
	.dsa-brand-fa { font-size: 15px; }
	.dsa-brand-mark { width: 44px; height: 44px; }
	body :is(.dsa, .dsa-drawer) .dsa-brand-mark img { height: 40px !important; }
	.dsa-dock { display: block; }
	body.dsa-has-dock { padding-bottom: 76px; }
}

@media (max-width: 460px) {
	/* فقط در نوار اصلی؛ داخل دراور جا هست و نام برند باید بماند. */
	.dsa-shell .dsa-brand-text { display: none; }
	/*
	 * دکمهٔ «درخواست بازرسی» در موبایل هم باید متن داشته باشد؛ آیکون تنها
	 * (که شبیه دکمهٔ ارسالِ پیام‌رسان دیده می‌شد) معنای دکمه را نمی‌رساند.
	 * پس به‌جای حذف متن، خودِ دکمه را جمع‌وجور می‌کنیم.
	 */
	.dsa .dsa-cta { padding: 10px 13px; gap: 6px; font-size: 12.5px; border-radius: 12px; }
	.dsa-cta svg { width: 15px; height: 15px; }
	.dsa-shell { gap: 8px; }
	.dsa-rail-item .dsa-rail-label { display: none; }
}

/* گوشی‌های خیلی باریک: متن دکمه می‌ماند، فقط ریزتر و بدون آیکون. */
@media (max-width: 360px) {
	.dsa .dsa-cta { padding: 10px 11px; font-size: 11.5px; }
	.dsa-cta svg { display: none; }
}

/* ------------------------------------------------------------------
   بیرون آمدن از کانتینر باکس‌شدهٔ المنتور.

   المنتور در Site Settings -> Layout -> Content Width یک سقف سراسری
   می‌گذارد (روی این سایت ۱۱۸۰px) که با این قانون اعمال می‌شود:
       .elementor-section.elementor-section-boxed > .elementor-container
   هر چه داخلش باشد — از جمله شورت‌کد ما — به همان عرض محبوس می‌شود، و
   --dsa-max هم کاری نمی‌تواند بکند چون سقف یک طبقه بالاترِ ماست.

   فقط همان سکشنی که هدر/فوتر ما داخلش است از حالت باکس درمی‌آید؛
   بقیهٔ صفحات سایت دست‌نخورده می‌مانند. :has() ویژگیِ آرگومانش را هم
   حساب می‌کند، پس بدون !important بر قانون المنتور غلبه می‌کند.
   ------------------------------------------------------------------ */
/* هر دو قانون ویژگیِ (0,3,0) دارند، پس فقط ترتیب بارگذاری تعیین‌کننده بود و
   post-5.css دیرتر از ما لود می‌شود. با افزودن .elementor-section-boxed ویژگی
   به (0,4,0) می‌رسد و مستقل از ترتیب برنده می‌شود؛ !important هم برای وقتی است
   که افزونه یا قالب دیگری بعداً سقف تازه‌ای بگذارد. */
.elementor-section:has(.dsa) > .elementor-container,
.elementor-section.elementor-section-boxed:has(.dsa) > .elementor-container {
	max-width: 100% !important;
}

/* کانتینرهای نسل جدید المنتور (flexbox) سقف را با متغیر می‌گذارند. */
.e-con:has(.dsa), .e-con-inner:has(.dsa) {
	--container-max-width: 100% !important;
	max-width: 100% !important;
}


/* ============================================================ اصلاح‌های تمام‌عرض */

/* المنتور روی «.elementor-kit-N a» فونت سایت را می‌گذارد. ویژگی‌اش (0,1,1) است —
   برابر با «.dsa a» — و چون دیرتر لود می‌شود برنده می‌شد و فونت از روی <a>
   به همهٔ فرزندانش (نام برند، عنوان آیتم‌های منو) ارث می‌رسید. با inherit
   لینک‌ها دوباره فونت هدر را می‌گیرند. */
.dsa a,
.dsa button { font-family: inherit !important; }

/* در حالت تمام‌عرض، صفحهٔ شیشه‌ای نباید به لبهٔ نمایشگر بچسبد. */
.dsa-top { padding-inline: clamp(16px, 2.4vw, 46px); }
