/*
 * Common variables
 *
 * Общие переменные
 */

:root {
  --font-family: "Roboto", -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  --line-height: 1.6rem;

  --font-size-sm: 0.875rem;
  --font-size-base: 1.063rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;

  --gap-none: 0px;
  --gap-sm: 0.375rem;
  --gap-base: 1.25rem;
  --gap-lg: 2rem;

  --rounded-none: 0px;
  --rounded-sm: 0.125rem;
  /* 2px */
  --rounded: 0.313rem;
  /* 5px */
  --rounded-full: 9999px;

  --max-w-full: 100%;
  --max-w-sm: 300px;
  --max-w-md: 800px;
}/*
 * Default (light) theme
 *
 * Тема по умолчанию (светлая)
 */

:root {
  --bg-color: #f3f6f7;
  --text-color: #030303;

  --link-color: #000000;
  --link-color-hover: #575555;

  --nav-bg-active: #fcebd9;
  --nav-color-active: #332f2f;

  --dropdown-bg: #fff;
  --dropdown-box-shadow: 0 6px 18px 0 rgba(14, 21, 47, .13), 0 -2px 6px rgba(14, 21, 47, .03);

  --form-color-active: #3595f6;
  --form-bg-color: #ebf0f0;
  --form-border-color: #ddd;
  --form-text-color: #111;

  --button-text-color: #fff;
  --button-bg-color: #0085ee;
  --button-border-color: #0379d7;
  --button-border-color-hover: #fff;

  --button-outline-text-color: #0085ee;
  --button-outline-bg-color: #fff;
  --button-outline-border-color: #0379d7;
  --button-outline-text-color-hover: #fff;
  --button-outline-bg-color-hover: #0085ee;
  --button-outline-border-color-hover: #0379d7;

  --header-bg: #111111;
  --header-box-shadow: none;
  --header-text-color: #fff;
  --header-logo-color: #fff;
  --header-form-bg-color: #1f1f1f;
  --header-form-text-color: #fff;

  --footer-bg: #fff;
  --footer-box-shadow: 0 1px 2px -1px rgb(0 0 0 / 15%);
  --footer-text-color: #9ca3af;
  --footer-color-active: #332f2f;

  --blockquote-bg: #f3f3f6;

  /* Colors used */
  --black: #030303;
  --white: #fff;
  --yellow: #ffffe0;
  --brown: #bb6619;
  --green: #16a34a;
  --sky: #0ea5e9;
  --violet: #f3f1ed;
  --red: #ef4444;
  --red-200: #fecaca;
  --gray: #4b5563;
  --gray-100: #f6f8fc;
  --gray-600: #9ca3af;
  --blue: #3b82f6;
  --slate: #cbd5e1;
  --beige: #fff4e8;
}/*
 * Dark (night) theme
 *
 * Тёмная (ночная) тема
 */

body.dark {
  --bg-color: #202b38;
  --text-color: #fff;

  --link-color: #118bee;
  --link-color-hover: #d6d6d6;

  --nav-bg-active: #161f27;
  --nav-color-active: #fff;

  --dropdown-bg: #1a2630;
  --dropdown-box-shadow: 0 6px 18px 0 rgba(14, 21, 47, .13), 0 -2px 6px rgba(14, 21, 47, .03);

  --form-color-active: #1e2830;
  --form-bg-color: #283541;
  --form-border-color: #555;
  --form-text-color: #fff;

  --button-text-color: #bfcad3;
  --button-bg-color: #202a34;
  --button-border-color: #1e2226;
  --button-border-color-hover: #ddd;

  --button-outline-text-color: #bfcad3;
  --button-outline-bg-color: #3f4851;
  --button-outline-border-color: #3f4851;

  --button-outline-text-color-hover: #bfcad3;
  --button-outline-bg-color-hover: #555f6a;
  --button-outline-border-color-hover: #555f6a;

  --header-bg: #0a0a0a;
  --header-box-shadow: none;
  --header-text-color: #fff;
  --header-logo-color: #fff;
  --header-form-bg-color: #1a1a1a;
  --header-form-text-color: #fff;

  --footer-bg: #1a2630;
  --footer-box-shadow: 0 -5px 5px -5px rgb(0 0 0 / 15%);
  --footer-text-color: #eee;
  --footer-color-active: #ccc;

  --blockquote-bg: #2e3d49;

  /* Colors used */
  --black: #fff;
  --white: #161f27;
  --yellow: #2f3b4a;
  --brown: #f5caa3;
  --green: #16a34a; /*not changed*/
  --sky: #0ea5e9; /*not changed*/
  --violet: #313e49;
  --red: #ef4444; /*not changed*/
  --red-200: #fecaca; /*not changed*/
  --gray: #a7a7a7;
  --gray-100: #202a32;
  --gray-600: #9ca3af; /*not changed*/
  --blue: #3b82f6; /*not changed*/
  --slate: #161f27;
  --beige: #283541;
  

  /* Tagify */
  --tagify-bg-color: #283541;
  --tagify-dd-bg-color: #283541;
  --tagify-dd-color-primary: #283541;
  --tags-border-color: #555;
}

body.dark .cherry.theme__light .cherry-toolbar,
body.dark .cherry.theme__light .cherry-floatmenu,
body.dark .cherry.theme__light .cherry-bubble,
body.dark .cherry.theme__light .cherry-sidebar,
body.dark .cherry.theme__light .cherry-editor,
body.dark .cherry.theme__light .cherry-previewer,
body.dark .cherry.theme__light .cherry-editor .CodeMirror  {
  background-color: var(--form-bg-color);
  color: var(--form-text-color);
}

body.dark .cherry.theme__light .cherry-editor .CodeMirror .CodeMirror-scroll span,
body.dark .cherry.theme__light .cherry-toolbar .cherry-toolbar-button,
body.dark .cherry.theme__light .cherry-floatmenu .cherry-toolbar-button,
body.dark .cherry.theme__light .cherry-bubble .cherry-toolbar-button,
body.dark .cherry.theme__light .cherry-sidebar .cherry-toolbar-button {
  color: var(--form-text-color);
}

body.dark .cherry.theme__light .cherry-editor .CodeMirror .CodeMirror-scroll .cm-url,
body.dark .cherry.theme__light .cherry-editor .CodeMirror .CodeMirror-selected  {
  background-color: var(--button-bg-color);
  color: var(--form-text-color);
}

body.dark  [data-toolbar-theme="dark"] .cherry-bubble .cherry-bubble-top {
  border-bottom-color: var(--gray-600);
}

body.dark .comment {
  word-wrap: break-word;
  box-shadow: 0 15px 25px rgba(0, 0, 0, .1);
  padding: 5px;
}

body.dark .tagify {
  --tags-border-color: #555;
}

body.dark .dialog-content,
body.dark .tagify {
  background-color: var(--tagify-bg-color);
}

body.dark .tagify__tag > div {
  color: var(--form-text-color);
}

body.dark  .tagify__tag > div::before {
  box-shadow: 0 0 0 1.2rem #1a1818 inset;
}

