/**
 * Accordion-style collapsed submenus for the Kiosko mobile navigation overlay.
 *
 * Overrides the WordPress core navigation block CSS that forces submenus
 * to display expanded/flat inside the mobile overlay (.is-menu-open).
 *
 * @package Kiosko_Accordion_Menu
 */

/* --- Hide submenus by default inside the mobile overlay --- */
.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content
  .has-child
  .wp-block-navigation__submenu-container {
	height: 0;
	overflow: hidden;
	opacity: 0;
	padding-top: 0 !important;
	padding-bottom: 0;
	transition: height 0.3s ease, opacity 0.25s ease, padding 0.3s ease;
	position: absolute !important;
	width: 0;
	pointer-events: none;
}

/* --- Show submenu when parent has the open class --- */
.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content
  .has-child.submenu-is-open
  > .wp-block-navigation__submenu-container {
	height: auto;
	overflow: visible;
	opacity: 1;
	padding-top: var(--wp--preset--spacing--30, 0.44rem) !important;
	position: static !important;
	width: auto;
	pointer-events: auto;
}

/* --- Keep the core submenu icon hidden; our custom toggle replaces it --- */
.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content
  .wp-block-navigation__submenu-icon {
	display: none !important;
}

/* --- Make the parent item a row layout so link + toggle sit side-by-side --- */
.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content
  .has-child {
	flex-direction: row !important;
	flex-wrap: wrap;
	align-items: center !important;
	justify-content: flex-end !important;
}

/* --- Toggle button (hidden by default, shown only in mobile overlay) --- */
.kiosko-submenu-toggle {
	display: none;
}

.wp-block-navigation__responsive-container.is-menu-open .kiosko-submenu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	margin-left: 6px;
	color: inherit;
	font-size: 0.75em;
	line-height: 1;
	transition: transform 0.25s ease;
	flex-shrink: 0;
	opacity: 0.6;
}

.wp-block-navigation__responsive-container.is-menu-open .kiosko-submenu-toggle:hover {
	opacity: 1;
}

.wp-block-navigation__responsive-container.is-menu-open .kiosko-submenu-toggle svg {
	width: 12px;
	height: 12px;
	transition: transform 0.25s ease;
}

.wp-block-navigation__responsive-container.is-menu-open
  .has-child.submenu-is-open
  > .kiosko-submenu-toggle svg {
	transform: rotate(180deg);
}

/* --- Open submenu: full-width below parent, right-aligned to match parent items --- */
.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content
  .has-child
  > .wp-block-navigation__submenu-container {
	flex-basis: 100%;
	padding-left: 0 !important;
	padding-right: 0 !important;
	align-items: flex-end !important;
	gap: inherit;
}

/* --- Submenu items inherit font size for visual consistency --- */
.wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content
  .wp-block-navigation__submenu-container
  .wp-block-navigation-item__content {
	font-size: inherit;
}
