/* TRANSFORMERS PRIME | style.css | native category + indicator skin V7 */
#pun-main .category table, #pun-main .category .main-content table, #pun-main .category .box table{width:100%!important;max-width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;border-spacing:0!important;background:#091625!important;}
#pun-main .category thead tr, #pun-main .category table thead tr{background:#142a3c!important;}
#pun-main .category thead th{box-sizing:border-box!important;height:38px!important;padding:10px 14px!important;line-height:1.35!important;vertical-align:middle!important;border:0!important;border-bottom:1px solid #294a5d!important;background:transparent!important;color:#90aebf!important;font:800 10px/1.35 'Inter','Roboto',Arial,sans-serif!important;text-transform:uppercase!important;letter-spacing:1.15px!important;}
#pun-main .category table .tcl{width:52%!important;min-width:0!important;}
#pun-main .category table .tc2{width:9%!important;min-width:0!important;}
#pun-main .category table .tc3{width:9%!important;min-width:0!important;}
#pun-main .category table .tcr{width:30%!important;min-width:0!important;}
#pun-main .category thead .tcl{text-align:left!important;padding-left:25px!important;}
#pun-main .category thead .tc2, #pun-main .category thead .tc3{text-align:center!important;}
#pun-main .category tbody tr{background:#091522!important;border:0!important;transition:background .15s ease;}
#pun-main .category tbody tr:nth-child(even){background:#101e2c!important;}
#pun-main .category tbody tr:hover{background:#152a3d!important;}
#pun-main .category tbody td{box-sizing:border-box!important;height:71px!important;padding:15px 13px!important;border:0!important;border-bottom:1px solid #264052!important;background:transparent!important;vertical-align:middle!important;color:#a6bfd0!important;font:400 12px/1.55 'Inter','Roboto',Arial,sans-serif!important;}
#pun-main .category tbody tr:last-child td{border-bottom:0!important;}
#pun-main .category tbody td.tcl{position:relative!important;padding:14px 18px 14px 34px!important;text-align:left!important;overflow-wrap:anywhere!important;}
#pun-main .category tbody td.tcl div.icon, #pun-main .category tbody td.tcl span.icon{display:none!important;float:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important;}
#pun-main .category tbody td.tcl::before{content:''!important;position:absolute!important;left:15px!important;top:50%!important;transform:translateY(-50%)!important;width:7px!important;height:7px!important;display:block!important;border:0!important;border-radius:50%!important;background:#64cedf!important;box-shadow:0 0 0 2px rgba(82,186,220,.12),0 0 9px rgba(79,216,235,.42)!important;pointer-events:none!important;}
#pun-main .category tbody tr.inew td.tcl::before, #pun-main .category tbody tr.new td.tcl::before{background:#80eeff!important;box-shadow:0 0 0 2px rgba(112,217,244,.18),0 0 11px rgba(85,229,255,.82)!important;}
#pun-main .category tbody tr.iclosed td.tcl::before{background:#c8758d!important;box-shadow:0 0 0 2px rgba(196,103,129,.15),0 0 9px rgba(197,98,140,.35)!important;}
#pun-main .category tbody td.tcl .intd, #pun-main .category tbody td.tcl .tclcon, #pun-main .category tbody td.tcl div.tclcon{position:static!important;float:none!important;clear:none!important;width:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:none!important;overflow:visible!important;}
#pun-main .category tbody td.tcl h3, #pun-main .category tbody td.tcl strong{display:block!important;margin:0 0 3px!important;padding:0!important;border:0!important;background:none!important;font:800 15px/1.3 'Inter','Roboto',Arial,sans-serif!important;}
#pun-main .category tbody td.tcl a, #pun-main .category tbody td.tcl h3 a, #pun-main .category tbody td.tcl strong a{color:#e9f4fc!important;font:800 15px/1.3 'Inter','Roboto',Arial,sans-serif!important;text-decoration:none!important;border:0!important;}
#pun-main .category tbody td.tcl a:hover{color:#86e3f7!important;}
#pun-main .category tbody td.tcl .forumdesc, #pun-main .category tbody td.tcl .tclcon p, #pun-main .category tbody td.tcl .tclcon small, #pun-main .category tbody td.tcl .tfp-rowmeta{display:block!important;width:auto!important;max-width:100%!important;margin:4px 0 0!important;padding:0!important;color:#91a9bc!important;font:400 11px/1.45 'Inter','Roboto',Arial,sans-serif!important;letter-spacing:0!important;}
#pun-main .category tbody td.tc2, #pun-main .category tbody td.tc3{text-align:center!important;font:500 12px/1.5 'Inter','Roboto',Arial,sans-serif!important;color:#a6c8d8!important;}
#pun-main .category tbody td.tcr{padding:12px 16px!important;text-align:left!important;font:400 11px/1.45 'Inter','Roboto',Arial,sans-serif!important;color:#92a9bc!important;overflow-wrap:anywhere!important;}
#pun-main .category tbody td.tcr a{color:#8ce2f4!important;font:800 11px/1.5 'Inter','Roboto',Arial,sans-serif!important;text-decoration:none!important;}
#pun-main .category tbody td.tcr a:hover{color:#eafcff!important;}
#pun-main .category tbody td.tcr small, #pun-main .category tbody td.tcr .byuser, #pun-main .category tbody td.tcr .lastpost{font-size:11px!important;color:#93aabb!important;line-height:1.5!important;}
#pun-main .category tbody td.tcr img{max-width:30px!important;max-height:30px!important;object-fit:cover!important;}
@media (max-width:760px){
  #pun-main .category thead th{font-size:8px!important;letter-spacing:0!important;padding:9px 3px!important;white-space:nowrap!important;overflow:hidden!important;}
  #pun-main .category thead th.tc2, #pun-main .category thead th.tc3, #pun-main .category thead th.tcr{font-size:0!important;}
  #pun-main .category thead th.tc2::after{content:'ТЕМ';font:800 8px Arial,sans-serif!important;letter-spacing:0!important;}
  #pun-main .category thead th.tc3::after{content:'СООБ.';font:800 8px Arial,sans-serif!important;letter-spacing:0!important;}
  #pun-main .category thead th.tcr::after{content:'ПОСЛЕДНЕЕ';font:800 8px Arial,sans-serif!important;letter-spacing:0!important;}
  #pun-main .category table .tcl{width:56%!important;}
  #pun-main .category table .tc2{width:10%!important;}
  #pun-main .category table .tc3{width:10%!important;}
  #pun-main .category table .tcr{width:24%!important;}
  #pun-main .category tbody td{height:64px!important;padding:10px 4px!important;font-size:10px!important;}
  #pun-main .category tbody td.tcl{padding:11px 5px 11px 21px!important;}
  #pun-main .category tbody td.tcl::before{left:7px!important;width:6px!important;height:6px!important;}
  #pun-main .category tbody td.tcl h3, #pun-main .category tbody td.tcl strong, #pun-main .category tbody td.tcl a{font-size:12px!important;line-height:1.25!important;}
  #pun-main .category tbody td.tcl .forumdesc, #pun-main .category tbody td.tcl .tclcon p, #pun-main .category tbody td.tcl .tclcon small, #pun-main .category tbody td.tcl .tfp-rowmeta{font-size:9px!important;line-height:1.4!important;}
  #pun-main .category table th.tc2, #pun-main .category table th.tc3{display:table-cell!important;padding:8px 1px!important;}
  #pun-main .category tbody td.tc2, #pun-main .category tbody td.tc3{display:table-cell!important;font-size:10px!important;padding:8px 2px!important;}
  #pun-main .category tbody td.tcr{padding:9px 5px!important;font-size:9px!important;}
  #pun-main .category tbody td.tcr a, #pun-main .category tbody td.tcr small{font-size:9px!important;}
  #pun-main .category tbody td.tcr img{max-width:18px!important;max-height:18px!important;}
}
@media (max-width:380px){
  #pun-main .category table .tcl{width:58%!important;}
  #pun-main .category table .tc2, #pun-main .category table .tc3{width:9%!important;}
  #pun-main .category table .tcr{width:24%!important;}
  #pun-main .category tbody td.tcl a{font-size:11px!important;}
  #pun-main .category tbody td.tcr img{display:none!important;}
}
#pun-break1, #pun-break2, #pun-break1 hr, #pun-break2 hr{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;border:0!important;margin:0!important;padding:0!important;}
#pun-index #pun-main > h1, #pun-index #pun-main > .main > h1, #pun-index #pun-main > .main > .container > h1{display:none!important;}
#pun-main .category tbody tr.inew td.tcl::before, #pun-main .category tbody tr.inewsub td.tcl::before, #pun-main .category tbody tr.inewisticky td.tcl::before, #pun-main .category tbody tr.new td.tcl::before, #pun-main .category tbody tr:has(.icon-new) td.tcl::before, #pun-main .category tbody tr:has(.icon.inew) td.tcl::before{background:#ef526b!important;box-shadow:0 0 0 3px rgba(239,82,107,.18), 0 0 13px rgba(255,75,112,.9)!important;}
#pun-main .category tbody tr.inew td.tcl div.icon, #pun-main .category tbody tr.inewsub td.tcl div.icon, #pun-main .category tbody tr.inewisticky td.tcl div.icon{background:#ef526b!important;border-color:#ff8b9d!important;box-shadow:0 0 12px rgba(255,75,112,.8)!important;}




/* === TFP / рамки у тела форумных блоков === */
#pun-index #pun-main .category .main-content,
#pun-index #pun-main .blocktable .box {
  position: relative !important;
  border-left: 1px solid rgba(77, 132, 165, 0.55) !important;
  border-right: 1px solid rgba(77, 132, 165, 0.55) !important;
  border-bottom: 1px solid rgba(77, 132, 165, 0.35) !important;
  border-top: 0 !important;
  box-shadow:
    inset 1px 0 0 rgba(130, 210, 235, 0.08),
    inset -1px 0 0 rgba(130, 210, 235, 0.08);
}

/* чтобы таблица не съедала рамку */
#pun-index #pun-main .category table,
#pun-index #pun-main .blocktable table {
  border-left: 0 !important;
  border-right: 0 !important;
}

/* чуть аккуратнее стык между верхней плашкой и телом блока */
#pun-index #pun-main .category > h2 + .main-content,
#pun-index #pun-main .blocktable > h2 + .box {
  margin-top: 0 !important;
}





/* Эмблема десептиконов */
.tfp-root .tfp-faction.tfp-purple .tfp-crest {
  filter:
    brightness(1.35)
    saturate(1.45)
    drop-shadow(0 0 6px rgba(186,100,255,.55))
    drop-shadow(0 0 19px rgba(135,70,225,.36))
    !important;
}

/* Описания фракций */
.tfp-root .tfp-faction p {
  font-size: 13px !important;
  line-height: 1.62 !important;
  color: #c0cfde !important;
}

.tfp-root .tfp-faction .tfp-label {
  font-size: 10px !important;
  letter-spacing: 2px !important;
}

/* Информационная карточка */
.tfp-root .tfp-aside p {
  font-size: 14px !important;
  line-height: 1.72 !important;
  color: #becddd !important;
}

.tfp-root .tfp-aside .tfp-label {
  font-size: 11px !important;
  letter-spacing: 2px !important;
}

.tfp-root .tfp-aside .tfp-aside-link {
  font-size: 13px !important;
  color: #e4d7f6 !important;
}

/* Дополнительные подписи */
.tfp-root .tfp-captionbar p {
  font-size: 12px !important;
  color: #a5bccc !important;
}

.tfp-root .tfp-forum-intro > span {
  font-size: 10px !important;
  color: #a7bbca !important;
}

/* Мобильная адаптация */
max-width: 680px {
  .tfp-root .tfp-faction p {
    font-size: 12px !important;
  }

  .tfp-root .tfp-faction .tfp-label {
    font-size: 9px !important;
  }

  .tfp-root .tfp-aside p {
    font-size: 13px !important;
  }

  .tfp-root .tfp-aside .tfp-aside-link {
    font-size: 12px !important;
  }

  .tfp-root .tfp-aside .tfp-label {
    font-size: 10px !important;
  }

  .tfp-root .tfp-captionbar p {
    font-size: 10px !important;
  }

  .tfp-root .tfp-forum-intro > span {
    font-size: 9px !important;
  }
}








<!-- TRANSFORMERS PRIME / Статистика и подвал / тест V1 -->

