/* Shared module shell: identical geometry independent of legacy theme rules. */
html body .ms-sidebar.ms-sidebar{width:260px!important;min-width:260px!important;background:#6b4ba0!important;color:#fff!important;padding:18px 14px!important;border:0!important;border-radius:0!important;box-shadow:4px 0 18px #18202a18!important;box-sizing:border-box!important;overflow-y:auto!important}
html body .ms-sidebar .menu-panel,html body .ms-sidebar .sidebar-nav{padding:0!important;margin:0!important;width:100%!important;background:transparent!important;border:0!important}
html body .ms-sidebar .ms-brand.ms-brand{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:100%!important;height:154px!important;min-height:154px!important;padding:14px 12px!important;margin:0 0 20px!important;background:rgba(255,255,255,.17)!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:14px!important;text-decoration:none!important;box-sizing:border-box!important}
html body .ms-sidebar .ms-brand.ms-brand img{display:block!important;width:150px!important;height:68px!important;max-width:100%!important;object-fit:contain!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
html body .ms-sidebar .ms-brand.ms-brand .ms-brand-copy{display:flex!important;flex-direction:column!important;align-items:center!important;gap:5px!important;margin:0!important;padding:0!important}
html body .ms-sidebar .ms-brand.ms-brand .ms-brand-title{display:block!important;font:700 13px/1.25 Arial,Helvetica,sans-serif!important;color:#fff!important;margin:0!important;padding:0!important;letter-spacing:0!important;text-transform:none!important}
html body .ms-sidebar .ms-brand.ms-brand .ms-brand-module{display:block!important;font:400 11px/1.25 Arial,Helvetica,sans-serif!important;color:#fff!important;opacity:1!important;margin:0!important;padding:0!important;letter-spacing:0!important;text-transform:none!important}
html body .ms-topbar.ms-topbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;min-height:82px!important;padding:12px 28px!important;background:#fff!important;border:0!important;border-bottom:1px solid #e1e6ef!important;box-shadow:0 4px 18px #18202a0d!important;border-radius:0!important;box-sizing:border-box!important}
html body .ms-topbar .ms-topbar-brand.ms-topbar-brand{display:flex!important;align-items:center!important;gap:14px!important;color:#211b30!important;font:800 20px/1.2 Arial,Helvetica,sans-serif!important;text-decoration:none!important;margin:0!important;padding:0!important;min-width:0!important}
html body .ms-topbar .ms-topbar-brand.ms-topbar-brand img{width:112px!important;height:52px!important;object-fit:contain!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important}
html body .ms-topbar .ms-topbar-brand.ms-topbar-brand>span,html body .ms-topbar .ms-topbar-brand.ms-topbar-brand>strong,html body .ms-topbar .ms-topbar-brand.ms-topbar-brand>.page-title{font:inherit!important;margin:0!important}
html body .ms-sidebar .sidebar-section{padding:0!important}
html body .ms-sidebar :is(.side-link,.side-toggle,.sidebar-menu__item,.tab-button,.sidebar-nav>a,.side-group>summary,.nav-section>summary){min-height:48px!important;padding:12px!important;margin:0 0 8px!important;border-radius:10px!important;background:rgba(255,255,255,.14)!important;color:#fff!important;border:0!important;font:700 12px/1.4 Arial,Helvetica,sans-serif!important;box-sizing:border-box!important;text-decoration:none!important}
html body .ms-sidebar :is(.side-link.active,.sidebar-menu__item.is-active,.tab-button.active){background:#fff!important;color:#6b4ba0!important}
@media(min-width:981px){html body .ms-shell.ms-shell{display:block!important;padding:0!important;gap:0!important;--sidebar-w:260px}html body .ms-sidebar.ms-sidebar{position:fixed!important;inset:0 auto 0 0!important;height:100dvh!important;max-height:100dvh!important;transform:none!important;visibility:visible!important;z-index:100!important}html body .ms-main.ms-main{margin-left:260px!important;width:calc(100% - 260px)!important;max-width:none!important;min-width:0!important}html body .ms-sidebar>.menu-toggle{display:none!important}html body .ms-sidebar>.menu-panel{display:block!important}}
@media(max-width:980px){html body .ms-sidebar.ms-sidebar{width:min(260px,85vw)!important;min-width:0!important}html body .ms-topbar.ms-topbar{padding:12px 16px!important;flex-wrap:wrap!important;gap:12px!important}html body .ms-topbar .ms-topbar-brand.ms-topbar-brand{font-size:17px!important}html body .ms-topbar .ms-topbar-brand.ms-topbar-brand img{width:88px!important;height:42px!important}}
@media print{html body .ms-sidebar.ms-sidebar,html body .ms-topbar.ms-topbar{display:none!important}html body .ms-main.ms-main{margin:0!important;width:100%!important}}

html body .ms-sidebar :is(.sidebar-tabs,.sidebar__nav,.side-tabs){gap:0!important}html body .ms-sidebar .ms-brand.ms-brand :is(strong,span,small,p,h1){text-align:center!important}

html body .ms-sidebar.ms-sidebar{scrollbar-gutter:stable}html body .ms-sidebar>.menu-panel{overflow:visible!important;height:auto!important;max-height:none!important}html body .ms-sidebar .nav-section{margin:0 0 8px!important}html body .ms-topbar .topbar__brand-title{font:inherit!important}
@media(min-width:981px){html body .ms-topbar #sidebarToggle,html body .ms-main .mobile-app-header{display:none!important}}

html body .ms-sidebar.ms-sidebar{scrollbar-width:thin!important;scrollbar-color:#a68ac8 #6b4ba0!important}html body .ms-sidebar.ms-sidebar::-webkit-scrollbar{width:8px!important}


/* Mobile drawers own their scroll area; gestures must not scroll the page behind. */
@media(max-width:980px){
 html body :is(.app-sidebar.ms-sidebar,.executive-sidebar.ms-sidebar,.sidebar--reference.ms-sidebar,.main-site-page-shell>.ms-sidebar,.app-menu.ms-sidebar[open]){height:100vh!important;height:100dvh!important;max-height:100dvh!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch;scroll-padding-bottom:24px;padding-bottom:max(18px,env(safe-area-inset-bottom))!important}
 html body .ms-sidebar>*{flex-shrink:0!important}
 html body .app-menu.ms-sidebar[open]>.menu-panel{position:static!important;inset:auto!important;transform:none!important;height:auto!important;max-height:none!important;overflow:visible!important;display:block!important}
 html body .app-menu.ms-sidebar[open]>.menu-toggle{position:sticky!important;top:0!important;left:auto!important;z-index:2!important}
 html:has(.app-menu.ms-sidebar[open],.app-sidebar.ms-sidebar.show,.sidebar--reference.ms-sidebar.is-open,.attendance-menu-open,.claims-nav-open),
 html body:has(.app-menu.ms-sidebar[open],.app-sidebar.ms-sidebar.show,.sidebar--reference.ms-sidebar.is-open,.attendance-menu-open),
 html body.claims-nav-open,html body.sidebar-drawer-open{overflow:hidden!important;overscroll-behavior:none!important;touch-action:pan-y!important}
}
