@font-face {
	font-family: "YekanBakh";
	src: url("../fonts/YekanBakh-Regular.woff") format("woff");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "YekanBakh";
	src: url("../fonts/YekanBakh-Medium.woff") format("woff");
	font-weight: 500 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "YekanBakh";
	src: url("../fonts/YekanBakh-Bold.woff") format("woff");
	font-weight: 700 900;
	font-style: normal;
	font-display: swap;
}

/* =========================================================================
 * ۲. پایه
 * ====================================================================== */
:root {
	--rojan-surface: #ffffff;
	--rojan-surface-2: #f4f4f5;
	--rojan-ink: #292524;
	--rojan-ink-soft: #57534e;
	--rojan-ink-mute: #78716c;
	--rojan-line: rgb(0 0 0 / 0.07);
}
.dark {
	--rojan-surface: #121214;
	--rojan-surface-2: #18181b;
	--rojan-ink: #fafafa;
	--rojan-ink-soft: #d4d4d8;
	--rojan-ink-mute: #a1a1aa;
	--rojan-line: rgb(255 255 255 / 0.08);
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	outline: none !important;
}

code,
pre,
kbd,
samp,
tt {
	font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace !important;
}

/* فوکوس قابل‌دیدن فقط برای پیمایش با کیبورد (جایگزین outline:none سراسری) */
:focus:not(:focus-visible) {
	outline: none;
}
:focus-visible {
	outline: 2px solid rgb(var(--c-500, 124 58 237));
	outline-offset: 2px;
	border-radius: 8px;
}

::selection {
	background: rgb(var(--c-500, 124 58 237) / 0.22);
}

/* متن مخفی برای صفحه‌خوان — وردپرس این کلاس را خودش خروجی می‌دهد */
.screen-reader-text,
.says {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}
.screen-reader-text:focus {
	position: static !important;
	width: auto;
	height: auto;
	clip: auto;
	clip-path: none;
	margin: 0;
}
/* =========================================================================
 * ۳. سطوح نرم و جداکننده‌ها — جایگزین بوردرهای خشک
 * ====================================================================== */
.rojan-surface {
	background: var(--rojan-surface);
	border-radius: 1.5rem;
}
.rojan-surface-2 {
	background: var(--rojan-surface-2);
	border-radius: 1.25rem;
}

/* خط جداکننده محو شونده به‌جای border یکدست */
.rojan-hairline {
	border: 0;
	height: 1px;
	background: linear-gradient(to left, var(--rojan-line) 0%, var(--rojan-line) 55%, transparent 100%);
}

/* سر تیتر بخش‌ها با نشانگر رنگی به‌جای بوردر پایین */
.rojan-section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.5rem;
}
.rojan-section-head .rojan-section-title {
	position: relative;
	display: block;
	padding-inline-start: 0.9rem;
	font-size: 1.375rem;
	font-weight: 900;
	line-height: 1.6;
	color: var(--rojan-ink);
	margin: 0;
}
.rojan-section-head .rojan-section-title::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 50%;
	transform: translateY(-60%);
	width: 5px;
	height: 1.15em;
	border-radius: 99px;
	background: rgb(var(--c-500, 124 58 237));
}
@media (min-width: 768px) {
	.rojan-section-head .rojan-section-title {
		font-size: 1.5rem;
	}
}
/* =========================================================================
 * ۴. تایپوگرافی محتوای نوشته و برگه
 * ====================================================================== */
.rojan-content {
	font-size: 1.0625rem;
	line-height: 1.8; /* کاهش فاصله بین خطوط (قبلا 2.05 بود) */
	color: var(--rojan-ink-soft);
	word-wrap: break-word;
	overflow-wrap: break-word;
}
@media (min-width: 768px) {
	.rojan-content {
		font-size: 1.125rem;
		line-height: 1.85; /* کاهش فاصله در دسکتاپ (قبلا 2.1 بود) */
	}
}
.rojan-content > :first-child {
	margin-top: 0;
}
.rojan-content > :last-child {
	margin-bottom: 0;
}

.rojan-content p {
	margin: 0 0 1.1em; /* کاهش فاصله بین پاراگراف‌ها (قبلا 1.45em بود) */
}
.rojan-content strong,
.rojan-content b {
	font-weight: 700;
	color: var(--rojan-ink);
}
.rojan-content em,
.rojan-content i {
	font-style: normal;
	color: var(--rojan-ink);
	font-weight: 500;
}
.rojan-content mark {
	background: rgb(var(--c-500, 124 58 237) / 0.16);
	color: inherit;
	padding: 0.1em 0.35em;
	border-radius: 0.375rem;
}
.rojan-content small {
	font-size: 0.875em;
}
.rojan-content sup,
.rojan-content sub {
	font-size: 0.72em;
}
/* --- سرتیترهای درون محتوا --- */
.rojan-content h1,
.rojan-content h2,
.rojan-content h3,
.rojan-content h4,
.rojan-content h5,
.rojan-content h6 {
	color: var(--rojan-ink);
	font-weight: 800;
	line-height: 1.6;
	margin: 2em 0 0.7em;
	scroll-margin-top: 6.5rem;
}
/* =========================================================================
 * رنگ‌بندی دقیق متن و تیترهای مقاله مطابق الگوی ویجیاتو
 * ====================================================================== */

/* حالت تاریک (Dark Mode) */
.dark .rojan-content h1,
.dark .rojan-content h2,
.dark .rojan-content h3,
.dark .rojan-content h4,
.dark .rojan-content h5,
.dark .rojan-content h6 {
  color: #ffffff !important;           /* سفید خالص، کاملاً شفاف و درخشان */
  font-weight: 900 !important;
}

.dark .rojan-content,
.dark .rojan-content p,
.dark .rojan-content li {
  color: #e4e4e7 !important;           /* خاکستری پلاتینیومی (Zinc 200) */
  font-weight: 400 !important;
}

.dark .rojan-content strong,
.dark .rojan-content b {
  color: #ffffff !important;           /* کلمات بولد شده سفید کامل */
  font-weight: 800 !important;
}

/* حالت روشن (Light Mode) */
html:not(.dark) .rojan-content h1,
html:not(.dark) .rojan-content h2,
html:not(.dark) .rojan-content h3,
html:not(.dark) .rojan-content h4 {
  color: #09090b !important;           /* مشکی غنی برای خوانایی حداکثری */
}

