/* html { zoom: 120%; } */
:root {
	--c-primary: #329d6d;
	--c-primary-dark: #2a8a5e;
	--c-primary-light: #4db883;
	--c-primary-50: #f0faf4;
	--c-primary-100: #d4f0e0;
	--c-primary-200: #a8e1c1;
	--c-primary-300: #7dd2a2;
	--c-primary-400: #52c383;
	--c-primary-500: #329d6d;
	--c-primary-600: #2a8a5e;
	--c-primary-700: #23774f;
	--c-primary-800: #1c6440;
	--c-primary-900: #155131;
	--c-text: #1a1a1a;
	--c-text-secondary: #4a4a4a;
	--c-text-muted: #6b7280;
	--c-text-light: #9ca3af;
	--c-link: #2d64b3;
	--c-bg: #f5f7f9;
	--c-surface: #ffffff;
	--c-surface-hover: #fafbfc;
	--c-border: #e5e7eb;
	--c-border-light: #f0f0f0;
	--c-menu-divider: rgba(255, 255, 255, 0.25);

	--container: 1400px;
	/* --container: 1140px; */
	/* --sidebar-w: 200px; */
	/* --content-w: 920px; */

	--sidebar-w: 140px;
	--content-w: 1240px;
	--sidebar-w0: 200px; 
	/* --content-w1: 300px; */
	--radius-sm: 6px;
	--radius: 10px;
	--radius-lg: 16px;
	--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
	--shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.05);
	--shadow-lg: 0 4px 20px rgba(0, 0, 0, 0.1);
	--shadow-primary: 0 4px 20px rgba(50, 157, 109, 0.15);
	--transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box
}

body {
	line-height: 1.6;
	font-size: 13px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
	color: var(--c-text);
	background: var(--c-bg);
	min-width: var(--container)
}

a {
	color: var(--c-link);
	text-decoration: none;
	transition: var(--transition)
}

a:hover {
	color: var(--c-primary)
}

ul {
	list-style: none
}

img {
	max-width: 100%;
	vertical-align: middle
}

.ml-container {
	width: var(--container);
	margin: 0 auto
}

.ml-clearfix::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden
}

/* ===== Header ===== */
.ml-header {
	background: var(--c-surface);
	border-bottom: 1px solid var(--c-border-light)
}

.ml-header .ml-container {
	width: 1200px;
	padding: 35px 0 22px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.ml-header .ml-logo {
	width: 200px;
	height: 42px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

.ml-header .ml-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain
}

.ml-header-center {
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}

.ml-search {
	display: flex;
	align-items: center;
	justify-content: center;
}

.ml-search-form {
	display: flex;
	align-items: center
}

.ml-search-form input[type="text"] {
	width: 550px;
	height: 42px;
	line-height: 42px;
	border: 2px solid var(--c-primary);
	border-right: none;
	border-radius: 21px 0 0 21px;
	font-size: 13px;
	padding: 0 18px;
	outline: none;
	transition: var(--transition);
	background: var(--c-surface);
}

.ml-search-form input[type="text"]:focus {
	box-shadow: 0 0 0 3px rgba(50, 157, 109, 0.1);
}

.ml-search-form input[type="submit"] {
	width: 80px;
	height: 42px;
	line-height: 42px;
	border-radius: 0 21px 21px 0;
	font-size: 14px;
	letter-spacing: 2px;
	border: none;
	color: #fff;
	background: var(--c-primary);
	cursor: pointer;
	font-weight: 600;
	transition: var(--transition);
}

.ml-search-form input[type="submit"]:hover {
	background: var(--c-primary-dark)
}

.ml-header-right {
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

.ml-user {
	line-height: 42px;
	white-space: nowrap;
}

.ml-user a {
	color: var(--c-text-muted);
	font-size: 15px;
	transition: var(--transition)
}

.ml-user a:hover {
	color: var(--c-primary);
	text-decoration: none
}

.ml-user .ml-sep {
	color: #d1d5db;
	margin: 0 10px
}

/* ===== Nav ===== */
.ml-nav {
	background: var(--c-primary);
	margin-bottom: 0;
	height: 42px;
	box-shadow: 0 2px 8px rgba(50, 157, 109, 0.2)
}

.ml-nav .ml-container {
	display: flex;
	align-items: center;
	height: 100%;
	justify-content: center;
}

.ml-nav-list {
	display: flex
}

.ml-nav-list>li {
	position: relative
}

.ml-nav-list>li+li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 2px;
	height: 16px;
	background: var(--c-menu-divider);
	z-index: 2
}

.ml-nav-list>li:hover::before {
	display: none
}

.ml-nav-list>li>a {
	display: flex;
	align-items: center;
	gap: 4px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	/* padding: 0 32px; */
	padding: 0 48px;
	line-height: 42px;
	position: relative;
	transition: var(--transition)
}

.ml-nav-list>li>a:hover {
	background: var(--c-primary-dark);
	text-decoration: none
}

.ml-nav-list>li>a.active {
	background: var(--c-primary-dark)
}

.ml-nav-list>li>a.active::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-bottom: 6px solid var(--c-bg)
}

/* ===== 悬停时：隐藏当前 li 的 ::before 和下一个 li 的 ::before ===== */
.ml-nav-list>li:hover::before,
.ml-nav-list>li:hover + li::before {
        display: none;
}

/* ===== 激活时：隐藏当前 li 的 ::before 和下一个 li 的 ::before ===== */
.ml-nav-list>li:has(> a.active)::before,
.ml-nav-list>li:has(> a.active) + li::before {
        display: none;
}

.ml-nav-list>li>a .ml-nav-arrow {
	font-size: 9px;
	opacity: 0.7;
	font-weight: 400;
	transition: var(--transition)
}

.ml-nav-list>li:hover>a .ml-nav-arrow {
	transform: rotate(90deg)
}

.ml-nav-list .ml-submenu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 200px;
	background: #fff;
	box-shadow: var(--shadow-lg);
	border-radius: 0 0 var(--radius-sm) var(--radius-sm);
	z-index: 100;
	overflow: hidden
}

.ml-nav-list>li:hover>.ml-submenu {
	display: block;
	animation: fadeIn 0.2s ease
}

.ml-nav-list .ml-submenu li {
	position: relative;
	border-bottom: 1px solid var(--c-border-light)
}

.ml-nav-list .ml-submenu li:last-child {
	border-bottom: none
}

.ml-nav-list .ml-submenu li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 18px;
	color: var(--c-text-secondary);
	font-size: 13px;
	white-space: nowrap;
	transition: var(--transition)
}

.ml-nav-list .ml-submenu li a:hover {
	background: var(--c-primary-50);
	color: var(--c-primary);
	text-decoration: none
}

.ml-nav-list .ml-submenu li a.active {
	background: var(--c-primary);
	color: #fff
}

.ml-nav-list .ml-submenu li a.has-child::after {
	content: "›";
	font-size: 14px;
	opacity: 0.5;
	margin-left: 8px
}

.ml-nav-list .ml-submenu .ml-submenu {
	display: none;
	position: absolute;
	top: 0;
	left: 100%;
	min-width: 200px;
	background: #fff;
	box-shadow: var(--shadow-lg);
	border-radius: var(--radius-sm)
}

.ml-nav-list .ml-submenu li:hover>.ml-submenu {
	display: block;
	animation: fadeIn 0.2s ease
}

.ml-nav-list .ml-submenu .ml-submenu li a {
	padding: 10px 18px
}

.ml-nav-list .ml-submenu .ml-submenu li a:hover {
	background: var(--c-primary-50)
}

