/* Task groups use existing navigation buttons, permissions and workspace tokens. */
#sbNav .navigation-group { margin:3px 0; }
#sbNav .navigation-group[hidden], #sbNav .navigation-group-badge[hidden] { display:none !important; }
#sbNav .navigation-group-toggle { display:flex; align-items:center; gap:10px; min-height:46px; margin:2px 8px; padding:10px 12px; border-radius:10px; color:var(--text-2); font:600 13px/1.3 var(--f2); cursor:pointer; list-style:none; box-sizing:border-box; }
#sbNav .navigation-group-toggle::-webkit-details-marker { display:none; }
#sbNav .navigation-group-toggle:hover, #sbNav .navigation-group-active { color:var(--text); background:var(--surface-2); }
#sbNav .navigation-group-toggle:focus-visible { outline:2px solid var(--primary); outline-offset:-2px; }
#sbNav .navigation-group-label { flex:1; min-width:0; white-space:normal; overflow-wrap:normal; }
#sbNav .navigation-group-icon { width:22px; height:22px; flex:0 0 22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
#sbNav .navigation-group-arrow { width:12px; height:12px; flex:0 0 12px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; transition:transform .15s; }
#sbNav .navigation-group[open] > .navigation-group-toggle .navigation-group-arrow { transform:rotate(90deg); }
#sbNav .navigation-group > .snav { margin:2px 8px 2px 20px; width:calc(100% - 28px); padding:9px 10px 9px 14px; min-height:40px; font-size:12px; gap:8px; white-space:normal; }
#sbNav .navigation-group > .snav .snav-ico { display:none; }
#sbNav .navigation-group > .snav .snav-lbl { max-width:none; overflow:visible; line-height:1.35; }
#sbNav .navigation-group-badge { width:7px; height:7px; flex:0 0 7px; overflow:hidden; font-size:0; border-radius:50%; background:var(--danger,#c13232); }
#sectionLocation { margin:0 0 12px; color:var(--text-2); font:500 12px/1.5 var(--f2); overflow-wrap:anywhere; }
#sectionLocation[hidden] { display:none; }
@media(min-width:641px) {
 #sidebar.collapsed .navigation-group-label, #sidebar.collapsed .navigation-group-arrow, #sidebar.collapsed .navigation-group > .snav { display:none !important; }
 #sidebar.collapsed .navigation-group-toggle { justify-content:center; padding:10px 8px; gap:0; }
 #sidebar.collapsed .navigation-group-badge { margin-left:-2px; align-self:flex-start; }
}
@media(max-width:640px) {
 #sbNav .navigation-group-toggle { min-height:48px; }
 #sbNav .navigation-group > .snav { min-height:44px; }
 #sidebar.collapsed .navigation-group .snav-lbl { opacity:1; max-width:none; pointer-events:auto; }
}
@media(prefers-reduced-motion:reduce) { #sbNav .navigation-group-arrow { transition:none; } }