html:not(.dark) .rojan-content,
html:not(.dark) .rojan-content p,
html:not(.dark) .rojan-content li {
  color: #27272a !important;           /* خاکستری تیره روان (Zinc 800) */
}
.rojan-content h1 {
	font-size: 1.75rem;
}
.rojan-content h2 {
	position: relative;
	font-size: 1.5rem;
	font-weight: 900;
	padding-inline-start: 0 !important;
}
.rojan-content h3 {
	font-size: 1.3rem;
}
.rojan-content h4 {
	font-size: 1.125rem;
}
.rojan-content h5,
.rojan-content h6 {
	font-size: 1rem;
	color: var(--rojan-ink-mute);
	letter-spacing: 0.01em;
}
@media (min-width: 768px) {
	.rojan-content h1 {
		font-size: 2rem;
	}
	.rojan-content h2 {
		font-size: 1.65rem;
	}
	.rojan-content h3 {
		font-size: 1.4rem;
	}
}
/* --- پیوندها --- */
.rojan-content a {
	color: rgb(var(--c-600, 109 40 217));
	font-weight: 700;
	text-decoration: none;
	border-bottom: 1px dashed rgb(var(--c-500, 124 58 237) / 0.32);
	transition: color 0.2s ease, border-color 0.2s ease;
}
.rojan-content a:hover {
	color: rgb(var(--c-700, 91 33 182));
	border-bottom-color: rgb(var(--c-500, 124 58 237));
}
.dark .rojan-content a {
	color: rgb(var(--c-400, 167 139 250));
}
.dark .rojan-content a:hover {
	color: rgb(var(--c-300, 196 181 253));
}
.rojan-content a:has(img),
.rojan-content a.wp-block-button__link {
	border-bottom: 0;
}

/* --- لیست‌ها --- */
.rojan-content ul,
.rojan-content ol {
	margin: 0 0 1.45em;
	padding-inline-start: 1.5em;
}
.rojan-content ul {
	list-style: disc outside;
}
.rojan-content ol {
	list-style: decimal outside;
}
.rojan-content li {
	margin-bottom: 0.55em;
	padding-inline-start: 0.25em;
}
.rojan-content li::marker {
	color: rgb(var(--c-500, 124 58 237));
	font-weight: 700;
}
.rojan-content li > ul,
.rojan-content li > ol {
	margin-top: 0.55em;
	margin-bottom: 0;
}
.rojan-content ul ul {
	list-style: circle outside;
}
/* --- نقل قول --- */
.rojan-content blockquote {
	margin: 2em 0;
	padding: 1.35rem 1.5rem;
	border: 0;
	border-inline-start: 4px solid rgb(var(--c-500, 124 58 237));
	border-radius: 1.25rem;
	background: var(--rojan-surface-2);
	color: var(--rojan-ink);
	font-weight: 500;
	font-size: 1.0625rem;
	line-height: 1.95;
}
.rojan-content blockquote > :last-child {
	margin-bottom: 0;
}
.rojan-content blockquote cite {
	display: block;
	margin-top: 0.75rem;
	font-size: 0.875rem;
	font-style: normal;
	font-weight: 700;
	color: rgb(var(--c-600, 109 40 217));
}
.dark .rojan-content blockquote cite {
	color: rgb(var(--c-400, 167 139 250));
}

/* --- کد --- */
.rojan-content pre {
	margin: 2em 0;
	padding: 1.25rem 1.35rem;
	border-radius: 1.25rem;
	background: #18181b;
	color: #e4e4e7;
	overflow-x: auto;
	direction: ltr;
	text-align: left;
	font-size: 0.875rem;
	line-height: 1.85;
	tab-size: 4;
}
.rojan-content pre code {
	background: none;
	color: inherit;
	padding: 0;
	font-size: inherit;
}
.rojan-content :not(pre) > code {
	background: rgb(var(--c-500, 124 58 237) / 0.12);
	color: rgb(var(--c-700, 91 33 182));
	padding: 0.15em 0.45em;
	border-radius: 0.375rem;
	font-size: 0.875em;
	direction: ltr;
	unicode-bidi: isolate;
}
.dark .rojan-content :not(pre) > code {
	color: rgb(var(--c-300, 196 181 253));
}
/* --- تصاویر و کپشن --- */
.rojan-content img,
.rojan-content video,
.rojan-content iframe {
	max-width: 100%;
	height: auto;
}
.rojan-content img {
	border-radius: 1.25rem;
	display: block;
}
.rojan-content figure {
	margin: 2em 0;
}
.rojan-content figcaption,
.rojan-content .wp-caption-text {
	margin-top: 0.75rem;
	font-size: 0.8125rem;
	line-height: 1.8;
	color: var(--rojan-ink-mute);
	text-align: center;
}
.rojan-content iframe,
.rojan-content embed,
.rojan-content object {
	border-radius: 1.25rem;
	max-width: 100%;
}
.rojan-content .wp-block-embed__wrapper iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
}

/* --- خط افقی --- */
.rojan-content hr {
	margin: 2.5em 0;
	border: 0;
	height: 1px;
	background: linear-gradient(to left, transparent, var(--rojan-line) 20%, var(--rojan-line) 80%, transparent);
}

/* --- جدول --- */
.rojan-content .wp-block-table,
.rojan-content .rojan-table-scroll {
	overflow-x: auto;
	margin: 2em 0;
	-webkit-overflow-scrolling: touch;
}
.rojan-content table {
	width: 100%;
	margin: 2em 0;
	border-collapse: collapse;
	font-size: 0.9375rem;
	line-height: 1.8;
	overflow: hidden;
	border-radius: 1rem;
}
.rojan-content .wp-block-table table,
.rojan-content .rojan-table-scroll table {
	margin: 0;
}
.rojan-content th,
.rojan-content td {
	padding: 0.8rem 1rem;
	text-align: start;
	border: 0;
	border-bottom: 1px solid var(--rojan-line);
}
.rojan-content thead th {
	background: rgb(var(--c-500, 124 58 237) / 0.1);
	color: var(--rojan-ink);
	font-weight: 800;
	white-space: nowrap;
}
.rojan-content tbody tr:nth-child(even) {
	background: rgb(0 0 0 / 0.02);
}
.dark .rojan-content tbody tr:nth-child(even) {
	background: rgb(255 255 255 / 0.03);
}
.rojan-content tbody tr:last-child td {
	border-bottom: 0;
}
/* --- فهرست توصیفی و آدرس --- */
.rojan-content dl {
	margin: 0 0 1.45em;
}
.rojan-content dt {
	font-weight: 800;
	color: var(--rojan-ink);
	margin-bottom: 0.35em;
}
.rojan-content dd {
	margin: 0 0 1em;
	padding-inline-start: 1.25em;
}
.rojan-content address {
	font-style: normal;
	margin: 0 0 1.45em;
}
.rojan-content kbd {
	background: var(--rojan-surface-2);
	border-radius: 0.375rem;
	padding: 0.15em 0.45em;
	font-size: 0.85em;
	box-shadow: inset 0 -2px 0 var(--rojan-line);
}

