/** Beacon taxonomy archives around OneNav's retained query and filter hooks. */

body.archive main.is_category .taxonomy-title {
  margin: 18px 0 20px !important;
}

body.archive main.is_category .taxonomy-head-title {
  margin: 0 0 8px;
  color: var(--bc-ink);
  font-family: var(--bc-font-sans);
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 500;
  letter-spacing: -.025em;
  line-height: 1.2;
}

body.archive main.is_category .taxonomy-head-count {
  display: inline-flex;
  min-height: 25px;
  align-items: center;
  padding: 0 8px;
  border: 1px solid var(--bc-hairline);
  border-radius: var(--bc-rounded-xs);
  background: transparent;
  color: var(--bc-body);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}

body.archive main.is_category .taxonomy-head-count .iconfont { color: var(--bc-body); }

body.archive main.is_category .taxonomy-head-desc {
  max-width: 720px;
  margin-top: 8px;
  color: var(--bc-body);
  font-size: 13px;
  line-height: 1.65;
}

body.archive main.is_category .taxonomy-head:not(.container) {
  margin-bottom: 20px;
}

body.archive main.is_category .taxonomy-head-body {
  position: relative;
  min-height: 150px;
  overflow: hidden;
  border: 1px solid var(--bc-surface-dark-soft);
  border-radius: var(--bc-rounded-sm);
  background: var(--bc-canvas-dark);
  color: var(--bc-on-dark);
  isolation: isolate;
}

body.archive main.is_category .taxonomy-head-bg,
body.archive main.is_category .taxonomy-head-img {
  position: absolute;
  z-index: -1;
  inset: 0;
}

body.archive main.is_category .taxonomy-head-img {
  background-position: center;
  background-size: cover;
  opacity: .38;
}

body.archive main.is_category .taxonomy-head-content {
  position: relative;
  display: flex;
  min-height: 150px;
  flex-direction: column;
  justify-content: center;
  padding: clamp(20px, 4vw, 36px) !important;
  background: linear-gradient(90deg, rgb(1 1 32 / 88%), rgb(1 1 32 / 40%));
}

body.archive main.is_category .taxonomy-head-content .taxonomy-head-title,
body.archive main.is_category .taxonomy-head-content .taxonomy-head-desc { color: var(--bc-on-dark); }

body.archive main.is_category .taxonomy-head-content .taxonomy-head-count {
  width: fit-content;
  border-color: rgb(255 255 255 / 28%);
  color: var(--bc-body-on-dark);
}

body.archive main.is_category .taxonomy-selects {
  display: grid;
  gap: 12px;
  margin: 0 0 20px;
  padding: 14px 16px;
  border: 1px solid var(--bc-hairline);
  border-radius: var(--bc-rounded-sm);
  background: var(--bc-canvas);
  box-shadow: none;
}

/* 当前层级这一行：单行横向滚动 */
body.archive main.is_category .taxonomy-selects > .cat-selects {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
  overflow-x: auto;
  padding: 2px 0;
  scrollbar-width: none;
}

/* 层级容器：主题会为每一层各输出一个 .cat-selects，纵向堆叠。
   层级只靠「字号 / 字重 / 颜色」区分，不加行分隔线、不做缩进（缩进会产生锯齿边，深色下像表格） */
body.archive main.is_category .taxonomy-selects > .cat-selects-sub {
  display: grid;
  gap: 2px;
  min-width: 0;
  overflow-x: visible;
  padding: 0;
  background: transparent;
}

body.archive main.is_category .cat-selects-sub > .cat-selects {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
  overflow-x: auto;
  padding: 1px 0;
  scrollbar-width: none;
  /* 父主题给每行加了白色 border-top、给容器加了深色底纹，深色下会变成"表格条纹"，这里清掉 */
  border-top: 0;
  background: transparent;
}

/* 上下文层（一级 + 各祖先层）：统一小一号、常规字重、次要色。
   不靠降低透明度做层次——那会把对比度压到 2.5:1，低于无障碍底线 */
/* 父主题的 .text-sm 用 !important 定了 14px，这里只能同级覆盖（作用域仅限分类导航） */
body.archive main.is_category .taxonomy-selects .cat-selects .cat-select {
  font-size: 12.5px !important;
  font-weight: 400;
  color: var(--bc-body);
}

/* 当前层级：大一号 + 加粗 + 深色，上方一条发丝线与上下文分开 */
body.archive main.is_category .cat-selects-sub > .cat-selects:last-child {
  margin-top: 6px;
  padding-top: 8px;
  border-top: 1px solid var(--bc-hairline);
}

html.io-black-mode body.archive main.is_category .cat-selects-sub > .cat-selects:last-child {
  border-top-color: rgba(255, 255, 255, 0.16);
}

body.archive main.is_category .taxonomy-selects .cat-selects-sub > .cat-selects:last-child .cat-select {
  font-size: 14px !important;
  font-weight: 500;
}

/* 只改未选中项的文字色；选中项保持「黑底白字」 */
body.archive main.is_category .taxonomy-selects .cat-selects-sub > .cat-selects:last-child .cat-select:not(.active) {
  color: var(--bc-ink);
}

body.archive main.is_category .cat-selects-sub > .cat-selects::-webkit-scrollbar { display: none; }