body.dark .tagify__tag__removeBtn {
  color: var(--gray);
}

body.dark .banner {
  background-color: var(--gray-100);
  background-image: none;
  color: #fff; 
}/*
 * Components based on the basic style of libArea
 *
 * Компоненты, основанные на базовом стиле LibArea
 */

#contentWrapper {
  display: flex;
  gap: var(--gap-base);
  margin: 0 auto;
  height: 100%;
  max-width: 1536px;
  padding-left: 1rem;
  padding-right: 1rem;
}

h1,
h2,
h3,
h4,
h5 {
  font-weight: 300;
}

header {
  display: flex;
  top: 0;
  z-index: 6;
  position: sticky;
  background-color: var(--header-bg);
  color: var(--header-text-color);
  box-shadow: var(--header-box-shadow);
  backface-visibility: hidden;
  align-items: center;
  height: 3.5em;
  width: 100%;
  padding: 0 1rem;
}

header.show .d-header-post.none,
header.show .d-header-facet.none {
  display: flex;
  position: relative;
  width: 100%;
  font-size: 18px;
  align-items: center;
  max-width: 550px;
}

header.show .d-header-post.none a {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

header.scroll-hide-search.show .button-search,
header.scroll-hide-search.show .box-search {
  display: none;
}

main {
  padding: 2rem;
  flex: 1;
}

aside {
  flex-basis: 340px;
  margin-top: 2rem;
}

aside ul {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.9375rem;
}

aside ul a {
  color: var(--gray);
}

footer {
  padding-top: 30px;
}

blockquote {
  margin-left: 15px;
  background-color: var(--blockquote-bg);
  padding: 0.1rem 1rem;
  border-left: 3px solid var(--gray-600);
  display: table;
}

hr {
  border: none;
  clear: both;
  background-color: var(--gray-100);
  height: 1px;
}

details {
  border-radius: var(--rounded);
  background-color: var(--gray-100);
  padding: 2px 6px;
  margin: 0 0 15px 0;
}

summary {
  background-color: var(--gray-100);
  color: var(--gray);
  font-size: 14px;
}

details[open]>summary {
  padding: 0 0 10px 0;
  color: var(--gray);
}

.content {
  display: flex;
  gap: var(--gap-base);
  justify-content: space-between;
  margin-left: 15rem;
  width: 100%;
}

.number-svg {
  right: -6px;
  top: -3px;
  background-color: var(--white);
  border: 2px solid var(--white);
  border-radius: var(--rounded-full);
  width: 16px;
  height: 16px;
  position: absolute;
  fill: none;
  stroke: currentColor;
}

.bg-yellow .number-svg {
  border: 2px solid #7186fc;
  background-color: #7186fc;
  color: var(--white);
}

.number-notif {
  display: none;
  font-size: .72rem;
  color: var(--white);
  background-color: var(--red);
  border-radius: var(--rounded-full);
  position: absolute;
  top: -5px;
  right: -2px;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
}

.number-notif.show,
.video-pl {
  display: block;
}

/* См. https://github.com/VKCOM/icons */
.icon {
  width: 24px;
  height: 24px;
  fill: currentColor;
  vertical-align: middle;
}

.icon.small {
  width: 16px;
}

.icon.large {
  width: 28px;
  height: 28px;
}

.icon.max {
  width: 121px;
  height: 121px;
}

.icons.icon-base {
  width: 24px;
  height: 24px;
  fill: currentColor;
  vertical-align: middle;
}

/* end */

/*
 * Share icons
 *
 * Иконки, поделиться
 */

.icon-share {
  height: 48px;
  width: 48px;
}

.icon.vk {
  color: #07f;
}

.icon.ok {
  color: #eb722e;
  height: 47px;
  width: 44px;
}

.icon.tg {
  color: #64a9dc;
}

.icon.fb {
  color: #3b5998;
}

.icon.lj {
  color: #0d425a;
}

.icon.tw {
  color: #00aced;
}

/* end */

.list-none {
  list-style: none;
  padding: 0;
  margin: 0;
}

.banner {
  background-image: url(/assets/images/banner-fon.webp);
  background-size: cover;
  filter: brightness(1.1);
  text-align: center;
  border-radius: var(--rounded);
  padding: 1.25rem 0;
  margin-top: -1rem;
  margin-bottom: 1.25rem;
  color: #333;
}

/* Search */
.search {
  border-radius: var(--rounded);
  background-color: var(--header-form-bg-color);
  color: var(--header-form-text-color);
  padding: 9px;
  border-color: transparent;
  transition: all 0.4s 0.7s ease;

}

.box-search {
  width: 100%;
}

.form {
  width: 100%;
  max-width: 600px;
  margin: auto;
}

.box-search .search {
  position: relative;
  width: 100%;
  display: none;
  transition: all 0.6s ease;
}

.box-search.active .search {
  display: block;
  transition: all 0.6s ease;
}

.box-results {
  position: absolute;
  border-radius: var(--rounded);
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, .15);
  background-color: var(--white);
  padding: 15px;
  z-index: 2;
}

.v-line {
  border-left: 1px solid var(--gray-600);
  height: 20px;
  display: inline-block;
  margin: 0 10px 0 5px;
  vertical-align: middle;
}

.box-logo {
  width: 270px;
  align-items: center;
  display: flex;
  gap: 0.5rem;
  color: var(--gray-600);
  margin-left: 4px;
}

