/* ============================================================
   قلموم — استایل بلوک‌های استاندارد گوتنبرگ (سیستم ادیتوریال مجله)
   نویسنده در ادیتور خودِ وردپرس می‌نویسد؛ این فایل هم در فرانت و هم
   در ادیتور (از طریق add_editor_style) بارگذاری می‌شود تا خروجی و پیش‌نمایش یکی باشند.
   ============================================================ */

.gh-article-body { font-size: 15.5px; line-height: 2.1; color: var(--gh-text-secondary); }
.gh-article-body > * + * { margin-block-start: 20px; }
.gh-article-body h2 {
	position: relative; font-size: 22px; font-weight: 800; color: var(--gh-text-primary);
	margin-block-start: 40px; scroll-margin-top: 96px;
}
.gh-article-body h3 { position: relative; font-size: 18px; font-weight: 800; color: var(--gh-text-primary); margin-block-start: 32px; scroll-margin-top: 96px; }
.gh-article-body p, .editor-styles-wrapper p { line-height: 2.1; }
.gh-article-body a { text-decoration: underline; text-decoration-color: var(--gh-accent-border); text-underline-offset: 3px; }
.gh-article-body strong { color: var(--gh-text-primary); font-weight: 700; }

/* لینک حاشیه‌ای «#» کنار تیتر — فقط با هاور/فوکوس تیتر یا خودش دیده می‌شود؛ کلیک = کپی لینک بخش */
.gh-article-body .gh-heading-anchor {
	position: absolute; inset-inline-start: -26px; top: .15em;
	font-size: .78em; font-weight: 700; color: var(--gh-text-tertiary); text-decoration: none;
	opacity: 0; transition: opacity var(--gh-dur-fast) var(--gh-ease-out), color var(--gh-dur-fast) var(--gh-ease-out);
}
.gh-article-body h2:hover .gh-heading-anchor, .gh-article-body h3:hover .gh-heading-anchor,
.gh-article-body .gh-heading-anchor:focus-visible { opacity: 1; }
.gh-article-body .gh-heading-anchor:hover { color: var(--gh-accent-text); }
@media (max-width: 760px) { .gh-article-body .gh-heading-anchor { display: none; } /* جای کافی در حاشیه نیست */ }

