
@font-face {
  font-family: "Oswald";
  src: url("../../assets/fonts/Oswald/oswald-cyrillic.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Oswald";
  src: url("../../assets/fonts/Oswald/oswald-latin.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20AC, U+2122;
}

:root {
  --mk-top-h: calc(104 * min(1px, calc(100vw / 1443)));
  --mk-top-h-stuck: calc(84 * min(1px, calc(100vw / 1443)));
}

html { -webkit-tap-highlight-color: transparent; }

@property --mk-pop {
  syntax: "<number>";
  inherits: false;
  initial-value: 1;
}

.mk-top {
  --u: min(1px, calc(100vw / 1443));

  --mk-grad: linear-gradient(255deg, #8400ff 0%, #bb00ff 100%);

  --mk-bar-bg: rgba(0, 0, 0, 0.536);

  --mk-pop-ease: linear(0, 0.008 1%, 0.03 2%, 0.074 3.2%, 0.133 4.5%, 0.262 6.8%, 0.537 11%, 0.66 13%, 0.784 15.2%, 0.877 17.2%, 0.953 19.2%, 1.012 21.2%, 1.06 23.5%, 1.09 25.8%, 1.107 28.7%, 1.105 32%, 1.016 46.5%, 1 50.7%, 1);

  position: sticky;
  top: 0;
  z-index: 60;
  display: flex;
  align-items: center;
  gap: calc(20 * var(--u));
  height: var(--mk-top-h);
  padding: 0 calc(41 * var(--u));
  transition: height .22s ease;

  overflow: hidden;
  overflow-x: clip;
  overflow-y: visible;
}

@supports not (transition-timing-function: linear(0, 1)) {
  .mk-top { --mk-pop-ease: var(--ease-quick); }
}

.mk-top::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: #05070d;
  background-image: url("../../assets/halloween/page-bg.webp");
  background-repeat: no-repeat;
  background-size: calc(1983 * var(--pu, calc(100vw / 1443))) auto;
  background-position:
    calc(-272 * var(--pu, calc(100vw / 1443)))
    calc(-533 * var(--pu, calc(100vw / 1443)));

  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.26);
  transition: opacity .22s ease;
}

.mk-top.is-stuck { height: var(--mk-top-h-stuck); }
.mk-top.is-stuck::before { opacity: 0; }

.mk-top.is-stuck .mk-top-brand {
  transform: translateX(calc(-100% - 41 * var(--u)));
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.mk-top.is-stuck .mk-top-bar {
  box-shadow: 0 calc(6 * var(--u)) calc(22 * var(--u)) rgba(0, 0, 0, 0.45);
}

.mk-top-toggle {
  --mk-burger-w: calc(18 * var(--u));
  --mk-burger-h: max(2px, calc(2.2 * var(--u)));
  --mk-burger-gap: calc(6 * var(--u));

  position: absolute;
  right: calc(49 * var(--u));
  top: 50%;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(41 * var(--u));
  height: calc(41 * var(--u));
  border: 0;
  border-radius: 50%;
  background: var(--mk-grad);
  color: #fff;
  cursor: pointer;
  transform: translateY(-50%);
  scale: var(--mk-pop);
  transition: filter .15s, background .18s ease, --mk-pop var(--dur-quick) var(--mk-pop-ease);
}
.mk-top-toggle::before,
.mk-top-toggle::after {
  content: "";
  position: absolute;
  inset: 0;
  width: var(--mk-burger-w);
  height: var(--mk-burger-h);
  margin: auto;
  border-radius: 2px;
  background: currentColor;
  transition: transform .22s ease, box-shadow .22s ease;
}
.mk-top-toggle::before {
  box-shadow: 0 calc(-1 * var(--mk-burger-gap)) 0 currentColor, 0 var(--mk-burger-gap) 0 currentColor;
}
.mk-top.is-nav-open .mk-top-toggle::before {
  transform: rotate(45deg);
  box-shadow: 0 0 0 currentColor, 0 0 0 currentColor;
}
.mk-top.is-nav-open .mk-top-toggle::after { transform: rotate(-45deg); }
.mk-top-toggle:hover { filter: brightness(1.12); }
.mk-top-toggle:focus-visible { outline: 2px solid #e4bfff; outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
  .mk-top,
  .mk-top::before,
  .mk-top-bar,
  .mk-top-toggle,
  .mk-top-toggle::before,
  .mk-top-toggle::after,
  .mk-top-brand { transition: none; }
  .mk-chat-badge { animation: none; }
}

.mk-top-brand {
  display: flex;
  align-items: center;
  gap: calc(8 * var(--u));
  text-decoration: none;
  flex: 0 0 auto;

  transition: transform .28s ease, opacity .22s ease, visibility .28s;
}
.mk-top-mark {
  width: calc(56 * var(--u));
  height: calc(56 * var(--u));
  display: block;
  scale: var(--mk-pop);
  transition: --mk-pop var(--dur-quick) var(--mk-pop-ease);
}
@media (hover: hover) {
  .mk-top-brand:hover .mk-top-mark { --mk-pop: 1.286; }
}
.mk-top-brand.is-tap .mk-top-mark { --mk-pop: 1.286; }

.mk-top-word {
  width: calc(255 * var(--u));
  height: auto;
  display: block;
}

.mk-top .mk-top-lang { display: none; }

.mk-top-bar {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  min-width: 0;
  margin-left: auto;
  height: calc(57 * var(--u));
  padding: 0 calc(65 * var(--u)) 0 calc(8 * var(--u));
  background: var(--mk-bar-bg);
  border-radius: 999px;

  transition: box-shadow .22s ease;
}

.mk-nav {
  position: fixed;
  top: calc(var(--mk-sheet-top, var(--mk-top-h)) + 10px);
  right: calc(41 * var(--u));
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  width: 440px;
  max-width: calc(100vw - 28px);
  box-sizing: border-box;
  margin: 0;
  padding: 12px;
  list-style: none;
  background: #110616;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.mk-top.is-nav-open .mk-nav {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition: opacity .18s ease, transform .18s ease, visibility 0s;
}
.mk-nav li { display: flex; min-width: 0; }
.mk-nav li:last-child:nth-child(odd) { grid-column: 1 / -1; }

.mk-pill {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  min-width: 0;
  height: 56px;
  gap: 12px;
  padding: 0 16px;
  border: 0;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.07);
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;

  font-family: "Bebas Neue", "Oswald", "Arial Narrow", sans-serif;

  font-size: 19px;
  line-height: 1;
  text-transform: uppercase;

  -webkit-text-stroke: 0 currentColor;
  transition: background .15s, filter .15s, transform .08s,
              gap var(--dur-quick) var(--ease-quick),
              -webkit-text-stroke-width var(--dur-quick) var(--ease-quick);
}
.mk-pill svg {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
}
.mk-pill svg path { transition: stroke-width var(--dur-quick) var(--ease-quick); }
.mk-pill .mk-pill-text {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mk-pill:hover,
.mk-pill:active,
.mk-pill.is-pressed,
.mk-pill:focus-visible {
  background: rgba(255, 255, 255, 0.13);
  -webkit-text-stroke-width: .55px;
}
.mk-pill:hover svg path,
.mk-pill:active svg path,
.mk-pill.is-pressed svg path,
.mk-pill:focus-visible svg path { stroke-width: 2.7px; }
@media (hover: hover) {
  .mk-pill:hover,
  .mk-pill:focus-visible { gap: 16px; }
}
.mk-pill:active { transform: translateY(1px); }
.mk-pill:focus-visible { outline: 2px solid #e4bfff; outline-offset: -2px; }

.mk-pill[aria-current="page"] { background: var(--mk-grad); }
.mk-pill[aria-current="page"]:hover,
.mk-pill[aria-current="page"].is-pressed { filter: brightness(1.12); }

@media (prefers-reduced-motion: reduce) {
  .mk-nav,
  .mk-top.is-nav-open .mk-nav,
  .mk-pill, .mk-pill svg path, .mk-top-mark { transition: none; }
}

.mk-pill[data-soon],
.mk-chat[data-soon],
.mk-avatar[data-soon] { opacity: .72; }
.mk-pill[data-soon]:hover,
.mk-chat[data-soon]:hover,
.mk-avatar[data-soon]:hover { filter: brightness(1.05); }

.mk-tg,
.mk-chat,
.mk-avatar {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: calc(41 * var(--u));
  height: calc(41 * var(--u));
  border: 0;
  border-radius: 50%;
  background: var(--mk-grad);
  color: #fff;
  cursor: pointer;
  scale: var(--mk-pop);
  transition: filter .15s, transform .08s, --mk-pop var(--dur-quick) var(--mk-pop-ease);
}
@media (hover: hover) {
  .mk-tg:hover,
  .mk-chat:hover,
  .mk-avatar:hover,
  .mk-top-toggle:hover { --mk-pop: 1.174; }
}
.mk-tg.is-tap,
.mk-chat.is-tap,
.mk-avatar.is-tap { --mk-pop: 1.174; }
@media (prefers-reduced-motion: reduce) {
  .mk-tg, .mk-chat, .mk-avatar { transition: none; }
}

.mk-chat,
.mk-avatar { margin-left: calc(16 * var(--u)); }

.mk-tg svg,
.mk-chat svg {
  width: calc(21 * var(--u));
  height: calc(21 * var(--u));
  display: block;
}
.mk-avatar svg {
  width: calc(30 * var(--u));
  height: calc(30 * var(--u));
  display: block;
}

.mk-chat-badge {
  position: absolute;
  top: calc(-4 * var(--u));
  right: calc(-6 * var(--u));
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: max(16px, calc(21 * var(--u)));
  height: max(16px, calc(21 * var(--u)));
  padding: 0 max(4px, calc(6 * var(--u)));
  border-radius: 999px;
  background: #ff3b4f;
  color: #fff;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: max(11px, calc(14 * var(--u)));
  line-height: 1;
  box-shadow: 0 0 0 2px #05070d, 0 2px 6px rgba(0, 0, 0, 0.45);
  pointer-events: none;
  animation: mk-badge-in .28s cubic-bezier(.3, 1.6, .5, 1);
}
@keyframes mk-badge-in {
  from { transform: scale(.3); opacity: 0; }
}

.mk-tg:hover,
.mk-chat:hover,
.mk-avatar:hover,
.mk-chat.is-pressed,
.mk-avatar.is-pressed { filter: brightness(1.12); }
.mk-tg:active,
.mk-chat:active,
.mk-avatar:active { transform: translateY(1px); }
.mk-tg:focus-visible,
.mk-chat:focus-visible,
.mk-avatar:focus-visible { outline: 2px solid #e4bfff; outline-offset: 3px; }

a.mk-avatar { text-decoration: none; }

.mk-promote {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: calc(41 * var(--u));
  margin-right: calc(16 * var(--u));
  padding: 0 calc(18 * var(--u));
  border-radius: 999px;
  background: var(--mk-grad);
  color: #fff;
  font-family: "Bebas Neue", "Oswald", "Arial Narrow", sans-serif;
  font-size: calc(19 * var(--u));
  line-height: 1;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  scale: var(--mk-pop);
  transition: filter .15s, transform .08s, --mk-pop var(--dur-quick) var(--mk-pop-ease);
}
@media (hover: hover) {
  .mk-promote:hover { --mk-pop: 1.08; }
}
.mk-promote.is-tap { --mk-pop: 1.08; }
.mk-promote:hover,
.mk-promote.is-pressed { filter: brightness(1.12); }
.mk-promote:active { transform: translateY(1px); }
.mk-promote:focus-visible { outline: 2px solid #e4bfff; outline-offset: 3px; }
.mk-promote[aria-current="page"] { box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.75); }
.mk-promote { position: relative; }
.mk-promote-count {
  position: absolute;
  top: calc(-6 * var(--u));
  right: calc(-6 * var(--u));
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: max(17px, calc(21 * var(--u)));
  height: max(17px, calc(21 * var(--u)));
  padding: 0 max(4px, calc(6 * var(--u))) 2px;
  border-radius: 999px;
  background: #6ef3de;
  color: #03231f;
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-size: max(11px, calc(14 * var(--u)));
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0;
  line-height: 1;
  box-shadow: 0 0 0 2px #05070d, 0 2px 6px rgba(0, 0, 0, 0.45);
  pointer-events: none;
  animation: mk-badge-in .28s cubic-bezier(.3, 1.6, .5, 1);
}
@media (prefers-reduced-motion: reduce) {
  .mk-promote { transition: none; }
}

.mk-avatar-img {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  object-fit: cover;
}

.mk-user-menu {
  position: fixed;
  z-index: 80;
  min-width: 200px;
  max-width: min(80vw, 280px);
  padding: 8px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(17, 6, 22, 0.96);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.5);
  color: #fff;
}

.mk-user-name {
  padding: 6px 10px 9px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  margin-bottom: 6px;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mk-user-name span:not(.nx-nick-badge) {
  display: block;
  font-weight: 400;
  font-size: 13px;
  opacity: .65;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mk-user-item {
  display: block;
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 14px;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition: background .14s ease;
}
.mk-user-item:hover { background: rgba(255, 255, 255, 0.09); }
.mk-user-item:focus-visible { outline: 2px solid #e4bfff; outline-offset: -2px; }
.mk-user-item[disabled] { opacity: .5; cursor: default; }

.mk-user-lang {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 6px 4px 4px 10px;
}
.mk-user-item + .mk-user-lang {
  margin-top: 6px;
  padding-top: 11px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.mk-user-lang-label {
  font-size: 14px;
  opacity: .72;
}
.mk-user-lang .lang-switch { flex: 0 0 auto; }

.mk-user-out {
  margin-top: 6px;
  padding-top: 11px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 0 0 9px 9px;
}

.mk-soon {
  position: fixed;
  left: 50%;
  top: calc(var(--mk-top-h) + 10px);
  z-index: 70;
  transform: translate(-50%, -8px);
  max-width: min(92vw, 420px);
  padding: 11px 20px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(17, 6, 22, 0.92);
  color: #fff;
  font-family: "Bebas Neue", "Oswald", "Arial Narrow", sans-serif;
  font-size: 17px;
  line-height: 1.15;
  letter-spacing: .02em;
  text-transform: uppercase;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease, transform .18s ease;
}
.mk-soon.is-on {
  opacity: 1;
  transform: translate(-50%, 0);
}
@media (prefers-reduced-motion: reduce) {
  .mk-soon { transition: none; }
}

@media (max-width: 1000px) {
  :root {
    --mk-top-h: 76px;
    --mk-top-h-stuck: 62px;
  }
  .mk-top {
    --u: 0.7px;
    gap: 10px;
    padding: 0 14px;
  }
  .mk-top-word { display: none; }
  .mk-top-mark { width: 36px; height: 36px; }

  .mk-top-bar {
    height: 48px;
    padding: 0 54px 0 6px;
  }

  .mk-tg,
  .mk-chat,
  .mk-avatar { width: 36px; height: 36px; }
  .mk-chat,
  .mk-avatar { margin-left: 12px; }
  .mk-tg svg,
  .mk-chat svg { width: 18px; height: 18px; }
  .mk-promote { height: 36px; margin-right: 12px; padding: 0 14px; font-size: 15px; }
  .mk-avatar svg { width: 24px; height: 24px; }

  .mk-top.is-stuck .mk-top-bar { box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45); }

  .mk-top-toggle {
    --mk-burger-w: 16px;
    --mk-burger-h: 2px;
    --mk-burger-gap: 5.5px;
    right: 20px;
    width: 36px;
    height: 36px;
  }

  .mk-nav { right: 14px; }
}

@media (max-width: 760px) {
  :root {
    --mk-top-h: 62px;
    --mk-top-h-stuck: 54px;
  }
  .mk-top::before { background-image: url("../../assets/halloween/page-bg-m.webp"); }

  .mk-top { gap: 8px; padding: 0 12px; }

  .mk-top-brand { margin-right: auto; }
  .mk-top-mark { width: 34px; height: 34px; }
  .mk-top-word { display: block; width: clamp(88px, 30vw, 118px); }

  .mk-top-bar {
    gap: 8px;
    height: auto;
    margin-left: 0;
    padding: 0;
    background: none;
  }

  .mk-tg,
  .mk-chat,
  .mk-avatar { width: 42px; height: 42px; margin-left: 0; }
  .mk-tg svg,
  .mk-chat svg { width: 20px; height: 20px; }
  .mk-avatar svg { width: 27px; height: 27px; }
  .mk-promote { height: 42px; margin-right: 0; padding: 0 14px; font-size: 17px; }

  .mk-nav {
    top: var(--mk-sheet-top, var(--mk-top-h));
    left: 0;
    right: 0;
    width: auto;
    max-width: none;
    padding: 14px 12px 16px;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 0;
  }

  .mk-pill { height: 58px; }

  .mk-top::after {
    content: "";
    position: fixed;
    inset: var(--mk-sheet-top, var(--mk-top-h)) 0 0;
    z-index: 1;
    background: rgba(0, 0, 0, 0.55);
    opacity: 0;
    visibility: hidden;
    transition: opacity .18s ease, visibility .18s;
  }
  .mk-top.is-nav-open::after {
    opacity: 1;
    visibility: visible;
    transition: opacity .18s ease, visibility 0s;
  }

  .mk-top-toggle {
    --mk-burger-w: 20px;
    --mk-burger-h: 2.4px;
    --mk-burger-gap: 6.5px;
    position: relative;
    top: auto;
    right: auto;
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.1);
    transform: none;
  }
  .mk-top.is-nav-open .mk-top-toggle { background: var(--mk-grad); }

  .mk-soon { font-size: 15px; padding: 9px 16px; }
}

@media (max-width: 360px) {
  .mk-top { gap: 6px; padding: 0 8px; }
  .mk-top-bar { gap: 6px; }
  .mk-top-mark { width: 30px; height: 30px; }

  .mk-tg,
  .mk-chat,
  .mk-avatar,
  .mk-top-toggle { width: 40px; height: 40px; }
  .mk-promote { height: 40px; padding: 0 12px; font-size: 16px; }

  .mk-nav { gap: 8px; padding: 12px 8px 14px; }
  .mk-pill { gap: 8px; padding: 0 10px; font-size: 16px; }
}

@media (max-width: 499px) {
  .mk-top-word { display: none; }
}

@media (max-width: 340px) {
  .mk-top,
  .mk-top-bar { gap: 5px; }
  .mk-tg,
  .mk-chat,
  .mk-avatar,
  .mk-top-toggle { width: 38px; height: 38px; }
  .mk-promote { height: 38px; padding: 0 8px; font-size: 15px; letter-spacing: .02em; }
}

@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
  .mk-top::after,
  .mk-top.is-nav-open::after { transition: none; }
}

.mk-top ~ .toolbar .tb-brand,
.mk-top ~ .toolbar .nav-seg { display: none; }
