/* ============================================================================
   CSS 文件：main-combined.css
   用途：网站全局样式，被以下27个模板文件引入：
   - index.html（首页）
   - article.html（文章详情页）
   - article_list.html（文章列表页）
   - diary-edit.html（日记编辑页）
   - editor.html（文章编辑页）
   - talk-edit.html（说说编辑页）
   - share-edit.html（分享编辑页）
   - management.html（管理后台）
   - login.html（登录页）
   - About.html（关于页）
   - 404.html（404页面）
   - 以及其他模板文件...
   ============================================================================ */

/* ===== 1. CSS变量定义 - 主题色配置 ===== */
/* 使用场景：全站所有需要颜色的样式 */
[data-bs-theme=dark] {
	--bg-auto-rgb: 10, 12, 25;
	--link-color-rgba: 222, 226, 230, 0.8;
	--link-color-second-rgba: 222, 226, 230, .65;
	--primary-color-rgba: 13, 110, 253;
	--primary-bg-rgba: 13, 110, 253, .2;
	--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";

}

/* 浅色主题：仅在明确 light 或未设置主题时生效 */
:root:not([data-bs-theme=dark]),
[data-bs-theme=light] {
	--bg-auto-rgb: 242, 241, 246;
	--link-color-rgba: 0, 0, 0, 1;
	--link-color-second-rgba: 26, 27, 29, 0.65;
	--primary-color-rgba: 13, 110, 253;
	--primary-bg-rgba: 13, 110, 253, .2;
	--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

/* 已废弃的字体配置 */
/*:root, [data-bs-theme=light] {阿里妈妈方圆体VF Regular*/
/*    --bg-auto-rgb: 245,245,244;*/
/*    --bs-font-sans-serif: 'hm', sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";*/
/*    --link-color-rgba: 0, 0, 0, 1;阿里妈妈方圆体VF Light*/
/*    --link-color-second-rgba: 0, 0, 0, .65;*/
/*    --primary-color-rgba: 0, 0, 0, 1;*/
/*    --primary-bg-rgba: 0, 0, 0, .2;*/
/*}*/*/
.mt-minus-4 {
	margin-top: -30px;
}

/* ===== 2. 页面进入动画 ===== */
/* 使用场景：article.html、index.html 等页面的文章列表进入动画 */
article,
.articles1 {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.5s ease, transform 0.5s ease;
}

article.visible,
.articles1.visible {
	opacity: 1;
	transform: translateY(0);
}

/* ===== 3. 全局基础样式 ===== */
/* 使用场景：全站所有页面 */
html {
	scroll-padding-top: 120px;
	overflow-x: hidden;
}

*,
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family: var(--bs-font-sans-serif) !important;
}

/* ===== 4. 链接基础样式 ===== */
/* 使用场景：全站所有 a 标签 */
a {
	text-decoration: none;
	color: rgba(var(--link-color-rgba));
	transition: .15s all ease-in-out;
}

a:hover,
a:focus,
a:focus-visible {
	text-decoration: none;
	color: rgba(var(--primary-color-rgba));
}

/* ===== 5. 背景色样式 ===== */
/* 使用场景：全站所有使用 bg-auto 类的元素 */
.bg-auto {
	--bg-auto-opacity: 1;
	background-color: rgba(var(--bg-auto-rgb), var(--bg-auto-opacity)) !important;

}

/* ===== 6. 左侧侧边栏样式 ===== */
/* 使用场景：所有页面的左侧导航栏 */
#left {
	min-height: 100vh;
	z-index: 1030;
}

#left .nav-link i {
	font-size: 24px;
	padding-top: 0.1rem !important;
	padding-bottom: 0.1rem !important;
	padding-right: 6rem !important;
	padding-left: 1rem !important;
	border-radius: 0;
	transition: all .15s ease-in-out;

}

#left .nav-link i span {
	font-size: 16px;
	padding-top: 0.4rem !important;

}

#left a:hover {
	background: rgba(var(--primary-bg-rgba));
	color: rgba(var(--primary-color-rgba));
}

