.mm_badge {
	font-size: 0.75rem;
	padding: 0.25rem .5rem;
	border-radius: 1rem;
	color: var(--font_white);
	background: var(--bg_red);
}

.active,
.hover,
.focus,
.click {
	position: relative;
}

.mm_btn {
	display: inline-block;
	text-transform: none;
	cursor: pointer;
	border: 1px solid var(--border_base);
	padding: 0 var(--padding_base);
	height: 2rem;
	line-height: 2rem;
	border-radius: var(--radius_small);
	font-size: 0.875rem;
	box-sizing: border-box;
}

/* 盒子 */
.mm_box {
	display: none;
	position: absolute;
	top: 100%;
	right: 0;
	background: var(--bg_main);
	z-index: 9;
}

.mm_box li {
	margin: 0;
}

.mm_box::before,
.mm_box::after {
	display: block;
	content: "";
	clear: both;
	float: none;
}

.current .mm_box {
	display: inline-block;
}

/* ====== 表单 ====== */

/* 单选框 */
.control_radio input {
	display: none;
}

.control_radio .figure {
	position: relative;
	top: 0.25rem;
	display: inline-block;
	overflow: hidden;
	width: 1.125rem;
	height: 1.125rem;
	border: 1px solid var(--border_primary);
	border-radius: 50%;
	margin-right: .25rem;
}

.control_radio .active .figure::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: " ";
	display: inline-block;
	width: 0.5rem;
	height: 0.5rem;
	background: #38f;
	border-radius: 50%;
	z-index: 2;
}

.control_radio_color input {
	display: none;
}

.control_radio_color label {
	display: inline-block;
	padding: 0 0.5rem;
	border: 1px solid var(--border_no);
	border-radius: var(--radius_small);
	background: var(--bg_base);
	color: var(--font_black);
	font-size: 0.75rem;
	height: 2rem;
}

.control_radio_color .active {
	border-color: var(--border_no);
}

.control_radio_color .active::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	content: " ";
	display: inline-block;
	width: 0.75rem;
	height: 0.325rem;
	border-left: 2px solid var(--border_white);
	border-bottom: 2px solid var(--border_white);
}

.control_radio_color .color_box {}

/* 发送验证码输入框 */
.mm_code .mm_group {
	border-bottom: none
}

/* 计数器 */
.control_number {
	width: fit-content;
}

.control_number .value {
	display: flex;
}

.control_number input::-webkit-outer-spin-button,
.control_number input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}

.control_number input[type=number] {
	border-left: none;
	border-right: none;
	border-radius: 0;
	text-align: center;
	-moz-appearance: textfield;
	height: 2rem;
	line-height: 2rem;
	min-width: auto;
}

.btn_del,
.btn_add {
	display: block;
	position: relative;
	line-height: 1;
}

.btn_del::before,
.btn_add::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 0.5rem;
	height: 2px;
	background-color: var(--bg_white);
	line-height: 1;
}

.btn_add::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 2px;
	height: 0.5rem;
	background-color: var(--bg_white);
	line-height: 1;
}

.control_number .btn_del {
	border-radius: var(--radius_small) 0 0 var(--radius_small);
}

.control_number .btn_add {
	border-radius: 0 var(--radius_small) var(--radius_small) 0;
}

/* 开关 */
.control_switch {
	height: 2rem;
}

.control_switch .onoff {
	position: relative;
	display: block;
	height: 2rem;
	line-height: 2rem !important;
	width: 3.75rem !important;
	background-color: var(--bg_main);
	border-radius: 8rem;
	cursor: pointer;
	transition: all 0.3s ease;
	border: 1px solid var(--border_base);
}

.control_switch .onoff::after {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: calc(2rem - 1px);
	height: calc(2rem - 1px);
	border-radius: 50%;
	background-color: var(--bg_main);
	border: 1px solid var(--border_base);
	box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.05);
	content: '';
	transition: all 0.3s ease;
}

.control_switch .active .onoff {
	background: #04BE02;
}

.control_switch .active .onoff::after {
	left: 1.79rem;
}

