:root {
  --placeholder-color: #333;
  --reward-text-color: #333; /* 赞助文字颜色 */
  --reward-after-background-color: #ffffff; /* 赞助背景颜色 */
  --reward-border-weight: 1px; /* 赞助边框粗细 */
  --reward-border-color: none; /* 赞助边框颜色 */
  --reward-after-display: none; /* 赞助按钮空心 */
  --footer-custom-text-color: linear-gradient(90deg, #00f0ff, #4c5bff, #00f0ff);
}

[data-theme="light"] {
  --placeholder-color: #333;
  --reward-text-color: #333;
  --reward-after-background-color: #ffffff;
  --reward-border-color: linear-gradient(
    45deg,
    #ff6b6b,
    #4ecdc4,
    #45b7d1
  ); /* 赞助边框颜色 */
  --reward-after-display: none; /* 赞助按钮空心 */
}

[data-theme="dark"] {
  --reward-text-color: #ffffff;
  --reward-after-background-color: #121212;
  --reward-border-color: linear-gradient(
    45deg,
    #ff6b6b,
    #4ecdc4,
    #45b7d1
  ); /* 赞助边框颜色 */
  --reward-after-display: block; /* 赞助按钮空心 */
}

/* 页脚与头图透明 */
#footer {
  background: transparent !important;
  color: #333; /* 白天模式深色文字 */
}
#page-header {
  background: transparent !important;
  color: #333; /* 白天模式深色文字 */
}

/* 白天模式遮罩透明 */
#footer::before {
  background: transparent !important;
}
#page-header::before {
  background: transparent !important;
}

/* 夜间模式遮罩透明 */
[data-theme="dark"] #footer::before {
  background: transparent !important;
}
[data-theme="dark"] #page-header::before {
  background: transparent !important;
}

/* 夜间模式菜单栏发光字 */
[data-theme="dark"] #nav .site-page,
[data-theme="dark"] #nav .menus_items .menus_item .menus_item_child li a {
  text-shadow: 0 0 2px rgb(179, 71, 241) !important;
  color: #fff !important; /* 夜间模式亮色文字 */
}

/* 手机端适配 */
[data-theme="dark"] #sidebar #sidebar-menus .menus_items .site-page {
  text-shadow: 0 0 2px rgb(179, 71, 241) !important;
  color: #fff !important; /* 夜间模式亮色文字 */
}

/* 侧边栏个人信息卡片动态渐变色 */
#aside-content > .card-widget.card-info {
  position: relative;
  background: #f5f5f5; /* 白天模式浅色背景 */
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
  transform-style: preserve-3d;
  perspective: 1000px;
  transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  color: #333; /* 白天模式深色文字 */
  pointer-events: auto;
}

/* 夜间模式卡片样式 */
[data-theme="dark"] #aside-content > .card-widget.card-info {
  background: #0a0a0a; /* 夜间模式深色背景 */
  box-shadow: 0 0 30px rgba(0, 255, 255, 0.3), 0 0 60px rgba(255, 0, 255, 0.2),
    inset 0 0 20px rgba(255, 255, 255, 0.05);
  color: #fff; /* 夜间模式亮色文字 */
}

/* 动态流体渐变背景 - 仅夜间模式 */
[data-theme="dark"] #aside-content > .card-widget.card-info::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(
      circle at 20% 30%,
      rgba(120, 0, 255, 0.8) 0%,
      transparent 25%
    ),
    radial-gradient(
      circle at 80% 70%,
      rgba(0, 200, 255, 0.8) 0%,
      transparent 25%
    ),
    radial-gradient(
      circle at 40% 80%,
      rgba(255, 0, 150, 0.8) 0%,
      transparent 25%
    ),
    radial-gradient(
      circle at 60% 20%,
      rgba(0, 255, 120, 0.8) 0%,
      transparent 25%
    );
  background-size: 300% 300%;
  animation: fluidGradient 15s ease infinite;
  filter: blur(25px);
  opacity: 0.7;
  z-index: 0;
  pointer-events: none;
}

