/* Keep all navigation reachable regardless of link count or viewport height. */
.app-sidebar{min-height:0;overflow:visible;gap:10px;box-sizing:border-box}
.app-sidebar .sidebar-brand{flex-shrink:0;margin-bottom:4px}
.app-sidebar .sidebar-nav{flex:1 1 0;min-height:0;width:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#badde0 transparent;padding:3px 0;gap:8px}
.app-sidebar .sidebar-nav>*{flex-shrink:0}
.app-sidebar .sidebar-link,.app-sidebar .sidebar-logout{flex-shrink:0;min-height:44px}
.app-sidebar .sidebar-bottom{flex:0 0 auto;margin-top:0;padding-top:8px;gap:6px;border-top:1px solid #ffffff30}
.app-sidebar .sidebar-bottom form{margin:0}
.sidebar-mobile-bar,.sidebar-close,.sidebar-backdrop,.sidebar-item-label{display:none}
.app-sidebar .ato-navigation-menu{position:fixed;max-height:calc(100dvh - 16px);overflow-y:auto;overscroll-behavior:contain}
@media(min-width:992px) and (max-height:760px){
 .app-sidebar{top:10px;bottom:10px;padding-top:10px;padding-bottom:10px;gap:6px}
 .app-sidebar .sidebar-nav{gap:4px}
 .app-sidebar .sidebar-brand{margin-bottom:0}
 .app-sidebar .sidebar-link,.app-sidebar .sidebar-logout{height:44px}
 .app-sidebar .sidebar-bottom{gap:4px;padding-top:5px}
}
@media(max-width:991px){
 .sidebar-mobile-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;z-index:1020;padding:8px 14px;background:var(--sidebar-blue,#155f83);color:white;min-height:60px}
 .sidebar-mobile-bar button,.sidebar-close{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #ffffff60;border-radius:10px;background:transparent;color:white;font-size:23px}
 .sidebar-mobile-bar a{color:white;text-decoration:none;font-weight:700}
 .app-shell .app-sidebar{position:fixed;top:0;bottom:0;left:0;right:auto;width:min(304px,calc(100vw - 24px));height:100vh;height:100dvh;max-height:100dvh;padding:14px;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;border-radius:0;z-index:1040;transform:translateX(-110%);visibility:hidden;transition:transform .18s ease,visibility .18s ease}
 html[dir=rtl] .app-shell .app-sidebar{left:auto;right:0;transform:translateX(110%)}
 body.sidebar-open .app-shell .app-sidebar{transform:translateX(0);visibility:visible}
 .app-sidebar .sidebar-brand{align-self:flex-start;width:44px;height:44px;margin:0}
 .sidebar-close{position:absolute;inset-inline-end:14px;top:14px}
 .app-sidebar .sidebar-nav{flex-direction:column;align-items:stretch;width:100%;flex-shrink:1;gap:4px}
 .app-sidebar .sidebar-nav>.sidebar-link,.app-sidebar .ato-navigation-trigger{width:100%;height:auto;min-height:44px;justify-content:flex-start;padding:10px 12px;gap:12px;border-radius:10px;font-size:18px}
 .sidebar-item-label{display:inline;font-size:14px;font-weight:600;line-height:1.5}
 .app-sidebar .sidebar-bottom{flex-direction:row;justify-content:space-evenly;align-items:center;width:100%;gap:8px;min-height:58px}
 .app-sidebar .sidebar-bottom .sidebar-link,.app-sidebar .sidebar-bottom .sidebar-logout{width:44px;height:44px;min-height:44px}
 .app-sidebar .language-switcher{width:52px;height:44px}
 .app-sidebar .ato-navigation{width:100%}
 .app-sidebar .ato-navigation-menu{position:static!important;min-width:0;width:100%;max-width:100%;max-height:none;margin:4px 0;box-sizing:border-box;box-shadow:none}
 .app-sidebar .ato-navigation-menu a{white-space:normal;min-height:44px}
 body.sidebar-open{overflow:hidden}
 body.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;z-index:1030;border:0;padding:0;background:#0008}
 .app-shell .app-main{margin-left:0;margin-right:0;min-width:0}
}
@media(prefers-reduced-motion:reduce){.app-shell .app-sidebar{transition:none}}