/* --- کلاس‌های چیدمان هسته وردپرس --- */
.rojan-content .alignleft {
	float: left;
	margin: 0.5em 1.5em 1.25em 0;
	max-width: 50%;
}
.rojan-content .alignright {
	float: right;
	margin: 0.5em 0 1.25em 1.5em;
	max-width: 50%;
}
.rojan-content .aligncenter {
	margin-inline: auto;
	text-align: center;
}
.rojan-content .aligncenter img {
	margin-inline: auto;
}
.rojan-content .alignwide {
	margin-inline: -2rem;
	max-width: calc(100% + 4rem);
}
.rojan-content .alignfull {
	margin-inline: -2rem;
	max-width: calc(100% + 4rem);
}
@media (max-width: 767px) {
	.rojan-content .alignleft,
	.rojan-content .alignright {
		float: none;
		margin-inline: auto;
		max-width: 100%;
	}
	.rojan-content .alignwide,
	.rojan-content .alignfull {
		margin-inline: 0;
		max-width: 100%;
	}
}
.rojan-content .wp-caption {
	max-width: 100%;
}
.rojan-content .wp-block-gallery,
.rojan-content .gallery {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 0.75rem;
	margin: 2em 0;
	list-style: none;
	padding: 0;
}
.rojan-content .gallery-item {
	margin: 0;
}
.rojan-content .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
	font-weight: 800;
	font-size: 0.9375rem;
	padding: 0.75rem 1.5rem;
	border-radius: 0.875rem;
	transition: background 0.2s ease;
}
.rojan-content .wp-block-button__link:hover {
	background: rgb(var(--c-700, 91 33 182));
	color: #fff;
}
/* =========================================================================
 * ۵. فهرست مطالب خودکار
 * ====================================================================== */
.rojan-toc {
	margin: 0 0 2.25rem;
	padding: 1.35rem 1.5rem;
	border: 0;
	border-radius: 1.5rem;
	background: var(--rojan-surface-2);
	font-size: 1rem;
}
.rojan-toc > summary {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	cursor: pointer;
	list-style: none;
	font-size: 1.0625rem;
	font-weight: 900;
	color: var(--rojan-ink);
}
.rojan-toc > summary::-webkit-details-marker {
	display: none;
}
.rojan-toc > summary::before {
	content: "";
	width: 5px;
	height: 1.15em;
	border-radius: 99px;
	background: rgb(var(--c-500, 124 58 237));
	flex-shrink: 0;
}
.rojan-toc > summary::after {
	content: "";
	margin-inline-start: auto;
	width: 0.55rem;
	height: 0.55rem;
	border-inline-end: 2px solid currentColor;
	border-block-end: 2px solid currentColor;
	transform: rotate(45deg);
	opacity: 0.45;
	transition: transform 0.25s ease;
}
.rojan-toc[open] > summary::after {
	transform: rotate(225deg);
}
.rojan-toc ol {
	margin: 1.1rem 0 0;
	padding: 0;
	list-style: none;
	counter-reset: rojan-toc;
}
.rojan-toc ol li {
	counter-increment: rojan-toc;
	margin: 0 0 0.35rem;
	padding: 0;
}
.rojan-toc ol li a {
	display: flex;
	align-items: baseline;
	gap: 0.55rem;
	padding: 0.4rem 0.5rem;
	border-radius: 0.65rem;
	font-size: 0.9375rem;
	line-height: 1.85;
	font-weight: 500;
	color: var(--rojan-ink-soft);
	border: 0;
	transition: background 0.2s ease, color 0.2s ease;
}
.rojan-toc ol li a::before {
	content: counter(rojan-toc) ".";
	font-weight: 800;
	font-size: 0.8125rem;
	color: rgb(var(--c-500, 124 58 237));
	flex-shrink: 0;
}
.rojan-toc ol li a:hover {
	background: rgb(var(--c-500, 124 58 237) / 0.1);
	color: rgb(var(--c-700, 91 33 182));
}
.dark .rojan-toc ol li a:hover {
	color: rgb(var(--c-300, 196 181 253));
}
.rojan-toc ol li.rojan-toc-sub {
	padding-inline-start: 1.35rem;
}
/* =========================================================================
 * ۶. دیدگاه‌ها
 * ====================================================================== */
.comment-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.comment-list > li {
	margin: 0 0 1rem;
	padding: 0;
	list-style: none;
}
.comment-list .children {
	list-style: none;
	margin: 1rem 0 0;
	padding-inline-start: 1rem;
	border-inline-start: 2px solid rgb(var(--c-500, 124 58 237) / 0.18);
}
.comment-list .children > li {
	margin-bottom: 1rem;
}
.comment-list .children > li:last-child {
	margin-bottom: 0;
}

.comment-body {
	position: relative;
	background: var(--rojan-surface);
	border-radius: 1.35rem;
	padding: 1.25rem 1.35rem;
	transition: background 0.2s ease;
}
.comment-body > :last-child {
	margin-bottom: 0;
}
.comment-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.85rem;
	margin-bottom: 0.9rem;
}
.comment-author {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	min-width: 0;
}
.comment-author img.avatar {
	width: 42px;
	height: 42px;
	border-radius: 999px;
	flex-shrink: 0;
}
.comment-author .fn {
	font-size: 0.9375rem;
	font-weight: 800;
	font-style: normal;
	color: var(--rojan-ink);
}
.comment-author .fn a {
	color: inherit;
	transition: color 0.2s ease;
}
.comment-author .fn a:hover {
	color: rgb(var(--c-600, 109 40 217));
}
.comment-metadata {
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--rojan-ink-mute);
	margin-inline-start: auto;
}
.comment-metadata a {
	color: inherit;
}
.comment-metadata a:hover {
	color: rgb(var(--c-600, 109 40 217));
}
.comment-content {
	font-size: 1rem;
	line-height: 1.95;
	color: var(--rojan-ink-soft);
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.comment-content p {
	margin: 0 0 1em;
}
.comment-content > :last-child {
	margin-bottom: 0;
}
.comment-content a {
	color: rgb(var(--c-600, 109 40 217));
	font-weight: 700;
}
.dark .comment-content a {
	color: rgb(var(--c-400, 167 139 250));
}
.comment-content ul,
.comment-content ol {
	margin: 0 0 1em;
	padding-inline-start: 1.4em;
}
.comment-content ul {
	list-style: disc outside;
}
.comment-content ol {
	list-style: decimal outside;
}
.comment-content blockquote {
	margin: 1em 0;
	padding-inline-start: 1rem;
	border-inline-start: 3px solid rgb(var(--c-500, 124 58 237) / 0.5);
	color: var(--rojan-ink);
}
.comment-content img {
	max-width: 100%;
	height: auto;
	border-radius: 0.75rem;
}
/* --- دکمه پاسخ و وضعیت‌ها --- */
.comment-body .reply {
	margin-top: 0.9rem;
}
.comment-reply-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.8125rem;
	font-weight: 800;
	color: rgb(var(--c-600, 109 40 217));
	background: rgb(var(--c-500, 124 58 237) / 0.1);
	padding: 0.4rem 0.9rem;
	border-radius: 999px;
	transition: background 0.2s ease, color 0.2s ease;
}
.comment-reply-link:hover {
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
}
.dark .comment-reply-link {
	color: rgb(var(--c-300, 196 181 253));
}
.dark .comment-reply-link:hover {
	color: #fff;
}

