/* PY Class Filter — layout: row 1 full-width search, row 2 four dropdowns,
   row 3 reset link. Kept minimal so the theme's typography wins. */

.pycf-filter {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 24px;
}

.pycf-row-search .pycf-search {
	width: 100%;
	box-sizing: border-box;
	padding: 10px 14px;
	border: 1px solid #d0d0d0;
	border-radius: 6px;
	font-size: 16px;
}

.pycf-row-dropdowns {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}

.pycf-row-dropdowns .pycf-select {
	width: 100%;
	box-sizing: border-box;
	padding: 10px 12px;
	border: 1px solid #d0d0d0;
	border-radius: 6px;
	font-size: 15px;
	background-color: #fff;
}

@media (max-width: 880px) {
	.pycf-row-dropdowns {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.pycf-row-dropdowns {
		grid-template-columns: 1fr;
	}
}

.pycf-row-reset {
	text-align: right;
}

.pycf-reset {
	font-size: 14px;
	text-decoration: underline;
	cursor: pointer;
}

/* Loading state while the fresh grid is being fetched. */
.elementor-widget-loop-grid.pycf-loading {
	opacity: 0.45;
	pointer-events: none;
	transition: opacity 0.15s ease;
}
