/* ==========================================================================
   Главная сайта в стиле форума: те же цвета, шрифты, ширина и разметка блоков.
   Палитра — один в один с forum/clientscript/fz/fz.css.
   ========================================================================== */
:root {
  --f-graphite: #30343a;
  --f-alt1: #f1f1f1;
  --f-alt2: #f6f6f6;
  --f-head: #e5e5e5;
  --f-grid: #d9d9d9;
  --f-border: #cfcfcf;
  --f-hover-row: #e8e8e8;
  --f-ink: #111214;
  --f-ink-2: #333333;
  --f-accent: #ff7a18;
  --f-accent-dark: #ec6810;
  --f-link-hover: #225390;
  --accent: #ff7a18; --accent-dark: #ec6810; --link-hover: #225390;
  --text: #111214; --text-2: #333; --text-muted: #5f5f5d; --muted: #5f5f5d;
  --border: #d9d9d9; --border-strong: #cfcfcf;
}
body { font-family: "Exo 2", -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important; font-size: 16.5px; color: var(--f-ink) !important; background: #fff !important; }

/* ---------- сетка: ширина как у форума ---------- */
.home-layout {
  max-width: min(95vw, 1900px) !important; margin: 0 auto !important;
  padding: 18px 18px 28px !important; box-sizing: border-box;
  grid-template-columns: 280px minmax(0, 1fr) !important; gap: 18px !important;
}
.home-side { gap: 18px !important; top: 12px !important; }
.home-main { gap: 18px !important; }
@media (max-width: 900px) {
  .home-layout { grid-template-columns: 1fr !important; padding: 12px 10px 24px !important; }
}

/* ---------- общий вид блока: как карточка раздела на форуме ---------- */
.side-card, .news-section, .home-main .feed-section, .home-main .section#about, .news-empty {
  background: var(--f-alt2) !important; border: 1px solid var(--f-border) !important;
  border-radius: 2px !important; box-shadow: none !important; overflow: hidden; padding: 0 !important;
}
/* графитовая полоса-заголовок */
.side-card > h3, .news-head, .feed-head, .home-main .section#about > .section-tag {
  display: flex !important; align-items: center !important; justify-content: flex-start !important;
  gap: 8px; margin: 0 !important; padding: 7px 16px !important; min-height: 34px; box-sizing: border-box;
  background: var(--f-graphite) !important; color: #fff !important; border: 0 !important;
}
/* заголовки с элементом справа (ссылка/счётчик) разносим по краям */
.news-head, .feed-head { justify-content: space-between !important; }
.side-card > h3 .sch-open { margin-left: auto; }
.side-card > h3 .fz-ico { width: 18px; height: 18px; flex: 0 0 18px; }
.side-card > h3, .news-head h2, .feed-head h2, .home-main .section#about > .section-tag {
  font-family: "Exo 2", sans-serif !important; font-size: 16px !important; font-weight: 700 !important;
  letter-spacing: 0 !important; text-transform: none !important; line-height: 1.25 !important; color: #fff !important; margin: 0 !important;
}
.feed-head > div { display: flex; align-items: center; }
.feed-head .section-tag { display: none !important; }
.news-admin-link, .feed-head .feed-all {
  color: rgba(255,255,255,.85) !important; font-size: 13px !important; text-transform: none !important; letter-spacing: 0 !important;
}
.news-admin-link:hover, .feed-head .feed-all:hover { color: var(--f-accent) !important; }
.home-main .section#about > .section-tag::before, .home-main .section#about > .section-tag::after { display: none !important; }