.comment-list .bypostauthor > .comment-body {
	background: rgb(var(--c-500, 124 58 237) / 0.07);
}
.comment-awaiting-moderation {
	display: block;
	margin-top: 0.6rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: rgb(var(--c-600, 109 40 217));
}
.dark .comment-awaiting-moderation {
	color: rgb(var(--c-300, 196 181 253));
}
.comment-list .pingback .comment-body,
.comment-list .trackback .comment-body {
	font-size: 0.9375rem;
	padding: 1rem 1.15rem;
}
.no-comments {
	font-size: 0.9375rem;
	color: var(--rojan-ink-mute);
}
/* --- فرم ارسال دیدگاه --- */
.comment-respond {
	margin-top: 1.75rem;
	background: var(--rojan-surface);
	border-radius: 1.5rem;
	padding: 1.5rem 1.35rem;
}
.comment-list .comment-respond {
	margin-bottom: 1rem;
	background: var(--rojan-surface-2);
}
.comment-reply-title {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.6rem;
	font-size: 1.125rem;
	font-weight: 900;
	color: var(--rojan-ink);
	margin: 0 0 0.35rem;
}
#cancel-comment-reply-link {
	font-size: 0.8125rem;
	font-weight: 700;
	color: #dc2626;
	background: rgb(220 38 38 / 0.1);
	padding: 0.3rem 0.75rem;
	border-radius: 999px;
	margin-inline-start: auto;
	transition: background 0.2s ease, color 0.2s ease;
}
#cancel-comment-reply-link:hover {
	background: #dc2626;
	color: #fff;
}
.comment-notes,
.comment-form-cookies-consent label,
.logged-in-as {
	font-size: 0.875rem;
	line-height: 1.9;
	color: var(--rojan-ink-mute);
	font-weight: 500;
}
.comment-notes,
.logged-in-as {
	margin: 0 0 1.15rem;
}
.comment-form {
	display: grid;
	gap: 1rem;
}
@media (min-width: 640px) {
	.comment-form {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.comment-form > p {
		grid-column: 1 / -1;
	}
	.comment-form > .comment-form-author,
	.comment-form > .comment-form-email,
	.comment-form > .comment-form-url {
		grid-column: auto;
	}
}
.comment-form > p {
	margin: 0;
}
.comment-form label {
	display: block;
	margin-bottom: 0.45rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--rojan-ink);
}
.comment-form .required {
	color: #dc2626;
	margin-inline-start: 0.15rem;
}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
	width: 100%;
	display: block;
	background: var(--rojan-surface-2);
	border: 1px solid transparent;
	border-radius: 0.9rem;
	padding: 0.75rem 1rem;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.9;
	color: var(--rojan-ink);
	font-family: inherit;
	outline: none;
	transition: border-color 0.2s ease, background 0.2s ease;
}
.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form input[type="url"]:focus,
.comment-form textarea:focus {
	border-color: rgb(var(--c-500, 124 58 237));
	outline: none;
}
.comment-form input::placeholder,
.comment-form textarea::placeholder {
	color: var(--rojan-ink-mute);
	opacity: 0.75;
}
.comment-list .comment-respond .comment-form input[type="text"],
.comment-list .comment-respond .comment-form input[type="email"],
.comment-list .comment-respond .comment-form input[type="url"],
.comment-list .comment-respond .comment-form textarea {
	background: var(--rojan-surface);
}
.comment-form textarea {
	min-height: 8.5rem;
	resize: vertical;
}
.comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
}
.comment-form-cookies-consent input[type="checkbox"] {
	width: 1.05rem;
	height: 1.05rem;
	margin-top: 0.45rem;
	accent-color: rgb(var(--c-600, 109 40 217));
	flex-shrink: 0;
}
.comment-form-cookies-consent label {
	margin: 0;
	font-weight: 500;
}
.form-submit {
	margin: 0;
}
.form-submit input[type="submit"],
.form-submit .submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
	font-family: inherit;
	font-size: 0.9375rem;
	font-weight: 800;
	border: 0;
	border-radius: 0.9rem;
	padding: 0.8rem 2rem;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.2s ease;
}
.form-submit input[type="submit"]:hover,
.form-submit .submit:hover {
	background: rgb(var(--c-700, 91 33 182));
	transform: translateY(-1px);
}
/* =========================================================================
 * ۷. ابزارک‌های سایدبار (شامل ابزارک‌های پیش‌فرض وردپرس)
 * ====================================================================== */
.rojan-widget {
	background: var(--rojan-surface);
	border-radius: 1.5rem;
	padding: 1.35rem 1.4rem;
	font-size: 0.9375rem;
	color: var(--rojan-ink-soft);
}
.rojan-widget:last-child {
	margin-bottom: 0;
}

.rojan-widget-title {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.6rem;
	/* padding-inline-start: 0.85rem; <-- این خط حذف شد تا فضای خالی کنار متن از بین برود */
	margin: 0 0 1.15rem;
	font-size: 1.0625rem;
	font-weight: 900;
	line-height: 1.7;
	color: var(--rojan-ink);
}

/* خط تزئینی کنار عنوان مخفی شد */
.rojan-widget-title::before {
	display: none;
}