.ml-nav-list .ml-submenu .ml-submenu li a.active {
	background: var(--c-primary);
	color: #fff
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(-4px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* 头部工具区 */
.ml-header-tools { display: flex; align-items: center; gap: 14px; }
.ml-tool-fav { color: var(--ml-primary, #1a9b6c); display: flex; align-items: center; transition: transform .2s, color .2s; }
.ml-tool-fav:hover { transform: scale(1.15); color: var(--ml-primary-dark, #148055); }
.ml-tool-sep { width: 1px; height: 16px; background: #dcdfe4; }
.ml-tool-lang { display: flex; align-items: center; gap: 6px; color: var(--ml-primary, #1a9b6c); }
.ml-tool-lang svg { flex-shrink: 0; }
.ml-tool-lang i { font-style: normal; color: #c0c4cc; font-size: 12px; }
.ml-lang-item { color: #606266; font-size: 17px; transition: color .2s; font-weight: 600; }
.ml-lang-item:hover { color: var(--ml-primary, #1a9b6c); }
.ml-lang-item.ml-lang-on { color: var(--ml-primary, #1a9b6c); }

/* 收藏弹窗 */
.ml-fav-mask { position: fixed; inset: 0; background: rgba(0,0,0,.45); z-index: 9999; display: none; align-items: center; justify-content: center; }
.ml-fav-mask.ml-show { display: flex; }
.ml-fav-dialog { width: 360px; background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 12px 32px rgba(0,0,0,.18); animation: mlFavIn .25s ease; }
@keyframes mlFavIn { from { opacity: 0; transform: translateY(-12px); } to { opacity: 1; transform: translateY(0); } }
.ml-fav-title { position: relative; padding: 14px 16px; font-size: 15px; font-weight: 600; color: #303133; border-bottom: 1px solid #ebeef5; }
.ml-fav-close { position: absolute; right: 12px; top: 10px; font-size: 20px; color: #909399; cursor: pointer; line-height: 1; transition: color .2s; }
.ml-fav-close:hover { color: #303133; }
.ml-fav-body { padding: 20px 16px; font-size: 14px; color: #606266; line-height: 1.8; }
.ml-fav-body p { margin: 0; }
.ml-fav-tip { margin-top: 6px !important; font-size: 12px; color: #909399; }
.ml-fav-body kbd { display: inline-block; padding: 2px 7px; margin: 0 2px; font-size: 12px; font-family: inherit; color: #303133; background: #f5f7fa; border: 1px solid #dcdfe6; border-radius: 4px; box-shadow: 0 1px 0 #dcdfe6; }
.ml-fav-foot { padding: 0 16px 16px; text-align: right; }
.ml-fav-ok { padding: 7px 20px; font-size: 13px; color: #fff; background: var(--ml-primary, #1a9b6c); border: none; border-radius: 4px; cursor: pointer; transition: background .2s; }
.ml-fav-ok:hover { background: var(--ml-primary-dark, #148055); }



/* ===== Banner Row ===== */
.ml-main {
	padding: 20px 0
}

.ml-main .ml-container {
	display: flex;
	gap: 20px;
	position: relative
}

/* Left: Category Menu */
.ml-sidebar {
	width: var(--sidebar-w);
	flex-shrink: 0;
	position: sticky;
	top: 20px;
	align-self: flex-start;
	z-index: 50;
}

.ml-cat-menu {
	background: var(--c-primary);
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: var(--shadow-primary);
}

/*.ml-cat-menu>li,*/
/*.ml-cat-menu>li>a{*/
.ml-cat-menu>li{
	color: #fff;
	padding: 0 16px;
	font-size: 13px;
	cursor: pointer;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	transition: var(--transition);
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 44px;

	justify-content: center;
}
.ml-cat-menu>li>a{
	color: #fff;
}


.ml-cat-menu>li:last-child {
	border-bottom: none
}

.ml-cat-menu>li:hover,
.ml-cat-menu>li.active{
	background: var(--c-surface);
	color: var(--c-primary);
	font-weight: 600;
	box-shadow: inset 3px 0 0 var(--c-primary);
	border: none;
}

.ml-cat-menu>li.active>a{
	/*background: var(--c-surface);*/
	color: var(--c-primary);
}
.ml-cat-menu>li:hover a{
	color: var(--c-primary);
}


.ml-cat-menu>li .ml-nav-arrow {
	font-size: 11px;
	opacity: 0.6;
	transition: var(--transition)
}

.ml-cat-menu>li:hover .ml-nav-arrow,
.ml-cat-menu>li.active .ml-nav-arrow {
	opacity: 1;
	transform: translateX(2px)
}

.ml-cat-menu>li:nth-child(1),
.ml-cat-menu>li:nth-child(2) {
	font-size: 15px;
	padding: 35px 16px;
	height: 52px;
}

.ml-cat-menu>li:nth-child(1) .ml-tag,
.ml-cat-menu>li:nth-child(2) .ml-tag {
	/* top: 16px; */
	top: 8px;
	right: 20px;
}

.ml-tag.ml-tag-hot {
	background: #ef4444
}

.ml-tag {
	display: inline-block;
	padding: 1px 6px;
	background: var(--c-primary-300);
	color: #fff;
	font-size: 10px;
	border-radius: 10px;
	margin-left: 4px;
	position: absolute;
	top: 14px;
	right: 30px;
	font-weight: 600;
}

#catMenuArea::after {
	content: "";
	position: absolute;
	top: 0;
	left: var(--sidebar-w);
	/* 从 sidebar 右边缘开始 */
	width: 20px;
	/* 覆盖 20px 间隙 */
	height: 100%;
	background: transparent;
	pointer-events: auto;
	z-index: 100;
}

.ml-cat-panel {
	display: none;
	position: absolute;
	top: 0;
	left: calc(var(--sidebar-w) + 20px);
	width: 1025px;
	height: auto;
	min-height: 520px;
	max-height: 680px;
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius);
	padding: 20px 24px;
	box-shadow: var(--shadow-lg);
	z-index: 999;
	overflow-y: auto;
	border-radius: 10px;
}

.ml-cat-panel.ml-show {
	display: block;
	animation: fadeIn 0.15s ease
}

.ml-cat-content {
	display: none
}

.ml-cat-content.active {
	display: block
}

.ml-sub-row {
	display: flex;
	align-items: flex-start;
	margin-bottom: 3px;
	line-height: 1.6;
	padding-bottom: 3px;
	border-bottom: 1px solid var(--c-border-light)
}

.ml-sub-row:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0
}

.ml-sub-title {
	width: 90px;
	font-size: 13px;
	font-weight: 700;
	color: var(--c-primary);
	text-align: left;
	padding-right: 12px;
	flex-shrink: 0;
	line-height: 1.8;
}

.ml-sub-links {
	flex: 1;
	font-size: 12px;
	line-height: 1.8
}

.ml-sub-links a {
	color: var(--c-text-secondary);
	/* margin:0 3px; */
	display: inline-block;
	/* padding:1px 4px; */
	border-radius: 3px;
	transition: var(--transition);
}

.ml-sub-links a:hover {
	color: var(--c-primary);
	background: var(--c-primary-50);
	text-decoration: none;
}

.ml-sub-links .ml-sep {
	color: #d1d5db;
	margin: 0 2px
}

/* ===== Right Content Area ===== */
.ml-content {
	width: var(--content-w);
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Section Bar */
.ml-section-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 16px;
	background: var(--c-primary);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	position: relative;
	padding-right: 42px;
	letter-spacing: 0.5px;
}

.ml-section-bar a {
	color: rgba(255, 255, 255, 0.85);
	font-size: 12px;
	font-weight: 500;
	display: flex;
	align-items: center;
	gap: 4px;
	transition: var(--transition)
}

.ml-section-bar a:hover {
	text-decoration: none;
	color: #fff;
	transform: translateX(2px)
}

.ml-section-bar a::after {
	content: "›";
	font-size: 14px
}

/* ===== Module: Intro (Video + Text) ===== */
.ml-intro .ml-intro-inner {
	display: flex;
	gap: 0;
	/* min-height: 280px; */
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius) !important;
	overflow: hidden !important;
	display: flex;
	/* flex-direction: column; */
	transition: var(--transition);
}

.ml-intro-video {
	width: 387px;
	margin: 20px;
	flex-shrink: 0;
	border-right: 1px solid var(--c-border-light);
	position: relative;
	overflow: hidden;
}

.ml-intro-video::before {
	content: "▶";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 40px;
	color: rgba(255, 255, 255, 0.6);
	z-index: 2;
	pointer-events: none;
	opacity: 0;
	transition: var(--transition);
}

.ml-intro-video:hover::before {
	opacity: 1
}

.ml-video video {
	width: 100%;
	height: 100%;
	/* min-height: 280px; */
	display: block;
	/* object-fit: cover; */
	border: none;
	outline: none;
}

.ml-intro-text {
	flex: 1;
	/* padding: 20px 24px; */
	padding: 10px 20px;
	display: flex;
	flex-direction: column;
	/* justify-content: center; */
}

.ml-intro-video h2,
.ml-intro-text h2 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 14px;
	font-size: 16px;
	color: var(--c-primary);
	font-weight: 700;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--c-primary-100);
}

.ml-intro-text h2 a {
	color: var(--c-primary);
	font-size: 12px;
	font-weight: 500;
	display: flex;
	align-items: center;
	gap: 4px;
}

.ml-intro-text h2 a:hover {
	color: var(--c-primary-dark)
}

.ml-intro-text p {
	font-size: 13px;
	/* line-height: 2; */
	color: var(--c-text-secondary);
	text-align: justify;
	text-indent: 2em;
}

/* ===== Module: Qualifications (Two columns) ===== */
.ml-qualify .ml-qualify-inner {
	display: flex;
	gap: 16px
}

.ml-qualify-col {
	flex: 1;
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius) !important;
	overflow: hidden !important;
	display: flex;
	flex-direction: column;
	transition: var(--transition);
}

.ml-qualify-col:hover {
	box-shadow: var(--shadow);
}

.ml-qualify-col .ml-section-bar {
	margin-bottom: 0
}

.ml-qualify-col .ml-qualify-content {
	padding: 16px;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Certificate Gallery */
.ml-cert-gallery {
	display: flex;
	gap: 12px;
	padding: 16px;
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: thin;
	scrollbar-color: var(--c-primary-200) transparent;
}

.ml-cert-gallery::-webkit-scrollbar {
	height: 4px
}

.ml-cert-gallery::-webkit-scrollbar-track {
	background: transparent
}

.ml-cert-gallery::-webkit-scrollbar-thumb {
	background: var(--c-primary-200);
	border-radius: 2px
}

.ml-cert-item {
	/* flex:0 0 140px; */
	text-align: center;
	display: flex;
	flex-direction: column;
	transition: var(--transition);
	cursor: pointer;
}

.ml-cert-item:hover {
	transform: translateY(-4px)
}

.ml-cert-item .ml-cert-frame {
	background: linear-gradient(135deg, #f8f9fa, #fff);
	border: 2px solid #d4a574;
	padding: 4px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	border-radius: var(--radius-sm);
	transition: var(--transition);
	position: relative;
	overflow: hidden;
}

.ml-cert-item:hover .ml-cert-frame {
	box-shadow: 0 4px 16px rgba(212, 165, 116, 0.3);
	border-color: #c49464;
}

.ml-cert-item .ml-cert-frame::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(135deg, transparent 40%, rgba(255, 255, 255, 0.3) 50%, transparent 60%);
	transform: translateX(-100%);
	transition: var(--transition);
}

.ml-cert-item:hover .ml-cert-frame::after {
	transform: translateX(100%);
	transition: transform 0.6s ease;
}

.ml-cert-item .ml-cert-frame img {
	width:100%; 
	height:252px; 
	object-fit: cover;
	display: block;
	background: #fff;
	border-radius: 2px;
}

.ml-cert-item .ml-cert-frame.ptzz img {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
	height:168px; 
}

/*.ml-cert-item .ml-cert-frame.ptzs img {*/
/*	height:100%; */
/*}*/

.ml-cert-item .ml-cert-name {
	font-size: 12px;
	color: var(--c-text-secondary);
	margin-top: 10px;
	font-weight: 600;
	line-height: 1.4;
	padding: 0 4px;
}

/* ===== Module: News (Two columns) ===== */
.ml-news .ml-news-inner {
	display: flex;
	gap: 16px
}

.ml-news-col {
	flex: 1;
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius) !important;
	overflow: hidden !important;
	transition: var(--transition);
}

.ml-news-col:hover {
	box-shadow: var(--shadow)
}

.ml-news-list {
	padding: 0
}

.ml-news-list li {
	padding: 12px 16px;
	border-bottom: 1px solid var(--c-border-light);
	transition: var(--transition);
	position: relative;
}

.ml-news-list li:last-child {
	border-bottom: none
}

.ml-news-list li:hover {
	background: var(--c-primary-50)
}

.ml-news-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--c-primary);
	opacity: 0;
	transition: var(--transition);
}

.ml-news-list li:hover::before {
	opacity: 1
}

.ml-news-list a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: var(--c-text-secondary);
	font-size: 13px;
	gap: 12px;
}

.ml-news-list a:hover {
	color: var(--c-primary);
	text-decoration: none
}

.ml-news-list .ml-news-title {
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-weight: 500;
}

.ml-news-list .ml-news-date {
	color: var(--c-text-light);
	font-size: 12px;
	flex-shrink: 0;
	background: var(--c-bg);
	padding: 2px 8px;
	border-radius: 10px;
}

/* ===== Module: Partner ===== */
.ml-partner .ml-partner-card {
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	overflow: hidden;
	border-radius: var(--radius) !important;
}

.ml-partner .ml-section-bar {
	margin-bottom: 0
}

.ml-partner-content {
	padding: 20px
}

.ml-partner-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 16px;
}

.ml-partner-item {
	text-align: center;
	transition: var(--transition);
	padding: 12px 8px;
	border-radius: var(--radius-sm);
	border: 1px solid transparent;
}

.ml-partner-item:hover {
	transform: translateY(-3px);
	border-color: var(--c-primary-200);
	background: var(--c-primary-50);
	box-shadow: var(--shadow-sm);
}

.ml-partner-item .ml-partner-img {
	width: 100%;
	/* height: 70px; */
	background: #f8f9fa;
	border: 1px solid var(--c-border-light);
	border-radius: var(--radius-sm);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--c-text-light);
	font-size: 12px;
	margin-bottom: 8px;
	transition: var(--transition);
	overflow: hidden;
	padding: 8px;
}

.ml-partner-item:hover .ml-partner-img {
	border-color: var(--c-primary-300);
	box-shadow: 0 2px 8px rgba(50, 157, 109, 0.1);
}

.ml-partner-item .ml-partner-img img {
	max-width: 100%;
	max-height: 120px;
	object-fit: contain;
	filter: grayscale(30%);
	transition: var(--transition);
}

.ml-partner-item:hover .ml-partner-img img {
	filter: grayscale(0%);
}

.ml-partner-item .ml-partner-name {
	font-size: 12px;
	color: var(--c-text-muted);
	font-weight: 500;
}

.ml-partner-item:hover .ml-partner-name {
	color: var(--c-primary)
}

/* ===== Footer ===== */
.ml-footer {
	background: var(--c-surface);
	border-top: 3px solid var(--c-primary);
	padding: 0;
	margin-top: 30px;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.03);
}

.ml-footer-main {
	display: flex;
	gap: 0;
	border-bottom: 1px solid var(--c-border-light)
}

.ml-footer-qr {
	width: 440px;
	padding: 24px 20px
}

.ml-footer-qr h4 {
	font-size: 14px;
	color: var(--c-text);
	margin-bottom: 16px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--c-primary-100);
	font-weight: 700;
}

.ml-qr-row {
	display: flex;
	gap: 12px
}

.ml-qr-item {
	flex: 1;
	text-align: center
}

.ml-qr-item .ml-qr-img {
	width: 100%;
	/* height: 80px; */
	background: #f8f9fa;
	border: 1px solid var(--c-border);
	border-radius: var(--radius-sm);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--c-text-light);
	font-size: 11px;
	margin-bottom: 8px;
	overflow: hidden;
	transition: var(--transition);
}

.ml-qr-item .ml-qr-img:hover {
	border-color: var(--c-primary-200);
	box-shadow: var(--shadow-sm);
}

.ml-qr-item .ml-qr-img img {
	width: 100%;
	height: 100%;
	object-fit: contain
}

.ml-qr-item p {
	font-size: 12px;
	color: var(--c-text-muted);
	font-weight: 500
}

.ml-footer-links {
	width: 1000px;
	padding: 24px 20px;
	border-left: 1px solid var(--c-border-light);
	display: flex;
	gap: 24px;
}

.ml-footer-links .ml-link-block {
	flex: 1
}

.ml-footer-links .ml-link-block h4 {
	font-size: 14px;
	color: var(--c-text);
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--c-primary-100);
	font-weight: 700;
}

.ml-footer-links .ml-link-block ul li {
	padding: 5px 0
}

.ml-footer-links .ml-link-block ul li a {
	color: var(--c-text-muted);
	font-size: 13px;
	display: inline-block;
	transition: var(--transition);
	position: relative;
}

.ml-footer-links .ml-link-block ul li a::after {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 2px;
	background: var(--c-primary);
	transition: var(--transition);
}

.ml-footer-links .ml-link-block ul li a:hover {
	color: var(--c-primary);
	text-decoration: none;
	transform: translateX(2px);
}

.ml-footer-links .ml-link-block ul li a:hover::after {
	width: 100%
}

.ml-footer-bottom {
	padding: 14px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 12px;
	color: var(--c-text-light);
}

.ml-footer-bottom .ml-footer-bottom-links a {
	color: var(--c-text-muted);
	margin: 0 8px;
	font-size: 12px;
	transition: var(--transition);
}

.ml-footer-bottom .ml-footer-bottom-links a:hover {
	color: var(--c-primary);
	text-decoration: none
}

.ml-footer-bottom .ml-footer-bottom-links .ml-sep {
	color: #d1d5db
}

.ml-mt-10 {
	margin-top: 10px;
	margin-bottom: 10px;
}

.ml-nav-list>li:nth-child(2) {
	width: 220px;
}

.ml-nav-list>li:nth-child(2) a {
	justify-content: center;
}


.ml-section-bar {
	/* background: #ffffff; */
	background: var(--c-bg);
	color: var(--c-primary);
	/* color: #333; */
}

.ml-section-bar a {
	color: var(--c-primary);
}



.ml-stats {
	/* width: var(--content-w1); */
	/* flex: 1; */
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius) !important;
	overflow: hidden !important;
	transition: var(--transition);
	/* background: var(--c-primary); */
}

.ml-stats-inner {
	width: 100%;
	flex-shrink: 0;
	background: var(--c-surface);
}

.ml-stats-list {
	padding: 10px 12px;
}

.ml-stats-list li {
	padding: 8px 0;
	border-bottom: 1px dashed #eee;
}

.ml-stats-list li:last-child {
	border-bottom: none;
}


.ml-stats-list .ml-stats-item {
    display: flex;
    align-items: center;
    gap: 16px;
}
.ml-stats-list .ml-stats-icon {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    border-radius: 8px;
    padding: 4px;
    border: 1px solid var(--c-primary);
    background: none;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 14px;
}

.ml-stats-list a {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--c-text);
	font-size: 12px;
}

.ml-stats-list a:hover {
	color: var(--c-primary);
	text-decoration: none;
}

.ml-stats-list .ml-stats-icon {
	width: 14px;
	height: 14px;
	border-radius: 2px;
	flex-shrink: 0;
}

.ml-stats-right {
	flex: 1;
	background: var(--c-surface);
}


.ml-user {
	line-height: 42px;
	white-space: nowrap;
	display: flex;
	align-items: center;
	gap: 4px;
}

/* 登录后头像区域样式 */
.ml-avatar-wrap {
	position: relative;
	display: flex;
	align-items: center;
	cursor: pointer;
}

.ml-avatar {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	object-fit: cover;
	margin-right: 6px;
	border: 1px solid var(--c-border);
}

.ml-user-name {
	color: var(--c-text-muted);
	font-size: 15px;
	transition: var(--transition);
}

.ml-avatar-wrap:hover .ml-user-name {
	color: var(--c-primary);
}

/* 下拉面板 */
/* 下拉面板：气泡式紧凑版 */
.ml-user-panel {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	min-width: 128px;
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius-sm);
	box-shadow: var(--shadow-lg);
	padding: 6px;
	display: none;
	z-index: 99;
	animation: fadeIn 0.15s ease;
}

/* 顶部小三角 */
.ml-user-panel::after {
	content: "";
	position: absolute;
	top: -6px;
	right: 30px;
	width: 10px;
	height: 10px;
	background: var(--c-surface);
	border-left: 1px solid var(--c-border);
	border-top: 1px solid var(--c-border);
	transform: rotate(45deg);
}

/* 隐形连接桥：填补面板与头像之间的间隙，防止hover丢失 */
.ml-user-panel::before {
	content: "";
	position: absolute;
	top: -10px;
	left: 0;
	right: 0;
	height: 10px;
}

.ml-user-panel.ml-show {
	display: block;
}

.ml-user-panel a {
	display: flex;
	align-items: center;
	height: 32px;
	padding: 0 12px;
	font-size: 13px;
	color: var(--c-text-secondary);
	border-radius: 4px;
	white-space: nowrap;
	transition: var(--transition);
}

.ml-user-panel a:hover {
	background: var(--c-primary-50);
	color: var(--c-primary);
	text-decoration: none;
}

/* 退出登录：分隔线区分 */
.ml-user-panel a:last-child {
	margin-top: 4px;
	border-top: 1px solid var(--c-border-light);
	border-radius: 0 0 4px 4px;
	padding-top: 0;
	height: 36px;
}

.ml-user-panel a:last-child:hover {
	color: #ef4444;
	background: #fef2f2;
}
/* .ml-user-panel {
	position: absolute;
	top: 100%;
	right: 0;
	width: 140px;
	background: var(--c-surface);
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.1);
	border-radius: 6px;
	padding: 8px 0;
	display: none;
	z-index: 99;
}

.ml-user-panel.ml-show {
	display: block;
}

.ml-user-panel a {
	display: block;
	padding: 8px 16px;
	font-size: 14px;
	color: var(--c-text);
}

.ml-user-panel a:hover {
	background: #f5f7ff;
	color: var(--c-primary);
}


.ml-stats-inner {
	width: 300px;
	flex-shrink: 0;
	background: var(--c-surface);
	border-radius: 10px;
	box-shadow: 0 2px 12px rgba(37, 99, 235, 0.08);
	overflow: hidden;
} */

/* 标题栏渐变美化 */
.ml-section-bar {
	padding: 12px 16px;
	/* background: linear-gradient(135deg, var(--c-primary), var(--c-primary-light)); */
	/* color: #fff; */
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 1px;
}

.ml-stats-list {
	padding: 8px 16px;
	margin: 0;
	list-style: none;
}

.ml-stats-list li {
	padding: 14px 0;
	border-bottom: 1px dashed var(--c-border);
	transition: all 0.24s ease;
}

.ml-stats-list li:last-child {
	border-bottom: none;
}

.ml-stats-list a {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--c-text);
	font-size: 13px;
	text-decoration: none;
}

/* 渐变圆形图标，搭配内部小标识 */
.ml-stats-list .ml-stats-icon {
	width: 32px;
	height: 32px;
	flex-shrink: 0;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 14px;
}

/* 数字高亮样式，突出数据优势 */
.ml-stats-num {
	font-size: 16px;
	font-weight: 700;
	color: var(--c-primary);
	margin-right: 4px;
}

/* hover交互 */
.ml-stats-list li:hover {
	background-color: #f7faff;
	padding-left: 6px;
}

.ml-stats-list a:hover {
	color: var(--c-primary);
}


/* ===== 产品页：面包屑 ===== */
.ml-breadcrumb {
	padding: 16px 0;
	font-size: 13px;
	color: var(--c-text-muted);
}

.ml-breadcrumb a {
	color: var(--c-primary);
}

.ml-breadcrumb a:hover {
	text-decoration: underline;
}

.ml-breadcrumb .ml-sep {
	margin: 0 6px;
	color: var(--c-text-light);
}

.ml-breadcrumb .active {
	display: inline;
	font-size: 13px;
	font-weight: 600;
	color: var(--c-text);
}

/* ===== 产品页：主布局 ===== */
.ml-product-main {
	display: flex;
	gap: 20px;
	padding-bottom: 40px;
}

/* ===== 产品页：左侧分类 ===== */
.ml-product-sidebar {
	width: var(--sidebar-w0);
	flex-shrink: 0;
}

.ml-product-sidebar-title {
	font-size: 16px;
	font-weight: 700;
	color: var(--c-text);
	margin-bottom: 12px;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--c-primary-100);
}

.ml-product-cat {
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius);
	overflow: hidden;
}

.ml-product-cat-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 16px;
	height: 44px;
	font-size: 13px;
	color: var(--c-text-secondary);
	cursor: pointer;
	border-bottom: 1px solid var(--c-border-light);
	transition: var(--transition);
}

.ml-product-cat-item:last-child {
	border-bottom: none;
}

.ml-product-cat-item:hover,
.ml-product-cat-item.active {
	background: var(--c-primary-50);
	color: var(--c-primary);
	font-weight: 600;
}

.ml-product-cat-item.active {
	box-shadow: inset 3px 0 0 var(--c-primary);
}

.ml-product-cat-arrow {
	font-size: 11px;
	opacity: 0.5;
	transition: var(--transition);
}

.ml-product-cat-item:hover .ml-product-cat-arrow {
	opacity: 1;
	transform: translateX(2px);
}

.ml-product-cat-tag {
	display: inline-block;
	padding: 1px 6px;
	background: var(--c-primary-300);
	color: #fff;
	font-size: 10px;
	border-radius: 10px;
	font-weight: 600;
}

.ml-product-cat-tag-hot {
	background: #ef4444;
}

/* ===== 产品页：右侧内容 ===== */
.ml-product-content {
	flex: 1;
	min-width: 0;
}

/* ===== 产品页：筛选条件 ===== */
.ml-filter-bar {
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius);
	padding: 16px 20px;
	margin-bottom: 16px;
}

