@charset "Windows-1251";
@import url(style_cs.1766034420.css);

/***************************************************************/

/* ПЕРЕМЕННЫЕ */
:root {
  --pun-width: 1200px;
  --profile-width: 270px;
  --profile-nav: 180px;

  --main-border-radius: 4px;
  --secondary-border-radius: 8px;

  --padding-punbb: min(4.0rem, 3.6%);

  --main-bg-body: #372840;
  --secondary-bg-body: #762f4b;
  --main-bg-body-light: #cec2b3;
  --secondary-bg-body-light: #e2dcd0;

  --main-bg-pun: #e7e3dc;
  --secondary-bg-pun: #f0eae3;

  --main-border-color: #d2c5bc;
  --secondary-border-color: #b9a393;

  --primary-text: #161213;
  --lighter-text: #efeae1;

  --links-color: #52691d;
  --links-hover-color: #a13355;
  --links-color-light: #f5dc98;
  --links-hover-color-light: #e6d6aa;
}


/* RESET-n-NORMALIZE */
/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, h7, h8, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  border: 0px solid transparent;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*! NORMALIZE.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
main {
  display: block;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: bold;
}

i, em {
  font-style: italic;
}

code, kbd, samp {
  font-family: monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.4rem 0rem 1rem;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}


/* обнуляем всякое */
.acchide,
#pun-index #pun-main h1,
#pun-navlinks h2,
#pun-status h2,
#pun-ulinks h2,
.punbb .forum h2,
.punbb .multipage .topic h2,
.punbb dl.post-sig dt span,
.punbb p.crumbs strong,
.punbb .divider hr,
.punbb .required label em,
.punbb .formsubmit label,
.punbb .submitfield label,
.punbb .modmenu label,
#pun-userlist .main h2 {
  position: absolute;
  font-size: 0;
  height: 0;
  width: 0;
  line-height: 0;
  padding: 0;
  overflow: hidden;
  background-color: transparent;
  border: 0px none transparent;
  box-shadow: none;
}

.punbb .clearer {
  display: block;
  clear: both;
  height: 0;
  font-size: 0;
}

.divider {
  display: none;
}

/* убираем font boosting */
html * {
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
}

/* задаем размер шрифт на форуме */
html {
  font-size: 62.5%; /* 10px */
}

body {
  scrollbar-gutter: stable both-edges;
  line-height: 1.4;
  font-family: Tahoma, Verdana, Arial, system-ui, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  color: var(--primary-text);
  background: radial-gradient(circle at 95% 10%, var(--secondary-bg-body-light) 0%, transparent max(35%, 35vw)), radial-gradient(circle at 2% 100%, var(--secondary-bg-body-light) 0%, transparent max(40%, 40vw));
  background-attachment: fixed;
  background-color: var(--main-bg-body-light);
}

[id="pun"],
[id="pun"] * {
  box-sizing: border-box;
}

/*********************************************************************/

/* ССЫЛКИ */
a {
  color: var(--links-color);
  text-decoration: none;
  -moz-transition: 0.12s linear;
  transition: 0.12s linear;
}

a:hover {
  color: var(--links-hover-color);
}

.quote-box cite a,
.code-box .legend a,
.hide-box cite a {
  color: var(--links-color-light);
}

.quote-box cite a:hover,
.code-box .legend a:hover,
.hide-box cite a:hover {
  color: var(--links-hover-color-light);
}

/* никнейм */
li.pa-author,
li.pa-author a {
  color: var(--links-color);
}

li.pa-authora:hover {
  color: var(--links-hover-color);
}

/* активная вкладка */
[id="pun-navlinks"] ul li.isactive,
[id="profilenav"] ul li.isactive a {
  color: var(--links-hover-color);
}

/* ссылки в админке */
.punbb-admin [id="pun-admain"] a {
  color: var(--links-color) !important;
}

.punbb-admin [id="pun-admain"] a:hover,
.punbb-admin a:focus {
  color: var(--links-hover-color) !important;
}

.punbb-admin [id="pun-admain"] li.isactive a {
  color: var(--links-hover-color) !important;
}

/*********************************************************************/

/* ЦВЕТНОЙ СКРОЛЛ */
@-moz-document url-prefix() {
  * {
    scrollbar-width: thin;
    scrollbar-color: var(--links-color) var(--main-border-color);
  }
}

*::-webkit-scrollbar {
  width: 10px;
  height: 8px;
}

*::-webkit-scrollbar-track {
  background-color: var(--main-border-color);
}

*::-webkit-scrollbar-thumb {
  background-color: var(--links-color);
}

*::-webkit-scrollbar-corner {
  background-color: transparent;
}

/* внутри форума */
#pun *::-webkit-scrollbar {
  width: 5px;
  height: 5px;
  border-radius: 0px;
}

#pun *::-webkit-scrollbar-track {
  background-color: var(--main-border-color) !important;
}

#pun *::-webkit-scrollbar-thumb {
  background-color: var(--links-color) !important;
  border-radius: 2px;
}

/* ХАЙЛАЙТ-ВЫДЕЛИТЕЛЬ */
.post-content .highlight-text {
  background-color: var(--secondary-bg-body) !important;
  color: var(--lighter-text) !important;
  padding: 0 6px;
}

/* ЦВЕТНОЕ ВЫДЕЛЕНИЕ ТЕКСТА */
*::selection {
  background-color: var(--main-bg-body);
  color: var(--lighter-text);
}

*::-moz-selection {
  background-color: var(--main-bg-body);
  color: var(--lighter-text);
}

/*********************************************************************/

/* ЗАГОЛОВКИ */
h1 {
  font-size: clamp(1.4rem, (1vw + 1.3rem), 3.2rem);
  font-family: Trebuchet Ms, Tahoma, Arial, sans-serif;
}

h2 {
  margin: 0.2rem 0rem;
  padding: 0.4rem 0.4rem;
  font-size: clamp(1.4rem, (1vw + 0.5rem), 1.8rem);
  font-family: Trebuchet Ms, Tahoma, Arial, sans-serif;
}

h3 {
  margin: 0.2rem 0rem;
  padding: 0.2rem 0rem;
  font-size: clamp(1.2rem, (1vw + 0.1rem), 1.5rem);
  font-family: Trebuchet Ms, Tahoma, Arial, sans-serif;
}

/*********************************************************************/

/* все таблички на форуме */
table {
  width: 100%;
}

thead {
  font-size: 1rem;
  opacity: 0.85;
}

thead th {
  padding: 4px;
}

.punbb .main td {
  padding: 1rem 0.5rem;
}

.usertable {
  margin: 0.5rem auto;
}

/*********************************************************************/

/* разделитель */
hr,
.post-content hr {
  margin: 1.5rem auto 1.4rem !important;
  width: 80%;
  opacity: 1 !important;
}

hr,
.post-content hr,
.post-author li hr,
[id="profile-signature"] ul {
  border: 0px solid var(--secondary-border-color);
  border-width: 1px 0 0 0;
}

/* картинки */
* img {
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: cover;
}

/* картинки и текст рядом */
img.postimg {
  vertical-align: middle;
  max-height: 2000px;
  max-width: 100%;
  width: auto;
  height: auto;
}

/* скролл */
.scrollbox {
  overflow: auto;
}

/* легенда блоков */
legend {
  margin: auto auto 0px 2rem;
  text-align: left;
  text-transform: lowercase;
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.05rem;
}

legend span {
  padding: 0.3rem 0.6rem;
}

legend span:before,
legend span:after {
  display: inline-block;
}

legend span:before {
  content: '[';
  margin-right: 0.3rem;
}

legend span:after {
  content: ']';
  margin-left: 0.3rem;
}

[id="pun-edit"] legend,
legend.warntext {
  padding: 1rem 0;
}

/* блок написания поста */
[id="post.container"][method="post"] legend {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  position: relative;
  right: 0px;
  left: 0px;
  width: calc(100% - var(--padding-punbb) * 2);
}

/* блок с выбором и перемещением */
.fs-box {
  margin: 0.6rem 0.7rem 0.4rem;
}

/* всплывающие подсказки */
.tooltipsy {
  max-width: 300px;
  background: rgba(0, 0, 0, 0.8) !important;
  border: 1px solid rgba(0, 0, 0, 0.8);
  color: #e9e9e9;
}

/*********************************************************************/

/* поля ввода преднастройка */
button,
input,
optgroup,
select,
textarea {
  line-height: 1;
  font-size: 1.2rem;
  color: var(--primary-text);
  border: 1px solid var(--main-border-color);
  border-radius: var(--main-border-radius);
  background-color: var(--secondary-bg-pun);
}

[id="main-reply"] {
  width: 100%;
}

[id="form-buttons"] table,
.punbb .formal textarea {
  width: 99%;
}

[id="post-form"].formal {
  margin-bottom: 1.6rem;
}

/* выпадающее меню */
select {
  outline: none;
  padding: 0.5rem 1rem;
}

/* поля ввода */
input {
  outline: none;
  padding: 0.5rem 1rem 0.4rem;
  max-width: 100%;
}

[type="checkbox"],
[type="radio"],
input[type="radio"] {
  box-shadow: none;
}

/* радиокнопки */
p[class="checkfield"] *,
div[class="checkfield"] *,
fieldset[class="radiofield"] *,
fieldset[class="radiofield security-level"] * {
  height: 2em;
  vertical-align: middle;
  line-height: 1.5;
}

.checkfield input[type="checkbox"],
.radiofield input[type="radio"] {
  margin: 0px 0.8rem auto 0.4rem;
}

input[type="checkbox"] {
  padding: 5px !important;
  height: 1em;
  border: 1px solid var(--secondary-border-color);
  border-radius: 2px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  transition: all .1s linear 0s;
}

input[type="radio"] {
  padding: 5px !important;
  height: 1.2rem;
  border-radius: 50%;
  border: 1px solid var(--secondary-border-color);
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  transition: all .2s ease-in-out 0s;
}

[id="pun"] input[type="checkbox"]:checked,
[id="pun"] input[type="radio"]:checked {
  height: 1.2rem;
  border: 1px solid var(--main-bg-body);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
  background-position: 0;
  background-repeat: no-repeat;
  background-color: var(--secondary-bg-body);
}

/* выбранная строка - перекрашивается */
[id="pun"] tr:has(input[type="radio"]:checked),
[id="pun"] tr:has(input[type="checkbox"]:checked),
[id="pun"] #messages .fs-box tr:has(input[type="checkbox"]:checked),
#pun-admain #filetable tr.selected td,
#filetable tr:has(.tc3.checker input[type="checkbox"]:checked) {
  background-color: var(--secondary-bg-body-light);
}

[id="pun"] [id="pun-multimove"] .post:has(input[type="checkbox"]:checked),
[id="pun"] [id="pun-multidelete"] .post:has(input[type="checkbox"]:checked) {
  border-radius: var(--secondary-border-radius);
  background: linear-gradient(90deg, transparent 5%, var(--secondary-bg-body-light) 100%);
}

/*********************************************************************/

/* подчеркнутый текст */
.bbuline,
em.bbuline {
  text-decoration: underline;
}

/* зачеркнутый текст */
del {
  text-decoration: none;
  opacity: 0.7;
  filter: blur(2px);
  transition: 0.25s ease-in-out;
}

del:hover {
  text-decoration: none;
  opacity: 0.95;
  filter: blur(0px);
}

/* поясняющиий текст */
.post-content abbr {
  cursor: help;
  text-decoration: underline dotted;
}

/*********************************************************************/

/* таблица опроса*/
[id="poll-special"] div.formal.vote-result table td {
  width: 33%;
}

[id="poll-special"] td h1 {
  display: block;
  margin: auto 0px;
  padding: 2px;
  height: 8px !important;
  background-image: none;
  background-color: var(--main-bg-body);
}

[id="poll-special"] td h1:before,
[id="poll-special"] td h1:after {
  display: none;
}

[id="poll-special"] td span {
  padding: 0 1rem;
}

[id="poll-special"] td.tac span {
  padding: 0;
}

[id="poll-special"] table.poll2 tr td:first-child {
  text-align: right !important;
}

[id="poll-special"] table.poll2 tr td.tac {
  text-align: center !important;
}

/* опрос да-нет*/
[id="poll-special"].section.type-3 div.formal.vote-result table td {
  width: auto;
}

/*********************************************************************/

/* КНОПКИ */
/* центрируем кнопки */
[id="post-form"] .formsubmit {
  text-align: center;
}

[id="imageupload-left"] input[type=button] {
  width: auto !important;
}

[id="pun-status"] span.item3 a[href*="/foundation"],
[id="pun-status"] .container span.item4 a[href="/vip.php"],
[id="viewprofile-next"] [id="pa-edit"] a,
[id="pun-profile"] a.vip,
input[class="button"],
input[class="button submit"],
input[type="button"],
input[type="submit"],
input[name="ban"],
.button {
  cursor: pointer;
  -moz-transition: 0.18s linear;
  transition: 0.18s linear;
  margin: auto 0.4rem;
  padding: 0.6rem 1.4rem 0.7rem !important;
  letter-spacing: 0.08rem;
  font-weight: 600 !important;
  font-size: 1.1rem;
  color: var(--links-color-light);
  border: 1px solid var(--main-bg-body);
  border-radius: var(--main-border-radius);
  background: linear-gradient(130deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(105%, 90vw));
  background-color: var(--secondary-bg-body);
  background-size: 100% auto;
  background-position: 50% 50%;
  filter: brightness(1.0);
}

/* кнопка отправить */
input[name="submit"],
input[id="reputationButtonSend"],
[id="viewprofile-next"] [id="pa-edit"] a {
  color: var(--links-color-light);
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-bg-body);
  background: linear-gradient(-30deg, var(--main-bg-body) -50%, var(--secondary-bg-body) min(105%, 90vw));
  background-size: 100% auto;
  background-position: 100% 100%;
}

/* кнопки при наведении */
[id="pun-status"] span.item3 a[href*="/foundation"]:hover,
[id="pun-status"] .container span.item4 a[href="/vip.php"]:hover,
[id="viewprofile-next"] [id="pa-edit"] a:hover,
[id="pun-profile"] a.vip:hover,
input[class="button"]:hover,
input[class="button submit"]:hover,
input[type="button"]:hover,
input[name="ban"]:hover,
input[id="reputationButtonSend"]:hover,
.button:hover {
  cursor: pointer;
  color: var(--links-hover-color-light);
  background: linear-gradient(130deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(105%, 90vw));
  background-size: 200% auto;
  background-position: 0% 50%;
  filter: brightness(1.15);
}

