/* 基础重置和通用样式 */
* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

/* 移动端优先设计 - 默认手机竖屏样式 */

/* 头部搜索类型的父容器 - 移动端优化 */
#search_type {
	width: 94%;
	margin: 70px 3% 25px 3%;
	/* 增加顶部边距，确保不与用户按钮重叠 */
	border: 3px solid #007bff;
	/* 蓝色边框，更显眼 */
	border-radius: 16px;
	/* 更现代圆角 */
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: 0 4px 20px rgba(0, 123, 255, 0.15);
	/* 增加蓝色阴影 */
	background-color: white;
	position: relative;
	overflow: hidden;
	min-height: 65px;
	/* 显著增加高度 */
	padding: 4px;
	/* 内部间距 */
}

/* 滑动指示条 */
#search_type::before {
	content: '';
	position: absolute;
	top: 4px;
	bottom: 4px;
	left: 4px;
	width: calc(33.33% - 8px);
	background: linear-gradient(135deg, #007bff, #0056cc);
	border-radius: 12px;
	/* 匹配外层圆角 */
	transition: left 0.3s ease;
	z-index: 1;
}

/* 头部搜索类型按钮 - 移动端大幅优化 */
.search_type_btn {
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 18px 0;
	/* 大幅增加内边距 */
	text-align: center;
	cursor: pointer;
	transition: all 0.3s ease;
	background-color: transparent;
	color: #666;
	font-weight: 700;
	/* 更粗的字体 */
	font-size: 22px;
	/* 大幅增加字体大小，便于触摸和阅读 */
	user-select: none;
	border-radius: 12px;
	position: relative;
	z-index: 2;
	min-height: 57px;
	/* 增加高度以匹配更大字体 */
	letter-spacing: 0.5px;
	/* 稍微增加字间距 */
}

/* 悬停效果 */
.search_type_btn:hover {
	color: #007bff;
	transform: translateY(-1px);
}

/* 选中状态的样式 */
.search_type_btn.active {
	color: white;
	font-weight: 800;
	/* 选中状态更粗 */
	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* 选中状态悬停效果 */
.search_type_btn.active:hover {
	color: white;
}

/* 搜索框容器 - 移动端优化 */
#search_container {
	width: 94%;
	margin: 0 3% 30px 3%;
	display: flex;
	justify-content: center;
}

/* 搜索框主体 - 移动端优化 */
#search_box {
	width: 100%;
	position: relative;
	display: flex;
	align-items: center;
	border: 3px solid #007bff;
	/* 蓝色边框 */
	border-radius: 16px;
	/* 现代圆角 */
	background-color: white;
	box-shadow: 0 4px 20px rgba(0, 123, 255, 0.15);
	/* 增加蓝色阴影 */
	overflow: hidden;
	transition: all 0.3s ease;
	min-height: 65px;
	/* 增加高度 */
}

/* 搜索框获得焦点时的效果 */
#search_box:focus-within {
	border-color: #0056cc;
	box-shadow: 0 6px 25px rgba(0, 123, 255, 0.25);
	transform: translateY(-2px);
}

/* 搜索图标 - 移动端优化 */
.search_icon {
	position: absolute;
	left: 22px;
	/* 增加左边距 */
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	z-index: 2;
	color: #007bff;
	/* 蓝色图标 */
	transition: color 0.3s ease;
}

/* 搜索框获得焦点时图标变色 */
#search_box:focus-within .search_icon {
	color: #0056cc;
}

/* 输入框 - 移动端优化 */
#search_input {
	flex: 1;
	padding: 18px 18px 18px 60px;
	/* 增加内边距以容纳更大字体 */
	padding-right: 110px;
	border: none;
	outline: none;
	font-size: 22px;
	/* 大幅增加字体大小 */
	font-weight: 500;
	color: #333;
	background-color: transparent;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
}

/* 输入框占位符样式 */
#search_input::placeholder {
	color: #aaa;
	font-weight: 400;
	font-size: 20px;
	/* 占位符字体也相应增大 */
}

/* 清除输入框默认的搜索图标 */
#search_input::-webkit-search-decoration,
#search_input::-webkit-search-cancel-button,
#search_input::-webkit-search-results-button,
#search_input::-webkit-search-results-decoration {
	display: none;
}

/* 输入框聚焦样式 */
#search_input:focus {
	outline: none;
}