.leftIHover {
	background: linear-gradient(to right, rgb(13 110 253), #4338ca);
	color: #fff;
}

.leftIHover span,
.leftIHover i {
	color: #fff;
}

#left .nav-item:hover .nav-item-title {
	display: block;
	color: rgba(var(--primary-color-rgba));
	transition: all .15s ease-in-out;
}

/* ===== 7. 中间区域导航栏样式 ===== */
/* 使用场景：所有页面的顶部导航栏 */
#middle .navbar-background {
	backdrop-filter: blur(6px);
}

#middle #form-search-icon {
	color: rgba(var(--link-color-second-rgba));
}

#middle #form-search-icon:hover {
	background: rgba(var(--primary-bg-rgba));
	color: rgba(var(--primary-color-rgba));
}

#middle #search-input,
#middle #search-input-mobile {
	width: 0;
	transition: all .25s ease-in-out;
	background: rgba(0, 0, 0, 0);
}

#middle #search-input:focus,
#middle #search-input:focus-visible {
	outline: none;
	width: 150px;
}

#middle #navbarNavLeft .nav-link {}

#middle .navbar-nav .active,
#middle #navbarNavLeft .nav-link:hover {
	color: rgba(var(--primary-color-rgba));
	box-shadow: 0 -1px 0 0 rgba(var(--primary-bg-rgba)) inset;
	transition: all .25s ease-in-out;
}

.topactive {
	background: rgba(var(--bs-primary-rgb));
	color: #fff;
}

/* ===== 8. 首页内容区域样式 ===== */
/* 使用场景：index.html 的文章列表区域 */
#middle #index-content a,
#post-article a,
#comments a {
	color: rgba(var(--link-color-rgba));
}

#middle #index-content a:hover,
#post-article a:hover,
#comments a:hover {
	color: rgba(var(--primary-color-rgba));
}

#middle .top-up-flag,
#middle .read-more {
	color: rgba(var(--primary-color-rgba));
}

/* 文章简介文字设置为灰色 */
.card-text.more {
	color: rgba(var(--link-color-second-rgba));
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.6;
}

/* ===== 9. 首页文章卡片样式 ===== */
/* 使用场景：index.html、draft-batchget.html 的文章卡片列表 */
.index-article-card {
	position: relative;
	padding: 20px 0;
	border-bottom: 1px dashed var(--bs-tertiary-color);
	transition: all 0.3s ease;
}

.index-article-card:hover {
	padding-left: 8px;
}

.index-article-card .card-body {
	padding: 0;
}

.index-article-card .card-title {
	font-size: 1.1rem;
	font-weight: normal;
	color: rgba(var(--bs-body-color));
	margin-bottom: 8px;
	line-height: 1.4;
	transition: color 0.2s ease;
}

.index-article-card .card-title a {
	color: inherit;
}

.index-article-card .card-title a:hover {
	color: rgba(var(--primary-color-rgba));
}

.index-article-card .card-text {
	margin-bottom: 10px;
}

.index-article-card .article-meta {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 0.85rem;
	color: rgba(var(--link-color-second-rgba));
	flex-wrap: wrap;
}

.index-article-card .article-meta a {
	color: inherit;
	transition: color 0.2s ease;
}

.index-article-card .article-meta a:hover {
	color: rgba(var(--primary-color-rgba));
}

.index-article-card .article-meta .meta-divider {
	color: var(--bs-tertiary-color);
}

.index-article-card .article-thumbnail {
	flex-shrink: 0;
	width: 180px;
	height: 120px;
	border-radius: 6px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	margin-right: 15px;
}

.index-article-card:hover .article-thumbnail {
	transform: scale(1.03);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* ===== 10. 说说/动态样式 ===== */
/* 使用场景：article.html 的说说详情、index.html 的说说列表 */
#middle .moment-body {
	background: rgba(var(--primary-bg-rgba));
	border-radius: 0 8px 8px 0;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
	padding: 12px 15px;
	margin-bottom: 10px;
	position: relative;
}

#middle .moment-body::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: rgba(var(--bs-primary-rgb));
}

/* ===== 11. 通用图片样式 ===== */
/* 使用场景：全站所有图片 */
#content img {
	display: block;
	max-width: 100%;
	height: auto;
}

