/* ==========================================================================
   Anchor Nav
   ========================================================================== */

:root {
	--jda-anchor-nav-bg: #003340;
	--jda-anchor-nav-top: 64px;
	--jda-anchor-nav-link-color: #ffffff;
	--jda-anchor-nav-active-border: #ffffff;
	--jda-anchor-nav-arrow-size: 40px;
	--jda-anchor-nav-gradient-width: 32px;
}

.jda-anchor-nav {
	position: sticky;
	top: var(--jda-anchor-nav-top);
	z-index: 100;
	width: 100%;
	padding: 0;
	box-sizing: border-box;
}

body.admin-bar .jda-anchor-nav {
	top: calc(var(--jda-anchor-nav-top) + 32px);
}

.jda-anchor-nav *,
.jda-anchor-nav *::before,
.jda-anchor-nav *::after {
	box-sizing: border-box;
}

/* Outer flex container: arrow | pill | arrow */

.jda-anchor-nav__container {
	display: flex;
	align-items: center;
	gap: 6px;
	width: 100%;
}

/* Pill */

.jda-anchor-nav__pill {
	position: relative;
	display: flex;
	align-items: center;
	flex: 1 1 0;
	min-width: 0;
	background-color: var(--jda-anchor-nav-bg);
	border-radius: 999px;
	overflow: hidden;
}

/* Scrollable track */

.jda-anchor-nav__track {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	gap: 4px;
	flex: 1 1 0;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-behavior: smooth;
	padding: 10px 8px;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.jda-anchor-nav__track::-webkit-scrollbar {
	display: none;
}

/* Anchor links */

.jda-anchor-nav__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	padding: 8px 20px;
	border-radius: 999px;
	border: 2px solid transparent;
	color: #fff !important;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: border-color 0.2s ease;
	cursor: pointer;
}

.jda-anchor-nav__link:hover {
	border-color: #fff;
	color: #fff;
	text-decoration: none;
}

.jda-anchor-nav__link--active {
	border-color: var(--jda-anchor-nav-active-border);
}

/* Gradient overlays (inside the pill, at each edge) */

.jda-anchor-nav__gradient {
	position: absolute;
	top: 0;
	bottom: 0;
	width: var(--jda-anchor-nav-gradient-width);
	pointer-events: none;
	z-index: 2;
	opacity: 0;
	transition: opacity 0.2s ease;
}

.jda-anchor-nav__gradient--visible {
	opacity: 1;
}

.jda-anchor-nav__gradient--left {
	left: 0;
	background: linear-gradient(to right, var(--jda-anchor-nav-bg), transparent);
}

.jda-anchor-nav__gradient--right {
	right: 0;
	background: linear-gradient(to left, var(--jda-anchor-nav-bg), transparent);
}

/* Arrow buttons (outside the pill) */

.jda-anchor-nav__arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: var(--jda-anchor-nav-arrow-size);
	height: var(--jda-anchor-nav-arrow-size);
	background: none!important;
	border: none;
	color: var(--jda-teal) !important;
	cursor: pointer;
	padding: 0;
	z-index: 3;
	transition: opacity 0.2s ease;
}

.jda-anchor-nav__arrow:hover {
	opacity: 1;
}

.jda-anchor-nav__arrow--hidden {
	opacity: 0;
	pointer-events: none;
}

/* Desktop: arrows and gradients visible on hover only */

@media (min-width: 769px) {
	.jda-anchor-nav__arrow {
		opacity: 0;
	}

	.jda-anchor-nav:hover .jda-anchor-nav__arrow {
		opacity: 1;
	}

	.jda-anchor-nav:hover .jda-anchor-nav__arrow--hidden {
		opacity: 0;
		pointer-events: none;
	}

	.jda-anchor-nav__gradient {
		opacity: 0;
	}

	.jda-anchor-nav:hover .jda-anchor-nav__gradient--visible {
		opacity: 1;
	}
}