/* ---------- لیست‌ها — نشانه‌ی اختصاصی به‌جای بولت/عدد خام مرورگر ---------- */
.gh-article-body ul, .gh-article-body ol { padding-inline-start: 4px; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.gh-article-body li { position: relative; padding-inline-start: 26px; }
.gh-article-body ul > li::before {
	content: ""; position: absolute; inset-inline-start: 2px; top: .65em; width: 7px; height: 7px;
	border-radius: 2px; background: var(--gh-accent-solid); transform: rotate(45deg);
}
.gh-article-body ol { counter-reset: gh-ol; }
.gh-article-body ol > li { counter-increment: gh-ol; }
.gh-article-body ol > li::before {
	content: counter(gh-ol); position: absolute; inset-inline-start: 0; top: 0;
	min-width: 20px; font-size: 12px; font-weight: 800; color: var(--gh-accent-text);
	font-variant-numeric: tabular-nums;
}
.gh-article-body li > ul, .gh-article-body li > ol { margin-block-start: 8px; }

/* ---------- درشت‌حرف آغازین (has-drop-cap) ---------- */
.gh-article-body p.has-drop-cap:first-letter {
	float: inline-start; font-size: 3.6em; font-weight: 900; line-height: .82; color: var(--gh-accent-text);
	margin: .04em .09em 0 0; text-wrap: unset;
}

/* ---------- کد درون‌خطی و متن هایلایت‌شده ---------- */
.gh-article-body code:not(pre code) {
	background: var(--gh-bg-sunken); border: 1px solid var(--gh-border-subtle); border-radius: var(--gh-radius-micro);
	padding: 2px 6px; font-size: .88em; direction: ltr; unicode-bidi: isolate;
}
.gh-article-body mark { background: var(--gh-accent-surface); color: var(--gh-accent-text); border-radius: 3px; padding: 1px 4px; box-decoration-break: clone; }

/* ---------- شکست عرض «wide»/«full» — تصویر/گالری/کاور/embed می‌توانند از ستون ۶۸۰px بزرگ‌تر شوند.
   نکته: add_theme_support('align-wide') در functions.php از قبل فعال بود ولی هیچ CSS فرانتی
   برایش نبود — یعنی انتخاب wide/full در ادیتور روی صفحه‌ی واقعی هیچ اثری نداشت. */
.gh-article-body .alignwide { margin-inline: -70px; max-width: none; width: auto; }
.gh-article-body .alignfull {
	width: 100vw; max-width: 100vw; margin-inline-start: 50%; transform: translateX(-50%);
}
@media (max-width: 900px) { .gh-article-body .alignwide { margin-inline: 0; } }

/* ---------- تصویر با کپشن — قاب + آیکون نوع محتوا (طبق سیستم طراحی) ---------- */
.gh-article-body figure.wp-block-image,
.gh-article-body figure.wp-block-gallery,
.gh-article-body figure.wp-block-embed,
.gh-article-body .wp-block-video,
.gh-article-body .wp-block-audio {
	position: relative; border: 1px solid var(--gh-border-default); border-radius: var(--gh-r-lg);
	overflow: hidden; background: var(--gh-bg-raised); margin: 0;
}
.gh-article-body figure.wp-block-image img,
.gh-article-body .wp-block-video video { width: 100%; display: block; border-radius: 0; }
.gh-article-body img { max-width: 100%; height: auto; border-radius: var(--gh-r-lg); }
.gh-article-body figure.wp-block-image img { border-radius: calc(var(--gh-r-lg) - 1px); }
.gh-article-body figcaption {
	font-size: 12.5px; color: var(--gh-text-tertiary); padding: 10px 16px;
	border-block-start: 1px solid var(--gh-border-subtle); text-align: center;
}
.gh-type-badge {
	position: absolute; top: 12px; inset-inline-start: 12px; z-index: 2;
	display: inline-flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 800;
	background: color-mix(in srgb, var(--gh-stone-950) 60%, transparent); color: var(--gh-white); backdrop-filter: blur(6px);
	padding: 4px 11px; border-radius: var(--gh-r-full);
}
.gh-type-badge svg { width: 12px; height: 12px; }

/* ---------- گالری — گرید یکدست به‌جای گرید پیش‌فرض وردپرس ---------- */
.gh-article-body .wp-block-gallery { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 8px !important; padding: 8px; }
.gh-article-body .wp-block-gallery .wp-block-image { margin: 0; aspect-ratio: 1; }
.gh-article-body .wp-block-gallery .wp-block-image img { width: 100%; height: 100%; object-fit: cover; border-radius: var(--gh-r-md); }
@media (max-width: 640px) { .gh-article-body .wp-block-gallery { grid-template-columns: repeat(2, 1fr); } }

/* ---------- ویدیو/صوت — دکمه‌ی پخش روی پوستر ---------- */
.gh-article-body .wp-block-video { aspect-ratio: 16 / 9; display: grid; place-items: center; background: linear-gradient(135deg, var(--gh-stone-700), var(--gh-stone-900)); }
.gh-article-body .wp-block-audio { padding: 14px 16px; }
.gh-article-body .wp-block-audio audio { width: 100%; }

/* ---------- نقل‌قول — نشان گیومه‌ی درشت تزئینی (الگوی رایج ادیتوریال جهانی: مدیوم/نیویورک‌تایمز) ---------- */
.gh-article-body blockquote,
.gh-article-body .wp-block-quote {
	position: relative; border-inline-start: 3px solid var(--gh-accent-solid); background: var(--gh-accent-surface);
	border-radius: 0 var(--gh-r-md) var(--gh-r-md) 0; padding: 18px 22px 18px 52px; font-size: 15px; font-weight: 700; color: var(--gh-text-primary);
	overflow: hidden;
}
.gh-article-body blockquote::before, .gh-article-body .wp-block-quote::before {
	content: "”"; position: absolute; top: -.28em; inset-inline-end: 14px; font-size: 70px; line-height: 1;
	font-weight: 900; color: var(--gh-accent-solid); opacity: .16; font-family: Georgia, 'Times New Roman', serif;
	pointer-events: none;
}
.gh-article-body .wp-block-quote cite { display: block; margin-block-start: 8px; font-size: 12.5px; font-weight: 500; color: var(--gh-text-tertiary); font-style: normal; }

/* ---------- جدول — هدر با رنگ ملایمِ برند، ردیف‌ها خنثی، فقط خط افقی نازک بین ردیف‌ها
   (بدون خط عمودی بین ستون‌ها — همان استاندارد جداول امروزی مثل Notion/Linear/GitHub).
   ⚠️ درس آموخته: خودِ هسته‌ی وردپرس یک استایل‌شیت جداگانه برای بلوک جدول همیشه لود می‌کند
   (wp-includes/blocks/table/style[-rtl].min.css، هندل wp-block-table) که «بعد» از این فایل
   می‌آید و border:1px solid currentColor روی همه‌ی td/th و border-bottom:3px solid روی خودِ
   thead می‌گذارد. چون specificity آن با انتخاب‌گر ساده‌ی «.gh-article-body td» برابر بود و
   دیرتر لود می‌شد، در نبردِ cascade برنده بود و رنگ‌های ما را کلاً بی‌اثر می‌کرد (خط سیاه پررنگ
   در لایت، خط محوِ نامشخص در دارک). راه‌حل: همه‌جا «.wp-block-table» را هم داخل انتخاب‌گر خودمان
   می‌آوریم تا specificity بالاتر از هسته باشد و همیشه برنده شویم — صرف‌نظر از ترتیب لود. */
.gh-article-body .wp-block-table {
	overflow-x: auto; overflow-y: hidden; border: 1px solid var(--gh-border-default); border-radius: var(--gh-r-lg);
}
.gh-article-body .wp-block-table table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13.5px; }
.gh-article-body .wp-block-table thead { border-block-end: none; }
.gh-article-body .wp-block-table thead th {
	background: var(--gh-accent-surface); color: var(--gh-accent-text);
	font-weight: 800; font-size: 12.5px; letter-spacing: .01em; padding: 14px 18px; text-align: start;
	border: none; border-block-end: 2px solid var(--gh-accent-border);
}
.gh-article-body .wp-block-table tbody th, .gh-article-body .wp-block-table tbody td {
	padding: 12px 18px; text-align: start; background: var(--gh-bg-raised);
	border: none; border-block-end: 1px solid var(--gh-border-subtle);
}
.gh-article-body .wp-block-table tbody th { font-weight: 800; color: var(--gh-text-primary); }
.gh-article-body .wp-block-table tbody tr:last-child td, .gh-article-body .wp-block-table tbody tr:last-child th { border-block-end: none; }
.gh-article-body .wp-block-table tbody tr:hover td, .gh-article-body .wp-block-table tbody tr:hover th { background: var(--gh-bg-sunken); }
.gh-article-body .wp-block-table figcaption { border: none; }
/* نوار اسکرول افقی جدول‌های عریض — نازک و هم‌رنگ سایت، نه نوار خاکستری ضخیم پیش‌فرض مرورگر */
.gh-article-body .wp-block-table::-webkit-scrollbar { height: 6px; }
.gh-article-body .wp-block-table::-webkit-scrollbar-track { background: transparent; }
.gh-article-body .wp-block-table::-webkit-scrollbar-thumb { background: var(--gh-border-strong); border-radius: var(--gh-r-full); }
.gh-article-body .wp-block-table { scrollbar-width: thin; scrollbar-color: var(--gh-border-strong) transparent; }

