/**
 * ریورس‌پیچ معدن — استایل فرانت‌اند و پیشخوان (نسخهٔ ۱٫۵ — مینیمال و یکپارچه).
 *
 * اصول:
 *   ۱. یک جعبهٔ مرکزی ۱۶۲۰px (قابل‌تنظیم از تنظیمات افزونه) برای هدر، محتوا و فوتر.
 *   ۲. یک پالت: رنگ اصلی افزونه + خاکستری‌های خنثی؛ بدون گرادیان و سایهٔ سنگین.
 *   ۳. یک مقیاس فاصله‌گذاری (۸ پیکسلی) و یک مقیاس شعاع گوشه.
 *   ۴. فونت و رنگ اصلی از المنتور/قالب ارث‌بری می‌شود.
 */

/* =====================================================================
 * ۱. توکن‌ها
 * ================================================================== */

:root {
	/* پالت پایه؛ RP_Frontend/rp_palette_css همین‌ها را از المنتور بازنویسی می‌کند. */
	--rp-blue: #1d4ed8;
	--rp-accent: #0ea5e9;
	--rp-ink: #0f1b2d;
	--rp-boxed: 1620px;

	/* مشتق‌ها */
	--rp-blue-d: color-mix(in srgb, var(--rp-blue) 84%, #000);
	--rp-tint: color-mix(in srgb, var(--rp-blue) 8%, #fff);
	--rp-tint-2: color-mix(in srgb, var(--rp-blue) 14%, #fff);
	--rp-muted: color-mix(in srgb, var(--rp-ink) 62%, #fff);
	--rp-line: color-mix(in srgb, var(--rp-ink) 11%, #fff);
	--rp-soft: color-mix(in srgb, var(--rp-ink) 3%, #fff);
	--rp-card: #fff;
	--rp-ok: #15803d;
	--rp-warn: #b45309;
	--rp-bad: #b91c1c;

	/* ریتم و شعاع */
	--rp-r: 12px;
	--rp-r-sm: 8px;
	--rp-r-lg: 16px;
	--rp-gutter: 40px;
	--rp-sec: 80px;

	/* سازگاری با نام‌های قدیمی (رنگ‌های ظریف و جداکننده‌ها) */
	--rp-bg: var(--rp-soft);
	--rp-blue-l: color-mix(in srgb, var(--rp-blue) 60%, #fff);
	--rp-radius: var(--rp-r);
	--rp-radius-lg: var(--rp-r-lg);
	--rp-radius-sm: var(--rp-r-sm);
}

@media (max-width: 1024px) {
	:root {
		--rp-gutter: 28px;
		--rp-sec: 64px;
	}
}

@media (max-width: 640px) {
	:root {
		--rp-gutter: 18px;
		--rp-sec: 48px;
	}
}

/* =====================================================================
 * ۲. پایه
 * ================================================================== */

.rp-wrap,
.rpl-chrome,
.rpl-chrome-foot,
.rpl-nav,
.rp-modal {
	box-sizing: border-box;
	direction: rtl;
	text-align: right;
	font-family: var(--e-global-typography-text-font-family, Tahoma), Tahoma, sans-serif;
	font-weight: var(--e-global-typography-text-font-weight, 400);
	font-size: 15px;
	line-height: 1.85;
	color: var(--rp-ink);
	-webkit-font-smoothing: antialiased;
}

.rp-wrap *,
.rp-wrap *::before,
.rp-wrap *::after,
.rpl-chrome *,
.rpl-chrome-foot *,
.rpl-nav *,
.rp-modal *,
.rp-modal *::before,
.rp-modal *::after {
	box-sizing: inherit;
}

.rp-wrap h1,
.rp-wrap h2,
.rp-wrap h3,
.rp-wrap h4,
.rp-modal h1,
.rp-modal h2,
.rp-modal h3 {
	font-family: var(--e-global-typography-primary-font-family, inherit);
	font-weight: var(--e-global-typography-primary-font-weight, 800);
	color: var(--rp-ink);
	line-height: 1.5;
	margin: 0 0 .4em;
	letter-spacing: 0;
}

.rp-wrap p,
.rp-modal p {
	margin: 0 0 .8em;
}

.rp-wrap ul,
.rp-wrap ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

.rp-wrap a,
.rp-modal a {
	color: var(--rp-blue);
	text-decoration: none;
	transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}

.rp-wrap a:hover,
.rp-modal a:hover {
	color: var(--rp-blue-d);
}

.rp-wrap button,
.rp-wrap input,
.rp-wrap select,
.rp-wrap textarea,
.rp-modal button,
.rp-modal input,
.rp-modal select,
.rp-modal textarea,
.rpl-chrome a,
.rpl-chrome-foot a {
	font-family: inherit;
}

.rp-wrap :focus-visible,
.rp-modal :focus-visible,
.rpl-chrome :focus-visible,
.rpl-chrome-foot :focus-visible,
.rpl-nav :focus-visible {
	outline: 2px solid var(--rp-blue);
	outline-offset: 2px;
	border-radius: 4px;
}

/* پیوندهای سربرگ/پاصفحه/ناوبری بیرون از .rp-wrap هم زیرخط قالب را نمی‌گیرند */
.rpl-chrome a,
.rpl-chrome-foot a,
.rpl-nav a {
	text-decoration: none;
}

/* پیوندهایی که کل کارت‌اند، رنگ متن را نگه می‌دارند (نه رنگ پیوند) */
.rp-wrap a.rp-card,
.rp-wrap a.rpl-gcard,
.rp-wrap a.rpl-post {
	color: var(--rp-ink);
}

.rp-wrap a.rpl-gcard .n,
.rp-wrap a.rpl-gcard .f,
.rp-wrap a.rpl-gcard .t {
	color: inherit;
}

.rp-wrap a.rpl-gcard .f,
.rp-wrap a.rpl-gcard .t {
	color: var(--rp-muted);
}

.rp-muted {
	color: var(--rp-muted);
}

.ltr {
	direction: ltr;
	unicode-bidi: isolate;
	display: inline-block;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* آیکن‌ها */
.rp-ic {
	width: 20px;
	height: 20px;
	flex: none;
	display: inline-block;
	vertical-align: middle;
	stroke: currentColor;
	fill: none;
}

.rp-btn .rp-ic,
.rpl-btn .rp-ic { width: 18px; height: 18px; }
.rp-chip .rp-ic,
.rpl-chip .rp-ic,
.rp-badge .rp-ic { width: 14px; height: 14px; }

.rp-sprite {
	display: none !important;
}

/* حذف عنوان تکراری قالب روی برگه‌های افزونه */
.rp-hide-title .wp-block-post-title,
.rp-hide-title .entry-title,
.rp-hide-title h1.page-title,
.rp-hide-title .page-header,
.rp-hide-title .entry-header h1 {
	display: none !important;
}

.elementor-widget-shortcode .rp-wrap {
	margin-block: 0;
}

/* =====================================================================
 * ۳. پوستهٔ صفحه — هدر، محتوا و فوتر در یک جعبهٔ هم‌عرض
 * ================================================================== */

body.rp-area {
	background: var(--rp-soft);
}

/* ظرف اصلی محتوای افزونه */
.rp-wrap.rp-landing {
	width: 100%;
	max-width: var(--rp-boxed);
	margin-inline: auto;
	background: #fff;
	border-inline: 1px solid var(--rp-line);
}

.rp-wrap.rp-landing.rp-page,
.rp-wrap.rp-landing.rp-form-page {
	padding-block-end: var(--rp-sec);
}

/* همهٔ بخش‌ها: همان کنارهٔ داخلی */
.rpl-in {
	width: 100%;
	margin-inline: auto;
	padding-inline: var(--rp-gutter);
}

/* هدر و فوتر قالب سایت (برگه‌های غیر کانواس) با همان جعبه هم‌تراز می‌شوند */
body.rp-area .site-header,
body.rp-area #masthead,
body.rp-area header.wp-block-template-part,
body.rp-area .elementor-location-header,
body.rp-area .site-footer,
body.rp-area #colophon,
body.rp-area footer.wp-block-template-part,
body.rp-area .elementor-location-footer {
	width: 100%;
	max-width: var(--rp-boxed);
	margin-inline: auto;
	background: #fff;
	border-inline: 1px solid var(--rp-line);
	box-sizing: border-box;
}

body.rp-area .site-header .header-inner,
body.rp-area .site-header > .header-inner,
body.rp-area .site-footer .footer-inner,
body.rp-area .site-footer .site-footer-inner,
body.rp-area .site-footer > .footer-inner {
	max-width: none;
	margin-inline: auto;
	padding-inline: var(--rp-gutter);
}

/* ---------------------------------------------------------------------
 * سربرگ افزونه (برگه‌های کانواس)
 * ------------------------------------------------------------------ */

.rpl-chrome {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 60;
	width: 100%;
	max-width: var(--rp-boxed);
	margin-inline: auto;
	background: rgba(255, 255, 255, .96);
	border: 1px solid var(--rp-line);
	border-block-start: 0;
	backdrop-filter: saturate(1.4) blur(8px);
	-webkit-backdrop-filter: saturate(1.4) blur(8px);
	transition: box-shadow .2s ease;
}

.rpl-chrome.is-stuck {
	box-shadow: 0 6px 18px -14px rgba(15, 27, 45, .35);
}

.rpl-chrome__in {
	display: flex;
	align-items: center;
	gap: 32px;
	min-height: 68px;
}

.rpl-chrome__brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--rp-ink);
	flex: none;
}

.rpl-chrome__brand:hover {
	color: var(--rp-ink);
}

.rpl-chrome__mark {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 10px;
	background: var(--rp-blue);
	color: #fff;
}

.rpl-chrome__mark .rp-ic {
	width: 20px;
	height: 20px;
}

.rpl-chrome__name {
	display: flex;
	flex-direction: column;
	line-height: 1.35;
}

.rpl-chrome__name b {
	font-size: 15px;
	font-weight: 800;
}

.rpl-chrome__name i {
	font-style: normal;
	font-size: 12px;
	color: var(--rp-muted);
}

.rpl-chrome__nav {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-inline-end: auto;
}

.rpl-chrome__nav a,
.rpl-nav a {
	padding: 6px 14px;
	border-radius: var(--rp-r-sm);
	color: var(--rp-muted);
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
}

.rpl-chrome__nav a:hover,
.rpl-nav a:hover {
	background: var(--rp-soft);
	color: var(--rp-ink);
}

.rpl-chrome__actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* نوار ناوبری برگه‌های داخلی (زیر هدر قالب) */
.rpl-nav {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 50;
	width: 100%;
	max-width: var(--rp-boxed);
	margin-inline: auto;
	background: rgba(255, 255, 255, .96);
	border-block-end: 1px solid var(--rp-line);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.rpl-nav.is-stuck {
	box-shadow: 0 6px 18px -14px rgba(15, 27, 45, .35);
}

.rpl-nav__in {
	display: flex;
	align-items: center;
	gap: 4px;
	min-height: 52px;
	overflow-x: auto;
	scrollbar-width: none;
}

.rpl-nav__in::-webkit-scrollbar {
	display: none;
}

.rpl-nav a.is-go,
.rpl-nav a.is-plain {
	margin-inline-start: 0;
}

.rpl-nav a.is-go {
	margin-inline-start: auto;
	background: var(--rp-blue);
	color: #fff;
}

.rpl-nav a.is-go:hover {
	background: var(--rp-blue-d);
	color: #fff;
}

.rpl-nav a.is-plain {
	border: 1px solid var(--rp-line);
}

.rpl-nav a.is-go ~ a.is-plain,
.rpl-nav a.is-go ~ a.is-go {
	margin-inline-start: 0;
}

/* ---------------------------------------------------------------------
 * پاصفحهٔ افزونه (برگه‌های کانواس)
 * ------------------------------------------------------------------ */

.rpl-chrome-foot {
	width: 100%;
	max-width: var(--rp-boxed);
	margin-inline: auto;
	background: #fff;
	border: 1px solid var(--rp-line);
	border-block-end: 0;
}

.rpl-chrome-foot__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) repeat(2, minmax(0, 1fr));
	gap: 48px;
	padding-block: 56px 40px;
}

.rpl-chrome-foot__brand {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-block-end: 14px;
	font-size: 15px;
}

.rpl-chrome-foot__about p {
	max-width: 46ch;
	margin: 0 0 18px;
	color: var(--rp-muted);
	font-size: 14px;
}

.rpl-chrome-foot__about .rpl-btn {
	margin-inline-end: 8px;
}

.rpl-chrome-foot__col {
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-items: flex-start;
}

.rpl-chrome-foot__col b {
	margin-block-end: 6px;
	font-size: 13px;
	font-weight: 800;
	color: var(--rp-ink);
}

.rpl-chrome-foot__col a,
.rpl-chrome-foot__bottom a {
	color: var(--rp-muted);
	font-size: 14px;
}

.rpl-chrome-foot__col a:hover,
.rpl-chrome-foot__bottom a:hover {
	color: var(--rp-blue);
}

.rpl-chrome-foot__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding-block: 20px;
	border-block-start: 1px solid var(--rp-line);
	color: var(--rp-muted);
	font-size: 13px;
}

/* نوار پیشرفت اسکرول (JS) */
.rpl-progress {
	position: fixed;
	inset: 0 0 auto 0;
	height: 2px;
	z-index: 100000;
	pointer-events: none;
}

.rpl-progress__bar {
	display: block;
	height: 100%;
	width: 0;
	background: var(--rp-blue);
	margin-inline-start: auto;
}

/* =====================================================================
 * ۴. دکمه‌ها
 * ================================================================== */

.rp-btn,
.rpl-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 20px;
	border: 1px solid transparent;
	border-radius: var(--rp-r-sm);
	background: transparent;
	color: var(--rp-ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.rp-btn--primary,
.rpl-btn--primary {
	background: var(--rp-blue);
	border-color: var(--rp-blue);
	color: #fff;
}

.rp-wrap .rp-btn--primary:hover,
.rp-wrap .rpl-btn--primary:hover,
.rp-modal .rp-btn--primary:hover,
.rpl-chrome .rpl-btn--primary:hover,
.rpl-chrome-foot .rpl-btn--primary:hover {
	background: var(--rp-blue-d);
	border-color: var(--rp-blue-d);
	color: #fff;
}

.rp-wrap .rp-btn--primary,
.rp-wrap .rpl-btn--primary,
.rp-modal .rp-btn--primary,
.rpl-chrome .rpl-btn--primary,
.rpl-chrome-foot .rpl-btn--primary {
	color: #fff;
}

.rp-btn--outline,
.rpl-btn--outline {
	background: #fff;
	border-color: var(--rp-line);
	color: var(--rp-ink);
}

.rp-wrap .rp-btn--outline:hover,
.rp-wrap .rpl-btn--outline:hover,
.rp-modal .rp-btn--outline:hover,
.rpl-chrome-foot .rpl-btn--outline:hover {
	border-color: var(--rp-blue);
	color: var(--rp-blue);
	background: #fff;
}

.rp-wrap .rp-btn--outline,
.rp-wrap .rpl-btn--outline,
.rp-modal .rp-btn--outline,
.rpl-chrome-foot .rpl-btn--outline {
	color: var(--rp-ink);
}

.rp-btn--ghost,
.rpl-btn--ghost {
	color: var(--rp-muted);
}

.rp-wrap .rp-btn--ghost:hover,
.rpl-chrome .rpl-btn--ghost:hover,
.rp-modal .rp-btn--ghost:hover {
	background: var(--rp-soft);
	color: var(--rp-ink);
}

.rp-wrap .rp-btn--ghost,
.rpl-chrome .rpl-btn--ghost,
.rp-modal .rp-btn--ghost {
	color: var(--rp-muted);
}

.rpl-btn--ondark {
	background: transparent;
	border-color: rgba(255, 255, 255, .45);
	color: #fff;
}

.rp-wrap .rpl-btn--ondark,
.rp-wrap .rpl-btn--ondark:hover {
	color: #fff;
}

.rp-wrap .rpl-btn--ondark:hover {
	background: rgba(255, 255, 255, .12);
	border-color: #fff;
}

.rp-btn--sm,
.rpl-btn--sm {
	min-height: 36px;
	padding: 0 14px;
	font-size: 13px;
}

.rp-btn--lg {
	min-height: 50px;
	padding: 0 28px;
	font-size: 15px;
}

.rp-btn--block {
	display: flex;
	width: 100%;
}

.rp-btn[disabled],
.rp-btn:disabled {
	opacity: .5;
	cursor: not-allowed;
}

.rp-inline-form {
	display: inline-flex;
	margin: 0;
}

/* روی پس‌زمینهٔ رنگی (بنر پایانی) دکمهٔ اصلی روشن می‌شود */
.rpl-band .rpl-btn--primary {
	background: #fff;
	border-color: #fff;
	color: var(--rp-blue);
}

.rp-wrap .rpl-band .rpl-btn--primary,
.rp-wrap .rpl-band .rpl-btn--primary:hover {
	color: var(--rp-blue);
	background: #fff;
	border-color: #fff;
}

.rp-wrap .rpl-band .rpl-btn--primary:hover {
	background: var(--rp-tint);
}

/* =====================================================================
 * ۵. اجزای کوچک: چیپ، نشان، آواتار، حلقهٔ امتیاز، پیام‌ها، حالت خالی
 * ================================================================== */

.rp-chip,
.rpl-chip,
.rp-skill,
.rp-match-num,
.rpl-badge-match,
.rp-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 26px;
	padding: 0 10px;
	border: 1px solid var(--rp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--rp-muted);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
}

.rp-wrap a.rp-chip:hover,
.rp-wrap a.rpl-chip:hover {
	border-color: var(--rp-blue);
	color: var(--rp-blue);
}

.rp-chip--tint,
.rpl-chip--tint,
.rp-match-num,
.rpl-badge-match {
	background: var(--rp-tint);
	border-color: transparent;
	color: var(--rp-blue-d);
}

.rp-chip--hot {
	background: #fff7ed;
	border-color: transparent;
	color: var(--rp-warn);
}

.rp-chip--crit {
	background: #fef2f2;
	border-color: transparent;
	color: var(--rp-bad);
}

.rp-chip--done,
.rp-badge--ok {
	background: #f0fdf4;
	border-color: transparent;
	color: var(--rp-ok);
}

.rp-badge--off {
	background: var(--rp-soft);
	color: var(--rp-muted);
}

.rp-skills {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.rp-skill {
	background: var(--rp-soft);
	border-color: transparent;
}

/* آواتار: تک‌رنگ و ساده */
.rp-av,
.rpl-av {
	display: inline-grid;
	place-items: center;
	flex: none;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--rp-tint-2);
	color: var(--rp-blue-d);
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
}

.rp-av--s { width: 30px; height: 30px; font-size: 13px; }
.rp-av--m { width: 44px; height: 44px; font-size: 16px; }
.rp-av--l { width: 60px; height: 60px; font-size: 22px; }

.rp-av--g2 { background: #ecfdf5; color: #047857; }
.rp-av--g3 { background: #fff7ed; color: #c2410c; }
.rp-av--g4 { background: #f5f3ff; color: #6d28d9; }

.rpl-avs {
	display: flex;
}

.rpl-avs .rp-av {
	margin-inline-start: -8px;
	border: 2px solid #fff;
}

.rpl-avs .rp-av:first-child {
	margin-inline-start: 0;
}

/* حلقهٔ امتیاز (خروجی rp_ring) */
.rp-ring-wrap {
	display: inline-flex;
	flex: none;
	color: var(--rp-blue);
}

.rp-ring {
	position: relative;
	display: inline-grid;
	place-items: center;
	flex: none;
}

.rp-ring svg {
	position: absolute;
	inset: 0;
}

.rp-ring svg circle:first-child {
	stroke: var(--rp-line);
}

.rp-ring__lbl {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	line-height: 1.2;
	color: var(--rp-ink);
}

.rp-ring__lbl b {
	font-size: 14px;
	font-weight: 800;
}

.rp-ring__lbl span {
	font-size: 10px;
	color: var(--rp-muted);
}

/* وضعیت دسترسی متخصص */
.rp-avail {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 600;
	color: var(--rp-muted);
}

.rp-avail i {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--rp-muted);
}

.rp-avail--available { color: var(--rp-ok); }
.rp-avail--available i { background: var(--rp-ok); }
.rp-avail--limited { color: var(--rp-warn); }
.rp-avail--limited i { background: var(--rp-warn); }
.rp-avail--busy { color: var(--rp-bad); }
.rp-avail--busy i { background: var(--rp-bad); }

/* پیام‌ها */
.rp-notice {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0 0 16px;
	padding: 12px 16px;
	border: 1px solid var(--rp-line);
	border-inline-start-width: 3px;
	border-radius: var(--rp-r-sm);
	background: var(--rp-soft);
	font-size: 14px;
}

.rp-notice--success { border-color: #bbf7d0; border-inline-start-color: var(--rp-ok); background: #f0fdf4; }
.rp-notice--info { border-color: var(--rp-tint-2); border-inline-start-color: var(--rp-blue); background: var(--rp-tint); }
.rp-notice--warning { border-color: #fed7aa; border-inline-start-color: var(--rp-warn); background: #fff7ed; }
.rp-notice--error { border-color: #fecaca; border-inline-start-color: var(--rp-bad); background: #fef2f2; }

.rp-notice p:last-child {
	margin-bottom: 0;
}

.rp-dev-code {
	display: inline-block;
	padding: 0 8px;
	border: 1px dashed var(--rp-warn);
	border-radius: 6px;
	background: #fff;
	letter-spacing: 2px;
}

/* یادداشت */
.rp-note,
.rpl-note {
	padding: 14px 18px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: var(--rp-soft);
	font-size: 14px;
}

.rp-note p,
.rpl-note p {
	margin: 4px 0 0;
	color: var(--rp-muted);
}

.rp-note--sm {
	padding: 10px 14px;
	font-size: 13px;
}

.rp-note--ok {
	background: #f0fdf4;
	border-color: #bbf7d0;
}

/* حالت خالی */
.rp-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	margin: 0 var(--rp-gutter);
	padding: 56px 24px;
	border: 1px dashed var(--rp-line);
	border-radius: var(--rp-r);
	text-align: center;
	color: var(--rp-muted);
}

.rp-empty h3 {
	margin: 8px 0 0;
	font-size: 17px;
	color: var(--rp-ink);
}

.rp-empty p {
	max-width: 52ch;
	margin: 0;
}

.rp-empty__ic {
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: var(--rp-tint);
	color: var(--rp-blue);
}

.rp-empty__ic .rp-ic {
	width: 24px;
	height: 24px;
}

.rp-empty__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin-block-start: 14px;
}

.rp-empty__note {
	margin-block-start: 10px;
	font-size: 13px;
}

.rp-empty--sm {
	margin-inline: 0;
	padding: 28px 20px;
}

.rp-landing > .rp-empty,
.rp-landing > .rp-notice {
	margin-block-end: 24px;
}

.rp-landing > .rp-notice {
	margin-inline: var(--rp-gutter);
}

/* اسپینر */
.rp-spinner {
	width: 22px;
	height: 22px;
	border: 2px solid var(--rp-line);
	border-top-color: var(--rp-blue);
	border-radius: 50%;
	animation: rp-spin .7s linear infinite;
}

@keyframes rp-spin {
	to { transform: rotate(360deg); }
}

/* =====================================================================
 * ۶. سرصفحهٔ صفحه‌های داخلی، تیترها، مسیر
 * ================================================================== */

.rp-kicker,
.rpl-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-block-end: 6px;
	color: var(--rp-blue);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.5;
}

.rp-kicker::before,
.rpl-kicker::before {
	content: "";
	width: 18px;
	height: 2px;
	border-radius: 2px;
	background: currentColor;
}

.rp-kicker--light {
	color: #fff;
}

.rp-head,
.rp-dash__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	padding: 40px var(--rp-gutter) 28px;
	margin-block-end: 28px;
	border-block-end: 1px solid var(--rp-line);
}

.rp-head__title {
	margin: 0 0 6px;
	font-size: clamp(22px, 2vw, 30px);
}

.rp-head .rp-muted,
.rp-dash__head .rp-muted {
	max-width: 74ch;
	margin: 0;
}

.rp-head__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.rp-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 22px var(--rp-gutter) 0;
	color: var(--rp-muted);
	font-size: 13px;
}

.rp-breadcrumb a {
	color: var(--rp-muted);
}

.rp-breadcrumb a:hover {
	color: var(--rp-blue);
}

.rp-section-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 40px 0 16px;
	font-size: 19px;
}

.rp-section-title .rp-ic {
	color: var(--rp-blue);
}

/* همهٔ بلوک‌های مستقیم برگه‌های داخلی: همان کنارهٔ داخلی */
.rp-page > .rp-grid,
.rp-page > .rp-filters,
.rp-page > .rp-pagination,
.rp-page > .rp-stats,
.rp-page > .rp-stat,
.rp-page > .rp-matches,
.rp-page > .rp-pitches,
.rp-page > .rp-my-challenges,
.rp-page > .rp-my-match,
.rp-page > .rp-pitch-form-wrap,
.rp-page > .rp-cta-inline,
.rp-page > .rp-panel,
.rp-page > .rp-owner-tools,
.rp-page > .rp-dash__stats,
.rp-page > .rp-notice {
	margin-inline: var(--rp-gutter);
}

.rp-page > .rp-notice {
	margin-block-start: 20px;
}

.rp-matches__head .rp-muted {
	margin: -6px 0 16px;
}

/* =====================================================================
 * ۷. فیلترها
 * ================================================================== */

.rp-filters {
	margin-block-end: 24px;
	padding: 14px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: var(--rp-soft);
}

.rp-filters__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.rp-filters .rp-field {
	flex: 1 1 180px;
	min-width: 0;
}

.rp-filters .rp-field--search {
	flex: 2 1 260px;
}

.rp-filters .rp-btn {
	flex: none;
}

/* =====================================================================
 * ۸. فرم‌ها
 * ================================================================== */

.rp-form {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.rp-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.rp-field > b,
.rp-modal__label {
	font-size: 13px;
	font-weight: 700;
	color: var(--rp-ink);
}

.rp-req {
	color: var(--rp-bad);
}

.rp-wrap input[type="text"],
.rp-wrap input[type="search"],
.rp-wrap input[type="number"],
.rp-wrap input[type="tel"],
.rp-wrap input[type="email"],
.rp-wrap input[type="url"],
.rp-wrap input[type="password"],
.rp-wrap select,
.rp-wrap textarea,
.rp-modal input[type="text"],
.rp-modal input[type="number"],
.rp-modal textarea,
.rp-input {
	display: block;
	width: 100%;
	min-height: 44px;
	margin: 0;
	padding: 9px 14px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: #fff;
	color: var(--rp-ink);
	font-size: 14px;
	line-height: 1.6;
	box-shadow: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.rp-wrap textarea,
.rp-modal textarea {
	min-height: 120px;
	resize: vertical;
}

.rp-wrap select {
	appearance: none;
	-webkit-appearance: none;
	padding-inline-end: 38px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left 12px center;
	background-size: 16px;
}

.rp-wrap input::placeholder,
.rp-wrap textarea::placeholder,
.rp-modal textarea::placeholder {
	color: color-mix(in srgb, var(--rp-ink) 40%, #fff);
}

.rp-wrap input:focus,
.rp-wrap select:focus,
.rp-wrap textarea:focus,
.rp-modal textarea:focus,
.rp-modal input:focus {
	outline: 0;
	border-color: var(--rp-blue);
	box-shadow: 0 0 0 3px var(--rp-tint-2);
}

.rp-help {
	display: block;
	color: var(--rp-muted);
	font-size: 12px;
}

.rp-field-row {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.rp-field-row > .rp-field {
	flex: 1 1 230px;
}

.rp-field-row > .rp-field--grow {
	flex: 2 1 320px;
}

.rp-field-row > .rp-field--short {
	flex: 0 1 220px;
}

/* کارت فرم: ستون خوانا وسط جعبه */
.rp-form-card {
	width: calc(100% - 2 * var(--rp-gutter));
	max-width: 1080px;
	margin-inline: auto;
	padding: clamp(24px, 2.4vw, 40px);
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
	gap: 0;
}

.rp-section {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding-block: 28px;
	border-block-end: 1px solid var(--rp-line);
}

.rp-section:first-of-type {
	padding-block-start: 0;
}

.rp-section-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.rp-section-head h3 {
	margin: 0;
	font-size: 16px;
}

.rp-section-head p {
	margin: 2px 0 0;
	color: var(--rp-muted);
	font-size: 13px;
}

.rp-section-num {
	display: grid;
	place-items: center;
	flex: none;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 13px;
	font-weight: 800;
}

.rp-fieldset {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.rp-legend {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 0;
	margin-block-end: 12px;
	font-size: 13px;
	font-weight: 700;
}

.rp-count {
	padding: 1px 10px;
	border-radius: 999px;
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 12px;
	font-weight: 700;
}

.rp-count[data-empty] {
	background: var(--rp-soft);
	color: var(--rp-muted);
}

/* چک‌باکس‌های پیل‌شکل */
.rp-checks {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 8px;
}

.rp-check {
	position: relative;
	display: block;
	cursor: pointer;
}

.rp-check input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.rp-check > span {
	display: flex;
	align-items: center;
	min-height: 40px;
	padding: 6px 14px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: #fff;
	color: var(--rp-ink);
	font-size: 13px;
	line-height: 1.5;
	transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.rp-check:hover > span {
	border-color: var(--rp-blue-l);
}

.rp-check input:checked + span {
	border-color: var(--rp-blue);
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-weight: 700;
}

.rp-check input:focus-visible + span {
	outline: 2px solid var(--rp-blue);
	outline-offset: 2px;
}

.rp-check--bold > span {
	font-weight: 700;
}

/* نوار پایانی فرم */
.rp-form-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	padding-block-start: 28px;
}

.rp-form-bar__note {
	flex: 1 1 260px;
	margin: 0;
	color: var(--rp-muted);
	font-size: 13px;
}

/* =====================================================================
 * ۹. شبکه و کارت‌ها
 * ================================================================== */

.rp-grid {
	display: grid;
	gap: 20px;
	margin-block-end: 24px;
}

.rp-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.rp-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rp-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.rp-card {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
	color: var(--rp-ink);
	transition: border-color .15s ease, box-shadow .15s ease;
}

.rp-wrap a.rp-card:hover {
	border-color: var(--rp-blue-l);
	box-shadow: 0 10px 24px -18px rgba(15, 27, 45, .4);
	color: var(--rp-ink);
}

.rp-card__badges {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}

.rp-card__title {
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
}

.rp-card__desc {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin: 0;
	color: var(--rp-muted);
	font-size: 14px;
}

.rp-card__foot {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-block-start: auto;
	padding-block-start: 14px;
	border-block-start: 1px solid var(--rp-line);
	font-size: 13px;
}

.rp-org {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.rp-org b,
.rp-expert__head b {
	display: block;
	color: var(--rp-ink);
	font-size: 13px;
	line-height: 1.4;
}

.rp-org i,
.rp-expert__head i,
.rp-match__who i,
.rp-pitch__expert i {
	display: block;
	font-style: normal;
	color: var(--rp-muted);
	font-size: 12px;
	line-height: 1.4;
}

.rp-facts {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 12px;
	color: var(--rp-muted);
	font-size: 12px;
}

.rp-facts i {
	font-style: normal;
}

.rp-expert__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.rp-expert__head {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.rp-expert__head b {
	font-size: 15px;
}

.rp-expert__percent {
	display: flex;
	justify-content: flex-start;
}

.rp-rate {
	color: var(--rp-ink);
	font-weight: 700;
	font-size: 13px;
}

/* =====================================================================
 * ۱۰. نوار امتیاز، تطبیق، دلایل، پیچ
 * ================================================================== */

.rp-matches__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
	gap: 20px;
}

.rp-match {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 24px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rp-match__head {
	display: flex;
	align-items: center;
	gap: 14px;
}

.rp-match__who {
	flex: 1;
	min-width: 0;
}

.rp-match__who a b {
	color: var(--rp-ink);
	font-size: 15px;
}

.rp-match__who a:hover b {
	color: var(--rp-blue);
}

.rp-match__bars {
	display: grid;
	gap: 10px;
}

.rp-bar__top {
	display: flex;
	justify-content: space-between;
	margin-block-end: 4px;
	font-size: 12px;
	color: var(--rp-muted);
}

.rp-bar__top b {
	color: var(--rp-ink);
}

.rp-bar__track,
.rpl-wbar__track {
	display: block;
	height: 6px;
	border-radius: 999px;
	background: var(--rp-soft);
	overflow: hidden;
}

.rp-bar__fill,
.rpl-wbar__fill {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--rp-blue) !important;
}

.rp-reasons,
.rpl-reasons {
	display: grid;
	gap: 6px;
}

.rp-reason,
.rpl-reason {
	position: relative;
	display: flex;
	gap: 8px;
	padding-inline-start: 18px;
	color: var(--rp-muted);
	font-size: 13px;
	line-height: 1.7;
}

.rp-reason::before,
.rpl-reason::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: .7em;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--rp-ok);
}

.rp-reason--minus::before,
.rpl-reason--minus::before { background: var(--rp-bad); }
.rp-reason--neutral::before,
.rpl-reason--neutral::before { background: var(--rp-muted); }

.rp-match__foot {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-block-start: auto;
	padding-block-start: 14px;
	border-block-start: 1px solid var(--rp-line);
	font-size: 13px;
}

.rp-match--compact {
	padding: 18px;
	gap: 12px;
}

.rp-pitch-list {
	display: grid;
	gap: 14px;
}

.rp-pitches,
.rp-my-challenges,
.rp-my-match,
.rp-matches {
	margin-block-end: 12px;
}

.rp-pitch {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 20px 24px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rp-pitch__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.rp-pitch__challenge {
	font-weight: 800;
	font-size: 15px;
}

.rp-pitch__expert b {
	font-size: 14px;
}

.rp-pitch__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.rp-pitch__text {
	margin: 0;
	color: var(--rp-ink);
	font-size: 14px;
	white-space: pre-line;
}

.rp-pitch__foot {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
	padding-block-start: 12px;
	border-block-start: 1px solid var(--rp-line);
	font-size: 13px;
}

.rp-pitch__actions {
	display: inline-flex;
	gap: 8px;
	margin-inline-start: auto;
}

/* جدول سبک (چالش‌های من) */
.rp-table {
	display: grid;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
	overflow: hidden;
}

.rp-table__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 16px 22px;
}

.rp-table__row + .rp-table__row {
	border-block-start: 1px solid var(--rp-line);
}

.rp-table__main {
	display: flex;
	flex-direction: column;
	min-width: 0;
	flex: 1 1 280px;
}

.rp-table__main b {
	color: var(--rp-ink);
}

.rp-table__main .rp-muted {
	font-size: 13px;
}

.rp-table__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

/* آمار */
.rp-stats,
.rp-dash__stats,
.rpl-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 14px;
	margin-block-end: 28px;
}

.rp-stat,
.rpl-stat {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 20px 22px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rp-stat b,
.rpl-stat b {
	color: var(--rp-ink);
	font-size: 28px;
	font-weight: 800;
	line-height: 1.3;
	font-feature-settings: "tnum";
}

.rp-stat span,
.rpl-stat span {
	color: var(--rp-muted);
	font-size: 13px;
}

/* صفحه‌بندی */
.rp-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
	margin-block: 32px 8px;
}

.rp-pagination .rp-page {
	display: inline-grid;
	place-items: center;
	min-width: 38px;
	height: 38px;
	padding: 0 12px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: #fff;
	color: var(--rp-ink);
	font-size: 13px;
	font-weight: 600;
}

.rp-wrap .rp-pagination a.rp-page:hover {
	border-color: var(--rp-blue);
	color: var(--rp-blue);
}

.rp-pagination .rp-page--current {
	border-color: var(--rp-blue);
	background: var(--rp-blue);
	color: #fff;
}

/* =====================================================================
 * ۱۱. تک‌صفحه‌ها و پنل
 * ================================================================== */

.rp-single {
	padding-block-end: var(--rp-sec);
}

.rp-single > .rp-panel,
.rp-single > .rp-owner-tools,
.rp-single > .rp-matches,
.rp-single > .rp-pitches,
.rp-single > .rp-my-match,
.rp-single > .rp-pitch-form-wrap,
.rp-single > .rp-cta-inline,
.rp-single > .rp-notice {
	max-width: 1080px;
	margin-inline: auto;
}

.rp-single > .rp-matches {
	max-width: none;
	margin-inline: var(--rp-gutter);
}

.rp-panel {
	margin-block-start: 20px;
	margin-block-end: 20px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rp-panel__head {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 28px 32px 22px;
	border-block-end: 1px solid var(--rp-line);
}

.rp-panel__head--expert {
	flex-direction: row;
	align-items: center;
	gap: 20px;
}

.rp-panel__title {
	margin: 0;
	font-size: clamp(22px, 2vw, 28px);
}

.rp-panel__body {
	padding: 24px 32px;
	font-size: 15px;
	line-height: 2;
}

.rp-panel > .rp-skills,
.rp-panel > .rp-note,
.rp-panel > .rp-facts-list {
	margin: 0 32px 24px;
}

.rp-panel--expert > .rp-facts-list {
	margin-block-start: 20px;
}

.rp-facts-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	color: var(--rp-muted);
	font-size: 13px;
}

.rp-facts-list li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.rp-facts-list b {
	color: var(--rp-ink);
}

.rp-owner-tools {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-block-end: 20px;
}

.rp-cta-inline {
	margin-block: 24px;
	padding: 28px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: var(--rp-soft);
	text-align: center;
}

.rp-cta-inline h3 {
	margin: 0 0 4px;
	font-size: 17px;
}

.rp-cta-inline p {
	margin: 0;
	color: var(--rp-muted);
}

.rp-pitch-form-wrap {
	margin-block-end: 20px;
}

.rp-pitch-form-wrap .rp-form {
	padding: 24px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
}

/* مراحل (شورت‌کد فرایند) */
.rp-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	padding: 0 var(--rp-gutter);
	counter-reset: none;
}

.rp-step {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 24px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
}

.rp-step h3 {
	margin: 0;
	font-size: 16px;
}

.rp-step p {
	margin: 0;
	color: var(--rp-muted);
	font-size: 14px;
}

.rp-step__num {
	color: var(--rp-muted);
	font-size: 12px;
	font-weight: 800;
}

.rp-step__ic {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: var(--rp-tint);
	color: var(--rp-blue);
}

/* =====================================================================
 * ۱۲. ورود و ثبت‌نام
 * ================================================================== */

.rp-wrap.rp-auth2 {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	align-content: start;
	padding-block: 56px var(--rp-sec);
	padding-inline: max(var(--rp-gutter), calc((100% - 1180px) / 2));
}

.rp-auth2__aside {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 48px 40px;
	border-start-start-radius: var(--rp-r);
	border-end-start-radius: var(--rp-r);
	background: var(--rp-blue);
	color: #fff;
}

.rp-wrap .rp-auth2__aside h2,
.rp-wrap .rp-auth2__aside p,
.rp-wrap .rp-auth2__aside li,
.rp-wrap .rp-auth2__aside span {
	color: #fff;
}

.rp-auth2__aside h2 {
	margin: 8px 0 0;
	font-size: 24px;
}

.rp-auth2__aside p {
	opacity: .85;
}

.rp-auth2__list {
	display: grid;
	gap: 14px;
	margin-block-start: 16px !important;
}

.rp-auth2__list li {
	display: flex;
	align-items: center;
	gap: 12px;
	font-weight: 700;
}

.rp-auth2__list li span {
	font-weight: 400;
	opacity: .85;
}

.rp-auth2__panel {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 48px 44px;
	border: 1px solid var(--rp-line);
	border-inline-start: 0;
	border-start-end-radius: var(--rp-r);
	border-end-end-radius: var(--rp-r);
	background: #fff;
}

.rp-auth2__head h3 {
	margin: 0 0 4px;
	font-size: 20px;
}

.rp-auth2__head p {
	margin: 0;
	color: var(--rp-muted);
}

.rp-auth2__form {
	gap: 16px;
}

.rp-phone {
	display: flex;
	direction: ltr;
}

.rp-phone__cc {
	display: grid;
	place-items: center;
	padding: 0 14px;
	border: 1px solid var(--rp-line);
	border-inline-end: 0;
	border-radius: var(--rp-r-sm) 0 0 var(--rp-r-sm);
	background: var(--rp-soft);
	color: var(--rp-muted);
	font-size: 14px;
}

.rp-phone input {
	border-radius: 0 var(--rp-r-sm) var(--rp-r-sm) 0 !important;
	direction: ltr;
	text-align: left;
}

.rp-input--otp {
	text-align: center;
	letter-spacing: 10px;
	font-size: 20px !important;
	direction: ltr;
}

.rp-roles {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.rp-role {
	position: relative;
	cursor: pointer;
}

.rp-role input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.rp-role > span {
	display: flex;
	flex-direction: column;
	gap: 2px;
	height: 100%;
	padding: 14px 16px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: #fff;
	transition: border-color .15s ease, background-color .15s ease;
}

.rp-role b {
	font-size: 14px;
}

.rp-role i {
	font-style: normal;
	color: var(--rp-muted);
	font-size: 12px;
}

.rp-role input:checked + span {
	border-color: var(--rp-blue);
	background: var(--rp-tint);
}

.rp-auth2__resend {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.rp-auth2__switch,
.rp-auth2__fallback {
	margin: 0;
	color: var(--rp-muted);
	font-size: 13px;
}

/* =====================================================================
 * ۱۳. پیشخوان کاربر
 * ================================================================== */

.rp-dash__head .rp-head__title {
	margin: 0;
}

.rp-dash > .rp-matches,
.rp-dash > .rp-pitches,
.rp-dash > .rp-my-challenges {
	margin-inline: var(--rp-gutter);
}

/* =====================================================================
 * ۱۴. پاپ‌آپ چالش/متخصص
 * ================================================================== */

html.rp-modal-open {
	overflow: hidden;
}

.rp-modal {
	position: fixed;
	inset: 0;
	z-index: 100001;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.rp-modal[hidden] {
	display: none;
}

.rp-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(15, 27, 45, .5);
	opacity: 0;
	transition: opacity .18s ease;
}

.rp-modal.is-open .rp-modal__overlay {
	opacity: 1;
}

.rp-modal__dialog {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 720px;
	max-height: min(88vh, 860px);
	border-radius: var(--rp-r-lg);
	background: #fff;
	box-shadow: 0 30px 70px -30px rgba(15, 27, 45, .5);
	overflow: hidden;
	opacity: 0;
	transform: translateY(12px);
	transition: opacity .18s ease, transform .18s ease;
}

.rp-modal.is-open .rp-modal__dialog {
	opacity: 1;
	transform: none;
}

.rp-modal__close {
	position: absolute;
	inset-block-start: 14px;
	inset-inline-start: 14px;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--rp-line);
	border-radius: 50%;
	background: #fff;
	color: var(--rp-ink);
	cursor: pointer;
	transition: border-color .15s ease, color .15s ease;
}

.rp-modal__close:hover {
	border-color: var(--rp-blue);
	background: #fff;
	color: var(--rp-blue);
}

.rp-modal__close svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
}

.rp-modal__scroll {
	flex: 1;
	overflow-y: auto;
	overscroll-behavior: contain;
}

.rp-modal__head {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 28px 28px 18px 28px;
	padding-inline-start: 64px;
	border-block-end: 1px solid var(--rp-line);
}

.rp-modal__title {
	margin: 0;
	font-size: 20px;
}

.rp-modal__body {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 22px 28px;
}

.rp-modal__text {
	font-size: 14px;
	line-height: 2;
	white-space: pre-line;
}

.rp-modal__text p:last-child {
	margin-bottom: 0;
}

.rp-modal__block {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.rp-modal__label {
	color: var(--rp-muted);
	font-size: 12px;
}

.rp-modal__foot {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	padding: 16px 28px;
	border-block-start: 1px solid var(--rp-line);
	background: var(--rp-soft);
}

.rp-modal__full {
	margin-inline-start: auto;
	font-size: 13px;
	font-weight: 700;
}

.rp-modal__pitch {
	flex: 1 1 100%;
}

.rp-modal__pitch > summary {
	display: inline-flex;
	list-style: none;
	cursor: pointer;
}

.rp-modal__pitch > summary::-webkit-details-marker {
	display: none;
}

.rp-modal__pitch[open] > summary {
	margin-block-end: 14px;
}

.rp-modal__pitch-form {
	padding: 18px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rp-modal__loading,
.rp-modal__fallback {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	padding: 64px 28px;
	color: var(--rp-muted);
	text-align: center;
}

@media (max-width: 640px) {
	.rp-modal {
		align-items: flex-end;
		padding: 0;
	}

	.rp-modal__dialog {
		max-width: none;
		max-height: 92vh;
		border-radius: var(--rp-r-lg) var(--rp-r-lg) 0 0;
	}

	.rp-modal__head,
	.rp-modal__body,
	.rp-modal__foot {
		padding-inline: 18px;
	}

	.rp-modal__head {
		padding-inline-start: 58px;
	}
}

/* =====================================================================
 * ۱۵. صفحهٔ اصلی — بخش‌ها
 * ================================================================== */

.rpl-sec {
	padding-block: var(--rp-sec);
}

.rpl-sec--tight {
	padding-block: 36px;
}

.rpl-sec--alt {
	background: var(--rp-soft);
	border-block: 1px solid var(--rp-line);
}

.rpl-head {
	max-width: 720px;
	margin: 0 auto 48px;
	text-align: center;
}

.rpl-row-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-block-end: 36px;
}

.rpl-row-head .rpl-sub {
	max-width: 720px;
	margin: 0;
}

.rpl-h1,
.rpl-h2 {
	margin: 6px 0 12px;
	font-weight: 800;
	color: var(--rp-ink);
}

.rpl-h1 {
	font-size: clamp(30px, 3.2vw, 48px);
	line-height: 1.45;
}

.rpl-h2 {
	font-size: clamp(24px, 2.2vw, 32px);
	line-height: 1.5;
}

.rpl-grad {
	color: var(--rp-blue);
}

.rpl-sub {
	margin: 0;
	color: var(--rp-muted);
	font-size: 16px;
}

.rpl-lead {
	max-width: 60ch;
	margin: 0 0 28px;
	color: var(--rp-muted);
	font-size: 17px;
	line-height: 2;
}

.rpl-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.rpl-note + .rpl-cta,
.rpl-note .rpl-cta {
	margin-block-start: 14px;
}

.rpl-icbox {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	margin-block-end: 14px;
	border-radius: 10px;
	background: var(--rp-tint);
	color: var(--rp-blue);
}

.rpl-icbox .rp-ic {
	width: 22px;
	height: 22px;
}

.rpl-lbl-xs {
	margin: 14px 0 6px;
	color: var(--rp-muted);
	font-size: 12px;
	font-weight: 700;
}

/* ---------------------------------------------------------------------
 * هیرو
 * ------------------------------------------------------------------ */

.rpl-hero {
	padding-block: 72px 64px;
	border-block-end: 1px solid var(--rp-line);
}

.rpl-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
	gap: 64px;
	align-items: center;
}

.rpl-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-block-end: 18px;
	padding: 4px 14px;
	border: 1px solid var(--rp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--rp-muted);
	font-size: 13px;
	font-weight: 600;
}

.rpl-dot,
.rpl-live-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--rp-blue);
}

.rpl-live-dot {
	background: var(--rp-ok);
}

.rpl-trust {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-block-start: 32px;
}

.rpl-trust p {
	margin: 0;
	color: var(--rp-muted);
	font-size: 14px;
}

.rpl-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-block-start: 18px;
}

.rpl-tags span {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 3px 12px;
	border-radius: 999px;
	background: var(--rp-soft);
	color: var(--rp-muted);
	font-size: 12px;
	font-weight: 600;
}

.rpl-tags b {
	color: var(--rp-ink);
}

/* پنل نمایشی موتور تطبیق */
.rpl-panel {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 20px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-lg);
	background: #fff;
	box-shadow: 0 24px 50px -36px rgba(15, 27, 45, .45);
}

