/* Final sidebar layer: loaded after app.css to prevent legacy rule conflicts. */
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.shell{grid-template-columns:272px minmax(0,1fr)}
.sidebar{padding:14px 12px 12px;border-left:0;background:#0d3b55;box-shadow:-5px 0 20px rgba(4,27,42,.14)}
.brand{display:flex;align-items:center;gap:10px;min-height:62px;margin:0 2px 10px;padding:4px 7px 13px;border-bottom:1px solid rgba(255,255,255,.14)}
.brandmark{display:grid;place-items:center;width:38px;height:38px;min-width:38px;border-radius:10px;background:#f4f8fb;color:#174d6b;font-weight:800;box-shadow:0 3px 10px rgba(0,0,0,.14)}
.brand-copy{min-width:0}.brand-copy strong{display:-webkit-box;max-width:190px;overflow:hidden;font-size:12px;line-height:1.55;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}.brand-copy small{display:block;margin-top:2px;color:#a9c2d1;font-size:9px}
.sidebar-nav{display:grid;gap:2px;align-content:start;flex:1}.sidebar-nav>.nav-home{display:flex;align-items:center;min-height:40px;margin:0 0 5px;padding:8px 10px!important;border-radius:8px;color:#eef7fc;font-size:12px;font-weight:700}
.nav-section,.nav-section[open]{overflow:hidden;border:0!important;border-radius:8px;background:transparent!important}
.nav-section summary{display:flex;align-items:center;justify-content:space-between;min-height:39px;padding:8px 10px;list-style:none;cursor:pointer;border-radius:8px;color:#dceaf1;font-size:12px;font-weight:700}
.nav-section summary::-webkit-details-marker{display:none}.nav-section summary>span,.nav-section a{display:flex;align-items:center}
.nav-section summary:hover,.nav-section summary:focus-visible,.sidebar-nav>.nav-home:hover,.sidebar-nav>.nav-home:focus-visible{background:rgba(255,255,255,.08);color:#fff;outline:none}
.nav-section summary:after{content:"";width:7px;height:7px;margin-left:3px;border-left:1.5px solid #8eb1c2;border-bottom:1.5px solid #8eb1c2;transform:rotate(45deg);transition:transform .16s ease}
.nav-section[open] summary:after{transform:rotate(-45deg)}
.nav-section a{position:relative;min-height:34px;margin:1px 8px 1px 0;padding:7px 11px 7px 8px!important;border-radius:7px;color:#bad0dc!important;font-size:11px!important;font-weight:400}
.nav-section a:before{content:"";position:absolute;right:0;top:8px;bottom:8px;width:2px;border-radius:2px;background:rgba(140,182,205,.28)}
.nav-icon{display:block;width:17px;height:17px;min-width:17px;margin-left:9px;color:#9ec1d2;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-section summary .nav-icon{color:#c0d7e2}.sidebar a.active{background:#f5f9fc!important;color:#123f5a!important;box-shadow:0 3px 10px rgba(0,0,0,.12)!important}.sidebar a.active .nav-icon{color:#1f668d}.nav-section a.active:before{background:#c99018}
.sidebar-footer{margin-top:10px;padding:10px 2px 0;border-top:1px solid rgba(255,255,255,.13)}.margo-link{display:grid!important;gap:1px;padding:8px!important;border:0!important;border-radius:8px!important;background:rgba(255,255,255,.05)!important;text-align:center}.margo-link:hover{background:rgba(255,255,255,.1)!important}.margo-name{font-size:10px}.margo-link .nav-label{color:#b7ceda;font-size:9px}
.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar-collapsed .sidebar{padding-inline:9px}.sidebar-collapsed .brand{justify-content:center;padding-inline:0}.sidebar-collapsed .brandmark{width:36px;height:36px;min-width:36px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-section summary:after{display:none}.sidebar-collapsed .sidebar-nav>.nav-home,.sidebar-collapsed .nav-section summary,.sidebar-collapsed .nav-section a{justify-content:center;padding-inline:5px!important}.sidebar-collapsed .nav-icon{margin:0}.sidebar-collapsed .nav-section a{margin-right:0}.sidebar-collapsed .nav-section:not([open]) a{display:none}.sidebar-collapsed .margo-name{font-size:9px;letter-spacing:0}
@media(max-width:780px){.shell,.sidebar-collapsed{display:block}.sidebar{right:-286px;width:272px}.sidebar.open{right:0}.brand-copy strong{max-width:190px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-label{display:initial}.sidebar-collapsed .nav-section summary:after{display:block}}