/* 搜索按钮 - 移动端优化 */
.search_button {
	margin: 8px 8px 8px 0;
	padding: 16px 28px;
	/* 大幅增加内边距 */
	background: linear-gradient(135deg, #007bff, #0056cc);
	color: white;
	border: none;
	border-radius: 14px;
	/* 现代圆角 */
	font-size: 20px;
	/* 大幅增加字体大小 */
	font-weight: 700;
	/* 加粗字体 */
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
	white-space: nowrap;
	position: relative;
	overflow: hidden;
	z-index: 2;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	min-width: 90px;
	/* 增加最小宽度 */
}

/* 搜索按钮悬停效果 */
.search_button:hover {
	background: linear-gradient(135deg, #0056cc, #004099);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 123, 255, 0.4);
}

/* 搜索按钮点击效果 */
.search_button:active {
	transform: translateY(0);
	box-shadow: 0 2px 10px rgba(0, 123, 255, 0.3);
}

/* 搜索按钮获得焦点效果 */
.search_button:focus {
	outline: none;
	box-shadow: 0 0 0 4px rgba(0, 123, 255, 0.3);
}

/* 搜索结果容器 */
#search_results_container {
	width: 94%;
	margin: 0 3% 30px 3%;
	min-height: 200px;
}

/* 返回首页按钮 */
.back-home-btn {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 18px 24px;
	/* 增加内边距 */
	margin-bottom: 20px;
	background-color: white;
	border: 3px solid #007bff;
	/* 蓝色边框 */
	border-radius: 16px;
	/* 现代圆角 */
	color: #007bff;
	/* 蓝色文字 */
	font-size: 20px;
	/* 增加字体大小 */
	font-weight: 700;
	/* 加粗 */
	cursor: pointer;
	transition: all 0.3s ease;
	width: fit-content;
	box-shadow: 0 4px 15px rgba(0, 123, 255, 0.15);
}

.back-home-btn:hover {
	background-color: #f0f7ff;
	/* 淡蓝色背景 */
	border-color: #0056cc;
	color: #0056cc;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 123, 255, 0.2);
}

.back-home-btn:active {
	transform: translateY(0);
	box-shadow: 0 2px 10px rgba(0, 123, 255, 0.15);
}

.back-home-btn img {
	width: 22px;
	/* 增加图标大小 */
	height: 22px;
}

/* 错误信息样式 */
.error-message {
	padding: 24px;
	background-color: #fff5f5;
	border: 3px solid #fed7d7;
	border-radius: 16px;
	color: #c53030;
	text-align: center;
	font-size: 20px;
	/* 增加字体大小 */
	font-weight: 600;
	/* 加粗 */
	margin-top: 20px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

/* 搜索结果列表 */
.search-results {
	margin-top: 20px;
}

/* 单个结果项 - 移动端优化 */
.result-item {
	padding: 24px 0;
	/* 增加内边距 */
	border-bottom: 3px solid #f0f0f0;
	/* 更粗的边框 */
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	/* 增加间距 */
	transition: all 0.2s ease;
}

.result-item:hover {
	background-color: #fafafa;
	border-radius: 16px;
	padding: 24px 20px;
	margin: 0 -20px;
}

.result-item:last-child {
	border-bottom: none;
}

/* 网页结果内容区域 */
.web-result-content {
	width: 100%;
}

/* 视频结果内容区域 */
.video-result-content {
	width: 100%;
	margin-bottom: 16px;
}

/* 结果项图片区域 */
.result-image {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 16px;
}

/* 可点击区域样式 */
.clickable-area {
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.clickable-area:hover {
	background-color: #f8f9fa;
	border-radius: 12px;
}

/* 标题链接 */
.result-title {
	font-size: 22px;
	/* 大幅增加字体大小 */
	font-weight: 700;
	/* 加粗 */
	color: #1a0dab;
	text-decoration: none;
	margin-bottom: 12px;
	/* 增加底部间距 */
	display: block;
	line-height: 1.4;
	transition: color 0.2s ease;
	word-wrap: break-word;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.result-title:hover {
	color: #660099;
	text-decoration: underline;
}

.result-title:visited {
	color: #609;
}

/* 内容简介 */
.result-description {
	font-size: 18px;
	/* 增加字体大小 */
	color: #4a5568;
	line-height: 1.6;
	margin-bottom: 16px;
	/* 增加底部间距 */
	word-wrap: break-word;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

/* 元信息（图标和时间） */
.result-meta {
	font-size: 16px;
	/* 增加字体大小 */
	color: #718096;
	display: flex;
	align-items: center;
	gap: 10px;
	/* 增加间距 */
}

/* 网站图标 */
.site-icon {
	width: 18px;
	/* 增加图标大小 */
	height: 18px;
	object-fit: contain;
}

/* 结果图片 */
.result-img {
	max-width: 100%;
	max-height: 220px;
	/* 增加最大高度 */
	object-fit: contain;
	border-radius: 12px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	transition: transform 0.3s ease;
}

.result-img:hover {
	transform: scale(1.02);
}

/* 视频封面容器 */
.video-cover {
	position: relative;
	width: 100%;
	height: 220px;
	/* 增加高度 */
	overflow: hidden;
	border-radius: 12px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	margin-top: 16px;
}

/* 视频封面图片 */
.video-cover-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 视频时长蒙层 */
.video-duration-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
	padding: 12px;
	/* 增加内边距 */
	color: white;
	font-size: 16px;
	/* 增加字体大小 */
	font-weight: 700;
	/* 加粗 */
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}

/* 图片搜索结果 - 移动端单列布局 */
.image-results-grid {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.image-results-column {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

/* 移除分隔线，因为单列不需要 */
.image-results-divider {
	display: none;
}

/* 图片搜索结果项 */
.image-result-item {
	padding-bottom: 24px;
	border-bottom: 3px solid #f0f0f0;
}

.image-result-item:last-child {
	border-bottom: none;
}

.image-result-content {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.image-result-img-container {
	width: 100%;
	height: 240px;
	/* 增加高度 */
	overflow: hidden;
	border-radius: 12px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
	cursor: pointer;
}

.image-result-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.image-result-img:hover {
	transform: scale(1.05);
}

/* 分页控件 */
.pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	/* 增加间距 */
	margin-top: 32px;
	padding-top: 24px;
	border-top: 3px solid #f0f0f0;
}

/* 分页按钮 */
.page-btn {
	padding: 12px 20px;
	/* 增加内边距 */
	background-color: white;
	border: 3px solid #007bff;
	/* 蓝色边框 */
	border-radius: 12px;
	color: #007bff;
	/* 蓝色文字 */
	font-size: 18px;
	/* 增加字体大小 */
	font-weight: 600;
	/* 加粗 */
	cursor: pointer;
	transition: all 0.2s ease;
	min-width: 55px;
	/* 增加最小宽度 */
}

.page-btn:hover {
	background-color: #f0f7ff;
	border-color: #0056cc;
	color: #0056cc;
}

.page-btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.page-btn.active {
	background-color: #007bff;
	border-color: #007bff;
	color: white;
}

/* 当前页面信息 */
.page-info {
	font-size: 18px;
	/* 增加字体大小 */
	color: #718096;
	margin: 0 10px;
	text-align: center;
	width: 100%;
	margin-top: 16px;
	font-weight: 600;
	/* 加粗 */
}

/* 用户认证相关样式 */

/* 用户认证容器（右上角） */
#auth_container {
	position: fixed;
	top: 20px;
	/* 确保不与搜索类型重叠 */
	right: 16px;
	z-index: 1000;
}

/* 登录按钮样式 */
.auth-btn {
	padding: 14px 22px;
	/* 增加内边距 */
	background-color: white;
	border: 3px solid #007bff;
	/* 蓝色边框 */
	border-radius: 16px;
	/* 现代圆角 */
	color: #007bff;
	/* 蓝色文字 */
	font-size: 20px;
	/* 大幅增加字体大小 */
	font-weight: 700;
	/* 加粗 */
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(0, 123, 255, 0.15);
}

.auth-btn:hover {
	background-color: #f0f7ff;
	border-color: #0056cc;
	color: #0056cc;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 123, 255, 0.2);
}

.auth-btn:active {
	transform: translateY(0);
}

/* 用户名显示样式 */
.username-display {
	padding: 14px 22px;
	/* 增加内边距 */
	background: linear-gradient(135deg, #007bff, #0056cc);
	border: 3px solid #0056cc;
	border-radius: 16px;
	color: white;
	font-size: 20px;
	/* 大幅增加字体大小 */
	font-weight: 700;
	/* 加粗 */
	cursor: pointer;
	transition: all 0.3s ease;
	max-width: 150px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
}

.username-display:hover {
	background: linear-gradient(135deg, #0056cc, #004099);
	border-color: #004099;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 123, 255, 0.4);
}

.username-display:active {
	transform: translateY(0);
}

/* 弹窗样式 */
.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 2000;
	justify-content: center;
	align-items: center;
	padding: 16px;
}

.modal-content {
	background-color: white;
	padding: 32px;
	border-radius: 20px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
	width: 100%;
	max-width: 400px;
	max-height: 90vh;
	overflow-y: auto;
	animation: modalFadeIn 0.3s ease;
}

@keyframes modalFadeIn {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.modal-content h3 {
	margin-top: 0;
	margin-bottom: 24px;
	color: #333;
	text-align: center;
	font-size: 24px;
	/* 增加字体大小 */
	font-weight: 700;
	/* 加粗 */
}

/* 表单样式 */
.form-group {
	margin-bottom: 24px;
	/* 增加边距 */
}

.form-group label {
	display: block;
	margin-bottom: 10px;
	color: #555;
	font-size: 18px;
	/* 增加字体大小 */
	font-weight: 600;
	/* 加粗 */
}

.form-group input {
	width: 100%;
	padding: 16px 18px;
	/* 增加内边距 */
	border: 3px solid #e0e0e0;
	border-radius: 12px;
	font-size: 20px;
	/* 增加字体大小 */
	transition: border-color 0.3s ease;
	box-sizing: border-box;
	font-family: inherit;
}

.form-group input:focus {
	outline: none;
	border-color: #007bff;
	box-shadow: 0 0 0 4px rgba(0, 123, 255, 0.1);
}

/* 表单按钮 */
.form-actions {
	display: flex;
	gap: 12px;
	margin-top: 32px;
}

.btn-primary,
.btn-secondary,
.btn-logout {
	padding: 16px 24px;
	/* 增加内边距 */
	border: none;
	border-radius: 12px;
	font-size: 20px;
	/* 增加字体大小 */
	font-weight: 700;
	/* 加粗 */
	cursor: pointer;
	transition: all 0.3s ease;
	flex: 1;
}

.btn-primary {
	background: linear-gradient(135deg, #007bff, #0056cc);
	color: white;
	box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
}

.btn-primary:hover {
	background: linear-gradient(135deg, #0056cc, #004099);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 123, 255, 0.4);
}

.btn-secondary {
	background-color: white;
	border: 3px solid #e0e0e0;
	color: #555;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
}

.btn-secondary:hover {
	background-color: #f8f9fa;
	border-color: #007bff;
	color: #007bff;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}

.btn-logout {
	background: linear-gradient(135deg, #dc3545, #c82333);
	color: white;
	box-shadow: 0 4px 15px rgba(220, 53, 69, 0.3);
}

.btn-logout:hover {
	background: linear-gradient(135deg, #c82333, #bd2130);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(220, 53, 69, 0.4);
}

/* 用户菜单弹窗 */
.user-menu {
	max-width: 200px;
	padding: 20px;
}

/* Toast提示样式 */
#toast_container {
	position: fixed;
	top: 90px;
	/* 调整位置，避免与用户按钮重叠 */
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	z-index: 9999;
	pointer-events: none;
}

.toast {
	background-color: rgba(0, 0, 0, 0.85);
	color: white;
	padding: 18px 30px;
	/* 增加内边距 */
	border-radius: 16px;
	font-size: 18px;
	/* 增加字体大小 */
	font-weight: 600;
	/* 加粗 */
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	margin-bottom: 8px;
	opacity: 0;
	transform: translateY(-20px);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	align-items: center;
	gap: 10px;
	max-width: 90%;
	text-align: center;
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.toast.show {
	opacity: 1;
	transform: translateY(0);
}

.toast.hide {
	opacity: 0;
	transform: translateY(-20px);
}

/* 不同类型的Toast */
.toast-success {
	background-color: rgba(40, 167, 69, 0.95);
	border-color: rgba(33, 136, 56, 0.5);
}

.toast-error {
	background-color: rgba(220, 53, 69, 0.95);
	border-color: rgba(178, 43, 56, 0.5);
}

.toast-warning {
	background-color: rgba(255, 193, 7, 0.95);
	border-color: rgba(204, 154, 6, 0.5);
	color: #212529;
}

.toast-info {
	background-color: rgba(23, 162, 184, 0.95);
	border-color: rgba(18, 130, 147, 0.5);
}

/* Toast图标 */
.toast-icon {
	width: 20px;
	/* 增加图标大小 */
	height: 20px;
	flex-shrink: 0;
}

/* Toast进度条 */
.toast-progress {
	position: absolute;
	bottom: 0;
	left: 10px;
	right: 10px;
	height: 3px;
	background-color: rgba(255, 255, 255, 0.3);
	border-radius: 3px;
	overflow: hidden;
}

.toast-progress-bar {
	height: 100%;
	background-color: white;
	width: 100%;
	transform-origin: left;
	animation: toastProgress 2s linear forwards;
}

@keyframes toastProgress {
	from {
		transform: scaleX(1);
	}

	to {
		transform: scaleX(0);
	}
}

/* =============================== */
/* 媒体查询 - 响应式设计 */
/* =============================== */

/* 手机横屏 (宽度 ≥ 576px) */
@media (min-width: 576px) {
	#search_type {
		width: 90%;
		margin: 80px 5% 30px 5%;
		min-height: 70px;
	}

	.search_type_btn {
		padding: 20px 0;
		font-size: 24px;
		/* 横屏时字体更大 */
		min-height: 62px;
	}

	#search_container {
		width: 90%;
		margin: 0 5% 35px 5%;
	}

	#search_box {
		min-height: 70px;
	}

	#search_input {
		padding: 20px 20px 20px 65px;
		padding-right: 120px;
		font-size: 24px;
		/* 横屏时字体更大 */
	}

	#search_input::placeholder {
		font-size: 22px;
	}

	.search_button {
		padding: 18px 32px;
		font-size: 22px;
		/* 横屏时字体更大 */
		min-width: 100px;
	}

	#search_results_container {
		width: 90%;
		margin: 0 5% 35px 5%;
	}

	#auth_container {
		top: 24px;
		right: 20px;
	}

	.username-display {
		max-width: 160px;
		padding: 16px 24px;
		font-size: 22px;
		/* 横屏时字体更大 */
	}

	.auth-btn {
		padding: 16px 24px;
		font-size: 22px;
		/* 横屏时字体更大 */
	}

	.video-cover {
		height: 240px;
	}
}

/* 平板 (宽度 ≥ 768px) - 这里我们开始逐步减小字体，因为屏幕足够大 */
@media (min-width: 768px) {
	#search_type {
		width: 88%;
		margin: 90px 6% 35px 6%;
		min-height: 60px;
		/* 稍微降低高度，因为字体减小了 */
	}

	#search_type::before {
		top: 4px;
		bottom: 4px;
		left: 4px;
		width: calc(33.33% - 8px);
		border-radius: 12px;
	}

	.search_type_btn {
		padding: 16px 0;
		font-size: 20px;
		/* 平板端减小字体，但仍比之前大 */
		min-height: 52px;
	}

	#search_container {
		width: 88%;
		margin: 0 6% 40px 6%;
	}

	#search_box {
		min-height: 60px;
	}

	.search_icon {
		left: 24px;
	}

	#search_input {
		padding: 16px 16px 16px 60px;
		padding-right: 110px;
		font-size: 20px;
		/* 平板端减小字体 */
	}

	#search_input::placeholder {
		font-size: 18px;
	}

	.search_button {
		margin: 8px 8px 8px 0;
		padding: 14px 28px;
		font-size: 18px;
		/* 平板端减小字体 */
		border-radius: 12px;
		min-width: 90px;
	}

	#search_results_container {
		width: 88%;
		margin: 0 6% 40px 6%;
	}

	/* 平板及以上：图片搜索结果恢复双栏布局 */
	.image-results-grid {
		display: grid;
		grid-template-columns: 1fr 1px 1fr;
		gap: 28px;
	}

	.image-results-divider {
		display: block;
		background-color: #f0f0f0;
		width: 2px;
		height: 100%;
	}

	.image-result-img-container {
		height: 200px;
	}

	/* 平板及以上：视频和网页搜索结果恢复原有布局 */
	.result-item {
		flex-direction: row;
		align-items: flex-start;
		gap: 0;
	}

	.video-result-content {
		width: 68%;
		max-width: 68%;
		margin-bottom: 0;
	}

	.result-image {
		width: 30%;
		max-width: 30%;
		margin-top: 0;
		justify-content: flex-end;
	}

	.video-cover {
		width: 100%;
		height: 180px;
		margin-top: 0;
	}

	.result-img {
		max-height: 180px;
	}

	.username-display {
		padding: 14px 22px;
		font-size: 18px;
		/* 平板端减小字体 */
		max-width: 180px;
	}

	.auth-btn {
		padding: 14px 22px;
		font-size: 18px;
		/* 平板端减小字体 */
	}

	#auth_container {
		top: 28px;
		right: 24px;
	}

	.back-home-btn {
		padding: 16px 22px;
		font-size: 18px;
		/* 平板端减小字体 */
	}

	.back-home-btn img {
		width: 20px;
		height: 20px;
	}
}

