/* FB.pl Katalog: the cards come from the theme (theme-v2.css); here only the filters, the path and the paging. */
.fbplk {
	--fbplk-line: var(--fbp-v2-line, #E9EAF0);
	--fbplk-copy: var(--fbp-v2-copy, #666D7A);
	--fbplk-ink: var(--fbp-v2-primary-ink, #A9341F);
	--fbplk-noir: var(--fbp-v2-noir, #141824);
	--fbplk-hover: rgba(226, 84, 58, 0.42);
	box-sizing: border-box;
	display: grid;
	gap: 3rem;
	margin: 2rem 0;
	min-width: 0;
}

.fbplk .fbp-v2-section__head {
	margin-bottom: 1.25rem;
}

.fbplk-head {
	display: grid;
	gap: 0.25rem;
}

.fbplk-head .fbp-v2-section__head {
	margin-bottom: 1rem;
}

.fbplk-crumbs {
	align-items: center;
	color: var(--fbplk-copy);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.85rem;
	gap: 0.4rem;
	margin-bottom: 0.75rem;
}

.fbplk-crumbs a {
	color: var(--fbplk-ink);
	text-decoration: none;
}

.fbplk-crumbs a:hover {
	text-decoration: underline;
}

.fbplk-count {
	color: var(--fbplk-copy);
	margin: 0.6rem 0 0;
}

.fbplk-filters {
	display: grid;
	gap: 0.75rem;
}

.fbplk-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.fbplk-chip {
	align-items: center;
	background: #ffffff;
	border: 1px solid var(--fbplk-line);
	border-radius: 999px;
	color: var(--fbplk-noir);
	display: inline-flex;
	font-size: 0.85rem;
	gap: 0.45rem;
	line-height: 1.2;
	padding: 0.5rem 0.95rem;
	text-decoration: none;
	transition: border-color 0.2s ease;
}

.fbplk-chip span {
	color: var(--fbplk-copy);
	font-size: 0.75rem;
}

.fbplk-chip:hover {
	border-color: var(--fbplk-hover);
}

.fbplk-chip[aria-current] {
	background: var(--fbplk-noir);
	border-color: var(--fbplk-noir);
	color: #ffffff;
}

.fbplk-chip[aria-current] span {
	color: rgba(255, 255, 255, 0.72);
}

.fbplk .fbp-v2-directory__grid {
	margin-top: 0;
}

/* The theme's grids have fixed column counts for wide sections; in a page column the cards would get too narrow. */
.fbplk .fbp-v2-category-grid {
	grid-template-columns: repeat(auto-fill, minmax(max(14rem, calc((100% - 3rem) / 4)), 1fr));
}

.fbplk .fbp-v2-directory__grid {
	grid-template-columns: repeat(auto-fill, minmax(max(16rem, calc((100% - 2rem) / 3)), 1fr));
}

/* Names of categories are long ("Piekarnie, cukiernie i lody"): wrap instead of the theme's ellipsis. */
.fbplk .fbp-v2-category-card__label strong {
	overflow: visible;
	text-overflow: clip;
	white-space: normal;
}

.fbplk .fbp-v2-directory-card__top > div {
	display: grid;
	gap: 0.15rem;
	min-width: 0;
}

.fbplk .fbp-v2-directory-card__top strong {
	overflow-wrap: break-word;
}

.fbplk .fbp-v2-directory-card__top span:not(.fbp-v2-directory-card__badge) {
	color: var(--fbplk-copy);
	font-size: 0.8rem;
}

.fbplk .fbp-v2-directory-card__badge {
	flex: none;
}

.fbplk-pages {
	align-items: center;
	color: var(--fbplk-copy);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.9rem;
	gap: 1rem;
	justify-content: center;
}

.fbplk-pages a {
	background: #ffffff;
	border: 1px solid var(--fbplk-line);
	border-radius: 11px;
	color: var(--fbplk-noir);
	padding: 0.6rem 1.05rem;
	text-decoration: none;
	transition: border-color 0.2s ease;
}

.fbplk-pages a:hover {
	border-color: var(--fbplk-hover);
}

.fbplk-empty,
.fbplk-off {
	color: var(--fbplk-copy);
}

@media (max-width: 640px) {
	.fbplk {
		gap: 2rem;
	}

	.fbplk .fbp-v2-section__head {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.75rem;
	}
}