.ml-filter-row {
	display: flex;
	align-items: flex-start;
	/*margin-bottom: 10px;*/
	line-height: 1.8;
}

.ml-filter-row:last-child {
	margin-bottom: 0;
}

.ml-filter-label {
	width: 80px;
	font-size: 13px;
	font-weight: 700;
	color: var(--c-primary);
	text-align: left;
	padding-right: 12px;
	flex-shrink: 0;
	line-height: 28px;
}

.ml-filter-options {
	flex: 1;
	font-size: 12px;
	line-height: 1.8;
}

.ml-filter-options a {
	/*display: inline-block;*/
	padding: 2px;
	margin: 2px;
	border-radius: 4px;
	color: var(--c-text-secondary);
	transition: var(--transition);
}

.ml-filter-options a:hover {
	color: var(--c-primary);
	background: var(--c-primary-50);
	text-decoration: none;
}

.ml-filter-options a.active {
	background: var(--c-primary);
	color: #fff;
}

.ml-filter-sep {
	color: var(--c-border);
	margin: 0 2px;
}

/* ===== 产品页：表格 ===== */
.ml-table-wrap {
	background: var(--c-surface);
	border: 1px solid var(--c-border);
	border-radius: var(--radius);
	overflow: hidden;
}

.ml-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 12px;
	table-layout: fixed;
}

.ml-table thead {
	display: table;
	width: 100%;
	table-layout: fixed;
	background: var(--c-primary);
	color: #fff;
}

.ml-table thead th {
	padding: 10px 8px;
	font-weight: 600;
	text-align: center;
	white-space: nowrap;
	font-size: 12px;
	letter-spacing: 0.5px;
}

.ml-table thead th .ml-sort {
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #fff;
	text-decoration: none;
}

.ml-table thead th .ml-sort::after {
	content: "⇅";
	font-size: 10px;
	opacity: 0.7;
}

.ml-table tbody {
	display: block;
	max-height: 600px;
	overflow-y: auto;
}

.ml-table tbody tr {
	display: table;
	width: 100%;
	table-layout: fixed;
	border-bottom: 1px solid var(--c-border-light);
	transition: var(--transition);
}

.ml-table tbody tr:hover {
	background: var(--c-primary-50);
}

.ml-table tbody td {
	padding: 8px;
	text-align: center;
	color: var(--c-text-secondary);
	vertical-align: middle;
	font-size: 12px;
}

.ml-table tbody td:first-child {
	text-align: center;
	font-weight: 600;
	color: var(--c-text-muted);
	width: 40px;
}

.ml-table tbody td:nth-child(2) {
	width: 80px;
}

.ml-table tbody td:nth-child(3) {
	text-align: left;
	width: 180px;
}

.ml-table tbody td:nth-child(3) a {
	color: var(--c-text);
	font-weight: 500;
}

.ml-table tbody td:nth-child(3) a:hover {
	color: var(--c-primary);
}

.ml-table tbody td:nth-child(4) {
	width: 90px;
}

.ml-table tbody td:nth-child(5) {
	width: 70px;
}

.ml-table tbody td:nth-child(6) {
	width: 70px;
}

.ml-table tbody td:nth-child(7) {
	width: 70px;
}

.ml-table tbody td:nth-child(8) {
	width: 60px;
}

.ml-table tbody td:nth-child(9) {
	width: 60px;
}

.ml-table tbody td:nth-child(10) {
	width: 60px;
}

.ml-table tbody td:nth-child(11) {
	width: 60px;
}

.ml-table tbody td:nth-child(12) {
	text-align: left;
	width: 320px;
	padding: 0;
}

.ml-table tbody td:nth-child(6) .ml-spec-row,
.ml-table tbody td:nth-child(12) .ml-spec-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	/* padding: 6px 10px; */
	border-bottom: 1px solid var(--c-border-light);
	/* min-height: 32px; */
}

.ml-table tbody td:nth-child(6) .ml-spec-row:last-child,
.ml-table tbody td:nth-child(12) .ml-spec-row:last-child {
	border-bottom: none;
}

.ml-table tbody td:nth-child(6) .ml-spec-name,
.ml-table tbody td:nth-child(12) .ml-spec-name {
	flex: 1;
    text-align: left;
	font-size: 11px;
	color: var(--c-text-secondary);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding-right: 8px;
}

.ml-table tbody td:nth-child(6) .ml-spec-price,
.ml-table tbody td:nth-child(12) .ml-spec-price {
	width: 70px;
	text-align: right;
	color: var(--c-primary);
	font-weight: 600;
	font-size: 12px;
	white-space: nowrap;
	padding-right: 8px;
}

.ml-table tbody td:nth-child(6) .ml-spec-cart,
.ml-table tbody td:nth-child(12) .ml-spec-cart {
	width: 28px;
}

.ml-table tbody td:nth-child(6) .ml-spec-cart .ml-cart-btn, 
.ml-table tbody td:nth-child(12) .ml-spec-cart .ml-cart-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	background: var(--c-primary);
	color: #fff;
	border-radius: 4px;
	cursor: pointer;
	transition: var(--transition);
	font-size: 11px;
}

.ml-table tbody td:nth-child(6) .ml-spec-cart .ml-cart-btn:hover,
.ml-table tbody td:nth-child(12) .ml-spec-cart .ml-cart-btn:hover {
	background: var(--c-primary-dark);
	transform: scale(1.05);
}

.ml-table tbody td:nth-child(13) {
	display: none;
}

.ml-table tbody td:nth-child(14) {
	display: none;
}


/*.ml-pagination {*/
/*            padding: 20px 0;*/
/*        }*/

        /* 外层容器 */
/*        .ml-pagination .pagination-block {*/
/*            display: flex;*/
/*            align-items: center;*/
/*            justify-content: center;*/
/*            flex-wrap: wrap;*/
/*            gap: 8px;*/
/*        }*/

        /* 分页列表 */
/*        .ml-pagination ul.pagination {*/
/*            display: flex;*/
/*            align-items: center;*/
/*            list-style: none;*/
/*            margin: 0;*/
/*            padding: 0;*/
/*            gap: 6px;*/
/*        }*/

/*        .ml-pagination ul.pagination li {*/
/*            display: inline-flex;*/
/*        }*/

/*        .ml-pagination ul.pagination li a,*/
/*        .ml-pagination ul.pagination li span {*/
/*            display: inline-flex;*/
/*            align-items: center;*/
/*            justify-content: center;*/
/*            min-width: 32px;*/
/*            height: 32px;*/
/*            padding: 0 10px;*/
/*            border: 1px solid var(--c-border);*/
/*            border-radius: var(--radius-sm);*/
/*            color: var(--c-text-secondary);*/
/*            font-size: 13px;*/
/*            text-decoration: none;*/
/*            transition: var(--transition);*/
/*            cursor: pointer;*/
/*        }*/

/*        .ml-pagination ul.pagination li a:hover {*/
/*            border-color: var(--c-primary);*/
/*            color: var(--c-primary);*/
/*            text-decoration: none;*/
/*        }*/

/*        .ml-pagination ul.pagination li.active span {*/
/*            background: var(--c-primary);*/
/*            border-color: var(--c-primary);*/
/*            color: #fff;*/
/*            font-weight: 600;*/
/*        }*/

/*        .ml-pagination ul.pagination li.disabled span {*/
/*            color: var(--c-text-light);*/
/*            border-color: var(--c-border-light);*/
/*            cursor: not-allowed;*/
/*            background: var(--c-bg);*/
/*        }*/

        /* 分页信息 */
/*        .ml-pagination .pagination_info {*/
/*            color: var(--c-text-muted);*/
/*            font-size: 13px;*/
/*            margin: 0 12px;*/
/*            white-space: nowrap;*/
/*        }*/

        /* 跳转区域 */
/*        .ml-pagination .pagination_jump {*/
/*            display: inline-flex;*/
/*            align-items: center;*/
/*            gap: 6px;*/
/*            margin-left: 8px;*/
/*        }*/

