/* ============================================================
   Global Politics admin menu final override
   Load this AFTER page-specific CSS. It normalizes the admin
   header across all admin pages and older header mount IDs.
============================================================ */
:root {
  --gp-admin-menu-top-h: 88px;
  --gp-admin-menu-chip-h: 54px;
  --gp-admin-navy-1: #071d3a;
  --gp-admin-navy-2: #0b2e5e;
  --gp-admin-gold: #d4af37;
  --gp-admin-text: #0f2343;
}

#adminHeaderMount,
#admin-header,
#header {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  z-index: 6000 !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#adminHeaderMount *,
#admin-header *,
#header * {
  box-sizing: border-box !important;
}

#adminHeaderMount .adminTopbarWrap,
#admin-header .adminTopbarWrap,
#header .adminTopbarWrap {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: 0 8px 22px rgba(15, 35, 67, 0.12) !important;
}

#adminHeaderMount .adminTopbar,
#admin-header .adminTopbar,
#header .adminTopbar {
  min-height: var(--gp-admin-menu-top-h) !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 14px 28px !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--gp-admin-navy-1) 0%, #08264d 58%, var(--gp-admin-navy-2) 100%) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(212, 175, 55, 0.24) !important;
  box-shadow: none !important;
}

#adminHeaderMount .adminBrand,
#admin-header .adminBrand,
#header .adminBrand {
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  color: #ffffff !important;
}

#adminHeaderMount .adminBrandLogo,
#admin-header .adminBrandLogo,
#header .adminBrandLogo {
  display: block !important;
  width: auto !important;
  height: 46px !important;
  max-width: 180px !important;
  object-fit: contain !important;
  filter: none !important;
  opacity: 1 !important;
}

#adminHeaderMount .adminTopbarNav,
#adminHeaderMount .adminDesktopNav,
#adminHeaderMount .adminActions,
#admin-header .adminTopbarNav,
#admin-header .adminDesktopNav,
#admin-header .adminActions,
#header .adminTopbarNav,
#header .adminDesktopNav,
#header .adminActions {
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;
}

#adminHeaderMount .adminTopbarNav a,
#adminHeaderMount .adminTopbarNav button,
#adminHeaderMount .adminTopbar .ghost,
#adminHeaderMount .adminUser,
#adminHeaderMount .adminSignOutBtn,
#admin-header .adminTopbarNav a,
#admin-header .adminTopbarNav button,
#admin-header .adminTopbar .ghost,
#admin-header .adminUser,
#admin-header .adminSignOutBtn,
#header .adminTopbarNav a,
#header .adminTopbarNav button,
#header .adminTopbar .ghost,
#header .adminUser,
#header .adminSignOutBtn {
  appearance: none !important;
  min-height: 38px !important;
  height: 38px !important;
  padding: 0 15px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.30) !important;
  background: rgba(255, 255, 255, 0.95) !important;
  color: #0f2343 !important;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 6px 16px rgba(0,0,0,0.16) !important;
  cursor: pointer !important;
}

#adminHeaderMount .adminTopbarNav a:hover,
#adminHeaderMount .adminTopbarNav button:hover,
#adminHeaderMount .adminTopbar .ghost:hover,
#admin-header .adminTopbarNav a:hover,
#admin-header .adminTopbarNav button:hover,
#admin-header .adminTopbar .ghost:hover,
#header .adminTopbarNav a:hover,
#header .adminTopbarNav button:hover,
#header .adminTopbar .ghost:hover {
  text-decoration: none !important;
  background: #ffffff !important;
  transform: translateY(-1px) !important;
}

#adminHeaderMount .adminBadgeInline,
#admin-header .adminBadgeInline,
#header .adminBadgeInline {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 6px !important;
  padding: 4px 10px !important;
  min-height: 22px !important;
  border-radius: 999px !important;
  background: var(--gp-admin-gold) !important;
  color: #111111 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

