/*!
 * WebStack 风格网址导航（B2 子主题）
 * ------------------------------------------------------------
 * 仅作用于 /links 页面中由 archive-links.php 生成的 .ws-nav 区域。
 * 不引入 Bootstrap / FontAwesome / WebStack app.css，避免污染 B2 其它页面。
 * 视觉参数参考 WebStack-Guns 的 nav.css，并按 B2 现有的 1200px 容器做适配。
 * 修改时间：2026-10-26
 */

/* ========== 1. 主题变量 ========== */
.ws-nav {
  --ws-accent: #e8930c;
  --ws-accent-rgb: 232, 147, 12;
  --ws-accent-strong: #8a5800;

  --ws-text: #333333;
  --ws-heading: #222222;
  --ws-muted: #666c73;

  --ws-surface: #ffffff;
  --ws-surface-2: #f7f8fa;
  --ws-input-bg: #ffffff;
  --ws-icon-bg: #ffffff;
  --ws-border: #dfe3e8;
  --ws-border-soft: rgba(16, 24, 40, 0.09);
  --ws-hover-bg: rgba(16, 24, 40, 0.05);
  --ws-active-bg: rgba(var(--ws-accent-rgb), 0.14);

  --ws-shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.06);
  --ws-shadow-hover: 0 8px 24px rgba(16, 24, 40, 0.1), 0 2px 6px rgba(16, 24, 40, 0.06);
  --ws-radius: 12px;
  --ws-radius-sm: 9px;
  --ws-transition: 0.25s ease;

  --ws-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
    "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;

  color: var(--ws-text);
  font-family: var(--ws-font);
  font-size: 14px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html[data-ws-nav-theme="dark"] .ws-nav {
  --ws-accent: #f5b544;
  --ws-accent-rgb: 245, 181, 68;
  --ws-accent-strong: #f5b544;

  --ws-text: #e8e9ec;
  --ws-heading: #f5f6f8;
  --ws-muted: #a8adb7;

  --ws-surface: #1e2128;
  --ws-surface-2: #1b1d23;
  --ws-input-bg: #24272e;
  --ws-icon-bg: #ffffff;
  --ws-border: rgba(255, 255, 255, 0.1);
  --ws-border-soft: rgba(255, 255, 255, 0.07);
  --ws-hover-bg: rgba(255, 255, 255, 0.06);
  --ws-active-bg: rgba(var(--ws-accent-rgb), 0.14);

  --ws-shadow: none;
  --ws-shadow-hover: 0 8px 24px rgba(0, 0, 0, 0.5);
}

.ws-nav,
.ws-nav * {
  box-sizing: border-box;
}

.ws-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ws-nav a {
  text-decoration: none;
}

.ws-nav [hidden] {
  display: none !important;
}

.ws-nav [v-cloak] {
  display: none !important;
}

.ws-nav .ws-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ========== 2. 整体布局：左侧分类栏 + 右侧内容 ========== */
/* B2 父主题给 .home-links-content 设了 display:flex，这里需要更高特异性覆盖 */
.ws-nav.home-links-content {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  width: 100%;
}

.ws-main {
  min-width: 0;
}

/* ========== 3. 左侧分类栏 ========== */
.ws-sidebar {
  position: sticky;
  top: var(--ws-header-offset, 78px);
  align-self: start;
  max-height: calc(100vh - var(--ws-header-offset, 78px) - 18px);
  overflow: auto;
  padding: 14px 12px;
  background: var(--ws-surface-2);
  border: 1px solid var(--ws-border-soft);
  border-radius: 14px;
  box-shadow: var(--ws-shadow);
  scrollbar-width: thin;
}

.ws-sidebar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 8px 10px;
}

.ws-sidebar-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--ws-muted);
}

.ws-sidebar-nav a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  margin: 1px 0;
  border-radius: 8px;
  color: var(--ws-muted);
  font-size: 13.5px;
  line-height: 1.35;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.ws-sidebar-nav a:hover {
  background: var(--ws-hover-bg);
  color: var(--ws-text);
}

.ws-sidebar-nav a > i {
  flex: 0 0 auto;
  color: inherit;
  font-size: 13px;
  opacity: 0.7;
}

