/* components-navigation-aesthetic.css
 * Phase C: Navigation Aesthetic Layer
 * Extracted from: AI-DEV/feedback/header-styles-we-lost.txt + future removal from theme file
 * CONTAINS ONLY: color, background, border, radius, shadows, transitions, font-weight (visual), hover/active/interactive decoration.
 * EXCLUDES: spacing (margin/padding positioning except where intrinsic to interactive hit area), flex/grid layout, sizing, z-index ordering.
 */

/* Utility brand color helpers (kept here until migrated to a central utility aesthetic layer) */
.accent-background { background: var(--brand-primary) !important; color: #fff !important; }
.accent-color { color: var(--brand-primary) !important; }
.secondary-color { color: var(--brand-secondary) !important; }
.brand-font { font-family: var(--brand-font-family), Arial, sans-serif !important; }

/* Keep header background aligned with page background even when sticky */
.header,
.header.sticky-header-enabled,
.header.is-scrolled,
body[data-sticky-header-enabled="1"] .header {
	background-color: var(--brand-background, var(--brand_background_color, #fff));
}

/* Base link visuals */
.navmenu a,
.navmenu a:focus {
	color: var(--nav-link-color, var(--brand_text_color)) !important;
	font-weight: 500;
	text-decoration: none !important;
}

/* Hover state - subtle background highlight */
.navmenu ul li a:hover {
	color: var(--nav-link-hover-color, var(--brand_primary_color)) !important;
	background: rgba(0,0,0,0.05) !important;
	border-radius: 4px;
	text-decoration: none !important;
}

/* Active class (no special highlight except weight/color uniformity) */
.navmenu ul li a.active {
	color: var(--nav-link-active-color, var(--brand_primary_color)) !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

/* Active clicking state (keep visually stable) */
.navmenu ul li a:active {
	color: var(--nav-link-active-color, var(--brand_primary_color)) !important;
	font-weight: 500 !important;
	background: transparent !important;
	border-radius: 0 !important;
}

/* Mobile nav toggle button aesthetics */
.mobile-nav-toggle {
	cursor: pointer;
	color: var(--brand-secondary) !important;
	background: #fff !important;
	border: 2px solid var(--brand-secondary) !important;
	font-size: 24px !important;
	font-weight: 900 !important;
	border-radius: 4px !important;
	transition: all 0.3s ease;
}
.mobile-nav-toggle:hover { background: var(--brand-secondary) !important; color: #fff !important; transform: scale(1.05); }
.mobile-nav-toggle:focus { outline: 2px solid var(--brand-primary); outline-offset: 2px; }

/* Mobile menu panel aesthetics */
@media (max-width: 819.98px) {
	.navmenu ul { background: var(--background-color, #fff); box-shadow: 0 8px 24px rgba(0,0,0,0.15); border-radius: 8px; }
	.navmenu ul li a { color: var(--nav-link-color, var(--brand_text_color)); border-bottom: 1px solid rgba(0,0,0,0.05); background: transparent; }
	.navmenu ul li a:hover,
	.navmenu ul li a.active { color: var(--nav-link-hover-color, var(--brand_primary_color)) !important; font-weight: bold !important; background: rgba(var(--brand-primary-rgb, 102, 153, 153), 0.08) !important; }
	.navmenu ul li:last-child a { border-bottom: none; }
	.mobile-nav-toggle { background: #fff !important; }
}

/* Desktop retains transparent background - no extra aesthetics needed beyond base link styles */
@media (min-width: 820px) {
	.navmenu ul li a { background: transparent; border-bottom: none; }
}

/* Skip link visibility & focus aesthetics */
.skip-link { background: var(--brand-primary); color: #fff; border-radius: 4px; font-weight: bold; text-decoration: none; }
.skip-link:focus { outline: 2px solid var(--brand-secondary); }

/* Logo image interaction effect */
.logo img { transition: transform 0.3s ease; }
.logo img:hover { transform: scale(1.05); }

/* Logo sizing variants (visual scale choices) */
body[data-header-logo-style="large"] .logo img { filter: drop-shadow(0 1px 2px rgba(0,0,0,0.25)); }
body[data-header-logo-style="compact"] .logo img { filter: drop-shadow(0 1px 1px rgba(0,0,0,0.2)); }
body[data-header-logo-style="text-only"] .logo img { display: none; }

/* Navigation search visual styles */
.nav-search .form-control { background: rgba(255,255,255,0.9); border: 1px solid rgba(255,255,255,0.3); color: #333; }
.nav-search .form-control:focus { background:#fff; border-color: var(--brand-primary); box-shadow: 0 0 0 0.2rem rgba(var(--brand-primary-rgb), 0.25); }
.nav-search .form-control::placeholder { color:#6c757d; }
.nav-search .btn-outline-light { border-color: rgba(255,255,255,0.5); color:#fff; }
.nav-search .btn-outline-light:hover { background: rgba(255,255,255,0.2); border-color:#fff; }

/* Auth buttons aesthetics */
.nav-auth .btn { font-weight:500; border-radius:4px; transition: all 0.3s ease; text-decoration:none; }
.nav-auth .btn-outline-light { color:#fff !important; border-color: rgba(255,255,255,0.7) !important; background: transparent; }
.nav-auth .btn-outline-light:hover { background: rgba(255,255,255,0.1) !important; border-color:#fff !important; }
.nav-auth .btn-light { background: rgba(255,255,255,0.9) !important; border-color: rgba(255,255,255,0.9) !important; color: var(--brand-primary) !important; }
.nav-auth .btn-light:hover { background:#fff !important; border-color:#fff !important; color: var(--brand-primary) !important; transform: translateY(-1px); box-shadow: 0 2px 4px rgba(0,0,0,0.1); }

@media (max-width: 819px) { /* mobile adjustments purely visual */
		.nav-search { backdrop-filter: blur(2px); }
	.nav-auth { justify-content:center; }
}