.control_switch label:active .onoff::after {
	transform: scale(1.15, 0.85);
}

.control_switch .on,
.control_switch .off {
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.control_switch .on {
	left: .35rem;
}

.control_switch .on::before {
	content: "ON";
	font-size: 0.625rem;
	color: var(--font_white);
}

.control_switch .off {
	right: .25rem;
}

.control_switch .off::before {
	content: "OFF";
	font-size: 0.625rem;
	color: var(--font_base_b);
}


/* 选择框 */
.control_select a {
	color: inherit;
	display: inline-block;
}

.control_select .value {
	font-size: .875rem;
}

.control_select select {
	border-radius: .25rem;
	border: 1px solid var(--border_base);
	min-height: 2rem;
	background-position-x: calc(100% - .25rem);
	max-width: 100%;
}

.control_select select[multiple] {
	height: 10rem;
	padding: 0;
	text-align: left;
}

.control_select select[multiple] option {
	padding: 0.25rem 2.5rem 0.25rem 0.5rem;
}

.control_select .active {
	font-weight: bold;
	color: var(--font_primary);
}

.control_select select[multiple] .active::after {
	position: absolute;
	top: 50%;
	right: 0.5rem;
	transform: translate(0, -50%) rotate(-45deg);
	content: " ";
	display: inline-block;
	width: 0.75rem;
	height: 0.325rem;
	border-left: 1px solid var(--border_primary);
	border-bottom: 1px solid var(--border_primary);
}

.control_select .lv_1 {
	padding-left: 0.5rem !important;
}

.control_select .lv_2 {
	padding-left: 1rem !important;
}

.control_select .lv_3 {
	padding-left: 1.5rem !important;
}

.control_select .lv_4 {
	padding-left: 2rem !important;
}

.control_select .lv_1::before,
.control_select .lv_2::before,
.control_select .lv_3::before,
.control_select .lv_4::before {
	content: "> ";
	color: #c0c4cc;
}

.control_select .selected {
	padding: 0 .5rem;
	border-radius: .25rem;
	height: 2rem;
	line-height: 2rem;
	border: 1px solid var(--border_base);
	/* background:url("/img/down.png") no-repeat scroll right center transparent;background-position-x:calc(100% - .25rem);*/
}

.control_select .mm_box {
	overflow: hidden;
	border: 1px solid var(--glass_white);
	border-radius: .25rem;
	-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
	box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
	min-width: 5rem;
}

.control_select ul {
	padding: 0;
	list-style: none;
}

.control_select li {
	padding: 0 .5rem;
	line-height: 2rem;
	width: 100%;
	border-bottom: 1px solid var(--glass_white);
}

.control_select li:hover {
	background: var(--glass_black);
	color: var(--font_primary_b);
}

.control_textarea .value {
	position: relative;
	overflow-x: hidden;
}

.control_textarea textarea {
	width: 100%;
	min-width: 11.6875rem;
}

.control_textarea .btn_expand {
	position: absolute;
	right: 0;
	top: 0;
	border: none;
	background: rgba(0, 0, 0, 0.5);
	color: var(--font_white);
	opacity: 0;
	font-size: 0.75rem;
	padding: 0.25rem;
	height: auto;
	line-height: 1;
}


.control_textarea .tox-tinymce {
	display: none;
}

.control_textarea.show-expand .value textarea {
	display: none;
}

.control_textarea.show-expand .tox-tinymce {
	display: block;
}

.current .selected,
.hover:hover .selected,
.focus:focus .selected {
	border-color: var(--border_primary);
}


/* 反转器 */
.control_reverse {
	display: flex;
}

.control_reverse:hover {
	cursor: pointer;
}

.control_reverse .figure {
	height: 2rem;
	width: 1rem;
	position: relative;
	padding-top: .125rem;
}

form .title {
	line-height: 2rem;
}

.control_input .title,
.control_checkbox .title,
.control_radio .title,
.control_select .title,
.control_number .title,
.slide .title,
.control_switch .title,
.control_reverse .title {
	float: left;
	padding-left: 1rem;
	padding-right: .5rem;
	min-width: 6.5rem;
	line-height: 2rem;
	/* position: relative; */
}

.title_main {
	display: inline-block;
}

.title .qa {
	display: inline-block;
	color: #51a6ff6b;
	margin-left: 0.5rem;
	/* 
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%); */
}

.control_checkbox .figure {
	position: relative;
	top: 0.25rem;
	display: inline-block;
	overflow: hidden;
	width: 1.125rem;
	height: 1.125rem;
	border: 1px solid var(--border_primary);
	border-radius: 50%;
	margin-right: 0.25rem;
}

table .control_reverse {
	width: 100%;
}

table .control_reverse .figure {
	float: right;
}

table .control_reverse .title {
	min-width: initial;
	padding-left: 0;
	float: left;
	white-space: nowrap;
}

.control_reverse .value {
	overflow: hidden;
}

.control_reverse .up,
.control_reverse .down {
	margin: auto;
	margin: .2rem auto;
	display: block;
}

.control_reverse .up::before {
	content: "";
	display: block;
	margin: auto;
	width: 0;
	height: 0;
	border-left: .25rem solid transparent;
	border-right: .25rem solid transparent;
	border-bottom: .5rem solid var(--border_base);
}

.control_reverse .down::after {
	content: "";
	display: block;
	margin: auto;
	width: 0;
	height: 0;
	border-left: .25rem solid transparent;
	border-right: .25rem solid transparent;
	border-top: .5rem solid var(--border_base);
}

.control_reverse .up.active::before {
	border-bottom-color: var(--border_primary);
}

.control_reverse .down.active::after {
	border-top-color: var(--border_primary);
}

.reverse_arrow .up {
	float: left;
	height: 1rem;
	position: relative;
}

.reverse_arrow .up::after {
	background-color: var(--bg_base);
	height: .75rem;
	position: absolute;
	top: .25rem;
	right: 0;
	content: "";
	display: block;
	width: 2px;
}

.reverse_arrow .up::before {
	border: .15rem solid;
	border-color: transparent var(--border_default) var(--border_default) transparent;
}

.reverse_arrow .up.active::after {
	background-color: var(--bg_primary);
}

.reverse_arrow .up.active::before {
	border-color: transparent var(--border_primary) var(--border_primary) transparent;
}

.reverse_arrow .down {
	height: 1rem;
	position: relative;
	margin-left: .5rem;
}

.reverse_arrow .down::before {
	background-color: var(--bg_base);
	height: .75rem;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	display: block;
	width: 2px;
}

.reverse_arrow .down::after {
	position: absolute;
	bottom: 0;
	border: .15rem solid;
	border-color: var(--border_default) transparent transparent var(--border_base);
}

.reverse_arrow .down.active::before {
	background: var(--bg_primary);
}

.reverse_arrow .down.active::after {
	border-color: var(--border_primary) transparent transparent var(--border_primary);
}

.reverse_arrow .active {
	display: block;
}


/* 复选框 */
.control_checkbox {
	white-space: pre-wrap;
}
.control_checkbox .active .figure {
	background: var(--bg_primary);
}

.control_checkbox .active .figure::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	content: " ";
	display: inline-block;
	width: 0.5rem;
	height: 0.25rem;
	border-left: 1px solid var(--border_white);
	border-bottom: 1px solid var(--border_white);
	z-index: 2;
}