/* улучшить аккаунт */
[id="pun-profile"] a.vip {
  display: block;
  margin: 1.2rem 1rem;
  max-width: 300px;
  text-align: center;
}

[id="pun-status"] span.item3 a[href*="/foundation"],
[id="pun-status"] .container span.item4 a[href="/vip.php"],
[id="pun-profile"] a.vip {
  display: inline-block;
  padding: 0.2rem 1.1rem 0.3rem !important;
  font-weight: 400 !important;
}

/*********************************************************************/

/* страница нет новых сообщений */
h1+div.info {
  padding: 1.2rem 1.4rem;
}

/* пояснение для пустого блока */
.info .container {
  margin: 0rem;
  padding: 1rem 1rem 0.8rem;
}

/* списки на страницах VIP, help */
[id="forum-vip"] ul li,
[id="forum-foundation"] ul li {
  list-style-type: disc;
  padding-bottom: 0.5rem;
  margin-left: 2rem;
}

[id="pun-help"].punbb {
  padding: calc(var(--padding-punbb)/1.8) var(--padding-punbb);
}

[id="pun-help"] h2 {
  margin: 0.5rem 0rem 1rem;
  padding: 0.4rem min(3%, 2rem) 0.4rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  font-weight: 600;
  font-size: clamp(1.4rem, (1vw + 0.5rem), 2rem);
  color: var(--links-hover-color);
}

[id="pun-help"] h3 {
  margin: 1.2rem auto;
  width: 80%;
}

[id="pun-help"] p {
  padding-bottom: 0.8rem;
}

[id="pun-help"] dl,
[id="pun-help"] ul {
  margin-left: 2rem;
  padding-bottom: 0.6rem;
}

[id="pun-help"] dl dt,
[id="pun-help"] ul li {
  padding: 0 0 0.6rem 1rem;
}

[id="pun-help"] dd {
  padding: 0 0 2rem 1rem;
}

/*********************************************************************/

/* вкплывающие окна, модальные окна, pop-up */
.modal-inner,
.inner,
[id="pun"] .modal-inner {
  padding: 1.2rem 1.4rem;
  color: var(--primary-text);
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--secondary-border-color);
  background-color: var(--main-bg-pun);
  box-shadow: 0 0 18px 0px rgba(0, 0, 0, 0.55) !important;
}

[id="pun"] .pun-modal .container {
  overflow: auto;
  padding: 0.5rem 0em;
}

[id="pun"] [id="pun-reputation"] .inner {
  top: 40%;
}

[id="pun"] .pun-modal.rating_theme [id="all_voters"] tbody {
  overflow-y: hidden;
}

[id="pun"] .pun-modal.rating_theme .container {
  overflow-x: hidden;
}

[id="pun"] .pun-modal [id="all_voters"] figure {
  width: auto !important;
  max-width: 74px !important;
}

[id="pun"] .pun-modal .closer {
  font-size: 1.6rem !important;
  margin-right: 4px !important;
}

.inner td {
  vertical-align: top;
}

[id="pun"] .pun-modal h2 {
  margin: 0px auto 1.8rem auto !important;
  text-align: center;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--links-hover-color);
}

/* перемещение сообщений */
[id="move_posts_form"] thead tr,
[id="move_posts_form"] tbody tr {
  padding-right: 8px;
  display: grid !important;
  align-items: center;
  grid-template-columns: 1fr auto;
  justify-items: start;
  border-bottom: 1px solid var(--main-border-color);
}

[id="pun"] [id="pun-report"] .bg,
[id="pun"] [id="pun-reputation"] .bg,
[id="pun"] [id="pun-admin-award-form"] .bg {
  background-color: rgba(0, 0, 0, 0.75);
}

/*********************************************************************/

/* плавная прокрутка внутри форума */
@media (prefers-reduced-motion: no-preference) {
  [id="pun"] {
    scroll-behavior: smooth;
  }
}

/* тело форума, начало, start */
[id="pun"] {
  position: relative;
  overflow-wrap: break-word;
  margin: 60px auto 40px;
  padding: 0rem;
  width: clamp(260px, var(--pun-width), 100%);
  max-width: var(--pun-width);
  font-size: 1.2rem;
  letter-spacing: 0.015em;
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
  background-color: var(--main-bg-pun);
}

.punbb {
  display: block;
  width: auto;
  padding: calc(var(--padding-punbb)/2) var(--padding-punbb);
}

[id="pun-main"] {
  position: relative;
}

[id="pun-main"]:after {
  content: '';
  display: block;
  clear: both;
}

/***************************************************************/

/* логотип, шапка форума */
[id="pun-title"] {
  padding: var(--padding-punbb);
  margin: auto 0rem 1.8rem;
  color: var(--lighter-text);
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-bg-body);
  background: linear-gradient(176deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(100%, 90vw));
}

[id="pun-title"] h1.title-logo {
  margin: 0rem;
  padding: 0rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  gap: 6px 1.6rem;
  text-align: center;
  line-height: 1.2;
  font-size: 1.6rem;
  color: var(--lighter-text);
  border-radius: 0px 0px var(--secondary-border-radius) var(--secondary-border-radius);
}

[id="pun-title"] h1.title-logo span {
  text-align: right;
}

[id="pun-title"] h1.title-logo:before {
  margin: 0rem;
  padding: 0rem;
  min-width: calc(3.6rem*4);
  box-sizing: border-box;
  content: '» Mybb';
  display: block;
  font-size: 3.6rem;
  text-transform: uppercase;
  letter-spacing: 0rem;
  color: var(--links-color-light);
}

/***************************************************************/

/* НАВИГАЦИЯ */
[id="pun-navlinks"],
[id="pun-ulinks"] {
  position: relative;
  margin: 0rem 0rem 0.5rem;
  padding: 4px;
}

[id="pun-navlinks"] {
  padding: 10px 4px 8px;
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
  background: var(--secondary-bg-body-light);
}

[id="pun-navlinks"] .container,
[id="pun-ulinks"] .container {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.3rem 1.5rem;
  line-height: 1.2;
}

[id="pun-navlinks"] .container {
  margin: auto;
  width: auto;
  font-family: Trebuchet Ms, Tahoma, Arial, sans-serif;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05rem;
}

[id="pun-ulinks"] .container {
  font-size: 1.1rem;
  text-transform: lowercase;
}

[id="pun-navlinks"] li,
[id="pun-ulinks"] li {
  position: relative;
  margin: auto 0rem;
  padding: 0rem;
}

/* уведомления */
[id="pun"] span.num_msg {
  position: absolute;
  z-index: 6;
  display: inline-block;
  margin-left: -4px !important;
  margin-top: -18px !important;
  padding: 9px 4px 4px 4px !important;
  height: 18px !important;
  line-height: 0;
  font-weight: 400;
  font-size: 10px !important;
  border-radius: var(--main-border-radius);
  background-color: var(--secondary-bg-body);
}

[id="pun"] span.num_msg:before {
  top: 15px !important;
  background-color: var(--secondary-bg-body) !important;
}

[id="pun"] .bubble,
[id="pun"] .notify-bubble {
  display: inline-block;
  position: inherit !important;
  top: 0px !important;
  right: 0px !important;
  margin: auto auto auto 6px !important;
  padding: 1px 3px 0px 3px !important;
  min-width: 8px !important;
  width: auto !important;
  height: auto !important;
  font-weight: 400 !important;
  font-size: 8px !important;
  color: var(--lighter-text);
  border-radius: 2px;
  background-color: var(--secondary-bg-body) !important;
}

[id="pun"] .bubble:after,
[id="pun"] .notify-bubble:after {
  display: none !important;
}

[id="pun"] #notify-link .unreads {
  top: -9px;
  right: -14px;
  height: 14px;
  min-width: 14px;
  font-weight: 400;
  font-size: 8px;
  border-radius: var(--main-border-radius);
  background-color: var(--secondary-bg-body);
}

#messages-list a>img.atr {
  width: 30px;
  height: 30px;
  border-radius: var(--main-border-radius) !important;
  background-size: cover !important;
}

/***************************************************************/

/* объявление */
[id="pun-announcement"] {
  margin: 1.8rem 0rem 1.5rem;
  padding: 1.2rem 1.2rem 1rem;
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
  background: var(--secondary-bg-body-light);
}

[id="pun-announcement"] h2 {
  display: inline-block;
  margin: 0rem auto 1rem calc(-4px - 1.2rem);
  padding: 0.4rem 1.4rem;
  text-transform: lowercase;
  font-size: 0.95em;
  font-weight: 600;
  color: var(--lighter-text);
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color);
  background: linear-gradient(90deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(100%, 90vw));
}

/***************************************************************/

/* приветствие */
[id="pun-status"] {
  margin: 1rem 0rem 1.2rem;
  padding: 1rem 1rem 0.8rem;
  overflow: auto;
}

[id="pun-status"] .container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4px 6px;
}

[id="pun-status"] .container span.item1 {
  order: -3;
}

[id="pun-status"] .container span.item2 {
  order: -2;
}

[id="pun-status"] .container span.item4 {
  order: -1;
}

[id="pun"] [id="pun-status"] span.item3 {
  margin: auto 0px auto auto;
}

[id="pun"] [id="pun-status"] .status-right {
  float: none;
  clear: both;
}

/********************************************************************/

/* хлебные крошки */
[id="pun-crumbs1"],
[id="pun-crumbs2"] {
  margin: 0.5rem 2rem;
  padding: 0.5rem 1rem;
}

p.crumbs em {
  font-weight: 600;
}

/* удаляем на главной */
[id="pun-index"] [id="pun-crumbs1"],
[id="pun-index"] [id="pun-crumbs2"] {
  display: none;
}

/********************************************************************/

/* Блок таблицы форумов */
[id="pun-main"] {
  padding: 0rem 0rem;
  margin: 1rem 0rem;
}

/* общая строка тем-автор */
.forum tr {
  display: grid;
  grid-template-columns: 1.7fr 1fr 0.4fr 1fr;
  grid-template-rows: auto;
  align-items: center;
  margin: 1rem 0rem;
}

.forum tr:last-of-type {
  margin-bottom: 0px;
}

.forum thead tr {
  margin: 0rem;
}

.forum tr:not(thead tr) {
  border-radius: var(--secondary-border-radius);
  background: linear-gradient(90deg, transparent 5%, var(--secondary-bg-body-light) 100%);
}

.forum tr .tc3 {
  text-align: center;
}

/* аватарка и последний пост */
.forum .tcr:not(thead .tcr) {
  font-size: 1.1rem;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  grid-template-areas:
    "avain avaina"
    "avain abyuser";
  align-items: center;
  gap: 2px 10px;
}

.forum .tcr:not(:has(> em.user-avatar)):not(thead .tcr) {
  grid-template-areas:
    "avaina avaina"
    "abyuser abyuser";
  gap: 2px 0px;
}

.forum .tcr:not(:has(> em.user-avatar)):not(thead .tcr) a {
  grid-column: 1 / -1;
}

/* автор темы */
.byuser-username {
  font-size: 1.1rem;
}

.tcl span.byuser:before {
  content: '-';
  padding: 0 0.4rem;
}

/********************************************************************/

/* ГЛАВНАЯ СТРАНИЦА */
/* заголовки на главной странице */
[id="pun-index"] [id="pun-main"] h2,
[id="pun-stats"] h2,
[id="post-form"] h2,
[id="similar-topics"] h2,
[id="pun-mod"] h2 {
  margin: 3.8rem 0rem 1rem;
  padding: 0.4rem min(3%, 2rem) 0.4rem;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: 600;
  font-size: clamp(1.2rem, (1vw + 0.2rem), 2rem);
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: 1fr;
  color: var(--links-hover-color);
}

[id="pun-category1"] h2:first-of-type,
[id="pun-index"] .info h2,
[id="similar-topics"] h2,
[id="pun-mod"] h2 {
  margin-top: 1.4rem;
}

[id="pun-index"] [id="pun-main"] h2:before,
[id="pun-index"] .category h2 .catleft,
[id="pun-mod"] h2 .catleft,
[id="pun-stats"] h2:before,
.info h2:before,
[id="post-form"] h2:before,
[id="similar-topics"] h2:before {
  content: '';
  display: block;
  margin: auto 0px;
  grid-column: 1 / -2;
  grid-row: 1 / -1;
  height: 1px;
  background-color: var(--links-hover-color);
}

[id="pun-index"] [id="pun-main"] h2 span,
[id="pun-index"] .category h2 span,
.info h2 span,
[id="pun-stats"] h2 span,
[id="post-form"] h2 span,
[id="similar-topics"] h2 span {
  display: block;
  margin: auto 0rem auto 1.4rem;
  grid-column: -2 / -1;
}

/* таблица форумов на главной */
[id="pun-index"] .category table {
  border-collapse: separate;
}

[id="pun-index"] .category thead,
[id="pun-viewforum"] .category thead {
  display: none;
}

/* расстояние между строками */
[id="pun-index"] .category tbody.hasicon {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: 26px 0px;
}

/* СТРОКА форум - последнее сообщение */
[id="pun-index"] .category tr,
[id="pun-index"] .category tr.isub,
[id="pun-viewforum"] .category tr.isub {
  position: relative;
  margin: 0rem;
  padding: 1.2rem 1.6rem 1rem;
  display: grid;
  grid-template-columns: 1.35fr 0.65fr auto;
  grid-template-rows: auto 16px 16px auto;
  grid-template-areas:
    "lone lfour ."
    "lone lfour ltwo"
    "lone lfour lthree"
    "lone lfour .";
  gap: 0px 16px;
  border-radius: var(--secondary-border-radius);
  background: linear-gradient(90deg, transparent 5%, var(--secondary-bg-body-light) 100%);
}

/* фикс первой и последней строк */
[id="pun-index"] .category tr:first-of-type {
  margin-top: 0px;
}

[id="pun-index"] .category tr:last-of-type {
  margin-bottom: 0px;
}

