/* Главное левое меню — заголовки + единый аккордеон + одна активная подсветка. */

/* ЭТАП 3 · шаг 1 (11.08.2026): заголовки разделов были индиго — цвет, которого
   в палитре платформы нет. Берём фирменный акцент Точки Б через мост токенов
   (--ds-accent-ink); запасные значения оставлены на случай, если файл подключат
   там, где моста ещё нет. */
nav.scrollbar-auto-hide { --orq-head: var(--ds-accent-ink, #04786a); }
.dark nav.scrollbar-auto-hide,
[data-theme="dark"] nav.scrollbar-auto-hide { --orq-head: var(--ds-accent-ink, #5ddac6); }

/* Все секции свёрнуты по умолчанию (до JS) — строго верхний уровень, вложенные подгруппы не трогаем.
   Gate .orq-acc-on ставит inline-скрипт в <head> и снимает, если полировка не загрузилась
   (тогда меню остаётся раскрытым — безопасный фолбэк, а не «залипло свёрнутым»). */
.orq-acc-on nav.scrollbar-auto-hide > * > .group\/sidebar-section:not(.orq-managed) + * {
  max-height: 0; overflow: hidden; opacity: 0;
}

/* --- Заголовки секций: крупнее, ярче, в цвете, кликабельны --- */
nav.scrollbar-auto-hide .group\/sidebar-section {
  margin-top: 0.5rem;
  border-radius: 8px;
  cursor: pointer;
  transition: background-color 0.16s ease;
}
nav.scrollbar-auto-hide .group\/sidebar-section.orq-managed:first-child,
nav.scrollbar-auto-hide > :nth-child(2) > .group\/sidebar-section { margin-top: 0.15rem; }
nav.scrollbar-auto-hide .group\/sidebar-section.orq-managed:hover {
  background: color-mix(in oklab, var(--sidebar-accent, oklch(50% 0 0)) 55%, transparent);
}

nav.scrollbar-auto-hide .orq-sec,
nav.scrollbar-auto-hide .group\/sidebar-section .uppercase {
  font-family: inherit !important;
  font-size: 12.5px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  letter-spacing: 0.085em !important;
  text-transform: uppercase !important;
  color: var(--orq-head) !important;
  opacity: 1 !important;
}

/* --- Мой шеврон: всегда виден, яркий/белый, крупнее, поворот при раскрытии --- */
nav.scrollbar-auto-hide .orq-native-hidden { display: none !important; }
nav.scrollbar-auto-hide .orq-chev {
  margin-left: auto;
  display: inline-flex; align-items: center; justify-content: center;
  width: 18px; height: 18px; flex: 0 0 18px;
  border-radius: 5px;
  color: var(--foreground);
  opacity: 0.85;
  transition: transform 0.22s ease, background-color 0.16s ease, opacity 0.16s ease;
}
nav.scrollbar-auto-hide .orq-chev svg { width: 15px; height: 15px; }
nav.scrollbar-auto-hide .group\/sidebar-section.orq-open .orq-chev { transform: rotate(90deg); }
nav.scrollbar-auto-hide .group\/sidebar-section:hover .orq-chev {
  opacity: 1;
  background: color-mix(in oklab, var(--foreground) 16%, transparent);
}

/* --- Пункты: ровно, ОДНА активная подсветка ---
   ЭТАП 3 · шаг 1 (11.08.2026): размер шрифта, отступы и радиус отсюда убраны.
   Их задаёт сама платформа по эталону Точки Б (28 px, 13 px, радиус 4) — два
   набора чисел на один пункт давали 12 px здесь и 13 px в бандле. */
nav.scrollbar-auto-hide a.orq-item {
  align-items: center !important;
}
nav.scrollbar-auto-hide a.orq-item > span.shrink-0,
nav.scrollbar-auto-hide a.orq-item > span:first-child { flex: 0 0 16px !important; }
nav.scrollbar-auto-hide a.orq-item svg { width: 16px !important; height: 16px !important; }
nav.scrollbar-auto-hide a.orq-item > span.flex-1 { min-width: 0 !important; }
/* Пункт НЕ должен «торчать» за левый край: nav с overflow-y:auto режет по X, и
   любой отрицательный сдвиг (margin/position/transform) обрезает текст («естр…»).
   Жёстко сбрасываем сдвиги — инжектированные клоны (Реестр платежей) встают ровно. */
nav.scrollbar-auto-hide a.orq-item {
  position: static !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: auto !important;
  max-width: 100% !important;
}
/* ОДНА активная подсветка (авторитетно): активный пункт — свой фон; у всех
   остальных фон гасим, но ХОВЕР сохраняем (:not(:hover)). Это убивает и ложную
   активность родителя /crm на /crm/*, и клоны-инжекторы с чужим bg-accent. */
/* ЭТАП 3 · шаг 1 (11.08.2026): активный пункт был залит ЧИСТЫМ КРАСНЫМ с
   ЗЕЛЁНОЙ полосой слева — отладочные цвета, доехавшие до продакшена и больше
   нигде в платформе не встречающиеся. Взамен состояние из эталона Точки Б
   (.pb-navitem[aria-current]): мягкая заливка акцентом и полоса акцента слева.
   Полоса рисуется тенью ВНУТРЬ, поэтому подпись не сдвигается и подгонять
   padding-left больше не нужно. Цвет подписи — свой, как у остальных пунктов. */
nav.scrollbar-auto-hide a.orq-item.orq-active {
  background-color: var(--ds-accent-soft, rgb(0 190 162 / 0.14)) !important;
  box-shadow: inset 2px 0 0 var(--ds-accent, #00bea2) !important;
}
nav.scrollbar-auto-hide a.orq-item.orq-mute:not(:hover) { background-color: transparent !important; }
/* Обёртка неактивного пункта: гасим СЕРЫЙ фон, который модули красят на своей
   обёртке (не на <a>). Без этого он залипал (Реестр платежей серел везде).
   Через :has() — чисто в CSS, без JS-мутаций (иначе наблюдатель за атрибутами
   зацикливался). Активную обёртку не трогаем: у её <a> класс orq-active. */
nav.scrollbar-auto-hide :has(> a.orq-item.orq-mute):not(:hover) { background-color: transparent !important; }

/* «Голые» подписи. */
nav.scrollbar-auto-hide .orq-ghost {
  display: flex !important; align-items: center !important;
  font-size: 11.5px !important;
  padding: 0.34rem 0.75rem 0.34rem calc(0.75rem + 16px + 0.6rem) !important;
  color: var(--muted-foreground) !important;
}


/* ===========================================================================
   ЭТАП 3 · шаг 1 — левое меню больше не едет вбок  (дефект P-01 Точки А)

   Что было. Меню прокручивалось по горизонтали на 14 экранах из 15. Замер на
   боевом дашборде: ширина колонки 229 px, содержимое 248 px. Виноват не родной
   пункт меню, а вставляемая «рельса» значков .orq-badge-rail: у проекта с тремя
   серверами она рисует три значка С ТЕКСТОВЫМИ подписями окружения
   («прод», «тест», «прод») и разрастается до 189 px, выталкивая строку.

   Что делаем. Три правила по канону Точки Б «пункт — одна строка с обрезкой,
   overflow-x запрещён»:
     1) подпись окружения в меню скрыта — она дублируется в подсказке значка,
        а сами значки серверов остаются видимыми все;
     2) рельса не занимает больше половины строки;
     3) горизонтальная прокрутка самого меню запрещена — это страхует от любой
        будущей причины, а не только от текущей.
   Логика значков, их данные и обработчики не тронуты.
   =========================================================================== */

nav.scrollbar-auto-hide { overflow-x: hidden !important; }
nav.scrollbar-auto-hide a { min-width: 0 !important; }

/* Колонка меню по эталону 200 px, а не 240: рельса на половину строки съедала
   имена проектов («Supply Ur…», «Платфор…»). Имя важнее значков — рельсе
   оставлен ровно её размер, дальше она обрезается. */
.orq-badge-rail {
  /* 19.08.2026 ред.2: обрезки нет вообще. Кластер значков ПРИЖАТ К ПРАВОМУ КРАЮ
     строки — у всех строк котёнок стоит на одной вертикали. Ширина рельсы по
     содержимому: где три сервера, кластер уходит ВЛЕВО и имя обрывается раньше.
     Размер значков — штатный, не уменьшаем. */
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: visible !important;
  margin-left: auto !important;
  justify-content: flex-end !important;
  gap: 5px !important;
  padding-left: 6px !important;
}
.orq-badge-rail .cb-srv-badge { gap: 4px !important; }
/* Имя обрывается многоточием, а не уезжает под значки. */
nav.scrollbar-auto-hide a .orq-pname {
  text-overflow: ellipsis !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}
/* Окружение сервера остаётся в подсказке значка (btn.title) — в узкой колонке
   меню три текстовые метки не помещаются и ломают строку. */
.orq-badge-rail .cb-srv-tag { display: none !important; }


/* ===========================================================================
   19.08.2026 — ПЛОТНОЕ МЕНЮ
   Было: nav gap 16 px + шапка секции 36 px = шаг 52 px на свёрнутую секцию,
   девять секций занимали 468 px пустоты. Стало: gap 4 px + шапка 26 px = 30 px.
   Трогаются только вертикальные отступы; размеры шрифта, цвета и логика — нет.
   =========================================================================== */
nav.scrollbar-auto-hide { gap: 4px !important; }
nav.scrollbar-auto-hide .group\/sidebar-section {
  margin-top: 0 !important;
  padding-top: 3px !important;
  padding-bottom: 3px !important;
}
nav.scrollbar-auto-hide .group\/sidebar-section.orq-managed:first-child,
nav.scrollbar-auto-hide > :nth-child(2) > .group\/sidebar-section { margin-top: 0 !important; }
/* Тело секции — без лишнего отрыва от своей шапки. */
nav.scrollbar-auto-hide .group\/sidebar-section + * { margin-top: 1px !important; }
nav.scrollbar-auto-hide .orq-ghost { padding-top: 0.22rem !important; padding-bottom: 0.22rem !important; }

/* 19.08.2026: «ИНФРАСТРУКТУРА» упиралась в шеврон — длинная подпись съедала его
   место. Разрядку уменьшили, шеврон остался прижат к правому краю. */
nav.scrollbar-auto-hide .orq-sec,
nav.scrollbar-auto-hide .group\/sidebar-section .uppercase {
  font-size: 11.5px !important;
  letter-spacing: 0.01em !important;
  white-space: nowrap !important;
}
