/* ========== 侧边栏简介文字 ========== */
.sidebar-bio {
  text-align: center;
  font-size: 0.82rem;
  color: var(--third-text-color);
  line-height: 1.6;
  padding: 4px 8px 10px;
}

/* ========== 侧边栏社交链接（纯图标） ========== */
.sidebar-social {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 4px 0;
}
.sidebar-social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--background-color-transparent-60);
  color: var(--second-text-color);
  font-size: 1.05rem;
  text-decoration: none;
  transition: all 0.25s ease;
  border: 1px solid var(--border-color);
}
.sidebar-social a:hover {
  background: var(--third-background-color) !important;
  color: var(--first-text-color) !important;
  border-color: var(--first-text-color) !important;
  transform: translateY(-2px);
}

/* ========== 文章目录（TOC）字号缩小 ========== */
.post-toc-wrap .toc-title {
  font-size: 0.95rem !important;
}
.post-toc-wrap .page-title {
  font-size: 0.85rem !important;
  line-height: 1.2 !important;
}
.post-toc-wrap .nav {
  font-size: 0.82rem !important;
}
.post-toc-wrap .nav .nav-item,
.post-toc-wrap .nav .nav-link {
  font-size: 0.82rem !important;
}

/* ========== Footer 透明度和高度 ========== */
footer.footer {
  background-color: var(--background-color-transparent-40) !important;
  backdrop-filter: blur(8px);
}

/* ========== Home Banner 标题 — 蓝色流光渐变 ========== */
.home-banner-container .description {
  letter-spacing: 0.1em;
  font-weight: 700;
  background: linear-gradient(
    135deg,
    #d0d8e8 0%,
    #5b8def 20%,
    #a0c4ff 40%,
    #d0d8e8 60%,
    #5b8def 80%,
    #d0d8e8 100%
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: banner-shimmer 6s linear infinite;
}
@keyframes banner-shimmer {
  0% { background-position: 0% center; }
  100% { background-position: 200% center; }
}

/* 暗色模式下使用更亮的蓝色渐变 */
.dark .home-banner-container .description {
  background: linear-gradient(
    135deg,
    #c8d6f5 0%,
    #6db3f8 20%,
    #b8d9ff 40%,
    #c8d6f5 60%,
    #6db3f8 80%,
    #c8d6f5 100%
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: banner-shimmer 6s linear infinite;
}

/* ========== 暗色模式 — 首页文章摘要 ========== */
.dark .home-article-content,
.dark .home-article-content .markdown-body {
  background: transparent !important;
  color: #b0b8c1;
}
.dark .home-article-content .markdown-body p,
.dark .home-article-content p {
  color: #b0b8c1;
}
.dark .home-article-item {
  background: var(--card-background-color);
}

/* ========== 文章内页简介区块（适配暗色模式） ========== */
.article-excerpt-wrapper {
  padding: 0 1.5rem;
  margin-top: 0.75rem;
}
.article-excerpt-box {
  background: var(--background-color-transparent-25);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 14px 20px;
  word-break: break-word;
  overflow-wrap: anywhere;
}
.article-excerpt-text {
  color: var(--second-text-color);
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.7;
}

/* ========== 文章标题字号缩小 ========== */
.article-title-regular {
  font-size: 1.6rem !important;
}
.article-title-cover {
  font-size: 1.4rem !important;
}

/* 文章正文内各级标题 */
.markdown-body h1 { font-size: 1.45rem !important; }
.markdown-body h2 { font-size: 1.25rem !important; }
.markdown-body h3 { font-size: 1.1rem !important;  }
.markdown-body h4 { font-size: 1rem !important;    }
.markdown-body h5 { font-size: 0.95rem !important; }
.markdown-body h6 { font-size: 0.9rem !important;  }

/* 文章正文段落和列表 */
.markdown-body p,
.markdown-body li {
  font-size: 0.92rem;
}

/* ========== 首页文章卡片隐藏发布时间 ========== */
.home-article-date {
  display: none;
}

/* ========== Banner 滚动下箭头（纯图标，无容器） ========== */
.home-banner-scroll-down {
  position: absolute;
  bottom: 1.8rem;
  left: 50%;
  transform: translateX(-50%);
  cursor: pointer;
  color: rgba(255, 255, 255, 0.55);
  z-index: 10;
  animation: banner-scroll-bounce 2.2s ease-in-out infinite;
  transition: opacity 0.3s ease;
  line-height: 1;
}
.home-banner-container {
  cursor: pointer;
}
.home-banner-scroll-down:hover {
  color: rgba(255, 255, 255, 0.9);
}
@keyframes banner-scroll-bounce {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(10px); }
}

/* ========== 首页底部透明箭头指示器 ========== */
.home-bottom-indicator {
  display: flex;
  justify-content: center;
  padding: 0.5rem 0 0.8rem;
  opacity: 0.22;
  color: var(--third-text-color);
  transition: opacity 0.4s ease;
  user-select: none;
  pointer-events: none;
}

/* ==================== 分类页面美化 ==================== */

/* 分类总览 — 卡片式布局 */
.category-list-content .all-category {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 0.8rem;
  list-style: none;
  padding: 0;
}
.category-list-content .all-category > .category-list-item {
  background: var(--card-background-color);
  border: 1px solid var(--border-color);
  border-radius: 0.75rem;
  transition: all 0.25s ease;
  overflow: hidden;
}
.category-list-content .all-category > .category-list-item:hover {
  border-color: var(--first-text-color) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.08);
  transform: translateY(-1px);
}
.category-list-content .all-category .category-list-link {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.9rem 1rem;
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--first-text-color);
  text-decoration: none;
}
.category-list-content .all-category .category-list-link::before {
  content: "\f07b";
  font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", sans-serif;
  font-weight: 900;
  color: var(--second-text-color) !important;
  font-size: 1rem;
  flex-shrink: 0;
}
.category-list-content .all-category .category-list-count {
  margin-left: auto;
  background: var(--third-background-color);
  color: var(--second-text-color);
  font-size: 0.75rem;
  padding: 2px 10px;
  border-radius: 999px;
  font-weight: 600;
}

