.takyf-attribute-filters {
	margin: 0 0 2rem;
	padding: 1.25rem;
	border: 1px solid #e7dcc8;
	border-radius: 24px;
	background:
		radial-gradient(circle at top left, rgba(214, 184, 135, 0.18), transparent 28%),
		linear-gradient(135deg, #fffdfa 0%, #f7f1e7 100%);
	box-shadow: 0 18px 40px rgba(81, 61, 28, 0.08);
}

.takyf-attribute-group + .takyf-attribute-group {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(120, 95, 54, 0.12);
}

.takyf-attribute-group__title {
	margin: 0 0 0.75rem;
	color: #3f2d12;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
}

.takyf-attribute-group__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.takyf-filter-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0.65rem 1rem;
	border: 1px solid #ccb188;
	border-radius: 999px;
	background: #ffffff;
	color: #5c421b;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition:
		transform 0.18s ease,
		box-shadow 0.18s ease,
		background-color 0.18s ease,
		color 0.18s ease,
		border-color 0.18s ease;
}

.takyf-filter-button:hover,
.takyf-filter-button:focus-visible {
	transform: translateY(-1px);
	border-color: #9a743d;
	background: #fff4e0;
	color: #3f2d12;
	box-shadow: 0 10px 22px rgba(104, 70, 20, 0.14);
	outline: none;
}

.takyf-filter-button.is-active {
	border-color: #704b14;
	background: linear-gradient(135deg, #8c621f 0%, #5f3f0f 100%);
	color: #ffffff;
	box-shadow: 0 12px 28px rgba(95, 63, 15, 0.24);
}

.takyf-filter-button--reset {
	border-style: dashed;
}

.takyf-filter-button--reset.is-active {
	border-style: solid;
}

.takyf-filter-button.is-loading {
	opacity: 0.72;
	pointer-events: none;
}

@media (max-width: 767px) {
	.takyf-attribute-filters {
		padding: 1rem;
		border-radius: 18px;
	}

	.takyf-filter-button {
		min-height: 40px;
		padding: 0.6rem 0.9rem;
		font-size: 0.9rem;
	}
}