/*        .ml-pagination .pagination_jump span {*/
/*            color: var(--c-text-muted);*/
/*            font-size: 13px;*/
/*        }*/

/*        .ml-pagination .pagination_jump .input-jump-page {*/
/*            width: 48px;*/
/*            height: 32px;*/
/*            border: 1px solid var(--c-border);*/
/*            border-radius: var(--radius-sm);*/
/*            text-align: center;*/
/*            font-size: 13px;*/
/*            outline: none;*/
/*            background: var(--c-surface);*/
/*            color: var(--c-text);*/
/*        }*/

/*        .ml-pagination .pagination_jump .input-jump-page:focus {*/
/*            border-color: var(--c-primary);*/
/*            box-shadow: 0 0 0 2px rgba(50, 157, 109, 0.1);*/
/*        }*/

/*        .ml-pagination .pagination_jump a,*/
/*        .ml-pagination .pagination_jump .btn {*/
/*            height: 32px;*/
/*            padding: 0 14px;*/
/*            border: none;*/
/*            border-radius: var(--radius-sm);*/
/*            background: var(--c-primary);*/
/*            color: #fff;*/
/*            font-size: 13px;*/
/*            cursor: pointer;*/
/*            transition: var(--transition);*/
/*            display: inline-flex;*/
/*            align-items: center;*/
/*            justify-content: center;*/
/*            text-decoration: none;*/
/*        }*/

/*        .ml-pagination .pagination_jump a:hover,*/
/*        .ml-pagination .pagination_jump .btn:hover {*/
/*            background: var(--c-primary-dark);*/
/*            text-decoration: none;*/
/*        }*/


        
        /* ========== 分页整体容器 ========== */
        .pagination-block {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 10px;
            margin: 20px auto 0;
        }
        
        /* ========== 分页列表 ========== */
        .pagination {
            display: flex;
            padding-left: 0;
            list-style: none;
            margin: 0;
            align-items: center;
        }
        
        .pagination>li>a, .pagination>li>span {
            position: relative;
            float: left;
            padding: 0;
            margin: 0 4px;
            color: #5a6f7c;
            font-weight: 500;
            text-decoration: none;
            background-color: #fff;
            border-radius: 30px;
            width: 38px;
            height: 38px;
            text-align: center;
            line-height: 38px;
            border: 0;
            -webkit-box-shadow: 0 2px 10px 0 #d8dde6;
            box-shadow: 0 2px 10px 0 #d8dde6;
            transition: all 0.2s ease;
        }
        
        .pagination>.active>a, .pagination>.active>span, 
        .pagination>.active>a:hover, .pagination>.active>span:hover, 
        .pagination>.active>a:focus, .pagination>.active>span:focus, 
        .pagination>li>a:hover, .pagination>li>a:focus {
            z-index: 2;
            color: #ffffff;
            cursor: pointer;
            background-color: #47b382;
            border-color: #47b382;
            -webkit-box-shadow: 0 2px 10px 0 #d8dde6;
            box-shadow: 0 2px 10px 0 #d8dde6;
        }
        
        .pagination li:first-child a, .pagination li:last-child a {
            border-radius: 30px;
            font-size: 14px;
            line-height: 38px;
        }
        
        /* 首页/尾页/上一页/下一页 宽度自适应 */
        .pagination li:first-child a, 
        .pagination li:last-child a,
        .pagination li:first-child span, 
        .pagination li:last-child span {
            width: auto;
            padding: 0 15px;
        }
        
        /* 禁用状态 */
        .pagination>.disabled>span, 
        .pagination>.disabled>a, 
        .pagination>.disabled>a:hover, 
        .pagination>.disabled>a:focus {
              color: #bbb;
              cursor: not-allowed;
              background-color: #f5f5f5;
              box-shadow: none;
        }
        
        /* ========== 分页信息 ========== */
        .pagination_info {
            display: inline-flex;
            align-items: center;
            height: 38px;
            padding: 0 12px;
            color: #5a6f7c;
            font-size: 14px;
            background-color: #fff;
            border-radius: 30px;
            -webkit-box-shadow: 0 2px 10px 0 #d8dde6;
            box-shadow: 0 2px 10px 0 #d8dde6;
            white-space: nowrap;
        }
        
        /* ========== 跳转区域 ========== */
        .pagination_jump {
            display: inline-flex;
            align-items: center;
            height: 38px;
            padding: 0 12px;
            background-color: #fff;
            border-radius: 30px;
            -webkit-box-shadow: 0 2px 10px 0 #d8dde6;
            box-shadow: 0 2px 10px 0 #d8dde6;
            white-space: nowrap;
        }
        
        .pagination_jump span {
            color: #5a6f7c;
            font-size: 14px;
            vertical-align: middle;
        }
        
        .pagination_jump .input-jump-page {
            width: 60px;
            height: 28px;
            text-align: center;
            border: 1px solid #e0e0e0;
            border-radius: 15px;
            margin: 0 6px;
            padding: 0 5px;
            font-size: 13px;
            color: #5a6f7c;
            background-color: #f8f9fa;
            vertical-align: middle;
            outline: none;
            transition: all 0.2s ease;
        }
        
        .pagination_jump .input-jump-page:focus {
            border-color: #47b382;
            background-color: #fff;
            box-shadow: 0 0 5px rgba(71, 179, 130, 0.3);
        }
        
        .pagination_jump a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 50px !important;
            height: 28px !important;
            border-radius: 15px;
            background-color: #47b382;
            color: #ffffff;
            text-decoration: none;
            font-size: 13px;
            margin-left: 6px;
            transition: all 0.2s ease;
        }
        
        .pagination_jump a:hover {
            background-color: #3a9a6e;
            box-shadow: 0 2px 8px rgba(71, 179, 130, 0.4);
        }
        
        /* ========== 全部页分页区域优化 ========== */
        .pagination-section {
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 15px;
            padding: 15px 0;
            margin-top: 10px;
        }
        .pagination-section .pagination-block {
            margin: 0;
            flex: 1;
            justify-content: flex-start;
        }
        .pagination-section .pagination-info {
            display: flex;
            align-items: center;
            gap: 8px;
            color: #666;
            font-size: 13px;
        }
        .pagination-section .pagination-info .total-count {
            color: #47b382;
            font-weight: bold;
        }
        
        /* 异步分页 */
        .ajax-pagination {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 8px;
            margin-top: 20px;
        }
        .ajax-pagination a, .ajax-pagination span {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 36px;
            height: 36px;
            border-radius: 18px;
            background: #fff;
            color: #5a6f7c;
            text-decoration: none;
            font-size: 14px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.08);
            cursor: pointer;
            transition: all 0.2s;
        }
        .ajax-pagination a:hover {
            background: #47b382;
            color: #fff;
        }
        .ajax-pagination span.current {
            background: #47b382;
            color: #fff;
        }
        .ajax-pagination .loading {
            color: #999;
            font-size: 13px;
        }
        

/* ===== 产品页：右侧悬浮按钮 ===== */
.ml-float-bar {
	position: fixed;
	right: 20px;
	bottom: 100px;
	z-index: 100;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ml-float-btn {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 20px;
	cursor: pointer;
	transition: var(--transition);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.ml-float-btn:hover {
	transform: scale(1.1);
}

.ml-float-phone {
	background: var(--c-primary);
}

.ml-float-email {
	background: #3b82f6;
}

.ml-float-wechat {
	background: #22c55e;
}

.ml-float-btn .ml-tooltip {
	position: absolute;
	right: 56px;
	background: var(--c-text);
	color: #fff;
	padding: 6px 12px;
	border-radius: var(--radius-sm);
	font-size: 12px;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	transition: var(--transition);
}

.ml-float-btn:hover .ml-tooltip {
	opacity: 1;
	visibility: visible;
}



        /* ===== News Main Layout ===== */
        .ml-news-main{display:flex;gap:20px;padding-bottom:40px}

        /* ===== Sidebar ===== */
        .ml-news-sidebar{width:240px;flex-shrink:0}
        .ml-news-sidebar-title{font-size:16px;font-weight:700;color:var(--c-text);margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid var(--c-primary-100)}
        .ml-news-cat{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);overflow:hidden;margin-bottom:20px}
        .ml-news-cat-item{display:flex;align-items:center;padding:0 16px;height:44px;font-size:13px;color:var(--c-text-secondary);cursor:pointer;border-bottom:1px solid var(--c-border-light);transition:var(--transition)}
        .ml-news-cat-item:last-child{border-bottom:none}
        .ml-news-cat-item:hover,.ml-news-cat-item.active{background:var(--c-primary-50);color:var(--c-primary);font-weight:600}
        .ml-news-cat-item.active{box-shadow:inset 3px 0 0 var(--c-primary)}

        /* Hot News */
        .ml-hot-news{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);}
        .ml-hot-news-title{font-size:14px;font-weight:700;color:var(--c-text);margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--c-primary-100)}
        .ml-hot-news-item{display:flex;gap:10px;padding:10px;border-bottom:1px solid var(--c-border-light);transition:var(--transition)}
        .ml-hot-news-item:last-child{border-bottom:none}
        .ml-hot-news-item:hover{padding-left:4px}
        .ml-hot-news-thumb{width:60px;height:45px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--c-bg)}
        .ml-hot-news-thumb img{width:100%;height:100%;object-fit:cover}
        .ml-hot-news-info{flex:1;min-width:0}
        .ml-hot-news-info a{font-size:12px;color:var(--c-text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
        .ml-hot-news-info a:hover{color:var(--c-primary)}

        /* ===== News Grid (2x2) ===== */
        .ml-news-grid{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:20px}
        .ml-news-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);overflow:hidden;transition:var(--transition)}
        .ml-news-card:hover{box-shadow:var(--shadow)}
        .ml-news-card-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--c-border-light)}
        .ml-news-card-header h3{font-size:15px;font-weight:700;color:var(--c-text)}
        .ml-news-card-header a{color:var(--c-primary);font-size:12px;display:flex;align-items:center;gap:2px}
        .ml-news-card-header a:hover{color:var(--c-primary-dark)}
        .ml-news-card-header a::after{content:">";font-size:10px}
        .ml-news-card-body{padding:16px}
        .ml-news-featured{display:flex;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--c-border-light)}
        .ml-news-featured-thumb{width:120px;height:80px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--c-bg)}
        .ml-news-featured-thumb img{width:100%;height:100%;object-fit:cover}
        .ml-news-featured-info{flex:1;min-width:0}
        .ml-news-featured-info a{font-size:13px;font-weight:600;color:var(--c-text);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:6px}
        .ml-news-featured-info a:hover{color:var(--c-primary)}
        .ml-news-featured-info .ml-news-date{color:var(--c-text-light);font-size:11px}
        .ml-news-list-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--c-border-light);transition:var(--transition)}
        .ml-news-list-item:last-child{border-bottom:none}
        .ml-news-list-item:hover{padding-left:4px;background:var(--c-primary-50)}
        .ml-news-list-num{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:var(--c-primary);color:#fff;font-size:10px;font-weight:600;border-radius:4px;flex-shrink:0}
        .ml-news-list-item:nth-child(n+4) .ml-news-list-num{background:var(--c-border);color:var(--c-text-muted)}
        .ml-news-list-title{flex:1;font-size:12px;color:var(--c-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .ml-news-list-title:hover{color:var(--c-primary)}
        .ml-news-list-date{color:var(--c-text-light);font-size:11px;flex-shrink:0}


        /* ===== News List Content ===== */
        .ml-news-list-content{flex:1;min-width:0}
        .ml-news-list-item-large{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:20px;margin-bottom:16px;transition:var(--transition);display:flex;gap:20px}
        .ml-news-list-item-large:hover{box-shadow:var(--shadow)}
        .ml-news-list-item-large .ml-news-thumb{width:200px;height:130px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--c-bg)}
        .ml-news-list-item-large .ml-news-thumb img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}
        .ml-news-list-item-large:hover .ml-news-thumb img{transform:scale(1.03)}
        .ml-news-list-item-large .ml-news-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between}
        .ml-news-list-item-large .ml-news-title{font-size:16px;font-weight:700;color:var(--c-text);line-height:1.5;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
        .ml-news-list-item-large .ml-news-title:hover{color:var(--c-primary)}
        .ml-news-list-item-large .ml-news-desc{font-size:13px;color:var(--c-text-muted);line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:12px}
        .ml-news-list-item-large .ml-news-meta{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--c-text-light)}
        .ml-news-list-item-large .ml-news-meta span{display:flex;align-items:center;gap:4px}
        .ml-news-list-item-large .ml-news-more{color:var(--c-primary);font-size:13px;display:inline-flex;align-items:center;gap:4px;font-weight:500}
        .ml-news-list-item-large .ml-news-more:hover{color:var(--c-primary-dark)}
        .ml-news-list-item-large .ml-news-more::after{content:"→";font-size:12px}





/* ===== 关于我们 & 联系我们 页面公共样式 ===== */

/* 页面主体 */
.ml-page {
    padding: 0 0 40px;
}

.ml-page-main {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

/* 左侧导航 */
.ml-page-sidebar {
    width: 180px;
    flex-shrink: 0;
    position: sticky;
    top: 134px;
    align-self: flex-start;
}

.ml-page-menu {
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
}

.ml-page-menu-item {
    display: block;
    padding: 0 16px;
    height: 44px;
    line-height: 44px;
    font-size: 13px;
    color: var(--c-text-secondary);
    border-bottom: 1px solid var(--c-border-light);
    transition: var(--transition);
    cursor: pointer;
}

.ml-page-menu-item:last-child {
    border-bottom: none;
}

.ml-page-menu-item:hover {
    background: var(--c-primary-50);
    color: var(--c-primary);
    text-decoration: none;
}

.ml-page-menu-item.active {
    background: var(--c-primary);
    color: #fff;
    font-weight: 600;
}

/* 右侧内容 */
.ml-page-content {
    flex: 1;
    min-width: 0;
}

/* 内容区块 */
.ml-section {
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
    margin-bottom: 16px;
}

.ml-section:last-child {
    margin-bottom: 0;
}

.ml-section-title {
    padding: 12px 20px;
    font-size: 15px;
    font-weight: 700;
    color: var(--c-primary);
    border-bottom: 2px solid var(--c-primary-100);
    background: var(--c-bg);
    letter-spacing: 0.5px;
}

.ml-section-body {
    padding: 20px;
}

.ml-section-body p {
    font-size: 13px;
    line-height: 2;
    color: var(--c-text-secondary);
    text-indent: 2em;
    margin-bottom: 12px;
}

.ml-section-body p:last-child {
    margin-bottom: 0;
}

/* ===== 核心优势 ===== */
.ml-advantage-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 20px;
}