/* ---------- کد — رنگ از توکن‌های خودِ سایت (روشن/تاریک خودکار)، نه یک تم تیره‌ی ثابت.
   ⚠️ درس آموخته: نسخه‌ی اول همیشه پس‌زمینه‌ی خیلی تیره داشت، حتی در تم روشن سایت — یک جزیره‌ی
   ناهم‌خوان وسط صفحه می‌ساخت. حالا دقیقاً مثل بقیه‌ی بلوک‌های «سطح فرورفته» (جدول/نکته) رفتار می‌کند. */
.gh-article-body pre.wp-block-code {
	position: relative; background: var(--gh-bg-sunken); color: var(--gh-text-primary);
	border: 1px solid var(--gh-border-default); padding: 16px 20px;
	border-radius: var(--gh-r-md); overflow-x: auto; font-size: 13px; direction: ltr; text-align: left;
}
.gh-article-body pre.wp-block-code code { color: inherit; }
.gh-code-copy {
	position: absolute; top: 10px; inset-inline-end: 10px; z-index: 1;
	display: flex; align-items: center; gap: 5px; font: inherit; font-size: 11.5px; font-weight: 700;
	background: var(--gh-bg-surface); color: var(--gh-text-secondary); border: 1px solid var(--gh-border-default);
	border-radius: var(--gh-r-sm); padding: 5px 10px; cursor: pointer;
	opacity: 0; transition: all var(--gh-dur-fast) var(--gh-ease-out);
}
.gh-code-copy svg { width: 13px; height: 13px; }
.gh-article-body pre.wp-block-code:hover .gh-code-copy, .gh-code-copy:focus-visible { opacity: 1; }
.gh-code-copy:hover { background: var(--gh-accent-surface); border-color: var(--gh-accent-border); color: var(--gh-accent-text); }
@media (hover: none) { .gh-code-copy { opacity: 1; } } /* لمسی: هاور معنا ندارد، همیشه دیده شود */

