/* ============================================================================
   forum-skin.css — адаптация форума (IPB 3.4.6) под стиль портала + мобильный вид
   ----------------------------------------------------------------------------
   Подключается ТОЛЬКО скином форума (skin_global.php). Портал этот файл не грузит,
   поэтому портальные страницы он не трогает. Архитектура движка форума не меняется —
   это чистый CSS-слой поверх готовой разметки IPB.

   Всё заскоуплено под #ipboard_body (id <body> форума) — двойная страховка.
   Палитра и шрифты совпадают с unified-header.css (единая экосистема).

   Структура:
     1) Переменные (палитра портала)
     2) Резиновые контейнеры (убираем фиксированную ширину 980px)
     3) Тёмная тема контента (карточки, шапки разделов, строки, ссылки)
     4) Формы/кнопки/поля ввода
     5) Мобильная адаптация (<=768px и <=480px)
   ============================================================================ */

#ipboard_body {
  /* подмножество :root портала, что нужно контенту форума */
  --xf-page:        #060a14;
  --xf-surface:     #0c1322;   /* карточка/бокс */
  --xf-surface-2:   #0f1828;   /* строка ховер / заголовок-бар */
  --xf-surface-3:   #111c30;   /* поле ввода */
  --xf-border:      #162035;
  --xf-border-lt:   #1e2d4a;
  --xf-text:        #e8ecf2;
  --xf-text-2:      #a4b3c8;   /* вторичный */
  --xf-text-muted:  #9aa6bd;   /* приглушённый (даты, счётчики) */
  --xf-orange:      #e88420;
  --xf-orange-hi:   #f59a3e;
  --xf-radius:      8px;
  --xf-radius-sm:   6px;
  --xf-gutter:      32px;      /* единый боковой отступ — РОВНО как у портала (логотип/контент/подвал на одной линии). Меняется в одном месте. */
  --xf-on-orange:   #1a0f00;   /* текст на оранжевых кнопках/пагинации */
  --xf-fh: 'Rajdhani', sans-serif;
  --xf-fb: 'Source Sans 3', sans-serif;
}

/* ===========================================================================
   2) РЕЗИНОВЫЕ КОНТЕЙНЕРЫ — главное для мобильного.
   IPB задаёт фиксированные 980px. Делаем их резиновыми + контейнер как у портала.
   =========================================================================== */
/* ВСЕ обёртки контента прозрачные — фон даёт тёмный body (#060a14, как на портале).
   Раньше #content имел белый фон (rgb(255,255,255)) на всю высоту → «белая подложка». */
#ipboard_body #ipbwrapper,
#ipboard_body #content,
#ipboard_body #ipbwrapper_top,
#ipboard_body #wrapper,
#ipboard_body #container,
#ipboard_body #main_content {
  background: transparent !important;
  color: var(--xf-text);
}
#ipboard_body #ipbwrapper {
  font-family: var(--xf-fb);
  /* НЕ ставить overflow-x:hidden здесь: по спецификации это делает overflow-y:auto,
     и обёртка превращается во внутренний скролл-контейнер (страница «не двигается,
     едет только середина между шапкой и подвалом»). Горизонт. дрожь убираем выравниванием. */
}
/* фон страницы форума = порталу (#060a14), бесшовный переход.
   html НЕ трогаем здесь (инвариант «всё под #ipboard_body»); html-фон ставит
   критический инлайн-стиль в skin_global.php (до внешнего CSS). */
#ipboard_body { background: var(--xf-page) !important; }
/* Сглаживание шрифта — ТОЧНО как на портале (home.css: -webkit-font-smoothing:antialiased).
   Без него движок форума рисует текст «жирнее» при том же шрифте и весе → ник выглядел толще. */
#ipboard_body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
#ipboard_body .main_width,
#ipboard_body #content,
#ipboard_body #footer_utilities,
#ipboard_body #footer {
  width: auto !important;
  min-width: 0 !important;          /* IPB ставит min-width:960px — это и форсило ПК-ширину */
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;    /* убираем негативный margin-хак центровки IPB */
  box-sizing: border-box;
  padding-left: var(--xf-gutter);   /* единый отступ = шапка/контент/подвал на одной линии */
  padding-right: var(--xf-gutter);
}
/* контейнер-раскладка IPB (#board_index/.ipsLayout) зашит на узкую ширину —
   делаем его на всю ширину #content, иначе колонки внутри наследуют узость */
#ipboard_body #content #board_index,
#ipboard_body #content .ipsLayout,
#ipboard_body #content #board_stats,
#ipboard_body #content #board_statistics {
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
/* страховка от выпирания любого прямого блока контента */
#ipboard_body #content > div { max-width: 100% !important; }
/* основной текст контента — светлый */
#ipboard_body #content,
#ipboard_body #content td,
#ipboard_body #content p,
#ipboard_body #content li,
#ipboard_body #content span,
#ipboard_body #content div,
#ipboard_body #content label { color: var(--xf-text); }
#ipboard_body #content .desc,
#ipboard_body #content .ipsType_medium,
#ipboard_body #content .ipsType_small,
#ipboard_body #content .__stats,
#ipboard_body #content .last_post,
#ipboard_body #content .posted_info,
#ipboard_body #content time { color: var(--xf-text-muted) !important; }

/* ссылки контента → оранжевый акцент (шапку/подвал не трогаем — другие id) */
#ipboard_body #content a,
#ipboard_body #ipbwrapper #content a:link,
#ipboard_body #ipbwrapper #content a:visited { color: var(--xf-text); }
#ipboard_body #content a.ipsType_pagetitle,
#ipboard_body #content h3 a,
#ipboard_body #content h4 a,
#ipboard_body #content .col_c_forum a strong,
#ipboard_body #content td.col_c_forum a { color: var(--xf-text) !important; }
#ipboard_body #content a:hover { color: var(--xf-orange-hi); }
#ipboard_body #content a.__topic_title,
#ipboard_body #content .topic_title { color: var(--xf-text) !important; font-weight: 600; }

/* ===========================================================================
   3) ТЁМНАЯ ТЕМА КОНТЕНТА
   =========================================================================== */

/* боксы/карточки */
#ipboard_body #content .ipsBox,
#ipboard_body #content .table_wrap,
#ipboard_body #content .general_box,
#ipboard_body #content .ipsBox_container,
#ipboard_body #content .post_block,
#ipboard_body #content .category_block,
#ipboard_body #content .block_wrap {
  background: var(--xf-surface) !important;
  border: 1px solid var(--xf-border) !important;
  border-radius: var(--xf-radius) !important;
  box-shadow: none !important;
}
#ipboard_body #content .category_block,
#ipboard_body #content .block_wrap { margin-bottom: 18px; overflow: hidden; }

/* ---------------------------------------------------------------------------
   БАННЕР «ФОРУМ» над списком разделов (строит forum-enhance.js из родных чисел).
   Дизайн forum.html (xf-hero / xf-stat-strip). Только главная форума.
   --------------------------------------------------------------------------- */
#ipboard_body .xf-hero {
  background:
    radial-gradient(ellipse at 85% 0%, rgba(232,132,30,.10) 0%, transparent 55%),
    radial-gradient(ellipse at 0% 100%, rgba(42,125,225,.10) 0%, transparent 55%),
    linear-gradient(180deg, #0d1424 0%, #0a0f1c 100%);
  border: 1px solid var(--xf-border-lt) !important;
  border-radius: var(--xf-radius);
  padding: 30px 32px 0;
  overflow: hidden;
  margin: 0 0 22px;
}
#ipboard_body .xf-hero-top { margin-bottom: 26px; }
#ipboard_body .xf-hero-left { max-width: 620px; }
#ipboard_body .xf-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--xf-fh); font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 1.4px;
  color: var(--xf-text-muted); margin-bottom: 12px;
}
#ipboard_body .xf-eyebrow::before { content: ''; width: 22px; height: 1px; background: var(--xf-orange); }
#ipboard_body .xf-hero-title {
  font-family: var(--xf-fh); font-size: clamp(30px, 3.4vw, 42px); font-weight: 700;
  text-transform: uppercase; color: #fff; line-height: 1; letter-spacing: 1px;
  margin: 0 0 10px;
}
#ipboard_body .xf-hero-desc {
  font-size: 15px; color: var(--xf-text-2); line-height: 1.55; margin: 0; max-width: 540px;
}
/* полоса статистики — заподлицо по низу баннера; число ячеек гибкое (4 или 5) */
#ipboard_body .xf-stat-strip {
  display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr);
  border-top: 1px solid var(--xf-border-lt);
  margin: 0 -32px;
}
#ipboard_body .xf-stat-cell {
  padding: 18px 24px; display: flex; align-items: center; gap: 14px;
  border-right: 1px solid var(--xf-border-lt); min-width: 0;
}
#ipboard_body .xf-stat-cell:last-child { border-right: 0; }
#ipboard_body .xf-stat-ico {
  width: 38px; height: 38px; border-radius: 8px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  background: rgba(255,255,255,.03); border: 1px solid var(--xf-border);
}
#ipboard_body .xf-stat-ico svg { width: 18px; height: 18px; }
#ipboard_body .xf-stat-cell--online  .xf-stat-ico { background: rgba(32,168,104,.10); border-color: rgba(32,168,104,.30); color: #34c77b; }
#ipboard_body .xf-stat-cell--topics  .xf-stat-ico { background: rgba(74,157,245,.10); border-color: rgba(74,157,245,.30); color: #5aa0f5; }
#ipboard_body .xf-stat-cell--posts   .xf-stat-ico { background: rgba(32,176,184,.10); border-color: rgba(32,176,184,.30); color: #2fc6cf; }
#ipboard_body .xf-stat-cell--members .xf-stat-ico { background: rgba(232,132,30,.10); border-color: rgba(232,132,30,.30); color: var(--xf-orange); }
#ipboard_body .xf-stat-cell--record  .xf-stat-ico { background: rgba(106,64,184,.12); border-color: rgba(106,64,184,.34); color: #9a72f0; }
#ipboard_body .xf-stat-body { min-width: 0; }
#ipboard_body .xf-stat-num {
  font-family: var(--xf-fh); font-size: 22px; font-weight: 700; color: #fff;
  line-height: 1.05; letter-spacing: .3px; white-space: nowrap;
}
#ipboard_body .xf-stat-lbl {
  font-size: 11px; color: var(--xf-text-muted);
  text-transform: uppercase; letter-spacing: 1px; margin-top: 3px;
}
@media (max-width: 880px) {
  #ipboard_body .xf-stat-strip { grid-auto-flow: row; grid-template-columns: repeat(2, 1fr); }
  #ipboard_body .xf-stat-cell { border-bottom: 1px solid var(--xf-border-lt); }
  #ipboard_body .xf-stat-cell:nth-child(2n) { border-right: 0; }
}
@media (max-width: 520px) {
  #ipboard_body .xf-hero { padding: 22px 18px 0; }
  #ipboard_body .xf-stat-strip { margin: 0 -18px; }
  #ipboard_body .xf-stat-cell { padding: 14px 16px; }
  #ipboard_body .xf-stat-num { font-size: 18px; }
}

