/* Grouped navigation shares one accessible menu between desktop and mobile. */
.app-shell{grid-template-columns:236px minmax(0,1fr)}
.app-shell>.sidebar{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden;padding:22px 14px;gap:22px;align-self:start}
.sidebar .brand{padding:0 6px}.sidebar .brand-mark{width:34px;height:34px}.sidebar .brand strong{font-size:13px;line-height:1.35}.sidebar .brand span{font-size:11px}
.sidebar-footer{display:none}.sidebar-nav-slot{min-height:0;flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c6d8d8 transparent}
.nav-list{display:block;overflow:visible;padding:0;min-width:0}
.nav-search{position:relative;margin:0 4px 16px}.nav-search input{width:100%;min-height:38px;padding:9px 30px 9px 11px;font-size:12px;background:#f6f9fa;border-color:#e0e8ec}.nav-search button{position:absolute;right:4px;top:3px;width:30px;height:32px;border:0;background:transparent;color:#536c76;font-size:22px;cursor:pointer}
.nav-quick{display:grid;gap:4px;padding-bottom:14px;margin-bottom:12px;border-bottom:1px solid #e6edef}
.nav-list .nav-item{width:100%;max-width:none;min-height:40px;padding:9px 11px;justify-content:flex-start;white-space:normal;font-size:13px;line-height:1.3;gap:10px;text-align:left}
.nav-list .nav-icon{width:23px;height:23px;border:0;background:transparent;border-radius:0;color:#6e8791;flex:0 0 23px}.nav-icon svg,.nav-group-symbol svg{width:18px;height:18px}.nav-item.active .nav-icon{color:#14766a}.nav-label{min-width:0}
.nav-group{margin:4px 0}.nav-group-toggle{display:flex;align-items:center;gap:9px;width:100%;min-height:44px;padding:10px;border:0;border-radius:7px;background:transparent;color:#536973;text-align:left;font-size:12px;font-weight:700;cursor:pointer}.nav-group-toggle:hover{background:#f2f7f7}.nav-group-symbol{width:20px;height:20px;display:grid;place-items:center;color:#7e969e}.nav-group-toggle>span:nth-child(2){flex:1}.nav-chevron{font-size:16px;line-height:1;transition:transform .15s}.nav-group-toggle[aria-expanded=true] .nav-chevron{transform:rotate(180deg)}.nav-group.has-current>.nav-group-toggle{color:#176f65}.nav-group-items{padding:2px 0 8px 10px;border-left:1px solid #e0e9eb;margin-left:18px}.nav-group-items .nav-item{min-height:38px;padding:9px 8px;font-size:12px}.nav-group-items .nav-icon{display:none}.nav-group-items .nav-item.active{position:relative;background:#e8f4f1;border-color:#c1ded7}.nav-empty{font-size:12px;color:#68808a;line-height:1.6;padding:10px}.nav-list button:focus-visible,.mobile-menu-button:focus-visible{outline:3px solid #69a99e;outline-offset:1px}
.mobile-nav-bar{display:none}.mobile-menu-dialog{width:min(380px,calc(100vw - 24px));height:100vh;height:100dvh;max-width:none;max-height:none;margin:0 auto 0 0;padding:0;border:0;border-radius:0 16px 16px 0;background:white;color:#263e48;box-shadow:8px 0 40px #102d3a30}.mobile-menu-dialog::backdrop{background:#14334080}.mobile-menu-dialog[open]{display:flex;flex-direction:column}.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 16px;border-bottom:1px solid #e2ebee}.mobile-menu-heading h2{font-size:19px}.mobile-menu-heading button{border:0;background:#f0f5f6;color:#355660;border-radius:8px;min-width:42px;min-height:42px;font-size:24px;cursor:pointer}.mobile-menu-body{padding:18px;overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0}.portal-menu-open{overflow:hidden}
@media(max-width:1100px){
 .app-shell{display:block}.app-shell>.sidebar{display:none}.mobile-nav-bar{position:sticky;top:0;z-index:25;display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fff;border-bottom:1px solid #dae7e9;box-shadow:0 4px 16px #173b4510;min-height:62px}.mobile-menu-button{display:inline-flex;align-items:center;gap:7px;border:1px solid #d6e4e7;border-radius:8px;min-height:40px;padding:8px 11px;background:#f8fbfa;color:#285b5a;font-size:13px;font-weight:700;cursor:pointer}.mobile-menu-button svg{width:18px;height:18px}.mobile-nav-identity{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.mobile-nav-identity strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-nav-identity span{font-size:12px;color:#677f89}.mobile-menu-body .nav-list .nav-item{min-height:44px}.mobile-menu-body .nav-group-toggle{min-height:46px}.mobile-menu-body .nav-group-items .nav-item{font-size:13px}
 .topbar>div:first-child{display:none}.topbar{padding:10px 12px;display:block;min-height:0;margin-bottom:12px}.topbar .topbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%}.topbar-actions .session-summary{border:0;padding:0;margin-right:auto;flex:1 1 145px;min-width:0;width:auto;grid-column:auto}.session-summary strong{font-size:13px}.session-summary span{font-size:10px}.topbar-actions>.primary-button,.topbar-actions>.secondary-button{flex:0 0 auto;width:auto;min-height:34px;padding:7px 10px;font-size:12px}.topbar .notification-center{margin-left:0;width:auto}.topbar .notification-toggle{width:34px;height:34px;min-height:34px}.main-content{padding:14px}.view h2[tabindex="-1"]{scroll-margin-top:80px}
}
@media(max-width:700px){
 .mobile-nav-bar{padding:8px 12px;min-height:58px}.topbar-actions .session-summary{flex-basis:120px}.topbar-actions>#logoutButton{padding-inline:8px}.topbar-actions>#accountButton{padding-inline:8px}.dashboard-heading{margin:8px 0 16px;gap:8px}.dashboard-heading h2{font-size:23px;margin:2px 0 6px}.dashboard-heading p{font-size:12px;margin-bottom:6px}.dashboard-heading>div:last-child{flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.dashboard-updated{font-size:10px}.dashboard-heading #dashboardRefresh{width:auto;min-height:34px;height:34px;font-size:11px;padding:7px 9px}.dashboard-metrics{gap:8px;margin-bottom:14px}.dashboard-metric{padding:11px;gap:5px;border-radius:8px}.dashboard-metric>span{font-size:11px;line-height:1.35}.dashboard-metric>strong{font-size:26px}.dashboard-metric>small{font-size:10px;line-height:1.4}.dashboard-grid{gap:12px}.dashboard-panel{padding:14px}.dashboard-panel h3{font-size:15px}.dashboard-panel>header{margin-bottom:10px}.dashboard-panel>header>span{font-size:10px}.dashboard-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dashboard-shortcuts .dashboard-link{padding:10px;font-size:11px;min-height:50px;gap:4px}.dashboard-item{padding:10px 0;gap:8px}.dashboard-item strong{font-size:12px}.dashboard-item small{font-size:11px}.dashboard-item-icon{width:25px;height:25px;flex-basis:25px}.dashboard-recent{margin-top:12px}
}
.dashboard-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;font-weight:700;color:#233d4b;font-size:16px}.dashboard-disclosure>summary::-webkit-details-marker{display:none}.dashboard-disclosure>summary::after{content:'+';font-size:22px;color:#65858a;font-weight:400}.dashboard-disclosure[open]>summary::after{content:'−'}.dashboard-disclosure[open]>summary{margin-bottom:10px}.dashboard-disclosure .dashboard-link{margin-top:8px}.dashboard-more{margin-top:8px}.dashboard-more>summary{font-size:12px;color:#176f65;cursor:pointer;font-weight:700;padding:7px 0}
@media(max-width:1100px){.topbar-actions .session-summary strong,.topbar-actions .session-summary span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}}
@media(prefers-reduced-motion:reduce){.nav-chevron{transition:none}}
@media print{.mobile-nav-bar,.mobile-menu-dialog{display:none!important}}

/* Familiar area names and readable menu labels. */
.nav-utilities{margin-top:14px;padding-top:12px;border-top:1px solid #e6edef}
.nav-search input{font-size:13px}
.nav-list .nav-item,.nav-group-toggle{font-size:14px}
.nav-group-toggle{gap:8px;padding:10px 8px}
.nav-group-symbol{flex:0 0 20px}
.nav-group-items .nav-item,.mobile-menu-body .nav-group-items .nav-item{font-size:14px;min-height:42px;line-height:1.4}
