/* Theme-only helpers for Cliipsi Menu inside Bootstrap Offcanvas (mobile) */

/* Ensure the offcanvas starts at top (no mysterious gap) */
#mobileMenuCanvas.offcanvas { top: 0 !important; }

/* Header spacing + keep it clean */
#mobileMenuCanvas .offcanvas-header { padding-top: .75rem; padding-bottom: .75rem; }

/* Make sure module content is visible and not collapsed by theme resets */
#mobileMenuCanvas .offcanvas-body { overflow-y: auto; -webkit-overflow-scrolling: touch; }

/* Cliipsi Menu mobile layout: let it use full width */
#mobileMenuCanvas .cliipsi_prmn_block_content,
#mobileMenuCanvas .cliipsi_prmn_block_content * { box-sizing: border-box; }

#mobileMenuCanvas .cliipsi_prmn_block_content { padding: 0; }

/* Avoid clipped dropdowns inside offcanvas */
#mobileMenuCanvas .cliipsi_prmn_block_content,
#mobileMenuCanvas .mobile-menu-content { overflow: visible; }

/* --- MegaMenu: mobile expand/collapse inside offcanvas --- */
#mobileMenuCanvas .prmn_menus_ul { margin: 0; padding: 0; }

/* Hide submenus by default in offcanvas */
#mobileMenuCanvas .prmn_menus_li > .prmn_columns_ul {
  display: none !important;
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}

/* Show when module (or our JS) adds .active */
#mobileMenuCanvas .prmn_menus_li > .prmn_columns_ul.active {
  display: block !important;
}

/* Make the tap targets align nicely */
#mobileMenuCanvas .prmn_menus_li > a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .5rem;
}

#mobileMenuCanvas .prmn_menus_li > .arrow {
  margin-left: auto;
  width: 42px;
  min-width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Ensure offcanvas overlays everything */
#mobileMenuCanvas.offcanvas { z-index: 99999 !important; }


/* --- MegaMenu: mobile expand/collapse inside offcanvas --- */
#mobileMenuCanvas .prmn_menus_ul { margin: 0; padding: 0; }

/* Hide submenus by default in offcanvas */
#mobileMenuCanvas .prmn_menus_li > .prmn_columns_ul {
  display: none !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  margin: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}

/* Show when JS adds .active */
#mobileMenuCanvas .prmn_menus_li > .prmn_columns_ul.active {
  display: block !important;
}

/* Make the toggle arrow reliably clickable */
#mobileMenuCanvas .prmn_has_sub > .arrow {
  cursor: pointer;
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Keep content readable */
#mobileMenuCanvas .prmn_columns_ul { padding: .5rem 0; }
#mobileMenuCanvas .prmn_columns_ul .prmn_blocks_ul { padding: 0 .75rem; }