/* ---------- پانویس‌ها (Footnotes) ---------- */
.gh-article-body .wp-block-footnotes {
	list-style: none; padding-inline-start: 0; margin-block-start: 40px; padding-block-start: 18px;
	border-block-start: 1px dashed var(--gh-border-default); font-size: 13px; color: var(--gh-text-tertiary);
}
.gh-article-body .wp-block-footnotes li::before { content: none; } /* شماره از خودِ لینک برمی‌گردد، بولت اضافه لازم نیست */
.gh-article-body .wp-block-footnotes li { padding-inline-start: 0; }
.gh-article-body a[data-fn] {
	display: inline-flex; align-items: center; justify-content: center; min-width: 17px; height: 17px;
	font-size: 10.5px; font-weight: 800; background: var(--gh-accent-surface); color: var(--gh-accent-text);
	border-radius: var(--gh-r-full); text-decoration: none; padding-inline: 3px; vertical-align: super;
}

/* ---------- جعبه نکته (الگوی آماده) ---------- */
.gh-note-box {
	display: flex; gap: 12px; background: var(--gh-info-surface); border: 1px solid color-mix(in srgb, var(--gh-info-text) 25%, transparent);
	border-radius: var(--gh-r-md); padding: 16px 18px;
}
.gh-note-box svg { width: 20px; height: 20px; color: var(--gh-info-text); flex: none; margin-block-start: 2px; }
.gh-note-box p { margin: 0; font-size: 13.5px; color: var(--gh-text-primary); }

/* ---------- CTA دوره داخل مقاله (الگوی آماده) ---------- */
.gh-article-cta {
	display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
	background: var(--gh-bg-sunken); border: 1px solid var(--gh-border-default); border-radius: var(--gh-r-lg); padding: 18px 20px;
}
.gh-article-cta .gh-cta-thumb { width: 52px; height: 52px; border-radius: var(--gh-r-md); flex: none; display: grid; place-items: center; color: var(--gh-white); }
.gh-article-cta .gh-cta-thumb svg { width: 22px; height: 22px; }
.gh-article-cta .gh-cta-info { flex: 1; min-width: 180px; }
.gh-article-cta .gh-cta-info b { font-size: 14px; font-weight: 800; display: block; }
.gh-article-cta .gh-cta-info span { font-size: 12px; color: var(--gh-text-tertiary); }

/* ---------- پول‌کوت (نقل‌قول درشت) — جدا از quote معمولی؛ برای جمله‌ی کلیدیِ مقاله ---------- */
.gh-article-body .wp-block-pullquote {
	text-align: center; border-block: 3px double var(--gh-accent-border); padding-block: 28px; margin-block: 12px;
}
.gh-article-body .wp-block-pullquote blockquote { margin: 0; }
.gh-article-body .wp-block-pullquote p {
	font-size: clamp(20px, 3vw, 26px); font-weight: 800; line-height: 1.6; color: var(--gh-text-primary);
	text-wrap: balance; margin: 0;
}
.gh-article-body .wp-block-pullquote cite { display: block; margin-block-start: 12px; font-size: 12.5px; font-weight: 600; color: var(--gh-accent-text); font-style: normal; }

