:root {
	--border_base: #e2ebf0;
	--font_base-2: #555555;
	--font_red-2: #fa2a7d;
	--font_orange-2: #ff7f4c;
	--font_yellow-2: #c2d03e;
	--font_green-2: #4cff6e;
	--font_cyan-2: #2afadf;
	--font_blue-2: #46c4fe;
	--font_purple-2: #cc2afa;

	--glass_base-2: #5555551a;
	--glass_red-2: #fa2a7d1a;
	--glass_orange-2: #ff7f4c1a;
	--glass_yellow-2: #c2d03e1a;
	--glass_green-2: #4cff6e1a;
	--glass_cyan-2: #2afadf1a;
	--glass_blue-2: #46c4fe1a;
	--glass_purple-2: #cc2afa1a;
}

ol.mm_list li::before {
	color: var(--font_white);
	background-color: #afbfd4;
}

ol.mm_list li:nth-child(1)::before {
	background-color: #f12f04;
}

ol.mm_list li:nth-child(2)::before {
	background-color: #ff5000;
}

ol.mm_list li:nth-child(3)::before {
	background-color: #ff9000;
}

/* 内容 */
.tip,
.desc,
.description {
	color: var(--font_tip);
}

.note {
	color: var(--font_tip);
}

.money,
.total,
.price {
	color: var(--font_warning_d);
	font-weight: 600;
}

.price_ago {
	color: var(--font_base);
	text-decoration: line-through;
}

.num {
	font-family: var(--family_num);
	color: var(--font_info_d);
	font-weight: 600;
}

.time {
	color: var(--font_default);
}

.highlight_keyword {
	color: #f73131;
}

.mm_card {
	background: var(--bg_card);
	box-shadow: 0 0.25rem 0.5rem 0 rgba(7, 17, 27, 0.1);
	border-radius: 0.5rem;
	overflow: hidden;
}

.card {
	background: var(--bg_card);
	box-shadow: 0 0.25rem 0.5rem 0 rgba(7, 17, 27, 0.1);
	overflow: hidden;
}

.card_head {
	background: var(--bg_card);
}

.mm_modal .mm_card {
	background: none;
}

.mm_modal .card_head {
	background: var(--bg_card);
}

.mm_modal .card_body {
	background: var(--bg_card);
}

.mm_modal .card_foot {
	background: none;
}

.mm_table,
[class*=table-] {
	background: var(--bg_main);
}

.mm_btn:active {
	filter: brightness(80%);
}

.mm_btn {
	background: var(--bg_btn);
	color: var(--font_btn);
}

/* 原始标签 */
body {
	background-color: var(--bg_body);
	color: var(--font_body);
}

button {
	color: var(--font_btn);
	background-color: var(--bg_btn);
}

table a {
	color: var(--font_primary);
}

table a:hover {
	color: var(--font_primary_b);
}

table a:active {
	color: var(--font_primary_d);
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjA2MTEyNTk4NTkxIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI3MTYiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48L2RlZnM+PHBhdGggZD0iTTgzMC4yNCAzNDAuNjg4bDExLjMyOCAxMS4zMTJhMTYgMTYgMCAwIDEgMCAyMi42MjRMNTMwLjQ0OCA2ODUuNzZhMTYgMTYgMCAwIDEtMjIuNjQgMEwxOTYuNjg4IDM3NC42MjRhMTYgMTYgMCAwIDEgMC0yMi42MjRsMTEuMzEyLTExLjMxMmExNiAxNiAwIDAgMSAyMi42MjQgMGwyODguNDk2IDI4OC40OTYgMjg4LjUxMi0yODguNDk2YTE2IDE2IDAgMCAxIDIyLjYyNCAweiIgcC1pZD0iMjcxNyIgZmlsbD0iIzk5OTk5OSI+PC9wYXRoPjwvc3ZnPg==') no-repeat center right transparent;
	padding-right: 1.5rem;
	background-position: calc(100% - 3px) center;
	background-color: var(--bg_control);
}

option {
	line-height: 1.5;
}

select option:focus,
select option:hover {
	background-color: var(--glass_primary);
}

select option[selected] {
	background-color: var(--glass_info);
}

/* ::selection { color: #ececec;  background: #222831;} */

::-webkit-datetime-edit-text {
	content: "-";
	color: var(--font_base);
}

