/* JinglePig menu (theme 0.3.0): mega panels for Tools, Melt Values and Coins
   (inc/mega-menu.php), and larger type in the phone menu. Works on top of
   GeneratePress's own dropdown rules. */

/* An open or hovered menu entry stays brand mint (GeneratePress would turn it blue). */
.main-navigation .main-nav ul li.sfHover > a,
.main-navigation .main-nav ul li.jp-mega:hover > a { color: var(--jp-deep-mint, #173D3A); }
html[data-jp-theme="dark"] .main-navigation .main-nav ul li.sfHover > a,
html[data-jp-theme="dark"] .main-navigation .main-nav ul li.jp-mega:hover > a { color: var(--jp-slate-ink, #DCE7E2); }

/* ---------- Desktop: wide panel under the menu ---------- */
@media (min-width: 769px) {
	.main-navigation .inside-navigation { position: relative; }
	.main-navigation .main-nav > ul > li.jp-mega { position: static; }

	.main-navigation .main-nav > ul > li.jp-mega > ul.sub-menu {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0 28px;
		width: 900px;
		max-width: calc(100vw - 48px);
		top: 100%;
		padding: 22px 26px 24px;
		background: #fff;
		border: 1px solid var(--jp-line, #DCE7E1);
		border-top: 0;
		border-radius: 0 0 16px 16px;
		box-shadow: 0 22px 44px rgba(23, 61, 58, .14);
		text-align: left;
	}
	.main-navigation .main-nav > ul > li.jp-mega--3 > ul.sub-menu { grid-template-columns: repeat(3, minmax(0, 1fr)); width: 720px; }

	/* Open on hover (GeneratePress) and also on keyboard focus; line the panel up with the menu's right edge. */
	.main-navigation:not(.toggled) .main-nav > ul > li.jp-mega:hover > ul.sub-menu,
	.main-navigation:not(.toggled) .main-nav > ul > li.jp-mega.sfHover > ul.sub-menu,
	.main-navigation:not(.toggled) .main-nav > ul > li.jp-mega:focus-within > ul.sub-menu {
		left: auto;
		right: 0;
		opacity: 1;
		pointer-events: auto;
		height: auto;
		overflow: visible;
	}

	.main-navigation .main-nav li.jp-mega li.jp-mega-col { width: auto; float: none; position: static; }
	.main-navigation .main-nav li.jp-mega li.jp-mega-col > a {
		padding: 0 0 9px;
		margin-bottom: 8px;
		border-bottom: 1px solid var(--jp-line, #DCE7E1);
		background: none !important;
		font-size: 12px;
		font-weight: 800;
		letter-spacing: .07em;
		text-transform: uppercase;
		color: var(--jp-muted, #4f6963);
		line-height: 1.4;
	}
	.main-navigation .main-nav li.jp-mega li.jp-mega-col > a:hover { color: var(--jp-deep-mint, #173D3A); }

	/* The column's links are always shown inside an open panel. */
	.main-navigation .main-nav li.jp-mega ul.sub-menu ul.sub-menu {
		position: static;
		left: auto;
		opacity: 1;
		pointer-events: auto;
		height: auto;
		overflow: visible;
		width: auto;
		float: none;
		box-shadow: none;
		background: transparent;
		border: 0;
		padding: 0;
	}
	.main-navigation .main-nav li.jp-mega li.jp-mega-link { width: auto; float: none; }
	.main-navigation .main-nav li.jp-mega li.jp-mega-link > a {
		margin: 0 -10px;
		padding: 7px 10px;
		border-radius: 8px;
		font-size: 15px;
		font-weight: 600;
		line-height: 1.35;
		color: var(--jp-slate-ink, #20343C);
		background: none;
	}
	.main-navigation .main-nav li.jp-mega li.jp-mega-link > a:hover,
	.main-navigation .main-nav li.jp-mega li.jp-mega-link > a:focus-visible,
	.main-navigation .main-nav li.jp-mega li.jp-mega-link.current-menu-item > a {
		background: var(--jp-mint-mist, #ECF2ED);
		color: var(--jp-deep-mint, #173D3A);
	}
	.main-navigation .main-nav li.jp-mega li.jp-mega-col > a .dropdown-menu-toggle { display: none; }
}

/* ---------- Phones: bigger, easier-to-tap menu ---------- */
@media (max-width: 768px) {
	.main-navigation.toggled .main-nav > ul > li > a {
		font-size: 19px;
		line-height: 54px;
		padding-left: 22px;
	}
	.main-navigation.toggled .main-nav > ul > li { border-bottom: 1px solid var(--jp-line, #DCE7E1); }
	.main-navigation.toggled .main-nav > ul > li > a .dropdown-menu-toggle { padding-left: 22px; padding-right: 22px; }
	.main-navigation.toggled .main-nav ul ul li a { font-size: 17px; padding: 12px 22px 12px 34px; }

	/* Mega panels: the open section lists every group, each with a small label. */
	.main-navigation.toggled .main-nav li.jp-mega > ul.toggled-on { padding-bottom: 10px; background: var(--jp-mint-mist, #ECF2ED); }
	.main-navigation.toggled .main-nav li.jp-mega > ul.toggled-on ul.sub-menu {
		position: relative;
		left: auto !important;
		right: auto !important;
		top: 0;
		width: 100%;
		float: none;
		display: block;
		visibility: visible;
		opacity: 1;
		height: auto;
		pointer-events: auto;
		box-shadow: none;
		background: transparent;
	}
	.main-navigation.toggled .main-nav li.jp-mega li.jp-mega-col > a {
		padding: 16px 22px 4px 34px;
		font-size: 12px;
		font-weight: 800;
		letter-spacing: .07em;
		text-transform: uppercase;
		color: var(--jp-muted, #4f6963);
		background: none;
	}
	.main-navigation.toggled .main-nav li.jp-mega li.jp-mega-col > a .dropdown-menu-toggle { display: none; }
	.main-navigation.toggled .main-nav li.jp-mega li.jp-mega-link > a { padding: 11px 22px 11px 34px; font-size: 17px; font-weight: 600; }
}

/* ---------- Dark mode ---------- */
@media screen {
	html[data-jp-theme="dark"] .main-navigation .main-nav > ul > li.jp-mega > ul.sub-menu { background: var(--jpd-surface, #152826); border-color: var(--jp-line, #2B4541); box-shadow: 0 22px 44px rgba(0, 0, 0, .45); }
	html[data-jp-theme="dark"] .main-navigation .main-nav li.jp-mega li.jp-mega-col > a { color: var(--jpd-muted, #A3BAB3); border-color: var(--jp-line, #2B4541); }
	html[data-jp-theme="dark"] .main-navigation .main-nav li.jp-mega li.jp-mega-link > a { color: var(--jp-slate-ink, #DCE7E2); }
	html[data-jp-theme="dark"] .main-navigation .main-nav li.jp-mega li.jp-mega-link > a:hover,
	html[data-jp-theme="dark"] .main-navigation .main-nav li.jp-mega li.jp-mega-link.current-menu-item > a { background: var(--jpd-surface-2, #1B312E); color: var(--jpd-strong, #F1F6F3); }
	html[data-jp-theme="dark"] .main-navigation.toggled .main-nav li.jp-mega > ul.toggled-on { background: var(--jpd-surface-2, #1B312E); }
}

/* Larger text (A+): keep the panel readable without overflowing. */
html[data-jp-text="large"] .main-navigation .main-nav li.jp-mega li.jp-mega-link > a { font-size: 17px; }

/* Footer disclaimer line (0.3.1). */
.jp-footer-note { max-width: 1200px; margin: 14px auto 0; padding-top: 14px; border-top: 1px solid var(--jp-line, #DCE7E1); font-size: 13px; line-height: 1.55; color: var(--jp-muted, #4f6963); text-align: center; }
.jp-footer-note a { color: inherit; text-decoration: underline; }
@media screen { html[data-jp-theme="dark"] .jp-footer-note { color: var(--jpd-muted, #A3BAB3); border-color: var(--jp-line, #2B4541); } }

/* Impact site-verification line, home page only (0.3.3). */
.jp-site-verify { max-width: 1200px; margin: 6px auto 0; font-size: 11px; line-height: 1.4; color: var(--jp-muted, #4f6963); text-align: center; opacity: .8; }
@media screen { html[data-jp-theme="dark"] .jp-site-verify { color: var(--jpd-muted, #A3BAB3); } }
