/**
 * Vlastný produktový archív — benab-style (px-shop-theme) dizajn.
 *
 * Samostatné CSS bez build kroku. Vizuálne tokeny sú v :root — re-skin
 * archívu = úprava premenných v child téme (geometria a interakcie 1:1
 * podľa benab).
 */

/* .pc-scope je koreňová trieda dizajnového systému — nesie ju archív aj
   konfigurátor nosičov, takže obe plochy zdieľajú tokeny, tlačidlá a karty.
   .px-archive už znamená len "layout archívu". */
.pc-scope {
	/* Tokeny (RGB triplety kvôli alpha) — podľa Elementor kitu webu:
	   primary/accent #00BF63, text #042817 */
	--pc-paper: 255 255 255;
	--pc-card: 255 255 255;
	--pc-ink: 4 40 23;
	--pc-accent: 0 122 64;       /* predvolená zelená #007A40 — min. 4.5:1 s bielou (WCAG 1.4.3) */
	--pc-accent-deep: 0 98 58;
	--pc-soft: 244 246 247;
	--pc-line: 224 232 228;
	--pc-muted: 84 104 95;
	--pc-secondary: 220 38 38;   /* akciová cena */
	--pc-grid-gap: 0.75rem;
	--pc-radius-control: 9999px;

	color: rgb(var(--pc-ink));
}

@media (min-width: 640px) {
	.pc-scope {
		--pc-grid-gap: 15px;
	}
}

/* Kontajner */
.px-archive.pc-container {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: var(--pc-container);
	padding: 1.5rem 1rem 3rem;
}

@media (min-width: 640px) {
	.px-archive.pc-container { padding-left: 1.5rem; padding-right: 1.5rem; }
}

@media (min-width: 1024px) {
	.px-archive.pc-container { padding-left: 2rem; padding-right: 2rem; }
}

.pc-scope *,
.pc-scope *::before,
.pc-scope *::after {
	box-sizing: border-box;
}

.pc-icon {
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
}

/* Hlavičku archívu (omrvinky + H1 + popis) rieši jednotný page header
   z témy — template-parts/page-header.php + base.css. */

/* Signature bodka za nadpisom */
.pc-title-dot::after {
	content: '.';
	color: rgb(var(--pc-accent));
}

/* =========================================================================
   TLAČIDLÁ
   ========================================================================= */

.pc-scope .pc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	padding: 0.5rem 1.25rem;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4;
	border-radius: var(--pc-radius-control);
	border: 1px solid transparent;
	cursor: pointer;
	text-decoration: none;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.pc-scope .pc-btn--primary {
	background: rgb(var(--pc-accent));
	color: #fff;
}

.pc-scope .pc-btn--primary:hover {
	background: rgb(var(--pc-accent-deep));
	color: #fff;
}

.pc-scope .pc-btn--outline {
	background: transparent;
	border-color: rgb(var(--pc-ink) / 0.2);
	color: rgb(var(--pc-ink));
}

.pc-scope .pc-btn--outline:hover {
	border-color: rgb(var(--pc-accent-deep));
	color: rgb(var(--pc-accent-deep));
}

/* Loading spinner na add-to-cart */
.pc-scope .pc-btn.loading {
	color: transparent !important;
	pointer-events: none;
	position: relative;
}

.pc-scope .pc-btn.loading::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1rem;
	height: 1rem;
	margin: -0.5rem 0 0 -0.5rem;
	border-radius: var(--pc-radius-pill);
	border: 2px solid rgba(255, 255, 255, 0.5);
	border-top-color: #fff;
	animation: px-archive-spin 0.6s linear infinite;
}

@keyframes px-archive-spin {
	to { transform: rotate(360deg); }
}

/* =========================================================================
   TOOLBAR
   ========================================================================= */

.pc-shop__toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 1.5rem;
}

/* Filter toggle — biele pozadie (odlíšenie od svetlozeleného pozadia stránky) */
.pc-filters-toggle.pc-btn--outline {
	background: #fff;
}

.pc-filters-toggle.pc-btn--outline:hover {
	background: #fff;
}

/* Čakanie na CSS panela (archive.js, `filtersButtonsBusy()`). Klik musí byť
   vidieť aj vtedy, keď sa panel otvorí až o chvíľu. Rovnaká odozva ako
   pri tlačidlách hlavičky. */
[data-pc-filters-open].is-loading {
	opacity: 0.6;
	cursor: progress;
}