/* --- لیست‌های ابزارک (دسته‌ها، آرشیو، نوشته‌ها، صفحه‌ها، منو) --- */
.rojan-widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.rojan-widget ul li {
	margin: 0;
	padding: 0;
}
/* لیست‌های ابزارک‌های هسته: هر آیتم یک ردیف قابل‌کلیک */
.widget_categories > ul > li,
.widget_archive > ul > li,
.widget_recent_entries > ul > li,
.widget_meta > ul > li,
.widget_pages > ul > li,
.widget_nav_menu ul.menu > li,
.widget_recent_comments > ul > li,
.widget_rss > ul > li {
	border-bottom: 1px solid var(--rojan-line);
}
.widget_categories > ul > li:last-child,
.widget_archive > ul > li:last-child,
.widget_recent_entries > ul > li:last-child,
.widget_meta > ul > li:last-child,
.widget_pages > ul > li:last-child,
.widget_nav_menu ul.menu > li:last-child,
.widget_recent_comments > ul > li:last-child,
.widget_rss > ul > li:last-child {
	border-bottom: 0;
}
.widget_categories li,
.widget_archive li,
.widget_recent_entries li,
.widget_meta li,
.widget_pages li,
.widget_nav_menu li,
.widget_recent_comments li,
.widget_rss li {
	font-size: 0.9375rem;
	line-height: 1.9;
}
.widget_categories li a,
.widget_archive li a,
.widget_recent_entries li a,
.widget_meta li a,
.widget_pages li a,
.widget_nav_menu li a,
.widget_rss li a {
	display: block;
	padding: 0.6rem 0;
	font-weight: 600;
	color: var(--rojan-ink-soft);
	transition: color 0.2s ease, padding 0.2s ease;
}
.widget_categories li a:hover,
.widget_archive li a:hover,
.widget_recent_entries li a:hover,
.widget_meta li a:hover,
.widget_pages li a:hover,
.widget_nav_menu li a:hover,
.widget_rss li a:hover {
	color: rgb(var(--c-600, 109 40 217));
	padding-inline-start: 0.35rem;
}
.dark .widget_categories li a:hover,
.dark .widget_archive li a:hover,
.dark .widget_recent_entries li a:hover,
.dark .widget_meta li a:hover,
.dark .widget_pages li a:hover,
.dark .widget_nav_menu li a:hover,
.dark .widget_rss li a:hover {
	color: rgb(var(--c-300, 196 181 253));
}
/* زیرشاخه‌ها */
.widget_categories li ul,
.widget_pages li ul,
.widget_nav_menu li ul {
	margin-top: 0;
	padding-inline-start: 0.9rem;
	border-inline-start: 1px solid var(--rojan-line);
}
.widget_categories li ul li,
.widget_pages li ul li,
.widget_nav_menu li ul li {
	border-bottom: 0;
}
.widget_categories li ul a,
.widget_pages li ul a,
.widget_nav_menu li ul a {
	padding: 0.4rem 0;
	font-size: 0.875rem;
	font-weight: 500;
}
/* تاریخ نوشته‌های تازه */
.widget_recent_entries .post-date {
	display: block;
	margin-bottom: 0.6rem;
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--rojan-ink-mute);
}
/* دیدگاه‌های تازه */
.widget_recent_comments li {
	padding: 0.6rem 0;
	font-size: 0.875rem;
	color: var(--rojan-ink-mute);
	font-weight: 500;
}
.widget_recent_comments li a {
	color: var(--rojan-ink-soft);
	font-weight: 700;
}
.widget_recent_comments li a:hover {
	color: rgb(var(--c-600, 109 40 217));
}

/* --- منوی کشویی (دسته‌ها / آرشیو) --- */
.rojan-widget select,
.widget select {
	width: 100%;
	background: var(--rojan-surface-2);
	color: var(--rojan-ink);
	border: 1px solid transparent;
	border-radius: 0.9rem;
	padding: 0.7rem 1rem;
	font-family: inherit;
	font-size: 0.9375rem;
	font-weight: 600;
	outline: none;
	cursor: pointer;
	transition: border-color 0.2s ease;
}
.rojan-widget select:focus,
.widget select:focus {
	border-color: rgb(var(--c-500, 124 58 237));
}

/* --- ابر برچسب‌ها --- */
.wp-block-tag-cloud,
.tagcloud {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.wp-block-tag-cloud a,
.tagcloud a {
	display: inline-flex;
	align-items: center;
	font-size: 0.8125rem !important;
	font-weight: 700;
	color: var(--rojan-ink-soft);
	background: var(--rojan-surface-2);
	padding: 0.4rem 0.85rem;
	border-radius: 999px;
	transition: background 0.2s ease, color 0.2s ease;
}
.wp-block-tag-cloud a:hover,
.tagcloud a:hover {
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
}
.tagcloud .tag-link-count {
	opacity: 0.6;
	margin-inline-start: 0.25rem;
}

/* --- تقویم --- */
.wp-calendar-table,
#wp-calendar {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.875rem;
	text-align: center;
}
.wp-calendar-table caption,
#wp-calendar caption {
	margin-bottom: 0.75rem;
	font-size: 0.9375rem;
	font-weight: 800;
	color: var(--rojan-ink);
}
.wp-calendar-table th,
#wp-calendar th {
	padding: 0.5rem 0;
	font-weight: 800;
	color: var(--rojan-ink-mute);
	text-align: center;
	border: 0;
	border-bottom: 1px solid var(--rojan-line);
}
.wp-calendar-table td,
#wp-calendar td {
	padding: 0.45rem 0;
	border: 0;
	text-align: center;
}
.wp-calendar-table td a,
#wp-calendar td a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.9rem;
	height: 1.9rem;
	border-radius: 999px;
	font-weight: 800;
	color: #fff;
	background: rgb(var(--c-600, 109 40 217));
}
.wp-calendar-table td#today,
#wp-calendar td#today {
	font-weight: 900;
	color: rgb(var(--c-600, 109 40 217));
}
.wp-calendar-nav {
	display: flex;
	justify-content: space-between;
	margin-top: 0.85rem;
	font-size: 0.8125rem;
	font-weight: 700;
}
.wp-calendar-nav a {
	color: rgb(var(--c-600, 109 40 217));
}

/* --- ابزارک RSS --- */
.widget_rss .rsswidget {
	font-weight: 800;
}
.widget_rss .rss-date {
	display: block;
	font-size: 0.8125rem;
	color: var(--rojan-ink-mute);
	margin-bottom: 0.4rem;
}
.widget_rss .rssSummary {
	font-size: 0.875rem;
	line-height: 1.9;
	color: var(--rojan-ink-mute);
	margin-bottom: 0.5rem;
}
.widget_rss cite {
	font-size: 0.8125rem;
	font-style: normal;
	font-weight: 700;
	color: var(--rojan-ink-mute);
}

/* --- جستجوی درون ابزارک --- */
.widget_search form,
.wp-block-search__inside-wrapper {
	display: flex;
	gap: 0.5rem;
	align-items: stretch;
}
.widget_search input[type="search"],
.wp-block-search__input {
	flex: 1;
	min-width: 0;
	background: var(--rojan-surface-2);
	border: 1px solid transparent;
	border-radius: 0.9rem;
	padding: 0.7rem 1rem;
	font-family: inherit;
	font-size: 0.9375rem;
	color: var(--rojan-ink);
	outline: none;
}
.widget_search input[type="search"]:focus,
.wp-block-search__input:focus {
	border-color: rgb(var(--c-500, 124 58 237));
}
.widget_search input[type="submit"],
.widget_search button[type="submit"],
.wp-block-search__button {
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
	border: 0;
	border-radius: 0.9rem;
	padding: 0.7rem 1.2rem;
	font-family: inherit;
	font-size: 0.875rem;
	font-weight: 800;
	cursor: pointer;
	transition: background 0.2s ease;
}
.widget_search input[type="submit"]:hover,
.widget_search button[type="submit"]:hover,
.wp-block-search__button:hover {
	background: rgb(var(--c-700, 91 33 182));
}