/* 控制年字 */
::-webkit-datetime-edit-year-field {
	color: inherit;
}

::-webkit-datetime-edit-year-field:focus {
	background-color: var(--bg_primary_b);
}

/* 控制月字 */
::-webkit-datetime-edit-month-field {
	color: inherit;
}

::-webkit-datetime-edit-month-field:focus {
	background-color: var(--bg_primary_b);
}

/* 控制日字 */
::-webkit-datetime-edit-day-field {
	color: inherit;
}

::-webkit-datetime-edit-day-field:focus {
	background-color: var(--bg_primary_b);
}

input::placeholder {
	color: var(--font_tip);
}

input::-webkit-input-placeholder {
	color: var(--font_tip);
}

input:-moz-placeholder {
	color: var(--font_tip);
}

input:-ms-input-placeholder {
	color: var(--font_tip);
}

input:focus,
select:focus,
select:focus-visible,
textarea:focus {
	border-color: var(--border_primary);
}

nav a:hover {
	color: var(--font_primary_b);
}

nav a:active {
	color: var(--font_primary_d);
}

input[disabled],
input.disabled {
	pointer-events: none;
}

button[disabled],
button.disabled {
	cursor: not-allowed;
}

#head_top {
	background: var(--bg_header);
	color: var(--font_header);
}

/* ====== 公共样式 ====== */
/* === 表格 === */
.table_primary,
.table_primary tr {
	background-color: var(--bg_primary);
	color: var(--font_white);
}

.table_error,
.table_error tr {
	background-color: var(--bg_error);
	color: var(--font_white);
}

.table_success,
.table_success tr {
	background-color: var(--bg_success);
	color: var(--font_white);
}

.table_info,
.table_info tr {
	background-color: var(--bg_info);
	color: var(--font_white);
}

.table_warning,
.table_warning tr,
.table_danger,
.table_danger tr {
	background-color: var(--bg_warning);
	color: var(--font_white);
}

.table_light,
.table_light tr {
	background-color: var(--bg_light);
	color: var(--font_black);
}

.table_dark {
	background-color: var(--bg_dark);
	color: var(--font_white);
}

/* === 背景 === */
.bg_default {
	background-color: var(--bg_default) !important;
	color: var(--font_white) !important;
	border-color: var(--border_default) !important;
}

.bg_base {
	background-color: var(--bg_base) !important;
	color: var(--font_white) !important;
	border-color: var(--border_base) !important;
}

.bg_red {
	background-color: var(--bg_red) !important;
	color: var(--font_white) !important;
	border-color: var(--border_red) !important;
}

.bg_orange {
	background-color: var(--bg_orange) !important;
	color: var(--font_white) !important;
	border-color: var(--border_orange) !important;
}

.bg_yellow {
	background-color: var(--bg_yellow) !important;
	color: var(--font_white) !important;
	border-color: var(--border_yellow) !important;
}

.bg_green {
	background-color: var(--bg_green) !important;
	color: var(--font_white) !important;
	border-color: var(--border_green) !important;
}

.bg_cyan {
	background-color: var(--bg_cyan) !important;
	color: var(--font_white) !important;
	border-color: var(--border_cyan) !important;
}

.bg_blue {
	background-color: var(--bg_blue) !important;
	color: var(--font_white) !important;
	border-color: var(--border_blue) !important;
}

.bg_purple {
	background-color: var(--bg_purple) !important;
	color: var(--font_white) !important;
	border-color: var(--border_purple) !important;
}

.bg_black {
	background: var(--bg_black) !important;
	color: var(--font_white) !important;
	border-color: var(--border_black) !important;
}

.bg_white {
	background: var(--bg_white) !important;
	color: var(--font_black) !important;
	border-color: var(--border_white) !important;
}

.bg_grey {
	background-color: var(--bg_grey) !important;
	color: var(--font_white) !important;
	border-color: var(--border_grey) !important;
}

.bg_light {
	background-color: var(--bg_light) !important;
	color: var(--font_default) !important;
	border-color: var(--border_light) !important;
}

.bg_dark {
	background-color: var(--bg_dark) !important;
	color: var(--font_white) !important;
	border-color: var(--border_dark) !important;
}

.bg_primary {
	background-color: var(--bg_primary) !important;
	color: var(--font_white) !important;
	border-color: var(--border_primary) !important;
}