.rpl-panel-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding-block-end: 12px;
	border-block-end: 1px solid var(--rp-line);
	font-size: 12px;
}

.rpl-live {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--rp-ink);
	font-weight: 700;
}

.rpl-env {
	color: var(--rp-muted);
	font-size: 10px;
	letter-spacing: .5px;
}

.rpl-engine {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	border-radius: var(--rp-r-sm);
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 13px;
	font-weight: 700;
}

.rpl-engine__core {
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 8px;
	background: var(--rp-blue);
	color: #fff;
}

.rpl-engine__core .rp-ic {
	width: 16px;
	height: 16px;
}

.rpl-panel__cols {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.rpl-panel__col {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.rpl-gcard {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 12px 14px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: #fff;
	color: var(--rp-ink);
	transition: border-color .15s ease;
}

.rp-wrap a.rpl-gcard:hover {
	border-color: var(--rp-blue-l);
	color: var(--rp-ink);
}

.rpl-gcard.is-key,
.rpl-gcard.is-hot {
	border-color: var(--rp-blue);
	background: var(--rp-tint);
}

.rpl-gcard .t {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--rp-muted);
	font-size: 11px;
	font-weight: 700;
}

.rpl-gcard .t .rp-ic {
	width: 14px;
	height: 14px;
}

.rpl-gcard .n {
	display: block;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.6;
}

.rpl-gcard .f {
	display: block;
	color: var(--rp-muted);
	font-size: 12px;
	line-height: 1.5;
}

.rpl-gcard .row {
	display: flex;
	align-items: center;
	gap: 10px;
}

.rpl-gcard .rpl-av {
	width: 34px;
	height: 34px;
	font-size: 14px;
}

.rpl-gcard .rpl-badge-match {
	align-self: flex-start;
	min-height: 22px;
	font-size: 11px;
}

.rpl-toast {
	padding: 10px 14px;
	border-radius: var(--rp-r-sm);
	background: var(--rp-soft);
	color: var(--rp-muted);
	font-size: 12px;
	text-align: center;
}

/* نوار حوزه‌ها */
.rpl-marquee {
	padding: 16px var(--rp-gutter);
	border-block-end: 1px solid var(--rp-line);
	overflow: hidden;
}

.rpl-marquee__in {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
}

.rpl-marquee__in span {
	padding: 2px 12px;
	border: 1px solid var(--rp-line);
	border-radius: 999px;
	color: var(--rp-muted);
	font-size: 12px;
	font-weight: 600;
}

/* ---------------------------------------------------------------------
 * شبکه‌ها
 * ------------------------------------------------------------------ */

.rpl-sol-grid,
.rpl-values {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.rpl-steps,
.rpl-grid3,
.rpl-quotes,
.rpl-posts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.rpl-grid4 {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.rpl-sol,
.rpl-step,
.rpl-value,
.rpl-quote,
.rpl-post,
.rpl-cmp,
.rpl-kpi,
.rpl-match {
	padding: 26px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rpl-sec--alt .rpl-sol,
.rpl-sec--alt .rpl-step,
.rpl-sec--alt .rpl-value,
.rpl-sec--alt .rpl-quote,
.rpl-sec--alt .rpl-post,
.rpl-sec--alt .rpl-cmp,
.rpl-sec--alt .rpl-kpi,
.rpl-sec--alt .rp-card {
	background: #fff;
}

.rpl-sol h3,
.rpl-step h3,
.rpl-value h3,
.rpl-post h3,
.rpl-cmp h3 {
	margin: 0 0 6px;
	font-size: 16px;
}

.rpl-sol p,
.rpl-step p,
.rpl-value p,
.rpl-post p {
	margin: 0;
	color: var(--rp-muted);
	font-size: 14px;
}

.rpl-sol {
	display: flex;
	flex-direction: column;
}

.rpl-sol__out {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-block-start: auto;
	padding-block-start: 14px;
	border-block-start: 1px solid var(--rp-line);
	color: var(--rp-ok);
	font-size: 13px;
	font-weight: 600;
}

.rpl-sol p {
	margin-block-end: 16px;
}

.rpl-step__big {
	display: block;
	margin-block-end: 8px;
	color: var(--rp-line);
	font-size: 40px;
	font-weight: 800;
	line-height: 1;
}

.rpl-step__tag {
	display: inline-flex;
	margin-block-start: 16px;
	padding: 2px 12px;
	border-radius: 999px;
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 12px;
	font-weight: 700;
}

/* موتور تطبیق */
.rpl-engine-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 64px;
	align-items: center;
}

.rpl-engine-grid > div:last-child {
	display: grid;
	gap: 16px;
}

.rpl-weights {
	display: grid;
	gap: 16px;
	margin-block: 28px;
}

.rpl-wbar__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-block-end: 6px;
	font-size: 14px;
	font-weight: 600;
}

.rpl-wbar__top b {
	color: var(--rp-ink) !important;
	font-size: 13px;
}

.rpl-wbar__top .ix {
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	margin-inline-end: 10px;
	border-radius: 50%;
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 11px;
	font-weight: 800;
}

.rpl-match__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-block-end: 16px;
	font-size: 13px;
	font-weight: 700;
}

.rpl-match__tag {
	padding: 2px 10px;
	border-radius: 999px;
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 12px;
}

.rpl-match__body {
	display: flex;
	align-items: center;
	gap: 18px;
}

.rpl-match__who {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.rpl-match__who .who-txt {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.rpl-match__who .who-name {
	color: var(--rp-ink);
	font-size: 15px;
	font-weight: 800;
}

.rpl-match__who .who-role {
	font-style: normal;
	color: var(--rp-muted);
	font-size: 12px;
}

.rpl-match__who .who-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-block-start: 6px;
}

.rpl-match__chal {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-block-start: 14px;
	padding-block-start: 12px;
	border-block-start: 1px solid var(--rp-line);
	color: var(--rp-muted);
	font-size: 13px;
}

.rpl-match__chal b a {
	color: var(--rp-ink);
}

.rpl-match .rpl-sub {
	font-size: 14px;
}

.rpl-reason.is-key {
	color: var(--rp-ink);
	font-weight: 600;
}

/* تایم‌لاین */
.rpl-timeline {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 24px;
}

.rpl-tl {
	padding-block-start: 20px;
	border-block-start: 2px solid var(--rp-line);
}

.rpl-tl__num {
	margin-block-end: 6px;
	color: var(--rp-blue);
	font-size: 13px;
	font-weight: 800;
}

.rpl-tl h3 {
	margin: 0 0 4px;
	font-size: 16px;
}

.rpl-tl p {
	margin: 0 0 10px;
	color: var(--rp-muted);
	font-size: 14px;
}

.rpl-tl__when {
	display: inline-flex;
	padding: 2px 12px;
	border-radius: 999px;
	background: var(--rp-soft);
	color: var(--rp-muted);
	font-size: 12px;
	font-weight: 700;
}

/* شاخص‌ها و شرکا */
.rpl-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.rpl-kpi {
	text-align: center;
}

.rpl-kpi b {
	display: block;
	color: var(--rp-blue);
	font-size: clamp(32px, 3vw, 44px);
	font-weight: 800;
	line-height: 1.3;
}

.rpl-kpi b i {
	font-style: normal;
}

.rpl-kpi > span {
	display: block;
	font-weight: 700;
}

.rpl-kpi small {
	display: block;
	color: var(--rp-muted);
	font-size: 12px;
}

.rpl-partners {
	margin-block-start: 48px;
	text-align: center;
}

.rpl-partners .cap {
	margin-block-end: 14px;
	color: var(--rp-muted);
	font-size: 13px;
	font-weight: 700;
}

.rpl-plogos,
.rpl-tech-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
}

.rpl-plogo,
.rpl-tech {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 18px;
	border: 1px solid var(--rp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--rp-ink);
	font-size: 13px;
	font-weight: 600;
}

.rpl-plogo i {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--rp-blue);
}

