/* E9: only the in-page section index and desktop header positioning. */
body:is(.portal-active,.portal-invoices) .cmp-section-rail.cmp-rail-e9{
 position:fixed;inset:auto;left:max(12px,env(safe-area-inset-left));
 top:var(--e9-rail-top,12px);bottom:auto;transform:none;z-index:55;
 width:44px;max-width:calc(100vw - 24px);max-height:none;gap:0;overflow:visible;
}
body:is(.portal-active,.portal-invoices) .cmp-rail-e9 .cmp-rail-toggle{
 display:grid;place-items:center;box-sizing:border-box;flex:none;
 width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;
 padding:11px;margin:0;border:1px solid #0a2547;border-radius:10px;
 background:#0a2547!important;color:#fff;box-shadow:0 3px 12px #0a25471a;
}
body:is(.portal-active,.portal-invoices) .cmp-rail-e9 .cmp-rail-toggle svg{
 display:block;width:20px;height:20px;fill:none;stroke:currentColor;
 stroke-width:2;stroke-linecap:round;pointer-events:none;
}
body:is(.portal-active,.portal-invoices) .cmp-rail-e9 .cmp-rail-toggle[aria-expanded=true]{background:#214d78!important}
body:is(.portal-active,.portal-invoices) .cmp-rail-e9 .cmp-rail-toggle:focus-visible{outline:3px solid #81acd4;outline-offset:3px}
/* Neither hover nor focus opens the index; a deliberate button action does. */
body:is(.portal-active,.portal-invoices) .cmp-section-rail.cmp-rail-e9 .cmp-rail-links{display:none}
body:is(.portal-active,.portal-invoices) .cmp-section-rail.cmp-rail-e9.is-open .cmp-rail-links:not([hidden]){
 display:flex;position:absolute;inset:auto;left:0;top:52px;bottom:auto;
 box-sizing:border-box;width:min(300px,calc(100vw - 32px));
 max-height:max(44px,min(480px,calc(100dvh - var(--e9-rail-top,12px) - 72px)));
 flex-direction:column;gap:4px;overflow:auto;overscroll-behavior:contain;
 padding:6px;border:1px solid #c5d0de;border-radius:12px;
 background:#fff;box-shadow:0 8px 28px #0a254729;scrollbar-width:thin;
}
body:is(.portal-active,.portal-invoices) .cmp-section-rail.cmp-rail-e9 .cmp-rail-links[hidden]{display:none!important}
body:is(.portal-active,.portal-invoices) .cmp-section-rail.cmp-rail-e9 .cmp-section-link{
 width:100%;min-width:0;max-width:100%;height:auto;min-height:44px;
 padding:10px 12px;gap:10px;transition:none;white-space:normal;
}
body:is(.portal-active,.portal-invoices) .cmp-section-rail.cmp-rail-e9 .cmp-section-link::before{inset:0;border-radius:7px;clip-path:none}
body:is(.portal-active,.portal-invoices) .cmp-section-rail.cmp-rail-e9 .cmp-rail-label{opacity:1;overflow-wrap:anywhere}
body:is(.portal-active,.portal-invoices) [data-cmp-anchor]{scroll-margin-top:var(--e9-anchor-top,80px)}
@media(min-width:761px){
 body:is(.portal-active,.portal-invoices) #portal-shell{position:sticky;top:0;z-index:60}
}
/* Reserve the button's first row on narrow screens without narrowing tables. */
@media(max-width:760px){
 body.portal-active:has(.cmp-section-rail.cmp-rail-e9:not([hidden]))>main{padding-top:68px!important}
}
@media print{.cmp-section-rail.cmp-rail-e9{display:none!important}}