/* 1. Цельная статистическая панель — только штатный блок MyBB */
#pun #pun-stats {
  position: relative !important;
  margin: 24px 0 18px !important;
  padding: 0 !important;
  border: 1px solid #47758d !important;
  background: #0a1828 !important;
  box-shadow: inset 1px 0 0 #72b6d010, inset -1px 0 0 #72b6d010 !important;
}
#pun #pun-stats > h2 {
  box-sizing: border-box !important;
  min-height: 55px !important;
  margin: 0 !important;
  padding: 16px 23px !important;
  border: 0 !important;
  border-bottom: 1px solid #31566d !important;
  background: #112638 url('https://forumstatic.ru/files/0012/bf/aa/55617.png?v=1') center / 100% 100% no-repeat !important;
  color: #ecf7ff !important;
  font: 900 16px/1.4 'Inter',Arial,sans-serif !important;
  letter-spacing: 1.7px !important;
  text-transform: uppercase !important;
  text-align: left !important;
  text-shadow: none !important;
}
#pun #pun-stats > h2 span {color: inherit !important; font: inherit !important;}
#pun #pun-stats .container {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 16px 23px !important;
  border: 0 !important;
  background: linear-gradient(115deg,#0d2132,#091624 80%) !important;
  color: #b9cddd !important;
  font: 400 13px/1.6 'Inter',Arial,sans-serif !important;
}
/* MyBB может выводить список и как ul.container, и внутри .container */
#pun #pun-stats ul.container,
#pun #pun-stats .container > ul,
#pun #pun-stats .statscon > ul {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  column-gap: 22px !important;
  row-gap: 0 !important;
  list-style: none !important;
}
#pun #pun-stats .container > ul,
#pun #pun-stats .statscon > ul {padding: 0 !important; margin: 0 !important;}
#pun #pun-stats ul > li {
  display: block !important;
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 0 !important;
  color: #b9cddd !important;
  text-align: left !important;
  list-style: none !important;
  overflow-wrap: anywhere !important;
}
#pun #pun-stats ul > li::marker {content: '' !important;}
#pun #pun-stats li.item1,
#pun #pun-stats li.item2,
#pun #pun-stats li.item3,
#pun #pun-stats li.item4 {
  float: none !important;
  clear: none !important;
  width: auto !important;
  text-align: left !important;
}
/* Длинные строки активности занимают всю ширину */
#pun #pun-stats li#onlinelist,
#pun #pun-stats ul > li:nth-child(n+5) {
  grid-column: 1 / -1 !important;
}
#pun #pun-stats li#onlinelist {
  float: none !important;
  width: 100% !important;
  padding: 12px 0 4px !important;
  margin-top: 3px !important;
  border: 0 !important;
}
#pun #pun-stats li#onlinelist div {
  border: 0 !important;
  border-top: 0 !important;
  padding: 9px 0 3px !important;
  background: transparent !important;
  color: #b9cddd !important;
  text-align: left !important;
}
#pun #pun-stats strong,
#pun #pun-stats b {color: #effaff !important; font-weight: 800 !important;}
#pun #pun-stats a {color: #87d8eb !important; text-decoration: none !important;}
#pun #pun-stats a:hover {color: #fff !important; text-decoration: underline !important;}

/* 2. Нижние «Вы здесь»: спокойная отдельная навигационная строка */
#pun #pun-crumbs2 {margin: 14px 0 0 !important; padding: 0 !important; border: 0 !important;}
#pun #pun-crumbs2 .container {
  box-sizing: border-box !important;
  position: relative !important;
  margin: 0 !important;
  padding: 11px 14px 11px 23px !important;
  border: 1px solid #2c4c61 !important;
  background: linear-gradient(90deg,#112538,#0a192a 80%) !important;
  color: #a9c2d2 !important;
  font: 500 12px/1.5 'Inter',Arial,sans-serif !important;
}
#pun #pun-crumbs2 .container::before {
  content: '' !important;
  position: absolute !important;
  top: 10px !important;
  bottom: 10px !important;
  left: 10px !important;
  width: 2px !important;
  background: #67bcd4 !important;
}
#pun #pun-crumbs2 a {color: #9ee0ee !important;}

/* 3. Убираем устаревшие горизонтальные разделители внизу главной */
body:has(#pun-stats) #pun-break3,
body:has(#pun-stats) #pun-break4 {display: none !important;}
/* Подпись движка не удаляем; просто убираем пустой прямоугольник */
#pun #pun-about .container {
  min-height: 0 !important;
  margin: 5px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #778da1 !important;
  text-align: center !important;
  font-size: 10px !important;
}
#pun #pun-about .container:empty {display: none !important;}
#pun #pun-qjump .container:empty {display: none !important;}
/* Уже существующий нижний колонтитул приближаем к навигации */
body:has(#pun-stats) .tfp-root-footer {
  margin-top: 22px !important;
  padding-top: 0 !important;
}
body:has(#pun-stats) .tfp-root-footer .tfp-footer-line {
  height: 1px !important;
  background: linear-gradient(90deg,transparent,#3d718b,transparent) !important;
}
@media(max-width:700px) {
  #pun #pun-stats > h2 {min-height: 49px !important; padding: 14px 16px !important; font-size: 13px !important; letter-spacing: 1px !important;}
  #pun #pun-stats .container {padding: 10px 15px !important; font-size: 12px !important;}
  #pun #pun-stats ul.container,
  #pun #pun-stats .container > ul,
  #pun #pun-stats .statscon > ul {grid-template-columns: 1fr !important;}
  #pun #pun-stats ul > li {padding: 8px 0 !important;}
  #pun #pun-crumbs2 .container {padding: 10px 12px 10px 20px !important; font-size: 11px !important;}
  #pun #pun-crumbs2 .container::before {left: 8px !important;}
}

/* Аккуратные внутренние отступы статистики */
#pun #pun-stats ul > li {
  padding: 10px 20px !important;
}

/* Активные пользователи и посетители */
#pun #pun-stats li#onlinelist {
  padding: 14px 20px 10px !important;
  margin-top: 4px !important;
}

/* Мобильная версия */
max-width: 700px {
  #pun #pun-stats ul > li {
    padding: 9px 14px !important;
  }

  #pun #pun-stats li#onlinelist {
    padding: 12px 14px !important;
  }
}


/* Отключаем старые дополнительные точки */
#pun #pun-stats li#onlinelist::before,
#pun #pun-stats li#onlinelist > div::before {
  content: none !important;
  display: none !important;
}

#pun #pun-stats li#onlinelist {
  list-style: none !important;
  padding-left: 38px !important;

  /* Одна голубая точка перед «Активны» */
 
  background-size: 14px 14px !important;
  background-position: 16px 15px !important;
  background-repeat: no-repeat !important;
}

/* Одна голубая точка перед «Посетили за сутки» */
#pun #pun-stats li#onlinelist > div {
  margin-left: -19px !important;
  padding-left: 19px !important;

  background-image:
    radial-gradient(circle,
      #64cedf 0 3px,
      rgba(79,216,235,.18) 3.5px 6px,
      transparent 7px) !important;
  background-size: 14px 14px !important;
  background-position: 0 13px !important;
  background-repeat: no-repeat !important;
}



/* Контейнер статистики */
#pun #pun-stats {
  position: relative !important;
}

/* Боковые рамки и четыре голубых уголка */
#pun #pun-stats::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  pointer-events: none !important;
  box-sizing: border-box !important;

  /* Тонкие боковые и нижняя грани */
  box-shadow:
    inset 1px 0 0 #47758d,
    inset -1px 0 0 #47758d,
    inset 0 -1px 0 #47758d !important;

  /* Декоративные уголки как у категорий */
  background:
    linear-gradient(90deg,#79d8ed,transparent)
      left top / 24px 2px no-repeat,

    linear-gradient(270deg,#79d8ed,transparent)
      right top / 24px 2px no-repeat,

    linear-gradient(90deg,#79d8ed,transparent)
      left bottom / 24px 2px no-repeat,

    linear-gradient(270deg,#79d8ed,transparent)
      right bottom / 24px 2px no-repeat !important;
}


/* Уменьшаем расстояние между показателями */
#pun #pun-stats ul > li {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
  line-height: 1.5 !important;
}

/* Компактнее строки активности */
#pun #pun-stats li#onlinelist {
  padding-top: 6px !important;
  padding-bottom: 4px !important;
  margin-top: 0 !important;
}

/* Убираем лишнюю высоту вложенного блока */
#pun #pun-stats li#onlinelist div {
  padding-top: 10px !important;
  padding-bottom: 5px !important;
}

/* Немного сокращаем отступы самой панели */
#pun #pun-stats .container {
  padding-top: 11px !important;
  padding-bottom: 11px !important;
}




/* Оформление левой колонки автора */
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .post-author,
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .postleft {
  padding: 18px 16px 20px !important;
  background:
    linear-gradient(
      90deg,
      var(--tfpt-accent-low,rgba(86,197,227,.12)),
      transparent 25px
    ),
    linear-gradient(160deg,#122b3c,#101d30 65%,#121c2d)
    !important;
  box-shadow:
    inset 3px 0 0 var(--tfpt-accent,#65d9ed),
    inset -1px 0 0 rgba(116,176,199,.2)
    !important;
}

/* Заголовок личного досье */
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .post-author::before,
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .postleft::before {
  content: 'PERSONAL FILE / CYBERTRON' !important;
  color: var(--tfpt-accent,#65d9ed) !important;
  font-size: 9px !important;
  letter-spacing: 1px !important;
  border-bottom: 1px solid rgba(95,159,184,.28) !important;
  margin: 0 0 11px !important;
  padding: 0 0 9px !important;
}

/* Имя автора */
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-author {
  padding: 3px 2px 5px !important;
  margin: 0 0 3px !important;
  line-height: 1.32 !important;
}

/* Аватар: размеры не меняем */
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-avatar img {
  border: 1px solid var(--tfpt-accent,#65d9ed) !important;
  background: #071320 !important;
  box-shadow:
    0 0 0 3px rgba(4,13,23,.78),
    0 0 15px var(--tfpt-accent-low,rgba(86,197,227,.12)),
    0 9px 20px rgba(0,0,0,.35)
    !important;
  margin-top: 9px !important;
  margin-bottom: 12px !important;
}

/* Компактные характеристики */
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-title,
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-posts,
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-respect,
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-positive,
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-reg {
  padding-top: 2px !important;
  padding-bottom: 2px !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
  color: #a9c3d2 !important;
}

/* Последняя активность */
#pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-online {
  padding-top: 7px !important;
  font-size: 10px !important;
  line-height: 1.4 !important;
}

/* Мобильная версия */
max-width: 620px {
  #pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .post-author,
  #pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .postleft {
    padding: 12px 16px !important;
  }

  #pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .post-author::before,
  #pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout > .postleft::before {
    margin-bottom: 6px !important;
    padding-bottom: 6px !important;
    text-align: left !important;
    font-size: 8px !important;
  }

  #pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-avatar img {
    margin: 4px 2px !important;
    padding: 2px !important;
  }

  #pun-viewtopic #pun-main .tfpt-topic-post .tfpt-post-layout .pa-author {
    margin: 0 !important;
    padding: 2px 0 !important;
  }
}










/* Только служебные значки, не аватары */
#pun-viewtopic #pun-main .tfpt-post-layout > .post-author li:not(.pa-avatar) img,
#pun-viewtopic #pun-main .tfpt-post-layout > .postleft li:not(.pa-avatar) img {
  display: inline-block !important;
  vertical-align: middle !important;
  width: auto !important;
  height: auto !important;
  max-width: 24px !important;
  max-height: 18px !important;
  object-fit: contain !important;
  margin: 0 2px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
}
@media (min-width: 621px) {
  #pun-viewtopic #pun-main .tfpt-post-layout .pa-respect,
  #pun-viewtopic #pun-main .tfpt-post-layout .pa-positive {
    display: flex !important;
    flex-flow: row wrap !important;
    justify-content: center !important;
    align-items: center !important;
    column-gap: 4px !important;
    row-gap: 1px !important;
    padding: 3px 0 !important;
    margin: 0 !important;
    line-height: 1.45 !important;
  }
  #pun-viewtopic #pun-main .tfpt-post-layout .pa-respect br,
  #pun-viewtopic #pun-main .tfpt-post-layout .pa-positive br {
    display: none !important;
  }
}





/* Общая панель навигации темы */
#pun-viewtopic .linkst,
#pun-viewtopic .linksb {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px 16px !important;

  position: relative !important;
  float: none !important;
  clear: both !important;

  width: 100% !important;
  height: auto !important;
  min-height: 54px !important;

  box-sizing: border-box !important;
  margin: 12px 0 18px !important;
  padding: 10px 15px !important;

  background: linear-gradient(
    90deg,#122c40,#0a1829
  ) !important;

  border: 1px solid #35566e !important;
  border-left: 2px solid #65cce4 !important;
}

/* На случай вложенных контейнеров MyBB */
#pun-viewtopic .linkst .inbox,
#pun-viewtopic .linksb .inbox,
#pun-viewtopic .linkst .container,
#pun-viewtopic .linksb .container {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px 16px !important;

  position: static !important;
  float: none !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Номера страниц */
#pun-viewtopic .linkst .pagelink,
#pun-viewtopic .linksb .pagelink {
  position: static !important;
  float: none !important;
  inset: auto !important;

  flex: 1 1 auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;

  text-align: left !important;
}

/* Кнопка «Ответить» справа */
#pun-viewtopic .linkst .postlink,
#pun-viewtopic .linksb .postlink {
  position: static !important;
  float: none !important;
  inset: auto !important;

  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;

  text-align: right !important;
}

/* Узкий экран */
max-width: 620px {
  #pun-viewtopic .linkst,
  #pun-viewtopic .linksb {
    gap: 8px !important;
    padding: 10px !important;
  }

  #pun-viewtopic .linkst .pagelink,
  #pun-viewtopic .linksb .pagelink {
    flex: 1 1 100% !important;
  }
}



