/*!
 * PP Mobile Nav Fix v1.3.1
 * - Arrow to the right using CSS Grid
 * - Consistent label sizing
 * - Tighter submenu spacing (kills theme/core top padding on UL)
 */

/* Scope to mobile drawer */
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open {}

/* Keep native arrow visible */
.mobile_main_menu_pp .wp-block-navigation .wp-block-navigation__submenu-icon {
  display: inline-flex !important;
  align-items: center;
}

/* Layout the parent row: label | arrow (grid prevents overlap/wrap-under) */
.mobile_main_menu_pp .wp-block-navigation .has-child {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: .25rem;
}

/* Label stays readable and consistent */
.mobile_main_menu_pp .wp-block-navigation .has-child > .wp-block-navigation-item__content {
  display: inline-flex;
  align-items: center;
  min-height: 2.25rem;
  font: inherit;
}

/* Arrow/toggle consistently on the right */
.mobile_main_menu_pp .wp-block-navigation .has-child > .wp-block-navigation-submenu__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .25rem .25rem;
  margin: 0;
  background: transparent;
  border: 0;
  line-height: 1;
}

/* Submenu: collapsed by default, opens smoothly */
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container {
  display: none !important;
  transition: max-height 0.25s ease, opacity 0.25s ease;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  margin-top: .35rem; /* baseline spacing; overridden below by tighter rules */
}

/* Open when aria-expanded true OR .is-open present */
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open
  .has-child > .wp-block-navigation-submenu__toggle[aria-expanded="true"]
  + .wp-block-navigation__submenu-container,
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open
  .has-child.is-open > .wp-block-navigation__submenu-container {
  display: block !important;
  max-height: 1000px;
  opacity: 1;
}

/* Hover cleanups */
.wp-block-navigation .wp-block-navigation-item__label:hover { background: transparent !important; }
.mobile_main_menu_pp .wp-block-navigation .wp-block-navigation-item a:hover { background: transparent !important; }

/* === NEW: Tighten the gap between parent and children === */
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container {
  padding-block-start: 0 !important;   /* remove top padding from core/theme */
  padding-top: 0 !important;
  margin-top: .25rem !important;       /* small, consistent breathing room */
}

/* If background styling adds extra padding, keep sides but zero top */
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container.has-background {
  padding: 0 .75rem .25rem .75rem !important; /* top 0, sides .75rem, bottom .25rem */
}

/* Remove margins on submenu <li> items for tight rhythm */
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container > .wp-block-navigation-item {
  margin: 0 !important;
}

/* Predictable vertical rhythm for submenu links */
.mobile_main_menu_pp .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content {
  display: block;
  padding: .35rem 0 !important;       /* adjust to taste */
  line-height: 1.25;
}