/* 输入框 */
.control_input,
.control_checkbox,
.control_radio,
.control_select,
.control_number,
.slide,
.control_switch {
	position: relative;
}

.control_switch .value {
	line-height: 0;
}

.control_input .value::before,
.control_number .value:before,
.slide .value:before {
	content: "";
	display: block;
}

.control_checkbox .value:before,
.control_radio .value:before {
	content: "";
	display: block;
	clear: both;
	float: none;
}

.control_input .value:after .control_number .value:after,
.slide .value:after {
	content: "";
	display: block;
}

.control_checkbox .value:after,
.control_radio .value:after {
	content: "";
	display: block;
	clear: both;
	float: none;
}

.control_input .unit {
	padding-left: .5rem;
	padding-right: 1rem;
}

/* 导航 */
.mm_nav a {
	color: inherit;
	text-decoration: none;
}

.mm_data_count {
	line-height: 2rem;
	padding: .5rem 0;
}




/* 盒子样式 */
.click {
	display: inline-block;
}

.click .mm_box {
	right: initial;
	min-width: 5.25rem;
}

.hover:hover .mm_box {
	display: inline-block;
}

.focus:focus .mm_box {
	display: inline-block;
}

.active:active .mm_box {
	display: inline-block;
}

.inline .control_input,
.inline .control_checkbox,
.inline .control_radio,
.inline .control_select,
.inline .control_number,
.inline .slide,
.inline .control_switch {
	display: inline-block;
}