/* 电脑 (宽度 ≥ 992px) - 进一步减小字体 */
@media (min-width: 992px) {
	#search_type {
		width: 85%;
		margin: 100px 7.5% 40px 7.5%;
		min-height: 55px;
	}

	.search_type_btn {
		padding: 14px 0;
		font-size: 18px;
		/* 电脑端进一步减小字体 */
		min-height: 48px;
	}

	#search_container {
		width: 85%;
		margin: 0 7.5% 45px 7.5%;
	}

	#search_box {
		min-height: 55px;
	}

	.search_icon {
		left: 22px;
	}

	#search_input {
		padding: 14px 14px 14px 55px;
		padding-right: 100px;
		font-size: 18px;
		/* 电脑端进一步减小字体 */
	}

	#search_input::placeholder {
		font-size: 16px;
	}

	.search_button {
		margin: 7px 7px 7px 0;
		padding: 12px 24px;
		font-size: 16px;
		/* 电脑端进一步减小字体 */
		border-radius: 10px;
		min-width: 80px;
	}

	#search_results_container {
		width: 85%;
		margin: 0 7.5% 45px 7.5%;
	}

	.image-result-img-container {
		height: 180px;
	}

	.video-result-content {
		width: 70%;
		max-width: 70%;
	}

	.result-image {
		width: 28%;
		max-width: 28%;
	}

	.video-cover {
		height: 160px;
	}

	.result-img {
		max-height: 160px;
	}

	.result-title {
		font-size: 20px;
		/* 电脑端减小字体 */
	}

	.result-description {
		font-size: 16px;
		/* 电脑端减小字体 */
	}

	.username-display {
		padding: 12px 20px;
		font-size: 16px;
		/* 电脑端减小字体 */
		max-width: 160px;
	}

	.auth-btn {
		padding: 12px 20px;
		font-size: 16px;
		/* 电脑端减小字体 */
	}

	#auth_container {
		top: 30px;
		right: 28px;
	}

	#toast_container {
		top: 90px;
	}

	.toast {
		padding: 16px 28px;
		font-size: 16px;
		/* 电脑端减小字体 */
		max-width: 80%;
	}
}