.pc-filter-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.25rem;
	height: 1.25rem;
	padding: 0 0.25rem;
	border-radius: var(--pc-radius-pill);
	background: rgb(var(--pc-accent));
	color: #fff;
	font-size: 0.75rem;
	font-weight: 600;
}

.pc-filter-count.is-hidden {
	display: none;
}

.pc-shop__toolbar-meta {
	display: flex;
	flex: 1;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	min-width: 0;
}

@media (max-width: 639px) {
	.pc-shop__toolbar-meta {
		flex-basis: 100%;
	}
}

.pc-result-count {
	margin: 0;
	font-size: 0.875rem;
	color: rgb(var(--pc-muted));
}

.pc-shop__toolbar-controls {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
	min-width: 0;
}

.pc-ordering,
.pc-per-page {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	min-width: 0;
	margin: 0;
}

/* Natívny WC formulár triedenia má z woocommerce.css spodný okraj — vedľa
   selectu počtu by sedel o 16 px vyššie. */
.pc-shop__toolbar .woocommerce-ordering {
	margin: 0;
}

.pc-per-page__label {
	font-size: 0.875rem;
	color: rgb(var(--pc-muted));
	white-space: nowrap;
}

/* Mobil: počet a triedenie na jednom riadku — select triedenia sa zmestí
   tak, že sa vzdá vlastnej šírky (má ju z najdlhšej položky). */
@media (max-width: 639px) {
	.pc-shop__toolbar-controls {
		flex-basis: 100%;
		flex-wrap: nowrap;
	}

	.pc-shop__toolbar-controls .woocommerce-ordering,
	.pc-shop__toolbar-controls .pc-ordering {
		flex: 1;
	}

	.pc-shop__toolbar-controls .woocommerce-ordering select,
	.pc-shop__toolbar-controls .pc-ordering select {
		width: 100%;
	}

	/* Popisok „Na stránku" len pre čítačku — miesto potrebuje text triedenia. */
	.pc-per-page__label {
		position: absolute;
		width: 1px;
		height: 1px;
		margin: -1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		white-space: nowrap;
	}
}

.pc-scope select.orderby {
	max-width: 100%;
	padding: 0.5rem 2rem 0.5rem 0.75rem;
	font-size: 0.875rem;
	color: rgb(var(--pc-ink));
	background: rgb(var(--pc-card));
	border: 1px solid rgb(var(--pc-line));
	border-radius: var(--pc-radius-control);
	cursor: pointer;
}

.pc-scope select.orderby:focus {
	outline: 2px solid rgb(var(--pc-accent-deep));
	outline-offset: 1px;
	border-color: rgb(var(--pc-accent-deep));
}

/* =========================================================================
   AKTÍVNE FILTRE (CHIPS)
   ========================================================================= */

.pc-active-filters {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 1.5rem;
}

.pc-active-filters.is-empty {
	display: none;
}

.pc-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	padding: 0.25rem 0.5rem 0.25rem 0.75rem;
	border-radius: var(--pc-radius-pill);
	background: rgb(var(--pc-ink) / 0.05);
	color: rgb(var(--pc-ink));
	font-size: 0.75rem;
	font-weight: 500;
	text-decoration: none;
	transition: background-color 0.15s ease;
}

.pc-chip:hover {
	background: rgb(var(--pc-ink) / 0.1);
	color: rgb(var(--pc-ink));
}

.pc-chip__x {
	width: 0.75rem;
	height: 0.75rem;
}

.pc-clear-filters {
	margin-left: 0.25rem;
	font-size: 0.75rem;
	font-weight: 500;
	color: rgb(var(--pc-accent-deep));
	text-decoration: none;
}

.pc-clear-filters:hover {
	text-decoration: underline;
	color: rgb(var(--pc-accent-deep));
}

/* =========================================================================
   GRID + PRODUKTOVÁ KARTA
   ========================================================================= */

.pc-grid {
	display: grid;
	gap: var(--pc-grid-gap);
}

/* Počet stĺpcov dáva PHP (inc/catalog.php → tokeny --pc-cols-* na :root),
   lebo z tých istých čísel počíta počet produktov na stránku. Hodnoty za
   čiarkou sú len poistka bez inline štýlu. Stĺpce mení filter
   `pxt_catalog_columns`, nie CSS. */
