@charset "UTF-8";

/* ========== CSS 变量 ========== */
:root {
	--bs-blue: #0d6efd;
	--bs-green: #198754;
	--bs-white: #fff;
	--bs-gray-600: #6c757d;
	--bs-body-font-family: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif;
	--bs-body-font-size: 1rem;
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.5;
	--bs-body-color: #212529;
	--bs-body-bg: #fff;
}

/* ========== 基础样式 ========== */
*, ::after, ::before {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: var(--bs-body-font-family);
	font-size: var(--bs-body-font-size);
	font-weight: var(--bs-body-font-weight);
	line-height: var(--bs-body-line-height);
	color: var(--bs-body-color);
	background-color: var(--bs-body-bg);
	-webkit-text-size-adjust: 100%;
}

/* ========== 标题样式 ========== */
h1, h2 {
	margin-top: 0;
	margin-bottom: .5rem;
	font-weight: 500;
	line-height: 1.2;
}

h1 {
	font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) {
	h1 {
		font-size: 2.5rem;
	}
}

h2 {
	font-size: calc(1.325rem + .9vw);
}

@media (min-width: 1200px) {
	h2 {
		font-size: 2rem;
	}
}

/* ========== 段落样式 ========== */
p {
	margin-top: 0;
	margin-bottom: 1rem;
}

/* ========== 表单元素 ========== */
button, input, optgroup, select, textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

select {
	word-wrap: normal;
}

/* ========== 图片 ========== */
img {
	vertical-align: middle;
}

.img-fluid {
	max-width: 100%;
	height: auto;
}

/* ========== Grid 布局 ========== */
.row {
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	display: flex;
	flex-wrap: wrap;
	margin-top: calc(-1 * var(--bs-gutter-y));
	margin-right: calc(-.5 * var(--bs-gutter-x));
	margin-left: calc(-.5 * var(--bs-gutter-x));
}

.row > * {
	flex-shrink: 0;
	width: 100%;
	max-width: 100%;
	padding-right: calc(var(--bs-gutter-x) * .5);
	padding-left: calc(var(--bs-gutter-x) * .5);
	margin-top: var(--bs-gutter-y);
}

/* ========== 列宽 ========== */
.col-md-4 {
	flex: 0 0 auto;
	width: 100%;
}

@media (min-width: 768px) {
	.col-md-4 {
		width: 33.33333333%;
	}
}

/* ========== Flex 工具类 ========== */
.d-flex {
	display: flex !important;
}

.justify-content-center {
	justify-content: center !important;
}

/* ========== 文本工具类 ========== */
.text-center {
	text-align: center !important;
}

/* ========== 间距工具类 ========== */
/* margin */
.my-4 {
	margin-top: 1.5rem !important;
	margin-bottom: 1.5rem !important;
}

.my-5 {
	margin-top: 3rem !important;
	margin-bottom: 3rem !important;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.mb-4 {
	margin-bottom: 1.5rem !important;
}

.me-3 {
	margin-right: 1rem !important;
}

/* padding */
.p-3 {
	padding: 1rem !important;
}

.p-5 {
	padding: 3rem !important;
}

.px-4 {
	padding-right: 1.5rem !important;
	padding-left: 1.5rem !important;
}

/* ========== 背景色 ========== */
.bg-white {
	background-color: #fff !important;
}

/* ========== 自定义类 ========== */
.radiusclass {
	border-radius: 20px;
}

.bggreen {
	background: #39B991;
}
