/* 💬 Войс-Торрент: текстовые каналы в боковой панели, ⚙ настройки сервера, 🌐 каталог общедоступных (textchans.js) */
.tc-list { margin-bottom:6px; }
.tc-item .tk-ch-btn { gap:8px; }
.tc-ic { width:18px; flex:0 0 18px; text-align:center; color:var(--text2); font-weight:700; }
/* открытый канал — подсветка всей строки (вместе с «⋯»), не зелёная «я в этом голосовом» */
.tk-ch.tc-item.mine .tk-ch-row { background:color-mix(in srgb, var(--text) 8%, transparent); }
.tc-item.mine .tk-ch-btn { color:var(--text); }
.tc-item.unread .tk-ch-name { color:var(--text); font-weight:700; }
/* место под счётчик есть всегда — строка не прыгает */
.tc-un { min-width:22px; height:18px; margin-left:auto; padding:0 6px; border-radius:9px; font-size:11px; line-height:18px; text-align:center; font-weight:700; color:#fff; background:var(--bad); visibility:hidden; box-sizing:border-box; }
.tc-item.unread .tc-un { visibility:visible; }
.tc-un.dot { min-width:8px; width:8px; height:8px; padding:0; background:var(--text); }
.tc-more { opacity:.7; }
.tm-item .tc-flip { transform:rotate(180deg); }   /* «Выше» — перевёрнутая стрелка «Ниже» */
.tc-more:hover, .tc-more:focus-visible { opacity:1; }
.tc-mode { margin-left:8px; padding:2px 8px; border-radius:999px; font-size:12px; white-space:nowrap; background:var(--chip, var(--hover)); color:var(--text2); }
.tc-role { margin-left:4px; font-size:12px; line-height:1; }
/* ⭐ в меню участника — вместо значка-иконки, той же ширины */
.tk-mn-own .btn .tc-emo { display:inline-flex; align-items:center; justify-content:center; flex:none; font-size:13px; line-height:1; }
/* ⚙ настройки сервера */
.tc-dlg h2 { margin:0 0 10px; }
.tc-sec { border-top:1px solid var(--line); padding:12px 0 4px; }
.tc-sec h3 { font-size:15px; margin:0 0 6px; }
.tc-note { font-size:13px; color:var(--text2); margin:0 0 10px; }
.tc-chk { display:flex; align-items:center; gap:8px; margin:0 0 10px; cursor:pointer; }
.tc-lbl { display:block; font-size:13px; color:var(--text2); margin:0 0 4px; }
#tcPubDesc { width:100%; box-sizing:border-box; margin:0 0 10px; }
.tc-bans { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; max-height:260px; min-height:44px; overflow:auto; scrollbar-gutter:stable; }
.tc-ban-row { display:flex; align-items:center; gap:8px; padding:6px 8px; border:1px solid var(--line); border-radius:10px; }
.tc-ban-n { font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tc-ban-row small { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tc-empty { color:var(--text2); font-size:13px; padding:8px 0; }
.tc-dlg-b { display:flex; justify-content:flex-end; margin-top:12px; }
/* 🌐 каталог на главной — карточки постоянной высоты */
.tc-pub { width:100%; max-width:720px; margin:0 auto 18px; text-align:left; }
.tc-pub h2 { font-size:13px; text-transform:uppercase; letter-spacing:.06em; color:var(--text2); margin:0 0 8px 4px; }
.tc-pub-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:10px; }
.tc-card { height:148px; box-sizing:border-box; display:flex; flex-direction:column; gap:6px; padding:12px 14px; border:1px solid var(--line); border-radius:14px; background:var(--card); }
.tc-card-t { display:flex; min-width:0; }
.tc-card-n { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; }
.tc-card-d { margin:0; flex:none; font-size:13px; line-height:1.45; color:var(--text2); overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow-wrap:anywhere; }
.tc-card-f { margin-top:auto; display:flex; align-items:center; gap:10px; font-size:12px; color:var(--text2); white-space:nowrap; }
.tc-go { margin-left:auto; padding:6px 14px; }
@media (max-width: 760px) {
  .tc-pub-list { grid-template-columns:1fr; }
  .tc-card { height:140px; }
  .tc-more { opacity:1; }
}