.cut-off {
  width: 75%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.blockquote-profile {
  border-left: 3px solid var(--gray-600);
  font-size: .91rem
}

.blockquote-profile p {
  margin: 2px;
}

.title {
  margin: 0;
  font-weight: 500;
  font-size: 1.375rem;
}

.title sup {
  font-size: 1rem;
}

.title.max {
  font-size: 1.8rem;
  line-height: 1.8rem;
}

.txt-closed {
  padding: 10px;
  background-color: var(--yellow);
  margin-bottom: 15px;
  display: inherit;
  color: var(--gray-600);
}

article,
.box {
  border-radius: var(--rounded);
  padding: 20px 24px;
  margin-bottom: 20px;
  overflow-wrap: break-word;
  background-color: var(--white);
}

.box-flex {
  display: flex;
  border-radius: var(--rounded);
  position: relative;
  flex-direction: row;
  align-items: center;
  padding: 15px;
  margin-bottom: 20px;
  background-color: var(--white);
}

.box-center {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
}

.box-info {
  border-radius: var(--rounded);
  padding: 20px 24px;
  overflow-wrap: break-word;
  background-color: var(--beige);
}

.search-input {
  width: 300px;
  height: 50px;
  padding-left: 1.25rem;
  border-radius: var(--rounded);
}

.search-button-icon {
  border: none;
  height: 50px;
  width: 50px;
  color: #4f5b66;
  font-size: 18px;
  border-radius: var(--rounded);
}

.list-content {
  display: flex;
  padding: 0.5rem 0;
}

ul.last-content li {
  margin-bottom: 25px;
}

ul.last-content a.last-content_telo {
  display: block;
  word-wrap: break-word;
  background-color: var(--gray-100);
  padding: 12px;
  margin-top: 5px;
  border-radius: var(--rounded);
}

.uppercase-box {
  font-size: 0.75rem;
  text-transform: uppercase;
  margin: 0 0 10px 0;
  letter-spacing: 1.5px;
  font-weight: 500;
}

.trigger img,
a:hover>img {
  opacity: 0.8;
}

.focus-id:hover {
  cursor: pointer
}

.underline-hover:hover {
  text-decoration: underline;
}

.user-info {
  display: flex;
  align-items: center;
  gap: var(--gap-sm);
  font-size: var(--font-size-sm);
  color: var(--gray-600);
  margin-bottom: 5px;
}

.content-body,
.comment-body {
  max-width: 810px;
  overflow-wrap: break-word;
  margin: 5px;
  position: relative;
  word-break: break-word;
}

.comment-body img {
  max-width: 330px;
}

.comment-body img:not(.img-sm, .emoji, .gif) {
  border: 1px solid var(--gray);
  display: block;
}

.anchor-top:target~.comment {
  background-color: var(--yellow);
  padding: 5px;
}

.anchor:target {
  padding-top: 55px;
  margin-top: -55px;
  -webkit-background-clip: content-box;
  background-clip: content-box;
}

.anchor-top {
  position: absolute;
  display: block;
  top: -75px;
}

.comments {
  margin: 20px 0 20px 8px;
  list-style: none;
  padding: 0;
}

.comment-footer {
  display: flex;
  gap: 1rem;
  font-size: .875rem;
  margin-left: 5px;
}

.comment,
.comments li {
  position: relative;
}

.comment_text {
  word-wrap: break-word;
}

.comment_level-left-0 {
  margin-left: 15px;
}

.comment_level-left-1 {
  margin-left: 36px;
}

.comment_level-left-2 {
  margin-left: 56px;
}

.comment_level-left-3 {
  margin-left: 76px;
}

.comment_level-left-4 {
  margin-left: 96px;
}

.comment_level-left-5 {
  margin-left: 116px;
}

.comment_thread {
  border: 0;
  padding: 0;
  height: 100%;
}

.qa-comment {
  font-size: 0.875rem;
  padding: 0.24rem 0;
}

.reply-to {
  display: none;
  color: var(--gray-600);
  margin-top: -2px;
}

.menu-comment {
  display: none;
  position: relative;
}

.comment-body:hover .menu-comment,
.comment-body:hover .reply-to {
  display: block;
}

li input.comment-folder-button {
  display: none;
}

li .comment-folder {
  font-size: 9pt;
  color: var(--gray-600);
  letter-spacing: 0.1em;
  width: 1.5em;
  cursor: pointer;
  float: left;
  text-align: center;
  margin-left: -22px;
}

li .comment-folder:before {
  content: "[-]";
}

li .comment-folder-button:checked~.comment .comment-folder:before {
  content: "[+]";
}

li .comment-folder-button:checked~.comment .comment-text,
li .comment-folder-button:checked~.comment .comment-footer {
  display: none;
}

li .comment-folder-button:checked~ol.comments ol,
li .comment-folder-button:checked~ol.comments div.comment,
li .comment-folder-button:checked~ol.comments li {
  display: none;
}

.comments .comment.bg-red-200 {
  background-color: var(--red-200);
}

.comment-text p {
  margin: 0.1em 0 1em 0;
}

.comment-text blockquote p {
  margin: 0.6em 0 0.6em 0;
}

article iframe {
  max-width: 560px;
  max-height: 320px;
}

video {
  max-width: 560px;
}

.scroll-menu {
  overflow-x: auto;
  scrollbar-width: none;
}

.scroll-menu::-webkit-scrollbar {
  width: 0;
  height: 0
}

.scroll-wrapper {
  overflow: hidden;
  padding: 0;
  position: relative;
}

.scroll-wrapper.conversationMessages {
  height: calc(100% - 62px);
}

.delet-count {
  z-index: 3;
  right: 10px;
  font-size: 0.8em;
  color: var(--white);
  background-color: rgba(0, 0, 0, 0.3);
  padding: 1px 6px;
  position: absolute;
  display: flex;
  gap: var(--gap-base);
}

li.zebra {
  padding: 5px;
  list-style: none;
}

li.zebra+li {
  border-top: 1px solid var(--gray-100);
}

.menu li.zebra:hover {
  background-color: var(--gray-100);
}

.linta-100 {
  margin: 15px -25px;
}

.search-page {
  background-color: var(--white);
}

.pagination {
  display: flex;
  align-items: center;
  gap: 4px;
  margin: 20px 0;
}
.pagination__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 32px;
  padding: 0 8px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 500;
  color: var(--gray-600);
  text-decoration: none;
  transition: background .15s, color .15s;
}
.pagination__item:hover {
  background: var(--form-bg-color, #f3f4f6);
  color: var(--text-color, #111);
}
.pagination__current {
  background: var(--blue);
  color: #fff;
}
.pagination__current:hover {
  background: var(--blue);
  color: #fff;
}
.pagination__arrow {
  font-size: 18px;
  font-weight: 400;
}
.pagination__dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 32px;
  font-size: 13px;
  color: var(--gray-600);
  letter-spacing: 2px;
}

/* Publish page */
.publish-page {
  max-width: 720px;
  margin: 0 auto;
  padding: 24px 0;
}
.publish-header {
  margin-bottom: 28px;
}
.publish-title {
  font-size: 1.5rem;
  font-weight: 600;
  margin: 0;
}
.publish-form {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.publish-field {
  padding: 8px 0;
}
.publish-label {
  display: block;
  font-size: .875rem;
  font-weight: 500;
  color: var(--text-color);
  margin-bottom: 6px;
}
.publish-input,
.publish-textarea {
  width: 100%;
  padding: 10px 12px;
  font-size: 15px;
  border: 1px solid var(--form-border-color, #ddd);
  border-radius: 8px;
  background: var(--form-bg-color);
  color: var(--form-text-color);
  transition: border-color .15s;
}
.publish-input:focus,
.publish-textarea:focus {
  border-color: var(--blue);
  outline: none;
}
.publish-input--title {
  font-size: 20px;
  font-weight: 500;
  padding: 12px 14px;
}
.publish-textarea {
  resize: vertical;
  min-height: 100px;
}
.publish-hint {
  display: block;
  font-size: .8rem;
  color: var(--gray-600);
  margin-top: 4px;
}
.publish-url-row {
  display: flex;
  gap: 8px;
  align-items: center;
}
.publish-url-row .publish-input {
  flex: 1;
}
.publish-actions {
  padding: 20px 0 8px;
}
.publish-extra {
  margin-top: 8px;
  border: 1px solid var(--form-border-color, #ddd);
  border-radius: 8px;
  padding: 0;
  background: transparent;
}
.publish-extra__toggle {
  padding: 12px 16px;
  font-size: .875rem;
  font-weight: 500;
  color: var(--gray);
  cursor: pointer;
  background: transparent;
  border-radius: 8px;
}
.publish-extra[open] .publish-extra__toggle {
  border-bottom: 1px solid var(--form-border-color, #ddd);
  border-radius: 8px 8px 0 0;
}
.publish-extra__body {
  padding: 12px 16px 16px;
}
.publish-options {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.publish-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: .875rem;
  cursor: pointer;
  color: var(--text-color);
}
.publish-checkbox input[type="checkbox"] {
  margin-top: 2px;
  flex-shrink: 0;
}
.publish-checkbox .publish-hint {
  margin-top: 0;
  margin-left: 0;
}

/* Reset old form layout inside publish page (exclude editor/tagify internals) */
.publish-page > fieldset,
.publish-page .publish-field fieldset,
.publish-page .publish-extra__body fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}
.publish-page > fieldset > .form-label,
.publish-page .publish-field fieldset > .form-label,
.publish-page .publish-extra__body fieldset > .form-label {
  float: none;
  width: 100%;
  padding: 0;
  margin: 0 0 6px;
  font-size: .875rem;
  font-weight: 500;
  color: var(--text-color);
}
.publish-page > fieldset > .form-element,
.publish-page .publish-field fieldset > .form-element,
.publish-page .publish-extra__body fieldset > .form-element {
  margin-left: 0;
  width: 100%;
}
.publish-page fieldset > .form-element > input,
.publish-page fieldset > .form-element > select,
.publish-page fieldset > .form-element > textarea {
  width: 100%;
  padding: 10px 12px;
  font-size: 15px;
  border: 1px solid var(--form-border-color, #ddd);
  border-radius: 8px;
  background: var(--form-bg-color);
}
.publish-page fieldset > .form-element > select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b7280' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 36px;
}
.publish-page fieldset .help {
  font-size: .8rem;
  color: var(--gray-600);
  margin-top: 4px;
}

/* Tagify inside publish page — higher specificity to beat .form-element .tagify from _inputs.css */
.publish-page .form-element .tagify {
  --tags-border-color: var(--form-border-color, #ddd);
  --tags-hover-border-color: var(--form-border-color, #ccc);
  --tags-focus-border-color: var(--blue, #3b82f6);
  border: 1px solid var(--tags-border-color);
  border-radius: 8px;
  min-height: 42px;
  width: 100%;
  padding: 0;
}

/* Cover upload drop zone */
.publish-cover-upload {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 32px 20px;
  border: 2px dashed var(--form-border-color, #ddd);
  border-radius: 10px;
  cursor: pointer;
  transition: border-color .15s, background .15s;
  color: var(--gray-600);
  font-size: .875rem;
  position: relative;
}
.publish-cover-upload:hover,
.publish-cover-upload.dragover {
  border-color: var(--blue);
  background: rgba(59,130,246,.04);
}
.publish-cover-upload input[type="file"] {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}
.publish-cover-upload svg {
  width: 40px;
  height: 40px;
  color: var(--gray);
}

/* Publish button — sizing & shape only; color comes from global .btn.btn-primary */
.publish-actions .btn {
  padding: 12px 36px;
  font-size: 15px;
  font-weight: 500;
  border-radius: 10px;
  cursor: pointer;
  transition: background .15s, transform .1s;
}
.publish-actions .btn:active {
  transform: scale(.98);
}

/* Publish help block */
.publish-help {
  margin-top: 16px;
  padding: 14px 18px;
  background: var(--gray-100);
  border-radius: 10px;
  font-size: .8125rem;
  color: var(--gray-600);
  line-height: 1.6;
  border-left: 3px solid var(--blue);
}

/* Override generic details/summary for publish-extra */
details.publish-extra {
  background-color: transparent;
  padding: 0;
  margin: 0;
}
details.publish-extra summary.publish-extra__toggle {
  background-color: transparent;
  list-style: none;
}
details.publish-extra summary.publish-extra__toggle::-webkit-details-marker {
  display: none;
}
details.publish-extra[open] > summary.publish-extra__toggle {
  padding: 12px 16px;
}

/* Tagify dropdown — already z-index:9999 in tagify.css, no override needed */

/* Cherry editor text visibility */
.publish-page .cherry-editor .CodeMirror,
.publish-page .cherry-editor .CodeMirror pre,
.publish-page .cherry .cherry-editor,
.publish-page .cherry-previewer {
  color: var(--text-color, #333);
}
.publish-page .cherry-editor .cm-s-default .cm-header {
  color: var(--text-color, #333);
}

/* Form element inputs inside publish — ensure text color */
.publish-page fieldset > .form-element > input,
.publish-page fieldset > .form-element > textarea {
  color: var(--form-text-color, #333);
}

/* Details extra selects */
.publish-page .publish-extra select {
  max-width: 200px;
}

/* Editor margin fix */
.publish-page #markdown-container {
  margin-top: 0;
}

@media (max-width: 780px) {
  .publish-page {
    padding: 16px 12px;
  }
  .publish-input--title {
    font-size: 17px;
  }
  .publish-url-row {
    flex-direction: column;
  }
}

.nickname {
  display: inline-block;
  color: var(--black);
}

.nickname.new::first-letter {
  color: var(--green);
}/*
 * Dropdown menu and navigation
 *
 * Выпадающее меню и навигация
 */

nav.menu__left {
  min-width: 15rem;
  overflow-x: hidden;
  overflow-y: auto;
  max-width: 17rem;
  padding: 1.5rem 1.5rem 1.5rem 0;
  display: block;
  position: fixed;
  top: 3.75rem;
  height: 100%;
}

.dropdown,
.menu,
.breadcrumbs {
  list-style: none;
  margin: 0;
  padding: 0;
}

.menu a i {
  font-size: 1.25rem;
  margin: 0 0.5rem;
}

.dropdown {
  display: none;
  position: absolute;
  right: 0;
  background-color: var(--dropdown-bg);
  box-shadow: var(--dropdown-box-shadow);
  padding: 0.5rem;
  z-index: 55;
  min-width: 215px;
  border-radius: var(--rounded);
}

/* right user menu */
.dropdown.user {
  margin-top: 10px;
  padding: 1rem 0 0.7rem 0;
}

.right-close {
  color: var(--gray-600);
  padding: 3px 8px 0 0;
  margin-top: -20px;
  float: right;
  display: block;
}

.user-box {
  padding: 0 0 0.4rem 1rem;
  display: flex;
  align-items: center;
  font-size: 0.975rem;
}

.user-nav li a {
  margin-left: 10px;
}

/* end */

.dropdown.left {
  left: 0;
  width: 150px;
}

.menu a,
.dropdown li>a,
.dropdown li>div {
  color: var(--black);
  padding: 8px;
  display: flex;
  flex-direction: row;
  align-items: center;
  min-width: 0;
  gap: .7rem;
  max-width: 190px;
}

.dropdown li:hover>a,
.dropdown li>a.active,
.dropdown li>div.active {
  color: var(--link-color-hover);
}

.nav-overflow {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu__left:not(.menu__active) li {
  margin-bottom: 5px;
}

.menu li.active,
.menu li:hover {
  background-color: var(--white);
  border-radius: var(--rounded);
}

.menu li:hover {
  transition-duration: .3s;
}

.menu li:hover>a {
  color: var(--gray);
}

.mess li:hover {
  background-color: var(--gray-100);
}

.breadcrumbs li {
  display: inline;
  color: var(--gray-600);
}

.breadcrumbs li:not(:last-child):after {
  content: " / ";
}

.menu .icon,
.dropdown ul .icon {
  color: var(--gray);
}

.menu .icon {
  min-width: 24px;
}

.menu .active .icon {
  color: var(--blue);
}

.menu .icon.gray-600 {
  color: var(--gray-600);
}

/* Navigation */
.nav-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 5px 0 20px 0;
}

ul.nav {
  list-style: none;
  align-items: center;
  display: flex;
  gap: 0.7rem;
  margin: 0;
  padding: 0;
}

ul.nav>li {
  padding: 2px 8px;
}

ul.nav.small>li {
  padding: 3px 6px;
}

ul.nav>li>a {
  color: var(--gray);
}

ul.nav>li.active {
  border-bottom: 2px solid var(--blue);
  color: var(--nav-color-active);
}

ul.nav>li.active>a {
  color: var(--nav-color-active);
}

ul.nav>li a:hover {
  color: var(--link-color-hover);
}

ul.nav>li.active>a {
  color: var(--nav-color-active);
}

ul.nav>li.active a:hover {
  color: var(--nav-color-active);
}

/* If it's tabs */
.content-tabs {
  display: none;
}

.content-tabs.tab_active {
  display: block;
}/*
 * Basic Styles
 *
 * Базовые стили
 */

html {
  height: 100%;
  overflow-y: scroll;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

:active,
:hover,
:focus {
  outline: 0;
  outline-offset: 0;
}

body {
  line-height: var(--line-height);
  font-family: var(--font-family);
  font-size: var(--font-size-base);
  background-color: var(--bg-color);
  color: var(--text-color);
  padding: 0;
  margin: 0;
}

/* W3C standard, сейчас только для Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--form-border-color) var(--bg-color);
}

/* для Chrome/Edge/Safari */
*::-webkit-scrollbar {
  height: 12px;
  width: 12px;
}

*::-webkit-scrollbar-track {
  background: var(--bg-color);
}

*::-webkit-scrollbar-thumb {
  background-color: var(--form-border-color);
  border-radius: var(--rounded);
  border: 2px solid var(--bg-color);
}

a {
  color: var(--link-color);
  cursor: pointer;
  text-decoration: none;
}

a:hover,
a:focus,
a:active {
  color: var(--link-color-hover);
}

img {
  border-radius: var(--rounded);
  vertical-align: middle;
}

.mr-auto {
  margin: 0 auto;
}

.m0 {
  margin: 0;
}

.m5 {
  margin: 5px;
}

.mt5 {
  margin-top: 5px;
}

.mr5 {
  margin-right: 5px;
}

.mb5 {
  margin-bottom: 5px;
}

.ml5 {
  margin-left: 5px;
}

.m10 {
  margin: 10px;
}

.mt10 {
  margin-top: 10px;
}

.mr10 {
  margin-right: 10px;
}

.mb10 {
  margin-bottom: 10px;
}

.ml10 {
  margin-left: 10px;
}

.m15 {
  margin: 15px;
}

.mt15 {
  margin-top: 15px;
}

.mr15 {
  margin-right: 15px;
}

.mb15 {
  margin-bottom: 15px;
}

.ml15 {
  margin-left: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mr20 {
  margin-right: 20px;
}

.mb20 {
  margin-bottom: 20px;
}

.ml20 {
  margin-left: 20px;
}

.ml30 {
  margin-left: 30px;
}

.p5 {
  padding: 5px;
}

.p15 {
  padding: 15px;
}

.p5-10 {
  padding: 5px 10px;
}

.p10-5 {
  padding: 10px 5px;
}

/*
 * Used colors (and background) in LibArea project
 *
 * Используемые цвета (и фон) в проекте LibArea
 */
.black {
  color: var(--black);
}

.white {
  color: var(--white);
}

.yellow {
  color: var(--yellow);
}

.green {
  color: var(--green);
}

.gray {
  color: var(--gray);
}

.gray-600 {
  color: var(--gray-600);
}

.sky {
  color: var(--sky);
}

.red {
  color: var(--red);
}

.brown {
  color: var(--brown);
}

.bg-black {
  background-color: var(--black);
}

.bg-white {
  background-color: var(--white);
}

.bg-green {
  background-color: var(--green);
}

.bg-yellow {
  background-color: var(--yellow);
}

.bg-lightgray {
  background-color: var(--gray-100);
}

.bg-violet {
  background-color: var(--violet);
}

.bg-blue {
  background-color: var(--blue);
}

.bg-red-200 {
  background-color: var(--red-200);
}

.bg-beige {
  background-color: var(--beige);
}

/*
 * Other
 *
 * Другое
 */
.shadow {
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.shadow-bottom {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.br-gray {
  border: 1px solid var(--gray-100);
}

.br-dotted {
  border: 1px dotted var(--form-border-color);
}

.br-bottom {
  border-bottom: 1px solid var(--form-border-color);
}

.br-lightgray {
  border: 5px solid var(--gray-100);
}

li.br-li-bottom-no:last-child {
  border-bottom: 1px solid transparent;
}

.w-auto {
  width: auto;
}

.w-20 {
  width: 20%;
}

.w-30 {
  width: 30%;
}

.w-40 {
  width: 40%;
}

.w-50 {
  width: 50%;
}

.w-60 {
  width: 60%;
}

.w-70 {
  width: 70%;
}

.w-90 {
  width: 90%
}

.w-100 {
  width: 100%;
}

.w20 {
  width: 20px;
}

.w30 {
  width: 30px;
}

.w40 {
  width: 40px;
}

.w50 {
  width: 50px;
}

.w60 {
  width: 60px;
}

.w94 {
  width: 94px;
}

.w160 {
  width: 160px;
}

.w200 {
  width: 200px;
}

.max-w-full {
  max-width: var(--max-w-full);
}

.max-w-md {
  max-width: var(--max-w-md);
}

.max-w-sm {
  max-width: var(--max-w-sm);
}

.text-sm {
  font-size: var(--font-size-sm);
}

.text-base {
  font-size: var(--font-size-base);
}

.text-lg {
  font-size: var(--font-size-lg);
}

.text-xl {
  font-size: var(--font-size-xl);
}

.text-2xl {
  font-size: var(--font-size-2xl);
}

.text-3xl {
  font-size: var(--font-size-3xl);
}

.grid {
  display: grid;
}

.gap {
  gap: var(--gap-base);
}

.gap-sm {
  gap: var(--gap-sm);
}

.gap-lg {
  gap: var(--gap-lg);
}

.flex {
  display: flex;
}

.fixed {
  position: fixed;
}

.flex-row {
  flex-direction: row;
}

.flex-col {
  flex-direction: column;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-nowrap {
  flex-wrap: nowrap
}

.flex-auto {
  flex: 1 1 0%;
}

.clear {
  clear: both;
}

.left {
  float: left;
}

.right {
  float: right;
}

.center {
  text-align: center;
}

.align-right {
  text-align: right;
}

.middle {
  vertical-align: middle;
}

.lowercase {
  text-transform: lowercase;
}

.uppercase {
  text-transform: uppercase;
}

.justify-between {
  justify-content: space-between;
}

.justify-center {
  justify-content: center;
}

.items-center {
  align-items: center;
}

.italic {
  font-style: italic;
}

.sticky {
  position: sticky;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.hidden {
  overflow: hidden;
}

.none {
  display: none;
}

.block {
  display: block;
}

.table {
  display: table;
}

.inline {
  display: inline-block;
}

.break-all {
  word-break: break-all;
}

.pointer {
  cursor: pointer;
}/*
 * For images (avatars, smileys, logos)
 *
 * Для изображений (аватарки, смайлкики, логотипы)
 */

.logo {
  color: var(--header-logo-color);
  font-size: 24px;
}

.favicons {
  height: 16px;
  width: 16px;
}

.img-sm {
  width: 24px;
  height: 24px;
}

.img-base {
  width: 36px;
  height: 36px;
}

.img-lg {
  width: 64px;
  height: 64px;
}

.img-xl {
  width: 94px;
  height: 94px;
}

.img-2xl {
  width: 160px;
  height: 160px;
}

.trigger img.img-base:hover {
  opacity: 0.7;
}

.profile-ava {
  position: absolute;
  z-index: 5;
  margin: 60px 10px 0 15px;
  border-radius: var(--rounded);
}

.box-cover-img {
  height: 200px;
  width: 100%;
}

.profile-bg-img.bg-profile {
  height: 90px;
}

.img-preview {
  max-width: 780px;
  position: relative;
}

.img-preview img {
  max-width: 100%;
  border: 1px solid #f3f3f3;
}

.cut-content img.cut-preview {
  max-width: calc(100% + 50px);
  margin-left: -25px;
  border-radius: 0px;
}

.cut-content img,
.content-body img {
  max-width: 100%;
}

.img-preview img:hover {
  box-shadow: 0 1px 8px 0 rgb(0 0 0 / 20%);
}

.CodeMirror-line {
  max-width: 800px;
}

img.emoji {
  max-width: 20px;
  display: inline-block;
  border-color: transparent;
}


#inputImg,
.prevImg {
  max-width: 100%;
  max-height: 400px;
  display: block;
  margin: 20px 0 15px 0;
}/*
 * @form styles
 *
 * Стили для форм
 */

input,
select,
textarea {
  background-color: var(--form-bg-color);
  border: 1px solid var(--form-border-color);
  color: var(--form-text-color);
  font-size: 16px;
  border-radius: var(--rounded);
  padding: 6px;
}

textarea {
  width: 100%;
}

/*fieldset input:not([type=radio]):not([type=checkbox]):not([type=range]),
fieldset select {
  width: 100%;
  min-height: 34px;
  padding: 5px;
} */

fieldset {
  border: 0;
  position: relative;
  padding: 10px 0;
}

fieldset.error input {
  border-color: var(--red);
}

.help {
  font-size: 0.875rem;
  color: var(--gray-600);
}

input:focus,
textarea:focus {
  border: 1px solid var(--form-color-active);
}

label {
  display: block;
  margin-bottom: 4px;
  font-size: 0.875rem;
}

::placeholder {
  color: var(--gray);
}

.form-element .tagify,
.form-element input,
.form-element select,
.form-element textarea {
  background-color: var(--form-bg-color);
  border: none;
  color: var(--form-text-color);
  font-size: 16px;
  border-radius: var(--rounded);
  padding: 6px;
  width: 80%;
}

.form-label {
  float: left;
  width: 17.07%;
  padding: 0 20px 0 0;
  line-height: 18px;
  margin-top: 2px;
  word-wrap: break-word;
  color: var(--gray);
}

.form-element {
  margin-left: 17.07%;
  margin-bottom: 4px;
  width: 82.93%;
}

fieldset.form-big input[type="text"] {
  font-size: 24px;
}

fieldset.form-big .input-label {
  margin-top: 14px;
}

.showPassword {
  position: absolute;
  color: var(--gray-600);
  right: 5px;
  margin: 2px;
}

@media screen and (max-width: 735px) {
  fieldset .input-label {
    margin: 0;
  }

  .form-element,
  .form-control-sublabel {
    width: 100%;
    margin-left: 0;
  }

  fieldset .form-label {
    width: 100%;
    padding: 0 0 6px 0;
    vertical-align: baseline;
    margin: 0;
  }

  .form-element .tagify,
  .form-element input,
  .form-element select,
  .form-element textarea {
    width: 100%;
  }
}/*
 * @table styles
 *
 * Таблицы
 */

table {
  margin-bottom: 1.5rem;
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

table td,
table th {
  font-size: 14px;
  padding: 5px;
}

table thead th {
  border-bottom: 2px solid rgba(222, 226, 230, 0.5);
  text-align: left;
}

table tr:nth-of-type(2n) {
  background-color: var(--gray-100);
}/*
 * @button styles
 *
 * Кнопки
 */

/* Buttons */
.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.35rem 1rem;
  border-radius: var(--rounded);
}

.btn-small {
  padding: 0.15rem 0.35rem;
  font-size: 0.775rem;
}

.btn-primary {
  color: var(--button-text-color);
  background-color: var(--button-bg-color);
  border-color: var(--button-border-color);
}

.btn-outline-primary {
  color: var(--button-outline-text-color);
  background-color: var(--button-outline-bg-color);
  border-color: var(--button-outline-border-color);
}

.btn-primary:hover,
.btn-primary:focus {
  color: var(--button-border-color-hover);
  opacity: 0.8;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
  color: var(--button-outline-text-color-hover);
  background-color: var(--button-outline-bg-color-hover);
  border-color: var(--button-outline-border-color-hover);
}

.focus-id:hover {
  opacity: 0.8;
}/*
 * Tags (facets)
 *
 * Теги (фасеты)
 */

.tag-grey,
.tag-yellow,
.tag-violet,
.tag-clear {
  font-size: 0.9rem;
  border-radius: var(--rounded);
  margin-left: 0.25em;
  padding: 0.08rem 0.35rem 0.15rem 0.35rem;
  text-transform: lowercase;
  text-decoration: none;
}

.tag-grey {
  background-color: #ececec;
  color: #6b3e4a;
}

.tag-grey:hover {
  background-color: #fff;
  color: #444;
}

.tag-yellow {
  background-color: #fffcd7;
  color: #7b5d5d;
}

.tag-violet {
  background-color: var(--violet);
  color: #544e4e;
}

.tag-clear {
  color: #707476;
  background-color: var(--white);
  border: 1px solid #e8ebed;
}

.tag-clear:hover {
  color: #707476;
  background-color: #f5f7f8;
}

/* Этикетки */
.label {
  font-style: italic;
  text-transform: lowercase;
  font-size: 0.875rem;
  padding: 3px 10px;
  font-weight: 400;
}

.label-grey {
  background-color: var(--violet);
  color: var(--gray-600);
}

.label-orange {
  background-color: #f9ddde;
  color: var(--gray);
}

.label-green {
  background-color: #f0f6f3;
  color: var(--green);
}

.label-teal {
  background-color: var(--teal);
  color: var(--white);
}

.label-teal:hover {
  background-color: #339a9c;
  transition: background .2s ease-out;
}

.tagify {
  width: 100%;
  max-width: 780px;
  border-radius: var(--rounded);
  background-color: var(--white);
}

.tagify--noTags[required] {
  --tags-border-color: var(--red);
}/*
 * Polls
 *
 * Голосования, опросы
 */

.poll {
  padding: 5px 10px;
  list-style: none;
  box-shadow: 0 0 5px rgb(0 0 0 / 10%);
  border: 1px solid #f3f4f6;
}

.poll-count {
  float: left;
  padding-right: 10px;
  width: 48px;
  font-size: .8em;
  margin-top: 1px;
  color: var(--gray-600);
}

.poll-result {
  padding-left: 48px;
}

.poll-label {
  font-size: .9em;
  color: var(--gray);
}

progress,
progress[role] {
  /* Отключает стилизацию — обычно не требуется, но полезно знать. */
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;

  /* Должен быть здесь для полифилла Safari, чтобы фоновые изображения работали должным образом. */
  background-size: auto;
}

progress {
  vertical-align: baseline;
  display: block;
  width: 100%;
  border: 0;
  margin-bottom: 20px;
  background: #f8f8f8;
  height: 7px;
  border-radius: var(--rounded-full);
  overflow: hidden;
}

::-webkit-progress-bar {
  background: #f8f8f8;
}

/* См. https://libarea.ru/post/1384/dev-protestiruem-opros-prikreplennyy-k-postu
progress::-webkit-progress-bar,
progress::-webkit-progress-value,
progress::-moz-progress-bar { background: #0085ee; } */


progress[value^="0"]::-moz-progress-bar,
progress[value^="1"]::-moz-progress-bar,
progress[value^="2"]::-moz-progress-bar,
progress[value^="0"]::-webkit-progress-value,
progress[value^="1"]::-webkit-progress-value,
progress[value^="2"]::-webkit-progress-value {
  background-color: #0ea5e9;
}



progress[value^="3"]::-moz-progress-bar,
progress[value^="4"]::-moz-progress-bar,
progress[value^="5"]::-moz-progress-bar,
progress[value^="3"]::-webkit-progress-value,
progress[value^="4"]::-webkit-progress-value,
progress[value^="5"]::-webkit-progress-value {
  background-color: #0085ee;
}


progress[value^="6"]::-moz-progress-bar,
progress[value^="7"]::-moz-progress-bar,
progress[value^="8"]::-moz-progress-bar,
progress[value^="6"]::-webkit-progress-value,
progress[value^="7"]::-webkit-progress-value,
progress[value^="8"]::-webkit-progress-value {
  background-color: green;
}

progress[value^="9"]::-moz-progress-bar,
progress[value="100"]::-moz-progress-bar,
progress[value^="9"]::-webkit-progress-value,
progress[value="100"]::-webkit-progress-value {
  background-color: red;
}/*
 * modal
 *
 * всплывающее
 */

.modal {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  z-index: 10;
  width: 100%;
  height: 100%;
}

.model-inner {
  background-color: white;
  border-radius: var(--rounded);
  max-width: 600px;
  padding: 2em;
  margin: auto;
}

.modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid black;
}

.overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: black;
  opacity: 0.75;
}

/* a11y-dialog */
.dialog-container {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 99;
}

.dialog-container[aria-hidden='true'] {
  display: none;
}

.dialog-overlay {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(43, 46, 56, 0.9);
  animation: fade-in 200ms both;
}

.dialog-content {
  background-color: rgb(255, 255, 255);
  margin: auto;
  z-index: 6;
  position: relative;
  animation: fade-in 400ms 200ms both, slide-up 400ms 200ms both;
  padding: 1em;
  max-width: 90%;
  width: 600px;
  border-radius: var(--rounded);
}

@media screen and (min-width: 700px) {
  .dialog-content {
    padding: 2em;
  }
}

.dialog-close {
  position: absolute;
  top: 0.5em;
  right: 0.5em;
  border: 0;
  padding: 0;
  background-color: transparent;
  font-size: 2em;
  text-align: center;
  cursor: pointer;
  transition: 0.15s;
  color: var(--gray-600);
}

@media screen and (min-width: 700px) {
  .dialog-close {
    top: 5px;
  }
}/*
 * @Pop-up notifications
 *
 * Всплывающие уведомеления
 */

.notice {
  animation-name: toastEffect;
  animation-timing-function: ease-in;
  background-color: var(--gray);
  border-radius: var(--rounded);
  color: var(--white);
  display: inline-block;
  padding: 2px 20px;
  position: fixed;
  text-align: center;
  text-decoration: none;
  z-index: 2147483647;
}

.notice-bottom {
  bottom: 1rem;
}

.notice-center {
  left: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: fit-content;
  right: 0;
}

.notice-left {
  left: 1rem;
}

.notice-right {
  right: 1rem;
}

.notice-top {
  top: 1rem;
}


.dropdown.notif {
  margin-top: 40px;
  padding: 1rem 0 0.7rem 0;
  min-width: 305px;
}

@keyframes toastEffect {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }

  20% {
    opacity: 1;
  }

  80% {
    opacity: 1;
  }
}/*
 * @media styles
 *
 * Медиа-запросы
 */

@media (max-width: 1260px) {
  aside {
    display: none;
  }
}

@media (max-width: 1060px) {
  .nav-sidebar {
    display: none;
  }

 .content {
   margin-left: 0;
   display: block;
 }

  main {
    width: var(--max-w-full);
    max-width: var(--max-w-full);
    margin-left: 0;
    padding: 0;
  }
  
  .menu__button {
    transition: 0.3s ease;
    display: block;
  }

  .menu__left {
    opacity: 0;
    visibility: hidden;
    transition-property: opacity, visibility;
    z-index: 98;
    left: 0;
    top: 0;
    bottom: 0;
    min-width: 180px;
    background-color: var(--dropdown-bg);
    box-shadow: 5px 0 5px -5px rgba(0, 0, 0, 0.25);
    overflow-x: hidden;
    position: absolute;
    padding-right: 0;
    scrollbar-width: thin;
  }

  nav.menu__active,
  nav.menu__active .menu__left,
  nav.menu__active .menu__left.menu-none {
    opacity: 1;
    visibility: visible;
    transition: 0.25s;
    position: fixed;
    display: block;
    padding-right: 20px;
  }

  .nav-sidebar.menu__active .menu__left .menu li {
    padding-left: 10px;
  }

  .comment_level-left-1 {
    margin-left: 10px;
  }

  .comment_level-left-2 {
    margin-left: 15px;
  }

  .comment_level-left-3 {
    margin-left: 30px;
  }

  .comment_level-left-4,
  .comment_level-left-5  {
    margin-left: 45px;
  }

  header.show .d-header-post.none,
  header.show .d-header-facet.none {
    max-width: 300px;
  }
}

@media (max-width: 780px) {
  .mb-w80 {
    width: 80px;
  }

  .mb-w150 {
    width: 150px;
  }

  .mb-p10 {
    padding: 10px;
  }

  .mb-mt5 {
    margin-top: 5px;
  }

  .mb-mt25 {
    margin-top: 25px;
  }

  .mb-ml10 {
    margin-left: 10px;
  }

  .mb-text-xl {
    font-size: 1.25rem;
  }

  .text-2xl {
    font-size: 1.1rem;
  }

  .logo {
    font-size: 18px;
  }

  .gap-lg {
    gap: var(--gap-base);
  }

  .dropdown.notif {
    min-width: 265px;
  }

  .mb-img-2xl {
    height: 65px;
    width: 65px;
  }

  .box-cover-img {
    height: 75px;
  }

  li .comment-folder {
    font-size: 11pt;
    margin-left: -25px;
  }

  .comment-body img {
    max-width: 240px;
  }

  .title {
    font-size: 1.2125rem;
  }

  .nav-bar {
    margin: 10px 5px 15px 5px;
  }

  header .dropdown.publ {
	right: -70px;  
  }

	#contentWrapper {
	  padding-left: 0; 
	  padding-right: 0;
	}

  .mb-block,
  #contentWrapper {
    display: block;
  }

  article {
    border-radius: 0;
  }

  .mb-w-100,
  iframe,
  video {
    width: var(--max-w-full);
  }

  .mb-max-w-full {
    max-width: var(--max-w-full);
  }

  .box {
    padding: 1rem;
    border-radius: var(--rounded-none);
  }

  .box-logo {
    width: auto;
  }

  .mb-none {
    display: none;
  }

  footer ul {
    padding-left: 0;
  }

  .wrap {
    padding-left: 0;
    padding-right: 0;
  }

  .comment_level-left-1 {
    margin-left: 10px;
  }

  .comment_level-left-2 {
    margin-left: 20px;
  }

  .comment_level-left-3 {
    margin-left: 30px;
  }

  .comment_level-left-4 {
    margin-left: 40px;
  }

  .comment_level-left-5 {
    margin-left: 40px;
  }

  .comment_level-left-3 img,
  .comment_level-left-4 img,
  .comment_level-left-5 img {
    max-width: 180px;
  }

  .cherry .cherry-toolbar {
    padding: 0 5px;
  }

  .cherry-toolbar-button.cherry-toolbar-split,
  .cherry-toolbar-button.cherry-toolbar-strike {
    display: none;
  }

  table {
    overflow-y: scroll;
    display: inline-block;
  }

}/*
 * Code highlighting
 *
 * Выделение кода
 */

code {
  color: var(--brown);
  background-color: var(--violet);
  padding: 3px;
  border-radius: var(--rounded);
  font-size: 14px;
}

pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  background: var(--violet);
  padding: 0.2em 0.5em;
}

/* компенсируем tag*/
.token.tag,
.token.tag:hover {
  background-color: transparent;
}

/* PrismJS 1.29.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript+c+cpp+markup-templating+php+sql&plugins=toolbar+copy-to-clipboard */
code[class*=language-],
pre[class*=language-] {
  color: #000;
  background: 0 0;
  font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
  font-size: 1em;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  word-wrap: normal;
  line-height: 1.5;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  hyphens: none
}

code[class*=language-] ::-moz-selection,
code[class*=language-]::-moz-selection,
pre[class*=language-] ::-moz-selection,
pre[class*=language-]::-moz-selection {
  text-shadow: none;
  background: #b3d4fc
}

code[class*=language-] ::selection,
code[class*=language-]::selection,
pre[class*=language-] ::selection,
pre[class*=language-]::selection {
  text-shadow: none;
  background: #b3d4fc
}

@media print {

  code[class*=language-],
  pre[class*=language-] {
    text-shadow: none
  }
}

pre[class*=language-] {
  padding: 1em;
  margin: .5em 0;
  overflow: auto
}

:not(pre)>code[class*=language-],
pre[class*=language-] {
  background: var(--violet);
}

:not(pre)>code[class*=language-] {
  padding: .1em;
  border-radius: var(--rounded);
  white-space: normal
}

.token.cdata,
.token.comment,
.token.doctype,
.token.prolog {
  color: #708090
}

.token.punctuation {
  color: #999
}

.token.namespace {
  opacity: .7
}

.token.boolean,
.token.constant,
.token.deleted,
.token.number,
.token.property,
.token.symbol,
.token.tag {
  color: #905
}

.token.attr-name,
.token.builtin,
.token.char,
.token.inserted,
.token.selector,
.token.string {
  color: #690
}

.language-css .token.string,
.style .token.string,
.token.entity,
.token.operator,
.token.url {
  color: #9a6e3a;
}

.token.atrule,
.token.attr-value,
.token.keyword {
  color: #07a
}

.token.class-name,
.token.function {
  color: #dd4a68
}

.token.important,
.token.regex,
.token.variable {
  color: #e90
}

.token.bold,
.token.important {
  font-weight: 700
}

.token.italic {
  font-style: italic
}

.token.entity {
  cursor: help
}

div.code-toolbar {
  position: relative;
  max-width: 695px;
}

div.code-toolbar>.toolbar {
  position: absolute;
  z-index: 10;
  top: .3em;
  right: .2em;
  transition: opacity .3s ease-in-out;
  opacity: 0
}

div.code-toolbar:hover>.toolbar {
  opacity: 1
}

div.code-toolbar:focus-within>.toolbar {
  opacity: 1
}

div.code-toolbar>.toolbar>.toolbar-item {
  display: inline-block
}

div.code-toolbar>.toolbar>.toolbar-item>a {
  cursor: pointer
}

div.code-toolbar>.toolbar>.toolbar-item>button {
  background: 0 0;
  border: 0;
  color: inherit;
  font: inherit;
  line-height: normal;
  overflow: visible;
  padding: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

div.code-toolbar>.toolbar>.toolbar-item>a,
div.code-toolbar>.toolbar>.toolbar-item>button,
div.code-toolbar>.toolbar>.toolbar-item>span {
  color: #bbb;
  font-size: .8em;
  padding: 0 .5em;
  background: var(--violet);
  background: rgba(224, 224, 224, .2);
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, .2);
  border-radius: var(--rounded);
}

div.code-toolbar>.toolbar>.toolbar-item>a:focus,
div.code-toolbar>.toolbar>.toolbar-item>a:hover,
div.code-toolbar>.toolbar>.toolbar-item>button:focus,
div.code-toolbar>.toolbar>.toolbar-item>button:hover,
div.code-toolbar>.toolbar>.toolbar-item>span:focus,
div.code-toolbar>.toolbar>.toolbar-item>span:hover {
  color: inherit;
  text-decoration: none;
}/*
 * Additional styles
 *
 * Дополнительные стили
 */

@font-face {
  font-family: Roboto;
  src: url(/assets/fonts/Roboto-Regular.ttf);
  font-display: swap;
}

.active {
  color: red;
}