/* ---------- левая колонка ---------- */
.side-card > :not(h3) { padding-left: 14px; padding-right: 14px; }
.side-card > :not(h3):first-of-type, .side-card > h3 + * { padding-top: 12px; }
.side-card > :last-child { padding-bottom: 14px; }
.side-card:not(:has(> h3))::before {
  content: "Кабинет"; display: block; padding: 7px 16px; min-height: 34px; box-sizing: border-box;
  background: var(--f-graphite); color: #fff; font-weight: 700; font-size: 16px; line-height: 20px;
}
.side-card:not(:has(> h3)) > .side-user { margin-top: 12px !important; }
.side-login .sl-field {
  border: 1px solid var(--f-border) !important; border-radius: 2px !important; background: #fff !important;
  font-family: inherit !important; font-size: 15px !important; padding: 8px 10px !important;
}
.side-login .sl-field:focus { border-color: var(--f-accent-dark) !important; box-shadow: none !important; }
.side-login .sl-btn, .btn-primary {
  background: linear-gradient(180deg,#ff9a45 0%,#ec6810 100%) !important; border-radius: 2px !important; font-family: inherit !important;
  font-weight: 700 !important; font-size: 15.5px !important; text-transform: none !important; letter-spacing: 0 !important;
  box-shadow: none !important; transform: none !important;
}
.side-login .sl-btn:hover, .btn-primary:hover { background: linear-gradient(180deg,#ffab60 0%,#f07418 100%) !important; }
.side-login .sl-links a, .side-menu a { color: var(--f-ink-2) !important; font-size: 13.5px !important; }
.side-login .sl-links a:hover, .side-menu a:hover { color: var(--f-link-hover) !important; background: var(--f-hover-row) !important; }
.side-menu a { font-size: 15px !important; border-radius: 2px !important; }
.side-user .su-name { color: var(--f-ink) !important; font-size: 17px !important; }
.side-user .su-role { color: var(--f-ink-2) !important; font-size: 13.5px !important; }
.side-user .su-ava { border-radius: 50% !important; background: #fff !important; border: 1px solid var(--f-border); }
.side-servers .srv-soon, .side-servers .srv-info { color: var(--f-ink-2) !important; font-size: 14px !important; }
.side-servers .srv-name { font-size: 15px !important; color: var(--f-ink) !important; }

/* ---------- новости: строки как у форума ---------- */
.news-section { max-width: none !important; }
.news-box { background: transparent !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; }
.news-row {
  padding: 9px 16px !important; border-bottom: 1px solid var(--f-grid) !important;
  background: var(--f-alt2); align-items: center !important;
}
.news-row:hover { background: var(--f-hover-row) !important; }
.news-row .nr-title { color: var(--f-ink) !important; font-size: 15.5px !important; font-weight: 600 !important; }
.news-row.lead .nr-title { font-size: 17px !important; }
.news-row:hover .nr-title { color: var(--f-link-hover) !important; }
.news-row .nr-date { color: var(--f-ink-2) !important; font-size: 13px !important; }
.news-row .nr-thumb { border-radius: 2px !important; }
.news-empty { padding: 14px 16px !important; color: var(--f-ink-2) !important; }

/* ---------- чат на главной сайта не показываем ---------- */
.chat-section { display: none !important; }

/* ---------- последние обсуждения / в этот день: как «Последние сообщения» ---------- */
.home-main .feed-section { max-width: none !important; margin: 0 !important; }
.feed-inner { max-width: none !important; }
.feed-list, .otd-list { gap: 0 !important; }
.feed-item, .otd-item {
  display: flex !important; align-items: center !important; gap: 12px !important;
  background: var(--f-alt2) !important; border: 0 !important; border-bottom: 1px solid var(--f-grid) !important;
  border-radius: 0 !important; padding: 8px 16px !important; box-shadow: none !important; transform: none !important;
}
.feed-item:last-child, .otd-item:last-child { border-bottom: 0 !important; }
.feed-item:hover, .otd-item:hover { background: var(--f-hover-row) !important; transform: none !important; box-shadow: none !important; }
.feed-title, .otd-title { color: var(--f-ink) !important; font-size: 15.5px !important; font-weight: 600 !important; }
.feed-item:hover .feed-title, .otd-item:hover .otd-title { color: var(--f-link-hover) !important; }
.feed-meta, .otd-meta { color: var(--f-ink-2) !important; font-size: 13px !important; }
.feed-meta .feed-forum, .otd-meta .feed-forum { color: var(--f-ink-2) !important; font-weight: 600; }
.feed-stats { gap: 0 !important; }
.feed-stats .fs { min-width: 76px !important; }
.feed-stats .fs-n { font-family: "Exo 2", sans-serif !important; font-size: 16px !important; font-weight: 700 !important; color: var(--f-ink) !important; }
.feed-stats .fs-l { font-size: 12.5px !important; color: var(--f-ink-2) !important; text-transform: none !important; letter-spacing: 0 !important; }
/* значок-папка перед темой, как в статистике форума */
.feed-title::before {
  content: ""; display: inline-block; width: 16px; height: 14px; margin-right: 8px; vertical-align: -2px;
  background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14'%3E%3Cdefs%3E%3ClinearGradient id='b' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23c7ccea'/%3E%3Cstop offset='1' stop-color='%238f99c9'/%3E%3C/linearGradient%3E%3ClinearGradient id='f' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23f4f5fc'/%3E%3Cstop offset='1' stop-color='%23c9cee8'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M1.5 2.5h4.2l1.4 1.5h7.4v8.5h-13z' fill='url(%23b)' stroke='%235f6ea6' stroke-linejoin='round'/%3E%3Cpath d='M3.6 6.3h11.9l-1.7 6.2h-12.3z' fill='url(%23f)' stroke='%235f6ea6' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 16px 14px;
}
/* «в этот день»: год отдельной колонкой */
.otd-when { border-right: 1px solid var(--f-grid) !important; flex: 0 0 64px !important; padding-right: 12px !important; }
.otd-year { font-family: "Exo 2", sans-serif !important; font-size: 17px !important; font-weight: 700 !important; color: var(--f-ink) !important; }
.otd-ago { font-size: 12px !important; color: var(--f-ink-2) !important; }

/* ---------- разделы портала ---------- */
.home-main .section#about { max-width: none !important; }
.cards-grid { gap: 0 !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.cards-grid .card {
  background: var(--f-alt2) !important; border: 0 !important; border-right: 1px solid var(--f-grid) !important;
  border-radius: 0 !important; box-shadow: none !important; transform: none !important; padding: 14px 16px !important;
}
.cards-grid .card:last-child { border-right: 0 !important; }
.cards-grid .card:hover { background: var(--f-hover-row) !important; transform: none !important; box-shadow: none !important; }
.cards-grid .card::before { display: none !important; }
.cards-grid .card-icon { background: none !important; border: 0 !important; width: auto !important; height: auto !important; margin-bottom: 8px !important; }
.cards-grid .card h3 { font-size: 16px !important; font-weight: 700 !important; color: var(--f-ink) !important; }
.cards-grid .card:hover h3 { color: var(--f-link-hover) !important; }
.cards-grid .card p { font-size: 14px !important; color: var(--f-ink-2) !important; font-weight: 400 !important; }
@media (max-width: 1000px) {
  .cards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .cards-grid .card { border-bottom: 1px solid var(--f-grid) !important; }
}

/* ---------- подвал: как у форума ---------- */
footer {
  background: #ececeb !important; border-top: 1px solid var(--f-grid) !important;
  padding: 14px max(18px, calc((100vw - min(95vw, 1900px)) / 2 + 18px)) !important;
}
footer p, footer a { font-size: 13.5px !important; color: var(--f-ink-2) !important; }
footer a:hover { color: var(--f-link-hover) !important; }

/* ссылки по всему сайту — наведение синее, как на форуме */
a:hover { color: var(--f-link-hover); }

/* блоки внутри <main> — с тем же промежутком, что и остальные */
.home-main main { display: flex; flex-direction: column; gap: 18px; background: none !important; }
.home-main main > .feed-section, .home-main main > .section { margin: 0 !important; }
.side-servers .srv-soon, .side-card .side-login, .side-card .side-menu { padding-left: 14px !important; padding-right: 14px !important; }
.side-servers .srv-soon { padding-top: 12px !important; padding-bottom: 14px !important; }
.side-servers .srv { padding-left: 14px !important; padding-right: 14px !important; border-bottom-color: var(--f-grid) !important; }

/* ==========================================================================
   Центр главной: только лента новостей, каждая новость — как пост на форуме
   ========================================================================== */
.fz-news { display: flex; flex-direction: column; gap: 12px; }
.fz-news-bar {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 7px 16px; min-height: 34px; box-sizing: border-box;
  background: var(--f-graphite); color: #fff; font-weight: 700; font-size: 16px; border-radius: 2px;
}
.fz-news-bar a { color: rgba(255,255,255,.85); font-size: 13px; font-weight: 400; text-decoration: none; }
.fz-news-bar a:hover { color: var(--f-accent); }
.fz-news-bar + .fz-news-item, .fz-news-bar + .fz-news-empty { margin-top: -12px; border-top: 0 !important; }

.fz-news-item { background: var(--f-alt2); border: 1px solid var(--f-border); border-radius: 2px; overflow: hidden; }
.fz-ni-head {
  display: flex; align-items: baseline; justify-content: space-between; gap: 14px;
  padding: 9px 16px; background: var(--f-head); border-bottom: 1px solid var(--f-grid);
}
a.fz-ni-title, a.fz-ni-title:link, a.fz-ni-title:visited { color: var(--f-ink); font-size: 18px; font-weight: 700; text-decoration: none; line-height: 1.3; }
a.fz-ni-title:hover { color: var(--f-link-hover); }
.fz-ni-date { flex: 0 0 auto; color: var(--f-ink-2); font-size: 13px; white-space: nowrap; }
.fz-ni-body { display: flex; gap: 16px; align-items: flex-start; padding: 14px 16px; }
.fz-ni-img { display: block; width: 220px; max-width: 34vw; height: auto; border: 1px solid var(--f-grid); border-radius: 2px; }
.fz-ni-text { flex: 1; min-width: 0; font-size: 16.5px; line-height: 1.6; color: var(--f-ink); }
.fz-ni-text p { margin: 0 0 10px; }
.fz-ni-text p:last-child { margin-bottom: 0; }
.fz-ni-text a { color: #0866a8; }
.fz-ni-text a:hover { color: var(--f-link-hover); }
.fz-ni-text img { max-width: 100%; height: auto; }
.fz-ni-foot {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 7px 16px 10px; font-size: 13.5px; color: var(--f-ink-2);
}
.fz-ni-meta b { color: var(--f-ink); font-weight: 600; }
a.fz-ni-more, a.fz-ni-more:link, a.fz-ni-more:visited {
  display: inline-flex; align-items: center; height: 30px; padding: 0 14px; border-radius: 2px;
  background: var(--f-accent); color: #fff; font-weight: 700; font-size: 13.5px; text-decoration: none;
}
a.fz-ni-more:hover { background: var(--f-accent-dark); color: #fff; }
.fz-news-empty { background: var(--f-alt2); border: 1px solid var(--f-border); padding: 16px; color: var(--f-ink-2); border-radius: 2px; }
.fz-news-empty a { color: var(--f-accent-dark); }
@media (max-width: 700px) {
  .fz-ni-body { flex-direction: column; }
  .fz-ni-img { width: 100%; max-width: none; }
  .fz-ni-head { flex-direction: column; gap: 2px; }
}

/* ==========================================================================
   Страница новости и комментарии
   ========================================================================== */
.fz-page { max-width: min(95vw, 1900px); margin: 0 auto; padding: 14px 18px 28px; box-sizing: border-box; display: flex; flex-direction: column; gap: 14px; }
.fz-crumbs { font-size: 14.5px; color: var(--f-ink-2); }
.fz-crumbs a { color: var(--f-ink); text-decoration: none; }
.fz-crumbs a:hover { color: var(--f-link-hover); }
.fz-crumbs b { color: var(--f-ink); }
h1.fz-ni-title { margin: 0; font-size: 22px; font-weight: 700; color: var(--f-ink); line-height: 1.3; }
.fz-ni-body-full { display: block; }
.fz-ni-img-full { display: block; max-width: 100%; max-height: 480px; margin: 0 0 14px; border: 1px solid var(--f-grid); border-radius: 2px; }
.fz-news-full .fz-ni-text { font-size: 17px; line-height: 1.7; }
.fz-ni-staff a { color: var(--f-ink-2); text-decoration: none; }
.fz-ni-staff a:hover { color: var(--f-link-hover); }

/* кнопка «Комментировать» на главной */
.fz-ni-actions { display: inline-flex; gap: 8px; align-items: center; }
a.fz-ni-comm, a.fz-ni-comm:link, a.fz-ni-comm:visited {
  display: inline-flex; align-items: center; height: 30px; padding: 0 14px; border-radius: 2px;
  background: #fff; border: 1px solid var(--f-border); color: var(--f-ink); font-weight: 700; font-size: 13.5px; text-decoration: none;
}
a.fz-ni-comm:hover { border-color: var(--f-accent-dark); color: var(--f-accent-dark); }
a.fz-ni-comm span { font-weight: 400; color: var(--f-ink-2); margin-left: 5px; }

.fz-comments { display: flex; flex-direction: column; }
.fz-comments > .fz-news-bar { border-radius: 2px 2px 0 0; }
.nc-wrap { background: var(--f-alt2); border: 1px solid var(--f-border); border-top: 0; padding: 6px 0; }
.nc-empty, .nc-login { padding: 12px 16px; color: var(--f-ink-2); font-size: 15px; }
.nc-login { background: var(--f-alt1); border: 1px solid var(--f-border); border-top: 0; }
.nc-login a { color: var(--f-accent-dark); }
.nc-list { list-style: none; margin: 0; padding: 0; }
.nc-sub { margin-left: 28px; border-left: 2px solid var(--f-grid); }
.nc-item { margin: 0; }
.nc-box { display: flex; gap: 12px; padding: 10px 16px; border-bottom: 1px solid #e4e4e2; }
.nc-sub .nc-box { padding-left: 14px; }
.nc-box:target, .nc-item:target > .nc-box { background: #fff7ee; }
.nc-ava {
  flex: 0 0 40px; width: 40px; height: 40px; border: 1px solid var(--f-border); border-radius: 50%; background: #fff;
  display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 18px; color: #6b6b69; overflow: hidden;
}
.nc-ava img { width: 100%; height: 100%; object-fit: cover; }
.nc-main { flex: 1; min-width: 0; }
.nc-head { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
a.nc-name { font-weight: 700; font-size: 15.5px; color: var(--f-ink); text-decoration: none; }
a.nc-name:hover, a.nc-name:hover span { color: var(--f-link-hover) !important; }
a.nc-date { font-size: 13px; color: var(--f-ink-2); text-decoration: none; }
a.nc-date:hover { color: var(--f-link-hover); }
.nc-text { margin-top: 4px; font-size: 16px; line-height: 1.6; color: var(--f-ink); overflow-wrap: anywhere; }
.nc-text a { color: #0866a8; }
.nc-actions { display: flex; gap: 6px; margin-top: 6px; align-items: center; }
.nc-btn, a.nc-btn, a.nc-btn:link, a.nc-btn:visited, button.nc-btn {
  display: inline-flex; align-items: center; height: 26px; padding: 0 11px; border-radius: 2px; font: inherit; font-size: 13px; font-weight: 600;
  background: #fff; border: 1px solid var(--f-border); color: var(--f-ink); text-decoration: none; cursor: pointer;
}
.nc-btn:hover { border-color: var(--f-accent-dark); color: var(--f-accent-dark); }
.nc-btn-del { color: #b23a12; border-color: #f0c8b6; background: #fdf1ec; }
.nc-btn-del:hover { background: #b23a12; border-color: #b23a12; color: #fff; }
.nc-del { display: inline; margin: 0; }
.nc-deleted { padding: 4px 0; color: #6b6b69; font-style: italic; font-size: 14px; }

.nc-form { background: var(--f-alt1); border: 1px solid var(--f-border); border-top: 0; padding: 12px 16px 14px; }
.nc-main .nc-form { margin-top: 10px; border: 1px solid var(--f-border); border-radius: 2px; }
.nc-form-head { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 8px; }
.nc-form-title { font-weight: 700; font-size: 15.5px; color: var(--f-ink); }
.nc-replying { font-size: 14px; color: var(--f-ink-2); }
.nc-replying a { color: #b23a12; text-decoration: none; margin-left: 6px; }
.nc-err { margin-bottom: 8px; padding: 8px 12px; background: #fdf1ec; border: 1px solid #f0c8b6; color: #b23a12; border-radius: 2px; font-size: 14px; }
.nc-form textarea {
  display: block; width: 100%; min-height: 110px; resize: vertical; padding: 10px 12px; box-sizing: border-box;
  border: 1px solid var(--f-border); border-radius: 2px; background: #fff; font: inherit; font-size: 16px; line-height: 1.5; color: var(--f-ink);
}
.nc-form textarea:focus { outline: none; border-color: var(--f-accent-dark); }
.nc-form-foot { display: flex; justify-content: flex-end; margin-top: 10px; }
.nc-submit {
  height: 36px; padding: 0 20px; border: 0; border-radius: 2px; background: linear-gradient(180deg,#ff9a45 0%,#ec6810 100%); color: #fff;
  font: inherit; font-weight: 700; font-size: 15px; cursor: pointer;
}
.nc-submit:hover { background: linear-gradient(180deg,#ffab60 0%,#f07418 100%); }
@media (max-width: 700px) {
  .nc-sub { margin-left: 12px; }
  .nc-ava { flex-basis: 32px; width: 32px; height: 32px; font-size: 15px; }
}

/* ---------- меню кабинета: аккуратные значки ---------- */
.side-menu { gap: 2px !important; }
.side-menu a { display: flex !important; align-items: center !important; gap: 10px !important; padding: 7px 8px !important; font-size: 15.5px !important; color: var(--f-ink) !important; text-decoration: none !important; }
.side-menu a .sm-ico {
  flex: 0 0 30px; width: 30px; height: 30px; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 2px; background: #fff; border: 1px solid var(--f-border); font-style: normal;
}
.side-menu a .sm-ico svg { width: 18px; height: 18px; fill: none; stroke: var(--f-accent-dark); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.side-menu a:hover { background: var(--f-hover-row) !important; color: var(--f-link-hover) !important; }
.side-menu a:hover .sm-ico { border-color: var(--f-accent-dark); background: #fff7ee; }
.side-menu a.sm-logout .sm-ico svg { stroke: #8a8a88; }
.side-menu a.sm-logout:hover .sm-ico { border-color: #b23a12; background: #fdf1ec; }
.side-menu a.sm-logout:hover .sm-ico svg { stroke: #b23a12; }

/* ---------- «Последнее на форуме» ---------- */
.side-latest .slt-list { list-style: none; margin: 0; padding: 0 !important; }
.side-latest .slt-row { padding: 8px 14px; border-bottom: 1px solid var(--f-grid); }
.side-latest .slt-row:hover { background: var(--f-hover-row); }
.side-latest a.slt-title {
  display: block; font-weight: 700; font-size: 14.5px; line-height: 1.35; color: var(--f-ink); text-decoration: none;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.side-latest a.slt-title::before {
  content: ""; display: inline-block; width: 16px; height: 14px; margin-right: 6px; vertical-align: -2px;
  background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14'%3E%3Cdefs%3E%3ClinearGradient id='b' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23c7ccea'/%3E%3Cstop offset='1' stop-color='%238f99c9'/%3E%3C/linearGradient%3E%3ClinearGradient id='f' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23f4f5fc'/%3E%3Cstop offset='1' stop-color='%23c9cee8'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M1.5 2.5h4.2l1.4 1.5h7.4v8.5h-13z' fill='url(%23b)' stroke='%235f6ea6' stroke-linejoin='round'/%3E%3Cpath d='M3.6 6.3h11.9l-1.7 6.2h-12.3z' fill='url(%23f)' stroke='%235f6ea6' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 16px 14px;
}
.side-latest a.slt-title:hover { color: var(--f-link-hover); }
.side-latest .slt-meta { display: flex; align-items: center; gap: 5px; margin-top: 3px; font-size: 13px; color: var(--f-ink-2); min-width: 0; }
.side-latest .slt-user { font-weight: 600; color: var(--f-ink); text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 55%; }
.side-latest a.slt-user:hover, .side-latest a.slt-user:hover span { color: var(--f-link-hover) !important; }
.side-latest .slt-sep { color: #9a9a98; }
.side-latest .slt-n { white-space: nowrap; }
.side-latest a.slt-go {
  margin-left: auto; flex: 0 0 16px; width: 16px; height: 16px; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 2px; background: linear-gradient(180deg, #4d95dc 0%, #2f6fbf 100%); border: 1px solid #1f4f8f;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35); box-sizing: border-box;
}
.side-latest a.slt-go::before { content: ""; width: 5px; height: 5px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: translateX(-1px) rotate(-45deg); }
.side-latest a.slt-go:hover { background: linear-gradient(180deg, #ff9a45 0%, #ec6810 100%); border-color: #b94f08; }
.side-latest a.slt-all { display: block; padding: 8px 14px 10px !important; font-size: 13.5px; color: var(--f-ink-2); text-decoration: none; text-align: right; }
.side-latest a.slt-all:hover { color: var(--f-link-hover); }

/* ===== оценки комментариев +1 / −1 ===== */
.nc-actions { flex-wrap: wrap; }
.nc-vote { margin-left: auto; display: inline-flex; gap: 4px; }
.nc-v {
  font: 600 12px/1 'Exo 2', sans-serif; height: 24px; padding: 0 9px; border-radius: 2px; cursor: pointer;
  display: inline-flex; align-items: center; gap: 5px; background: #fff; border: 1px solid #cfcfcf; color: #555;
  transition: background .12s, border-color .12s, color .12s;
}
.nc-v b { font-weight: 700; color: #111214; min-width: 8px; text-align: center; }
.nc-v-plus  { color: #2e8b3a; }
.nc-v-minus { color: #c0322b; }
.nc-v-plus:not([disabled]):hover  { border-color: #2e8b3a; background: #eef8ef; }
.nc-v-minus:not([disabled]):hover { border-color: #c0322b; background: #fcefee; }
.nc-v-plus.is-my  { background: #2e8b3a; border-color: #2e8b3a; color: #fff; }
.nc-v-minus.is-my { background: #c0322b; border-color: #c0322b; color: #fff; }
.nc-v.is-my b { color: #fff; }
.nc-v[disabled] { cursor: default; background: #f6f6f6; }
.nc-vote.is-busy { opacity: .55; pointer-events: none; }

/* ===== три колонки: кабинет/серверы | новости | чат/форум ===== */
.home-layout { grid-template-columns: 270px minmax(0, 1fr) 330px !important; }
.home-side-r { position: sticky; }
@media (max-width: 1250px) {
  .home-layout { grid-template-columns: 250px minmax(0, 1fr) !important; }
  .home-side-r { grid-column: 1 / -1; position: static !important; display: grid !important;
                 grid-template-columns: 1fr 1fr; align-items: start; }
}
@media (max-width: 900px) {
  .home-layout { grid-template-columns: 1fr !important; }
  .home-side-r { grid-template-columns: 1fr; }
}

/* блок «Последнее в чате» */
.side-chat .sch-list { list-style: none; margin: 0; padding: 0 !important; }
.side-chat .sch-row { padding: 7px 14px 8px; border-bottom: 1px solid var(--f-grid); }
.side-chat .sch-row:hover { background: var(--f-hover-row); }
.side-chat .sch-head { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.side-chat .sch-user { font-weight: 700; font-size: 14px; color: var(--f-ink); text-decoration: none;
                       white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.side-chat a.sch-user:hover, .side-chat a.sch-user:hover span { color: var(--f-link-hover) !important; }
.side-chat .sch-time { margin-left: auto; font-size: 12px; color: var(--f-ink-2); white-space: nowrap; }
.side-chat .sch-msg { margin-top: 2px; font-size: 14px; line-height: 1.4; color: var(--f-ink); overflow-wrap: anywhere;
                      display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.side-chat .sch-msg img.fz-kolobok { vertical-align: middle; max-height: 22px; }
.side-chat a.slt-all { display: block; padding: 8px 14px 10px !important; font-size: 13.5px; color: var(--f-ink-2); text-decoration: none; text-align: right; }
.side-chat a.slt-all:hover { color: var(--f-link-hover); }
.side-chat .sch-q { color: var(--f-ink-2); font-size: 12.5px; font-style: italic; margin-right: 2px; }

/* «Последнее в чате» — компактно, в строку: время Ник: текст */
.side-chat .sch-row { padding: 5px 12px 6px !important; font-size: 13.5px; line-height: 1.38; color: var(--f-ink);
  display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.side-chat .sch-time { font-size: 12px; color: #3c3f44; margin-right: 3px; font-variant-numeric: tabular-nums; }
.side-chat .sch-user { font-size: 13.5px; font-weight: 700; display: inline; max-width: none; }
.side-chat .sch-msg { display: inline !important; margin: 0 !important; font-size: 13.5px; -webkit-line-clamp: unset; overflow: visible; }
.side-chat .sch-q { font-style: italic; color: #3c3f44; font-size: 13px; background: #ebebeb; border-left: 2px solid #9aa0a6; padding: 0 4px; border-radius: 1px; }
.side-chat .sch-msg img.fz-kolobok { max-height: 18px; vertical-align: -4px; }
.side-chat .sch-row { display: block !important; -webkit-line-clamp: unset; overflow: visible; }
.side-chat .sch-line { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.4; }
.side-chat .sch-msg img.fz-kolobok { max-height: 16px; vertical-align: -3px; }

/* строка отправки в чат на главной */
.side-chat .sch-form { display: flex; gap: 6px; padding: 8px 10px; background: #e5e5e5; border-bottom: 1px solid var(--f-grid); margin: 0; }
.side-chat .sch-form input {
  flex: 1; min-width: 0; height: 32px; padding: 0 9px; font: 14px 'Exo 2', sans-serif; color: var(--f-ink);
  background: #fff; border: 1px solid #cfcfcf; border-radius: 2px; outline: none;
}
.side-chat .sch-form input:focus { border-color: #4d95dc; box-shadow: 0 0 0 2px rgba(77,149,220,.18); }
.side-chat .sch-form button {
  flex: 0 0 32px; height: 32px; padding: 0; border-radius: 2px; cursor: pointer;
  background: linear-gradient(180deg, #ff9a45 0%, #ec6810 100%); border: 1px solid #b94f08;
  display: inline-flex; align-items: center; justify-content: center;
}
.side-chat .sch-form button:hover { background: linear-gradient(180deg, #ffab60 0%, #f07418 100%); }
.side-chat .sch-form button[disabled] { opacity: .55; cursor: default; }
.side-chat .sch-form button svg { width: 18px; height: 18px; fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.side-chat .sch-err { padding: 5px 12px; font-size: 13px; color: #b3261e; background: #fcefee; border-bottom: 1px solid var(--f-grid); }
.side-chat .sch-guest { padding: 7px 12px; font-size: 13px; color: #3c3f44; background: #e5e5e5; border-bottom: 1px solid var(--f-grid); }
.side-chat .sch-row.is-mine { background: #fff4ea; }

/* поле ввода — внизу блока, «Открыть чат» — кнопкой в графитовой полосе */
.side-chat .sch-form, .side-chat .sch-guest { border-bottom: 0 !important; border-top: 1px solid var(--f-grid); }
.side-chat .sch-err { border-bottom: 0 !important; border-top: 1px solid #f0c8c4; }
.side-chat .sch-list .sch-row:last-child { border-bottom: 0; }
.side-card > h3 a.sch-open {
  flex: 0 0 auto; height: 22px; padding: 0 10px; display: inline-flex; align-items: center;
  font: 600 12.5px/1 'Exo 2', sans-serif; color: #fff !important; text-decoration: none; border-radius: 2px;
  background: linear-gradient(180deg, #ff9a45 0%, #ec6810 100%); border: 1px solid #b94f08;
}
.side-card > h3 a.sch-open:hover { background: linear-gradient(180deg, #ffab60 0%, #f07418 100%); }
.side-card > h3 a.sch-open { width: 24px; height: 24px; padding: 0; justify-content: center; }
.side-card > h3 a.sch-open svg { width: 14px; height: 14px; fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }

/* глаз в поле пароля (блок входа слева) */
.side-login .sl-pw { position: relative; display: block; }
.side-login .sl-pw .sl-field { padding-right: 40px !important; }
.side-login .sl-eye { position: absolute; right: 1px; top: 1px; bottom: 1px; width: 36px; border: 0; background: transparent; cursor: pointer;
                      display: flex; align-items: center; justify-content: center; padding: 0; border-radius: 0 2px 2px 0; }
.side-login .sl-eye:hover { background: #eef3f9; }
.side-login .sl-eye svg { width: 20px; height: 20px; fill: none; stroke: #3c3f44; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.side-login .sl-eye:hover svg { stroke: #225390; }
.side-login .sl-eye .sl-eye-off { display: none; }
.side-login .sl-eye.on .sl-eye-off { display: inline; }
.side-login .sl-eye.on svg { stroke: #ec6810; }
.side-login .sl-pw { margin-bottom: .55rem; }
.side-login .sl-pw .sl-field { margin-bottom: 0 !important; }

/* =====================================================================
   МОБИЛЬНАЯ ВЕРСИЯ сайта (≤760px)
   ===================================================================== */
@media (max-width: 760px) {
  .home-layout { display: flex !important; flex-direction: column; gap: 14px !important; padding: 12px 10px 24px !important; max-width: none !important; }
  .home-main { order: 1; }
  .home-side-r { order: 2; display: flex !important; flex-direction: column; gap: 14px; position: static !important; }
  .home-side { order: 3; position: static !important; }
  /* вход уже есть в выезжающем меню шапки — второй блок не нужен */
  .home-side > .side-card:has(.side-login) { display: none !important; }

  /* лента новостей */
  .fz-ni-head { padding: 10px 12px !important; }
  .fz-ni-body { padding: 10px 12px !important; }
  .fz-ni-foot { flex-direction: column; align-items: stretch; gap: 8px; padding: 6px 12px 12px !important; }
  .fz-ni-meta { font-size: 13.5px; }
  .fz-ni-actions { display: flex !important; gap: 8px; width: 100%; }
  .fz-ni-actions a.fz-ni-comm, .fz-ni-actions a.fz-ni-more { flex: 1 1 0; justify-content: center; height: 38px !important; padding: 0 8px !important;
    font-size: 14px !important; white-space: nowrap; }
  .fz-ni-foot > a.fz-ni-more { justify-content: center; height: 38px !important; }

  /* правая колонка: чат и форум */
  .side-chat .sch-form input { font-size: 16px !important; height: 38px !important; }
  .side-chat .sch-form button { flex-basis: 38px !important; height: 38px !important; }
  .side-latest .slt-row { padding: 9px 12px !important; }

  /* страница новости и комментарии */
  .fz-page { padding: 10px 10px 24px !important; max-width: none !important; }
  h1.fz-ni-title { font-size: 19px !important; }
  .fz-news-full .fz-ni-text { font-size: 16px !important; }
  .nc-sub { margin-left: 10px !important; padding-left: 8px !important; }
  .nc-form textarea { font-size: 16px !important; }
  .nc-actions { gap: 6px !important; }
  .nc-v { height: 30px !important; }
}
@media (max-width: 760px) {
  .home-side.home-side-r { order: 2 !important; }
  .home-layout > * { width: 100% !important; max-width: 100% !important; min-width: 0 !important; margin: 0 !important; box-sizing: border-box; }
  .home-side, .home-side-r { gap: 14px !important; }
}
@media (max-width: 760px) { .home-layout .side-card { width: 100% !important; max-width: 100% !important; box-sizing: border-box; } }

/* ── иконки и правая группа в графитовых полосах ── */
.fz-news-bar .fz-ico { width: 18px; height: 18px; flex: 0 0 18px; opacity: .95; }
.fz-news-bar .fzb-t { display: flex; align-items: center; gap: 8px; min-width: 0; }
.fz-news-bar .fzb-r { display: flex; align-items: center; gap: 14px; flex: 0 0 auto; font-weight: 400; }
.fz-news-bar .fzb-r a { color: rgba(255,255,255,.85); font-size: 13px; text-decoration: none; white-space: nowrap; }
.fz-news-bar .fzb-r a:hover { color: var(--f-accent); }

/* ── блок «Главные разделы» ── */
.fz-forums { display: flex; flex-direction: column; gap: 12px; }
.fz-forums .fz-news-bar + .ff-wrap { margin-top: -12px; }
.ff-wrap { background: var(--f-alt2); border: 1px solid var(--f-border); border-top: 0; border-radius: 0 0 2px 2px; overflow: hidden; }
.ff-head, .ff-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(190px, 240px) 96px 70px; align-items: center; }
.ff-head { padding: 8px 16px; background: #ececec; border-bottom: 1px solid var(--f-border); font-size: 13px; font-weight: 700; color: var(--f-ink-2); text-transform: uppercase; letter-spacing: .03em; }
.ff-head .ff-c-last { }
.ff-head .ff-c-num, .ff-num { text-align: center; }
.ff-row { padding: 14px 16px; border-top: 1px solid var(--f-grid); }
.ff-row:first-of-type { border-top: 0; }
.ff-row:hover { background: #eef0f2; }
.ff-forum { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }
.ff-ico { flex: 0 0 auto; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; color: #8a8f96; background: #fff; border: 1px solid var(--f-border); border-radius: 2px; }
.ff-ico .fz-ico { width: 22px; height: 22px; }
.ff-info { min-width: 0; }
.ff-title { display: inline-block; font-size: 17px; font-weight: 700; color: #111214; text-decoration: none; }
.ff-title:hover { color: #000; text-decoration: underline; }
.ff-desc { margin-top: 2px; font-size: 14px; color: var(--f-ink-2); }
.ff-subs { margin-top: 5px; font-size: 13.5px; color: var(--f-ink-2); }
.ff-subs span { color: #6b7078; }
.ff-subs a { color: #111214; text-decoration: none; }
.ff-subs a:hover { color: #000; text-decoration: underline; }
.ff-subs a:not(:last-child)::after { content: " ·"; color: #b8bcc2; }
.ff-last { min-width: 0; font-size: 13.5px; padding-right: 10px; }
.ff-last-title { display: block; color: #111214; text-decoration: none; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ff-last-title:hover { color: #000; text-decoration: underline; }
.ff-last-meta { color: var(--f-ink-2); margin-top: 2px; line-height: 1.35; }
.ff-last .ff-empty { color: #9aa0a6; }
.ff-num { font-size: 16px; font-weight: 700; color: var(--f-ink); }

@media (max-width: 900px) {
  .ff-head { display: none; }
  .ff-row { grid-template-columns: 1fr auto; grid-template-areas: "forum forum" "last last" "n1 n2"; gap: 8px 12px; }
  .ff-forum { grid-area: forum; }
  .ff-last { grid-area: last; padding-right: 0; border-top: 1px dashed var(--f-grid); padding-top: 8px; }
  .ff-num { text-align: left; font-size: 14px; font-weight: 400; color: var(--f-ink-2); }
  .ff-num::before { content: attr(data-label) ": "; color: #6b7078; }
  .ff-num:nth-of-type(3) { grid-area: n1; } .ff-num:nth-of-type(4) { grid-area: n2; }
}

/* ── блок «Онлайн» ── */
.side-online .so-count { font-size: 15px; color: var(--f-ink); }
.side-online .so-count b { color: var(--f-accent-dark); }
.side-online .so-sub { font-size: 13.5px; color: var(--f-ink-2); margin-top: 2px; }
.side-online .so-users { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--f-grid); font-size: 14px; line-height: 1.7; }
.side-online .so-user { text-decoration: none; }
.side-online .so-user:hover { text-decoration: underline; }
.side-online .so-empty { margin-top: 8px; font-size: 13.5px; color: #6b7078; }

/* ── компактные новости на главной (макс. 3, клик → сама новость) ── */
.fz-news .fz-news-bar + .fz-nc { margin-top: -12px; }
.fz-nc { display: flex; flex-direction: column; background: var(--f-alt2); border: 1px solid var(--f-border); border-radius: 2px; overflow: hidden; }
.fz-nc-lnk { display: flex; align-items: stretch; gap: 14px; padding: 12px 14px; text-decoration: none; color: inherit; }
.fz-nc-lnk:hover { background: #eef0f2; }
.fz-nc-lnk:hover .fz-nc-title { color: var(--f-accent-dark); }
.fz-nc-thumb { flex: 0 0 116px; width: 116px; height: 74px; border-radius: 2px; background: #d9dde2 center/cover no-repeat; overflow: hidden;
  display: flex; align-items: center; justify-content: center; }
.fz-nc-thumb--none { background: #e6e9ed; }
.fz-nc-thumb--none .fz-ico { width: 26px; height: 26px; color: #9aa0a8; }
.fz-nc-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; justify-content: center; }
.fz-nc-titrow { display: flex; align-items: baseline; gap: 12px; }
.fz-nc-title { flex: 1; min-width: 0; font-size: 17px; font-weight: 700; color: var(--f-ink); line-height: 1.25; }
.fz-nc-date { flex: 0 0 auto; font-size: 13px; color: #6b7078; white-space: nowrap; }
.fz-nc-sum { font-size: 14px; color: var(--f-ink-2); line-height: 1.4; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
/* подвал новости: слева иконки просмотров/комментариев, справа «Подробнее» */
.fz-nc-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 14px 10px; border-top: 0; background: transparent; }
.fz-nc-stats { display: flex; align-items: center; gap: 16px; }
.fz-nc-stat { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; color: #6b7078; text-decoration: none; }
.fz-nc-stat svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
a.fz-nc-comm:hover { color: var(--f-accent-dark); }
a.fz-nc-comm:focus { outline: none; }
a.fz-nc-comm:focus-visible { outline: 2px solid var(--f-accent-dark); outline-offset: 1px; }
.fz-nc-more { font-size: 13px; font-weight: 600; color: var(--f-accent-dark); text-decoration: none; white-space: nowrap; }
.fz-nc-more:hover { color: var(--f-accent); text-decoration: underline; }
@media (max-width: 560px) {
  .fz-nc-thumb { flex-basis: 84px; width: 84px; height: 60px; }
  .fz-nc-sum { -webkit-line-clamp: 1; }
}

  background: var(--f-graphite); color: #fff !important; font-size: 13.5px; font-weight: 600; text-decoration: none; border-radius: 2px; }
.fz-news-all:hover { background: var(--f-accent-dark); color: #fff !important; }


/* ── смена аватара из блока «Кабинет» (та же модалка, что в профиле) ── */
/* ── профиль: смена аватара из профиля ── */
body.fzp-profile .pf-ava { position: relative; }
body.fzp-profile .pf-ava-self { cursor: pointer; }
body.fzp-profile .pf-ava-cam { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px;
  background: rgba(17,18,20,.55); color: #fff; opacity: 0; transition: opacity .15s; border-radius: 50%; }
body.fzp-profile .pf-ava-cam svg { width: 26px; height: 26px; fill: none; stroke: #fff; stroke-width: 1.8; stroke-linejoin: round; }
body.fzp-profile .pf-ava-cam b { font: 600 11.5px/1.2 'Exo 2', sans-serif; }
body.fzp-profile .pf-ava-self:hover .pf-ava-cam, body.fzp-profile .pf-ava-self:focus-visible .pf-ava-cam { opacity: 1; }
@media (hover: none) { body.fzp-profile .pf-ava-cam { opacity: 1; background: none; justify-content: flex-end; padding-bottom: 6px; }
  body.fzp-profile .pf-ava-cam b { display: none; } body.fzp-profile .pf-ava-cam svg { width: 22px; height: 22px; background: #30343a; border-radius: 2px; padding: 3px; } }
.pf-avm[hidden] { display: none !important; }
.pf-avm { position: fixed; inset: 0; z-index: 100000; background: rgba(17,18,20,.55); display: flex; align-items: center; justify-content: center; padding: 16px; }
.pf-avm-box { width: min(520px, 100%); max-height: calc(100vh - 32px); overflow-y: auto; background: #f6f6f6; border: 1px solid #cfcfcf; border-radius: 2px; box-shadow: 0 16px 40px rgba(0,0,0,.35); font-family: 'Exo 2', sans-serif; color: #111214; }
.pf-avm-head { display: flex; align-items: center; justify-content: space-between; height: 40px; padding: 0 6px 0 14px; background: #30343a; color: #fff; font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: .04em; }
.pf-avm-x { width: 30px; height: 30px; border: 0; background: transparent; color: #fff; font-size: 22px; cursor: pointer; border-radius: 2px; }
.pf-avm-x:hover { background: rgba(255,255,255,.14); }
.pf-avm-step { padding: 14px; }
.pf-avm-drop { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 34px 16px; background: #fff; border: 2px dashed #cfcfcf; border-radius: 2px; cursor: pointer; text-align: center; }
.pf-avm-drop:hover, .pf-avm-drop.is-over { border-color: #ec6810; background: #fff4ea; }
.pf-avm-drop svg { width: 38px; height: 38px; fill: none; stroke: #ec6810; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.pf-avm-drop b { font-size: 16px; } .pf-avm-drop span { font-size: 13px; color: #333; }
.pf-avm-area { height: 300px; background: #1f2226; border-radius: 2px; overflow: hidden; }
.pf-avm-area img { display: block; max-width: 100%; }
.pf-avm .cropper-view-box, .pf-avm .cropper-face { border-radius: 50%; }
.pf-avm .cropper-view-box { outline: 0; box-shadow: 0 0 0 2px #ec6810; }
.pf-avm-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 10px; }
.pf-avm-tools button { min-width: 36px; height: 34px; padding: 0 10px; border: 1px solid #cfcfcf; background: #fff; border-radius: 2px; cursor: pointer; font: 600 16px/1 'Exo 2', sans-serif; color: #111214; }
.pf-avm-tools button[data-act="reset"] { font-size: 13px; }
.pf-avm-tools button:hover { border-color: #ec6810; color: #ec6810; }
.pf-avm-prev { margin-left: auto; display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: #333; }
.pf-avm-prev i { display: block; width: 44px; height: 44px; border-radius: 50%; overflow: hidden; border: 2px solid #ec6810; background: #e5e5e5; }
.pf-avm-hint { margin-top: 8px; font-size: 12.5px; color: #333; }
.pf-avm-msg { margin-top: 8px; padding: 6px 10px; font-size: 13.5px; background: #fcefee; border: 1px solid #f0c8c4; color: #b3261e; border-radius: 2px; }
.pf-avm-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 12px; }
.pf-avm-del { color: #b23a12 !important; }
@media (max-width: 560px) { .pf-avm { padding: 0; align-items: flex-end; } .pf-avm-box { max-height: 92vh; } .pf-avm-area { height: 260px; } .pf-avm-prev { margin-left: 0; width: 100%; } }
.pf-avm .pf-btn { display: inline-flex; align-items: center; justify-content: center; height: 36px; padding: 0 16px; border: 1px solid #cfcfcf; border-radius: 2px;
  background: #fff; color: #111214; font: 600 14px/1 'Exo 2', sans-serif; cursor: pointer; text-decoration: none; }
.pf-avm .pf-btn:hover { border-color: #4d95dc; color: #225390; }
.pf-avm .pf-btn.pf-btn-primary { background: linear-gradient(180deg, #ff9a45 0%, #ec6810 100%); border-color: #b94f08; color: #fff; }
.pf-avm .pf-btn.pf-btn-primary:hover { background: linear-gradient(180deg, #ffab60 0%, #f07418 100%); color: #fff; }
.pf-avm .pf-btn[disabled] { opacity: .6; cursor: default; }

/* наведение на аватар в кабинете */
.side-user .su-ava.su-ava-self { cursor: pointer; position: relative; }
.side-user .su-ava .su-ava-cam { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; justify-content: center;
  background: rgba(17,18,20,.55); color: #fff; opacity: 0; transition: opacity .15s; border-radius: 50%; }
.side-user .su-ava .su-ava-cam svg { width: 20px; height: 20px; fill: none; stroke: #fff; stroke-width: 1.9; stroke-linejoin: round; }
.side-user .su-ava-self:hover .su-ava-cam, .side-user .su-ava-self:focus-visible .su-ava-cam { opacity: 1; }
@media (hover: none) { .side-user .su-ava .su-ava-cam { opacity: 1; background: rgba(17,18,20,.35); } }

/* область ввода нашего редактора — белым, чтобы поле было видно */
.fz-ed-host { border: 1px solid var(--f-border); border-radius: 2px; overflow: hidden; background: #fff; }
.fz-ed-bar { background: #f0f1f3; border-bottom: 1px solid var(--f-border); }
.fz-ed-area { background: #fff !important; color: var(--f-ink); min-height: 160px; padding: 10px 12px; }

/* ── блок чата на главной: мини-кнопка «ответить» и полоска цитаты над полем ── */
.side-chat .sch-row { position: relative; }
.side-chat .sch-list:has(.sch-rep) .sch-row { padding-right: 34px !important; }
.side-chat .sch-rep { position: absolute; top: 5px; right: 8px; width: 22px; height: 22px; padding: 0; display: flex; align-items: center; justify-content: center;
  background: #fff; border: 1px solid #cfcfcf; border-radius: 2px; cursor: pointer; opacity: 0; transition: opacity .12s ease; }
.side-chat .sch-row:hover .sch-rep, .side-chat .sch-rep:focus-visible { opacity: 1; }
.side-chat .sch-rep svg { width: 13px; height: 13px; fill: #3c3f44; }
.side-chat .sch-rep:hover { border-color: var(--fzh-accent, #ec6810); }
.side-chat .sch-rep:hover svg { fill: #ec6810; }
@media (hover: none) { .side-chat .sch-rep { opacity: .75; } }
.side-chat .sch-rbar { display: flex; align-items: center; gap: 7px; padding: 6px 10px; background: #fff4ea; border-top: 1px solid var(--f-grid);
  border-left: 3px solid #ec6810; font-size: 13px; color: #202021; }
.side-chat .sch-rbar[hidden] { display: none; }
.side-chat .sch-rbar > svg { flex: 0 0 14px; width: 14px; height: 14px; fill: #ec6810; }
.side-chat .sch-rbar-b { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.side-chat .sch-rbar-b b { color: #202021; }
.side-chat .sch-rbar button { flex: 0 0 auto; background: none; border: 0; padding: 0 2px; font-size: 18px; line-height: 1; color: #3c3f44; cursor: pointer; }
.side-chat .sch-rbar button:hover { color: #b3261e; }
.side-chat .sch-typing { padding: 4px 12px; font-size: 12.5px; font-style: italic; color: #b8520a; border-top: 1px solid var(--f-grid); }
.side-chat .sch-typing[hidden] { display: none; }

/* ники без цвета группы — чёрные, в том числе после посещения профиля (раньше браузер красил :visited в фиолетовый) */
.side-online a.so-user, .side-online a.so-user:link, .side-online a.so-user:visited,
.side-latest a.slt-user, .side-latest a.slt-user:visited,
.side-chat a.sch-user, .side-chat a.sch-user:visited { color: var(--f-ink, #202021); }
