:root {
	--index_primary-blue: #4AA9FE;
	--index_light-blue: #76DCFE;
	--index_background: #e8f4ff;
	--index_card-blue: linear-gradient(135deg, #4AA9FE, #76DCFE);
	--index_card-orange: linear-gradient(135deg, #FF6B6B, #FFA06B);
	--index_card-teal: linear-gradient(135deg, #26C6DA, #4DD0E1);
	--index_card-pink: linear-gradient(135deg, #FFB7D5, #F7A6C2);
	
	--index_card-purple: linear-gradient(135deg, #A5A7F2, #B8B9FF);
	--index_card-lightgray: linear-gradient(135deg, #D9D9D9, #E8E8E8);
	--index_card-gold: linear-gradient(135deg, #F7D06E, #F9C850);
	--index_card-green: linear-gradient(135deg, #A4D96C, #81C784);
	--index_card-lavender: linear-gradient(135deg, #A8A1FF, #C0A6FF);
	--index_card-brown: linear-gradient(135deg, #B59B6D, #C4A17E);
	--index_card-yellow: linear-gradient(135deg, #FFEB56, #FFD358);
	--index_card-navy: linear-gradient(135deg, #2A3B5C, #3C4D73);
	
	
	--index_text-color: #333;
	--index_light-text: #fff;
	--index_border-radius: 12px;
	--index_card-shadow: 0 4px 12px rgba(74, 169, 254, 0.1);
	--index_hover-shadow: 0 6px 16px rgba(74, 169, 254, 0.18);
}
#page_index {
	margin: 0;
	padding: 0 0 118px 0;
	box-sizing: border-box;
	font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
	background-color: var(--index_background);
	color: var(--index_text-color);
	min-height: 100vh;
	position: relative;
}

.index_container {
	width: 100%;
	margin: 0 auto;
	padding: 16px;
	padding-bottom: 70px;
}

.index_header {
	margin-bottom: 25px;
	padding-top: 10px;
}

.index_app-title {
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 5px;
}

.index_app-subtitle {
	font-size: 18px;
	margin-bottom: 20px;
}

.index_search-bar {
	background-color: #fff;
	border-radius: 25px;
	padding: 10px 15px;
	display: flex;
	align-items: center;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
	margin-bottom: 25px;
	transition: box-shadow 0.3s;
	max-width: 100%;
}

.index_search-bar:hover {
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}

.index_search-icon {
	color: #ccc;
	font-size: 18px;
	margin-right: 10px;
}

.index_search-input {
	border: none;
	outline: none;
	width: 100%;
	font-size: 15px;
	color: #999;
	background-color: transparent;
}

.index_cards-container {
	display: flex;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 25px;
}

.index_card {
	flex: 1;
	border-radius: var(--index_border-radius);
	padding: 15px;
	color: var(--index_light-text);
	display: flex;
	flex-direction: column;
	height: 170px;
	box-shadow: var(--index_card-shadow);
	position: relative;
	overflow: hidden;
	transition: transform 0.3s, box-shadow 0.3s;
}

.index_card:hover {
	transform: translateY(-3px);
	box-shadow: var(--index_hover-shadow);
}

.index_card-blue {
	background: var(--index_card-blue);
}

.index_card-orange {
	background: var(--index_card-orange);
}

.index_card-teal {
	background: var(--index_card-teal);
}

.index_card-pink {
	background: var(--index_card-pink);
}

.index_card-purple {
	background: var(--index_card-purple);
}
.index_card-lightgray {
	background: var(--index_card-lightgray);
}
.index_card-gold {
	background: var(--index_card-gold);
}
.index_card-green {
	background: var(--index_card-green);
}
.index_card-lavender {
	background: var(--index_card-lavender);
}
.index_card-brown {
	background: var(--index_card-brown);
}
.index_card-yellow {
	background: var(--index_card-yellow);
}
.index_card-navy {
	background: var(--index_card-navy);
}

/*
--index_card-purple: linear-gradient(135deg, #A5A7F2, #B8B9FF);
	--index_card-lightgray: linear-gradient(135deg, #D9D9D9, #E8E8E8);
	--index_card-gold: linear-gradient(135deg, #F7D06E, #F9C850);
	--index_card-green: linear-gradient(135deg, #A4D96C, #81C784);
	--index_card-lavender: linear-gradient(135deg, #A8A1FF, #C0A6FF);
	--index_card-brown: linear-gradient(135deg, #B59B6D, #C4A17E);
	--index_card-yellow: linear-gradient(135deg, #FFEB56, #FFD358);
	--index_card-navy: linear-gradient(135deg, #2A3B5C, #3C4D73);
*/

.index_card-icon {
	font-size: 24px;
	margin-bottom: 15px;
}

.index_card-title {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: auto;
}

.index_example-btn {
	background-color: rgba(255, 255, 255, 0.3);
	border: none;
	border-radius: 15px;
	color: white;
	padding: 4px 12px;
	font-size: 14px;
	cursor: pointer;
	align-self: flex-start;
	display: flex;
	align-items: center;
	transition: background-color 0.3s;
}

.index_example-btn:hover {
	background-color: rgba(255, 255, 255, 0.5);
}

.index_arrow-icon {
	position: absolute;
	bottom: 15px;
	right: 15px;
	font-size: 20px;
}

.index_menu-container {
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin-bottom: 25px;
}

.index_menu-item {
	background-color: white;
	border-radius: var(--index_border-radius);
	padding: 15px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	box-shadow: var(--index_card-shadow);
	position: relative;
	transition: transform 0.3s, box-shadow 0.3s;
}

.index_menu-item:hover {
	transform: translateY(-2px);
	box-shadow: var(--index_hover-shadow);
}

.index_menu-indicator {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 3px;
	height: 25px;
	background-color: var(--index_primary-blue);
	border-radius: 0 2px 2px 0;
}

.index_menu-title {
	font-size: 16px;
	font-weight: bold;
	margin-left: 12px;
}

.index_view-btn {
	background-color: var(--index_primary-blue);
	color: white;
	border: none;
	border-radius: 15px;
	padding: 5px 12px;
	font-size: 14px;
	cursor: pointer;
	transition: background-color 0.3s;
}

.index_view-btn:hover {
	background-color: var(--index_light-blue);
}

.index_chart-icon {
	color: rgba(74, 169, 254, 0.15);
	font-size: 40px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0.8;
}

/* 响应式设计 */
@media (min-width: 769px) {
	.index_container {
		padding: 20px;
	}
	
	.index_cards-container {
		margin: 0 auto 30px auto;
	}
	
	.index_menu-container {
		margin: 0 auto 30px auto;
	}
}

@media (max-width: 768px) {
	.index_container {
		padding: 15px;
	}
	
	.index_cards-container {
		display: flex;
		flex-direction: row;
		gap: 15px;
	}
}

@media (max-width: 480px) {
	.index_app-title {
		font-size: 24px;
	}
	
	.index_cards-container {
		flex-direction: column;
	}
	
	.index_card {
		height: 150px;
	}
}