/* =====================================================================
   crimson.css — тема «Багровая Луна» (Multeria)
   Подключается последним (после main.css / custom.css).
   1) Токены  2) Общая «обвязка» всех страниц: шапка, меню, язык,
   информер, полоса серверов, модалки, кнопки, футер  3) Главная (.cm-home)
   Логика шаблона (app.js, data-* хуки, Twig) не меняется.
   ===================================================================== */

:root{
  --cm-ink:#0b0908; --cm-ink-2:#120d0c; --cm-ink-3:#1a1210; --cm-ink-4:#221815;
  --cm-blood:#b5201f; --cm-blood-lo:#7d1514; --cm-blood-hi:#d6463c;
  --cm-gold:#e3b25c; --cm-gold-dim:#8a6a34; --cm-gold-hi:#f3c978;
  --cm-fg:#efe6dc; --cm-fg-dim:#b2a79c; --cm-line:rgba(227,178,92,.20);
  --cm-on:#49c06a; --cm-off:#9a3b38;
  --cm-f-disp:"Cinzel Decorative","Playfair Display SC",Georgia,serif;
  --cm-f-cap:"Cinzel","Playfair Display SC",Georgia,serif;
  --cm-f-serif:"Playfair Display SC",Georgia,serif;
  --cm-f-body:"Noto Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --cm-nav-h:70px;
  --cm-wide:1560px;
}

/* ---------------------------------------------------------------------
   Кнопки
   --------------------------------------------------------------------- */