/* TFP — сообщение без автора и подписи */

/* Убираем колонку автора */
#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.tfpt-post-layout > .post-author,

#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.tfpt-post-layout > .postleft {
  display: none !important;
}

/* Растягиваем сообщение на всю ширину */
#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.tfpt-post-layout {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-areas:
    "content"
    "actions" !important;
}

/* Растягиваем область текста */
#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.tfpt-post-layout > .post-body,

#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.tfpt-post-layout > .postbody {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Убираем подпись */
#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.post-sig,

#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.post-signature,

#pun-viewtopic #pun-main
.tfpt-topic-post:has(.tfp-post-clean)
.postsignature {
  display: none !important;
}









/* TRANSFORMERS PRIME // MINI CHARACTER CARDS */

#pun-viewtopic .cyb-mini {
  --mini-accent: #b78af0;
  display: grid !important;
  grid-template-columns: 145px minmax(0,1fr);
  gap: 15px;
  position: relative;
  box-sizing: border-box;
  max-width: 540px;
  margin: 14px auto !important;
  padding: 12px !important;
  background: linear-gradient(125deg,
    #142b3f,#0b1629 65%,#17152c) !important;
  border: 1px solid #34485d;
  border-top: 2px solid var(--mini-accent);
  box-shadow: 0 8px 24px #0006;
  color: #d5e4f0;
  font: 12px/1.6 Arial,sans-serif;
  overflow: hidden;
}

/* Фракционные цвета */
#pun-viewtopic .cyb-mini-auto {
  --mini-accent: #dc6570;
}
#pun-viewtopic .cyb-mini-decept {
  --mini-accent: #b78af0;
}
#pun-viewtopic .cyb-mini-neutral {
  --mini-accent: #e1ba69;
}

/* Портрет */
#pun-viewtopic .cyb-mini-photo {
  min-width: 0;
  overflow: hidden;
  background: #091421;
}
#pun-viewtopic .cyb-mini-photo img {
  display: block !important;
  width: 100% !important;
  height: 190px !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover;
  border: 0 !important;
}
#pun-viewtopic .cyb-mini-photo a {
  display: block;
}

/* Информация */
#pun-viewtopic .cyb-mini-info {
  min-width: 0;
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
}
#pun-viewtopic .cyb-mini-name {
  color: #f6f8ff !important;
  font-size: 20px !important;
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: 1px;
  overflow-wrap: anywhere;
}
#pun-viewtopic .cyb-mini-role {
  color: var(--mini-accent) !important;
  font-size: 10px !important;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
}
#pun-viewtopic .cyb-mini-text {
  padding-top: 8px;
  border-top: 1px solid #33485b;
  color: #bfd0df !important;
  font-size: 12px !important;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

/* Убираем лишние отступы */
#pun-viewtopic .cyb-mini p {
  margin: 0 !important;
  padding: 0 !important;
  line-height: inherit !important;
}

/* Адаптация для телефона */
max-width:520px {
  #pun-viewtopic .cyb-mini {
    grid-template-columns: 105px minmax(0,1fr);
    gap: 10px;
    padding: 8px !important;
  }
  #pun-viewtopic .cyb-mini-photo img {
    height: 150px !important;
  }
  #pun-viewtopic .cyb-mini-name {
    font-size: 15px !important;
  }
  #pun-viewtopic .cyb-mini-role {
    font-size: 9px !important;
  }
  #pun-viewtopic .cyb-mini-text {
    font-size: 11px !important;
  }
}



/* TFP // Ограничение портретов мини-карточек */

#pun-viewtopic #pun-main .cyb-mini .cyb-mini-photo {
    display: block !important;
    position: relative !important;
    width: 145px !important;
    max-width: 100% !important;
    height: 190px !important;
    max-height: 190px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    align-self: start !important;
    line-height: 0 !important;
}

/* Контейнер ссылки на изображение */
#pun-viewtopic #pun-main .cyb-mini-photo a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}

/* Само изображение */
#pun-viewtopic #pun-main .cyb-mini .cyb-mini-photo img {
    display: block !important;
    width: 100% !important;
    height: 190px !important;
    max-width: 100% !important;
    max-height: 190px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    float: none !important;
    object-fit: cover !important;
    object-position: center top !important;
    box-sizing: border-box !important;
}

/* Мобильная версия */
max-width: 520px {
    #pun-viewtopic #pun-main .cyb-mini .cyb-mini-photo {
        width: 105px !important;
        height: 145px !important;
        max-height: 145px !important;
    }

    #pun-viewtopic #pun-main .cyb-mini .cyb-mini-photo img {
        height: 145px !important;
        max-height: 145px !important;
    }
}




/* TFP // MINI CARDS FIX v2 */

/* Карточка: портрет слева, информация справа */
#pun-viewtopic #pun-main .cyb-mini {
  display: grid !important;
  grid-template-columns: 130px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 16px !important;
  max-width: 540px !important;
  box-sizing: border-box !important;
}

/* Убираем переносы, мешающие сетке */
#pun-viewtopic #pun-main .cyb-mini > br,
#pun-viewtopic #pun-main .cyb-mini > p:empty {
  display: none !important;
}

/* Портрет в рамочке */
#pun-viewtopic #pun-main .cyb-mini .cyb-mini-photo {
  grid-column: 1 !important;
  grid-row: 1 !important;

  display: block !important;
  width: 130px !important;
  height: 175px !important;
  max-width: 100% !important;
  max-height: 175px !important;

  margin: 0 !important;
  padding: 5px !important;

  border: 2px solid var(--mini-accent, #b78af0) !important;
  background: #091320 !important;
  box-shadow:
    0 0 0 1px #ffffff18,
    0 0 16px #0008 !important;

  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Изображение строго внутри рамки */
#pun-viewtopic #pun-main
.cyb-mini .cyb-mini-photo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: none !important;

  margin: 0 !important;
  padding: 0 !important;
  border: none !important;

  object-fit: cover !important;
  object-position: center top !important;
  box-shadow: none !important;
}

/* Информация строго справа */
#pun-viewtopic #pun-main
.cyb-mini .cyb-mini-info {
  grid-column: 2 !important;
  grid-row: 1 !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;

  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Мобильная версия */
max-width: 520px {
  #pun-viewtopic #pun-main .cyb-mini {
    grid-template-columns: 100px minmax(0, 1fr) !important;
    gap: 11px !important;
    padding: 10px !important;
  }

  #pun-viewtopic #pun-main
  .cyb-mini .cyb-mini-photo {
    width: 100px !important;
    height: 140px !important;
    max-height: 140px !important;
    padding: 4px !important;
  }
}

/* TFP // Кнопка полного досье */

#pun-viewtopic #pun-main .cyb-mini .cyb-mini-link {
  grid-column: 1 / -1 !important;
  display: block !important;
  width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#pun-viewtopic #pun-main .cyb-mini .cyb-mini-link a {
  display: block !important;
  width: 100% !important;
  padding: 11px 12px !important;
  box-sizing: border-box !important;
  background: color-mix(
    in srgb,
    var(--mini-accent) 15%,
    #0d1829
  ) !important;
  border: 1px solid var(--mini-accent) !important;
  color: #f1f5ff !important;
  font: 800 11px/1.5 Arial,sans-serif !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 1.4px !important;
  transition: background .2s, box-shadow .2s;
}

#pun-viewtopic #pun-main .cyb-mini .cyb-mini-link a:hover {
  background: color-mix(
    in srgb,
    var(--mini-accent) 30%,
    #0d1829
  ) !important;
  box-shadow: 0 0 14px #0008 !important;
}

#pun-viewtopic #pun-main .cyb-mini .cyb-mini-link br {
  display: none !important;
}

/* TFP // CYBERTRON CARD GRID v1 */

/* Общая сетка карточек */
#pun-viewtopic #pun-main .cyb-card-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 12px 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
}

/* Убираем лишние переносы MyBB */
#pun-viewtopic #pun-main
.cyb-card-grid > br,
#pun-viewtopic #pun-main
.cyb-card-grid > p:empty {
  display: none !important;
}

/* Уменьшаем карточки внутри сетки */
#pun-viewtopic #pun-main
.cyb-card-grid > .cyb-mini {
  display: grid !important;
  grid-template-columns: 78px minmax(0,1fr) !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 10px !important;
  box-sizing: border-box !important;
  align-content: start !important;
}

/* Портрет слева с рамкой */
#pun-viewtopic #pun-main
.cyb-card-grid .cyb-mini .cyb-mini-photo {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 78px !important;
  height: 108px !important;
  max-width: 100% !important;
  max-height: 108px !important;
  margin: 0 !important;
  padding: 4px !important;
  overflow: hidden !important;
  border: 2px solid var(--mini-accent) !important;
  box-sizing: border-box !important;
}

/* Размер изображения */
#pun-viewtopic #pun-main
.cyb-card-grid .cyb-mini-photo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Текст справа */
#pun-viewtopic #pun-main
.cyb-card-grid .cyb-mini .cyb-mini-info {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  width: 100% !important;
  gap: 5px !important;
}

/* Компактная типографика */
#pun-viewtopic #pun-main
.cyb-card-grid .cyb-mini-name {
  font-size: 15px !important;
  line-height: 1.2 !important;
}

#pun-viewtopic #pun-main
.cyb-card-grid .cyb-mini-role {
  font-size: 9px !important;
  line-height: 1.4 !important;
  letter-spacing: .5px !important;
}

#pun-viewtopic #pun-main
.cyb-card-grid .cyb-mini-text {
  font-size: 10px !important;
  line-height: 1.5 !important;
  padding-top: 5px !important;
}

/* Планшеты: две карточки */
max-width: 850px {
  #pun-viewtopic #pun-main .cyb-card-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
}

/* Телефоны: одна карточка */
max-width: 590px {
  #pun-viewtopic #pun-main .cyb-card-grid {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 10px !important;
  }

  #pun-viewtopic #pun-main
  .cyb-card-grid > .cyb-mini {
    grid-template-columns: 100px minmax(0,1fr) !important;
  }

  #pun-viewtopic #pun-main
  .cyb-card-grid .cyb-mini .cyb-mini-photo {
    width: 100px !important;
    height: 135px !important;
    max-height: 135px !important;
  }
}





/* ==================================
   TFP // DOCUMENTS BALANCED v2
   Исправление пропорций документов
   ================================== */

/* Ширина и читаемость */
#pun-viewtopic #pun-main .cyrules {
  width: calc(100% - 24px) !important;
  max-width: 1000px !important;
  margin: 12px auto !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Шапка */
#pun-viewtopic .cyrules .cyr-head {
  padding: 25px 30px 22px !important;
}

#pun-viewtopic .cyrules .cyr-head::before {
  margin-bottom: 8px !important;
}

#pun-viewtopic .cyrules .cyr-head::after {
  margin-top: 8px !important;
}

/* Вступление */
#pun-viewtopic .cyrules .cyr-lead {
  padding: 16px 30px 4px !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* Информационная панель */
#pun-viewtopic .cyrules .cyr-note {
  margin: 14px 24px !important;
  padding: 11px 15px !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* Заголовки разделов */
#pun-viewtopic .cyrules .cyr-section {
  margin: 20px 24px 0 !important;
  padding: 10px 15px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Основной текст пунктов */
#pun-viewtopic .cyrules .cyr-item {
  margin: 0 24px !important;
  padding: 11px 12px 12px 23px !important;
  font-size: 14px !important;
  line-height: 1.58 !important;
}

/* Выделение слов внутри абзаца */
#pun-viewtopic .cyrules .cyr-item b,
#pun-viewtopic .cyrules .cyr-item strong {
  display: inline !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: inherit !important;
}

/* Заголовок самого пункта */
#pun-viewtopic .cyrules .cyr-item > b:first-child,
#pun-viewtopic .cyrules .cyr-item > strong:first-child {
  display: block !important;
  margin-bottom: 3px !important;
}

/* Перенос сразу после заголовка */
#pun-viewtopic .cyrules .cyr-item > b:first-child + br,
#pun-viewtopic .cyrules .cyr-item > strong:first-child + br {
  display: none !important;
}

/* Декоративный маркер */
#pun-viewtopic .cyrules .cyr-item::before {
  top: 16px !important;
}

/* Завершение документа */
#pun-viewtopic .cyrules .cyr-footer {
  margin-top: 16px !important;
  padding: 13px 20px !important;
}

/* Мобильные экраны */
max-width: 700px {
  #pun-viewtopic #pun-main .cyrules {
    width: calc(100% - 8px) !important;
    margin: 8px auto !important;
  }

  #pun-viewtopic .cyrules .cyr-head {
    padding: 20px 17px !important;
  }

  #pun-viewtopic .cyrules .cyr-lead {
    padding: 13px 17px 3px !important;
    font-size: 13.5px !important;
  }

  #pun-viewtopic .cyrules .cyr-note {
    margin: 12px 14px !important;
    padding: 10px 12px !important;
  }

  #pun-viewtopic .cyrules .cyr-section {
    margin: 16px 14px 0 !important;
    padding: 9px 12px !important;
  }

  #pun-viewtopic .cyrules .cyr-item {
    margin: 0 14px !important;
    padding: 10px 8px 11px 21px !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }

  #pun-viewtopic .cyrules .cyr-item b,
  #pun-viewtopic .cyrules .cyr-item strong {
    font-size: 13.5px !important;
  }
}