.bg_info {
	background-color: var(--bg_info) !important;
	color: var(--font_white) !important;
	border-color: var(--border_info) !important;
}

.bg_danger,
.bg_warning {
	background-color: var(--bg_warning) !important;
	color: var(--font_white) !important;
	border-color: var(--border_warning) !important;
}

.bg_error {
	background-color: var(--bg_error) !important;
	color: var(--font_white) !important;
	border-color: var(--border_error) !important;
}

.bg_success {
	background-color: var(--bg_success) !important;
	color: var(--font_white) !important;
	border-color: var(--border_success) !important;
}

.bg_no {
	background: none !important;
}

/* === 字体颜色 === */
.font_default {
	color: var(--font_default) !important;
}

.font_base {
	color: var(--font_base) !important;
}

.font_red {
	color: var(--font_red) !important;
}

.font_orange {
	color: var(--font_orange) !important;
}

.font_yellow {
	color: var(--font_yellow) !important;
}

.font_green {
	color: var(--font_green) !important;
}

.font_cyan {
	color: var(--font_cyan) !important;
}

.font_blue {
	color: var(--font_blue) !important;
}

.font_purple {
	color: var(--font_purple) !important;
}

.font_black {
	color: var(--font_black) !important;
}

.font_white {
	color: var(--font_white) !important;
}

.font_grey {
	color: var(--font_grey) !important;
}

.font_light {
	color: var(--font_light) !important;
}

.font_dark {
	color: var(--font_dark) !important;
}

.font_primary {
	color: var(--font_primary) !important;
}

.font_info {
	color: var(--font_info) !important;
}

.font_danger,
.font_warning {
	color: var(--font_warning) !important;
}

.font_error {
	color: var(--font_error) !important;
}

.font_success {
	color: var(--font_success) !important;
}

[class*=font_]:active {
	-webkit-filter: contrast(2) brightness(0.9);
	filter: contrast(2) brightness(0.9);
}

/* === 边框 === */
.br_default {
	border-color: var(--border_default) !important;
}

.br_base {
	border-color: var(--border_base) !important;
}

.br_red {
	border-color: var(--border_red) !important;
}

.br_orange {
	border-color: var(--border_orange) !important;
}

.br_yellow {
	border-color: var(--border_yellow) !important;
}

.br_green {
	border-color: var(--border_green) !important;
}

.br_cyan {
	border-color: var(--border_cyan) !important;
}

.br_blue {
	border-color: var(--border_blue) !important;
}

.br_purple {
	border-color: var(--border_purple) !important;
}

.br_primary {
	border-color: var(--border_primary) !important;
}

.br_info {
	border-color: var(--border_info) !important;
}

.br_danger,
.br_warning {
	border-color: var(--border_warning) !important;
}

.br_error {
	border-color: var(--border_error) !important;
}

.br_success {
	border-color: var(--border_success) !important;
}

/* === 按钮 === */
.btn_default-x {
	color: var(--font_default) !important;
	border-color: var(--border_default) !important;
}

.btn_base-x {
	color: var(--font_base) !important;
	border-color: var(--border_base) !important;
}

.btn_primary-x {
	color: var(--font_primary) !important;
	border-color: var(--border_primary) !important;
}

.btn_info-x {
	color: var(--font_info) !important;
	border-color: var(--border_info) !important;
}

.btn_danger-x,
.btn_warning-x {
	color: var(--font_warning) !important;
	border-color: var(--border_warning) !important;
}

.btn_error-x {
	color: var(--font_error) !important;
	border-color: var(--border_error) !important;
}

.btn_success-x {
	color: var(--font_success) !important;
	border-color: var(--border_success) !important;
}

.btn_default-x:active {
	color: var(--font_default) !important;
	background-color: var(--glass_default) !important;
}

.btn_base-x:active {
	color: var(--font_deep) !important;
	background-color: var(--glass_base) !important;
}

.btn_primary-x:active {
	color: var(--font_primary_d) !important;
	background-color: var(--glass_primary) !important;
}

.btn_info-x:active {
	color: var(--font_info_d) !important;
	background-color: var(--glass_info) !important;
}

.btn_danger-x:active,
.btn_warning-x:active {
	color: var(--font_warning_d) !important;
	background-color: var(--glass_warning) !important;
}

.btn_error-x:active {
	color: var(--font_error_d) !important;
	background-color: var(--glass_error) !important;
}

