.thinkers-category-cards {
	--thinkers-card-min-height: 52px;
	--thinkers-card-padding-y: 10px;
	--thinkers-card-padding-x: 14px;
	--thinkers-card-gap: 12px;
	--thinkers-card-radius: 10px;
	--thinkers-card-icon-size: 30px;
	--thinkers-card-title-size: 15px;
	--thinkers-card-count-size: 12px;

	display: grid;
	gap: 9px;
	width: 100%;
}

.thinkers-category-card {
	--card-start: #1748d2;
	--card-end: var(--card-start);

	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--thinkers-card-gap);
	min-height: var(--thinkers-card-min-height);
	padding: var(--thinkers-card-padding-y) var(--thinkers-card-padding-x);
	border-radius: var(--thinkers-card-radius);
	background: linear-gradient(100deg, var(--card-start), var(--card-end));
	color: #fff;
	text-decoration: none;
	overflow: hidden;
	transition: transform 180ms ease, filter 180ms ease, box-shadow 180ms ease;
}

.thinkers-category-card:hover {
	color: #fff;
	text-decoration: none;
	transform: translateY(-1px);
	filter: brightness(1.03);
	box-shadow: 0 8px 18px rgba(17, 34, 82, 0.12);
}

.thinkers-category-card:focus-visible {
	outline: 3px solid rgba(31, 88, 232, 0.24);
	outline-offset: 3px;
}

.thinkers-category-card__icon {
	display: grid;
	place-items: center;
	width: var(--thinkers-card-icon-size);
	height: var(--thinkers-card-icon-size);
	background: transparent;
	overflow: hidden;
	flex: 0 0 var(--thinkers-card-icon-size);
}

.thinkers-category-card__icon-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.thinkers-category-card__fallback {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
}

.thinkers-category-card__name {
	min-width: 0;
	color: inherit;
	font-size: var(--thinkers-card-title-size);
	font-weight: 500;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.thinkers-category-card__count {
	display: grid;
	place-items: center;
	min-width: 24px;
	height: 24px;
	padding: 0 7px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
	font-size: var(--thinkers-card-count-size);
	font-weight: 600;
	line-height: 1;
}

@media (max-width: 767px) {
	.thinkers-category-cards {
		--thinkers-card-min-height: 48px;
		--thinkers-card-padding-y: 9px;
		--thinkers-card-padding-x: 12px;
		--thinkers-card-icon-size: 28px;
		--thinkers-card-title-size: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.thinkers-category-card {
		transition: none;
	}
}