.pc-products {
	--pc-cols: var(--pc-cols-base, 2);
	grid-template-columns: repeat(var(--pc-cols), minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 768px) {
	.pc-products { --pc-cols: var(--pc-cols-md, 3); }
}

@media (min-width: 1024px) {
	.pc-products { --pc-cols: var(--pc-cols-lg, 4); }
}

@media (min-width: 1280px) {
	.pc-products { --pc-cols: var(--pc-cols-xl, 5); }
}

.pc-products__item {
	margin: 0;
}

.pc-product-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	background: rgb(var(--pc-card));
	border: 1px solid rgb(var(--pc-line));
	border-radius: var(--pc-radius);
	overflow: hidden;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.pc-product-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgb(var(--pc-ink) / 0.08);
}

.pc-product-badges--overlay {
	position: absolute;
	top: 0.75rem;
	left: 0.75rem;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.pc-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.2rem 0.6rem;
	border-radius: var(--pc-radius-pill);
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	/* Pilulka s dátumom („Akcia do 24. 8.") sa nesmie zlomiť do dvoch riadkov —
	   nad obrázkom by z nej bol blok, nie odznak. */
	white-space: nowrap;
}

/* Doplnok v odznaku (platnosť akcie) — tenší, aby oko najprv prečítalo dôvod
   („Akcia") a až potom termín. Hierarchiu drží len váha písma: biela na
   malinovej má 4,7:1, čo je tesne nad AA, a `opacity` pod 1 by ju stiahla
   pod hranicu (0,85 → 3,7:1). Číslice tabuľkové, nech sa dátumy v mriežke
   kariet nehádžu o pol znaku. */
.pc-badge__note {
	font-weight: 500;
	font-variant-numeric: tabular-nums;
}

.pc-badge--sale {
	background: rgb(var(--pc-secondary));
	color: #fff;
}

.pc-badge--stock {
	background: rgb(var(--pc-ink) / 0.65);
	color: #fff;
}

.pc-product-card__media {
	position: relative;
	display: block;
	height: var(--pc-card-media-h, 160px);
	background: #fff;
	padding: 0.5rem;
}

/* .px-archive prefix — prebije prípadné theme/Woo img pravidlá (object-fit).
   contain = celý obrázok viditeľný, neorezaný, s letterboxom v štvorci. */
.pc-scope .pc-product-card__media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	display: block;
}

/* Overlay prvky karty (sezóna, vlastnosti…) štýluje child téma —
   hook `pxt_product_card_media_after`. */

.pc-product-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 0.4rem;
	padding: 0.875rem;
}

/* .px-archive prefix — vyššia špecificita ako Elementor kit (.elementor-kit-N h2),
   ktorý inak vnúti nadpisu ~30px display font */
.pc-scope .pc-product-card__title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
	/* Ustáli výšku kariet naprieč gridom — 2 riadky názvu */
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.7em; /* = 2 × line-height, inak sa jednoriadkový názov o štvrť riadku líši od dvojriadkového a ceny v mriežke nesedia */
}

.pc-scope .pc-product-card__title a {
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	font-family: inherit;
	color: rgb(var(--pc-ink));
	text-decoration: none;
}

.pc-scope .pc-product-card__title a:hover {
	color: rgb(var(--pc-accent-deep));
}

.pc-product-card__attrs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
}

.pc-attr-chip {
	display: inline-flex;
	align-items: center;
	padding: 0.1rem 0.45rem;
	border-radius: var(--pc-radius-xs);
	background: rgb(var(--pc-soft));
	color: rgb(var(--pc-muted));
	font-size: 0.6875rem;
	font-weight: 500;
}

.pc-product-card__price {
	font-size: 1rem;
	font-weight: 700;
	color: rgb(var(--pc-ink));
	margin-top: 0.15rem;
}

.pc-product-card__price ins {
	text-decoration: none;
	color: rgb(var(--pc-secondary));
}

.pc-product-card__price del {
	color: rgb(var(--pc-muted));
	font-weight: 400;
	font-size: 0.875rem;
	margin-right: 0.35rem;
}

/* Jednotková cena pod cenou (px-shop-core). Poznámka k cene, nie suma —
   drobné písmo v tlmenej farbe; suma v nej ostáva bežnou váhou, aby
   nesúperila s predajnou cenou nad ňou. */
.pc-product-card__unit {
	margin-top: 0.1rem;
	font-size: 0.8125rem;
	font-weight: 400;
	line-height: 1.4;
	color: rgb(var(--pc-muted));
}

.pc-product-card__unit .woocommerce-Price-amount {
	font-weight: 400;
}

/* Placeholder namiesto ceny pre neprihlásených (PX_Guest_Prices). Zámerne
   NIE rozmazaná cena — tá by ostala čitateľná v zdroji stránky. Sedí na
   mieste ceny naprieč povrchmi: karta, detail, live search. */