/* шапки разделов h3.maintitle (тёмно-синие бары) → портальный бар с оранжевым акцентом */
#ipboard_body #content h3.maintitle,
#ipboard_body #content .maintitle,
#ipboard_body #content .ipsBox h3:first-child,
#ipboard_body #content .ipsLayout_right h3 {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text) !important;
  font-family: var(--xf-fh) !important;
  font-weight: 700 !important;
  letter-spacing: .4px;
  border: 0 !important;
  border-left: 3px solid var(--xf-orange) !important;
  border-bottom: 1px solid var(--xf-border) !important;
  border-radius: 0 !important;
  text-shadow: none !important;
}
#ipboard_body #content h3.maintitle a,
#ipboard_body #content .maintitle a,
#ipboard_body #content .ipsLayout_right h3 a { color: var(--xf-text) !important; }

/* «свернуть» иконки и мелкие тулбары на барах */
#ipboard_body #content .maintitle .ipsList_inline a,
#ipboard_body #content .collapse_state { color: var(--xf-text-2) !important; }

/* строки тем/форумов */
#ipboard_body #content tr.__topic,
#ipboard_body #content tr.row1,
#ipboard_body #content tr.row2,
#ipboard_body #content .ipsList_table > li,
#ipboard_body #content table.ipb_table tr {
  background: transparent !important;
  border-bottom: 1px solid var(--xf-border) !important;
}
#ipboard_body #content tr.__topic:hover,
#ipboard_body #content .ipsList_table > li:hover { background: var(--xf-surface-2) !important; }
#ipboard_body #content td { border-color: var(--xf-border) !important; }

/* заголовок таблицы (header hide / thead) */
#ipboard_body #content tr.header,
#ipboard_body #content thead th,
#ipboard_body #content .ipsList_table .header {
  background: var(--xf-surface-3) !important;
  color: var(--xf-text-2) !important;
  border-color: var(--xf-border) !important;
}

/* breadcrumb */
#ipboard_body #content .breadcrumb,
#ipboard_body .breadcrumb {
  background: transparent !important;
  border: 0 !important;
  color: var(--xf-text-muted) !important;
}
#ipboard_body .breadcrumb a { color: var(--xf-text-2) !important; }
#ipboard_body .breadcrumb a:hover { color: var(--xf-orange-hi) !important; }
/* путь форума — ЕДИНЫЙ вид с порталом (.xh-breadcrumbs в базе знаний/вселенных):
   отступ от шапки, шрифт 14px, приглушённый цвет, разделитель «/», текущая страница светлее. */
#ipboard_body #content .breadcrumb {
  padding: 22px 0 0 !important;
  margin: 0 0 4px !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: var(--xf-text-muted) !important;
}
#ipboard_body #content .breadcrumb a,
#ipboard_body #content .breadcrumb span { font-size: 14px !important; }
#ipboard_body #content .breadcrumb a { color: var(--xf-text-2) !important; }
#ipboard_body #content .breadcrumb a:hover { color: var(--xf-text) !important; }
/* разделитель «→» движка → «/» как на портале */
#ipboard_body #content .breadcrumb .nav_sep { font-size: 0 !important; opacity: .5; margin: 0 2px; }
#ipboard_body #content .breadcrumb .nav_sep::after { content: "/"; font-size: 14px; color: var(--xf-text-muted); }
/* текущая (последняя) страница пути — светлее */
#ipboard_body #content .breadcrumb li:last-child,
#ipboard_body #content .breadcrumb li:last-child span { color: var(--xf-text) !important; }

/* статистика снизу / список онлайн */
#ipboard_body #content #board_statistics,
#ipboard_body #content #boardstats,
#ipboard_body #content .statistics_head { color: var(--xf-text-2) !important; }

/* мелкие светлые бейджи-значения (span.value и пр.) */
#ipboard_body #content span.value,
#ipboard_body #content .ipsField_content .value {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text) !important;
  border-radius: 3px;
}

/* светлый «боковой блок» IPB (Последние темы / Инфо от разработчиков) — был белый #f7fbfc */
#ipboard_body #content .ipsSideBlock,
#ipboard_body #content .ipsSideBlock.__xX,
#ipboard_body #content div[class*="ipsSideBlock"] {
  background: var(--xf-surface) !important;
  border: 1px solid var(--xf-border) !important;
  color: var(--xf-text) !important;
}

/* аватары: у IMG белая подложка (видна вокруг прозрачных PNG / при загрузке) → тёмная рамка */
#ipboard_body #content img.ipsUserPhoto,
#ipboard_body #content .ipsUserPhoto img,
#ipboard_body #content .mini_photo img,
#ipboard_body #content td.col_c_forum img.ipsUserPhoto {
  background: var(--xf-surface-2) !important;
  border: 1px solid var(--xf-border) !important;
  border-radius: 4px !important;
}

/* мини-пагинация в строках тем (страницы 1·2·3) — были белые чипы */
#ipboard_body #content .mini_pagination a,
#ipboard_body #content .mini_pagination li a,
#ipboard_body #content ul.mini_pagination a {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text-2) !important;
  border: 1px solid var(--xf-border-lt) !important;
  border-radius: 4px !important;
  text-shadow: none !important;
}
#ipboard_body #content .mini_pagination a:hover {
  background: var(--xf-orange) !important; color: #1a0f00 !important; border-color: var(--xf-orange) !important;
}

/* пагинация */
#ipboard_body #content .ipsPagination a,
#ipboard_body #content .pagination a {
  background: var(--xf-surface-2) !important;
  border: 1px solid var(--xf-border-lt) !important;
  color: var(--xf-text-2) !important;
  border-radius: var(--xf-radius-sm) !important;
}
#ipboard_body #content .ipsPagination a:hover,
#ipboard_body #content .pagination .active a {
  background: var(--xf-orange) !important; color: #1a0f00 !important; border-color: var(--xf-orange) !important;
}

/* сообщения в теме (post) */
#ipboard_body #content .post_wrap,
#ipboard_body #content .post_body { background: transparent !important; }
#ipboard_body #content .post_block .author_info,
#ipboard_body #content .post_block .user_details {
  background: var(--xf-surface-2) !important; border-color: var(--xf-border) !important;
}

/* ---------------------------------------------------------------------------
   РЕДАКТОР (CKEditor, cke_skin_ips): панель/рамки были светлыми → тёмная тема.
   Содержимое внутри рамки (iframe) тёмное через contents.css. Здесь — «обвязка».
   --------------------------------------------------------------------------- */