.pc .control_select {
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.pc .control_input {
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.pc .control_input input {
	border-radius: .25rem;
	border: 1px solid var(--border_base);
	min-width: 12rem;
}

.pc .control_input .title {
	line-height: 2rem;
}

.pc .control_radio .value {
	line-height: 2rem;
}

.pc .control_checkbox .value {
	line-height: 2rem;
}

.pc .control_checkbox .figure {
	margin-right: .5rem;
}

.mobile .control_number [class*=mm_btn] {
	font-size: 1.25rem;
	border-radius: 50%;
	padding: 0;
	min-width: 1.5rem;
	height: 1.5rem;
	line-height: 1.5rem;
	margin: 0.25rem .5rem;
}

.mobile .control_number input {
	border: 1px solid var(--border_base);
	border-radius: .25rem;
}

.pc .control_number .value {
	border: 1px solid var(--border_primary);
	border-radius: var(--radius_small);
}

.pc .control_number [class*=mm_btn] {
	border-radius: 0;
	min-width: 2rem;
}

.mobile .control_input {
	margin-bottom: -1px;
	padding-top: var(--padding_small);
	padding-bottom: var(--padding_small);
	border-bottom: 1px solid var(--border_base);
}

.mobile .control_input .title {
	height: 2rem;
	line-height: 2rem;
}

.mobile .control_input input {
	line-height: 2rem;
	height: 2rem;
	padding: 0 var(--padding_small);
	flex: 1;
	border-color: transparent;
	margin-right: 0.5rem;
}


.mobile .control_input .unit {
	line-height: 2rem;
	height: 2rem;
}

.mobile .control_checkbox .figure {
	margin-right: 1rem;
}

.mobile .control_radio label,
.mobile .control_checkbox label {
	display: block;
	padding: 0.75rem;
	border-bottom: 1px solid var(--border_base);
	margin-bottom: -1px;
}

.mobile .control_radio .figure {
	float: right;
	border: none;
}

.mobile .control_radio .active .figure::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	content: " ";
	display: inline-block;
	width: 1rem;
	height: 0.5rem;
	border-left: 1px solid #38f;
	border-bottom: 1px solid #38f;
	border-radius: 0;
	background: none;
}

.mobile .control_switch {
	margin-bottom: -1px;
	padding-top: var(--padding_small);
	padding-bottom: var(--padding_small);
	border-top: 1px solid var(--border_base);
	border-bottom: 1px solid var(--border_base);
	overflow: hidden;
}

.mobile .control_switch .value {
	display: block;
}

.mobile .control_switch .onoff {
	float: right;
	margin-right: 1rem;
}

.mobile .control_input .value {
	overflow-x: hidden;
	display: flex;
}

/* ===  导航栏  === */
.mm_bar_logo {
	overflow: hidden;
	position: relative;
	border-right: 1px solid rgba(0, 0, 0, 0.4);
	border-bottom: 1px solid rgba(0, 0, 0, 0.4);
	white-space: nowrap;
}

.mm_bar_logo:after {
	content: "";
	display: block;
	position: absolute;
	height: 100%;
	right: 0;
	top: 0;
	border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.mm_bar_logo:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	left: 0;
	right: 0;
	bottom: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.mm_bar_logo img {
	max-height: var(--img_size_mini);
	margin: var(--margin_small);
}

.mm_bar_logo span {
	line-height: 2.25rem;
	font-size: var(--text_small);
}

/* ===  导航栏  === */
.mm_nav_fast {
	float: left;
	width: fit-content;
	display: flex;
}

.mm_nav_fast>* {
	height: var(--height_big);
	border-radius: 0;
	padding-right: var(--padding_base);
	padding-left: var(--padding_base);
}

.mm_nav_side .mm_item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.4);
	padding: 0;
}