.ws-sidebar-nav li.active > a {
  background: var(--ws-active-bg);
  color: var(--ws-accent-strong);
  font-weight: 600;
}

.ws-sidebar-nav li.active > a > i {
  opacity: 1;
}

.ws-cat-name {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* 分类计数：信息而非装饰，不压透明度 */
.ws-menu-count {
  flex: 0 0 auto;
  margin-left: auto;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--ws-hover-bg);
  color: inherit;
  font-size: 11px;
  line-height: 18px;
  font-variant-numeric: tabular-nums;
}

.ws-sidebar-close {
  display: none;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 1px solid var(--ws-border-soft);
  border-radius: 50%;
  background: transparent;
  color: var(--ws-muted);
  font-size: 16px;
  cursor: pointer;
}

.ws-sidebar-overlay {
  display: none;
}

/* ========== 4. 顶部工具条：标题 / 搜索 / 主题 / 入驻 ========== */
.ws-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  padding: 14px 16px;
  margin-bottom: 18px;
  background: var(--ws-surface);
  border: 1px solid var(--ws-border-soft);
  border-radius: 14px;
  box-shadow: var(--ws-shadow);
}

.ws-toolbar-left {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.ws-toolbar-heading {
  min-width: 0;
}

/* 覆盖 B2 .links-home h1 的旧样式（右对齐 / 32px 右边距） */
.ws-nav .ws-toolbar-title {
  margin: 0;
  padding: 0;
  text-align: left;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ws-heading);
}

.ws-toolbar-sub {
  margin: 3px 0 0;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--ws-muted);
}

.ws-toolbar-right {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

.ws-menu-btn {
  display: none;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid var(--ws-border-soft);
  border-radius: 9px;
  background: transparent;
  color: var(--ws-text);
  font-size: 18px;
  cursor: pointer;
}

/* 搜索框 */
.ws-search-wrap {
  position: relative;
  display: flex;
  align-items: center;
}

.ws-search-icon {
  position: absolute;
  left: 11px;
  color: var(--ws-muted);
  font-size: 13px;
  pointer-events: none;
}

.ws-nav .ws-search {
  width: 250px;
  max-width: 52vw;
  height: 34px;
  padding: 0 32px;
  border: 1px solid var(--ws-border);
  border-radius: 10px;
  background: var(--ws-input-bg);
  color: var(--ws-text);
  font-family: var(--ws-font);
  font-size: 13.5px;
  line-height: 34px;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.ws-nav .ws-search::placeholder {
  color: var(--ws-muted);
  opacity: 0.9;
}

.ws-nav .ws-search:focus {
  border-color: var(--ws-accent);
  box-shadow: 0 0 0 3px rgba(var(--ws-accent-rgb), 0.22);
}

.ws-nav .ws-search:focus-visible {
  outline: none;
}

.ws-nav .ws-search::-webkit-search-cancel-button,
.ws-nav .ws-search::-webkit-search-decoration {
  display: none;
  -webkit-appearance: none;
}

.ws-search-clear {
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  padding: 2px 6px;
  border: 0;
  background: transparent;
  color: var(--ws-muted);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
}

.ws-search-clear:hover {
  color: var(--ws-text);
}

/* 主题切换 */
.ws-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid var(--ws-border-soft);
  border-radius: 50%;
  background: var(--ws-surface);
  color: var(--ws-muted);
  cursor: pointer;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.ws-theme-toggle:hover {
  color: var(--ws-accent-strong);
  border-color: var(--ws-accent);
}

.ws-theme-toggle svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ws-icon-sun {
  display: none;
}

html[data-ws-nav-theme="dark"] .ws-icon-moon {
  display: none;
}

html[data-ws-nav-theme="dark"] .ws-icon-sun {
  display: block;
}

/* 申请入驻 */
.ws-join a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(var(--ws-accent-rgb), 0.35);
  border-radius: 10px;
  background: rgba(var(--ws-accent-rgb), 0.1);
  color: var(--ws-accent-strong);
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.ws-join a:hover {
  background: rgba(var(--ws-accent-rgb), 0.18);
  border-color: var(--ws-accent);
}

.ws-join a > i {
  font-size: 14px;
}

/* ========== 5. 分区与标题 ========== */
.ws-section {
  margin-bottom: 34px;
}

.ws-section:last-of-type {
  margin-bottom: 6px;
}

.ws-section-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  margin-bottom: 14px;
}

.ws-section-title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--ws-heading);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
  scroll-margin-top: 88px;
}

