@import url("./platform-navigation-tokens.css");
@import url("./forced-colors-navigation.css");
.platform-brand{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none;flex:0 0 auto}
.platform-skip-link{position:fixed;z-index:2000;top:8px;left:8px;min-height:44px;padding:11px 14px;border-radius:7px;background:var(--card-bg,#fff);color:var(--text-primary,#111827);box-shadow:var(--elevation-3,0 6px 20px rgba(0,0,0,.2));transform:translateY(calc(-100% - 48px));transition:transform .12s ease}
.platform-skip-link:focus{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.platform-skip-link{transition:none}}
.platform-brand-name{font-size:18px;font-weight:750;letter-spacing:.02em}
.platform-header-divider{width:1px;height:26px;background:#cbd5e1;flex:0 0 auto}
.user-dropdown{position:relative}
.header{
  height:61px;
  min-height:61px;
  max-height:61px;
  background:var(--platform-header-surface);
  background-image:none;
  color:var(--platform-header-text-strong);
  border-bottom:1px solid var(--platform-header-border);
  box-shadow:none;
}
.header .mobile-menu-btn{color:var(--platform-header-text)}
.header .mobile-menu-btn:hover,.header .mobile-menu-btn:active{background:var(--platform-header-hover)}
.platform-context-row{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 22px;background:var(--bg-primary);border-bottom:1px solid var(--border-primary);color:var(--text-secondary);font-size:12px;overflow:hidden}
.platform-context-row a{color:var(--color-primary);font-weight:650;text-decoration:none;white-space:nowrap}
.platform-context-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.platform-context-row > a:first-child{flex-shrink:0}
.platform-context-row > [aria-hidden="true"]{flex-shrink:0}
.platform-context-row #platformContextApplication{color:var(--text-secondary);font-weight:400}
.platform-context-row a[href]:hover{text-decoration:underline}
.platform-context-row a[href]:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.platform-account-identity{display:grid;gap:2px;padding:10px 14px 9px;border-bottom:1px solid var(--border-secondary)}
.platform-account-identity strong{color:var(--text-primary);font-size:13px}
.platform-account-identity span{color:var(--text-secondary);font-size:11px;overflow-wrap:anywhere}
.platform-menu-separator{margin:5px 0;border:0;border-top:1px solid var(--border-secondary)}
.dropdown-item.platform-signout{color:var(--color-error,#dc2626)}
.user-dropdown-btn .ftg-avatar-sm{width:40px!important;height:40px!important;font-size:16px!important}
.user-dropdown-btn{width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}
.platform-signout-error{padding:8px 12px;color:var(--color-error,#dc2626);font-size:11px;line-height:1.35}
@media(forced-colors:active){
  /* Dashboard's later global :focus:not(:focus-visible) reset must not erase
     the keyboard outline from the shared account trigger contract. */
  [data-platform-account-trigger]:focus{outline:2px solid Highlight!important;outline-offset:2px}
}
@media(min-width:769px){
  body:not(.nav-top) .header{display:flex}
  body:not(.nav-top) .layout{height:calc(100vh - 103px)}
  body:not(.nav-top) .sidebar-account{display:none}
  body.nav-top .layout{height:calc(100vh - var(--ftg-header-h,61px) - 42px)}
}
@media(max-width:768px){
  .layout{height:calc(100vh - 112px)}
  .platform-brand-name,.platform-header-divider{display:none}
  .header{padding-inline:8px}
  .header-left{gap:7px;margin-left:0}
  .header-left .logo{font-size:15px}
  .header-right{gap:6px;margin-left:6px}
  .platform-context-row{padding-inline:12px}
}
@media(max-width:360px){
  .header{padding-inline:4px}
  .header .mobile-menu-btn{margin-right:0;padding:4px}
  .header-left{gap:4px}
  .header-left .header-logo{height:24px}
  .header-right{gap:4px;margin-left:4px}
  #platformApplicationName{display:block;max-width:56px;font-size:13px;line-height:1.1;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
}
[data-local-navigation] button:focus,[data-local-navigation] a:focus{outline:2px solid var(--platform-header-focus)!important;outline-offset:-2px}
@media(forced-colors:active){
  /* Dashboard exception: legacy rules can zero link outlines after the shared contract loads. */
  [data-local-navigation] button:focus,[data-local-navigation] a:focus{outline:2px solid Highlight!important}
}
/* Screen navigation must not enter PDFs, even while keyboard-focused. */
@media print{.platform-context-row,.platform-skip-link{display:none!important}}

/* FTG exact page standard: one content inset, shared with both shell bars.
   Fluid bar padding keeps full-width surfaces without changing nav ownership. */
@media screen {
  html body:not(.printing-section):not(.pdf-export-mode) {
    --ftg-page-gutter: 16px;
  }
  html body:not(.printing-section):not(.pdf-export-mode) #main-content.content {
    box-sizing: border-box;
    width: 100%;
    max-width: 1600px;
    min-width: 0;
    margin-inline: auto;
    padding: 20px var(--ftg-page-gutter) !important;
  }
  html body:not(.printing-section):not(.pdf-export-mode) #main-content > .dashboard-section {
    padding: 0 !important;
    max-width: none;
    margin-inline: 0;
  }
  html body:not(.printing-section):not(.pdf-export-mode) .header,
  html body:not(.printing-section):not(.pdf-export-mode) #platformContextRow {
    box-sizing: border-box;
    padding-inline: max(var(--ftg-page-gutter), calc((100% - 1600px) / 2 + var(--ftg-page-gutter))) !important;
  }
  /* The first visible header item sits exactly on the shared content edge. */
  html body:not(.printing-section):not(.pdf-export-mode) .header > .mobile-menu-btn,
  html body:not(.printing-section):not(.pdf-export-mode) .header > .header-left {
    margin-left: 0 !important;
  }
  @media (max-width: 767px) {
    html body:not(.printing-section):not(.pdf-export-mode) .header > .mobile-menu-btn ~ .header-left {
      margin-left: 8px !important;
    }
  }
  html body:not(.printing-section):not(.pdf-export-mode) #gatheringInvoice > .gi-page,
  html body:not(.printing-section):not(.pdf-export-mode) #vendorCompliance > .vc-page {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }
  html body:not(.printing-section):not(.pdf-export-mode) .ftg-hub .hub-report-meta {
    padding-inline: 0;
  }
  @media (min-width: 640px) {
    html body:not(.printing-section):not(.pdf-export-mode) {
      --ftg-page-gutter: 24px;
    }
  }
}