body.archive main.is_category .taxonomy-selects > .cat-selects::-webkit-scrollbar,
body.archive main.is_category .list-selects::-webkit-scrollbar { display: none; }

body.archive main.is_category .cat-select,
body.archive main.is_category .list-select {
  display: inline-flex;
  min-height: 34px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: var(--bc-rounded-sm);
  background: transparent;
  color: var(--bc-body);
  font-size: 12px;
  line-height: 1.2;
  text-decoration: none;
  transition: color 140ms ease, background-color 140ms ease, border-color 140ms ease;
}

body.archive main.is_category .cat-select:hover,
body.archive main.is_category .list-select:hover {
  border-color: var(--bc-hairline);
  background: var(--bc-canvas);
  color: var(--bc-ink);
}

body.archive main.is_category .cat-select.active,
body.archive main.is_category .list-select.active {
  border-color: var(--bc-ink);
  background: var(--bc-ink);
  color: var(--bc-on-dark);
}

body.archive main.is_category .taxonomy-selects > .d-flex {
  min-width: 0;
  gap: 10px;
  color: var(--bc-body);
  font-size: 11px;
}

body.archive main.is_category .list-select-title {
  flex: 0 0 auto;
  color: var(--bc-body);
  font-family: var(--bc-font-mono);
  font-size: 10px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

body.archive main.is_category .list-select-line { display: none; }

body.archive main.is_category .list-selects {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: none;
}

body.archive main.is_category .posts-nav {
  display: flex;
  justify-content: center;
  margin: 20px 0 36px !important;
}

body.archive main.is_category .posts-nav a,
body.archive main.is_category .posts-nav button,
body.archive main.is_category .posts-nav .page-numbers {
  min-height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--bc-hairline);
  border-radius: var(--bc-rounded-sm);
  background: var(--bc-canvas);
  color: var(--bc-ink);
  text-decoration: none;
}

body.archive main.is_category .posts-nav .current,
body.archive main.is_category .posts-nav a:hover {
  border-color: var(--bc-ink);
  background: var(--bc-ink);
  color: var(--bc-on-dark);
}

body.archive main.is_category .taxonomy-selects a:focus-visible,
body.archive main.is_category .posts-nav a:focus-visible,
body.archive main.is_category .posts-nav button:focus-visible {
  outline: 2px solid var(--bc-semantic-color-border-focus);
  outline-offset: 3px;
}

html.io-black-mode body.archive main.is_category .taxonomy-head-title,
html.io-black-mode body.archive main.is_category .taxonomy-head-content .taxonomy-head-title { color: var(--bc-on-dark); }

html.io-black-mode body.archive main.is_category .taxonomy-head-count {
  border-color: var(--bc-surface-dark-soft);
  background: transparent;
  color: var(--bc-body-on-dark);
}

html.io-black-mode body.archive main.is_category .taxonomy-head-desc { color: var(--bc-body-on-dark); }

html.io-black-mode body.archive main.is_category .taxonomy-selects {
  border-color: var(--bc-surface-dark-soft);
  background: var(--bc-canvas-dark);
}

html.io-black-mode body.archive main.is_category .cat-select,
html.io-black-mode body.archive main.is_category .list-select { color: var(--bc-body-on-dark); }

html.io-black-mode body.archive main.is_category .cat-select:hover,
html.io-black-mode body.archive main.is_category .list-select:hover {
  border-color: var(--bc-surface-dark-soft);
  background: var(--bc-surface-dark-soft);
  color: var(--bc-on-dark);
}

html.io-black-mode body.archive main.is_category .cat-select.active,
html.io-black-mode body.archive main.is_category .list-select.active {
  border-color: var(--bc-on-dark);
  background: var(--bc-on-dark);
  color: var(--bc-ink) !important;
}

html.io-black-mode body.archive main.is_category .taxonomy-selects > .d-flex,
html.io-black-mode body.archive main.is_category .list-select-title { color: var(--bc-body-on-dark); }

html.io-black-mode body.archive main.is_category .posts-nav a,
html.io-black-mode body.archive main.is_category .posts-nav button,
html.io-black-mode body.archive main.is_category .posts-nav .page-numbers {
  border-color: var(--bc-surface-dark-soft);
  background: var(--bc-canvas-dark);
  color: var(--bc-on-dark);
}

html.io-black-mode body.archive main.is_category .posts-nav .current,
html.io-black-mode body.archive main.is_category .posts-nav a:hover {
  border-color: var(--bc-on-dark);
  background: var(--bc-on-dark);
  color: var(--bc-ink);
}

@media (max-width: 600px) {
  body.archive main.is_category .taxonomy-title { margin: 14px 0 16px !important; }
  body.archive main.is_category .taxonomy-selects { gap: 8px; margin-bottom: 16px; padding: 10px; }
  body.archive main.is_category .taxonomy-selects > .d-flex { align-items: flex-start; flex-direction: column; gap: 4px; }
  body.archive main.is_category .taxonomy-head-body,
  body.archive main.is_category .taxonomy-head-content { min-height: 130px; }
}

@media (prefers-reduced-motion: reduce) {
  body.archive main.is_category .cat-select,
  body.archive main.is_category .list-select { transition: none; }
}