/* 超大屏幕 (宽度 ≥ 1200px) */
@media (min-width: 1200px) {
	#search_type {
		width: 80%;
		margin: 120px 10% 50px 10%;
		min-height: 60px;
		/* 超大屏幕稍微增加高度 */
	}

	.search_type_btn {
		padding: 16px 0;
		font-size: 20px;
		/* 超大屏幕稍微增加字体 */
		min-height: 52px;
	}

	#search_container {
		width: 80%;
		margin: 0 10% 50px 10%;
	}

	#search_box {
		min-height: 60px;
	}

	.search_icon {
		left: 24px;
	}

	#search_input {
		padding: 16px 16px 16px 60px;
		padding-right: 110px;
		font-size: 20px;
		/* 超大屏幕稍微增加字体 */
	}

	#search_input::placeholder {
		font-size: 18px;
	}

	.search_button {
		margin: 8px 8px 8px 0;
		padding: 14px 28px;
		font-size: 18px;
		/* 超大屏幕稍微增加字体 */
		border-radius: 12px;
		min-width: 90px;
	}

	#search_results_container {
		width: 80%;
		margin: 0 10% 50px 10%;
	}

	.image-results-grid {
		gap: 32px;
	}

	.image-result-img-container {
		height: 200px;
	}

	.video-result-content {
		width: 70%;
		max-width: 70%;
	}

	.result-image {
		width: 28%;
		max-width: 28%;
	}

	.video-cover {
		height: 180px;
	}

	.result-img {
		max-height: 180px;
	}

	.result-title {
		font-size: 22px;
		/* 超大屏幕稍微增加字体 */
	}

	.result-description {
		font-size: 18px;
		/* 超大屏幕稍微增加字体 */
	}

	.username-display {
		padding: 14px 24px;
		font-size: 18px;
		/* 超大屏幕稍微增加字体 */
		max-width: 180px;
	}

	.auth-btn {
		padding: 14px 24px;
		font-size: 18px;
		/* 超大屏幕稍微增加字体 */
	}

	#auth_container {
		top: 36px;
		right: 32px;
	}
}