/* ==========================================================
   ЭХО ПОГИБШЕГО МИРА / ПОЛЬЗОВАТЕЛЬСКИЙ ПРОФИЛЬ
   Консолидированные правила (просмотр, редактирование,
   загрузки файлов, фракционные акценты)
   Важно: классы faction-* добавляет существующий скрипт
   из HTML-низа. Скрипт не удалять.
   ========================================================== */

/* --- Общая навигация по профилю --- */
#profilenav {
  box-sizing: border-box;
  width: 240px;
  max-width: 100%;
  padding: 17px;
  background: rgba(8,17,31,.94);
  border: 1px solid #29475e;
  border-radius: 9px;
  box-shadow: 0 0 20px rgba(36,146,205,.09);
}
#profilenav h2 {
  margin: 0 0 13px;
  padding: 0 0 11px;
  border-bottom: 1px solid #29475e;
  color: #a7e2ff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}
#profilenav ul,
#profilenav li { list-style: none; padding: 0; }
#profilenav ul { margin: 0; }
#profilenav li { margin: 3px 0; }
#profilenav li a {
  display: block;
  padding: 9px 12px;
  color: #9cbfd4;
  text-decoration: none;
  font-size: 13px;
  line-height: 1.4;
  background: transparent;
  border-left: 3px solid transparent;
  border-radius: 4px;
  transition: background .2s, color .2s;
}
#profilenav li a:hover {
  color: #e1f6ff;
  background: rgba(51,132,186,.16);
  border-left-color: #59bbed;
}
#profilenav li.isactive a {
  color: #e6f7ff;
  background: rgba(51,132,186,.22);
  border-left-color: #86daff;
  font-weight: 700;
}

/* --- Просмотр своего и чужого профиля --- */
#viewprofile-next {
  display: grid !important;
  grid-template-columns: 240px minmax(0,1fr);
  align-items: start;
  gap: 22px;
  width: 100%;
  box-sizing: border-box;
}
#viewprofile-next > #profilenav {
  float: none !important;
  width: 100%;
  margin: 0;
  box-sizing: border-box;
}
#viewprofile-next > #viewprofile {
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  box-sizing: border-box;
  padding: 20px 24px;
  background: rgba(8,17,31,.90);
  border: 1px solid #29475e;
  border-radius: 9px;
  box-shadow: 0 0 20px rgba(36,146,205,.08);
}
/* Когда владелец не редактирует профиль, меню нет. */
#viewprofile-next:not(:has(> #profilenav)) {
  grid-template-columns: minmax(0,1fr) !important;
}
#viewprofile-next:not(:has(> #profilenav)) > #viewprofile {
  grid-column: 1 / -1;
  width: 100% !important;
}

/* --- Внутренние сведения, аватар и подпись --- */
#viewprofile .container > ul,
#viewprofile #profile-left li,
#viewprofile #profile-right li {
  list-style: none !important;
  margin: 0;
  padding: 0;
}
#viewprofile .container > ul > table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: auto;
}
#viewprofile #profile-left {
  width: 270px;
  min-width: 0;
  padding: 8px 24px 15px 0;
  vertical-align: top;
}
#viewprofile #profile-name {
  color: #bdeaff;
  font-size: 19px;
  letter-spacing: .6px;
  margin-bottom: 5px !important;
}
#viewprofile #profile-title {
  font-size: 12px;
  margin-bottom: 14px !important;
}
#viewprofile #pa-avatar { margin-bottom: 12px !important; }
#viewprofile #pa-avatar img {
  display: block;
  width: 100%;
  max-width: 247px;
  height: auto;
  border: 1px solid var(--faction-border) !important;
  border-radius: 6px;
  box-shadow: 0 0 18px var(--faction-glow) !important;
}
#viewprofile #pa-online {
  color: #8bdac8;
  font-size: 12px;
  margin-bottom: 7px !important;
}
#viewprofile #pa-edit a {
  font-size: 12px;
  text-decoration: none;
}
#viewprofile #profile-right {
  padding: 8px 0 15px;
  vertical-align: top;
}
#viewprofile #profile-right > li {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 5px 14px;
  padding: 9px 12px !important;
  margin-bottom: 5px !important;
  background: rgba(29,52,75,.28);
  border-left: 2px solid #29465f;
  border-radius: 3px;
  font-size: 12px;
  line-height: 1.55;
}
#viewprofile #profile-right > li > span {
  flex: 0 0 145px;
  color: #8dafc5;
  font-weight: 400;
}
#viewprofile #profile-right > li > strong {
  flex: 1 1 130px;
  min-width: 0;
  color: #e1edf7;
  overflow-wrap: anywhere;
}
#viewprofile #profile-right a,
#viewprofile #pa-edit a { color: #91d8ff; }
#viewprofile #profile-right a:hover,
#viewprofile #pa-edit a:hover { color: #fff; }
#viewprofile #profile-signature {
  clear: both;
  margin-top: 22px;
  padding: 19px 22px;
  background: rgba(16,27,46,.70);
  border: 1px solid #29465f;
  border-left: 3px solid var(--faction-border) !important;
  border-radius: 6px;
  overflow-wrap: anywhere;
}
#viewprofile #profile-signature ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#viewprofile #profile-signature p {
  margin: 0;
  line-height: 1.7;
}

/* --- Фракционные переменные: Автобот / Десептикон / Нейтрал --- */
#viewprofile {
  --faction-color: #b3c4ce;
  --faction-border: #829aa8;
  --faction-glow: rgba(130,150,160,.15);
  --faction-bg: rgba(130,150,160,.10);
}
#viewprofile.faction-autobot {
  --faction-color: #86d5ff;
  --faction-border: #63c8ff;
  --faction-glow: rgba(45,145,220,.23);
  --faction-bg: rgba(45,145,220,.15);
}
#viewprofile.faction-decepticon {
  --faction-color: #c7a8ff;
  --faction-border: #a77add;
  --faction-glow: rgba(102,65,156,.24);
  --faction-bg: rgba(102,65,156,.16);
}
#viewprofile.faction-neutral {
  --faction-color: #c4d2dc;
  --faction-border: #9eb5c1;
  --faction-glow: rgba(130,150,160,.16);
  --faction-bg: rgba(130,150,160,.12);
}
#viewprofile #pa-fld1 {
  border-left-color: var(--faction-border) !important;
  background: var(--faction-bg) !important;
}
#viewprofile #pa-fld1 strong,
#viewprofile #profile-title,
#viewprofile #profile-title strong {
  color: var(--faction-color) !important;
}

/* --- Единый редактор профиля для всех обычных вкладок --- */
#pun-main #profile.formal > form {
  display: grid !important;
  grid-template-columns: 240px minmax(0,1fr);
  column-gap: 22px;
  align-items: start;
  width: 100%;
  box-sizing: border-box;
}
#pun-main #profile.formal > form > #profilenav {
  grid-column: 1;
  grid-row: 1 / span 30;
  width: 100%;
  float: none !important;
  margin: 0;
}
#pun-main #profile.formal > form > fieldset,
#pun-main #profile.formal > form > .formsubmit {
  grid-column: 2;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}
#pun-main #profile.formal > form > fieldset,
#pun-main #profile10 > fieldset {
  margin: 0 0 14px !important;
  padding: 18px 20px 20px !important;
  background: rgba(8,17,31,.92);
  border: 1px solid #29475e !important;
  border-radius: 9px;
  box-shadow: 0 0 18px rgba(36,146,205,.06);
}
#pun-main #profile.formal > form > fieldset > legend,
#pun-main #profile10 > fieldset > legend {
  padding: 0 10px;
  margin-left: 5px;
  color: #9cddff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .3px;
}
#pun-main #profile.formal > form .fs-box {
  margin: 0;
  padding: 4px 0;
  min-width: 0;
}
#pun-main #profile.formal > form label {
  color: #b1cddd;
  font-size: 13px;
  line-height: 1.6;
}
#pun-main #profile.formal > form input[type="text"],
#pun-main #profile.formal > form input[type="email"],
#pun-main #profile.formal > form input[type="password"],
#pun-main #profile.formal > form input[type="number"],
#pun-main #profile.formal > form select,
#pun-main #profile.formal > form textarea {
  max-width: 100%;
  box-sizing: border-box;
  background: #0c1c2d;
  border: 1px solid #36556d;
  border-radius: 5px;
  color: #e5f3ff;
  padding: 8px 10px;
  font: inherit;
  font-size: 13px;
}
#pun-main #profile.formal > form input:focus-visible,
#pun-main #profile.formal > form select:focus-visible,
#pun-main #profile.formal > form textarea:focus-visible {
  outline: 1px solid #75caff;
  outline-offset: 1px;
  border-color: #75caff;
}
#pun-main #profile.formal > form a { color: #91d8ff; }
#pun-main #profile.formal > form a:hover { color: #fff; }
#pun-main #profile.formal > form .help,
#pun-main #profile.formal > form .hint {
  color: #90acc1;
  font-size: 12px;
}
#pun-main #profile.formal > form > .formsubmit {
  margin: 2px 0 20px;
  padding: 15px;
  background: rgba(13,32,49,.9);
  border: 1px solid #29475e;
  border-radius: 7px;
}
#pun-main #profile.formal > form .formsubmit input[type="submit"] {
  padding: 9px 20px;
  background: #174768;
  color: #e8f7ff;
  border: 1px solid #438bb7;
  border-radius: 5px;
  cursor: pointer;
}
#pun-main #profile.formal > form .formsubmit input[type="submit"]:hover {
  background: #21618b;
  border-color: #75caff;
}

/* --- Отдельная структура загрузчика файлов (#profile10) --- */
#pun-main #profile10 {
  display: grid !important;
  grid-template-columns: 240px minmax(0,1fr);
  column-gap: 22px;
  row-gap: 14px;
  align-items: start;
  width: 100%;
  box-sizing: border-box;
}
#pun-main #profile10 > #profilenav {
  grid-column: 1;
  grid-row: 1 / span 3;
  width: 100%;
  margin: 0;
  float: none !important;
}
#pun-main #profile10 > fieldset {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  margin: 0 !important;
}
#pun-main #profile10 > .select-file {
  grid-column: 2;
  grid-row: 2;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 14px 18px;
  background: rgba(13,32,49,.9);
  border: 1px solid #29475e;
  border-radius: 7px;
}
#pun-main #profile10 > .adfs-box {
  grid-column: 2;
  grid-row: 3;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 16px;
  background: rgba(8,17,31,.92);
  border: 1px solid #29475e;
  border-radius: 9px;
  overflow-x: auto;
}

/* --- Адаптация: на телефоне меню сверху, данные ниже --- */
@media (max-width: 850px) {
  #viewprofile .container > ul > table,
  #viewprofile .container > ul > table > tbody,
  #viewprofile .container > ul > table > tbody > tr,
  #viewprofile #profile-left,
  #viewprofile #profile-right {
    display: block;
    width: 100%;
  }
  #viewprofile #profile-left { padding: 0 0 20px; }
  #viewprofile #profile-right { padding: 0; }
  #viewprofile #profile-right > li > span { flex-basis: 120px; }
  #viewprofile #profile-signature { padding: 15px; }
}
@media (max-width: 760px) {
  #viewprofile-next,
  #pun-main #profile.formal > form,
  #pun-main #profile10 {
    grid-template-columns: minmax(0,1fr) !important;
    row-gap: 14px;
  }
  #profilenav { width: 100%; }
  #viewprofile-next > #profilenav,
  #viewprofile-next > #viewprofile,
  #pun-main #profile.formal > form > #profilenav,
  #pun-main #profile.formal > form > fieldset,
  #pun-main #profile.formal > form > .formsubmit,
  #pun-main #profile10 > #profilenav,
  #pun-main #profile10 > fieldset,
  #pun-main #profile10 > .select-file,
  #pun-main #profile10 > .adfs-box {
    grid-column: 1;
    grid-row: auto;
    width: 100% !important;
  }
  #viewprofile-next > #viewprofile { padding: 15px; }
  #pun-main #profile.formal > form > fieldset,
  #pun-main #profile10 > fieldset { padding: 14px !important; }
}



/* ======================================================
   ЭХО ПОГИБШЕГО МИРА | Шапки игровых эпизодов v1
   По одному оформленному блоку в начале первого поста.
   Четыре вида: операция / личная / повседневность / юмор.
   CSS автономен: без скриптов и изменений редактора.
   ====================================================== */