.mm_nav_side .btn,
.mm_nav_side .box {
	white-space: nowrap;
	overflow: hidden;
	/* text-overflow: ellipsis; */
}

.mm_nav_side .mm_item.active {
	border-bottom: none;
}

.mm_nav_side .mm_item.active::before {
	display: none;
}

.mm_nav_side .mm_item::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	left: 0;
	right: 0;
	bottom: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.mm_nav_side {
	color: var(--font_base_b);
}

.mm_nav_side .btn {
	overflow: hidden;
	line-height: var(--height_big);
	padding: 0 var(--padding_small);
	color: inherit;
	font-size: var(--text_small);
	position: relative;
}

.mm_nav_side .btn:after {
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
	content: "";
	padding: 3px;
	display: block;
	border: solid var(--border_light_d);
	border-width: 0 1px 1px 0;
	transition: all 0.2s;
}

.mm_nav_side .btn:hover {
	color: var(--font_white);
	background: rgba(3, 4, 29, 0.1);
}

.mm_nav_side .active .btn:after {
	transform: translateY(-50%) rotate(45deg);
	border-color: var(--border_white);
}

.mm_nav_side .box {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.2s;
	transition: max-height 0.2s;
	background: rgb(22, 25, 28);
}

.mm_nav_side .active .box {
	max-height: 80vh;
	padding: var(--padding_mini) 0;
}

.mm_nav_side .active .btn {
	color: var(--font_white);
	background: rgb(49, 131, 246);
	background: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.5) 0%, rgba(102, 188, 244, 0.42) 39%, rgba(49, 166, 247, 0.42) 40%, rgba(49, 131, 246, 0.3) 100%);
	background: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.5) 0%, rgba(102, 188, 244, 0.42) 39%, rgba(49, 166, 247, 0.42) 40%, rgba(49, 131, 246, 0.3) 100%);
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.5) 0%, rgba(102, 188, 244, 0.42) 39%, rgba(49, 166, 247, 0.42) 40%, rgb(49, 224, 246, 0.3) 100%);
	;
}

.mm_nav_side a {
	color: inherit;
	display: block;
	line-height: var(--height_big);
	padding-left: 2.5rem;
	font-size: var(--text_small);
	position: relative;
	transition: color 0.5s ease-in-out, filter 0.5s ease-in-out;
}

.mm_nav_side .mm_icon {
	float: left;
	text-align: center;
	min-width: 1.5rem;
	margin-right: var(--margin_small);
}

.mm_nav_top {
	float: right;
	white-space: nowrap;
}

.mm_nav_top .mm_icon {
	display: inline-block;
	line-height: 1;
}

.mm_nav_top .avatar {
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 50%;
	overflow: hidden;
}

.mm_nav_top .item {
	float: left;
	min-width: 2.5rem;
}

.mm_nav_top .item a {
	padding: 0 0.75rem;
}

.mm_nav_top a {
	display: inline-block;
	font-size: var(--text_small);
	text-align: center;
	color: inherit;
}

.mm_nav_top .mask {
	background: none;
	display: none;
}

.mm_nav_top>button {
	display: none;
	height: 2.5rem;
	min-width: 2.5rem;
	float: right;
	border-radius: 0;
}

.mm_nav_main {
	white-space: nowrap;
}

.mm_nav_main .mm_icon {
	display: inline-block;
	line-height: 1;
}

.mm_nav_main .avatar {
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 50%;
	overflow: hidden;
}

.mm_nav_main .item {
	float: left;
	min-width: 2.5rem;
}

.mm_nav_main .item a {
	padding: 0 0.75rem;
}

.mm_nav_main a {
	display: inline-block;
	text-align: center;
	color: inherit;
}