.ws-section-title > i {
  color: var(--ws-accent);
  font-size: 14px;
}

.ws-section-extra {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.ws-child-cats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ws-child-cat {
  display: inline-flex;
  align-items: center;
  padding: 2px 9px;
  border: 1px solid var(--ws-border-soft);
  border-radius: 999px;
  background: var(--ws-surface);
  color: var(--ws-muted);
  font-size: 12px;
  line-height: 1.7;
  transition: color 0.15s ease, border-color 0.15s ease;
}

.ws-child-cat:hover {
  color: var(--ws-accent-strong);
  border-color: rgba(var(--ws-accent-rgb), 0.5);
}

.ws-more {
  display: inline-flex;
  align-items: center;
  gap: 1px;
  color: var(--ws-muted);
  font-size: 12.5px;
  line-height: 1.7;
}

.ws-more:hover {
  color: var(--ws-accent-strong);
}

.ws-more > i {
  font-size: 15px;
}

/* ========== 6. 卡片网格 ========== */
.ws-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 14px;
}

.ws-card-wrap {
  position: relative;
  min-width: 0;
}

.ws-card-wrap:hover .ws-card {
  transform: translateY(-2px);
  box-shadow: var(--ws-shadow-hover);
  border-color: rgba(var(--ws-accent-rgb), 0.45);
}

.ws-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-height: 88px;
  padding: 14px 16px;
  background: var(--ws-surface);
  border: 1px solid transparent;
  border-radius: var(--ws-radius);
  box-shadow: var(--ws-shadow);
  cursor: pointer;
  transition: transform var(--ws-transition), box-shadow var(--ws-transition),
    border-color var(--ws-transition);
}

.ws-card:focus-within {
  outline: 3px solid var(--ws-accent);
  outline-offset: 2px;
}

/* 整卡点击层：避免 <a> 嵌套 <a>，同时保留站长链接可独立点击 */
.ws-card-hit {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  border-radius: inherit;
}

.ws-card-hit:focus-visible {
  outline: none;
}

.ws-card-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  padding: 3px;
  border-radius: var(--ws-radius-sm);
  background: var(--ws-icon-bg);
  object-fit: contain;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.06);
}

html[data-ws-nav-theme="dark"] .ws-card-icon {
  box-shadow: none;
}

.ws-card-icon.ws-card-icon-fallback {
  padding: 1px;
}

.ws-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  /* 让整卡点击层接收点击；站长链接单独恢复可点击 */
  pointer-events: none;
}