.btn_success-x:active {
	color: var(--font_success_d) !important;
	background-color: var(--glass_success) !important;
}

.btn_default {
	color: var(--font_white) !important;
	background-color: var(--bg_default) !important;
	border-color: transparent !important;
}

.btn_base {
	color: var(--font_white) !important;
	background-color: var(--bg_base) !important;
	border-color: transparent !important;
}

.btn_primary {
	color: var(--font_white) !important;
	background-color: var(--bg_primary) !important;
	border-color: transparent !important;
}

.btn_info {
	color: var(--font_white) !important;
	background-color: var(--bg_info) !important;
	border-color: transparent !important;
}

.btn_danger,
.btn_warning {
	color: var(--font_white) !important;
	background-color: var(--bg_warning) !important;
	border-color: transparent !important;
}

.btn_error {
	color: var(--font_white) !important;
	background-color: var(--bg_error) !important;
	border-color: transparent !important;
}

.btn_success {
	color: var(--font_white) !important;
	background-color: var(--bg_success) !important;
	border-color: transparent !important;
}

.btn_link {
	color: inherit !important;
	background: none !important;
	border-color: transparent !important;
}

.btn_default:active {
	background-color: var(--bg_default);
	color: var(--font_default);
	filter: brightness(0.8);
}

.btn_error:active {
	background-color: var(--bg_error_d) !important;
	color: var(--font_white) !important;
}

.btn_success:active {
	background-color: var(--bg_success_d) !important;
	color: var(--font_white) !important;
}

.btn_primary:active {
	background-color: var(--bg_primary_d) !important;
	color: var(--font_white) !important;
}

.btn_danger:active,
.btn_warning:active {
	background-color: var(--bg_warning_d) !important;
	color: var(--font_white) !important;
}

.btn_info:active {
	background-color: var(--bg_info_d) !important;
	color: var(--font_white) !important;
}

.btn_default:hover {
	background-color: var(--bg_default);
	color: var(--font_default);
	filter: brightness(1.2);
}

.btn_error:hover {
	background-color: var(--bg_error_b) !important;
	color: var(--font_white) !important;
}

.btn_success:hover {
	background-color: var(--bg_success_b) !important;
	color: var(--font_white) !important;
}

.btn_primary:hover {
	background-color: var(--bg_primary_b) !important;
	color: var(--font_white) !important;
}

.btn_danger:hover,
.btn_warning:hover {
	background-color: var(--bg_warning_b) !important;
	color: var(--font_white) !important;
}

.btn_info:hover {
	background-color: var(--bg_info_b) !important;
	color: var(--font_white) !important;
}

/* 反相（反转颜色） 可用于表格或按钮等 */
.inverted {
	filter: invert(100%);
}

[disabled],
.disabled {
	opacity: var(--opacity_disabled);
}



.c_red {
	color: var(--font_red) !important;
	background-color: var(--glass_red) !important;
	border-color: transparent !important;
}

.c_orange {
	color: var(--font_orange) !important;
	background-color: var(--glass_orange) !important;
	border-color: transparent !important;
}

.c_yellow {
	color: var(--font_yellow) !important;
	background-color: var(--glass_yellow) !important;
	border-color: transparent !important;
}

.c_green {
	color: var(--font_green) !important;
	background-color: var(--glass_green) !important;
	border-color: transparent !important;
}

.c_cyan {
	color: var(--font_cyan) !important;
	background-color: var(--glass_cyan) !important;
	border-color: transparent !important;
}

.c_blue {
	color: var(--font_blue) !important;
	background-color: var(--glass_blue) !important;
	border-color: transparent !important;
}

.c_purple {
	color: var(--font_purple) !important;
	background-color: var(--glass_purple) !important;
	border-color: transparent !important;
}

.c_red-2 {
	color: var(--font_red-2) !important;
	background-color: var(--glass_red-2) !important;
	border-color: transparent !important;
}

.c_orange-2 {
	color: var(--font_orange-2) !important;
	background-color: var(--glass_orange-2) !important;
	border-color: transparent !important;
}

.c_yellow-2 {
	color: var(--font_yellow-2) !important;
	background-color: var(--glass_yellow-2) !important;
	border-color: transparent !important;
}

.c_green-2 {
	color: var(--font_green-2) !important;
	background-color: var(--glass_green-2) !important;
	border-color: transparent !important;
}