#pun-viewtopic #pun-main :is(
  .tfp-episode-op,
  .tfp-episode-personal,
  .tfp-episode-daily,
  .tfp-episode-humor
) {
  --ep-accent: #79cfe7;
  --ep-tint: rgba(70, 152, 189, .13);
  position: relative;
  display: block !important;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 7px 0 19px !important;
  padding: 16px 20px 17px !important;
  background: linear-gradient(108deg, var(--ep-tint), rgba(9, 20, 35, .96) 52%) !important;
  border: 1px solid #345168 !important;
  border-left: 3px solid var(--ep-accent) !important;
  border-radius: 5px;
  box-shadow: inset 0 1px rgba(178, 223, 247, .06), 0 5px 18px rgba(0,0,0,.13);
  color: #d7e7f3;
  font-family: 'Inter', 'Roboto', Arial, sans-serif;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

/* Виды эпизодов. Цвет означает жанр, НЕ фракцию. */
#pun-viewtopic #pun-main .tfp-episode-op {
  --ep-accent: #79cfe7;
  --ep-tint: rgba(63, 151, 186, .14);
}
#pun-viewtopic #pun-main .tfp-episode-personal {
  --ep-accent: #bd99ee;
  --ep-tint: rgba(130, 84, 186, .16);
}
#pun-viewtopic #pun-main .tfp-episode-daily {
  --ep-accent: #d5b78a;
  --ep-tint: rgba(157, 117, 67, .13);
}
#pun-viewtopic #pun-main .tfp-episode-humor {
  --ep-accent: #91d7ba;
  --ep-tint: rgba(64, 149, 123, .14);
}

/* Техническая строка над заголовком */
#pun-viewtopic #pun-main .tfp-episode-label {
  display: block !important;
  margin: 0 0 5px !important;
  padding: 0 !important;
  color: var(--ep-accent) !important;
  font: 700 10px/1.45 'Inter', 'Roboto', Arial, sans-serif !important;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

/* Название эпизода */
#pun-viewtopic #pun-main .tfp-episode-title {
  display: block !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  color: #f1f7fd !important;
  font: 800 23px/1.2 'Inter', 'Roboto', Arial, sans-serif !important;
  letter-spacing: .2px;
}

/* Место, время, участники */
#pun-viewtopic #pun-main .tfp-episode-info {
  display: block !important;
  margin: 0 !important;
  padding: 9px 0 0 !important;
  border-top: 1px solid rgba(146, 191, 214, .25);
  color: #aac5d5 !important;
  font: 500 12px/1.6 'Inter', 'Roboto', Arial, sans-serif !important;
}

/* Необязательная атмосферная фраза */
#pun-viewtopic #pun-main .tfp-episode-note {
  display: block !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  color: #c5d3e1 !important;
  font: italic 12px/1.55 'Inter', 'Roboto', Arial, sans-serif !important;
}

/* Убираем возможные внешние отступы автоматических параграфов MyBB */
#pun-viewtopic #pun-main :is(
  .tfp-episode-label, .tfp-episode-title,
  .tfp-episode-info, .tfp-episode-note
) > p { margin: 0 !important; padding: 0 !important; }

@media (max-width: 620px) {
  #pun-viewtopic #pun-main :is(
    .tfp-episode-op, .tfp-episode-personal,
    .tfp-episode-daily, .tfp-episode-humor
  ) { padding: 13px 14px 14px !important; margin-bottom: 15px !important; }
  #pun-viewtopic #pun-main .tfp-episode-title { font-size: 19px !important; }
  #pun-viewtopic #pun-main .tfp-episode-label { font-size: 9px !important; letter-spacing: 1px; }
  #pun-viewtopic #pun-main .tfp-episode-info,
  #pun-viewtopic #pun-main .tfp-episode-note { font-size: 11px !important; }
}



/* ============================================================
   ЭХО ПОГИБШЕГО МИРА / КИБЕРТРОНСКИЕ СООБЩЕНИЯ v3
   Внешний вид: нейтральный технический стандарт, НЕ фракции.
   Заменяет только CSS v2. Кнопка и пользовательские BB-теги
   остаются без изменений.
   ============================================================ */

/* Общая оболочка; CSS действует только на блоки передач. */
#pun :is(.tfp-comm-radio, .tfp-comm-cipher, .tfp-comm-log, .tfp-comm-recon) {
  --comm-edge: #7998a9;
  --comm-ink: #e0edf5;
  display: block !important;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  margin: 12px 0 16px !important;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid #355064 !important;
  border-left: 2px solid var(--comm-edge) !important;
  border-radius: 4px;
  background: linear-gradient(145deg, #102333, #0a1929 72%) !important;
  box-shadow: inset 0 1px 0 rgba(189, 221, 241, .045), 0 5px 17px rgba(0, 0, 0, .17);
  color: #d9e7f0;
  font: 400 13px/1.65 'Inter', 'Roboto', Arial, sans-serif;
  overflow-wrap: anywhere;
}

/* Узкая шапка как строка системного терминала. */
#pun :is(.tfp-comm-radio, .tfp-comm-cipher, .tfp-comm-log, .tfp-comm-recon)::before {
  content: 'КИБЕРТРОНСКАЯ ПЕРЕДАЧА';
  display: block;
  box-sizing: border-box;
  min-height: 32px;
  margin: 0;
  padding: 9px 98px 8px 14px;
  border-bottom: 1px solid rgba(130, 165, 186, .24);
  background: linear-gradient(90deg, rgba(135, 174, 196, .11), rgba(17, 36, 52, .22) 66%);
  color: #a8c6d6;
  font: 800 9.5px/1.5 'Inter', 'Roboto', Arial, sans-serif;
  letter-spacing: 1.18px;
  text-transform: uppercase;
}

/* Латинская служебная метка; обычные ASCII-символы без глифов. */
#pun :is(.tfp-comm-radio, .tfp-comm-cipher, .tfp-comm-log, .tfp-comm-recon)::after {
  content: 'SYS';
  position: absolute;
  top: 9px;
  right: 14px;
  z-index: 1;
  color: #88a6b7;
  font: 700 9px/1.4 Consolas, 'Courier New', monospace;
  letter-spacing: 1.2px;
  opacity: .9;
  pointer-events: none;
}

/* Четыре назначения, без голубого=автобот / фиолетового=десептикон. */
#pun .tfp-comm-radio::before  { content: 'РАДИОСВЯЗЬ / КАНАЛ ПЕРЕДАЧИ'; }
#pun .tfp-comm-radio::after   { content: 'RX / TX'; }
#pun .tfp-comm-cipher::before { content: 'ШИФРОПАКЕТ / ПАКЕТ ДАННЫХ'; }
#pun .tfp-comm-cipher::after  { content: 'DATA'; }
#pun .tfp-comm-log::before    { content: 'ЛИЧНЫЙ ЖУРНАЛ / ЗАПИСЬ'; }
#pun .tfp-comm-log::after     { content: 'LOG'; }
#pun .tfp-comm-recon::before  { content: 'РАЗВЕДСВОДКА / НАБЛЮДЕНИЕ'; }
#pun .tfp-comm-recon::after   { content: 'OBS'; }

/* Акцент не цвета фракции, а способ подачи документа. */
#pun .tfp-comm-radio {
  --comm-edge: #89adbe;
  background: linear-gradient(145deg, #102739, #0a1929 72%) !important;
}
#pun .tfp-comm-radio::before {
  background:
    repeating-linear-gradient(90deg, transparent 0 19px, rgba(159, 197, 218, .055) 19px 20px),
    linear-gradient(90deg, rgba(110, 158, 179, .13), rgba(16, 37, 52, .35) 75%);
}

#pun .tfp-comm-cipher {
  --comm-edge: #9da9b5;
  background:
    repeating-linear-gradient(135deg, rgba(175, 194, 207, .018) 0 2px, transparent 2px 9px),
    linear-gradient(145deg, #152331, #0b1927 72%) !important;
}
#pun .tfp-comm-cipher::before {
  background:
    repeating-linear-gradient(135deg, rgba(170, 188, 201, .055) 0 4px, transparent 4px 10px),
    linear-gradient(90deg, rgba(134, 153, 170, .11), rgba(16, 36, 50, .25));
}
#pun .tfp-comm-cipher .tfp-comm-meta { border-bottom-style: dashed !important; }

#pun .tfp-comm-log {
  --comm-edge: #a3b2b7;
  border-left-width: 4px !important;
  background: linear-gradient(145deg, #142432, #101c29 72%) !important;
}
#pun .tfp-comm-log::before { background: rgba(148, 169, 179, .08); }
#pun .tfp-comm-log .tfp-comm-body { padding-left: 21px !important; }

#pun .tfp-comm-recon {
  --comm-edge: #8b9faf;
  background:
    linear-gradient(rgba(154, 180, 194, .024) 1px, transparent 1px),
    linear-gradient(90deg, rgba(154, 180, 194, .024) 1px, transparent 1px),
    linear-gradient(145deg, #0e2536, #091827 72%) !important;
  background-size: 24px 24px, 24px 24px, auto !important;
}
#pun .tfp-comm-recon::before {
  border-bottom-color: rgba(151, 185, 201, .32);
  background: linear-gradient(90deg, rgba(126, 155, 171, .17), rgba(14, 33, 48, .52));
}
#pun .tfp-comm-recon .tfp-comm-body {
  border-left: 1px solid rgba(143, 169, 183, .30);
  margin: 11px 15px 14px !important;
  padding: 0 0 0 11px !important;
}

/* Одинаковая читаемая структура во всех четырёх форматах. */
#pun .tfp-comm-title {
  display: block !important;
  margin: 0 !important;
  padding: 13px 15px 0 !important;
  color: var(--comm-ink, #e0edf5) !important;
  font: 800 15px/1.4 'Inter', 'Roboto', Arial, sans-serif !important;
  letter-spacing: .15px;
}
#pun .tfp-comm-meta {
  display: block !important;
  margin: 0 !important;
  padding: 7px 15px 11px !important;
  border-bottom: 1px solid rgba(145, 174, 191, .22) !important;
  color: #9bb7c9 !important;
  font: 500 11px/1.55 'Inter', 'Roboto', Arial, sans-serif !important;
  white-space: pre-line;
}
#pun .tfp-comm-body {
  display: block !important;
  margin: 0 !important;
  padding: 12px 15px 14px !important;
  border: 0;
  color: #d9e7ef !important;
  font: 400 13px/1.75 'Inter', 'Roboto', Arial, sans-serif !important;
  overflow-wrap: anywhere;
}

/* Внутренние параграфы от MyBB. Авторский жирный и курсив не сбрасываем. */
#pun :is(.tfp-comm-title, .tfp-comm-meta, .tfp-comm-body) > p {
  margin: 0 0 7px !important;
  padding: 0 !important;
  line-height: inherit;
}
#pun :is(.tfp-comm-title, .tfp-comm-meta, .tfp-comm-body) > p:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 620px) {
  #pun :is(.tfp-comm-radio, .tfp-comm-cipher, .tfp-comm-log, .tfp-comm-recon) {
    margin: 9px 0 12px !important;
  }
  #pun :is(.tfp-comm-radio, .tfp-comm-cipher, .tfp-comm-log, .tfp-comm-recon)::before {
    padding: 9px 72px 8px 11px;
    font-size: 9px;
    letter-spacing: .6px;
  }
  #pun :is(.tfp-comm-radio, .tfp-comm-cipher, .tfp-comm-log, .tfp-comm-recon)::after {
    right: 10px;
    font-size: 8px;
    letter-spacing: 0;
  }
  #pun .tfp-comm-title { padding: 12px 12px 0 !important; font-size: 14px !important; }
  #pun .tfp-comm-meta { padding: 6px 12px 10px !important; font-size: 10px !important; }
  #pun .tfp-comm-body { padding: 11px 12px 13px !important; font-size: 12px !important; }
  #pun .tfp-comm-log .tfp-comm-body { padding-left: 17px !important; }
  #pun .tfp-comm-recon .tfp-comm-body { margin: 10px 12px 12px !important; padding: 0 0 0 10px !important; }
}






/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   ЛИЧНЫЕ СООБЩЕНИЯ — СПИСОК ПИСЕМ
   ========================================== */

/* Общая структура */
#pun-main #profile.messages-container > .container {
  display: grid !important;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
  width: 100%;
  box-sizing: border-box;
}

/* Левое меню */
#pun-main #profile.messages-container
> .container > #profilenav {
  grid-column: 1;
  grid-row: 1;
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box;
}

/* Список личных сообщений */
#pun-main #profile.messages-container
> .container > form#messages {
  grid-column: 2;
  grid-row: 1;
  float: none !important;
  clear: none !important;
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  box-sizing: border-box;
}

/* Основная панель */
#pun-main #profile.messages-container
form#messages > fieldset {
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 18px 20px !important;
  box-sizing: border-box;

  background: rgba(8, 17, 31, .92);
  border: 1px solid #29475e !important;
  border-radius: 9px;
}

/* Заголовок списка */
#pun-main #profile.messages-container
form#messages > fieldset > legend {
  padding: 0 10px;
  color: #9cddff;
  font-size: 14px;
  font-weight: 700;
}

/* Адаптация для телефона */
max-width: 760px {
  #pun-main #profile.messages-container
  > .container {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }

  #pun-main #profile.messages-container
  > .container > #profilenav,
  #pun-main #profile.messages-container
  > .container > form#messages {
    grid-column: 1;
    grid-row: auto;
    width: 100% !important;
  }

  #pun-main #profile.messages-container
  form#messages > fieldset {
    padding: 12px !important;
  }
}