.ml-advantage-item {
    display: flex;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--c-border-light);
    border-radius: var(--radius-sm);
    transition: var(--transition);
}

.ml-advantage-item:hover {
    border-color: var(--c-primary-200);
    background: var(--c-primary-50);
}

.ml-advantage-icon {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    border-radius: var(--radius-sm);
    /*background: linear-gradient(135deg, var(--c-primary-light), var(--c-primary));*/
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #fff;
}

.ml-advantage-info h4 {
    font-size: 14px;
    font-weight: 700;
    color: var(--c-text);
    margin-bottom: 6px;
}

.ml-advantage-info p {
    font-size: 12px;
    line-height: 1.7;
    color: var(--c-text-muted);
    text-indent: 0;
    margin-bottom: 0;
}

/* 统计数据行 */
.ml-stats-row {
    display: flex;
    justify-content: space-around;
    padding: 20px 0 10px;
    border-top: 1px solid var(--c-border-light);
}

.ml-stat-item {
    text-align: center;
}

.ml-stat-num {
    font-size: 24px;
    font-weight: 700;
    color: var(--c-primary);
    line-height: 1.2;
}

.ml-stat-num span {
    font-size: 14px;
    font-weight: 600;
}

.ml-stat-label {
    font-size: 12px;
    color: var(--c-text-muted);
    margin-top: 4px;
}

/* ===== 发展历程 ===== */
.ml-timeline {
    position: relative;
    padding-left: 24px;
}

.ml-timeline::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 8px;
    bottom: 8px;
    width: 2px;
    background: var(--c-primary-200);
}

.ml-timeline-item {
    display: flex;
    gap: 16px;
    padding-bottom: 20px;
    position: relative;
}

.ml-timeline-item:last-child {
    padding-bottom: 0;
}

.ml-timeline-item::before {
    content: "";
    position: absolute;
    left: -22px;
    top: 6px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--c-primary);
    border: 2px solid var(--c-surface);
    box-shadow: 0 0 0 2px var(--c-primary-200);
}

.ml-timeline-year {
    width: 50px;
    flex-shrink: 0;
    font-size: 14px;
    font-weight: 700;
    color: var(--c-primary);
    line-height: 1.4;
}

.ml-timeline-content h4 {
    font-size: 14px;
    font-weight: 600;
    color: var(--c-text);
    margin-bottom: 4px;
}

.ml-timeline-content p {
    font-size: 12px;
    line-height: 1.7;
    color: var(--c-text-muted);
    text-indent: 0;
    margin-bottom: 0;
}

/* ===== 公司资质 ===== */
.ml-qualify-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
}

.ml-qualify-card {
    text-align: center;
    transition: var(--transition);
    cursor: pointer;
}

.ml-qualify-card:hover {
    transform: translateY(-3px);
}

.ml-qualify-img {
    background: linear-gradient(135deg, #f8f9fa, #fff);
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    padding: 8px;
    margin-bottom: 10px;
    transition: var(--transition);
}

.ml-qualify-card:hover .ml-qualify-img {
    border-color: var(--c-primary-200);
    box-shadow: var(--shadow-sm);
}

.ml-qualify-img img {
    width: 100%;
    /* height: 100px; */
    object-fit: contain;
    display: block;
}


.ml-qualify-name {
    font-size: 12px;
    color: var(--c-text-secondary);
    font-weight: 600;
    line-height: 1.4;
}

/*平台资质*/
.ml-qualify-grid1 {
    display: grid;
    /* 桌面端一行6列，自动均分宽度 */
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;
}

.ml-qualify-img1 img {
    width: 100%;
    height: 120px;
    object-fit: contain;
    display: block;
    background: linear-gradient(135deg, #f8f9fa, #fff);
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    padding: 8px;
}

/* ===== 合作客户 ===== */
.ml-partner-grid-about {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;
}

.ml-partner-item-about {
    text-align: center;
    padding: 12px 8px;
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    transition: var(--transition);
}

.ml-partner-item-about:hover {
    border-color: var(--c-primary-200);
    background: var(--c-primary-50);
}

.ml-partner-img-about {
    width: 100%;
    /* height: 60px; */
    background: #f8f9fa;
    border: 1px solid var(--c-border-light);
    border-radius: var(--radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    margin-bottom: 8px;
    transition: var(--transition);
    overflow: hidden;
}

.ml-partner-item-about:hover .ml-partner-img-about {
    border-color: var(--c-primary-300);
}

.ml-partner-img-about img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(30%);
    transition: var(--transition);
}

.ml-partner-item-about:hover .ml-partner-img-about img {
    filter: grayscale(0%);
}

.ml-partner-name-about {
    font-size: 12px;
    color: var(--c-text-muted);
    font-weight: 500;
    line-height: 1.3;
}

.ml-partner-item-about:hover .ml-partner-name-about {
    color: var(--c-primary);
}

/* ===== 建议与投诉 ===== */
.ml-suggestion-tip {
    font-size: 13px;
    color: var(--c-text-muted);
    text-indent: 0;
    margin-bottom: 20px;
    padding: 12px 16px;
    background: var(--c-primary-50);
    border-radius: var(--radius-sm);
    border-left: 3px solid var(--c-primary);
}

.ml-suggestion-cards {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.ml-suggestion-card {
    text-align: center;
    padding: 20px;
    border: 1px solid var(--c-border-light);
    border-radius: var(--radius-sm);
    transition: var(--transition);
    width: 200px;
}

.ml-suggestion-card:hover {
    border-color: var(--c-primary-200);
    box-shadow: var(--shadow-sm);
}

.ml-suggestion-role {
    font-size: 14px;
    font-weight: 700;
    color: var(--c-primary);
    margin-bottom: 12px;
}

.ml-suggestion-qr {
    width: 120px;
    height: 120px;
    margin: 0 auto 10px;
    background: #f8f9fa;
    border: 1px solid var(--c-border-light);
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.ml-suggestion-qr img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ml-suggestion-name {
    font-size: 13px;
    color: var(--c-text-secondary);
    font-weight: 600;
}

/* ===== 联系我们 ===== */

/* 联系方式卡片 */
.ml-contact-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.ml-contact-card {
    text-align: center;
    padding: 20px 16px;
    border: 1px solid var(--c-border-light);
    border-radius: var(--radius-sm);
    transition: var(--transition);
}

.ml-contact-card:hover {
    border-color: var(--c-primary-200);
    box-shadow: var(--shadow-sm);
}

.ml-contact-icon {
    width: 48px;
    height: 48px;
    margin: 0 auto 12px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--c-primary-light), var(--c-primary));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
}

.ml-contact-info h4 {
    font-size: 14px;
    font-weight: 700;
    color: var(--c-text);
    margin-bottom: 8px;
}

.ml-contact-info p {
    font-size: 12px;
    color: var(--c-text-muted);
    line-height: 1.6;
    text-indent: 0;
    margin-bottom: 2px;
}

.ml-contact-info p:last-child {
    margin-bottom: 0;
}

/* 区域搜索 */
.ml-region-search {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
}

.ml-region-search input {
    flex: 1;
    height: 36px;
    padding: 0 12px;
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    font-size: 13px;
    outline: none;
    transition: var(--transition);
}

.ml-region-search input:focus {
    border-color: var(--c-primary);
    box-shadow: 0 0 0 3px rgba(50, 157, 109, 0.1);
}

.ml-region-search button {
    height: 36px;
    padding: 0 20px;
    border: none;
    border-radius: var(--radius-sm);
    background: var(--c-primary);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--transition);
}

.ml-region-search button:hover {
    background: var(--c-primary-dark);
}

/* 区域列表 */
.ml-region-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ml-region-item {
    border: 1px solid var(--c-border-light);
    border-radius: var(--radius-sm);
    overflow: hidden;
    transition: var(--transition);
}

.ml-region-item:hover {
    border-color: var(--c-primary-200);
}

.ml-region-header {
    padding: 10px 16px;
    background: var(--c-bg);
    border-bottom: 1px solid var(--c-border-light);
}

.ml-region-name {
    font-size: 14px;
    font-weight: 700;
    color: var(--c-primary);
}

.ml-region-body {
    padding: 12px 16px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.ml-region-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 12px;
    border: 1px solid var(--c-border-light);
    border-radius: var(--radius-sm);
    transition: var(--transition);
}

.ml-region-card:hover {
    border-color: var(--c-primary-200);
    background: var(--c-primary-50);
}

.ml-region-province {
    font-size: 12px;
    font-weight: 600;
    color: var(--c-text);
    text-align: center;
}

.ml-region-manager {
    font-size: 12px;
    color: var(--c-primary);
    font-weight: 600;
}

.ml-region-card img {
    width: 160px;
    /* height: 80px; */
    object-fit: contain;
    border-radius: var(--radius-sm);
    background: #f8f9fa;
}

/* 产品声明 */
.ml-statement {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ml-statement-item h4 {
    font-size: 14px;
    font-weight: 700;
    color: var(--c-text);
    margin-bottom: 8px;
    padding-left: 12px;
    border-left: 3px solid var(--c-primary);
}

.ml-statement-item p {
    font-size: 13px;
    line-height: 1.8;
    color: var(--c-text-secondary);
    text-indent: 0;
    margin-bottom: 4px;
    padding-left: 15px;
}

.ml-statement-item p:last-child {
    margin-bottom: 0;
}

/* 在线留言 */
.ml-feedback-intro {
    margin-bottom: 20px;
    padding: 12px 16px;
    background: var(--c-primary-50);
    border-radius: var(--radius-sm);
    border-left: 3px solid var(--c-primary);
}

.ml-feedback-intro p {
    font-size: 13px;
    color: var(--c-text-secondary);
    text-indent: 0;
    margin-bottom: 12px;
}

.ml-feedback-hotline {
    display: flex;
    align-items: baseline;
    gap: 12px;
}

.ml-feedback-label {
    font-size: 13px;
    color: var(--c-text-muted);
}

.ml-feedback-phone {
    font-size: 24px;
    font-weight: 700;
    color: var(--c-primary);
}

/* 表单 */
.ml-form-row {
    display: flex;
    align-items: flex-start;
    margin-bottom: 12px;
}

.ml-form-label {
    width: 80px;
    flex-shrink: 0;
    font-size: 13px;
    color: var(--c-text);
    font-weight: 600;
    line-height: 36px;
}

.ml-required {
    color: #ef4444;
    margin-left: 2px;
}

.ml-form-input {
    flex: 1;
    min-width: 0;
}

.ml-form-input input,
.ml-form-input select,
.ml-form-input textarea {
    width: 100%;
    height: 36px;
    padding: 0 12px;
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    font-size: 13px;
    color: var(--c-text);
    background: var(--c-surface);
    outline: none;
    transition: var(--transition);
    font-family: inherit;
}

.ml-form-input textarea {
    height: auto;
    padding: 8px 12px;
    line-height: 1.6;
    resize: vertical;
}

.ml-form-input input:focus,
.ml-form-input select:focus,
.ml-form-input textarea:focus {
    border-color: var(--c-primary);
    box-shadow: 0 0 0 3px rgba(50, 157, 109, 0.1);
}

.ml-btn-primary,
.ml-btn-default {
    height: 36px;
    padding: 0 20px;
    border: none;
    border-radius: var(--radius-sm);
    font-size: 13px;
    cursor: pointer;
    transition: var(--transition);
    font-family: inherit;
    margin-right: 8px;
}

.ml-btn-primary {
    background: var(--c-primary);
    color: #fff;
    font-weight: 600;
}

.ml-btn-primary:hover {
    background: var(--c-primary-dark);
}

.ml-btn-default {
    background: var(--c-bg);
    color: var(--c-text-secondary);
    border: 1px solid var(--c-border);
}

.ml-btn-default:hover {
    background: var(--c-border-light);
}

/* 公司地址 */
.ml-map-info {
    display: flex;
    gap: 20px;
}

.ml-map-address {
    width: 320px;
    flex-shrink: 0;
}

.ml-map-address h4 {
    font-size: 15px;
    font-weight: 700;
    color: var(--c-text);
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--c-primary-100);
}

.ml-map-address p {
    font-size: 13px;
    line-height: 2;
    color: var(--c-text-secondary);
    text-indent: 0;
    margin-bottom: 4px;
}

.ml-map-address p:last-child {
    margin-bottom: 0;
}

.ml-map-address strong {
    color: var(--c-text);
}

.ml-map-frame {
    flex: 1;
    min-width: 0;
    height: 300px;
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.ml-map-placeholder {
    width: 100%;
    height: 100%;
    background: var(--c-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--c-text-light);
    font-size: 13px;
}





/* ===== 新增页面样式 ===== */

/* ===== 登录/注册页公共样式 ===== */

.ml-auth-page {
    padding: 40px 0 60px;
    background: var(--c-bg);
    min-height: calc(100vh - 200px);
}

.ml-auth-box {
    max-width: 420px;
    margin: 0 auto;
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
}

.ml-auth-tabs {
    display: flex;
    border-bottom: 1px solid var(--c-border-light);
}

.ml-auth-tab {
    flex: 1;
    text-align: center;
    padding: 14px 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--c-text-muted);
    background: var(--c-bg);
    transition: var(--transition);
    cursor: pointer;
    border: none;
}

.ml-auth-tab:hover {
    color: var(--c-primary);
    text-decoration: none;
}

.ml-auth-tab.active {
    background: var(--c-surface);
    color: var(--c-primary);
    border-bottom: 2px solid var(--c-primary);
}

.ml-auth-tab i {
    margin-right: 6px;
}

.ml-auth-header {
    text-align: center;
    padding: 24px 20px 0;
}

.ml-auth-header h3 {
    font-size: 18px;
    font-weight: 700;
    color: var(--c-text);
    margin-bottom: 6px;
}

.ml-auth-header p {
    font-size: 13px;
    color: var(--c-text-muted);
}

.ml-auth-form {
    padding: 20px 28px;
}

.ml-form-group {
    margin-bottom: 14px;
}

.ml-form-group label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--c-text);
    margin-bottom: 6px;
}

