/* ===== 讲师介绍核心样式 ===== */
.detail-article {
	background: #fff;
	border-radius: 8px;
	border: 1px solid #e0e0e0;
	padding: 45px 55px;
	margin: 20px auto;
}
.lecturer-header {
	display: flex;
	flex-wrap: wrap;
	gap: 0px;
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #eee;
}
.lecturer-avatar {
	flex: 0 0 180px;
	text-align: center;
}
.lecturer-avatar img {
	width: 135px;
	box-shadow: 0 4px 20px rgba(157, 31, 44, 0.15);
	background: #f0f0f0;
}
.lecturer-avatar .badge {
	display: inline-block;
	margin-top: 12px;
	background: #9d1f2c;
	color: #fff;
	font-size: 13px;
	padding: 4px 20px;
	border-radius: 20px;
	font-weight: 500;
}
.lecturer-info {
	flex: 1;
	min-width: 240px;
}
.lecturer-info .name-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 12px 18px;
	margin-bottom: 8px;
}
.lecturer-info .name-row h1 {
	font-size: 30px;
	font-weight: 700;
	color: #222;
	margin: 0;
}
.lecturer-info .name-row .subhead {
	font-size: 18px;
	color: #9d1f2c;
	font-weight: 500;
}
.lecturer-info .tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 14px;
}
.lecturer-info .tags span {
	background: #f5f0f0;
	color: #9d1f2c;
	padding: 2px 16px;
	border-radius: 12px;
	font-size: 13px;
	border: 1px solid #ecd5d5;
}
.lecturer-info p {
	font-size: 15px;
	color: #555;
	line-height: 1.8;
	text-align: justify;
}
.lecturer-info p strong { color: #9d1f2c; }

/* 荣誉列表 */
.honor-list {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 40px;
	background: #fcf8f8;
	padding: 18px 24px;
	border-radius: 8px;
	border-left: 4px solid #9d1f2c;
	margin: 10px 0 22px 0;
}
.honor-list .honor-item {
	font-size: 14px;
	color: #444;
}
.honor-list .honor-item .year {
	font-weight: 700;
	color: #9d1f2c;
	margin-right: 6px;
}

/* 履历时间线 */
.timeline {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 12px 0 10px;
}
.timeline .tl-item {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 20px;
	padding: 12px 18px;
	background: #fafafa;
	border-radius: 6px;
	border-left: 3px solid #9d1f2c;
}
.timeline .tl-item .tl-period {
	font-weight: 700;
	color: #9d1f2c;
	font-size: 14px;
	min-width: 110px;
	white-space: nowrap;
}
.timeline .tl-item .tl-desc {
	font-size: 14px;
	color: #555;
	flex: 1;
}
.timeline .tl-item .tl-desc strong { color: #333; }

/* 主讲方向网格 */
.course-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 18px;
	margin: 14px 0 10px;
}
.course-card {
	background: #fafafa;
	border: 1px solid #eee;
	border-radius: 8px;
	padding: 18px 20px;
	transition: 0.25s;
}
.course-card:hover {
	border-color: #9d1f2c;
	box-shadow: 0 4px 16px rgba(157, 31, 44, 0.06);
}
.course-card .cat {
	font-size: 15px;
	font-weight: 700;
	color: #9d1f2c;
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	gap: 8px;
}
.course-card .cat .icon { font-size: 18px; }
.course-card ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.course-card ul li {
	font-size: 13px;
	color: #555;
	padding: 4px 0 4px 18px;
	border-bottom: 1px dashed #f0f0f0;
	position: relative;
	line-height: 1.6;
}
.course-card ul li:last-child { border-bottom: none; }
.course-card ul li::before {
	content: "▸";
	position: absolute;
	left: 0;
	color: #9d1f2c;
	font-weight: 700;
}

/* 内容小标题 */
.detail-article .content .section-title {
	font-size: 20px;
	font-weight: 700;
	color: #222;
	margin: 32px 0 14px 0;
	padding-left: 14px;
	border-left: 4px solid #9d1f2c;
	text-indent: 0;
}
.detail-article .content p {font-size: 14px;line-height: 2.7; }
.detail-article .content .section-title,
.detail-article .content .section-sub,
.detail-article .content .honor-list,
.detail-article .content .timeline,
.detail-article .content .course-grid,
.detail-article .content .course-card ul li,
.detail-article .content .lecturer-header p { text-indent: 0; }

/* ===== 相关推荐 - 一行3个卡片 ===== */
.related-section {
	margin-top: 40px;
	padding-top: 28px;
	border-top: 1px solid #eee;
}
.related-section .section-title-related {
	font-size: 22px;
	font-weight: 700;
	color: #222;
	margin-bottom: 18px;
	padding-left: 14px;
	border-left: 4px solid #9d1f2c;
}
.related-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.related-card {
	background: #fafafa;
	border: 1px solid #e8e8e8;
	border-radius: 8px;
	padding: 20px 22px 16px;
	transition: 0.3s;
	cursor: pointer;
	display: flex;
	flex-direction: column;
}
.related-card:hover {
	border-color: #9d1f2c;
	box-shadow: 0 4px 16px rgba(157, 31, 44, 0.08);
	transform: translateY(-2px);
}
/* 标题：强制单行，超出省略号，前面加 ▸ */
.related-card .card-title {
	font-size: 17px;
	font-weight: 600;
	color: #222;
	line-height: 1.5;
	margin-bottom: 4px;
	padding-left: 18px;
	position: relative;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
.related-card .card-title::before {
	content: "▸";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	color: #9d1f2c;
	font-weight: 700;
	font-size: 15px;
}
.related-card .card-title a {
	color: #222;
	text-decoration: none !important;
	transition: 0.2s;
}
.related-card .card-title a:hover {
	color: #9d1f2c;
}
/* 简介：固定3行，超出省略号 */
.related-card .card-desc {
	font-size: 14px;
	color: #777;
	line-height: 1.7;
	margin-bottom: 10px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	flex: 1;
	min-height: 66px;
}
.related-card .card-tag {
	display: inline-block;
	background: #f5f0f0;
	color: #9d1f2c;
	padding: 2px 14px;
	border-radius: 12px;
	font-size: 12px;
	border: 1px solid #ecd5d5;
	align-self: flex-start;
	margin-top: auto;
	margin-right: 18px;
}

/* 响应式 */
@media (max-width: 992px) {
	.related-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
	.detail-article { padding: 20px 16px; }
	.lecturer-header { flex-direction: column; align-items: center; text-align: center; }
	.lecturer-info { text-align: center; }
	.lecturer-info .name-row { justify-content: center; }
	.lecturer-info .tags { justify-content: center; }
	.honor-list { flex-direction: column; gap: 8px; align-items: center; text-align: center; }
	.timeline .tl-item { flex-direction: column; align-items: flex-start; gap: 4px; }
	.timeline .tl-item .tl-period { white-space: normal; }
	.course-grid { grid-template-columns: 1fr; }
	.related-grid { grid-template-columns: 1fr; }
	.lecturer-info .name-row{display: block;}
	.lecturer-avatar .badge{display: none;}
}
@media (max-width: 480px) {
	.detail-article { padding: 16px 12px; }
	.lecturer-avatar { flex: 0 0 140px; }
	.lecturer-avatar img { width: 100px; }
	.lecturer-info .name-row h1 { font-size: 24px; }
	.lecturer-info .name-row .subhead { font-size: 15px; }
	.related-grid { grid-template-columns: 1fr; }
	.related-section .section-title-related { font-size: 18px; }
	.detail-article .content p{line-height: 2;}
}