.c_cyan-2 {
	color: var(--font_cyan-2) !important;
	background-color: var(--glass_cyan-2) !important;
	border-color: transparent !important;
}

.c_blue-2 {
	color: var(--font_blue-2) !important;
	background-color: var(--glass_blue-2) !important;
	border-color: transparent !important;
}

.c_purple-2 {
	color: var(--font_purple-2) !important;
	background-color: var(--glass_purple-2) !important;
	border-color: transparent !important;
}


.linear_red,
.linear_warning {
	background-image: linear-gradient(135deg, #FF5A6A 0%, #f12f04 100%);
	color: var(--font_white);
}

.linear_yellow,
.linear_danger {
	background-image: linear-gradient(135deg, rgb(252, 207, 49) 10%, rgb(245, 85, 85) 100%);
	color: var(--font_white);
}

.linear_green,
.linear_success {
	background-image: linear-gradient(135deg, rgb(255, 247, 32) 10%, rgb(60, 213, 0) 100%);
	color: var(--font_white);
}

.linear_blue,
.linear_info {
	background-image: linear-gradient(135deg, rgb(94, 252, 232) 10%, rgb(115, 110, 254) 100%);
	color: var(--font_white);
}

.linear_purple {
	background-image: linear-gradient(135deg, #EE9AE5 10%, #5961F9 100%);
	color: var(--font_white);
}

.linear_red-1 {
	background-image: linear-gradient(135deg, #fffddc 0%, #ff4c4c 20%, #fa2aa4 100%);
	color: var(--font_white);
}

.linear_red-2 {
	background-image: linear-gradient(135deg, #ffe7dc 0%, #ff7a4c 20%, #fa2a7d 100%);
	color: var(--font_white);
}

.linear_yellow-1 {
	background-image: linear-gradient(135deg, #ffe4dc 0%, #faa02a 20%, #ff4c5d 100%);
	color: var(--font_white);
}

.linear_yellow-2 {
	background-image: linear-gradient(135deg, #fffadc 0%, #faf32a 20%, #ff7f4c 100%);
	color: var(--font_white);
}


.linear_green-1 {
	background-image: linear-gradient(135deg, #dcf9ff 0%, #e8ff4c 20%, #2afac2 100%);
	color: var(--font_white);
}

.linear_green-2 {
	background-image: linear-gradient(135deg, #fff7dc 0%, #4cff6e 20%, #46c4fe 100%);
	color: var(--font_white);
}

.linear_blue-1 {
	background-image: linear-gradient(135deg, #dcfff9 0%, #2afadf 20%, #4c83ff 100%);
	color: var(--font_white);
}

.linear_blue-2 {
	background-image: linear-gradient(135deg, #dcffe0 0%, #2accfa 20%, #b14cff 100%);
	color: var(--font_white);
}

.linear_purple-1 {
	background-image: linear-gradient(135deg, #ffe8dc 0%, #ff4cb5 20%, #cc2afa 100%);
	color: var(--font_white);
}

.linear_purple-2 {
	background-image: linear-gradient(135deg, #ffe8dc 0%, #ec4cff 20%, #652afa 100%);
	color: var(--font_white);
}

/* === 水纹 === */
@keyframes wave_animation {
	0% {
		top: calc((100% - 0.25rem) / 2);
		left: calc((100% - 0.25rem) / 2);
		width: .25rem;
		height: .25rem;
		opacity: 0.25;
	}

	50% {
		top: calc((100% - 2rem) / 2);
		left: calc((100% - 2rem) / 2);
		width: 2rem;
		height: 2rem;
		opacity: 1;
	}

	100% {
		top: calc((100% - 6rem) / 2);
		left: calc((100% - 6rem) / 2);
		width: 6rem;
		height: 6rem;
		opacity: 0;
	}
}

.wave {
	position: relative;
	overflow: hidden;
}

.wave:active {
	-webkit-filter: saturate(1.5);
	filter: saturate(1.5);
}

.wave:focus::before {
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.1);
	position: absolute;
	content: "";
	display: block;
	background-attachment: fixed;
	background-position: center center;
	z-index: 2;
	animation: wave_animation 1s forwards;
}

.wave:focus::after {
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.1);
	position: absolute;
	content: "";
	display: block;
	z-index: 2;
	animation: wave_animation 1.5s forwards;
}