/**
 * صفحات ماژول حسابیکس — استایل خودکفا (بدون وابستگی به کلاس‌های Tailwind)
 */

.hx-module {
	--hx-text: #1e293b;
	--hx-muted: #64748b;
	--hx-border: #e2e8f0;
	--hx-surface: #ffffff;
	--hx-surface-alt: #f0f9ff;
	--hx-brand: #0284c7;
	--hx-brand-mid: #0ea5e9;
	--hx-brand-light: #38bdf8;
	--hx-accent: #f97316;
	--hx-accent-hover: #fb923c;
	--hx-dark: #0f172a;
	--hx-radius: 1rem;
	--hx-shadow: 0 4px 24px rgba(15, 23, 42, 0.08);
	--hx-shadow-lg: 0 20px 50px rgba(15, 23, 42, 0.12);
	color: var(--hx-text);
	font-family: inherit;
}

.hx-module__wrap {
	max-width: 72rem;
	margin-left: auto;
	margin-right: auto;
	padding-left: 1rem;
	padding-right: 1rem;
}

@media (min-width: 640px) {
	.hx-module__wrap {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}

/* هیرو */
.hx-module-hero {
	position: relative;
	padding: 3.5rem 0;
	color: #fff;
	background: linear-gradient(135deg, #0369a1 0%, #0ea5e9 45%, #38bdf8 100%);
	overflow: hidden;
}

.hx-module-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.15) 0%, transparent 45%),
		radial-gradient(circle at 80% 70%, rgba(251, 146, 60, 0.12) 0%, transparent 40%);
	pointer-events: none;
}

.hx-module-hero__inner {
	position: relative;
	z-index: 1;
}

.hx-module-hero__layout {
	display: grid;
	gap: 2rem;
	align-items: center;
}

@media (min-width: 900px) {
	.hx-module-hero__layout {
		grid-template-columns: minmax(0, 1.08fr) minmax(19rem, 0.92fr);
		gap: 3.5rem;
	}
}

.hx-module-hero__copy {
	max-width: 46rem;
}

.hx-module-hero__badge {
	display: inline-block;
	font-size: 0.8125rem;
	font-weight: 600;
	padding: 0.35rem 0.85rem;
	margin-bottom: 1rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.18);
	border: 1px solid rgba(255, 255, 255, 0.35);
}

.hx-module-hero__title {
	font-size: clamp(1.75rem, 4vw, 2.5rem);
	font-weight: 800;
	line-height: 1.2;
	margin: 0 0 1rem;
	color: #fff;
}

.hx-module-hero__lead {
	font-size: clamp(1rem, 2vw, 1.125rem);
	line-height: 1.75;
	max-width: 42rem;
	margin: 0;
	color: rgba(255, 255, 255, 0.92);
}

.hx-module-hero__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	list-style: none;
	margin: 1.4rem 0 0;
	padding: 0;
}

.hx-module-hero__chips li {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.45rem 0.8rem;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.13);
	color: rgba(255, 255, 255, 0.94);
	font-size: 0.8125rem;
	line-height: 1.45;
	backdrop-filter: blur(12px);
}

.hx-module-hero__chips li::before {
	content: '';
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: #fed7aa;
	box-shadow: 0 0 0 4px rgba(251, 146, 60, 0.16);
}

.hx-module-hero__visual {
	position: relative;
	display: none;
}

@media (min-width: 900px) {
	.hx-module-hero__visual {
		display: block;
	}
}

.hx-module-hero-panel {
	position: relative;
	padding: 1.1rem;
	border-radius: 1.35rem;
	border: 1px solid rgba(255, 255, 255, 0.22);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.08)),
		radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.26), transparent 34%);
	box-shadow: 0 28px 70px rgba(15, 23, 42, 0.24);
	backdrop-filter: blur(18px);
	overflow: hidden;
	animation: hx-hero-float 7s ease-in-out infinite;
}

