/* =====================================================================
   استایل‌های «نهایی» صفحه دوره — بعد از CSS سفارشی ذخیره‌شده در صفحه «توسعه»
   لود می‌شود؛ بنابراین حتی اگر CSS سفارشی قدیمی در دیتابیس ذخیره شده باشد،
   رنگ‌های یکدست زیر روی آن اولویت دارند.
   ===================================================================== */
:root,
.cm-course-wrap {
	--cm-surface: #f7f7f7;          /* زمینه‌ی یکدست همه‌ی باکس‌ها */
	--cm-surface-border: #ececec;
	--cm-border-light: #e0e0e0;
	--cm-old-price: #8a8a8a;        /* رنگ قیمت خط‌خورده */
}

/* ---- زمینه‌ی یکدست خاکستریِ روشن برای همه‌ی باکس‌ها ---- */
.cm-extra-fields-table tr,
.cm-extra-fields-table tr:nth-child(even),
.cm-course-topics-section,
.cm-sessions-section,
.cm-ask-question-box,
.cm-objections-wrapper,
.cm-testimonials-box,
.cm-gift-box,
.cm-btn-add-to-cart.cm-btn-enrolled,
.cm-btn-add-to-cart.cm-btn-enrolled:hover,
.cm-mobile-cart-btn.cm-btn-enrolled,
.cm-mobile-cart-btn.cm-btn-enrolled:hover {
	background: var(--cm-surface) !important;
}
.cm-sessions-section { border-color: var(--cm-surface-border) !important; }

.cm-session-item,
.cm-session-item.open { background: #fff !important; }

/* باکس هدیه: به‌جای زمینه‌ی زرد/نارنجی، همان خاکستری روشن؛ فقط خط‌چین به رنگ تم */
.cm-gift-box { border-color: var(--cm-green) !important; }
.cm-gift-box::before {
	background: repeating-linear-gradient(to right, var(--cm-green) 0, var(--cm-green) 8px, transparent 8px, transparent 16px) !important;
}

/* ---- قیمت خط‌خورده: خاکستری به‌جای قرمز ---- */
.cm-old-price,
.cm-mobile-oldprice { color: var(--cm-old-price) !important; }

/* ---- آیکن سوالات متداول بچرخد ---- */
.cm-faq-question { align-items: center; gap: 10px; }
.cm-faq-question i { flex: 0 0 auto; transition: transform .3s ease; }
.cm-faq-item.open .cm-faq-question i { transform: rotate(180deg); }

/* ---- نوار شناور موبایل ---- */
.cm-mobile-bottom-bar.cm-bar-hidden,
body.cm-mobile-menu-open .cm-mobile-bottom-bar {
	transform: translateY(110%) !important;
	visibility: hidden;
	pointer-events: none;
}
.cm-mobile-bottom-bar.cm-mobile-bar-enrolled .cm-mobile-cart-btn {
	width: 100%;
	justify-content: center;
	box-sizing: border-box;
}

@media (max-width: 768px) {
	.cm-benefit-card:last-child:nth-child(odd) { width: 100% !important; }
}

.cm-ask-question-box textarea { resize: none !important; }

/* ---- باکس‌ها با سایه‌ی «دکمه‌ای»: سفید، برجسته، با حرکت ملایم هنگام هاور ---- */
.cm-benefit-card,
.cm-topic-item,
.cm-session-item,
.cm-faq-item,
.cm-objection-item {
	background: #fff !important;
	border: 1px solid var(--cm-surface-border) !important;
	box-shadow: 0 6px 16px rgba(0,0,0,.10), 0 1px 3px rgba(0,0,0,.06) !important;
	transition: transform .25s ease, box-shadow .25s ease;
}
.cm-benefit-card:hover,
.cm-topic-item:hover,
.cm-session-item:hover,
.cm-faq-item:hover,
.cm-objection-item:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 24px rgba(0,0,0,.14), 0 2px 5px rgba(0,0,0,.08) !important;
}
.cm-faq-item { border-right: 4px solid var(--cm-green) !important; }
.cm-session-item { border-right: 4px solid var(--cm-green) !important; }
.cm-objection-item { padding: 14px 16px !important; margin-bottom: 14px; border-radius: 16px; }
.cm-objection-item:last-child { margin-bottom: 0; }