/* --- ابزارک متنی و بلوک‌های گوتنبرگ درون ابزارک --- */
.widget_text .textwidget,
.rojan-widget .wp-block-group {
	font-size: 0.9375rem;
	line-height: 1.95;
}
.widget_text .textwidget p {
	margin: 0 0 1em;
}
.widget_text .textwidget > :last-child {
	margin-bottom: 0;
}
.widget_text .textwidget a {
	color: rgb(var(--c-600, 109 40 217));
	font-weight: 700;
}
.dark .widget_text .textwidget a {
	color: rgb(var(--c-400, 167 139 250));
}
.rojan-widget .wp-block-heading,
.rojan-widget h2:not(.rojan-widget-title):not(.widget-title) {
	font-size: 1rem;
	font-weight: 800;
	color: var(--rojan-ink);
	margin: 0 0 0.75rem;
}

/* --- ابزارک‌های اختصاصی روژان --- */
/* آیکون کنار عنوان نباید با کشیده‌شدن فلکس بدشکل شود */
.rojan-widget-title > svg {
	flex: 0 0 auto;
}
/* در خبرنامه، توضیح بلافاصله زیر عنوان می‌آید */
.widget_rojan_newsletter .rojan-widget-title {
	margin-bottom: 0.6rem;
}

/* پیام نتیجه ثبت خبرنامه */
.rojan-newsletter-msg.is-success {
	background: rgb(22 163 74 / 0.12);
	color: #15803d;
}
.rojan-newsletter-msg.is-error {
	background: rgb(220 38 38 / 0.12);
	color: #b91c1c;
}
.dark .rojan-newsletter-msg.is-success {
	color: #4ade80;
}
.dark .rojan-newsletter-msg.is-error {
	color: #f87171;
}
/* =========================================================================
 * ۸. صفحه‌بندی
 * ====================================================================== */
.navigation.pagination,
.comments-pagination,
.rojan-pagination {
	margin-top: 2.5rem;
}
.navigation .nav-links,
.comments-pagination .nav-links,
.rojan-pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
}
.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.6rem;
	height: 2.6rem;
	padding: 0 0.7rem;
	border-radius: 0.85rem;
	background: var(--rojan-surface);
	color: var(--rojan-ink-soft);
	font-size: 0.9375rem;
	font-weight: 800;
	line-height: 1;
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
a.page-numbers:hover {
	background: rgb(var(--c-500, 124 58 237) / 0.14);
	color: rgb(var(--c-700, 91 33 182));
	transform: translateY(-2px);
}
.dark a.page-numbers:hover {
	color: rgb(var(--c-200, 221 214 254));
}
.page-numbers.current {
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
	box-shadow: 0 8px 18px -8px rgb(var(--c-600, 109 40 217) / 0.7);
}
.page-numbers.dots {
	background: transparent;
	min-width: 1.5rem;
	padding: 0;
	color: var(--rojan-ink-mute);
}
.page-numbers.prev,
.page-numbers.next {
	padding: 0 1.1rem;
	background: rgb(var(--c-500, 124 58 237) / 0.12);
	color: rgb(var(--c-700, 91 33 182));
}
.dark .page-numbers.prev,
.dark .page-numbers.next {
	color: rgb(var(--c-200, 221 214 254));
}
.page-numbers.prev:hover,
.page-numbers.next:hover {
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
}

/* صفحه‌بندی درون یک نوشته (wp_link_pages) */
.rojan-link-pages {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	margin-top: 2rem;
	font-size: 0.9375rem;
	font-weight: 800;
	color: var(--rojan-ink-mute);
}
.post-page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.4rem;
	height: 2.4rem;
	border-radius: 0.75rem;
	background: var(--rojan-surface-2);
	color: var(--rojan-ink-soft);
	transition: background 0.2s ease, color 0.2s ease;
}
a.post-page-numbers:hover {
	background: rgb(var(--c-500, 124 58 237) / 0.14);
	color: rgb(var(--c-700, 91 33 182));
}
.post-page-numbers.current {
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
}
/* =========================================================================
 * ۹. کلاس‌های متفرقه هسته وردپرس
 * ====================================================================== */
.alignnone {
	max-width: 100%;
	height: auto;
}
.gallery-caption {
	display: block;
	font-size: 0.8125rem;
	color: var(--rojan-ink-mute);
	text-align: center;
	margin-top: 0.5rem;
}
.wp-block-image figcaption {
	font-size: 0.8125rem;
	color: var(--rojan-ink-mute);
	text-align: center;
}

/* فرم نوشته رمزدار */
.post-password-form {
	background: var(--rojan-surface);
	border-radius: 1.25rem;
	padding: 1.35rem 1.4rem;
	font-size: 0.9375rem;
	line-height: 1.95;
	color: var(--rojan-ink-soft);
}
.post-password-form label {
	display: block;
	font-weight: 700;
	color: var(--rojan-ink);
	margin-bottom: 0.5rem;
}
.post-password-form input[type="password"] {
	display: block;
	width: 100%;
	max-width: 22rem;
	margin-top: 0.4rem;
	background: var(--rojan-surface-2);
	border: 1px solid transparent;
	border-radius: 0.9rem;
	padding: 0.7rem 1rem;
	font-family: inherit;
	font-size: 0.9375rem;
	color: var(--rojan-ink);
	outline: none;
}
.post-password-form input[type="password"]:focus {
	border-color: rgb(var(--c-500, 124 58 237));
}
.post-password-form input[type="submit"] {
	margin-top: 0.85rem;
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
	border: 0;
	border-radius: 0.9rem;
	padding: 0.7rem 1.6rem;
	font-family: inherit;
	font-size: 0.9375rem;
	font-weight: 800;
	cursor: pointer;
}
.post-password-form input[type="submit"]:hover {
	background: rgb(var(--c-700, 91 33 182));
}

/* پیوند رد کردن به محتوا */
.skip-link:focus {
	position: fixed !important;
	inset-inline-start: 1rem;
	top: 1rem;
	z-index: 9999;
	background: rgb(var(--c-600, 109 40 217));
	color: #fff;
	padding: 0.7rem 1.25rem;
	border-radius: 0.75rem;
	font-size: 0.9375rem;
	font-weight: 800;
}

/* پیام شناور کوتاه (Toast) */
.rojan-toast {
	position: fixed;
	left: 50%;
	bottom: 1.75rem;
	z-index: 90;
	transform: translate(-50%, 1rem);
	max-width: calc(100% - 2.5rem);
	padding: 0.8rem 1.4rem;
	border-radius: 1rem;
	background: rgb(24 24 27 / 0.94);
	color: #fff;
	font-size: 0.9375rem;
	font-weight: 800;
	line-height: 1.6;
	text-align: center;
	box-shadow: 0 18px 40px rgb(0 0 0 / 0.25);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
}
.rojan-toast.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
}

/* =========================================================
   ۱۰. تراز دقیق آیکون و متن (مشخصات نوشته و مسیر صفحه)
   ========================================================= */