#ipboard_body .cke_chrome,
#ipboard_body .cke_inner,
#ipboard_body table.cke_editor { background: var(--xf-surface) !important; border-color: var(--xf-border-lt) !important; }
#ipboard_body .cke_chrome { border: 1px solid var(--xf-border-lt) !important; border-radius: var(--xf-radius-sm) !important; overflow: hidden; }
#ipboard_body .cke_top,
#ipboard_body .cke_bottom {
  background: var(--xf-surface-2) !important;
  border-color: var(--xf-border) !important;
  box-shadow: none !important;
}
#ipboard_body .cke_top { border-bottom: 1px solid var(--xf-border) !important; }
#ipboard_body .cke_bottom { border-top: 1px solid var(--xf-border) !important; }
/* кнопки тулбара */
#ipboard_body .cke_button,
#ipboard_body .cke_combo_button { background: transparent !important; }
#ipboard_body .cke_button:hover,
#ipboard_body .cke_button_on,
#ipboard_body .cke_combo_button:hover {
  background: var(--xf-surface-3) !important;
  border-radius: 4px !important;
}
#ipboard_body .cke_button_label,
#ipboard_body .cke_combo_text { color: var(--xf-text-2) !important; }
#ipboard_body .cke_toolgroup,
#ipboard_body .cke_combo_button { border-color: var(--xf-border) !important; background: transparent !important; }
/* контент-обёртка (вокруг iframe) */
#ipboard_body .cke_contents { background: var(--xf-surface) !important; }
/* path bar снизу */
#ipboard_body .cke_path_item,
#ipboard_body .cke_path_empty { color: var(--xf-text-muted) !important; }
/* поле быстрого ответа / textarea без CKE — тоже тёмное */
#ipboard_body #content textarea,
#ipboard_body #content .input_text,
#ipboard_body #content input[type=text],
#ipboard_body #content input[type=password],
#ipboard_body #content input[type=email],
#ipboard_body #content input[type=search] {
  background: var(--xf-surface-3) !important;
  color: var(--xf-text) !important;
  border: 1px solid var(--xf-border-lt) !important;
  border-radius: var(--xf-radius-sm) !important;
}
#ipboard_body #content textarea::placeholder,
#ipboard_body #content input::placeholder { color: var(--xf-text-muted) !important; }
/* поля редактора/формы не должны вылезать за ширину экрана (горизонтальный скролл) */
#ipboard_body #content fieldset.attachments,
#ipboard_body #content .attach_wrap,
#ipboard_body #content #attach_wrap,
#ipboard_body #content table.cke_editor,
#ipboard_body #content .cke_chrome { max-width: 100% !important; box-sizing: border-box !important; }
@media (max-width: 768px) {
  #ipboard_body #content fieldset.attachments,
  #ipboard_body #content fieldset.attachments * { max-width: 100% !important; box-sizing: border-box !important; }
  #ipboard_body #content fieldset.attachments .input_upload,
  #ipboard_body #content fieldset.attachments input[type=file] { width: 100% !important; }
  /* строки загрузки — в столбик, с переносом, без горизонтального вылета */
  #ipboard_body #content fieldset.attachments .desc,
  #ipboard_body #content fieldset.attachments p { white-space: normal !important; word-break: break-word; }
}
/* ОПРОС (poll) — был светлый (белая шкала/варианты/кнопки) → единый тёмный вид */
#ipboard_body #content .progress_bar,
#ipboard_body #content .progress_bar.topic_poll {
  background: var(--xf-surface-3) !important; border: 1px solid var(--xf-border) !important;
  border-radius: 4px !important; overflow: hidden;
}
#ipboard_body #content .progress_bar > span { background: var(--xf-orange) !important; }
#ipboard_body #content .progress_bar > span > span { color: #1a0f00 !important; }
/* кнопки голосования / alt-кнопки движка (были светлые) */
#ipboard_body #content .input_submit,
#ipboard_body #content .input_submit.alt,
#ipboard_body #content input[type=submit].alt,
#ipboard_body #content button.input_submit {
  background: var(--xf-orange) !important; color: #1a0f00 !important;
  border: 0 !important; border-radius: var(--xf-radius-sm) !important; text-shadow: none !important;
}
/* светлые скруглённые боксы движка */
#ipboard_body #content .rounded { background: var(--xf-surface-2) !important; }

/* типовые уведомления/информблоки движка (были светлые: «нет сообщений», предупреждения) */
#ipboard_body #content .no_messages,
#ipboard_body #content .message,
#ipboard_body #content .ipsType_warning,
#ipboard_body #content .redirect_block,
#ipboard_body #content .errorwrap,
#ipboard_body #content p.message {
  background: var(--xf-surface-2) !important;
  border: 1px solid var(--xf-border-lt) !important;
  color: var(--xf-text-2) !important;
  border-radius: var(--xf-radius-sm) !important;
}

/* ===========================================================================
   ТОЧЬ-В-ТОЧЬ под forum.html — детали (скругления, иконки-чипы, аватары, отступы)
   Применяется к строкам РАЗДЕЛОВ (col_c_*) на главной и в списке разделов.
   =========================================================================== */
/* воздух в строках — как в макете (20px) */
#ipboard_body #content table.ipb_table > tbody > tr > td.col_c_icon,
#ipboard_body #content table.ipb_table > tbody > tr > td.col_c_forum,
#ipboard_body #content table.ipb_table > tbody > tr > td.col_c_stats,
#ipboard_body #content table.ipb_table > tbody > tr > td.col_c_post {
  padding-top: 18px !important; padding-bottom: 18px !important;
  vertical-align: middle !important;
}
/* иконка раздела → скруглённый чип (как .xf-cat-ico в макете) */
#ipboard_body #content td.col_c_icon { width: 74px !important; text-align: center !important; }
#ipboard_body #content td.col_c_icon img,
#ipboard_body #content td.col_c_icon a img {
  width: 22px !important; height: 22px !important; padding: 11px !important;
  box-sizing: content-box !important; object-fit: contain;
  background: rgba(255,255,255,.03) !important;
  border: 1px solid var(--xf-border-lt) !important;
  border-radius: 10px !important;
}
/* цветной значок раздела (ставит forum-enhance.js по названию раздела) */
#ipboard_body #content td.col_c_icon.xf-iconized img { display: none !important; }
#ipboard_body #content .xf-ico-chip {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border-radius: 10px;
  background: rgba(255,255,255,.03); border: 1px solid var(--xf-border-lt);
  color: var(--xf-text-2);
}
#ipboard_body #content .xf-ico-chip svg { width: 22px; height: 22px; }
#ipboard_body #content .xf-ico--devs     { color: var(--xf-orange); background: rgba(232,132,30,.08);  border-color: rgba(232,132,30,.30); }
#ipboard_body #content .xf-ico--news     { color: #f3a23e; background: rgba(243,162,62,.08);  border-color: rgba(243,162,62,.30); }
#ipboard_body #content .xf-ico--admin    { color: #5aa0f5; background: rgba(74,157,245,.08);  border-color: rgba(74,157,245,.30); }
#ipboard_body #content .xf-ico--polls    { color: #9a72f0; background: rgba(106,64,184,.12);  border-color: rgba(106,64,184,.34); }
#ipboard_body #content .xf-ico--guides   { color: #2fc6cf; background: rgba(32,176,184,.08);  border-color: rgba(32,176,184,.30); }
#ipboard_body #content .xf-ico--alliance { color: #34c77b; background: rgba(32,168,104,.08);  border-color: rgba(32,168,104,.30); }
#ipboard_body #content .xf-ico--ideas    { color: #f5c542; background: rgba(245,197,66,.08);  border-color: rgba(245,197,66,.30); }
#ipboard_body #content .xf-ico--bugs     { color: #ef6a5a; background: rgba(239,106,90,.08);  border-color: rgba(239,106,90,.30); }
#ipboard_body #content .xf-ico--intl     { color: #f5c542; background: rgba(245,197,66,.08);  border-color: rgba(245,197,66,.30); }
#ipboard_body #content .xf-ico--chat     { color: #5aa0f5; background: rgba(74,157,245,.08);  border-color: rgba(74,157,245,.30); }
#ipboard_body #content .xf-ico--default  { color: var(--xf-text-2); }
/* «Следить за темой», перенесённая вниз к кнопкам действий — сброс float от исходного места */
#ipboard_body #content .xf-follow-moved { float: none !important; display: inline-block; margin: 0 8px 0 0 !important; }
#ipboard_body #content .xf-follow-moved .__like.right { float: none !important; margin: 0 !important; }
/* иконка раздела у заголовка темы (заменяет аватар автора) */
#ipboard_body #content .xf-topic-ico { width: 50px; height: 50px; border-radius: 10px; }
#ipboard_body #content .xf-topic-ico svg { width: 24px; height: 24px; }

/* ---------------------------------------------------------------------------
   КОНТРАСТ/ЧИТАЕМОСТЬ (UI/UX-аудит): убираем светлые плашки и нечитаемые бейджи
   --------------------------------------------------------------------------- */
/* непрочитанный подраздел: движок красил плашку в #f7fbfc (белая на тёмном) →
   мягкая оранжевая подсветка, текст остаётся читаемым */
#ipboard_body #content li.unread,
#ipboard_body #content .subforums li.unread,
#ipboard_body #content ol.subforums li.unread {
  background: rgba(232,132,30,.12) !important;
  border-radius: 4px !important; padding: 1px 5px !important;
}
#ipboard_body #content li.unread > a { color: var(--xf-orange-hi) !important; }
/* любые остаточные светлые плашки движка (#f7fbfc/#f7f7f7) на тёмной теме */
#ipboard_body #content [style*="#f7fbfc"],
#ipboard_body #content [style*="#F7FBFC"] { background: var(--xf-surface-2) !important; }
/* бейджи «Горячая тема / В очереди»: был светлый текст на оранжевом (контраст 2.4) →
   как в макете: тёмно-приглушённый фон + оранжевый текст (читаемо), не 9px */
#ipboard_body #content .ipsBadge,
#ipboard_body #content .ipsBadge_orange,
#ipboard_body #content span.hot,
#ipboard_body #content .topic-tag {
  background: rgba(232,132,30,.16) !important;
  color: #f7b15a !important;
  border: 1px solid rgba(232,132,30,.40) !important;
  border-radius: 4px !important;
  font-family: var(--xf-fh) !important; font-weight: 700 !important;
  font-size: 11px !important; text-transform: uppercase; letter-spacing: .6px;
  padding: 2px 7px !important; text-shadow: none !important;
}
/* зелёный/синий варианты бейджей движка (закреплено/новое) — тоже читаемо */
#ipboard_body #content .ipsBadge_green {
  background: rgba(32,168,104,.16) !important; color: #4fd291 !important;
  border: 1px solid rgba(32,168,104,.40) !important;
}

/* разделение сообщений разных авторов: посты шли вплотную, граница незаметна →
   зазор между постами + заметная рамка-карточка у каждого (видно смену автора) */
#ipboard_body #content .post_block {
  margin-bottom: 14px !important;
  border: 1px solid var(--xf-border-lt) !important;
  border-radius: 10px !important;
  position: relative;
}
#ipboard_body #content .post_block:last-child { margin-bottom: 0 !important; }
/* панель автора слева — чуть отделить от текста (видно, чьё сообщение) */
#ipboard_body #content .post_block .author_info {
  border-right: 1px solid var(--xf-border) !important;
}

