/* ===== Doctor Bangkok Menu Restyling ===== */

/* ALL flyout sub-menus at every level */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu ul.mega-sub-menu,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout li.mega-menu-item > ul.mega-sub-menu {
  background: #0f1b3d !important;
  border-radius: 10px !important;
  box-shadow: 0 12px 40px rgba(0,0,0,.2) !important;
  padding: 6px !important;
  border: 1px solid rgba(255,255,255,.06) !important;
}

/* ALL flyout menu links at every level */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
  background-color: transparent !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 12px 16px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  margin-bottom: 4px !important;
  background: rgba(255,255,255,.04) !important;
  display: flex !important;
  align-items: center !important;
  text-align: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  transition: all .15s ease !important;
}

/* Hover state - all levels */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus {
  background-color: rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  font-weight: 600 !important;
  border-color: rgba(255,255,255,.2) !important;
}

/* Category headers (items with children) - bold white */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item-has-children > a.mega-menu-link {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: .02em !important;
}

/* Current/active item - teal highlight */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-current-menu-item > a.mega-menu-link,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu ul.mega-sub-menu li.mega-current-menu-item > a.mega-menu-link {
  color: #00B894 !important;
}

/* Indicator arrows */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu span.mega-indicator {
  color: rgba(255,255,255,.4) !important;
}

/* Hide icon pseudo-elements that break layout */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:before {
  display: none !important;
}

/* Top-level active state when dropdown open */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {
  background-color: rgba(15,27,61,.9) !important;
  color: #fff !important;
  border-radius: 8px 8px 0 0 !important;
}

/* Top-level hover */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus {
  background-color: rgba(15,27,61,.12) !important;
  border-radius: 8px !important;
}

/* Menu bar background - match dropdown navy */
#mega-menu-wrap-primary #mega-menu-primary {
  background: #0f1b3d !important;
  border-radius: 10px !important;
}

/* Top-level menu links - white text on navy bar */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
  color: rgba(255,255,255,.85) !important;
}

/* Astra header bar background to match */
.ast-primary-header-bar,
.ast-primary-header-bar .site-primary-header-wrap {
  background: #0f1b3d !important;
}

/* Locations dropdown - compact style, no boxes */
#mega-menu-wrap-primary #mega-menu-primary > li#mega-menu-item-2722 ul.mega-sub-menu {
  width: 220px !important;
  padding: 8px !important;
}
#mega-menu-wrap-primary #mega-menu-primary > li#mega-menu-item-2722 ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
  border: none !important;
  background: transparent !important;
  min-height: auto !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  justify-content: flex-start !important;
  text-align: left !important;
}
#mega-menu-wrap-primary #mega-menu-primary > li#mega-menu-item-2722 ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover {
  background: rgba(255,255,255,.08) !important;
}

/* Border radius overrides for first/last items */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:first-child > a.mega-menu-link {
  border-top-left-radius: 6px !important;
  border-top-right-radius: 6px !important;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:last-child > a.mega-menu-link {
  border-bottom-left-radius: 6px !important;
  border-bottom-right-radius: 6px !important;
}