/*
 * مقدار --rojan-icon-shift جابه‌جایی عمودی ظریف آیکون‌ها را کنترل می‌کند تا
 * مرکز نوری آیکون با خط میانی فونت یکان‌بخ هم‌تراز شود.
 * انتخابگر با html نوشته شده تا از استایل درون‌خطی تیلویند (که آخر صفحه
 * تزریق می‌شود) اولویت بیشتری داشته باشد.
 */
:root {
	--rojan-icon-shift: 1px;
}

html .meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	line-height: 1;
}

html .meta-item > svg {
	display: block;
	flex: 0 0 auto;
	transform: translateY(var(--rojan-icon-shift));
}

/* ---------- مسیر صفحه (Breadcrumb) ---------- */
.rojan-crumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.3rem 0.5rem;
	margin: 0;
	padding: 0;
	min-width: 0;
	list-style: none;
	font-size: 0.9375rem;
	line-height: 1;
	color: var(--rojan-ink-mute);
}

.rojan-crumb > li {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.rojan-crumb a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-width: 0;
	color: inherit;
	text-decoration: none;
	transition: color 0.25s ease;
}

.rojan-crumb a:hover {
	color: rgb(var(--c-600, 220 38 38));
}

.rojan-crumb svg {
	display: block;
	flex: 0 0 auto;
	transform: translateY(var(--rojan-icon-shift));
}

.rojan-crumb > li > span,
.rojan-crumb a > span {
	line-height: 1.6;
}

.rojan-crumb-sep {
	opacity: 0.45;
}

.rojan-crumb-sep svg {
	transform: none;
}

.rojan-crumb-current {
	max-width: 100%;
	font-weight: 800;
	color: var(--rojan-ink);
}

/* عنوان نوشته: کوتاه‌شده در موبایل، کامل در دسکتاپ */
.rojan-crumb-current > span {
	display: block;
	max-width: 60vw;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

@media (min-width: 768px) {
	.rojan-crumb {
		gap: 0.35rem 0.55rem;
	}

	.rojan-crumb-current > span {
		max-width: none;
		overflow: visible;
		white-space: normal;
	}
}

/* =========================================================
   ۱۱. باکس دانلود (پارت‌بندی + کپی رمز)
   ========================================================= */

.rojan-dl {
	margin-top: 1.5rem;
	padding: 1.25rem;
	border-radius: 1.75rem;
	background: var(--rojan-surface);
	overflow: hidden;
}

@media (min-width: 768px) {
	.rojan-dl {
		padding: 1.5rem;
	}
}

/* ---------- سرتیتر ---------- */
.rojan-dl-head {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	margin-bottom: 1.1rem;
}

.rojan-dl-head-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 2.85rem;
	height: 2.85rem;
	border-radius: 1rem;
	color: #fff;
	background: linear-gradient(135deg, rgb(var(--c-500, 239 68 68)), rgb(var(--c-700, 185 28 28)));
}

.rojan-dl-head-text {
	min-width: 0;
}

.rojan-dl-title {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 900;
	line-height: 1.6;
	color: var(--rojan-ink);
}

.rojan-dl-subtitle {
	margin: 0.15rem 0 0;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.7;
	color: var(--rojan-ink-mute);
}

/* ---------- بخش رمز فایل ---------- */
.rojan-dl-pass {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.6rem 0.75rem;
	margin-bottom: 1.1rem;
	padding: 0.85rem 1rem;
	border-radius: 1.15rem;
	background: rgb(var(--c-500, 239 68 68) / 0.08);
}

.rojan-dl-pass-icon {
	display: flex;
	align-items: center;
	color: rgb(var(--c-600, 220 38 38));
}

.rojan-dl-pass-icon svg {
	display: block;
}

.rojan-dl-pass-label {
	font-size: 0.9375rem;
	font-weight: 800;
	line-height: 1;
	color: var(--rojan-ink);
}

.rojan-dl-pass-value {
	flex: 1 1 auto;
	min-width: 6rem;
	padding: 0.45rem 0.85rem;
	border-radius: 0.75rem;
	background: var(--rojan-surface);
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.7;
	color: rgb(var(--c-600, 220 38 38));
	word-break: break-all;
	text-align: start;
}

.rojan-dl-pass-copy {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	flex: 0 0 auto;
	padding: 0.5rem 1rem;
	border: 0;
	border-radius: 0.85rem;
	background: rgb(var(--c-600, 220 38 38));
	color: #fff;
	font-family: inherit;
	font-size: 0.875rem;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	transition: background 0.25s ease;
}

.rojan-dl-pass-copy:hover {
	background: rgb(var(--c-700, 185 28 28));
}

.rojan-dl-pass-copy svg {
	display: block;
	flex: 0 0 auto;
}

/* ---------- گروه‌های پارت‌بندی ---------- */
.rojan-dl-groups {
	display: flex;
	flex-direction: column;
	gap: 0.9rem;
}

.rojan-dl-group {
	padding: 1rem;
	border-radius: 1.35rem;
	background: var(--rojan-surface-2);
}

.rojan-dl-group-head {
	margin-bottom: 0.85rem;
}

.rojan-dl-group-title {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 900;
	line-height: 1.7;
	color: var(--rojan-ink);
}

.rojan-dl-group-bullet {
	flex: 0 0 auto;
	width: 6px;
	height: 1.1em;
	border-radius: 99px;
	background: rgb(var(--c-500, 239 68 68));
}

.rojan-dl-group-note {
	margin: 0.35rem 0 0;
	padding-inline-start: 1.1rem;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.9;
	color: var(--rojan-ink-mute);
}

/* ---------- ردیف پارت‌ها ---------- */
.rojan-dl-parts {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.rojan-dl-part-item {
	margin: 0;
	padding: 0;
	list-style: none;
}

.rojan-dl-part-item::before {
	content: none !important;
}

.rojan-dl-part {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.7rem 0.85rem;
	border-radius: 1rem;
	background: var(--rojan-surface);
	color: var(--rojan-ink);
	text-decoration: none;
	transition: background 0.25s ease, color 0.25s ease;
}

/* هاور ملایم: فقط یک تینت کم‌رنگ از رنگ تم، متن خوانا می‌ماند */
.rojan-dl-part:hover {
	background: rgb(var(--c-500, 239 68 68) / 0.1);
	color: rgb(var(--c-700, 185 28 28));
}

.dark .rojan-dl-part:hover {
	background: rgb(var(--c-500, 239 68 68) / 0.14);
	color: rgb(var(--c-300, 252 165 165));
}

.rojan-dl-part-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 0.8rem;
	background: rgb(var(--c-500, 239 68 68) / 0.12);
	color: rgb(var(--c-600, 220 38 38));
	transition: background 0.25s ease, color 0.25s ease;
}

.dark .rojan-dl-part-icon {
	color: rgb(var(--c-400, 248 113 113));
}

.rojan-dl-part-icon svg {
	display: block;
}