/* ---------- جداکننده — به‌جای خط افقی خشک، سه نقطه‌ی برند (مثل ته‌فصل مجله‌های چاپی) ---------- */
.gh-article-body hr.wp-block-separator {
	border: none; height: auto; margin-block: 36px; text-align: center;
	background: none;
}
.gh-article-body hr.wp-block-separator::after {
	content: "· · ·"; display: inline-block; font-size: 20px; letter-spacing: .4em; color: var(--gh-accent-border);
	padding-inline-start: .4em; /* جبران letter-spacing انتهایی */
}
.gh-article-body hr.wp-block-separator.is-style-wide { max-width: none; }

/* ---------- جزئیات/آکاردئون (Details) — دقیقاً زبان بصری FAQ سایت، نه استایل پیش‌فرض مرورگر ---------- */
.gh-article-body .wp-block-details {
	background: var(--gh-bg-raised); border: 1px solid var(--gh-border-default); border-radius: var(--gh-r-md);
	padding: 0; margin: 0;
}
.gh-article-body .wp-block-details summary {
	cursor: pointer; list-style: none; display: flex; align-items: center; gap: 10px;
	padding: 14px 18px; font-weight: 700; font-size: 14.5px; color: var(--gh-text-primary);
}
.gh-article-body .wp-block-details summary::-webkit-details-marker { display: none; }
.gh-article-body .wp-block-details summary::before {
	content: ""; flex: none; width: 16px; height: 16px;
	background: var(--gh-accent-text); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
	transition: transform var(--gh-dur-fast) var(--gh-ease-out);
	transform: rotate(180deg); /* حالت جمع‌شده: گلیف پایه (چپ‌به‌راست) را می‌چرخاند تا به چپ اشاره کند */
}
.gh-article-body .wp-block-details[open] summary::before { transform: rotate(90deg); /* باز: رو به پایین — نشانه‌ی جهانیِ «محتوا زیرش باز شده» */ }
.gh-article-body .wp-block-details > :not(summary) { padding: 0 18px 16px; margin: 0; color: var(--gh-text-secondary); }

/* ---------- ستون‌ها — فاصله‌ی یکدست به‌جای gap پیش‌فرض گوتنبرگ ---------- */
.gh-article-body .wp-block-columns { gap: 24px; }
.gh-article-body .wp-block-column { margin: 0; }
@media (max-width: 640px) { .gh-article-body .wp-block-columns { flex-wrap: wrap; } }

/* ---------- دکمه‌ها — همان کامپوننت gh-btn سراسری سایت، نه دکمه‌ی پیش‌فرض گوتنبرگ ---------- */
.gh-article-body .wp-block-buttons { gap: 10px; }
.gh-article-body .wp-block-button__link {
	display: inline-flex; align-items: center; gap: 8px; font-family: inherit; font-size: 14.5px; font-weight: 700;
	height: 44px; padding-inline: 22px; border-radius: var(--gh-r-md); text-decoration: none;
	background: var(--gh-accent-solid); color: var(--gh-accent-on-solid); border: none;
	transition: all var(--gh-dur-fast) var(--gh-ease-out);
}
.gh-article-body .wp-block-button__link:hover { background: var(--gh-accent-hover); transform: translateY(-1px); }
.gh-article-body .is-style-outline .wp-block-button__link,
.gh-article-body .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent; color: var(--gh-accent-text); border: 1.5px solid var(--gh-accent-border);
}

/* ---------- کاور — تیتر روی تصویر با گرادیان تیره (زبان بصری هیروی نمونه‌کارها) ---------- */
.gh-article-body .wp-block-cover {
	border-radius: var(--gh-r-lg); overflow: hidden; margin: 0; min-height: 280px;
}
.gh-article-body .wp-block-cover .wp-block-cover__background { background: var(--gh-stone-900); }
.gh-article-body .wp-block-cover-image-text, .gh-article-body .wp-block-cover-text, .gh-article-body .wp-block-cover p {
	font-size: clamp(18px, 3vw, 26px); font-weight: 800; text-wrap: balance;
}