/* ======================================
   ЭХО: ЛИЧНЫЕ СООБЩЕНИЯ — СПИСОК
   ====================================== */

#pun-main #profile.messages-container
#messages fieldset table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  background: transparent !important;
}

/* Заголовки таблицы */
#pun-main #profile.messages-container
#messages table thead th {
  padding: 12px 10px !important;
  background: #14283a !important;
  border: 0 !important;
  border-bottom: 1px solid #42647a !important;
  color: #a8cfe2 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-align: left;
}

/* Единый фон всех строк личных сообщений */
#pun-main #profile.messages-container
#messages table tbody tr,
#pun-main #profile.messages-container
#messages table tbody tr:nth-child(even) {
  background: rgba(16, 33, 49, .56) !important;
  transition: background .18s ease;
}

#pun-main #profile.messages-container
#messages table tbody tr:hover {
  background: #1b3a50 !important;
}

/* Ячейки */
#pun-main #profile.messages-container
#messages table tbody td {
  padding: 10px 9px !important;
  border: 0 !important;
  border-bottom: 1px solid #29475b !important;
  background: transparent !important;
  vertical-align: middle !important;
  color: #aac6d7 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

/* Заголовок письма */
#pun-main #profile.messages-container
#messages table tbody td:first-child a {
  color: #e0eff8 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  overflow-wrap: anywhere;
}

#pun-main #profile.messages-container
#messages table tbody td:first-child a:hover {
  color: #88dfff !important;
}

/* Остальные ссылки */
#pun-main #profile.messages-container
#messages table tbody td a {
  color: #91d1eb;
  text-decoration: none;
}

/* Чекбоксы выбора писем */
#pun-main #profile.messages-container
#messages input[type="checkbox"] {
  accent-color: #70cbe8;
  cursor: pointer;
}

/* Сохраняем возможность прокрутки на узких экранах */
#pun-main #profile.messages-container
#messages .fs-box {
  min-width: 0;
  overflow-x: auto;
}


/* =========================================
   ЭХО — ПРОСМОТР ЛИЧНОГО СООБЩЕНИЯ
   ========================================= */

/* Открытое письмо размещаем справа */
#pun-main #profile.messages-container
> .container > fieldset:has(.post-body) {
  grid-column: 2 !important;
  grid-row: 1;
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  padding: 20px !important;
  box-sizing: border-box;
  background: #091726;
  border: 1px solid #31536b !important;
  border-radius: 9px;
  scroll-margin-top: 20px;
}

/* Заголовок письма */
#pun-main #profile.messages-container
> .container > fieldset:has(.post-body) > legend {
  padding: 0 10px;
  color: #a5e2ff;
  font-size: 15px;
  font-weight: 700;
}

/* Автор слева, текст письма справа */
#pun-main #profile.messages-container
fieldset:has(.post-body) .post > .container {
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 18px;
  width: 100% !important;
  box-sizing: border-box;
}

/* Данные отправителя */
#pun-main #profile.messages-container
fieldset:has(.post-body) .post-author {
  grid-column: 1;
  float: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 14px !important;
  background: #102335;
  border: 1px solid #29485e;
  border-radius: 6px;
}

/* Убираем маркеры старого списка */
#pun-main #profile.messages-container
fieldset:has(.post-body) .post-author ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#pun-main #profile.messages-container
fieldset:has(.post-body) .post-author li {
  list-style: none !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  overflow-wrap: anywhere;
}

/* Аватар */
#pun-main #profile.messages-container
fieldset:has(.post-body) .pa-avatar img {
  display: block;
  max-width: 100% !important;
  width: auto !important;
  height: auto !important;
  max-height: 230px;
  object-fit: contain;
  margin: 10px auto !important;
  border: 1px solid #46657a;
  border-radius: 5px;
}

/* Само письмо */
#pun-main #profile.messages-container
fieldset:has(.post-body) .post-body {
  grid-column: 2;
  float: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 18px !important;
  box-sizing: border-box;
  background: rgba(15, 32, 48, .65);
  border: 1px solid #29475e;
  border-radius: 6px;
  color: #d7e7f1;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

/* Действия с письмом */
#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
}

/* Мобильная версия */
max-width: 760px {
  #pun-main #profile.messages-container
  > .container > fieldset:has(.post-body) {
    grid-column: 1 !important;
    grid-row: auto;
    padding: 12px !important;
  }

  #pun-main #profile.messages-container
  fieldset:has(.post-body) .post > .container {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  #pun-main #profile.messages-container
  fieldset:has(.post-body) .post-author,
  #pun-main #profile.messages-container
  fieldset:has(.post-body) .post-body {
    grid-column: 1;
  }
}




/* =====================================
   ЭХО — ПЕРЕКЛЮЧЕНИЕ СПИСКА И ПИСЬМА
   ===================================== */

/* Когда открыто отдельное письмо,
   скрываем список входящих */
#pun-main #profile.messages-container
> .container:has(> fieldset .post-body)
> form#messages {
  display: none !important;
}

/* Открытое письмо занимает правую колонку */
#pun-main #profile.messages-container
> .container:has(> fieldset .post-body)
> fieldset:has(.post-body) {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0;
  position: relative;
  margin: 0 !important;
}

/* На телефоне письмо занимает всю ширину */
max-width: 760px {
  #pun-main #profile.messages-container
  > .container:has(> fieldset .post-body)
  > fieldset:has(.post-body) {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}



/* === ЭХО: ВОЗВРАТ К СПИСКУ ЛС === */

#pun-main .tfp-message-back {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin: 5px 0 18px;
  padding: 9px 16px;

  background: #102b3d;
  border: 1px solid #42677e;
  border-radius: 5px;

  color: #a9e5fa !important;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none !important;

  transition: background .2s, border-color .2s;
}

#pun-main .tfp-message-back:hover {
  background: #1a4058;
  border-color: #81d8f4;
  color: #ffffff !important;
}

#pun-main .tfp-message-back:focus-visible {
  outline: 2px solid #81d8f4;
  outline-offset: 3px;
}



/* ======================================
   ЭХО / ЛИЧНЫЕ СООБЩЕНИЯ
   ЦИТАТЫ — ФИНАЛЬНЫЙ СТИЛЬ
   ====================================== */

/* Основная цитата */
#pun-main #profile.messages-container
.post-body .quote-box {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  margin: 10px 0 13px !important;
  padding: 12px 14px !important;
  background: #112638 !important;
  border: 0 !important;
  border-left: 2px solid #699ab5 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  color: #dce9f3;
  overflow-wrap: anywhere;
}

/* Имя автора цитаты */
#pun-main #profile.messages-container
.post-body .quote-box cite {
  display: block !important;
  margin: 0 0 8px !important;
  padding: 0 0 7px !important;
  border: 0 !important;
  border-bottom: 1px solid #29475e !important;
  background: none !important;
  color: #a1cadd !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  font-style: italic;
  line-height: 1.5;
}

/* Убираем накопление отступов */
#pun-main #profile.messages-container
.post-body .quote-box blockquote {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

/* Вложенные цитаты превращаем
   в последовательность записей */
#pun-main #profile.messages-container
.post-body .quote-box .quote-box {
  width: 100% !important;
  max-width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 10px 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid #35546b !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Заголовки старых реплик */
#pun-main #profile.messages-container
.post-body .quote-box .quote-box cite {
  margin-bottom: 7px !important;
  padding: 0 !important;
  border: 0 !important;
  color: #91bed2 !important;
}

/* Компактные абзацы */
#pun-main #profile.messages-container
.post-body .quote-box blockquote p {
  margin: 0 0 8px !important;
  padding: 0 !important;
}

/* Контейнер старой переписки */
#pun-main #profile.messages-container
.post-body .tfp-quote-history {
  box-sizing: border-box;
  min-width: 0;
  margin: 9px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Кнопка показать / скрыть */
#pun-main #profile.messages-container
.post-body .tfp-quote-history > summary {
  display: list-item;
  margin: 0 !important;
  padding: 8px 11px !important;
  background: #1a3448 !important;
  border: 0 !important;
  border-radius: 3px;
  color: #a4dbef !important;
  font-size: 12px !important;
  line-height: 1.5;
  cursor: pointer;
}

#pun-main #profile.messages-container
.post-body .tfp-quote-history > summary:hover {
  background: #24465d !important;
  color: #fff !important;
}

#pun-main #profile.messages-container
.post-body .tfp-quote-history > summary:focus-visible {
  outline: 2px solid #8bd7f1;
  outline-offset: 2px;
}

/* Раскрытая история */
#pun-main #profile.messages-container
.post-body .tfp-quote-history[open] {
  padding: 0 !important;
  border: 0 !important;
}

#pun-main #profile.messages-container
.post-body .tfp-quote-history[open] > summary {
  margin-bottom: 10px !important;
}

/* Узкие экраны */
max-width: 760px {
  #pun-main #profile.messages-container
  .post-body .quote-box {
    padding: 10px !important;
  }

  #pun-main #profile.messages-container
  .post-body .quote-box .quote-box {
    padding: 9px 0 0 !important;
  }
}


/* === ЭХО: КНОПКИ ДЕЙСТВИЙ В ЛИЧНОМ ПИСЬМЕ === */

#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links {
  grid-column: 1 / -1;
  width: 100%;
  margin: 14px 0 0 !important;
  padding: 14px 0 0 !important;
  border-top: 1px solid #29475e;
  box-sizing: border-box;
}

/* Горизонтальное расположение */
#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links ul {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links li {
  display: block !important;
  float: none !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links li::marker {
  content: "";
}

/* Кнопки */
#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 7px 14px;
  box-sizing: border-box;
  background: #102b3d;
  border: 1px solid #42677e;
  border-radius: 5px;
  color: #a9e5fa !important;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none !important;
  transition: background .2s, border-color .2s;
}

#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links a:hover {
  background: #1a4058;
  border-color: #81d8f4;
  color: #fff !important;
}

#pun-main #profile.messages-container
fieldset:has(.post-body) .post-links a:focus-visible {
  outline: 2px solid #81d8f4;
  outline-offset: 2px;
}





/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   ЛС — СОЗДАНИЕ И ОТВЕТ НА СООБЩЕНИЕ
   ========================================== */

/* Основная форма */
#pun-main #profile.messages-container
form#post {
  min-width: 0;
  box-sizing: border-box;
}

/* Убираем белые рамки MyBB */
#pun-main #profile.messages-container
form#post fieldset {
  box-sizing: border-box;
  min-width: 0;
  margin: 0 0 14px !important;
  padding: 20px !important;
  background: rgba(8, 19, 33, .94) !important;
  border: 1px solid #31516a !important;
  border-radius: 9px;
  box-shadow: 0 0 18px rgba(36,146,205,.06);
}

/* Заголовок панели */
#pun-main #profile.messages-container
form#post legend {
  padding: 0 12px;
  color: #a6e3ff !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .4px;
}

/* Основной контейнер формы */
#pun-main #profile.messages-container
form#post .fs-box {
  min-width: 0;
  max-width: 100%;
}

/* Названия полей */
#pun-main #profile.messages-container
form#post label {
  color: #b0ccdd !important;
  font-size: 13px;
  line-height: 1.6;
}

/* Получатель и тема */
#pun-main #profile.messages-container
form#post input[type="text"] {
  box-sizing: border-box;
  max-width: 100%;
  min-height: 36px;
  padding: 8px 11px;
  background: #0c1c2d !important;
  border: 1px solid #36556d !important;
  border-radius: 5px;
  color: #e6f4ff !important;
  font-size: 13px;
}

/* Область написания письма */
#pun-main #profile.messages-container
form#post textarea {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 250px;
  padding: 15px !important;

  background: #0b1d2e !important;
  border: 1px solid #36556d !important;
  border-radius: 6px;

  color: #e2edf5 !important;
  font-size: 14px;
  line-height: 1.7;
  resize: vertical;
}

/* Подсветка активного поля */
#pun-main #profile.messages-container
form#post input[type="text"]:focus,
#pun-main #profile.messages-container
form#post textarea:focus {
  outline: 1px solid #72c9ed;
  outline-offset: 1px;
  border-color: #72c9ed !important;
}

/* Кнопки отправки и предпросмотра */
#pun-main #profile.messages-container
form#post input[type="submit"],
#pun-main #profile.messages-container
form#post input[type="button"] {
  min-height: 35px;
  padding: 8px 15px;
  background: #17415d;
  border: 1px solid #477c9b;
  border-radius: 5px;
  color: #e8f7ff;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

/* Наведение на кнопки */
#pun-main #profile.messages-container
form#post input[type="submit"]:hover,
#pun-main #profile.messages-container
form#post input[type="button"]:hover {
  background: #225575;
  border-color: #82d6f2;
}

/* Мобильные экраны */
max-width: 760px {
  #pun-main #profile.messages-container
  form#post fieldset {
    padding: 13px !important;
  }

  #pun-main #profile.messages-container
  form#post textarea {
    min-height: 220px;
    padding: 11px !important;
  }
}



/* ======================================
   ЭХО / ЛС — ПАНЕЛЬ НОВОГО СООБЩЕНИЯ
   ====================================== */