/* сообщений и тем */
[id="pun-index"] .tc2:before,
[id="pun-viewforum"] tr.isub td.tc2:before {
  margin-right: 4px;
  font-family: 'icon', 'mybb';
  content: "\e80f";
}

[id="pun-index"] .tc3:before,
[id="pun-viewforum"] tr.isub td.tc3:before {
  margin-right: 4px;
  font-family: 'icon', 'mybb';
  content: "\e811";
}

[id="pun-index"] .category .tc2,
[id="pun-index"] .category .tc3,
[id="pun-viewforum"] .category tr.isub .tc2,
[id="pun-viewforum"] .category tr.isub .tc3 {
  display: block;
  margin: 0px;
  padding: 0px;
  text-align: right;
}

/* блок форум */
.category .tcl .intd {
  position: relative;
  padding: 0px 0px 0px 0px;
  height: 100%;
  text-align: justify;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto;
  grid-template-areas:
    "iconka neiconka";
  gap: 0px 0px;
}

/* последнее сообщение */
[id="pun-index"] .category .tcr,
[id="pun-viewforum"] .category tr.isub td.tcr {
  align-self: center;
  text-align: left;
  margin: 0px;
  padding: 0px 0px 0px 0rem;
  height: 100%;
  position: relative;
  font-size: 1.1rem;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  grid-template-areas:
    "avaindex lastpost-span"
    "avaindex lastpost-a";
  gap: 4px 14px;
}

/* заголовок форума */
[id="pun-index"] h3,
[id="pun-viewforum"] tr.isub h3 {
  padding: 0.2rem 0rem 0.4rem;
  font-weight: 600;
  font-size: 1.5rem;
  letter-spacing: 0.04rem;
}

/* модераторы */
span.modlist {
  display: block;
  font-style: italic;
  font-size: 1.1rem;
  text-align: right;
  opacity: 0.8;
}

/* поле последнего сообщения */
a.lastpost-link {
  position: relative;
  font-size: 1.2rem;
}

/* автор последнего поста */
[id="pun-index"] span.lastpost,
[id="pun-viewforum"] tr.isub span.lastpost {
  display: block;
  align-self: end;
}

/********************************************************************/

/* подфорумы */
[id="pun-viewforum"] .category tr.isub {
  margin: 1rem 0rem;
}

[id="pun"] #pun-main #subforums,
.subforums {
  margin: 0rem 1rem 1rem;
  padding: 0.6rem 1.6rem 0.5rem;
  width: fit-content;
  font-size: 1.1rem;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color);
  background: var(--secondary-bg-pun);
}

[id="pun"] #pun-main #subforums {
  width: auto !important;
  font-size: 1.2rem;
}

[id="pun"] #pun-main #subforums a {
  font-weight: 600;
}

/* заголовок внутренний */
.punbb h1:not(.title-logo) {
  margin: 0.5rem 0rem 0.5rem;
  padding: 0.4rem min(3%, 2rem) 0.4rem;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: 1fr;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: 600;
  font-size: clamp(1.2rem, (1vw + 0.2rem), 1.6rem);
  color: var(--links-hover-color);
}

.punbb h1:not([id="pun-title"] h1):before {
  content: '';
  display: block;
  margin: auto 0px;
  grid-column: 1 / -2;
  grid-row: 1 / -1;
  height: 1px;
  background-color: var(--links-hover-color);
}

.punbb h1:not([id="pun-title"] h1) span {
  display: block;
  margin: auto 0rem auto 1.4rem;
  grid-column: -2 / -1;
}

/* модераторское меню */
div.modmenu {
  margin: 1rem 0px;
  padding: 0.8rem 1.4rem;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-bg-body-light);
  background: var(--secondary-bg-body-light);
}

.modmenu .container {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}

/* RSS Atom */
div.modmenu .container span {
  float: right;
  margin: auto 0px auto auto
}

/********************************************************************/

/* внутри форума/категории */
[id="pun-viewforum"] .forum tr {
  display: grid;
  grid-template-columns: 1.6fr 0.4fr 0.4fr 0.8fr;
  grid-template-rows: auto;
  align-items: center;
}

[id="pun-viewforum"] thead tr {
  padding: 0;
}

[id="pun-viewforum"] .forum .tc2 {
  text-align: center;
}

/* модерирование списка тем */
[id="pun-modviewforum"] .forum tr {
  grid-template-columns: 1.6fr 0.4fr 0.4fr 0.8fr 50px;
  grid-template-rows: auto;
  padding-left: 0px;
}

[id="pun-modviewforum"] .forum .tc2,
[id="pun-modviewforum"] .forum .tcmod {
  text-align: center;
}

p.selectfield,
p.checkfield {
  margin: 1rem 0rem;
}

/* надпись над блоком выбора */
p#sex.infofield,
label[for^="po"],
label[for="fld-lang"],
label[for^="fld"]:not(.adlabel) {
  margin-left: 1.2rem;
  font-size: 1.1rem;
  letter-spacing: 0.05rem;
  opacity: 0.88;
}


/* обнуляем для чекбоксов и некоторых радио */
p.checkfield label,
span.radio label,
dd div.checkfield label,
.checkfield label[for^="fld"] {
  margin-left: 0rem;
  font-style: normal;
  font-size: 1.1rem;
  opacity: 1;
}

.areafield~p.checkfield label[for^="fld"],
.areafield~p.inputfield label[for^="fld"] {
  font-size: 1.2rem;
  opacity: 1;
}

/* блок выбора */
select[name="move_to_forum"] {
  margin-top: 0.3rem;
}

/* кнопка */
p.formsubmit {
  margin: auto 1.1rem 1.8rem;
}

/* перемещение сообщений */
[id="pun-multimove"] .modmenu .container,
[id="pun-multidelete"] .modmenu .container {
  justify-content: flex-end;
}

[id="pun-multimove"] .modmenu strong,
[id="pun-multidelete"] .modmenu strong {
  order: -2;
  margin: auto 1rem auto 0rem;
}

[id="pun-multimove"] .modmenu input[type="submit"],
[id="pun-multidelete"] .modmenu input[type="submit"] {
  order: -1;
  margin: auto auto auto 0rem;
}

[id="pun-multimove"] .modmenu input[type="checkbox"],
[id="pun-multidelete"] .modmenu input[type="checkbox"] {
  margin-right: 6px;
}

[id="pun-multimove"] li.pl-select,
[id="pun-multidelete"] li.pl-select {
  padding: 3px 6px 3px 8px;
  border-bottom: 1px solid var(--main-border-color);
}

/* редактирование темы */
[id="topic-modmenu"].modmenu {
  padding: 0.5rem 1.4rem;
  border-width: 0px;
  background: transparent;
}

/* просматривают тему */
[id="topic-users-in"] .container {
  display: block;
}

div[id="topic-users-in"].modmenu .container span {
  float: none;
  clear: both;
}

[id="topic-users-in"] a:after {
  content: ',';
}

[id="topic-users-in"] a:last-child:after {
  display: none;
}

/********************************************************************/

/* ИКОНКИ */
.forum .tcl .intd,
.fs-box .tcl .intd {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto;
  align-items: center;
}

div.icon {
  display: block;
  margin: auto 1.4rem auto 0px;
  width: 36px;
  height: 12px;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--secondary-border-color);
  background-color: var(--main-bg-body-light);
}

.inew div.icon {
  border: 1px solid var(--links-color);
  background-color: var(--links-color);
}

.iclosed div.icon {
  border: 1px solid var(--main-bg-body);
  background-color: var(--main-bg-body);
}

.isticky div.icon {
  border: 1px solid var(--links-hover-color);
  background-color: var(--links-hover-color);
}

/* иконки на главной */
[id="pun-index"] div.icon,
[id="pun-viewforum"] .isub div.icon {
  margin: 0px 1.6rem 0px 0px;
  width: 2px;
  height: auto;
  border: 0px solid transparent;
  background: var(--main-bg-body-light);
}

[id="pun-index"] div.icon.inew,
[id="pun-viewforum"] .isub div.icon.inew {
  background: var(--links-hover-color);
}

/* пометки о темах */
span.stickytext,
span.closedatafield,
span.polltext {
  display: inline-block;
  margin-right: 1rem;
  padding: 0.1rem 0.5rem 0.2rem 0.9rem;
  line-height: 1.2;
  letter-spacing: 0.06rem;
  font-size: 1rem;
  text-transform: lowercase;
  text-align: center;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-bg-body-light);
  background: var(--secondary-bg-body-light);
}

/* количество непрочитанных тем */
[id="pun"] .icon[data-new-topics]:before,
[id="pun"] .subforums span[data-new-topics]:before {
  left: -6px;
  transform: translate(-100%, 0px);
  margin: 0px;
  height: 12px;
  line-height: 12px;
  font-size: 8px;
  font-weight: 600;
  border-radius: 4px;
  background: var(--links-hover-color);
}

/********************************************************************/

/* ЮЗЕР-АВАТАР */
[id="pun"] .punbb .user-avatar {
  float: left;
  position: relative;
  width: auto !important;
  height: auto !important;
  margin: auto auto auto 0px !important;
  overflow: visible;
  border-radius: var(--main-border-radius);
}

[id="pun"] .punbb .user-avatar:hover {
  border-radius: var(--secondary-border-radius);
}

[id="pun"] .punbb .user-avatar a {
  padding: 0;
  background: transparent;
}

[id="pun"] .punbb .user-avatar span.avatar-image {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  float: left;
  height: 38px !important;
  width: 32px !important;
  border-radius: var(--main-border-radius);
  opacity: 0.85;
  filter: grayscale(0.25);
  -moz-transition: 0.12s linear;
  transition: 0.12s linear;
}

[id="pun"] .punbb .user-avatar span.avatar-image:hover {
  border-radius: var(--secondary-border-radius);
  opacity: 1;
  filter: grayscale(0);
}

/* аватар на главной */
[id="pun"] [id="pun-index"].punbb .user-avatar {
  float: none !important;
  clear: both !important;
  margin: auto auto !important;
  height: auto !important;
  width: auto !important;
}

[id="pun"] [id="pun-index"].punbb .user-avatar .avatar-image {
  position: relative;
  margin: 0px auto auto 0px;
  height: 54px !important;
  width: 38px !important;
  border-radius: var(--main-border-radius);
}

[id="pun"] [id="pun-index"].punbb .category .tcr .user-avatar:hover .avatar-image {
  opacity: 1;
  border-radius: var(--secondary-border-radius);
}

/* нет аватара */
.user-avatar.no-avatar span.avatar-image {
  background-image: none !important;
  background-color: var(--secondary-bg-body);
}

/* индикатор онлайн */
.punbb .user-avatar .isonline {
  display: block;
  position: absolute;
  z-index: 4 !important;
  width: 9px !important;
  height: 9px !important;
  right: -3px !important;
  top: -3px !important;
  bottom: auto;
  border: 1px solid var(--links-color);
  border-radius: 50% !important;
  background-color: var(--links-color) !important;
  animation: blinkColor 3s linear infinite !important;
}

[id="pun-index"] .user-avatar .isonline {
  top: -4px !important;
  right: -4px !important;
}

/* убираем некоторые переносы строк */
[id="pun-index"] h3+br,
[id="pun-index"] .category .tcr em+a+br,
[id="pun-viewforum"] h3+br,
[id="pun-viewforum"] .category .tcr em+a+br,
.lastpost-link+br,
a.lastpost-link+br {
  display: none;
}

/********************************************************************/

/* СТАТИСТИКА */
[id="pun-stats"] li[id="onlinelist"] {
  grid-column: 1 / -1;
  min-width: 0px;
  max-height: 180px;
  overflow: auto;
  font-size: 1.1rem;
}

[id="pun-stats"] {
  margin: 0.5rem 0rem 1rem;
}

[id="pun-stats"] ul.container {
  margin: 0rem min(3%, 2rem);
  display: grid;
  grid-template-columns: repeat(3, minmax(0px, auto)) 1fr;
  grid-template-rows: repeat(auto-fill, minmax(0px, auto));
  grid-template-areas:
    "ntemy nsoob nrega nposl";
  gap: 14px 20px;
}

/* выделяем цифры статистики */
[id="pun-stats"] li strong,
li[id="onlinelist"] strong {
  font-weight: 600;
}

/* блоки статистики */
[id="pun-stats"] li.item1,
[id="pun-stats"] li.item2,
[id="pun-stats"] li.item3,
[id="pun-stats"] li.item4 {
  padding: 0px 0px;
  text-align: left;
}

[id="pun-stats"] li.item1 span,
[id="pun-stats"] li.item2 span,
[id="pun-stats"] li.item3 span,
[id="pun-stats"] li.item4 span {
  display: inline-block;
  padding-right: 4px;
}

/* активны */
[id="pun-stats"] li.item5.onlinelist {
  text-align: left;
}

/* выделить админсостав в статистике */
[id="pun-stats"] a.group1,
[id="pun-stats"] a.group2 {
  font-weight: 600;
}

/********************************************************************/

/* сервисный копирайт */
[id="pun-about"] {
  margin: 0.6rem 0rem;
  padding: 1rem 1.2rem;
  text-align: right;
  font-size: 1.1rem;
  color: var(--lighter-text);
  border-radius: var(--secondary-border-radius);
  background: linear-gradient(-2deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(100%, 90vw));
}

[id="pun-about"] a {
  color: var(--links-color-light);
}

[id="pun-about"] a:hover {
  color: var(--links-hover-color-light);
}

/********************************************************************/

/* расширенная статистика */
[id="pun"] [id="pun-statistic"] h1 {
  margin: 1.4rem 0rem 0.5rem;
}

[id="pun-statistic"] thead {
  text-align: left;
}

[id="pun-statistic"] tr {
  border-bottom: 1px solid var(--main-border-color);
}

[id="pun-statistic"] tr:last-of-type {
  border-bottom-width: 0px;
}

/********************************************************************/

/* УЧАСТНИКИ */
/* отступ блока фильтров */
form[id="userlist"] {
  margin: 1rem 1.2rem;
}

/* поля в строчку в Поиске Участников и Поиске Тем */
form[id="userlist"] p.inputfield,
form[id="userlist"] p.selectfield,
form[id="punbbsearch"] p.inputfield,
form[id="punbbsearch"] p.selectfield {
  display: inline-block;
  margin: 0.5rem 0.2rem 1rem;
}

