/* ------------------------------------------------------------
   Новый кастомный бургер/крестик для кнопки .cab-hamburger
   - .cab-hamburger.active  => гамбургер (3 полоски)
   - .cab-hamburger         => крестик (X)
------------------------------------------------------------ */

/* Fix: ensure only one vertical scrollbar on pages with fixed header
   Root cause: nested scroll due to theme containers; keep scroll on body */
.nk-header-fixed + .nk-content { zoom: 100% !important; }
.nk-content, .nk-content > .container, .nk-content-inner, .nk-content-body, .nk-content-wrap { overflow: visible !important; }

.cab-hamburger {
  position: relative;
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.cab-hamburger:focus { outline: none !important; }

.cab-hamburger__bar {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 22px;
  height: 2px;
  background: currentColor !important;
  border-radius: 1px;
  transform: translate(-50%, -50%);
  transition: transform .25s ease, box-shadow .25s ease, opacity .2s ease !important;
}

/* НЕАКТИВНО (меню закрыто) => КРЕСТИК (две диагонали) */
.cab-hamburger:not(.active)::before,
.cab-hamburger:not(.active)::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 22px;
  height: 2px;
  background: currentColor !important;
  border-radius: 1px;
  transform-origin: center;
}
.cab-hamburger:not(.active)::before { transform: translate(-50%, -50%) rotate(45deg); }
.cab-hamburger:not(.active)::after  { transform: translate(-50%, -50%) rotate(-45deg); }
.cab-hamburger:not(.active) .cab-hamburger__bar { opacity: 0; }

/* АКТИВНО (меню открыто) => ГАМБУРГЕР (3 полоски через box-shadow) */
.cab-hamburger.active .cab-hamburger__bar {
  transform: translate(-50%, -50%) rotate(0deg);
  box-shadow: 0 -7px 0 currentColor, 0 7px 0 currentColor !important;
  opacity: 1;
}
.cab-hamburger.active::before,
.cab-hamburger.active::after { content: none; }

/* Sync active class with built-in toggling (.toggle-active) */
body.nav-shown .cab-hamburger[data-target="sideNav"] { opacity: 1; }

/* Переключатель в .nk-quick-nav с SVG папкой/крестом */
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] {
  position: relative;
  color: #fff !important;
}
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"]:before,
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"].active:before,
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"]:hover:before {
  background: transparent !important;
  opacity: 0 !important;
}
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] > em.icon { display: none !important; }

/* default: показываем гамбургер (3 полоски), прячем крест */
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] .cab-burger-icon { display: inline-block !important; }
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] .cab-cross-icon { display: none !important; }

/* открытое меню — показываем крест, прячем папку */
/* по body классу */
body.nav-shown .nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] .cab-burger-icon { display: none !important; }
body.nav-shown .nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] .cab-cross-icon { display: inline-block !important; }
/* по body.toggle-shown (используется контентный тогглер) */
body.toggle-shown .nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] .cab-burger-icon { display: none !important; }
body.toggle-shown .nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"] .cab-cross-icon { display: inline-block !important; }
/* по активности самой кнопки */
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"].active .cab-burger-icon { display: none !important; }
.nk-quick-nav .nk-quick-nav-icon[data-target="sideNav"].active .cab-cross-icon { display: inline-block !important; }

/* Центрируем dashboard .logo-link на мобильных */
@media (max-width: 768px) {
  .nk-header .nk-header-brand { flex: 1 1 auto !important; display: flex !important; justify-content: center !important; }
  .nk-header .logo-link { margin: 0 auto !important; text-align: center !important; display: inline-block !important; transform: translateX(20px); }
}