.mm_nav_main .mask {
	background: none;
	display: none;
}

.mm_nav_main>button {
	display: none;
	height: 2.5rem;
	min-width: 2.5rem;
	float: right;
	border-radius: 0;
}

@media (max-width: 830px) {
	.mm_nav_top>button {
		display: block;
	}

	.mm_nav_top .nav_warp {
		height: 0;
		overflow: hidden;
		text-align: center;
		z-index: 10;
		transition: height 0.3s ease-in-out;
		position: fixed;
		left: 0;
		right: 0;
		top: calc(2.5rem - 1px);
	}

	.mm_nav_top nav {
		z-index: 32;
		background: var(--bg_black);
		clear: both;
		float: none;
		position: relative;
		padding: 0;
		display: flex;
		justify-content: right;
	}

	.mm_nav_top nav::before {
		content: "";
		display: block;
		clear: both;
		float: none;
	}

	.mm_nav_top nav::after {
		content: "";
		display: block;
		clear: both;
		float: none;
	}

	.mm_nav_top .item>* {
		display: block;
	}

	.mm_nav_top.show .mask {
		display: block;
	}

	.show .nav_warp {
		height: 100vh;
		border-top: 1px solid rgba(0, 0, 0, 0.25);
	}
}


/* 加载 */
.mm_loading {
	text-align: center;
	max-width: 8rem;
	margin: auto;
}

.mm_loading .load {
	position: relative;
	margin: auto;
}

.mm_loading img,
.mm_loading i {
	display: inline-block;
	vertical-align: middle;
	animation: rotate 1s steps(12, end) infinite;
	-webkit-animation: rotate 1s steps(12, end) infinite;
}

.mm_loading img {
	width: 100%;
}

.mm_loading .progress {
	width: 100%;
	background: #38f;
	border-radius: var(--radius_small);
}

.mm_loading .progress::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 1rem;
	animation: translate 1s infinite;
	-webkit-animation: translate 1s infinite;
	background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.6));
	/* Safari 5.1 - 6 */
	background: -o-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.6));
	/* Opera 11.1 - 12*/
	background: -moz-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.6));
	/* Firefox 3.6 - 15*/
	background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.6));
	/* 标准的语法 */
	border-radius: 0 .25rem .25rem 0;
}