.ws-card-name {
  display: block;
  overflow: hidden;
  color: var(--ws-heading);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.ws-has-like .ws-card-name {
  padding-right: 34px;
}

.ws-card-desc {
  display: block;
  overflow: hidden;
  margin: 0;
  color: var(--ws-muted);
  font-size: 12.5px;
  line-height: 1.55;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.ws-card-domain {
  color: var(--ws-text);
  opacity: 0.55;
}

.ws-card-domain::after {
  content: " · ";
  opacity: 0.6;
}

.ws-card-author {
  display: block;
  overflow: hidden;
  color: var(--ws-muted);
  font-size: 11.5px;
  line-height: 1.5;
  white-space: nowrap;
  text-overflow: ellipsis;
  opacity: 0.9;
}

.ws-card-author a {
  position: relative;
  z-index: 2;
  /* 恢复站长链接的点击能力，位于整卡点击层之上 */
  pointer-events: auto;
  color: inherit;
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
}

.ws-card-author a:hover {
  color: var(--ws-accent-strong);
}

/* 点赞：保留 B2 原有 @click 行为，只改外观 */
.ws-like {
  position: absolute;
  top: 9px;
  right: 9px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 5px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--ws-muted);
  font-family: var(--ws-font);
  font-size: 11.5px;
  line-height: 1.4;
  cursor: pointer;
  transition: color 0.15s ease, background-color 0.15s ease;
}

.ws-like:hover {
  background: var(--ws-active-bg);
  color: var(--ws-accent-strong);
}

.ws-like > i {
  font-size: 13px;
}

.ws-like > b {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

/* ========== 7. 搜索结果条 / 空状态 ========== */
.ws-results-bar {
  margin: 0 0 16px;
}

.ws-results-count {
  margin: 0 0 10px;
  color: var(--ws-muted);
  font-size: 13px;
  line-height: 1.5;
}

.ws-results-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ws-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 11px;
  border: 1px solid var(--ws-border-soft);
  border-radius: 999px;
  background: var(--ws-surface);
  color: var(--ws-muted);
  font-family: var(--ws-font);
  font-size: 12.5px;
  line-height: 1.6;
  cursor: pointer;
  transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
}

.ws-chip:hover {
  color: var(--ws-text);
  border-color: rgba(var(--ws-accent-rgb), 0.5);
}

.ws-chip.is-active {
  background: var(--ws-accent);
  border-color: var(--ws-accent);
  color: #ffffff;
  font-weight: 600;
}

html[data-ws-nav-theme="dark"] .ws-chip.is-active {
  color: #1a1200;
}

.ws-chip-n {
  font-size: 11.5px;
  opacity: 0.75;
  font-variant-numeric: tabular-nums;
}

.ws-no-result {
  padding: 56px 20px;
  color: var(--ws-muted);
  font-size: 14px;
  text-align: center;
}

.ws-hidden {
  display: none !important;
}

/* ========== 8. 检索态：分区消融为一张扁平结果网格 ========== */
#ws-main.ws-searching {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 14px;
  align-items: start;
}

#ws-main.ws-searching > .ws-toolbar,
#ws-main.ws-searching > .ws-results-bar,
#ws-main.ws-searching > .ws-no-result {
  grid-column: 1 / -1;
  margin-left: 0;
  margin-right: 0;
}

#ws-main.ws-searching > .ws-toolbar {
  margin-bottom: 18px;
}

#ws-main.ws-searching .ws-section,
#ws-main.ws-searching .ws-grid {
  display: contents;
}

#ws-main.ws-searching .ws-section-head {
  display: none;
}

/* ========== 9. 响应式 ========== */
@media (max-width: 991px) {
  .ws-nav.home-links-content {
    display: block;
  }

  .ws-menu-btn,
  .ws-sidebar-close {
    display: inline-flex;
  }

  .ws-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    bottom: auto;
    z-index: 10001;
    width: 300px;
    max-width: 84vw;
    height: 100vh;
    height: 100dvh;
    max-height: none;
    padding: 18px 14px;
    border-radius: 0 14px 14px 0;
    transform: translateX(-105%);
    visibility: hidden;
    transition: transform 0.28s ease, visibility 0s linear 0.28s;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.22);
  }

  .ws-nav.ws-sidebar-open .ws-sidebar {
    transform: translateX(0);
    visibility: visible;
    transition: transform 0.28s ease;
  }

  .ws-sidebar-overlay {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10000;
    background: rgba(15, 20, 28, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, visibility 0.25s ease;
  }

  .ws-nav.ws-sidebar-open .ws-sidebar-overlay {
    opacity: 1;
    visibility: visible;
  }

  .ws-sidebar-nav a {
    padding: 11px 10px;
    font-size: 14px;
  }
}

@media (min-width: 992px) {
  .ws-menu-btn,
  .ws-sidebar-close {
    display: none;
  }

  .ws-sidebar-overlay {
    display: none;
  }
}

@media (max-width: 768px) {
  .ws-nav.home-links-content {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 640px) {
  .ws-toolbar {
    padding: 12px;
  }

  .ws-nav .ws-toolbar-title {
    font-size: 17px;
  }

  .ws-toolbar-right {
    width: 100%;
    gap: 8px;
    justify-content: flex-end;
  }

  .ws-search-wrap {
    flex: 1 1 100%;
    min-width: 0;
  }

  .ws-nav .ws-search {
    width: 100%;
    max-width: none;
  }

  .ws-join {
    margin-left: 0;
  }

  .ws-grid,
  #ws-main.ws-searching {
    grid-template-columns: 1fr;
  }
}