.ml-form-group input {
    width: 100%;
    height: 42px;
    padding: 0 14px;
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    font-size: 13px;
    outline: none;
    transition: var(--transition);
    font-family: inherit;
}

.ml-form-group input:focus {
    border-color: var(--c-primary);
    box-shadow: 0 0 0 3px rgba(50, 157, 109, 0.1);
}

.ml-form-options {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    font-size: 12px;
}

.ml-remember {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--c-text-muted);
    cursor: pointer;
}

.ml-remember input {
    width: 14px;
    height: 14px;
    accent-color: var(--c-primary);
}

.ml-forget {
    color: var(--c-primary);
}

.ml-forget:hover {
    text-decoration: underline;
}

.ml-btn-submit {
    width: 100%;
    height: 44px;
    border: none;
    border-radius: var(--radius-sm);
    background: var(--c-primary);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--transition);
    font-family: inherit;
}

.ml-btn-submit:hover {
    background: var(--c-primary-dark);
}

.ml-auth-footer {
    text-align: center;
    padding: 0 28px 24px;
    font-size: 13px;
    color: var(--c-text-muted);
}

.ml-auth-footer a {
    color: var(--c-primary);
    font-weight: 600;
    margin-left: 4px;
}

.ml-auth-footer a:hover {
    text-decoration: underline;
}


/* 注册页特殊 */
.ml-captcha-group {
    display: flex;
    gap: 10px;
}

.ml-captcha-group input {
    flex: 1;
}

.ml-captcha-img {
    width: 100px;
    height: 42px;
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    cursor: pointer;
    object-fit: cover;
}

.ml-agree {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    font-size: 12px;
    color: var(--c-text-muted);
    line-height: 1.5;
}

.ml-agree input {
    width: 14px;
    height: 14px;
    margin-top: 2px;
    accent-color: var(--c-primary);
    flex-shrink: 0;
}

.ml-agree a {
    color: var(--c-primary);
}

/* 微信扫码 */
.ml-qrcode-box {
    padding: 40px 28px;
    text-align: center;
}

.ml-qrcode-img {
    width: 200px;
    height: 200px;
    margin: 0 auto 16px;
    background: #f8f9fa;
    border: 1px solid var(--c-border);
    border-radius: var(--radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.ml-qrcode-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ml-qrcode-tip {
    font-size: 13px;
    color: var(--c-text-muted);
    margin-bottom: 8px;
}

.ml-qrcode-refresh a {
    font-size: 12px;
    color: var(--c-primary);
}

.ml-auth-panel {
    display: none;
}

.ml-auth-panel.active {
    display: block;
}

/* ===== 文章详情页 ===== */

.ml-article-sidebar {
    width: 260px;
    flex-shrink: 0;
    position: sticky;
    top: 150px;
    align-self: flex-start;
}

.ml-cat-block {
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
    margin-bottom: 16px;
}

.ml-cat-title {
    padding: 12px 16px;
    font-size: 14px;
    font-weight: 700;
    color: var(--c-primary);
    border-bottom: 2px solid var(--c-primary-100);
    background: var(--c-bg);
}

.ml-cat-list {
    padding: 8px 0;
}

.ml-cat-list li a {
    display: block;
    padding: 10px 16px;
    font-size: 13px;
    color: var(--c-text-secondary);
    transition: var(--transition);
}

.ml-cat-list li a:hover,
.ml-cat-list li a.active {
    background: var(--c-primary-50);
    color: var(--c-primary);
    text-decoration: none;
}

.ml-cat-list li a.active {
    font-weight: 600;
    box-shadow: inset 3px 0 0 var(--c-primary);
}

.ml-hot-news {
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
}

.ml-hot-item {
    padding: 12px 16px;
    border-bottom: 1px solid var(--c-border-light);
    transition: var(--transition);
}

.ml-hot-item:last-child {
    border-bottom: none;
}

.ml-hot-item:hover {
    background: var(--c-primary-50);
}

.ml-hot-item a {
    display: flex;
    gap: 10px;
    color: var(--c-text);
    text-decoration: none;
}

.ml-hot-item img {
    width: 60px;
    height: 45px;
    border-radius: var(--radius-sm);
    object-fit: cover;
    flex-shrink: 0;
    background: var(--c-bg);
}

.ml-hot-info {
    flex: 1;
    min-width: 0;
}

.ml-hot-title {
    font-size: 12px;
    line-height: 1.5;
    color: var(--c-text-secondary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 4px;
}

.ml-hot-date {
    font-size: 11px;
    color: var(--c-text-light);
}

.ml-article-content {
    flex: 1;
    min-width: 0;
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-radius: var(--radius);
    overflow: hidden;
    padding: 24px 28px;
}

.ml-article-header {
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--c-border-light);
}

.ml-article-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--c-text);
    line-height: 1.5;
    margin-bottom: 12px;
}

.ml-article-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    font-size: 12px;
    color: var(--c-text-muted);
}

.ml-article-meta i {
    margin-right: 4px;
    color: var(--c-primary);
}

.ml-article-body {
    font-size: 14px;
    line-height: 2;
    color: var(--c-text-secondary);
}

.ml-article-body p {
    margin-bottom: 14px;
    text-indent: 0;
}

.ml-article-body h3 {
    font-size: 16px;
    font-weight: 700;
    color: var(--c-primary);
    margin: 24px 0 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--c-primary-100);
}

.ml-article-body h4 {
    font-size: 14px;
    font-weight: 700;
    color: var(--c-text);
    margin: 16px 0 8px;
}

.ml-article-body strong {
    color: var(--c-text);
}

.ml-article-image {
    margin: 20px 0;
    text-align: center;
}

.ml-article-image img {
    max-width: 100%;
    border-radius: var(--radius-sm);
    border: 1px solid var(--c-border-light);
}

.ml-image-caption {
    font-size: 12px;
    color: var(--c-text-muted);
    margin-top: 8px;
}

.ml-article-share {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid var(--c-border-light);
}

.ml-share-label {
    font-size: 13px;
    color: var(--c-text-muted);
}

.ml-share-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--c-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--c-text-muted);
    font-size: 14px;
    transition: var(--transition);
}

.ml-share-btn:hover {
    background: var(--c-primary);
    color: #fff;
    text-decoration: none;
}

.ml-article-nav {
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid var(--c-border-light);
    gap: 20px;
}

.ml-nav-prev,
.ml-nav-next {
    flex: 1;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
}

.ml-nav-next {
    text-align: right;
}

.ml-nav-prev span,
.ml-nav-next span {
    display: block;
    font-size: 12px;
    color: var(--c-text-light);
    margin-bottom: 4px;
}

.ml-nav-prev a,
.ml-nav-next a {
    font-size: 13px;
    color: var(--c-text-secondary);
    line-height: 1.5;
}

.ml-nav-prev a:hover,
.ml-nav-next a:hover {
    color: var(--c-primary);
}

/* ===== 产品详情页 ===== */

/*.ml-product-detail {*/
/*    display: flex;*/
/*    gap: 24px;*/
/*    background: var(--c-surface);*/
/*    border: 1px solid var(--c-border);*/
/*    border-radius: var(--radius);*/
/*    overflow: hidden;*/
/*    padding: 24px;*/
/*    margin-bottom: 16px;*/
/*}*/

/*.ml-product-gallery {*/
/*    width: 380px;*/
/*    flex-shrink: 0;*/
/*}*/

/*.ml-product-main-img {*/
/*    width: 100%;*/
/*    height: 380px;*/
/*    background: #f8f9fa;*/
/*    border: 1px solid var(--c-border-light);*/
/*    border-radius: var(--radius-sm);*/
/*    display: flex;*/
/*    align-items: center;*/
/*    justify-content: center;*/
/*    overflow: hidden;*/
/*}*/

/*.ml-product-main-img img {*/
/*    max-width: 100%;*/
/*    max-height: 100%;*/
/*    object-fit: contain;*/
/*}*/

/*.ml-product-info {*/
/*    flex: 1;*/
/*    min-width: 0;*/
/*}*/

/*.ml-product-title {*/
/*    font-size: 18px;*/
/*    font-weight: 700;*/
/*    color: var(--c-text);*/
/*    line-height: 1.5;*/
/*    margin-bottom: 12px;*/
/*}*/

/*.ml-product-meta {*/
/*    margin-bottom: 16px;*/
/*}*/

/*.ml-meta-item {*/
/*    font-size: 13px;*/
/*    color: var(--c-text-secondary);*/
/*    margin-bottom: 6px;*/
/*}*/

/*.ml-meta-label {*/
/*    color: var(--c-text-muted);*/
/*}*/

/*.ml-meta-value {*/
/*    font-weight: 600;*/
/*    color: var(--c-text);*/
/*}*/

/*.ml-product-specs {*/
/*    margin-bottom: 16px;*/
/*}*/

/*.ml-spec-label {*/
/*    font-size: 13px;*/
/*    font-weight: 600;*/
/*    color: var(--c-text);*/
/*    margin-bottom: 8px;*/
/*}*/

/*.ml-spec-options {*/
/*    display: flex;*/
/*    flex-wrap: wrap;*/
/*    gap: 8px;*/
/*}*/

/*.ml-spec-item {*/
/*    position: relative;*/
/*    cursor: pointer;*/
/*}*/

/*.ml-spec-item input {*/
/*    position: absolute;*/
/*    opacity: 0;*/
/*}*/

/*.ml-spec-item span {*/
/*    display: block;*/
/*    padding: 8px 14px;*/
/*    border: 1px solid var(--c-border);*/
/*    border-radius: var(--radius-sm);*/
/*    font-size: 12px;*/
/*    color: var(--c-text-secondary);*/
/*    background: var(--c-surface);*/
/*    transition: var(--transition);*/
/*    white-space: nowrap;*/
/*}*/

/*.ml-spec-item:hover span {*/
/*    border-color: var(--c-primary-300);*/
/*}*/

/*.ml-spec-item.active span {*/
/*    border-color: var(--c-primary);*/
/*    background: var(--c-primary-50);*/
/*    color: var(--c-primary);*/
/*    font-weight: 600;*/
/*}*/

/*.ml-product-qty {*/
/*    margin-bottom: 16px;*/
/*}*/

/*.ml-qty-control {*/
/*    display: inline-flex;*/
/*    align-items: center;*/
/*    border: 1px solid var(--c-border);*/
/*    border-radius: var(--radius-sm);*/
/*    overflow: hidden;*/
/*}*/

/*.ml-qty-btn {*/
/*    width: 36px;*/
/*    height: 36px;*/
/*    border: none;*/
/*    background: var(--c-bg);*/
/*    color: var(--c-text);*/
/*    font-size: 16px;*/
/*    cursor: pointer;*/
/*    transition: var(--transition);*/
/*    display: flex;*/
/*    align-items: center;*/
/*    justify-content: center;*/
/*}*/

/*.ml-qty-btn:hover {*/
/*    background: var(--c-border-light);*/
/*}*/

/*.ml-qty-input {*/
/*    width: 50px;*/
/*    height: 36px;*/
/*    border: none;*/
/*    border-left: 1px solid var(--c-border);*/
/*    border-right: 1px solid var(--c-border);*/
/*    text-align: center;*/
/*    font-size: 13px;*/
/*    color: var(--c-text);*/
/*    outline: none;*/
/*}*/

/*.ml-product-price {*/
/*    margin-bottom: 20px;*/
/*    padding: 12px 0;*/
/*    border-top: 1px dashed var(--c-border-light);*/
/*    border-bottom: 1px dashed var(--c-border-light);*/
/*}*/

/*.ml-price-label {*/
/*    font-size: 13px;*/
/*    color: var(--c-text-muted);*/
/*}*/

/*.ml-price-value {*/
/*    font-size: 24px;*/
/*    font-weight: 700;*/
/*    color: var(--c-primary);*/
/*}*/

/*.ml-product-actions {*/
/*    display: flex;*/
/*    gap: 12px;*/
/*}*/

/*.ml-btn-copy {*/
/*    height: 42px;*/
/*    padding: 0 20px;*/
/*    border: 1px solid var(--c-primary);*/
/*    border-radius: var(--radius-sm);*/
/*    background: var(--c-surface);*/
/*    color: var(--c-primary);*/
/*    font-size: 14px;*/
/*    font-weight: 600;*/
/*    cursor: pointer;*/
/*    transition: var(--transition);*/
/*    font-family: inherit;*/
/*}*/

/*.ml-btn-copy:hover {*/
/*    background: var(--c-primary-50);*/
/*}*/

/*.ml-btn-cart {*/
/*    height: 42px;*/
/*    padding: 0 20px;*/
/*    border: none;*/
/*    border-radius: var(--radius-sm);*/
/*    background: var(--c-primary);*/
/*    color: #fff;*/
/*    font-size: 14px;*/
/*    font-weight: 600;*/
/*    cursor: pointer;*/
/*    transition: var(--transition);*/
/*    font-family: inherit;*/
/*}*/

/*.ml-btn-cart:hover {*/
/*    background: var(--c-primary-dark);*/
/*}*/

/* 产品Tab */
/*.ml-product-tabs {*/
/*    background: var(--c-surface);*/
/*    border: 1px solid var(--c-border);*/
/*    border-radius: var(--radius);*/
/*    overflow: hidden;*/
/*    margin-bottom: 16px;*/
/*}*/