/* верхняя граница для блоков-выборов */
form[id="userlist"] fieldset,
form[id="punbbsearch"] fieldset,
form[id="messages"][method="post"] fieldset {
  margin-bottom: 1.2rem;
}

form[id="userlist"] fieldset,
form[id="punbbsearch"] fieldset {
  padding: 0rem 1.2rem 1rem;
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
  background-color: var(--secondary-bg-body-light);
}

/* общее деление строки с участниками */
.usertable tr {
  display: grid;
  grid-template-columns: 1fr 1fr 0.4fr 0.5fr 0.6fr 0.5fr;
  grid-template-rows: auto;
  align-items: center;
  justify-items: center;
}

.online-list tr {
  display: grid;
  grid-template-columns: 0.9fr 1.3fr 0.8fr;
  grid-template-rows: auto;
  align-items: center;
  justify-items: center;
}

.online-list thead tr th.tcl.action {
  display: none;
}

/* фиксим строку с аватаром и никнеймом */
.usertable .tcl,
.usertable .tc2 {
  justify-self: start;
  text-align: left;
  line-height: 110%;
}

.usertable .tcl {
  padding-left: 1rem !important;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto;
  grid-template-areas:
    "avain nikname";
  gap: 0px 12px;
  font-weight: 400;
}

/* пользователи онлайн */
.online-list td {
  padding: 1em 0.4em !important;
}

.online-list td.tcl {
  justify-self: left;
}

.online-list th.tcl {
  width: 100% !important;
}

[id="pun-online"] .tcl.action {
  width: 100% !important;
}

/********************************************************************/

/* ПРОФИЛЬ */
/* страница предпросмотра */
[id="viewprofile-next"] {
  margin: 1.2rem min(3%, 2rem) 0rem;
}

[id="viewprofile-next"] [id="profilenav"] {
  display: none;
}

[id="viewprofile-next"] [id="viewprofile"] .container {
  margin: 0px 0rem auto;
}

[id="viewprofile-next"] [id="viewprofile"] div.container table {
  margin: 0px 0px;
  width: 100%;
}

[id="viewprofile"] div.container table {
  width: auto;
  border-spacing: 0px 0px;
  border-collapse: separate;
}

/* делим блок профиля на части */
[id="viewprofile-next"] [id="viewprofile"] table tr:not([id="profile-signature"] table tr) {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto;
  align-items: start;
  gap: 10px 20px;
}

.punbb td#profile-left {
  grid-column: 1 / 2;
  position: relative;
  padding: 16px 14px 12px !important;
  width: auto;
  min-width: 200px;
  max-width: 330px;
  text-align: center;
  font-size: 1.1rem;
  color: var(--primary-text);
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
  border-radius: var(--secondary-border-radius);
  background-color: var(--secondary-bg-body-light);
}

[id="profile-left"] li {
  margin: auto 1.2rem 0.8rem !important;
}

.punbb #profile-left strong {
  display: block;
  font-weight: 400 !important;
}

.punbb #profile-left #profile-name strong {
  font-weight: 600 !important;
  font-size: 1.4rem;
  color: var(--links-color);
}

[id="profile-left"] [id="pa-edit"] {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}

/* блоки с описанием */
.punbb td[id="profile-right"] {
  grid-column: -2 / -1;
  position: relative;
  width: auto;
}

[id="profile-right"] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(45%, 1fr));
  grid-template-rows: auto;
  gap: 16px 14px;
  overflow: hidden;
  width: 100% !important;
  font-size: 1.1rem;
}

[id="profile-right"] li {
  align-content: center;
  padding: 8px 10px !important;
  text-align: center;
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
  border-radius: var(--secondary-border-radius);
  background-color: var(--secondary-bg-body-light);
}

[id="profile-right"] li span {
  font-size: 1.2rem;
  font-weight: 600;
}

.punbb #profile-right li strong {
  padding-left: 4px;
  font-weight: 400;
}

#profile-right li[id="pa-posts"] {
  order: -1;
  grid-column: 1 / -1;
}


/* отделяем подпись */
[id="viewprofile"] #profile-signature {
  padding: 1.8rem 1.4rem 1rem;
}

.punbb #profile-signature ul {
  border-color: var(--secondary-border-color);
  border-style: solid;
  border-width: 1px 0px 0px 0px !important;
}

/* профиль внутри */
[id="profile"]>.container {
  margin-left: calc(var(--profile-nav) + 1.4rem);
}

[id="profile"].formal {
  margin: 0.4rem 0.8rem 0.4rem min(3%, 2rem);
}

/* меню профиля */
[id="profilenav"] {
  margin: 0px 0px 1rem calc(-1*var(--profile-nav) - 1.4rem);
  padding: 1.2rem 1rem;
  width: var(--profile-nav);
  float: left;
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--secondary-border-color);
  background: var(--secondary-bg-body-light);
}

[id="profilenav"] h2 {
  margin: 1.6rem 0rem 0.4rem;
  padding: 0rem;
  text-align: center;
  text-transform: uppercase;
  line-height: 1.2;
  letter-spacing: 0.18rem;
  font-weight: 600;
  font-size: 1.4rem;
  color: var(--secondary-bg-body);
}

[id="profilenav"] h2:first-of-type {
  margin-top: 0.4rem;
}

[id="profilenav"] ul {
  text-align: center;
  font-weight: 600;
}

[id="profilenav"] ul li {
  padding: 4px;
}

/* блоки внутри профиля */
[id="profile"] .fs-box {
  overflow: auto;
}

[id="profile"] .fs-box p {
  margin: 0.6rem 0.4rem;
}

[id="profile"] .fs-box p.formsubmit {
  margin-top: 1.2rem;
}

[id="profile"] fieldset {
  margin: 0.2rem 0rem 1rem;
  padding: 0.2rem 0rem 1rem;
}

[id="profile"] legend {
  margin-left: 1rem;
}

[id="profile"] label[for^="fld"] {
  font-size: 1.2rem;
}

.fs-box.inline p.inputfield {
  display: inline-block;
}

/* загрузка аватара */
.punbb img.avatardemo {
  float: right;
  margin: 0 0 0.8rem 1.6rem;
  max-width: 200px;
}

/* предпросмотр подписи */
dl.parsedsig {
  margin-top: 1.2rem;
  padding: 1rem 1rem 1.2rem;
  border-top: 1px solid var(--secondary-border-color);
}

/* загрузка файлов */
[id="profile"] p.submitend {
  padding: 1.4rem 0.8rem;
}

[id="filetable"] .ft-version,
[id="filetable"] .tc3 {
  text-align: center;
}

[id="filetable"] tr {
  border-bottom: 1px solid var(--main-border-color);
}

span.files-page-select {
  padding-top: 1.2rem;
}

/* выдаем права */
[id="setmods"] dl {
  padding: 0.8rem 0;
}

[id="setmods"] dt {
  font-weight: 600;
  margin: 0.4rem auto 0.4rem 1.6rem;
}

[id="profile"] [id="setmods"] dd {
  margin-left: 2rem;
}

[id="setmods"] dd div.checkfield {
  padding: 3px 2px;
}

div.checkfield .sub {
  margin-left: 1.4rem;
}

/* RUSFF награды */
[id="profileContainer"] .fs-box tr {
  display: table-row;
}

[id="awards-content"] tr {
  width: 100%;
  margin: 0px;
  padding: 0px;
}

[id="awards-content"] td.tc2,
[id="awards-content"] td.tcl {
  width: 20% !important;
  text-align: center;
}

.punbb .profile-awards-container div.fs-box table td,
.punbb [id="awards-content"] td {
  vertical-align: middle;
  border-bottom: 1px solid var(--main-border-color);
}

.profile-awards-container fieldset:nth-child(2) {
  padding: 1rem;
  border-radius: var(--secondary-border-radius);
  background-color: var(--secondary-bg-body-light);
}

textarea[id="award-description"] {
  border: 1px solid var(--secondary-border-color);
}

/* страница наград */
[id="pun-mod"] h2 {
  grid-template-columns: 1fr auto auto;
  gap: 0px 12px;
}

[id="pun-mod"] h2 .catleft {
  grid-column: 1 / 2;
}

[id="pun-mod"] h2 span {
  grid-column: 2 / -2;
}

[id="pun-mod"] h2 .fr {
  grid-column: -2 / -1;
}

/********************************************************************/

/* ЛИЧНЫЕ СООБЩЕНИЯ */
.usertable td,
.fs-box .hasicon td {
  width: 100% !important;
  text-align: center;
}

#messages .fs-box tr {
  display: grid;
  grid-template-columns: 1.7fr 1.2fr 0.8fr 0.3fr;
  grid-template-rows: auto;
  align-items: center;
  margin: 1rem 0rem;
  border-radius: var(--secondary-border-radius);
  background: linear-gradient(90deg, transparent 5%, var(--secondary-bg-body-light) 100%);
}

#messages .fs-box tr:first-of-type {
  margin-top: 0.2rem;
}

#messages .fs-box thead tr {
  margin: 0rem;
  background-image: none;
}

/* фикс thead */
#messages th.pmtcl1,
#messages th.pmtc22,
#messages th.pmtc33,
#messages th.pmtc24 {
  width: 100% !important;
  text-align: left;
}

#messages th.pmtc33,
#messages th.pmtc24,
#messages .pmtc33,
#messages .pmtc24 {
  text-align: center;
}

#messages .pmtcl1 {
  text-align: left;
}

#messages .tc2.pmtc22 {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}

[id="pun"] .tc2.pmtc22 .user-avatar {
  margin: 0px 12px 0px 0px !important;
}

/* фикс для таблиц в письме */
.fs-box .post-content tr {
  display: table-row;
}

[id="pun-messages"] .fs-box h3 {
  margin-top: 0rem;
}

/* громкость уведомлений */
[id="notify-settings"] {
  margin: auto 0rem 1.4rem calc(-1*var(--profile-nav) - 1.4rem) !important;
  padding: 0.8rem 1.6rem;
  overflow: auto;
  font-size: 1.1rem;
  line-height: 1.1;
  border: 1px solid var(--main-border-color);
  border-radius: var(--main-border-radius);
  background-color: var(--secondary-bg-body-light);
}

[id="volSlider"] {
  position: relative;
  z-index: 3;
  float: right;
  margin: 3px 5px 3px !important;
  width: 120px !important;
  height: 2px !important;
  border-radius: var(--main-border-radius) !important;
  border: 0px solid transparent !important;
  background-color: var(--secondary-border-color) !important;
  box-shadow: none !important;
}

[id="volSlider"] .before {
  position: absolute;
  margin-top: 0px !important;
  height: 2px !important;
  border: solid 0px transparent !important;
  border-radius: 0px !important;
  background-color: var(--links-color) !important;
}

[id="volSlider"] .thumb {
  position: relative;
  top: -4px !important;
  cursor: pointer;
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  border: 0px solid transparent !important;
  background-color: var(--links-color) !important;
  box-shadow: none !important;
}

/********************************************************************/

/* ПАГИНАЦИЯ */
.linkst,
.linksb {
  margin: 1rem 0px;
  padding: 0.5rem 0;
  font-size: 1.1rem;
}

.pagelink strong,
.pagelink a {
  margin: auto;
  padding: 2px 3px;
  font-size: 1.2rem;
}

.linkst {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto;
  gap: 0px 12px;
}

.linkst .pagelink {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  min-width: 0px;
}

.linkst .postlink {
  grid-column: -2 / -1;
  grid-row: 1 / 2;
  justify-self: end;
  min-width: 0px;
}

.linksb {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  gap: 0px 12px;
}

.linksb .pagelink {
  grid-column: 1 / -1;
  grid-row: 1 / 2;
  min-width: 0px;
}

.linksb .subscribelink {
  grid-column: -2 / -1;
  grid-row: 1 / -2;
  justify-self: end;
  float: right;
}

.linksb .postlink {
  grid-column: -2 / -1;
  grid-row: -2 / -1;
  justify-self: end;
  min-width: 0px;
}

/* поиск по теме */
[id="s-block"] {
  display: flex;
  justify-content: flex-end;
  grid-column: -1 / -2;
  margin: 1.8rem 0rem auto auto;
}

[id="s-block"] [id="sTheme"] {
  margin: 0rem;
  height: auto;
  min-height: 25px;
  border-radius: var(--main-border-radius) 0rem 0rem var(--main-border-radius);
}

[id="s-block"] [id="isk"] {
  margin: 0rem;
  width: auto;
  height: auto;
  min-height: 25px;
}

[id="s-block"] [id="isk"]:before {
  margin: auto;
  padding: 2px 4px;
  width: auto;
  height: auto;
  line-height: 1;
  font-size: 14px;
}

/********************************************************************/

/* ТЕЛО ПОСТА */
/* заголовок, дата поста */
.post h3 {
  margin: 1.8rem 0rem 1.6rem;
  padding: 0.8rem 1.2rem 0.6rem;
  text-align: center;
  font-size: 1.1rem;
  background: var(--secondary-bg-body-light);
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
}

h3 span {
  display: block;
  position: relative;
  margin: 0px 0px;
  padding: 0px;
}

/* кнопка поделиться */
.topic h3 a.sharelink {
  float: left;
  margin-right: 1rem;
  margin-left: 0rem;
  font-size: 0rem;
}

.topic h3 a.sharelink:before {
  content: '\e823';
  font-size: 1.1rem;
  font-family: 'icon', 'mybb';
}

/*  */
.post-share-tip {
  background: rgba(0, 0, 0, 0.8);
  margin-left: 100%;
}

/* номер поста */
h3 span strong:first-of-type:before {
  content: '#';
}

h3 span strong:first-of-type {
  float: right;
}

/* делим пост на части */
.post h3+.container {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "post-author post-body"
    ". post-body"
    "post-links post-links";
  gap: 10px 16px;
  overflow-wrap: break-word;
}

/* блок автора поста */
.post-author {
  position: relative;
  display: block;
  margin: 4px auto 16px 0px;
  padding: 2rem 1.4rem 1.6rem;
  width: var(--profile-width);
  align-self: start;
  text-align: center;
  font-size: 1.1rem;
  border-radius: var(--secondary-border-radius);
  background: linear-gradient(100deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(100%, 90vw));
}