/* --- читаемость текста сообщений и действий (по UI/UX-аудиту) --- */
/* тело сообщения — крупнее и просторнее для длинного чтения (кириллица) */
#ipboard_body #content .post_body,
#ipboard_body #content .post_body .post_content { font-size: 15px !important; line-height: 1.65 !important; }
/* ссылки в сообщении — отличимы от текста (цвет + подчёркивание), WCAG 1.4.1 */
#ipboard_body #content .post_body a,
#ipboard_body #content .post_body a.bbc_url {
  color: var(--xf-orange-hi) !important; text-decoration: underline !important;
}
/* кнопки-действия под постом — тач-зона ≥28px + зазор (WCAG 2.2 2.5.8) */
#ipboard_body #content ul.post_controls > li { margin-left: 6px !important; }
#ipboard_body #content ul.post_controls a,
#ipboard_body #content ul.post_controls a.ipsButton_secondary {
  min-height: 28px !important; box-sizing: border-box !important;
  display: inline-flex !important; align-items: center !important;
  padding: 6px 12px !important; line-height: 1 !important;
}
/* пагинация — крупнее и кликабельнее (была 10–13px, тач-зона мала) */
#ipboard_body #content .ipsPagination a,
#ipboard_body #content .pagination a,
#ipboard_body #content .pagination span {
  min-height: 26px !important; padding: 4px 10px !important;
  font-size: 14px !important; display: inline-flex !important; align-items: center !important;
}
/* ТЕКУЩАЯ страница — крупнее и заметнее (owner: выбранная должна быть крупнее, не мельче) */
#ipboard_body #content .pagination li.page.active,
#ipboard_body #content .pagination li.active,
#ipboard_body #content .ipsPagination li.active {
  background: var(--xf-orange) !important; color: #1a0f00 !important;
  border: 1px solid var(--xf-orange) !important; border-radius: var(--xf-radius-sm) !important;
  font-family: var(--xf-fh) !important; font-weight: 800 !important; font-size: 17px !important;
  min-width: 34px; min-height: 32px !important; padding: 4px 12px !important;
  display: inline-flex !important; align-items: center; justify-content: center;
  box-shadow: 0 0 12px rgba(232,132,30,.45);
}
/* обычные страницы — спокойнее и помельче активной */
#ipboard_body #content .pagination li.page a { font-size: 13px !important; }
/* служебный мелкий текст (номера постов, IP) — не меньше 12px */
#ipboard_body #content .post_id,
#ipboard_body #content .ip_link,
#ipboard_body #content .post_id a { font-size: 12px !important; }
/* заголовки тем-ссылок на телефоне — кликабельная высота ≥24px */
@media (max-width: 768px) {
  #ipboard_body #content td.col_f_topic a.topic_title,
  #ipboard_body #content td.col_f_content a.topic_title { display: inline-block; padding: 4px 0; line-height: 1.5; }
}

/* ===========================================================================
   SCI-FI КАРТОЧКА ИГРОКА в посте — компактно, «космически» (owner 2026-06-06).
   Было: длинный вертикальный список «Метка: Значение» (много места на телефоне).
   Стало: аватар с неоновым кольцом + звание-чип + игровые данные плашками-статами.
   =========================================================================== */
/* аватар — неоновое оранжевое кольцо + скругление (sci-fi), компактный */
#ipboard_body #content .post_block .basic_info li.avatar img.ipsUserPhoto,
#ipboard_body #content .post_block li.avatar img {
  width: 58px !important; height: 58px !important; border-radius: 10px !important;
  border: 1px solid rgba(232,132,30,.45) !important; object-fit: cover;
  box-shadow: 0 0 0 1px rgba(232,132,30,.22), 0 0 14px rgba(232,132,30,.18) !important;
  background: var(--xf-surface-2) !important;
}
/* флаг страны рядом с ником (страну убрали из плашек) */
#ipboard_body #content .post_block .author .xf-flag-emo { font-size: 15px; margin-left: 6px; vertical-align: middle; line-height: 1; }
/* звание (Администратор/Новичок/Генерал) — мелкий чип-бейдж */
#ipboard_body #content .post_block .member_title {
  display: inline-block !important; font-family: var(--xf-fh) !important;
  font-size: 10px !important; text-transform: uppercase; letter-spacing: .8px;
  font-weight: 700 !important; color: var(--xf-orange-hi) !important;
  background: rgba(232,132,30,.12); border: 1px solid rgba(232,132,30,.30);
  border-radius: 4px; padding: 2px 8px !important; margin: 0 0 6px !important;
}
/* группа (была красная #ff0000 inline — нечитаемо) → спокойный вторичный цвет */
#ipboard_body #content .post_block .group_title,
#ipboard_body #content .post_block .group_title b,
#ipboard_body #content .post_block .group_title span {
  color: var(--xf-text-2) !important; font-weight: 600 !important; font-size: 12px !important;
}
/* счётчик сообщений — мелко, моноширинное число */
#ipboard_body #content .post_block .post_count {
  color: var(--xf-text-muted) !important; font-size: 11px !important;
  font-family: 'JetBrains Mono', var(--xf-fb) !important; letter-spacing: -.2px;
}
/* игровые поля → компактные чипы-статы (метка мелко сверху, значение крупно) */
#ipboard_body #content .post_block .custom_fields {
  display: grid !important; grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)) !important;
  gap: 6px !important; margin: 10px 0 0 !important; padding: 0 !important; width: 100% !important;
}
#ipboard_body #content .post_block .custom_fields li {
  display: flex !important; flex-direction: column !important; gap: 1px !important;
  background: rgba(255,255,255,.03) !important; border: 1px solid var(--xf-border) !important;
  border-radius: 6px !important; padding: 4px 7px !important;
  list-style: none !important; margin: 0 !important;
}
#ipboard_body #content .post_block .custom_fields li.xf-hide { display: none !important; }
#ipboard_body #content .post_block li.xf-hide { display: none !important; }  /* и в basic_info (предупреждения) */
#ipboard_body #content .post_block .custom_fields .ft {
  font-size: 9px !important; text-transform: uppercase; letter-spacing: .5px;
  color: var(--xf-text-muted) !important; font-weight: 600 !important;
}
#ipboard_body #content .post_block .custom_fields .fc {
  font-size: 13px !important; color: var(--xf-text) !important;
  font-family: var(--xf-fh) !important; font-weight: 700 !important; line-height: 1.2;
  overflow-wrap: normal !important; word-break: keep-all !important;  /* не рвать дату/слово посреди */
}
/* «Уровень» — акцентом + полоска прогресса (sci-fi HUD; 1000 = максимум) */
#ipboard_body #content .post_block .custom_fields li[data-stat="level"] { border-color: rgba(232,132,30,.35) !important; }
/* на максимальном уровне (1000) — без оранжевой рамки (owner) */
#ipboard_body #content .post_block .custom_fields li[data-stat="level"].xf-lvl-max { border-color: var(--xf-border) !important; }
#ipboard_body #content .post_block .custom_fields li[data-stat="level"] .fc { color: var(--xf-orange-hi) !important; }
#ipboard_body #content .post_block .custom_fields .xf-lvlbar {
  display: block; height: 4px; margin-top: 4px; border-radius: 3px;
  background: rgba(255,255,255,.08); overflow: hidden;
}
#ipboard_body #content .post_block .custom_fields .xf-lvlbar i {
  display: block; height: 100%; border-radius: 3px;
  background: linear-gradient(90deg, var(--xf-orange), #f7b15a);
}
#ipboard_body #content .post_block .custom_fields .xf-lvlbar.is-max i {
  background: linear-gradient(90deg, #f5c542, #ffe08a);
  box-shadow: 0 0 8px rgba(245,197,66,.55);
}
/* иконка «тип игры» в чипе */
#ipboard_body #content .post_block .custom_fields .fc .xf-type-ico { display: inline-flex; vertical-align: middle; margin-right: 5px; color: var(--xf-orange-hi); }
#ipboard_body #content .post_block .custom_fields .fc .xf-type-ico svg { width: 13px; height: 13px; }
/* строка «На форуме с …» (вместо баллов предупреждения) */
#ipboard_body #content .post_block .xf-reg-li { color: var(--xf-text-muted) !important; font-size: 11px !important; font-family: 'JetBrains Mono', var(--xf-fb) !important; list-style: none !important; }
/* звание = ранг по уровню (может быть длинным) — разрешить перенос */
#ipboard_body #content .post_block .member_title { white-space: normal !important; line-height: 1.2; max-width: 150px; }
/* на телефоне карточка автора — компактнее, чипы в ряд */
@media (max-width: 768px) {
  #ipboard_body #content .post_block .basic_info li.avatar img.ipsUserPhoto,
  #ipboard_body #content .post_block li.avatar img { width: 60px !important; height: 60px !important; }
  #ipboard_body #content .post_block .custom_fields { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
/* название раздела — Rajdhani 17/700 */
#ipboard_body #content td.col_c_forum h4 a {
  font-family: var(--xf-fh) !important; font-size: 17px !important;
  font-weight: 700 !important; letter-spacing: .2px;
}
/* подразделы — приглушённо, через · */
#ipboard_body #content td.col_c_forum .subforums { margin-top: 6px !important; }
#ipboard_body #content td.col_c_forum .subforums a { color: var(--xf-text-2) !important; font-size: 13px; }
#ipboard_body #content td.col_c_forum .subforums a:hover { color: var(--xf-text) !important; }
/* счётчики тем/ответов — справа, числа Rajdhani */
#ipboard_body #content td.col_c_stats { text-align: right !important; }
#ipboard_body #content td.col_c_stats strong {
  font-family: var(--xf-fh) !important; color: var(--xf-text) !important; font-weight: 700 !important;
}
/* последний пост: аватар — скруглённый квадрат 38px (как .xf-avatar в макете) */
#ipboard_body #content td.col_c_post img.ipsUserPhoto,
#ipboard_body #content td.col_c_post .ipsUserPhoto img {
  width: 38px !important; height: 38px !important;
  border-radius: 8px !important; object-fit: cover;
}
/* имя автора последнего поста — акцентом, дата — мелким моно */
#ipboard_body #content td.col_c_post a.__user,
#ipboard_body #content td.col_c_post .last_post a strong,
#ipboard_body #content td.col_c_post a[hovercard-ref] { color: var(--xf-orange-hi) !important; font-weight: 700 !important; }

