/* Scoped to the Portal sidebar; existing page styles and permissions stay intact. */
.sidebar nav.portal-grouped-nav { display:flex; flex-direction:column; gap:6px; margin-top:28px; min-height:0; overflow-y:auto; overflow-x:hidden; flex:1 1 auto; padding-right:5px; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#34404f transparent; }
.sidebar nav.portal-grouped-nav > * { flex-shrink:0; }
.sidebar .portal-nav-group[hidden], .sidebar .portal-nav-items[hidden] { display:none!important; }
.sidebar .portal-nav-toggle { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; border:1px solid transparent; border-radius:9px; padding:11px 12px; background:transparent; color:#aab4c3; text-align:left; font:600 12px/1.4 Poppins,system-ui,sans-serif; }
.sidebar .portal-nav-toggle:hover { background:#172433; color:#fff; }
.sidebar .portal-nav-group.has-active > .portal-nav-toggle { color:#22d3ee; }
.sidebar .portal-nav-toggle:focus-visible, .sidebar .nav-item:focus-visible { outline:2px solid #22d3ee; outline-offset:-2px; }
.sidebar .portal-nav-chevron { width:8px; height:8px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(-45deg); transition:transform .15s; margin-right:3px; }
.sidebar .portal-nav-toggle[aria-expanded="true"] .portal-nav-chevron { transform:rotate(45deg); }
.sidebar .portal-nav-items { display:grid; gap:4px; margin:2px 0 7px 14px; padding-left:8px; border-left:1px solid #293b4e; }
.sidebar .portal-nav-items .nav-item { width:100%; padding:10px 9px; gap:10px; font-size:12px; text-align:left; min-width:0; }
.sidebar .portal-nav-items .nav-item span { white-space:normal; overflow-wrap:anywhere; }
.sidebar .sidebar-footer { flex:0 0 auto; min-width:0; }
.sidebar .sidebar-footer > div { min-width:0; }
@media(max-height:600px) { .sidebar { padding-top:16px; padding-bottom:16px; } .sidebar nav.portal-grouped-nav { margin-top:16px; } .sidebar .sidebar-footer { padding-top:12px; } }
@media(prefers-reduced-motion:reduce) { .sidebar .portal-nav-chevron { transition:none; } }