/* Внешняя панель редактора */
#pun-main #profile.messages-container
> .container > fieldset#post-new {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: 100% !important;

  margin: 0 !important;
  padding: 20px !important;

  background: rgba(8, 19, 33, .96) !important;
  border: 1px solid #31516a !important;
  border-radius: 9px !important;

  box-shadow: 0 0 18px rgba(36,146,205,.06);
}

/* Заголовок панели */
#pun-main #profile.messages-container
fieldset#post-new > legend {
  padding: 0 12px !important;
  color: #a6e3ff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .4px;
}

/* Текст внутри заголовка */
#pun-main #profile.messages-container
fieldset#post-new > legend strong {
  color: inherit !important;
  font: inherit !important;
}

/* Сама форма */
#pun-main #profile.messages-container
fieldset#post-new > form#post {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
}

/* Мобильная версия */
max-width: 760px {
  #pun-main #profile.messages-container
  > .container > fieldset#post-new {
    padding: 13px !important;
  }
}


/* === ЭХО: УБИРАЕМ ЛИШНИЕ РАЗДЕЛИТЕЛИ === */

#pun-break3,
#pun-break4,
#pun-break3 hr,
#pun-break4 hr {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}


/* === ЭХО: НАВИГАЦИЯ ПО СТРАНИЦАМ ЛС === */

/* Нижняя панель списка сообщений */
#pun-main #profile.messages-container
form#messages > .linksb {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  margin: 12px 0 0 !important;
  padding: 12px 15px !important;
  background: rgba(8, 19, 33, .92) !important;
  border: 1px solid #29475e !important;
  border-radius: 7px;
  box-sizing: border-box;
}

/* Контейнер страниц */
#pun-main #profile.messages-container
form#messages .pagelink {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  line-height: 1.5;
  color: #a3c5d8;
}

/* Номера и стрелки */
#pun-main #profile.messages-container
form#messages .pagelink a,
#pun-main #profile.messages-container
form#messages .pagelink strong {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 29px;
  min-height: 29px;
  box-sizing: border-box;
  padding: 4px 8px !important;
  margin: 0 !important;
  background: #102739 !important;
  border: 1px solid #36566c !important;
  border-radius: 4px;
  color: #a8d4e9 !important;
  text-decoration: none !important;
  font-size: 12px;
}

/* Текущая страница */
#pun-main #profile.messages-container
form#messages .pagelink strong {
  background: #225675 !important;
  border-color: #78cce7 !important;
  color: #ffffff !important;
}

/* Наведение */
#pun-main #profile.messages-container
form#messages .pagelink a:hover {
  background: #1c465f !important;
  border-color: #78cce7 !important;
  color: #ffffff !important;
}


/* ======================================
   ЭХО — ЕДИНАЯ ПАГИНАЦИЯ ФОРУМА
   ====================================== */

/* Общая область номеров страниц */
#pun-main .pagelink {
  font-size: 12px !important;
  line-height: 2.5 !important;
  color: #a3c5d8 !important;
  white-space: normal !important;
}

/* Номера страниц и стрелки */
#pun-main .pagelink a,
#pun-main .pagelink strong,
#pun-main .pagelink .current {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;

  min-width: 29px;
  min-height: 29px;
  box-sizing: border-box;
  margin: 2px 3px 2px 0 !important;
  padding: 4px 8px !important;

  background: #102739 !important;
  border: 1px solid #36566c !important;
  border-radius: 4px !important;

  color: #a8d4e9 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
}

/* Текущая страница */
#pun-main .pagelink strong,
#pun-main .pagelink .current,
#pun-main .pagelink [aria-current="page"] {
  background: #225675 !important;
  border-color: #78cce7 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* Наведение */
#pun-main .pagelink a:hover {
  background: #1c465f !important;
  border-color: #78cce7 !important;
  color: #ffffff !important;
}

/* Навигация с клавиатуры */
#pun-main .pagelink a:focus-visible {
  outline: 2px solid #8bdcf5 !important;
  outline-offset: 2px;
}
/* =========================================
   ЭХО / РЕЕСТР УЧАСТНИКОВ
   ПОИСК И СОРТИРОВКА
   ========================================= */

/* Основная форма */
#pun-main form#userlist {
  box-sizing: border-box;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Панель поиска */
#pun-main form#userlist > fieldset {
  min-width: 0;
  margin: 0 !important;
  padding: 20px !important;
  background: rgba(8,19,33,.94) !important;
  border: 1px solid #31516a !important;
  border-radius: 9px;
}

/* Заголовок панели */
#pun-main form#userlist legend {
  padding: 0 10px !important;
  color: #9cddff !important;
  font-size: 14px;
  font-weight: 700;
}

/* Четыре поля в одну строку */
#pun-main form#userlist .fs-box.inline {
  display: grid !important;
  grid-template-columns:
    repeat(4, minmax(0, 1fr));
  gap: 15px;
  align-items: end;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

/* Группы полей */
#pun-main form#userlist
.fs-box.inline > p {
  display: block !important;
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

/* Названия полей */
#pun-main form#userlist label {
  display: block;
  margin-bottom: 6px;
  color: #a8c9dc;
  font-size: 12px;
}

/* Поля ввода */
#pun-main form#userlist input[type="text"],
#pun-main form#userlist select {
  display: block;
  width: 100% !important;
  max-width: 100%;
  min-height: 37px;
  box-sizing: border-box;
  padding: 8px 10px;
  background: #0c1c2d !important;
  border: 1px solid #36556d !important;
  border-radius: 5px;
  color: #e5f3ff !important;
  font-size: 12px;
}

/* Активное поле */
#pun-main form#userlist input:focus,
#pun-main form#userlist select:focus {
  outline: 1px solid #75caff;
  outline-offset: 1px;
  border-color: #75caff !important;
}

/* Пояснение под полями */
#pun-main form#userlist
.fs-box.inline > .infofield {
  grid-column: 1 / -1;
  margin-top: 3px !important;
  padding-top: 12px !important;
  border-top: 1px solid #29475e;
  color: #90adbf;
  font-size: 12px;
  line-height: 1.6;
}

/* Панель отправки */
#pun-main form#userlist > .formsubmit {
  margin: 10px 0 22px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Кнопка поиска */
#pun-main form#userlist
.formsubmit input[type="submit"] {
  min-height: 36px;
  padding: 8px 20px !important;
  background: #17415d !important;
  border: 1px solid #477c9b !important;
  border-radius: 5px;
  color: #e8f7ff !important;
  font-weight: 700;
  cursor: pointer;
}

#pun-main form#userlist
.formsubmit input[type="submit"]:hover {
  background: #225575 !important;
  border-color: #82d6f2 !important;
}

/* Планшеты */
max-width: 900px {
  #pun-main form#userlist .fs-box.inline {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

/* Телефоны */
max-width: 600px {
  #pun-main form#userlist > fieldset {
    padding: 14px !important;
  }

  #pun-main form#userlist .fs-box.inline {
    grid-template-columns: minmax(0,1fr);
    gap: 12px;
  }
}



/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   РЕЕСТР УЧАСТНИКОВ / ТАБЛИЦА
   ========================================== */

/* Основной блок реестра */
#pun-main .usertable {
  min-width: 0;
  margin-top: 18px;
}

/* Заголовок списка */
#pun-main .usertable > h2 {
  margin: 0 0 13px !important;
  padding: 0 0 11px !important;
  border-bottom: 1px solid #31516a;
  color: #a6e3ff !important;
  font-size: 15px !important;
  font-weight: 700;
}

/* Контейнер таблицы */
#pun-main .usertable > .container {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  background: #091725 !important;
  border: 1px solid #31516a;
  border-radius: 8px;
  overflow-x: auto;
}

/* Таблица */
#pun-main .usertable table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  table-layout: fixed;
  background: transparent !important;
}

/* Заголовки столбцов */
#pun-main .usertable thead {
  background: #14283a !important;
}

#pun-main .usertable thead th {
  box-sizing: border-box;
  padding: 14px 10px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #42647a !important;
  color: #a6c9dc !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.4;
  text-align: left;
}

/* Пропорции колонок */
#pun-main .usertable th.username {
  width: 29%;
}

#pun-main .usertable th.title {
  width: 21%;
}

#pun-main .usertable th.relation {
  width: 10%;
}

#pun-main .usertable th.posts {
  width: 10%;
}

#pun-main .usertable th.registered {
  width: 16%;
}

#pun-main .usertable th.last_visit {
  width: 14%;
}

/* Все строки одного оттенка */
#pun-main .usertable tbody tr,
#pun-main .usertable tbody tr.altstyle {
  background: #0c1b2a !important;
  transition: background .18s ease;
}

/* Реакция при наведении */
#pun-main .usertable tbody tr:hover {
  background: #183448 !important;
}

/* Ячейки таблицы */
#pun-main .usertable tbody td {
  box-sizing: border-box;
  padding: 11px 10px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #29475b !important;
  color: #aac5d5 !important;
  font-size: 12px !important;
  line-height: 1.5;
  vertical-align: middle !important;
}

/* Последняя строка без нижней границы */
#pun-main .usertable tbody tr:last-child td {
  border-bottom: 0 !important;
}

/* Имя участника */
#pun-main .usertable tbody td.tcl {
  font-size: 13px !important;
  font-weight: 700;
}

#pun-main .usertable tbody td.tcl a {
  color: #e5f2fb !important;
  text-decoration: none !important;
}

#pun-main .usertable tbody td.tcl a:hover {
  color: #8edfff !important;
}

/* Статус пользователя */
#pun-main .usertable tbody td.title {
  color: #91b9ce !important;
  font-size: 11px !important;
}

/* Числовые показатели */
#pun-main .usertable th.relation,
#pun-main .usertable th.posts,
#pun-main .usertable td.relation,
#pun-main .usertable td.posts {
  text-align: center !important;
}

/* Даты */
#pun-main .usertable td.registered,
#pun-main .usertable td.last_visit {
  color: #95b6c9 !important;
  font-size: 11px !important;
}

/* Узкие экраны: таблица прокручивается,
   а не сжимает имена до нескольких букв */
max-width: 760px {
  #pun-main .usertable table {
    min-width: 740px;
  }

  #pun-main .usertable tbody td {
    padding: 9px 8px !important;
  }
}


/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   СПИСОК ТЕМ / ОСНОВНАЯ ПАНЕЛЬ
   ========================================== */

/* Контейнер списка тем */
#pun-main > .forum {
  min-width: 0;
  margin: 16px 0 !important;
}

/* Заголовок количества тем */
#pun-main > .forum > h2 {
  margin: 0 0 12px !important;
  padding: 0 0 11px !important;
  border-bottom: 1px solid #31516a;

  color: #a6e3ff !important;
  font-size: 15px !important;
  font-weight: 700;
}

/* Основная панель */
#pun-main > .forum > .container {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;

  margin: 0 !important;
  padding: 0 !important;

  background: rgba(8, 19, 33, .95) !important;
  border: 1px solid #31516a !important;
  border-radius: 8px;
}



/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   СПИСОК ТЕМ — ЕДИНЫЙ СТИЛЬ
   ========================================== */

/* Таблица внутри раздела */
#pun-main > .forum > .container > table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  background: transparent !important;
}

/* Заголовок таблицы */
#pun-main > .forum table thead {
  background: #14283a !important;
}

#pun-main > .forum table thead th {
  padding: 13px 12px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #42647a !important;

  color: #a8cfe2 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.5;
  text-align: left;
}

/* Пропорции колонок */
#pun-main > .forum table .tcl {
  width: 52%;
}

#pun-main > .forum table .tc2 {
  width: 10%;
  text-align: center !important;
}

#pun-main > .forum table .tc3 {
  width: 12%;
  text-align: center !important;
}

#pun-main > .forum table .tcr {
  width: 26%;
}

/* Одинаковый фон всех строк */
#pun-main > .forum table tbody tr,
#pun-main > .forum table tbody tr.altstyle,
#pun-main > .forum table tbody tr.iclosed {
  background: #0c1b2a !important;
  transition: background .18s ease;
}

/* Подсветка при наведении */
#pun-main > .forum table tbody tr:hover {
  background: #193549 !important;
}

/* Ячейки */
#pun-main > .forum table tbody td {
  padding: 13px 12px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #29475b !important;

  color: #aac6d7 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  vertical-align: middle !important;
}

/* Последняя строка */
#pun-main > .forum table tbody tr:last-child td {
  border-bottom: 0 !important;
}

/* Заголовки тем */
#pun-main > .forum table tbody td.tcl strong a {
  color: #e8f3fa !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

#pun-main > .forum table tbody td.tcl strong a:hover {
  color: #8bdcff !important;
}

/* Информация об авторе */
#pun-main > .forum table tbody td.tcl {
  overflow-wrap: anywhere;
}

#pun-main > .forum table tbody td.tcl a {
  text-decoration: none;
}

/* Последнее сообщение */
#pun-main > .forum table tbody td.tcr {
  color: #9bb9cd !important;
  font-size: 11px !important;
  overflow-wrap: anywhere;
}