/* ---------- رسانه + متن — تصویر و توضیح کنار هم، با شکاف یکدست ---------- */
.gh-article-body .wp-block-media-text { gap: 28px; border-radius: var(--gh-r-lg); overflow: hidden; }
.gh-article-body .wp-block-media-text .wp-block-media-text__media { margin: 0; }
.gh-article-body .wp-block-media-text .wp-block-media-text__content { padding: 0; display: flex; flex-direction: column; justify-content: center; }

/* ---------- گروه با پس‌زمینه — جعبه‌ی برجسته با فاصله‌ی داخلی، نه یک بلوک بی‌قاب ---------- */
/* رنگ‌های پیش‌فرض گوتنبرگ (کهربایی/آبی/سبز و...) همیشه روشن‌اند و مستقل از تم سایت‌اند؛
   رنگ متنی که از توکن‌های سایت می‌آید (در تم تاریک خیلی روشن است) روی آن‌ها اصلاً خوانا نیست
   — ⚠️ باگ گزارش‌شده در تم تاریک. متن داخل این بلوک همیشه جوهر تیره‌ی ثابت می‌گیرد. */
.gh-article-body .wp-block-group.has-background {
	padding: 22px 24px; border-radius: var(--gh-r-lg); color: var(--gh-stone-900);
}
.gh-article-body .wp-block-group.has-background :where(p, h2, h3, h4, li, strong) { color: inherit; }

/* ---------- فایل ضمیمه — کارت دانلود (همان زبان بصری کارت‌های دانلود فونت) ---------- */
.gh-article-body .wp-block-file {
	display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
	background: var(--gh-bg-raised); border: 1px solid var(--gh-border-default); border-radius: var(--gh-r-lg);
	padding: 16px 18px; margin: 0;
}
.gh-article-body .wp-block-file::before {
	content: ""; flex: none; width: 40px; height: 40px; border-radius: var(--gh-r-sm);
	background: var(--gh-accent-surface);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E") center/22px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E") center/22px no-repeat;
}
.gh-article-body .wp-block-file a:not(.wp-block-file__button) { flex: 1; min-width: 160px; font-weight: 700; color: var(--gh-text-primary); text-decoration: none; }
.gh-article-body .wp-block-file .wp-block-file__button {
	display: inline-flex; align-items: center; height: 38px; padding-inline: 16px; border-radius: var(--gh-r-md);
	background: var(--gh-accent-solid); color: var(--gh-accent-on-solid); font-size: 13px; font-weight: 700; text-decoration: none;
}

/* ---------- کارت جاسازی فونت — [gh_font] ----------
   تصویر/گلیف کاملاً چسبیده به لبه و هم‌ارتفاعِ کارت (stretch پیش‌فرض فلکس)، نه یک مربع کوچک
   گوشه‌ی کارت؛ padding از خودِ کارت به بدنه‌ی متن منتقل شده تا رسانه واقعاً لبه‌به‌لبه بماند. */
