/* taxonomy.css — списки фандомов и меток (token-only) */

main.taxonomy{
  max-width:1100px;
  margin:0 auto;
}

/* Заголовок + поиск */
.tx-head{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin:12px 0;
}
.tx-title{ margin:0; }

/* Поиск */
.tx-search{
  flex:1 1 320px;
  display:flex;
  gap:8px;
}
.tx-search input{
  flex:1 1 auto;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface);
  color:var(--ink, var(--text, #111827));
}
.tx-search input::placeholder{
  color:var(--muted);
}

/* Сетка: 1 колонка на мобилке, 2 — на широких экранах */
.tx-list{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:12px;
}

@media (min-width: 720px){
  .tx-list{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}

/* Плитка элемента */
.tx-item{
  display:flex;
  flex-direction:column;      /* вертикально: заголовок сверху, описание ниже */
  align-items:stretch;
  gap:4px;

  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface-2);
  color:var(--ink, var(--text, #111827));
  box-shadow:var(--shadow-xs, 0 1px 2px rgba(15,23,42,.24));
}

/* Левая часть плитки (название + описание) */
.tx-item-main{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}

/* Название метки/фандома */
.tx-item a{
  display:inline-block;
  text-decoration:none;
  font-weight:800;
  color:inherit;       /* берём цвет из карточки/темы */
  word-break:break-word;
}
.tx-item a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Описание (полный текст, без обрезания) */
.tx-desc,
.tx-item-desc,
.tx-item .tx-description{
  font-size:.85rem;
  line-height:1.4;
  color:var(--muted);
  margin-top:4px;
  word-break:break-word;
  overflow-wrap:anywhere;

  /* никаких line-clamp — показываем текст полностью */
  display:block;
  overflow:visible;
}

/* стилистика для "нет описания" */
.tx-item-desc--empty{
  font-style:italic;
  opacity:.85;
}

.tx-item-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
}

/* название тега / фэндома */
.tx-item-title{
  font-weight:800;
  text-decoration:none;
  color:var(--ink, var(--text, #111827));
}
.tx-item-title:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Счётчик */
.tx-count{
  font-size:.75rem;
  font-weight:800;
  padding:4px 8px;
  border-radius:999px;
  background:var(--surface);
  border:1px solid var(--border);
  color:var(--muted);
  flex:0 0 auto;
  align-self:flex-start;
}

/* Пусто */
.empty{
  border:1px dashed var(--border);
  padding:16px;
  text-align:center;
  border-radius:12px;
  color:var(--muted);
  background:var(--surface-2);
}