@keyframes rotate {
	0% {
		transform: rotate3d(0, 0, 1, 0deg);
	}

	100% {
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

@-moz-keyframes rotate {
	0% {
		transform: rotate3d(0, 0, 1, 0deg);
	}

	100% {
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

@-webkit-keyframes rotate {
	0% {
		transform: rotate3d(0, 0, 1, 0deg);
	}

	100% {
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

@-ms-keyframes rotate {
	0% {
		transform: rotate3d(0, 0, 1, 0deg);
	}

	100% {
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

@-o-keyframes rotate {
	0% {
		transform: rotate3d(0, 0, 1, 0deg);
	}

	100% {
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

@keyframes translate {
	0% {
		left: 0;
	}

	100% {
		left: 100%;
	}
}

@-moz-keyframes translate {
	0% {
		left: 0;
	}

	100% {
		left: 100%;
	}
}

@-webkit-keyframes translate {
	0% {
		left: 0;
	}

	100% {
		left: 100%;
	}
}

@-ms-keyframes translate {
	0% {
		left: 0;
	}

	100% {
		left: 100%;
	}
}

@-o-keyframes translate {
	0% {
		left: 0;
	}

	100% {
		left: 100%;
	}
}


/* 选项卡 */
.mm_tab_head {
	color: var(--font_base);
	white-space: nowrap;
	text-overflow: ellipsis;
	height: 2rem;
	line-height: 2rem;
	border-bottom: 1px solid var(--border_base);
}

.mm_tab_head view {
	text-align: center;
	padding: 0 1rem;
	border-right: 1px solid var(--border_base);
	display: inline-block;
}

.mm_tab_head .active {
	border-bottom: 1px solid var(--border_base);
	color: var(--font_primary);
}

.mm_tab_head .fa-times-circle {
	color: var(--font_base_b);
}

.mm_tab_head .fa-times-circle:hover {
	cursor: pointer;
	opacity: 0.8;
}

/* 分页器 */
.control_pager,
[class*=control_pager_] {
	text-align: center;
	margin: auto;
}

.control_pager a,
[class*=control_pager_] a {
	padding: 0 .5rem;
	position: relative;
	z-index: 1;
	min-width: 2.25rem;
	white-space: nowrap;
	display: inline-block;
	height: 2rem;
	line-height: calc(2rem - 2px);
	color: var(--font_deep);
	border: 1px solid var(--border_base);
	margin-left: -1px;
	text-align: center;
	background-color: #fff;
}

.control_pager_sm a {
	height: 1.5rem;
	line-height: 1.5rem;
	min-width: 1.5rem;
	font-size: 0.85rem;
}

.control_pager-x a {
	margin-left: .5rem;
	color: var(--font_deep);
	border-radius: .25rem;
}

.control_pager-x a:last-of-type {
	margin-right: 0;
}

.control_pager a:first-child {
	border-top-left-radius: .25rem;
	border-bottom-left-radius: .25rem;
}

.control_pager a:last-child {
	border-top-right-radius: .25rem;
	border-bottom-right-radius: .25rem;
}

.control_pager-x .active {
	background: var(--bg_white);
	color: var(--font_primary);
}

.control_pager a:hover,
.control_pager a:active {
	z-index: 2;
}

.control_pager .active,
[class*=control_pager_] .active {
	background: var(--bg_primary);
	color: var(--font_white);
	border-color: var(--border_primary)
}

.control_pager.group>a,
[class*=control_pager_].group>a {
	margin-left: -1px;
}

@media (max-width:576px) {
	.control_pager .page_num {
		display: none;
	}

	.control_pager .active {
		display: inline-block;
	}
}

.mm_nav_side a:hover {
	background: var(--glass_light);
	filter: brightness(150%);
}

.mm_table {
	overflow-x: auto;
}

.mm_table th {
	white-space: nowrap;
	vertical-align: middle;
}

.mm_table td {
	max-width: 24rem;
	overflow: hidden;
	text-overflow: ellipsis;
	vertical-align: middle;
}

table .mm_btn span,
table [class*=btn_] span {
	line-height: 1;
}

.input_display {
	width: 3rem;
	text-align: center;
	border-radius: var(--radius_small);
	border: 1px solid var(--border_base);
}

.auto-width {
	display: inline-block;
	width: 100%;
	min-width: 4.5rem;
	background: none;
	border-radius: 0 !important;
	border-color: transparent !important;
	padding: 0 !important;
	font-size: inherit;
}

.auto-width:focus {
	border: 1px solid var(--border_base);
}

.th_id {
	width: 4rem;
}

.th_avatar {
	width: 6rem;
}

.th_icon {
	width: 4rem;
}

.th_uin {
	min-width: 12rem
}

.th_name {
	width: 6rem
}

.th_phone {
	width: 7.5rem
}

.th_idcard {
	width: 10rem
}

.th_display {
	width: 3rem
}

.th_type {
	min-width: 6rem
}

.th_address {
	min-width: 15rem
}

.th_username {
	min-width: 10rem
}

.th_nickname {
	min-width: 10rem
}

.th_email,
.th_time {
	width: 10rem
}

.th_type,
.th_type,
.th_group,
.td_group {
	width: 10rem;
}

.th_num {
	width: 7rem
}

.th_score,
.th_state {
	width: 5.5rem
}

.th_handle {
	min-width: 10rem
}

.th_title {
	width: 15rem
}

.th_desc {
	width: 20rem
}

.th_selected {
	width: 3rem;
	text-align: center;
}

.td_avatar {
	text-align: center;
}

.input_display {
	width: 3rem;
}

.input_hover {
	background: none;
	border-color: transparent !important;
}

.input_auto {
	min-width: initial;
	width: initial;
}

.input_hover:focus {
	background-color: var(--bg_main);
	border: 1px solid var(--border_base);
}

.input_hover input {
	background: none;
	border-color: transparent !important;
}

.input_hover input:focus {
	background-color: var(--bg_main);
	border: 1px solid var(--border_base);
}

.td_display input {
	width: 3rem;
}

/* 图片上传 */
.control_upload_img {
	width: fit-content;
}

.control_upload_img .img_box {
	text-align: center;
	position: relative;
	z-index: 1;
}

.control_upload_img .img_box i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.control_upload_img .btns {
	position: absolute;
	left: calc(100% + 0.25rem);
	bottom: 0;
	width: 4rem;
}

.control_upload_img .btn_link {
	font-size: .875rem;
	padding: 0 .5rem;
	height: 1.5rem;
	line-height: 1.5rem;
	white-space: nowrap;
	margin-top: .5rem;
	display: block;
}

.control_upload_img .from_default {
	min-width: 75%;
}

.control_upload_img .btn_close {
	position: absolute;
	left: 50%;
	top: calc(100% + 1rem);
	transform: translateX(-50%);
	border: none;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 50%;
	padding: 0 .05rem .1rem 0;
	width: 2rem;
	height: 2rem;
	color: rgb(105, 105, 105);
	z-index: 32;
}

.control_upload_img .mm_icon {
	border-radius: var(--radius_small);
	border: 2px dashed var(--border_base);
	margin: auto;
}

.control_upload_img .mm_icon img {
	display: none;
}

.upload_add .mm_icon::before,
.upload_add .mm_icon::after {
	content: "";
	display: block;
	transform: translate(-50%, -50%);
	position: absolute;
	top: 50%;
	left: 50%;
	background: rgba(125, 125, 125, 0.5);
}

.upload_add .mm_icon::before {
	width: 1rem;
	height: .125rem;
}

.upload_add .mm_icon::after {
	width: .125rem;
	height: 1rem;
}

.mm_nav_path {
	margin: 0.5rem;
}

.mm_nav_path a~a::before {
	content: "\\";
	color: var(--font_base);
	margin-left: .125rem;
	margin-right: .5rem;
}


/** ===  提示  === **/
.mm_tip {
	position: relative;
}

.mm_tip .box {
	position: absolute;
	bottom: 100%;
	background: #000000;
	color: var(--font_white);
	border-radius: var(--radius_small);
	font-size: 0.625rem;
	padding: 0;
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
}

.mm_tip .box span {
	white-space: nowrap
}

.mm_tip .btn {
	background: none;
	padding: 0;
	border: none;
	color: inherit;
}

.mm_tip .active .box {
	height: initial;
	opacity: 1;
	padding: 0.25rem 1rem;
}

/** ===  拓展样式  === **/
.expand_drag {
	position: absolute;
}

.expand_drag:hover {
	cursor: pointer;
}

.expand_qrcode {
	line-height: 1;
}

.expand_num {
	display: inline-block;
}

.hr {
	width: 100%;
	height: 1rem;
	padding: 0;
	position: relative;
}

.hr:before {
	content: " ";
	display: block;
	height: 1px;
	width: 100%;
	color: var(--font_base);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.form_title {
	font-size: 0.625rem;
	min-width: auto;
	color: var(--font_light);
}

.form_title~dd {
	float: initial;
	overflow: hidden;
}

.form_title~dd .hr:before {
	top: initial;
	bottom: 0;
	transform: translate(-50%, 0);
}

.control_color .btn_transparent {
	margin-left: 0.5rem;
	background: var(--bg_white);
	border: 1px solid var(--border_light);
}

.btn_transparent {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	border: 1px solid var(--border_no);
	border-radius: var(--radius_small);
	background-color: var(--bg_no);
	position: relative;
	overflow: hidden;
}

.btn_transparent:before,
.btn_transparent:after {
	content: '';
	background-color: rgba(0, 0, 0, .2);
	width: calc(0.5rem - 1px);
	height: calc(0.5rem - 1px);
	position: absolute;
}

.btn_transparent:before {
	right: 0;
	top: 0;
}

.btn_transparent:after {
	left: 0;
	bottom: 0;
}

.btn_transparent:active {
	filter: brightness(0.8);
}