.gh-font-embed {
	display: flex; min-height: 176px; background: var(--gh-bg-raised); border: 1px solid var(--gh-border-default);
	border-radius: var(--gh-r-lg); overflow: hidden; box-shadow: var(--gh-shadow-1);
}
.gh-font-embed-media {
	flex: none; width: 38%; max-width: 190px; display: grid; place-items: center; text-decoration: none;
	background: linear-gradient(160deg, var(--gh-accent-surface), var(--gh-bg-raised) 85%);
}
.gh-font-embed-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gh-font-embed-glyph { font-size: 52px; font-weight: 900; color: var(--gh-accent-text); direction: ltr; line-height: 1; }
.gh-font-embed-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 12px; padding: 20px 22px; }
.gh-font-embed-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.gh-font-embed-title { display: block; text-decoration: none; color: var(--gh-text-primary); min-width: 0; font-size: 17px; font-weight: 800; }
.gh-font-embed-title:hover { color: var(--gh-accent-text); }
.gh-font-embed-head .gh-badge { flex: none; margin-block-start: 3px; }
/* ردیف مشخصات به‌صورت متای افقی (نه dt/dd روی‌هم) — همان الگوی .gh-course-meta در سراسر سایت */
.gh-font-embed-specs { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 0; font-size: 12.5px; color: var(--gh-text-tertiary); }
.gh-font-embed-specs div { display: flex; gap: 5px; }
.gh-font-embed-specs dt { margin: 0; }
.gh-font-embed-specs dt::after { content: ":"; }
.gh-font-embed-specs dd { margin: 0; font-weight: 700; color: var(--gh-text-secondary); }
.gh-font-embed-foot {
	display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-block-start: auto;
	padding-block-start: 14px; border-block-start: 1px dashed var(--gh-border-subtle);
}
.gh-font-embed-dl { font-size: 12px; color: var(--gh-text-tertiary); font-variant-numeric: tabular-nums; }
.gh-font-embed-missing {
	background: var(--gh-warning-surface); color: var(--gh-warning-text); border: 1px solid color-mix(in srgb, var(--gh-warning-text) 25%, transparent);
	border-radius: var(--gh-r-md); padding: 12px 16px; font-size: 13.5px; font-weight: 700;
}
@media (max-width: 560px) {
	.gh-font-embed { flex-direction: column; min-height: 0; }
	.gh-font-embed-media { width: 100%; max-width: none; height: 110px; }
	.gh-font-embed-glyph { font-size: 40px; }
}

/* ---------- شعر/پیش‌قالب‌بندی‌شده — تایپوگرافی متفاوت برای تمایز از متن معمولی ---------- */
.gh-article-body .wp-block-verse, .gh-article-body pre.wp-block-preformatted {
	font-family: inherit; font-size: 15px; line-height: 2; color: var(--gh-text-secondary);
	background: var(--gh-bg-sunken); border-inline-start: 3px solid var(--gh-border-strong);
	padding: 16px 20px; border-radius: 0 var(--gh-r-md) var(--gh-r-md) 0; white-space: pre-line;
}

/* ---------- لیست با آیکون تیک — سبک اختیاری نویسنده (کلاس Additional CSS بلوک: gh-checklist) ---------- */
.gh-article-body ul.gh-checklist { list-style: none; padding-inline-start: 0; }
.gh-article-body ul.gh-checklist li { position: relative; padding-inline-start: 28px; }
.gh-article-body ul.gh-checklist li::before {
	/* دایره‌ی نرم پس‌زمینه — اول رندر می‌شود، زیرِ تیک می‌ماند */
	content: ""; position: absolute; inset-inline-start: 0; top: 2px; width: 18px; height: 18px; border-radius: 50%;
	background: var(--gh-success-surface);
}
.gh-article-body ul.gh-checklist li::after {
	/* آیکون تیک — روی دایره می‌نشیند */
	content: ""; position: absolute; inset-inline-start: 4px; top: 6px; width: 10px; height: 10px;
	background: var(--gh-success-text);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* ریتم عمودی استاندارد مقاله:
 * بلوک‌های هم‌سطح ۲۴px، زیرعنوان‌ها ۳۲px و شروع فصل اصلی ۴۸px فاصله دارند.
 */
.gh-article-body > * + * {
	margin-block-start: var(--gh-heading-content-gap, 24px);
}

.gh-article-body h2 {
	margin-block-start: var(--gh-section-related-gap, 48px);
	margin-block-end: var(--gh-grid-gap-compact, 16px);
}

.gh-article-body h3 {
	margin-block-start: var(--gh-flow-gap, 32px);
	margin-block-end: 12px;
}

.gh-article-body h4 {
	margin-block-start: var(--gh-heading-content-gap, 24px);
	margin-block-end: 8px;
}

.gh-article-body .wp-block-columns {
	gap: var(--gh-grid-gap, 24px);
}

.gh-article-body .wp-block-gallery {
	gap: var(--gh-grid-gap-compact, 16px) !important;
	padding: var(--gh-grid-gap-compact, 16px);
}

.gh-article-body .wp-block-image figcaption,
.gh-article-body .wp-block-gallery figcaption,
.gh-article-body .wp-block-quote cite,
.gh-article-body .wp-block-pullquote cite,
.gh-article-cta .gh-cta-info span,
.gh-font-embed-dl {
	font-size: var(--gh-font-micro, 12px);
}