/* 子分类缩进 */
.category-list-content .all-category .category-list-child {
  padding-left: 1.2rem;
  border-top: 1px solid var(--border-color);
  background: var(--background-color-transparent-30);
}

/* 分类详情页 — 标题区 */
.category-name {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  padding-bottom: 0.8rem;
  border-bottom: 3px solid var(--first-text-color) !important;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.category-name i {
  color: var(--second-text-color) !important;
}

/* ==================== 标签页面美化 ==================== */

/* 标签云容器 */
.tagcloud-content {
  padding: 1rem 0;
}

/* 标签列表 — 卡片式 tag pill */
.tagcloud-content .tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  list-style: none;
  padding: 0;
}
.tagcloud-content .tag-list li a {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.45rem 0.9rem;
  background: var(--card-background-color);
  border: 1px solid var(--border-color);
  border-radius: 999px;
  font-size: 0.88rem;
  color: var(--first-text-color);
  text-decoration: none;
  transition: all 0.25s ease;
}
.tagcloud-content .tag-list li a:hover {
  background: var(--third-background-color) !important;
  color: var(--first-text-color) !important;
  border-color: var(--first-text-color) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.tagcloud-content .tag-list li a i {
  color: var(--second-text-color) !important;
  font-size: 0.75rem;
}
.tagcloud-content .tag-list li a:hover i {
  color: #fff;
}

/* 根据文章数量显示不同大小 */
.tagcloud-content .tag-list li a[data-weight] {
  font-size: calc(0.78rem + var(--tag-scale, 0) * 0.2rem);
  padding: calc(0.35rem + var(--tag-scale, 0) * 0.1rem)
           calc(0.7rem + var(--tag-scale, 0) * 0.25rem);
}

/* 标签详情页 — 标题区 */
.tag-name {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  padding-bottom: 0.8rem;
  border-bottom: 3px solid var(--first-text-color) !important;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.tag-name i {
  color: var(--second-text-color) !important;
}

/* ==================== 归档页面美化 ==================== */

/* 归档时间线增强 */
.archive-list-container .archive-item-header {
  padding-bottom: 0.3rem;
  border-bottom: 1px dashed var(--border-color);
}
.archive-list-container .archive-year {
  color: var(--first-text-color) !important;
}
.archive-list-container .article-item {
  transition: all 0.2s ease;
}
.archive-list-container .article-item:hover {
  border-left-color: var(--first-text-color) !important;
  background: var(--background-color-transparent-20);
}
.archive-list-container .article-title {
  font-weight: 500;
  transition: color 0.2s ease;
}
.archive-list-container .article-title:hover {
  color: var(--second-text-color) !important;
}

/* 归档年份计数徽标 */
.archive-year-post-count {
  font-size: 0.8rem !important;
}

/* ==================== 页面标题统一样式 ==================== */
.page-title-header {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  padding-bottom: 0.6rem;
  border-bottom: 2px solid var(--border-color);
}

/* ========== 分页器当前页 — 跟随环境 ========== */
/* 页码容器 */
.home-paginator {
  display: flex;
  justify-content: center;
  gap: 0.4rem;
}
/* 所有页码 — 和 right-bottom-tools 完全相同 */
.paginator .page-number,
.paginator .extend {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  border-radius: 12px !important;
  font-size: 1rem;
  color: var(--default-text-color);
  background: var(--background-color);
  box-shadow: var(--redefine-box-shadow);
  margin: 0 2px;
}
/* 当前页 — 灰色底加粗，红色只靠 hover */
.paginator .current {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  border-radius: 12px !important;
  font-size: 1rem;
  font-weight: 700;
  color: var(--default-text-color) !important;
  background: var(--background-color) !important;
  box-shadow: var(--redefine-box-shadow);
}
/* 当前页 hover — 和 right-bottom-tools:hover 一致：红色底、浅色字 */
.paginator .current:hover {
  color: var(--background-color) !important;
  background: var(--primary-color) !important;
}

/* ========== 文章底部分隔线 — 跟随环境 ========== */
.post-copyright-info::after,
.article-nav::after,
.category-name::after,
.tag-name::after,
.navbar-item.active::after,
[class*="active"]::after {
  background: var(--border-color) !important;
}
