/* Shared header styling; permission-driven links and actions remain server-rendered. */
.TopMenu{position:sticky;top:0;min-width:0;width:100%;height:auto;padding:10px 18px;background:#fff;color:#243449;border-bottom:1px solid #dde7e9;box-shadow:0 4px 18px #172c4308;font:13px/1.8 wyekan,Tahoma,sans-serif;z-index:100}
.TopMenu,.TopMenu *{box-sizing:border-box}
#TopMenuContent{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;width:100%;max-width:1600px;margin:0 auto}
#TopMenuContent>div{float:none!important}
#TopMenuContent .portal-brand{order:0;flex:0 0 auto;display:flex;align-items:center;margin:0!important;padding:4px 10px;border-inline-end:1px solid #e6edef}
.portal-brand img{width:100px;height:40px;object-fit:contain}
#TopMenuItem{order:1;flex:0 1 auto;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:3px;width:auto;height:auto;min-width:0;padding:0;margin:0;text-align:start;direction:inherit;font-size:13px;color:#40556c}
#TopMenuItem>div{float:none;background:none;width:auto;height:auto;margin:0;padding:0}
#TopMenuItem .MenuPipe,#TopMenuItem .SelectedMenuLeft,#TopMenuItem .SelectedMenuRight,#TopMenuItem .UnSelectedMenuLeft,#TopMenuItem .UnSelectedMenuRight{display:none}
#TopMenuItem a{float:none;display:flex;align-items:center;gap:7px;width:auto;height:auto;min-height:38px;margin:0;padding:8px 10px;border-radius:9px;color:#40556c;background:transparent;text-decoration:none;white-space:nowrap;font-weight:normal}
#TopMenuItem a[id^="dropdown"]:after{content:"";width:5px;height:5px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin-top:-3px;opacity:.65}
#TopMenuItem a:hover,#TopMenuItem a:focus-visible{background:#edf7f6;color:#146b70}
#TopMenuItem .SelectedMenuCenter a{background:#e0f0ee;color:#10585c!important;font-weight:bold}
#SearchBoxDiv{order:3;flex:0 0 auto;display:flex;align-items:center;justify-content:center;height:auto;min-height:40px;margin:0;padding:0;float:none}
#SearchBoxDiv form{display:flex;align-items:center;margin:0}
#SearchBoxDiv form>div{display:flex!important;align-items:center;gap:10px}
#SearchBoxDiv form>div>div:not(#JobsDropdown){float:none!important;width:180px!important}
#SearchBoxDiv #GlobalSearch{display:block;float:none;margin:0;width:100%!important;height:40px;border:1px solid #d7e0e8;border-radius:10px;background:#f5f8fa;color:#193149!important;padding:8px 12px;font:13px/1.8 wyekan,Tahoma,sans-serif;text-align:start;box-shadow:none}
#SearchBoxDiv #GlobalSearch::placeholder{color:#7a8796;opacity:1}
#JobsBell{display:inline-flex!important;align-items:center;justify-content:center;float:none!important;margin:0!important;width:40px;height:40px;border:1px solid #d7e0e8;border-radius:11px;background:#f5f8fa;color:#477579;padding:0;cursor:pointer}
#JobsBell:hover{background:#e0f0ee}
#JobsBell{position:relative;overflow:visible!important}
#JobsBadge{position:absolute;display:inline-block;text-align:center;border-radius:10px;font-weight:bold}
#JobsBadge{top:-7px!important;left:0!important;right:auto!important;box-sizing:border-box!important;width:auto!important;min-width:22px!important;height:22px!important;padding:0 5px!important;line-height:18px!important;white-space:nowrap!important;direction:ltr;float:none!important;max-width:none!important;background:#146b70!important;color:#fff!important;border:2px solid #fff!important;border-radius:999px!important;font-size:10px!important;font-variant-numeric:tabular-nums}
#JobsDropdown{box-sizing:border-box;background:#fff!important;color:#243449!important;border:1px solid #dce5eb!important;border-radius:14px!important;box-shadow:0 14px 45px #172c4326!important;max-width:calc(100vw - 16px);max-height: min(440px,60vh)!important;padding:14px!important}
#JobsDropdown{font:13px/1.8 wyekan,Tahoma,sans-serif;text-align:start}
.portal-notification-heading{font-size:16px;font-weight:bold;padding:0 0 10px;border-bottom:1px solid #e1e4e8}
.portal-notification-subheading{padding:10px 2px 4px;font-weight:bold;color:#62748a}
#MessageNotificationCard{display:flex;align-items:center;gap:10px;box-sizing:border-box;width:100%;margin:12px 0 0;padding:12px;border:1px solid #dce5eb;border-radius:10px;background:#f5f8fa;color:#40556c;font:inherit;text-align:start;cursor:pointer}
#MessageNotificationCard span{flex:1}
#MessageNotificationCard strong{min-width:24px;padding:0 5px;border-radius:12px;text-align:center;background:#e0e8ec}
#MessageNotificationCard.has-unread-messages{background:#edf7f6;border-color:#b4d5d2;color:#10585c}
#MessageNotificationCard.has-unread-messages strong{background:#146b70;color:#fff}
#MessageNotificationCard:hover{background:#e0f0ee}
#JobsDropdown button:focus-visible{outline:3px solid #7ac8cc;outline-offset:2px}
.attach_menu_child{box-sizing:border-box;width:280px;max-width:calc(100vw - 16px);margin:0;padding:7px;background:#fff;border:1px solid #dce5eb;border-radius:12px;box-shadow:0 14px 45px #172c4326;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b7cece transparent;z-index:90000}
.attach_menu_child a.attach,.attach_menu_child a.attach:visited{box-sizing:border-box;display:block;width:100%;padding:10px 12px;border:0;border-radius:7px;background:#fff;color:#40556c;font:13px/1.8 wyekan,Tahoma,sans-serif;text-decoration:none;text-align:start}
.attach_menu_child a.attach:hover,.attach_menu_child a.attach:focus-visible{background:#edf7f6;color:#10585c}
.TopMenu a:focus-visible,.TopMenu button:focus-visible,.TopMenu input:focus-visible,.attach_menu_child a:focus-visible{outline:3px solid #7ac8cc;outline-offset:1px}
@media(max-width:1100px){.TopMenu{padding:10px 12px}}
@media(max-width:600px){#TopMenuContent{gap:8px}#TopMenuItem{order:4;flex-basis:100%;gap:2px;border-top:1px solid #edf1f4;padding-top:8px}#TopMenuItem a{padding:7px 9px;font-size:12px}#SearchBoxDiv form>div>div:not(#JobsDropdown){width:140px!important}#TopMenuContent .portal-brand{padding:0 6px}.portal-brand img{width:86px;height:36px}}

/* Remove the old fixed-header spacer now that the header occupies its own row. */
.TopMenu~.ContentMainContainer{padding-top:10px}
.TopMenu~.ContentMainContainer #HomeHead{margin-top:0!important}
#TopMenuItem a:empty{display:none}

/* Full-width navigation with the utility controls at the opposite edge. */
#TopMenuContent{max-width:none;justify-content:space-between}
#TopMenuItem{flex:1 1 auto;justify-content:flex-start}
#SearchBoxDiv{margin-inline-start:auto}
@media(max-width:600px){#TopMenuItem{justify-content:center}#SearchBoxDiv{margin-inline-start:0}}
.Footer,.Whole:has(.portal-grid-shell)>.Footer{background:#171d24!important;color:#fff;border-top:1px solid #303944}
.Footer a,.Footer a:visited{color:#fff!important}
.Footer .FooterMenu{width:auto!important;max-width:100%;padding:6px 12px;line-height:1.8}

/* Footer items wrap naturally instead of creating an internal scroll container. */
.Footer .FooterMenu{box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 18px;min-height:40px}
.Footer .FooterMenu>div{float:none!important;margin:0!important;width:auto!important;max-width:100%}
.Footer .FooterMenu>div:last-child{margin-inline-start:auto!important}
.Footer #LastActivity:empty{display:none}
.Footer .FooterMenu img{vertical-align:middle}

/* Shared autocomplete suggestions match the portal controls and selection palette. */
.ac_results{box-sizing:border-box;padding:4px!important;border:1px solid #c9dce1!important;border-radius:10px;background:#fff!important;box-shadow:0 8px 24px #172c4326;margin-top:5px;max-width:calc(100vw - 16px)}
.ac_results li{box-sizing:border-box;padding:6px 10px!important;border-radius:6px;text-align:start;font-family:wyekan,Tahoma,sans-serif!important;font-size:13px!important;font-weight:normal;color:#40556c;line-height:26px;cursor:pointer;background:#fff}
.ac_results li.ac_odd{background:#f5f8fa;color:#40556c}
.ac_results li.ac_over{background:#dcefed!important;color:#10585c!important;box-shadow:inset -3px 0 #146b70}
.ac_results li strong{font-size:inherit;font-weight:bold}
