/* Keep the operational shell in the viewport; each pane owns its scroll. */
.app-shell{--sidebar-width:248px;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);height:100vh;height:100dvh;min-height:0;overflow:hidden}
.app-shell>.sidebar{width:auto;min-height:0;height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--forest)}
.sidebar>.brand,.sidebar>.tagline,.sidebar>.branch-picker,.sidebar>.sidebar-bottom{flex-shrink:0}
.sidebar>#primary-navigation{flex:1 1 0;min-height:44px;overflow-y:auto;overflow-x:hidden;align-content:start;overscroll-behavior:contain;padding:3px 4px 8px;margin:0 -4px;scroll-padding:8px;scrollbar-width:thin;scrollbar-color:#a4c3b7 transparent}
.sidebar>.sidebar-bottom{margin-top:12px}
.app-shell>.main-content{min-height:0;height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scroll-padding:20px}
.sidebar .nav-item{min-height:44px}
.sidebar .nav-item:focus-visible{outline:2px solid var(--lime);outline-offset:-2px;background:#124d3e;color:#fff}
.sidebar .nav-item:hover,.sidebar .nav-item.active{background:#124d3e}
.navigation-backdrop{display:none}
@media(max-width:1100px){.app-shell{--sidebar-width:205px}}
@media(max-width:760px){
 .app-shell{--sidebar-width:64px}
 .sidebar>#primary-navigation{padding-top:60px}
 .sidebar.mobile-open{width:min(288px,calc(100vw - 48px));height:100dvh;overflow-y:auto}
 .sidebar.mobile-open>#primary-navigation{padding-top:3px}
 .sidebar.mobile-open>.sidebar-bottom{margin-top:12px}
 .sidebar.mobile-open .tagline{display:block;margin:18px 12px}
 .sidebar.mobile-open .branch-picker{margin-bottom:14px}
 .navigation-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:19;border:0;background:#052a2180;cursor:default}
}
@media(max-height:560px) and (min-width:761px){.sidebar{padding-top:16px;padding-bottom:12px}.sidebar>.tagline{margin:12px 16px}.sidebar>.branch-picker{margin-bottom:12px}}
@media(max-height:480px){.sidebar.mobile-open>.tagline{display:none}.sidebar.mobile-open>.branch-picker{margin:12px 0}}