/* ===== 12. 分页组件样式 ===== */
/* 使用场景：index.html、article_list.html 等页面的分页 */
#pagination a,
.sub-category a {
	position: relative;
	display: block;
	padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
	font-size: var(--bs-pagination-font-size);
	color: rgba(var(--link-color-second-rgba)) !important;
	text-decoration: none;
	background-color: rgb(var(--bg-auto-rgb));
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
	border-radius: 0;
}

#pagination .current a,
#pagination a:hover,
.sub-category a:hover {
	z-index: 3;
	background: rgba(var(--primary-bg-rgba));
	color: rgba(var(--primary-color-rgba)) !important;
}

/* ===== 13. 文章详情内容样式 ===== */
/* 使用场景：article.html 的 #post-content 区域 */
#post-content a {
	color: rgba(var(--primary-color-rgba));
	box-shadow: 0 -6px 0 0 rgba(var(--primary-bg-rgba)) inset;
	transition: box-shadow 0.2s ease-in;
}

#post-content a:hover {
	color: rgba(var(--primary-color-rgba));
	box-shadow: 0 -10px 0 0 rgba(var(--primary-bg-rgba)) inset;
	transition: box-shadow 0.2s ease-in;
}


#post-content img {
	display: block;
	max-width: 100%;
	height: auto;
	margin-bottom: 3px;
}

#post-content .tags {
	display: flex;
}

#post-content .tags a {
	color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
}

#post-content blockquote,
.text-border-left {
	--bs-text-opacity: 1;
	color: rgba(var(--link-color-second-rgba)) !important;
	border-left: 4px solid rgba(var(--link-color-second-rgba));
	font-weight: 400;
	letter-spacing: 0.01rem;
	padding-left: 10px;
}

#post-content blockquote p:last-child {
	margin-bottom: 0;
}

/* ===== 14. 表单控件样式 ===== */
/* 使用场景：management.html、diary-edit.html 等页面的表单 */
.form-control,
button {
	box-shadow: none !important;
}

.form-control:focus {
	border-color: rgba(var(--primary-color-rgba)) !important;
}

/* ===== 15. 头像样式 ===== */
/* 使用场景：评论区、个人资料等头像 */
.avatar {
	border-radius: 3px;
}

/* ===== 16. 评论区样式 ===== */
/* 使用场景：article.html 的评论区域 */
.comment-reply a {
	color: rgba(var(--primary-color-rgba)) !important;
	box-shadow: 0 -6px 0 0 rgba(var(--primary-bg-rgba)) inset;
	transition: all .25s ease-in-out;
}

.comment-reply a:hover {
	box-shadow: 0 -10px 0 0 rgba(var(--primary-bg-rgba)) inset;
}

.cancel-comment-reply {
	display: flex;
}

.cancel-comment-reply a {
	padding: 0.375rem 0.75rem;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	line-height: 1.5;
	border-radius: 0.375rem;
}

#comments button,
.cancel-comment-reply a {
	background: rgba(var(--primary-bg-rgba));
	color: rgba(var(--primary-color-rgba)) !important;
	border: 0;
}

#comments button:hover,
.cancel-comment-reply a:hover {
	background: rgba(var(--primary-bg-rgba));
	color: rgba(var(--primary-color-rgba));
	border: 0;
}

/* ===== 17. 右侧边栏样式 ===== */
/* 使用场景：所有页面的右侧边栏 */
#right a {
	color: rgba(var(--link-color-second-rgba));
}

#right a:hover {
	color: rgba(var(--primary-color-rgba));
}

/* ===== 18. 移动端导航栏样式 ===== */
/* 使用场景：移动端页面的导航栏 */
#mobile-navbar button {
	background: rgba(var(--primary-bg-rgba));
	color: rgba(var(--primary-color-rgba));
}

#mobile-navbar .list-group-item.active {
	background: rgba(var(--primary-bg-rgba));
}

/* ===== 19. 文章标题样式 ===== */
/* 使用场景：article.html 的文章标题 */
#post-content h1 {
	display: inline-block;
	box-shadow: 0 -10px 0 0 rgba(var(--primary-bg-rgba)) inset;
	padding: 0 3px;
	font-size: calc(1.275rem + .3vw) !important
}

