/* WPEI Addons — Header menu (widget-internal styles only)
 * Global layout, sticky, split layout, menu type variants, hover effects,
 * and mobile toggle visibility live in wpei-orion/assets/css/header-state.css.
 * Do NOT add !important here unless the rule is already in the source with !important.
 */

/* ── Nav menu base reset ── */

.wpei-orion-nav-menu-compat,
.wpei-addons-nav-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.wpei-orion-nav-menu-compat.wpei-orion-nav-menu--default,
.wpei-addons-nav-menu.wpei-orion-nav-menu--default {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: var(--wpei-orion-nav-menu-gap, clamp(18px, 2.4vw, 42px));
}

.wpei-orion-nav-menu-compat .menu-item,
.wpei-addons-nav-menu .menu-item {
	position: relative;
	list-style: none;
	min-width: 0;
}

.wpei-orion-nav-menu-compat.main-menu > .menu-item > a,
.wpei-addons-nav-menu.main-menu > .menu-item > a,
.wpei-orion-nav-menu-compat.secondary-menu > .menu-item > a,
.wpei-orion-nav-menu-compat.top-links > .menu-item > a {
	display: flex;
	align-items: center;
	text-decoration: none;
	white-space: nowrap;
}

/* ── Popup submenu ── */

.wpei-orion-nav-menu-compat .popup,
.wpei-addons-nav-menu .popup {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 10020;
	display: none;
	min-width: 220px;
	text-align: left;
}

.wpei-orion-nav-menu-compat .menu-item:hover > .popup,
.wpei-orion-nav-menu-compat .menu-item:focus-within > .popup,
.wpei-addons-nav-menu .menu-item:hover > .popup,
.wpei-addons-nav-menu .menu-item:focus-within > .popup {
	display: block;
}

.wpei-orion-nav-menu-compat .popup .inner,
.wpei-addons-nav-menu .popup .inner {
	background: var(--porto-normal-bg, #fff);
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.12);
}

.wpei-orion-nav-menu-compat .sub-menu,
.wpei-addons-nav-menu .sub-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

.wpei-orion-nav-menu-compat .sub-menu .menu-item > a,
.wpei-addons-nav-menu .sub-menu .menu-item > a {
	display: block;
	padding: 8px 14px;
	white-space: nowrap;
}

.wpei-orion-nav-menu-compat .arrow,
.wpei-addons-nav-menu .arrow {
	display: none;
}

/* ── .wpei-orion-nav-menu — secondary class (co-exists on same element) ── */

.wpei-orion-nav-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 1;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.wpei-orion-nav-menu--default {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: var(--wpei-orion-nav-menu-gap, clamp(18px, 2.4vw, 42px));
	margin: 0;
	padding: 0;
	list-style: none;
	min-width: 0;
	max-width: 100%;
}

.wpei-orion-nav-menu > li {
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
	min-width: 0;
}

.wpei-orion-nav-menu--default > li > a {
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1;
	margin: 0;
	text-decoration: none;
	white-space: nowrap;
}

.wpei-orion-nav-menu .sub-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* ── Mobile toggle: visual styles ── */

.mobile-toggle.wpei-orion-mobile-toggle,
.mobile-toggle.wpei-addons-mobile-toggle {
	margin: 8px 0 8px 1em;
	padding: 7px 13px;
	border-radius: 0.25rem;
	font-size: 13px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	line-height: 20px;
	vertical-align: middle;
}

.mobile-toggle.wpei-orion-mobile-toggle:first-child,
.mobile-toggle.wpei-addons-mobile-toggle:first-child {
	margin-left: 0;
}

.mobile-toggle.wpei-orion-mobile-toggle svg,
.mobile-toggle.wpei-orion-mobile-toggle i,
.mobile-toggle.wpei-orion-mobile-toggle .wpei-orion-mobile-toggle-bars,
.mobile-toggle.wpei-addons-mobile-toggle svg,
.mobile-toggle.wpei-addons-mobile-toggle i,
.mobile-toggle.wpei-addons-mobile-toggle .wpei-addons-mobile-toggle-bars {
	color: inherit;
	width: 1em;
	height: 1em;
	line-height: inherit;
	vertical-align: middle;
}

.mobile-toggle.wpei-orion-mobile-toggle svg,
.mobile-toggle.wpei-orion-mobile-toggle svg path,
.mobile-toggle.wpei-addons-mobile-toggle svg,
.mobile-toggle.wpei-addons-mobile-toggle svg path {
	fill: currentColor;
	stroke: currentColor;
}

.mobile-toggle .wpei-orion-mobile-toggle-bars,
.mobile-toggle .wpei-addons-mobile-toggle-bars {
	position: relative;
	display: inline-block;
}

.mobile-toggle .wpei-orion-mobile-toggle-bars::before,
.mobile-toggle .wpei-addons-mobile-toggle-bars::before {
	content: "\2630";
	display: block;
	line-height: 1;
}