/* ========== 10. 可访问性与动效 ========== */
.ws-nav a:focus-visible,
.ws-nav button:focus-visible,
.ws-nav input:focus-visible {
  outline: 3px solid var(--ws-accent);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  .ws-nav .ws-card,
  .ws-nav .ws-sidebar,
  .ws-nav .ws-sidebar-overlay,
  .ws-nav .ws-theme-toggle,
  .ws-nav .ws-search {
    transition: none !important;
  }

  .ws-nav .ws-card-wrap:hover .ws-card {
    transform: none !important;
  }
}

/* ========== 11. 导航页整页底色 / B2 外壳明暗适配 ========== */
/* 只在 /links 页生效：让内容区变成 WebStack 的浅灰画布，并隐藏 B2 背景图 */
body.b2child-ws-nav-page {
  background-color: #eef1f5 !important;
  background-image: none !important;
}

body.b2child-ws-nav-page .b2-page-bg {
  display: none !important;
}

body.b2child-ws-nav-page .site-content {
  background-color: #eef1f5;
}

/* 浅色：B2 首页可能把头部做成透明/毛玻璃，导航页改用实色白底更清晰 */
body.b2child-ws-nav-page .site-header.social-top,
body.b2child-ws-nav-page .site-header.social-top .header-banner,
body.b2child-ws-nav-page .site-header.social-top .header {
  background-color: #ffffff !important;
}

body.b2child-ws-nav-page .site-header.social-top .header {
  box-shadow: 0 2px 10px rgba(16, 24, 40, 0.05);
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* 深色：整页画布 + B2 头部 */
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page {
  background-color: #16181d !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-content {
  background-color: #16181d !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-header.social-top,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-header.social-top .header-banner {
  background-color: #1b1d23 !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-header.social-top .header,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-header.social-top .site.up .header {
  background-color: #1b1d23 !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .header-banner .ym-menu a,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .header-banner,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .social-top .site-title,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .top-search-button button,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .top-search input,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .login-button .b2-account-circle-line {
  color: #e8e9ec !important;
  fill: #e8e9ec !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .header-banner-left .menu li a,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .header-banner-left .menu li.current-menu-item a,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .social-top .top-menu ul li.depth-0 > a {
  color: #e8e9ec !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .top-search input::placeholder {
  color: #a8adb7 !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .top-search form {
  background-color: rgba(255, 255, 255, 0.08) !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .top-search-select {
  border-right-color: rgba(232, 233, 236, 0.3) !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .header .button,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .header .login-button button {
  border-color: rgba(232, 233, 236, 0.35) !important;
  color: #e8e9ec !important;
  background-color: transparent !important;
}

/* 深色头部下给深色 logo 加白色底衬，保留品牌色而不是反相 */
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-header .header-logo {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  padding: 6px 10px !important;
  border-radius: 10px;
  background: #ffffff;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-header .header-logo img {
  width: auto;
  max-height: 30px;
}

/* 如果站点使用文字 logo，白底衬上必须用深色字 */
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-header .header-logo .site-title {
  color: #121212 !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .social-top .menu-icon .line-1,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .social-top .menu-icon .line-2,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .social-top .menu-icon .line-3 {
  background-color: #e8e9ec !important;
}

/* 深色：B2 页脚 */
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-footer,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-footer-nav {
  background-color: #1b1d23 !important;
  color: #a8adb7 !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-footer a,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-footer-nav a,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .footer-bottom,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .copyright,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .beian {
  color: #a8adb7 !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-footer a:hover,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .site-footer-nav a:hover {
  color: #f5b544 !important;
}

/* 深色：B2 移动端底部菜单 */
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .mobile-footer-menu {
  background-color: #1b1d23 !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .mobile-footer-menu a,
html[data-ws-nav-theme="dark"] body.b2child-ws-nav-page .mobile-footer-menu button {
  color: #e8e9ec !important;
}