.post-author ul {
  padding: 14px 8px 12px;
  border-radius: var(--main-border-radius);
  background-color: var(--secondary-bg-body-light);
}

/* индикатор онлайн */
.post-author.online:before {
  content: '\e807';
  display: block;
  padding: 4px;
  border-radius: 50%;
  font-family: 'icon', 'mybb';
  font-size: 10px;
  line-height: 1;
  color: var(--links-hover-color);
  background: var(--secondary-bg-body-light);
  position: absolute;
  top: calc(2rem - 5px);
  left: calc(1.4rem - 5px);
}

/* расстояние между блоками по умолчанию */
.post-author li {
  margin: 0.5rem auto;
}

.post-author li:first-child {
  margin-top: 0px;
}

.post-author li:last-child {
  margin-bottom: 0px;
}

/* иконка поиска всех сообщений */
.pa-author i[id="tuser"] {
  display: block;
  position: absolute;
  top: calc(2rem - 5px);
  right: calc(1.4rem - 5px);
  margin-left: auto !important;
  padding: 4px !important;
  width: auto !important;
  height: auto !important;
  line-height: 1;
  text-align: center;
  font-family: 'icon', 'mybb';
  font-size: 10px;
  font-weight: 600;
  color: var(--links-hover-color);
  text-shadow: 0 0 0 var(--links-hover-color);
  border-radius: 50%;
  background: var(--secondary-bg-body-light);
  opacity: 1 !important;
}

i[id="tuser"]:hover {
  color: var(--links-color);
  text-shadow: 0 0 0 var(--links-color);
  opacity: 1 !important;
}

.pa-author i[class^="icons-"]:before,
.pa-author i[class*=" icons-"]:before,
.pa-author .i[class*=" icons-"]:before,
.pa-author .i[class^="icons-"] {
  margin-right: 0rem;
  margin-left: 0rem;
}

/* флаг */
[id="pun"] .punbb .pa-author .flag-i {
  position: absolute;
  top: 4px;
  left: 50%;
  transform: translateX(-50%);
  margin-right: 0rem;
  height: 12px;
}

/* никнейм */
li.pa-author {
  font-family: Trebuchet Ms, Tahoma, Arial, sans-serif;
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 1.2;
}

p.pa-author {
  font-family: Trebuchet Ms, Tahoma, Arial, sans-serif;
  font-weight: 600;
  font-size: 1.2rem;
  line-height: 1.2;
  color: var(--lighter-text);
}

/* аватар */
li.pa-avatar img {
  max-width: 100%;
  width: auto;
  max-height: 400px;
  height: auto;
  border-radius: var(--secondary-border-radius);
}

/* репутация */
.pa-respect a img {
  display: none;
}

li.pa-respect>span:not(.fld-name) {
  display: inline-block;
}

/* устанавливаем иконки вместо картинок */
.pa-respect>a:before {
  content: "\e806"; /* минус */
  font-family: 'icon', 'mybb';
  font-weight: 400;
  font-size: 8px;
  line-height: 1;
  color: var(--links-color);
}

.pa-respect>a:first-of-type:before {
  content: "\e818"; /* сердечко */
  padding: 0px 2px;
}

.pa-respect>a:hover:before {
  color: var(--links-hover-color);
}

/* текстовый блок */
.post-body {
  line-height: 1.5;
  position: relative;
  margin: 0px 0px;
  padding: 0;
}

.post-box {
  position: relative;
  padding: 0px 10px;
  text-align: justify;
}

.punbb .post-content {
  width: 100%;
  padding: 0;
  margin: 0;
}

/* предпросмотр сообщения, удаление сообщения */
[id="post-preview"] .post-box,
[id="pun-delete"] .post-box {
  max-width: 840px;
  margin: 1.2rem auto 1.2rem;
  line-height: 1.5;
}

/* RUSFF версии сообщений */
.fs-box.hashelp p.areafield.required {
  margin: 0rem 1rem 1rem;
}

.fs-box.hashelp div.history_posts_list {
  margin: 0rem 1rem 1.4rem;
}

[id="history_selected_diff"] {
  margin: 1.2rem;
  padding: 1.2rem 1.4rem;
  border-radius: var(--secondary-border-radius);
  border: 1px solid var(--main-border-color);
}

/********************************************************************/

/* отступы для абзацев и табличек */
.post-content p,
[id="post-preview"] .post-content p {
  padding: 0;
  margin: auto auto 0.8rem auto;
}

.post-content p:last-of-type,
[id="post-preview"] .post-content p:last-of-type {
  padding: 0;
  margin: auto auto;
}

.post-content p:has(+ table),
[id="post-preview"] .post-content p:has(+ table),
.post-content p:has(+ ul),
[id="post-preview"] .post-content p:has(+ ul) {
  margin-bottom: 0.3rem;
}

.post-content p~table {
  margin: 0.8rem 0rem 0.8rem 0rem;
}

.punbb .post-content ul {
  padding: 0.6rem 0 1rem 2rem;
}

.punbb .post-content tbody {
  vertical-align: middle;
}

/* видимые границы для таблиц в постах */
.post-box .post-content td {
  display: table-cell;
  padding: 0.5rem 0.8rem !important;
  height: auto;
  overflow: hidden;
  border: 1px solid var(--main-border-color);
}

/* отредактировано */
.lastedit {
  font-size: 1rem;
  font-style: italic;
  text-align: right;
  opacity: 0.8;
}

/* цитата, код, скрытый текст */
[id="pun-help"] blockquote,
[id="pun-help"] div.blockcode,
.post-content .quote-box,
.post-content .code-box,
.post-content .hide-box {
  display: block;
  position: relative;
  padding: 1.4rem 1.6rem;
  margin: 1.4rem 1rem 1.6rem;
  line-height: 1.5;
  border: 1px solid var(--main-border-color);
  border-radius: var(--secondary-border-radius);
  background-color: var(--secondary-bg-body-light);
}

.post-content .quote-box:has(+ .post-sig),
.post-content .code-box:has(+ .post-sig),
.post-content .hide-box:has(+ .post-sig) {
  margin: 1.4rem 1rem 0.4rem;
}

.post-content .quote-box {
  background-color: var(--secondary-bg-body-light);
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-auto-flow: row;
}

.quote-box cite,
.quote-box blockquote {
  min-width: 0px;
}

/* убираем лишний отступ в цитате */
.quote-box p:last-of-type,
blockquote p:last-of-type,
.post-content p:last-of-type {
  padding-bottom: 0;
}

/* цитата в цитате */
.quote-box .quote-box,
.quote-box .code-box,
.quote-box .hide-box,
.hide-box .quote-box {
  border: 1px solid var(--secondary-border-color);
}

/* автор цитаты */
.quote-box cite,
.code-box .legend,
.hide-box cite,
[id="pun-help"] blockquote strong,
[id="pun-help"] div.blockcode strong {
  display: inline-block;
  position: relative;
  margin: 0rem auto 1rem calc(-4px - 1.6rem);
  padding: 0.4rem 1.6rem 0.4rem;
  width: auto;
  min-width: 40%;
  text-align: left;
  font-weight: 600;
  font-size: 1.1rem;
  line-height: 1.4;
  color: var(--lighter-text);
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color);
  background: linear-gradient(90deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(100%, 90vw));
}

pre {
  font-family: monospace;
  font-size: 1.1rem;
}

/* максимальный скролл кода */
[id="pun"] .post-content .scrollbox,
[id="pun-help"] .scrollbox {
  overflow: auto;
  height: auto;
  max-height: 16rem;
  width: 100%;
  padding-bottom: 0.8rem;
}

/* спойлер */
.spoiler-box>div[onclick]>p {
  margin: 0 !important;
  padding: 0 !important;
}

.post-content .quote-box.spoiler-box {
  padding: 0px;
}

[id="pun"] .post-content .spoiler-box>div {
  display: block;
  position: relative;
  padding: 1.4rem 1.8rem 1.4rem 42px !important;
  min-height: 20px;
  font-size: inherit;
  background-image: none;
}

[id="pun"] .post-content .spoiler-box>div.visible {
  background-image: none;
}

[id="pun"] .post-content .spoiler-box>blockquote {
  padding: 0.2rem 1.8rem 1.4rem;
}

/* плюсик на спойлере */
.post-content .spoiler-box>div:before {
  content: '\e804';
  font-family: 'icon', 'mybb';
  font-size: 12px;
  position: absolute;
  top: 50%;
  left: 16px;
  display: inline-block;
  margin: 0px 8px auto 0px;
  height: 20px;
  line-height: 20px;
  transform: translateY(-50%) rotate(0deg);
  transition: 0.5s ease-in-out;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}

/* минус на спойлере */
.post-content .spoiler-box>div.visible:before {
  content: '\e806';
  height: 20px;
  line-height: 20px;
  transform: translateY(-50%) rotate(-180deg);
}

/* рейтинг поста */
div.post-rating {
  padding-top: 0.8rem;
}

[id="pun"] div.post-rating p {
  position: relative;
  padding: 4px 10px !important;
  max-height: 24px;
  font-size: 1.1rem;
  line-height: 1;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color) !important;
}

div.post-rating p a {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}

/* сердечко у рейтинга поста */
div.post-rating p a:before {
  content: '\e818';
  font-family: 'icon', 'mybb';
  font-size: 1rem;
  margin-right: 0.6rem;
  transform: scale(1);
  transition: 0.25s ease-in-out;
}

div.post-rating p:hover a:before {
  transform: scale(1.2);
}

/* плюс-минус */
[id="pun"] div.post-vote p {
  display: flex;
  align-items: center;
  padding: 4px 12px !important;
  max-height: 24px;
  line-height: 1;
  font-size: 1.1rem;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color) !important;
}

/* подпись */
.post-sig {
  padding: 0.4rem 0px 1.4rem 0px;
}

.post-sig dt {
  position: relative;
  display: block;
  height: 1px;
  width: auto;
  max-width: 80%;
  margin: 14px auto 12px;
  background-color: var(--secondary-border-color);
}

.post-sig dd {
  font-size: 1.2rem;
  line-height: 1.5;
}

/* ссылки редактирования поста */
.post-links {
  padding: 0.8rem 1.2rem 0.6rem;
  font-size: 1.2rem;
  text-transform: lowercase;
  text-align: right;
}

.post-links ul li {
  display: inline-block;
}

.post-links ul li a {
  margin: auto 4px;
  padding: 2px 4px;
  line-height: 1.1;
}

/* сдвигаем ссылки профиля влево */
.post-links li.pl-email,
.post-links li.pl-website {
  float: left;
}

/********************************************************************/

/* кнопки создания и ответа */
.postlink {
  text-align: right;
}

div.postlink.long {
  width: auto;
}

.postlink span,
.subscribelink a,
[id="pun-searchposts"] .post-links li {
  margin: 0.5rem;
  padding: 0.4rem 0.8rem;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-bg-body-light);
  background: var(--secondary-bg-body-light);
}

.postlink.long .new-topic {
  padding-right: 0.8rem;
}

/* поле ввода заголовка */
p.inputfield {
  margin: 1rem;
}

[id="form-area"].container {
  margin: 1.2rem 1rem 1rem;
}

/********************************************************************/

/* поле ответа */
[id="post-form"] h2 {
  margin: 1rem 0rem 0.2rem;
}

/* оболочка поля ответа */
textarea {
  margin: 0.6rem 0rem 0.2rem;
  padding: 1.4rem;
  max-width: 100%;
  line-height: 1.5;
  text-shadow: none;
  outline: none;
  border: 1px solid var(--main-border-color);
  background-color: var(--secondary-bg-body-light);
}

/* чтобы не плясал текст */
textarea[id="main-reply"] {
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

/* расширитель */
div.grippie {
  filter: contrast(0.3);
}

/********************************************************************/

/* BB-кнопки */
[id="form-buttons"] {
  margin: 0.4rem 1rem;
  padding: 0.4rem 0.8rem;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color);
  background: var(--secondary-bg-body-light);
}

.punbb .hashelp {
  position: relative;
}

[id="post"] .container[id$="-area"],
[id="tags"] .container {
  display: block;
  overflow: auto;
  max-height: 276px;
  text-shadow: none;
  border: 1px solid var(--secondary-border-color);
  border-radius: var(--main-border-radius);
  background-color: var(--main-bg-pun);
}

[id="form-buttons"]+[id="tags"] {
  position: relative;
}

[id="pun"] [id="tags"] .container {
  z-index: 2;
  position: absolute;
  right: 0px;
  top: 8px !important;
  z-index: 2;
  padding: 12px 8px 10px;
  text-align: center;
}

[id="pun"] [id="tags"] [id="font-area"].container,
[id="pun"] [id="tags"] [id="size-area"].container,
[id="pun"] [id="tags"] [id="addition-area"].container {
  padding: 12px 0px;
}

[id="tags"] tr {
  display: table-row;
}

[id="pun-messages"] [id="post-form"] div.container {
  padding-left: 12px !important;
}

[id="font-area"],
[id="size-area"] {
  right: unset !important;
}

[id="font-area"] div,
[id="size-area"] div,
[id="addition-area"] div {
  height: auto !important;
  padding: 4px 8px;
}

[id="font-area"] div:hover,
[id="size-area"] div:hover,
[id="addition-area"] div:hover {
  background-color: var(--main-bg-pun);
  filter: brightness(1.02);
}

[id="image-area-tcon-computer"] {
  margin-bottom: 0.6em;
}

[id="image-area"] {
  max-width: 430px;
}

[id="pun"] #video-area-tinp,
[id="pun"] #image-area-tinp {
  border: 1px solid var(--secondary-border-color);
}

[id="pun"] #keyboard-span input {
  margin: 2px;
  padding: 2px 8px !important;
  font-weight: 400 !important;
  font-size: 12px;
  color: inherit;
  text-shadow: none;
  border: 1px solid var(--main-bg-body-light);
  border-radius: var(--main-border-radius);
  background-image: none;
  background-color: var(--secondary-bg-body-light);
}

[id="pun"] #keyboard-span input:hover {
  border: 1px solid var(--main-bg-body-light) !important;
  background-color: var(--main-bg-pun) !important;
}

/* BB-теги иконками */
[id="form-buttons"] tr {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(24px, 1fr));
  grid-template-rows: auto;
  gap: 6px 6px;
  text-align: center;
}