/*.ml-tab-header {*/
/*    display: flex;*/
/*    border-bottom: 1px solid var(--c-border-light);*/
/*    background: var(--c-bg);*/
/*}*/

/*.ml-tab-item {*/
/*    padding: 12px 20px;*/
/*    font-size: 13px;*/
/*    font-weight: 600;*/
/*    color: var(--c-text-muted);*/
/*    transition: var(--transition);*/
/*    cursor: pointer;*/
/*    border-bottom: 2px solid transparent;*/
/*    margin-bottom: -1px;*/
/*}*/

/*.ml-tab-item:hover {*/
/*    color: var(--c-primary);*/
/*    text-decoration: none;*/
/*}*/

/*.ml-tab-item.active {*/
/*    color: var(--c-primary);*/
/*    border-bottom-color: var(--c-primary);*/
/*    background: var(--c-surface);*/
/*}*/

/*.ml-tab-content {*/
/*    padding: 20px 24px;*/
/*}*/

/*.ml-tab-panel {*/
/*    display: none;*/
/*}*/

/*.ml-tab-panel.active {*/
/*    display: block;*/
/*}*/

/* 产品信息表格 */
/*.ml-info-table table {*/
/*    width: 100%;*/
/*    border-collapse: collapse;*/
/*    font-size: 13px;*/
/*}*/

/*.ml-info-table th,*/
/*.ml-info-table td {*/
/*    padding: 10px 14px;*/
/*    border: 1px solid var(--c-border-light);*/
/*    text-align: left;*/
/*}*/

/*.ml-info-table th {*/
/*    width: 100px;*/
/*    background: var(--c-bg);*/
/*    font-weight: 600;*/
/*    color: var(--c-text);*/
/*}*/

/*.ml-info-table td {*/
/*    color: var(--c-text-secondary);*/
/*}*/

/*.ml-product-manual {*/
/*    margin-top: 16px;*/
/*    padding: 12px 16px;*/
/*    background: var(--c-primary-50);*/
/*    border-radius: var(--radius-sm);*/
/*    border-left: 3px solid var(--c-primary);*/
/*}*/

/*.ml-product-manual a {*/
/*    font-size: 13px;*/
/*    color: var(--c-primary);*/
/*    font-weight: 600;*/
/*}*/

/*.ml-product-manual a i {*/
/*    margin-right: 6px;*/
/*}*/

/* 声明内容 */
/*.ml-statement-content ol {*/
/*    padding-left: 20px;*/
/*    font-size: 13px;*/
/*    line-height: 2;*/
/*    color: var(--c-text-secondary);*/
/*}*/

/*.ml-statement-content ol li {*/
/*    margin-bottom: 8px;*/
/*}*/

/* 相关产品 */
/*.ml-related-products {*/
/*    background: var(--c-surface);*/
/*    border: 1px solid var(--c-border);*/
/*    border-radius: var(--radius);*/
/*    overflow: hidden;*/
/*    padding: 20px 24px;*/
/*}*/

/*.ml-related-products .ml-section-title {*/
/*    margin-bottom: 16px;*/
/*    padding: 0;*/
/*    border: none;*/
/*    background: none;*/
/*}*/

/*.ml-related-table table {*/
/*    width: 100%;*/
/*    border-collapse: collapse;*/
/*    font-size: 13px;*/
/*}*/

/*.ml-related-table th {*/
/*    padding: 10px 14px;*/
/*    background: var(--c-bg);*/
/*    font-weight: 600;*/
/*    color: var(--c-text);*/
/*    text-align: left;*/
/*    border-bottom: 2px solid var(--c-primary-100);*/
/*}*/

/*.ml-related-table td {*/
/*    padding: 12px 14px;*/
/*    border-bottom: 1px solid var(--c-border-light);*/
/*    color: var(--c-text-secondary);*/
/*    vertical-align: middle;*/
/*}*/

/*.ml-related-table td a {*/
/*    color: var(--c-text);*/
/*    font-weight: 500;*/
/*}*/

/*.ml-related-table td a:hover {*/
/*    color: var(--c-primary);*/
/*}*/

/*.ml-tag-stock {*/
/*    display: inline-block;*/
/*    margin-left: 8px;*/
/*    padding: 2px 8px;*/
/*    background: var(--c-primary-50);*/
/*    color: var(--c-primary);*/
/*    font-size: 11px;*/
/*    border-radius: 4px;*/
/*    font-weight: 600;*/
/*}*/

/*.ml-related-table .ml-price {*/
/*    color: var(--c-primary);*/
/*    font-weight: 700;*/
/*}*/

/*.ml-btn-view {*/
/*    display: inline-block;*/
/*    padding: 6px 14px;*/
/*    background: var(--c-primary);*/
/*    color: #fff;*/
/*    font-size: 12px;*/
/*    border-radius: var(--radius-sm);*/
/*    transition: var(--transition);*/
/*}*/

/*.ml-btn-view:hover {*/
/*    background: var(--c-primary-dark);*/
/*    text-decoration: none;*/
/*}*/


        /* ===== 产品详情页局部样式 ===== */

        


/* ===== 购物车与结算页样式 ===== */

/* ===== 侧栏购物车 ===== */

.ml-cart-overlay {
display: none;
position: fixed;
top: 0; left: 0; right: 0; bottom: 0;
background: rgba(0,0,0,0.5);
z-index: 9998;
}

.ml-cart-overlay.ml-show {
display: block;
}

.ml-cart-sidebar {
position: fixed;
top: 0; right: -400px;
width: 400px;
max-width: 100vw;
height: 100vh;
background: var(--c-surface);
box-shadow: -4px 0 20px rgba(0,0,0,0.1);
z-index: 9999;
display: flex;
flex-direction: column;
transition: right 0.3s ease;
}

.ml-cart-sidebar.ml-open {
right: 0;
}

.ml-cart-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 16px 20px;
border-bottom: 1px solid var(--c-border-light);
}

.ml-cart-header h3 {
font-size: 16px;
font-weight: 700;
color: var(--c-text);
margin: 0;
}

.ml-cart-close {
width: 32px; height: 32px;
border: none;
background: none;
font-size: 22px;
color: var(--c-text-light);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}

.ml-cart-close:hover {
color: var(--c-text);
}

.ml-cart-body {
flex: 1;
overflow-y: auto;
padding: 16px 20px;
}

.ml-cart-empty {
text-align: center;
padding: 60px 20px;
color: var(--c-text-light);
}

.ml-cart-empty i {
font-size: 48px;
margin-bottom: 12px;
display: block;
}

.ml-cart-empty p {
font-size: 14px;
}

.ml-cart-list {
display: flex;
flex-direction: column;
gap: 12px;
}

.ml-cart-item {
display: flex;
gap: 12px;
padding: 12px;
border: 1px solid var(--c-border-light);
border-radius: var(--radius-sm);
background: var(--c-bg);
}

.ml-cart-info {
flex: 1;
min-width: 0;
}

.ml-cart-title {
font-size: 13px;
font-weight: 600;
color: var(--c-text);
margin-bottom: 4px;
line-height: 1.4;
}

.ml-cart-spec {
font-size: 11px;
color: var(--c-text-muted);
margin-bottom: 8px;
}

.ml-cart-price-row {
display: flex;
justify-content: space-between;
align-items: center;
}

.ml-cart-price {
font-size: 14px;
font-weight: 700;
color: var(--c-primary);
}

.ml-cart-qty {
display: flex;
align-items: center;
border: 1px solid var(--c-border);
border-radius: 4px;
overflow: hidden;
}

.ml-cart-qty-btn {
width: 26px; height: 26px;
border: none;
background: var(--c-surface);
color: var(--c-text);
font-size: 14px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}

.ml-cart-qty-btn:hover {
background: var(--c-border-light);
}

.ml-cart-qty-input {
width: 36px; height: 26px;
border: none;
border-left: 1px solid var(--c-border);
border-right: 1px solid var(--c-border);
text-align: center;
font-size: 12px;
background: var(--c-surface);
outline: none;
}

.ml-cart-remove {
width: 28px; height: 28px;
border: none;
background: none;
color: var(--c-text-light);
cursor: pointer;
align-self: flex-start;
padding: 0;
display: flex;
align-items: center;
justify-content: center;
}

.ml-cart-remove:hover {
color: #ef4444;
}

.ml-cart-footer {
padding: 16px 20px;
border-top: 1px solid var(--c-border-light);
background: var(--c-bg);
}

.ml-cart-total {
display: flex;
justify-content: space-between;
align-items: baseline;
margin-bottom: 12px;
}

.ml-total-label {
font-size: 14px;
font-weight: 600;
color: var(--c-text);
}

.ml-total-price {
font-size: 20px;
font-weight: 700;
color: var(--c-primary);
}

.ml-btn-checkout {
display: block;
width: 100%;
height: 44px;
line-height: 44px;
text-align: center;
background: var(--c-primary);
color: #fff;
font-size: 15px;
font-weight: 600;
border-radius: var(--radius-sm);
transition: var(--transition);
}

.ml-btn-checkout:hover {
background: var(--c-primary-dark);
text-decoration: none;
}

/* ===== 结算页 ===== */

.ml-checkout {
display: flex;
gap: 20px;
align-items: flex-start;
}

.ml-checkout-main {
flex: 1;
min-width: 0;
}

.ml-checkout-sidebar {
width: 320px;
flex-shrink: 0;
position: sticky;
top: 134px;
align-self: flex-start;
}

.ml-checkout-section {
background: var(--c-surface);
border: 1px solid var(--c-border);
border-radius: var(--radius);
overflow: hidden;
margin-bottom: 16px;
padding: 20px 24px;
}

.ml-checkout-title {
font-size: 15px;
font-weight: 700;
color: var(--c-text);
margin-bottom: 16px;
padding-bottom: 10px;
border-bottom: 2px solid var(--c-primary-100);
}

/* 收货地址 */
.ml-address-list {
display: flex;
flex-direction: column;
gap: 12px;
}

.ml-address-card {
position: relative;
padding: 14px 16px;
border: 2px solid var(--c-border-light);
border-radius: var(--radius-sm);
cursor: pointer;
transition: var(--transition);
}

.ml-address-card:hover {
border-color: var(--c-primary-200);
}

.ml-address-card.active {
border-color: var(--c-primary);
background: var(--c-primary-50);
}

.ml-address-tag {
position: absolute;
top: 0; right: 0;
padding: 2px 8px;
background: var(--c-primary);
color: #fff;
font-size: 11px;
border-radius: 0 0 0 4px;
}

.ml-address-info p {
font-size: 13px;
color: var(--c-text-secondary);
margin-bottom: 4px;
text-indent: 0;
}

.ml-address-info p:first-child {
font-size: 14px;
font-weight: 600;
color: var(--c-text);
}

.ml-address-info p:first-child span {
font-weight: 400;
color: var(--c-text-muted);
margin-left: 8px;
}

.ml-address-actions {
margin-top: 8px;
padding-top: 8px;
border-top: 1px solid var(--c-border-light);
}

.ml-address-actions a {
font-size: 12px;
color: var(--c-primary);
margin-right: 12px;
}

.ml-address-add {
padding: 14px 16px;
border: 2px dashed var(--c-border);
border-radius: var(--radius-sm);
text-align: center;
transition: var(--transition);
}

.ml-address-add:hover {
border-color: var(--c-primary-300);
background: var(--c-primary-50);
}

.ml-address-add a {
font-size: 13px;
color: var(--c-primary);
font-weight: 600;
}

.ml-address-add a i {
margin-right: 6px;
}

/* 订单商品 */
.ml-order-items {
display: flex;
flex-direction: column;
gap: 12px;
}

.ml-order-item {
display: flex;
align-items: center;
gap: 14px;
padding: 12px;
background: var(--c-bg);
border-radius: var(--radius-sm);
}

.ml-order-img {
width: 60px; height: 60px;
background: var(--c-surface);
border: 1px solid var(--c-border-light);
border-radius: var(--radius-sm);
overflow: hidden;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}

.ml-order-img img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}

.ml-order-info {
flex: 1;
min-width: 0;
}

.ml-order-name {
font-size: 13px;
font-weight: 600;
color: var(--c-text);
margin-bottom: 4px;
}

.ml-order-spec {
font-size: 11px;
color: var(--c-text-muted);
}

.ml-order-price {
width: 80px;
text-align: right;
font-size: 13px;
color: var(--c-text-muted);
flex-shrink: 0;
}

.ml-order-qty {
width: 40px;
text-align: center;
font-size: 13px;
color: var(--c-text-muted);
flex-shrink: 0;
}

.ml-order-subtotal {
width: 90px;
text-align: right;
font-size: 14px;
font-weight: 700;
color: var(--c-primary);
flex-shrink: 0;
}

/* 配送方式 */
.ml-shipping-options {
display: flex;
flex-direction: column;
gap: 10px;
}

.ml-shipping-item {
display: flex;
align-items: center;
gap: 12px;
padding: 12px 14px;
border: 1px solid var(--c-border-light);
border-radius: var(--radius-sm);
cursor: pointer;
transition: var(--transition);
}

.ml-shipping-item:hover {
border-color: var(--c-primary-200);
}

.ml-shipping-item.active {
border-color: var(--c-primary);
background: var(--c-primary-50);
}

.ml-shipping-item input {
flex-shrink: 0;
accent-color: var(--c-primary);
}

.ml-shipping-info {
flex: 1;
}

.ml-shipping-name {
font-size: 13px;
font-weight: 600;
color: var(--c-text);
display: block;
}

.ml-shipping-time {
font-size: 11px;
color: var(--c-text-muted);
}

.ml-shipping-price {
font-size: 14px;
font-weight: 700;
color: var(--c-primary);
flex-shrink: 0;
}

/* 支付方式 */
.ml-payment-options {
display: flex;
gap: 12px;
}

