/**
 * Athlorix Pro — Mega Menu
 * Works with both classic wp_nav_menu (Athlorix_Mega_Menu_Walker) and the
 * FSE core/navigation block (tagged with .athlorix-mega-nav).
 */

:root {
	--athlorix-mega-bg: #1e1b4b;
	--athlorix-mega-text: #e5e7eb;
	--athlorix-mega-accent: #22d3ee;
}

/* ---------- Shared submenu panel styling ---------- */
.athlorix-mega-enabled .athlorix-sub-menu,
.athlorix-mega-enabled .wp-block-navigation__submenu-container {
	background: var(--athlorix-mega-bg);
	color: var(--athlorix-mega-text);
	border: 0;
	border-radius: 14px;
	box-shadow: 0 24px 60px -20px rgba(11, 16, 32, 0.55);
	padding: 10px;
	min-width: 240px;
	z-index: 999;
}

.athlorix-mega-enabled .athlorix-sub-menu a,
.athlorix-mega-enabled .wp-block-navigation__submenu-container a {
	color: var(--athlorix-mega-text);
	border-radius: 8px;
	transition: background .18s ease, color .18s ease;
}

.athlorix-mega-enabled .athlorix-sub-menu a:hover,
.athlorix-mega-enabled .wp-block-navigation__submenu-container a:hover {
	background: rgba(255, 255, 255, 0.06);
	color: var(--athlorix-mega-accent);
}

/* ---------- Classic mega panel ---------- */
.athlorix-mega-enabled .menu-item.athlorix-has-mega {
	position: static;
}

.athlorix-mega-enabled .menu-item.athlorix-has-mega > .athlorix-sub-menu {
	display: grid;
	gap: 6px 28px;
	padding: 26px 30px;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.athlorix-mega-width-container .menu-item.athlorix-has-mega > .athlorix-sub-menu {
	max-width: var(--athlorix-content-width, 1180px);
}

.athlorix-mega-cols-2 > .athlorix-sub-menu { grid-template-columns: repeat(2, 1fr); }
.athlorix-mega-cols-3 > .athlorix-sub-menu { grid-template-columns: repeat(3, 1fr); }
.athlorix-mega-cols-4 > .athlorix-sub-menu { grid-template-columns: repeat(4, 1fr); }

/* Second-level items inside a mega panel act as "column headings" */
.athlorix-mega-enabled .athlorix-has-mega > .athlorix-sub-menu > .menu-item > a {
	font-weight: 700;
	letter-spacing: .02em;
	color: #fff;
	padding-bottom: 8px;
	margin-bottom: 4px;
	border-bottom: 1px solid rgba(255,255,255,.12);
}

/* Caret */
.athlorix-mega-caret {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-left: 6px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
	opacity: .7;
}

/* ---------- Animations ---------- */
.athlorix-mega-enabled .athlorix-sub-menu {
	opacity: 0;
	visibility: hidden;
	transition: opacity .22s ease, transform .22s ease, visibility .22s;
}
.athlorix-mega-anim-slide .athlorix-sub-menu { transform: translateY(10px); }
.athlorix-mega-anim-fade  .athlorix-sub-menu { transform: none; }
.athlorix-mega-anim-none  .athlorix-sub-menu { transition: none; }

.athlorix-mega-enabled .menu-item:hover > .athlorix-sub-menu,
.athlorix-mega-enabled .menu-item:focus-within > .athlorix-sub-menu,
.athlorix-mega-enabled .menu-item.athlorix-open > .athlorix-sub-menu {
	opacity: 1;
	visibility: visible;
	transform: none;
}

/* ---------- Native FSE nav enhancement ---------- */
.athlorix-mega-nav .wp-block-navigation__submenu-container {
	opacity: 0;
	visibility: hidden;
	transition: opacity .22s ease, transform .22s ease, visibility .22s;
	transform: translateY(8px);
}
.athlorix-mega-nav .wp-block-navigation-item:hover > .wp-block-navigation__submenu-container,
.athlorix-mega-nav .wp-block-navigation-item:focus-within > .wp-block-navigation__submenu-container,
.athlorix-mega-nav .wp-block-navigation-item.athlorix-open > .wp-block-navigation__submenu-container {
	opacity: 1;
	visibility: visible;
	transform: none;
}

/* ---------- Mobile ---------- */
@media (max-width: 781px) {
	.athlorix-mega-enabled .menu-item.athlorix-has-mega > .athlorix-sub-menu {
		position: static;
		display: block;
		box-shadow: none;
		padding: 8px 0 8px 16px;
	}
	.athlorix-mega-enabled .athlorix-sub-menu {
		opacity: 1;
		visibility: visible;
		transform: none;
	}
}