[id="form-buttons"] td {
  position: relative;
  padding: 0 !important;
  height: 24px;
  line-height: 0;
  cursor: pointer;
  font-family: 'icon', 'mybb';
  font-size: 16px;
  font-weight: 400;
  color: var(--primary-text);
  background-image: none !important;
  opacity: 0.9;
}

[id="form-buttons"] td img {
  opacity: 0;
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
}

[id="form-buttons"] td:hover {
  opacity: 1;
  color: var(--links-color);
}

[id="form-buttons"] td:before {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

[id="button-font"]:before {
  content: "\e800";
}

[id="button-size"]:before {
  content: "\e801";
}

[id="button-bold"]:before {
  content: "\e81e";
}

[id="button-italic"]:before {
  content: "\e81d";
}

[id="button-underline"]:before {
  content: "\f0cd";
}

[id="button-strike"]:before {
  content: "\f0cc";
}

[id="button-left"]:before {
  content: "\e81a";
}

[id="button-center"]:before {
  content: "\e81b";
}

[id="button-right"]:before {
  content: "\e81c";
}

[id="button-link"]:before {
  content: "\e826";
}

[id="button-spoiler"]:before {
  content: "\e80f";
}

[id="button-image"]:before {
  content: "\e803";
}

[id="button-video"]:before {
  content: "\e802";
}

[id="button-hide"]:before {
  content: "\e812";
}

[id="button-quote"]:before {
  content: "\e822";
}

[id="button-code"]:before {
  content: "\e80d";
}

[id="button-color"]:before {
  content: "\f1fb";
}

[id="button-table"]:before {
  content: "\e810";
}

[id="button-smile"]:before {
  content: "\e824";
}

[id="button-keyboard"]:before {
  content: "\f11c";
}

[id="button-addition"]:before {
  content: "\e82b";
}

/* RUSFF-вложения */
[id="button-files_rusff"]:before {
  content: "\e804";
}

/* RUSFF-граффити */
[id="button-graffiti_rusff"]:before {
  content: "\e811";
}

[id="pun"] #pun-reputation .bg {
  background: rgba(0, 0, 0, 0.75);
}

[id="pun"] [id="pun-graffiti-rusff"] .inner.popup_graffiti {
  position: fixed !important;
  left: 50% !important;
  top: 25% !important;
  margin: -130px 0 0 0 !important;
  transform: translateX(-50%);
  width: auto !important;
  max-width: 700px !important;
}

.punbb .inner.popup_graffiti h1 {
  grid-template-columns: 1fr auto auto;
}

.punbb .inner.popup_graffiti h1:before {
  grid-column: 1 / 2;
}

.punbb .inner.popup_graffiti h1 span:first-of-type {
  grid-column: 2 / -2;
}

/********************************************************************/

/* страница репутации и позитива */
[id="pun-respect"] [id="pun-main"] tr,
[id="pun-positive"] [id="pun-main"] tr {
  border-bottom: 1px solid var(--main-border-color);
}

[id="pun-respect"] [id="pun-main"] .container,
[id="pun-positive"] [id="pun-main"] .container {
  padding: 6px 14px 0;
  text-align: center;
}

[id="pun-respect"] .tc3,
[id="pun-positive"] .tc3 {
  word-break: break-word;
}

/********************************************************************/

/* похожие темы */
[id="similar-topics"] div.container {
  padding: 0.2rem 1.2rem 1rem;
}

[id="pun"] #similar-topics div.container {
  padding-top: 0.2rem;
}

[id="pun"] #similar-topics td {
  padding: 4px 0px;
  border-bottom: 1px solid var(--main-border-color);
}

/********************************************************************/

/* регистрация и вход */
form[id="register"] div.info-box {
  margin: 0.2rem 1.4rem 0.3rem;
  text-align: justify;
}

form[id="register"] div.info-box p {
  padding: 0 0 0.9rem 0;
  line-height: 1.4;
}

[id="pun-register"].punbb .formal fieldset,
[id="pun-login"].punbb .formal fieldset {
  margin-bottom: 1.2rem;
  padding: 1rem;
  border-radius: var(--secondary-border-radius);
  background-color: var(--secondary-bg-body-light);
}

[id="pun-login"] .fs-box p.inputfield:not(p.required),
[id="pun-register"] .fs-box p.inputfield {
  display: block;
}

[id="pun-register"] p.inputfield {
  margin: 0rem 1rem 0.8rem;
}

[id="pun-login"] p.infofield,
[id="pun-register"] p.infofield {
  display: block;
  clear: both;
}

[id="pun-register"] p.inputfield:not(.required)>br:has(+ span.input),
[id="pun-login"] p.inputfield:not(.required)>br:has(+ span.input) {
  display: none;
}

[id="pun-register"] fieldset.radiofield label {
  font-size: 1.2rem;
}

/********************************************************************/

/* ПЕРЕАДРЕСАЦИЯ */
.redirect-page {
  background-color: var(--main-bg-body-light) !important;
}

.redirect-page #pun {
  margin: 15% auto auto;
  text-align: center;
  font-size: 1.2rem;
  color: var(--primary-text);
  background-color: var(--main-bg-pun) !important;
}

.redirect-page h1+div.info {
  padding: 0px;
}

/********************************************************************/

/* ЗАКЛАДКИ */
[id="BookmCntToggle"] {
  top: 10px !important;
  height: 26px !important;
  width: 26px !important;
  z-index: 11 !important;
  opacity: 0.85 !important;
  color: var(--links-color) !important;
  border-radius: var(--main-border-radius);
  border: 1px solid var(--secondary-border-color);
  box-shadow: none !important;
  background-color: var(--main-bg-pun) !important;
}

[id="BookmCntToggle"]:hover {
  opacity: 1 !important;
}

[id="MyBookmarks"] {
  margin-top: 50px;
  height: auto !important;
  min-height: 150px;
  max-height: 500px;
  border-radius: 0px var(--secondary-border-radius) var(--secondary-border-radius) 0px;
  border: 1px solid var(--secondary-border-color);
  border-left-width: 0px;
  box-shadow: none !important;
  background-color: var(--main-bg-pun);
}

[id="MyBookmarks"] .container {
  margin-top: 2.6rem;
}

[id="MyBookmarks"] span.scrl.t,
[id="MyBookmarks"] span.scrl.b {
  top: -2rem !important;
}

[id="MyBookmarks"] inner {
  margin-top: 2.4rem;
  padding-top: 0rem !important;
  max-height: 400px;
  overflow-x: hidden;
  overflow-y: auto;
}

[id="pun"] .punbb [id="MyBookmarks"] h2,
[id="pun"] .punbb [id="MyBookmarks"] h1 {
  display: block;
  margin: 0px 0px 4px !important;
  padding: 6px 20px 6px 4px;
  font-size: 1.1rem;
  color: var(--lighter-text);
  border-width: 0px;
  border-radius: 0px var(--secondary-border-radius) 0px 0px;
  background: linear-gradient(-4deg, var(--main-bg-body) 0%, var(--secondary-bg-body) min(100%, 90vw));
  background-color: var(--main-bg-body);
}

[id="pun"] .punbb [id="MyBookmarks"] h2:before,
[id="pun"] .punbb [id="MyBookmarks"] h1:before {
  display: none;
}

.editBookmark {
  background-color: var(--main-bg-pun);
}

[id="pun"] .punbb .editBookmark h1 {
  display: block;
  font-size: 1.1rem;
}

[id="pun"] .punbb .editBookmark h1:before {
  display: none;
}

/********************************************************************/

/* RUSFF реакции */
.reactions-root {
  margin-top: 1.2rem;
}

[id="pun"] .post-body .reactions-container {
  justify-content: flex-end;
  margin-right: 4px;
}

[id="pun"] .reaction-picker {
  order: 5;
}

[id="pun"] .post-body .reaction-picker-panel {
  right: 0;
}

/* уменьшаем плюсик */
[id="pun"] .post-body .reaction-picker-button {
  width: 18px;
  height: 18px;
  padding: 4px;
  margin-top: 4px;
}

/* список реакций */
[id="pun"] .post-body .emoji-mart {
  font-size: 11px;
  border: 1px solid var(--secondary-border-color);
  border-radius: var(--main-border-radius);
  background-color: var(--secondary-bg-body-light);
  box-shadow: none;
}

/* поставленные реакции */
[id="pun"] .post-body .reaction-chip {
  background-color: var(--secondary-bg-body-light);
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color);
}

[id="pun"] .post-body button.reaction-chip:not(.reaction-counter) {
  border: 1px solid var(--secondary-border-color);
}

[id="pun"] .reaction-chip.reaction-chip--clicked:not(.reaction-chip--disabled):hover {
  background-color: var(--secondary-bg-pun);
}

/* менюшка */
[id="pun"] .emoji-mart-bar {
  border: 0px solid transparent;
}

[id="pun"] .reactions-root .emoji-mart-anchor {
  color: var(--links-color);
}

[id="pun"] .reactions-root .emoji-mart-anchor:hover,
.reactions-root .emoji-mart-anchor:focus,
.reactions-root .emoji-mart-anchor-selected {
  color: var(--links-hover-color);
}

[id="pun"] .emoji-mart-anchor-selected {
  color: var(--links-hover-color) !important;
}

[id="pun"] .emoji-mart-anchor-bar {
  background-color: var(--links-hover-color) !important;
}

/* поиск иконок */
[id="pun"] .reactions-root .emoji-mart-search input {
  margin-bottom: 6px;
  font-size: 1.1rem;
  border: 1px solid var(--secondary-border-color);
  border-radius: var(--main-border-radius);
  background-color: var(--main-bg-pun);
  box-shadow: none;
}

[id="pun"] .reactions-root .emoji-mart-search-icon {
  top: 5px;
}

/* блоки смайликов */
[id="pun"] .reactions-root .emoji-mart-category-label span {
  color: var(--primary-text);
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color);
  background-color: var(--secondary-bg-pun);
}

[id="pun"] .reactions-root .emoji-mart-category .emoji-mart-emoji:hover:before {
  background-color: rgba(244, 244, 244, 0.6);
}

/* RUSFF-рекомендации */
[id="pun"] div#pun-live-rusff {
  margin: 1.4rem 0rem 0rem;
  height: auto;
  width: auto;
  line-height: 1.4;
  font-size: 1.1rem;
  overflow: auto;
}

[id="pun"] .cool1 {
  width: 100px;
  font-size: 10px;
}

/********************************************************************/

/* задаем наименования для GRID */
[id="pun-index"] .category .tcl,
[id="pun-viewforum"] .category .isub .tcl {
  grid-area: lone;
  min-width: 0px;
  max-width: 688px;
  text-align: justify;
}

[id="pun-index"] .category .tc2,
[id="pun-viewforum"] .category .isub .tc2 {
  grid-area: ltwo;
  min-width: 70px;
  align-items: flex-end;
}

[id="pun-index"] .category .tc3,
[id="pun-viewforum"] .category .isub .tc3 {
  grid-area: lthree;
  min-width: 70px;
  align-items: flex-start;
}

[id="pun-index"] .category .tcr,
[id="pun-viewforum"] .category .isub .tcr {
  grid-area: lfour;
  min-width: 0px;
}

/* блок форума */
[id="pun-index"] div.icon,
[id="pun-viewforum"] .isub div.icon {
  grid-area: iconka;
  min-width: 0px;
}

[id="pun-index"] div.tclcon,
[id="pun-viewforum"] .isub div.tclcon {
  grid-area: neiconka;
  min-width: 0px;
}

/* последний пост */
[id="pun-index"] .user-avatar,
[id="pun-viewforum"] .isub .user-avatar {
  grid-area: avaindex;
  min-width: 0px;
}

.lastpost-link {
  grid-area: lastpost-a;
  align-self: start;
  min-width: 0px;
}

[id="pun-index"] span.lastpost,
[id="pun-viewforum"] .isub span.lastpost {
  grid-area: lastpost-span;
  align-self: end;
  min-width: 0px;
}

/* статистика */
[id="pun-stats"] li.item1 {
  grid-area: ntemy;
  min-width: 0px;
}

[id="pun-stats"] li.item2 {
  grid-area: nsoob;
  min-width: 0px;
}

[id="pun-stats"] li.item3 {
  grid-area: nrega;
  min-width: 0px;
}

[id="pun-stats"] li.item4 {
  grid-area: nposl;
  min-width: 0px;
}

/* фиксим строку с авой и никнеймом */
.forum .tcr .user-avatar,
.usertable .user-avatar {
  grid-area: avain;
  min-width: 0px;
}

.usertable .user-avatar {
  margin: auto auto auto 0px;
}

.usertable .usersname {
  grid-area: nikname;
  min-width: 0px;
  margin: auto auto auto 0px;
}

.forum .tcr .user-avatar+a {
  grid-area: avaina;
  min-width: 0px;
  align-self: end;
}

.forum .tcr span.byuser {
  grid-area: abyuser;
  min-width: 0px;
  align-self: start;
}

/* делим пост на части */
.post-author {
  grid-area: post-author;
  min-width: 0px;
}

.post-body {
  grid-area: post-body;
  min-width: 0px;
}

.post-links {
  grid-area: post-links;
  min-width: 0px;
}

/* поля в профиле */
/* автор */
.post-author li.pa-author {
  grid-area: pa-autor;
  min-width: 0px;
}

/* аватар */
.post-author li.pa-avatar {
  grid-area: pa-avatar;
  min-width: 0px;
}

/* статус */
.post-author li.pa-title {
  grid-area: pa-title;
  min-width: 0px;
}

/* репутация */
.post-author li.pa-respect {
  grid-area: pa-respect;
  min-width: 0px;
}

/* сообщения */
.post-author li.pa-posts {
  grid-area: pa-posts;
  min-width: 0px;
}

/********************************************************************/

/* АДМИНКА */
/* инфоблок в шапке */
div.admin-advert-block {
  display: block;
  position: absolute;
  top: calc(var(--padding-punbb)/2 + 20px);
  right: 50%;
  transform: translateX(50%);
  text-align: center;
}

.admin-advert-block a {
  color: var(--links-color-light);
}

#pun-admain {
  background-color: var(--main-bg-pun);
  color: var(--primary-text);
}