.ml-payment-item {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
padding: 16px 12px;
border: 1px solid var(--c-border-light);
border-radius: var(--radius-sm);
cursor: pointer;
transition: var(--transition);
text-align: center;
}

.ml-payment-item:hover {
border-color: var(--c-primary-200);
}

.ml-payment-item.active {
border-color: var(--c-primary);
background: var(--c-primary-50);
}

.ml-payment-item input {
display: none;
}

.ml-payment-item i {
font-size: 24px;
color: var(--c-text-muted);
}

.ml-payment-item.active i {
color: var(--c-primary);
}

.ml-payment-item span {
font-size: 12px;
color: var(--c-text-secondary);
}

.ml-payment-item.active span {
color: var(--c-primary);
font-weight: 600;
}

/* 发票信息 */
.ml-invoice-form .ml-form-row {
margin-bottom: 10px;
}

.ml-invoice-form .ml-form-label {
width: 100px;
}

/* 订单汇总 */
.ml-checkout-summary {
background: var(--c-surface);
border: 1px solid var(--c-border);
border-radius: var(--radius);
overflow: hidden;
padding: 20px 24px;
}

.ml-summary-title {
font-size: 15px;
font-weight: 700;
color: var(--c-text);
margin-bottom: 16px;
padding-bottom: 10px;
border-bottom: 2px solid var(--c-primary-100);
}

.ml-summary-row {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10px;
font-size: 13px;
color: var(--c-text-secondary);
}

.ml-summary-discount {
color: #ef4444;
}

.ml-summary-divider {
height: 1px;
background: var(--c-border-light);
margin: 12px 0;
}

.ml-summary-total {
font-size: 15px;
font-weight: 700;
color: var(--c-text);
}

.ml-summary-total span:last-child {
font-size: 22px;
color: var(--c-primary);
}

.ml-summary-detail {
margin: 12px 0;
padding: 10px;
background: var(--c-bg);
border-radius: var(--radius-sm);
text-align: center;
font-size: 12px;
color: var(--c-text-muted);
}

.ml-summary-detail strong {
color: var(--c-primary);
}

.ml-btn-submit-order {
width: 100%;
height: 48px;
border: none;
border-radius: var(--radius-sm);
background: var(--c-primary);
color: #fff;
font-size: 16px;
font-weight: 600;
cursor: pointer;
transition: var(--transition);
font-family: inherit;
}

.ml-btn-submit-order:hover {
background: var(--c-primary-dark);
}









/* ===== 会员中心布局 ===== */
.ml-uc{display:flex;gap:20px;padding-bottom:40px;align-items:flex-start}
.ml-uc-side{width:200px;flex-shrink:0;position:sticky;top:134px;align-self:flex-start}
.ml-uc-main{flex:1;min-width:0}

/* 用户信息卡 */
.ml-uc-user{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:20px 12px;text-align:center;margin-bottom:16px}
.ml-uc-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--c-primary-100);margin-bottom:10px}
.ml-uc-name{font-size:14px;font-weight:700;color:var(--c-text);margin-bottom:2px}
.ml-uc-unit{font-size:12px;color:var(--c-text-muted);margin-bottom:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px}
.ml-uc-level{display:inline-block;padding:2px 10px;background:var(--c-primary-50);color:var(--c-primary);font-size:11px;border-radius:10px;font-weight:600}

/* 左侧菜单：复用 .ml-page-menu / .ml-page-menu-item，仅做图标+角标补充 */
.ml-uc-menu .ml-page-menu-item{display:flex;align-items:center;gap:8px}
.ml-uc-menu .ml-page-menu-item i{width:14px;text-align:center;color:var(--c-text-light)}
.ml-uc-menu .ml-page-menu-item:hover i,
.ml-uc-menu .ml-page-menu-item.active i{color:inherit}
.ml-uc-badge{margin-left:auto;min-width:18px;height:18px;line-height:18px;padding:0 5px;background:#ef4444;color:#fff;font-size:10px;border-radius:9px;text-align:center}

/* 欢迎卡 */
.ml-uc-welcome{display:flex;align-items:center;gap:16px}
.ml-uc-welcome img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--c-primary-100);flex-shrink:0}
.ml-uc-welcome-info{flex:1;min-width:0}
.ml-uc-welcome-info h3{font-size:16px;font-weight:700;color:var(--c-text);margin-bottom:4px}
.ml-uc-welcome-info p{font-size:12px;color:var(--c-text-muted);text-indent:0;margin:0;line-height:1.7}
.ml-uc-safe{flex-shrink:0;text-align:right}
.ml-uc-safe-label{font-size:12px;color:var(--c-text-muted);margin-bottom:6px}
.ml-uc-safe-bar{width:140px;height:6px;background:var(--c-border-light);border-radius:3px;overflow:hidden;margin-bottom:6px}
.ml-uc-safe-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--c-primary-light),var(--c-primary));border-radius:3px}

/* 订单状态统计 */
.ml-uc-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.ml-uc-stat{display:block;text-align:center;padding:16px 8px;border:1px solid var(--c-border-light);border-radius:var(--radius-sm);transition:var(--transition)}
.ml-uc-stat:hover{border-color:var(--c-primary-200);background:var(--c-primary-50);text-decoration:none}
.ml-uc-stat-num{font-size:20px;font-weight:700;color:var(--c-primary);line-height:1.2}
.ml-uc-stat-label{font-size:12px;color:var(--c-text-muted);margin-top:4px}

/* 状态标签 */
.ml-tag-status{display:inline-block;padding:2px 8px;font-size:11px;border-radius:4px;font-weight:600}
.ml-tag-wait{background:#fff7ed;color:#ea580c}
.ml-tag-send{background:#eff6ff;color:#2563eb}
.ml-tag-receive{background:#f5f3ff;color:#7c3aed}
.ml-tag-done{background:var(--c-primary-50);color:var(--c-primary)}
.ml-tag-cancel{background:var(--c-bg);color:var(--c-text-light)}

/* 小按钮 */
.ml-btn-sm{display:inline-block;height:28px;line-height:26px;padding:0 12px;border-radius:var(--radius-sm);font-size:12px;transition:var(--transition);cursor:pointer;border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text-secondary);font-family:inherit}
.ml-btn-sm:hover{border-color:var(--c-primary);color:var(--c-primary);text-decoration:none}
.ml-btn-sm-primary{background:var(--c-primary);border-color:var(--c-primary);color:#fff}
.ml-btn-sm-primary:hover{background:var(--c-primary-dark);color:#fff}
.ml-btn-sm+.ml-btn-sm{margin-top:6px}

/* 订单卡片 */
.ml-uc-order{border:1px solid var(--c-border);border-radius:var(--radius);margin-bottom:16px;overflow:hidden;background:var(--c-surface)}
.ml-uc-order:last-child{margin-bottom:0}
.ml-uc-order-head{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--c-bg);border-bottom:1px solid var(--c-border-light);font-size:12px;color:var(--c-text-muted)}
.ml-uc-order-head .ml-order-no{color:var(--c-text);font-weight:600;margin-right:16px}
.ml-uc-order-body{padding:12px 16px;display:flex;align-items:center;gap:14px}
.ml-uc-order-goods{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.ml-uc-order-good{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}
.ml-uc-order-good .ml-good-name{color:var(--c-text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ml-uc-order-good .ml-good-spec{color:var(--c-text-light);font-size:11px;margin-left:8px;font-weight:400}
.ml-uc-order-good .ml-good-price{color:var(--c-text-secondary);flex-shrink:0}
.ml-uc-order-total{width:110px;text-align:right;flex-shrink:0}
.ml-uc-order-total .ml-price{font-size:16px;font-weight:700;color:var(--c-primary)}
.ml-uc-order-total .ml-count{font-size:11px;color:var(--c-text-light)}
.ml-uc-order-status{width:90px;text-align:center;flex-shrink:0}
.ml-uc-order-actions{width:100px;text-align:right;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end}

/* 订单进度条 */
.ml-steps{display:flex;padding:10px 0 20px}
.ml-step{flex:1;text-align:center;position:relative;padding-top:34px;font-size:12px;color:var(--c-text-light)}
.ml-step::before{content:"";position:absolute;top:12px;left:50%;transform:translateX(-50%);width:14px;height:14px;border-radius:50%;background:var(--c-border);border:3px solid var(--c-surface);box-shadow:0 0 0 1px var(--c-border);z-index:2}
.ml-step::after{content:"";position:absolute;top:19px;left:calc(-50% + 12px);width:calc(100% - 24px);height:2px;background:var(--c-border)}
.ml-step:first-child::after{display:none}
.ml-step-done{color:var(--c-primary);font-weight:600}
.ml-step-done::before{background:var(--c-primary);box-shadow:0 0 0 1px var(--c-primary)}
.ml-step-done::after{background:var(--c-primary)}
.ml-step-current::before{box-shadow:0 0 0 3px var(--c-primary-100)}
.ml-step-time{display:block;font-size:11px;color:var(--c-text-light);margin-top:2px;font-weight:400}

/* 收货地址网格：复用结算页 .ml-address-card / .ml-address-add */
.ml-addr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ml-addr-grid .ml-address-card{min-height:128px}
.ml-addr-grid .ml-address-add{min-height:128px;display:flex;align-items:center;justify-content:center}

/* 单选组 */
.ml-radio{display:inline-flex;align-items:center;gap:6px;margin-right:16px;font-size:13px;color:var(--c-text-secondary);cursor:pointer;line-height:36px}
.ml-radio input{accent-color:var(--c-primary);margin:0}

/* 头像上传行 */
.ml-avatar-edit{display:flex;align-items:center;gap:16px;line-height:36px}
.ml-avatar-edit img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid var(--c-primary-100)}

/* 安全设置项 */
.ml-safe-item{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--c-border-light)}
.ml-safe-item:last-child{border-bottom:none}
.ml-safe-icon{width:40px;height:40px;flex-shrink:0;border-radius:8px;background:linear-gradient(135deg,var(--c-primary-light),var(--c-primary));color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px}
.ml-safe-info{flex:1;min-width:0}
.ml-safe-info h4{font-size:14px;font-weight:600;color:var(--c-text);margin-bottom:2px}
.ml-safe-info h4 .ml-tag-status{margin-left:8px;font-weight:600}
.ml-safe-info p{font-size:12px;color:var(--c-text-muted);margin:0;text-indent:0;line-height:1.6}

/* 空状态 */
.ml-empty{text-align:center;padding:60px 20px;color:var(--c-text-light)}
.ml-empty i{font-size:48px;display:block;margin-bottom:12px}
.ml-empty p{font-size:13px;margin:0;text-indent:0}

/* 找回密码：验证码按钮 */
.ml-btn-code{width:110px;height:42px;flex-shrink:0;border:1px solid var(--c-primary);background:var(--c-surface);color:var(--c-primary);border-radius:var(--radius-sm);font-size:12px;cursor:pointer;transition:var(--transition);font-family:inherit}
.ml-btn-code:hover{background:var(--c-primary-50)}
.ml-btn-code:disabled{border-color:var(--c-border);color:var(--c-text-light);cursor:not-allowed;background:var(--c-bg)}





.ml-service-layout { display: flex; gap: 32px; align-items: flex-start; }
.ml-service-main { flex: 1; min-width: 0; }
.ml-service-header { margin-bottom: 32px;text-align: center; }
.ml-service-title { font-size: 24px; font-weight: 600; color: var(--c-text, #111827); margin-bottom: 8px; }
.ml-service-desc { font-size: 16px; color: var(--c-text-muted, #6b7280); line-height: 1.6; margin: 0; }
.ml-service-block { background: #fff; border-radius: 8px; border: 1px solid var(--c-border, #e5e7eb); padding: 24px; }
.ml-service-content { font-size: 14px; line-height: 1.8; color: var(--c-text, #374151); margin-bottom: 24px; }
.ml-service-content p { margin-bottom: 12px; }
.ml-service-content p:last-child { margin-bottom: 0; }
.ml-service-tags { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; }
.ml-service-tags .ml-server-tag { display: inline-block; padding: 6px 14px; background: var(--c-bg-light, #f9fafb); border: 1px solid var(--c-border, #e5e7eb); border-radius: 20px; font-size: 13px; color: var(--c-text, #374151); transition: all 0.2s; cursor: default; }
.ml-service-tags .ml-server-tag:hover { background: var(--c-bg-active, #ecfdf5); border-color: var(--c-primary, #059669); color: var(--c-primary, #059669); }
.ml-service-extra { font-size: 14px; line-height: 1.8; color: var(--c-text, #374151); margin-bottom: 24px; padding: 16px; background: var(--c-bg-light, #f9fafb); border-radius: 6px; }
.ml-service-table-wrap { margin-bottom: 24px; overflow-x: auto; }
.ml-service-table-wrap table { width: 100%; border-collapse: collapse; font-size: 14px; }
.ml-service-table-wrap th, .ml-service-table-wrap td { padding: 12px 16px; border: 1px solid var(--c-border, #e5e7eb); text-align: left; }
.ml-service-table-wrap th { background: var(--c-bg-light, #f9fafb); font-weight: 500; color: var(--c-text-muted, #6b7280); white-space: nowrap; }
.ml-service-table-wrap td { color: var(--c-text, #374151); }
.ml-service-table-wrap tr:hover td { background: var(--c-bg-hover, #f3f4f6); }
.ml-service-process { text-align: center; }
.ml-process-img { max-width: 100%; height: auto; border-radius: 6px; }





/* ===== 头部固定 ===== */
.ml-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
}

/* ===== 导航菜单固定 ===== */
.ml-nav {
	position: fixed;
	/*top: 82px;*/
	top: 100px;
	left: 0;
	right: 0;
	z-index: 999;
}

/* 调整 body padding，加上导航高度 */
body {
	padding-top: 144px;
	/* 82 + 42 = 124px */
}

/* ===== 左侧分类菜单保持 sticky（推荐，不需要改 fixed）===== */
.ml-sidebar {
	position: sticky;
	top: 144px;
	/* 头部+导航高度 */
	align-self: flex-start;
	z-index: 50;
}