.px-price-hidden {
	display: inline-block;
	padding: 0.15rem 0.6rem;
	border: 1px dashed rgb(var(--pc-line));
	border-radius: var(--pc-radius-control);
	background: rgb(var(--pc-soft));
	color: rgb(var(--pc-accent-deep));
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.5;
	text-decoration: none;
	white-space: nowrap;
}

a.px-price-hidden:hover,
a.px-price-hidden:focus {
	background: rgb(var(--pc-accent));
	border-color: rgb(var(--pc-accent));
	color: #fff;
}

.pc-product-card__cta {
	margin-top: auto;
}

.pc-product-card__cta .pc-btn {
	width: 100%;
}

/* Mriežka má pod 768 px dva stĺpce, takže na úzkych telefónoch je karta ~150 px
   a „Pridať do košíka" sa pri základnom odsadení 1.25rem zalomilo na dva
   riadky (57 px vysoké tlačidlo). Text je vycentrovaný na plnú šírku karty,
   vodorovné odsadenie teda nemá čo ukázať — zmenšíme ho a písmo o stupeň.
   Pri 360 px vychádza text 104 px do 113 px voľných. */
@media (max-width: 480px) {
	.pc-scope .pc-product-card__cta .pc-btn {
		padding: 0.5rem 0.25rem;
		font-size: 0.8125rem;
	}
}

.pc-no-products {
	padding: 3rem 1rem;
	text-align: center;
	color: rgb(var(--pc-muted));
}

.pc-no-products .pc-btn {
	margin-top: 0.75rem;
}

/* AJAX loading stav */
.pc-shop--loading [data-pc-shop-results] {
	opacity: 0.45;
	pointer-events: none;
	transition: opacity 0.15s ease;
}

/* =========================================================================
   DLAŽDICE KATEGÓRIÍ — nad výpisom produktov (/eshop, podkategórie)
   Kompaktný riadok: ikona vľavo, názov vpravo. Vlastné triedy .pc-cat-tiles__*
   (úvodka má obrázkové .pc-cat-tile__* vo front.css — nemiešať).
   ========================================================================= */

.pc-cat-tiles {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.375rem;
	margin: 0 0 1.25rem;
	padding: 0;
	list-style: none;
}

/* auto-fill: pri troch deťoch sa dlaždice nerozťahujú na tretiny kontajnera,
   pri desiatich sa samy zalomia. max() v minmax stropuje počet stĺpcov na 6
   (šírka stĺpca nikdy neklesne pod šestinu kontajnera mínus 5 gapov). */
@media (min-width: 640px) {
	.pc-cat-tiles {
		grid-template-columns: repeat(auto-fill, minmax(max(11rem, calc((100% - 2.5rem) / 6)), 1fr));
		gap: 0.5rem;
	}
}

.pc-cat-tiles__link {
	display: flex;
	align-items: center;
	gap: 0.375rem;
	height: 100%;
	padding: 0.25rem;
	border: 1px solid rgb(var(--pc-line));
	border-radius: var(--pc-radius-sm);
	background: rgb(var(--pc-card));
	text-decoration: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pc-cat-tiles__link:hover {
	border-color: rgb(var(--pc-accent));
	box-shadow: 0 10px 24px -14px rgb(var(--pc-ink) / 0.28);
}

.pc-cat-tiles__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: var(--pc-radius-sm);
	background: rgb(var(--pc-soft));
	color: rgb(var(--pc-accent-deep));
}

.pc-cat-tiles__icon svg {
	width: 1.125rem;
	height: 1.125rem;
}

/* Obrázok kategórie namiesto ikony. Väčší štvorček než ikonový — fotka
   produktu je detailnejšia kresba a pod ~2,5rem sa rozpadne na škvrnu.
   Bez podkladu: obrázky sú na bielom a šedý rám za nimi vytvára lem. */
.pc-cat-tiles__photo {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	overflow: hidden;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: var(--pc-radius-sm);
}

/* cover, nie contain: v tejto veľkosti je celý produkt aj tak nečitateľný,
   ale vyplnený štvorček drží riadok pokojný — fotky majú rôzne pomery strán
   (550×367 aj 550×550) a contain by každý riadok posunul inak. */
.pc-cat-tiles__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.pc-cat-tiles__name {
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.25;
	color: rgb(var(--pc-ink));
}