/* страницы в админке */
.punbb-admin .linksb {
  display: flex;
  flex-wrap: wrap;
  height: auto !important;
  padding: 1rem 0;
}

.punbb-admin .linksb .pagelink {
  font-size: 1.1rem !important;
}

#pun-admain .linksb .postlink {
  font-size: 1.1rem;
  flex-basis: 45%;
}

/* навигация и некоторые контейнеры */
div.adcontainer {
  background-color: var(--main-bg-pun);
}

/* настройки список */
#pun-adnav ul.adsubnav li {
  color: var(--links-hover-color) !important;
}

.adcontainer:has(#adnav-standard) {
  border-color: var(--secondary-border-color);
  border-radius: 0px 0px var(--secondary-border-radius) var(--secondary-border-radius);
  background-color: var(--secondary-bg-body-light);
}

#pun-adnav .isactive ul.adsubnav a {
  border-bottom: none;
}

/* заголовки */
#pun-admain h1,
#pun-admain h2,
#pun-admain h3,
#pun-admain h4,
.adformal h2,
#pun-adnav h2,
.adformal h2,
#pun #pun-adnav h2 {
  padding: 5px 12px 4px;
  font-size: 1.1rem !important;
  color: var(--lighter-text);
  border-radius: var(--secondary-border-radius) var(--secondary-border-radius) 0px 0px;
  background-color: var(--main-bg-body);
}

/*для мелочи */
#pun-admain1 form.adcontainer,
#pun-admain2 form.adcontainer,
#pun-admain-new form.adcontainer,
#pun-admain1 div.adcontainer,
#pun-admain2 div.adcontainer {
  padding: 16px 8px 12px !important;
  background-color: var(--main-bg-pun);
  border-color: var(--main-border-color);
  border-radius: 0px 0px var(--secondary-border-radius) var(--secondary-border-radius);
}

#pun-admain .adformal {
  border-bottom: 0px solid transparent;
}

/* легенда в админке */
#pun-admain legend span {
  font-size: 1.1rem !important;
  border-radius: var(--main-border-radius);
  background-color: var(--secondary-bg-body-light) !important;
}

/* окантовка блоков */
#pun-admain fieldset {
  border-color: transparent !important;
}

#pun-admain fieldset .handle,
#pun-admain fieldset p {
  margin-bottom: 6px !important;
  border-radius: var(--main-border-radius);
  border-color: transparent !important;
  background-color: var(--secondary-bg-pun) !important;
}

/* поля ввода */
#pun-admain input,
#pun-admain select {
  border-color: var(--secondary-border-color);
}

#pun-admain .tags {
  border-radius: var(--main-border-radius);
  border: 1px solid var(--main-border-color);
  background-color: var(--secondary-bg-body-light) !important;
}

#pun-admain input[type="radio"],
#pun-admain input[type="checkbox"] {
  border-color: var(--secondary-bg-body);
}

#pun-admain input.button,
#pun-admain input[type="radio"]:checked,
#pun-admain input[type="checkbox"]:checked {
  border: 1px solid var(--main-bg-body);
}

/* ранги */
#pun-admain #ranks label[for^="fld"] {
  opacity: 1;
}

/* кнопки в админке */
#pun-admain input.button,
#pun-admain p.submitend input[type="submit"],
#pun-admain span.submitend input[type="submit"] {
  padding: 3px 10px 4px !important;
  font-weight: 400 !important;
  font-size: 1.1rem;
  letter-spacing: 0.04rem;
}

/* границы в таблицах */
#pun-admain .adcontainer td {
  border-color: transparent !important;
}

#pun-admain table.adcontainer td,
#pun-admain table#filetable td {
  border-bottom: 1px solid var(--main-border-color) !important;
}

/* шрифт в списках */
#pun-admain select,
#pun-admain optgroup {
  font-size: 1.2rem !important;
}

/* ширина блока редактирования-просмотра */
div#pun-admain .adlabel {
  width: 20rem;
  margin-left: -20rem;
  padding-left: 1em;
  padding-right: 0em;
}

/* блок подфорумов */
#pun-admain2 fieldset .subforums {
  margin: 1rem 0rem;
  width: 100%;
}

/* редактируем BB-панель */
#pun-admain #form-buttons td#button-smile {
  display: none;
}

#pun-admain #tags .container {
  max-width: 320px;
}

#pun-admain #table-area td,
#pun-admain #color-area td {
  padding: 2px;
  border-color: var(--main-border-color) !important;
}

#pun-admain #table-area td img,
#pun-admain #color-area td img {
  width: auto;
  height: 15px;
}
/* END АДМИНКА */

/********************************************************************/
/********************************************************************/
/********************************************************************/

/* MOBILE */
@media screen and (max-width: 700px) {
  :root {
    --profile-width: 100%;
    --profile-nav: 100%;
  }

  [id="pun"] {
    margin: 46px auto 0px;
  }

  /* название форума */
  h1.title-logo span {
    font-size: clamp(1.4rem, (1vw + 0.6rem), 2.2rem);
  }

  /* приветствие */
  [id="pun-status"] .container {
    gap: 6px;
  }

  [id="pun"] [id="pun-status"] span.item3 {
    margin: auto auto auto 0px;
  }

  /* заголовки */
  [id="pun-index"] [id="pun-main"] h2,
  [id="pun-stats"] h2,
  [id="post-form"] h2,
  [id="similar-topics"] h2,
  [id="pun-mod"] h2 {
    margin: 2.6rem 0rem 1rem;
  }

  [id="pun-category1"] h2:first-of-type,
  [id="pun-index"] .info h2,
  [id="similar-topics"] h2,
  [id="pun-mod"] h2 {
    margin-top: 1.4rem;
  }

  /* разметка форумов на главной */
  [id="pun-index"] .category tr,
  [id="pun-index"] .category tr.isub,
  [id="pun-viewforum"] .category tr.isub {
    grid-template-columns: 1.3fr 0.7fr auto;
    gap: 10px 14px;
  }

  [id="pun"] #pun-index.punbb tr.isub .tcl {
    padding-left: 2rem !important;
  }

  /* расстояние между форумами */
  [id="pun-index"] .category tbody.hasicon {
    gap: 16px 0px;
  }

  /* статистика */
  [id="pun-stats"] ul.container {
    grid-template-columns: repeat(2, minmax(auto, 1fr));
    grid-template-areas:
      "ntemy nrega"
      "nsoob nposl";
    gap: 14px 16px;
  }

  [id="pun-stats"] li.item3,
  [id="pun-stats"] li.item4 {
    text-align: right;
  }

  /* хлебные крошки */
  [id="pun-crumbs1"],
  [id="pun-crumbs2"] {
    margin: 0.5rem 0rem;
  }

  /*************************************************/

  /* юзер-аватар */
  [id="pun"] .punbb .user-avatar span.avatar-image {
    height: 32px !important;
  }

  /* список участников и активные участники */
  [id="pun-userlist"] .relation,
  [id="pun-userlist"] .posts,
  [id="pun-userlist"] .num_posts,
  [id="pun-userlist"] .user_title,
  [id="pun-userlist"] .title {
    display: none;
  }

  [id="pun-userlist"] .usertable tr {
    grid-template-columns: 1fr 0.6fr 0.6fr;
  }

  .online-list tr {
    padding: 0.8rem 0 0.8rem 0;
    grid-template-columns: 1fr 0.6fr;
    grid-template-rows: auto auto;
    border-bottom: 1px solid var(--main-border-color);
  }

  .online-list tr:last-child {
    margin-bottom: 0px;
  }

  [id="pun"] .online-list td {
    padding: 0.4rem !important;
  }

  .online-list .tcl.username {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }

  .online-list .tc3 {
    grid-column: -2 / -1;
    grid-row: 1 / 2;
  }

  .online-list .tcl.action {
    grid-column: 1 / -1;
    grid-row: 2 / 3;
  }

  /* активные темы */
  [id="pun-searchtopics"] thead,
  [id="pun-searchtopics"] .tc3 {
    display: none;
  }

  [id="pun-searchtopics"] .forum tr {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    margin: 1.2rem 0rem;
    padding: 6px 0px;
  }

  [id="pun-searchtopics"] .forum tr:first-of-type {
    margin-top: 0rem;
  }

  [id="pun-searchtopics"] .forum tr:last-of-type {
    margin-bottom: 0rem;
  }

  [id="pun-searchtopics"].punbb .main td {
    padding: 0.5rem;
  }

  [id="pun-searchtopics"] .tcl {
    grid-column: 1 / -1;
    grid-row: 1 / 2;
  }

  [id="pun-searchtopics"] .tc2 {
    grid-column: 1 / 2;
    grid-row: 2 / -1;
    text-align: center;
    font-size: 1.1rem;
  }

  [id="pun-searchtopics"] .forum .tcr {
    grid-column: 2 / -1;
    grid-row: 2 / -1;
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  /* внутри форума */
  [id="pun-viewforum"] thead {
    display: none;
  }

  [id="pun-viewforum"] .forum .tc2,
  [id="pun-viewforum"] .forum .tc3 {
    display: none;
  }

  [id="pun-viewforum"] .forum tr {
    grid-template-columns: 1.3fr 1fr;
    grid-template-rows: auto;
    padding: 6px 0;
  }

  [id="pun-viewforum"] .forum tr:first-of-type {
    margin-top: 0rem;
  }

  /* модерирование тем */
  [id="pun-modviewforum"] .forum tr {
    grid-template-columns: 1fr 50px;
    grid-template-rows: auto auto;
  }

  [id="pun-modviewforum"] .forum .tcl {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }

  [id="pun-modviewforum"] .forum .tcmod {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
  }

  [id="pun-modviewforum"] .forum .tcr,
  [id="pun-modviewforum"] .forum .tc2,
  [id="pun-modviewforum"] .forum .tc3 {
    display: none;
  }

  .modmenu .container {
    flex-wrap: wrap;
    gap: 8px 0px;
  }

  [id="pun-multimove"] li.pl-select,
  [id="pun-multidelete"] li.pl-select {
    text-align: right;
  }
  
  /*************************************************/

  /* пагинация */
  .linkst,
  .linksb {
    padding-left: 6px;
    padding-right: 6px;
    row-gap: 12px;
  }

  [id="pun-viewforum"] .linkst,
  [id="pun-viewforum"] .linksb {
    grid-template-columns: auto;
    row-gap: 16px;
  }

  .linkst {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }

  .linkst .pagelink {
    grid-column: 1 / -1;
    grid-row: 1 / 2;
  }

  .linkst .postlink {
    grid-row: 2 / 3;
  }

  .linksb .pagelink {
    margin-bottom: 10px;
  }

  [id="pun-viewforum"] .postlink.long {
    width: auto;
    padding: 0;
  }

  /*************************************************/

  /* делим пост на части */
  .punbb .post h3+.container {
    grid-template-columns: 1fr;
    grid-template-areas:
      "post-author post-author"
      "post-body post-body"
      "post-links post-links";
    gap: 4px 0px;
  }

  /* профиль */
  .post-author {
    margin: 4px 0px 12px;
  }

  /* делим профиль на части */
  .post-author ul {
    display: grid;
    grid-template-columns: auto 1fr 1fr;
    grid-template-areas:
      "pa-avatar pa-autor pa-autor"
      "pa-avatar pa-title pa-title"
      "pa-avatar pa-respect pa-posts";
    gap: 8px 4px;
  }

  /* скрываем раскрываем блоки профиля */
  .post-author li,
  .post-author li.pa-ua {
    display: none;
  }

  .post-author li.pa-author,
  .post-author li.pa-avatar,
  .post-author li.pa-title,
  .post-author li.pa-respect,
  .post-author li.pa-posts {
    display: block;
    margin: auto;
  }

  /* ужимаем аватарку */
  .post-author li.pa-avatar {
    display: block;
    margin: auto 8px auto 0px;
    overflow: hidden;
  }

  .post-author .pa-avatar img {
    background-size: cover !important;
    object-fit: cover;
    width: 54px;
    height: 70px;
    object-position: 50% 50%;
  }

  /* аватар в ЛС */
  [id="pun-messages"] .post-author li.pa-avatar img {
    background-size: cover !important;
    object-fit: cover;
    width: 50px;
    height: 50px;
    object-position: 50% 50%;
  }

  /* сообщения в ЛС */
  [id="pun-messages"] .post-author ul li.pa-posts {
    grid-column: 2 / -1;
  }

  /* ссылки редактирования поста */
  .post-links ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .post-links li {
    flex: auto;
    text-align: center;
    margin: 4px 3px;
    padding: 3px 8px 3px;
    border-radius: 2px;
    border: 1px solid var(--main-border-color);
    background-color: var(--secondary-bg-body-light);
  }

  .post-links li.pl-email {
    order: -2;
  }

  .post-links li.pl-reports {
    order: -1;
  }

  #pun-searchposts .post-author ul {
    gap: 0px;
  }

  /*************************************************/

  /* профиль */
  .punbb td#profile-left {
    grid-column: 1 / -1;
    max-width: 100%;
  }

  .punbb td[id="profile-right"] {
    grid-column: 1 / -1;
  }

  [id="profile"].formal {
    margin: auto 0rem;
  }

  [id="notify-settings"] {
    margin: auto 0rem 1.4rem 0rem !important;
  }

  [id="profile"]>.container {
    margin-left: 0px;
    margin-right: 0px;
  }

  [id="profilenav"] {
    margin: 0px 0px 1.6rem 0px;
    float: none;
    clear: both;
  }

  [id="profilenav"] ul li {
    display: inline-block;
  }

  /********************************************************************/

  /* личные сообщения */
  #messages .fs-box tr {
    grid-template-columns: 0.8fr 1fr 40px;
    grid-template-rows: auto auto;
    padding: 7px 0;
  }

  .punbb #messages thead tr th.pmtc22,
  .punbb #messages thead tr th.pmtc33 {
    display: none;
  }

  #messages .tcl.pmtcl1 {
    grid-column: 1 / 3;
    grid-row: 1 / 2;
  }

  #messages .tc2.pmtc24 {
    grid-column: -2 / -1;
    grid-row: 1 / 2;
  }

  #messages .tc2.pmtc22 {
    grid-column: 2 / -1;
    grid-row: 2 / 3;
  }

  #messages .tc3.pmtc33 {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
    text-align: left;
  }

  #messages legend {
    display: none;
  }

  #messages .post-links {
    padding: 0.8rem 0rem 0.2rem;
  }
}