/* 超小屏幕 (宽度 ≤ 400px) 的特殊处理 */
@media (max-width: 400px) {
	#search_type {
		width: 96%;
		margin: 70px 2% 20px 2%;
		min-height: 60px;
		border-radius: 14px;
	}

	.search_type_btn {
		padding: 16px 0;
		font-size: 20px;
		/* 超小屏幕保持大字体 */
		min-height: 52px;
		border-radius: 10px;
	}

	#search_container {
		width: 96%;
		margin: 0 2% 25px 2%;
	}

	#search_box {
		min-height: 60px;
		border-radius: 14px;
	}

	.search_icon {
		left: 18px;
	}

	#search_input {
		padding: 16px 16px 16px 55px;
		padding-right: 100px;
		font-size: 20px;
		/* 超小屏幕保持大字体 */
	}

	#search_input::placeholder {
		font-size: 18px;
	}

	.search_button {
		padding: 14px 24px;
		font-size: 18px;
		/* 超小屏幕保持大字体 */
		min-width: 80px;
		border-radius: 12px;
	}

	#search_results_container {
		width: 96%;
		margin: 0 2% 25px 2%;
	}

	#auth_container {
		top: 20px;
		right: 12px;
	}

	.username-display {
		max-width: 120px;
		font-size: 18px;
		/* 超小屏幕保持大字体 */
		padding: 12px 18px;
		border-radius: 14px;
	}

	.auth-btn {
		padding: 12px 18px;
		font-size: 18px;
		/* 超小屏幕保持大字体 */
		border-radius: 14px;
	}

	.modal-content {
		padding: 24px;
		border-radius: 16px;
	}

	.modal-content h3 {
		font-size: 22px;
	}

	.form-group label {
		font-size: 16px;
	}

	.form-group input {
		font-size: 18px;
		padding: 14px 16px;
	}

	.btn-primary,
	.btn-secondary,
	.btn-logout {
		font-size: 18px;
		padding: 14px 20px;
	}

	.video-cover {
		height: 180px;
		border-radius: 10px;
	}

	.image-result-img-container {
		height: 200px;
		border-radius: 10px;
	}

	.pagination {
		gap: 8px;
		margin-top: 24px;
	}

	.page-btn {
		padding: 10px 16px;
		font-size: 16px;
		min-width: 50px;
		border-radius: 10px;
	}

	.page-info {
		font-size: 16px;
	}
}

/* 横屏模式优化 (高度 ≤ 600px 且宽度 ≥ 600px) */
@media (max-height: 600px) and (min-width: 600px) {
	#search_type {
		margin: 50px 4% 15px 4%;
		min-height: 55px;
	}

	.search_type_btn {
		padding: 14px 0;
		min-height: 47px;
		font-size: 20px;
	}

	#search_container {
		margin: 0 4% 15px 4%;
	}

	#search_box {
		min-height: 55px;
	}

	#search_input {
		padding: 14px 16px 14px 55px;
		font-size: 20px;
	}

	.search_button {
		padding: 12px 22px;
		font-size: 18px;
	}

	#search_results_container {
		margin-bottom: 15px;
	}

	#auth_container {
		top: 15px;
		right: 12px;
	}

	.result-item {
		padding: 20px 0;
	}

	.back-home-btn {
		margin-bottom: 12px;
		padding: 14px 20px;
	}

	.video-cover {
		height: 160px;
	}

	.image-result-img-container {
		height: 180px;
	}
}