.hx-module-hero-panel::before {
	content: '';
	position: absolute;
	inset: auto -20% -35% auto;
	width: 15rem;
	height: 15rem;
	border-radius: 50%;
	background: rgba(251, 146, 60, 0.2);
	filter: blur(8px);
}

.hx-module-hero-panel__head,
.hx-module-hero-panel__metrics,
.hx-module-hero-panel__flow {
	position: relative;
	z-index: 1;
}

.hx-module-hero-panel__head {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin-bottom: 1rem;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.8125rem;
	font-weight: 700;
}

.hx-module-hero-panel__dot {
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.18);
}

.hx-module-hero-panel__metrics {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.8rem;
	margin-bottom: 1rem;
}

.hx-module-hero-panel__metric {
	padding: 1rem;
	border-radius: 1rem;
	background: rgba(255, 255, 255, 0.9);
	color: #0f172a;
}

.hx-module-hero-panel__metric strong {
	display: block;
	font-size: 1.35rem;
	line-height: 1;
	color: var(--hx-brand);
}

.hx-module-hero-panel__metric small {
	font-size: 0.72rem;
	color: var(--hx-muted);
}

.hx-module-hero-panel__metric span {
	display: block;
	margin-top: 0.35rem;
	font-size: 0.75rem;
	line-height: 1.45;
	color: var(--hx-muted);
}

.hx-module-hero-panel__flow {
	display: grid;
	gap: 0.65rem;
}

.hx-module-hero-panel__flow span {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	min-height: 3rem;
	padding: 0.75rem 0.85rem;
	border-radius: 0.9rem;
	background: rgba(15, 23, 42, 0.38);
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.8rem;
	line-height: 1.45;
	animation: hx-row-pulse 3.8s ease-in-out infinite;
	animation-delay: calc(var(--hx-row, 0) * 320ms);
}

.hx-module-hero-panel__flow i {
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: #7dd3fc;
	box-shadow: 0 0 0 4px rgba(125, 211, 252, 0.14);
}

@keyframes hx-hero-float {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-0.65rem);
	}
}

@keyframes hx-row-pulse {
	0%,
	100% {
		background: rgba(15, 23, 42, 0.38);
	}
	50% {
		background: rgba(255, 255, 255, 0.17);
	}
}

/* بخش‌ها */
.hx-module-section {
	padding: 3rem 0;
	border-bottom: 1px solid var(--hx-border);
}

.hx-module-section--alt {
	background: var(--hx-surface-alt);
}

.hx-module-section__title {
	font-size: clamp(1.25rem, 2.5vw, 1.75rem);
	font-weight: 800;
	margin: 0 0 1rem;
	color: var(--hx-text);
}

.hx-module-section__title--sm {
	font-size: 1.125rem;
}

.hx-module-section__text {
	font-size: 1rem;
	line-height: 1.75;
	color: var(--hx-muted);
	max-width: 48rem;
	margin: 0 0 1rem;
}

.hx-module-section__text:last-child {
	margin-bottom: 0;
}

/* گرید */
.hx-module-grid {
	display: grid;
	gap: 1rem;
}

.hx-module-grid--2 {
	grid-template-columns: 1fr;
}

.hx-module-grid--3 {
	grid-template-columns: 1fr;
}

@media (min-width: 640px) {
	.hx-module-grid--2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 768px) {
	.hx-module-grid--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.hx-module-grid--modules {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* کارت ماژول */
.hx-module-card {
	display: block;
	padding: 1.25rem;
	border-radius: var(--hx-radius);
	border: 1px solid var(--hx-border);
	background: var(--hx-surface-alt);
	text-decoration: none !important;
	color: inherit;
	transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.hx-module-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--hx-shadow);
	border-color: var(--hx-brand-light);
}

.hx-module-card__badge {
	display: block;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--hx-brand);
	margin-bottom: 0.5rem;
}

.hx-module-card__title {
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 0.35rem;
	color: var(--hx-text);
}

.hx-module-card:hover .hx-module-card__title {
	color: var(--hx-brand);
}

.hx-module-card__text {
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--hx-muted);
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* گام‌ها */
.hx-module-steps {
	display: grid;
	gap: 1.25rem;
}