/* --- строки ТЕМ (активные темы + список тем в разделе, col_f_*) --- */
#ipboard_body #content table.ipb_table > tbody > tr > td.col_f_icon,
#ipboard_body #content table.ipb_table > tbody > tr > td.col_f_topic,
#ipboard_body #content table.ipb_table > tbody > tr > td.col_f_starter,
#ipboard_body #content table.ipb_table > tbody > tr > td.col_f_views,
#ipboard_body #content table.ipb_table > tbody > tr > td.col_f_post {
  padding-top: 15px !important; padding-bottom: 15px !important; vertical-align: middle !important;
}
/* заголовок темы — Rajdhani 16/700 */
#ipboard_body #content td.col_f_topic a.topic_title,
#ipboard_body #content td.col_f_content a.topic_title {
  font-family: var(--xf-fh) !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: .2px;
}
/* числа (ответы/просмотры) — Rajdhani */
#ipboard_body #content td.col_f_views strong,
#ipboard_body #content td.col_f_views li { font-family: var(--xf-fh) !important; }
#ipboard_body #content td.col_f_views { text-align: center !important; }
/* аватар автора последнего поста — скруглённый квадрат */
#ipboard_body #content td.col_f_post img.ipsUserPhoto,
#ipboard_body #content td.col_f_post .ipsUserPhoto img,
#ipboard_body #content td.col_f_starter img.ipsUserPhoto,
#ipboard_body #content td.col_f_starter .ipsUserPhoto img {
  width: 34px !important; height: 34px !important; border-radius: 8px !important; object-fit: cover;
}
/* имя автора последнего поста акцентом */
#ipboard_body #content td.col_f_post a[hovercard-ref],
#ipboard_body #content td.col_f_post .last_post a:first-child { color: var(--xf-orange-hi) !important; font-weight: 700 !important; }
/* «горячая»/закреплённая тема — тег как в макете */
#ipboard_body #content td.col_f_topic .ipsBadge,
#ipboard_body #content span.topic-tag {
  border-radius: 4px !important; font-family: var(--xf-fh) !important; font-weight: 700 !important;
  text-transform: uppercase; letter-spacing: .6px; font-size: 10px !important;
}

/* подвал: иконки соцсетей строго по центру кружков (бывало «съезжали») */
#ipboard_body .xhf-foot-social {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#ipboard_body .xhf-foot-social svg,
#ipboard_body .xhf-foot-social img { display: block; margin: 0 auto; }

/* ===========================================================================
   3b) ФЛАГИ У ЯЗЫКОВЫХ РАЗДЕЛОВ (блок «International Forum») на главной.
   Цепляемся по стабильному ID раздела (ссылка /forum/forum/<id>-...). Флаг —
   встроенный SVG (не эмодзи: эмодзи на Windows рисуется буквами).
   =========================================================================== */
#ipboard_body #content h4 a[href*="/forum/forum/123-"]::before,
#ipboard_body #content h4 a[href*="/forum/forum/124-"]::before,
#ipboard_body #content h4 a[href*="/forum/forum/125-"]::before,
#ipboard_body #content h4 a[href*="/forum/forum/134-"]::before,
#ipboard_body #content h4 a[href*="/forum/forum/135-"]::before,
#ipboard_body #content h4 a[href*="/forum/forum/136-"]::before,
#ipboard_body #content h4 a[href*="/forum/forum/137-"]::before,
#ipboard_body #content h4 a[href*="/forum/forum/138-"]::before {
  content: ''; display: inline-block; width: 22px; height: 15px;
  margin-right: 9px; vertical-align: -2px; border-radius: 2px;
  border: 1px solid rgba(255,255,255,.12);
  background-position: center; background-size: cover; background-repeat: no-repeat;
}
/* 123 — Italiano 🇮🇹 */
#ipboard_body #content h4 a[href*="/forum/forum/123-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='3' height='2' fill='%23fff'/%3E%3Crect width='1' height='2' fill='%23009246'/%3E%3Crect x='2' width='1' height='2' fill='%23ce2b37'/%3E%3C/svg%3E"); }
/* 124 — Français 🇫🇷 */
#ipboard_body #content h4 a[href*="/forum/forum/124-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='3' height='2' fill='%23fff'/%3E%3Crect width='1' height='2' fill='%230055A4'/%3E%3Crect x='2' width='1' height='2' fill='%23EF4135'/%3E%3C/svg%3E"); }
/* 125 — Deutsch 🇩🇪 */
#ipboard_body #content h4 a[href*="/forum/forum/125-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 3'%3E%3Crect width='3' height='3' fill='%23ffce00'/%3E%3Crect width='3' height='2' fill='%23D00'/%3E%3Crect width='3' height='1' fill='%23000'/%3E%3C/svg%3E"); }
/* 134 — Español 🇪🇸 */
#ipboard_body #content h4 a[href*="/forum/forum/134-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 3'%3E%3Crect width='4' height='3' fill='%23c60b1e'/%3E%3Crect y='0.75' width='4' height='1.5' fill='%23ffc400'/%3E%3C/svg%3E"); }
/* 135 — Português 🇵🇹 */
#ipboard_body #content h4 a[href*="/forum/forum/135-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 3'%3E%3Crect width='5' height='3' fill='%23f00'/%3E%3Crect width='2' height='3' fill='%23060'/%3E%3C/svg%3E"); }
/* 136 — Polski 🇵🇱 */
#ipboard_body #content h4 a[href*="/forum/forum/136-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2 2'%3E%3Crect width='2' height='2' fill='%23dc143c'/%3E%3Crect width='2' height='1' fill='%23fff'/%3E%3C/svg%3E"); }
/* 137 — Türkçe 🇹🇷 */
#ipboard_body #content h4 a[href*="/forum/forum/137-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 4'%3E%3Crect width='6' height='4' fill='%23e30a17'/%3E%3Ccircle cx='2.3' cy='2' r='1' fill='%23fff'/%3E%3Ccircle cx='2.65' cy='2' r='0.8' fill='%23e30a17'/%3E%3C/svg%3E"); }
/* 138 — Other Languages 🌐 */
#ipboard_body #content h4 a[href*="/forum/forum/138-"]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='9' fill='%232b7cd3'/%3E%3Cpath d='M1 10h18M10 1v18M4 4c4 4 8 4 12 0M4 16c4-4 8-4 12 0' stroke='%23fff' fill='none' stroke-width='0.8'/%3E%3C/svg%3E"); border-color: transparent; }

/* ===========================================================================
   4) ФОРМЫ / КНОПКИ / ПОЛЯ ВВОДА
   =========================================================================== */
#ipboard_body #content input[type=text],
#ipboard_body #content input[type=password],
#ipboard_body #content input[type=email],
#ipboard_body #content input[type=search],
#ipboard_body #content textarea,
#ipboard_body #content select {
  background: var(--xf-surface-3) !important;
  border: 1px solid var(--xf-border-lt) !important;
  color: var(--xf-text) !important;
  border-radius: var(--xf-radius-sm) !important;
}
#ipboard_body #content input::placeholder,
#ipboard_body #content textarea::placeholder { color: var(--xf-text-muted) !important; }

#ipboard_body #content .ipsButton,
#ipboard_body #content button.ipsButton_main,
#ipboard_body #content input.ipsButton_main,
#ipboard_body #content .button {
  background: var(--xf-orange) !important;
  color: #1a0f00 !important;
  border: 1px solid var(--xf-orange) !important;
  border-radius: var(--xf-radius-sm) !important;
  font-family: var(--xf-fh) !important;
  font-weight: 700 !important;
  text-shadow: none !important;
}
#ipboard_body #content .ipsButton_secondary,
#ipboard_body #content input.ipsButton_secondary {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text) !important;
  border: 1px solid var(--xf-border-lt) !important;
}

/* ===========================================================================
   4b) СПЛОШНАЯ ЧИТАЕМОСТЬ — заголовки/формы/остаточные светлые поверхности.
   IPB задаёт многим элементам тёмный текст (#323) и светлый фон форм — на тёмной
   теме это «нечитаемо» / «белые пятна». Здесь добиваем по всем типам страниц.
   =========================================================================== */

/* заголовки и подписи → светлый текст (были #323232 = нечитаемо на тёмном) */
#ipboard_body #content h1,
#ipboard_body #content h2,
#ipboard_body #content h3,
#ipboard_body #content h4,
#ipboard_body #content h5,
#ipboard_body #content h6,
#ipboard_body #content .ipsType_pagetitle,
#ipboard_body #content .ipsType_sectiontitle,
#ipboard_body #content .ipsType_subtitle,
#ipboard_body #content .ipsType_title,
#ipboard_body #content legend,
#ipboard_body #content label,
#ipboard_body #content dt,
#ipboard_body #content .ipsField_title,
#ipboard_body #content caption { color: var(--xf-text) !important; }

/* приглушённые описания/подсказки форм — поднять до читаемого (были бледные на светлом) */
#ipboard_body #content .ipsType_light,
#ipboard_body #content .desc_text,
#ipboard_body #content fieldset p,
#ipboard_body #content #login p,
#ipboard_body #content .ipsField_content .desc { color: var(--xf-text-2) !important; }

