 * {
 	margin: 0;
 	padding: 0;
 	box-sizing: border-box;
 }

 body {
 	font-family: '微软雅黑', 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
 	background-color: #f5f5f5;
 	color: #1e2a3e;
 	line-height: 1.5;
 }

 .site-wrapper {
 	max-width: 1280px;
 	margin: 0 auto;
 	background-color: #fff;
 	box-shadow: 0 0 20px rgba(0, 0, 0, 0.08);
 }

 /* 头部区域 - 红色背景 */
 .header {
 	background: #8C0000;
 	padding: 20px 30px;
 	display: flex;
 	align-items: center;
 	justify-content: space-between;
 	flex-wrap: wrap;
 	border-bottom: 3px solid #ffd966;
 }

 .logo-area {
 	display: flex;
 	align-items: center;
 	gap: 15px;
 }

 .logo-img {
 	height: 70px;
 	width: auto;
 	display: block;
 }

 /* 顶部导航栏 - 居中对齐 */
 .nav-top {
 	background-color: #ffffff;
 	border-bottom: 1px solid #e9ecef;
 	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
 }

 .nav-list {
 	display: flex;
 	flex-wrap: wrap;
 	justify-content: center;
 	/* 导航项水平居中 */
 	list-style: none;
 	max-width: 1280px;
 	margin: 0 auto;
 	padding: 0 30px;
 }

 .nav-list li a {
 	display: inline-block;
 	padding: 14px 22px;
 	font-weight: 500;
 	color: #2c3e50;
 	text-decoration: none;
 	transition: all 0.2s;
 	font-size: 1rem;
 	border-bottom: 3px solid transparent;
 	cursor: default;
 }

 .nav-list li a:hover {
 	color: #b10c0c;
 	border-bottom-color: #b10c0c;
 	background-color: #fef5f0;
 }

 /* 主体区域 */
 .main-container {
 	display: flex;
 	flex-wrap: wrap;
 	margin: 30px 30px 40px;
 	gap: 30px;
 }

 /* 左侧竖型导航 - 文字居中 */
 .left-sidebar {
 	flex: 0 0 260px;
 	background-color: #fff;
 	border-radius: 12px;
 	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
 	overflow: hidden;
 	border: 1px solid #eeeef0;
 	height: fit-content;
 }

 .sidebar-title {
 	background-color: #b10c0c;
 	color: white;
 	padding: 16px 20px;
 	font-size: 1.25rem;
 	font-weight: 600;
 	letter-spacing: 2px;
 	text-align: center;
 	/* 标题居中 */
 }

 .vertical-nav {
 	list-style: none;
 	padding: 8px 0;
 }

 .vertical-nav li {
 	border-bottom: 1px solid #f0f2f5;
 }

 .vertical-nav li a {
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	/* 导航链接文字水平居中 */
 	gap: 12px;
 	padding: 14px 24px;
 	text-decoration: none;
 	color: #1f3b4c;
 	font-weight: 500;
 	transition: all 0.2s;
 	font-size: 1rem;
 	cursor: default;
 }

 .vertical-nav li a i {
 	font-style: normal;
 	font-weight: 600;
 	color: #b10c0c;
 }

 .vertical-nav li a:hover {
 	background-color: #fff4ef;
 	color: #b10c0c;
 }

 /* 右侧内容区 */
 .right-content {
 	flex: 1;
 	background-color: #fff;
 	border-radius: 12px;
 	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
 	padding: 24px 28px;
 	min-height: 500px;
 	border: 1px solid #edeff2;
 }

 .category-header {
 	border-bottom: 2px solid #b10c0c;
 	padding-bottom: 12px;
 	margin-bottom: 25px;
 	display: flex;
 	justify-content: space-between;
 	align-items: flex-end;
 	flex-wrap: wrap;
 }

 .category-header h2 {
 	font-size: 1.8rem;
 	font-weight: 600;
 	color: #8b0000;
 }

 .news-list {
 	list-style: none;
 }

 .news-item {
 	display: flex;
 	justify-content: space-between;
 	align-items: center;
 	padding: 16px 0;
 	border-bottom: 1px dashed #e2e8f0;
 	transition: background 0.2s;
 }

 .news-item:hover {
 	background-color: #fefaf7;
 	padding-left: 8px;
 }

 .news-title {
 	font-size: 1rem;
 	font-weight: 500;
 	color: #1e4663;
 	text-decoration: none;
 	max-width: 75%;
 	cursor: default;
 }

 .news-title:hover {
 	color: #b10c0c;
 	text-decoration: underline;
 }

 .news-date {
 	color: #6c86a3;
 	font-size: 0.85rem;
 	white-space: nowrap;
 }

 .more-link {
 	text-align: right;
 	margin-top: 20px;
 }

 .more-link a {
 	color: #b10c0c;
 	text-decoration: none;
 	font-weight: 500;
 	cursor: default;
 }

 /* 底部区域 */
 .footer {
 	background-color: #8C0000;
 	color: #ffe6dd;
 	text-align: center;
 	padding: 32px 20px;
 	margin-top: 20px;
 }

 .footer p {
 	margin: 8px 0;
 	font-size: 0.85rem;
 }

 @media (max-width: 800px) {
 	.main-container {
 		flex-direction: column;
 		margin: 20px;
 	}

 	.left-sidebar {
 		flex: auto;
 		width: 100%;
 	}

 	.news-item {
 		flex-direction: column;
 		align-items: flex-start;
 		gap: 5px;
 	}

 	.news-title {
 		max-width: 100%;
 	}

 	.logo-img {
 		height: 50px;
 	}
 }