.rojan-dl-part:hover .rojan-dl-part-icon {
	background: rgb(var(--c-600, 220 38 38));
	color: #fff;
}

.rojan-dl-part-body {
	display: flex;
	flex: 1 1 auto;
	min-width: 0;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.3rem 0.65rem;
}

.rojan-dl-part-title {
	font-size: 0.9375rem;
	font-weight: 800;
	line-height: 1.7;
}

.rojan-dl-part-meta {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
}

.rojan-dl-chip {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.6rem;
	border-radius: 0.55rem;
	background: var(--rojan-surface-2);
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1.6;
	color: var(--rojan-ink-soft);
	transition: background 0.25s ease, color 0.25s ease;
}

.rojan-dl-chip-format {
	background: rgb(var(--c-500, 239 68 68) / 0.14);
	color: rgb(var(--c-600, 220 38 38));
	letter-spacing: 0.03em;
}

.dark .rojan-dl-chip-format {
	color: rgb(var(--c-400, 248 113 113));
}

.rojan-dl-part-go {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	opacity: 0.4;
	transition: opacity 0.25s ease, transform 0.25s ease;
}

.rojan-dl-part-go svg {
	display: block;
}

.rojan-dl-part:hover .rojan-dl-part-go {
	opacity: 1;
	transform: translateX(-3px);
}

/* تضمین عدم نمایش تگ‌های پیش‌فرض و ریست کادر 2027 نقد و بررسی */
.rojan-review-box-2027 * {
  box-sizing: border-box;
}

.rojan-review-box-2027 ul, 
.rojan-review-box-2027 li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* =========================================================================
 * فاصله‌گذاری استاندارد، چشم‌نواز و تنفس محتوای مقاله
 * ====================================================================== */

/* تنظیم دقیق فاصله تیتر نسبت به پاراگراف بالایی و زیرین */
.rojan-content h1,
.rojan-content h2,
.rojan-content h3,
.rojan-content h4 {
  margin-top: 3rem !important;      /* حفظ فاصله کافی از بخش قبلی */
  margin-bottom: 0.85rem !important; /* کاهش فاصله و اتصال متوازن تیتر به پاراگراف زیرین */
  line-height: 1.5 !important;
  letter-spacing: -0.02em;
}

/* فاصله بین خود پاراگراف‌ها بدون تغییر حفظ می‌شود */
.rojan-content p {
  margin-top: 0 !important;
  line-height: 2 !important;
}

/* اطمینان از چسبیدن به پاراگراف بلافاصله بعد از تیتر */
.rojan-content h1 + p,
.rojan-content h2 + p,
.rojan-content h3 + p,
.rojan-content h4 + p {
  margin-top: 0 !important;
}

/* حذف حاشیه اولین المان برای تراز دقیق ابتدای مقاله */
.rojan-content > :first-child {
  margin-top: 0 !important;
}

/* تنظیم پویای سایدبار چسبان متناسب با پنهان/پیدا شدن هدر */
aside.sidebar-sticky,
aside[class*="sticky"],
.rojan-sidebar-inner {
  position: sticky !important;
  top: 5.5rem; /* فاصله پیش‌فرض در حضور هدر */
  transition: top 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.rojan-header-is-hidden aside.sidebar-sticky,
body.rojan-header-is-hidden aside[class*="sticky"],
body.rojan-header-is-hidden .rojan-sidebar-inner {
  top: 1.5rem !important; /* چسبیدن به سقف بدون فاصله زائد */
}

.rojan-content h1::before,
.rojan-content h2::before,
.rojan-content h3::before,
.rojan-content h4::before,
.rojan-content h1::after,
.rojan-content h2::after,
.rojan-content h3::after,
.rojan-content h4::after {
	content: none !important;
	display: none !important;
	width: 0 !important;
	height: 0 !important;
}

.rojan-content h1,
.rojan-content h2,
.rojan-content h3,
.rojan-content h4 {
	padding-inline-start: 0 !important;
	padding-right: 0 !important;
	border-inline-start: none !important;
	border-right: none !important;
}

/* در نظر گرفتن ارتفاع هدر چسبان هنگام پرش به تیترها */
.rojan-content h2[id^="section-part-"],
.rojan-content h3[id^="section-part-"] {
  scroll-margin-top: 6.5rem !important;
}

/* =========================================================================
 * فلش زدن رنگ متن تیتر بدون تغییر سایز و بدون پرش ارتفاع صفحه
 * ====================================================================== */
@keyframes rojanFlashHeading {
  0%, 100% {
    color: #ffffff !important;
    text-shadow: none;
  }
  15%, 45%, 75% {
    color: var(--color-primary-500, #ef4444) !important;
    text-shadow: 0 0 18px var(--color-primary-500, #ef4444);
  }
  30%, 60%, 90% {
    color: #ffffff !important;
    text-shadow: none;
  }
}

/* اعمال فلش بدون تغییر دیسپلی، بدون اسکیل و بدون اثر بر ابعاد صفحه */
.rojan-content h2.rojan-flashing-active,
.rojan-content h3.rojan-flashing-active {
  animation: rojanFlashHeading 1.4s ease-in-out !important;
}
/* =========================================================================
 * انیمیشن نرم و روون تغییر تم شب/روز
 * - از View Transitions استفاده می شود: صفحه ی قدیمی آرام و یکدست محو
 *   می شود و همزمان صفحه ی جدید بر روی آن آشکار می شود (روشن‌نما/توضیح)
 * - به جای محو و ظاهرِ هم‌زمانِ هر دو، فقط یک فید لطیف رخ می دهد تا
 *   هیچ چشمک زنی (flicker) دیده نشود
 * ========================================================================= */
@keyframes rojanViewFrom {
  from { opacity: 1; }
  to   { opacity: 0; }
}
@keyframes rojanViewTo {
  from { opacity: 0; }
  to   { opacity: 1; }
}

::view-transition-old(root) {
  animation: rojanViewFrom 0.16s ease-in;
}
::view-transition-new(root) {
  animation: rojanViewTo 0.24s cubic-bezier(0.22, 1, 0.36, 1);
}

/* انتقال رنگ پس‌زمینه ی زیرین برای گپ کوتاه بین دو لایه */
html {
  transition: background-color 0.16s ease;
}

/* اگر کاربر انیمیشن ها را کاهش داده باشد، سوییچ بدون انیمیشن */
@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*),
  ::view-transition-old(*),
  ::view-transition-new(*) {
    animation: none !important;
  }
}

/* هنگام سوییچ تم، transition های تک‌المانی قالب موقتاً خاموش می شوند
   تا کل صفحه یکجا و هماهنگ تغییر کند (بدون موج از بالا به پایین) */
html.rojan-theme-now,
html.rojan-theme-now *,
html.rojan-theme-now *::before,
html.rojan-theme-now *::after {
  transition: none !important;
}