.cm-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:11px 20px; border-radius:2px; border:1px solid var(--cm-gold-dim);
  background:transparent; color:var(--cm-gold); text-decoration:none;
  font-family:var(--cm-f-body); font-weight:600; font-size:14px; line-height:1.2;
  letter-spacing:.02em; white-space:nowrap; cursor:pointer; transition:background .2s,color .2s,border-color .2s,filter .2s;
}
.cm-btn:hover{ background:rgba(227,178,92,.08); color:var(--cm-gold-hi); }
.cm-btn:focus-visible{ outline:2px solid var(--cm-gold); outline-offset:2px; }
.cm-btn_p{
  background:linear-gradient(180deg,var(--cm-blood),var(--cm-blood-lo)); border-color:var(--cm-blood);
  color:#fff; box-shadow:0 0 0 1px rgba(227,178,92,.25) inset;
}
.cm-btn_p:hover{ background:linear-gradient(180deg,var(--cm-blood),var(--cm-blood-lo)); color:#fff; filter:brightness(1.12); }
.cm-btn_sm{ padding:8px 14px; font-size:13px; }
.cm-link{ color:var(--cm-gold); text-decoration:none; font-family:var(--cm-f-body); font-size:14px; }
.cm-link:hover{ color:var(--cm-gold-hi); text-decoration:underline; }

/* ---------------------------------------------------------------------
   Бренд
   --------------------------------------------------------------------- */
.cm-brand{
  display:inline-flex; align-items:center; gap:11px; text-decoration:none; color:var(--cm-fg);
  font-family:var(--cm-f-disp); font-weight:700; font-size:18px; letter-spacing:.06em; white-space:nowrap;
}
.cm-brand__mk{
  width:30px; height:30px; flex-shrink:0; border:1px solid var(--cm-gold-dim); border-radius:50%;
  display:grid; place-items:center; color:var(--cm-gold); font-size:15px; font-family:serif;
  background:radial-gradient(circle at 50% 35%,rgba(181,32,31,.5),transparent 70%);
}

/* ---------------------------------------------------------------------
   Информер (верхняя плашка)
   --------------------------------------------------------------------- */
.top-informer{
  background:linear-gradient(90deg,var(--cm-blood-lo),var(--cm-blood) 55%,var(--cm-blood-lo)) !important;
  border-bottom:1px solid rgba(227,178,92,.35) !important; box-shadow:0 6px 18px rgba(0,0,0,.35) !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
}
.top-informer::before{ display:none !important; }
.top-informer__inner{ padding:7px 20px !important; max-width:1220px !important; }
.top-informer__line{
  color:#fff !important; text-shadow:none !important; font-family:var(--cm-f-body) !important;
  font-size:12.5px !important; font-weight:600 !important; letter-spacing:.02em !important;
}
.top-informer__line + .top-informer__line{ font-weight:400 !important; opacity:.88; }
.top-informer__btn{
  background:#fff !important; color:var(--cm-blood-lo) !important; border:0 !important; border-radius:2px !important;
  box-shadow:none !important; padding:6px 14px !important; font-family:var(--cm-f-body) !important; font-size:12px !important; font-weight:700 !important;
}
.top-informer__close{ color:#fff !important; background:transparent !important; border:0 !important; opacity:.85; cursor:pointer; }
.top-informer__close:hover{ opacity:1; }

/* ---------------------------------------------------------------------
   Шапка (все страницы)
   --------------------------------------------------------------------- */
body.body [data-section=navigation]{
  background:linear-gradient(180deg,rgba(8,6,5,.97),rgba(8,6,5,.88)) !important;
  border-bottom:1px solid var(--cm-line);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
}
body.body [data-section=navigation]::after{ display:none !important; }
.navigation{ height:var(--cm-nav-h) !important; align-items:center; gap:22px; }
.navigation__box_side_left{ align-self:center; }
.navigation__box_side_right{ gap:14px; margin-right:0 !important; }
.navigation__lang{ margin:0 !important; }

@media (min-width:1200px){
  .menu__list{ gap:4px !important; }
  .menu__el{ align-self:stretch; align-items:center; }
  .menu__item{
    padding:8px 11px !important; color:var(--cm-fg-dim) !important;
    font-family:var(--cm-f-body) !important; font-size:14px !important; text-transform:none !important; letter-spacing:.01em;
  }
  .menu__item:hover,.menu__el:hover [data-menu-open-sub-list]{ color:var(--cm-fg) !important; }
  [data-menu-open-sub-list]::after{
    content:""; display:inline-block; width:0; height:0; margin-left:7px;
    border-left:4px solid transparent; border-right:4px solid transparent; border-top:5px solid currentColor; opacity:.7;
  }
  .menu__sub-list{
    background:var(--cm-ink-2) !important; border:1px solid var(--cm-line) !important; border-top:2px solid var(--cm-blood) !important;
    border-radius:0 0 3px 3px; padding:6px !important; min-width:250px !important; box-shadow:0 14px 34px rgba(0,0,0,.55);
    -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
  }
  .menu__sub-item{
    justify-content:flex-start !important; text-align:left !important; border-radius:2px;
    color:var(--cm-fg-dim) !important; font-family:var(--cm-f-body) !important; font-size:13.5px !important; padding:9px 12px !important;
  }
  .menu__sub-item:hover{ background:rgba(227,178,92,.08) !important; color:var(--cm-gold) !important; }
}

/* авторизация */
.auth{ display:flex !important; align-items:center; gap:12px !important; }
.auth__btn,.cm-auth__reg{
  color:var(--cm-fg-dim) !important; font-family:var(--cm-f-body) !important; font-size:14px !important;
  text-transform:none !important; text-decoration:none; padding:0 !important; background:none !important;
}
.auth__btn:hover{ color:var(--cm-fg) !important; }
.auth .cm-btn{ width:auto; height:auto; }

/* язык */
.lang{ --lang-img-size:20px; padding-right:0 !important; font-family:var(--cm-f-body) !important; }
.lang__current{
  display:inline-flex !important; align-items:center; gap:8px !important; width:auto !important; overflow:visible !important;
  border:1px solid var(--cm-line); border-radius:2px; padding:7px 26px 7px 10px !important; position:relative;
  color:var(--cm-fg-dim) !important; font-size:13px !important;
}
.lang__current:hover{ border-color:var(--cm-gold-dim); color:var(--cm-fg) !important; }
.lang__current:after{
  right:10px !important; width:0 !important; height:0 !important; background:none !important;
  border-left:4px solid transparent; border-right:4px solid transparent; border-top:5px solid var(--cm-gold);
}
.lang__name{ color:inherit !important; font-family:var(--cm-f-body) !important; font-size:13px !important; line-height:1.2; }
.lang__img,.lang__current-img{ width:20px !important; height:20px !important; border:0 !important; border-radius:50%; flex-shrink:0; }
.lang__list{
  left:auto !important; right:0 !important; width:auto !important; min-width:170px; top:calc(100% + 8px) !important;
  background:var(--cm-ink-2) !important; border:1px solid var(--cm-line) !important; border-radius:3px !important;
  box-shadow:0 14px 34px rgba(0,0,0,.55) !important; padding:5px !important;
}
.lang__list:after{ display:none !important; }
.lang__link{ display:flex !important; align-items:center; gap:9px !important; color:var(--cm-fg-dim) !important; border-radius:2px; padding:8px 10px !important; }
.lang__link:hover{ background:rgba(227,178,92,.08) !important; color:var(--cm-gold) !important; }

/* ширина шапки = ширина героя */
@media (min-width:1200px){
  [data-container=navigation]{ max-width:var(--cm-wide) !important; margin:0 auto; padding-inline:20px !important; box-sizing:border-box; }
}
@media (min-width:1200px) and (max-width:1699.98px){
  .navigation{ gap:14px; }
  .menu__item{ padding:8px 7px !important; font-size:13.5px !important; }
  .navigation__box_side_right{ gap:10px; }
  .cm-auth__reg{ display:none !important; }   /* «Регистрация» уже есть в меню */
}
@media (min-width:1200px) and (max-width:1439.98px){
  .menu__item{ padding:8px 5px !important; font-size:13px !important; }
  .cm-brand{ font-size:16px; gap:8px; }
  .lang__name{ display:none !important; }
  .navigation__auth .cm-btn{ padding:8px 11px; font-size:12.5px; }
}

/* бургер + мобильное меню */
.gw-burger__line{ background-color:var(--cm-gold) !important; }
@media (max-width:1199.99px){
  .menu{ background-color:var(--cm-ink) !important; box-shadow:0 0 0 100vh var(--cm-ink) !important; }
  .menu__item{ color:var(--cm-fg) !important; font-family:var(--cm-f-cap) !important; letter-spacing:.06em; }
  .menu__item:hover{ color:var(--cm-gold) !important; }
  .menu__item_open,.menu__sub-list{ background:rgba(227,178,92,.05) !important; }
  .menu__sub-item{ color:var(--cm-fg-dim) !important; font-family:var(--cm-f-body) !important; }
  .menu__el_continer_divider{ border-top-color:var(--cm-line) !important; }
  [data-menu-open-sub-list]:after{ filter:invert(78%) sepia(30%) saturate(500%) hue-rotate(350deg); }
  .auth{ flex-wrap:wrap; justify-content:center; }
}

/* полоса серверов на внутренних страницах */
.cm-sbar{ background:rgba(8,6,5,.9) !important; border-bottom:1px solid var(--cm-line) !important; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.cm-sbar:after{ display:none !important; }
.cm-sbar .servers-list{ display:flex; gap:10px; flex-wrap:wrap; }
.cm-sbar .server{
  display:flex; align-items:center; gap:12px; padding:6px 12px !important; margin:0 !important;
  background:var(--cm-ink-3) !important; border:1px solid var(--cm-line) !important; border-left:3px solid var(--cm-on) !important;
  border-radius:2px !important; box-shadow:none !important; background-image:none !important;
}
.cm-sbar .server[data-server-status=off]{ border-left-color:var(--cm-off) !important; }
.cm-sbar .server:before,.cm-sbar .server:after{ display:none !important; }
.cm-sbar .server__name{ color:var(--cm-fg) !important; font-family:var(--cm-f-body) !important; font-size:12.5px !important; font-weight:600; }
.cm-sbar .server__status{ background:none !important; border:0 !important; box-shadow:none !important; padding:0 !important; }
.cm-sbar .server__status-text{ color:var(--cm-gold) !important; font-family:var(--cm-f-body) !important; font-size:12px !important; }

/* страница описания: шапка тёмная (перекрывает светлую из custom.css) */
body:has(.about__inav) [data-section=navigation]{ background:linear-gradient(180deg,rgba(8,6,5,.98),rgba(8,6,5,.94)) !important; }
body:has(.about__inav) .sbar_pos{ background-color:rgba(8,6,5,.95) !important; }

/* ---------------------------------------------------------------------
   Модалки (Fancybox): загрузки, стримы
   --------------------------------------------------------------------- */
.mdl{ font-family:var(--cm-f-body) !important; max-width:720px !important; }
.mdl__inner{
  background:var(--cm-ink-2) !important; background-image:none !important; color:var(--cm-fg) !important;
  border:1px solid var(--cm-gold-dim) !important; border-radius:4px !important; padding:30px 26px !important;
  box-shadow:0 24px 60px rgba(0,0,0,.6) !important;
}
.mdl__close:before,.mdl__close:after{ background:var(--cm-gold) !important; }
.mdl .title,.mdl .mdl__title{ color:var(--cm-fg) !important; font-family:var(--cm-f-disp) !important; font-size:24px !important; line-height:1.2; }
.mdl .subtitle,.mdl .mdl__subtitle{ color:var(--cm-gold) !important; font-family:var(--cm-f-body) !important; font-size:13px !important; letter-spacing:.04em; }
.mdl .downloads__box{ border:1px solid var(--cm-line) !important; border-radius:3px; background:rgba(8,6,5,.35) !important; }
.mdl .downloads__title{ color:var(--cm-fg) !important; font-family:var(--cm-f-body) !important; font-weight:600; }
.mdl .btn{ width:auto !important; height:auto !important; padding:10px 18px !important; font-family:var(--cm-f-body) !important;
  font-size:14px !important; font-weight:600 !important; text-transform:none !important; text-shadow:none !important;
  color:var(--cm-gold) !important; border:1px solid var(--cm-gold-dim) !important; border-radius:2px; background:transparent !important; }
.mdl .btn:before{ display:none !important; }
.mdl .btn:hover{ background:rgba(227,178,92,.08) !important; }
.mdl .btn_type_1{ background:linear-gradient(180deg,var(--cm-blood),var(--cm-blood-lo)) !important; border-color:var(--cm-blood) !important; color:#fff !important; }
.mdl .stream{ background:var(--cm-ink-3) !important; border:1px solid var(--cm-line) !important; color:var(--cm-fg-dim) !important; }
.fancybox-is-open .fancybox-bg{ opacity:.78 !important; background:#050302 !important; }

/* кнопка «Стримы» слева */
.openmedia__line{ background:var(--cm-line) !important; }
.openmedia__btn{
  width:auto !important; height:auto !important; background:var(--cm-ink-2) !important; background-image:none !important;
  border:1px solid var(--cm-gold-dim) !important; border-left:0 !important; border-radius:0 3px 3px 0 !important;
  padding:14px 7px !important; cursor:pointer; box-shadow:none !important;
}
.openmedia__btn:before,.openmedia__btn:after{ display:none !important; }
.openmedia__btn:hover{ background:var(--cm-blood) !important; border-color:var(--cm-blood) !important; }
.cm-openmedia__txt{
  display:block; writing-mode:vertical-rl; transform:rotate(180deg);
  font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.2em; font-size:11px; color:var(--cm-gold);
}
.openmedia__btn:hover .cm-openmedia__txt{ color:#fff; }

/* ---------------------------------------------------------------------
   Футер (все страницы)
   --------------------------------------------------------------------- */
.cm-footer{ position:relative; z-index:2; border-top:1px solid var(--cm-line); background:#070504; padding-block:30px; color:var(--cm-fg-dim);
  font-family:var(--cm-f-body); font-size:13px; }
.cm-wrap{ width:100%; max-width:1220px; margin:0 auto; padding-inline:20px; box-sizing:border-box; }
.cm-footer__in{ display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; }
.cm-footer .cm-brand{ font-size:15px; }
.cm-footer .cm-brand__mk{ width:24px; height:24px; font-size:12px; }
.cm-footer__copy{ margin-top:8px; }
.cm-footer__links{ display:flex; gap:18px; flex-wrap:wrap; }
.cm-footer__links a{ color:var(--cm-fg-dim); text-decoration:none; }
.cm-footer__links a:hover{ color:var(--cm-gold); }
.cm-footer__soc{ display:flex; gap:10px; }
.cm-footer__soc a{ width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--cm-line); border-radius:2px; color:var(--cm-gold); transition:.2s; }
.cm-footer__soc a:hover{ background:rgba(227,178,92,.08); border-color:var(--cm-gold-dim); }
.cm-footer__soc svg{ width:18px; height:18px; }

/* =====================================================================
   ГЛАВНАЯ (.cm-home)
   ===================================================================== */
.cm-home{ background:var(--cm-ink) !important; color:var(--cm-fg); font-family:var(--cm-f-body); }
.cm-home .bg,.cm-home .sbar{ display:none !important; }
.cm-home .page{ background:transparent; }

/* глобальный фон: виньетка + холст лепестков (холст создаёт crimson-fx.js) */
.cm-home::before{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:radial-gradient(120% 90% at 50% -10%,rgba(120,20,18,.16),transparent 55%),
             radial-gradient(90% 70% at 50% 120%,rgba(90,15,14,.12),transparent 60%);
}
#cm-fx-bg{ position:fixed; inset:0; z-index:1; pointer-events:none; }

/* экраны (переключатель секций app.js листает их колесом) */
.cm-screen{
  position:relative; box-sizing:border-box; width:100%;
  display:flex; flex-direction:column; justify-content:center;
  padding-top:calc(var(--top-informer-h,0px) + var(--cm-nav-h) + 36px); padding-bottom:56px;
}
@media (min-width:1200px) and (min-height:700px){ .cm-screen{ min-height:100vh; } }

.cm-ey{ display:inline-block; font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.3em; font-size:12px; color:var(--cm-gold); font-weight:600; }
.cm-h2{ margin:8px 0 0; font-family:var(--cm-f-disp); font-weight:700; font-size:clamp(23px,3.2vw,34px); line-height:1.15; color:var(--cm-fg); text-wrap:balance; }
.cm-head{ text-align:center; margin-bottom:34px; }
.cm-head_sub{ margin-top:46px; }
.cm-divider{
  width:min(540px,80%); height:18px; margin:14px auto 0;
  background:radial-gradient(closest-side,var(--cm-blood) 0 32%,transparent 60%) center/18px 18px no-repeat,
             linear-gradient(90deg,transparent,var(--cm-gold-dim) 18%,var(--cm-gold-dim) 82%,transparent) center/100% 1px no-repeat;
}

/* ---------------- Герой ---------------- */
.cm-hero{ overflow:hidden; padding-top:calc(var(--top-informer-h,0px) + var(--cm-nav-h) + 20px); }
.cm-hero__bg{
  position:absolute; inset:-3%; z-index:0; background:url(../images/crimson/hero.jpg) center/cover no-repeat;
  will-change:transform; animation:cm-kenburns 28s ease-in-out infinite alternate;
}
@keyframes cm-kenburns{ 0%{transform:scale(1.04) translate(0,0)} 100%{transform:scale(1.12) translate(-2%,-1.4%)} }
.cm-hero__moon{
  position:absolute; top:calc(var(--top-informer-h,0px) + var(--cm-nav-h) + 4%); right:9%; z-index:1;
  width:190px; height:190px; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle at 42% 38%,#e9c98e 0%,#c66a35 26%,#9a2b23 52%,#5d130f 74%,transparent 78%);
  box-shadow:0 0 90px 30px rgba(181,32,31,.4),0 0 160px 60px rgba(181,32,31,.18);
  animation:cm-moon 11s ease-in-out infinite;
}
.cm-hero__moon::after{ content:""; position:absolute; inset:0; border-radius:50%;
  background:radial-gradient(circle at 60% 30%,transparent 60%,rgba(60,15,12,.5) 85%),
             radial-gradient(circle at 35% 62%,rgba(70,20,16,.4) 0 14%,transparent 16%),
             radial-gradient(circle at 66% 70%,rgba(70,20,16,.35) 0 9%,transparent 11%); }
@keyframes cm-moon{ 0%,100%{transform:translate(0,0) scale(1);filter:brightness(1)} 50%{transform:translate(-10px,-12px) scale(1.04);filter:brightness(1.16)} }
.cm-hero__fog{
  position:absolute; inset:0; z-index:1; pointer-events:none; mix-blend-mode:screen; opacity:.55;
  background:radial-gradient(60% 40% at 20% 80%,rgba(120,40,36,.3),transparent 60%),
             radial-gradient(50% 36% at 80% 70%,rgba(90,30,28,.26),transparent 60%);
  background-size:180% 180%; animation:cm-fog 20s ease-in-out infinite alternate;
}
@keyframes cm-fog{ 0%{background-position:0% 50%} 100%{background-position:100% 60%} }
.cm-hero__fx{ position:absolute; inset:0; z-index:2; pointer-events:none; width:100%; height:100%; }
.cm-hero__veil{ position:absolute; inset:0; z-index:2; pointer-events:none; background:
  radial-gradient(130% 90% at 72% 16%,rgba(181,32,31,.28),transparent 55%),
  linear-gradient(180deg,rgba(8,6,5,.42),rgba(8,6,5,.5) 42%,var(--cm-ink) 97%),
  linear-gradient(90deg,rgba(8,6,5,.88),rgba(8,6,5,.35) 55%,transparent 82%); }
.cm-hero .cm-wrap{ max-width:var(--cm-wide); }
.cm-hero__inner{ position:relative; z-index:3; display:flex; align-items:center; justify-content:space-between; gap:40px; flex-wrap:wrap; }
.cm-hero__main{ flex:1 1 520px; max-width:640px; min-width:0; }
.cm-hero__logo{ display:inline-block; margin-bottom:18px; }
.cm-hero__logo img{ display:block; width:340px; max-width:72vw; height:auto; filter:drop-shadow(0 6px 30px rgba(0,0,0,.6)); }
.cm-badge{ display:inline-flex; align-items:center; gap:14px; margin-bottom:20px; padding:9px 18px; border:1px solid var(--cm-gold-dim); border-radius:2px; background:rgba(8,6,5,.55); }
.cm-badge__d{ display:flex; flex-direction:column; line-height:1.15; }
.cm-badge__d b{ font-family:var(--cm-f-disp); color:var(--cm-gold); font-size:19px; font-weight:700; }
.cm-badge__d span{ font-family:var(--cm-f-body); font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:var(--cm-fg-dim); }
.cm-badge__sep{ width:1px; height:34px; background:var(--cm-line); }
.cm-hero__title{ margin:0 0 14px; font-family:var(--cm-f-disp); font-weight:700; font-size:clamp(30px,4.4vw,54px); line-height:1.08; color:var(--cm-fg); text-wrap:balance; text-shadow:0 2px 24px rgba(0,0,0,.5); }
.cm-hero__title span{ color:var(--cm-blood-hi); text-shadow:0 0 24px rgba(181,32,31,.45); }
.cm-hero__lead{ max-width:520px; margin:0 0 26px; font-size:17px; line-height:1.6; color:var(--cm-fg); }
.cm-hero__cta{ display:flex; gap:14px; flex-wrap:wrap; }

.cm-srv{ flex:0 0 340px; max-width:100%; box-sizing:border-box; background:rgba(8,6,5,.62); border:1px solid var(--cm-line); border-radius:4px; padding:18px 20px;
  -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.cm-srv__title{ font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.16em; font-size:12px; font-weight:600; color:var(--cm-gold); margin-bottom:6px; }
.cm-srv__item{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 0; border-bottom:1px solid var(--cm-line); }
.cm-srv__item:last-child{ border-bottom:0; padding-bottom:4px; }
.cm-srv__name{ min-width:0; font-family:var(--cm-f-serif); font-size:15px; color:var(--cm-fg); line-height:1.3; }
.cm-srv__name small{ display:block; margin-top:2px; font-family:var(--cm-f-body); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--cm-fg-dim); }
.cm-srv__st{ display:flex; align-items:center; gap:7px; flex-shrink:0; font-size:12.5px; color:var(--cm-fg); font-variant-numeric:tabular-nums; }
.cm-srv__item[data-server-status=off] .cm-srv__st{ color:var(--cm-fg-dim); }
.cm-dot{ width:8px; height:8px; border-radius:50%; }
.cm-dot_on{ background:var(--cm-on); box-shadow:0 0 8px var(--cm-on); }
.cm-dot_off{ background:var(--cm-off); }

/* переключатель анимации */
.cm-anim{
  position:fixed; right:14px; bottom:calc(14px + env(safe-area-inset-bottom,0px)); z-index:60;
  display:inline-flex; align-items:center; gap:8px; padding:8px 13px; cursor:pointer;
  background:rgba(8,6,5,.85); border:1px solid var(--cm-gold-dim); border-radius:2px; color:var(--cm-gold);
  font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.12em; font-size:11px;
}
.cm-anim:hover{ background:rgba(227,178,92,.1); }
.cm-anim__sw{ position:relative; width:30px; height:15px; border-radius:9px; background:var(--cm-blood); transition:.2s; flex-shrink:0; }
.cm-anim__sw::after{ content:""; position:absolute; top:1.5px; left:16px; width:12px; height:12px; border-radius:50%; background:#fff; transition:.2s; }
html[data-cm-anim=off] .cm-anim__sw{ background:#4a3a33; }
html[data-cm-anim=off] .cm-anim__sw::after{ left:1.5px; }
html[data-cm-anim=off] .cm-hero__bg{ animation:none; inset:0; transform:none; }
html[data-cm-anim=off] .cm-hero__moon{ animation:none; }
html[data-cm-anim=off] .cm-hero__fog{ animation:none; background-position:30% 55%; }
html[data-cm-anim=off] #cm-fx-bg,html[data-cm-anim=off] .cm-hero__fx{ visibility:hidden; }

/* ---------------- Points (навигация по экранам) ---------------- */
.cm-points{ position:fixed; right:22px; top:50%; transform:translateY(-50%); z-index:30; margin:0; padding:0; list-style:none;
  display:flex; flex-direction:column; align-items:flex-end; gap:16px; }
.cm-point{ display:flex; align-items:center; gap:12px; cursor:pointer; opacity:.55; transition:opacity .2s; }
.cm-point:hover,.cm-point.point_active{ opacity:1; }
.cm-point__txt{ display:flex; flex-direction:column; text-align:right; }
.cm-point__t{ font-family:var(--cm-f-cap); font-size:11px; text-transform:uppercase; letter-spacing:.1em; color:var(--cm-fg); }
.cm-point__d{ font-family:var(--cm-f-body); font-size:10px; color:var(--cm-fg-dim); }
.cm-point__dot{ width:12px; height:12px; flex-shrink:0; border:1px solid var(--cm-gold-dim); border-radius:50%; display:grid; place-items:center; box-sizing:border-box; }
.cm-point.point_active .cm-point__dot{ border-color:var(--cm-blood); }
.cm-point.point_active .cm-point__dot::after{ content:""; width:6px; height:6px; border-radius:50%; background:var(--cm-blood); box-shadow:0 0 8px var(--cm-blood); }
@media (max-width:1599.98px){ .cm-point__txt{ display:none; } }
@media (max-width:1199.99px){ .cm-points{ display:none; } }

/* ---------------- Рейты + особенности ---------------- */
.cm-rates{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.cm-rate{ position:relative; text-align:center; padding:22px 14px; border:1px solid var(--cm-line); border-radius:3px;
  background:linear-gradient(180deg,var(--cm-ink-3),var(--cm-ink-2)); }
.cm-rate::before,.cm-rate::after{ content:""; position:absolute; width:12px; height:12px; border:1px solid var(--cm-gold); opacity:.55; }
.cm-rate::before{ top:7px; left:7px; border-right:0; border-bottom:0; }
.cm-rate::after{ bottom:7px; right:7px; border-left:0; border-top:0; }
.cm-rate__k{ font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.16em; font-size:11px; color:var(--cm-fg-dim); }
.cm-rate__v{ margin-top:8px; font-family:var(--cm-f-disp); font-size:38px; line-height:1; color:var(--cm-gold); font-variant-numeric:tabular-nums; }
.cm-rates__more{ margin-top:14px; text-align:center; }

.cm-feat{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.cm-fcard{ display:flex; gap:14px; align-items:flex-start; padding:18px; border:1px solid var(--cm-line); border-radius:3px; background:rgba(8,6,5,.45); }
.cm-fcard__ic{ width:40px; height:40px; flex-shrink:0; border-radius:50%; display:grid; place-items:center; color:var(--cm-gold);
  border:1px solid var(--cm-gold-dim); background:radial-gradient(circle at 50% 35%,rgba(181,32,31,.35),transparent 70%); }
.cm-fcard__ic svg{ width:20px; height:20px; }
.cm-fcard__body{ min-width:0; }
.cm-fcard h3{ margin:2px 0 4px; font-family:var(--cm-f-serif); font-size:16px; color:var(--cm-fg); font-weight:700; }
.cm-fcard p{ margin:0; font-size:13.5px; line-height:1.5; color:var(--cm-fg-dim); }

/* ---------------- Новости ---------------- */
.cm-news__top{ display:flex; justify-content:flex-end; margin:-12px 0 16px; }
.cm-slider{ position:relative; }
.cm-news__list{ overflow:hidden; }
.cm-news__slide{ height:auto; }
.cm-post{ height:100%; display:flex; flex-direction:column; overflow:hidden; border:1px solid var(--cm-line); border-radius:3px; background:var(--cm-ink-2); transition:border-color .25s; }
.cm-post:hover{ border-color:var(--cm-gold-dim); }
.cm-post__pic{ position:relative; aspect-ratio:16/9; background:var(--cm-ink-3) center/cover no-repeat; }
.cm-post__date{ position:absolute; left:12px; bottom:12px; padding:3px 9px; font-size:11px; letter-spacing:.06em; color:var(--cm-gold);
  background:rgba(8,6,5,.8); border:1px solid var(--cm-gold-dim); border-radius:2px; }
.cm-post__title{ margin:14px 16px 8px; font-family:var(--cm-f-serif); font-size:18px; line-height:1.3; color:var(--cm-fg); }
.cm-post__desc{ flex:1; margin:0 16px 14px; font-size:13.5px; line-height:1.55; color:var(--cm-fg-dim);
  display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.cm-post__desc p{ margin:0; }
.cm-post__bar{ padding:0 16px 16px; }
.cm-arrow{ position:absolute; top:38%; z-index:5; width:42px; height:42px; border-radius:50%; cursor:pointer;
  border:1px solid var(--cm-gold-dim); background:rgba(8,6,5,.85); display:grid; place-items:center; transition:.2s; }
.cm-arrow::before{ content:""; width:9px; height:9px; border-top:2px solid var(--cm-gold); border-right:2px solid var(--cm-gold); }
.cm-arrow_prev{ left:-21px; } .cm-arrow_prev::before{ transform:translateX(2px) rotate(-135deg); }
.cm-arrow_next{ right:-21px; } .cm-arrow_next::before{ transform:translateX(-2px) rotate(45deg); }
.cm-arrow:hover{ background:var(--cm-blood); border-color:var(--cm-blood); }
.cm-arrow:hover::before{ border-color:#fff; }
.cm-arrow.swiper-button-disabled{ opacity:.35; cursor:default; }
.cm-empty{ max-width:560px; margin:0 auto; text-align:center; padding:34px 28px; border:1px solid var(--cm-line); border-radius:3px; background:rgba(8,6,5,.5); }
.cm-empty__ic{ width:52px; height:52px; margin:0 auto 14px; border-radius:50%; display:grid; place-items:center; color:var(--cm-gold);
  border:1px solid var(--cm-gold-dim); background:radial-gradient(circle at 50% 35%,rgba(181,32,31,.35),transparent 70%); }
.cm-empty__ic svg{ width:24px; height:24px; }
.cm-empty__title{ margin:0 0 8px; font-family:var(--cm-f-serif); font-size:20px; color:var(--cm-fg); }
.cm-empty__desc{ margin:0 auto 18px; max-width:480px; font-size:14px; line-height:1.6; color:var(--cm-fg-dim); }
.cm-empty__cta{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }

/* ---------------- Статистика ---------------- */
.cm-tabs{ display:flex; gap:6px; flex-wrap:wrap; justify-content:center; margin-bottom:22px; }
.cm-tab{ padding:9px 16px; border:1px solid var(--cm-line); border-radius:2px; background:var(--cm-ink-2); color:var(--cm-fg-dim);
  font-family:var(--cm-f-body); font-size:13px; text-decoration:none; cursor:pointer; transition:.2s; user-select:none; }
.cm-tab:hover{ color:var(--cm-fg); border-color:var(--cm-gold-dim); }
.cm-tab[data-open-tab-active=true]{ background:linear-gradient(180deg,var(--cm-blood),var(--cm-blood-lo)); border-color:var(--cm-blood); color:#fff; }
.cm-tab_link{ color:var(--cm-gold); border-color:var(--cm-gold-dim); }
.cm-tbl{ overflow-x:auto; border:1px solid var(--cm-line); border-radius:3px; background:rgba(8,6,5,.5); }
.cm-tbl table{ width:100%; border-collapse:collapse; border:0 !important; background:transparent !important; font-size:13.5px; color:var(--cm-fg); border-radius:0; }
.cm-tbl tr{ background:transparent !important; }
.cm-tbl td,.cm-tbl th{ border:0 !important; border-bottom:1px solid var(--cm-line) !important; }
.cm-tbl th,.cm-tbl td{ padding:11px 14px; text-align:left; border-bottom:1px solid var(--cm-line); white-space:nowrap; }
.cm-tbl tbody tr:last-child td{ border-bottom:0; }
.cm-tbl th{ font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.1em; font-size:11px; font-weight:600; color:var(--cm-gold); background:rgba(8,6,5,.55); }
.cm-tbl tbody tr:hover td{ background:rgba(227,178,92,.04); }
.cm-tbl .c{ text-align:center; font-variant-numeric:tabular-nums; }
.cm-tbl__name{ white-space:nowrap; }
.cm-tbl__n{ display:inline-block; min-width:26px; color:var(--cm-fg-dim); font-variant-numeric:tabular-nums; }
.cm-tbl__name img{ width:22px !important; height:22px !important; border-radius:50%; vertical-align:middle; margin-right:8px; }
.cm-tbl tbody tr:nth-child(-n+3) .cm-tbl__n{ color:var(--cm-gold); font-weight:700; }

/* ---------------- Комьюнити + «Присоединяйтесь» ---------------- */
.cm-com{ display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:20px; }
.cm-box{ min-width:0; display:flex; flex-direction:column; padding:18px; border:1px solid var(--cm-line); border-radius:3px; background:var(--cm-ink-2); }
.cm-box__title{ margin:0 0 14px; font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:600; color:var(--cm-gold); }
.cm-box__text{ margin:0; font-size:14px; line-height:1.6; color:var(--cm-fg-dim); }
.cm-box__btn{ margin-top:auto; align-self:flex-start; }
.cm-topics{ flex:1; margin-bottom:14px; }
.cm-topic{ display:flex; align-items:center; gap:12px; padding:9px 0; border-bottom:1px solid var(--cm-line); text-decoration:none; }
.cm-topic:last-child{ border-bottom:0; }
.cm-topic__av{ width:36px; height:36px; flex-shrink:0; border-radius:50%; border:1px solid var(--cm-gold-dim); background:var(--cm-ink-4) center/cover; }
.cm-topic__txt{ min-width:0; font-size:13.5px; line-height:1.3; color:var(--cm-fg); }
.cm-topic__txt small{ display:block; font-size:11.5px; color:var(--cm-fg-dim); }
.cm-topic:hover .cm-topic__txt{ color:var(--cm-gold); }
.cm-social{ display:flex; align-items:center; gap:14px; padding:14px; margin-bottom:12px; border:1px solid var(--cm-line); border-radius:3px; text-decoration:none; transition:.2s; }
.cm-social:last-child{ margin-bottom:0; }
.cm-social:hover{ border-color:var(--cm-gold-dim); background:rgba(227,178,92,.04); }
.cm-social__ic{ width:44px; height:44px; flex-shrink:0; border-radius:50%; display:grid; place-items:center; color:#fff; }
.cm-social__ic svg{ width:22px; height:22px; }
.cm-social_dc .cm-social__ic{ background:#5865F2; } .cm-social_tg .cm-social__ic{ background:#2AABEE; }
.cm-social__txt b{ display:block; font-size:15px; color:var(--cm-fg); }
.cm-social__txt small{ font-size:12px; color:var(--cm-fg-dim); }
.cm-video{ position:relative; flex:1; min-height:150px; margin-bottom:14px; border-radius:3px; overflow:hidden; display:grid; place-items:center;
  background:linear-gradient(rgba(8,6,5,.3),rgba(8,6,5,.55)),url(../images/crimson/hero.jpg) center/cover; }
.cm-video__play{ width:56px; height:56px; border-radius:50%; display:grid; place-items:center; color:#fff; background:rgba(181,32,31,.92); transition:transform .2s; }
.cm-video__play svg{ width:24px; height:24px; margin-left:3px; }
.cm-video:hover .cm-video__play{ transform:scale(1.08); }
.cm-join{ margin-top:34px; padding:30px 20px; text-align:center; border-top:1px solid var(--cm-line);
  background:radial-gradient(70% 140% at 50% 0%,rgba(181,32,31,.2),transparent 62%); }
.cm-join .cm-h2{ font-size:clamp(23px,3.4vw,34px); }
.cm-join__desc{ max-width:540px; margin:10px auto 22px; color:var(--cm-fg-dim); font-size:15px; line-height:1.6; }
.cm-join__cta{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ---------------- Адаптив ---------------- */
@media (max-width:1199.99px){
  .cm-hero__moon{ width:140px; height:140px; right:6%; }
  .cm-srv{ flex:1 1 100%; }
  .cm-arrow_prev{ left:-6px; } .cm-arrow_next{ right:-6px; }
}
@media (max-width:860px){
  .cm-rates{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cm-feat{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cm-com{ grid-template-columns:1fr; }
  .cm-hero__lead{ font-size:16px; }
}
@media (max-width:560px){
  .cm-feat{ grid-template-columns:1fr; }
  .cm-hide-m{ display:none; }
  .cm-hero__moon{ width:110px; height:110px; top:calc(var(--top-informer-h,0px) + var(--cm-nav-h) + 12px); }
  .cm-badge{ gap:10px; padding:8px 12px; }
  .cm-badge__d b{ font-size:16px; }
  .cm-rate__v{ font-size:32px; }
  .cm-footer__in{ flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce){
  .cm-hero__bg,.cm-hero__moon,.cm-hero__fog{ animation:none; }
}

/* ---------------- Узкий десктоп 1200–1279: шапка ---------------- */
@media (min-width:1200px) and (max-width:1279.98px){
  .navigation{ gap:10px; }
  .menu__item{ padding:8px 4px !important; font-size:12.5px !important; }
  .navigation__auth .cm-btn_p{ display:none !important; }
  .cm-brand__mk{ display:none; }
}

/* ---------------- Невысокие экраны (ноутбуки): экраны помещаются целиком ---------------- */
@media (min-width:1200px) and (max-height:900px){
  .cm-screen{ padding-top:calc(var(--top-informer-h,0px) + var(--cm-nav-h) + 14px); padding-bottom:22px; }
  .cm-head{ margin-bottom:18px; }
  .cm-head_sub{ margin-top:24px; }
  .cm-ey{ font-size:11px; }
  .cm-h2{ font-size:clamp(22px,2.4vw,28px); margin-top:4px; }
  .cm-divider{ margin-top:8px; }
  .cm-rate{ padding:13px 12px; }
  .cm-rate__v{ font-size:30px; margin-top:4px; }
  .cm-rates__more{ margin-top:8px; }
  .cm-fcard{ padding:12px 14px; gap:12px; }
  .cm-fcard__ic{ width:34px; height:34px; }
  .cm-fcard h3{ font-size:15px; }
  .cm-fcard p{ font-size:13px; line-height:1.45; }
  .cm-tabs{ margin-bottom:14px; }
  .cm-tab{ padding:7px 14px; }
  .cm-tbl th,.cm-tbl td{ padding:7px 14px; }
  .cm-hero{ padding-top:calc(var(--top-informer-h,0px) + var(--cm-nav-h) + 8px); }
  .cm-hero__logo{ margin-bottom:10px; }
  .cm-hero__logo img{ width:250px; }
  .cm-badge{ margin-bottom:12px; padding:7px 14px; }
  .cm-hero__title{ font-size:clamp(28px,3.4vw,44px); margin-bottom:10px; }
  .cm-hero__lead{ font-size:15.5px; margin-bottom:18px; }
  .cm-hero__moon{ width:150px; height:150px; }
  .cm-box{ padding:14px 16px; }
  .cm-box__title{ margin-bottom:10px; }
  .cm-social{ padding:10px 12px; margin-bottom:10px; }
  .cm-social__ic{ width:38px; height:38px; }
  .cm-video{ min-height:120px; margin-bottom:10px; }
  .cm-join{ margin-top:18px; padding:16px 20px 4px; }
  .cm-join .cm-h2{ font-size:clamp(21px,2.3vw,27px); }
  .cm-join__desc{ margin:6px auto 14px; font-size:14px; }
  .cm-empty{ padding:24px 22px; }
}
@media (min-width:1200px) and (max-height:760px){
  .cm-rates{ gap:12px; }
  .cm-feat{ gap:10px; }
  .cm-fcard p{ font-size:12.5px; }
  .cm-hero__logo img{ width:210px; }
  .cm-hero__lead{ margin-bottom:14px; }
  .cm-tbl th,.cm-tbl td{ padding:6px 14px; font-size:13px; }
  .cm-video{ min-height:100px; }
}

/* ---------------- Поля под боковые элементы (Стримы слева, точки справа) ---------------- */
@media (min-width:1200px){
  .cm-wrap{ padding-inline:48px; }
  .openmedia{ left:0 !important; }
  .cm-points{ right:14px; }
}
.openmedia__btn{ -webkit-animation:none !important; animation:none !important; }
.cm-hero__logo{ display:block; width:fit-content; }

/* ---------------- Планшет и телефон ---------------- */
@media (max-width:1199.99px){
  .cm-anim{ position:absolute; right:16px; bottom:14px; }
  .openmedia{ left:12px !important; bottom:12px !important; top:auto !important; transform:none !important; z-index:40 !important; }
  .openmedia__line{ display:none !important; }
  .openmedia__btn{ border-left:1px solid var(--cm-gold-dim) !important; border-radius:3px !important; padding:8px 12px !important; }
  .cm-openmedia__txt{ writing-mode:horizontal-tb; transform:none; }
  .cm-screen{ padding-bottom:64px; }
  .cm-hero__inner{ gap:28px; }
}
@media (max-width:767.98px){
  .top-informer__line{ white-space:nowrap !important; overflow:hidden !important; text-overflow:ellipsis !important; font-size:11.5px !important; }
  .top-informer__inner{ gap:10px !important; padding:6px 12px !important; }
}
@media (min-width:1200px){
  .navigation__auth,.navigation__box_side_right{ flex-shrink:0; }
  .navigation__auth .auth{ flex-direction:row !important; flex-wrap:nowrap !important; }
}

/* =====================================================================
   ОПИСАНИЕ СЕРВЕРА (/about, /about_smr) — «Багровая Луна»
   Работает и для старых, и для новых (build.py) страниц описания.
   ===================================================================== */
body:has(.about__inav).body{ background:var(--cm-ink) !important; color:var(--cm-fg); }
body:has(.about__inav) .bg{ display:none !important; }

/* полоса серверов под шапкой — по ширине шапки */
body:has(.about__inav) .cm-sbar{ padding-inline:max(20px, calc((100vw - var(--cm-wide)) / 2 + 20px)) !important; }

/* шапка страницы: арт героя с затуханием + луна */
body:has(.about__inav) [data-section=about]{ position:relative; overflow:hidden; }
body:has(.about__inav) [data-section=about]::before{
  content:""; position:absolute; left:0; right:0; top:0; height:720px; z-index:0; pointer-events:none;
  background:
    linear-gradient(180deg,rgba(11,9,8,.38) 0%,rgba(11,9,8,.72) 46%,var(--cm-ink) 100%),
    linear-gradient(90deg,rgba(11,9,8,.55),rgba(11,9,8,.1) 50%,rgba(11,9,8,.55)),
    url(../images/crimson/hero.jpg) center 32%/cover no-repeat;
}
body:has(.about__inav) [data-section=about]::after{
  content:""; position:absolute; z-index:0; pointer-events:none; top:190px; right:max(24px,calc((100vw - 1400px)/2));
  width:150px; height:150px; border-radius:50%; opacity:.85;
  background:radial-gradient(circle at 42% 38%,#e9c98e 0%,#c66a35 26%,#9a2b23 52%,#5d130f 74%,transparent 78%);
  box-shadow:0 0 80px 26px rgba(181,32,31,.35),0 0 150px 50px rgba(181,32,31,.15);
}
body:has(.about__inav) [data-container=about]{ position:relative; z-index:2; }

/* заголовок */
body:has(.about__inav) .about__heading{ position:relative; margin-bottom:46px !important; }
body:has(.about__inav) .about__heading::after{
  content:""; display:block; width:min(540px,80%); height:18px; margin:16px auto 0;
  background:radial-gradient(closest-side,var(--cm-blood) 0 32%,transparent 60%) center/18px 18px no-repeat,
             linear-gradient(90deg,transparent,var(--cm-gold-dim) 18%,var(--cm-gold-dim) 82%,transparent) center/100% 1px no-repeat;
}
body:has(.about__inav) .back{ color:var(--cm-gold) !important; font-family:var(--cm-f-cap) !important; font-size:13px !important; letter-spacing:.22em; text-transform:uppercase; }
body:has(.about__inav) .back:hover{ color:var(--cm-gold-hi) !important; }
body:has(.about__inav) .about__title{
  margin-top:10px !important; color:var(--cm-fg) !important; font-family:var(--cm-f-disp) !important; font-weight:700 !important;
  font-size:clamp(30px,3.8vw,52px) !important; line-height:1.1 !important; text-shadow:0 2px 24px rgba(0,0,0,.55);
}

/* левое меню разделов */
body:has(.about__inav) .about__inav{
  background:rgba(18,13,12,.94) !important; border:1px solid var(--cm-line) !important; border-radius:4px !important;
  padding:6px 0 !important; box-shadow:0 18px 40px rgba(0,0,0,.35);
  scrollbar-color:rgba(227,178,92,.45) transparent !important;
}
body:has(.about__inav) .about__inav::-webkit-scrollbar-thumb{ background:rgba(227,178,92,.45) !important; }
body:has(.about__inav) .inav__el + .inav__el{ border-top:1px solid rgba(227,178,92,.07); }
body:has(.about__inav) .inav__item{
  min-height:0 !important; padding:13px 16px 13px 17px !important; border-left:3px solid transparent !important;
  font-family:var(--cm-f-body) !important;
}
body:has(.about__inav) .inav__item:after{ background:linear-gradient(90deg,rgba(181,32,31,.24),rgba(181,32,31,0)) !important; }
body:has(.about__inav) .inav__item:hover:after{ opacity:.55; }
body:has(.about__inav) .inav__item[data-open-tab-active=true]{ border-left-color:var(--cm-blood) !important; }
body:has(.about__inav) .inav__ico{
  width:40px !important; height:40px !important; margin-right:14px !important; border-radius:50%;
  box-shadow:0 0 0 1px var(--cm-gold-dim), 0 0 14px rgba(181,32,31,.25);
}
body:has(.about__inav) .inav__img{ width:22px !important; height:22px !important; }
body:has(.about__inav) .inav__title{
  color:var(--cm-fg) !important; font-family:var(--cm-f-cap) !important; font-size:12.5px !important; font-weight:600 !important;
  letter-spacing:.07em; line-height:1.3;
}
body:has(.about__inav) .inav__item:hover .inav__title,body:has(.about__inav) .inav__item[data-open-tab-active=true] .inav__title{ color:var(--cm-gold) !important; }
body:has(.about__inav) .inav__desc{ margin-top:2px; color:var(--cm-fg-dim) !important; font-family:var(--cm-f-body) !important; font-size:12.5px !important; line-height:1.35; }

/* выбор раздела на телефоне */
body:has(.about__inav) .about__choosingbox{ background:rgba(18,13,12,.94) !important; border:1px solid var(--cm-line); border-radius:4px !important; }
body:has(.about__inav) .about__choosing{ color:var(--cm-fg) !important; font-family:var(--cm-f-body) !important; font-size:15px !important; color-scheme:dark; }
body:has(.about__inav) .about__choosing option{ background:var(--cm-ink-2); color:var(--cm-fg); }

/* панель содержимого */
body:has(.about__inav) .about__content{
  background:rgba(18,13,12,.95) !important; border:1px solid var(--cm-line) !important; border-radius:4px !important;
  color:#d6ccc1 !important; font-family:var(--cm-f-body) !important; font-size:15px !important; line-height:1.68 !important;
  box-shadow:0 18px 40px rgba(0,0,0,.35);
}
body:has(.about__inav) .about__content b,body:has(.about__inav) .about__content strong{ color:var(--cm-fg); }
body:has(.about__inav) .about__content a:not(.btn):not([class*=ab-g]){ color:var(--cm-gold); }
body:has(.about__inav) .about__content a:not(.btn):not([class*=ab-g]):hover{ color:var(--cm-gold-hi); }
body:has(.about__inav) .about__cover{ border:1px solid var(--cm-line); box-shadow:0 10px 30px rgba(0,0,0,.4); }
body:has(.about__inav) .about__content .ttl{ color:var(--cm-fg) !important; font-family:var(--cm-f-serif) !important; font-size:19px !important; line-height:1.3; }
body:has(.about__inav) .about__content .ttl_size_large,body:has(.about__inav) .about__content .ab-title{
  color:var(--cm-fg) !important; font-family:var(--cm-f-disp) !important; font-size:clamp(22px,2.2vw,28px) !important; font-weight:700 !important;
}
body:has(.about__inav) .about__content .caption_mb_large{ margin-bottom:18px; }
body:has(.about__inav) .about__content .color-orange{ color:var(--cm-gold-hi) !important; }
body:has(.about__inav) .about__content .color-red{ color:var(--cm-blood-hi) !important; }
body:has(.about__inav) .about__content .list li:before{
  background-color:var(--cm-gold) !important; border-radius:0 !important; transform:rotate(45deg);
  width:6px !important; height:6px !important; top:.62em !important;
}
body:has(.about__inav) .about__content .itm__name,body:has(.about__inav) .about__content .itm__title{ color:var(--cm-fg) !important; }

/* спойлеры */
body:has(.about__inav) .spoiler{ --spoiler-bgc-heading:var(--cm-ink-3); color:#d6ccc1; border:1px solid var(--cm-line); border-radius:3px; }
body:has(.about__inav) .spoiler__heading{ color:var(--cm-gold) !important; cursor:pointer; transition:background .2s; }
body:has(.about__inav) .spoiler__heading:hover{ background:#22171400; background:rgba(181,32,31,.16); }
body:has(.about__inav) .spoiler[data-spoiler=active] .spoiler__heading{ background:linear-gradient(90deg,rgba(181,32,31,.3),var(--cm-ink-3)); }
body:has(.about__inav) .spoiler__title{ font-family:var(--cm-f-body) !important; font-size:14px !important; font-weight:600 !important; letter-spacing:.01em; }
body:has(.about__inav) .spoiler__arrow{ color:var(--cm-gold) !important; }
body:has(.about__inav) .spoiler__arrow:after{ color:var(--cm-gold) !important; }
body:has(.about__inav) .spoiler__container{ background:rgba(8,6,5,.65) !important; }
body:has(.about__inav) .spoiler__content{ font-size:14px !important; line-height:1.6; }

/* таблицы */
body:has(.about__inav) .about__content table{ background:transparent !important; border:1px solid var(--cm-line) !important; color:#d6ccc1; border-radius:3px; }
body:has(.about__inav) .about__content th{
  background:rgba(8,6,5,.75) !important; color:var(--cm-gold) !important; font-family:var(--cm-f-cap) !important;
  font-size:12px !important; letter-spacing:.06em; text-transform:uppercase; font-weight:600 !important;
}
body:has(.about__inav) .about__content td,body:has(.about__inav) .about__content th{ border:1px solid rgba(227,178,92,.12) !important; }
body:has(.about__inav) .about__content tr{ background:transparent !important; }
body:has(.about__inav) .about__content tr:nth-child(even) td{ background:rgba(255,255,255,.022); }
body:has(.about__inav) .about__content tr:hover td{ background:rgba(227,178,92,.05); }

/* компоненты новой версии описания (ab-*) */
body:has(.about__inav) .about__content .ab-lead{ color:var(--cm-fg) !important; }
body:has(.about__inav) .about__content .ab-sec{ border-top-color:var(--cm-line) !important; }
body:has(.about__inav) .about__content .ab-h{ color:var(--cm-fg) !important; font-family:var(--cm-f-serif) !important; font-size:21px !important; }
body:has(.about__inav) .about__content .ab-sub,body:has(.about__inav) .about__content .ab-card__title,body:has(.about__inav) .about__content .ab-dl dt,body:has(.about__inav) .about__content .ab-boss__name{ color:var(--cm-gold) !important; }
body:has(.about__inav) .about__content .ab-stat{
  position:relative; background:linear-gradient(180deg,var(--cm-ink-3),var(--cm-ink-2)) !important; border:1px solid var(--cm-line);
  border-radius:3px !important; color:var(--cm-fg-dim) !important;
}
body:has(.about__inav) .about__content .ab-stat::before{ content:""; position:absolute; top:6px; left:6px; width:9px; height:9px; border:1px solid var(--cm-gold); border-right:0; border-bottom:0; opacity:.55; }
body:has(.about__inav) .about__content .ab-stat__val{ color:var(--cm-gold) !important; font-family:var(--cm-f-disp) !important; font-weight:700; }
body:has(.about__inav) .about__content .ab-stat__lbl{ font-family:var(--cm-f-body); letter-spacing:.06em; }
body:has(.about__inav) .about__content .ab-card,body:has(.about__inav) .about__content .ab-boss{ background:rgba(34,24,21,.72) !important; border-color:var(--cm-line) !important; border-radius:3px !important; }
body:has(.about__inav) .about__content .ab-note{ background:rgba(227,178,92,.08) !important; border-left-color:var(--cm-gold) !important; color:#e4d9cc !important; }
body:has(.about__inav) .about__content .ab-note_warn{ background:rgba(181,32,31,.13) !important; border-left-color:var(--cm-blood) !important; }
body:has(.about__inav) .about__content .ab-chip{ background:var(--cm-ink-3) !important; color:var(--cm-gold-hi) !important; box-shadow:inset 0 0 0 1px var(--cm-line); }
body:has(.about__inav) .about__content ol.ab-steps > li:before{ background:var(--cm-blood) !important; color:#fff !important; }
body:has(.about__inav) .about__content .list li:before{ background-color:var(--cm-gold) !important; }
body:has(.about__inav) .about__content .ab-shot img{ border:1px solid var(--cm-line); box-shadow:0 8px 24px rgba(0,0,0,.45) !important; }
body:has(.about__inav) .about__content .ab-shot figcaption{ color:var(--cm-fg-dim) !important; }
body:has(.about__inav) .about__content .ab-garr{ color:var(--cm-gold-dim) !important; }
body:has(.about__inav) .about__content .ab-key{ border-color:var(--cm-gold-dim) !important; background:var(--cm-ink) !important; color:var(--cm-fg) !important; }
body:has(.about__inav) .about__content .ab-dl dd{ color:#d6ccc1; }

/* поиск по описанию */
body:has(.about__inav) .ab-search__input{
  background-color:rgba(18,13,12,.95) !important; color:var(--cm-fg) !important; border-color:var(--cm-line) !important; box-shadow:none !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23e3b25c' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='m12.5 12.5 4 4'/%3E%3C/svg%3E") !important;
  font-family:var(--cm-f-body) !important; color-scheme:dark;
}
body:has(.about__inav) .ab-search__input::placeholder{ color:rgba(178,167,156,.6) !important; }
body:has(.about__inav) .ab-search__input:focus{ border-color:var(--cm-gold-dim) !important; box-shadow:0 0 0 3px rgba(227,178,92,.14) !important; background-color:var(--cm-ink-2) !important; }
body:has(.about__inav) .ab-search__clear{ color:var(--cm-gold) !important; }
body:has(.about__inav) .ab-search__clear:hover{ background:rgba(227,178,92,.1) !important; }
body:has(.about__inav) .ab-search__drop{ background:var(--cm-ink-2) !important; border-color:var(--cm-line) !important; box-shadow:0 16px 40px rgba(0,0,0,.6) !important; }
body:has(.about__inav) .ab-search__grp{ background:var(--cm-ink-2) !important; color:var(--cm-gold) !important; border-top-color:var(--cm-line) !important; }
body:has(.about__inav) .ab-search__item{ color:#d6ccc1 !important; }
body:has(.about__inav) .ab-search__item:hover,body:has(.about__inav) .ab-search__item.is-sel{ background:rgba(181,32,31,.18) !important; }
body:has(.about__inav) .ab-search__path,body:has(.about__inav) .ab-search__empty{ color:var(--cm-fg-dim) !important; }
body:has(.about__inav) .ab-search__item mark,body:has(.about__inav) mark.ab-mark{ background:rgba(227,178,92,.3) !important; color:var(--cm-fg) !important; }

/* телефон: таблицы карточками */
@media (max-width:600px){
  body:has(.about__inav) .about__content .tbl_stack tr{ border-bottom-color:var(--cm-line) !important; }
  body:has(.about__inav) .about__content .tbl_stack td:first-child{ color:var(--cm-gold) !important; }
  body:has(.about__inav) [data-section=about]::after{ width:90px; height:90px; top:150px; }
}
@media (min-width:1200px){
  body:has(.about__inav) .cm-sbar{ left:calc(50% - 50vw) !important; right:calc(50% - 50vw) !important; }
}
/* фиксированные размеры текста (main.css масштабирует rem) */
body:has(.about__inav) .about__content .ab-lead{ font-size:16px !important; line-height:1.65; }
body:has(.about__inav) .about__content .ab-stat__val{ font-size:26px !important; }
body:has(.about__inav) .about__content .ab-stat__lbl{ font-size:11px !important; }
body:has(.about__inav) .about__content .ab-note,
body:has(.about__inav) .about__content .ab-card,
body:has(.about__inav) .about__content .ab-dl{ font-size:14.5px !important; }
body:has(.about__inav) .about__content .ab-chip{ font-size:13px !important; }
body:has(.about__inav) .about__content .ab-tag{ font-size:12px !important; }
body:has(.about__inav) .about__content .ab-shot figcaption{ font-size:12.5px !important; }
body:has(.about__inav) .about__content td,
body:has(.about__inav) .about__content th{ font-size:14px; }
body:has(.about__inav) .about__content .ab-ii{ width:22px !important; height:22px !important; }
body:has(.about__inav) .about__content .ab-ico,
body:has(.about__inav) .about__content .ab-icons img,
body:has(.about__inav) .about__content .ab-inline-ico{ width:32px !important; height:32px !important; }
body:has(.about__inav) .ab-search__input{ font-size:14px !important; height:46px !important; }
@media (max-width:600px){
  body:has(.about__inav) [data-section=about]::after{ width:74px !important; height:74px !important; top:118px !important; right:-14px !important; opacity:.7; }
}

/* ---------------- Баннеры рейтингов (L2PICK, L2TOP, MMOTOP) над логотипом ---------------- */
.cm-votes{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:16px; }
.cm-votes__item{ display:block; line-height:0; border-radius:2px; opacity:.9; transition:opacity .2s, transform .2s; }
.cm-votes__item:hover{ opacity:1; transform:translateY(-1px); }
.cm-votes__item img{ display:block; height:31px; width:auto; max-width:none; border:0; }
@media (min-width:1200px) and (max-height:760px){ .cm-votes{ margin-bottom:10px; } .cm-votes__item img{ height:26px; } }

/* новости из кабинета */
.cm-home [hidden]{ display:none !important; }
.cm-post__pic{ display:block; text-decoration:none; }
.cm-arrow.swiper-button-lock{ display:none; }

/* ---------------- Points не перекрывают контент ----------------
   Подписи справа занимают ~170px. Когда они видны (>=1600px),
   герой оставляет справа (и симметрично слева) не меньше 190px. */
@media (min-width:1600px){
  .cm-hero .cm-wrap{ max-width:min(var(--cm-wide), calc(100vw - 284px)); }
}

/* ---------------- Плашка анонса нового старта (правая колонка героя) ---------------- */
.cm-hero__side{ flex:0 0 360px; max-width:100%; display:flex; flex-direction:column; gap:16px; min-width:0; }
.cm-hero__side .cm-srv{ flex:none; width:auto; }
.cm-ann{
  position:relative; overflow:hidden; box-sizing:border-box; padding:20px 22px 18px; border-radius:4px;
  background:
    radial-gradient(120% 90% at 100% 0%, rgba(181,32,31,.38), transparent 58%),
    linear-gradient(180deg, rgba(26,18,16,.94), rgba(12,9,8,.94));
  border:1px solid var(--cm-gold-dim);
  box-shadow:0 18px 44px rgba(0,0,0,.45), inset 0 0 0 1px rgba(227,178,92,.08);
}
.cm-ann::before,.cm-ann::after{ content:""; position:absolute; width:14px; height:14px; border:1px solid var(--cm-gold); opacity:.7; }
.cm-ann::before{ top:8px; left:8px; border-right:0; border-bottom:0; }
.cm-ann::after{ bottom:8px; right:8px; border-left:0; border-top:0; }
.cm-ann__glow{
  position:absolute; inset:-1px; pointer-events:none; border-radius:4px; padding:1px;
  background:linear-gradient(110deg, transparent 30%, rgba(243,201,120,.85) 45%, rgba(214,70,60,.85) 55%, transparent 70%) 0 0/250% 100%;
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude;
  animation:cm-ann-sheen 6s linear infinite; opacity:.9;
}
@keyframes cm-ann-sheen{ 0%{ background-position:150% 0; } 100%{ background-position:-100% 0; } }
.cm-ann__eyebrow{ display:flex; align-items:center; gap:8px; font-family:var(--cm-f-cap); text-transform:uppercase; letter-spacing:.18em; font-size:11px; font-weight:600; color:var(--cm-gold); }
.cm-ann__pulse{ width:8px; height:8px; border-radius:50%; background:var(--cm-blood-hi); box-shadow:0 0 0 0 rgba(214,70,60,.7); animation:cm-ann-pulse 1.8s ease-out infinite; flex-shrink:0; }
@keyframes cm-ann-pulse{ 0%{ box-shadow:0 0 0 0 rgba(214,70,60,.7); } 100%{ box-shadow:0 0 0 10px rgba(214,70,60,0); } }
.cm-ann__title{ margin-top:8px; font-family:var(--cm-f-disp); font-weight:700; font-size:32px; line-height:1.05; color:var(--cm-gold-hi); text-shadow:0 0 22px rgba(181,32,31,.45); }
.cm-ann__sub{ margin-top:4px; font-size:12.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--cm-fg-dim); }
.cm-ann__timer{ display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-top:16px; }
.cm-ann__cell{ text-align:center; padding:9px 4px 7px; border:1px solid var(--cm-line); border-radius:3px; background:rgba(8,6,5,.55); }
.cm-ann__cell b{ display:block; font-family:var(--cm-f-disp); font-size:24px; line-height:1; color:var(--cm-fg); font-variant-numeric:tabular-nums; }
.cm-ann__cell span{ display:block; margin-top:5px; font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--cm-fg-dim); }
.cm-ann__live{ margin-top:16px; padding:12px; text-align:center; border:1px solid var(--cm-gold-dim); border-radius:3px; background:rgba(181,32,31,.18); color:var(--cm-gold-hi); font-family:var(--cm-f-serif); font-size:16px; }
.cm-ann__date{ margin-top:12px; text-align:center; font-size:13px; color:var(--cm-fg); letter-spacing:.04em; }
.cm-ann__foot{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-top:14px; padding-top:14px; border-top:1px solid var(--cm-line); }
.cm-ann__prize{ font-size:12px; font-weight:600; color:var(--cm-gold); padding:5px 10px; border:1px solid var(--cm-line); border-radius:999px; background:rgba(227,178,92,.07); }
html[data-cm-anim=off] .cm-ann__glow,html[data-cm-anim=off] .cm-ann__pulse{ animation:none; }
html[data-cm-anim=off] .cm-ann__glow{ opacity:0; }
@media (prefers-reduced-motion:reduce){ .cm-ann__glow,.cm-ann__pulse{ animation:none; } .cm-ann__glow{ opacity:0; } }
@media (min-width:1200px) and (max-height:900px){
  .cm-hero__side{ gap:12px; }
  .cm-ann{ padding:14px 18px 13px; }
  .cm-ann__title{ font-size:26px; margin-top:6px; }
  .cm-ann__timer{ margin-top:11px; }
  .cm-ann__cell{ padding:7px 3px 5px; }
  .cm-ann__cell b{ font-size:20px; }
  .cm-ann__date{ margin-top:8px; }
  .cm-ann__foot{ margin-top:10px; padding-top:10px; }
  .cm-hero__side .cm-srv{ padding:12px 18px; }
  .cm-hero__side .cm-srv__item{ padding:9px 0; }
}
@media (min-width:1200px) and (max-height:760px){
  .cm-ann__sub,.cm-ann__date{ display:none; }
}
@media (max-width:1199.99px){
  .cm-hero__side{ flex:1 1 100%; }
}
.cm-ann{ padding-bottom:24px; }
.cm-ann__foot{ padding-right:12px; }
@media (min-width:1200px) and (max-height:900px){ .cm-ann{ padding-bottom:20px; } }

/* ---- Mobile: кнопка «Стримы» не перекрывает кнопки героя ---- */
@media (max-width:767.98px){
  .openmedia{ left:auto !important; right:12px !important; bottom:12px !important; }
  .openmedia__btn{ padding:7px 10px !important; box-shadow:0 6px 18px rgba(0,0,0,.5) !important; }
  .cm-openmedia__txt{ font-size:10px; letter-spacing:.14em; }
  .cm-anim{ right:auto; left:16px; }
}

/* ---- Mobile: подменю раскрывается под пунктом ---- */
@media (max-width:1199.99px){
  .menu__el{ flex-direction:column !important; flex-wrap:nowrap !important; align-items:center !important; height:auto !important; }
  .menu__el > [data-menu-open-sub-list]{ background:transparent !important; }
  .menu__el > [data-menu-open-sub-list].menu__item_open{ color:var(--cm-gold) !important; }
  .menu__el > [data-menu-open-sub-list].menu__item_open::after{ transform:rotate(180deg); }
  .menu__sub-list{
    position:static !important; transform:none !important; left:auto !important; top:auto !important;
    width:min(320px, 100%) !important; min-width:0 !important; margin:6px auto 10px !important; padding:4px 0 !important;
    background:rgba(227,178,92,.05) !important; border:1px solid var(--cm-line) !important; border-top:2px solid var(--cm-blood) !important;
    box-shadow:none !important; opacity:1 !important; visibility:visible !important;
  }
  .menu__sub-item{ display:block !important; text-align:center !important; padding:10px 14px !important; font-size:14px !important; white-space:normal; }
  .menu__sub-item:hover{ color:var(--cm-gold) !important; }
  body.mob-menu-active .openmedia{ display:none !important; }
}