/* ===== 20. 响应式布局 ===== */
/* 使用场景：大屏幕设备的布局调整 */
@media (min-width: 1400px) {

	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 1200px;
	}

	#post-content h1 {
		font-size: 1.5rem !important;
	}

	#post-content h2 {
		font-size: 1.4rem !important;
	}

	#post-content h3 {
		font-size: 1.3rem !important;
	}
}

/* ===== 21. 提示框样式 ===== */
/* 使用场景：文章内容中的提示/警告框 */
.aicon {
	border-left-color: #3498db;
	background-color: var(--bs-alert-bg);
	padding: 16px;
	margin: 25px 0;
	border-radius: 6px;
	border-left: 4px solid;
}

/* ===== 22. 评论元信息样式 ===== */
/* 使用场景：评论区的作者信息 */
.comment--meta {
	display: flex;
	align-items: center;
	flex: 1 1 auto
}

.author--icon {
	--fill: #0095f6;
	--height: 14px;
	--width: 14px;
	fill: var(--fill);
	height: var(--height);
	width: var(--width);
	margin-left: 0px;
	margin-bottom: 5px;
}

.friend--icon {
	margin-left: 2px;
	width: 16px;
	height: 16px;
}

/* ===== 23. 列表组样式 ===== */
/* 使用场景：管理后台等页面的列表组 */
.list-group-item {
	background-color: transparent !important;
	border-color: rgba(0, 0, 0, 0.1);
}

.list-group-item:hover,
.list-group-item:focus,
.list-group-item.active {
	background-color: transparent !important;
}

/* ===== 24. Logo样式 ===== */
/* 使用场景：左侧侧边栏的网站Logo */
.weblogo {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 22px;
}

.weblogo img {
	max-width: 100%;
	max-height: 100%;
	display: block;
	margin: 0 auto;
}

.weblogo a.nav-link {
	text-decoration: none;
	background-color: transparent !important;
}

.weblogo a.nav-link:hover {
	opacity: 1 !important;
	transform: none !important;
}

/* ===== 25. 友情链接卡片样式 ===== */
/* 使用场景：友情链接页面的卡片 */
.profile-card1 {
	display: flex;
	padding: 10px 10px;
	background-color: var(--bs-secondary-bg);
	border-radius: 8px;
	max-width: 400px;
	margin: 0 auto;
	/*font-family: 'Arial', sans-serif;*/
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease;
}

.profile-card1:hover {
	transform: translateY(-8px);
	box-shadow: 0 16px 18px rgba(0, 0, 0, 0.15);
	background-color: var(--bs-primary-bg-subtle);
}

.avatar1 {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
	margin-right: 12px;
	transition: transform 0.3s ease;
}

.profile-card1:hover .avatar1 {
	transform: scale(1.1);
}

.profile-content1 {
	flex-grow: 1;
}

.nickname1 {

	font-size: 14px;
	color: var(--bs-body-color);
	transition: color 0.3s ease;
}

.profile-card1:hover .nickname1 {
	color: #1a73e8;
	font-weight: bold;
}

.bio1 {
	font-size: 12px;
	color: #666;
	margin-top: 4px;
	transition: color 0.3s ease;

}

.profile-card1:hover .bio {
	color: #444;
}

.comment-count1 {
	align-self: center;
	background-color: var(--bs-tertiary-bg);
	color: var(--bs-light-text);
	padding: 0 4px;
	border-radius: 12px;
	font-size: 12px;
	transition: all 0.3s ease;
}

.profile-card1:hover .comment-count1 {
	background-color: #1a73e8;
	color: white;
}

/* ===== 26. 通用工具样式 ===== */
/* 使用场景：全站通用的辅助样式 */
.adding-transition {
	transition: padding-left 0.5s ease-in-out !important;
}

.ps-5 {
	padding-left: 3rem !important;
}

/* ===== 27. 图片懒加载样式 ===== */
/* 使用场景：全站图片懒加载效果 */
.lazyload {
	opacity: 0;
	transition: opacity 0.3s;
}

.lazyload.loaded {
	opacity: 1;
}

