/* ============================================================
   دوره‌ها — /courses/{slug}/ (پست‌تایپ academy)
   وابسته به توکن‌های main.css (:root) و کارت‌های blog.css
   ============================================================ */

.ac-wrap { padding-bottom: 64px; }

/* ---------- هیرو تیره ---------- */
.ac-hero { background: var(--dark-2); color: #fff; padding: 22px 0 44px; margin-bottom: 44px; }
.ac-hero .b-crumbs, .ac-hero .b-crumbs a { color: rgba(255, 255, 255, .6); }
.ac-hero .b-crumbs .last, .ac-hero .b-crumbs a:hover { color: #fff; }
.ac-hero__grid { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: 44px; align-items: center; }
.ac-hero__title { font-size: clamp(24px, 3.2vw, 34px); font-weight: 800; line-height: 1.6; margin: 0 0 16px; }
.ac-hero__rate { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--dark-muted); margin-bottom: 20px; }
.ac-hero__stars { display: inline-flex; gap: 3px; font-size: 17px; }
.ac-hero__stars .is-on { color: var(--primary); }

.ac-teachers { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.ac-teachers__pics { display: flex; }
.ac-teachers__pics img {
	width: 46px; height: 46px; border-radius: 50%; object-fit: cover; object-position: top;
	border: 2px solid var(--dark-2); background: var(--surface-2);
}
.ac-teachers__pics img + img { margin-inline-start: -14px; }
.ac-teachers__name { font-size: 16px; font-weight: 700; }
.ac-teachers__role { font-size: 13px; color: var(--dark-muted); }

.ac-buy { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.ac-buy .btn { min-width: 190px; justify-content: center; }
.ac-price__old { color: var(--dark-muted); text-decoration: line-through; font-size: 14px; }
.ac-price__now { font-size: 21px; font-weight: 800; }

.ac-hero__cover { border-radius: var(--radius); overflow: hidden; aspect-ratio: 16 / 9; background: rgba(255, 255, 255, .06); }
.ac-hero__cover img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---------- نوار آمار و مشخصات ---------- */
.ac-info { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 22px; margin-bottom: 52px; }
.ac-info__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ac-fact {
	display: flex; align-items: center; gap: 14px; background: var(--surface);
	border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 16px 18px;
}
.ac-fact__icon {
	flex: 0 0 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
	font-size: 22px; color: var(--primary); background: rgba(247, 160, 29, .1);
}
.ac-fact__body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ac-fact__label { font-size: 14.5px; font-weight: 700; }
.ac-fact__value { font-size: 13px; color: var(--muted); }

.ac-stats {
	background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius);
	padding: 22px; display: flex; align-items: center; justify-content: space-between; gap: 18px;
}
.ac-stats__col { display: flex; flex-direction: column; gap: 18px; }
.ac-stats__item { display: flex; flex-direction: column; gap: 2px; }
.ac-stats__num { font-size: 20px; font-weight: 800; display: inline-flex; align-items: center; gap: 5px; }
.ac-stats__num i { color: var(--primary); font-size: 17px; }
.ac-stats__label { font-size: 13px; color: var(--muted); }
.ac-ring { position: relative; width: 116px; height: 116px; flex-shrink: 0; }
.ac-ring svg { transform: rotate(-90deg); }
.ac-ring__track { stroke: var(--surface-2); }
.ac-ring__bar { stroke: var(--primary); stroke-linecap: round; transition: stroke-dashoffset .6s; }
.ac-ring__txt {
	position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center;
	gap: 2px; text-align: center; font-size: 11.5px; color: var(--muted); line-height: 1.5;
}
.ac-ring__txt b { font-size: 18px; color: var(--primary-d); }

/* ---------- بدنه‌ی معرفی ---------- */
.ac-about { margin-bottom: 52px; }
.ac-about .post-content { font-size: 16px; line-height: 2.1; max-height: 15em; overflow: hidden; transition: max-height .3s; }
.ac-about .post-content h2 { font-size: 22px; margin: 1.4em 0 .6em; }
.ac-about .post-content h3 { font-size: 18px; margin: 1.2em 0 .5em; }
.ac-about .post-content ul { list-style: disc; padding-right: 22px; margin: 0 0 1.2em; }
.ac-about .post-content a { color: var(--primary-d); }
.show-more-btn {
	display: block; margin: 18px auto 0; background: none; border: 0; cursor: pointer;
	color: var(--primary-d); font: inherit; font-weight: 800; font-size: 15.5px;
}

/* ---------- سرفصل‌ها ---------- */
.ac-topics { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 26px; align-items: start; margin-bottom: 52px; }
.ac-topics__title { font-size: clamp(21px, 2.6vw, 30px); font-weight: 800; text-align: center; margin: 0 0 26px; }
.topic-section { display: flex; flex-direction: column; gap: 12px; }
.topic-section-item {
	display: flex; align-items: center; gap: 14px; cursor: pointer; padding: 16px 20px;
	background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); transition: .2s;
}
.topic-section-item:hover { border-color: var(--primary); }
.topic-section-item.active { border-color: var(--primary); border-end-start-radius: 0; border-end-end-radius: 0; }
.ac-topic__no { display: inline-flex; align-items: center; gap: 10px; color: var(--muted); font-weight: 700; flex-shrink: 0; }
.ac-topic__no i { font-size: 22px; color: var(--primary); }
.ac-topic__title { flex: 1; font-size: 16.5px; font-weight: 700; margin: 0; }
.topic-section-item .arrow { color: var(--primary); font-size: 18px; transition: transform .25s; flex-shrink: 0; }
.topic-section-item .arrow.rotate-180 { transform: rotate(180deg); }
.topic-section-content {
	display: none; padding: 4px 20px 18px; font-size: 15px; line-height: 2.1; color: var(--muted);
	background: var(--surface); border: 1px solid var(--border); border-top: 0;
	border-end-start-radius: var(--radius-sm); border-end-end-radius: var(--radius-sm); margin-top: -12px;
}
.ac-buybox {
	position: sticky; top: 96px; background: var(--dark-2); color: #fff;
	border-radius: var(--radius); padding: 24px; text-align: center;
}
.ac-buybox__label { font-size: 13.5px; color: var(--dark-muted); }
.ac-buybox__price { font-size: 26px; font-weight: 800; margin: 6px 0 16px; }
.ac-buybox__old { display: block; font-size: 14px; font-weight: 400; color: var(--dark-muted); text-decoration: line-through; }

/* ---------- مدرس ---------- */
.ac-teacher {
	display: flex; gap: 26px; align-items: flex-start; flex-wrap: wrap;
	background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius);
	padding: 24px; margin-bottom: 22px;
}
.ac-teacher__pic { width: 210px; height: 190px; border-radius: var(--radius-sm); object-fit: cover; object-position: top; flex-shrink: 0; background: var(--surface-2); }
.ac-teacher__body { flex: 1 1 320px; display: flex; flex-direction: column; gap: 10px; }
.ac-teacher__name { font-size: 22px; font-weight: 800; margin: 0; }
.ac-teacher__socials { display: flex; gap: 12px; font-size: 19px; color: var(--muted); }
.ac-teacher__socials a:hover { color: var(--primary); }
.ac-teacher__about { color: var(--muted); font-size: 15px; line-height: 2.1; }