/* светлые «бары» секций/форм (.bar) → тёмный бар с оранжевым акцентом */
#ipboard_body #content h3.bar,
#ipboard_body #content .bar,
#ipboard_body #content .ipsBox h2.maintitle {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text) !important;
  border: 0 !important;
  border-left: 3px solid var(--xf-orange) !important;
  border-bottom: 1px solid var(--xf-border) !important;
  text-shadow: none !important;
}

/* светлые контейнеры форм / секций → тёмная поверхность */
#ipboard_body #content fieldset,
#ipboard_body #content fieldset.submit,
#ipboard_body #content .formsubmit,
#ipboard_body #content #login,
#ipboard_body #content .ipsForm,
#ipboard_body #content .ipsPad,
#ipboard_body #content .ipsBox_secondary,
#ipboard_body #content .general_box,
#ipboard_body #content .popupInner,
#ipboard_body #content .ipsField,
#ipboard_body #content .section_title {
  background: transparent !important;
  border-color: var(--xf-border) !important;
  color: var(--xf-text) !important;
}
#ipboard_body #content fieldset.submit,
#ipboard_body #content .formsubmit {
  background: var(--xf-surface) !important;
  border-top: 1px solid var(--xf-border) !important;
}

/* отключённые кнопки (напр. «Авторизуйтесь для ответа») — были светло-серые пилюли */
#ipboard_body #content .disabled,
#ipboard_body #content a.disabled,
#ipboard_body #content .disabled span,
#ipboard_body #content .ipsButton.disabled,
#ipboard_body #content .reply_btns .disabled {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text-muted) !important;
  border: 1px solid var(--xf-border) !important;
  text-shadow: none !important;
}

/* бейджи репутации — были светлые */
#ipboard_body #content .reputation {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text-2) !important;
  border: 1px solid var(--xf-border) !important;
}

/* ВСЕ кнопки отправки IPB → оранжевые (были серые «Войти/Отправить») */
#ipboard_body #content input[type=submit],
#ipboard_body #content button[type=submit],
#ipboard_body #content .input_submit input,
#ipboard_body #content input.ipsButton_main,
#ipboard_body #content button.ipsButton_main,
#ipboard_body #content .ipsButton_prominent {
  background: var(--xf-orange) !important;
  color: #1a0f00 !important;
  border: 1px solid var(--xf-orange) !important;
  border-radius: var(--xf-radius-sm) !important;
  text-shadow: none !important;
  font-family: var(--xf-fh) !important;
  font-weight: 700 !important;
}

/* ===========================================================================
   4c) ЛИЧНЫЙ КАБИНЕТ (User CP / Настройки) — вкладки слева были светлые,
   горизонтальные формы шире экрана. Тёмные вкладки + мобильная раскладка.
   =========================================================================== */
/* вертикальные вкладки настроек (левое меню) → тёмные */
#ipboard_body #content .ipsVerticalTabbed_tabs ul,
#ipboard_body #content #usercp_tabs ul { background: transparent !important; }
#ipboard_body #content .ipsVerticalTabbed_tabs li,
#ipboard_body #content #usercp_tabs li {
  background: var(--xf-surface) !important;
  border: 1px solid var(--xf-border) !important;
  border-radius: var(--xf-radius-sm) !important;
  margin-bottom: 4px;
}
#ipboard_body #content .ipsVerticalTabbed_tabs li a,
#ipboard_body #content #usercp_tabs li a {
  background: transparent !important;
  color: var(--xf-text-2) !important;
  text-shadow: none !important;
}
#ipboard_body #content .ipsVerticalTabbed_tabs li.active,
#ipboard_body #content #usercp_tabs li.active,
#ipboard_body #content .ipsVerticalTabbed_tabs li.active a,
#ipboard_body #content #usercp_tabs li.active a {
  background: var(--xf-surface-2) !important;
  color: var(--xf-text) !important;
  border-left: 3px solid var(--xf-orange) !important;
}
/* секции настроек / горизонтальные поля — не шире экрана */
#ipboard_body #content .ipsSettings_section,
#ipboard_body #content .ipsForm_horizontal,
#ipboard_body #content .ipsField { max-width: 100% !important; }

/* ===========================================================================
   5) МОБИЛЬНАЯ АДАПТАЦИЯ
   На узких экранах: две колонки (форум + сайдбар) в столбик, компактные отступы.
   =========================================================================== */
@media (max-width: 980px) {
  /* IPB резервирует место под правую колонку через padding-right:280px на контейнере
     и кладёт сайдбар в этот отступ. Для столбика убираем отступ → колонки на всю ширину. */
  #ipboard_body #content .ipsLayout_withright,
  #ipboard_body #content .ipsLayout_largeright {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  /* двухколоночная раскладка board_index → в столбик */
  #ipboard_body #content #board_index.ipsLayout_withright .ipsLayout_content,
  #ipboard_body #content .ipsLayout_withright .ipsLayout_content,
  #ipboard_body #content #board_index.ipsLayout_withright .ipsLayout_right,
  #ipboard_body #content .ipsLayout_withright .ipsLayout_right {
    float: none !important;
    position: static !important;
    width: auto !important;
    margin: 0 0 16px 0 !important;
  }

  /* Личный кабинет: раскладка с левым меню (.ipsLayout_withleft) → в столбик */
  #ipboard_body #content .ipsLayout_withleft { padding-left: 0 !important; }
  #ipboard_body #content .ipsLayout_withleft .ipsLayout_content,
  #ipboard_body #content .ipsLayout_withleft .ipsLayout_left,
  #ipboard_body #content #usercp_tabs,
  #ipboard_body #content .ipsVerticalTabbed_tabs {
    float: none !important;
    position: static !important;
    width: auto !important;
    margin: 0 0 12px 0 !important;
  }
  /* горизонтальные формы (метка слева + поле) → метка над полем, всё блоками,
     иначе строка «метка+поле» в одну линию (nowrap) держит ширину ~550px и выпирает */
  #ipboard_body #content .ipsForm,
  #ipboard_body #content .ipsForm_horizontal,
  #ipboard_body #content .ipsField,
  #ipboard_body #content .ipsField_title,
  #ipboard_body #content .ipsField_content,
  #ipboard_body #content .ipsSettings_section {
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    text-align: left !important;
    box-sizing: border-box;
  }
  #ipboard_body #content .ipsField_title { margin: 0 0 4px 0 !important; }
  /* кнопки не выпирают за край, длинный текст переносится */
  #ipboard_body #content .ipsButton,
  #ipboard_body #content input[type=submit],
  #ipboard_body #content button { max-width: 100% !important; white-space: normal !important; }
  /* поля ввода/списки/области — на всю ширину контейнера */
  #ipboard_body #content input[type=text],
  #ipboard_body #content input[type=email],
  #ipboard_body #content input[type=password],
  #ipboard_body #content input[type=url],
  #ipboard_body #content input[type=number],
  #ipboard_body #content select,
  #ipboard_body #content .input_select,
  #ipboard_body #content textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
}

@media (max-width: 768px) {
  /* на телефоне контент почти на всю ширину (страница и так узкая) — owner просил
     не привязывать к ширине шапки. Маленький отступ 8px, чтобы не липло к краю. */
  #ipboard_body { --xf-gutter: 8px; }

  /* крупнее текст для читаемости пальцем */
  #ipboard_body #content { font-size: 15px; line-height: 1.5; }
  #ipboard_body #content h3.maintitle,
  #ipboard_body #content .maintitle { font-size: 16px !important; padding: 10px 12px !important; }

  /* таблицы тем не выпирают: позволяем перенос и убираем мелкие колонки-счётчики */
  #ipboard_body #content table.ipb_table,
  #ipboard_body #content .ipsList_table { width: 100% !important; }
  #ipboard_body #content td,
  #ipboard_body #content th { padding: 8px 6px !important; }

  /* колонки «иконка состояния», мелкая статистика — прячем на телефоне (вторичны) */
  #ipboard_body #content td.__stats.stats,
  #ipboard_body #content .col_f_post,
  #ipboard_body #content th.col_f_post,
  #ipboard_body #content td.col_c_stats,
  #ipboard_body #content th.col_c_stats { display: none !important; }

  /* последний пост — под заголовком, не отдельной широкой колонкой */
  #ipboard_body #content td.col_f_last,
  #ipboard_body #content td.__last { font-size: 12px; }

  /* аватар автора в строке — меньше */
  #ipboard_body #content .__topic .ipsUserPhoto img,
  #ipboard_body #content .mini_photo { max-width: 32px; height: auto; }

  /* ЧТЕНИЕ ТЕМЫ: панель автора — компактно ГОРИЗОНТАЛЬНО (owner): аватар слева,
     звание/счётчик и вся остальная инфа справа от него (не узкий столбик с пустотой),
     текст сообщения — ниже на всю ширину. */
  #ipboard_body #content .post_mobitanks .author_info {
    float: none !important;
    width: auto !important;
    margin: 0 0 12px 0 !important;
    display: block !important;
    padding: 10px 12px;
    background: var(--xf-surface-2);
    border-radius: var(--xf-radius-sm);
    text-align: left !important;
    overflow: hidden;  /* содержит float аватара */
  }
  #ipboard_body #content .post_mobitanks .author_info .user_details,
  #ipboard_body #content .post_mobitanks .author_info ul.basic_info { display: block !important; text-align: left !important; }
  /* аватар — слева, компактный */
  #ipboard_body #content .post_mobitanks .author_info li.avatar {
    float: left !important; margin: 0 12px 6px 0 !important; width: auto !important; display: block !important;
  }
  #ipboard_body #content .post_mobitanks .author_info li.avatar img,
  #ipboard_body #content .post_mobitanks .author_info .ipsUserPhoto img,
  #ipboard_body #content .post_mobitanks .author_info img[itemprop="image"] { max-width: 60px !important; height: auto !important; }
  /* остальные пункты (звание, счётчик, вселенная/альянс/уровень/тип/дата) — строками справа от аватара */
  #ipboard_body #content .post_mobitanks .author_info li,
  #ipboard_body #content .post_mobitanks .author_info p.member_title {
    display: block !important; text-align: left !important; margin: 0 0 2px 0 !important; font-size: 13px;
  }
  #ipboard_body #content .post_mobitanks .author_info p.member_title { font-weight: 700; color: var(--xf-orange-hi); }
  /* поле сообщения — на всю ширину */
  #ipboard_body #content .post_mobitanks .post_body { width: auto !important; float: none !important; clear: both; }
  #ipboard_body #content .post_body .post.entry-content { font-size: 15px; line-height: 1.55; }
  /* картинки/вложения в сообщении не выпирают */
  #ipboard_body #content .post_body img,
  #ipboard_body #content .post_body .ipsAttachLink_image img { max-width: 100% !important; height: auto !important; }

  /* defunct Google+ виджет (offscreen) — спрятать, чтобы не плодил скрытую ширину */
  #ipboard_body div[id^="___plusone"],
  #ipboard_body iframe[id^="I0_"] { display: none !important; }
}

