/*
 * @file /assets/css/glb-header.css
 * @details Custom navigation styles for Minecraft @ Gad Lab
 * @author Pierre-Yves Gadina (https://gadlab.net)
 * @license MIT
-------------------------------------------------------------------------
DECLARE TEMPLATE VARIABLES
----------------------------------------------------------------------- */
 :root {
	--navbar-height: 4rem;
	--navbar-bg-color: 58, 58, 58; /* Dark Gray • RGBA Colors */
	--navbar-text-color: 255, 255, 255; /* White • RGBA Colors */
	--navbar-icons-max-size: 1.25rem;
}
/* Navbar Base Styles
----------------------------------------------------------------------- */
.glb-navbar {
	background-color: transparent;
	border-bottom: none;
	transition: all 0.3s ease;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1030;
	min-height: var(--navbar-height);
}
.glb-navbar svg {
    max-height: var(--navbar-icons-max-size);
    max-width: var(--navbar-icons-max-size);
}
/* Scrolled state: translucent glass + color saturation */
.glb-navbar.scrolled {
	background: rgba(var(--navbar-bg-color), 0.35); /* subtle tint */
	box-shadow: 0 4px 18px -6px rgba(0,0,0,.45);
	backdrop-filter: blur(12px) saturate(180%) contrast(105%);
	-webkit-backdrop-filter: blur(12px) saturate(180%) contrast(105%);
}
/* Fallback (navigateurs sans support blur/saturate) */
@supports not ((backdrop-filter: blur(12px)) or (-webkit-backdrop-filter: blur(12px))) {
	.glb-navbar.scrolled {
		background: rgba(var(--navbar-bg-color), 0.85); /* solide lisible */
		box-shadow: 0 2px 8px rgba(0,0,0,.4);
	}
}
/* Navigation Links
----------------------------------------------------------------------- */
.glb-navbar .nav-link {
	color: rgba(255, 255, 255, 0.85);
	font-weight: 500;
	transition: all 0.2s ease;
}
.glb-navbar .nav-link:hover,
.glb-navbar .nav-link:focus {
	color: #fff;
	background: var(--bg-alt);
}
.glb-navbar .nav-link.active {
    background: var(--accent);
    color: var(--bg-alt);
}
/* Enhanced Modern Navigation (Inspiration Kevin Powell)
----------------------------------------------------------------------- */
/* Container spacing for nav list */
.glb-navbar .nav-pills {
	display: flex;
	gap: clamp(.5rem, 2vw, 1.4rem);
	align-items: center;
}
/* Base link styling refined (mobile-first) */
.glb-navbar .nav-link {
	position: relative;
	padding: .55rem .95rem;
	font-size: clamp(.80rem, .72rem + .35vw, .95rem);
	letter-spacing: .5px;
	line-height: 1.1;
	background: transparent; /* reset bootstrap pill background */
	border-radius: .45rem;
	isolation: isolate; /* ensure pseudo sits above bg */
}
/* Animated gradient underline
----------------------------------------------------------------------- */
.glb-navbar .nav-link::after {
	content: "";
	position: absolute;
	left: .9rem; right: .9rem; bottom: .35rem;
	height: 2px;
	background: linear-gradient(90deg, var(--accent), var(--accent-2));
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .35s ease;
	opacity: .85;
	border-radius: 2px;
}
/* Hover + focus reveal underline */
.glb-navbar .nav-link:hover::after,
.glb-navbar .nav-link:focus::after {
	transform: scaleX(1);
}
/* Active link stronger indicator */
.glb-navbar .nav-link.active::after {
	transform: scaleX(1);
	height: 3px;
}
/* Refined interactive states */
.glb-navbar .nav-link:hover,
.glb-navbar .nav-link:focus {
	color: #fff;
	background: rgba(255,255,255,.08);
	text-decoration: none;
}
.glb-navbar .nav-link.active {
	background: rgba(255,255,255,.18);
	color: #fff;
}
/* Focus accessibility */
.glb-navbar .nav-link:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}
/* Collapsed navbar (mobile) */
.navbar-collapse {
	background: rgba(var(--navbar-bg-color), .92);
	backdrop-filter: blur(6px) saturate(140%);
	border: 1px solid rgba(255,255,255,.08);
	border-radius: .75rem;
	padding: .75rem .85rem 1rem;
	box-shadow: 0 10px 30px -8px rgba(0,0,0,.4);
}
.navbar-collapse.show .nav-pills {
	flex-direction: column;
	gap: .35rem;
	align-items: stretch;
}
.navbar-collapse.show .nav-link { text-align: left; }
/* Desktop adjustments */
@media (min-width: 992px) {
	.navbar-collapse { background: transparent; backdrop-filter: none; border: none; box-shadow: none; padding: 0; }
	.navbar-collapse .nav-pills { flex-direction: row; }
	.navbar-collapse .nav-link { text-align: center; }
}
/* Scroll effect enhancement */
/* (Consolidated above) */
/* Toggler subtle animation (keeping existing icon asset) */
.navbar-toggler { transition: border-color .3s ease, background .3s ease; }
.navbar-toggler:hover { background: rgba(255,255,255,.08); }
.navbar-toggler:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	.glb-navbar .nav-link,
	.glb-navbar .nav-link::after,
	.navbar-toggler { transition: none !important; }
}
/* ADMIN Navbar Styles
----------------------------------------------------------------------- */
.glb-admin {
	background: rgba(var(--navbar-bg-color), 0.9);
	position: fixed;
	top: var(--navbar-height);
	left: 0;
	right: 0;
	z-index: 1025;
	display: none;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.glb-admin.active {
	display: block;
}
.glb-admin .nav-link {
	color: rgba(255, 255, 255, 0.8);
	font-size: 0.9em;
}
.glb-admin .nav-link:hover {
	background: rgba(255, 255, 255, 0.15);
}
/*  Mobile Toggle
----------------------------------------------------------------------- */
.navbar-toggler {
	border-color: rgba(255, 255, 255, 0.5);
	color: white;
}
.navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
