/* Боковое меню: группы, поиск, компактный низ */
.nav-search{display:flex;align-items:center;gap:var(--sp-2);width:100%;margin:0 0 var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--border-subtle);color:var(--text-dim);font:inherit;font-size:var(--fs-sm);cursor:pointer;text-align:left}
.nav-search:hover{color:var(--text);border-color:var(--border)}
.nav-search svg{width:15px;height:15px;flex:none;stroke:currentColor}
.nav-search kbd{margin-left:auto;font-family:var(--mono,ui-monospace,monospace);font-size:var(--fs-xs);padding:1px var(--sp-2);border-radius:var(--r-sm);border:1px solid var(--border-subtle);color:var(--text-dim)}

.nav-group{margin:0 0 2px}
.nav-gh{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);background:transparent;border:1px solid transparent;color:var(--text);font:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer;text-align:left;transition:background .15s,color .15s}
.nav-gh:hover{background:var(--surface)}
.nav-gh > svg{width:16px;height:16px;flex:none;stroke:currentColor;opacity:.85}
.nav-gh .nav-chev{width:14px;height:14px;margin-left:0;opacity:.55;transition:transform .18s}
.nav-group.open .nav-chev{transform:rotate(180deg)}
.nav-group.has-on .nav-gh{color:var(--accent)}
.nav-cnt{margin-left:auto;font-size:var(--fs-xs);font-weight:400;color:var(--text-dim)}
.nav-dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--warn,#ebbd77);box-shadow:0 0 7px var(--warn,#ebbd77)}
.nav-dot[data-lvl="err"]{background:var(--err,#ee8b92);box-shadow:0 0 7px var(--err,#ee8b92)}
.nav-dot[hidden]{display:none}

.nav-gi{display:none;flex-direction:column;gap:2px;margin:2px 0 var(--sp-2) 17px;padding-left:var(--sp-2);border-left:1px solid var(--border-subtle)}
.nav-group.open .nav-gi{display:flex;animation:navIn .16s ease both}
@keyframes navIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
.nav-gi .nav-item{padding:var(--sp-2) var(--sp-2);font-size:var(--fs-sm)}
.nav-gi .nav-item.on::before{left:-10px}
.nav-gi .nav-item svg{width:15px;height:15px}
.nav-gi .nav-ext{width:13px;height:13px;margin-left:auto;opacity:.55}

.nav-tools{display:flex;gap:var(--sp-2);margin:2px 0}
.nav-tools .nav-tool{flex:1;width:auto !important;justify-content:center !important;padding:var(--sp-2) !important;gap:0}
.nav-tools .nav-tool span{display:none !important}
.nav-tools .nav-tool svg{width:16px;height:16px}

.nav-pal{position:fixed;inset:0;z-index:3000;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;background:rgba(2,6,23,.6)}
.nav-pal[hidden]{display:none}
.nav-pal-box{width:min(520px,92vw);background:var(--bg-2,#0f1521);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-3);box-shadow:0 24px 70px rgba(0,0,0,.55)}
.nav-pal-box input{width:100%;padding:var(--sp-3) var(--sp-3);font-size:var(--fs-md);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);color:var(--text)}
.nav-pal-list{display:flex;flex-direction:column;gap:2px;margin:var(--sp-3) 0 var(--sp-2);max-height:46vh;overflow:auto}
.nav-pal-it{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--r);cursor:pointer;color:var(--text-muted);font-size:var(--fs-md)}
.nav-pal-it svg{width:16px;height:16px;flex:none;stroke:currentColor}
.nav-pal-it small{margin-left:auto;font-size:var(--fs-xs);color:var(--text-dim)}
.nav-pal-it.on,.nav-pal-it:hover{background:var(--accent-muted);color:var(--accent)}
.nav-pal-empty{padding:var(--sp-4) var(--sp-3);color:var(--text-dim);font-size:var(--fs-md)}
.nav-pal-hint{font-size:var(--fs-xs);color:var(--text-dim);padding:2px var(--sp-1)}
.nav-pal-hint kbd{font-family:var(--mono,ui-monospace,monospace);font-size:var(--fs-xs);border:1px solid var(--border-subtle);border-radius:var(--r-xs);padding:0 var(--sp-1);margin:0 2px}
@media (prefers-reduced-motion:reduce){.nav-group.open .nav-gi{animation:none}}

/* сброс «стеклянного» вида кнопок темы для заголовков групп и поиска */
button.nav-gh, button.nav-search{background:transparent !important;box-shadow:none !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important;border-radius:var(--r-sm) !important;transform:none !important}
button.nav-gh{border:1px solid transparent !important}
button.nav-gh:hover{background:var(--surface) !important;transform:none !important}
button.nav-search{background:var(--surface) !important;border:1px solid var(--border-subtle) !important}
button.nav-gh:active, button.nav-search:active{transform:none !important}
.nav-gh .nav-chev{stroke-width:2.2}

/* Группа «Настройки» внизу меню: раскрытый список не выталкивает профиль за экран */
.sidebar-bottom .nav-group-settings .nav-gi { max-height: 40vh; overflow-y: auto }

/* Пять разделов: заголовок раздела + его пункты. Подпись внутри раздела делит длинный список. */
.nav-sub{padding:var(--sp-3) var(--sp-2) 3px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}
