/* 重置和基础 */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html,
body {
	height: 100%;
	width: 100%;
	font-family: "Segoe UI", sans-serif;
	/* body背景透明，避免覆盖背景图 */
	background-color: transparent;
	display: flex;
	flex-direction: column;
}

/* 背景图，固定铺满屏幕，默认透明 */
#bg-image {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 1;
	/* 直接显示，不用用类控制 */
	transition: opacity 1s ease;
	pointer-events: none;
	/* 不阻止鼠标事件 */
	z-index: -1;
}

/* body加.loaded时，背景图淡入显示 */
body.loaded #bg-image {
	opacity: 1;
}

/* 启动画面覆盖全屏，最顶层 */
#splash {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: pink;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

#splash img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 启动画面按钮 */
#enter-button {
	padding: 1rem 2rem;
	font-size: 1.2rem;
	background-color: rgba(255, 255, 255, 0.8);
	border: none;
	border-radius: 8px;
	cursor: pointer;
	font-weight: bold;
	color: #ff4757;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	transition: background-color 0.3s;
}

#enter-button:hover {
	background-color: white;
}

/* 页面加载完，隐藏按钮 */
body.loaded #enter-button {
	display: none;
}

#main-wrapper {
	max-width: 1100px;
	margin: 2rem auto;
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s ease;
	/* 删除原有的 background-color: transparent */
	z-index: 1;
	/* 确保在背景图之上 */
}

body.loaded #main-wrapper {
	opacity: 1;
	visibility: visible;
}

/* 顶部导航栏，半透明红色背景，白色文字 */
header {
	background-color: rgb(228, 14, 39, 0.9);
	color: white;
	padding: 1rem 2rem;
	border-radius: 12px;
	font-weight: bold;
	font-size: 1.3rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* 导航链接 */
header nav a {
	color: #e40e27;
	/* 红色文字 */
	background-color: rgba(255, 255, 255, 0.9);
	/* 白色半透明背景 */
	padding: 0.6rem 1.2rem;
	/* 内边距 */
	border-radius: 8px;
	/* 圆角 */
	margin-left: 0.5rem;
	/* 间距调整 */
	text-decoration: none;
	font-weight: bold;
	transition: all 0.3s ease;
	/* 过渡效果 */
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	/* 轻微阴影 */
}

header nav a:hover {
	background-color: white;
	/* 悬停时纯白 */
	color: #c00b20;
	/* 深红色 */
	transform: translateY(-2px);
	/* 轻微上浮 */
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* 当前选中状态（可选） */
header nav a.active {
	background-color: #ff85b3;
	/* 与侧边栏同色 */
	color: white;
}

/* 页面主区域容器，横向排列侧边栏和主内容 */
.page-container {
	display: flex;
	gap: 1rem;
	z-index: 1;
	/* 确保在背景图之上 */
}

/* 侧边栏，半透明白底 */
aside {
	background-color: rgba(255, 255, 255, 0.9);
	width: 220px;
	padding: 1rem;
	border-radius: 12px;
	box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
	color: #ff4757;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

/* 侧边栏链接样式，粉红按钮，白色文字 */
aside a {
	background-color: #ff85b3;
	color: white;
	padding: 0.7rem 1rem;
	border-radius: 8px;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	transition: background-color 0.3s;
}

aside a:hover {
	background-color: #ff6a9e;
}

/* 主内容区域，半透明绿色底 */
main {
	flex-grow: 1;
	background-color: rgba(255, 255, 255, 0.9);
	padding: 1.5rem 2rem;
	border-radius: 12px;
	box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
	overflow-y: auto;
	max-height: 70vh;
	color: #333;
}

/* 响应式调整 */
@media screen and (max-width: 768px) {
	.page-container {
		flex-direction: column;
		height: auto;
	}

	aside {
		display: none;
	}

	main {
		padding: 1rem;
		height: auto;
	}

	header nav a {
		padding: 0.5rem 0.8rem;
		/* 缩小按钮 */
		margin-left: 0.3rem;
		font-size: 0.9rem;
	}
}

#content-tray {
	background-color: rgba(255, 182, 193, 0.6);
	/* 粉红色半透明 */
	border-radius: 16px;
	/* 圆角匹配现有风格 */
	padding: 1.5rem;
	/* 内边距，让内容与托盘边缘有间隔 */
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	/* 可选：增加层次感 */
	display: flex;
	flex-direction: column;
	gap: 1rem;
	/* 内容间距 */
	z-index: auto;
}

/* 新增内容区域样式（不影响原有按钮） */
.content-section {
	background-color: rgba(255, 255, 255, 0.9);
	padding: 1rem;
	border-radius: 8px;
	margin-bottom: 0.75rem;
	animation: fadeIn 0.5s ease;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

aside a.fade-move {
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.5s ease;
  pointer-events: none;
  display: block; /* 确保不是 display: none，否则动画无效 */
}

aside a.fade-move.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