@media (max-width: 480px) {
  #ipboard_body #content { font-size: 14px; }
  /* отступ оставляем единым (--xf-gutter), не сужаем — ради выравнивания с шапкой/подвалом */
  /* прячем ещё и предпросмотр-колонки если есть */
  #ipboard_body #content td.col_f_icon { width: 28px !important; }
}

/* ===========================================================================
   6) ПРАВКИ ПО UI/UX-АУДИТУ (доступность, защиты, полировка) — 2026-06-03
   =========================================================================== */

/* 6.1 ФОКУС (доступность): на тёмной теме у движка не было видно, где курсор/таб.
   Оранжевая обводка по фокусу с клавиатуры — на всех интерактивных элементах. */
#ipboard_body #content a:focus-visible,
#ipboard_body #content input:focus-visible,
#ipboard_body #content textarea:focus-visible,
#ipboard_body #content select:focus-visible,
#ipboard_body #content button:focus-visible,
#ipboard_body #content .ipsButton:focus-visible,
#ipboard_body #content .mini_pagination a:focus-visible,
#ipboard_body #content .ipsPagination a:focus-visible,
#ipboard_body #content .ipsVerticalTabbed_tabs li a:focus-visible,
#ipboard_body #content #usercp_tabs li a:focus-visible {
  outline: 2px solid var(--xf-orange) !important;
  outline-offset: 2px !important;
  border-radius: 3px;
}

/* 6.2 Имя администратора было чисто-красным (#ff0000) — плохо читается на тёмном.
   Делаем чуть светлее (контраст ок), красный смысл сохраняется. */
#ipboard_body #content [style*="ff0000"],
#ipboard_body #content [style*="#FF0000"],
#ipboard_body #content [style*="rgb(255, 0, 0)"],
#ipboard_body #content font[color="#ff0000"],
#ipboard_body #content font[color="red"] { color: #ff6b6b !important; }

/* 6.3 ЗАЩИТА от «белых пятен»: любой элемент движка с зашитым светлым фоном
   (остатки родного скина / будущие плагины) — затемняем. Низкая специфичность,
   явные правила выше перебивают. */
#ipboard_body #content [style*="background:#fff"],
#ipboard_body #content [style*="background: #fff"],
#ipboard_body #content [style*="background:#FFF"],
#ipboard_body #content [style*="background-color:#fff"],
#ipboard_body #content [style*="background-color: #fff"],
#ipboard_body #content [style*="background:white"],
#ipboard_body #content [style*="background: white"] {
  background: var(--xf-surface) !important;
  color: var(--xf-text) !important;
}

/* 6.3b Подвал форума: внутренний отступ = единый --xf-gutter (был 20px) →
   бренд подвала встаёт ровно под логотипом шапки и краем контента. */
#ipboard_body .xhf-foot-inner {
  padding-left: var(--xf-gutter) !important;
  padding-right: var(--xf-gutter) !important;
}

/* 6.4 Верхние углы шапки-бара внутри карточки скруглить под карточку (был стык). */
#ipboard_body #content .ipsBox > h3.maintitle:first-child,
#ipboard_body #content .category_block > h3.maintitle:first-child {
  border-top-left-radius: var(--xf-radius) !important;
  border-top-right-radius: var(--xf-radius) !important;
}

/* 6.5 Пустые контейнеры списка тем (раздел без прямых тем) — убрать дыру. */
#ipboard_body #content .block_wrap:empty,
#ipboard_body #content .ipsBox:empty { display: none !important; margin: 0 !important; padding: 0 !important; }

/* 6.6 Настройки: длинные названия вкладок не переносить в 2 строки (рваный ритм). */
#ipboard_body #content .ipsVerticalTabbed_tabs li a,
#ipboard_body #content #usercp_tabs li a {
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

@media (max-width: 1024px) {
  /* 6.7 Размер «под палец» (≥44px) для кликабельных контролов — НЕ для текстовых
     ссылок в сообщениях и НЕ для мини-страниц в строках тем (их не раздуваем в боксы). */
  #ipboard_body #content a.ipsButton,
  #ipboard_body #content input[type=submit],
  #ipboard_body #content .ipsPagination a {
    min-height: 40px;
    display: inline-flex; align-items: center; justify-content: center;
  }
  #ipboard_body #content .post_body a { min-height: 0; display: inline; }
}

/* ===========================================================================
   7) МОБИЛЬНЫЙ ВЫВОД СТРОК ТЕМ/ФОРУМОВ (owner: «переосмысли, название на всю ширину,
   страницы внизу на всю, блок шире — меньше переносов, меньше дыра до счётчиков»).
   IPB верстает строки таблицей с узкими колонками — на телефоне раскладываем в столбик.
   =========================================================================== */
@media (max-width: 768px) {
  /* строки-таблицы тем → блоки в столбик (название на всю ширину) */
  #ipboard_body #content table.ipb_table,
  #ipboard_body #content table.ipb_table tbody,
  #ipboard_body #content table.ipb_table > tbody > tr,
  #ipboard_body #content .ipsList_table > li {
    display: block !important;
    width: auto !important;
  }
  /* строки-заголовки колонок («Topic/Started By/Stats») скрыты в движке классом .hide —
     правило выше (tr→block) их случайно проявляло на мобильном. Возвращаем скрытие. */
  #ipboard_body #content table.ipb_table > tbody > tr.header,
  #ipboard_body #content table.ipb_table > tbody > tr.hide { display: none !important; }
  #ipboard_body #content table.ipb_table > tbody > tr {
    padding: 12px 4px !important;
    border-bottom: 1px solid var(--xf-border) !important;
    position: relative;
  }
  #ipboard_body #content table.ipb_table > tbody > tr > td {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    border: 0 !important;
    padding: 1px 0 !important;
    text-align: left !important;
    white-space: normal !important;
  }
  /* иконку темы/форума ОСТАВЛЯЕМ (owner: базовые картинки тем нужны) — слева, компактно */
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_c_icon,
  #ipboard_body #content table.ipb_table > tbody > tr > td.__icon,
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_f_icon {
    display: inline-block !important;
    float: left !important;
    width: auto !important;
    margin: 2px 10px 0 0 !important;
  }
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_c_icon img,
  #ipboard_body #content table.ipb_table > tbody > tr > td.__icon img,
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_f_icon img { max-width: 34px; height: auto; }
  /* реально лишнее — чекбоксы модерации — прячем */
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_mod,
  #ipboard_body #content table.ipb_table > tbody > tr > td.modcols,
  #ipboard_body #content table.ipb_table input.input_check { display: none !important; }
  /* счётчики (ответы/просмотры) — компактной строкой, приглушённо, без большой дыры */
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_c_stats,
  #ipboard_body #content table.ipb_table > tbody > tr > td.__stats,
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_f_views,
  #ipboard_body #content table.ipb_table > tbody > tr > td.col_f_post {
    color: var(--xf-text-muted) !important;
    font-size: 12px !important;
    margin-top: 4px !important;
  }
  /* мини-страницы (1·2·3·N) — компактный ряд на всю ширину снизу, не высокие боксы */
  #ipboard_body #content .mini_pagination { display: flex !important; flex-wrap: wrap; gap: 4px; margin-top: 6px; }
  #ipboard_body #content .mini_pagination li { display: inline-block !important; }
  #ipboard_body #content .mini_pagination a {
    min-height: 0 !important; display: inline-block !important;
    padding: 3px 8px !important; font-size: 12px !important;
  }
}

/* 7b. Тёмные всплывающие меню движка (Forum Management / фильтры) — были белые. */
#ipboard_body #content .ipbmenu_content,
#ipboard_body #content .menu,
#ipboard_body #content ul.menu,
#ipboard_body #content [id$="_menucontent"],
#ipboard_body #content .ipsControlStrip .menu {
  background: var(--xf-surface-2) !important;
  border: 1px solid var(--xf-border-lt) !important;
  color: var(--xf-text) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.5) !important;
}
#ipboard_body #content .ipbmenu_content a,
#ipboard_body #content .menu a,
#ipboard_body #content [id$="_menucontent"] a { color: var(--xf-text-2) !important; background: transparent !important; }
#ipboard_body #content .ipbmenu_content a:hover,
#ipboard_body #content .menu a:hover { color: var(--xf-orange-hi) !important; }

/* 7c. Чтение темы: текст сообщения на ВСЮ ширину (был отступ слева 185px под
   плавающую панель автора, которая теперь сверху). */
