/* Quiet, non-blocking feedback for slow connections. Native cart and checkout
 * loaders stay in charge of their own updates. */
.gbb-route-progress {
	position:fixed;
	z-index:9998;
	top:0;
	left:0;
	width:100%;
	height:3px;
	opacity:0;
	pointer-events:none;
	transition:opacity .15s ease;
}
.gbb-route-progress.is-visible { opacity:1; }
.gbb-route-progress::before {
	position:absolute;
	top:0;
	left:0;
	width:38%;
	height:100%;
	border-radius:0 999px 999px 0;
	background:#e30613;
	box-shadow:0 0 12px rgba(227,6,19,.4);
	content:"";
	animation:gbb-route-progress 1.4s ease-in-out infinite;
}
@keyframes gbb-route-progress { from { transform:translateX(-110%); } to { transform:translateX(275%); } }
.gbb-feedback-sr-only {
	position:absolute !important;
	width:1px !important;
	height:1px !important;
	padding:0 !important;
	margin:-1px !important;
	overflow:hidden !important;
	clip:rect(0,0,0,0) !important;
	white-space:nowrap !important;
	border:0 !important;
}
.gbb-action-pending { position:relative !important; cursor:progress !important; }
.gbb-action-pending .gbb-action-spinner {
	position:absolute;
	top:50%;
	right:12px;
	width:15px;
	height:15px;
	margin-top:-7.5px;
	border:2px solid currentColor;
	border-right-color:transparent;
	border-radius:50%;
	pointer-events:none;
	animation:gbb-action-spin .75s linear infinite;
}
@keyframes gbb-action-spin { to { transform:rotate(360deg); } }
.gbb-network-notice {
	position:fixed;
	z-index:9999;
	right:clamp(12px,2vw,28px);
	bottom:calc(18px + env(safe-area-inset-bottom,0px));
	width:min(390px,calc(100vw - 24px));
	padding:13px 17px;
	border-radius:14px;
	background:#282725;
	color:#fff;
	box-shadow:0 12px 32px rgba(0,0,0,.2);
	font-size:14px;
	line-height:1.45;
}
.gbb-network-notice[hidden] { display:none !important; }
@media (max-width:767px) {
	.gbb-network-notice { bottom:calc(92px + env(safe-area-inset-bottom,0px)); }
}
.woodmart-archive-shop .gbb-filter-loading .gbb-filter-status { display:flex; align-items:center; gap:9px; }
.woodmart-archive-shop .gbb-filter-loading .gbb-filter-status::before {
	width:14px;
	height:14px;
	flex:0 0 14px;
	border:2px solid #d9d6d0;
	border-top-color:#e30613;
	border-radius:50%;
	content:"";
	animation:gbb-action-spin .75s linear infinite;
}
@media (prefers-reduced-motion:reduce) {
	.gbb-route-progress::before,
	.gbb-action-pending .gbb-action-spinner,
	.woodmart-archive-shop .gbb-filter-loading .gbb-filter-status::before { animation:none; }
}