@keyframes fluidGradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* 动态粒子效果 - 仅夜间模式 */
[data-theme="dark"] #aside-content > .card-widget.card-info::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(2px 2px at 20px 30px, #fff, transparent),
    radial-gradient(2px 2px at 40px 70px, rgba(255, 255, 255, 0.8), transparent),
    radial-gradient(1px 1px at 90px 40px, #fff, transparent),
    radial-gradient(
      1px 1px at 130px 80px,
      rgba(255, 255, 255, 0.6),
      transparent
    ),
    radial-gradient(2px 2px at 160px 30px, #fff, transparent);
  background-repeat: repeat;
  background-size: 200px 100px;
  animation: particleMove 20s linear infinite;
  opacity: 0.4;
  z-index: 1;
  pointer-events: none;
}

@keyframes particleMove {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100px);
  }
}

/* 3D悬浮效果 - 仅夜间模式 */
[data-theme="dark"] #aside-content > .card-widget.card-info:hover {
  transform: translateY(-10px) rotateX(5deg) rotateY(-5deg);
  box-shadow: 0 15px 35px rgba(0, 255, 255, 0.4),
    0 0 80px rgba(255, 0, 255, 0.3), inset 0 0 30px rgba(255, 255, 255, 0.1);
}

/* 霓虹文字效果 - 仅夜间模式 */
[data-theme="dark"] #aside-content > .card-widget.card-info .card-info-title {
  position: relative;
  color: #fff;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.8), 0 0 10px rgba(0, 255, 255, 0.8),
    0 0 15px rgba(0, 255, 255, 0.6), 0 0 20px rgba(0, 255, 255, 0.4);
  animation: neonFlicker 3s infinite alternate;
  z-index: 2;
  pointer-events: auto;
}

@keyframes neonFlicker {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
}

/* 动态边框光效 - 仅夜间模式 */
[data-theme="dark"] #aside-content > .card-widget.card-info .border-glow {
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  background: linear-gradient(
    45deg,
    #ff00cc,
    #3333ff,
    #00ffcc,
    #ffcc00,
    #ff00cc
  );
  background-size: 400% 400%;
  border-radius: 20px;
  z-index: -1;
  animation: borderGlow 8s ease infinite;
  filter: blur(5px);
  opacity: 0.7;
  pointer-events: none;
}

@keyframes borderGlow {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* 内容区域玻璃态效果 - 仅夜间模式 */
[data-theme="dark"] #aside-content > .card-widget.card-info .card-info-content {
  position: relative;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(10px);
  border-radius: 15px;
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 2;
  pointer-events: auto;
}

/* 交互式光波纹效果 - 仅夜间模式 */
[data-theme="dark"] #aside-content > .card-widget.card-info .ripple {
  position: absolute;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    rgba(255, 255, 255, 0.3) 0%,
    transparent 70%
  );
  transform: scale(0);
  animation: rippleEffect 2s ease-out;
  pointer-events: none;
}

@keyframes rippleEffect {
  to {
    transform: scale(4);
    opacity: 0;
  }
}

/* 白天模式卡片内容样式 */
#aside-content > .card-widget.card-info .card-info-content {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(5px);
  border-radius: 15px;
  padding: 20px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  z-index: 2;
  pointer-events: auto;
}

/* 白天模式卡片标题样式 */
#aside-content > .card-widget.card-info .card-info-title {
  position: relative;
  color: #333;
  z-index: 2;
  pointer-events: auto;
  font-weight: bold;
}

/* 白天模式卡片悬浮效果 */
#aside-content > .card-widget.card-info:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

/* 白天模式标题/副标题颜色 */
#site-title,
#site-subtitle,
#site-name {
  color: #333 !important; /* 深色文字 */
}

/* 夜间模式标题/副标题颜色 */
[data-theme="dark"] #site-title,
[data-theme="dark"] #site-subtitle,
[data-theme="dark"] #site-name {
  color: #fff !important; /* 亮色文字 */
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.3); /* 增强夜间可读性 */
}