/* ===== باکس «دریافتی‌ها»: عکس راست، نوشته چپ؛ باکس اول ۱۰۰٪ و بقیه ۵۰٪ ===== */
.cm-receive-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; direction: rtl; }
.cm-receive-grid > .cm-receive-card:first-child { grid-column: 1 / -1; }
.cm-receive-card { direction: rtl; display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 18px; }
.cm-receive-card .cm-receive-img { order: 0; }
.cm-receive-card .cm-receive-text { order: 1; text-align: right; }
.cm-receive-card p { min-height: 3.6em; } /* حداقل ۲ خط (یک‌ونیم تا دو خط)، نه یک خط فشرده */
@media (max-width: 768px) {
	.cm-receive-grid { grid-template-columns: 1fr; }
	.cm-receive-grid > .cm-receive-card:first-child { grid-column: auto; }
}

/* ===== اعتراضات: بدون ❌ (آیکون علامت سوال کافی است) ===== */
.cm-objection-item strong { display: block; margin-bottom: 4px; }

/* ===== مودال ثبت‌نام: دکمه‌ی یکپارچه‌ی «پرداخت» ===== */
.cm-btn-pay { width: 100%; display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 1.05rem; }
.cm-mobile-hint { display: block; margin-top: 4px; font-size: 12px; opacity: .75; }
.cm-payment-wait { text-align: center; padding: 18px 0; }

/* ===== «دریافتی‌ها» v33: زمینه‌ی هم‌رنگ دوره، عنوان سفید؛ دسکتاپ: کارت اول ۱۰۰٪ و دو کارت بعدی ۵۰٪-۵۰٪؛ موبایل: زیر هم ===== */
.cm-course-wrap .cm-receive-box { background: var(--cm-green) !important; border: 0 !important; }
.cm-course-wrap .cm-receive-box h3 { color: #fff !important; }
.cm-course-wrap .cm-receive-box .cm-receive-grid {
	display: flex !important; flex-wrap: wrap !important; gap: 18px !important; direction: rtl; grid-template-columns: none !important;
}
.cm-course-wrap .cm-receive-box .cm-receive-card {
	background: #fff !important; border: 0 !important; box-sizing: border-box !important;
	grid-column: auto !important; min-width: 0; margin: 0 !important;
	flex: 0 0 calc(50% - 9px) !important; width: calc(50% - 9px) !important; max-width: calc(50% - 9px) !important;
}
.cm-course-wrap .cm-receive-box .cm-receive-card:first-child {
	flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important;
}
.cm-course-wrap .cm-receive-box .cm-receive-card:nth-child(n+4) { display: none !important; }
@media (max-width: 768px) {
	.cm-course-wrap .cm-receive-box .cm-receive-grid { gap: 14px !important; }
	.cm-course-wrap .cm-receive-box .cm-receive-card,
	.cm-course-wrap .cm-receive-box .cm-receive-card:first-child {
		flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important;
	}
}
.cm-payment-methods { display: flex; flex-direction: column; gap: 12px; }
.cm-payment-methods button { width: 100%; display: flex; align-items: center; justify-content: center; gap: 10px; }

/* ===== دسکتاپ: سایهٔ باکس‌ها پررنگ‌تر تا مثل موبایل کامل دیده شود ===== */
@media (min-width: 769px) {
	body .cm-benefit-card,
	body .cm-topic-item,
	body .cm-session-item,
	body .cm-faq-item,
	body .cm-objection-item {
		border-color: rgba(0,0,0,.09) !important;
		box-shadow: 0 10px 26px rgba(0,0,0,.20), 0 3px 8px rgba(0,0,0,.12) !important;
	}
	body .cm-benefit-card:hover,
	body .cm-topic-item:hover,
	body .cm-session-item:hover,
	body .cm-faq-item:hover,
	body .cm-objection-item:hover {
		box-shadow: 0 16px 34px rgba(0,0,0,.26), 0 4px 10px rgba(0,0,0,.14) !important;
	}
	body .cm-main-page,
	body .cm-smart-sidebar {
		box-shadow: 0 16px 38px rgba(0,0,0,.14), 0 3px 8px rgba(0,0,0,.08);
		border-color: rgba(0,0,0,.08);
	}
}
