/**
 * 站点轻度焕新：模块页视觉微调 + 767px 手机端轻度适配
 * 不改 DOM 结构，仅 CSS 兜底
 *
 * 注意：本文件在 AppAsset 中排在 msup.css 之后，内页顶栏样式必须写在这里
 * 才能覆盖 msup 头部规则（原先依赖 top.php 内联样式）。
 */

/* —— 内页顶栏（.alltop）恢复原布局并轻度增强 —— */
.alltop .navbar {
	width: 100%;
	border: none;
	margin: 0;
	padding: 0;
	background: #f9f9fa;
}
.alltop .navbar-brand { height: 76px; }
.alltop .navbar-toggle { margin-top: 18px; }
.alltop nav .checknav { border-bottom: #0a0a0a 2px solid; }
.alltop .btn_all {
	border: 1px solid #000000;
	border-radius: 8px;
	margin-top: 20px;
}
.alltop .carousel-indicators { display: none; }

@media (min-width: 767px) {
	.alltop #menu {
		margin-top: 13px;
		padding-left: 30px;
		float: left;
		width: 80%;
	}
	.alltop #menu > li {
		margin: 0 13px;
	}
	.alltop #menu > li > a {
		font-size: 16px;
		font-family: "arial black", Arial, sans-serif;
		font-weight: bold;
		color: #000000;
		text-decoration: none;
		line-height: 1.2;
		padding: 0 0 20px;
		margin-top: 26px;
		border-bottom: 2px solid #f9f9fa;
		transition: border-color 0.2s ease, color 0.2s ease;
	}
	.alltop #menu > li > a:hover {
		border-bottom: 2px solid #000000;
		color: #000000;
	}
	.alltop #menu > li.menu-item-event {
		margin: 0 22px 0 16px;
	}
	.alltop #menu > li.menu-item-event > a {
		position: relative;
		padding-right: 34px;
		font-weight: 700;
		color: #c41230;
		letter-spacing: 0.02em;
	}
	.alltop #menu > li.menu-item-event > a:hover {
		border-bottom-color: #c41230;
		color: #a00e28;
	}
	.alltop #menu > li.menu-item-event > a .nav-new-badge {
		position: absolute;
		top: -10px;
		right: 0;
		display: inline-block;
		min-width: 28px;
		padding: 1px 5px;
		font-size: 10px;
		font-weight: 700;
		line-height: 14px;
		letter-spacing: 0.04em;
		color: #fff;
		background: #e53935;
		border-radius: 2px;
		box-shadow: 0 1px 3px rgba(196, 18, 48, 0.35);
		pointer-events: none;
		white-space: nowrap;
	}
}

@media (min-width: 1336px) {
	.alltop #login_page { position: absolute; top: 0; right: 130px; }
}
@media (max-width: 1336px) {
	.alltop #login_page { position: absolute; top: 0; right: 0; }
}
@media (max-width: 1050px) {
	.alltop #login_page { position: absolute; top: 0; right: 90px; }
	.alltop #menu { width: 600px; }
}
@media (max-width: 1007px) {
	.alltop #login_page { position: absolute; top: 0; right: 90px; }
	.alltop #menu { width: 500px; }
}
@media (max-width: 900px) {
	.alltop #login_page { position: absolute; top: 0; right: 20px; }
	.alltop #menu { width: 500px; }
}
@media (max-width: 878px) {
	.alltop #menu { width: 400px; }
}
@media (max-width: 781px) {
	.alltop #login_page { position: absolute; top: 0; right: 0; }
	.alltop #menu { width: 500px; }
}
@media (min-width: 750px) {
	.alltop #btn_register {
		width: 110px;
		height: 35px;
		line-height: 35px;
		color: #000000;
	}
}
@media (max-width: 767px) {
	.alltop #login_page { position: static; }
	.alltop .btn_all { border: none; }
	.alltop #menu { width: 100%; float: none; padding-left: 0; }
	.alltop #btn_register { color: #FFFFFF; }
	.alltop #menu > li > a {
		display: block;
		min-height: 44px;
		line-height: 44px;
		padding: 4px 16px;
		box-sizing: border-box;
		margin-top: 0;
		border-bottom: none;
		color: #FFFFFF;
	}
	.alltop #menu > li.menu-item-event > a {
		color: #ffb3bd;
		font-weight: 700;
		padding-right: 16px;
	}
	.alltop #menu > li.menu-item-event > a .nav-new-badge {
		position: relative;
		top: -2px;
		right: 0;
		margin-left: 6px;
		vertical-align: middle;
		display: inline-block;
		min-width: 28px;
		padding: 1px 5px;
		font-size: 10px;
		font-weight: 700;
		line-height: 14px;
		color: #fff;
		background: #e53935;
		border-radius: 2px;
		white-space: nowrap;
	}
}
@media (max-width: 640px) {
	#topzm { bottom: 70px !important; }
	#chatBtn { padding: 22px !important; right: 1px !important; }
	#chatBtn img {
		position: absolute !important;
		right: 9px !important;
		bottom: 8px !important;
	}
}

