/* ==========================================================================
   دیارام - استایل اصلی
   ========================================================================== */

/* ---- متغیرهای پیش‌فرض (با CSS از customizer override می‌شن) ---- */
:root {
	--clr-primary:        #2563eb;
	--clr-secondary:      #0ea5e9;
	--clr-button:         #008080;
	--clr-button-gradient-start: #008080;
	--clr-button-gradient-end:   #14b8a6;
	--clr-button-gradient:       linear-gradient(90deg, #008080, #14b8a6);
	--clr-button-text:           #ffffff;
	--clr-accent:         #38bdf8;
	--clr-bg:             #f8fbff;
	--clr-surface:        #ffffff;
	--clr-text:           #0f172a;
	--clr-muted:          #64748b;
	--clr-border:         rgba(37,99,235,.14);
	--clr-primary-rgb:    37, 99, 235;
	--clr-secondary-rgb:  14, 165, 233;
	--clr-button-rgb:     0, 128, 128;

	--font-primary:       system-ui, -apple-system, 'Segoe UI', sans-serif;

	/* ---- تایپوگرافی (مقیاس ۱۴px پایه — H1 صفحه، H2 سکشن، H4 کارت) ---- */
	--fs-body:            14px;
	--fs-sm:              12px;
	--fs-xs:              11px;
	--fs-lg:              16px;
	--fs-xl:              18px;
	--fs-h1:              32px;
	--fs-h2:              26px;
	--fs-h3:              22px;
	--fs-h4:              18px;
	--fs-h5:              16px;
	--fs-h6:              14px;
	--font-weight-normal:   400;
	--font-weight-medium:   500;
	--font-weight-semibold: 600;
	--font-weight-bold:     700;
	--type-body:            var(--fs-body);
	--type-caption:         var(--fs-xs);
	--type-meta:            var(--fs-sm);
	--type-label:           var(--fs-h6);
	--type-widget:          var(--fs-h5);
	--type-card-title:      var(--fs-h4);
	--type-container-title: var(--fs-h4);
	--type-subsection:      var(--fs-h3);
	--type-section:         var(--fs-h2);
	--type-page-title:      var(--fs-h1);
	--type-subtitle:        var(--type-card-title);
	--type-title:           var(--type-section);
	--type-weight-body:     var(--font-weight-normal);
	--type-weight-subtitle: var(--font-weight-semibold);
	--type-weight-title:    var(--font-weight-bold);
	--fs-base:            14px;
	--fs-2xl:             var(--fs-h3);
	--fs-3xl:             var(--fs-h2);
	--fs-4xl:             var(--fs-h1);
	--fs-5xl:             var(--fs-h1);
	--fs-post-title-min:  var(--fs-h1);
	--fs-post-title-max:  var(--fs-h1);

	--radius:             4px;
	--radius-sm:          4px;
	--radius-lg:          4px;
	--radius-full:        9999px;

	--glass-blur:         20px;
	--glass-bg:           #ffffff;
	--glass-border:       rgba(37,99,235,.12);
	--glass-shadow:       0 14px 34px rgba(37,99,235,.08);

	--container:          1280px;
	--container-narrow:   800px;

	--transition:         .25s ease;
	--transition-slow:    .4s ease;

	--z-header:           100;
	--z-mobile-nav:       999;
	--z-search-overlay:   200;
	--z-back-to-top:      90;

	/* دکمه و بج: هم‌تراز با سطح «متن» */
	--ui-btn-min-height: 40px;
	--ui-btn-pad-y:      9px;
	--ui-btn-pad-x:      16px;
	--ui-btn-font:       var(--fs-body);
	--ui-btn-weight:     var(--font-weight-semibold);
	--ui-btn-sm-pad-y:   9px;
	--ui-btn-sm-pad-x:   16px;
	--ui-btn-sm-font:    var(--fs-sm);
	--ui-badge-pad-y:  .26rem;
	--ui-badge-pad-x:  .58rem;
	--ui-badge-font:   var(--fs-xs);
	--ui-badge-weight: var(--font-weight-semibold);

	--breadcrumb-font-size: var(--fs-xs);

	/* هیرو آرشیوها (مقالات، دوره، پادکست، محصول و …) — ارتفاع یکسان */
	--diaram-site-header-h:     4.5rem;
	--hero-archive-pad-top:     1.75rem;
	--hero-archive-pad-bottom:  1.25rem;
	--hero-archive-gap:         .4rem;
	--hero-archive-title-min:   var(--fs-h1);
	--hero-archive-title-max:   var(--fs-h2);
	--hero-archive-desc-lines:  2;
	--hero-archive-title-lines: 2;
}

/* ---- ریست و پایه ---- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* حذف هایلایت آبی/خاکستری لمس روی موبایل */
button,
a,
input,
textarea,
select,
summary,
[role="button"],
label {
	-webkit-tap-highlight-color: transparent;
	tap-highlight-color: transparent;
}

button:focus:not(:focus-visible),
a:focus:not(:focus-visible),
input:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
select:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible) {
	outline: none;
	box-shadow: none;
}

html {
	font-size: var(--fs-base);
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--diaram-admin-bar-h, 0px) + var(--diaram-site-header-h, 4.5rem));
	-webkit-text-size-adjust: 100%;
	padding-top: 0;
	margin-top: 0 !important;
	overflow-x: clip;
	max-width: 100%;
}

body {
	font-family:      var(--font-primary);
	font-size:        var(--fs-body);
	font-weight:      var(--font-weight-normal);
	background-color: var(--clr-bg);
	color:            var(--clr-text);
	line-height:      0;
	min-height:       100vh;
	margin:           0 !important;
	padding-top:      0;
	overflow-x:       clip;
	position:         relative;
}

/* پس‌زمینه گرادیان کهکشانی */
body::before {
	content:    '';
	position:   fixed;
	inset:      0;
	background:
		radial-gradient(ellipse 80% 50% at 20% -10%, rgba(var(--clr-primary-rgb),.12) 0%, transparent 62%),
		radial-gradient(ellipse 60% 40% at 80% 100%, rgba(var(--clr-secondary-rgb),.1) 0%, transparent 62%);
	pointer-events: none;
	z-index: 0;
}

/* پورتال‌های fixed (مودال/پلیر) از position:relative سراسری مستثنا — وگرنه 100dvh فضای خالی زیر صفحه */
body > *:not(#masthead):not(#wpadminbar):not(#diaram-page-preloader):not(#diaram-mobile-bottom-nav):not(#diaram-mobile-nav-overlay):not(#mobile-menu):not(#diaram-user-panel-canvas):not(#diaram-user-panel-overlay):not(.course-fs-modal):not(.sc-player-overlay):not(.sc-lesson-modal):not(.sc-session-lock-popup):not(.sc-mobile-mini-player):not(.sc-slide-fullscreen):not(.comments-modal):not(.diaram-header-auth-modal):not(#diaram-avatar-crop-modal) {
	position: relative;
	z-index: 1;
}

/* بازگردانی line-height برای عناصر مستقیم body که خارج از #page هستند
   (body { line-height: 0 } برای جلوگیری از گپ قبل از #page تنظیم شده) */
#wpadminbar,
#diaram-mobile-bottom-nav,
#diaram-mobile-nav-overlay,
#mobile-menu,
#diaram-user-panel-canvas,
#diaram-user-panel-overlay,
.course-fs-modal,
.sc-player-overlay,
.sc-lesson-modal,
.sc-session-lock-popup,
.sc-mobile-mini-player,
.sc-slide-fullscreen,
.comments-modal,
.diaram-header-auth-modal,
#diaram-avatar-crop-modal {
	line-height: 1.65;
}
.site-wrapper,
#page {
	display:        flex;
	flex-direction: column;
	align-items:    stretch;
	line-height:    1.65;
	margin-top:     0 !important;
	padding-top:    0;
	max-width:      100%;
}

/* هدر داخل #page — sticky بدون پوشاندن محتوای بعدی */
#page > #masthead.diaram-site-header {
	position: sticky;
	top: var(--diaram-admin-bar-h, 0px);
	z-index: var(--z-header);
	flex-shrink: 0;
}

/* بدون فاصله سفید بالای هدر (به‌جز زیر نوار مدیریت وردپرس) */
body:not(.admin-bar) > #masthead,
body:not(.admin-bar) > .site-header,
body:not(.admin-bar) > header[role="banner"],
#page > #masthead,
#page > .site-header,
#page > header[role="banner"] {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

a { color: var(--clr-primary); text-decoration: none; transition: color var(--transition); }
a:hover { color: var(--clr-secondary); }
a:focus-visible {
	outline: 2px solid var(--clr-primary);
	outline-offset: 3px;
	border-radius: var(--radius-sm);
}

img { max-width: 100%; height: auto; display: block; }
svg { fill: currentColor; }

h1, h2, h3, h4, h5, h6 {
	line-height:   1.3;
	color:         var(--clr-text);
	margin-bottom: .6em;
	font-family:   var(--font-primary);
}

h1 {
	font-size:   var(--fs-h1);
	font-weight: var(--font-weight-bold);
	line-height: 1.2;
}

h2 {
	font-size:   var(--fs-h2);
	font-weight: var(--font-weight-bold);
	line-height: 1.25;
}

h3 {
	font-size:   var(--fs-h3);
	font-weight: var(--font-weight-semibold);
}

h4 {
	font-size:   var(--fs-h4);
	font-weight: var(--font-weight-semibold);
}

h5 {
	font-size:   var(--fs-h5);
	font-weight: var(--font-weight-semibold);
}

h6 {
	font-size:   var(--fs-h6);
	font-weight: var(--font-weight-semibold);
	color:       var(--clr-muted);
}

p { margin-bottom: 1em; }
ul, ol { padding-inline-start: 1.5rem; }
li { margin-bottom: .25em; }

.type-page-title { font-size: var(--type-page-title); font-weight: var(--font-weight-bold); line-height: 1.2; }
.type-title,
.type-section { font-size: var(--type-section); font-weight: var(--font-weight-bold); line-height: 1.25; }
.type-subtitle,
.type-card-title { font-size: var(--type-card-title); font-weight: var(--font-weight-semibold); line-height: 1.35; }
.type-container-title { font-size: var(--type-container-title); font-weight: var(--font-weight-semibold); line-height: 1.35; }
.type-widget { font-size: var(--type-widget); font-weight: var(--font-weight-semibold); line-height: 1.4; }
.type-label { font-size: var(--type-label); font-weight: var(--font-weight-medium); line-height: 1.45; }
.type-meta { font-size: var(--type-meta); font-weight: var(--font-weight-normal); line-height: 1.5; }
.type-caption { font-size: var(--type-caption); font-weight: var(--font-weight-normal); line-height: 1.45; }
.type-body { font-size: var(--type-body); font-weight: var(--font-weight-normal); line-height: 1.65; }

/* فرم‌ها و ورودی‌ها */
input,
textarea,
select,
.diaram-dash-input,
.diaram-auth-input,
.diaram-smart-search__input,
.search-overlay__input,
.comment-form input,
.comment-form textarea,
.wpcf7-form-control {
	font-family: var(--font-primary);
	font-size:   var(--fs-body);
}

strong,
b {
	font-weight: var(--font-weight-semibold);
}

/* عناوین و متن‌های رابط کاربری — هر نقش یک سایز مشخص */
.entry-title,
.post-hero__title,
.single-title,
.page-title,
.archive-title,
.archive-hero__title,
.page-header__title,
.product-title,
.course-hero__title,
.no-results__title {
	font-size:   var(--type-page-title);
	font-weight: var(--font-weight-bold);
	line-height: 1.2;
}

.diaram-home__section-heading,
.course-section__heading,
.course-section__subheading,
.comments-title,
.diaram-dash-box-title {
	font-size:   var(--type-section-accent);
	font-weight: var(--type-weight-title);
	line-height: 1.25;
	color:       var(--clr-text);
}

.diaram-section-title {
	font-size:   var(--type-section);
	font-weight: var(--font-weight-bold);
	line-height: 1.25;
	color:       var(--clr-text);
}

.section-title,
.related-posts__title,
.diaram-dash-section__head h2 {
	font-size:   var(--type-container-title);
	font-weight: var(--font-weight-semibold);
	line-height: 1.35;
	color:       var(--clr-text);
}

.card__title,
.post-card__title,
.course-card__title,
.product-card__title,
.podcast-item__title,
.podcast-home-card__title,
.post-card-carousel__title,
.category-card__name,
.product-features__title {
	font-size:   var(--type-card-title);
	font-weight: var(--font-weight-semibold);
	line-height: 1.45;
}

.widget-title,
.course-fs-modal__title,
.course-section__subheading {
	font-size:   var(--type-widget);
	font-weight: var(--font-weight-semibold);
	line-height: 1.4;
}

.post-meta,
.post-meta__item,
.entry-meta,
.card-meta,
.caption,
.meta,
small {
	font-size: var(--type-meta);
}

.mobile-nav__menu a {
	font-size:   var(--type-meta);
	font-weight: var(--font-weight-medium);
}

::selection { background: rgba(var(--clr-primary-rgb),.3); color: var(--clr-text); }
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--clr-bg); }
::-webkit-scrollbar-thumb { background: rgba(var(--clr-primary-rgb),.4); border-radius: var(--radius-full); }

/* ---- یوتیلیتی ---- */
.container {
	max-width:   var(--container);
	margin-left:  auto;
	margin-right: auto;
	padding-left:  1.5rem;
	padding-right: 1.5rem;
	width:         100%;
}
.container--narrow { max-width: var(--container-narrow); }
.container--fluid { max-width: none; }

/* قالب برگه «کامل دیارام»: تمام‌عرض، بدون فاصله عمودی بین هدر/فوتر */
.site-main--diaram-full { padding: 0; margin: 0; }
.single-page--diaram-full {
	padding: 0;
	margin:  0;
}
.container--diaram-full {
	padding-left:  0;
	padding-right: 0;
}
.single-page--diaram-full .entry-content--diaram-full > :first-child { margin-top: 0; }
.single-page--diaram-full .entry-content--diaram-full > :last-child { margin-bottom: 0; }

.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }

/* ---- کارت محتوایی ---- */
.glass-card {
	background:    var(--clr-surface);
	border:        1px solid var(--clr-border);
	border-radius: var(--radius);
	box-shadow:    var(--glass-shadow);
}