/* ===== 28. 灯箱样式 ===== */
/* 使用场景：图片灯箱组件 */
.fancybox__container {
	--fancybox-bg: rgba(0, 0, 0, 0.9);
}

.fancybox__toolbar {
	background: rgba(0, 0, 0, 0.6);
}

/* ===== 29. 状态指示器样式 ===== */
/* 使用场景：友情链接卡片的链接状态指示 */
.avatar-container {
	position: relative;
	display: inline-block;
}

.status-indicator {
	position: absolute;
	bottom: 1px;
	right: 9px;
	width: 16px;
	height: 16px;
	background-color: #2ecc71;
	border: 2px solid white;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
	display: none;
	z-index: 10000;
}

.profile-card1 .link-status:contains("(有")~.avatar-container .status-indicator {
	display: block;
}

.status-valid {
	background-color: #2ecc71;
}

.status-invalid {
	background-color: #e74c3c;
}

.status-checking {
	background-color: #95a5a6;
}

.status-indicator:hover {
	transform: scale(1.2);
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

/* ===== 30. 抽奖按钮样式 ===== */
/* 使用场景：抽奖功能按钮 */
#startLuckyDraw {
	background-color: transparent;
	/* 透明背景，彻底弱�?*/
	color: #198754;
	/* 绿色文字，与主题呼应 */
	border: 1px solid #198754;
	/* 绿色边框，保持识别�?*/
	border-radius: 4px;
	padding: 8px 16px;
	font-size: 14px;
	cursor: pointer;
	transition: all 0.3s ease;
	/*  hover 时整体样式过�?*/
}

#startLuckyDraw:hover {
	background-color: #198754;
	/* hover 时背景填充，增强交互 */
	color: #ffffff;
}

/* ===== 31. 评论位置样式 ===== */
/* 使用场景：评论区的位置显示 */
.comment-location {
	font-size: 12px;
	font-weight: bold;
	background: linear-gradient(45deg, #f093fb, #f5576c, #4facfe, #00f2fe, #43e97b, #fa709a, #fee140);
	background-size: 400% 400%;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: gradient-shift 4s ease infinite;
	margin-left: 8px;
}

@keyframes gradient-shift {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

/* ===== 32. 说说组件样式 ===== */
/* 使用场景：talk.html、article.html 的说说展示 */
.shuoshuo-container {

	background-color: var(--bs-body-bg);

	border-radius: 10px;

	box-shadow: 0 2px 10px var(--bs-secondary-bg);

	/* font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; */

	padding: 15px;
}

.shuoshuo-header {
	display: flex;
	align-items: flex-start;
	margin-bottom: 12px;
}

.shuoshuo-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #f0f0f0;
	margin-right: 12px;
	overflow: hidden;
}

.shuoshuo-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.shuoshuo-user-info {
	flex: 1;
}

.shuoshuo-nickname {
	font-weight: bold;
	font-size: 16px;
	color: var(--bs-body-color);
	margin-bottom: 2px;
}

.shuoshuo-meta {
	font-size: 12px;
	color: var(--bs-tertiary-color);
}

.shuoshuo-content {
	font-size: 15px;
	line-height: 1.5;
	color: var(--bs-body-color);

	margin-bottom: 15px;
}

.shuoshuo-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 10px;
	border-top: 1px solid #f0f0f0;
}

.shuoshuo-stats {
	font-size: 13px;
	color: #999;
}

.shuoshuo-actions {
	display: flex;
}

.shuoshuo-action-btn {
	background: none;
	border: none;
	font-size: 13px;
	color: var(--bs-secondary-color);
	margin-left: 15px;
	cursor: pointer;
	display: flex;
	align-items: center;
	white-space: nowrap;
}

.shuoshuo-action-btn:hover {
	color: #07c160;
}

.shuoshuo-action-btn::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 4px;
	background-size: contain;
	background-repeat: no-repeat;
}

.shuoshuo-like-btn::before {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23666" d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>');
}

.shuoshuo-comment-btn::before {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23666" d="M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2z"/></svg>');
}

.shuoshuo-share-btn::before {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23666" d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/></svg>');
}

.shuoshuo-action-btn:hover::before {
	filter: brightness(0) saturate(100%) invert(40%) sepia(94%) saturate(373%) hue-rotate(100deg) brightness(97%) contrast(101%);
}