/* —— 全局内容区 —— */
img {
	max-width: 100%;
	height: auto;
}

.centerArea .container,
.greyArea .container,
.whiteArea .container {
	box-sizing: border-box;
}

.bigBlackBtn,
.downloadBtn,
.btn.bigBlackBtn {
	transition: opacity 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.bigBlackBtn:hover,
.downloadBtn:hover {
	opacity: 0.92;
}

/* —— 首页 —— */
.indexTop .indexHeader {
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.overlay-menu ul li a {
		display: block;
		min-height: 44px;
		line-height: 44px;
		padding: 0 8px;
		font-size: 16px;
	}
	.indexTop .mob .button_container {
		min-width: 44px;
		min-height: 44px;
	}
}

/* —— 专家智库 / 咨询共用讲师卡片 —— */
.expertCon .coachList li,
.advisoryCon .coachList li {
	transition: opacity 0.2s ease;
}

.expertCon .coachMessage,
.advisoryCon .coachMessage {
	line-height: 1.55;
}

@media (max-width: 767px) {
	.expertCon,
	.advisoryCon {
		overflow-x: hidden;
	}
	.expertCon .centerArea,
	.advisoryCon .centerArea,
	.expertCon .container,
	.advisoryCon .container {
		padding-left: 16px;
		padding-right: 16px;
		box-sizing: border-box;
	}
	.expertCon .coachList,
	.advisoryCon .coachList {
		padding-left: 0;
		padding-right: 0;
	}
	.expertCon .coachList li,
	.advisoryCon .coachList li {
		margin-bottom: 16px;
		box-sizing: border-box;
	}
	.expertCon .coachList li img,
	.advisoryCon .coachList li img {
		max-width: 100%;
		height: auto;
	}
	.expertCon .coachMessage h5,
	.advisoryCon .coachMessage h5 {
		line-height: 1.4;
		word-break: break-word;
	}
	.advisoryCon .solution {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		margin-bottom: 12px;
	}
	.advisoryCon .downloadBtn {
		min-height: 40px;
		line-height: 40px;
		padding: 0 14px;
	}
}

/* 智库详情正文 */
.coachDetailsCon {
	line-height: 1.7;
}
@media (max-width: 767px) {
	.coachDetailsCon {
		padding-left: 16px;
		padding-right: 16px;
		box-sizing: border-box;
		overflow-x: hidden;
	}
	.coachDetailsCon .detailsRight .detailsRightCon,
	.coachDetailsCon .detailsLeft {
		width: 100% !important;
		max-width: 100%;
		box-sizing: border-box;
	}
	.coachDetailsCon img {
		max-width: 100%;
		height: auto;
	}
}

/* —— 课程 —— */
.classCon,
.roleCon {
	box-sizing: border-box;
}
@media (max-width: 767px) {
	.roleCon,
	.classListCon,
	.search-div {
		overflow-x: hidden;
		padding-left: 12px;
		padding-right: 12px;
		box-sizing: border-box;
	}
	.search-div-title h1 {
		padding-top: 36px;
		padding-bottom: 28px;
		font-size: 22px;
		line-height: 1.35;
	}
	.search-div-from {
		display: flex;
		align-items: stretch;
		height: auto;
		min-height: 44px;
	}
	.search-div-from input {
		flex: 1;
		min-width: 0;
		height: 42px;
	}
	.search-div-from button {
		float: none;
		min-width: 72px;
		min-height: 44px;
		padding: 0 12px;
	}
	.roleCon .classTitle .classTitleCon p,
	.roleCon .classCon p,
	.classCon p {
		-webkit-line-clamp: 3;
	}
}

/* —— 技术大会（双文档页 CSS 兜底） —— */
@media (max-width: 767px) {
	body > .wrap,
	.con {
		overflow-x: hidden;
		max-width: 100vw;
	}
	.con .item,
	.con .mid,
	.con .flexcon {
		box-sizing: border-box;
		max-width: 100%;
	}
	.con img {
		max-width: 100%;
		height: auto;
	}
	.con .flexcon {
		flex-wrap: wrap;
	}
	.con .li {
		box-sizing: border-box;
		padding-left: 8px;
		padding-right: 8px;
	}
	.con p,
	.con h1,
	.con h2,
	.con h3,
	.con h4 {
		word-break: break-word;
	}
	.con a.btn,
	.con .btn {
		min-height: 40px;
		display: inline-block;
		line-height: 40px;
		padding-left: 14px;
		padding-right: 14px;
	}
}

/* —— 方法+ —— */
.methodPlusCon .bigBlackBtn {
	min-height: 44px;
	line-height: 44px;
	padding-left: 18px;
	padding-right: 18px;
}
@media (max-width: 767px) {
	.methodPlusCon {
		overflow-x: hidden;
	}
	.methodPlusCon .container {
		padding-left: 16px;
		padding-right: 16px;
		box-sizing: border-box;
	}
	.methodPlusCon h1,
	.methodPlusCon h2,
	.methodPlusCon h3,
	.methodPlusCon h4,
	.methodPlusCon p {
		word-break: break-word;
		line-height: 1.55;
	}
	.methodPlusCon .bigBlackBtn {
		display: inline-block;
		margin: 8px 4px;
		font-size: 14px;
	}
}

/* —— 关于我们 —— */
.aboutUsCon h1 {
	line-height: 1.45;
}
.aboutUsCon h3 {
	line-height: 1.75;
}
@media (max-width: 767px) {
	.aboutUsCon {
		overflow-x: hidden;
	}
	.aboutUsCon .container {
		padding-left: 16px;
		padding-right: 16px;
		box-sizing: border-box;
	}
	.aboutUsCon h1.text-center {
		font-size: 18px;
		padding-left: 8px;
		padding-right: 8px;
	}
	.aboutUsCon h3 {
		font-size: 15px !important;
		text-indent: 0 !important;
	}
	.aboutUsCon .address,
	.aboutUsCon .addressCon {
		box-sizing: border-box;
		max-width: 100%;
	}
	.aboutUsCon table {
		display: block;
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* —— 2026 研发战略（index2 内嵌页） —— */
@media (max-width: 767px) {
	.budget {
		overflow-x: hidden;
		max-width: 100vw;
		box-sizing: border-box;
	}
	.budget img {
		max-width: 100%;
		height: auto;
	}
	.budget a,
	.budget .btn {
		min-height: 40px;
	}
}

/* —— 活动专题补充触控 —— */
@media (max-width: 767px) {
	.evt-page .evt-filter-bar button,
	.evt-page .evt-cal-nav,
	.evt-page .evt-cal-today-btn,
	.evt-page .evt-search-btn,
	.evt-page a.evt-card {
		min-height: 40px;
	}
	.evt-page {
		padding-left: 0;
		padding-right: 0;
	}
}