/* 菜单项基础样式 */
.menus_items .menus_item a,
.menus_items .menus_item span,
#toggle-menu,
.search span,
.site-name {
  color: #333 !important; /* 白天模式深色 */
  transition: all 0.3s ease;
}

/* 夜间模式菜单颜色 */
[data-theme="dark"] .menus_items .menus_item a,
[data-theme="dark"] .menus_items .menus_item span,
[data-theme="dark"] #toggle-menu,
[data-theme="dark"] .search span,
[data-theme="dark"] .site-name {
  color: #fff !important; /* 夜间模式浅色 */
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.3);
}

/* 菜单图标颜色适配 */
.menus_items .menus_item i,
#toggle-menu i,
#search-button i,
#search span {
  color: #333 !important;
}

[data-theme="dark"] .menus_items .menus_item i,
[data-theme="dark"] #toggle-menu i,
[data-theme="dark"] #search-button i,
#search span {
  color: #fff !important;
}

/* 下拉菜单背景适配 */
.menus_item_child {
  background: rgba(255, 255, 255, 0.9) !important;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

[data-theme="dark"] .menus_item_child {
  background: rgba(30, 30, 30, 0.9) !important;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* 子菜单项颜色 */
.menus_item_child a {
  color: #333 !important;
}

[data-theme="dark"] .menus_item_child a {
  color: #fff !important;
}

/* 悬停效果 */
.menus_items .menus_item a:hover,
.menus_items .menus_item span:hover {
  color: #49b1f5 !important;
}

[data-theme="dark"] .menus_items .menus_item a:hover,
[data-theme="dark"] .menus_items .menus_item span:hover {
  color: #79bd8f !important;
  text-shadow: 0 0 8px rgba(121, 189, 143, 0.5);
}

/* 导航栏容器整体玻璃态效果 */
#nav {
  position: relative;
  background: rgba(255, 255, 255, 0.3) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border-radius: 12px;
  padding: 8px 15px;
  display: flex;
  justify-content: center; /* 核心居中方案 */
  align-items: center;
  margin: 0 auto;
}

/* 夜间模式适配 */
[data-theme="dark"] #nav {
  background: rgba(30, 30, 30, 0.8) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

/* 目录激活项 */
.active > span {
  color: rgb(37, 17, 0);
}

/* 博文标题和信息 */
[data-theme="light"] .post-title,
[data-theme="light"] .meta-firstline,
[data-theme="light"] .meta-secondline,
[data-theme="light"] #twikoo-count {
  color: #333 !important;
}

/* 版权信息 */
[data-theme="light"] .post-copyright-info > a {
  color: #333 !important;
}

[data-theme="dark"] .post-copyright-meta {
  background: linear-gradient(90deg, #4c5bff, #00f0ff);
  background-clip: text;
  -webkit-background-clip: text;
  background-size: auto;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
}

[data-theme="light"] .post-copyright-meta {
  background: linear-gradient(90deg, #191e55, #0011ff);
  background-clip: text;
  -webkit-background-clip: text;
  background-size: auto;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
}

[data-theme="light"] .post-copyright {
  border: 2px dashed #333 !important;
}

[data-theme="light"] .post-copyright:hover {
  /* 鼠标悬停时：显示阴影 */
  box-shadow: 0 0px 8px rgba(0, 0, 0, 0.5) !important;
}

[data-theme="dark"] .post-copyright {
  border: 2px dashed #d1d1d1 !important;
}

/* 赞助按钮 */
.reward-button {
  /* 初始状态 */
  background: transparent;
  border: none;
  color: var(--reward-text-color) !important;
  padding: 12px 24px;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  z-index: 1;
}

/* 使用伪元素创建渐变边框 */
.reward-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--reward-border-color);
  border-radius: inherit;
  z-index: -1;
  transition: opacity 0.3s ease;
  opacity: 1;
}