/* ===== 33. 重置样式 ===== */
/* 使用场景：全局基础重置 */
* {
	margin: 0;
	padding: 0;
}

body {
	position: relative;
}

/* ===== 34. 卡片布局样式 ===== */
/* 使用场景：一些页面的卡片布局 */
.box {
	padding: 1rem;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.article {
	padding: 0.5rem;
}

.card {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.card-title {
	font-size: 1.5rem;
	font-weight: 300;
}

/* ===== 35. 新移动端导航栏样式 ===== */
/* 使用场景：新的移动端底部导航栏 */
.new-mobile-navbar {
	position: fixed;
	top: auto;

	bottom: 0px;
	background-color: var(--bs-body-bg);
	padding: 0.5rem 0;
	display: flex;
	gap: 5px;
	align-items: center;
	justify-content: space-around;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	box-shadow: 0 -3px 3px rgba(0, 0, 0, 0.02);
	display: none;
	animation: Into 1s ease;
	transition: all 0.5s;
	z-index: 999;
}

.nav-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
}

.menu {
	display: none;
	position: absolute;
	bottom: 100%;
	/* 从底部向上弹�?*/
	left: 50%;
	transform: translateX(-50%);
	background-color: var(--bs-body-bg);
	border-radius: 10px 10px 0 0;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
	padding: 1rem;
	flex-direction: column;
	gap: 10px;
	width: max-content;
	margin-bottom: 15px;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
}

.menu.active {
	display: flex;
	gap: 1rem;
	opacity: 1;
	visibility: visible;
	animation: slideUp 0.3s ease forwards;
}

#article {
	position: relative;
	cursor: pointer;
}

/* ===== 36. 遮罩层样式 ===== */
/* 使用场景：移动端导航菜单的遮罩 */
.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s;
	backdrop-filter: blur(10px);
	z-index: 1;
}

.overlay.show {
	opacity: 1;
	visibility: visible;
}

/* ===== 37. 导航栏头部样式 ===== */
/* 使用场景：移动端导航栏头部 */
.navbar-head {
	padding: 1.5rem 1rem;
	display: flex;
	align-items: center;
	border-bottom: 1px solid #3333;
	position: sticky;
	top: 0;
	z-index: 1;
	backdrop-filter: blur(10px);
}

/* ===== 38. 返回顶部按钮样式 ===== */
/* 使用场景：全站返回顶部按钮 */
.back-to-top {
	position: fixed;
	bottom: 100px;
	right: 20px;
	width: 30px;
	height: 30px;
	border-radius: 10%;
	background-color: rgba(13, 110, 253, 0.9);
	color: white;
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	z-index: 1000;
}

.back-to-top.show {
	opacity: 1;
	visibility: visible;
}