.rpl-tech .rp-ic {
	color: var(--rp-blue);
	width: 18px;
	height: 18px;
}

/* مقایسه */
.rpl-compare {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.rpl-cmp h3 {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-block-end: 14px;
	font-size: 17px;
}

.rpl-cmp ul {
	display: grid;
}

.rpl-cmp li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding-block: 10px;
	border-block-start: 1px solid var(--rp-line);
	color: var(--rp-muted);
	font-size: 14px;
}

.rpl-cmp li .rp-ic {
	width: 18px;
	height: 18px;
	margin-block-start: 4px;
}

.rpl-cmp.is-win {
	border-color: var(--rp-blue);
}

.rpl-cmp.is-win li {
	color: var(--rp-ink);
}

.rpl-cmp.is-win li .rp-ic {
	color: var(--rp-ok);
}

.rpl-cmp__flag {
	margin-inline-start: auto;
	padding: 2px 10px;
	border-radius: 999px;
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 12px;
	font-weight: 700;
}

/* نظرات */
.rpl-quote {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.rpl-quote__mark {
	color: var(--rp-line);
	font-size: 44px;
	font-weight: 800;
	line-height: .6;
	height: 22px;
}

.rpl-quote__metric {
	align-self: flex-start;
	padding: 2px 12px;
	border-radius: 999px;
	background: var(--rp-tint);
	color: var(--rp-blue-d);
	font-size: 12px;
	font-weight: 700;
}

.rpl-quote p {
	margin: 0;
	font-size: 14px;
	line-height: 2;
}

.rpl-quote__who {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-block-start: auto;
	padding-block-start: 14px;
	border-block-start: 1px solid var(--rp-line);
}

.rpl-quote__who .n {
	display: block;
	font-size: 14px;
	font-weight: 700;
}

.rpl-quote__who .r {
	display: block;
	color: var(--rp-muted);
	font-size: 12px;
}

/* دانش‌نامه */
.rp-wrap a.rpl-post {
	display: flex;
	flex-direction: column;
	gap: 10px;
	color: var(--rp-ink);
	transition: border-color .15s ease;
}

.rp-wrap a.rpl-post:hover {
	border-color: var(--rp-blue-l);
	color: var(--rp-ink);
}

.rpl-post .rpl-chip {
	align-self: flex-start;
}

.rpl-post__meta {
	display: flex;
	justify-content: space-between;
	margin-block-start: auto;
	padding-block-start: 12px;
	border-block-start: 1px solid var(--rp-line);
	color: var(--rp-muted);
	font-size: 12px;
}

.rpl-post__meta b {
	color: var(--rp-blue);
}

/* پرسش‌های متداول */
.rpl-faq {
	max-width: 880px;
	margin-inline: auto;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
	overflow: hidden;
}

.rpl-faq details + details {
	border-block-start: 1px solid var(--rp-line);
}

.rpl-faq summary {
	position: relative;
	padding: 18px 56px 18px 24px;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.rpl-faq summary::-webkit-details-marker {
	display: none;
}

.rpl-faq summary::after {
	content: "+";
	position: absolute;
	inset-inline-end: 22px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--rp-blue);
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
}

.rpl-faq details[open] summary::after {
	content: "−";
}

.rpl-faq details p {
	margin: 0;
	padding: 0 24px 20px;
	color: var(--rp-muted);
	font-size: 14px;
}

/* بنر فراخوان */
.rpl-band {
	padding: clamp(40px, 5vw, 72px) var(--rp-gutter);
	border-radius: var(--rp-r-lg);
	background: var(--rp-blue);
	color: #fff;
	text-align: center;
}

.rp-wrap .rpl-band h2 {
	max-width: 24em;
	margin: 0 auto 10px;
	color: #fff;
	font-size: clamp(24px, 2.4vw, 34px);
}

.rpl-band .rpl-grad {
	color: #fff;
}

.rpl-band p {
	max-width: 56ch;
	margin: 0 auto 26px;
	color: rgba(255, 255, 255, .85);
}

.rpl-band .rpl-cta {
	justify-content: center;
}

.rpl-band__mini {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px 24px;
	margin-block-start: 28px;
	color: rgba(255, 255, 255, .8);
	font-size: 13px;
}

.rpl-band__mini span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

/* =====================================================================
 * ۱۶. حرکت ظریف
 * ================================================================== */

html.rp-js .rp-reveal {
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .45s ease, transform .45s ease;
	transition-delay: var(--rp-delay, 0ms);
}

html.rp-js .rp-reveal.is-in {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	html.rp-js .rp-reveal,
	html.rp-js .rp-reveal.is-in {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.rpl-progress {
		display: none;
	}

	.rp-spinner {
		animation-duration: 2s;
	}
}

/* =====================================================================
 * ۱۷. پیشخوان وردپرس (صفحه‌های تنظیمات افزونه)
 * ================================================================== */

.rp-admin .rp-admin-cards,
.rp-admin-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 14px;
	margin: 18px 0;
}

.rp-admin .rp-admin-card {
	padding: 18px;
	border: 1px solid #dcdcde;
	border-radius: 8px;
	background: #fff;
}

.rp-admin .rp-admin-card b {
	display: block;
	color: var(--rp-blue, #1d4ed8);
	font-size: 1.6rem;
}

.rp-admin-tools {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
	margin: 18px 0;
	padding: 16px;
	border: 1px solid #dcdcde;
	border-radius: 8px;
	background: #f6f7f7;
}

.rp-admin-tools--sms,
.rp-admin-tools--elementor {
	background: #fff;
}

.rp-admin-inline {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.rp-admin-field {
	margin-bottom: 12px;
}

.rp-admin-matches {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px dashed #dcdcde;
}

.rp-admin .rp-sms-log td,
.rp-admin .rp-sms-log th {
	font-size: 12px;
}

.rp-admin .rp-badge {
	display: inline-block;
	min-height: 0;
	padding: 2px 10px;
	font-size: 12px;
}

/* =====================================================================
 * ۱۸. واکنش‌گرایی
 * ================================================================== */

@media (max-width: 1280px) {
	.rpl-sol-grid,
	.rpl-values,
	.rpl-grid4,
	.rp-grid--4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rpl-hero-grid,
	.rpl-engine-grid {
		gap: 40px;
	}
}

@media (max-width: 1024px) {
	.rp-grid--3,
	.rpl-grid3,
	.rpl-posts,
	.rpl-quotes,
	.rpl-steps,
	.rp-steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rpl-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rpl-hero-grid,
	.rpl-engine-grid,
	.rpl-compare,
	.rp-wrap.rp-auth2 {
		grid-template-columns: 1fr;
	}

	.rp-auth2__aside {
		border-radius: var(--rp-r) var(--rp-r) 0 0;
	}

	.rp-auth2__panel {
		border-inline-start: 1px solid var(--rp-line);
		border-block-start: 0;
		border-radius: 0 0 var(--rp-r) var(--rp-r);
	}

	.rpl-chrome-foot__grid {
		grid-template-columns: 1fr 1fr;
		gap: 32px;
	}

	.rpl-chrome-foot__about {
		grid-column: 1 / -1;
	}

	.rpl-chrome__in {
		flex-wrap: wrap;
		gap: 4px 16px;
		padding-block: 10px;
	}

	.rpl-chrome__nav {
		order: 3;
		flex: 1 1 100%;
		margin: 0;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.rpl-chrome__nav::-webkit-scrollbar {
		display: none;
	}

	.rpl-chrome__actions {
		margin-inline-start: auto;
	}

	.rp-matches__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.rp-grid--2,
	.rp-grid--3,
	.rp-grid--4,
	.rpl-sol-grid,
	.rpl-values,
	.rpl-grid3,
	.rpl-grid4,
	.rpl-posts,
	.rpl-quotes,
	.rpl-steps,
	.rp-steps,
	.rpl-kpis,
	.rpl-panel__cols,
	.rp-roles,
	.rpl-chrome-foot__grid {
		grid-template-columns: 1fr;
	}

	.rpl-stats,
	.rp-stats,
	.rp-dash__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rpl-hero {
		padding-block: 40px 36px;
	}

	.rpl-head {
		margin-block-end: 32px;
	}

	.rp-head,
	.rp-dash__head {
		padding-block: 28px 20px;
	}

	.rp-panel__head,
	.rp-panel__body {
		padding-inline: 20px;
	}

	.rp-panel > .rp-skills,
	.rp-panel > .rp-note,
	.rp-panel > .rp-facts-list {
		margin-inline: 20px;
	}

	.rp-panel__head--expert {
		flex-direction: column;
		align-items: flex-start;
	}

	.rp-auth2__aside,
	.rp-auth2__panel {
		padding: 28px 22px;
	}

	.rpl-chrome__name i,
	.rpl-chrome__actions .rp-ic,
	.rpl-env {
		display: none;
	}

	.rp-form-bar .rp-btn {
		flex: 1 1 auto;
	}

	.rp-pitch__actions {
		margin-inline-start: 0;
	}

	.rpl-faq summary {
		padding-inline-start: 18px;
	}
}

@media print {
	.rpl-chrome,
	.rpl-nav,
	.rpl-progress,
	.rp-modal {
		display: none !important;
	}

	.rp-wrap.rp-landing {
		border: 0;
	}
}

/* =====================================================================
 * ۱۹. لایهٔ رنگ و پویایی (نسخهٔ ۱٫۶)
 *     همان ساختار و جعبهٔ ۱۶۲۰؛ فقط رنگ‌های زنده، گرادیان ملایم و حرکت ظریف.
 * ================================================================== */

:root {
	--rp-c1: var(--rp-blue);
	--rp-c2: var(--rp-accent);
	--rp-c3: #f59e0b;
	--rp-c4: #10b981;
	--rp-c5: #8b5cf6;
	--rp-c6: #f43f5e;
	--rp-night: #0a1830;
	--rp-night-2: #10264a;
	--rp-grad: linear-gradient(135deg, var(--rp-blue) 0%, var(--rp-accent) 100%);
	--rp-grad-warm: linear-gradient(135deg, #f59e0b 0%, #f43f5e 100%);
	--rp-wash: linear-gradient(180deg, color-mix(in srgb, var(--rp-blue) 7%, #fff) 0%, #fff 100%);
	--rp-shadow: 0 18px 40px -26px color-mix(in srgb, var(--rp-blue) 55%, transparent);
}

/* ---- رنگ هر آیتم در شبکه‌ها: شش رنگ به‌نوبت ---- */
.rpl-sol:nth-child(6n+1), .rpl-value:nth-child(6n+1), .rpl-step:nth-child(6n+1), .rpl-tl:nth-child(6n+1), .rpl-stat:nth-child(6n+1), .rpl-forum:nth-child(6n+1), .rpl-tech:nth-child(6n+1), .rpl-marquee__in span:nth-child(6n+1), .rp-step:nth-child(6n+1) { --tone: var(--rp-c1); }
.rpl-sol:nth-child(6n+2), .rpl-value:nth-child(6n+2), .rpl-step:nth-child(6n+2), .rpl-tl:nth-child(6n+2), .rpl-stat:nth-child(6n+2), .rpl-forum:nth-child(6n+2), .rpl-tech:nth-child(6n+2), .rpl-marquee__in span:nth-child(6n+2), .rp-step:nth-child(6n+2) { --tone: var(--rp-c3); }
.rpl-sol:nth-child(6n+3), .rpl-value:nth-child(6n+3), .rpl-step:nth-child(6n+3), .rpl-tl:nth-child(6n+3), .rpl-stat:nth-child(6n+3), .rpl-forum:nth-child(6n+3), .rpl-tech:nth-child(6n+3), .rpl-marquee__in span:nth-child(6n+3), .rp-step:nth-child(6n+3) { --tone: var(--rp-c4); }
.rpl-sol:nth-child(6n+4), .rpl-value:nth-child(6n+4), .rpl-step:nth-child(6n+4), .rpl-tl:nth-child(6n+4), .rpl-stat:nth-child(6n+4), .rpl-forum:nth-child(6n+4), .rpl-tech:nth-child(6n+4), .rpl-marquee__in span:nth-child(6n+4), .rp-step:nth-child(6n+4) { --tone: var(--rp-c5); }
.rpl-sol:nth-child(6n+5), .rpl-value:nth-child(6n+5), .rpl-step:nth-child(6n+5), .rpl-tl:nth-child(6n+5), .rpl-stat:nth-child(6n+5), .rpl-forum:nth-child(6n+5), .rpl-tech:nth-child(6n+5), .rpl-marquee__in span:nth-child(6n+5), .rp-step:nth-child(6n+5) { --tone: var(--rp-c6); }
.rpl-sol:nth-child(6n+6), .rpl-value:nth-child(6n+6), .rpl-step:nth-child(6n+6), .rpl-tl:nth-child(6n+6), .rpl-stat:nth-child(6n+6), .rpl-forum:nth-child(6n+6), .rpl-tech:nth-child(6n+6), .rpl-marquee__in span:nth-child(6n+6), .rp-step:nth-child(6n+6) { --tone: var(--rp-c2); }

.rpl-icbox,
.rp-step__ic {
	background: color-mix(in srgb, var(--tone, var(--rp-blue)) 14%, #fff);
	color: var(--tone, var(--rp-blue));
	transition: transform .25s ease, background-color .25s ease, color .25s ease;
}

.rpl-sol:hover .rpl-icbox,
.rpl-value:hover .rpl-icbox,
.rpl-forum:hover .rpl-icbox,
.rp-step:hover .rp-step__ic {
	background: var(--tone, var(--rp-blue));
	color: #fff;
	transform: translateY(-2px) rotate(-6deg);
}

/* کارت‌های رنگی با نوار بالایی و بالا آمدن هنگام هاور */
.rpl-sol,
.rpl-value,
.rpl-step,
.rpl-forum,
.rpl-stat,
.rp-step,
.rpl-cmp,
.rpl-match {
	position: relative;
	overflow: hidden;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.rpl-sol::before,
.rpl-value::before,
.rpl-step::before,
.rpl-forum::before,
.rpl-stat::before,
.rp-step::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 3px;
	background: var(--tone, var(--rp-blue));
	transform: scaleX(.18);
	transform-origin: right;
	transition: transform .35s ease;
}

.rpl-sol:hover,
.rpl-value:hover,
.rpl-step:hover,
.rpl-forum:hover,
.rpl-stat:hover,
.rp-step:hover {
	transform: translateY(-4px);
	border-color: color-mix(in srgb, var(--tone, var(--rp-blue)) 45%, #fff);
	box-shadow: 0 22px 40px -28px color-mix(in srgb, var(--tone, var(--rp-blue)) 70%, transparent);
}

.rpl-sol:hover::before,
.rpl-value:hover::before,
.rpl-step:hover::before,
.rpl-forum:hover::before,
.rpl-stat:hover::before,
.rp-step:hover::before {
	transform: scaleX(1);
}

.rpl-sol__out {
	color: color-mix(in srgb, var(--tone, var(--rp-ok)) 80%, #000);
}

.rpl-step__big {
	background: linear-gradient(135deg, var(--tone, var(--rp-blue)), color-mix(in srgb, var(--tone, var(--rp-blue)) 30%, #fff));
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.rpl-step__tag,
.rpl-tl__when {
	background: color-mix(in srgb, var(--tone, var(--rp-blue)) 12%, #fff);
	color: color-mix(in srgb, var(--tone, var(--rp-blue)) 80%, #000);
}

.rpl-tl {
	border-block-start: 3px solid var(--tone, var(--rp-line));
}

.rpl-tl__num {
	color: var(--tone, var(--rp-blue));
}

/* ---- آمار ---- */
.rpl-stat b,
.rp-stat b {
	background: var(--rp-grad);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.rpl-stat b {
	background: linear-gradient(135deg, var(--tone, var(--rp-blue)), color-mix(in srgb, var(--tone, var(--rp-blue)) 55%, #000));
	-webkit-background-clip: text;
	background-clip: text;
}

/* ---- سربرگ و پاصفحه ---- */
.rpl-chrome {
	border-block-end: 0;
	background: rgba(255, 255, 255, .92);
}

.rpl-chrome::after {
	content: "";
	position: absolute;
	inset: auto 0 0 0;
	height: 3px;
	background: linear-gradient(90deg, var(--rp-blue), var(--rp-accent), var(--rp-c4), var(--rp-c3), var(--rp-c6));
	background-size: 200% 100%;
	animation: rp-flow 14s linear infinite;
}

.rpl-chrome__mark {
	background: var(--rp-grad);
	box-shadow: 0 8px 18px -8px var(--rp-blue);
}

.rpl-chrome__nav a:hover,
.rpl-nav a:hover {
	background: var(--rp-tint);
	color: var(--rp-blue-d);
}

.rpl-nav {
	border-block-end-color: color-mix(in srgb, var(--rp-blue) 14%, #fff);
}

.rpl-chrome-foot {
	border-color: var(--rp-night);
	background: radial-gradient(900px 340px at 85% 0%, color-mix(in srgb, var(--rp-blue) 38%, transparent), transparent 70%), linear-gradient(180deg, var(--rp-night-2), var(--rp-night));
	color: #cbd5e1;
}

.rpl-chrome-foot b,
.rpl-chrome-foot .rpl-chrome-foot__brand {
	color: #fff;
}

.rpl-chrome-foot__about p,
.rpl-chrome-foot__col a,
.rpl-chrome-foot__bottom,
.rpl-chrome-foot__bottom a {
	color: #aab8cd;
}

.rpl-chrome-foot__col a:hover,
.rpl-chrome-foot__bottom a:hover {
	color: #fff;
}

.rpl-chrome-foot__bottom {
	border-block-start-color: rgba(255, 255, 255, .12);
}

.rpl-chrome-foot .rpl-chrome__mark {
	background: var(--rp-grad);
}

.rp-wrap .rpl-chrome-foot .rpl-btn--outline {
	background: transparent;
	border-color: rgba(255, 255, 255, .4);
	color: #fff;
}

/* ---- دکمه‌ها ---- */
.rp-btn--primary,
.rpl-btn--primary {
	background: var(--rp-grad);
	background-size: 140% 100%;
	background-position: 100% 0;
	border-color: transparent;
	box-shadow: 0 10px 22px -14px var(--rp-blue);
	transition: background-position .35s ease, transform .2s ease, box-shadow .2s ease;
}

.rp-wrap .rp-btn--primary:hover,
.rp-wrap .rpl-btn--primary:hover,
.rp-modal .rp-btn--primary:hover,
.rpl-chrome .rpl-btn--primary:hover,
.rpl-chrome-foot .rpl-btn--primary:hover {
	background: var(--rp-grad);
	background-size: 140% 100%;
	background-position: 0 0;
	border-color: transparent;
	transform: translateY(-1px);
	box-shadow: 0 14px 26px -14px var(--rp-blue);
}

.rp-wrap .rpl-band .rpl-btn--primary,
.rp-wrap .rpl-band .rpl-btn--primary:hover {
	background: #fff;
	box-shadow: 0 12px 26px -14px rgba(0, 0, 0, .5);
}



/* ---- هیرو ---- */
.rpl-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background:
		radial-gradient(700px 420px at 12% 8%, color-mix(in srgb, var(--rp-accent) 22%, transparent), transparent 70%),
		radial-gradient(640px 420px at 92% 30%, color-mix(in srgb, var(--rp-c5) 16%, transparent), transparent 70%),
		linear-gradient(180deg, color-mix(in srgb, var(--rp-blue) 6%, #fff), #fff 78%);
}

.rpl-hero::before,
.rpl-hero::after {
	content: "";
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	filter: blur(60px);
	opacity: .5;
	animation: rp-drift 16s ease-in-out infinite alternate;
}

.rpl-hero::before {
	inset: -80px auto auto -60px;
	width: 320px;
	height: 320px;
	background: color-mix(in srgb, var(--rp-c3) 40%, transparent);
}

.rpl-hero::after {
	inset: auto -80px -100px auto;
	width: 380px;
	height: 380px;
	background: color-mix(in srgb, var(--rp-accent) 40%, transparent);
	animation-delay: -6s;
}

.rpl-grad {
	background: linear-gradient(100deg, var(--rp-blue), var(--rp-accent), var(--rp-c5), var(--rp-blue));
	background-size: 250% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	animation: rp-flow 9s linear infinite;
}

.rpl-band .rpl-grad {
	background: none;
	-webkit-text-fill-color: #fff;
	color: #fff;
	animation: none;
}

.rpl-eyebrow {
	border-color: color-mix(in srgb, var(--rp-blue) 22%, #fff);
	background: rgba(255, 255, 255, .8);
	color: var(--rp-blue-d);
	backdrop-filter: blur(6px);
}

.rpl-dot,
.rpl-live-dot {
	position: relative;
}

.rpl-dot::after,
.rpl-live-dot::after {
	content: "";
	position: absolute;
	inset: -4px;
	border-radius: 50%;
	border: 2px solid currentColor;
	color: var(--rp-blue);
	opacity: .5;
	animation: rp-ping 1.8s ease-out infinite;
}

.rpl-live-dot::after {
	color: var(--rp-ok);
}

.rpl-tags span:nth-child(1) { background: color-mix(in srgb, var(--rp-c1) 11%, #fff); }
.rpl-tags span:nth-child(2) { background: color-mix(in srgb, var(--rp-c3) 16%, #fff); }
.rpl-tags span:nth-child(3) { background: color-mix(in srgb, var(--rp-c4) 14%, #fff); }
.rpl-tags span:nth-child(4) { background: color-mix(in srgb, var(--rp-c5) 13%, #fff); }

.rpl-panel {
	border-color: color-mix(in srgb, var(--rp-blue) 20%, #fff);
	background: rgba(255, 255, 255, .86);
	backdrop-filter: blur(10px);
	box-shadow: 0 34px 60px -34px color-mix(in srgb, var(--rp-blue) 60%, transparent);
	animation: rp-float 7s ease-in-out infinite;
}

.rpl-engine {
	background: linear-gradient(100deg, color-mix(in srgb, var(--rp-blue) 12%, #fff), color-mix(in srgb, var(--rp-accent) 14%, #fff));
}

.rpl-engine__core {
	background: var(--rp-grad);
}

.rpl-gcard.is-key,
.rpl-gcard.is-hot {
	border-color: var(--rp-blue);
	background: linear-gradient(135deg, var(--rp-tint), #fff);
}

.rpl-gcard--ex.is-hot .rpl-badge-match {
	background: var(--rp-c4);
	color: #fff;
}

.rpl-marquee {
	background: #fff;
}

.rpl-marquee__in span {
	border-color: color-mix(in srgb, var(--tone, var(--rp-blue)) 28%, #fff);
	background: color-mix(in srgb, var(--tone, var(--rp-blue)) 9%, #fff);
	color: color-mix(in srgb, var(--tone, var(--rp-blue)) 75%, #000);
	transition: transform .2s ease;
}

.rpl-marquee__in span:hover {
	transform: translateY(-2px);
}

/* ---- بخش‌ها ---- */
.rpl-sec--alt {
	background: linear-gradient(180deg, color-mix(in srgb, var(--rp-blue) 5%, #fff), color-mix(in srgb, var(--rp-accent) 4%, #fff));
	border-block-color: color-mix(in srgb, var(--rp-blue) 10%, #fff);
}

.rpl-kicker,
.rp-kicker {
	padding: 3px 12px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--rp-blue) 10%, #fff);
	color: var(--rp-blue-d);
}

.rpl-kicker::before,
.rp-kicker::before {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--rp-grad);
}

.rp-kicker--light {
	background: rgba(255, 255, 255, .16);
	color: #fff;
}

.rp-kicker--light::before {
	background: #fff;
}

.rpl-chip--tint,
.rp-chip--tint,
.rp-match-num,
.rpl-badge-match {
	background: color-mix(in srgb, var(--rp-blue) 11%, #fff);
}

.rpl-wbar__fill,
.rp-bar__fill,
.rpl-wbar__fill[style] {
	background: var(--rp-grad) !important;
}

.rpl-wbar:nth-child(5n+2) .rpl-wbar__fill { background: linear-gradient(90deg, var(--rp-c4), var(--rp-accent)) !important; }
.rpl-wbar:nth-child(5n+3) .rpl-wbar__fill { background: linear-gradient(90deg, var(--rp-c5), var(--rp-blue)) !important; }
.rpl-wbar:nth-child(5n+4) .rpl-wbar__fill { background: linear-gradient(90deg, var(--rp-c3), var(--rp-c6)) !important; }
.rpl-wbar:nth-child(5n+5) .rpl-wbar__fill { background: linear-gradient(90deg, var(--rp-c6), var(--rp-c5)) !important; }

.rpl-cmp.is-win {
	background: linear-gradient(180deg, color-mix(in srgb, var(--rp-blue) 7%, #fff), #fff 60%);
	border-color: var(--rp-blue);
	box-shadow: var(--rp-shadow);
}

.rpl-cmp__flag {
	background: var(--rp-grad);
	color: #fff;
}

.rpl-tech,
.rpl-plogo {
	border-color: color-mix(in srgb, var(--tone, var(--rp-blue)) 25%, #fff);
	background: #fff;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.rpl-tech .rp-ic {
	color: var(--tone, var(--rp-blue));
}

.rpl-tech:hover {
	transform: translateY(-3px);
	border-color: var(--tone, var(--rp-blue));
	box-shadow: 0 14px 26px -18px var(--tone, var(--rp-blue));
}

.rpl-faq {
	border-color: color-mix(in srgb, var(--rp-blue) 14%, #fff);
}

.rpl-faq details[open] {
	background: linear-gradient(90deg, color-mix(in srgb, var(--rp-blue) 5%, #fff), #fff);
}

.rpl-faq details[open] summary {
	color: var(--rp-blue-d);
}

/* بنر پایانی */
.rpl-band {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background:
		radial-gradient(520px 260px at 12% 0%, color-mix(in srgb, var(--rp-accent) 55%, transparent), transparent 70%),
		radial-gradient(520px 260px at 92% 100%, color-mix(in srgb, var(--rp-c5) 55%, transparent), transparent 70%),
		linear-gradient(135deg, var(--rp-night-2), var(--rp-blue));
}

.rpl-band::before {
	content: "";
	position: absolute;
	inset: -40% auto auto -10%;
	z-index: -1;
	width: 60%;
	height: 180%;
	background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .1), transparent);
	transform: rotate(18deg);
	animation: rp-sweep 7s ease-in-out infinite;
}

/* ---- بخش‌های تازهٔ صفحهٔ اصلی ---- */
.rpl-about-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
	gap: 56px;
	align-items: start;
}

.rpl-about-grid .rpl-sub {
	margin-block-end: 14px;
}

.rpl-mission {
	position: sticky;
	top: calc(var(--wp-admin--admin-bar--height, 0px) + 100px);
	padding: 32px;
	border-radius: var(--rp-r-lg);
	background: linear-gradient(145deg, var(--rp-night-2), var(--rp-blue));
	color: #fff;
	box-shadow: 0 30px 50px -30px var(--rp-blue);
}

.rpl-mission .rpl-kicker {
	background: rgba(255, 255, 255, .16);
	color: #fff;
}

.rpl-mission .rpl-kicker::before {
	background: #fff;
}

.rpl-mission__t {
	margin: 12px 0 20px;
	color: #e6eefc;
	font-size: 16px;
	font-weight: 700;
}

.rpl-mission__s {
	margin: 22px 0 0;
	padding-block-start: 18px;
	border-block-start: 1px solid rgba(255, 255, 255, .18);
	color: #cfe0ff;
	font-size: 14px;
}

.rpl-chain {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.rpl-chain__step {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 14px 6px 6px;
	border-radius: 999px;
	background: #fff;
	color: var(--rp-ink);
	font-size: 14px;
	font-weight: 800;
}

.rpl-chain__step i {
	display: grid;
	place-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--tone, var(--rp-blue));
	color: #fff;
	font-size: 12px;
	font-style: normal;
}

.rpl-chain__step:nth-of-type(1) { --tone: var(--rp-c2); }
.rpl-chain__step:nth-of-type(3) { --tone: var(--rp-c3); }
.rpl-chain__step:nth-of-type(5) { --tone: var(--rp-c4); }
.rpl-chain__step:nth-of-type(7) { --tone: var(--rp-c5); }
.rpl-chain__step:nth-of-type(9) { --tone: var(--rp-c6); }

.rpl-chain__arrow {
	color: #9fc0ff;
	font-size: 18px;
	animation: rp-nudge 1.6s ease-in-out infinite;
}

.rpl-sol-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rpl-sol {
	gap: 4px;
}

.rpl-sol__num {
	position: absolute;
	inset: 18px auto auto 22px;
	color: color-mix(in srgb, var(--tone, var(--rp-blue)) 22%, #fff);
	font-size: 40px;
	font-weight: 800;
	line-height: 1;
}

.rpl-sol .rp-skills {
	margin-block-end: 14px;
}

.rpl-sol .rp-chip {
	background: color-mix(in srgb, var(--tone, var(--rp-blue)) 9%, #fff);
	border-color: color-mix(in srgb, var(--tone, var(--rp-blue)) 20%, #fff);
	color: color-mix(in srgb, var(--tone, var(--rp-blue)) 75%, #000);
}

.rpl-values--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rpl-forums {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.rpl-forum {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 28px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rpl-forum .rpl-icbox {
	flex: none;
	width: 56px;
	height: 56px;
	margin: 0;
}

.rpl-forum__txt {
	flex: 1;
	min-width: 0;
}

.rpl-forum__txt h3 {
	margin: 0 0 4px;
	font-size: 18px;
}

.rpl-forum__txt p {
	margin: 0;
	color: var(--rp-muted);
	font-size: 14px;
}

.rpl-vision {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 56px;
}

.rpl-vision .rpl-sub {
	margin-block-end: 12px;
}

.rpl-slogan {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	margin-block-start: 56px;
	padding: 44px 32px;
	border-radius: var(--rp-r-lg);
	background: linear-gradient(135deg, color-mix(in srgb, var(--rp-c3) 14%, #fff), color-mix(in srgb, var(--rp-c6) 12%, #fff));
	border: 1px solid color-mix(in srgb, var(--rp-c3) 30%, #fff);
	text-align: center;
	overflow: hidden;
}

.rpl-slogan__t {
	padding: 2px 14px;
	border-radius: 999px;
	background: var(--rp-grad-warm);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
}

.rpl-slogan strong {
	font-size: clamp(22px, 2.4vw, 34px);
	line-height: 1.6;
	background: var(--rp-grad-warm);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.rpl-slogan__s {
	color: var(--rp-muted);
	font-size: 15px;
}

/* ---- صفحه‌های داخلی ---- */
.rp-head,
.rp-dash__head {
	position: relative;
	background:
		radial-gradient(520px 200px at 100% 0%, color-mix(in srgb, var(--rp-accent) 16%, transparent), transparent 70%),
		linear-gradient(180deg, color-mix(in srgb, var(--rp-blue) 6%, #fff), #fff);
	border-block-end-color: color-mix(in srgb, var(--rp-blue) 14%, #fff);
}

.rp-head__title {
	background: linear-gradient(100deg, var(--rp-ink), var(--rp-blue-d));
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.rp-filters {
	background: linear-gradient(135deg, color-mix(in srgb, var(--rp-blue) 7%, #fff), color-mix(in srgb, var(--rp-accent) 7%, #fff));
	border-color: color-mix(in srgb, var(--rp-blue) 14%, #fff);
}

.rp-card {
	position: relative;
	overflow: hidden;
}

.rp-card::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 3px;
	background: var(--rp-grad);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .35s ease;
}

.rp-wrap a.rp-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--rp-shadow);
}

.rp-wrap a.rp-card:hover::before {
	transform: scaleX(1);
}

.rp-grid > .rp-card:nth-child(4n+2)::before { background: linear-gradient(90deg, var(--rp-c3), var(--rp-c6)); }
.rp-grid > .rp-card:nth-child(4n+3)::before { background: linear-gradient(90deg, var(--rp-c4), var(--rp-accent)); }
.rp-grid > .rp-card:nth-child(4n+4)::before { background: linear-gradient(90deg, var(--rp-c5), var(--rp-blue)); }

.rp-av,
.rpl-av {
	background: var(--rp-grad);
	color: #fff;
}

.rp-av--g2 { background: linear-gradient(135deg, #10b981, #0ea5e9); color: #fff; }
.rp-av--g3 { background: linear-gradient(135deg, #f59e0b, #f43f5e); color: #fff; }
.rp-av--g4 { background: linear-gradient(135deg, #8b5cf6, #3b82f6); color: #fff; }

.rp-skill {
	background: color-mix(in srgb, var(--rp-blue) 7%, #fff);
	color: var(--rp-blue-d);
}

.rp-stat,
.rp-dash__stats .rp-stat {
	border-block-start: 3px solid var(--rp-blue);
}

.rp-stats .rp-stat:nth-child(4n+2),
.rp-dash__stats .rp-stat:nth-child(4n+2) { border-block-start-color: var(--rp-c3); }
.rp-stats .rp-stat:nth-child(4n+3),
.rp-dash__stats .rp-stat:nth-child(4n+3) { border-block-start-color: var(--rp-c4); }
.rp-stats .rp-stat:nth-child(4n+4),
.rp-dash__stats .rp-stat:nth-child(4n+4) { border-block-start-color: var(--rp-c5); }

.rp-section-num {
	background: var(--rp-grad);
	color: #fff;
}

.rp-check input:checked + span {
	background: var(--rp-grad);
	border-color: transparent;
	color: #fff;
}

.rp-form-card {
	border-color: color-mix(in srgb, var(--rp-blue) 14%, #fff);
	box-shadow: var(--rp-shadow);
}

.rp-auth2__aside {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(360px 240px at 90% 0%, color-mix(in srgb, var(--rp-accent) 60%, transparent), transparent 70%),
		radial-gradient(320px 240px at 0% 100%, color-mix(in srgb, var(--rp-c5) 50%, transparent), transparent 70%),
		linear-gradient(160deg, var(--rp-night-2), var(--rp-blue));
}

.rp-role input:checked + span {
	background: linear-gradient(135deg, var(--rp-tint), #fff);
	box-shadow: 0 0 0 3px var(--rp-tint-2);
}

.rp-pagination .rp-page--current {
	background: var(--rp-grad);
	border-color: transparent;
}

.rp-modal__head {
	background: linear-gradient(180deg, color-mix(in srgb, var(--rp-blue) 7%, #fff), #fff);
}

.rp-modal__dialog {
	border-top: 4px solid var(--rp-blue);
}

.rpl-progress__bar {
	background: linear-gradient(90deg, var(--rp-blue), var(--rp-accent), var(--rp-c4));
}

/* ---- حرکت‌ها ---- */
@keyframes rp-flow {
	to { background-position: -250% 0; }
}

@keyframes rp-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-8px); }
}

@keyframes rp-drift {
	from { transform: translate(0, 0) scale(1); }
	to { transform: translate(40px, 30px) scale(1.15); }
}

@keyframes rp-ping {
	0% { transform: scale(.6); opacity: .6; }
	80%, 100% { transform: scale(1.8); opacity: 0; }
}

@keyframes rp-sweep {
	0%, 40% { transform: translateX(-120%) rotate(18deg); }
	100% { transform: translateX(260%) rotate(18deg); }
}

@keyframes rp-nudge {
	0%, 100% { transform: translateX(0); }
	50% { transform: translateX(-4px); }
}

html.rp-js .rp-reveal {
	transform: translateY(18px) scale(.985);
}

html.rp-js .rp-reveal.is-in {
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	.rpl-chrome::after,
	.rpl-grad,
	.rpl-panel,
	.rpl-hero::before,
	.rpl-hero::after,
	.rpl-band::before,
	.rpl-chain__arrow,
	.rpl-dot::after,
	.rpl-live-dot::after {
		animation: none !important;
	}

	.rpl-sol:hover,
	.rpl-value:hover,
	.rpl-step:hover,
	.rpl-forum:hover,
	.rpl-stat:hover,
	.rp-wrap a.rp-card:hover {
		transform: none;
	}
}

/* ---- واکنش‌گرایی بخش‌های تازه ---- */
@media (max-width: 1024px) {
	.rpl-about-grid,
	.rpl-vision,
	.rpl-forums {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.rpl-mission {
		position: static;
	}

	.rpl-sol-grid--3,
	.rpl-values--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.rpl-sol-grid--3,
	.rpl-values--3 {
		grid-template-columns: 1fr;
	}

	.rpl-forum {
		flex-wrap: wrap;
		padding: 22px;
	}

	.rpl-mission {
		padding: 24px;
	}

	.rpl-slogan {
		padding: 32px 20px;
	}
}

/* =====================================================================
 * ۲۰. رنگ و فونت از Theme Style المنتور، رنگ دکمه‌ها از تنظیمات افزونه
 *     (متغیرها را rp_palette_css() به‌صورت درون‌خطی می‌نویسد.)
 * ================================================================== */

:root {
	--rp-muted: color-mix(in srgb, var(--rp-ink) 80%, #fff);
}

.rp-wrap,
.rpl-chrome,
.rpl-chrome-foot,
.rpl-nav,
.rp-modal {
	font-family: var(--rp-ff-body, var(--e-global-typography-text-font-family, Tahoma)), Tahoma, sans-serif;
	font-weight: var(--rp-fw-body, var(--e-global-typography-text-font-weight, 400));
	color: var(--rp-ink);
}

.rp-wrap h1, .rp-modal h1 {
	color: var(--rp-h1, var(--rp-ink));
	font-family: var(--rp-ff-h1, var(--e-global-typography-primary-font-family, inherit));
	font-weight: var(--rp-fw-h1, var(--e-global-typography-primary-font-weight, 800));
}

.rp-wrap h2, .rp-modal h2 {
	color: var(--rp-h2, var(--rp-ink));
	font-family: var(--rp-ff-h2, var(--e-global-typography-primary-font-family, inherit));
	font-weight: var(--rp-fw-h2, var(--e-global-typography-primary-font-weight, 800));
}

.rp-wrap h3, .rp-modal h3 {
	color: var(--rp-h3, var(--rp-ink));
	font-family: var(--rp-ff-h3, var(--e-global-typography-primary-font-family, inherit));
	font-weight: var(--rp-fw-h3, var(--e-global-typography-primary-font-weight, 800));
}

.rp-wrap h4, .rp-modal h4 {
	color: var(--rp-h4, var(--rp-ink));
	font-family: var(--rp-ff-h4, var(--e-global-typography-primary-font-family, inherit));
	font-weight: var(--rp-fw-h4, var(--e-global-typography-primary-font-weight, 800));
}

.rp-wrap h5 {
	color: var(--rp-h5, var(--rp-ink));
	font-family: var(--rp-ff-h5, var(--e-global-typography-primary-font-family, inherit));
}

.rp-wrap h6 {
	color: var(--rp-h6, var(--rp-ink));
	font-family: var(--rp-ff-h6, var(--e-global-typography-primary-font-family, inherit));
}

/* عنوان‌های کلاس‌دار: عنوان اصلی صفحه مثل H1 و تیتر بخش‌ها مثل H2 */
.rp-wrap .rpl-h1 {
	color: var(--rp-h1, var(--rp-ink));
	font-family: var(--rp-ff-h1, var(--e-global-typography-primary-font-family, inherit));
	font-weight: var(--rp-fw-h1, var(--e-global-typography-primary-font-weight, 800));
}

.rp-wrap .rpl-h2,
.rp-wrap .rp-head__title,
.rp-wrap .rp-panel__title {
	color: var(--rp-h2, var(--rp-ink));
	font-family: var(--rp-ff-h2, var(--e-global-typography-primary-font-family, inherit));
	font-weight: var(--rp-fw-h2, var(--e-global-typography-primary-font-weight, 800));
}

/* سربرگ داخلی صفحه‌ها گرادیانی نباشد تا رنگ تعیین‌شدهٔ عنوان دیده شود */
.rp-head__title {
	background: none;
	-webkit-text-fill-color: currentColor;
}

/* پوشش دوباره در بخش‌های رنگی */
.rp-wrap .rpl-band h2,
.rp-wrap .rpl-band .rpl-h2,
.rp-wrap .rp-auth2__aside h2 {
	color: #fff;
}

.rp-wrap a,
.rp-modal a {
	color: var(--rp-link, var(--rp-blue));
}

.rp-wrap a:hover,
.rp-modal a:hover {
	color: var(--rp-link-h, var(--rp-blue-d));
}

/* پیوندهایی که کل کارت‌اند یا دکمه‌اند رنگ خود را نگه می‌دارند */
.rp-wrap a.rp-card,
.rp-wrap a.rpl-gcard,
.rp-wrap a.rpl-post,
.rp-wrap a.rpl-row,
.rp-wrap a.rpl-chal {
	color: var(--rp-ink);
}

/* ---- دکمه‌ها: همه از متغیرهای تنظیمات افزونه ---- */
.rp-wrap .rp-btn--primary,
.rp-wrap .rpl-btn--primary,
.rp-modal .rp-btn--primary,
.rpl-chrome .rpl-btn--primary,
.rpl-chrome-foot .rpl-btn--primary,
.rpl-nav a.is-go {
	background: var(--rp-btn-bg, var(--rp-blue));
	background-size: auto;
	background-position: 0 0;
	border-color: transparent;
	color: var(--rp-btn-fg, #fff);
}

.rp-wrap .rp-btn--primary:hover,
.rp-wrap .rpl-btn--primary:hover,
.rp-modal .rp-btn--primary:hover,
.rpl-chrome .rpl-btn--primary:hover,
.rpl-chrome-foot .rpl-btn--primary:hover,
.rpl-nav a.is-go:hover {
	background: var(--rp-btn-bg-h, var(--rp-blue-d));
	background-size: auto;
	background-position: 0 0;
	border-color: transparent;
	color: var(--rp-btn-fg-h, var(--rp-btn-fg, #fff));
}

/* دکمهٔ اصلی روی بنر رنگی همچنان روشن می‌ماند */
.rp-wrap .rpl-band .rpl-btn--primary,
.rp-wrap .rpl-band .rpl-btn--primary:hover {
	background: #fff;
	border-color: #fff;
	color: var(--rp-blue-d);
}

.rp-btn--outline:hover,
.rpl-btn--outline:hover {
	border-color: var(--rp-blue);
	color: var(--rp-blue);
}

.rp-pagination .rp-page--current,
.rp-check input:checked + span {
	background: var(--rp-btn-bg, var(--rp-blue));
	border-color: transparent;
	color: var(--rp-btn-fg, #fff);
}

/* =====================================================================
 * ۲۱. موتور تطبیق زنده در هیرو (چالش ← پنج محور ← متخصصان)
 *     حالت پایه = حالت نهایی؛ انیمیشن‌ها فقط از «شروع» می‌آیند، پس بدون
 *     حرکت (یا کاهش حرکت) هم نتیجهٔ کامل دیده می‌شود.
 * ================================================================== */

.rpl-panel {
	--rp-cycle: 8.5s;
	gap: 12px;
}

.rpl-stage {
	position: relative;
	min-height: 408px;
}

.rpl-scene {
	display: none;
	flex-direction: column;
}

.rpl-scene.is-active {
	display: flex;
}

.rpl-scene.is-leaving {
	animation: rp-out .34s ease both;
}

/* چالش */
.rpl-chal {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--rp-blue) 35%, #fff);
	border-radius: var(--rp-r);
	background: linear-gradient(135deg, var(--rp-tint), #fff);
}

.rpl-chal__ic {
	display: grid;
	place-items: center;
	flex: none;
	width: 38px;
	height: 38px;
	border-radius: 10px;
	background: var(--rp-grad);
	color: #fff;
}

.rpl-chal__txt {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.rpl-chal .t {
	color: var(--rp-blue-d);
	font-size: 11px;
	font-weight: 700;
}

.rpl-chal .n {
	font-size: 14px;
	font-weight: 800;
	line-height: 1.7;
}

.rpl-chal .f {
	color: var(--rp-muted);
	font-size: 12px;
}

.rpl-chal__scan {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(180deg, transparent 30%, color-mix(in srgb, var(--rp-accent) 38%, transparent) 50%, transparent 70%);
	transform: translateY(-110%);
}

/* اتصال‌های جریان داده */
.rpl-beam {
	flex: none;
	width: 2px;
	height: 18px;
	margin-inline: auto;
	background-image: repeating-linear-gradient(180deg, var(--rp-blue) 0 4px, transparent 4px 8px);
	background-size: 2px 8px;
	opacity: .6;
}

.rpl-scene.is-active .rpl-beam {
	animation: rp-beam .55s linear infinite;
}

/* موتور و پنج محور */
.rpl-pipe {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	border-radius: var(--rp-r);
	background: linear-gradient(100deg, color-mix(in srgb, var(--rp-blue) 10%, #fff), color-mix(in srgb, var(--rp-accent) 12%, #fff));
}

.rpl-pipe__core {
	position: relative;
	display: grid;
	place-items: center;
	flex: none;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--rp-grad);
	color: #fff;
}

.rpl-pipe__core::before,
.rpl-pipe__core::after {
	content: "";
	position: absolute;
	border-radius: 50%;
}

.rpl-pipe__core::before {
	inset: -6px;
	border: 2px dashed color-mix(in srgb, var(--rp-blue) 55%, transparent);
}

.rpl-pipe__core::after {
	inset: 0;
	border: 2px solid var(--rp-accent);
	opacity: 0;
}

.rpl-scene.is-active .rpl-pipe__core::before {
	animation: rp-spin 6s linear infinite;
}

.rpl-scene.is-active .rpl-pipe__core::after {
	animation: rp-ping 1.6s ease-out infinite;
}

.rpl-pipe__axes {
	display: flex;
	flex: 1;
	flex-wrap: wrap;
	gap: 6px;
}

.rpl-ax--domain, .rpl-seg--domain { --ax: var(--rp-c1); }
.rpl-ax--skills, .rpl-seg--skills { --ax: var(--rp-c3); }
.rpl-ax--semantic, .rpl-seg--semantic { --ax: var(--rp-c5); }
.rpl-ax--experience, .rpl-seg--experience { --ax: var(--rp-c4); }
.rpl-ax--availability, .rpl-seg--availability { --ax: var(--rp-c6); }

.rpl-ax {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 3px 10px;
	border: 1px solid color-mix(in srgb, var(--ax) 32%, #fff);
	border-radius: 999px;
	background: color-mix(in srgb, var(--ax) 14%, #fff);
	color: color-mix(in srgb, var(--ax) 78%, #000);
	font-size: 11px;
	font-weight: 700;
}

.rpl-ax i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--ax);
}

.rpl-scene.is-active .rpl-ax {
	animation: rp-ax .45s calc(1.1s + var(--i) * .3s) ease both;
}

/* نتیجه‌ها */
.rpl-res {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-block-start: 8px;
}

.rpl-row {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: #fff;
	transition: border-color .15s ease;
}

.rp-wrap a.rpl-row:hover {
	border-color: var(--rp-blue-l);
}

.rpl-row .rpl-av {
	width: 36px;
	height: 36px;
	font-size: 14px;
}

.rpl-row__who {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.rpl-row__who b {
	font-size: 13px;
	line-height: 1.5;
}

.rpl-row__who i {
	color: var(--rp-muted);
	font-size: 11px;
	font-style: normal;
	line-height: 1.5;
}

.rpl-row__axes {
	display: flex;
	gap: 4px;
	margin-block-start: 6px;
}

.rpl-seg {
	flex: 1;
	height: 5px;
	overflow: hidden;
	border-radius: 99px;
	background: color-mix(in srgb, var(--ax) 14%, #fff);
}

.rpl-seg i {
	display: block;
	width: var(--v);
	height: 100%;
	border-radius: inherit;
	background: var(--ax);
}

.rpl-row__pct {
	display: flex;
	align-items: baseline;
	justify-content: flex-end;
	min-width: 52px;
	color: var(--rp-blue-d);
	font-size: 20px;
	font-weight: 800;
	font-feature-settings: "tnum";
}

.rpl-row__pct small {
	font-size: 11px;
	font-weight: 700;
}

.rpl-row.is-best {
	border-color: var(--rp-blue);
	background: linear-gradient(135deg, var(--rp-tint), #fff);
}

.rpl-row__best {
	position: absolute;
	inset-block-start: -9px;
	inset-inline-end: 12px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 1px 10px;
	border-radius: 999px;
	background: var(--rp-c4);
	color: #fff;
	font-size: 10px;
	font-weight: 800;
}

.rpl-row__best .rp-ic {
	width: 11px;
	height: 11px;
}

.rpl-scene.is-active .rpl-row {
	animation: rp-in-up .5s calc(2.5s + var(--r) * .32s) ease both;
}

.rpl-scene.is-active .rpl-row.is-best {
	animation: rp-in-up .5s 2.5s ease both, rp-glow 2.4s 4.4s ease-in-out infinite;
}

.rpl-scene.is-active .rpl-seg i {
	animation: rp-grow .9s calc(2.7s + var(--r, 0) * .32s + var(--s) * .09s) cubic-bezier(.2, .8, .2, 1) both;
}

.rpl-scene.is-active .rpl-row {
	--r2: 0;
}

/* حالت بدون چالش: اسکلت */
.rpl-row--ghost .rpl-av {
	background: var(--rp-soft);
}

.rpl-row--ghost b,
.rpl-row--ghost i {
	display: block;
	height: 8px;
	margin-block: 4px;
	border-radius: 4px;
	background: linear-gradient(90deg, var(--rp-soft), var(--rp-line), var(--rp-soft));
	background-size: 200% 100%;
}

.rpl-row--ghost b { width: 55%; }
.rpl-row--ghost i { width: 35%; }

.rpl-scene.is-active .rpl-row--ghost b,
.rpl-scene.is-active .rpl-row--ghost i {
	animation: rp-shimmer 1.4s linear infinite;
}

/* وضعیت متنی */
.rpl-status {
	position: relative;
	height: 32px;
	margin-block-start: 10px;
	overflow: hidden;
	border-radius: var(--rp-r-sm);
	background: var(--rp-soft);
	color: var(--rp-muted);
	font-size: 12px;
}

.rpl-status span {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
}

.rpl-status .s3 {
	opacity: 1;
	color: var(--rp-ok);
	font-weight: 700;
}

.rpl-scene.is-active .rpl-status .s1 { animation: rp-st 1.8s 0s both; }
.rpl-scene.is-active .rpl-status .s2 { animation: rp-st 1.8s 1.8s both; }
.rpl-scene.is-active .rpl-status .s3 { animation: rp-in-up .5s 3.6s both; }

/* نقطه‌های صحنه + نوار زمان */
.rpl-dots {
	display: flex;
	justify-content: center;
	gap: 6px;
}

.rpl-dots button {
	position: relative;
	width: 28px;
	height: 5px;
	padding: 0;
	overflow: hidden;
	border: 0;
	border-radius: 99px;
	background: var(--rp-line);
	cursor: pointer;
}

.rpl-dots button::after {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--rp-blue);
	transform: scaleX(0);
	transform-origin: right;
}

.rpl-dots button.is-on::after {
	animation: rp-timer var(--rp-cycle) linear both;
}

.rpl-panel.is-paused .rpl-dots button.is-on::after {
	animation-play-state: paused;
}

@keyframes rp-in-up {
	from { opacity: 0; transform: translateY(12px); }
}

@keyframes rp-out {
	to { opacity: 0; transform: translateY(-8px); }
}

@keyframes rp-scan {
	from { transform: translateY(-110%); }
	to { transform: translateY(110%); }
}

@keyframes rp-beam {
	to { background-position: 0 8px; }
}

@keyframes rp-ax {
	from { opacity: .35; transform: scale(.9); filter: grayscale(1); }
	60% { transform: scale(1.08); }
}

@keyframes rp-grow {
	from { width: 0; }
}

@keyframes rp-glow {
	0%, 100% { box-shadow: 0 0 0 0 transparent; }
	50% { box-shadow: 0 0 0 5px color-mix(in srgb, var(--rp-blue) 18%, transparent); }
}

@keyframes rp-st {
	0% { opacity: 0; transform: translateY(6px); }
	12%, 88% { opacity: 1; transform: none; }
	100% { opacity: 0; transform: translateY(-6px); }
}

@keyframes rp-timer {
	to { transform: scaleX(1); }
}

@keyframes rp-shimmer {
	to { background-position: -200% 0; }
}

.rpl-scene.is-active .rpl-chal {
	animation: rp-in-up .5s ease both;
}

.rpl-scene.is-active .rpl-chal__scan {
	animation: rp-scan 1.1s .5s ease-in-out both;
}

@media (prefers-reduced-motion: reduce) {
	.rpl-scene,
	.rpl-scene * ,
	.rpl-scene *::before,
	.rpl-scene *::after,
	.rpl-dots button::after {
		animation: none !important;
	}
}

@media (max-width: 640px) {
	.rpl-stage {
		min-height: 0;
	}

	.rpl-row__pct {
		font-size: 17px;
		min-width: 44px;
	}

	.rpl-pipe {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* =====================================================================
 * ۲۲. حوزه‌های تخصصی: دو ردیف متحرک (صفحهٔ اصلی)
 * ================================================================== */

.rpl-dom {
	padding-block: 56px 48px;
	overflow: hidden;
	border-block-end: 1px solid var(--rp-line);
	background: linear-gradient(180deg, #fff, color-mix(in srgb, var(--rp-blue) 4%, #fff));
}

.rpl-dom .rpl-row-head {
	margin-block-end: 28px;
}

.rpl-dom__rows {
	display: grid;
	gap: 14px;
}

.rpl-dom__row {
	position: relative;
	direction: ltr;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.rpl-dom__track {
	display: flex;
	width: max-content;
	animation: rp-marq var(--dur, 60s) linear infinite;
	will-change: transform;
}

.rpl-dom__row.is-rev .rpl-dom__track {
	animation-direction: reverse;
}

.rpl-dom__row:nth-child(2) .rpl-dom__track {
	animation-delay: -17s;
}

.rpl-dom__set {
	display: flex;
	flex: none;
	gap: 12px;
	padding-inline-end: 12px;
}

.rpl-dom__row:hover .rpl-dom__track,
.rpl-dom__row:focus-within .rpl-dom__track,
.rpl-dom__row:active .rpl-dom__track {
	animation-play-state: paused;
}

.rpl-dom__chip {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: 10px;
	direction: rtl;
	padding: 12px 22px;
	border: 1px solid color-mix(in srgb, var(--tone, var(--rp-blue)) 28%, #fff);
	border-radius: 999px;
	background: color-mix(in srgb, var(--tone, var(--rp-blue)) 8%, #fff);
	color: color-mix(in srgb, var(--tone, var(--rp-blue)) 70%, #000);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
	transition: transform .2s ease, background-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.rp-wrap a.rpl-dom__chip {
	color: color-mix(in srgb, var(--tone, var(--rp-blue)) 70%, #000);
}

.rpl-dom__chip i {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--tone, var(--rp-blue));
}

.rp-wrap a.rpl-dom__chip:hover,
.rp-wrap a.rpl-dom__chip:focus-visible {
	background: var(--tone, var(--rp-blue));
	color: #fff;
	transform: translateY(-3px);
	box-shadow: 0 14px 24px -14px var(--tone, var(--rp-blue));
}

.rpl-dom__chip:hover i,
.rpl-dom__chip:focus-visible i {
	background: #fff;
}

.rpl-dom__chip:nth-child(6n+1) { --tone: var(--rp-c1); }
.rpl-dom__chip:nth-child(6n+2) { --tone: var(--rp-c3); }
.rpl-dom__chip:nth-child(6n+3) { --tone: var(--rp-c4); }
.rpl-dom__chip:nth-child(6n+4) { --tone: var(--rp-c5); }
.rpl-dom__chip:nth-child(6n+5) { --tone: var(--rp-c6); }
.rpl-dom__chip:nth-child(6n+6) { --tone: var(--rp-c2); }

@keyframes rp-marq {
	to { transform: translateX(-50%); }
}

/* بدون حرکت: ردیف‌ها با دست اسکرول می‌شوند و نسخهٔ تکراری پنهان است */
@media (prefers-reduced-motion: reduce) {
	.rpl-dom__row {
		overflow-x: auto;
		-webkit-mask-image: none;
		mask-image: none;
		scrollbar-width: thin;
	}

	.rpl-dom__track {
		animation: none;
	}

	.rpl-dom__set[aria-hidden="true"] {
		display: none;
	}
}

@media (max-width: 640px) {
	.rpl-dom {
		padding-block: 40px 32px;
	}

	.rpl-dom__chip {
		padding: 9px 16px;
		font-size: 13px;
	}

	.rpl-dom__track {
		animation-duration: calc(var(--dur, 60s) * .8);
	}
}

/* =====================================================================
 * ۲۳. کارت‌های تالار در صفحهٔ اصلی
 * ================================================================== */

.rpl-forum {
	flex-direction: column;
	align-items: stretch;
	gap: 16px;
	padding: 28px;
}

.rpl-forum__top {
	display: flex;
	align-items: center;
	gap: 16px;
}

.rpl-forum__stats {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 18px;
	color: var(--rp-muted);
	font-size: 13px;
}

.rpl-forum__stats b {
	color: var(--tone, var(--rp-blue));
	font-size: 20px;
	font-weight: 800;
}

.rpl-forum__lock {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-inline-start: auto;
	padding: 2px 12px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--rp-c3) 16%, #fff);
	color: color-mix(in srgb, var(--rp-c3) 70%, #000);
	font-size: 12px;
	font-weight: 700;
}

.rpl-forum__lock .rp-ic {
	width: 14px;
	height: 14px;
}

.rpl-forum__list {
	display: grid;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.rpl-forum__list li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 14px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r-sm);
	background: var(--rp-soft);
	color: var(--rp-ink);
	font-size: 14px;
	font-weight: 600;
	transition: border-color .15s ease, background-color .15s ease;
}

.rp-wrap .rpl-forum__list li a {
	color: var(--rp-ink);
}

.rpl-forum__list li a:hover {
	border-color: var(--tone, var(--rp-blue));
	background: #fff;
}

.rpl-forum__list small {
	flex: none;
	color: var(--rp-muted);
	font-size: 12px;
	font-weight: 600;
}

.rpl-forum__list .is-note {
	padding: 12px 14px;
	border: 1px dashed var(--rp-line);
	border-radius: var(--rp-r-sm);
	color: var(--rp-muted);
	font-size: 13px;
}

.rpl-forum__cta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-block-start: auto;
}

/* =====================================================================
 * ۲۴. صفحهٔ تالار
 * ================================================================== */

.rp-hp {
	position: absolute !important;
	inset-inline-start: -9999px;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.rp-forum > .rp-tabs,
.rp-forum > .rp-topics,
.rp-forum > .rp-topic,
.rp-forum > .rp-replies,
.rp-forum > .rp-newtopic,
.rp-forum > .rp-filters {
	margin-inline: var(--rp-gutter);
}

.rp-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-block-end: 22px;
}

.rp-tab {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 20px;
	border: 1px solid var(--rp-line);
	border-radius: 999px;
	background: #fff;
	font-size: 14px;
	font-weight: 700;
	transition: border-color .15s ease, background-color .15s ease;
}

.rp-wrap a.rp-tab {
	color: var(--rp-ink);
}

.rp-tab small {
	display: inline-grid;
	place-items: center;
	min-width: 24px;
	height: 22px;
	padding: 0 8px;
	border-radius: 999px;
	background: var(--rp-soft);
	color: var(--rp-muted);
	font-size: 12px;
}

.rp-tab:hover {
	border-color: var(--rp-blue-l);
}

.rp-wrap a.rp-tab.is-on {
	border-color: transparent;
	background: var(--rp-btn-bg, var(--rp-blue));
	color: var(--rp-btn-fg, #fff);
}

.rp-tab.is-on small {
	background: rgba(255, 255, 255, .22);
	color: inherit;
}

.rp-topics {
	display: grid;
	gap: 12px;
	margin-block-end: 28px;
}

.rp-trow {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 22px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.rp-wrap a.rp-trow {
	color: var(--rp-ink);
}

.rp-wrap a.rp-trow:hover {
	border-color: var(--rp-blue-l);
	box-shadow: var(--rp-shadow);
	transform: translateY(-2px);
}

.rp-trow__main {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.rp-trow__main b {
	font-size: 16px;
	line-height: 1.6;
}

.rp-trow__ex {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: var(--rp-muted);
	font-size: 14px;
}

.rp-trow__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	color: var(--rp-muted);
	font-size: 12px;
}

.rp-trow__count {
	display: flex;
	flex: none;
	flex-direction: column;
	align-items: center;
	min-width: 62px;
	padding: 8px 12px;
	border-radius: var(--rp-r-sm);
	background: color-mix(in srgb, var(--rp-blue) 8%, #fff);
	color: var(--rp-blue-d);
}

.rp-trow__count b {
	font-size: 20px;
	line-height: 1.3;
}

.rp-trow__count small {
	font-size: 11px;
}

.rp-topic {
	margin-block-end: 28px;
	padding: 26px 30px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rp-topic__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin-block-end: 18px;
	padding-block-end: 16px;
	border-block-end: 1px solid var(--rp-line);
}

.rp-topic__who {
	display: flex;
	flex: 1;
	flex-direction: column;
}

.rp-topic__who i,
.rp-reply__meta i {
	color: var(--rp-muted);
	font-size: 12px;
	font-style: normal;
}

.rp-topic__body,
.rp-reply__text {
	font-size: 15px;
	line-height: 2;
}

.rp-topic__body p,
.rp-reply__text p {
	margin: 0 0 .8em;
}

.rp-replies {
	display: grid;
	gap: 12px;
	margin-block-end: 28px;
}

.rp-reply {
	display: flex;
	gap: 14px;
	padding: 18px 22px;
	border: 1px solid var(--rp-line);
	border-radius: var(--rp-r);
	background: #fff;
}

.rp-reply:target {
	border-color: var(--rp-blue);
	box-shadow: 0 0 0 3px var(--rp-tint-2);
}

.rp-reply__main {
	flex: 1;
	min-width: 0;
}

.rp-reply__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-block-end: 6px;
}

.rp-reply-form,
.rp-newtopic .rp-form {
	padding: 24px;
	border: 1px solid color-mix(in srgb, var(--rp-blue) 18%, #fff);
	border-radius: var(--rp-r);
	background: linear-gradient(180deg, color-mix(in srgb, var(--rp-blue) 4%, #fff), #fff);
}

.rp-newtopic {
	scroll-margin-top: 100px;
	margin-block-end: 8px;
}

@media (max-width: 640px) {
	.rp-trow {
		flex-wrap: wrap;
		padding: 16px;
	}

	.rp-trow__count {
		flex-direction: row;
		gap: 6px;
		min-width: 0;
	}

	.rp-topic,
	.rp-reply {
		padding: 18px;
	}

	.rpl-forum {
		padding: 22px;
	}
}

/* =====================================================================
 * ۲۵. لایهٔ ایمنی: رنگ و هاور صریح برای همهٔ دکمه‌ها و پیوندها
 *     (تا ریست دکمه‌های قالب مثل Hello Elementor یا رنگ پیوندهای قالب اثر نگذارد.)
 * ================================================================== */

body .rp-wrap a,
body .rpl-chrome a,
body .rpl-chrome-foot a,
body .rpl-nav a,
body .rp-modal a {
	text-decoration: none;
}

body .rp-wrap button,
body .rpl-chrome button,
body .rpl-chrome-foot button,
body .rp-modal button,
body .rp-wrap input[type="submit"] {
	font-family: inherit;
	letter-spacing: 0;
	text-transform: none;
	text-shadow: none;
	box-shadow: none;
}

/* ---- اصلی ---- */
body .rp-btn--primary,
body .rpl-btn--primary,
body .rp-btn--primary:visited,
body .rpl-btn--primary:visited {
	background: var(--rp-btn-bg, var(--rp-blue));
	border: 1px solid transparent;
	color: var(--rp-btn-fg, #fff);
}

body .rp-btn--primary:hover,
body .rp-btn--primary:focus,
body .rp-btn--primary:active,
body .rpl-btn--primary:hover,
body .rpl-btn--primary:focus,
body .rpl-btn--primary:active {
	background: var(--rp-btn-bg-h, var(--rp-blue-d));
	border-color: transparent;
	color: var(--rp-btn-fg-h, var(--rp-btn-fg, #fff));
}

/* ---- خط‌دار ---- */
body .rp-btn--outline,
body .rpl-btn--outline {
	background: #fff;
	border: 1px solid color-mix(in srgb, var(--rp-ink) 22%, #fff);
	color: var(--rp-ink);
}

body .rp-btn--outline:hover,
body .rp-btn--outline:focus,
body .rp-btn--outline:active,
body .rpl-btn--outline:hover,
body .rpl-btn--outline:focus,
body .rpl-btn--outline:active {
	background: var(--rp-tint);
	border-color: var(--rp-blue);
	color: var(--rp-blue-d);
}

/* ---- بدون زمینه (مثل «خروج» و «پاک‌کردن») ---- */
body .rp-btn--ghost,
body .rpl-btn--ghost {
	background: transparent;
	border: 1px solid color-mix(in srgb, var(--rp-ink) 18%, #fff);
	color: var(--rp-ink);
}

body .rp-btn--ghost:hover,
body .rp-btn--ghost:focus,
body .rp-btn--ghost:active,
body .rpl-btn--ghost:hover,
body .rpl-btn--ghost:focus,
body .rpl-btn--ghost:active {
	background: var(--rp-soft);
	border-color: var(--rp-blue-l);
	color: var(--rp-blue-d);
}

/* «خروج» در سربرگ: هاور قرمز ملایم */
body .rpl-chrome .rpl-btn--ghost {
	border-color: color-mix(in srgb, var(--rp-c6) 35%, #fff);
	color: color-mix(in srgb, var(--rp-c6) 80%, #000);
}

body .rpl-chrome .rpl-btn--ghost:hover,
body .rpl-chrome .rpl-btn--ghost:focus,
body .rpl-chrome .rpl-btn--ghost:active {
	background: color-mix(in srgb, var(--rp-c6) 12%, #fff);
	border-color: var(--rp-c6);
	color: color-mix(in srgb, var(--rp-c6) 85%, #000);
}

/* ---- روی زمینهٔ تیره ---- */
body .rpl-btn--ondark {
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .55);
	color: #fff;
}

body .rpl-btn--ondark:hover,
body .rpl-btn--ondark:focus,
body .rpl-btn--ondark:active {
	background: rgba(255, 255, 255, .18);
	border-color: #fff;
	color: #fff;
}

body .rpl-band .rpl-btn--primary,
body .rpl-band .rpl-btn--primary:visited {
	background: #fff;
	border-color: #fff;
	color: var(--rp-blue-d);
}

body .rpl-band .rpl-btn--primary:hover,
body .rpl-band .rpl-btn--primary:focus,
body .rpl-band .rpl-btn--primary:active {
	background: var(--rp-tint);
	border-color: var(--rp-tint);
	color: var(--rp-blue-d);
}

/* ---- ناوبری سربرگ ---- */
body .rpl-chrome__brand,
body .rpl-chrome__brand:hover {
	color: var(--rp-ink);
}

body .rpl-chrome__nav a,
body .rpl-nav a {
	color: color-mix(in srgb, var(--rp-ink) 78%, #fff);
}

body .rpl-chrome__nav a:hover,
body .rpl-chrome__nav a:focus,
body .rpl-nav a:hover,
body .rpl-nav a:focus {
	background: var(--rp-tint);
	color: var(--rp-blue-d);
}

body .rpl-nav a.is-go,
body .rpl-nav a.is-go:hover,
body .rpl-nav a.is-go:focus {
	color: var(--rp-btn-fg, #fff);
}

/* ---- پاصفحه: متن روشن روی زمینهٔ تیره ---- */
body .rpl-chrome-foot {
	color: #cbd5e1;
}

body .rpl-chrome-foot b,
body .rpl-chrome-foot .rpl-chrome-foot__brand,
body .rpl-chrome-foot .rpl-chrome-foot__brand b {
	color: #fff;
}

body .rpl-chrome-foot .rpl-chrome-foot__about p,
body .rpl-chrome-foot .rpl-chrome-foot__bottom,
body .rpl-chrome-foot .rpl-chrome-foot__bottom span {
	color: #b9c6da;
}

body .rpl-chrome-foot .rpl-chrome-foot__col a,
body .rpl-chrome-foot .rpl-chrome-foot__bottom a {
	color: #c3cfe2;
}

body .rpl-chrome-foot .rpl-chrome-foot__col a:hover,
body .rpl-chrome-foot .rpl-chrome-foot__col a:focus,
body .rpl-chrome-foot .rpl-chrome-foot__bottom a:hover,
body .rpl-chrome-foot .rpl-chrome-foot__bottom a:focus {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 4px;
}

body .rpl-chrome-foot .rpl-btn--outline {
	background: transparent;
	border-color: rgba(255, 255, 255, .5);
	color: #fff;
}

body .rpl-chrome-foot .rpl-btn--outline:hover,
body .rpl-chrome-foot .rpl-btn--outline:focus {
	background: rgba(255, 255, 255, .16);
	border-color: #fff;
	color: #fff;
}

/* ---- اجزای کوچک ---- */
body .rp-pagination a.rp-page {
	background: #fff;
	color: var(--rp-ink);
}

body .rp-pagination a.rp-page:hover,
body .rp-pagination a.rp-page:focus {
	background: var(--rp-tint);
	border-color: var(--rp-blue);
	color: var(--rp-blue-d);
}

body .rp-wrap a.rp-tab:hover,
body .rp-wrap a.rp-tab:focus {
	background: var(--rp-tint);
	color: var(--rp-blue-d);
}

body .rp-wrap a.rp-tab.is-on:hover {
	background: var(--rp-btn-bg-h, var(--rp-blue-d));
	color: var(--rp-btn-fg, #fff);
}

body .rp-wrap a.rp-chip:hover,
body .rp-wrap a.rpl-chip:hover {
	background: var(--rp-tint);
	border-color: var(--rp-blue);
	color: var(--rp-blue-d);
}

body .rp-modal__close {
	background: #fff;
	border: 1px solid var(--rp-line);
	color: var(--rp-ink);
}

body .rp-modal__close:hover,
body .rp-modal__close:focus {
	background: var(--rp-tint);
	border-color: var(--rp-blue);
	color: var(--rp-blue-d);
}

body .rpl-dots button {
	background: var(--rp-line);
	border: 0;
}

body .rpl-dots button:hover,
body .rpl-dots button:focus {
	background: color-mix(in srgb, var(--rp-blue) 35%, #fff);
}

body .rp-btn[disabled],
body .rp-btn:disabled {
	background: var(--rp-soft);
	border-color: var(--rp-line);
	color: var(--rp-muted);
}

/* ---- هدر و فوتر قالب در صفحه‌های دارای سربرگ افزونه پنهان‌اند ---- */
body.rp-canvas-area .site-header,
body.rp-canvas-area #masthead,
body.rp-canvas-area header.wp-block-template-part,
body.rp-canvas-area .elementor-location-header,
body.rp-canvas-area .site-footer,
body.rp-canvas-area #colophon,
body.rp-canvas-area footer.wp-block-template-part,
body.rp-canvas-area .elementor-location-footer {
	display: none !important;
}

/* =====================================================================
 * ۲۶. پالت رسمی: چهار رنگ آبی
 *     #0D47A1 (اصلی) · #2196F3 (مکمل) · #90CAF9 (آبی روشن) · #E3F2FD (زمینهٔ ملایم)
 *     مقدارها از «تنظیمات افزونه ← رنگ‌ها» تعیین می‌شوند (متغیرهای --rp-blue/-accent/-sky/-mist).
 * ================================================================== */

:root {
	--rp-blue: #0d47a1;
	--rp-accent: #2196f3;
	--rp-sky: #90caf9;
	--rp-mist: #e3f2fd;

	--rp-blue-d: color-mix(in srgb, var(--rp-blue) 82%, #000);
	--rp-blue-l: var(--rp-accent);
	--rp-tint: var(--rp-mist);
	--rp-tint-2: color-mix(in srgb, var(--rp-sky) 55%, #fff);
	--rp-line: color-mix(in srgb, var(--rp-sky) 55%, #fff);
	--rp-soft: color-mix(in srgb, var(--rp-mist) 45%, #fff);
	--rp-bg: var(--rp-soft);

	/* همهٔ رنگ‌های تزئینی به‌نوبت میان آبی اصلی و مکمل */
	--rp-c1: var(--rp-blue);
	--rp-c2: var(--rp-accent);
	--rp-c3: var(--rp-blue);
	--rp-c4: var(--rp-accent);
	--rp-c5: var(--rp-blue);
	--rp-c6: var(--rp-accent);

	--rp-night: color-mix(in srgb, var(--rp-blue) 62%, #000);
	--rp-night-2: var(--rp-blue);
	--rp-grad: linear-gradient(135deg, var(--rp-blue) 0%, var(--rp-accent) 100%);
	--rp-grad-warm: linear-gradient(135deg, var(--rp-blue) 0%, var(--rp-accent) 100%);
	--rp-wash: linear-gradient(180deg, var(--rp-mist) 0%, #fff 100%);
	--rp-shadow: 0 18px 40px -28px color-mix(in srgb, var(--rp-blue) 55%, transparent);
}

body.rp-area {
	background: var(--rp-mist);
}

/* ---- بخش‌ها و زمینه‌ها ---- */
.rpl-sec--alt,
.rpl-dom {
	background: linear-gradient(180deg, var(--rp-mist), #fff);
	border-block-color: var(--rp-line);
}

.rpl-hero {
	background:
		radial-gradient(640px 360px at 8% 0%, color-mix(in srgb, var(--rp-sky) 45%, transparent), transparent 70%),
		linear-gradient(180deg, var(--rp-mist), #fff 80%);
}

.rpl-hero::before {
	background: color-mix(in srgb, var(--rp-sky) 55%, transparent);
}

.rpl-hero::after {
	background: color-mix(in srgb, var(--rp-accent) 28%, transparent);
}

.rpl-band,
.rp-auth2__aside,
.rpl-mission {
	background:
		radial-gradient(520px 260px at 10% 0%, color-mix(in srgb, var(--rp-accent) 45%, transparent), transparent 70%),
		linear-gradient(135deg, var(--rp-night), var(--rp-blue));
}

.rpl-chrome-foot {
	background:
		radial-gradient(900px 340px at 85% 0%, color-mix(in srgb, var(--rp-accent) 30%, transparent), transparent 70%),
		linear-gradient(180deg, var(--rp-blue), var(--rp-night));
	border-color: var(--rp-night);
}

body .rpl-chrome-foot .rpl-chrome-foot__about p,
body .rpl-chrome-foot .rpl-chrome-foot__bottom,
body .rpl-chrome-foot .rpl-chrome-foot__bottom span {
	color: var(--rp-mist);
}

body .rpl-chrome-foot .rpl-chrome-foot__col a,
body .rpl-chrome-foot .rpl-chrome-foot__bottom a {
	color: var(--rp-sky);
}

.rpl-chrome::after {
	background: linear-gradient(90deg, var(--rp-blue), var(--rp-accent), var(--rp-sky), var(--rp-accent), var(--rp-blue));
	background-size: 200% 100%;
}

/* ---- عنصرهای تزئینی چندرنگ ← آبی ---- */
.rp-av,
.rpl-av {
	background: linear-gradient(135deg, var(--rp-blue), var(--rp-accent));
	color: #fff;
}

.rp-av--g2 { background: linear-gradient(135deg, var(--rp-accent), var(--rp-blue)); color: #fff; }
.rp-av--g3 { background: var(--rp-sky); color: var(--rp-blue-d); }
.rp-av--g4 { background: var(--rp-mist); color: var(--rp-blue); box-shadow: inset 0 0 0 1px var(--rp-sky); }

.rpl-slogan {
	background: linear-gradient(135deg, var(--rp-mist), color-mix(in srgb, var(--rp-sky) 40%, #fff));
	border-color: var(--rp-sky);
}

.rpl-slogan__t {
	background: var(--rp-blue);
}

.rpl-slogan strong {
	background: none;
	-webkit-text-fill-color: var(--rp-blue-d);
	color: var(--rp-blue-d);
}

.rpl-forum__lock {
	background: var(--rp-mist);
	color: var(--rp-blue);
}

.rpl-gcard--ex.is-hot .rpl-badge-match,
.rpl-row__best,
.rpl-cmp__flag {
	background: var(--rp-blue);
	color: #fff;
}

.rpl-live-dot {
	background: var(--rp-accent);
}

.rpl-live-dot::after {
	color: var(--rp-accent);
}

.rpl-status .s3,
.rpl-sol__out {
	color: var(--rp-blue);
}

.rp-reason::before,
.rpl-reason::before {
	background: var(--rp-accent);
}

.rpl-tags span:nth-child(n) {
	background: var(--rp-mist);
	color: var(--rp-blue-d);
}

/* ---- پنج محور موتور تطبیق: پنج سایهٔ آبی ---- */
.rpl-ax--domain, .rpl-seg--domain { --ax: var(--rp-blue); }
.rpl-ax--skills, .rpl-seg--skills { --ax: var(--rp-accent); }
.rpl-ax--semantic, .rpl-seg--semantic { --ax: var(--rp-sky); }
.rpl-ax--experience, .rpl-seg--experience { --ax: color-mix(in srgb, var(--rp-blue) 60%, var(--rp-sky)); }
.rpl-ax--availability, .rpl-seg--availability { --ax: color-mix(in srgb, var(--rp-accent) 60%, var(--rp-sky)); }

.rpl-ax {
	color: var(--rp-blue-d);
}

/* ---- فرم‌ها و کارت‌ها ---- */
.rp-kicker,
.rpl-kicker {
	background: var(--rp-mist);
	color: var(--rp-blue);
}

.rp-filters,
.rp-reply-form,
.rp-newtopic .rp-form {
	background: var(--rp-mist);
	border-color: var(--rp-line);
}

.rp-head,
.rp-dash__head {
	background:
		radial-gradient(520px 200px at 100% 0%, color-mix(in srgb, var(--rp-sky) 40%, transparent), transparent 70%),
		linear-gradient(180deg, var(--rp-mist), #fff);
	border-block-end-color: var(--rp-line);
}

.rp-card,
.rpl-sol,
.rpl-value,
.rpl-step,
.rpl-forum,
.rpl-stat,
.rp-step,
.rp-trow,
.rp-topic,
.rp-reply,
.rp-match,
.rp-pitch,
.rpl-cmp {
	border-color: var(--rp-line);
}

.rp-notice--info {
	background: var(--rp-mist);
	border-color: var(--rp-sky);
	border-inline-start-color: var(--rp-blue);
}

.rp-input--otp:focus,
.rp-wrap input:focus,
.rp-wrap select:focus,
.rp-wrap textarea:focus {
	border-color: var(--rp-accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--rp-sky) 55%, transparent);
}

.rp-wrap :focus-visible,
.rp-modal :focus-visible,
.rpl-chrome :focus-visible,
.rpl-chrome-foot :focus-visible {
	outline-color: var(--rp-accent);
}

/* =====================================================================
 * ۲۷. گرافیک و انیمیشن‌های مرتبط با محتوا (صفحهٔ اصلی)
 *     مقطع معدن + جریان داده ← تصمیم، آیکن‌های متحرک محورها، حباب گفتگو، رادار فناوری و نمودار ارزش.
 *     رنگ‌ها فقط از پالت آبی؛ همهٔ حرکت‌ها با «کاهش حرکت» خاموش می‌شوند.
 * ================================================================== */

svg [class] {
	transform-box: fill-box;
}

/* ---- هیرو: مقطع زمین، شفت، حفاری و گره‌های داده ---- */
.rpl-hero__art {
	position: absolute;
	inset: auto 0 0 0;
	z-index: -1;
	height: 62%;
	pointer-events: none;
}

.rpl-hero__art svg {
	display: block;
	width: 100%;
	height: 100%;
}

.rpl-hero__art .st1 { fill: color-mix(in srgb, var(--rp-sky) 38%, transparent); }
.rpl-hero__art .st2 { fill: color-mix(in srgb, var(--rp-sky) 55%, transparent); }
.rpl-hero__art .st3 { fill: color-mix(in srgb, var(--rp-accent) 24%, transparent); }
.rpl-hero__art .st4 { fill: color-mix(in srgb, var(--rp-blue) 18%, transparent); }

.rpl-hero__art .st1 { animation: rp-strata 14s ease-in-out infinite alternate; }
.rpl-hero__art .st2 { animation: rp-strata 18s ease-in-out -4s infinite alternate-reverse; }
.rpl-hero__art .st3 { animation: rp-strata 22s ease-in-out -9s infinite alternate; }

.rpl-hero__art .hf path,
.rpl-hero__art .wheel path,
.rpl-hero__art .wheel circle,
.rpl-hero__art .shaft {
	fill: none;
	stroke: color-mix(in srgb, var(--rp-blue) 32%, transparent);
	stroke-width: 3;
	stroke-linecap: round;
}

.rpl-hero__art .shaft {
	stroke-dasharray: 4 7;
}

.rpl-hero__art .wheel {
	transform-origin: center;
	animation: rp-spin 7s linear infinite;
}

.rpl-hero__art .drill path {
	fill: var(--rp-blue);
	stroke: var(--rp-blue);
	stroke-width: 3;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.rpl-hero__art .drill {
	animation: rp-drill 6s ease-in-out infinite;
}

.rpl-hero__art .flow {
	fill: none;
	stroke: var(--rp-accent);
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-dasharray: 4 9;
	opacity: .75;
	animation: rp-flowup 1.6s linear infinite;
}

.rpl-hero__art .ore circle:last-child {
	fill: var(--rp-accent);
}

.rpl-hero__art .ore .ring {
	fill: none;
	stroke: var(--rp-accent);
	stroke-width: 2;
	transform-origin: center;
	animation: rp-orering 2.6s ease-out infinite;
}

.rpl-hero__art .o2 .ring { animation-delay: -.6s; }
.rpl-hero__art .o3 .ring { animation-delay: -1.2s; }
.rpl-hero__art .o4 .ring { animation-delay: -1.8s; }
.rpl-hero__art .o5 .ring { animation-delay: -2.2s; }

.rpl-hero__art .bar {
	fill: var(--rp-blue);
	opacity: .7;
	transform-origin: 50% 100%;
	animation: rp-bar 3.2s ease-in-out infinite;
}

.rpl-hero__art .bar.b2 { animation-delay: .35s; fill: var(--rp-accent); }
.rpl-hero__art .bar.b3 { animation-delay: .7s; }

@keyframes rp-strata {
	to { transform: translateX(-34px); }
}

@keyframes rp-drill {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(120px); }
}

@keyframes rp-flowup {
	to { stroke-dashoffset: -26; }
}

@keyframes rp-orering {
	0% { transform: scale(.5); opacity: .9; }
	100% { transform: scale(2.6); opacity: 0; }
}

@keyframes rp-bar {
	0%, 100% { transform: scaleY(.55); }
	50% { transform: scaleY(1); }
}

/* ---- شش محور: تصویرسازی متحرک هر کارت ---- */
.rpl-sol__art {
	position: absolute;
	inset: 16px auto auto 18px;
	width: 62px;
	height: 62px;
	color: var(--tone, var(--rp-blue));
	opacity: .9;
}

.rpl-sol__art svg {
	width: 100%;
	height: 100%;
}

.rpl-sol__num {
	display: none;
}

.a-l1 { animation: rp-layer 3.2s ease-in-out infinite; }
.a-l2 { animation: rp-layer 3.2s ease-in-out -.5s infinite; }
.a-l3 { animation: rp-layer 3.2s ease-in-out -1s infinite; }
.a-orbit { transform-origin: 32px 32px; transform-box: view-box; animation: rp-spin 9s linear infinite; }
.a-bar { transform-origin: 50% 100%; animation: rp-bar 2.4s ease-in-out infinite; }
.a-bar:nth-child(2) { animation-delay: -.5s; }
.a-bar:nth-child(3) { animation-delay: -1s; }
.a-bar:nth-child(4) { animation-delay: -1.5s; }
.a-net { stroke-dasharray: 4 5; animation: rp-flowup 1.6s linear infinite; }
.a-node { transform-origin: center; animation: rp-node 2s ease-in-out infinite; }
.a-node:nth-child(2) { animation-delay: -.4s; }
.a-node:nth-child(3) { animation-delay: -.8s; }
.a-node:nth-child(4) { animation-delay: -1.2s; }
.a-node:nth-child(5) { animation-delay: -1.6s; }
.a-ripple { transform-origin: center; animation: rp-orering 2.4s ease-out infinite; }
.a-star { transform-origin: center; animation: rp-twinkle 2.6s ease-in-out infinite; }
.a-dot { animation: rp-rise 3s ease-in-out infinite; }
.a-dot.d2 { animation-delay: -1.4s; }

@keyframes rp-layer {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-4px); }
}

@keyframes rp-node {
	0%, 100% { transform: scale(1); }
	50% { transform: scale(1.35); }
}

@keyframes rp-twinkle {
	0%, 100% { transform: scale(.82) rotate(0); opacity: .75; }
	50% { transform: scale(1.1) rotate(18deg); opacity: 1; }
}

@keyframes rp-rise {
	0%, 100% { transform: translateY(0); opacity: .35; }
	50% { transform: translateY(-7px); opacity: 1; }
}

/* ---- مسیر سه‌مرحله‌ای: خط پیوستهٔ جریان ---- */
.rpl-steps {
	position: relative;
}

.rpl-steps::before {
	content: "";
	position: absolute;
	inset-inline: 16%;
	top: 64px;
	height: 3px;
	border-radius: 3px;
	background: repeating-linear-gradient(90deg, var(--rp-sky) 0 10px, transparent 10px 20px);
	background-size: 20px 3px;
	animation: rp-dash 1s linear infinite;
}

.rpl-step {
	position: relative;
	z-index: 1;
}

@keyframes rp-dash {
	to { background-position: -20px 0; }
}

/* ---- مأموریت: زنجیرهٔ داده ← ارزش با روشن شدن پله‌پله ---- */
.rpl-chain__step {
	transition: transform .3s ease, box-shadow .3s ease;
}

.rpl-mission.is-view .rpl-chain__step {
	animation: rp-chain 7.5s ease-in-out infinite;
}

.rpl-mission.is-view .rpl-chain__step:nth-of-type(1) { animation-delay: 0s; }
.rpl-mission.is-view .rpl-chain__step:nth-of-type(3) { animation-delay: 1.2s; }
.rpl-mission.is-view .rpl-chain__step:nth-of-type(5) { animation-delay: 2.4s; }
.rpl-mission.is-view .rpl-chain__step:nth-of-type(7) { animation-delay: 3.6s; }
.rpl-mission.is-view .rpl-chain__step:nth-of-type(9) { animation-delay: 4.8s; }

@keyframes rp-chain {
	0%, 18%, 100% { transform: scale(1); box-shadow: 0 0 0 0 transparent; }
	6% { transform: scale(1.1); box-shadow: 0 0 0 6px color-mix(in srgb, var(--rp-sky) 55%, transparent); }
}

/* ---- تالارها: حباب‌های گفتگو ---- */
.rpl-forum__art {
	position: absolute;
	inset: auto auto 14px 14px;
	width: 96px;
	height: 64px;
	opacity: .55;
	pointer-events: none;
}

.rpl-forum__art svg {
	width: 100%;
	height: 100%;
}

.rpl-forum__art .b1 { fill: var(--rp-mist); stroke: var(--rp-sky); stroke-width: 2; animation: rp-float 5s ease-in-out infinite; }
.rpl-forum__art .b2 { fill: var(--rp-sky); animation: rp-float 5s ease-in-out -2s infinite; }
.rpl-forum__art .dt { fill: #fff; animation: rp-typing 1.2s ease-in-out infinite; }
.rpl-forum__art .d2 { animation-delay: .2s; }
.rpl-forum__art .d3 { animation-delay: .4s; }

@keyframes rp-typing {
	0%, 60%, 100% { transform: translateY(0); opacity: .6; }
	30% { transform: translateY(-4px); opacity: 1; }
}

.rpl-forum__cta,
.rpl-forum__list,
.rpl-forum__stats,
.rpl-forum__top {
	position: relative;
	z-index: 1;
}

/* ---- فناوری‌ها: رادار / سنجش از دور ---- */
.rpl-tech-sec {
	position: relative;
	overflow: hidden;
}

.rpl-tech-sec > .rpl-in {
	position: relative;
	z-index: 1;
}

.rpl-tech-sec::before,
.rpl-tech-sec::after {
	content: "";
	position: absolute;
	inset-block-start: 50%;
	left: 50%;
	width: 980px;
	height: 980px;
	margin: -490px 0 0 -490px;
	border-radius: 50%;
	pointer-events: none;
}

.rpl-tech-sec::before {
	background: repeating-radial-gradient(circle at center, transparent 0 78px, color-mix(in srgb, var(--rp-sky) 55%, transparent) 78px 79px);
	-webkit-mask-image: radial-gradient(circle, #000 20%, transparent 70%);
	mask-image: radial-gradient(circle, #000 20%, transparent 70%);
}

.rpl-tech-sec::after {
	background: conic-gradient(from 0deg, transparent 0 78%, color-mix(in srgb, var(--rp-accent) 24%, transparent) 100%);
	-webkit-mask-image: radial-gradient(circle, #000 15%, transparent 68%);
	mask-image: radial-gradient(circle, #000 15%, transparent 68%);
	animation: rp-spin 9s linear infinite;
}

.rpl-tech {
	background: rgba(255, 255, 255, .9);
}

/* ---- شعار: نمودار داده ← ارزش که کشیده می‌شود ---- */
.rpl-slogan {
	isolation: isolate;
}

.rpl-slogan__chart {
	position: absolute;
	inset: auto 20px 0 auto;
	z-index: -1;
	width: min(46%, 440px);
	opacity: .7;
}

.rpl-slogan__chart .area {
	fill: color-mix(in srgb, var(--rp-sky) 35%, transparent);
	opacity: 0;
}

.rpl-slogan__chart .line {
	fill: none;
	stroke: var(--rp-accent);
	stroke-width: 3;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 1;
	stroke-dashoffset: 1;
}

.rpl-slogan__chart .pt {
	fill: var(--rp-blue);
	opacity: 0;
	transform-origin: center;
}

.rpl-slogan.is-view .rpl-slogan__chart .line { animation: rp-draw 3.2s .2s ease-out forwards; }
.rpl-slogan.is-view .rpl-slogan__chart .area { animation: rp-fade 1.2s 2.4s ease-out forwards; }
.rpl-slogan.is-view .rpl-slogan__chart .pt { animation: rp-pop .6s ease-out forwards; }
.rpl-slogan.is-view .rpl-slogan__chart .pt:nth-of-type(1) { animation-delay: 1.1s; }
.rpl-slogan.is-view .rpl-slogan__chart .pt:nth-of-type(2) { animation-delay: 1.9s; }
.rpl-slogan.is-view .rpl-slogan__chart .pt:nth-of-type(3) { animation-delay: 2.8s; }

@keyframes rp-draw { to { stroke-dashoffset: 0; } }
@keyframes rp-fade { to { opacity: 1; } }
@keyframes rp-pop {
	0% { opacity: 0; transform: scale(0); }
	100% { opacity: 1; transform: scale(1); }
}

/* ---- حالت آمادهٔ متخصص در موتور تطبیق ---- */
.rpl-row__pct.is-ready {
	min-width: 0;
	padding: 2px 12px;
	border-radius: 999px;
	background: var(--rp-mist);
	color: var(--rp-blue);
	font-size: 12px;
	font-weight: 700;
}

/* ---- بدون حرکت: همهٔ گرافیک‌ها ثابت ---- */
@media (prefers-reduced-motion: reduce) {
	.rpl-hero__art *,
	.rpl-sol__art *,
	.rpl-forum__art *,
	.rpl-steps::before,
	.rpl-tech-sec::after,
	.rpl-chain__step {
		animation: none !important;
	}

	.rpl-slogan__chart .line { stroke-dashoffset: 0; }
	.rpl-slogan__chart .area,
	.rpl-slogan__chart .pt { opacity: 1; }
}

@media (max-width: 1024px) {
	.rpl-hero__art { height: 40%; }
	.rpl-steps::before { display: none; }
	.rpl-slogan__chart { width: 70%; opacity: .35; }
}

@media (max-width: 640px) {
	.rpl-tech-sec::before,
	.rpl-tech-sec::after { width: 640px; height: 640px; margin: -320px 0 0 -320px; }
	.rpl-forum__art { display: none; }
}

/* =====================================================================
 * ۲۸. هیرو: هدف سایت در یک نگاه
 * ================================================================== */

.rp-wrap .rpl-h1 {
	font-size: clamp(28px, 2.7vw, 42px);
	line-height: 1.6;
}

.rpl-eyebrow {
	font-size: 12.5px;
	line-height: 1.7;
}

.rpl-hero .rpl-lead {
	max-width: 62ch;
	margin-block-end: 20px;
	font-size: 16px;
}

.rp-wrap .rpl-how3 {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 22px;
	padding: 0;
	list-style: none;
}

.rpl-how3 li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 14px 6px 8px;
	border: 1px solid var(--rp-line);
	border-radius: 999px;
	background: rgba(255, 255, 255, .85);
	color: var(--rp-ink);
	font-size: 13px;
	font-weight: 700;
}

.rpl-how3 li i {
	display: grid;
	place-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--rp-blue);
	color: #fff;
	font-size: 12px;
	font-style: normal;
}

.rpl-how3 li:nth-child(2) i { background: var(--rp-accent); }

.rpl-doors {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	max-width: 640px;
}

.rpl-door {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 16px 18px;
	border: 1px solid var(--rp-blue);
	border-radius: var(--rp-r);
	background: var(--rp-blue);
	color: #fff;
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.rpl-door--alt {
	border-color: var(--rp-sky);
	background: #fff;
	color: var(--rp-ink);
}

.rpl-door__ic {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 10px;
	background: rgba(255, 255, 255, .18);
	color: #fff;
}

.rpl-door--alt .rpl-door__ic {
	background: var(--rp-mist);
	color: var(--rp-blue);
}

.rpl-door__txt {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.rpl-door__txt b {
	font-size: 15px;
	line-height: 1.6;
}

.rpl-door__txt small {
	font-size: 12.5px;
	line-height: 1.8;
	opacity: .88;
}

.rpl-door__go {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-block-start: auto;
	font-size: 13px;
	font-weight: 800;
}

body .rp-wrap a.rpl-door,
body .rp-wrap a.rpl-door:visited {
	background: var(--rp-blue);
	color: #fff;
}

body .rp-wrap a.rpl-door--alt,
body .rp-wrap a.rpl-door--alt:visited {
	background: #fff;
	color: var(--rp-ink);
}

body .rp-wrap a.rpl-door:hover,
body .rp-wrap a.rpl-door:focus {
	background: var(--rp-blue-d);
	color: #fff;
	transform: translateY(-3px);
	box-shadow: 0 18px 30px -20px var(--rp-blue);
}

body .rp-wrap a.rpl-door--alt:hover,
body .rp-wrap a.rpl-door--alt:focus {
	background: var(--rp-mist);
	border-color: var(--rp-accent);
	color: var(--rp-blue-d);
	box-shadow: 0 18px 30px -22px var(--rp-accent);
}

.rpl-door--alt .rpl-door__go {
	color: var(--rp-blue);
}

@media (max-width: 640px) {
	.rpl-doors { grid-template-columns: 1fr; }
}

/* =====================================================================
 * ۲۹. خوانایی متن‌ها (برچسب ریورس‌پیچ معدن در صفحهٔ ورود و زیرعنوان سربرگ)
 * ================================================================== */

.rp-wrap .rp-auth2__aside .rp-kicker,
.rp-wrap .rp-auth2__aside .rp-kicker--light {
	background: rgba(255, 255, 255, .16);
	border: 1px solid rgba(255, 255, 255, .35);
	color: #fff;
	align-self: flex-start;
}

.rp-wrap .rp-auth2__aside .rp-kicker::before {
	background: #fff;
}

.rp-wrap .rp-auth2__aside p,
.rp-wrap .rp-auth2__aside li,
.rp-wrap .rp-auth2__aside li span {
	color: #eaf3ff;
	opacity: 1;
}

.rp-wrap .rp-auth2__aside h2 {
	color: #fff;
}

body .rpl-chrome__name i {
	color: color-mix(in srgb, var(--rp-ink) 78%, #fff);
	font-size: 12.5px;
	font-weight: 600;
}

body .rpl-chrome__name b {
	color: var(--rp-ink);
}

/* =====================================================================
 * ۳۰. طراحی مدرن (نسخهٔ ۱٫۱۴): صفحه‌های چالش‌ها و متخصصان
 *     - انتقال نرم میان صفحه‌ها (View Transitions)
 *     - کارت‌های واکنش‌گرا با Container Queries و ورود با Scroll-driven Animation
 *     - شبکهٔ ذاتاً واکنش‌گرا (auto-fill)، :has() برای تمرکز روی کارت، Bento برای آمار
 *     - خط حاشیهٔ گرادیانی متحرک با @property، تایپوگرافی text-wrap: balance/pretty
 *     همهٔ جلوه‌ها پیشرفت‌تدریجی‌اند و با «کاهش حرکت» مرورگر خاموش می‌شوند.
 * ================================================================== */

@media (prefers-reduced-motion: no-preference) {
	@view-transition {
		navigation: auto;
	}

	::view-transition-old(root),
	::view-transition-new(root) {
		animation-duration: .26s;
	}
}

.rp-wrap {
	color-scheme: light;
	accent-color: var(--rp-blue);
}

.rp-wrap h1,
.rp-wrap h2,
.rp-wrap h3 {
	text-wrap: balance;
}

.rp-wrap p,
.rp-wrap li {
	text-wrap: pretty;
}

.rp-wrap textarea {
	field-sizing: content;
	min-height: 120px;
	max-height: 480px;
}

.rp-wrap input:user-invalid,
.rp-wrap textarea:user-invalid,
.rp-wrap select:user-invalid {
	border-color: var(--rp-bad);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--rp-bad) 14%, transparent);
}

/* ---- سربرگ فهرست‌ها ---- */
.rp-head__count {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-block: 4px 8px;
	padding: 3px 12px;
	border: 1px solid var(--rp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--rp-blue);
	font-size: 12.5px;
	font-weight: 800;
}

.rp-head__count .rp-ic {
	width: 14px;
	height: 14px;
}

.rp-head .rp-head__count + .rp-muted {
	display: block;
}

/* ---- شبکهٔ کارت‌ها: واکنش‌گرایی ذاتی ---- */
.rp-grid--2,
.rp-grid--3,
.rp-grid--4 {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 330px), 1fr));
}

.rp-card {
	container-type: inline-size;
	border-radius: 18px;
	background: linear-gradient(180deg, #fff 55%, color-mix(in srgb, var(--rp-mist) 45%, #fff));
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, opacity .25s ease, filter .25s ease;
}

.rp-grid:has(.rp-card:hover) .rp-card:not(:hover) {
	opacity: .8;
	filter: saturate(.8);
}

.rp-card--expert .rp-av {
	box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--rp-sky);
}

.rp-card__title {
	font-size: 17px;
}

@container (max-width: 300px) {
	.rp-card__foot,
	.rp-expert__top {
		flex-direction: column;
		align-items: flex-start;
	}
}

@container (min-width: 440px) {
	.rp-card__desc {
		-webkit-line-clamp: 4;
	}

	.rp-card__title {
		font-size: 19px;
	}
}

@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {
		.rp-grid > .rp-card {
			animation: rp-sd-in linear both;
			animation-timeline: view();
			animation-range: entry 0% entry 55%;
		}

		@keyframes rp-sd-in {
			from {
				opacity: 0;
				transform: translateY(30px) scale(.97);
			}
		}
	}
}

/* ---- فیلترها: شیشه‌ای با حلقهٔ تمرکز ---- */
.rp-filters {
	border-radius: 20px;
	background: color-mix(in srgb, var(--rp-mist) 70%, transparent);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transition: box-shadow .2s ease, border-color .2s ease;
}

.rp-filters:has(:focus-visible) {
	border-color: var(--rp-accent);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--rp-sky) 40%, transparent);
}

/* ---- صفحهٔ جزئیات: محتوا + ستون چسبان ---- */
.rp-single > .rp-detail,
.rp-single > .rp-profile {
	margin-inline: var(--rp-gutter);
}

.rp-detail {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
	gap: clamp(20px, 2.4vw, 36px);
	align-items: start;
	margin-block-end: 36px;
}

.rp-detail__main {
	display: grid;
	gap: 26px;
	min-width: 0;
}

.rp-detail__aside {
	position: sticky;
	top: calc(var(--wp-admin--admin-bar--height, 0px) + 150px);
	display: grid;
	gap: 16px;
}

.rp-detail__head {
	display: grid;
	gap: 14px;
	padding-block-end: 22px;
	border-block-end: 1px solid var(--rp-line);
}

.rp-detail__title {
	margin: 0;
	font-size: clamp(26px, 2.8vw, 40px);
	line-height: 1.5;
}

.rp-detail__org {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}

.rp-detail__org b {
	display: block;
	font-size: 15px;
	line-height: 1.5;
}

.rp-detail__org i {
	display: block;
	color: var(--rp-muted);
	font-size: 13px;
	font-style: normal;
}

.rp-detail__body {
	font-size: 16px;
	line-height: 2.1;
}

.rp-detail__body p {
	margin: 0 0 1em;
}

.rp-detail__block {
	display: grid;
	gap: 12px;
}

.rp-detail__h {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: 17px;
}

.rp-detail__h .rp-ic {
	color: var(--rp-accent);
}

/* ---- پروفایل متخصص ---- */
.rp-profile {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 24px;
	margin-block: 22px 28px;
	padding: clamp(22px, 3vw, 40px);
	overflow: hidden;
	border: 1px solid var(--rp-line);
	border-radius: 26px;
	background:
		radial-gradient(520px 220px at 100% 0%, color-mix(in srgb, var(--rp-sky) 55%, transparent), transparent 70%),
		radial-gradient(420px 200px at 0% 100%, color-mix(in srgb, var(--rp-accent) 18%, transparent), transparent 70%),
		linear-gradient(180deg, var(--rp-mist), #fff);
}

.rp-profile::after {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(color-mix(in srgb, var(--rp-blue) 14%, transparent) 1px, transparent 1.3px);
	background-size: 18px 18px;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 70%);
	mask-image: linear-gradient(90deg, transparent, #000 70%);
	pointer-events: none;
}

.rp-profile > * {
	position: relative;
	z-index: 1;
}

.rp-av--xl {
	width: 104px;
	height: 104px;
	font-size: 40px;
	box-shadow: 0 0 0 5px #fff, 0 0 0 8px var(--rp-sky), 0 20px 40px -18px var(--rp-blue);
}

.rp-profile__txt {
	display: grid;
	flex: 1;
	gap: 8px;
	min-width: min(100%, 320px);
}

.rp-profile__headline {
	margin: 0;
	color: var(--rp-blue-d);
	font-size: 17px;
	font-weight: 700;
}

/* ---- کاشی‌های Bento ---- */
.rp-tiles {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.rp-tile {
	display: grid;
	gap: 2px;
	padding: 14px 16px;
	border: 1px solid var(--rp-line);
	border-radius: 16px;
	background: #fff;
	transition: transform .2s ease, border-color .2s ease;
}

.rp-tile:hover {
	transform: translateY(-2px);
	border-color: var(--rp-sky);
}

.rp-tile--wide {
	grid-column: 1 / -1;
	background: linear-gradient(135deg, var(--rp-mist), #fff);
}

.rp-tile__ic {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	margin-block-end: 6px;
	border-radius: 9px;
	background: var(--rp-mist);
	color: var(--rp-blue);
}

.rp-tile__ic .rp-ic {
	width: 17px;
	height: 17px;
}

.rp-tile small {
	color: var(--rp-muted);
	font-size: 12px;
}

.rp-tile b {
	color: var(--rp-ink);
	font-size: 16px;
	line-height: 1.6;
}

/* ---- کارت فراخوان با حاشیهٔ گرادیانی متحرک ---- */
@property --rp-ang {
	syntax: "<angle>";
	inherits: false;
	initial-value: 0deg;
}

.rp-detail__cta {
	display: grid;
	gap: 10px;
	padding: 22px;
	border: 2px solid transparent;
	border-radius: 20px;
	background:
		linear-gradient(#fff, #fff) padding-box,
		conic-gradient(from var(--rp-ang), var(--rp-sky), var(--rp-accent), var(--rp-blue), var(--rp-sky)) border-box;
}

@media (prefers-reduced-motion: no-preference) {
	.rp-detail__cta {
		animation: rp-ang 7s linear infinite;
	}

	@keyframes rp-ang {
		to { --rp-ang: 360deg; }
	}
}

.rp-detail__cta b {
	font-size: 16px;
}

.rp-detail__cta p {
	margin: 0;
	color: var(--rp-muted);
	font-size: 14px;
}

.rp-detail__aside .rp-owner-tools {
	display: grid;
	gap: 8px;
	margin: 0;
}

.rp-detail__aside .rp-owner-tools .rp-btn,
.rp-detail__aside .rp-owner-tools .rp-inline-form {
	width: 100%;
}

.rp-detail__aside .rp-inline-form .rp-btn {
	width: 100%;
}

/* بخش‌های پایین جزئیات هم‌عرض ستون اصلی می‌مانند */
.rp-single > .rp-pitch-form-wrap,
.rp-single > .rp-my-match,
.rp-single > .rp-cta-inline,
.rp-single > .rp-pitches {
	max-width: none;
	margin-inline: var(--rp-gutter);
}

@media (max-width: 1024px) {
	.rp-detail {
		grid-template-columns: 1fr;
	}

	.rp-detail__aside {
		position: static;
		order: -1;
	}

	.rp-tiles {
		grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	}

	.rp-av--xl {
		width: 80px;
		height: 80px;
		font-size: 32px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.rp-card,
	.rp-tile {
		transition: none;
	}
}