#adminHeaderMount .adminCategoryMenu,
#admin-header .adminCategoryMenu,
#header .adminCategoryMenu {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: linear-gradient(180deg, #f8fbff 0%, #edf4fd 100%) !important;
  border-top: 1px solid rgba(15, 35, 67, 0.08) !important;
  border-bottom: 1px solid rgba(15, 35, 67, 0.12) !important;
}

#adminHeaderMount .adminCategoryMenuInner,
#admin-header .adminCategoryMenuInner,
#header .adminCategoryMenuInner {
  max-width: 1120px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 10px 16px 12px !important;
}

#adminHeaderMount .adminCategoryMenuChips,
#admin-header .adminCategoryMenuChips,
#header .adminCategoryMenuChips,
#adminHeaderMount .adminNav,
#admin-header .adminNav,
#header .adminNav {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: thin !important;
}

#adminHeaderMount .adminCategoryChip,
#adminHeaderMount .adminNavBtn,
#adminHeaderMount .adminNav a,
#admin-header .adminCategoryChip,
#admin-header .adminNavBtn,
#admin-header .adminNav a,
#header .adminCategoryChip,
#header .adminNavBtn,
#header .adminNav a {
  appearance: none !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 13px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(15, 35, 67, 0.12) !important;
  background: #ffffff !important;
  color: var(--gp-admin-text) !important;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 5px rgba(15, 35, 67, 0.07) !important;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease !important;
}

#adminHeaderMount .adminCategoryChip:hover,
#adminHeaderMount .adminNavBtn:hover,
#adminHeaderMount .adminNav a:hover,
#admin-header .adminCategoryChip:hover,
#admin-header .adminNavBtn:hover,
#admin-header .adminNav a:hover,
#header .adminCategoryChip:hover,
#header .adminNavBtn:hover,
#header .adminNav a:hover {
  background: #f8fbff !important;
  border-color: rgba(212, 175, 55, 0.60) !important;
  box-shadow: 0 5px 14px rgba(15, 35, 67, 0.11) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}

#adminHeaderMount .adminCategoryChip.active,
#adminHeaderMount .adminCategoryChip.isActive,
#adminHeaderMount .adminCategoryChip[aria-current="page"],
#adminHeaderMount .adminCategoryChip[data-active="true"],
#adminHeaderMount .adminNavBtn.active,
#adminHeaderMount .adminNavBtn.isActive,
#adminHeaderMount .adminNavBtn[aria-current="page"],
#adminHeaderMount .adminNavBtn[data-active="true"],
#adminHeaderMount .adminNav a.active,
#adminHeaderMount .adminNav a.isActive,
#adminHeaderMount .adminNav a[aria-current="page"],
#admin-header .adminCategoryChip.active,
#admin-header .adminCategoryChip.isActive,
#admin-header .adminCategoryChip[aria-current="page"],
#admin-header .adminCategoryChip[data-active="true"],
#admin-header .adminNavBtn.active,
#admin-header .adminNavBtn.isActive,
#admin-header .adminNavBtn[aria-current="page"],
#admin-header .adminNavBtn[data-active="true"],
#admin-header .adminNav a.active,
#admin-header .adminNav a.isActive,
#admin-header .adminNav a[aria-current="page"],
#header .adminCategoryChip.active,
#header .adminCategoryChip.isActive,
#header .adminCategoryChip[aria-current="page"],
#header .adminCategoryChip[data-active="true"],
#header .adminNavBtn.active,
#header .adminNavBtn.isActive,
#header .adminNavBtn[aria-current="page"],
#header .adminNavBtn[data-active="true"],
#header .adminNav a.active,
#header .adminNav a.isActive,
#header .adminNav a[aria-current="page"] {
  border-color: rgba(212, 175, 55, 0.88) !important;
  background: linear-gradient(180deg, #fffdf6 0%, #fff3cf 100%) !important;
  color: #0f2343 !important;
  box-shadow: inset 0 0 0 1px rgba(212, 175, 55, 0.25), 0 5px 14px rgba(15, 35, 67, 0.12) !important;
}