/* ---------- دیدگاه‌ها ---------- */
.ac-quotes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.ac-quote {
	background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius);
	padding: 22px; display: flex; flex-direction: column; gap: 14px;
}
.ac-quote__txt { color: var(--muted); font-size: 14.5px; line-height: 2; margin: 0; }
.ac-quote__who { display: flex; align-items: center; gap: 10px; margin-top: auto; }
.ac-quote__who img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; background: var(--surface-2); }
.ac-quote__name { font-weight: 700; font-size: 14.5px; }
.ac-quote__role { color: var(--muted); font-size: 12.5px; }

/* ---------- بلوک تماس ---------- */
.ac-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; margin-bottom: 52px; }
.ac-contact h2 { font-size: clamp(21px, 2.8vw, 32px); font-weight: 800; margin: 0 0 12px; }
.ac-contact p { color: var(--muted); font-size: 16px; line-height: 2.1; margin: 0; }
.ac-contact img { width: 100%; height: auto; object-fit: contain; }

.ac-section { margin-bottom: 52px; }
.ac-section__title { font-size: clamp(21px, 2.6vw, 30px); font-weight: 800; margin: 0 0 22px; padding-right: 14px; position: relative; }
.ac-section__title::before { content: ''; position: absolute; right: 0; top: 6px; bottom: 6px; width: 4px; border-radius: 4px; background: var(--primary); }

/* ---------- ریسپانسیو ---------- */
@media (max-width: 1024px) {
	.ac-hero__grid, .ac-info, .ac-topics, .ac-contact { grid-template-columns: 1fr; gap: 26px; }
	.ac-info__cards { grid-template-columns: repeat(2, 1fr); }
	.ac-quotes { grid-template-columns: repeat(2, 1fr); }
	.ac-buybox { position: static; }
}
@media (max-width: 760px) {
	.ac-info__cards, .ac-quotes { grid-template-columns: 1fr; }
	.ac-teacher__pic { width: 100%; height: 220px; }
	.ac-hero { padding-bottom: 30px; margin-bottom: 30px; }
}