@media (min-width: 768px) {
	.hx-module-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.hx-module-step {
	padding: 1.5rem;
	border-radius: var(--hx-radius);
	border: 1px solid var(--hx-border);
	background: var(--hx-surface);
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.hx-module-step__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	margin-bottom: 0.75rem;
	border-radius: 0.5rem;
	background: var(--hx-brand-mid);
	color: #fff;
	font-size: 0.875rem;
	font-weight: 800;
}

.hx-module-step__title {
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 0.35rem;
}

.hx-module-step__text {
	font-size: 0.875rem;
	color: var(--hx-muted);
	margin: 0;
	line-height: 1.55;
}

/* مزایا */
.hx-module-benefit {
	padding: 1.5rem;
	border-radius: var(--hx-radius);
	border: 1px solid var(--hx-border);
	background: var(--hx-surface);
	box-shadow: var(--hx-shadow);
}

.hx-module-benefit__title {
	font-size: 1.125rem;
	font-weight: 700;
	margin: 0 0 0.5rem;
}

.hx-module-benefit__text {
	font-size: 0.875rem;
	color: var(--hx-muted);
	margin: 0;
	line-height: 1.6;
}

/* امکانات لیست */
.hx-module-features {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.65rem;
	max-width: 48rem;
}

@media (min-width: 640px) {
	.hx-module-features {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.hx-module-features li {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: 0.875rem;
	color: var(--hx-muted);
}

.hx-module-features li::before {
	content: '';
	flex-shrink: 0;
	width: 0.5rem;
	height: 0.5rem;
	margin-top: 0.45rem;
	border-radius: 50%;
	background: var(--hx-brand-mid);
}

/* سناریو */
.hx-module-scenario {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	padding: 0.85rem 1rem;
	font-size: 0.875rem;
	color: var(--hx-muted);
	background: var(--hx-surface-alt);
	border: 1px solid #e0f2fe;
	border-radius: 0.75rem;
}

.hx-module-scenario__arrow {
	color: var(--hx-brand-mid);
	font-weight: 700;
}

/* تگ‌ها */
.hx-module-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.hx-module-tag {
	display: inline-block;
	padding: 0.35rem 0.85rem;
	font-size: 0.8125rem;
	color: var(--hx-muted);
	background: var(--hx-surface);
	border: 1px solid var(--hx-border);
	border-radius: 999px;
}

/* FAQ */
.hx-module-faq {
	max-width: 48rem;
}

.hx-module-faq__item {
	border: 1px solid var(--hx-border);
	border-radius: var(--hx-radius);
	background: var(--hx-surface);
	margin-bottom: 0.75rem;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.hx-module-faq__item:last-child {
	margin-bottom: 0;
}

.hx-module-faq__q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
	padding: 1.1rem 1.25rem;
	border: 0;
	background: transparent;
	font-family: inherit;
	font-size: 0.9375rem;
	font-weight: 600;
	text-align: right;
	color: var(--hx-text);
	cursor: pointer;
}

.hx-module-faq__q:hover {
	background: var(--hx-surface-alt);
}

.hx-module-faq__icon {
	flex-shrink: 0;
	width: 2rem;
	height: 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0.5rem;
	background: rgba(14, 165, 233, 0.12);
	color: var(--hx-brand);
	font-weight: 700;
}

.hx-module-faq__a {
	padding: 0 1.25rem 1.1rem;
	font-size: 0.875rem;
	line-height: 1.65;
	color: var(--hx-muted);
}

.hx-module-faq__a[hidden] {
	display: none;
}

/* راهنما */
.hx-module-guide {
	display: grid;
	gap: 2.5rem;
}

@media (min-width: 1024px) {
	.hx-module-guide {
		grid-template-columns: 3fr 2fr;
		align-items: start;
	}
}

.hx-module-guide-step {
	display: flex;
	gap: 1rem;
	padding: 1rem;
	margin-bottom: 0.75rem;
	border-radius: var(--hx-radius);
	background: var(--hx-surface-alt);
	border: 1px solid #bae6fd;
}

.hx-module-guide-step__num {
	flex-shrink: 0;
	width: 2.5rem;
	height: 2.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0.65rem;
	background: rgba(14, 165, 233, 0.15);
	color: var(--hx-brand);
	font-weight: 800;
}

.hx-module-sidebar {
	padding: 1.5rem;
	border-radius: var(--hx-radius);
	border: 1px solid var(--hx-border);
	background: var(--hx-surface-alt);
}

.hx-module-sidebar ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hx-module-sidebar li {
	margin-bottom: 0.5rem;
}

.hx-module-sidebar a {
	color: var(--hx-brand);
	font-weight: 600;
	font-size: 0.875rem;
	text-decoration: none;
}

.hx-module-sidebar a:hover {
	text-decoration: underline;
}

.hx-module-checklist {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
}

.hx-module-checklist li {
	display: flex;
	gap: 0.5rem;
	font-size: 0.875rem;
	color: var(--hx-muted);
	margin-bottom: 0.5rem;
}

.hx-module-checklist li::before {
	content: '✓';
	color: #059669;
	font-weight: 700;
}

/* مرتبط */
.hx-module-related {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.hx-module-related a {
	display: inline-block;
	padding: 0.5rem 1rem;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--hx-muted);
	text-decoration: none !important;
	border: 1px solid var(--hx-border);
	border-radius: 0.75rem;
	background: var(--hx-surface);
	transition: border-color 0.15s, color 0.15s;
}

.hx-module-related a:hover {
	border-color: var(--hx-brand-light);
	color: var(--hx-brand);
}

/* CTA */
.hx-module-cta {
	padding: 3.5rem 0;
	background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
	color: #fff;
}

.hx-module-cta__title {
	font-size: clamp(1.25rem, 2.5vw, 1.75rem);
	font-weight: 800;
	margin: 0 0 0.75rem;
	color: #fff;
}

.hx-module-cta__text {
	font-size: 1rem;
	max-width: 36rem;
	margin: 0 0 1.5rem;
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.65;
}

.hx-module-cta__actions {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

@media (min-width: 640px) {
	.hx-module-cta__actions {
		flex-direction: row;
		flex-wrap: wrap;
	}
}

.hx-module-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.75rem 1.5rem;
	font-size: 0.9375rem;
	font-weight: 700;
	border-radius: 0.75rem;
	text-decoration: none !important;
	transition: background 0.15s, transform 0.15s;
}

.hx-module-btn--primary {
	background: var(--hx-accent);
	color: #fff !important;
}

.hx-module-btn--primary:hover {
	background: var(--hx-accent-hover);
	transform: translateY(-1px);
}

.hx-module-btn--ghost {
	border: 1px solid rgba(255, 255, 255, 0.4);
	color: #fff !important;
}

.hx-module-btn--ghost:hover {
	background: rgba(255, 255, 255, 0.1);
}

.hx-module-link {
	color: var(--hx-brand);
	font-weight: 600;
	text-decoration: none;
}

.hx-module-link:hover {
	text-decoration: underline;
}

.hx-module-breadcrumb a {
	color: rgba(255, 255, 255, 0.9);
}

/* ========== طراحی غنی ========== */

.hx-reveal {
	opacity: 0;
	transform: translateY(1.25rem);
	transition: opacity 0.6s ease, transform 0.6s ease;
	transition-delay: var(--hx-delay, 0ms);
}

.hx-reveal.is-visible {
	opacity: 1;
	transform: none;
}

.hx-rich-stats {
	padding: 2.75rem 0;
	background: var(--hx-dark);
	color: #fff;
	border-bottom: 1px solid #1e293b;
}

.hx-rich-stats__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
}

@media (min-width: 768px) {
	.hx-rich-stats__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.hx-rich-stats__value {
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	font-weight: 800;
	margin: 0 0 0.25rem;
	line-height: 1;
	background: linear-gradient(135deg, #fff, #7dd3fc);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.hx-rich-stats__suffix {
	font-size: 0.875rem;
	opacity: 0.75;
}

.hx-rich-stats__label {
	font-size: 0.8125rem;
	margin: 0;
	opacity: 0.7;
}

.hx-rich-head {
	margin-bottom: 2.5rem;
}

.hx-rich-head__eyebrow {
	display: inline-block;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--hx-brand);
	margin-bottom: 0.5rem;
}

.hx-rich-head__title {
	font-size: clamp(1.375rem, 2.5vw, 1.875rem);
	font-weight: 800;
	margin: 0 0 0.75rem;
	line-height: 1.25;
}

.hx-rich-head__lead {
	font-size: 1rem;
	color: var(--hx-muted);
	max-width: 40rem;
	margin: 0;
	line-height: 1.7;
}

.hx-rich-head--center {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	max-width: 32rem;
}

.hx-rich-channels__title {
	font-size: clamp(1.25rem, 2.5vw, 1.75rem);
	font-weight: 800;
	margin: 0 0 2rem;
}

.hx-rich-spectrum {
	padding: 3.5rem 0;
	background: var(--hx-surface);
}

.hx-rich-spectrum__grid {
	display: grid;
	gap: 1rem;
}

@media (min-width: 640px) {
	.hx-rich-spectrum__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.hx-rich-spectrum__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.hx-rich-card {
	padding: 1.35rem;
	border-radius: var(--hx-radius);
	border: 1px solid var(--hx-border);
	background: var(--hx-surface);
	transition: transform 0.2s, box-shadow 0.2s;
}

.hx-rich-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--hx-shadow-lg);
}

.hx-rich-card__tag {
	display: inline-block;
	font-size: 0.625rem;
	font-weight: 700;
	text-transform: uppercase;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	margin-bottom: 0.65rem;
}

.hx-rich-card--brand .hx-rich-card__tag { background: #e0f2fe; color: #0369a1; }
.hx-rich-card--violet .hx-rich-card__tag { background: #ede9fe; color: #6d28d9; }
.hx-rich-card--accent .hx-rich-card__tag { background: #ffedd5; color: #c2410c; }
.hx-rich-card--emerald .hx-rich-card__tag { background: #d1fae5; color: #047857; }
.hx-rich-card--amber .hx-rich-card__tag { background: #fef3c7; color: #b45309; }
.hx-rich-card--slate .hx-rich-card__tag { background: #f1f5f9; color: #475569; }

.hx-rich-card__title {
	font-size: 1.0625rem;
	font-weight: 700;
	margin: 0 0 0.5rem;
}

.hx-rich-card__text {
	font-size: 0.875rem;
	color: var(--hx-muted);
	margin: 0;
	line-height: 1.6;
}

.hx-rich-flow {
	padding: 3.5rem 0;
	background: linear-gradient(180deg, var(--hx-surface-alt) 0%, var(--hx-surface) 100%);
}

.hx-rich-flow__track {
	display: flex;
	flex-direction: column;
	gap: 0;
}

@media (min-width: 900px) {
	.hx-rich-flow__track {
		flex-direction: row;
		align-items: flex-start;
	}
}

.hx-rich-flow__step {
	flex: 1;
	text-align: center;
	padding: 0 0.5rem;
}

.hx-rich-flow__dot {
	display: block;
	width: 1rem;
	height: 1rem;
	margin: 0 auto 0.75rem;
	border-radius: 50%;
	background: var(--hx-brand-mid);
	box-shadow: 0 0 0 6px rgba(14, 165, 233, 0.25);
}

.hx-rich-flow__connector {
	display: none;
}

@media (min-width: 900px) {
	.hx-rich-flow__connector {
		display: block;
		flex: 0 0 2rem;
		height: 3px;
		margin-top: 0.45rem;
		background: linear-gradient(270deg, var(--hx-brand-mid), #bae6fd);
		transform: scaleX(0);
		transform-origin: right center;
		transition: transform 0.7s ease var(--hx-delay, 0ms);
	}

	.hx-rich-flow__connector.is-visible {
		transform: scaleX(1);
	}
}

.hx-rich-flow__title {
	font-size: 0.9375rem;
	font-weight: 700;
	margin: 0 0 0.35rem;
}

.hx-rich-flow__text {
	font-size: 0.8125rem;
	color: var(--hx-muted);
	margin: 0;
}

.hx-rich-chart {
	padding: 3.5rem 0;
	background: var(--hx-surface);
}

.hx-rich-chart__panel {
	padding: 1.5rem;
	border-radius: var(--hx-radius);
	border: 1px solid var(--hx-border);
	background: linear-gradient(180deg, #fff, var(--hx-surface-alt));
}

.hx-rich-chart__row {
	display: grid;
	grid-template-columns: minmax(7rem, 11rem) 1fr 3.25rem;
	gap: 0.85rem;
	align-items: center;
	margin-bottom: 1rem;
}

@media (max-width: 560px) {
	.hx-rich-chart__row {
		grid-template-columns: 1fr 3.25rem;
		gap: 0.55rem 0.85rem;
	}

	.hx-rich-chart__meta {
		grid-column: 1 / -1;
	}
}

.hx-rich-chart__row:last-child {
	margin-bottom: 0;
}

.hx-rich-chart__label {
	font-size: 0.8125rem;
	font-weight: 600;
	display: block;
}

.hx-rich-chart__hint {
	font-size: 0.6875rem;
	color: #94a3b8;
	display: block;
}

.hx-rich-chart__bar-wrap {
	height: 0.625rem;
	background: #f1f5f9;
	border-radius: 999px;
	overflow: hidden;
}

.hx-rich-chart__bar {
	height: 100%;
	width: 0;
	border-radius: 999px;
	background: linear-gradient(270deg, var(--hx-brand-mid), var(--hx-accent));
	transition: width 1s ease var(--hx-delay, 0ms);
}

.hx-rich-chart__panel.is-visible .hx-rich-chart__bar {
	width: var(--hx-pct, 0%);
}

.hx-rich-chart__value {
	justify-self: end;
	font-size: 0.75rem;
	font-weight: 800;
	color: var(--hx-brand);
	font-variant-numeric: tabular-nums;
}

.hx-rich-channels {
	padding: 2.75rem 0;
	background: var(--hx-dark);
	color: #fff;
}

.hx-rich-channels__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

@media (min-width: 768px) {
	.hx-rich-channels__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.hx-rich-channel {
	padding: 1rem;
	border-radius: 0.75rem;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
}

.hx-rich-channel__title {
	font-size: 0.9375rem;
	font-weight: 700;
	margin: 0 0 0.35rem;
}

.hx-rich-channel__text {
	font-size: 0.8125rem;
	margin: 0;
	opacity: 0.75;
	line-height: 1.5;
}

.hx-rich-compare {
	padding: 3.5rem 0;
	background: var(--hx-surface-alt);
}

.hx-rich-compare__table {
	border-radius: var(--hx-radius);
	overflow: hidden;
	border: 1px solid var(--hx-border);
	background: var(--hx-surface);
	box-shadow: var(--hx-shadow);
}

.hx-rich-compare__head,
.hx-rich-compare__row {
	display: grid;
	grid-template-columns: minmax(4.5rem, 1.2fr) 1fr 1fr;
	gap: 0.5rem;
	padding: 0.875rem 1rem;
	align-items: center;
}

.hx-rich-compare__head {
	background: #f8fafc;
	font-size: 0.75rem;
	font-weight: 700;
	color: var(--hx-muted);
}

.hx-rich-compare__row:not(:last-child) {
	border-bottom: 1px solid #f1f5f9;
}

.hx-rich-compare__label {
	font-weight: 600;
	font-size: 0.8125rem;
}

.hx-rich-compare__cell--before {
	font-size: 0.8125rem;
	color: var(--hx-muted);
}

.hx-rich-compare__cell--after {
	font-size: 0.8125rem;
	color: #047857;
	font-weight: 600;
}

.hx-rich-journey {
	padding: 3.5rem 0;
	background: var(--hx-surface);
}

.hx-rich-journey__grid {
	display: grid;
	gap: 1rem;
}

@media (min-width: 768px) {
	.hx-rich-journey__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.hx-rich-journey__card {
	position: relative;
	padding: 1.5rem 1.25rem;
	border-radius: var(--hx-radius);
	background: var(--hx-surface-alt);
	border: 1px solid #bae6fd;
	overflow: hidden;
}

.hx-rich-journey__card::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 4px;
	background: linear-gradient(180deg, var(--hx-brand-mid), var(--hx-accent));
}

.hx-rich-journey__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.5rem;
	background: var(--hx-brand-mid);
	color: #fff;
	font-size: 0.875rem;
	font-weight: 800;
	margin-bottom: 0.75rem;
}

.hx-rich-journey__title {
	font-size: 0.9375rem;
	font-weight: 700;
	margin: 0 0 0.35rem;
}

.hx-rich-journey__text {
	font-size: 0.8125rem;
	color: var(--hx-muted);
	margin: 0;
	line-height: 1.55;
}

/* صفحات rich — هیرو و عمق بصری */
.hx-module--rich .hx-module-hero {
	padding: 4rem 0 4.25rem;
	background: linear-gradient(145deg, #0c4a6e 0%, #0369a1 35%, #0ea5e9 70%, #38bdf8 100%);
}

.hx-module--rich .hx-module-hero::after {
	content: '';
	position: absolute;
	width:  min(520px, 90vw);
	height: min(520px, 90vw);
	left: -12%;
	bottom: -45%;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, transparent 65%);
	pointer-events: none;
}

.hx-module--rich .hx-module-section:nth-of-type(even) {
	background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

/* بلوک بله و تلگرام */
.hx-rich-messenger {
	padding: 3.75rem 0;
	background:
		linear-gradient(180deg, #f8fafc 0%, #fff 50%, #f0f9ff 100%);
	border-bottom: 1px solid var(--hx-border);
	position: relative;
	overflow: hidden;
}

.hx-rich-messenger::before {
	content: '';
	position: absolute;
	top: -40%;
	left: -10%;
	width: 50%;
	height: 120%;
	background: radial-gradient(circle, rgba(14, 165, 233, 0.06) 0%, transparent 70%);
	pointer-events: none;
}

.hx-rich-messenger__layout {
	display: grid;
	gap: 2.5rem;
	align-items: center;
	position: relative;
	z-index: 1;
}

@media (min-width: 960px) {
	.hx-rich-messenger__layout {
		grid-template-columns: 1fr 1.1fr;
		gap: 3rem;
	}
}

.hx-rich-messenger__title {
	font-size: clamp(1.375rem, 2.8vw, 2rem);
	font-weight: 800;
	line-height: 1.25;
	margin: 0 0 0.85rem;
	color: var(--hx-text);
}

.hx-rich-messenger__lead {
	font-size: 1.0625rem;
	line-height: 1.75;
	color: var(--hx-muted);
	margin: 0 0 1.25rem;
	max-width: 36rem;
}

.hx-rich-messenger__bullets {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hx-rich-messenger__bullets li {
	position: relative;
	padding-right: 1.35rem;
	margin-bottom: 0.65rem;
	font-size: 0.9375rem;
	color: var(--hx-text);
	line-height: 1.55;
}

.hx-rich-messenger__bullets li::before {
	content: '';
	position: absolute;
	right: 0;
	top: 0.55rem;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--hx-brand-mid);
	box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.2);
}

.hx-rich-messenger__apps {
	display: grid;
	gap: 1.25rem;
}

@media (min-width: 540px) {
	.hx-rich-messenger__apps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.hx-rich-messenger__app {
	padding: 1.25rem;
	border-radius: 1.25rem;
	border: 1px solid var(--hx-border);
	background: var(--hx-surface);
	box-shadow: var(--hx-shadow-lg);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.hx-rich-messenger__app:hover {
	transform: translateY(-6px);
	box-shadow: 0 28px 60px rgba(15, 23, 42, 0.14);
}

.hx-rich-messenger__app--bale {
	border-top: 4px solid #16a34a;
}

.hx-rich-messenger__app--telegram {
	border-top: 4px solid #0ea5e9;
}

.hx-rich-messenger__app-head {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	margin-bottom: 0.65rem;
}

.hx-rich-messenger__app-icon {
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.65rem;
	flex-shrink: 0;
	background-size: 55%;
	background-position: center;
	background-repeat: no-repeat;
}

.hx-rich-messenger__app--bale .hx-rich-messenger__app-icon {
	background-color: #dcfce7;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2316a34a'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 14H8v-2h3v-2H8V8h5v8zm6 0h-2V8h2v8z'/%3E%3C/svg%3E");
}

.hx-rich-messenger__app--telegram .hx-rich-messenger__app-icon {
	background-color: #e0f2fe;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230284c7'%3E%3Cpath d='M9.78 18.65l.28-4.23 7.68-6.92c.34-.31-.07-.46-.52-.19L7.74 13.3 3.64 12c-.88-.25-.89-.86.2-1.3l15.97-6.16c.73-.33 1.43.18 1.15 1.3l-2.72 12.81c-.19.91-.74 1.13-1.5.71L12.6 16.3l-1.99 1.93c-.23.23-.42.42-.83.42z'/%3E%3C/svg%3E");
}

.hx-rich-messenger__app-name {
	font-size: 1rem;
	font-weight: 800;
	color: var(--hx-text);
}

.hx-rich-messenger__app-text {
	font-size: 0.8125rem;
	color: var(--hx-muted);
	margin: 0 0 1rem;
	line-height: 1.55;
}

.hx-rich-messenger__chat {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 0.75rem;
	border-radius: 0.85rem;
	background: #f1f5f9;
	min-height: 5.5rem;
}

.hx-rich-messenger__bubble {
	max-width: 92%;
	padding: 0.45rem 0.7rem;
	font-size: 0.75rem;
	line-height: 1.45;
	border-radius: 0.75rem;
	background: #fff;
	color: var(--hx-text);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	align-self: flex-start;
}

.hx-rich-messenger__bubble--out {
	align-self: flex-end;
	background: linear-gradient(135deg, #0ea5e9, #0284c7);
	color: #fff;
}

.hx-rich-messenger__app--bale .hx-rich-messenger__bubble--out {
	background: linear-gradient(135deg, #22c55e, #16a34a);
}

/* پرداخت ظاهری کارت‌ها و آمار */
.hx-module--rich .hx-module-card {
	background: #fff;
	border-color: #e0f2fe;
}

.hx-module--rich .hx-rich-stats__value {
	font-size: clamp(1.5rem, 3.5vw, 2.5rem);
}

.hx-module--rich .hx-rich-card {
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.05);
}

.hx-module--rich .hx-rich-compare__table {
	border: none;
	box-shadow: var(--hx-shadow-lg);
}

.hx-module--rich .hx-module-cta {
	background: linear-gradient(135deg, #0c4a6e 0%, #0f172a 55%, #1e293b 100%);
}

/* کانال‌های چت — کارت روشن روی پس‌زمینه تیره */
.hx-rich-channels__grid .hx-rich-channel {
	transition: transform 0.2s, background 0.2s;
}

.hx-rich-channels__grid .hx-rich-channel:hover {
	transform: translateY(-3px);
	background: rgba(255, 255, 255, 0.1);
}

/* طیف CRM — آیکون بزرگ‌تر در کارت */
.hx-module--rich .hx-rich-spectrum .hx-rich-card {
	min-height: 9.5rem;
	display: flex;
	flex-direction: column;
}

@media (prefers-reduced-motion: reduce) {
	.hx-module-hero-panel,
	.hx-module-hero-panel__flow span {
		animation: none;
	}

	.hx-reveal {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.hx-rich-chart__bar {
		width: var(--hx-pct, 0%);
		transition: none;
	}

	.hx-rich-flow__connector {
		transform: scaleX(1);
	}
}