/* Ссылки последнего сообщения */
#pun-main > .forum table tbody td.tcr a {
  color: #a4d4ed;
  text-decoration: none;
}

#pun-main > .forum table tbody td.tcr a:hover {
  color: #ffffff;
}



/* ==========================================
   ЭХО / СПИСОК ТЕМ
   Названия, авторы и статусы
   ========================================== */

/* Убираем старые линии внутри ячейки темы.
   Разделители строк уже есть у самой таблицы. */
#pun-main > .forum td.tcl .intd,
#pun-main > .forum td.tcl .tclcon {
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

/* Содержимое строки темы */
#pun-main > .forum td.tcl .tclcon {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 9px;
  min-width: 0;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

/* Служебный номер темы:
   скрыт визуально, доступен скринридерам */
#pun-main > .forum .tclcon > .acchide {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Название темы */
#pun-main > .forum .tclcon > a {
  order: 1;
  color: #e8f3fa !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.45;
  text-decoration: none !important;
  overflow-wrap: anywhere;
}

#pun-main > .forum .tclcon > a:hover {
  color: #8bdcff !important;
}

/* Метка закрытой темы */
#pun-main > .forum .tclcon > .closedatafield {
  order: 2;
  display: inline-flex !important;
  align-items: center;
  padding: 3px 8px !important;
  margin: 0 !important;

  background: #283440 !important;
  border: 1px solid #607281 !important;
  border-radius: 4px;

  color: #b7c6d0 !important;
  font-size: 10px !important;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
}

/* Автор — отдельной строкой */
#pun-main > .forum .tclcon > .byuser {
  order: 3;
  flex: 0 0 100%;
  display: block !important;
  margin: 1px 0 0 !important;
  padding: 0 !important;

  color: #91b4c9 !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.5;
}

#pun-main > .forum .tclcon
.byuser-username {
  color: #91b4c9 !important;
  font-size: 11px !important;
  font-weight: 400 !important;
}



/* =====================================
   ЭХО / КНОПКИ СОЗДАНИЯ ТЕМ
   ===================================== */

/* Только страницы списков тем */
#pun-viewforum #pun-main > .linkst .postlink,
#pun-viewforum #pun-main > .linksb .postlink {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  float: none !important;
  margin: 10px 0 !important;
  padding: 0 !important;
}

/* Кнопки новой темы и опроса */
#pun-viewforum #pun-main
:is(.linkst, .linksb) .postlink a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 35px;
  box-sizing: border-box;
  padding: 8px 15px !important;

  background: #14344a !important;
  border: 1px solid #42677e !important;
  border-radius: 5px;

  color: #b9e8f8 !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none !important;
  transition: background .2s, border-color .2s;
}

#pun-viewforum #pun-main
:is(.linkst, .linksb) .postlink a:hover {
  background: #20516e !important;
  border-color: #81d8f4 !important;
  color: #fff !important;
}

#pun-viewforum #pun-main
:is(.linkst, .linksb) .postlink a:focus-visible {
  outline: 2px solid #81d8f4;
  outline-offset: 2px;
}


/* ======================================
   ЭХО / СПИСОК ТЕМ
   Компактные индикаторы состояния
   ====================================== */

/* Индикатор и название в одну линию */
#pun-main > .forum td.tcl .intd {
  display: flex !important;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

/* Вместо длинной полосы — маленькая точка */
#pun-main > .forum td.tcl .intd > .icon {
  display: block !important;
  flex: 0 0 10px !important;

  width: 10px !important;
  height: 10px !important;

  min-width: 10px !important;
  max-width: 10px !important;
  min-height: 10px !important;
  max-height: 10px !important;

  float: none !important;
  position: static !important;
  margin: 5px 0 0 !important;
  padding: 0 !important;

  border-radius: 50% !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Название занимает оставшееся место */
#pun-main > .forum td.tcl .tclcon {
  flex: 1 1 auto;
  min-width: 0;
}

/* Новые сообщения — заметная точка */
#pun-main > .forum tr.inew .icon {
  background: #58c6ec !important;
  border-color: #9be8ff !important;
  box-shadow: 0 0 7px rgba(88,198,236,.45) !important;
}

/* Закрытые темы — приглушённая точка */
#pun-main > .forum tr.iclosed .icon {
  background: #604453 !important;
  border-color: #966c80 !important;
}



/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   СПИСОК ТЕМ — ПАНЕЛЬ МОДЕРАЦИИ
   ========================================== */

/* Панель под таблицей тем */
#pun-main > .modmenu {
  margin: 12px 0 18px !important;
  padding: 0 !important;
}

/* Контейнер действий */
#pun-main > .modmenu > p.container {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 20px;

  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 12px 15px !important;

  background: rgba(8, 19, 33, .92) !important;
  border: 1px solid #29475e !important;
  border-radius: 7px;
}

/* Основной элемент управления */
#pun-main > .modmenu > p.container > strong {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  font-weight: normal !important;
}

/* Кнопка перехода в модерацию */
#pun-main > .modmenu > p.container > strong > a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  min-height: 34px;
  box-sizing: border-box;
  padding: 8px 14px !important;

  background: #183246 !important;
  border: 1px solid #45677d !important;
  border-radius: 5px;

  color: #b7dceb !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.5;
  text-decoration: none !important;
}

/* Наведение */
#pun-main > .modmenu > p.container > strong > a:hover {
  background: #23465d !important;
  border-color: #82cde9 !important;
  color: #ffffff !important;
}

/* Технические ссылки RSS / Atom */
#pun-main > .modmenu > p.container > span {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-left: auto !important;

  color: #637f93 !important;
  font-size: 11px !important;
}

/* Ссылки экспорта */
#pun-main > .modmenu > p.container > span a {
  color: #8cabbf !important;
  font-size: 11px !important;
  text-decoration: none !important;
}

#pun-main > .modmenu > p.container > span a:hover {
  color: #bceaff !important;
  text-decoration: underline !important;
}

/* Доступность с клавиатуры */
#pun-main > .modmenu a:focus-visible {
  outline: 2px solid #81d8f4;
  outline-offset: 3px;
}




/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   РЕЗУЛЬТАТЫ ПОИСКА / КАРТОЧКИ
   ========================================== */

/* Контейнер результатов */
#pun-main.search > .topic {
  min-width: 0;
  width: 100%;
  margin: 18px 0;
  padding: 0;
  background: transparent !important;
  border: 0 !important;
}

/* Заголовок количества результатов */
#pun-main.search > .topic > h2 {
  margin: 0 0 18px !important;
  padding: 0 0 12px !important;
  border-bottom: 1px solid #31516a;
  color: #a6e3ff !important;
  font-size: 15px !important;
  font-weight: 700;
}

/* Отдельный результат поиска */
#pun-main.search > .topic > .post,
#pun-main.search > .topic > .post.altstyle {
  display: block !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
  margin: 0 0 15px !important;
  padding: 0 !important;

  background: #091725 !important;
  border: 1px solid #31516a !important;
  border-radius: 8px;
  box-shadow: none !important;
}

/* Заголовок найденного сообщения */
#pun-main.search > .topic > .post > h3 {
  box-sizing: border-box;
  margin: 0 !important;
  padding: 13px 17px !important;

  background: #14283a !important;
  border: 0 !important;
  border-bottom: 1px solid #35546b !important;
  border-radius: 7px 7px 0 0;

  color: #dceef9 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
}

/* Ссылки в заголовке */
#pun-main.search > .topic > .post > h3 a {
  color: #a5dcf3 !important;
  font-size: inherit;
  text-decoration: none !important;
}

#pun-main.search > .topic > .post > h3 a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}

/* Содержимое результата */
#pun-main.search > .topic > .post > .container {
  display: block;
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  padding: 16px 18px !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  color: #d1e2ed;
  font-size: 13px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

/* Ссылки внутри найденного сообщения */
#pun-main.search > .topic > .post
> .container a {
  color: #9dd9f1;
}

#pun-main.search > .topic > .post
> .container a:hover {
  color: #ffffff;
}

/* Внутреннее содержимое не обрезаем */
#pun-main.search > .topic > .post
> .container img {
  max-width: 100%;
  height: auto;
}

/* Подсветка карточки при наведении */
#pun-main.search > .topic > .post:hover {
  border-color: #507b94 !important;
}

/* Сохраняем видимый фокус ссылок */
#pun-main.search > .topic a:focus-visible {
  outline: 2px solid #86d8f4;
  outline-offset: 3px;
}



/* ==========================================
   ПОИСК — СТРУКТУРА СОДЕРЖИМОГО КАРТОЧЕК
   ========================================== */

/* Сведения об авторе */
#pun-main.search > .topic > .post
> .container > .post-author {
  float: none !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 0 12px !important;
  padding: 0 0 10px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #294457 !important;
  color: #9dbbce;
  font-size: 12px;
}

/* Списки сведений и ссылок */
#pun-main.search > .topic > .post
> .container > .post-author > ul,
#pun-main.search > .topic > .post
> .container > .post-links > ul {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 12px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Убираем старые маркеры */
#pun-main.search > .topic > .post
> .container > .post-author > ul > li,
#pun-main.search > .topic > .post
> .container > .post-links > ul > li {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Разделитель между автором и статистикой */
#pun-main.search > .topic > .post
> .container > .post-author > ul > li + li::before {
  content: "·";
  display: inline-block;
  margin-right: 12px;
  color: #64859b;
}

/* Область найденного сообщения */
#pun-main.search > .topic > .post
> .container > .post-body {
  float: none !important;
  position: static !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Нижняя панель перехода */
#pun-main.search > .topic > .post
> .container > .post-links {
  float: none !important;
  position: static !important;
  width: auto !important;
  margin: 14px 0 0 !important;
  padding: 11px 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid #294457 !important;
  font-size: 12px;
}

/* Ссылка на найденное сообщение или тему */
#pun-main.search > .topic > .post
> .container > .post-links a {
  color: #95d4ee !important;
  text-decoration: none !important;
  font-weight: 600;
}

#pun-main.search > .topic > .post
> .container > .post-links a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}



/* ==========================================
   ЭХО ПОГИБШЕГО МИРА
   ПОИСК — ОСНОВНАЯ ФОРМА
   ========================================== */

/* Оболочка поисковой формы */
#pun-main .formal > form#punbsearch {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Три основные панели */
#pun-main #punbsearch > fieldset {
  display: block;
  box-sizing: border-box;
  min-width: 0;
  width: 100%;

  margin: 0 0 16px !important;
  padding: 18px 20px 20px !important;

  background: #091725 !important;
  border: 1px solid #31516a !important;
  border-radius: 8px;
  box-shadow: none !important;
}

/* Заголовки панелей */
#pun-main #punbsearch > fieldset > legend {
  margin: 0 0 8px !important;
  padding: 0 9px !important;

  color: #a5dcf3 !important;
  background: #091725 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.6;
}

/* Поля ввода и выпадающие списки */
#pun-main #punbsearch input[type="text"],
#pun-main #punbsearch select {
  box-sizing: border-box;
  max-width: 100%;
  min-height: 34px;
  padding: 7px 11px !important;

  color: #dcecf6 !important;
  background: #112638 !important;
  border: 1px solid #35566d !important;
  border-radius: 5px;
  font: inherit;
}

/* Подсветка выбранного поля */
#pun-main #punbsearch input[type="text"]:focus,
#pun-main #punbsearch select:focus {
  border-color: #79c9e8 !important;
  outline: 2px solid rgba(121,201,232,.18);
  outline-offset: 1px;
}

/* Подписи полей */
#pun-main #punbsearch fieldset label {
  color: #bad3e2;
}

/* Поясняющий текст */
#pun-main #punbsearch fieldset p {
  color: #91adbf;
  line-height: 1.7;
}

/* Панель отправки */
#pun-main #punbsearch > p.formsubmit {
  margin: 4px 0 18px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  text-align: right;
}

/* Кнопка поиска */
#pun-main #punbsearch > p.formsubmit
input[type="submit"] {
  min-height: 36px;
  padding: 8px 22px !important;

  color: #d8f2ff !important;
  background: #164159 !important;
  border: 1px solid #44728a !important;
  border-radius: 5px;
  font-weight: 700;
  cursor: pointer;
}

#pun-main #punbsearch > p.formsubmit
input[type="submit"]:hover {
  background: #20516b !important;
  border-color: #78b8d4 !important;
}


/* ПОИСК — КРИТЕРИИ В ДВЕ КОЛОНКИ */

#pun-main #punbsearch > fieldset:first-of-type
> .fs-box.inline {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 15px 20px;
  align-items: start;
}

/* Два поисковых поля */
#pun-main #punbsearch > fieldset:first-of-type
> .fs-box.inline > p.inputfield {
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

/* Одинаковая ширина полей */
#pun-main #punbsearch > fieldset:first-of-type
> .fs-box.inline > p.inputfield input[type="text"] {
  width: 100% !important;
  max-width: 100% !important;
}

/* Пояснение под обоими полями */
#pun-main #punbsearch > fieldset:first-of-type
> .fs-box.inline > p.infofield {
  grid-column: 1 / -1;
  margin: 0 !important;
  padding: 10px 0 0 !important;
  border-top: 1px solid #294457;
}