@media (min-width: 640px) {
	.pc-cat-tiles__link {
		gap: 0.5rem;
		padding: 0.5rem;
	}

	.pc-cat-tiles__icon {
		width: 2rem;
		height: 2rem;
	}

	.pc-cat-tiles__icon svg {
		width: 1.25rem;
		height: 1.25rem;
	}

	.pc-cat-tiles__photo {
		width: 2.75rem;
		height: 2.75rem;
	}

	.pc-cat-tiles__name {
		font-size: 0.8125rem;
	}
}

/* =========================================================================
   PAGINÁCIA
   ========================================================================= */

.pc-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.375rem;
	margin-top: 2.5rem;
}

.pc-pagination__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	height: 2.5rem;
	padding: 0 0.75rem;
	border: 1px solid rgb(var(--pc-line));
	border-radius: var(--pc-radius-control);
	background: rgb(var(--pc-card));
	color: rgb(var(--pc-ink));
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}

.pc-pagination__link:hover {
	border-color: rgb(var(--pc-ink));
	background: rgb(var(--pc-ink) / 0.05);
	color: rgb(var(--pc-ink));
}

.pc-pagination__link.is-current {
	background: rgb(var(--pc-ink));
	border-color: rgb(var(--pc-ink));
	color: #fff;
}

.pc-pagination__dots {
	color: rgb(var(--pc-muted));
	padding: 0 0.25rem;
}

/* =========================================================================
   FILTER DRAWER
   ========================================================================= */

.pc-filters {
	position: fixed;
	inset: 0;
	z-index: 999;
	visibility: hidden;
	opacity: 0;
	/* visibility sa mení skokom: pri zatváraní s oneskorením (nech dobehne
	   fade-out), pri otváraní okamžite — inak by focus() na obsah drawera
	   zlyhával, kým transition nezačne. */
	transition: visibility 0s 0.2s, opacity 0.2s;

	/* Drawer je position: fixed a v DOM strome môže stáť mimo .pc-scope —
	   tokeny preto dedí z :root (defaulty na začiatku súboru). Vlastnú
	   kópiu tu zámerne nedržíme: child téma prepisuje tokeny na :root
	   a drawer sa musí preladiť s ňou. */
	--pc-radius-control: 9999px;
}

.pc-filters.is-open {
	visibility: visible;
	opacity: 1;
	transition: visibility 0s, opacity 0.2s;
}

.pc-filters__backdrop {
	position: absolute;
	inset: 0;
	background: rgb(var(--pc-ink) / 0.4);
}

.pc-filters__panel {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	max-width: 24rem;
	background: rgb(var(--pc-card));
	box-shadow: 0 25px 50px -12px rgb(var(--pc-ink) / 0.2);
	transform: translateX(-100%);
	transition: transform 0.2s ease;
	display: flex;
	flex-direction: column;
}

.pc-filters.is-open .pc-filters__panel {
	transform: translateX(0);
}

body.admin-bar .pc-filters__panel {
	top: 32px;
	height: calc(100% - 32px);
}

body.pc-no-scroll {
	overflow: hidden;
}

.pc-filters__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1rem;
	border-bottom: 1px solid rgb(var(--pc-line));
}

.pc-filters__title {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 600;
	color: rgb(var(--pc-ink));
}

.pc-filters__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.5rem;
	border: 0;
	border-radius: var(--pc-radius-control);
	background: transparent;
	color: rgb(var(--pc-ink));
	cursor: pointer;
	transition: background-color 0.15s ease;
}

.pc-filters__close:hover {
	background: rgb(var(--pc-ink) / 0.05);
}

.pc-filters__close .pc-icon {
	width: 1.25rem;
	height: 1.25rem;
}

.pc-filters__body {
	flex: 1;
	overflow-y: auto;
	padding: 1rem;
	font-size: 0.875rem;
	color: rgb(var(--pc-ink));
}

/* Zástupný text, kým sa telo panela dotiahne (prvé otvorenie).
   Panel má pevnú šírku, takže výmena obsahu nič neposúva — CLS = 0. */
.pc-filters__placeholder {
	margin: 0;
	padding: 0.75rem 0;
	color: rgb(var(--pc-muted));
}

/* „Skúsiť znova" v hláške — odkazová podoba tlačidla, bez vlastných farieb
   mimo tokenov. */
.pc-filters__retry {
	padding: 0;
	font: inherit;
	color: rgb(var(--pc-accent-deep));
	text-decoration: underline;
	background: none;
	border: 0;
	cursor: pointer;
}

.pc-filters__retry:hover,
.pc-filters__retry:focus-visible {
	color: rgb(var(--pc-ink));
}