/********************************************************************/

@media screen and (max-width: 540px) {
  /* фикс полей ввода */
  select {
    width: 90%;
  }
  
  #pun-search .fs-box.inline p.inputfield,
  .fs-box.inline p.inputfield {
    display: block;
  }

  /* последний визит в строке приветствия */
  .isuser #pun-status span.item2 {
    display: none;
  }

  /* сжимаем меню форума до иконок */
  [id="pun-navlinks"] {
    margin: 0rem calc(0px - var(--padding-punbb)) 0rem;
    padding: 0px 2px 0px 0px;
    height: 44px;
    display: grid;
    align-content: center;
  }

  #pun-navlinks li a {
    font-size: 0px;
    font-weight: 400;
  }

  #pun-navlinks li a:before {
    overflow: hidden;
    display: inline;
    font-family: 'icon', 'mybb';
  }

  #pun-navlinks li#navindex a:before {
    content: "\e807";
  }

  #pun-navlinks li#navuserlist a:before {
    content: "\e80f";
  }

  #pun-navlinks li#navsearch a:before {
    content: "\e095";
  }

  #pun-navlinks li#navprofile a:before {
    content: "\e819";
  }

  #pun-navlinks li#navpm a:before {
    content: "\f0e0";
  }

  #pun-navlinks li#navlogout a:before {
    content: "\e805";
  }

  #pun-navlinks li#navregister a:before {
    content: "\e804";
  }

  #pun-navlinks li#navlogin a:before {
    content: "\e817";
  }

  /* кастомные ссылки в меню */
  #pun-navlinks li[id^="navextra"] a:before {
    content: "\f128";
  }

  #pun-navlinks .container {
    margin: auto 0px auto 34px;
    font-weight: 400;
    justify-content: space-evenly;
    gap: 0px;
    width: auto;
  }

  #pun-navlinks li a span {
    font-size: 0px;
    display: none;
  }

  #pun-navlinks li a:before {
    font-size: 18px;
    padding: 2px 2px;
  }

  #pun-navlinks li#navadmin span,
  #pun-navlinks li#navadmin span:before {
    font-size: 0px;
    display: none;
  }

  #pun-navlinks li#navadmin a:before {
    content: "\e808";
  }

  #pun-navlinks li#navawards a:before {
    content: "\e818";
  }

  #pun-navlinks li#navrules a:before {
    content: "\e82e";
  }

  /*************************************************/

  /* схлопывалка улинкса */
  #pun-ulinks {
    z-index: 5;
    width: 34px;
    height: 44px;
    margin: -44px auto auto calc(-2px - var(--padding-punbb));
    padding: 0px;
    text-align: center;
    border-width: 0px;
    box-shadow: none;
    background-image: none;
    background-color: transparent;
  }

  #pun-ulinks .container {
    flex-direction: column;
    align-items: stretch;
    position: relative;
  }

  #pun-ulinks h2 {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: 1fr;
    align-items: center;
    gap: 0px 8px;
    position: absolute;
    top: 0px;
    right: 0px;
    left: 12px;
    margin: 0px 0px;
    padding: 0px;
    height: 100%;
    width: auto;
    line-height: 1;
  }

  #pun-ulinks h2 span {
    display: none;
  }

  #pun-ulinks h2:before {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    display: block;
    content: ' \e813';
    font-family: 'icon', 'mybb';
    font-weight: 400;
    font-size: 23px;
    color: var(--links-color);
  }

  #pun-ulinks .container {
    gap: 0px;
    width: fit-content;
  }

  #pun-ulinks ul {
    z-index: 2;
    position: absolute;
    top: 44px;
    margin: 0px auto auto 0px;
    padding: 0 0px;
    min-width: 200px;
    -moz-transition: 0.35s ease-in-out;
    transition: 0.35s ease-in-out;
    transform: translateX(-100%);
    transform-origin: 0 0;
    visibility: hidden;
    white-space: nowrap;
    border: 1px solid var(--secondary-border-color);
    border-radius: 0px var(--secondary-border-radius) var(--secondary-border-radius) var(--secondary-border-radius);
    background-color: var(--secondary-bg-pun);
  }

  #pun-ulinks:hover ul {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    visibility: visible;
  }

  #pun-ulinks li {
    padding-right: 0;
    margin: auto 0px;
  }

  #pun-ulinks ul li a {
    padding: 8px 20px 6px;
    margin: 0px 0px 0px;
    display: block;
    font-size: 1.4rem;
    border-bottom: 1px solid var(--secondary-border-color);
    color: var(--links-color);
  }

  #pun-ulinks ul li a:hover {
    color: var(--links-hover-color);
  }

  #pun-ulinks ul li:last-child a {
    margin-bottom: 2px;
    border-bottom: 0px solid transparent;
  }

  #pun-ulinks li:nth-child(4),
  #pun-ulinks li.item5 {
    display: none;
  }

  /* уведомления */
  #pun .notify-link {
    position: relative;
    top: 10px;
    left: 10px;
  }

  #pun #notify-link .unreads {
    line-height: 14px;
  }

  /* количество непрочитанных лс */
  #pun #pun-navlinks li#navpm span.num_msg {
    line-height: 0 !important;
    font-size: 10px !important;
  }

  /* количество новых сообщений в форуме */
  .icon[data-new-topics]:before,
  .subforums span[data-new-topics]:before {
    display: none !important;
  }

  /*************************************************/

  /* главная страница */
  [id="pun-index"] .category tr,
  [id="pun-index"] .category tr.isub,
  [id="pun-viewforum"] .category tr.isub {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto 16px auto;
    grid-template-areas:
      "lone lone lone"
      ". ltwo lthree"
      "lfour lfour lfour";
    gap: 6px 12px;
  }

  [id="pun-index"] .category .tcl,
  [id="pun-viewforum"] .category .isub .tcl {
    padding: 0rem;
  }

  /* аватарка на главной */
  [id="pun"] [id="pun-index"].punbb .user-avatar .avatar-image {
    height: 38px !important;
    width: 38px !important;
  }

  /* заголовок форума */
  [id="pun-index"] h3,
  [id="pun-viewforum"] tr.isub h3 {
    line-height: 1.2;
  }

  /* иконка */
  div.icon {
    width: 28px;
  }

  /* внутри форума */
  [id="pun-viewforum"] .forum tr {
    grid-template-columns: 1fr;
    padding: 0.5rem 0.5rem;
  }

  /* название темы на странице поиска */
  [id="pun-searchtopics"] .tcl,
  [id="pun-viewforum"] .tcl {
    font-size: 1.6rem;
    line-height: 1.2;
  }

  /* статистика */
  [id="pun-stats"] ul.container {
    grid-template-columns: repeat(2, minmax(auto, 1fr));
    grid-template-areas:
      "ntemy nsoob"
      "nrega nrega"
      "nposl nposl";
    gap: 10px 12px;
  }

  [id="pun-stats"] li.item3,
  [id="pun-stats"] li.item4 {
    text-align: center;
  }

  /*************************************************/

  /* список участников */
  form[id="userlist"] {
    margin: 1rem 0rem;
  }

  #pun-userlist .usertable tr {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    padding: 4px 0px;
    border-bottom: 1px solid var(--main-border-color);
  }

  #pun-userlist .usertable td {
    padding: 0.5rem;
  }

  #pun-userlist .usertable .tcl {
    grid-column: 1 / -1;
  }

  #pun-userlist .usertable thead tr th.tcl.username {
    display: none;
  }

  /*************************************************/

  /* пост и поле ответа */
  .post-box,
  textarea[id="main-reply"] {
    font-size: 1.6rem;
    line-height: 1.42;
  }

  /* теги поля ответа */
  #tags .container {
    position: static !important;
    width: 100%;
    max-height: 200px !important;
  }

  #post div#float-area {
    right: 0%;
    transform: none;
  }

  /* отступ для цитаты */
  .post-content .quote-box,
  .post-content .code-box,
  .post-content .hide-box {
    margin: 1.4rem 0rem 1.6rem;
  }

  /* скрыть RUSFF-граффити */
  td[id="button-graffiti_rusff"] {
    display: none !important;
  }

  /*************************************************/

  /* личные сообщения */
  #pun #OnOff_Notify {
    float: left !important;
    margin-left: 0px;
    margin-right: 10px;
    margin-top: -4px;
  }

  #pun #OnOff_Notify:before {
    margin-top: 6px;
    margin-left: -10px;
    font-size: 1.1rem;
  }

  #pun-messages .post-box {
    padding: 0px;
  }

  /*************************************************/

  /* страница репутации и позитива */
  #pun-respect #pun-main .container,
  #pun-positive #pun-main .container {
    padding: 0px 2px;
  }

  #pun-respect.punbb .main table th,
  #pun-positive.punbb .main table th {
    display: none;
  }

  #pun-respect.punbb .main table tr,
  #pun-positive.punbb .main table tr {
    display: grid;
    grid-template-columns: 24px 0.8fr 1fr;
    grid-template-rows: auto auto;
  }

  #pun-respect.punbb .main table tr .tc2,
  #pun-positive.punbb .main table tr .tc2 {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }

  #pun-respect.punbb .main table tr .tc3,
  #pun-positive.punbb .main table tr .tc3 {
    grid-column: 2 / -2;
    grid-row: 1 / 2;
    width: 100% !important;
  }

  #pun-respect.punbb .main table tr .tcl,
  #pun-positive.punbb .main table tr .tcl {
    grid-column: -2 / -1;
    grid-row: 1 / 2;
    width: 100% !important;
  }

  #pun-respect.punbb .main table tr .tcr,
  #pun-positive.punbb .main table tr .tcr {
    grid-column: 1 / -2;
    grid-row: -2 / -1;
    width: 100% !important;
  }

  #pun-respect.punbb .main table tr .tc3+.tc3,
  #pun-positive.punbb .main table tr .tc3+.tc3 {
    grid-column: -2 / -1;
    grid-row: -2 / -1;
    width: 100% !important;
  }

  #pun-positive #pun-main .tc4.comment,
  #pun-respect #pun-main .tc4.comment {
    width: 95%;
  }

  /*************************************************/

  /* поле ответа */
  .fs-box.hashelp p.areafield.required {
    margin: 0rem 0rem 1rem;
  }

  /* закладки */
  [id="BookmCntToggle"] {
    position: absolute !important;
    top: -36px !important;
  }

  /* логотип, шапка форума */
  h1.title-logo:before {
    min-width: calc(2.4rem * 4);
    font-size: 2.4rem;
  }

  /* подписаться */
  .linksb .subscribelink {
    grid-row: 2 / -1;
  }

  /* ответить */
  .linksb .postlink {
    grid-column: -2 / -1;
    grid-row: -2 / -1;
  }

  /* поиск по теме */
  [id="s-block"] {
    margin-top: 1rem;
  }

  /* rusff-реакции */
  #pun .post-body .reaction-picker-panel {
    right: 0px;
    width: 250px;
  }

  #pun .post-body .emoji-mart {
    width: 250px !important;
  }
}

/********************************************************************/

@media screen and (max-width: 440px) {
  /* расширенная статистика */
  [id="pun-statistic"] tr {
    word-break: break-all;
  }
  [id="pun-statistic"] .tc-title {
    display: none;
  }
}

/********************************************************************/

@media screen and (max-width: 840px) {
  /*** АДМИНКА ***/
  .punbb-admin {
    width: auto;
  }

  .punbb-admin .admin-advert-block {
    width: 100%;
  }

  #pun-adnav ul {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
  }

  div.adcontainer {
    background-color: var(--bgpun);
  }

  .punbb div.adminmain.post {
    padding: 0 0 0 0em !important;
  }

  .punbb-admin .adminmain {
    padding: 0em 0px !important;
  }

  .punbb-admin #pun-adnav {
    float: none;
    clear: both;
    width: 100%;
    margin-left: 0em;
    display: block;
    box-sizing: border-box;
  }

  .punbb-admin #pun-admain fieldset {
    padding: 0 4px 0 4px !important;
  }

  .punbb-admin #pun-adnav li {
    display: inline-block;
  }

  .punbb-admin #pun-admain fieldset p,
  #pun-admain fieldset p,
  .punbb-admin #pun-admain fieldset .handle {
    border-left-width: 0em !important;
    border-left: none;
    padding-left: 6px;
    box-sizing: border-box;
  }

  .punbb-admin #pun-admain fieldset p {
    margin-bottom: 6px;
  }

  .punbb-admin #pun-admain2 fieldset .subforums {
    margin-left: 0em;
  }

  .punbb-admin #pun-admain .adlabel {
    width: 100%;
    box-sizing: border-box;
    display: block;
    float: none;
    clear: both;
    margin-left: 0em;
  }

  #pun-admain fieldset .handle,
  #pun-admain fieldset p {
    border-left-width: 0em !important;
  }

  #pun-admain .adlabel {
    margin-left: 0em !important;
    width: 100% !important;
  }

  .punbb-admin #pun-admain .adinput {
    padding: 0px 26px 0 0 !important;
  }

  .punbb-admin #pun-admain span.adsubmit {
    position: relative;
    display: block;
    left: 1em !important;
    margin-bottom: 6px;
  }

  .punbb-admin #pun-admain p.adsubmitfield span.adsubmit {
    top: 2px;
  }

  #pun-admain textarea {
    width: 98% !important;
    box-sizing: border-box;
  }

  .punbb-admin #pun-admain1 form.adcontainer,
  .punbb-admin #pun-admain2 form.adcontainer,
  .punbb-admin #pun-admain1 div.adcontainer,
  .punbb-admin #pun-admain2 div.adcontainer {
    padding: 18px 0px 12px 0px;
    overflow: hidden;
  }

  #pun-admain1 form.adcontainer,
  #pun-admain2 form.adcontainer,
  #pun-admain1 div.adcontainer,
  #pun-admain2 div.adcontainer {
    padding-left: 0;
    padding-right: 0;
  }

  .punbb-admin #pun-admain p span.astable label {
    float: none;
    clear: both;
  }
}
/* END MOBILE */

/********************************************************************/