/**
 * Sticky Header Styles
 *
 * @package shopnex-pro-addons
 */

/* ========================================
   Sticky Header Base Styles
   ======================================== */

.site-header {
	-webkit-transition: background-color 0.3s ease, box-shadow 0.3s ease, padding 0.3s ease;
	-moz-transition: background-color 0.3s ease, box-shadow 0.3s ease, padding 0.3s ease;
	transition: background-color 0.3s ease, box-shadow 0.3s ease, padding 0.3s ease;
}

.site-header.snpa-is-sticky {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	width: 100%;
	-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
	-moz-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

/* Admin bar offset */
.admin-bar .site-header.snpa-is-sticky {
	top: 32px;
}

/* Prevent content jump when header becomes fixed */
body.snpa-sticky-header-active {
	/* Dynamic padding-top is set via inline JS */
}

/* ========================================
   Sticky Header Animation
   ======================================== */

.site-header.snpa-is-sticky {
	-webkit-animation: snpaStickySlideDown 0.35s ease-out;
	-moz-animation: snpaStickySlideDown 0.35s ease-out;
	animation: snpaStickySlideDown 0.35s ease-out;
}

@-webkit-keyframes snpaStickySlideDown {
	from {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@-moz-keyframes snpaStickySlideDown {
	from {
		-moz-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	to {
		-moz-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes snpaStickySlideDown {
	from {
		-webkit-transform: translateY(-100%);
		-moz-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	to {
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		transform: translateY(0);
	}
}

/* ========================================
   Mobile Responsive
   ======================================== */

@media (max-width: 768px) {
	/* Disable sticky on mobile unless explicitly enabled */
	body.snpa-sticky-header-mobile-disabled .site-header.snpa-is-sticky {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: auto !important;
		-webkit-box-shadow: none !important;
		-moz-box-shadow: none !important;
		box-shadow: none !important;
		-webkit-animation: none !important;
		-moz-animation: none !important;
		animation: none !important;
	}

	.admin-bar .site-header.snpa-is-sticky {
		top: 46px;
	}
}

/* ========================================
   Accessibility - Reduced Motion
   ======================================== */

@media (prefers-reduced-motion: reduce) {
	.site-header.snpa-is-sticky {
		-webkit-animation: none;
		-moz-animation: none;
		animation: none;
		-webkit-transition: none;
		-moz-transition: none;
		transition: none;
	}
}