/* Legacy/default public header fallback inside admin mount */
#adminHeaderMount .topbarWrap,
#admin-header .topbarWrap,
#header .topbarWrap,
#adminHeaderMount .topbar,
#admin-header .topbar,
#header .topbar {
  background: linear-gradient(135deg, var(--gp-admin-navy-1), var(--gp-admin-navy-2)) !important;
}

/* Keep hidden auth controls hidden and hide duplicate Sign in if authenticated. */
#adminHeaderMount [hidden],
#admin-header [hidden],
#header [hidden] {
  display: none !important;
}
#adminHeaderMount:has(#logoutBtn:not([hidden])) #authBtn,
#adminHeaderMount:has(#authUser:not([hidden])) #authBtn,
#admin-header:has(#logoutBtn:not([hidden])) #authBtn,
#admin-header:has(#authUser:not([hidden])) #authBtn,
#header:has(#logoutBtn:not([hidden])) #authBtn,
#header:has(#authUser:not([hidden])) #authBtn,
#adminHeaderMount:has(#logoutBtnMobile:not([hidden])) #authBtnMobile,
#adminHeaderMount:has(#authUserMobile:not([hidden])) #authBtnMobile,
#admin-header:has(#logoutBtnMobile:not([hidden])) #authBtnMobile,
#admin-header:has(#authUserMobile:not([hidden])) #authBtnMobile,
#header:has(#logoutBtnMobile:not([hidden])) #authBtnMobile,
#header:has(#authUserMobile:not([hidden])) #authBtnMobile {
  display: none !important;
}

.adminPageContent,
.adminPage,
.daily-topics-page {
  padding-top: 0 !important;
}
.socialShell {
  padding-top: 16px !important;
}

@media (max-width: 980px) {
  #adminHeaderMount .adminTopbar,
  #admin-header .adminTopbar,
  #header .adminTopbar {
    min-height: 66px !important;
    padding: 10px 16px !important;
  }
  #adminHeaderMount .adminBrandLogo,
  #admin-header .adminBrandLogo,
  #header .adminBrandLogo {
    height: 38px !important;
  }
  #adminHeaderMount .adminTopbarNav,
  #adminHeaderMount .adminDesktopNav,
  #adminHeaderMount .adminActions,
  #admin-header .adminTopbarNav,
  #admin-header .adminDesktopNav,
  #admin-header .adminActions,
  #header .adminTopbarNav,
  #header .adminDesktopNav,
  #header .adminActions {
    display: none !important;
  }
  #adminHeaderMount .adminMenuToggle,
  #admin-header .adminMenuToggle,
  #header .adminMenuToggle {
    display: inline-flex !important;
    margin-left: auto !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255,255,255,0.26) !important;
    background: rgba(255,255,255,0.10) !important;
  }
  #adminHeaderMount .adminMenuToggle span,
  #admin-header .adminMenuToggle span,
  #header .adminMenuToggle span {
    background: #ffffff !important;
  }
  #adminHeaderMount .adminMobileMenu,
  #admin-header .adminMobileMenu,
  #header .adminMobileMenu {
    position: absolute !important;
    top: 64px !important;
    left: 10px !important;
    right: 10px !important;
    display: grid !important;
    padding: 12px !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15,35,67,0.12) !important;
    box-shadow: 0 18px 42px rgba(15,35,67,0.18) !important;
  }
  #adminHeaderMount .adminMobileMenu[hidden],
  #admin-header .adminMobileMenu[hidden],
  #header .adminMobileMenu[hidden] {
    display: none !important;
  }
  #adminHeaderMount .adminMobileMenuInner,
  #admin-header .adminMobileMenuInner,
  #header .adminMobileMenuInner {
    display: grid !important;
    gap: 9px !important;
  }
  #adminHeaderMount .adminMobileNavBtn,
  #admin-header .adminMobileNavBtn,
  #header .adminMobileNavBtn {
    justify-content: flex-start !important;
    min-height: 42px !important;
    height: auto !important;
    padding: 0 14px !important;
  }
  #adminHeaderMount .adminCategoryMenuChips,
  #admin-header .adminCategoryMenuChips,
  #header .adminCategoryMenuChips {
    justify-content: flex-start !important;
  }
}