.back-to-top:hover {
	background-color: rgba(13, 110, 253, 1);
	transform: translateY(-3px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.back-to-top:active {
	transform: translateY(0);
}

/* ===== 39. 移动端媒体查询 ===== */
/* 使用场景：屏幕宽度小于996px时的样式调整 */
@media (max-width: 996px) {

	.new-mobile-navbar {
		display: flex;

	}

	body {
		padding-bottom: 80px;
	}
}


/* ===== 40. 小屏幕媒体查询 ===== */
/* 使用场景：屏幕宽度小于576px时的样式调整 */
@media (max-width: 576px) {
	.new-mobile-navbar {
		width: 100%;

	}


}

/* ===== 41. CSS动画定义 ===== */
/* 使用场景：移动端导航栏进入动画、菜单滑动动画 */
@keyframes Into {
	0% {
		opacity: 0;
		transform: translateY(100%) translateX(0);
	}

	100% {
		opacity: 1;
		transform: translateY(0%) translateX(0);
	}
}

@keyframes slideUp {
	0% {
		transform: translateX(-50%) translateY(20px);
		opacity: 0;
	}

	100% {
		transform: translateX(-50%) translateY(0);
		opacity: 1;
	}
}

/* ===== 42. 编辑器公共样式 ===== */
/* 使用场景：diary-edit.html、editor.html 等编辑器页面 */
.editor-container {
	padding: 20px;
	background-color: var(--bs-secondary-bg, #f9f9f9);
	border: 1px solid var(--bs-border-color-translucent, #e8e8e8);
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

#editor-toolbar {
	border: 1px solid var(--bs-border-color-translucent, #e8e8e8);
	border-bottom: none;
	border-radius: 4px 4px 0 0;
	padding: 8px;
	background-color: var(--bs-body-bg, #fff);
}

#markdown-editor {
	border: 1px solid var(--bs-border-color-translucent, #e8e8e8);
	border-radius: 0 0 4px 4px;
	/* 必须用确定高度：内部 .w-e-text-container height:100% 才能正确解析 */
	height: 500px;
	background-color: var(--bs-body-bg, #fff);
}

/* 修复 WangEditor 正文区高度塌陷（min-height 父级下百分比高度会退化为 auto） */
#markdown-editor .w-e-text-container {
	height: 100% !important;
}

#markdown-editor img {
	max-width: 100%;
	height: auto;
	display: block;
}

.editor-actions {
	margin-top: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.notification {
	padding: 10px 15px;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 500;
	margin-right: 10px;
	transition: all 0.3s ease;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.notification.success {
	background-color: #f0f9eb;
	color: #67c23a;
	border: 1px solid #e1f3d8;
}

.notification.error {
	background-color: #fef0f0;
	color: #f56c6c;
	border: 1px solid #fbc4c4;
}

.notification.warning {
	background-color: #fdf6ec;
	color: #e6a23c;
	border: 1px solid #faecd8;
}

.notification.info {
	background-color: #ecf5ff;
	color: #409eff;
	border: 1px solid #d9ecff;
}

#feature-image-preview img {
	border: 1px solid #e8e8e8;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease;
}

#feature-image-preview img:hover {
	transform: scale(1.02);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}

.editor-form-control,
.editor-form-select {
	border-radius: 4px;
	border: 1px solid #dcdfe6;
	transition: all 0.3s ease;
}

.editor-form-control:focus,
.editor-form-select:focus {
	border-color: #409eff;
	box-shadow: 0 0 0 2px rgba(64, 158, 255, 0.2);
}

.editor-btn {
	border-radius: 4px;
	transition: all 0.3s ease;
}

.editor-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

/* ===== 43. Toast通知样式 ===== */
/* 使用场景：编辑器页面的操作通知 */
#toast-notification {
	position: fixed;
	top: 20px;
	right: 20px;
	z-index: 9999;
	padding: 15px 25px;
	border-radius: 8px;
	color: white;
	font-weight: 500;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
	transform: translateX(120%);
	transition: transform 0.3s ease-out;
	max-width: 350px;
}

/* ===== 代码片段美化样式 ===== */
/* 使用场景：article.html 的 #post-content 区域中的代码块和行内代码 */
/* 配合 highlight.js 使用，highlight.js 提供语法着色，此样式提供容器美化 */

#post-content code {
	font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', 'Monaco', 'Courier New', monospace;
	font-size: 0.875rem;
}

#post-content pre {
	background-color: #1e1e1e;
	color: #d4d4d4;
	border-radius: 8px;
	padding: 16px 20px;
	margin: 16px 0;
	overflow-x: auto;
	white-space: pre;
	word-break: normal;
	word-wrap: normal;
	line-height: 1.6;
	border: 1px solid #3c3c3c;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

#post-content pre code {
	background: none;
	padding: 0;
	font-size: 0.875rem;
	color: inherit;
	line-height: inherit;
}

#post-content code:not(pre code) {
	background-color: rgba(var(--primary-bg-rgba));
	color: rgba(var(--primary-color-rgba));
	padding: 2px 6px;
	border-radius: 3px;
	font-size: 0.85em;
}

#post-content pre::-webkit-scrollbar {
	height: 8px;
}

#post-content pre::-webkit-scrollbar-track {
	background: #252526;
	border-radius: 4px;
}

#post-content pre::-webkit-scrollbar-thumb {
	background: #4a4a4a;
	border-radius: 4px;
}

#post-content pre::-webkit-scrollbar-thumb:hover {
	background: #6a6a6a;
}