@media (max-width: 768px) {
  #ipboard_body #content .post_mobitanks .post_body { margin-left: 0 !important; width: auto !important; }
}

/* 7d. Подсветка тапа по ссылке (iOS) — не белый прямоугольник, а лёгкий оранжевый. */
#ipboard_body a { -webkit-tap-highlight-color: rgba(232,132,30,.18); }

/* 7k. Бейдж «Популярное сообщение» (.rep_highlight) — был светло-серый. */
#ipboard_body #content .rep_highlight,
#ipboard_body #content .popular,
#ipboard_body #content .__popular {
  background: var(--xf-surface-2) !important;
  border: 1px solid var(--xf-border-lt) !important;
  color: var(--xf-text-2) !important;
}

/* 7l. ШАПКА форума на всю ширину (логотип к краю, как на портале — портал full-width,
   форум был max-width:1200 по центру → логотип «не от края»). */
#ipboard_body #xh_funi_header .xh-header-inner { max-width: none !important; }

/* 7m. Дропдаун выбора языка — без ГОРИЗОНТАЛЬНОГО скролла (owner: «скролы в выборе языка»). */
#ipboard_body #xh_funi_header #xhf-lang-dd { overflow-x: hidden !important; }
#ipboard_body #xh_funi_header #xhf-lang-dd li a { white-space: normal !important; }

/* 7h. ШАПКА: движок (ipb_styles.css) переопределял цвета ссылок/языка на тёмно-серый.
   Возвращаем портальные цвета (язык, навигация, логотип) — чтобы цвет совпадал с порталом. */
#ipboard_body #xh_funi_header .xh-lang,
#ipboard_body #xh_funi_header .xh-lang span,
#ipboard_body #xh_funi_header .xh-user,
#ipboard_body #xh_funi_header .xh-user span { color: var(--xf-text-2) !important; }
/* ник залогиненного — ТОЧНО цвет портала var(--xh-yellow)=#c8a820 (был #FFCC00 — ярче портала). */
#ipboard_body #xh_funi_header .xh-user .xh-user-nick { color: var(--xh-yellow, #c8a820) !important; font-family: var(--xf-fb) !important; font-weight: 700 !important; }
/* Логотип «дёргался» на пару пикселей при скролле на ПК: sticky-шапка форума перерисовывалась
   суб-пиксельно (внутри движка форума). Поднимаем шапку на отдельный композ-слой — тряска уходит.
   Только форум (#ipboard_body), портал не трогаем. */
/* Логотип «скакал» при скролле на ПК. Настоящая причина: backdrop-filter:blur на ФИКСИРОВАННОЙ
   шапке при дробном масштабе экрана Windows (125% → devicePixelRatio 1.25). Блюр перерисовывается
   каждый кадр со сдвигом в долю пикселя — отсюда дрожь логотипа. Лечение:
   1) шапка фиксированная (рисуется в постоянной точке), контент опускаем на её высоту;
   2) на форуме убираем блюр и делаем фон НЕПРОЗРАЧНЫМ (на тёмной странице визуально то же самое,
      но перерисовывать нечего → дрожь уходит). Портал не трогаем. */
#ipboard_body #xh_funi_header {
  position: fixed !important; top: 0; left: 0; right: 0;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  background: #070c16 !important;
}
/* HDR-GAP 2026-06-06: убран резерв 58px под тело форума. Он нужен был «фиксированной» шапке,
   но после унификации шапка рендерится общим xh_header_html → <header class="xh-header"> БЕЗ
   id #xh_funi_header (правило fixed под старый id перестало срабатывать), шапка стала sticky (в
   обычном потоке, blur уже выключен → дрожи нет). Резерв тела при sticky-шапке давал пустой провал
   ~58px над шапкой. Убираем — шапка форума садится вверх как на портале (там тоже sticky, без резерва). */
/* ТОЛЬКО десктоп: шапка sticky (в потоке) → резерв сверху не нужен.
   На мобильном (≤768px) шапка fixed и unified-header.css даёт #ipboard_body отступ
   var(--xh-header-h) — НЕ перекрываем его нулём, иначе шапка наезжает на путь/заголовок темы. */
@media (min-width: 769px) { #ipboard_body { padding-top: 0 !important; } }
#ipboard_body #xh_funi_header .xh-nav a { color: var(--xf-text-2) !important; }
#ipboard_body #xh_funi_header .xh-nav a.is-active { color: var(--xf-orange) !important; }
#ipboard_body #xh_funi_header .xh-logo-text { color: var(--xf-text) !important; }
#ipboard_body #xh_funi_header .xh-logo-x { color: var(--xf-orange) !important; }
#ipboard_body #xh_funi_header .xh-login-link { color: var(--xf-text) !important; }
#ipboard_body #xh_funi_header .xh-lang-dropdown a,
#ipboard_body #xh_funi_header .xh-user-dropdown a { color: var(--xf-text-2) !important; }

/* 7j. «Красная полоса» слева от сообщения — это картинка-полоса (мод форума: inline
   background-image репитом по Y, ~8px, цвет = группа автора; красная = админ).
   Owner: слишком толстая + не под оранжевой. Сужаем до 3px (как оранжевый акцент заголовка)
   и выравниваем по левому краю карточки сообщения. */
#ipboard_body #content .post_mobitanks {
  background-size: 3px 100% !important;
  background-position: left top !important;
  background-repeat: repeat-y !important;
  margin-left: 0 !important;
  padding-left: 12px !important;
  border-radius: 0 !important;
}

/* 7i. Цитаты в сообщениях — были на белом фоне. */
#ipboard_body #content blockquote,
#ipboard_body #content .quote,
#ipboard_body #content .citation,
#ipboard_body #content .ipsBlockquote,
#ipboard_body #content .ipsQuote {
  background: var(--xf-surface-2) !important;
  border: 1px solid var(--xf-border) !important;
  border-left: 3px solid var(--xf-orange) !important;
  color: var(--xf-text) !important;
}
#ipboard_body #content .citation .top,
#ipboard_body #content .quotetop,
#ipboard_body #content .quotetitle,
#ipboard_body #content .ipsQuote_citation {
  background: var(--xf-surface-3) !important; color: var(--xf-text-2) !important;
}

/* 7g. Тёмные монохромные иконки движка (скрепка вложений и пр. из style_images) —
   на тёмном фоне были не видны (чёрные). Осветляем фильтром по пути картинки. */
#ipboard_body #content img[src*="icon_attach"],
#ipboard_body #content img[src*="/style_images/"][src*="attach"],
#ipboard_body #content .attachments img[src*="/style_images/"] {
  filter: brightness(0) invert(0.78);
}

/* 7e. Шапка сообщения (ник + #N) — БЕЗ оранжевой полоски слева (owner: у админа уже
   есть красная полоса на всю высоту сообщения, дублировать не нужно). */
#ipboard_body #content .post_block h3,
#ipboard_body #content .post_block h3.row2,
#ipboard_body #content .post_block h3:first-child {
  border-left: 0 !important;
}
/* 7f. Отступ текста сообщения от левого края (был впритык к полосе). Полосу группы
   оставляем тонкой (рамка карточки 1px), без толстого бара. */
#ipboard_body #content .post_block { padding-left: 12px !important; }
#ipboard_body #content .post_mobitanks { padding-left: 2px; }

/* ===========================================================================
   8) СИСТЕМНОЕ ЗАТЕМНЕНИЕ БЕЛОГО — по родному CSS движка (ipb_styles.css), а не «на глаз».
   Точные источники светлого фона из движка → перекрываем поимённо.
   =========================================================================== */
#ipboard_body #content .row1,
#ipboard_body #content .row2,
#ipboard_body #content .altrow,
#ipboard_body #content .post_block.row1,
#ipboard_body #content .post_block.row2,
#ipboard_body #content .unread .altrow,
#ipboard_body #content .unread.altrow,
#ipboard_body #content .highlighted,
#ipboard_body #content .highlighted .altrow,
#ipboard_body #content .moderated .row2 {
  background: transparent !important;
}
/* подсветка строки/наведения → тёмная, не #fff/#d5dde5 */
#ipboard_body #content .ipbmenu_content a:hover,
#ipboard_body #content #more_apps_menucontent li:hover,
#ipboard_body #content .submenu_container li:hover,
#ipboard_body #content tr.__topic:hover,
#ipboard_body #content .ipsList_table > li:hover {
  background: var(--xf-surface-3) !important;
}
/* белые служебные инпуты движка */
#ipboard_body #content .ipsTagBox_hiddeninput,
#ipboard_body #content #outerImageContainer,
#ipboard_body #content #imageDataContainer { background: var(--xf-surface-2) !important; }

/* ===========================================================================
   9) РОДНОЙ ПОДВАЛ ДВИЖКА — убрать (дублирует портальный, нагромождён, налазит).
   Навигация/копирайт есть в портальном подвале (#xh_funi_footer).
   =========================================================================== */
#ipboard_body #footer_utilities { display: none !important; }

/* 10) Пагинация не должна быть «массивной/растянутой» — компактнее. */
#ipboard_body #content .ipsPagination a,
#ipboard_body #content .pagination a {
  min-height: 0 !important;
  padding: 5px 10px !important;
  display: inline-block !important;
  line-height: 1.4 !important;
}

/* 11) Убрать нижние блоки индекса форума по просьбе владельца (2026-06-03):
   #board_stats — «Пользователей онлайн: N / за последние 15 минут / список»,
   #board_statistics — «Статистика форума / Больше всего за день / Сегодня нас посетили» + вкладки справа.
   Прячем визуально (движок не трогаем — только скин). */
#ipboard_body #board_stats,
#ipboard_body #board_statistics { display: none !important; }