.reward-button::after {
  display: var(--reward-after-display);
  content: "";
  position: absolute;
  top: var(--reward-border-weight);
  left: var(--reward-border-weight);
  right: var(--reward-border-weight);
  bottom: var(--reward-border-weight);
  background: var(--reward-after-background-color) !important;
  border-radius: inherit;
  z-index: -1;
  transition: opacity 0.3s ease;
  opacity: 1;
}

/* 鼠标悬浮状态 */
.reward-button:hover {
  color: white;
}

.reward-button:hover::after {
  opacity: 0;
}

/* 可选：添加圆角 */
.reward-button,
.reward-button::before,
.reward-button::after {
  border-radius: 5px;
}

/* 代码块背景 */
.hljs {
  background: rgba(0, 0, 0, 0) !important;
}

/* 页脚版权 */
[data-theme="light"] .copyright {
  color: #333 !important;
}

/* 页脚自定义文字 */
.footer_custom_text {
  width: fit-content;
  margin: auto;
  background: var(--footer-custom-text-color);
  background-clip: text;
  -webkit-background-clip: text;
  background-size: auto;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
}

/* Markdown 强调 */
[data-theme="dark"] strong:not(.tk-nick) {
  text-decoration: underline wavy rgba(0, 245, 249, 0.5);
}
[data-theme="light"] strong:not(.tk-nick) {
  text-decoration: underline wavy rgba(0, 89, 255, 0.8);
}

/* Markdown Inline Code */
[data-theme="dark"] code:not(pre > code) {
  width: fit-content;
  margin: auto;
  background: linear-gradient(90deg, #00f0ff, #ff6ec4) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  background-size: auto;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
}

[data-theme="light"] code {
  width: fit-content;
  margin: auto;
  background: linear-gradient(90deg, #0040ff, #c30075) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  background-size: auto;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
}

/* Markdown 内背景图标 */
.svg-icon {
  /* 确保父元素（.python-icon）有定位，以便伪元素可以绝对定位 */
  position: relative;
  /* 文本的样式保持不变 */
  padding: 0 0.5em;
  border-radius: 0.2em;
  line-height: 1.5;
  font-weight: bold;
  /* 确保文本内容在伪元素之上，可选 */
  z-index: 1;
}

[data-theme="light"] .svg-icon {
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
}
[data-theme="dark"] .svg-icon {
  text-shadow: 0 0 4px rgba(255, 255, 255, 0.8),
    /* 浅色外发光 */ 0 0 4px rgba(0, 0, 0, 0.3); /* 深色边缘增强 */
}

.svg-icon::before {
  content: "";
  /* 伪元素绝对定位，脱离文档流 */
  position: absolute;
  /* 让伪元素居中显示 */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  /* 随意调整背景图的尺寸，这里是 2em x 2em */
  width: 2.5em;
  height: 2.5em;

  background-repeat: no-repeat;
  background-size: contain; /* 确保背景图完整显示在伪元素内 */
  background-position: center;
}

[data-theme="dark"] .python-icon::before {
  /* 设置背景图像，可以随意调整大小 */
  background-image: url("/img/svg_icons/python_line.min.svg");
}

[data-theme="light"] .python-icon::before {
  /* 设置背景图像，可以随意调整大小 */
  background-image: url("/img/svg_icons/python_color.min.svg");
}

[data-theme="light"] .julia-icon::before {
  /* 设置背景图像，可以随意调整大小 */
  background-image: url("/img/svg_icons/julia_color.min.svg");
}

[data-theme="dark"] .julia-icon::before {
  /* 设置背景图像，可以随意调整大小 */
  background-image: url("/img/svg_icons/julia_line.min.svg");
}

[data-theme="light"] .blender-icon::before {
  /* 设置背景图像，可以随意调整大小 */
  background-image: url("/img/svg_icons/blender_color.min.svg");
}

[data-theme="dark"] .blender-icon::before {
  /* 设置背景图像，可以随意调整大小 */
  background-image: url("/img/svg_icons/blender_line.min.svg");
}
