
  /* 紧凑扁平化网格布局 */
  .nav-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); /* 使用auto-fill让按钮真正缩小 */
    gap: 8px; /* 间距更小 */
    margin: 16px 0;
  }
  
  .nav-grid .nav-btn {
    height: 35px; /* 按钮高度更小 */
    font-size: 13px; /* 字体更小 */
    padding: 3px 6px; /* 内边距更小 */
  }
  
  .nav-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border-radius: 0; /* 无圆角 */
    text-decoration: none !important; /* 强制无下划线 */
    color: #22b14c !important; /* 字体绿色，强制优先 */
    font-weight: bold; /* 加粗 */
    text-align: center;
    box-shadow: none; /* 去除阴影，防止边框模糊 */
    border-width: 2px !important;
    border-style: solid !important;
    border-color: #d1d5db !important;
    transition: none; /* 去除动画 */
    font-family: 'Microsoft YaHei', '黑体', 'SimHei', Arial, sans-serif; /* 黑体 */
    min-width: 0; /* 允许更小宽度 */
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  
  .nav-btn:hover {
    box-shadow: none !important; /* 悬停时无阴影 */
    transform: none;
    border-color: #888 !important; /* 悬停时边框加深 */
    transition: none; /* 去除动画 */
    justify-content: center; /* 悬停时依然居中 */
    text-align: center;
    overflow: visible;
    white-space: normal;
    text-overflow: unset;
    color: #ff006a !important; /* 悬停时依然绿色 */
    text-decoration: none !important; /* 悬停时也无下划线 */
    background: #ffffff !important; /* 悬停时背景色不变 */
    border-width: 2px !important;
    border-style: solid !important;
  }
  
  /* 暗色模式适配 */
  @media (prefers-color-scheme: dark) {
    .nav-btn {
      background: #2a2a2a;
      color: #eee;
      border-color: #444c56; /* 暗色模式下更深的边框色 */
      border-width: 2px !important;
      border-style: solid !important;
    }
    
    .nav-btn:hover {
      background: #2a2a2a !important; /* 暗色模式下悬停背景色不变 */
      box-shadow: 0 3px 8px rgba(0,0,0,0.2);
      border-color: #b5bac1 !important; /* 暗色模式下悬停边框加深 */
      border-width: 2px !important;
      border-style: solid !important;
    }
  }

.nav-grid-l {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); /* 宽度自适应，最少2个 */
  gap: 16px;
  margin: 24px 0;
}

.nav-grid-l .nav-btn {
  height: 70px; /* 更高 */
  font-size: 20px; /* 字体更大 */
  padding: 12px 20px; /* 空间更充裕 */
}

.nav-grid-m {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); /* 宽度自适应，最少3个 */
  gap: 12px;
  margin: 20px 0;
}

.nav-grid-m .nav-btn {
  height: 55px; /* 中等高度 */
  font-size: 17px; /* 字体适中 */
  padding: 8px 14px;
}

.nav-grid-s {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); /* 宽度自适应，最少4个 */
  gap: 10px;
  margin: 16px 0;
}

.nav-grid-s .nav-btn {
  height: 38px; /* 紧凑高度 */
  font-size: 14px; /* 字体略小 */
  padding: 4px 8px;
}

.nav-group {
  position: relative;
  border: 2px solid #d1d5db;
  border-radius: 1px;
  margin: 24px 0;
  padding-top: 20px; /* 给标题留空间 */
  background: #fff;
}

.nav-group-title {
  position: absolute;
  top: -14px;
  left: 20px;
  background: #fff;
  padding: 0 14px;
  font-size: 16px;
  font-weight: bold;
  color: #22b14c;
  z-index: 1;
  line-height: 28px;
  border-radius: 6px 6px 0 0;
  box-shadow: 0 0 0 2px #fff; /* 遮住边框形成缺口 */
}

.nav-group > .nav-grid,
.nav-group > .nav-grid-m,
.nav-group > .nav-grid-l,
.nav-group > .nav-grid-s {
  padding-left: 8px;
  padding-right: 8px;
}

/* 版权栏样式 */
.copyright-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  text-align: center;
  font-size: 18px;
  padding: 4px 0 2px 0;
  z-index: 9999;
  pointer-events: none; /* 不影响点击 */
  user-select: none;
  letter-spacing: 2px;
}

/* 给正文底部留出空间，避免被版权栏遮挡 */
.copyright-bar-spacer {
  height: 100px;
  width: 100%;
}

/* 公告栏样式 */
.announcement-bar {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  width: 100vw;
  background: linear-gradient(90deg, #A8E6CF 0%, #D4FC79 100%); /* 马卡龙绿渐变 */
  color: #227755; /* 适配绿色的深色文字 */
  text-align: center;
  font-size: 18px;
  padding: 4px 0 2px 0;
  z-index: 1000;
  pointer-events: none;
  user-select: none;
  letter-spacing: 2px;
  font-weight: bold;
  border-radius: 0 0 12px 12px;
  box-shadow: 0 2px 12px 0 rgba(80,180,120,0.10);
  transition: box-shadow 0.3s, background 0.5s;
  animation: announcement-bar-pop 0.7s cubic-bezier(.68,-0.55,.27,1.55);
}

/* 公告栏emoji更大 */
.announcement-bar {
  line-height: 1.7;
}
.announcement-bar::first-letter {
  font-size: 1.5em;
}

@keyframes announcement-bar-pop {
  0% { transform: translateY(-40px) scale(0.95); opacity: 0; }
  80% { transform: translateY(4px) scale(1.03); opacity: 1; }
  100% { transform: translateY(0) scale(1); opacity: 1; }
}

/* 公告栏缓冲区，避免正文被遮挡 */
.announcement-bar-spacer {
  height: 50px;
  width: 100%;
}

/* 修正sidebar-toggle按钮位置，避免被公告栏遮挡 */
.sidebar-toggle {
  top: 50px !important;
}
.sidebar{
  top: 50px !important;
}
