/**
 * Navigation block.
 *
 * Loaded only on pages that render core/navigation.
 * File name maps to the block name — see inc/enqueue.php.
 */

.wp-block-navigation .wp-block-navigation-item__content {
	padding-block: 0.375rem;
	position: relative;
}

/* Underline that grows from the left on hover and on the current page. */
.wp-block-navigation
	:where(.wp-block-navigation-item:not(.has-child))
	> .wp-block-navigation-item__content::after {
	background-color: currentColor;
	block-size: 1px;
	content: "";
	inline-size: 0;
	inset-block-end: 0;
	inset-inline-start: 0;
	position: absolute;
	transition: inline-size var(--wp--custom--transition--base);
}

.wp-block-navigation
	:where(.wp-block-navigation-item:not(.has-child)):hover
	> .wp-block-navigation-item__content::after,
.wp-block-navigation
	:where(.wp-block-navigation-item.current-menu-item:not(.has-child))
	> .wp-block-navigation-item__content::after {
	inline-size: 100%;
}

/* Submenus */
.wp-block-navigation .wp-block-navigation__submenu-container {
	border: 0;
	border-radius: var(--wp--custom--radius--small, 8px);
	box-shadow: var(--wp--preset--shadow--lifted, 0 18px 40px rgba(10, 10, 10, 0.1));
	min-inline-size: 15rem;
	padding-block: 0.5rem;
}

.wp-block-navigation
	.wp-block-navigation__submenu-container
	.wp-block-navigation-item__content {
	padding: 0.5rem 1rem;
}

/* Mobile overlay */
.wp-block-navigation__responsive-container.is-menu-open {
	padding: var(--wp--preset--spacing--40, 2rem);
}

.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__responsive-container-content {
	gap: 1rem;
}

.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content {
	font-size: var(--wp--preset--font-size--x-large, 1.75rem);
	font-weight: 500;
}

.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
	padding: 0.25rem;
}
