.cwpw-products ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 1.5rem;
}

.cwpw-widget .cwpw-filter-form {
	display: flex;
	gap: .5rem;
	align-items: center;
	margin-bottom: 1rem;
}

.cwpw-widget .cwpw-filter-form select,
.cwpw-widget .cwpw-filter-form input[type="text"] {
	padding: .4rem .6rem;
}

.cwpw-widget .cwpw-filter-submit {
	padding: .45rem .8rem;
	cursor: pointer;
}

.cwpw-results.cwpw-loading {
	opacity: 0.6;
	position: relative;
}

.cwpw-spinner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border: 4px solid #f3f3f3;
	border-top: 4px solid #333;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% { transform: translate(-50%, -50%) rotate(0deg); }
	100% { transform: translate(-50%, -50%) rotate(360deg); }
}

.cwpw-pagination {
	text-align: center;
	margin-top: 1.5rem;
}

.cwpw-pagination a {
	margin: 0 .25rem;
	padding: .3rem .6rem;
	border: 1px solid #ddd;
	text-decoration: none;
}

.cwpw-pagination a:hover {
	background: #f0f0f0;
}

[class*="wd-grid-f"] {
    justify-content: space-between;
}