/* ---- دکمه‌ها (اندازهٔ یکسان برای همهٔ دکمه‌های متنی) ---- */
.btn,
.diaram-home__btn,
.diaram-site-btn,
.podcast-home-card__play-btn,
.podcast-hero__play-btn,
.course-hero__enroll-btn,
.search-submit,
.search-overlay__form button[type=submit],
.comment-form input[type="submit"],
.comment-form button[type="submit"],
.diaram-smart-search__box button,
.diaram-contact-fallback-form .btn,
.diaram-contact-form-wrap .wpcf7-submit,
.diaram-contact-form-wrap input[type=submit],
.share-btn,
.player-btn--ghost,
.player-btn--tiny,
.podcast-platform-btn {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	gap:             .4rem;
	min-height:      var(--ui-btn-min-height);
	padding:         var(--ui-btn-pad-y) var(--ui-btn-pad-x);
	border-radius:   var(--radius-full);
	font-size:       var(--ui-btn-font);
	font-weight:     var(--ui-btn-weight);
	font-family:     var(--font-primary);
	line-height:     1.35;
	cursor:          pointer;
	border:          2px solid transparent;
	transition:      all var(--transition);
	text-decoration: none;
	white-space:     nowrap;
	box-sizing:      border-box;
}
.btn--primary {
	background: var(--clr-button-gradient);
	border: none;
	padding: calc(var(--ui-btn-pad-y) + 2px) calc(var(--ui-btn-pad-x) + 2px);
	overflow: hidden;
	color: var(--clr-button-text, #fff);
}
.btn--primary:hover {
	transform:  translateY(-2px);
	box-shadow: 0 8px 24px rgba(var(--clr-button-rgb),.32);
	color:      var(--clr-button-text, #fff);
}

/* جلوگیری از override لینک‌های entry-content روی دکمه‌ها و لینک‌های UI */
.entry-content a.btn,
.entry-content a.btn--primary,
.entry-content button.btn--primary,
.entry-content .diaram-home a.btn,
.entry-content .diaram-home a.btn--primary,
.entry-content .diaram-dashboard a,
a.btn--primary.post-card__cta,
a.btn--primary.post-card-row__cta,
a.btn--primary.post-card-carousel__more {
	text-decoration: none;
}
.entry-content a.btn--primary,
.entry-content button.btn--primary,
.entry-content .diaram-home a.btn--primary,
a.btn--primary.post-card__cta,
a.btn--primary.post-card-row__cta,
a.btn--primary.post-card-carousel__more {
	color: var(--clr-button-text, #fff);
}
.entry-content a.btn--primary:hover,
.entry-content .diaram-home a.btn--primary:hover,
a.btn--primary.post-card__cta:hover,
a.btn--primary.post-card-row__cta:hover,
a.btn--primary.post-card-carousel__more:hover {
	color: var(--clr-button-text, #fff);
}
.btn--secondary {
	background: rgba(var(--clr-secondary-rgb),.15);
	border-color: var(--clr-secondary);
	color:      var(--clr-secondary);
}
.btn--secondary:hover { background: var(--clr-secondary); color: #fff; }
.btn--outline {
	background:  transparent;
	border-color: var(--clr-border);
	color:       var(--clr-text);
}
.btn--outline:hover { border-color: var(--clr-primary); color: var(--clr-primary); }

/* اندازهٔ یکسان (sm/lg فقط برای سازگاری کلاس‌های قدیمی) */
.btn--sm,
.btn--lg {
	padding:   var(--ui-btn-pad-y) var(--ui-btn-pad-x);
	font-size: var(--ui-btn-font);
}

/* فونت یکسان دکمه‌های UI سفارشی (بدون تغییر شکل/padding) */
.diaram-advisor-new-chat-btn,
.diaram-advisor-send-btn,
.diaram-advisor-thread-item__action-btn,
.diaram-satisfaction-btn,
.course-sticky-enroll__btn,
.join-btn,
.ct-new-btn,
.ct-buy-credit-btn,
.ct-invite-btn,
.pc-invite-btn,
.pc-btn,
.ai-btn,
.credit-buy-btn,
.sc-psych-energy-dropdown__action,
.sc-session-play.btn--primary,
.sc-session-action {
	font-size:   var(--ui-btn-font);
	font-weight: var(--ui-btn-weight);
}

.btn--primary.btn--sm,
.btn--primary.btn--lg {
	padding: calc(var(--ui-btn-pad-y) + 2px) calc(var(--ui-btn-pad-x) + 2px);
}

.search-overlay__form button[type=submit] {
	border: none;
	padding: calc(var(--ui-btn-pad-y) + 2px) calc(var(--ui-btn-pad-x) + 2px);
	background: linear-gradient(135deg, var(--clr-primary), var(--clr-secondary));
	color: #fff;
}

.search-submit {
	border: none;
	padding: calc(var(--ui-btn-pad-y) + 2px) calc(var(--ui-btn-pad-x) + 2px);
	background: linear-gradient(135deg, var(--clr-primary), var(--clr-secondary));
	color: #fff;
}

.diaram-smart-search__box button {
	border:     none;
	background: linear-gradient(135deg, var(--clr-primary), var(--clr-secondary));
	color:      #fff;
	box-shadow: 0 8px 18px rgba(var(--clr-primary-rgb),.24);
}

/* دکمه‌های آیکون پخش/توقف پلیر — همان btn--primary، ابعاد ثابت */
.dcp-btn.btn--primary.dcp-btn--play,
.dcp-btn.btn--primary.dcp-btn--stop {
	width:           48px;
	height:          48px;
	padding:         0;
	flex-shrink:     0;
	justify-content: center;
}
.sc-floating-player .dcp-btn.btn--primary.dcp-btn--play,
.sc-floating-player .dcp-btn.btn--primary.dcp-btn--stop {
	width:      var(--dcp-ctrl-size, 48px);
	height:     var(--dcp-ctrl-size, 48px);
	min-width:  var(--dcp-ctrl-size, 48px);
	min-height: var(--dcp-ctrl-size, 48px);
}
.sc-floating-player .dcp-btn.btn--primary {
	background:   linear-gradient(140deg, var(--clr-secondary), color-mix(in srgb, var(--clr-secondary) 62%, #fff));
	border-color: transparent;
	color:        #fff;
	box-shadow:   0 12px 28px color-mix(in srgb, var(--clr-secondary) 35%, transparent);
}

.sc-floating-player .dcp-btn {
	flex-shrink:     0;
	box-sizing:      border-box;
}
.sc-floating-player .dcp-btn:not(.btn--primary) {
	width:           var(--dcp-ctrl-size, 48px);
	height:          var(--dcp-ctrl-size, 48px);
	min-width:       var(--dcp-ctrl-size, 48px);
	min-height:      var(--dcp-ctrl-size, 48px);
	border:          0;
	background:      transparent;
	color:           var(--clr-muted);
	display:         flex;
	align-items:     center;
	justify-content: center;
	border-radius:   var(--radius-full);
	padding:         0;
	cursor:          pointer;
}

.sc-floating-player .dcp-btn:not(.btn--primary):hover {
	color:      var(--clr-text);
	background: rgba(var(--clr-primary-rgb), .08);
}

.sc-floating-player .dcp-btn.btn--primary.dcp-btn--play:hover,
.sc-floating-player .dcp-btn.btn--primary.dcp-btn--stop:hover {
	transform: scale(1.03);
}

.sc-floating-player__bg {
	position:        absolute;
	inset:           0;
	z-index:         0;
	overflow:        hidden;
	pointer-events:  none;
}
.sc-floating-player__bg-blur {
	position:            absolute;
	top:                 50%;
	left:                50%;
	width:               120%;
	height:              120%;
	background-size:     cover;
	background-position: center;
	background-repeat:   no-repeat;
	filter:              blur(48px) saturate(1.35);
	transform:           translate(-50%, -50%) scale(1.05);
}
.sc-floating-player__bg-blur[hidden] {
	display: none;
}
.sc-floating-player__bg-tint {
	position:                absolute;
	inset:                   0;
	background:              rgba(255, 255, 255, .42);
	backdrop-filter:         blur(6px);
	-webkit-backdrop-filter: blur(6px);
}
.sc-floating-player__bg.is-empty {
	background: linear-gradient(
		155deg,
		rgba(var(--clr-primary-rgb), .18) 0%,
		rgba(var(--clr-secondary-rgb), .12) 55%,
		color-mix(in srgb, var(--clr-bg) 88%, var(--clr-primary)) 100%
	);
}
.sc-floating-player__bg.is-empty .sc-floating-player__bg-tint {
	background: rgba(255, 255, 255, .5);
}
.sc-floating-player > :not(.sc-floating-player__bg):not(.sc-player-modal__header):not(.dcp-queue):not(.dcp-player-main) {
	position: relative;
	z-index:  1;
}

.sc-player-modal__header {
	position:        absolute;
	top:             0;
	left:            0;
	right:           0;
	z-index:         10;
	display:         flex;
	align-items:     center;
	justify-content: flex-start;
	gap:             .5rem;
	padding:         max(1rem, env(safe-area-inset-top)) 1rem 0;
	pointer-events:  none;
	direction:       ltr;
}
.sc-player-modal__header > * {
	pointer-events: auto;
}
.sc-player-modal__header .sc-player-close {
	margin-inline-end: auto;
}
.sc-player-close,
.sc-player-modal__download-icon,
.sc-player-modal__queue-toggle {
	flex-shrink:     0;
	width:           40px;
	height:          40px;
	padding:         0;
	border:          1px solid rgba(255, 255, 255, .14);
	border-radius:   999px;
	background:      rgba(255, 255, 255, .08);
	color:           rgba(255, 255, 255, .92);
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	box-shadow:      0 6px 18px rgba(0, 0, 0, .22);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	cursor:          pointer;
	transition:      transform .2s ease, color .2s ease, background .2s ease, border-color .2s ease;
}
.sc-player-close {
	font-family: var(--font-primary, inherit);
}
.sc-player-close:hover,
.sc-player-modal__download-icon:hover,
.sc-player-modal__queue-toggle:hover {
	transform:    scale(1.05);
	background:   rgba(255, 255, 255, .16);
	border-color: rgba(255, 255, 255, .28);
	color:        #fff;
}
.sc-player-modal__queue-toggle[aria-expanded="true"] {
	background:   var(--clr-secondary);
	border-color: transparent;
	color:        #fff;
}
.sc-player-modal__download-icon.is-hidden,
.sc-player-modal__download-icon[hidden] {
	display: none !important;
}

.sc-session-play.btn--primary {
	min-width:       0;
	min-height:      0;
	padding:         .38rem .72rem;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	gap:             .35rem;
	line-height:     1.2;
}

.sc-session-row.is-playing .sc-session-play.btn--primary {
	filter: brightness(1.06);
}

/* ====================================================================
   هدر
   ==================================================================== */
.site-header {
	z-index:    var(--z-header);
	margin-top: 0 !important;
	transition: background var(--transition-slow), box-shadow var(--transition-slow);
}

.header--glass .header-main {
	background:    var(--clr-surface);
	border-bottom: 1px solid var(--clr-border);
}
.header--solid .header-main    { background: var(--clr-surface); border-bottom: 1px solid var(--clr-border); }
.header--transparent .header-main { background: transparent; }
.header--gradient .header-main {
	background: linear-gradient(180deg, rgba(var(--clr-primary-rgb),.15) 0%, transparent 100%);
}

.header--sticky { position: sticky; top: 0 !important; }
.header--sticky.is-scrolled .header-main {
	background:    var(--clr-surface);
	box-shadow:    0 10px 28px rgba(15,23,42,.08);
}

/* نوار بالایی */
.header-topbar {
	background:    rgba(219,234,254,.65);
	border-bottom: 1px solid var(--clr-border);
	padding:       .35rem 0;
	font-size:     var(--fs-sm);
}
.header-topbar__inner {
	display:         flex;
	align-items:     center;
	justify-content: space-between;
	gap:             1rem;
}
.header-topbar__text { color: var(--clr-muted); }

/* هدر اصلی */
.header-main { padding: .7rem 0; }
.header-main__inner {
	display:     flex;
	align-items: center;
	gap:         2rem;
}

/* لوگو */
.site-branding { flex-shrink: 0; }
.site-branding .custom-logo { height: 48px; width: auto; }
.site-logo-text { text-decoration: none; }
.site-logo-text__primary {
	font-size:   var(--fs-xl);
	font-weight: var(--type-weight-subtitle);
	color:       var(--clr-text);
}

/* منوی اصلی */
.main-navigation { flex: 1; }
.nav-menu {
	list-style:  none;
	padding:     0;
	margin:      0;
	display:     flex;
	align-items: center;
	gap:         .25rem;
}
.nav-menu li { position: relative; }
.nav-menu > li > a {
	display:     block;
	padding:     .5rem .85rem;
	color:       var(--clr-text);
	font-size:   var(--fs-sm);
	font-weight: var(--type-weight-body);
	border-radius: var(--radius-sm);
	transition:  all var(--transition);
}
.nav-menu > li > a:hover,
.nav-menu > li.current-menu-item > a,
.nav-menu > li.current-menu-ancestor > a {
	color:      var(--clr-primary);
	background: rgba(var(--clr-primary-rgb),.1);
}

/* زیر‌منو */
.nav-menu .sub-menu {
	position:      absolute;
	top:           calc(100% + .5rem);
	inset-inline-start: 0;
	min-width:     200px;
	list-style:    none;
	padding:       .5rem;
	background:    var(--clr-surface);
	border:        1px solid var(--clr-border);
	border-radius: var(--radius);
	box-shadow:    var(--glass-shadow);
	opacity:       0;
	visibility:    hidden;
	transform:     translateY(8px);
	transition:    all var(--transition);
	z-index:       10;
}
.nav-menu li:hover > .sub-menu,
.nav-menu li:focus-within > .sub-menu {
	opacity:    1;
	visibility: visible;
	transform:  translateY(0);
}
.nav-menu .sub-menu a {
	display:       block;
	padding:       .45rem .85rem;
	color:         var(--clr-muted);
	border-radius: var(--radius-sm);
	font-size:     var(--fs-sm);
}
.nav-menu .sub-menu a:hover { color: var(--clr-primary); background: rgba(var(--clr-primary-rgb),.08); }

/* دکمه‌های هدر */
.header-actions {
	display:     flex;
	align-items: center;
	gap:         .75rem;
	flex-shrink: 0;
}
.header-user-panel-btn {
	display:     inline-flex;
	align-items: center;
	gap:         .4rem;
	max-width:   160px;
	overflow:    hidden;
	font-family: inherit;
}
.header-user-panel-btn span {
	white-space:   nowrap;
	overflow:      hidden;
	text-overflow: ellipsis;
	max-width:     110px;
}
.header-action-btn {
	display:       flex;
	align-items:   center;
	justify-content: center;
	width:         38px;
	height:        38px;
	background:    rgba(var(--clr-button-rgb),.08);
	border:        1px solid var(--glass-border);
	border-radius: var(--radius-full);
	cursor:        pointer;
	color:         var(--clr-text);
	transition:    all var(--transition);
}
.header-action-btn svg { width: 18px; height: 18px; }
.header-action-btn:hover { background: rgba(var(--clr-button-rgb),.15); border-color: var(--clr-button); color: var(--clr-button); }
.mobile-menu-toggle { display: none; }

/* منوی موبایل */
.mobile-nav {
	overflow:  hidden;
	max-height: 0;
	transition: max-height var(--transition-slow);
	background: var(--clr-surface);
	border-top: 1px solid var(--clr-border);
}
.mobile-nav.is-open { max-height: 600px; }
.mobile-nav__menu {
	list-style: none;
	padding:    1rem 0;
	margin:     0;
}
.mobile-nav__menu li > a {
	display:  block;
	padding:  .7rem 1rem;
	color:    var(--clr-text);
	border-radius: var(--radius-sm);
	transition: all var(--transition);
}
.mobile-nav__menu li > a:hover { color: var(--clr-primary); background: rgba(var(--clr-primary-rgb),.1); }

/* جستجو overlay */
.search-overlay {
	position:   fixed;
	inset:      0;
	background: rgba(15,23,42,.35);
	z-index:    var(--z-search-overlay);
	display:    flex;
	align-items: center;
	justify-content: center;
	opacity:    0;
	visibility: hidden;
	transition: all var(--transition-slow);
}
.search-overlay.is-open { opacity: 1; visibility: visible; }
.search-overlay__inner { width: min(640px, 90vw); position: relative; }
.search-overlay__close {
	position:      absolute;
	top:           -3rem;
	inset-inline-end: 0;
	background:    var(--clr-surface);
	border:        1px solid var(--clr-border);
	border-radius: var(--radius-full);
	width:         36px;
	height:        36px;
	color:         var(--clr-text);
	cursor:        pointer;
	display:       flex;
	align-items:   center;
	justify-content: center;
}
.search-overlay__form .search-form { display: flex; gap: .5rem; }
.search-overlay__form input[type=search] {
	flex:          1;
	padding:       1rem 1.5rem;
	background:    var(--clr-surface);
	border:        1px solid var(--clr-border);
	border-radius: var(--radius-full);
	color:         var(--clr-text);
	font-size:     var(--fs-lg);
	font-family:   var(--font-primary);
}
.search-overlay__form input[type=search]::placeholder { color: var(--clr-muted); }
.search-overlay__form input[type=search]:focus { outline: none; border-color: var(--clr-primary); }
/* مودال ورود/عضویت هدر */
.diaram-header-auth-modal {
	position: fixed;
	inset: 0;
	z-index: 10050;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
	padding-bottom: max(1rem, env(safe-area-inset-bottom));
	opacity: 0;
	visibility: hidden;
	transition: opacity .22s ease, visibility .22s ease;
	pointer-events: none;
}
.diaram-header-auth-modal.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.diaram-header-auth-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, .55);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}
.diaram-header-auth-modal__panel {
	position: relative;
	z-index: 1;
	width: min(460px, 100%);
	max-height: min(90vh, 720px);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: var(--clr-surface, #fff);
	border-radius: 24px;
	border: 1px solid var(--clr-border);
	box-shadow: 0 28px 90px rgba(15, 23, 42, .22);
	font-family: var(--font-primary, inherit);
}
.diaram-header-auth-modal__hdr {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	padding: 1rem 1.25rem;
	border-bottom: 1px solid var(--clr-border);
	flex-shrink: 0;
}
.diaram-header-auth-modal__title {
	margin: 0;
	font-size: var(--fs-h4);
	font-weight: var(--type-weight-subtitle);
	color: var(--clr-text);
}
.diaram-header-auth-modal__close {
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 12px;
	background: rgba(var(--clr-primary-rgb), .08);
	color: var(--clr-text);
	font-size: var(--type-title);
	line-height: 1;
	cursor: pointer;
	font-family: inherit;
	transition: background .15s ease;
}
.diaram-header-auth-modal__close:hover,
.diaram-header-auth-modal__close:focus-visible {
	background: rgba(var(--clr-primary-rgb), .14);
}
.diaram-header-auth-modal__body {
	padding: 1rem 1.25rem 1.35rem;
	overflow-y: auto;
	flex: 1;
	min-height: 0;
	-webkit-overflow-scrolling: touch;
}
.diaram-header-auth-modal__body .diaram-auth-box {
	max-width: none;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}
.diaram-header-auth-modal__body .btn {
	justify-content: center;
	text-align: center;
}
.diaram-header-auth-modal__body .diaram-auth-tabs .diaram-auth-tab {
	flex: 1;
	text-align: center;
}
body.diaram-header-auth-modal-open {
	overflow: hidden;
}

.diaram-auth-field .comment-input {
	width:         100%;
	padding:       .7rem .85rem;
	border:        1px solid rgba(0, 0, 0, .1);
	border-radius: var(--radius-sm);
	background:    var(--clr-surface);
	font-family:   var(--font-primary);
	font-size:     var(--fs-sm);
	color:         var(--clr-text);
	transition:    border-color var(--transition), box-shadow var(--transition);
	box-sizing:    border-box;
}

.diaram-auth-field .comment-input:focus {
	outline:      none;
	border-color: var(--clr-primary);
	box-shadow:   0 0 0 3px rgba(var(--clr-primary-rgb), .12);
}

/* نوار پیشرفت مطالعه */
.reading-progress {
	position:   fixed;
	top:        0;
	inset-inline-start: 0;
	height:     3px;
	width:      0%;
	background: linear-gradient(90deg, var(--clr-primary), var(--clr-secondary));
	z-index:    9999;
	transition: width .1s linear;
}

/* ====================================================================
   پریلودینگ صفحات
   ==================================================================== */
.diaram-page-preloader {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	background: radial-gradient(circle at 50% 45%, #ffffff 0%, var(--diaram-preload-bg, #f7fbfb) 70%, #eef6f5 100%);
	transition: opacity var(--diaram-preload-fade, 600ms) ease, visibility var(--diaram-preload-fade, 600ms) ease;
}

html.diaram-preloader-active {
	overflow: hidden;
}

html.diaram-preloader-active body {
	overflow: hidden;
}

.diaram-page-preloader.is-hiding,
.diaram-page-preloader.is-done {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.diaram-page-preloader__scene {
	position: relative;
	width: 120px;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.diaram-page-preloader__glow {
	position: absolute;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(var(--clr-secondary-rgb, 20, 184, 166), 0.3), transparent 70%);
	animation: diaram-preload-breathe 3s ease-in-out infinite;
}

@keyframes diaram-preload-breathe {
	0%, 100% { transform: scale(0.7); opacity: 0.5; }
	50% { transform: scale(1.25); opacity: 0.95; }
}

.diaram-page-preloader__core {
	position: absolute;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: linear-gradient(90deg, var(--clr-primary, #008080), var(--clr-secondary, #14b8a6));
	box-shadow: 0 0 14px rgba(var(--clr-secondary-rgb, 20, 184, 166), 0.55);
	animation: diaram-preload-pulse 3s ease-in-out infinite;
}

@keyframes diaram-preload-pulse {
	0%, 100% { transform: scale(0.85); }
	50% { transform: scale(1.15); }
}

.diaram-page-preloader__ripple {
	position: absolute;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 1px solid var(--clr-secondary, #14b8a6);
	opacity: 0;
	animation: diaram-preload-ripple 3s ease-out infinite;
}

.diaram-page-preloader__ripple:nth-child(2) {
	animation-delay: 1.5s;
}

@keyframes diaram-preload-ripple {
	0% { transform: scale(0.6); opacity: 0.5; }
	100% { transform: scale(3); opacity: 0; }
}

.diaram-page-preloader__progress {
	position: absolute;
	width: 120px;
	height: 120px;
	transform: rotate(-90deg);
}

.diaram-page-preloader__track {
	fill: none;
	stroke: rgba(var(--clr-secondary-rgb, 20, 184, 166), 0.12);
	stroke-width: 2.5;
}

.diaram-page-preloader__bar {
	fill: none;
	stroke: url(#diaram-preloader-gradient);
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-dashoffset: 339;
	transition: stroke-dashoffset 0.35s ease;
	filter: drop-shadow(0 0 4px rgba(var(--clr-secondary-rgb, 20, 184, 166), 0.45));
}

.diaram-page-preloader__media {
	display: block;
	max-width: min(220px, 62vw);
	max-height: min(220px, 42vh);
	width: auto;
	height: auto;
	object-fit: contain;
}

.diaram-page-preloader__custom {
	width: 100%;
	max-width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.5rem;
}

.diaram-page-preloader--html,
.diaram-page-preloader--gif,
.diaram-page-preloader--image {
	background: var(--diaram-preload-bg, #f7fbfb);
}

/* ====================================================================
   پریلودینگ: نقاط موجی (Bouncing Dots)
   ==================================================================== */
.diaram-page-preloader--dots .diaram-page-preloader__scene {
	width: auto;
	height: auto;
	flex-direction: row;
	gap: 12px;
}

.diaram-page-preloader__dot {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	animation: diaram-preload-dot-bounce 1.4s ease-in-out infinite;
}

.diaram-page-preloader__dot:nth-child(1) {
	background: linear-gradient(135deg, var(--clr-primary, #2563eb), var(--clr-secondary, #0ea5e9));
	box-shadow: 0 4px 14px rgba(var(--clr-primary-rgb, 37, 99, 235), 0.4);
}

.diaram-page-preloader__dot:nth-child(2) {
	background: linear-gradient(135deg, var(--clr-secondary, #0ea5e9), var(--clr-button, #008080));
	box-shadow: 0 4px 14px rgba(var(--clr-secondary-rgb, 14, 165, 233), 0.4);
	animation-delay: 0.2s;
}

.diaram-page-preloader__dot:nth-child(3) {
	background: linear-gradient(135deg, var(--clr-button, #008080), var(--clr-button-gradient-end, #14b8a6));
	box-shadow: 0 4px 14px rgba(var(--clr-button-rgb, 0, 128, 128), 0.4);
	animation-delay: 0.4s;
}

@keyframes diaram-preload-dot-bounce {
	0%, 80%, 100% { transform: translateY(0) scale(0.85); opacity: 0.6; }
	40% { transform: translateY(-18px) scale(1.1); opacity: 1; }
}

/* ====================================================================
   پریلودینگ: شکل متحرک (Morphing Shape)
   ==================================================================== */
.diaram-page-preloader--morphing .diaram-page-preloader__scene {
	width: 110px;
	height: 110px;
}

.diaram-page-preloader__morph {
	width: 62px;
	height: 62px;
	background: linear-gradient(135deg, var(--clr-primary, #2563eb), var(--clr-secondary, #0ea5e9), var(--clr-button, #008080));
	background-size: 200% 200%;
	animation: diaram-preload-morph-shape 3s ease-in-out infinite, diaram-preload-morph-gradient 4s ease infinite;
	box-shadow: 0 8px 32px rgba(var(--clr-primary-rgb, 37, 99, 235), 0.35);
}

@keyframes diaram-preload-morph-shape {
	0%   { border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%; transform: rotate(0deg)   scale(0.9);  }
	25%  { border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%; transform: rotate(90deg)  scale(1.05); }
	50%  { border-radius: 50% 50% 50% 50%;                    transform: rotate(180deg) scale(0.95); }
	75%  { border-radius: 40% 70% 30% 60% / 70% 30% 60% 40%; transform: rotate(270deg) scale(1.05); }
	100% { border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%; transform: rotate(360deg) scale(0.9);  }
}

@keyframes diaram-preload-morph-gradient {
	0%, 100% { background-position: 0% 50%; }
	50%       { background-position: 100% 50%; }
}

/* ====================================================================
   پریلودینگ: حلقه‌های مداری (Orbital Rings)
   ==================================================================== */
.diaram-page-preloader--orbit .diaram-page-preloader__scene {
	width: 130px;
	height: 130px;
}

.diaram-page-preloader__orbit-ring {
	position: absolute;
	border-radius: 50%;
	border: 2.5px solid transparent;
}

.diaram-page-preloader__orbit-ring--1 {
	width: 100px;
	height: 100px;
	border-top-color: var(--clr-primary, #2563eb);
	border-right-color: rgba(var(--clr-primary-rgb, 37, 99, 235), 0.2);
	animation: diaram-preload-orbit-spin 1.8s linear infinite;
	box-shadow: 0 0 12px rgba(var(--clr-primary-rgb, 37, 99, 235), 0.3);
}

.diaram-page-preloader__orbit-ring--2 {
	width: 70px;
	height: 70px;
	border-top-color: var(--clr-secondary, #0ea5e9);
	border-bottom-color: rgba(var(--clr-secondary-rgb, 14, 165, 233), 0.2);
	animation: diaram-preload-orbit-spin 1.2s linear infinite reverse;
	box-shadow: 0 0 10px rgba(var(--clr-secondary-rgb, 14, 165, 233), 0.3);
}

.diaram-page-preloader__orbit-ring--3 {
	width: 42px;
	height: 42px;
	border-top-color: var(--clr-button-gradient-end, #14b8a6);
	border-left-color: rgba(var(--clr-button-rgb, 0, 128, 128), 0.2);
	animation: diaram-preload-orbit-spin 0.8s linear infinite;
	box-shadow: 0 0 8px rgba(var(--clr-button-rgb, 0, 128, 128), 0.3);
}

.diaram-page-preloader__orbit-core {
	position: absolute;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--clr-primary, #2563eb), var(--clr-secondary, #0ea5e9));
	box-shadow: 0 0 18px rgba(var(--clr-primary-rgb, 37, 99, 235), 0.6);
	animation: diaram-preload-orbit-core-pulse 1.8s ease-in-out infinite;
}

@keyframes diaram-preload-orbit-spin {
	0%   { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

@keyframes diaram-preload-orbit-core-pulse {
	0%, 100% { transform: scale(0.85); opacity: 0.8; }
	50%       { transform: scale(1.2);  opacity: 1; }
}

/* ====================================================================
   قهرمان صفحه (Page Hero)
   ==================================================================== */
.page-hero {
	position:    relative;
	padding:     5rem 0 3rem;
	overflow:    hidden;
}
.page-hero::before {
	content:    '';
	position:   absolute;
	inset:      0;
	background: radial-gradient(ellipse at center, rgba(var(--clr-primary-rgb),.15) 0%, transparent 70%);
}
.page-hero--blog::after,
.page-hero--archive::after,
.page-hero--category::after,
.page-hero--products::after,
.page-hero--podcasts::after {
	display: none;
}
.page-hero__title {
	font-size:    var(--type-title);
	font-weight: var(--type-weight-subtitle);
	background:   linear-gradient(135deg, var(--clr-text), rgba(var(--clr-primary-rgb),.8));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	position:     relative;
}
.page-hero__desc { color: var(--clr-muted); max-width: 560px; position: relative; }
.blog-hero {
	position: relative;
	max-width: 720px;
	margin: 0 auto;
	text-align: center;
}
.blog-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: .8rem;
	padding: .28rem .85rem;
	border-radius: var(--radius-full);
	background: rgba(var(--clr-primary-rgb),.1);
	color: var(--clr-primary);
	font-size: var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
	letter-spacing: .04em;
}
.blog-hero__desc {
	margin: 0 auto 1.15rem;
	font-size: var(--fs-lg);
	line-height: 1.9;
}
.blog-hero__meta {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: .6rem;
	margin-bottom: 1rem;
}
.blog-hero__chip {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	padding: .42rem .85rem;
	border: 1px solid rgba(var(--clr-primary-rgb),.14);
	border-radius: var(--radius-full);
	background: var(--clr-surface);
	color: var(--clr-muted);
	font-size: var(--fs-sm);
	box-shadow: none;
}
.blog-hero__chip strong { color: var(--clr-primary); }

.page-hero .post-hero__image {
	position: absolute;
	inset: 0;
}
.page-hero .post-hero__image img {
	width: 100%; height: 100%;
	object-fit: cover;
	opacity: .3;
}
.post-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, rgba(var(--clr-primary-rgb),.2), var(--clr-bg));
}
.post-hero__content { position: relative; padding: 4rem 0 2rem; }

.page-header-simple {
	padding:       3rem 0 2rem;
	border-bottom: 1px solid var(--clr-border);
	margin-bottom: 2.5rem;
}
.page-title {
	font-size:   var(--type-title);
	font-weight: var(--type-weight-subtitle);
}

/* ====================================================================
   لیست مطالب
   ==================================================================== */
.blog-layout {
	display: flex;
	gap:     2.25rem;
	padding: 3rem 0;
	align-items: flex-start;
}
.blog-posts {
	flex:      1;
	min-width: 0;
	position:  relative;
}

.posts-grid {
	display:               grid;
	gap:                   1.5rem;
	grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
}
.posts-grid--list { grid-template-columns: 1fr; }
.posts-grid--magazine { grid-template-columns: 1fr; }
.posts-grid--magazine .post-card:first-child { grid-column: 1 / -1; }
.blog-layout--grid .posts-grid .post-card:first-child {
	grid-column: span 2;
}
.blog-layout--grid .posts-grid .post-card:first-child .post-card__title {
	font-size: var(--type-section);
}

/* کارت مطلب */
.post-card {
	display:        flex;
	flex-direction: column;
	overflow:       hidden;
	position:       relative;
	isolation:      isolate;
	background:     var(--clr-surface);
	border-color:   rgba(var(--clr-primary-rgb),.12);
	transition:     transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.post-card::before {
	content:  '';
	position: absolute;
	inset:    0 0 auto;
	height:   3px;
	background: linear-gradient(90deg, var(--clr-primary), var(--clr-secondary));
	z-index:  2;
}
.post-card__glow {
	position: absolute;
	inset:    auto 1.5rem -3.5rem;
	height:   6rem;
	background: radial-gradient(ellipse at center, rgba(var(--clr-primary-rgb),.22), transparent 70%);
	opacity:  0;
	transition: opacity var(--transition);
	z-index: -1;
}
.post-card:hover {
	transform:  translateY(-4px);
	border-color: rgba(var(--clr-primary-rgb),.24);
	box-shadow: 0 20px 46px rgba(37,99,235,.12);
}
.post-card:hover .post-card__glow { opacity: 1; }
.post-card__image-link { display: block; overflow: hidden; }
.post-card__image-wrap { position: relative; overflow: hidden; aspect-ratio: 16 / 10; }
.post-card__thumb,
.post-thumbnail--placeholder.post-card__thumb {
	width:      100%;
	height:     100%;
	object-fit: cover;
	transition: transform var(--transition-slow);
}
.post-thumbnail--placeholder.post-card__thumb {
	display:         flex;
	align-items:     center;
	justify-content: center;
	background:      linear-gradient(135deg, rgba(var(--clr-primary-rgb),.12), rgba(var(--clr-secondary-rgb),.16)) !important;
}
.post-thumbnail--placeholder.post-card__thumb svg { width: 42%; height: 42%; }
.post-card:hover .post-card__thumb { transform: scale(1.06); }
.post-card__image-overlay {
	position: absolute;
	inset:    0;
	background: linear-gradient(to top, rgba(15,23,42,.34), transparent 54%);
	pointer-events: none;
}
.post-card__image-wrap--placeholder {
	display:         flex;
	align-items:     center;
	justify-content: center;
	background:      rgba(var(--clr-primary-rgb),.08);
}

.post-format-badge {
	position:            absolute;
	top:                 .75rem;
	inset-inline-start:  .75rem;
	display:             inline-flex;
	align-items:         center;
	justify-content:     center;
	background:          linear-gradient(135deg, var(--clr-primary), var(--clr-accent));
	color:               #fff;
	font-size:           var(--ui-badge-font);
	font-weight:         var(--ui-badge-weight);
	padding:             var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	border-radius:       var(--radius-full);
	line-height:         1.2;
}

.post-card__body {
	display:        flex;
	flex-direction: column;
	flex:           1;
	padding:        1.35rem;
	gap:            .7rem;
}
.post-card__meta {
	display:     flex;
	align-items: center;
	gap:         .75rem;
	flex-wrap:   wrap;
	font-size:   var(--fs-sm);
}
.post-cat {
	display:       inline-flex;
	align-items:   center;
	padding:       var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	background:    rgba(var(--clr-primary-rgb),.15);
	color:         var(--clr-primary);
	border-radius: var(--radius-full);
	font-size:     var(--ui-badge-font);
	font-weight:   var(--ui-badge-weight);
	line-height:   1.2;
}
.post-card__date { color: var(--clr-muted); }

.post-card__title {
	margin-bottom: 0;
	letter-spacing: -.01em;
}
.post-card__title a { color: var(--clr-text); }
.post-card__title a:hover { color: var(--clr-primary); }

.post-card__excerpt {
	color:       var(--clr-muted);
	font-size:   var(--type-meta);
	flex:        1;
	line-height: 1.85;
}

.post-card__footer {
	display:     flex;
	align-items: center;
	gap:         .75rem;
	flex-wrap:   wrap;
	padding-top: .75rem;
	border-top:  1px solid var(--clr-border);
	font-size:   var(--fs-sm);
	color:       var(--clr-muted);
	margin-top:  auto;
}
.post-card__author { display: flex; align-items: center; gap: .4rem; }
.post-card__avatar {
	border-radius: var(--radius-full);
	width:         26px;
	height:        26px;
	box-shadow:    0 0 0 3px rgba(var(--clr-primary-rgb),.1);
}
.post-card__reading-time,
.post-card__comments {
	display:     flex;
	align-items: center;
	gap:         .3rem;
}
.post-card__reading-time svg,
.post-card__comments svg { width: 14px; height: 14px; }
.post-card__read-more {
	margin-inline-start: auto;
	display:    flex;
	align-items: center;
	gap:         .3rem;
	color:       var(--clr-primary);
	font-weight: var(--type-weight-subtitle);
}
.post-card__read-more svg { width: 16px; height: 16px; transition: transform var(--transition); }
[dir="rtl"] .post-card__read-more svg { transform: scaleX(-1); }
.post-card__read-more:hover svg { transform: translateX(3px); }
[dir="rtl"] .post-card__read-more:hover svg { transform: scaleX(-1) translateX(3px); }

.posts-grid--list .post-card {
	display:               grid;
	grid-template-columns: 280px 1fr;
}
.posts-grid--list .post-card__image-link { min-height: 100%; }
.posts-grid--list .post-card__image-wrap { height: 100%; aspect-ratio: auto; }

/* ====================================================================
   مطلب تکی - بازطراحی مدرن
   ==================================================================== */
.single-post {
	--article-radius: clamp(22px, 3vw, 34px);
	--article-radius-sm: clamp(16px, 2vw, 24px);
	--article-edge: rgba(var(--clr-primary-rgb), .14);
	--article-soft-edge: rgba(148, 163, 184, .18);
	--article-shadow: 0 24px 70px rgba(15, 23, 42, .09);
	--article-shadow-strong: 0 34px 90px rgba(15, 23, 42, .16);
	--article-surface: rgba(255, 255, 255, .84);
	--article-surface-solid: #fff;
}
.single-post__layout {
	display: block;
	max-width: 840px;
	margin: 0 auto;
	padding: clamp(1.4rem, 3vw, 3rem) 0 clamp(2rem, 4vw, 4rem);
}
.single-post__content {
	min-width: 0;
}
.post-hero {
	max-width: none;
	margin: 0;
	padding: clamp(1.5rem, 4vw, 2.5rem) 0 clamp(1rem, 3vw, 1.5rem);
	text-align: center;
	position: relative;
}
.post-hero__tag {
	display: inline-block;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	padding: 6px 16px;
	border-radius: var(--radius-full);
	color: #fff;
	background: var(--clr-button-gradient);
	margin-bottom: 22px;
	text-decoration: none;
	transition: transform .25s ease, box-shadow .25s ease;
}
.post-hero__tag:hover {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 4px 14px rgba(var(--clr-button-rgb), .25);
}
.post-hero__title,
.single-post .post-hero .post-title {
	max-width: none;
	margin: 0 0 18px;
	color: var(--clr-text);
	font-size:var(--type-title);
	font-weight: var(--type-weight-title);
	line-height: 1.4;
	letter-spacing: -.5px;
}
.post-hero__lead {
	max-width: 620px;
	margin: 0 auto;
	color: var(--clr-muted);
	font-size: var(--type-subtitle);
	line-height: 1.95;
}
.post-hero__lead p {
	margin: 0;
}
.post-hero-breadcrumb {
	margin: 0 0 .75rem;
}
.post-hero-breadcrumb .breadcrumb {
	margin: 0;
	justify-content: center;
}
.post-hero-breadcrumb .breadcrumb-list {
	justify-content: center;
	gap: 0;
	line-height: 1.2;
}
.post-hero-breadcrumb .breadcrumb-link,
.post-hero-breadcrumb .breadcrumb-item.active .breadcrumb-current {
	max-width: min(140px, 36vw);
	padding: 0;
}
.post-hero-breadcrumb .breadcrumb-home__icon {
	width: 10px;
	height: 10px;
}
.post-hero-breadcrumb .breadcrumb-sep__icon {
	width: 9px;
	height: 9px;
}
.post-hero-breadcrumb .breadcrumb-item.active .breadcrumb-current {
	font-weight: var(--type-weight-subtitle);
}
.post-featured-image {
	max-width: 840px;
	margin: 0 auto clamp(1.2rem, 3vw, 2rem);
}
.post-featured-image__img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--article-radius);
	border: 1px solid var(--clr-border);
	box-shadow: var(--article-shadow);
}
.post-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;
	color: var(--clr-muted);
	font-size: var(--fs-sm);
}
.post-meta__author,
.post-meta__reading-time,
.post-meta__views {
	display: flex;
	align-items: center;
	gap: .35rem;
}
.author-avatar {
	width: 32px;
	height: 32px;
	border-radius: var(--radius-full);
}
.post-meta__author a {
	color: var(--clr-text);
	font-weight: var(--type-weight-subtitle);
}
.post-meta__reading-time svg,
.post-meta__views svg {
	width: 15px;
	height: 15px;
}
.entry-content {
	color: var(--clr-text);
	font-size: var(--fs-body);
	line-height: 1.9;
}
.single-post__content > .entry-content {
	padding: clamp(1.25rem, 3vw, 2.6rem);
	border-radius: var(--article-radius);
}
.single-post__article-body {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .75);
	background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(255, 255, 255, .88));
	box-shadow: var(--article-shadow);
}
.single-post__article-body > * {
	position: relative;
	z-index: 1;
}
.single-post__article-body > :first-child {
	margin-top: 0;
}
.single-post__article-body > :last-child {
	margin-bottom: 0;
}
/* فقط تیترهای بدون کلاس داخل محتوا — کارت‌ها و کامپوننت‌های UI مستثنا */
.entry-content :where(h1, h2, h3, h4, h5, h6):not([class]) {
	color: var(--clr-text);
}
.entry-content :where(h1):not([class]) { font-size: var(--fs-h1); margin-top: 1.5em; font-weight: var(--font-weight-bold); }
.entry-content :where(h2):not([class]) { font-size: var(--fs-h2); margin-top: 2em; font-weight: var(--font-weight-bold); }
.entry-content :where(h3):not([class]) { font-size: var(--fs-h3); margin-top: 1.5em; font-weight: var(--font-weight-semibold); }
.entry-content :where(h4):not([class]) { font-size: var(--fs-h4); margin-top: 1.5em; font-weight: var(--font-weight-semibold); }
.entry-content :where(h5):not([class]) { font-size: var(--fs-h5); margin-top: 1.25em; font-weight: var(--font-weight-semibold); }
.entry-content :where(h6):not([class]) { font-size: var(--fs-h6); margin-top: 1.25em; color: var(--clr-muted); font-weight: var(--font-weight-semibold); }
.entry-content p  { margin-bottom: 1.25em; }
.entry-content a  { color: var(--clr-primary); text-decoration: underline; text-underline-offset: 3px; }
.single-post__article-body h2,
.single-post__article-body h3 {
	position: relative;
	padding-inline-start: 1rem;
}
.single-post__article-body h2::before,
.single-post__article-body h3::before {
	content: '';
	position: absolute;
	inset-inline-start: 0;
	top: .2em;
	width: 5px;
	height: 1.15em;
	border-radius: var(--radius-full);
	background: linear-gradient(180deg, var(--clr-primary), var(--clr-secondary));
}
.single-post__article-body p {
	color: rgba(15, 23, 42, .78);
}
.single-post__article-body a {
	font-weight: var(--type-weight-subtitle);
	text-decoration-thickness: 1px;
	text-decoration-color: rgba(var(--clr-primary-rgb), .32);
	transition: color .2s ease, text-decoration-color .2s ease;
}
.single-post__article-body a:hover {
	color: var(--clr-secondary);
	text-decoration-color: currentColor;
}
.entry-content blockquote {
	position: relative;
	margin: 1.7rem 0;
	padding: 1.2rem clamp(1.1rem, 3vw, 1.6rem);
	color: rgba(15, 23, 42, .76);
	font-style: normal;
	border: 1px solid rgba(var(--clr-primary-rgb), .13);
	border-inline-start: 5px solid var(--clr-primary);
	border-radius: var(--article-radius-sm);
	background:
		linear-gradient(135deg, rgba(var(--clr-primary-rgb), .08), rgba(var(--clr-secondary-rgb), .06)),
		rgba(255, 255, 255, .72);
	box-shadow: 0 18px 40px rgba(15, 23, 42, .06);
}
[dir="rtl"] .entry-content blockquote {
	border-inline-start: 1px solid rgba(var(--clr-primary-rgb), .13);
	border-inline-end: 5px solid var(--clr-primary);
	border-radius: var(--article-radius-sm);
}
.entry-content code {
	padding: .17em .44em;
	color: #0f766e;
	font-size:var(--type-body);
	border: 1px solid rgba(var(--clr-secondary-rgb), .16);
	border-radius: .55rem;
	background: rgba(var(--clr-secondary-rgb), .09);
}
.entry-content pre {
	margin: 1.6rem 0;
	padding: 1.2rem;
	overflow-x: auto;
	color: #dbeafe;
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: var(--article-radius-sm);
	background: #07111f;
	box-shadow: 0 24px 48px rgba(15, 23, 42, .18);
}
.entry-content pre code {
	padding: 0;
	color: inherit;
	border: 0;
	background: none;
}
.entry-content img {
	margin: 1.8rem auto;
	border-radius: var(--article-radius-sm);
	box-shadow: 0 24px 54px rgba(15, 23, 42, .11);
}
.entry-content ul,
.entry-content ol {
	margin-bottom: 1.35em;
	padding-inline-start: 1.4rem;
}
.entry-content li {
	margin-bottom: .48em;
}
.entry-content table {
	display: block;
	width: 100%;
	margin: 1.6rem 0;
	overflow-x: auto;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--article-soft-edge);
	border-radius: var(--article-radius-sm);
	background: rgba(255, 255, 255, .72);
}
.entry-content th,
.entry-content td {
	padding: .85rem 1rem;
	border: 0;
	border-bottom: 1px solid var(--article-soft-edge);
	text-align: start;
	white-space: nowrap;
}
.entry-content th {
	color: #0f172a;
	font-weight: var(--type-weight-title);
	background: rgba(var(--clr-primary-rgb), .08);
}
.entry-content tr:last-child td {
	border-bottom: 0;
}
.image-lightbox {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: clamp(1rem, 3vw, 2rem);
	background: rgba(2, 6, 23, .78);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s ease, visibility .25s ease;
}
.image-lightbox.is-open {
	opacity: 1;
	visibility: visible;
}
.image-lightbox__img {
	max-width: min(1120px, 92vw);
	max-height: 88vh;
	border-radius: var(--article-radius-sm);
	box-shadow: 0 40px 100px rgba(0, 0, 0, .45);
}
.image-lightbox__close {
	position: absolute;
	top: 1.25rem;
	inset-inline-end: 1.25rem;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(255, 255, 255, .55);
	border-radius: var(--radius-full);
	background: rgba(255, 255, 255, .88);
	color: #0f172a;
	font-size: var(--type-title);
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 16px 34px rgba(15, 23, 42, .22);
}
.post-hero__author,
.post-author-card {
	display: flex;
	align-items: center;
	gap: 1rem;
}
.post-author-card {
	position: relative;
	max-width: 840px;
	margin: 0 auto clamp(1.2rem, 3vw, 2rem);
	padding: 1.1rem;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .72);
	border-radius: var(--article-radius-sm);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .7)),
		radial-gradient(circle at 100% 0, rgba(var(--clr-primary-rgb), .12), transparent 34%);
	box-shadow: var(--article-shadow);
}
.post-hero__avatar {
	width: 48px;
	height: 48px;
	flex-shrink: 0;
	border: 3px solid rgba(255, 255, 255, .8);
	box-shadow: 0 10px 22px rgba(15, 23, 42, .1);
}
.post-hero__author-body {
	display: flex;
	flex-direction: column;
	gap: .18rem;
	min-width: 0;
}
.post-hero__author-label {
	color: var(--clr-muted);
	font-size: 13px;
	font-weight: var(--type-weight-subtitle);
}
.post-hero__author-name {
	color: #0f172a;
	font-size: 13px;
	font-weight: var(--type-weight-title);
}
.post-hero__author-name:hover {
	color: var(--clr-primary);
}
.post-hero__author-bio {
	margin: .25rem 0 0;
	color: rgba(100, 116, 139, .95);
	font-size: 13px;
	line-height: 1.85;
}
.post-tags {
	display: flex;
	flex-wrap: wrap;
	gap: .55rem;
	margin: 1.35rem 0;
}
.post-tags--neo {
	padding: .95rem;
	border: 1px solid rgba(255, 255, 255, .72);
	border-radius: var(--article-radius-sm);
	background: rgba(255, 255, 255, .66);
	box-shadow: 0 16px 36px rgba(15, 23, 42, .06);
}
.tag-badge {
	display: inline-flex;
	align-items: center;
	padding: .42rem .78rem;
	color: rgba(15, 23, 42, .72);
	font-size: var(--type-body);
	font-weight: 850;
	line-height: 1.2;
	border: 1px solid rgba(var(--clr-primary-rgb), .12);
	border-radius: var(--radius-full);
	background: rgba(var(--clr-primary-rgb), .06);
	transition: transform .2s ease, box-shadow .2s ease, color .2s ease, background .2s ease, border-color .2s ease;
}
.tag-badge:hover {
	color: var(--clr-primary);
	background: rgba(var(--clr-primary-rgb), .12);
	border-color: rgba(var(--clr-primary-rgb), .28);
	transform: translateY(-2px);
	box-shadow: 0 12px 24px rgba(var(--clr-primary-rgb), .12);
}
.share-buttons {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .7rem;
	margin: 1.5rem 0;
	padding: 1.25rem;
}
.post-share-shell {
	margin: 1.35rem 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .74);
	border-radius: var(--article-radius-sm);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .66)),
		radial-gradient(circle at 0 100%, rgba(var(--clr-secondary-rgb), .13), transparent 36%);
	box-shadow: var(--article-shadow);
}
.post-share-shell .share-buttons {
	margin: 0;
	padding: 1rem;
}
.share-label {
	color: rgba(100, 116, 139, .95);
	font-size: var(--fs-sm);
	font-weight: var(--type-weight-title);
}
.share-btn {
	gap: .35rem;
	color: #0f172a;
	border: 1px solid rgba(148, 163, 184, .22);
	background: rgba(255, 255, 255, .64);
	box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
}
.share-btn svg {
	width: 16px;
	height: 16px;
}
.share-btn:hover {
	color: #fff;
	transform: translateY(-2px);
}
.share-btn--twitter:hover  { background: #1da1f2; border-color: #1da1f2; }
.share-btn--telegram:hover { background: #0088cc; border-color: #0088cc; }
.share-btn--whatsapp:hover { background: #25d366; border-color: #25d366; }
.share-btn--linkedin:hover { background: #0077b5; border-color: #0077b5; }
.author-box {
	display: flex;
	gap: 1.5rem;
	align-items: flex-start;
	margin: 2rem 0;
	padding: 1.75rem;
}
.author-box__avatar {
	flex-shrink: 0;
	border-radius: var(--radius-full);
}
.author-box__name {
	margin-bottom: .25rem;
	font-size: var(--type-body);
	font-weight: var(--font-weight-semibold);
}
.author-box__name a {
	color: var(--clr-text);
}
.author-box__name a:hover {
	color: var(--clr-primary);
}
.author-box__bio {
	margin: 0;
	color: var(--clr-muted);
	font-size: var(--type-body);
}
.post-navigation {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.75rem 0;
}
.post-nav-link {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: .3rem;
	min-height: 0;
	padding: .85rem 1rem;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .74);
	border-radius: var(--article-radius-sm);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .68)),
		radial-gradient(circle at 100% 0, rgba(var(--clr-primary-rgb), .1), transparent 36%);
	box-shadow: 0 18px 42px rgba(15, 23, 42, .07);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.post-nav-link:hover {
	border-color: rgba(var(--clr-primary-rgb), .28);
	transform: translateY(-3px);
	box-shadow: 0 24px 54px rgba(15, 23, 42, .11);
}
.post-nav-link--next {
	text-align: end;
}
.post-nav-link__label {
	color: var(--clr-primary);
	font-size: var(--type-label);
	font-weight: var(--font-weight-semibold);
	letter-spacing: .04em;
	text-transform: uppercase;
}
.post-nav-link__title {
	color: #0f172a;
	font-size: var(--type-meta);
	font-weight: var(--font-weight-semibold);
	line-height: 1.45;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.related-posts {
	margin: 2.2rem 0;
}
.related-posts__title {
	margin-bottom: 1.25rem;
}
.related-posts__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 1.25rem;
}

/* ====================================================================
   سایدبار
   ==================================================================== */
.sidebar {
	width:       340px;
	flex-shrink: 0;
	position:    sticky;
	top:         calc(1rem + 72px);
	align-self:  flex-start;
}
.widget {
	margin-bottom: 1.5rem;
	padding:       1.35rem;
	position:      relative;
	overflow:      hidden;
	background:    var(--clr-surface);
	border:        1px solid rgba(var(--clr-primary-rgb),.12);
	border-radius: var(--radius);
	box-shadow:    0 14px 34px rgba(37,99,235,.08);
}
.widget::before {
	content: none;
}
.widget > * {
	position: relative;
	z-index:  1;
}
.widget-title {
	display:       flex;
	align-items:   center;
	gap:           .55rem;
	font-size:     var(--fs-h5);
	font-weight: var(--type-weight-subtitle);
	margin-bottom: 1rem;
	padding-bottom: .7rem;
	border-bottom: 1px solid var(--clr-border);
	position:      relative;
}
.widget-title::before {
	content: none;
}
.widget-title::after {
	content:       '';
	width:         .45rem;
	height:        .45rem;
	border-radius: var(--radius-full);
	background:    var(--clr-primary);
	box-shadow:    0 0 0 4px rgba(var(--clr-primary-rgb),.1);
	order:         -1;
}
.widget ul { list-style: none; padding: 0; margin: 0; }
.widget ul li { padding: .35rem 0; border-bottom: 1px solid rgba(37,99,235,.08); font-size: var(--fs-sm); }
.widget ul li:last-child { border-bottom: none; }
.widget ul li a { color: var(--clr-muted); transition: color var(--transition); }
.widget ul li a:hover { color: var(--clr-primary); }

.diaram-smart-search__box {
	display:     flex;
	align-items: center;
	gap:         .55rem;
	padding:     .35rem;
	background:  var(--clr-surface);
	border:      1px solid rgba(var(--clr-primary-rgb),.14);
	border-radius: var(--radius-full);
	box-shadow:  inset 0 1px 0 rgba(var(--clr-primary-rgb),.04);
}
.diaram-smart-search__box svg {
	width:       20px;
	height:      20px;
	margin-inline-start: .55rem;
	color:       var(--clr-primary);
	flex-shrink: 0;
}
.diaram-smart-search__box input {
	flex:        1;
	min-width:   0;
	border:      none;
	background:  transparent;
	color:       var(--clr-text);
	font-family: var(--font-primary);
	font-size:   var(--fs-sm);
	outline:     none;
}
.diaram-smart-search__hint {
	margin:      .75rem .25rem 0;
	color:       var(--clr-muted);
	font-size:   var(--fs-h6);
	line-height: 1.7;
}

.diaram-sidebar-posts,
.diaram-sidebar-comments,
.diaram-sidebar-archive,
.diaram-sidebar-cats {
	display:        flex;
	flex-direction: column;
	gap:            .75rem;
}
.diaram-sidebar-post {
	display:       grid;
	grid-template-columns: 76px 1fr;
	gap:           .8rem;
	align-items:   center;
	padding:       .55rem;
	border:        1px solid rgba(var(--clr-primary-rgb),.1);
	border-radius: var(--radius);
	background:    var(--clr-surface);
	color:         var(--clr-text);
	transition:    transform var(--transition), border-color var(--transition), box-shadow var(--transition);
}
.diaram-sidebar-post:hover {
	transform:    translateY(-2px);
	border-color: rgba(var(--clr-primary-rgb),.24);
	box-shadow:   0 12px 24px rgba(37,99,235,.12);
}
.diaram-sidebar-post__media {
	width:         76px;
	height:        76px;
	border-radius: var(--radius);
	overflow:      hidden;
	background:    rgba(var(--clr-primary-rgb),.08);
}
.diaram-sidebar-post__thumb,
.diaram-sidebar-post__placeholder {
	width:  100%;
	height: 100%;
}
.diaram-sidebar-post__thumb { object-fit: cover; }
.diaram-sidebar-post__placeholder {
	display:         flex;
	align-items:     center;
	justify-content: center;
	color:           var(--clr-primary);
	background:      linear-gradient(135deg, rgba(var(--clr-primary-rgb),.1), rgba(var(--clr-secondary-rgb),.18));
}
.diaram-sidebar-post__placeholder svg { width: 30px; height: 30px; }
.diaram-sidebar-post__content {
	display:        flex;
	flex-direction: column;
	gap:            .25rem;
	min-width:      0;
}
.diaram-sidebar-post__meta {
	display:     flex;
	align-items: center;
	gap:         .45rem;
	color:       var(--clr-muted);
	font-size:   var(--fs-h6);
}
.diaram-sidebar-post__content strong {
	color:       var(--clr-text);
	font-size:   var(--fs-h5);
	line-height: 1.55;
}
.diaram-sidebar-post__reading {
	color:     var(--clr-primary);
	font-size: var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
}

.diaram-sidebar-comment {
	display:       flex;
	gap:           .75rem;
	padding:       .75rem;
	border-radius: var(--radius);
	background:    var(--clr-surface);
	border:        1px solid rgba(var(--clr-primary-rgb),.1);
	transition:    all var(--transition);
}
.diaram-sidebar-comment:hover {
	border-color: rgba(var(--clr-primary-rgb),.24);
	background:   var(--clr-surface);
	transform:    translateX(3px);
}
[dir="rtl"] .diaram-sidebar-comment:hover { transform: translateX(-3px); }
.diaram-sidebar-comment__avatar {
	width:         42px;
	height:        42px;
	border-radius: var(--radius-full);
	box-shadow:    0 0 0 4px rgba(var(--clr-primary-rgb),.1);
	flex-shrink:   0;
}
.diaram-sidebar-comment__body {
	display:        flex;
	flex-direction: column;
	gap:            .18rem;
	min-width:      0;
}
.diaram-sidebar-comment__body strong { color: var(--clr-text); font-size: var(--fs-h5); }
.diaram-sidebar-comment__role {
	display:      inline-block;
	margin-top:   .15rem;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	line-height:  1.3;
	color:        var(--clr-primary);
	padding:      .05rem .4rem;
	border-radius: var(--radius-full);
	background:   rgba(var(--clr-primary-rgb), .1);
}
.diaram-sidebar-comment__body > span:not(.diaram-sidebar-comment__role) { color: var(--clr-muted); font-size: var(--fs-h6); line-height: 1.65; }
.diaram-sidebar-comment__body small { color: var(--clr-primary); font-size: var(--fs-h6); font-weight: var(--type-weight-subtitle); }

.diaram-sidebar-archive {
	position: relative;
	padding-inline-start: .5rem;
}
.diaram-sidebar-archive::before {
	content: '';
	position: absolute;
	top: .5rem;
	bottom: .5rem;
	inset-inline-start: .86rem;
	width: 2px;
	background: linear-gradient(to bottom, rgba(var(--clr-primary-rgb),.25), transparent);
}
.diaram-sidebar-archive__item {
	display:     grid;
	grid-template-columns: 1.25rem 1fr auto;
	align-items: center;
	gap:         .65rem;
	padding:     .45rem 0;
	color:       var(--clr-muted);
}
.diaram-sidebar-archive__dot {
	width:         .75rem;
	height:        .75rem;
	border-radius: var(--radius-full);
	background:    var(--clr-surface);
	border:        3px solid var(--clr-primary);
	box-shadow:    0 0 0 4px rgba(var(--clr-primary-rgb),.1);
	z-index:       1;
}
.diaram-sidebar-archive__label { color: var(--clr-text); font-weight: var(--type-weight-subtitle); font-size: var(--fs-h5); }
.diaram-sidebar-archive__count,
.diaram-sidebar-cat__count {
	min-width:     2rem;
	padding:       .12rem .5rem;
	text-align:    center;
	border-radius: var(--radius-full);
	background:    rgba(var(--clr-primary-rgb),.1);
	color:         var(--clr-primary);
	font-size:     var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
}

.diaram-sidebar-cats {
	display: grid;
	grid-template-columns: 1fr;
}
.diaram-sidebar-cat {
	display:       flex;
	align-items:   center;
	justify-content: space-between;
	gap:           .75rem;
	padding:       .75rem .85rem;
	border-radius: var(--radius);
	background:    var(--clr-surface);
	border:        1px solid rgba(var(--clr-primary-rgb),.1);
	color:         var(--clr-text);
	font-weight: var(--type-weight-subtitle);
	transition:    all var(--transition);
}
.diaram-sidebar-cat:hover {
	background:   linear-gradient(135deg, rgba(var(--clr-primary-rgb),.1), rgba(var(--clr-secondary-rgb),.12));
	border-color: rgba(var(--clr-primary-rgb),.24);
	transform:    translateY(-2px);
}
.diaram-sidebar-cat__name {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* ====================================================================
   محصولات
   ==================================================================== */
.products-filter,
.podcast-series-filter {
	display:      flex;
	flex-wrap:    wrap;
	gap:          .5rem;
	margin-bottom: 2rem;
}
.filter-btn {
	padding:       .4rem 1.1rem;
	border-radius: var(--radius-full);
	font-size:     var(--fs-sm);
	font-weight: var(--type-weight-body);
	background:    rgba(var(--clr-primary-rgb),.05);
	border:        1px solid var(--clr-border);
	color:         var(--clr-muted);
	cursor:        pointer;
	transition:    all var(--transition);
	text-decoration: none;
}
.filter-btn:hover,
.filter-btn.active {
	background:   rgba(var(--clr-primary-rgb),.15);
	border-color: var(--clr-primary);
	color:        var(--clr-primary);
}

.products-grid {
	display:               grid;
	gap:                   1.75rem;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}
.products-grid--list { grid-template-columns: 1fr; }
.products-grid--list .product-card { flex-direction: row; }
.products-grid--list .product-card__image-link { width: 240px; flex-shrink: 0; }
.products-grid--list .product-card__image-wrap { aspect-ratio: 4/3; height: 100%; }

.product-card {
	overflow:    hidden;
	transition:  transform var(--transition), box-shadow var(--transition);
	display:     flex;
	flex-direction: column;
}
.product-card:hover { transform: translateY(-4px); box-shadow: 0 20px 48px rgba(var(--clr-primary-rgb),.2); }
.product-card__image-link { display: block; overflow: hidden; }
.product-card__image-wrap { position: relative; overflow: hidden; aspect-ratio: 4/3; }
.product-card__thumb { width: 100%; height: 100%; object-fit: cover; transition: transform var(--transition-slow); }
.product-card:hover .product-card__thumb { transform: scale(1.06); }
.product-badge {
	position:            absolute;
	top:                 .75rem;
	inset-inline-end:    .75rem;
	display:             inline-flex;
	align-items:         center;
	justify-content:     center;
	background:          linear-gradient(135deg, var(--clr-primary), var(--clr-accent));
	color:               #fff;
	font-size:           var(--ui-badge-font);
	font-weight:         var(--ui-badge-weight);
	padding:             var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	border-radius:       var(--radius-full);
	line-height:         1.2;
}
.product-badge--sale { background: linear-gradient(135deg, #ef4444, #f97316); }

.product-card__body { padding: 1.25rem; display: flex; flex-direction: column; gap: .6rem; flex: 1; }
.product-card__title { margin-bottom: 0; }
.product-card__title a { color: var(--clr-text); }
.product-card__title a:hover { color: var(--clr-primary); }
.product-card__excerpt { color: var(--clr-muted); font-size: var(--fs-sm); flex: 1; }
.product-card__footer {
	display:     flex;
	align-items: center;
	justify-content: space-between;
	padding-top: .75rem;
	border-top:  1px solid var(--clr-border);
	margin-top:  auto;
	gap:         .5rem;
	flex-wrap:   wrap;
}

/* قیمت */
.price { font-weight: var(--type-weight-subtitle); color: var(--clr-secondary); }
.price--free { color: #22c55e; }
.price__original { text-decoration: line-through; color: var(--clr-muted); font-weight: 400; margin-inline-end: .5rem; }
.price__sale { color: var(--clr-accent); }

/* صفحه محصول */
.product-single {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap:     3rem;
	padding: 2rem 0;
	align-items: start;
}
.product-gallery__main { position: relative; border-radius: var(--radius); overflow: hidden; }
.product-gallery__main img { width: 100%; border-radius: var(--radius); }
.product-single__info { display: flex; flex-direction: column; gap: 1.25rem; }
.product-title { margin-bottom: 0; }
.product-excerpt { color: var(--clr-muted); }

.product-price-box {
	padding:    1.25rem;
	display:    flex;
	align-items: center;
	gap:        1rem;
}
.product-features__title { margin-bottom: .75rem; }
.product-features__list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: .5rem; }
.product-features__item { display: flex; align-items: center; gap: .6rem; font-size: var(--fs-sm); }
.product-features__check { width: 16px; height: 16px; color: #22c55e; flex-shrink: 0; }
.product-actions { display: flex; gap: .75rem; flex-wrap: wrap; }
.product-meta { display: flex; flex-direction: column; gap: .5rem; font-size: var(--fs-sm); }
.product-meta__item { display: flex; align-items: center; gap: .5rem; color: var(--clr-muted); }
.product-meta__label { font-weight: var(--type-weight-subtitle); color: var(--clr-text); }

/* تب‌های محصول */
.product-tabs {
	display:        flex;
	gap:            .25rem;
	border-bottom:  1px solid var(--clr-border);
	padding-bottom: 0;
	margin-bottom:  1.5rem;
}
.product-tab {
	padding:        var(--ui-btn-sm-pad-y) var(--ui-btn-pad-x);
	background:     none;
	border:         none;
	color:          var(--clr-muted);
	font-size:      var(--ui-btn-sm-font);
	font-weight:    var(--ui-btn-weight);
	cursor:         pointer;
	border-bottom:  2px solid transparent;
	transition:     all var(--transition);
	line-height:    1.2;
}
.product-tab.active,
.product-tab:hover { color: var(--clr-primary); border-bottom-color: var(--clr-primary); }
.product-tab-content { display: none; }
.product-tab-content.active { display: block; }
.product-single__content { margin-top: 2rem; padding: 2rem; }

/* ====================================================================
   پادکست
   ==================================================================== */
.podcasts-list { display: grid; gap: 18px; }

.podcast-item {
	display:     flex;
	gap:         1.5rem;
	padding:     1.25rem;
	transition:  all var(--transition);
}
.podcast-item:hover { transform: translateX(-4px); border-color: rgba(var(--clr-primary-rgb),.3); }
[dir="rtl"] .podcast-item:hover { transform: translateX(4px); }
.podcast-item__artwork {
	position:      relative;
	flex-shrink:   0;
	width:         100px;
	height:        auto;
	aspect-ratio:  1 / 1;
	border-radius: calc(var(--radius) + 2px);
	overflow:      hidden;
}
.podcast-item__thumb { border-radius: var(--radius); width: 100%; height: 100%; object-fit: cover; }
.podcast-item__mini-play {
	position:        absolute;
	inset:           0;
	display:         flex;
	align-items:     center;
	justify-content: center;
	background:      rgba(0,0,0,.5);
	border:          none;
	border-radius:   var(--radius);
	color:           #fff;
	cursor:          pointer;
	opacity:         0;
	transition:      opacity var(--transition);
}
.podcast-item:hover .podcast-item__mini-play { opacity: 1; }
.podcast-item__mini-play svg { width: 28px; height: 28px; }
.podcast-item__content { flex: 1; display: flex; flex-direction: column; gap: .4rem; }
.podcast-item__meta { display: flex; align-items: center; gap: .6rem; }
.podcast-item__episode,
.podcast-item__series {
	font-size:     var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
	letter-spacing: .05em;
	text-transform: uppercase;
	color:          var(--clr-primary);
}
.podcast-item__title { margin-bottom: 0; }
.podcast-item__title a { color: var(--clr-text); }
.podcast-item__title a:hover { color: var(--clr-primary); }
.podcast-item__excerpt { color: var(--clr-muted); font-size: var(--fs-sm); }
.podcast-item__footer {
	display:     flex;
	align-items: center;
	flex-wrap:   wrap;
	gap:         .75rem;
	font-size:   var(--fs-sm);
	color:       var(--clr-muted);
	margin-top:  auto;
}
.podcast-item__duration { display: flex; align-items: center; gap: .3rem; }
.podcast-item__duration svg { width: 14px; height: 14px; }

/* پلیر پادکست (نسخه پیشرفته) */
.podcast-player-advanced {
	padding:       1.5rem;
	margin-bottom: 1.5rem;
	border-radius: calc(var(--radius) + 4px);
	background:
		radial-gradient(circle at 100% 0%, rgba(var(--clr-primary-rgb), .16), transparent 45%),
		var(--glass-bg);
}
.podcast-player-advanced__head {
	display:               grid;
	grid-template-columns: 120px 1fr;
	gap:                   1rem;
	margin-bottom:         1.25rem;
}
.podcast-player-advanced__cover { width: 120px; height: 120px; border-radius: var(--radius); overflow: hidden; }
.podcast-player-advanced__cover img { width: 100%; height: 100%; object-fit: cover; }
.podcast-player-advanced__eyebrow { font-size: var(--fs-h6); color: var(--clr-primary); font-weight: var(--type-weight-subtitle); margin-bottom: .5rem; }
.podcast-player-advanced__title { margin-bottom: .5rem; font-size: var(--type-subtitle); }
.podcast-player-advanced__meta { display: flex; flex-wrap: wrap; gap: .55rem; color: var(--clr-muted); font-size: var(--fs-h6); }
.podcast-player-advanced__meta span { padding: .2rem .6rem; border-radius: var(--radius-full); background: rgba(var(--clr-primary-rgb), .11); }
.podcast-player-advanced__timeline { margin-bottom: 1rem; }
.player-progress-wrap { display: flex; align-items: center; gap: .75rem; }
.player-time { font-size: var(--fs-h6); color: var(--clr-muted); white-space: nowrap; min-width: 3rem; }
.player-progress {
	flex:              1;
	height:            8px;
	border:            none;
	background:        rgba(var(--clr-primary-rgb), .14);
	border-radius:     var(--radius-full);
	cursor:            pointer;
	position:          relative;
	overflow:          hidden;
	appearance:        none;
	-webkit-appearance: none;
}
.player-progress__buffer,
.player-progress__bar {
	position:      absolute;
	inset-block:   0;
	inset-inline-start: 0;
	border-radius: var(--radius-full);
}
.player-progress__buffer { width: 0; background: rgba(var(--clr-primary-rgb), .28); }
.player-progress__bar {
	width:      0;
	background: var(--clr-button-gradient-end);
}
.podcast-player-advanced__controls {
	display:         flex;
	justify-content: space-between;
	align-items:     center;
	gap:             .9rem;
	margin-bottom:   1rem;
}
.podcast-player-advanced__controls-main,
.podcast-player-advanced__controls-side { display: flex; align-items: center; gap: .55rem; }
.player-btn {
	border: none;
	cursor: pointer;
}
.player-btn.btn--primary.player-btn--play {
	width:         52px;
	height:        52px;
	padding:       0;
	display:       flex;
	align-items:   center;
	justify-content: center;
}
.player-btn.btn--primary.player-btn--play:hover {
	transform: scale(1.08);
}
.player-btn--play svg { width: 22px; height: 22px; }
.player-btn--ghost,
.player-btn--tiny {
	background: rgba(var(--clr-primary-rgb), .12);
	color:      var(--clr-text);
}
.player-btn--ghost:hover,
.player-btn--tiny:hover { background: rgba(var(--clr-primary-rgb), .2); }
.player-volume { display: flex; align-items: center; }
.player-volume__slider { width: 92px; accent-color: var(--player-color, var(--clr-primary)); }
.podcast-player-advanced__links { display: flex; flex-wrap: wrap; gap: .5rem; }
.podcast-platform-btn {
	border:     1px solid var(--clr-border);
	color:      var(--clr-muted);
	transition: all var(--transition);
}
.podcast-platform-btn:hover { color: #fff; }
.podcast-platform-btn--spotify:hover  { background: #1db954; border-color: #1db954; }
.podcast-platform-btn--apple:hover    { background: #fc3c44; border-color: #fc3c44; }
.podcast-platform-btn--download:hover { background: var(--clr-primary); border-color: var(--clr-primary); }

/* ====================================================================
   دسته‌بندی‌ها
   ==================================================================== */
.categories-section { margin-bottom: 3rem; }
.section-title {
	margin-bottom: 1.5rem;
	padding-bottom: .75rem;
	border-bottom: 1px solid var(--clr-border);
}
.categories-grid {
	display:               grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap:                   1rem;
}
.category-card {
	display:     flex;
	align-items: center;
	gap:         1rem;
	padding:     1.25rem;
	transition:  all var(--transition);
}
.category-card:hover {
	border-color:  rgba(var(--clr-primary-rgb),.3);
	transform:     translateY(-2px);
	box-shadow:    0 12px 32px rgba(var(--clr-primary-rgb),.15);
}
.category-card__icon { font-size: 1.75rem; flex-shrink: 0; }
.category-card__content { flex: 1; min-width: 0; }
.category-card__name { margin-bottom: .2rem; color: var(--clr-text); }
.category-card__desc { font-size: var(--fs-h6); color: var(--clr-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.category-card__count { font-size: var(--fs-h6); color: var(--clr-primary); font-weight: var(--type-weight-subtitle); }
.category-card__arrow { color: var(--clr-muted); flex-shrink: 0; width: 20px; height: 20px; }
[dir="rtl"] .category-card__arrow { transform: scaleX(-1); }

/* ====================================================================
   کامنت‌ها — سبک اینستاگرام (تیزر + مودال تمام‌صفحه)
   ==================================================================== */
.comments-area {
	margin: 2rem 0;
}

/* ---- تیزر (صفحه اصلی) ---- */
.comments-teaser {
	padding: 1.5rem;
}

.comments-teaser .comments-title {
	margin: 0 0 1rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid rgba(0, 0, 0, .06);
	font-size: var(--fs-h2);
	font-weight: var(--type-weight-title);
	letter-spacing: -.02em;
	display: flex;
	align-items: center;
	gap: 0.625rem;
	padding-inline-start: 0;
}

.comments-teaser .comments-title::before {
	position: static;
	inset-inline-start: auto;
	top: auto;
	transform: none;
	flex-shrink: 0;
	align-self: center;
}

.course-section--card > .comments-area .comments-teaser.glass-card,
.product-single__content .comments-teaser.glass-card {
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	border-radius: 0;
}

.product-single__content .comments-teaser .comments-title {
	display: none;
}

.comments-teaser__preview {
	margin-bottom: .35rem;
}

.comments-teaser__preview .comment-item {
	border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.comments-teaser__preview .comment-item:last-child {
	border-bottom: 0;
}

.comments-teaser__preview .comment-body {
	padding: .55rem 0;
}

.comments-teaser__preview .comment-footer,
.comments-teaser__preview .reply-link,
.comments-teaser__preview .comment-like-wrap,
.comments-teaser__preview .comment-likes-label {
	display: none;
}

.comments-teaser__preview .comment-text-line {
	font-size: var(--fs-sm);
	line-height: 1.4;
}

.comments-teaser__trigger {
	display:         block;
	width:           100%;
	margin:          .35rem 0 0;
	padding:         .65rem 0 0;
	border:          0;
	border-top:      1px solid rgba(0, 0, 0, .06);
	background:      transparent;
	font-family:     var(--font-primary);
	font-size:       var(--fs-sm);
	font-weight:     400;
	color:           var(--clr-muted);
	text-align:      start;
	text-decoration: none;
	cursor:          pointer;
	transition:      color var(--transition);
}

.comments-teaser__trigger:hover {
	color: var(--clr-text);
}

/* ---- گیت مهمان داخل مودال ---- */
.comments-modal__body {
	flex:           1;
	min-height:     0;
	display:        flex;
	flex-direction: column;
	position:       relative;
	overflow:       hidden;
}

.comments-modal.is-open .comments-modal__body {
	padding-bottom: var(--comments-modal-footer-height, 0px);
}

.comments-modal__guest-panel {
	flex:            1;
	display:         none;
	align-items:     center;
	justify-content: center;
	padding:         1.25rem 1rem;
	overflow-y:      auto;
}

.comments-modal.is-guest-pending .comments-modal__guest-panel {
	display: flex;
}

.comments-modal.is-guest-pending .comments-modal__comments,
.comments-modal.is-guest-pending .comments-modal__footer {
	display: none !important;
}

.comments-modal.is-guest-ready .comments-modal__guest-panel {
	display: none !important;
}

/* ---- نظرسنجی پیشنهاد داخل مودال ---- */
.comments-modal__recommend-panel {
	flex:            1;
	display:         none;
	align-items:     center;
	justify-content: center;
	padding:         1.25rem 1rem;
	overflow-y:      auto;
	-webkit-overflow-scrolling: touch;
}

.comments-modal.is-recommend-pending.is-guest-ready .comments-modal__recommend-panel {
	display: flex;
}

.comments-modal.is-guest-pending .comments-modal__recommend-panel,
.comments-modal.is-recommend-ready .comments-modal__recommend-panel {
	display: none !important;
}

.comments-modal.is-recommend-pending.is-guest-ready .comments-modal__comments,
.comments-modal.is-recommend-pending.is-guest-ready .comments-modal__footer {
	display: none !important;
}

.comments-modal.is-compose-blocked .comments-area__form-wrap,
.comments-modal.is-compose-blocked .comments-modal__reply-banner {
	display: none !important;
}

.comments-modal.is-compose-blocked .reply-link,
.comments-modal.is-compose-blocked .comment-reply-link {
	display: none !important;
}

.comments-modal__pending-notice {
	margin:        0 .75rem .75rem;
	padding:       .65rem .85rem;
	font-size:     var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	line-height:   1.55;
	color:         #b45309;
	background:    rgba(245, 158, 11, .1);
	border:        1px solid rgba(245, 158, 11, .2);
	border-radius: var(--radius-sm);
	text-align:    center;
}

.comments-modal__pending-notice[hidden] {
	display: none !important;
}

.comments-modal__recommend-card {
	width:      100%;
	max-width:  360px;
	margin:     0 auto;
	text-align: center;
}

.comments-modal__recommend-lead {
	margin:      0 0 1.25rem;
	font-size:   var(--type-body);
	font-weight: var(--type-weight-subtitle);
	color:       var(--clr-text);
	line-height: 1.75;
	letter-spacing: -.01em;
}

.comments-modal__recommend-options {
	display:         flex;
	align-items:     stretch;
	gap:             0;
	padding:         .28rem;
	border-radius:   999px;
	background:      rgba(15, 23, 42, .045);
	border:          1px solid rgba(15, 23, 42, .06);
}

.comments-modal__recommend-option + .comments-modal__recommend-option {
	border-inline-start: 1px solid rgba(15, 23, 42, .07);
}

.comments-modal__recommend-option {
	flex:            1 1 0;
	min-width:       0;
	min-height:      44px;
	padding:         .72rem .85rem;
	border:          0;
	border-radius:   999px;
	background:      transparent;
	font-family:     var(--font-primary);
	font-size:       var(--type-body);
	font-weight: var(--type-weight-subtitle);
	line-height:     1.35;
	color:           var(--clr-muted);
	cursor:          pointer;
	transition:      color .18s ease, background .18s ease, box-shadow .18s ease, opacity .18s ease;
	-webkit-tap-highlight-color: transparent;
}

@media (hover: hover) {
	.comments-modal__recommend-option:hover:not(:disabled):not(.is-selected) {
		color: var(--clr-text);
	}
}

.comments-modal__recommend-option:active:not(:disabled) {
	opacity: .82;
}

.comments-modal__recommend-option:disabled {
	cursor: default;
	opacity: .72;
}

.comments-modal__recommend-option.is-selected {
	background:   var(--clr-surface);
	color:        var(--clr-text);
	box-shadow:   0 1px 2px rgba(15, 23, 42, .06), 0 4px 12px rgba(15, 23, 42, .05);
}

.comments-modal__recommend-option--yes.is-selected {
	color: #166534;
}

.comments-modal__recommend-option--no.is-selected {
	color: var(--clr-text);
}

.comments-modal__recommend-status {
	margin:      .9rem 0 0;
	font-size: var(--type-body);
	line-height:   1.6;
	color:         var(--clr-muted);
}

.comments-modal__recommend-status[hidden] {
	display: none;
}

@media (max-width: 420px) {
	.comments-modal__recommend-options {
		flex-direction: column;
		border-radius:  var(--radius-md, 12px);
		padding:        .3rem;
		gap:            0;
	}

	.comments-modal__recommend-option + .comments-modal__recommend-option {
		border-inline-start: 0;
		border-block-start:  1px solid rgba(15, 23, 42, .07);
	}

	.comments-modal__recommend-option {
		border-radius: var(--radius-sm, 8px);
		min-height:    48px;
	}
}

.comments-modal__guest-form {
	width:     100%;
	max-width: 360px;
	margin:    0 auto;
}

.comments-modal__guest-lead {
	margin:      0 0 1rem;
	font-size:   var(--fs-sm);
	color:       var(--clr-muted);
	line-height: 1.65;
	text-align:  center;
}

.comments-modal__guest-field {
	margin-bottom: .75rem;
}

.comments-modal__guest-field label {
	display:       block;
	margin-bottom: .35rem;
	font-size:     var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	color:         var(--clr-text);
}

.comments-modal__guest-input {
	width:         100%;
	padding:       .7rem .85rem;
	border:        1px solid rgba(0, 0, 0, .1);
	border-radius: var(--radius-sm);
	background:    var(--clr-surface);
	font-family:   var(--font-primary);
	font-size:     var(--fs-sm);
	color:         var(--clr-text);
	transition:    border-color var(--transition), box-shadow var(--transition);
}

.comments-modal__guest-input:focus {
	outline:      none;
	border-color: var(--clr-primary);
	box-shadow:   0 0 0 3px rgba(var(--clr-primary-rgb), .12);
}

.comments-modal__guest-form .podcast-feedback__captcha-row {
	margin-top: .15rem;
}

.comments-modal__guest-error {
	margin:      .65rem 0 0;
	font-size:   var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	color:       #dc2626;
	text-align:  center;
}

.comments-modal__guest-error[hidden] {
	display: none !important;
}

.comments-modal__guest-submit {
	width:      100%;
	margin-top: .85rem;
}

@media (max-width: 480px) {
	.comments-modal__guest-form,
	.comments-modal__recommend-card {
		max-width: 100%;
	}
}

/* ---- مودال تمام‌صفحه ---- */
.comments-modal {
	position:        fixed;
	top:             0;
	left:            0;
	right:           0;
	bottom:          0;
	width:           100%;
	height:          100dvh;
	max-height:      100dvh;
	min-height:      0;
	z-index:         100000;
	display:         none;
	pointer-events:  none;
	overflow:        hidden;
}

.comments-modal.is-open {
	display:        flex;
	flex-direction: column;
	pointer-events: auto;
}

.comments-modal__backdrop {
	display:  none;
}

.comments-modal__panel {
	position:        relative;
	display:         flex;
	flex-direction:  column;
	flex:            1;
	width:           100%;
	height:          100%;
	min-height:      0;
	max-height:      100%;
	background:      var(--clr-surface);
	overflow:        hidden;
	padding-top:     env(safe-area-inset-top, 0);
}

.comments-modal__header {
	position:               relative;
	display:                flex;
	align-items:            center;
	flex-shrink:            0;
	min-height:             52px;
	padding:                .45rem .75rem .45rem 0;
	border-bottom:          1px solid rgba(255, 255, 255, .14);
	background:
		radial-gradient(circle at 12% 0, rgba(var(--clr-primary-rgb), .16), transparent 34%),
		linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(var(--clr-primary-rgb), .86));
	box-shadow:             0 18px 52px rgba(15, 23, 42, .18);
	gap:                    .35rem;
	direction:                ltr;
	z-index:                2;
}

.comments-modal__back {
	position:        static;
	transform:       none;
	display:         inline-flex;
	align-items:     center;
	justify-content: flex-start;
	gap:             .25rem;
	flex-shrink:     0;
	margin:          0;
	padding:         .35rem .55rem .35rem .65rem;
	border:          none;
	border-radius:   var(--radius-sm);
	background:      transparent;
	color:           rgba(255, 255, 255, .82);
	cursor:          pointer;
	transition:      background var(--transition), color var(--transition);
	font-family:     var(--font-primary);
	font-size:       var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	line-height:     1.2;
	white-space:     nowrap;
}

.comments-modal__back:hover {
	background: rgba(255, 255, 255, .12);
	color:      #fff;
}

.comments-modal__back svg {
	width:       1.1rem;
	height:      1.1rem;
	flex-shrink: 0;
}

.comments-modal__context {
	flex:               1;
	min-width:          0;
	display:            flex;
	align-items:        center;
	gap:                .55rem;
	padding-inline-end: .25rem;
	direction:          rtl;
}

.comments-modal__thumb {
	flex-shrink:   0;
	width:           34px;
	height:          34px;
	border-radius:   var(--radius-sm);
	overflow:        hidden;
	background:      rgba(0, 0, 0, .04);
}

.comments-modal__thumb-img {
	display:    block;
	width:      100%;
	height:     100%;
	object-fit: cover;
}

.comments-modal__thumb-placeholder {
	display:         flex;
	align-items:     center;
	justify-content: center;
	width:           100%;
	height:          100%;
}

.comments-modal__thumb-placeholder svg {
	width:   1.1rem;
	height:  1.1rem;
	opacity: .75;
}

.comments-modal__heading {
	flex:        1;
	min-width:   0;
	display:     flex;
	align-items: center;
	gap:         .4rem;
}

.comments-modal__title {
	flex:          1;
	min-width:     0;
	margin:        0;
	font-size:     var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	text-align:    start;
	color:         rgba(255, 255, 255, .95);
	line-height:   1.35;
	white-space:   nowrap;
	overflow:      hidden;
	text-overflow: ellipsis;
}

.comments-modal__type-badge {
	flex-shrink:   0;
	display:       inline-flex;
	align-items:   center;
	padding:       .1rem .4rem;
	border-radius: var(--radius-full);
	background:    rgba(255, 255, 255, .12);
	border:        1px solid rgba(255, 255, 255, .18);
	font-size: var(--type-caption);
	font-weight: var(--font-weight-medium);
	color:         #fff;
	line-height:   1.2;
	white-space:   nowrap;
}

.comments-modal__scroll {
	flex:               1;
	min-height:         0;
	overflow-y:         auto;
	overflow-x:         hidden;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	padding:            .35rem 1rem .5rem;
}

.comments-modal__comments {
	display: flex;
	flex-direction: column;
}

.comments-modal__footer {
	flex-shrink:    0;
	border-top:     1px solid rgba(0, 0, 0, .08);
	background:     var(--clr-surface);
}

.comments-modal.is-open .comments-modal__footer {
	position:       absolute;
	left:           0;
	right:          0;
	bottom:         0;
	z-index:        5;
	width:          100%;
	margin-top:     0;
	padding-bottom: env(safe-area-inset-bottom, 0);
}

.comments-modal__footer--minimal {
	border-top: 1px solid rgba(37, 99, 235, .12);
	box-shadow: none;
	background: var(--clr-surface);
}

.comments-modal__footer--minimal .comments-area__form-wrap {
	padding: 1rem 1.25rem;
}

.comments-modal__reply-banner {
	display:         flex;
	align-items:     center;
	justify-content: space-between;
	gap:             .5rem;
	padding:         .35rem .75rem 0;
	font-size: var(--type-body);
	color:           var(--clr-muted);
}

.comments-modal__reply-banner[hidden] {
	display: none !important;
}

.comments-modal__reply-name {
	color:       var(--clr-text);
	font-weight: var(--type-weight-subtitle);
}

.comments-modal__reply-cancel {
	margin:          0;
	padding:         0;
	border:          none;
	background:      transparent;
	font-family:     var(--font-primary);
	font-size:       var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
	color:           var(--clr-primary);
	cursor:          pointer;
}

.comments-modal__footer .comments-area__form-wrap {
	padding:       .65rem 1rem .75rem;
	border-bottom: none;
}

.comments-modal__footer--minimal .comment-form--ig-minimal .logged-in-as,
.comments-modal__footer--minimal .podcast-feedback__logged-in-as,
.comments-modal__footer--minimal .podcast-feedback__guest-note {
	display: none;
}

.comment-compose__avatar--initial {
	display:         flex;
	align-items:     center;
	justify-content: center;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	color:           var(--clr-primary);
	background:      rgba(var(--clr-primary-rgb), .12);
}

/* نوار تایپ مودال — هم‌تراز با diaram-advisor-messenger__compose */
.comments-modal__footer--minimal .comment-compose--minimal.diaram-advisor-messenger__compose {
	flex-shrink: 0;
	display:     flex;
	gap:         .75rem;
	align-items: flex-end;
	padding:     0;
	border-top:  none;
	background:  transparent;
	direction:   ltr;
}

.comments-modal__footer--minimal .comment-compose--minimal .comment-compose__textarea,
.comments-modal__footer--minimal .comment-compose--minimal .diaram-advisor-input {
	flex:          1;
	margin:        0;
	resize:        none;
	min-height:    48px;
	max-height:    160px;
	padding:       .75rem 1rem;
	border-radius: 16px;
	border:        1px solid rgba(37, 99, 235, .2);
	background:    rgba(37, 99, 235, .02);
	font-family:   inherit;
	font-size: var(--type-body);
	line-height:   1.6;
	color:         var(--clr-text);
	transition:    border-color .2s, box-shadow .2s;
	width:         100%;
	overflow-y:    auto;
}

.comments-modal__footer--minimal .comment-compose--minimal .comment-compose__textarea:focus,
.comments-modal__footer--minimal .comment-compose--minimal .diaram-advisor-input:focus {
	outline:      none;
	border-color: var(--clr-primary);
	box-shadow:   0 0 0 3px rgba(var(--clr-primary-rgb), .1);
	background:   var(--clr-surface);
}

.comments-modal__footer--minimal .comment-form--ig-minimal .comment-compose__submit,
.comments-modal__footer--minimal .comment-form--ig-minimal input[type="submit"],
.comments-modal__footer--minimal .comment-form--ig-minimal button[type="submit"] {
	flex-shrink:     0;
	width:           48px;
	height:          48px;
	min-height:      48px;
	padding:         0;
	border:          none;
	border-radius:   16px;
	display:         flex;
	align-items:     center;
	justify-content: center;
	background:      var(--clr-primary);
	color:           #fff;
	opacity:         1;
	transition:      transform .15s, background .15s, box-shadow .15s;
	box-shadow:      0 4px 12px rgba(var(--clr-primary-rgb), .25);
}

.comments-modal__footer--minimal .comment-form--ig-minimal .comment-compose__submit:hover:not(:disabled),
.comments-modal__footer--minimal .comment-form--ig-minimal input[type="submit"]:hover:not(:disabled),
.comments-modal__footer--minimal .comment-form--ig-minimal button[type="submit"]:hover:not(:disabled) {
	transform:  translateY(-2px);
	background: var(--clr-secondary, var(--clr-primary));
	box-shadow: 0 6px 16px rgba(var(--clr-primary-rgb), .35);
}

.comments-modal__footer--minimal .comment-form--ig-minimal .comment-compose__submit:disabled,
.comments-modal__footer--minimal .comment-form--ig-minimal input[type="submit"]:disabled,
.comments-modal__footer--minimal .comment-form--ig-minimal button[type="submit"]:disabled,
.comments-modal__footer--minimal .comment-form--ig-minimal:has(.comment-compose__textarea:placeholder-shown:not(:focus)) .comment-compose__submit {
	opacity:        .5;
	cursor:         not-allowed;
	pointer-events: none;
	box-shadow:     none;
	transform:      none;
}

.comments-modal__footer--minimal .comment-form--ig-minimal .comment-compose__submit.is-loading,
.comments-modal__footer--minimal .comment-form--ig-minimal button[type="submit"].is-loading {
	opacity:        1;
	cursor:         wait;
	pointer-events: none;
	box-shadow:     0 4px 12px rgba(var(--clr-primary-rgb), .25);
	transform:      none;
}

.comment-compose__submit.is-loading svg {
	visibility: hidden;
	width:      0;
	height:     0;
}

.comment-compose__submit.is-loading::before {
	content:       '';
	display:       block;
	width:         20px;
	height:        20px;
	border:        2px solid rgba(255, 255, 255, .35);
	border-top-color: #fff;
	border-radius: 50%;
	animation:     diaramCommentSubmitSpin .65s linear infinite;
}

@keyframes diaramCommentSubmitSpin {
	to { transform: rotate(360deg); }
}

.comment-form--ig .comment-form-cookies-consent {
	display: none !important;
}

.comments-modal__footer #reply-title {
	display: none !important;
}

html.comments-modal-open,
body.comments-modal-open {
	width: 100%;
}

@media (max-width: 768px) {
	html.comments-modal-open,
	body.comments-modal-open {
		overflow: hidden;
	}
}

@media (max-width: 768px) {
	html.comments-modal-open #masthead,
	html.comments-modal-open .site-header,
	html.comments-modal-open header[role="banner"],
	html.comments-modal-open .site-footer,
	html.comments-modal-open #colophon,
	html.comments-modal-open .diaram-mobile-nav-overlay,
	html.comments-modal-open #mobile-menu,
	html.comments-modal-open .mobile-nav,
	html.comments-modal-open .podcast-mobile-bar,
	html.comments-modal-open .sc-mobile-mini-player,
	html.comments-modal-open .back-to-top,
	html.comments-modal-open #wpadminbar {
		visibility:     hidden !important;
		pointer-events: none !important;
	}
}

.comments-area__closed {
	margin:        0;
	padding:       .75rem 1rem;
	font-size:     var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	color:         #b45309;
	background:    rgba(245, 158, 11, .08);
	border-bottom: 1px solid rgba(245, 158, 11, .2);
	text-align:    center;
}

/* ---- فرم compose ---- */
.comments-area__form-wrap {
	padding: .75rem 1rem;
}

.comments-modal__footer .comments-area__form-wrap {
	padding: .65rem 1rem .75rem;
}

.comment-form--ig {
	margin: 0;
}

.comment-form--ig .logged-in-as {
	margin:      0 0 .55rem;
	font-size:   var(--fs-h6);
	color:       var(--clr-muted);
	line-height: 1.5;
}

.comment-form--ig .logged-in-as a {
	color:       var(--clr-primary);
	font-weight: var(--type-weight-subtitle);
	text-decoration: none;
}

.comment-compose__guest {
	display:               grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap:                   .5rem;
	margin-bottom:         .65rem;
}

.comment-compose__meta-input {
	padding:       .5rem .65rem;
	font-size:     var(--fs-h6);
	border:        none;
	border-radius: var(--radius-sm);
	background:    rgba(0, 0, 0, .04);
}

.comment-compose__meta-input:focus {
	outline:      none;
	background:   rgba(0, 0, 0, .06);
	box-shadow:   inset 0 0 0 1px rgba(var(--clr-primary-rgb), .35);
}

.comment-compose__bar {
	display:     flex;
	align-items: flex-start;
	gap:         .65rem;
}

.comment-compose__avatar,
.comment-compose__avatar img {
	display:       block;
	width:         32px;
	height:        32px;
	border-radius: var(--radius-full);
	flex-shrink:   0;
	object-fit:    cover;
}

.comment-compose__avatar--guest {
	display:         flex;
	align-items:     center;
	justify-content: center;
	color:           var(--clr-muted);
	background:      rgba(0, 0, 0, .06);
}

.comment-compose__avatar--guest svg {
	width:  1.15rem;
	height: 1.15rem;
}

.comment-compose__field {
	flex:      1;
	min-width: 0;
}

.comment-compose__textarea {
	width:         100%;
	min-height:    36px;
	max-height:    120px;
	padding:       .45rem 0;
	border:        none;
	border-radius: 0;
	background:    transparent;
	font-size:     var(--fs-sm);
	line-height:   1.45;
	color:         var(--clr-text);
	resize:        none;
	overflow-y:    auto;
}

.comment-compose__textarea:focus {
	outline:    none;
	box-shadow: none;
}

.comment-compose__textarea::placeholder {
	color: var(--clr-muted);
}

.comment-compose__submit-wrap {
	flex-shrink: 0;
	align-self:  flex-end;
	padding-bottom: .2rem;
}

.comment-compose__submit,
.comment-form--ig input[type="submit"],
.comment-form--ig button[type="submit"] {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	min-height:      auto;
	padding:         .35rem .15rem;
	border:          none;
	border-radius:   0;
	background:      transparent;
	font-size:       var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	color:           var(--clr-primary);
	cursor:          pointer;
	opacity:         .45;
	transition:      opacity var(--transition);
	box-shadow:      none;
	white-space:     nowrap;
}

.comment-compose__bar:focus-within .comment-compose__submit,
.comment-form--ig:has(.comment-compose__textarea:not(:placeholder-shown)) .comment-compose__submit,
.comment-compose__submit:hover,
.comment-compose__submit:focus {
	opacity: 1;
}

#reply-title.comment-reply-title {
	padding:       .65rem 1rem 0;
	margin:        0;
	font-size:     var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	color:         var(--clr-text);
	border-top:    1px solid rgba(0, 0, 0, .06);
}

#reply-title small a {
	margin-inline-start: .5rem;
	font-weight: var(--type-weight-subtitle);
	color:               var(--clr-muted);
	text-decoration:     none;
}

#reply-title small a:hover {
	color: var(--clr-primary);
}

/* ---- لیست دیدگاه‌ها ---- */
.comments-area__list-wrap {
	padding: 0;
	max-height: none;
}

.comments-area__empty {
	margin:      0;
	padding:     2rem 1rem;
	font-size:   var(--fs-sm);
	color:       var(--clr-muted);
	text-align:  center;
}

.comment-list {
	list-style:     none;
	padding:        0;
	margin:         0;
	display:        flex;
	flex-direction: column;
	gap:            0;
}

.comment-list--modal > .comment-item {
	border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.comment-list--modal > .comment-item:last-child {
	border-bottom: 0;
}

.comment-list--modal .comment-item:not(.comment-item--replies-expanded) > .children,
.comment-list--modal .comment-item:not(.comment-item--replies-expanded) + .children {
	display: none;
}

.comment-list--modal .comment-item.comment-item--replies-expanded > .children,
.comment-list--modal .comment-item.comment-item--replies-expanded + .children {
	display: block;
}

.comment-list .children {
	list-style:           none;
	padding:              0;
	margin:               .15rem 0 0;
	padding-inline-start: 44px;
	border-inline-start:  1px solid rgba(0, 0, 0, .05);
}

.comment-list--modal .children .children {
	margin:             0;
	padding:            0;
	border:             none;
	display:            contents;
}

.comment-item {
	border:     none;
	background: transparent;
	padding:    0;
}

.comment-item:hover {
	box-shadow: none;
}

.comment-item--reply .comment-body {
	padding-top: .35rem;
	padding-bottom: .35rem;
}

.comment-body {
	padding: .65rem 0;
}

.comment-row {
	display:     flex;
	align-items: flex-start;
	gap:         .65rem;
}

.comment-avatar {
	flex-shrink: 0;
	line-height: 0;
}

.comment-avatar__img {
	display:       block;
	width:         32px;
	height:        32px;
	border-radius: var(--radius-full);
	object-fit:    cover;
}

.comment-item--reply .comment-avatar__img,
.comment-list .children .comment-avatar__img {
	width:  24px;
	height: 24px;
}

.comment-bubble {
	flex:      1;
	min-width: 0;
}

.comment-text-line {
	font-size:   var(--fs-sm);
	line-height: 1.45;
	color:       var(--clr-text);
	word-break:  break-word;
}

.comment-author {
	display:     inline;
	font-style:  normal;
	font-weight: var(--type-weight-subtitle);
	color:       var(--clr-text);
}

.comment-author-wrap {
	display:           inline-flex;
	align-items:       center;
	vertical-align:    top;
	margin-inline-end: 0;
	max-width:         100%;
}

.comment-author-wrap::after {
	content:      ':\00a0';
	font-weight: var(--type-weight-subtitle);
}

.comment-author-wrap:has(+ .comment-reply-to)::after {
	content: none;
}

.comment-author-wrap .comment-author {
	margin-inline-end: 0;
}

.comment-author-role {
	display:       inline-flex;
	align-items:   center;
	flex-shrink:   0;
	font-size: var(--type-caption);
	font-weight: var(--font-weight-medium);
	line-height:   1.2;
	color:         var(--clr-primary);
	padding:       .04rem .35rem;
	border-radius: var(--radius-full);
	background:    rgba(var(--clr-primary-rgb), .1);
}

.comment-reply-badge {
	display:      inline-flex;
	align-items:  center;
	padding:      .08rem .4rem;
	border-radius: var(--radius-full);
	background:   rgba(var(--clr-primary-rgb), .1);
	font-size: var(--type-caption);
	font-weight: var(--font-weight-medium);
	color:        var(--clr-primary);
}

.comment-reply-to {
	display:      inline;
	font-weight: var(--type-weight-subtitle);
	color:        var(--clr-primary);
	margin-inline: .2rem;
}

.comments-modal__form-error {
	display: none !important;
}

.comments-modal__toast {
	position:      fixed;
	bottom:        calc(env(safe-area-inset-bottom, 0px) + 5.5rem);
	left:          50%;
	transform:     translateX(-50%) translateY(10px);
	z-index:       99999;
	padding:       .6rem 1.15rem;
	border-radius: 20px;
	font-size:     var(--fs-sm);
	font-weight:   600;
	white-space:   nowrap;
	max-width:     min(340px, calc(100vw - 2rem));
	text-align:    center;
	pointer-events: none;
	opacity:       0;
	transition:    opacity .25s ease, transform .25s ease;
	box-shadow:    0 4px 16px rgba(0,0,0,.18);
}

.comments-modal__toast.is-visible {
	opacity:   1;
	transform: translateX(-50%) translateY(0);
}

.comments-modal__toast--error {
	background: rgba(220, 38, 38, .93);
	color:      #fff;
}

.comments-modal__toast--success {
	background: rgba(21, 128, 61, .93);
	color:      #fff;
}

.comment-reply-to::before {
	content: '@';
}

.comment-reply-to::after {
	content:      ':\00a0';
	font-weight: var(--type-weight-subtitle);
}

.comment-item--is-reply .comment-text-line {
	display: block;
}

.comment-item--is-reply .comment-author {
	display: inline;
}

.comment-item--is-reply .comment-reply-to {
	display: inline;
}

.comment-item--is-reply .comment-content {
	display: inline;
}

.comment-content {
	display: inline;
	color:   var(--clr-text);
}

.comment-content p {
	display:     inline;
	margin:      0;
	font-size:   inherit;
	line-height: inherit;
}

.comment-content p + p::before {
	content: '\A';
	white-space: pre;
}

.comment-footer {
	display:     flex;
	align-items: center;
	flex-wrap:   wrap;
	gap:         .55rem;
	margin-top:  .4rem;
}

.comment-date,
.comment-likes-label,
.reply-link a,
.comment-edit-link {
	font-size: var(--type-caption);
	font-weight: var(--font-weight-medium);
	color:       var(--clr-muted);
}

.comment-likes-label.is-empty,
.comment-likes-label[hidden] {
	display: none !important;
}

.comment-date {
	text-transform: none;
	letter-spacing: 0;
}

.comment-like-wrap {
	flex-shrink:     0;
	display:         flex;
	flex-direction:  column;
	align-items:     center;
	justify-content: flex-start;
	gap:             .1rem;
	min-width:       28px;
	margin-top:      .05rem;
	position:        relative;
	z-index:         2;
	cursor:          pointer;
}

.comment-like {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	width:           28px;
	height:          28px;
	margin:          0;
	padding:         0;
	border:          0;
	border-radius:   var(--radius-full);
	background:      transparent;
	color:           var(--clr-muted);
	cursor:          pointer;
	transition:      color var(--transition), transform var(--transition);
	position:        relative;
	z-index:         1;
	touch-action:    manipulation;
	-webkit-tap-highlight-color: transparent;
}

.comment-like.is-loading {
	opacity: .65;
	cursor:  wait;
}

.comment-like:hover {
	color: var(--clr-text);
}

.comment-like.is-liked {
	color: #ef4444;
}

.comment-like__icon {
	width:          18px;
	height:         18px;
	display:        block;
	pointer-events: none;
}

.comment-like__icon-fill {
	opacity: 0;
	transition: opacity var(--transition);
}

.comment-like.is-liked .comment-like__icon-fill {
	opacity: 1;
}

.comment-like.is-liked .comment-like__icon-outline {
	opacity: 0;
}

.comment-like-count {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}

.comment-view-replies {
	display:     block;
	width:       fit-content;
	margin:      .2rem 0 .45rem;
	margin-inline-start: calc(32px + .65rem);
	padding:     0;
	border:      0;
	background:  transparent;
	font-family: var(--font-primary);
	font-size: var(--type-caption);
	font-weight: var(--font-weight-medium);
	color:       var(--clr-muted);
	cursor:      pointer;
	transition:  color var(--transition);
}

.comment-view-replies:hover {
	color: var(--clr-text);
}

.comment-view-replies::before {
	content: '— ';
	opacity: .55;
}

.reply-link a {
	font-weight: var(--font-weight-medium);
	color:           var(--clr-muted);
	text-decoration: none;
	background:      transparent;
	border:          none;
	padding:         0;
	border-radius:   0;
	transition:      color var(--transition);
}

.reply-link a:hover {
	color: var(--clr-text);
	opacity: .85;
}

.comment-edit-link-wrap {
	display: inline-flex;
}

.comment-edit-link {
	margin:          0;
	padding:         0;
	border:          0;
	background:      transparent;
	font-family:     var(--font-primary);
	font-weight: var(--font-weight-medium);
	color:           var(--clr-muted);
	cursor:          pointer;
	transition:      color var(--transition);
}

.comment-edit-link:hover {
	color:   var(--clr-text);
	opacity: .85;
}

.comment-edit-link[hidden],
.comment-item.is-editing .comment-edit-link {
	display: none !important;
}

.comment-edit-panel {
	margin-top: .35rem;
}

.comment-edit-input {
	display:       block;
	width:         100%;
	min-height:    72px;
	max-height:    160px;
	padding:       .65rem .75rem;
	border:        1px solid rgba(37, 99, 235, .22);
	border-radius: 12px;
	background:    rgba(37, 99, 235, .03);
	font-family:   inherit;
	font-size:     var(--fs-sm);
	line-height:   1.55;
	color:         var(--clr-text);
	resize:        vertical;
	transition:    border-color .2s, box-shadow .2s;
}

.comment-edit-input:focus {
	outline:      none;
	border-color: var(--clr-primary);
	box-shadow:   0 0 0 3px rgba(var(--clr-primary-rgb), .1);
	background:   var(--clr-surface);
}

.comment-edit-actions {
	display:     flex;
	align-items: center;
	gap:         .45rem;
	margin-top:  .45rem;
}

.comment-edit-save,
.comment-edit-cancel {
	margin:          0;
	padding:         .28rem .65rem;
	border:          0;
	border-radius:   999px;
	font-family:     var(--font-primary);
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	cursor:          pointer;
	transition:      background .2s, color .2s, opacity .2s;
}

.comment-edit-save {
	background: var(--clr-primary);
	color:      #fff;
}

.comment-edit-save:hover:not(:disabled) {
	background: var(--clr-secondary, var(--clr-primary));
}

.comment-edit-save.is-loading {
	opacity:        .85;
	cursor:         wait;
	pointer-events: none;
}

.comment-edit-cancel {
	background: rgba(0, 0, 0, .06);
	color:      var(--clr-muted);
}

.comment-edit-cancel:hover {
	background: rgba(0, 0, 0, .1);
	color:      var(--clr-text);
}

.comment-item.is-editing .comment-content {
	display: none;
}

.comment-awaiting-moderation {
	display:     inline-block;
	margin:      0 0 .25rem;
	padding:     0;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	color:       #b45309;
	background:  transparent;
	border:      none;
}

/* ---- ناوبری ---- */
.comments-area .comment-navigation,
.comments-area .navigation.comment-navigation {
	margin-top:  .65rem;
	padding-top: .65rem;
	border-top:  1px solid rgba(0, 0, 0, .06);
}

.comments-area .nav-links {
	display:         flex;
	justify-content: center;
	gap:             .75rem;
	width:           100%;
}

.comments-area .nav-previous a,
.comments-area .nav-next a {
	font-size:       var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
	color:           var(--clr-primary);
	text-decoration: none;
	background:      transparent;
	border:          none;
	padding:         0;
	min-width:       auto;
	height:          auto;
}

.comments-area .nav-previous a:hover,
.comments-area .nav-next a:hover {
	opacity: .75;
}

@media (max-width: 768px) {
	.comment-compose__guest {
		grid-template-columns: 1fr;
	}

	.comment-list .children {
		padding-inline-start: 36px;
	}

	.comments-modal__scroll {
		padding-inline: .75rem;
	}

	.comments-modal__footer--minimal .comments-area__form-wrap {
		padding: 1rem .75rem;
	}
}

@media (min-width: 769px) {
	.comments-modal {
		background: transparent;
		transition: background .24s ease;
	}

	.comments-modal.is-open {
		background: rgba(15, 23, 42, .4);
	}

	.comments-modal__backdrop {
		display:        block;
		position:       absolute;
		inset:          0;
		margin:         0;
		padding:        0;
		border:         0;
		background:     transparent;
		cursor:         pointer;
		z-index:        0;
	}

	.comments-modal__panel {
		position:            absolute;
		top:                 0;
		right:               0;
		bottom:              0;
		left:                auto;
		flex:                none;
		width:               min(340px, 100vw);
		max-width:           340px;
		height:              100%;
		max-height:          100%;
		transform:           translateX(100%);
		transition:          transform .3s cubic-bezier(.22, 1, .36, 1), box-shadow .3s ease;
		box-shadow:          -8px 0 32px rgba(15, 23, 42, .14);
		border-inline-start: 1px solid rgba(15, 23, 42, .08);
		z-index:             1;
	}

	.comments-modal.is-open.is-visible .comments-modal__panel {
		transform: translateX(0);
	}

	.comments-modal__footer--minimal .comments-area__form-wrap {
		padding: 1rem;
	}

	.comments-modal__scroll {
		padding-inline: .85rem;
	}
}

/* ====================================================================
   صفحه‌بندی
   ==================================================================== */
.pagination { display: flex; justify-content: center; margin: 2.5rem 0; }
.pagination-list {
	list-style:  none;
	display:     flex;
	align-items: center;
	gap:         .4rem;
}
.pagination-item a,
.pagination-item span {
	display:       flex;
	align-items:   center;
	justify-content: center;
	min-width:     38px;
	height:        38px;
	padding:       0 .75rem;
	background:    var(--clr-surface);
	border:        1px solid var(--clr-border);
	border-radius: var(--radius-sm);
	color:         var(--clr-muted);
	font-size:     var(--fs-sm);
	transition:    all var(--transition);
}
.pagination-item a:hover { background: rgba(var(--clr-primary-rgb),.15); border-color: var(--clr-primary); color: var(--clr-primary); }
.pagination-item.active span { background: var(--clr-primary); border-color: var(--clr-primary); color: #fff; }

/* ====================================================================
   Breadcrumb — v2 (مینیمال و مدرن)
   ==================================================================== */
.breadcrumb {
	display:         flex;
	justify-content: flex-start;
	margin:          0;
	font-size:       var(--breadcrumb-font-size);
}
.breadcrumb-list {
	list-style:  none;
	display:     inline-flex;
	align-items: center;
	flex-wrap:   wrap;
	gap:         0;
	max-width:   100%;
	padding:     0;
	margin:      0;
	font-size:   var(--breadcrumb-font-size);
	line-height: 1.25;
}
.breadcrumb-item {
	display:     inline-flex;
	align-items: center;
	gap:         .1rem;
	min-width:   0;
	color:       var(--clr-muted);
}
.breadcrumb-link,
.breadcrumb-item.active .breadcrumb-current {
	display:         inline-flex;
	align-items:     center;
	gap:             .25rem;
	max-width:       min(200px, 48vw);
	padding:         0;
	overflow:        hidden;
	text-overflow:   ellipsis;
	white-space:     nowrap;
	font-size:       var(--breadcrumb-font-size);
	transition:      color var(--transition);
}
.breadcrumb-link {
	color: var(--clr-muted);
}
.breadcrumb-link:hover {
	color: var(--clr-primary);
}
.breadcrumb-link--home {
	padding-inline: 0;
}
.breadcrumb-home__icon {
	flex:    0 0 auto;
	width:   13px;
	height:  13px;
	opacity: .8;
}
.breadcrumb-item.active .breadcrumb-current {
	color:       var(--clr-text);
	font-weight: var(--type-weight-subtitle);
}
.breadcrumb-sep {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	flex:            0 0 auto;
	margin-inline:   .1rem;
	color:           rgba(var(--clr-primary-rgb), .32);
}
.breadcrumb-sep__icon {
	display: block;
	width:  11px;
	height: 11px;
}
.breadcrumb-text {
	overflow:      hidden;
	text-overflow: ellipsis;
	white-space:   nowrap;
	font-size:     var(--breadcrumb-font-size);
}

/* سازگاری با breadcrumb قدیمی (::before) */
.breadcrumb-list .breadcrumb-item + .breadcrumb-item::before {
	display: none;
}

/* ====================================================================
   فوتر
   ==================================================================== */
.site-footer {
	margin-top:  0;
	border-top:  1px solid var(--clr-border);
	background:  var(--clr-surface);
}
.footer-widgets {
	padding:       3rem 0 2rem;
	border-bottom: 1px solid var(--clr-border);
}
.footer-widgets__grid {
	display:               grid;
	gap:                   2rem;
}
.footer-widgets__grid--2 { grid-template-columns: repeat(2, 1fr); }
.footer-widgets__grid--3 { grid-template-columns: repeat(3, 1fr); }
.footer-widgets__grid--4 { grid-template-columns: repeat(4, 1fr); }

.footer-bottom {
	padding: 1.15rem 0;
}
.footer-bottom__inner {
	display:         flex;
	align-items:     center;
	justify-content: center;
	text-align:      center;
}
.footer-bottom__copyright { font-size: var(--fs-sm); color: var(--clr-muted); }
.footer-nav {
	list-style:  none;
	padding:     0;
	display:     flex;
	flex-wrap:   wrap;
	gap:         .25rem;
}
.footer-nav a {
	padding:     .25rem .6rem;
	color:       var(--clr-muted);
	font-size:   var(--fs-sm);
	transition:  color var(--transition);
}
.footer-nav a:hover { color: var(--clr-primary); }

/* ====================================================================
   شبکه‌های اجتماعی
   ==================================================================== */
.social-icons { display: flex; align-items: center; gap: .5rem; }
.social-icon {
	display:         flex;
	align-items:     center;
	justify-content: center;
	width:           34px;
	height:          34px;
	border-radius:   var(--radius-full);
	background:      rgba(var(--clr-primary-rgb),.06);
	border:          1px solid var(--clr-border);
	color:           var(--clr-muted);
	transition:      all var(--transition);
}
.social-icon svg { width: 16px; height: 16px; }
.social-icon:hover { transform: translateY(-3px); color: #fff; }
.social-icon--instagram:hover { background: linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); border-color: transparent; }
.social-icon--telegram:hover  { background: #0088cc; border-color: transparent; }
.social-icon--twitter:hover   { background: #1da1f2; border-color: transparent; }
.social-icon--youtube:hover   { background: #ff0000; border-color: transparent; }
.social-icon--linkedin:hover  { background: #0077b5; border-color: transparent; }
.social-icon--github:hover    { background: #333; border-color: transparent; }

/* ====================================================================
   دکمه بازگشت به بالا
   ==================================================================== */
.back-to-top {
	position:        fixed;
	bottom:          clamp(1rem, 3vw, 2rem);
	inset-inline-end: 2rem;
	width:           52px;
	height:          52px;
	background:      linear-gradient(135deg, var(--clr-button-gradient-start), var(--clr-button-gradient-end));
	border:          1px solid rgba(255,255,255,.42);
	border-radius:   var(--radius-full);
	color:           #fff;
	cursor:          pointer;
	display:         flex;
	align-items:     center;
	justify-content: center;
	z-index:         var(--z-back-to-top);
	opacity:         0;
	visibility:      hidden;
	transform:       translateY(18px) scale(.92);
	transition:      opacity var(--transition), visibility var(--transition), transform var(--transition), box-shadow var(--transition);
	box-shadow:      0 18px 42px rgba(var(--clr-button-rgb),.35), inset 0 1px 0 rgba(255,255,255,.4);
	overflow:        hidden;
}
.back-to-top::before {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: inherit;
	background: linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,0));
	pointer-events: none;
}
.back-to-top.is-visible {
	opacity:    1;
	visibility: visible;
	transform:  translateY(0) scale(1);
}
.back-to-top:hover {
	transform:  translateY(-4px) scale(1.04);
	box-shadow: 0 22px 48px rgba(var(--clr-button-rgb),.45), inset 0 1px 0 rgba(255,255,255,.5);
}
.back-to-top:active { transform: translateY(-1px) scale(.98); }
.back-to-top:focus-visible {
	outline:        3px solid rgba(255,255,255,.75);
	outline-offset: 4px;
}
.back-to-top svg {
	position: relative;
	width:    21px;
	height:   21px;
	color:    #fff;
	fill:     currentColor;
	stroke:   currentColor;
	filter:   drop-shadow(0 2px 4px rgba(0,0,0,.18));
}

/* ====================================================================
   صفحه ۴۰۴
   ==================================================================== */
.error-404 {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 76vh;
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.error-404__inner {
	position: relative;
	text-align: center;
	padding:    2.2rem 1.2rem;
	max-width:  720px;
	width:      100%;
}
.error-404__badge {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	padding:         var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	border-radius:   var(--radius-full);
	font-size:       var(--ui-badge-font);
	font-weight:     var(--ui-badge-weight);
	letter-spacing:  .04em;
	color:           var(--clr-primary);
	background:      transparent;
	border:          none;
	position:        relative;
	margin-bottom:   1rem;
	line-height:     1.2;
}
.error-404__graphic {
	position: relative;
	margin-bottom: 1.6rem;
	user-select: none;
	display: inline-grid;
	place-items: center;
}
.error-404__number {
	font-size:   clamp(4.8rem, 12vw, 8.2rem);
	font-weight: var(--type-weight-title);
	background:  linear-gradient(135deg, var(--clr-primary), var(--clr-secondary));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	line-height: 1;
	display: block;
	position: relative;
	z-index: 2;
}
.error-404__ring {
	position:  absolute;
	inset: 50% auto auto 50%;
	width: clamp(140px, 30vw, 220px);
	height: clamp(140px, 30vw, 220px);
	transform: translate(-50%, -50%);
	border-radius: 50%;
	border: 1px dashed rgba(var(--clr-primary-rgb),.38);
	animation: spin404 14s linear infinite;
	z-index: 1;
	pointer-events: none;
}
@keyframes spin404 {
	from { transform: translate(-50%, -50%) rotate(0deg); }
	to { transform: translate(-50%, -50%) rotate(360deg); }
}
.error-404__title {
	font-size: var(--type-title);
	font-weight: var(--type-weight-subtitle);
	margin-bottom: 0;
	position: relative;
}
.error-404__desc {
	color: var(--clr-muted);
	margin: .85rem auto 0;
	max-width: 520px;
	font-size: var(--fs-lg);
	line-height: 1.9;
	position: relative;
}
.error-404__btn {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	margin-top:      1.4rem;
	padding:         .72rem 1.6rem;
	border-radius:   var(--radius-full);
	font-size:       var(--fs-base);
	font-weight: var(--type-weight-subtitle);
	color:           var(--clr-button-text, #fff);
	background:      var(--clr-button-gradient, linear-gradient(135deg, var(--clr-primary), var(--clr-secondary)));
	text-decoration: none;
	transition:      transform .2s ease, box-shadow .2s ease;
}
.error-404__btn:hover {
	transform:  translateY(-2px);
	box-shadow: 0 8px 24px rgba(var(--clr-primary-rgb, 0, 128, 128), .28);
	color:       var(--clr-button-text, #fff);
}

/* طرح مینیمال */
.error-404--minimal .error-404__code {
	font-size:      clamp(3.5rem, 10vw, 6rem);
	font-weight: var(--type-weight-subtitle);
	color:          var(--clr-muted);
	letter-spacing: .08em;
	margin-bottom:  .6rem;
	line-height:    1;
}

/* طرح شیشه‌ای */
.error-404--glass {
	min-height: 70vh;
}
.error-404--glass .error-404__card {
	padding:          2.4rem 2rem;
	border-radius:    var(--radius-lg, 16px);
	background:       rgba(var(--clr-surface-rgb, 255, 255, 255), .55);
	border:           1px solid rgba(var(--clr-primary-rgb), .18);
	box-shadow:       0 16px 48px rgba(var(--clr-primary-rgb), .10);
	backdrop-filter:  blur(14px);
	-webkit-backdrop-filter: blur(14px);
}
.error-404--glass .error-404__badge {
	background:    rgba(var(--clr-primary-rgb), .12);
	border:        1px solid rgba(var(--clr-primary-rgb), .22);
	padding:       .35rem 1rem;
}

/* طرح تصویر */
.error-404--image .error-404__figure {
	margin:        0 auto 1.2rem;
	max-width:     min(480px, 100%);
}
.error-404--image .error-404__custom-image {
	width:         100%;
	height:        auto;
	border-radius: var(--radius-md, 12px);
	object-fit:    contain;
}

/* HTML سفارشی */
.error-404--html .error-404__custom-html {
	width: 100%;
}

/* ====================================================================
   هیرو تک‌نوشته پادکست (هم‌تراز با هیرو دوره)
   ==================================================================== */
.podcast-single__info {
	position:       relative;
	overflow:       hidden;
	margin-inline:  calc(50% - 50vw);
	padding:        1.6rem max(1.5rem, calc((100vw - var(--container)) / 2 + 1.5rem));
	border-radius:  0;
	background:     radial-gradient(circle at 12% 0, rgba(var(--clr-primary-rgb), .16), transparent 34%),
		linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(var(--clr-primary-rgb), .86));
	color:          #fff;
	box-shadow:     0 24px 70px rgba(15, 23, 42, .14);
}
.podcast-single__info::after {
	content:        '';
	position:       absolute;
	inset:          auto -7% -38% auto;
	width:          320px;
	height:         320px;
	border-radius:  50%;
	background:     rgba(255, 255, 255, .1);
	pointer-events: none;
}
.podcast-single__info > * { position: relative; z-index: 1; }
.podcast-single__info .podcast-hero__breadcrumb { margin: 0; }
.podcast-single__info .breadcrumb { margin: 0; }
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-list {
	display:         flex;
	flex-wrap:       wrap;
	gap:             0;
	align-items:     center;
	margin:          0;
	padding:         0;
	list-style:      none;
	color:           rgba(255, 255, 255, .82);
}
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-link,
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-item.active,
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-item.active .breadcrumb-current,
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-home { color: rgba(255, 255, 255, .82); }
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-link:hover,
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-home:hover { color: #fff; }
.podcast-single__info .podcast-hero__breadcrumb .breadcrumb-sep { color: rgba(255, 255, 255, .45); }
.podcast-hero {
	display:               grid;
	grid-template-columns: minmax(260px, 380px) minmax(0, 1fr);
	gap:                   2.75rem;
	align-items:           start;
}
.podcast-hero__visual { position: relative; }
.podcast-hero-cover {
	position:      relative;
	border-radius: 28px;
	overflow:      hidden;
	background:    rgba(255, 255, 255, .1);
	box-shadow:    0 32px 80px rgba(0, 0, 0, .38), 0 0 0 1px rgba(255, 255, 255, .14);
}
.podcast-hero-cover__img {
	width:      100%;
	height:     auto;
	display:    block;
	object-fit: cover;
}
.podcast-hero-cover::after {
	content:        '';
	position:       absolute;
	inset:          45% 0 0 0;
	background:     linear-gradient(to bottom, transparent, rgba(0, 0, 0, .32));
	pointer-events: none;
}
.podcast-hero-cover__placeholder {
	width:           100%;
	min-height:      260px;
	display:         flex;
	align-items:     center;
	justify-content: center;
	color:           rgba(255, 255, 255, .4);
}
.podcast-hero-cover__badge {
	position:                absolute;
	bottom:                  .85rem;
	inset-inline-start:      .85rem;
	z-index:                 2;
	display:                 inline-flex;
	align-items:             center;
	gap:                     .3rem;
	padding:                 var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	border-radius:           999px;
	font-size:               var(--ui-badge-font);
	font-weight:             var(--ui-badge-weight);
	backdrop-filter:         blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border:                  1px solid rgba(255, 255, 255, .22);
	background:              rgba(var(--clr-primary-rgb), .35);
	color:                   #fff;
	line-height:             1.2;
}
.podcast-hero__content {
	display:        flex;
	flex-direction: column;
	gap:            .9rem;
	min-width:      0;
	padding-top:    .25rem;
}
.podcast-hero__series { display: flex; flex-wrap: wrap; gap: .4rem; }
.podcast-hero__series-tag {
	display:         inline-flex;
	align-items:     center;
	padding:         var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	border-radius:   999px;
	background:      rgba(255, 255, 255, .13);
	border:          1px solid rgba(255, 255, 255, .19);
	color:           rgba(255, 255, 255, .9);
	font-size:       var(--ui-badge-font);
	font-weight:     var(--ui-badge-weight);
	text-decoration: none;
	line-height:     1.2;
	transition:      background .15s, color .15s;
}
.podcast-hero__series-tag:hover { background: rgba(255, 255, 255, .22); color: #fff; }
.podcast-hero__title {
	font-size:       var(--type-title);
	font-weight: var(--type-weight-title);
	margin:          0;
	line-height:     1.18;
	color:           #fff;
	letter-spacing:  -.04em;
}
.podcast-hero__guest {
	display:     inline-flex;
	align-items: center;
	gap:         .42rem;
	padding:     .36rem .8rem .36rem .58rem;
	border-radius: 999px;
	background:  rgba(255, 255, 255, .1);
	border:      1px solid rgba(255, 255, 255, .15);
	width:       max-content;
	max-width:   100%;
}
.podcast-hero__guest-avatar {
	width:           26px;
	height:          26px;
	border-radius:   50%;
	background:      rgba(255, 255, 255, .16);
	display:         flex;
	align-items:     center;
	justify-content: center;
	flex-shrink:     0;
	color:           rgba(255, 255, 255, .8);
}
.podcast-hero__guest-label { font-size: var(--type-body); color: rgba(255, 255, 255, .58); }
.podcast-hero__guest-name  { font-size: var(--type-body); font-weight: var(--type-weight-subtitle); color: #fff; }
.podcast-hero__excerpt {
	color:       rgba(255, 255, 255, .72);
	font-size: var(--type-body);
	line-height: 1.9;
	margin:      0;
}
.podcast-hero__excerpt p { margin: 0; }
.podcast-hero__meta-row {
	display:       flex;
	align-items:   center;
	flex-wrap:     wrap;
	gap:           .65rem 1rem;
	font-size: var(--type-body);
	color:         rgba(255, 255, 255, .68);
}
.podcast-hero__meta-item--duration { display: inline-flex; align-items: center; gap: .35rem; }
.podcast-hero__recommend-slot {
	margin: 0;
}
.podcast-hero__recommend-slot:empty {
	display: none;
}
/* نوار درصد پیشنهاد — هم‌تراز با course-hero__recommend-* */
.course-hero__recommend-slot {
	margin: 0;
}
.course-hero__recommend-slot:empty {
	display: none;
}
.course-hero__recommend-text,
.podcast-hero__recommend-text {
	display:         inline-flex;
	align-items:     center;
	gap:             .55rem;
	margin:          0 0 .55rem;
	width:           fit-content;
	max-width:       100%;
	box-sizing:      border-box;
	padding:         .48rem .75rem .48rem .55rem;
	border-radius:   999px;
	background:      rgba(255, 255, 255, .1);
	border:          1px solid rgba(255, 255, 255, .16);
	font-size: var(--type-body);
	line-height:     1.55;
	color:           rgba(255, 255, 255, .82);
}
.podcast-hero__recommend-text {
	font-size:   var(--type-caption);
	line-height: 1.4;
	padding:     .32rem .58rem .32rem .46rem;
}
.course-hero__recommend-icon,
.podcast-hero__recommend-icon {
	display:         inline-flex;
	flex-shrink:     0;
	align-items:     center;
	justify-content: center;
	width:           22px;
	height:          22px;
	border-radius:   50%;
	background:      rgba(34, 197, 94, .28);
	border:          1px solid rgba(255, 255, 255, .22);
	color:           #bbf7d0;
}
.course-hero__recommend-icon svg,
.podcast-hero__recommend-icon svg {
	display: block;
}
.course-hero__recommend-copy,
.podcast-hero__recommend-copy {
	flex:      1;
	min-width: 0;
}
.course-hero__recommend-pct,
.podcast-hero__recommend-pct {
	font-weight: var(--type-weight-title);
	color:          #86efac;
	letter-spacing: -.02em;
}
.podcast-hero__divider {
	height:     1px;
	background: rgba(255, 255, 255, .1);
	border:     0;
	margin:     .1rem 0;
}
.podcast-hero__cta-row {
	display:        flex;
	align-items:    center;
	gap:            1.25rem;
	flex-wrap:      wrap;
}
.podcast-hero__cta-actions {
	display:        flex;
	align-items:    center;
	gap:            .9rem;
	flex-wrap:      wrap;
}
.podcast-hero__play-btn {
	border:          0;
	background:      #fff;
	color:           var(--clr-primary);
	box-shadow:      0 12px 28px rgba(0, 0, 0, .16);
	font-size:       var(--ui-btn-font);
	font-weight:     var(--ui-btn-weight);
	transition:      transform .18s ease, box-shadow .18s ease;
}
.podcast-hero__play-btn:hover {
	transform:  translateY(-2px);
	box-shadow: 0 18px 38px rgba(0, 0, 0, .22);
	color:      var(--clr-primary);
}
.podcast-hero__panel-link {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	gap:             .35rem;
	min-height:      var(--ui-btn-min-height);
	padding:         var(--ui-btn-pad-y) var(--ui-btn-pad-x);
	border:          2px solid rgba(255, 255, 255, 0.42);
	border-radius:   var(--radius-full);
	background:      transparent;
	color:           #fff;
	font-size:       var(--ui-btn-font);
	font-weight:     var(--ui-btn-weight);
	font-family:     var(--font-primary, inherit);
	text-decoration: none;
	white-space:     nowrap;
	box-sizing:      border-box;
	transition:      color .15s ease, opacity .15s ease, border-color .15s ease, background .15s ease;
}
.podcast-hero__panel-link:hover {
	color:            #fff;
	opacity:          1;
	border-color:     rgba(255, 255, 255, 0.72);
	background:       rgba(255, 255, 255, 0.08);
}
.podcast-hero__panel-link__icon {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	flex-shrink:     0;
	margin-top:      .06em;
	opacity:         .92;
}
.podcast-hero__panel-link__icon svg {
	display: block;
}
.podcast-hero__share .share-buttons {
	display:    flex;
	align-items: center;
	flex-wrap:  wrap;
	gap:        .4rem;
	margin:     0;
	padding:    0;
	background: transparent;
	border:     0;
	box-shadow: none;
}
.podcast-hero__share .share-label { color: rgba(255, 255, 255, .6); font-size: var(--type-body); font-weight: var(--type-weight-subtitle); }
.podcast-hero__share .share-btn {
	background: rgba(255, 255, 255, .11);
	border:     1px solid rgba(255, 255, 255, .15);
	color:      #fff;
}
html.has-podcast-player-scroll-lock,
body.has-podcast-player-scroll-lock {
	overflow: hidden;
	width:  100%;
}

/* مودال پلیر بالاتر از هدر و تمام لایه‌های سراسری (body > * زیر هدر گیر می‌کند) */
body.has-sc-floating-player > #masthead,
body.has-sc-floating-player > .diaram-mobile-nav-overlay,
body.has-sc-floating-player > #mobile-menu {
	z-index: 0 !important;
}
body.has-sc-floating-player > #page {
	position: relative;
	z-index:  10050;
}

/* پلیر تمام‌صفحه پادکست (هم‌نسخهٔ پلیر دوره) */
body.has-sc-floating-player:not(.diaram-course-page) {
	padding-bottom: 0;
	overflow:         hidden;
}
body.has-sc-mini-player:not(.diaram-course-page) {
	padding-bottom: 92px;
}
.single-podcast .podcast-mobile-bar { display: none; }
.single-podcast .sc-player-backdrop {
	display:    block;
	position:   fixed;
	inset:      0;
	width:      100vw;
	height:     100dvh;
	background: rgba(15, 23, 42, .48);
	opacity:    0;
	transition: opacity .25s ease;
}
.single-podcast .sc-player-overlay.is-open .sc-player-backdrop { opacity: 1; }

/* ===== مینی‌پلیر پایین (مشترک پادکست و دوره) ===== */
.sc-mobile-mini-player {
	--pl-accent:          var(--clr-secondary);
	--mini-cover-size:    44px;
	--mini-action-size:   36px;
	--mini-stop-size:     40px;
	--mini-stop-icon:     18px;
	position:             fixed;
	left:                 0;
	right:                0;
	bottom:               0;
	z-index:              9998;
	display:              grid;
	grid-template-columns: minmax(0, 1fr) var(--mini-stop-size);
	align-items:          center;
	gap:                  .65rem;
	padding:              .7rem 1rem calc(.85rem + env(safe-area-inset-bottom, 0px));
	border:               0;
	border-top:           1px solid rgba(15, 23, 42, .08);
	border-radius:        0;
	background:           rgba(255, 255, 255, .96);
	box-shadow:           0 -12px 40px rgba(15, 23, 42, .12);
	backdrop-filter:      blur(18px) saturate(1.2);
	-webkit-backdrop-filter: blur(18px) saturate(1.2);
	color:                var(--clr-text, #0f172a);
	font-family:          var(--font-primary, inherit);
	text-align:           right;
	opacity:              0;
	pointer-events:       none;
	transform:            translateY(calc(100% + 1.5rem));
	transition:           opacity .22s ease, transform .22s ease;
}
body.has-sc-mini-player .sc-mobile-mini-player {
	opacity:        1;
	pointer-events: auto;
	transform:      translateY(0);
}
.sc-mobile-mini-player__open {
	min-width:             0;
	display:               grid;
	grid-template-columns: var(--mini-cover-size) minmax(0, 1fr) var(--mini-action-size);
	align-items:           center;
	gap:                   .7rem;
	border:                0;
	background:            transparent;
	color:                 inherit;
	font-family:           inherit;
	text-align:            inherit;
	cursor:                pointer;
	padding:               0;
}
.sc-mobile-mini-player__cover {
	width:            var(--mini-cover-size);
	height:           var(--mini-cover-size);
	border-radius:    12px;
	overflow:         hidden;
	background:       rgba(15, 23, 42, .06);
	display:          flex;
	align-items:      center;
	justify-content:  center;
	color:            rgba(15, 23, 42, .45);
	box-shadow:       0 4px 14px rgba(15, 23, 42, .1);
	flex-shrink:      0;
}
.sc-mobile-mini-player__cover img {
	width:      100%;
	height:     100%;
	object-fit: cover;
}
.sc-mobile-mini-player__body {
	min-width:      0;
	display:        flex;
	flex-direction: column;
	gap:            .15rem;
}
.sc-mobile-mini-player__label {
	font-size:   var(--type-meta);
	font-weight: var(--font-weight-medium);
	line-height: 1.3;
	color:       var(--pl-accent);
}
.sc-mobile-mini-player__title {
	font-size:     var(--type-widget);
	font-weight:   var(--type-weight-subtitle);
	line-height:   1.35;
	color:         var(--clr-text, #0f172a);
	white-space:   nowrap;
	overflow:      hidden;
	text-overflow: ellipsis;
}
.sc-mobile-mini-player__icon {
	width:           var(--mini-action-size);
	height:          var(--mini-action-size);
	border-radius:   999px;
	background:      linear-gradient(140deg, var(--pl-accent), color-mix(in srgb, var(--pl-accent) 72%, #fff));
	color:           #fff;
	display:         flex;
	align-items:     center;
	justify-content: center;
	box-shadow:      0 8px 20px color-mix(in srgb, var(--pl-accent) 35%, transparent);
	flex-shrink:     0;
}
.sc-mobile-mini-player__icon svg {
	width:  16px;
	height: 16px;
}
.sc-mobile-mini-player__stop {
	width:           var(--mini-stop-size);
	height:          var(--mini-stop-size);
	border:          1px solid rgba(15, 23, 42, .12);
	border-radius:   12px;
	background:      rgba(15, 23, 42, .05);
	color:           var(--clr-text, #0f172a);
	display:         flex;
	align-items:     center;
	justify-content: center;
	box-shadow:      none;
	cursor:          pointer;
	padding:         0;
	flex-shrink:     0;
	transition:      background .2s ease, border-color .2s ease, transform .2s ease;
}
.sc-mobile-mini-player__stop:hover {
	background:   rgba(15, 23, 42, .09);
	border-color: rgba(15, 23, 42, .18);
}
.sc-mobile-mini-player__stop:active {
	transform: scale(.96);
}
.sc-mobile-mini-player__stop-icon {
	width:   var(--mini-stop-icon);
	height:  var(--mini-stop-icon);
	display: block;
}
.sc-mobile-mini-player__progress {
	position:      absolute;
	left:          18px;
	right:         18px;
	bottom:        6px;
	height:        3px;
	border-radius: 999px;
	background:    rgba(15, 23, 42, .08);
	overflow:      hidden;
}
.sc-mobile-mini-player__progress span {
	display:         block;
	width:           0;
	height:          100%;
	border-radius:   inherit;
	background:      var(--pl-accent);
}
.podcast-mobile-mini-player {
	--mini-cover-size:  40px;
	--mini-action-size: 32px;
	--mini-stop-size:   36px;
	--mini-stop-icon:   16px;
	padding:            .55rem .85rem calc(.7rem + env(safe-area-inset-bottom, 0px));
}
.podcast-mobile-mini-player .sc-mobile-mini-player__label {
	font-size:   var(--type-caption);
	line-height: 1.25;
}
.podcast-mobile-mini-player .sc-mobile-mini-player__title {
	font-size:   var(--type-meta);
	font-weight: var(--font-weight-medium);
	line-height: 1.3;
}
.podcast-mobile-mini-player .sc-mobile-mini-player__icon svg {
	width:  14px;
	height: 14px;
}
.single-podcast .podcast-modal__audio {
	position: absolute;
	width:    1px;
	height:   1px;
	padding:  0;
	margin:   -1px;
	overflow: hidden;
	clip:     rect(0, 0, 0, 0);
	clip-path: inset(50%);
	border:   0;
}
.single-podcast .sc-player-overlay {
	position:   fixed;
	inset:      0;
	top:        0;
	width:      100vw;
	height:     100dvh;
	min-height: 100vh;
	z-index:    10051;
	pointer-events: none;
	visibility: hidden;
}
.single-podcast .sc-player-overlay.is-open {
	visibility:     visible;
	pointer-events: auto;
}
.single-podcast .sc-floating-player {
	--pl-accent:          var(--clr-secondary);
	--pl-text:            #f4f6fb;
	--pl-muted:           rgba(255, 255, 255, .58);
	--pl-surface:         rgba(255, 255, 255, .06);
	--pl-surface-hover:   rgba(255, 255, 255, .12);
	--pl-border:          rgba(255, 255, 255, .1);
	--dcp-ctrl-size:      48px;
	position:              fixed;
	inset:                 0;
	left:                  0;
	right:                 0;
	top:                   0;
	bottom:                0;
	transform:             translateY(100%);
	width:                 100vw;
	height:                100dvh;
	max-width:             100%;
	max-height:            none;
	display:               flex;
	flex-direction:        column;
	align-items:           stretch;
	align-content:         center;
	justify-content:       center;
	gap:                   1.5rem;
	padding:               5rem 1.2rem 2.2rem;
	overflow-y:            auto;
	border-radius:         0;
	background:            #0c0f17;
	color:                 var(--pl-text);
	border:                0;
	box-shadow:            none;
	overflow-x:            hidden;
	isolation:             isolate;
	transition:            transform .32s cubic-bezier(.22, 1, .36, 1);
}
.single-podcast .sc-floating-player__bg {
	background: #0c0f17;
}
.single-podcast .sc-floating-player__bg.is-empty {
	background: radial-gradient(120% 80% at 50% -10%, color-mix(in srgb, var(--pl-accent) 38%, #0c0f17) 0%, #0c0f17 60%);
}
.single-podcast .sc-floating-player__bg-blur {
	display:             block;
	position:            absolute;
	top:                 50%;
	left:                50%;
	width:               130%;
	height:              130%;
	background-size:     cover;
	background-position: center;
	background-repeat:   no-repeat;
	filter:              blur(60px) saturate(1.5);
	transform:           translate(-50%, -50%) scale(1.1);
	opacity:             .55;
}
.single-podcast .sc-floating-player__bg-blur[hidden] {
	display: none;
}
.single-podcast .sc-floating-player__bg-tint {
	background:
		radial-gradient(120% 90% at 50% 0%, rgba(12, 15, 23, .35) 0%, rgba(12, 15, 23, .82) 58%, #0c0f17 100%);
	backdrop-filter:         blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
.single-podcast .sc-floating-player .dcp-player-top {
	display:        flex;
	flex-direction: column;
	align-items:    center;
	justify-content: center;
	text-align:     center;
	gap:            1.25rem;
	min-width:      0;
	width:          100%;
}
.single-podcast .sc-floating-player .dcp-cover.podcast-modal-cover {
	flex-shrink:     0;
	align-self:      center;
	margin-inline:   auto;
	width:           min(82vw, 300px);
	max-width:       100%;
	aspect-ratio:    1 / 1;
	min-width:       0;
	min-height:      0;
	border-radius:   24px;
	overflow:        hidden;
	background:      linear-gradient(155deg, rgba(255, 255, 255, .1) 0%, rgba(255, 255, 255, .03) 100%);
	border:          1px solid rgba(255, 255, 255, .12);
	box-shadow:      0 30px 70px rgba(0, 0, 0, .55), 0 0 0 1px rgba(255, 255, 255, .04) inset;
	position:        relative;
}
.single-podcast .sc-floating-player .dcp-cover.podcast-modal-cover--empty {
	max-width: min(230px, 68vw, 50vmin);
}
/* فریم کاور: یک تصویر ثابت؛ اسلایدر دوره (.dcp-slide-stage) اینجا نیست. */
.single-podcast .sc-floating-player .podcast-modal-cover .podcast-modal-cover__frame {
	position:   absolute;
	inset:      0;
	overflow:   hidden;
	box-sizing: border-box;
	line-height: 0;
}
.single-podcast .sc-floating-player .podcast-modal-cover .podcast-modal-cover__frame .dcp-cover__img {
	position:        absolute;
	inset:           0;
	display:         block;
	width:           100%;
	height:          100%;
	margin:          0;
	object-fit:      cover;
	object-position: center;
	z-index:         1;
}
.single-podcast .sc-floating-player .podcast-modal-cover .dcp-cover-placeholder {
	position:        absolute;
	inset:           0;
	display:         flex;
	align-items:     center;
	justify-content: center;
	margin:          0;
	min-height:      0;
	z-index:         0;
	color:           rgba(255, 255, 255, .45);
}
.single-podcast .sc-player-overlay.is-open .sc-floating-player { transform: translateY(0); }
.single-podcast .sc-floating-player .dcp-info {
	flex:        none;
	width:       100%;
	max-width:   36rem;
	min-width:   0;
	margin-inline: auto;
	text-align:  center;
}
.single-podcast .sc-floating-player .dcp-info { max-width: 32rem; }
.single-podcast .sc-floating-player .dcp-course-sub {
	font-size:     var(--type-body);
	color:         color-mix(in srgb, var(--pl-accent) 60%, #fff);
	margin:        0 0 .35rem;
	font-weight:   var(--type-weight-subtitle);
	white-space:   normal;
	overflow:      visible;
	text-overflow: unset;
}
.single-podcast .sc-floating-player .dcp-session-name {
	font-size:     var(--type-title);
	font-weight:   var(--type-weight-title);
	margin:        0;
	color:         var(--pl-text);
	line-height:   1.5;
	white-space:   normal;
	overflow:      visible;
	text-overflow: unset;
}
.single-podcast .dcp-seek-wrap {
	flex-shrink:   0;
	display:       flex;
	align-items:   center;
	gap:           .7rem;
	direction:     ltr;
	max-width:     34rem;
	margin-inline: auto;
	width:         100%;
}
.single-podcast .dcp-seek-track {
	height:        6px;
	flex:          1;
	border-radius: 999px;
	background:    rgba(255, 255, 255, .14);
	position:      relative;
	cursor:        pointer;
}
.single-podcast .dcp-seek-buffer {
	position:      absolute;
	top:           0;
	left:          0;
	height:        100%;
	width:         0;
	border-radius: inherit;
	background:    rgba(255, 255, 255, .12);
	z-index:       0;
}
.single-podcast .dcp-seek-fill {
	position:      absolute;
	top:           0;
	left:          0;
	height:        100%;
	width:         0;
	border-radius: inherit;
	background:    linear-gradient(90deg, var(--pl-accent), color-mix(in srgb, var(--pl-accent) 55%, #fff));
	z-index:       1;
}
.single-podcast .dcp-seek-thumb {
	position:      absolute;
	top:           50%;
	left:          0;
	width:         14px;
	height:        14px;
	border-radius: 999px;
	background:    #fff;
	border:        0;
	box-shadow:    0 2px 10px rgba(0, 0, 0, .45);
	transform:     translate(-50%, -50%);
	z-index:       2;
}
.single-podcast .dcp-time {
	font-size:  var(--type-body);
	color:      var(--pl-muted);
	min-width:  40px;
	text-align: center;
}
.single-podcast .sc-floating-player .dcp-controls {
	flex-shrink:     0;
	display:         flex;
	align-items:     center;
	justify-content: center;
	gap:             .75rem;
	width:           100%;
	max-width:       34rem;
	margin-inline:   auto;
}
.single-podcast .sc-floating-player .dcp-btn:not(.btn--primary) {
	width:      var(--dcp-ctrl-size, 48px);
	height:     var(--dcp-ctrl-size, 48px);
	min-width:  var(--dcp-ctrl-size, 48px);
	min-height: var(--dcp-ctrl-size, 48px);
	padding:    0;
	color:      rgba(255, 255, 255, .82);
	transition: color .2s ease, background .2s ease, transform .2s ease;
}
.single-podcast .sc-floating-player .dcp-btn:not(.btn--primary):hover {
	color:      #fff;
	background: rgba(255, 255, 255, .1);
	transform:  scale(1.04);
}
.single-podcast .sc-floating-player .dcp-btn:not(.btn--primary):disabled {
	opacity:    .32;
	cursor:     not-allowed;
	transform:  none;
	background: transparent;
}
.single-podcast .sc-floating-player .dcp-btn.btn--primary.dcp-btn--play,
.single-podcast .sc-floating-player .dcp-btn.btn--primary.dcp-btn--stop {
	width:      var(--dcp-ctrl-size, 48px);
	height:     var(--dcp-ctrl-size, 48px);
	min-width:  var(--dcp-ctrl-size, 48px);
	min-height: var(--dcp-ctrl-size, 48px);
}
.single-podcast .sc-floating-player .dcp-btn.btn--primary.dcp-btn--play {
	border:     0;
	background: linear-gradient(140deg, var(--pl-accent), color-mix(in srgb, var(--pl-accent) 62%, #fff));
	box-shadow: 0 16px 36px color-mix(in srgb, var(--pl-accent) 40%, transparent);
}
.single-podcast .sc-floating-player .dcp-btn.btn--primary.dcp-btn--stop {
	border:     1px solid rgba(255, 255, 255, .16);
	background: rgba(255, 255, 255, .08);
	color:      #fff;
	box-shadow: none;
}
.single-podcast .podcast-floating-player .dcp-btn.btn--primary.dcp-btn--play:hover,
.single-podcast .podcast-floating-player .dcp-btn.btn--primary.dcp-btn--stop:hover {
	transform: scale(1.04);
}
.single-podcast .podcast-modal-links {
	display:         flex;
	flex-wrap:       wrap;
	gap:             .5rem;
	justify-content: center;
	margin-top:      .35rem;
	padding-top:     .9rem;
	border-top:      1px solid rgba(255, 255, 255, .1);
	max-width:       34rem;
	margin-inline:   auto;
	width:           100%;
}
.single-podcast .podcast-modal-links .podcast-platform-btn {
	border:        1px solid rgba(255, 255, 255, .18);
	background:    rgba(255, 255, 255, .06);
	color:         rgba(255, 255, 255, .82);
	border-radius: 999px;
	padding:       .45rem 1rem;
}
.single-podcast .podcast-single { padding-top: 1.25rem; }

/* ===== صف پخش داخل مودال پلیر (مشترک پادکست و دوره) ===== */
.sc-floating-player {
	--dcp-ctrl-size: 48px;
}
.sc-floating-player .dcp-seek-wrap {
	flex-shrink: 0;
}
.sc-floating-player .dcp-controls {
	flex-shrink:     0;
	display:         flex;
	align-items:     center;
	justify-content: center;
	gap:             .75rem;
	width:           100%;
	max-width:       34rem;
	margin-inline:   auto;
}
.sc-floating-player .dcp-btn.btn--primary.dcp-btn--play,
.sc-floating-player .dcp-btn.btn--primary.dcp-btn--stop {
	width:      var(--dcp-ctrl-size, 48px);
	height:     var(--dcp-ctrl-size, 48px);
	min-width:  var(--dcp-ctrl-size, 48px);
	min-height: var(--dcp-ctrl-size, 48px);
	padding:    0;
}
.dcp-player-main {
	display:         flex;
	flex-direction:  column;
	align-items:     stretch;
	gap:             1.25rem;
	width:           100%;
	max-width:       40rem;
	margin-inline:   auto;
	flex:            1 1 auto;
	min-height:      min-content;
	justify-content: center;
	position:        relative;
	z-index:         1;
}
.dcp-player-main > .dcp-player-top {
	flex-shrink: 1;
	min-height:  0;
}
.dcp-player-main > .dcp-seek-wrap,
.dcp-player-main > .dcp-controls,
.dcp-player-main > .podcast-modal-links {
	flex-shrink: 0;
}
.sc-floating-player.is-queue-open {
	justify-content: flex-start;
	gap:             0;
}
.sc-floating-player.is-queue-open .dcp-player-main {
	display: none;
}
.dcp-queue {
	--dcp-q-text:       #f4f6fb;
	--dcp-q-muted:      rgba(255, 255, 255, .58);
	--dcp-q-head-muted: rgba(255, 255, 255, .48);
	--dcp-q-accent:     var(--clr-secondary);
	display:         none;
	flex-direction:  column;
	width:           100%;
	max-width:       40rem;
	margin-inline:   auto;
	flex:            1;
	min-height:      0;
	padding:         0 1rem 1.5rem;
	color:           var(--dcp-q-text);
	position:        relative;
	z-index:         1;
}
.sc-floating-player.is-queue-open .dcp-queue {
	display: flex;
}
.dcp-queue__head {
	display:         flex;
	flex-wrap:       wrap;
	align-items:     center;
	gap:             .75rem;
	padding:         .25rem .4rem 1rem;
	flex-shrink:     0;
}
.dcp-queue__back {
	display:         inline-flex;
	align-items:     center;
	gap:             .45rem;
	width:           100%;
	margin-bottom:   1rem;
	padding:         .55rem .75rem;
	border:          1px solid rgba(255, 255, 255, .12);
	border-radius:   14px;
	background:      rgba(255, 255, 255, .06);
	color:           rgba(255, 255, 255, .9);
	font-family:     inherit;
	font-size:       var(--type-body);
	font-weight:     var(--type-weight-subtitle);
	cursor:          pointer;
	transition:      background .2s ease, border-color .2s ease;
}
.dcp-queue__back:hover {
	background:   rgba(255, 255, 255, .1);
	border-color: rgba(255, 255, 255, .2);
}
.dcp-queue__back span {
	flex: 1;
	text-align: right;
}
.dcp-queue__title {
	margin:      0;
	font-size:   var(--type-subtitle);
	font-weight: var(--type-weight-subtitle);
	color:       var(--dcp-q-head-muted, rgba(255, 255, 255, .48));
}
.dcp-queue__count {
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	min-width:       1.7rem;
	height:          1.7rem;
	padding:         0 .5rem;
	border-radius:   999px;
	background:      rgba(255, 255, 255, .06);
	color:           var(--dcp-q-head-muted, rgba(255, 255, 255, .48));
	font-size:       var(--type-body);
	font-weight:     var(--type-weight-subtitle);
}
.sc-player-modal__queue-toggle[aria-expanded="true"] {
	background: rgba(255, 255, 255, .14);
	color:      #fff;
}
.dcp-queue__list {
	list-style: none;
	margin:     0;
	padding:    0 .1rem .4rem;
	overflow-y: auto;
	flex:       1;
	min-height: 0;
	display:    flex;
	flex-direction: column;
	gap:        .35rem;
	-webkit-overflow-scrolling: touch;
	scrollbar-width:            thin;
	scrollbar-color:            #d1d5db transparent;
}
.dcp-queue__list::-webkit-scrollbar {
	width: 5px;
}
.dcp-queue__list::-webkit-scrollbar-track {
	background: transparent;
}
.dcp-queue__list::-webkit-scrollbar-thumb {
	background:    #d1d5db;
	border-radius: 10px;
}
.dcp-queue__list::-webkit-scrollbar-thumb:hover {
	background: #b0b8c4;
}
.dcp-queue__item {
	border-radius: 16px;
	transition:    background .2s ease;
}
.dcp-queue__item.is-active {
	background: rgba(255, 255, 255, .07);
}
.dcp-queue__item.is-no-audio,
.dcp-queue__item.is-locked {
	opacity: .55;
}
.dcp-queue__item-btn {
	display:         grid;
	grid-template-columns: 52px minmax(0, 1fr) auto;
	align-items:     center;
	gap:             .85rem;
	width:           100%;
	padding:         .55rem .65rem;
	border:          0;
	background:      transparent;
	color:           inherit;
	text-align:      right;
	font-family:     inherit;
	cursor:          pointer;
	border-radius:   16px;
}
.dcp-queue__item-btn:hover { background: rgba(255, 255, 255, .06); }
.dcp-queue__item.is-no-audio .dcp-queue__item-btn,
.dcp-queue__item.is-locked .dcp-queue__item-btn {
	cursor: not-allowed;
}
.dcp-queue__item.is-no-audio .dcp-queue__item-btn:hover,
.dcp-queue__item.is-locked .dcp-queue__item-btn:hover {
	background: transparent;
}
.dcp-queue__cover {
	position:        relative;
	width:           52px;
	height:          52px;
	border-radius:   12px;
	overflow:        hidden;
	flex-shrink:     0;
	background:      rgba(255, 255, 255, .08);
	display:         flex;
	align-items:     center;
	justify-content: center;
	color:           rgba(255, 255, 255, .55);
}
.dcp-queue__cover img {
	width:      100%;
	height:     100%;
	object-fit: cover;
}
.dcp-queue__num {
	font-size:   var(--type-body);
	font-weight: var(--type-weight-title);
	color:       rgba(255, 255, 255, .75);
}
.dcp-queue__item.is-complete .dcp-queue__cover {
	background: rgba(16, 185, 129, .18);
	color:      #34d399;
}
.dcp-queue__cover-state {
	position:        absolute;
	inset:           0;
	display:         none;
	align-items:     center;
	justify-content: center;
	background:      rgba(8, 10, 16, .55);
	color:           #fff;
}
.dcp-queue__item.is-active:not(.is-no-audio):not(.is-locked) .dcp-queue__cover-state,
.dcp-queue__item.is-locked .dcp-queue__cover-state {
	display: flex;
}
.dcp-queue__item.is-locked .dcp-queue__cover-state {
	background: rgba(8, 10, 16, .65);
	color:      rgba(255, 255, 255, .65);
}
.dcp-queue__cover-bars { display: none; }
.dcp-queue__item.is-playing .dcp-queue__cover-play { display: none; }
.dcp-queue__item.is-playing .dcp-queue__cover-bars { display: block; }
.dcp-eq-bar {
	fill:             currentColor;
	transform-origin: center bottom;
	animation:        dcpEq 1s ease-in-out infinite;
}
.dcp-eq-bar:nth-child(2) { animation-delay: .25s; }
.dcp-eq-bar:nth-child(3) { animation-delay: .5s; }
@keyframes dcpEq {
	0%, 100% { transform: scaleY(.4); }
	50%      { transform: scaleY(1); }
}
.dcp-queue__body {
	min-width:      0;
	display:        flex;
	flex-direction: column;
	gap:            .2rem;
}
.dcp-queue__item-title {
	font-size:     var(--type-body);
	font-weight:   var(--type-weight-subtitle);
	color:         var(--dcp-q-text);
	white-space:   nowrap;
	overflow:      hidden;
	text-overflow: ellipsis;
}
.dcp-queue__item.is-active .dcp-queue__item-title {
	color: color-mix(in srgb, var(--dcp-q-accent) 55%, #fff);
}
.dcp-queue__item.is-locked .dcp-queue__item-title,
.dcp-queue__item.is-no-audio .dcp-queue__item-title {
	color: var(--dcp-q-muted);
}
.dcp-queue__item-meta {
	display:     flex;
	align-items: center;
	gap:         .5rem;
	font-size:   var(--type-body);
	color:       var(--dcp-q-muted);
}
.dcp-queue__item-series {
	white-space:   nowrap;
	overflow:      hidden;
	text-overflow: ellipsis;
	max-width:     12rem;
}
.dcp-queue__item-num { flex-shrink: 0; }

#podcast-player-queue-list .dcp-queue__item-title {
	font-size:   var(--type-meta);
	font-weight: var(--type-weight-body);
}

#podcast-player-queue-list .dcp-queue__item-meta {
	font-size:   var(--type-meta);
	font-weight: var(--type-weight-body);
}

@media (max-width: 980px) {
	.single-podcast .sc-floating-player .dcp-player-top {
		flex-direction: column;
		text-align:     center;
		align-items:    center;
	}
	.single-podcast .sc-floating-player .dcp-cover.podcast-modal-cover { max-width: min(310px, 76vw, 65vmin); }
	.single-podcast .sc-floating-player .dcp-cover.podcast-modal-cover--empty {
		max-width: min(250px, 72vw, 54vmin);
	}
}

@media (max-width: 700px) {
	body.has-podcast-mobile-player:not(.diaram-course-page) {
		padding-bottom: calc(118px + env(safe-area-inset-bottom, 0px));
	}
	.single-podcast .podcast-mobile-bar {
		position:                  fixed;
		left:                      0;
		right:                     0;
		bottom:                    0;
		z-index:                   9998;
		display:                   flex;
		flex-direction:            column;
		gap:                       0;
		padding:                   0;
		border:                    0;
		border-radius:             20px 20px 0 0;
		background:                color-mix(in srgb, var(--clr-surface) 88%, transparent);
		box-shadow:
			0 -1px 0 rgba(var(--clr-primary-rgb), .08),
			0 -20px 60px rgba(15, 23, 42, .14);
		backdrop-filter:           blur(24px) saturate(1.4);
		-webkit-backdrop-filter:   blur(24px) saturate(1.4);
		color:                     var(--clr-text);
		font-family:               var(--font-primary, inherit);
		text-align:                right;
		opacity:                   0;
		pointer-events:            none;
		transform:                 translateY(calc(100% + 1rem));
		transition:                opacity .26s cubic-bezier(.4, 0, .2, 1), transform .26s cubic-bezier(.4, 0, .2, 1);
	}
	body.has-podcast-mobile-player:not(.diaram-course-page) .single-podcast .podcast-mobile-bar {
		opacity:        1;
		pointer-events: auto;
		transform:      translateY(0);
	}
	.single-podcast .podcast-mobile-bar__scrub {
		padding: .55rem .85rem 0;
	}
	.single-podcast .podcast-mobile-bar__scrub-track {
		height:        4px;
		border-radius: 999px;
		background:    rgba(var(--clr-primary-rgb), .1);
		position:      relative;
		cursor:        pointer;
		direction:     ltr;
	}
	.single-podcast .podcast-mobile-bar__scrub-buffer {
		position:      absolute;
		inset:         0 auto 0 0;
		height:        100%;
		width:         0;
		border-radius: inherit;
		background:    rgba(var(--clr-primary-rgb), .08);
		z-index:       0;
	}
	.single-podcast .podcast-mobile-bar__scrub-fill {
		position:      absolute;
		inset:         0 auto 0 0;
		height:        100%;
		width:         0;
		border-radius: inherit;
		background:    var(--clr-button-gradient-end);
		z-index:       1;
		transition:    width .08s linear;
	}
	.single-podcast .podcast-mobile-bar__main {
		display:              grid;
		grid-template-columns: 52px minmax(0, 1fr) auto;
		align-items:          center;
		gap:                  .75rem;
		padding:              .65rem .85rem .45rem;
		min-width:            0;
	}
	.single-podcast .podcast-mobile-bar__cover {
		width:            52px;
		height:           52px;
		border-radius:    14px;
		overflow:         hidden;
		flex-shrink:      0;
		background:       linear-gradient(145deg, rgba(var(--clr-primary-rgb), .14), rgba(var(--clr-secondary-rgb), .1));
		display:          flex;
		align-items:      center;
		justify-content:  center;
		color:            var(--clr-primary);
		box-shadow:       0 8px 22px rgba(var(--clr-primary-rgb), .14);
	}
	.single-podcast .podcast-mobile-bar__cover img {
		width:      100%;
		height:     100%;
		object-fit: cover;
	}
	.single-podcast .podcast-mobile-bar__meta {
		min-width:      0;
		display:        flex;
		flex-direction: column;
		gap:            .12rem;
	}
	.single-podcast .podcast-mobile-bar__series {
		font-size: var(--type-body);
		font-weight: var(--type-weight-subtitle);
		color:         var(--clr-primary);
		white-space:   nowrap;
		overflow:      hidden;
		text-overflow: ellipsis;
	}
	.single-podcast .podcast-mobile-bar__title {
		font-size: var(--type-body);
		font-weight: var(--type-weight-subtitle);
		line-height:   1.25;
		color:         var(--clr-text);
		white-space:   nowrap;
		overflow:      hidden;
		text-overflow: ellipsis;
	}
	.single-podcast .podcast-mobile-bar__controls {
		display:         flex;
		align-items:     center;
		gap:             .15rem;
		flex-shrink:     0;
	}
	.single-podcast .podcast-mobile-bar__skip {
		width:           36px;
		height:          36px;
		border:          0;
		border-radius:   999px;
		background:      transparent;
		color:           var(--clr-muted);
		display:         flex;
		align-items:     center;
		justify-content: center;
		cursor:          pointer;
		transition:      color .18s ease, background .18s ease;
	}
	.single-podcast .podcast-mobile-bar__skip:active {
		background: rgba(var(--clr-primary-rgb), .1);
		color:      var(--clr-text);
	}
	.single-podcast .podcast-mobile-bar__play {
		width:           48px;
		height:          48px;
		border:          0;
		border-radius:   999px;
		background:      linear-gradient(145deg, var(--clr-secondary), color-mix(in srgb, var(--clr-secondary) 62%, #fff));
		color:           #fff;
		display:         flex;
		align-items:     center;
		justify-content: center;
		cursor:          pointer;
		box-shadow:      0 10px 28px rgba(var(--clr-primary-rgb), .32);
		transition:      transform .18s ease, box-shadow .18s ease;
	}
	.single-podcast .podcast-mobile-bar__play:active {
		transform: scale(.96);
	}
	.single-podcast .podcast-mobile-bar__footer {
		display:              grid;
		grid-template-columns: 38px 1fr auto 38px;
		align-items:          center;
		gap:                  .5rem;
		padding:              0 .85rem calc(.7rem + env(safe-area-inset-bottom, 0px));
		direction:            ltr;
	}
	.single-podcast .podcast-mobile-bar__time {
		font-size: var(--type-body);
		font-weight: var(--type-weight-subtitle);
		font-variant-numeric: tabular-nums;
		color:       var(--clr-muted);
		text-align:  center;
	}
	.single-podcast .podcast-mobile-bar__speed {
		justify-self:    center;
		min-width:     52px;
		height:        28px;
		padding:       0 .65rem;
		border:        1px solid rgba(var(--clr-primary-rgb), .18);
		border-radius: 999px;
		background:    color-mix(in srgb, var(--clr-surface) 92%, var(--clr-primary));
		color:         var(--clr-text);
		font-size: var(--type-body);
		font-weight: var(--type-weight-subtitle);
		font-family:   var(--font-primary, inherit);
		cursor:        pointer;
		transition:    background .18s ease, border-color .18s ease;
	}
	.single-podcast .podcast-mobile-bar__speed:active {
		background:   rgba(var(--clr-primary-rgb), .12);
		border-color: rgba(var(--clr-primary-rgb), .3);
	}
	.single-podcast .podcast-mobile-bar__close {
		width:           34px;
		height:          34px;
		border:          0;
		border-radius:   999px;
		background:      rgba(var(--clr-primary-rgb), .08);
		color:           var(--clr-muted);
		display:         flex;
		align-items:     center;
		justify-content: center;
		cursor:          pointer;
		transition:      background .18s ease, color .18s ease;
	}
	.single-podcast .podcast-mobile-bar__close:active {
		background: rgba(var(--clr-primary-rgb), .16);
		color:      var(--clr-text);
	}
}

@media (max-width: 400px) {
}

@media (max-width: 900px) {
	.podcast-hero { grid-template-columns: 1fr; gap: 1.5rem; }
	.podcast-hero-cover { max-width: 520px; margin-inline: auto; }
	.podcast-hero__content { padding: 0; }
	.podcast-single__info { padding: 1.2rem max(1rem, calc((100vw - var(--container)) / 2 + 1rem)) 1.5rem; }
	.podcast-hero-cover { border-radius: 20px; }
	.podcast-hero__title { letter-spacing: -.02em; }
	.podcast-hero__excerpt { font-size: var(--type-body); }
	.podcast-hero__cta-row { gap: .85rem; }
	.podcast-hero__share .share-buttons { justify-content: flex-start; }
}
.podcast-single { display: flex; flex-direction: column; gap: 1.5rem; padding: 2rem 0; }
.podcast-single--advanced {
	display:               grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap:                   1.25rem;
	align-items:           start;
}
.podcast-single__main { min-width: 0; display: flex; flex-direction: column; gap: 1.25rem; }
.podcast-single__content { width: 100%; }
.podcast-single__sidebar { display: flex; flex-direction: column; gap: 1rem; position: sticky; top: 100px; }
.podcast-sidebar-card { padding: 1rem; border-radius: var(--radius); }
.podcast-sidebar-card h3 {
	margin:          0;
	padding-bottom:  1rem;
	font-size:       var(--fs-h4);
	border-bottom:   1px dashed var(--clr-border);
}
.podcast-sidebar-list,
.podcast-related-list {
	list-style: none;
	margin:     0;
	padding:    1rem 0 0;
}
.podcast-sidebar-list { display: flex; flex-direction: column; gap: 0; }
.podcast-sidebar-list li {
	display:         flex;
	align-items:     center;
	justify-content: space-between;
	gap:             .7rem;
	padding-bottom:  .6rem;
	margin-bottom:   .6rem;
	border-bottom:   1px dashed var(--clr-border);
	font-size:       var(--fs-sm);
}
.podcast-sidebar-list li:last-child {
	padding-bottom: 0;
	margin-bottom:  0;
	border-bottom:  none;
}
.podcast-sidebar-list li span { color: var(--clr-muted); }
.podcast-sidebar-list li strong { color: var(--clr-text); font-weight: var(--type-weight-subtitle); }
.podcast-related-list { display: flex; flex-direction: column; gap: .65rem; }
.podcast-related-list a {
	color:         var(--clr-text);
	font-size:     var(--fs-sm);
	display:       block;
	padding-bottom: .6rem;
	border-bottom: 1px dashed var(--clr-border);
}
.podcast-related-list a:hover { color: var(--clr-primary); }

.single-podcast .podcast-section-description.course-section--card {
	padding:        1.5rem;
	background:     var(--clr-surface);
	border:         1px solid var(--clr-border);
	border-radius:  var(--radius);
	box-shadow:     var(--glass-shadow);
}
.single-podcast .podcast-section-description .course-section__heading {
	margin:         0 0 1rem;
	color:          var(--clr-text);
	letter-spacing: -.01em;
}
.single-podcast .podcast-section-description .entry-content { margin: 0; }

/* ====================================================================
   هیرو دسته‌بندی
   ==================================================================== */
.category-hero { text-align: center; position: relative; }
.category-hero__badge {
	display:        inline-flex;
	align-items:    center;
	padding:        var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	background:     rgba(var(--clr-secondary-rgb),.15);
	border:         1px solid rgba(var(--clr-secondary-rgb),.3);
	border-radius:  var(--radius-full);
	font-size: var(--type-body);
	font-weight:    var(--ui-badge-weight);
	color:          var(--clr-secondary);
	letter-spacing: .08em;
	text-transform: uppercase;
	margin-bottom:  .75rem;
	line-height:    1.2;
}
.category-hero__desc { color: var(--clr-muted); max-width: 560px; margin: .75rem auto; }
.category-hero__meta { margin-top: .5rem; }
.category-hero__count { color: var(--clr-primary); font-weight: var(--type-weight-subtitle); font-size: var(--fs-sm); }

/* ====================================================================
   نوشته‌های هیرو
   ==================================================================== */
.page-hero--blog .page-hero__title,
.page-hero--archive .page-hero__title { text-align: center; }

/* ====================================================================
   سریال پادکست
   ==================================================================== */
.podcast-series-grid {
	display:               grid;
	gap:                   1rem;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	margin-bottom:         2.5rem;
}
.series-card {
	padding:   1.25rem;
	text-align: center;
	transition: all var(--transition);
}
.series-card:hover { transform: translateY(-3px); border-color: rgba(var(--clr-primary-rgb),.3); }
.series-card__title {
	font-size:   var(--fs-h5);
	font-weight: var(--type-weight-subtitle);
	color:       var(--clr-text);
	margin-bottom: .4rem;
}
.series-card__count { font-size: var(--fs-sm); color: var(--clr-primary); }

/* ====================================================================
   بخش جستجو
   ==================================================================== */
.search-form-section { margin-bottom: 2rem; }
.search-form { display: flex; gap: .5rem; }
input[type="search"].search-field {
	flex:          1;
	padding:       .65rem 1.25rem;
	background:    var(--clr-surface);
	border:        1px solid var(--clr-border);
	border-radius: var(--radius-full);
	color:         var(--clr-text);
	font-family:   var(--font-primary);
	font-size:     var(--fs-sm);
}
input[type="search"].search-field:focus { outline: none; border-color: var(--clr-primary); }
.search-submit:hover { transform: translateY(-2px); }
.search-count { color: var(--clr-muted); font-size: var(--fs-sm); margin-bottom: 1.5rem; }
.search-term { color: var(--clr-primary); }

/* ====================================================================
   نتیجه خالی
   ==================================================================== */
.no-results {
	text-align:  center;
	padding:     4rem 2rem;
	max-width:   480px;
	margin:      0 auto;
}
.no-results__icon { font-size: 4rem; margin-bottom: 1rem; opacity: .6; }
.no-results__title { font-size: var(--fs-h3); margin-bottom: .75rem; }
.no-results__desc { color: var(--clr-muted); margin-bottom: 1.5rem; }

/* ====================================================================
   ادمین‌بار — هدر زیر #wpadminbar، نه زیر آن در لایه
   ==================================================================== */
#wpadminbar {
	position: fixed !important;
	top:      0 !important;
	left:     0 !important;
	right:    0 !important;
	margin:   0 !important;
	padding:  0 !important;
	z-index:  999999 !important;
}

:root {
	--diaram-admin-bar-h: 0px;
}

/* ارتفاع نوار مدیریت فقط وقتی #wpadminbar واقعاً در صفحه باشد لحاظ شود */
body.admin-bar:has(#wpadminbar) {
	--diaram-admin-bar-h: 32px;
	/* جبران نوار مدیریت fixed — بدون آن هدر sticky با top:32px روی هیرو می‌افتد */
	padding-top: var(--diaram-admin-bar-h) !important;
	box-sizing: border-box;
}

@media screen and (max-width: 782px) {
	body.admin-bar:has(#wpadminbar) {
		--diaram-admin-bar-h: 46px;
	}
}

/* حالت مهمان / بدون نوار مدیریت: هیچ فاصله‌ای بالای هدر نماند
   (حتی اگر کلاس admin-bar از کش روی body مانده باشد ولی نوار واقعاً نباشد) */
html:not(:has(#wpadminbar)) {
	--diaram-admin-bar-h: 0px !important;
}

/* بدون نوار مدیریت: هدر کاملاً چسبیده به بالای صفحه، بدون هیچ فاصله‌ای بالای آن.
   با اولویت بالا تا هر آفستِ باقی‌ماندهٔ مربوط به نوار مدیریت (حتی از کش) خنثی شود. */
html:not(:has(#wpadminbar)) #masthead.diaram-site-header,
html:not(:has(#wpadminbar)) #masthead.diaram-site-header.header--sticky,
html:not(:has(#wpadminbar)) .site-header.header--sticky,
html:not(:has(#wpadminbar)) #page > #masthead.diaram-site-header {
	top: 0 !important;
	margin-top: 0 !important;
}

html:not(:has(#wpadminbar)) {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

html:not(:has(#wpadminbar)) body,
html:not(:has(#wpadminbar)) #page,
html:not(:has(#wpadminbar)) .site-wrapper {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.admin-bar #page > #masthead,
body.admin-bar #page > header[role="banner"] {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.admin-bar #page > #masthead.diaram-site-header,
body.admin-bar #page > #masthead.diaram-site-header.header--sticky,
body.admin-bar #page > .site-header.header--sticky {
	top: var(--diaram-admin-bar-h) !important;
}

/* صفحات با هدر relative (دوره / پادکست / پنل): فقط فاصله از بالا */
body.admin-bar.diaram-course-page #page > #masthead.diaram-site-header,
body.admin-bar.diaram-podcast-page #page > #masthead.diaram-site-header,
body.admin-bar.diaram-student-panel #page > #masthead.diaram-site-header {
	top: auto !important;
}

/* ====================================================================
   RTL
   ==================================================================== */
[dir="rtl"] .post-card__read-more svg { transform: scaleX(-1); }
[dir="rtl"] .post-card__read-more:hover svg { transform: scaleX(-1) translateX(-3px); }
[dir="rtl"] .nav-menu .sub-menu { inset-inline-start: auto; inset-inline-end: 0; }

/* ====================================================================
   واکنش‌گرا
   ==================================================================== */
@media (max-width: 1024px) {
	.blog-layout { flex-direction: column; }
	.sidebar { width: 100%; position: static; }
	.product-single { grid-template-columns: 1fr; }
	.footer-widgets__grid--4 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
	:root { --fs-base: 15px; }

	.main-navigation { display: none; }
	.mobile-menu-toggle:not(.diaram-site-menu-toggle) { display: flex; }
	.header-cta { display: none; }
	.header-main__inner { gap: .75rem; }
	.header-actions { gap: .45rem; margin-inline-start: auto; }
	.header-user-panel-btn.header-cta {
		display: inline-flex;
		max-width: 118px;
		padding: .42rem .65rem;
		gap: .3rem;
		font-size: var(--fs-h6);
	}
	.header-user-panel-btn span {
		max-width: 64px;
	}
	.header-user-panel-btn svg {
		width: 14px;
		height: 14px;
	}
	.posts-grid { grid-template-columns: 1fr; }
	.blog-layout--grid .posts-grid .post-card:first-child { grid-column: auto; }
	.posts-grid--list .post-card { grid-template-columns: 1fr; }
	.products-grid { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
	.categories-grid { grid-template-columns: 1fr 1fr; }

	.footer-widgets__grid--4,
	.footer-widgets__grid--3 { grid-template-columns: 1fr 1fr; }
	.footer-bottom__inner { flex-direction: column; text-align: center; }

	.post-navigation { grid-template-columns: 1fr; }
	.author-box { flex-direction: column; text-align: center; }
	.post-hero {
		padding: 1.25rem 0 1.5rem;
	}
	.post-hero__title { letter-spacing: -.025em; }
	.post-hero__lead { font-size: var(--fs-base); }
	.post-hero-breadcrumb .breadcrumb-list {
		flex-wrap: wrap;
	}
	.post-hero__author { width: 100%; }
	.single-post__content > .entry-content { padding: 1.35rem; }
	.post-share-shell .share-buttons { padding: .85rem .9rem; }

	.podcast-single--advanced { grid-template-columns: 1fr; }
	.podcast-single__sidebar { position: static; }
	.podcast-player-advanced__head { grid-template-columns: 1fr; }
	.podcast-player-advanced__cover { width: 100%; height: auto; max-height: 260px; }
	.podcast-player-advanced__controls { flex-direction: column; align-items: stretch; }
	.podcast-player-advanced__controls-main,
	.podcast-player-advanced__controls-side { justify-content: center; }

	.page-layout { flex-direction: column; }
}

@media (max-width: 480px) {
	.header-user-panel-btn.header-cta {
		max-width: 104px;
		padding-inline: .5rem;
	}
	.header-user-panel-btn span {
		max-width: 52px;
	}

	.posts-grid,
	.categories-grid,
	.footer-widgets__grid--4,
	.footer-widgets__grid--3,
	.footer-widgets__grid--2 { grid-template-columns: 1fr; }
	.post-featured-image__img {
		aspect-ratio: 16 / 10;
	}
	.post-tags--neo {
		padding: .78rem;
	}

	.page-hero:not(.page-hero--archive):not(.page-hero--search):not(.page-hero--category):not(.page-hero--blog):not(.page-hero--podcasts):not(.page-hero--products) {
		padding: 3rem 0 2rem;
	}
	.error-404__inner {
		padding: 1.8rem .6rem;
	}

	.podcast-item { flex-direction: column; }
	.podcast-item__artwork { width: 80px; height: auto; aspect-ratio: 1 / 1; }
}


/* ====================================================================
   کارت‌ها و گریدها — بازطراحی مدرن (override)
   ==================================================================== */

/* ---------- گرید مطالب ---------- */
.posts-grid {
	display:               grid;
	gap:                   1.75rem;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}
.posts-grid--list { grid-template-columns: 1fr; }

/* ---------- کارت مطلب ---------- */
.post-card {
	display:        flex;
	flex-direction: column;
	overflow:       hidden;
	position:       relative;
	isolation:      isolate;
	background:     var(--clr-surface);
	border:         1px solid rgba(var(--clr-primary-rgb), .1);
	border-radius:  calc(var(--radius) + 4px);
	transition:     transform .35s cubic-bezier(.23,1,.32,1),
	                box-shadow .35s cubic-bezier(.23,1,.32,1),
	                border-color .25s ease;
}
/* حذف نوار رنگی بالا */
.post-card::before { content: none; }
.post-card__glow   { display: none; }

.post-card:hover {
	transform:    translateY(-6px);
	border-color: rgba(var(--clr-primary-rgb), .28);
	box-shadow:   0 24px 56px rgba(var(--clr-primary-rgb), .14),
	              0 4px 12px rgba(0,0,0,.06);
}

/* تصویر */
.post-card__img-link { display: block; overflow: hidden; }

.post-card__img-wrap {
	position:     relative;
	overflow:     hidden;
	aspect-ratio: 16 / 10;
	background:   linear-gradient(135deg,
		rgba(var(--clr-primary-rgb), .1),
		rgba(var(--clr-secondary-rgb), .14));
}

.post-card__thumb {
	width:      100%;
	height:     100%;
	object-fit: cover;
	transition: transform .55s cubic-bezier(.23,1,.32,1);
	display:    block;
}
.post-card:hover .post-card__thumb { transform: scale(1.07); }

/* اورلی گرادیان */
.post-card__img-overlay {
	position:       absolute;
	inset:          0;
	background:     linear-gradient(to top,
		rgba(10,15,30,.55) 0%,
		rgba(10,15,30,.1)  45%,
		transparent        70%);
	pointer-events: none;
	transition:     opacity .3s ease;
}
.post-card:hover .post-card__img-overlay { opacity: .8; }

/* بج‌های روی تصویر */
.post-card__img-badges {
	position:    absolute;
	top:         .85rem;
	inset-inline-start: .85rem;
	display:     flex;
	flex-direction: column;
	align-items: flex-start;
	gap:         .4rem;
}
.post-card__cat-badge {
	display:        inline-flex;
	align-items:    center;
	padding:        var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	background:     var(--clr-primary);
	color:          #fff;
	font-size:      var(--ui-badge-font);
	font-weight:    var(--ui-badge-weight);
	border-radius:  var(--radius-full);
	letter-spacing: .02em;
	line-height:    1.2;
	box-shadow:     0 2px 8px rgba(var(--clr-primary-rgb), .4);
}
.post-card__time-badge {
	display:         inline-flex;
	align-items:     center;
	gap:             .28rem;
	padding:         var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	background:      rgba(0,0,0,.55);
	color:           rgba(255,255,255,.9);
	font-size:       var(--ui-badge-font);
	font-weight:     var(--ui-badge-weight);
	border-radius:   var(--radius-full);
	backdrop-filter: blur(4px);
	line-height:     1.2;
}

/* افکت شاین */
.post-card__shine {
	position:   absolute;
	inset:      0;
	background: linear-gradient(120deg,
		transparent 30%,
		rgba(255,255,255,.1) 50%,
		transparent 70%);
	transform:  translateX(-100%);
	transition: transform .6s ease;
	pointer-events: none;
}
.post-card:hover .post-card__shine { transform: translateX(100%); }

/* بادی */
.post-card__body {
	display:        flex;
	flex-direction: column;
	flex:           1;
	padding:        1.25rem 1.4rem;
	gap:            .7rem;
}

.post-card__date-row {
	display:         flex;
	align-items:     center;
	justify-content: space-between;
	font-size:       var(--fs-h6);
	color:           var(--clr-muted);
}
.post-card__comments-count {
	display:     flex;
	align-items: center;
	gap:         .3rem;
	padding:     .18rem .55rem;
	border-radius: var(--radius-full);
	background:  rgba(var(--clr-primary-rgb), .07);
	color:       var(--clr-muted);
}

.post-card__title {
	margin:      0;
	letter-spacing: -.01em;
}

.post-card__excerpt {
	color:       var(--clr-muted);
	font-size:   var(--type-meta);
	line-height: 1.8;
	flex:        1;
	display:     -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow:    hidden;
}

.post-card__footer {
	display:     flex;
	align-items: center;
	justify-content: space-between;
	gap:         .75rem;
	padding-top: .85rem;
	border-top:  1px solid rgba(var(--clr-primary-rgb), .08);
	margin-top:  auto;
}

.post-card__author {
	display:     flex;
	align-items: center;
	gap:         .45rem;
	font-size:   var(--fs-sm);
	color:       var(--clr-muted);
	font-weight: var(--type-weight-subtitle);
}
.post-card__avatar {
	border-radius: 50%;
	width:         28px;
	height:        28px;
	border:        2px solid rgba(var(--clr-primary-rgb), .15);
}

.post-card__cta {
	display:     inline-flex;
	align-items: center;
	gap:         .35rem;
	flex-shrink: 0;
}

.post-card-carousel__more {
	display:         inline-flex;
	align-items:     center;
	gap:             .3rem;
	align-self:      flex-start;
	margin-top:      auto;
	flex-shrink:     0;
}

.post-card-carousel__more svg { transition: transform .25s ease; }
[dir="rtl"] .post-card-carousel__more svg { transform: scaleX(-1); }
.post-card-carousel__more:hover svg { transform: translateX(3px); }
[dir="rtl"] .post-card-carousel__more:hover svg { transform: scaleX(-1) translateX(3px); }
.post-card__cta svg { transition: transform .25s ease; }
[dir="rtl"] .post-card__cta svg { transform: scaleX(-1); }
.post-card__cta:hover svg { transform: translateX(3px); }
[dir="rtl"] .post-card__cta:hover svg { transform: scaleX(-1) translateX(3px); }

/* لیست خطی (قدیمی — سازگاری) */
.posts-grid--list .post-card {
	display:               grid;
	grid-template-columns: 260px 1fr;
}
.posts-grid--list .post-card__img-link { min-height: 100%; }
.posts-grid--list .post-card__img-wrap { height: 100%; aspect-ratio: auto; }

/* ---------- لیست افقی مطالب (آرشیو بلاگ) ---------- */
.posts-list {
	display:        flex;
	flex-direction: column;
	gap:            1.25rem;
}

.post-card-row {
	display:               grid;
	grid-template-columns: minmax(200px, 280px) 1fr;
	align-items:           stretch;
	gap:                   0;
	background:            var(--clr-surface);
	border:                1px solid rgba(var(--clr-primary-rgb), .1);
	border-radius:         calc(var(--radius) + 6px);
	overflow:                hidden;
	transition:            transform .3s ease, box-shadow .3s ease, border-color .25s ease;
}

.post-card-row:hover {
	transform:    translateY(-3px);
	border-color: rgba(var(--clr-primary-rgb), .24);
	box-shadow:   0 16px 40px rgba(var(--clr-primary-rgb), .1);
}

.post-card-row__media {
	display: block;
	min-height: 100%;
}

.post-card-row__img-wrap {
	height:       100%;
	min-height:   180px;
	overflow:     hidden;
	background:   linear-gradient(135deg,
		rgba(var(--clr-primary-rgb), .1),
		rgba(var(--clr-secondary-rgb), .12));
}

.post-card-row__thumb {
	width:      100%;
	height:     100%;
	min-height: 180px;
	object-fit: cover;
	display:    block;
	transition: transform .5s cubic-bezier(.23,1,.32,1);
}

.post-card-row:hover .post-card-row__thumb {
	transform: scale(1.05);
}

.post-card-row__content {
	display:         flex;
	flex-direction:  column;
	justify-content: center;
	gap:             .55rem;
	padding:         1.35rem 1.5rem;
	min-width:       0;
}

.post-card-row__top {
	display:     flex;
	flex-wrap:   wrap;
	align-items: center;
	gap:         .5rem .85rem;
	font-size:   var(--fs-h6);
}

.post-card-row__cat {
	display:         inline-flex;
	padding:         .2rem .65rem;
	background:      rgba(var(--clr-primary-rgb), .1);
	color:           var(--clr-primary);
	font-weight: var(--type-weight-subtitle);
	border-radius:   var(--radius-full);
	text-decoration: none;
	transition:      background .2s ease, color .2s ease;
}

.post-card-row__cat:hover {
	background: var(--clr-primary);
	color:      #fff;
}

.post-card-row__date {
	color: var(--clr-muted);
}

.post-card-row__title {
	margin:      0;
	font-size:   var(--fs-h4);
	font-weight: var(--type-weight-subtitle);
	line-height: 1.45;
}

.post-card-row__title a {
	color: var(--clr-text);
}

.post-card-row__title a:hover {
	color: var(--clr-primary);
}

.post-card-row__excerpt {
	margin:      0;
	color:       var(--clr-muted);
	font-size:   var(--fs-sm);
	line-height: 1.85;
	display:     -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow:    hidden;
}

.post-card-row__footer {
	display:         flex;
	align-items:     center;
	justify-content: space-between;
	flex-wrap:       wrap;
	gap:             .75rem 1rem;
	margin-top:      .35rem;
	padding-top:     .85rem;
	border-top:      1px solid rgba(var(--clr-primary-rgb), .08);
}

.post-card-row__stats {
	display:     flex;
	flex-wrap:   wrap;
	align-items: center;
	gap:         .65rem 1rem;
	font-size:   var(--fs-sm);
	color:       var(--clr-muted);
}

.post-card-row__author {
	display:     inline-flex;
	align-items: center;
	gap:         .4rem;
	font-weight: var(--type-weight-subtitle);
}

.post-card-row__avatar {
	width:         24px;
	height:        24px;
	border-radius: 50%;
	border:        2px solid rgba(var(--clr-primary-rgb), .15);
}

.post-card-row__stat {
	display:     inline-flex;
	align-items: center;
	gap:         .28rem;
}

.post-card-row__cta {
	display:     inline-flex;
	align-items: center;
	gap:         .35rem;
	flex-shrink: 0;
}

.post-card-row__cta svg {
	transition: transform .25s ease;
}

[dir="rtl"] .post-card-row__cta svg {
	transform: scaleX(-1);
}

[dir="rtl"] .post-card-row__cta:hover svg {
	transform: scaleX(-1) translateX(3px);
}

.post-card-row__cta:hover svg {
	transform: translateX(3px);
}

.blog-layout--list .blog-posts {
	width: 100%;
}

@media (max-width: 720px) {
	.post-card-row {
		grid-template-columns: 1fr;
	}

	.post-card-row__img-wrap,
	.post-card-row__thumb {
		min-height: 200px;
		aspect-ratio: 16 / 9;
	}

	.post-card-row__content {
		padding: 1.1rem 1.15rem 1.25rem;
	}

	.post-card-row__title {
		font-size: var(--fs-h5);
	}
}

/* ---------- گرید و کارت محصول ---------- */
.products-grid {
	display:               grid;
	gap:                   1.75rem;
	grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
}

.product-card {
	display:        flex;
	flex-direction: column;
	overflow:       hidden;
	border-radius:  calc(var(--radius) + 4px);
	border:         1px solid rgba(var(--clr-primary-rgb), .1);
	background:     var(--clr-surface);
	transition:     transform .35s cubic-bezier(.23,1,.32,1),
	                box-shadow .35s cubic-bezier(.23,1,.32,1),
	                border-color .25s ease;
}
.product-card:hover {
	transform:    translateY(-6px);
	border-color: rgba(var(--clr-primary-rgb), .26);
	box-shadow:   0 24px 56px rgba(var(--clr-primary-rgb), .16);
}

.product-card__img-link { display: block; overflow: hidden; }
.product-card__img-wrap {
	position:     relative;
	overflow:     hidden;
	aspect-ratio: 4 / 3;
	background:   rgba(var(--clr-primary-rgb), .06);
}
.product-card__thumb {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .55s cubic-bezier(.23,1,.32,1);
	display: block;
}
.product-card:hover .product-card__thumb { transform: scale(1.08); }

/* اورلی hover */
.product-card__overlay {
	position:        absolute;
	inset:           0;
	display:         flex;
	align-items:     center;
	justify-content: center;
	background:      rgba(10,15,30,.55);
	opacity:         0;
	transition:      opacity .3s ease;
	backdrop-filter: blur(2px);
}
.product-card:hover .product-card__overlay { opacity: 1; }
.product-card__overlay-hint {
	display:       flex;
	align-items:   center;
	gap:           .4rem;
	padding:       var(--ui-btn-pad-y) var(--ui-btn-pad-x);
	background:    rgba(255,255,255,.12);
	border:        1px solid rgba(255,255,255,.22);
	border-radius: var(--radius-full);
	color:         #fff;
	font-size:     var(--ui-btn-font);
	font-weight:   var(--ui-btn-weight);
	backdrop-filter: blur(4px);
	line-height:   1.2;
}

/* بج‌های روی تصویر */
.product-img-badge {
	position:      absolute;
	display:       inline-flex;
	align-items:   center;
	justify-content: center;
	font-size:     var(--ui-badge-font);
	font-weight:   var(--ui-badge-weight);
	padding:       var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	border-radius: var(--radius-full);
	line-height:   1.2;
}
.product-img-badge--featured {
	top:              .75rem;
	inset-inline-end: .75rem;
	background:       linear-gradient(135deg, var(--clr-primary), var(--clr-accent));
	color:            #fff;
	box-shadow:       0 2px 8px rgba(var(--clr-primary-rgb), .4);
}
.product-img-badge--sale {
	top:              .75rem;
	inset-inline-start: .75rem;
	background:       linear-gradient(135deg, #ef4444, #f97316);
	color:            #fff;
	box-shadow:       0 2px 8px rgba(239,68,68,.4);
}
.product-img-badge--free {
	top:              .75rem;
	inset-inline-start: .75rem;
	background:       linear-gradient(135deg, #22c55e, #16a34a);
	color:            #fff;
}

/* بادی محصول */
.product-card__body {
	padding:        1.25rem 1.4rem;
	display:        flex;
	flex-direction: column;
	gap:            .65rem;
	flex:           1;
}
.product-card__title {
	font-size:   var(--fs-h5);
	font-weight: var(--type-weight-subtitle);
	margin:      0;
	line-height: 1.5;
}
.product-card__title a { color: var(--clr-text); }
.product-card__title a:hover { color: var(--clr-primary); }
.product-card__excerpt {
	color:       var(--clr-muted);
	font-size:   var(--fs-sm);
	flex:        1;
	line-height: 1.75;
	display:     -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow:    hidden;
}

.product-card__footer {
	display:     flex;
	align-items: center;
	justify-content: space-between;
	gap:         .75rem;
	padding-top: .85rem;
	border-top:  1px solid rgba(var(--clr-primary-rgb), .08);
	margin-top:  auto;
}

.product-card__price-wrap { display: flex; flex-direction: column; gap: .05rem; }
.product-card__price-original {
	font-size:       var(--fs-h6);
	color:           var(--clr-muted);
	text-decoration: line-through;
}

/* ---------- پادکست ---------- */
.podcasts-list {
	display: grid;
	gap: 18px;
}

/* لیست اپیزود آرشیو — کارت افقی */
.podcast-episode-card {
	--podcast-ep-primary: #0f766e;
	--podcast-ep-primary-2: #14b8a6;
	--podcast-ep-border: #e7eef5;
	--podcast-ep-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
	display: grid;
	grid-template-columns: 130px 1fr auto;
	align-items: center;
	gap: 20px;
	background: var(--clr-surface);
	border: 1px solid var(--podcast-ep-border);
	border-radius: 22px;
	padding: 16px;
	box-shadow: var(--podcast-ep-shadow);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.podcast-episode-card:hover {
	border-color: rgba(15, 118, 110, 0.22);
	box-shadow: 0 14px 36px rgba(15, 118, 110, 0.1);
}

.podcast-episode-card__cover {
	width: 130px;
	aspect-ratio: 1 / 1;
	border-radius: 18px;
	overflow: hidden;
	position: relative;
	background: #0f172a;
	flex-shrink: 0;
}

.podcast-episode-card__cover .post-thumbnail,
.podcast-episode-card__cover img.podcast-episode-card__cover-img,
.podcast-episode-card__cover .post-thumbnail--placeholder {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover;
	display: block;
}

.podcast-episode-card__cover .post-thumbnail--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
}

.podcast-episode-card__cover::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.45));
	pointer-events: none;
}

.podcast-episode-card__code {
	position: absolute;
	left: 10px;
	bottom: 10px;
	z-index: 1;
	background: rgba(0, 0, 0, 0.62);
	color: #fff;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	padding: 5px 9px;
	border-radius: 10px;
	line-height: 1;
}

.podcast-episode-card__content {
	min-width: 0;
}

.podcast-episode-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
	font-size: var(--type-meta);
	line-height: 1.4;
}

.podcast-episode-card__badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border-radius: 999px;
	background: #eef8f7;
	color: var(--podcast-ep-primary);
	font-size: inherit;
	font-weight: var(--font-weight-medium);
}

.podcast-episode-card__badge::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--podcast-ep-primary-2);
	flex-shrink: 0;
}

.podcast-episode-card__date {
	color: #64748b;
	font-size: inherit;
	font-weight: var(--font-weight-normal);
}

.podcast-episode-card__title {
	margin: 0 0 8px;
	font-size: var(--type-subtitle);
	line-height: 1.8;
	font-weight: var(--type-weight-subtitle);
}

.podcast-episode-card__title a {
	color: var(--clr-text);
	text-decoration: none;
	transition: color 0.2s ease;
}

.podcast-episode-card__title a:hover {
	color: var(--podcast-ep-primary);
}

.podcast-episode-card__desc {
	margin: 0;
	color: #64748b;
	font-size: var(--type-body);
	line-height: 2;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.podcast-episode-card__desc p {
	margin: 0;
}

.podcast-episode-card__actions {
	display: flex;
	align-items: center;
	justify-content: center;
}

.podcast-episode-card__play-btn {
	height: 44px;
	padding: 0 18px;
	border: 0;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--podcast-ep-primary), var(--podcast-ep-primary-2));
	color: #fff;
	font-family: inherit;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
	text-decoration: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.podcast-episode-card__play-btn:hover {
	color: #fff;
	opacity: 0.92;
	transform: translateY(-1px);
}

.podcast-episode-card__play-icon {
	width: 24px;
	height: 24px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.16);
	font-size: var(--type-body);
	line-height: 1;
}

@media (max-width: 780px) {
	.podcast-episode-card {
		grid-template-columns: 100px 1fr;
		gap: 16px;
	}

	.podcast-episode-card__cover {
		width: 100px;
	}

	.podcast-episode-card__actions {
		grid-column: 1 / -1;
		justify-content: flex-start;
	}

	.podcast-episode-card__play-btn {
		width: 100%;
		justify-content: center;
	}
}

@media (max-width: 520px) {
	.podcast-episode-card {
		grid-template-columns: 1fr;
	}

	.podcast-episode-card__cover {
		width: 100%;
	}

	.podcast-episode-card__title {
		font-size: var(--type-subtitle);
	}
}

.podcast-item {
	display:     flex;
	gap:         1.25rem;
	padding:     1.25rem 1.4rem;
	border-radius: calc(var(--radius) + 4px);
	border:      1px solid rgba(var(--clr-primary-rgb), .1);
	background:  var(--clr-surface);
	transition:  transform .3s ease, border-color .25s ease, box-shadow .3s ease;
}
.podcast-item:hover {
	transform:    translateY(-3px);
	border-color: rgba(var(--clr-primary-rgb), .28);
	box-shadow:   0 16px 40px rgba(var(--clr-primary-rgb), .1);
}

/* آرت‌ورک */
.podcast-item__artwork {
	position:        relative;
	flex-shrink:     0;
	width:           120px;
	height:          auto;
	aspect-ratio:    1 / 1;
	border-radius:   calc(var(--radius) + 2px);
	overflow:        hidden;
}
.podcast-item__thumb {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .4s ease;
}
.podcast-item:hover .podcast-item__thumb { transform: scale(1.05); }

/* دکمه پخش */
.podcast-item__play-btn {
	position:        absolute;
	inset:           0;
	display:         flex;
	align-items:     center;
	justify-content: center;
	background:      linear-gradient(135deg,
		rgba(var(--clr-primary-rgb), .75),
		rgba(var(--clr-secondary-rgb), .75));
	border:          none;
	color:           #fff;
	cursor:          pointer;
	opacity:         0;
	transition:      opacity .3s ease;
	backdrop-filter: blur(2px);
}
.podcast-item:hover .podcast-item__play-btn { opacity: 1; }

/* اپیزود شماره */
.podcast-item__ep-num {
	position:      absolute;
	bottom:        .4rem;
	inset-inline-start: .4rem;
	padding:       .18rem .5rem;
	background:    rgba(0,0,0,.6);
	color:         rgba(255,255,255,.95);
	font-size:     var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
	border-radius: var(--radius-full);
	backdrop-filter: blur(4px);
	letter-spacing: .02em;
}

/* محتوا */
.podcast-item__content {
	flex:           1;
	display:        flex;
	flex-direction: column;
	gap:            .45rem;
	min-width:      0;
}
.podcast-item__tags { display: flex; gap: .4rem; flex-wrap: wrap; }
.podcast-item__series-chip {
	display:       inline-flex;
	align-items:   center;
	gap:           .3rem;
	padding:       .22rem .65rem;
	background:    rgba(var(--clr-primary-rgb), .1);
	border:        1px solid rgba(var(--clr-primary-rgb), .18);
	border-radius: var(--radius-full);
	font-size:     var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
	color:         var(--clr-primary);
}
.podcast-item__title {
	margin: 0;
}
.podcast-item__title a { color: var(--clr-text); }
.podcast-item__title a:hover { color: var(--clr-primary); }
.podcast-item__excerpt {
	color:       var(--clr-muted);
	font-size:   var(--fs-sm);
	line-height: 1.75;
	display:     -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow:    hidden;
}

/* موج‌نمای دکوراتیو */
.podcast-item__wave {
	display:     flex;
	align-items: center;
	gap:         3px;
	height:      28px;
	margin:      .1rem 0;
}
.podcast-item__wave span {
	flex-shrink:   0;
	width:         3px;
	border-radius: 2px;
	background:    linear-gradient(to top, var(--clr-primary), var(--clr-secondary));
	opacity:       .5;
	animation:     wave-bar 1.4s ease-in-out infinite;
}
.podcast-item__wave span:nth-child(odd)  { height: 45%; animation-delay: calc(var(--i, 0) * .07s); }
.podcast-item__wave span:nth-child(3n)   { height: 80%; }
.podcast-item__wave span:nth-child(5n)   { height: 65%; }
.podcast-item__wave span:nth-child(7n)   { height: 100%; }
.podcast-item__wave span:nth-child(even) { height: 55%; animation-delay: calc(var(--i, 0) * .05s + .2s); }
.podcast-item:hover .podcast-item__wave span { opacity: .85; }

@keyframes wave-bar {
	0%, 100% { transform: scaleY(1); }
	50%       { transform: scaleY(.5); }
}
/* تنوع تأخیر با nth */
.podcast-item__wave span:nth-child(1)  { animation-delay: 0s; }
.podcast-item__wave span:nth-child(2)  { animation-delay: .08s; }
.podcast-item__wave span:nth-child(3)  { animation-delay: .16s; }
.podcast-item__wave span:nth-child(4)  { animation-delay: .24s; }
.podcast-item__wave span:nth-child(5)  { animation-delay: .32s; }
.podcast-item__wave span:nth-child(6)  { animation-delay: .40s; }
.podcast-item__wave span:nth-child(7)  { animation-delay: .48s; }
.podcast-item__wave span:nth-child(8)  { animation-delay: .36s; }
.podcast-item__wave span:nth-child(9)  { animation-delay: .28s; }
.podcast-item__wave span:nth-child(10) { animation-delay: .20s; }
.podcast-item__wave span:nth-child(11) { animation-delay: .12s; }
.podcast-item__wave span:nth-child(12) { animation-delay: .04s; }
.podcast-item__wave span:nth-child(13) { animation-delay: .44s; }
.podcast-item__wave span:nth-child(14) { animation-delay: .52s; }
.podcast-item__wave span:nth-child(15) { animation-delay: .60s; }

/* فوتر پادکست */
.podcast-item__footer {
	display:     flex;
	align-items: center;
	flex-wrap:   wrap;
	gap:         .65rem;
	font-size:   var(--fs-h6);
	color:       var(--clr-muted);
	margin-top:  auto;
}
.podcast-item__duration,
.podcast-item__guest {
	display:     flex;
	align-items: center;
	gap:         .3rem;
}
.podcast-item__listen-btn {
	margin-inline-start: auto;
	display:     flex;
	align-items: center;
	gap:         .35rem;
}

/* ---------- گرید و کارت دوره ---------- */
.courses-grid {
	display:               grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap:                   1.75rem;
}

.course-card {
	display:        flex;
	flex-direction: column;
	overflow:       hidden;
	border-radius:  calc(var(--radius) + 4px);
	border:         1px solid rgba(var(--clr-primary-rgb), .1);
	background:     var(--clr-surface);
	transition:     transform .35s cubic-bezier(.23,1,.32,1),
	                box-shadow .35s cubic-bezier(.23,1,.32,1),
	                border-color .25s ease;
}
.course-card::before { content: none; }

.course-card:hover {
	transform:    translateY(-6px);
	border-color: rgba(var(--clr-primary-rgb), .28);
	box-shadow:   0 24px 56px rgba(var(--clr-primary-rgb), .14);
}

.course-card__img-link { display: block; overflow: hidden; }
.course-card__img-wrap {
	position:     relative;
	overflow:     hidden;
	aspect-ratio: 16 / 9;
	background:   linear-gradient(135deg,
		rgba(var(--clr-primary-rgb), .1),
		rgba(var(--clr-secondary-rgb), .14));
}
.course-card__thumb {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .55s cubic-bezier(.23,1,.32,1);
	display: block;
}
.course-card:hover .course-card__thumb { transform: scale(1.06); }

.course-card__img-overlay {
	position:       absolute;
	inset:          0;
	background:     linear-gradient(to top, rgba(10,15,30,.45) 0%, transparent 55%);
	pointer-events: none;
}

/* بج‌های بالای تصویر */
.course-card__img-top {
	position: absolute;
	top:      .75rem;
	inset-inline-start: .75rem;
	inset-inline-end:   .75rem;
	display:  flex;
	align-items: flex-start;
	justify-content: space-between;
	gap:      .4rem;
}
.course-status-badge {
	display:       inline-flex;
	align-items:   center;
	padding:       var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	border-radius: var(--radius-full);
	font-size:     var(--ui-badge-font);
	font-weight:   var(--ui-badge-weight);
	line-height:   1.2;
}
.course-badge--open           { background: rgba(34,197,94,.85);  color: #fff; }
.course-badge--closed         { background: rgba(100,116,139,.8); color: #fff; }
.course-badge--soon           { background: rgba(234,179,8,.85);  color: #000; }
.course-badge--capacity-full  { background: rgba(239,68,68,.88); color: #fff; }
.course-badge--not-class      { background: rgba(100,116,139,.85); color: #fff; }
.course-badge--is-class       { background: rgba(34,197,94,.85);  color: #fff; }
.course-badge--pre-register   { background: rgba(59,130,246,.88); color: #fff; }

/* بادی دوره */
.course-card__body {
	display:        flex;
	flex-direction: column;
	gap:            .65rem;
	padding:        1.25rem 1.4rem;
	flex:           1;
}
.course-card__title {
	margin:      0;
}
.course-card__title a { color: var(--clr-text); }
.course-card__title a:hover { color: var(--clr-primary); }
.course-card__excerpt {
	color:       var(--clr-muted);
	font-size:   var(--type-meta);
	line-height: 1.75;
	display:     -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow:    hidden;
}

/* فوتر دوره */
.course-card__footer {
	display:     flex;
	align-items: center;
	justify-content: space-between;
	gap:         .75rem;
	padding-top: .85rem;
	border-top:  1px solid rgba(var(--clr-primary-rgb), .08);
	margin-top:  auto;
}
.course-price-free {
	display:     inline-flex;
	align-items: center;
	gap:         .3rem;
	color:       #22c55e;
	font-weight: var(--type-weight-subtitle);
	font-size:   var(--fs-h5);
}
.course-price {
	font-weight: var(--type-weight-subtitle);
	color:       var(--clr-secondary);
	font-size:   var(--fs-h5);
}
.course-price small {
	font-size:  var(--fs-h6);
	color:      var(--clr-muted);
	font-weight: var(--type-weight-body);
	margin-inline-start: .2rem;
}
.course-card__cta {
	display:     inline-flex;
	align-items: center;
	gap:         .3rem;
	flex-shrink: 0;
}

/* ---------- فیلترهای آرشیو --- مدرن ---------- */
.archive-filter-bar {
	display:     flex;
	align-items: center;
	flex-wrap:   wrap;
	gap:         .5rem;
	margin-bottom: 2.25rem;
	padding:     1rem 1.25rem;
	background:  rgba(var(--clr-primary-rgb), .04);
	border:      1px solid rgba(var(--clr-primary-rgb), .1);
	border-radius: calc(var(--radius) + 4px);
}
.archive-filter-bar__label {
	font-size:   var(--fs-h6);
	font-weight: var(--type-weight-subtitle);
	color:       var(--clr-muted);
	margin-inline-end: .25rem;
	white-space: nowrap;
}
.archive-filter-chip {
	display:       inline-flex;
	align-items:   center;
	gap:           .3rem;
	padding:       .38rem .9rem;
	border-radius: var(--radius-full);
	font-size:     var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	border:        1.5px solid rgba(var(--clr-primary-rgb), .15);
	background:    var(--clr-surface);
	color:         var(--clr-muted);
	text-decoration: none;
	cursor:        pointer;
	transition:    all .22s ease;
	white-space:   nowrap;
}
.archive-filter-chip:hover {
	border-color: var(--clr-primary);
	color:        var(--clr-primary);
	background:   rgba(var(--clr-primary-rgb), .06);
}
.archive-filter-chip.is-active {
	background:   var(--clr-primary);
	border-color: var(--clr-primary);
	color:        #fff;
	box-shadow:   0 4px 14px rgba(var(--clr-primary-rgb), .35);
}
.archive-filter-chip__count {
	font-size:     var(--fs-h6);
	padding:       .05rem .4rem;
	border-radius: var(--radius-full);
	background:    rgba(255,255,255,.2);
	font-weight: var(--type-weight-subtitle);
}
.archive-filter-chip.is-active .archive-filter-chip__count { background: rgba(255,255,255,.25); }
.archive-filter-chip:not(.is-active) .archive-filter-chip__count {
	background: rgba(var(--clr-primary-rgb), .1);
	color:      var(--clr-primary);
}

/* کانتینر لیست آرشیو مقالات — بدون فاصله عمودی */
.archive-container {
	padding-top:    0;
	padding-bottom: 0;
}

/* ---------- هیرو آرشیو — مقالات، دوره، پادکست، محصول (ارتفاع یکسان) ---------- */
.archive-hero-v2,
.page-hero.page-hero--archive,
.page-hero.page-hero--search,
.page-hero.page-hero--category,
.page-hero.page-hero--blog,
.page-hero.page-hero--podcasts,
.page-hero.page-hero--products {
	position:      relative;
	overflow:      hidden;
	padding:       var(--hero-archive-pad-top) 0 var(--hero-archive-pad-bottom);
	margin-bottom: 0;
	box-shadow:    none;
	border-bottom: 1px solid var(--clr-border);
}

.archive-hero-v2__bg,
.page-hero.page-hero--archive::before,
.page-hero.page-hero--search::before,
.page-hero.page-hero--category::before,
.page-hero.page-hero--blog::before,
.page-hero.page-hero--podcasts::before,
.page-hero.page-hero--products::before {
	display: none;
}

.archive-hero-v2__inner,
.page-hero.page-hero--archive .container,
.page-hero.page-hero--search .container,
.page-hero.page-hero--category .container,
.page-hero.page-hero--blog .container,
.page-hero.page-hero--podcasts .container,
.page-hero.page-hero--products .container,
.page-hero.page-hero--archive .category-hero,
.page-hero.page-hero--archive .tag-hero,
.page-hero.page-hero--archive .author-hero,
.page-hero.page-hero--blog .blog-hero {
	position:   relative;
	text-align: center;
	max-width:  none;
	margin:     0 auto;
}

.archive-hero-v2__inner .breadcrumb,
.page-hero.page-hero--archive .breadcrumb,
.page-hero.page-hero--search .breadcrumb,
.page-hero.page-hero--category .breadcrumb,
.page-hero.page-hero--blog .breadcrumb,
.page-hero.page-hero--podcasts .breadcrumb,
.page-hero.page-hero--products .breadcrumb {
	display:         flex;
	justify-content: center;
	margin-top:      0;
	margin-bottom:   var(--hero-archive-gap);
}

.page-hero.page-hero--category .category-hero__badge,
.page-hero.page-hero--archive .category-hero__badge {
	display:        inline-flex;
	align-items:    center;
	gap:            .35rem;
	margin-inline:  auto;
	margin-bottom:  var(--hero-archive-gap);
	padding:        var(--ui-badge-pad-y) var(--ui-badge-pad-x);
	background:     rgba(var(--clr-primary-rgb), .1);
	border:         1px solid rgba(var(--clr-primary-rgb), .2);
	border-radius:  var(--radius-full);
	font-size: var(--type-body);
	font-weight:    var(--ui-badge-weight);
	color:          var(--clr-primary);
	text-transform: uppercase;
	letter-spacing: .08em;
	line-height:    1.2;
}

.archive-hero-v2__title,
.page-hero.page-hero--archive .page-hero__title,
.page-hero.page-hero--search .page-hero__title,
.page-hero.page-hero--category .page-hero__title,
.page-hero.page-hero--blog .page-hero__title,
.page-hero.page-hero--podcasts .page-hero__title,
.page-hero.page-hero--products .page-hero__title {
	font-size:   var(--type-title);
	font-weight: var(--type-weight-title);
	text-align:  center;
	background:  linear-gradient(135deg, var(--clr-text) 50%, rgba(var(--clr-primary-rgb), .8));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	margin-bottom: var(--hero-archive-gap);
	line-height:   1.35;
	min-height:    0;
}

.archive-hero-v2__desc,
.page-hero.page-hero--archive .page-hero__desc,
.page-hero.page-hero--search .page-hero__desc,
.page-hero.page-hero--category .category-hero__desc,
.page-hero.page-hero--blog .blog-hero__desc,
.page-hero.page-hero--podcasts .page-hero__desc,
.page-hero.page-hero--products .page-hero__desc {
	color:       var(--clr-muted);
	font-size:   var(--fs-base);
	max-width:   520px;
	margin:      0 auto var(--hero-archive-gap);
	line-height: 1.65;
	display:            -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: var(--hero-archive-desc-lines);
	overflow:           hidden;
	min-height:         calc(var(--hero-archive-desc-lines) * 1.65em);
}

.archive-hero-v2__desc--rich {
	text-align: center;
	display:    block;
	overflow:   visible;
	min-height: 0;
	-webkit-line-clamp: unset;
}
.archive-hero-v2__desc--rich > *:first-child { margin-top: 0; }
.archive-hero-v2__desc--rich > *:last-child { margin-bottom: 0; }

.archive-hero-v2__meta,
.page-hero.page-hero--blog .blog-hero__meta,
.page-hero.page-hero--category .category-hero__meta {
	display:         flex;
	align-items:     center;
	justify-content: center;
	flex-wrap:       wrap;
	gap:             .45rem;
	margin-top:      0;
}
.archive-hero-v2__chip,
.page-hero.page-hero--blog .blog-hero__chip {
	display:       inline-flex;
	align-items:   center;
	gap:           .3rem;
	padding:       var(--ui-btn-sm-pad-y) var(--ui-btn-sm-pad-x);
	border:        1px solid rgba(var(--clr-primary-rgb), .14);
	border-radius: var(--radius-full);
	background:    var(--clr-surface);
	color:         var(--clr-muted);
	font-size:     var(--ui-btn-sm-font);
	font-weight:   var(--ui-btn-weight);
	line-height:   1.2;
	box-shadow:    none;
}
.archive-hero-v2__chip strong { color: var(--clr-primary); }

/* ---------- واکنش‌گرا ---------- */
@media (max-width: 1024px) {
	.courses-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
	.posts-grid,
	.courses-grid,
	.products-grid { grid-template-columns: 1fr; }

	.posts-grid--list .post-card { grid-template-columns: 1fr; }

	.podcast-item { flex-direction: column; align-items: flex-start; }
	.podcast-item__artwork { width: 90px; height: auto; aspect-ratio: 1 / 1; }
	.podcast-item__wave { display: none; }

	:root {
		--hero-archive-pad-top:    1.25rem;
		--hero-archive-pad-bottom: .85rem;
		--hero-archive-gap:        .5rem;
	}

	.archive-hero-v2,
	.page-hero.page-hero--archive,
	.page-hero.page-hero--search,
	.page-hero.page-hero--category,
	.page-hero.page-hero--blog,
	.page-hero.page-hero--podcasts,
	.page-hero.page-hero--products {
		padding: var(--hero-archive-pad-top) 0 var(--hero-archive-pad-bottom);
	}
}
@media (max-width: 480px) {
	.courses-grid,
	.products-grid { grid-template-columns: 1fr; }
	.archive-filter-bar { padding: .75rem; gap: .4rem; }
}

/* قالب «صفحه دوره»: CTA شناور پایین وسط */
body.diaram-course-landing-page {
	padding-bottom: max(5.5rem, calc(env(safe-area-inset-bottom, 0px) + 4.5rem));
}
.diaram-floating-course-cta {
	position: fixed;
	z-index: 95;
	left: 50%;
	right: auto;
	transform: translateX(-50%);
	bottom: max(1rem, env(safe-area-inset-bottom, 0px));
	max-width: calc(100vw - 1.5rem);
	pointer-events: none;
}
.diaram-floating-course-cta__inner {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0.55rem 0.85rem 0.55rem 0.65rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(37, 99, 235, 0.14);
	box-shadow: 0 10px 40px rgba(15, 23, 42, 0.12);
	pointer-events: auto;
	backdrop-filter: saturate(180%) blur(14px);
	-webkit-backdrop-filter: saturate(180%) blur(14px);
}
.diaram-floating-course-cta__price {
	display: flex;
	align-items: baseline;
	gap: 0.25rem;
	color: var(--clr-text);
	font-weight: var(--type-weight-subtitle);
}
.diaram-floating-course-cta__amount {
	font-size: var(--type-title);
	font-weight: var(--type-weight-title);
	color: var(--clr-primary);
	letter-spacing: -0.02em;
}
.diaram-floating-course-cta__unit {
	font-size: var(--type-body);
	color: var(--clr-muted);
	font-weight: var(--type-weight-subtitle);
}
.diaram-floating-course-cta__price-free {
	font-size: var(--type-subtitle);
	font-weight: var(--type-weight-title);
	color: #16a34a;
}
.diaram-floating-course-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.55rem 1.25rem;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--clr-primary), var(--clr-secondary));
	color: #fff;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	text-decoration: none;
	white-space: nowrap;
	box-shadow: 0 8px 22px rgba(var(--clr-primary-rgb), 0.28);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.diaram-floating-course-cta__btn:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(var(--clr-primary-rgb), 0.34);
}
.diaram-floating-course-cta__btn--disabled {
	cursor: not-allowed;
	opacity: 0.55;
	background: #94a3b8;
	box-shadow: none;
}
.diaram-floating-course-cta__btn--disabled:hover {
	transform: none;
}

/* ====================================================================
   نوار کناری عنوان — فقط کلاس مشخص (بدون وابستگی به h1–h6)
   ==================================================================== */
.diaram-home__section-heading,
.course-section__heading,
.course-section__subheading,
.comments-title,
.diaram-dash-box-title {
	position:             relative;
	padding-inline-start: 20px;
}

.diaram-home__section-heading::before,
.course-section__heading::before,
.course-section__subheading::before,
.comments-title::before,
.diaram-dash-box-title::before {
	content:            '';
	position:           absolute;
	inset-inline-start: 0;
	top:                50%;
	transform:          translateY(-50%);
	width:              14px;
	height:             2px;
	border-radius:      1px;
	background:         rgba(15, 23, 42, 0.32);
	box-shadow:         none;
}

/* اسلایدر امکانات کلاس / هیرو — کامپوننت مشترک مدرن */
.course-outline--slider {
	margin-top: 0.5rem;
}

.course-outline-slider {
	position: relative;
	margin-top: 0.75rem;
	--outline-nav-size: 44px;
	--outline-nav-offset: 14px;
	--outline-ease: cubic-bezier(.22, 1, .36, 1);
}

.course-outline-slider__viewport {
	position: relative;
	border-radius: 22px;
	overflow: hidden;
	border: 1px solid rgba(var(--clr-primary-rgb), 0.12);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(var(--clr-primary-rgb), .055)),
		rgba(var(--clr-primary-rgb), 0.04);
	box-shadow: 0 22px 54px rgba(15, 23, 42, 0.1);
	aspect-ratio: 16 / 9;
	isolation: isolate;
	touch-action: pan-y;
}

.course-outline-slider__track {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	direction: ltr;
	width: 100%;
	height: 100%;
	min-width: 0;
	transform: translate3d(0, 0, 0);
	transition: transform 0.62s var(--outline-ease);
	will-change: transform;
}

.course-outline-slider__slide {
	position: relative;
	flex: 0 0 100%;
	flex-shrink: 0;
	width: 100%;
	min-width: 100%;
	height: 100%;
	overflow: hidden;
	background: rgba(var(--clr-primary-rgb), .035);
}

.course-outline-slider.is-jump .course-outline-slider__track {
	transition: none;
}

.course-outline-slider__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.course-outline-slider__slide a {
	display: block;
	width: 100%;
	height: 100%;
	line-height: 0;
}

.course-outline-slider__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: var(--outline-nav-size);
	height: var(--outline-nav-size);
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, .55);
	background: rgba(255, 255, 255, 0.86);
	color: var(--clr-text);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 14px 32px rgba(15, 23, 42, 0.18);
	backdrop-filter: blur(16px) saturate(1.2);
	-webkit-backdrop-filter: blur(16px) saturate(1.2);
	transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease;
	z-index: 2;
}

.course-outline-slider__nav:hover,
.course-outline-slider__nav:focus-visible {
	background: var(--clr-button-gradient, var(--clr-primary));
	color: #fff;
	transform: translateY(-50%) scale(1.05);
	box-shadow: 0 18px 42px rgba(var(--clr-primary-rgb), 0.28);
}

.course-outline-slider__nav--prev {
	inset-inline-end: var(--outline-nav-offset);
}

.course-outline-slider__nav--next {
	inset-inline-start: var(--outline-nav-offset);
}

.course-outline-slider__dots {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.95rem;
}

.course-outline-slider__dot {
	width: 10px;
	height: 10px;
	border-radius: 999px;
	border: 0;
	background: rgba(var(--clr-primary-rgb), 0.18);
	padding: 0;
	cursor: pointer;
	transition: background 0.22s ease, width 0.22s ease, transform 0.22s ease;
}

.course-outline-slider__dot:hover {
	background: rgba(var(--clr-primary-rgb), 0.4);
	transform: translateY(-1px);
}

.course-outline-slider__dot.is-active {
	background: var(--clr-button-gradient, var(--clr-primary));
	width: 32px;
}

@media (max-width: 700px) {
	.course-outline-slider {
		--outline-nav-size: 38px;
		--outline-nav-offset: 9px;
	}

	.course-outline-slider__viewport {
		aspect-ratio: 4 / 3;
		border-radius: 18px;
	}
}

.course-outline-slider--natural-aspect .course-outline-slider__slide img {
	object-fit: contain;
}

@media (prefers-reduced-motion: reduce) {
	.course-outline-slider__track,
	.course-outline-slider__nav,
	.course-outline-slider__dot {
		transition: none;
	}
}

/* ---- تیک آبی + راهنمای پنل پروفایل ---- */
.diaram-name-badge-row {
	display: inline-flex;
	align-items: center;
	gap: 0.28em;
	flex-wrap: wrap;
}

.diaram-blue-badge {
	display: inline-flex;
	align-items: center;
	line-height: 0;
	flex-shrink: 0;
}

.diaram-blue-badge__icon {
	display: block;
	width: 1em;
	height: 1em;
}

.diaram-dash-blue-badge-help {
	margin-bottom: 1.5rem;
	padding: 1rem 1.15rem;
	text-align: start;
}

.diaram-dash-blue-badge-help__title {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	flex-wrap: wrap;
	margin: 0 0 0.75rem;
	font-size: var(--type-subtitle);
	font-weight: var(--type-weight-subtitle);
	color: var(--clr-text, #0f172a);
}

.diaram-dash-blue-badge-help__body {
	font-size: var(--type-body);
	line-height: 1.65;
	color: var(--clr-muted, #64748b);
}

.diaram-dash-blue-badge-help__lead,
.diaram-dash-blue-badge-help__rules-intro,
.diaram-dash-blue-badge-help__note,
.diaram-dash-blue-badge-help__foot {
	margin: 0 0 0.75rem;
}

.diaram-dash-blue-badge-help__foot {
	margin-bottom: 0;
	font-size: var(--type-body);
	opacity: 0.95;
}

.diaram-dash-blue-badge-help__list {
	list-style: none;
	margin: 0 0 0.75rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.diaram-dash-blue-badge-help__item {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.35rem 0.75rem;
	padding: 0.55rem 0.65rem;
	border-radius: 8px;
	background: rgba(148, 163, 184, 0.12);
	border: 1px solid rgba(148, 163, 184, 0.28);
}

.diaram-dash-blue-badge-help__item.is-ok {
	background: rgba(34, 197, 94, 0.1);
	border-color: rgba(34, 197, 94, 0.35);
}

.diaram-dash-blue-badge-help__item-label {
	flex: 1 1 200px;
	min-width: 0;
	font-weight: var(--type-weight-body);
	color: var(--clr-text, #334155);
}

.diaram-dash-blue-badge-help__item-val {
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	font-weight: var(--type-weight-subtitle);
	color: var(--clr-text, #0f172a);
}

.diaram-dash-blue-badge-help__sep {
	opacity: 0.55;
	font-weight: 400;
}

/* ====================================================================
   صفحه ثبت دیدگاه اپیزود پادکست
   ==================================================================== */
.podcast-feedback-page .site-main.podcast-feedback {
	padding-bottom: 3rem;
}

.podcast-feedback__article {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

.podcast-feedback__hero {
	margin: 1.25rem auto 0;
	max-width: min(100% - 2rem, var(--container, 1280px));
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--clr-border);
}

.podcast-feedback__hero-inner {
	display: grid;
	grid-template-columns: minmax(140px, 220px) 1fr;
	gap: 1.5rem;
	padding: 1.5rem;
	align-items: center;
}

.podcast-feedback__cover-wrap {
	position: relative;
	width: 100%;
	max-width: 220px;
}

.podcast-feedback__cover {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: var(--radius);
	box-shadow: 0 12px 32px rgba(15, 23, 42, .18);
}

.podcast-feedback__cover--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1;
	border-radius: var(--radius);
	background: linear-gradient(145deg, rgba(var(--clr-primary-rgb, 37, 99, 235), .12), rgba(var(--clr-secondary-rgb, 14, 165, 233), .08));
	color: var(--clr-primary);
}

.podcast-feedback__badge {
	position: absolute;
	bottom: .65rem;
	inset-inline-start: .65rem;
	padding: .28rem .65rem;
	border-radius: 999px;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	color: #fff;
	background: rgba(15, 23, 42, .72);
	backdrop-filter: blur(8px);
}

.podcast-feedback__kicker {
	margin: 0 0 .5rem;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	letter-spacing: .02em;
	color: var(--clr-primary);
}

.podcast-feedback__series {
	display: flex;
	flex-wrap: wrap;
	gap: .35rem;
	margin-bottom: .55rem;
}

.podcast-feedback__series-tag {
	display: inline-flex;
	align-items: center;
	padding: .2rem .65rem;
	border-radius: 999px;
	font-size: var(--type-body);
	font-weight: var(--type-weight-subtitle);
	color: var(--clr-primary);
	background: rgba(var(--clr-primary-rgb, 37, 99, 235), .1);
	border: 1px solid rgba(var(--clr-primary-rgb, 37, 99, 235), .18);
}

.podcast-feedback__title {
	margin: 0 0 .65rem;
	font-size:var(--type-title);
	line-height: 1.35;
	color: var(--clr-text);
}

.podcast-feedback__lead {
	margin: 0 0 1rem;
	font-size: var(--fs-sm);
	color: var(--clr-muted);
}

.podcast-feedback__episode-link {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	font-size: var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	color: var(--clr-primary);
	transition: opacity var(--transition);
}

.podcast-feedback__episode-link:hover {
	opacity: .85;
}

[dir="rtl"] .podcast-feedback__episode-link svg {
	transform: scaleX(-1);
}

.podcast-feedback__body {
	max-width: min(100% - 2rem, 820px);
	margin-inline: auto;
}

.podcast-feedback__notice {
	margin-bottom: 1rem;
	padding: 1rem 1.15rem;
	font-size: var(--fs-sm);
	font-weight: var(--type-weight-subtitle);
	color: #b45309;
	background: rgba(245, 158, 11, .1);
	border: 1px solid rgba(245, 158, 11, .28);
}

.podcast-feedback__comments .comments-area {
	margin: 0;
}

.podcast-feedback__guest-note {
	margin:      0 0 .55rem;
	padding:     0;
	font-size:   var(--fs-h6);
	font-weight: var(--type-weight-body);
	color:       var(--clr-muted);
	background:  transparent;
	border:      none;
}

.podcast-feedback__logged-in-as {
	margin: 0 0 1rem;
	font-size: var(--fs-sm);
	color: var(--clr-muted);
}

.podcast-feedback__captcha-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .65rem;
}

.podcast-feedback__captcha-image {
	display: block;
	border-radius: var(--radius-sm);
	border: 1px solid var(--clr-border);
	background: #fff;
}

.podcast-feedback__captcha-refresh {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border: 1px solid var(--clr-border);
	border-radius: var(--radius-sm);
	background: rgba(var(--clr-primary-rgb, 37, 99, 235), .06);
	color: var(--clr-primary);
	cursor: pointer;
	transition: background var(--transition), border-color var(--transition);
}

.podcast-feedback__captcha-refresh:hover {
	background: rgba(var(--clr-primary-rgb, 37, 99, 235), .12);
	border-color: rgba(var(--clr-primary-rgb, 37, 99, 235), .25);
}

.podcast-feedback__captcha-input {
	flex: 1 1 8rem;
	min-width: 7rem;
	max-width: 10rem;
}

.podcast-feedback__captcha-hint {
	margin: .45rem 0 0;
	font-size: var(--fs-xs, .78rem);
	color: var(--clr-muted);
}

@media (max-width: 720px) {
	.podcast-feedback__hero-inner {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.podcast-feedback__cover-wrap {
		margin-inline: auto;
	}

	.podcast-feedback__series {
		justify-content: center;
	}

	.podcast-feedback__episode-link {
		justify-content: center;
	}
}
