/**
 * Styly ke knihovně patternů.
 *
 * Pravidlo: žádné natvrdo psané barvy a rozestupy. Všechno jde přes
 * proměnné z theme.json, aby se vzhled nerozjel, až se paleta upraví.
 */

/* ── Ikony v programu (nález M3) ──────────────────────────────────────
   Ikony vložené jako obrázkový blok neměly zadanou velikost a vykreslily
   se v přirozené velikosti SVG. Tohle jim dá jednotný rozměr bez ohledu
   na to, co je uvnitř souboru — klient nemusí nic nastavovat.          */
.spd-ikona,
.wp-block-image.spd-ikona {
	margin: 0 0 var(--wp--preset--spacing--3);
}

.spd-ikona img {
	width: 4rem;
	height: 4rem;
	object-fit: contain;
	object-position: left center;
	display: block;
}

/* Dekorativní ikona nemá reagovat na kliknutí. */
.spd-ikona img {
	pointer-events: none;
}

/* ── Filtrovací lišta článků (nález M5) ─────────────────────────────── */
.spd-filtr {
	margin-block: var(--wp--preset--spacing--6);
}

.spd-filtr__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--2);
	justify-content: center;
}

.spd-filtr__btn {
	display: inline-block;
	padding: 0.5rem 1.15rem;
	border-radius: 999px;
	border: 1px solid var(--wp--preset--color--light-gray);
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark);
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.4;
	text-decoration: none;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
	/* Dotykový cíl podle přístupnosti — min. 44 px na výšku. */
	min-height: 44px;
	display: inline-flex;
	align-items: center;
}

.spd-filtr__btn:hover,
.spd-filtr__btn:focus-visible {
	border-color: var(--wp--preset--color--primary-blue);
	color: var(--wp--preset--color--primary-blue);
}

.spd-filtr__btn--aktivni {
	background: var(--wp--preset--color--primary-blue);
	border-color: var(--wp--preset--color--primary-blue);
	color: var(--wp--preset--color--white);
	font-weight: 600;
}

.spd-filtr__btn--aktivni:hover,
.spd-filtr__btn--aktivni:focus-visible {
	color: var(--wp--preset--color--white);
}

.spd-filtr__btn:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary-blue);
	outline-offset: 2px;
}

/* ── Kandidáti: skrytí přebytku bez JavaScriptu (nález V3) ─────────────
   Téma vykresluje overlay karty svým blokem. Nově jsou v HTML všechny,
   přebytek se jen schová — robot vidí celý tým, návštěvník ho odkryje.  */
.kandidat-overlay--skryty {
	display: none;
}

.kandidati-grid--rozbaleno .kandidat-overlay--skryty {
	display: block;
}

/* Bez JavaScriptu se skrytí neuplatní — obsah je dostupný vždy. */
.no-js .kandidat-overlay--skryty {
	display: block;
}

.no-js .team-load-more {
	display: none;
}

/* ── Štítky článku bez čárky (nález M6) ─────────────────────────────── */
.wp-block-post-terms__separator {
	/* Oddělovač je prázdný, rozestup dělá mezera. */
	display: inline-block;
	width: 0.75em;
}

.wp-block-post-terms a + .wp-block-post-terms__separator {
	width: 0.75em;
}

/* ── FAQ ────────────────────────────────────────────────────────────── */
.spd-faq summary {
	cursor: pointer;
	font-weight: 600;
	font-size: var(--wp--preset--font-size--lg);
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--wp--preset--spacing--3);
	min-height: 44px;
}

.spd-faq summary::-webkit-details-marker {
	display: none;
}

.spd-faq summary::after {
	content: "+";
	font-size: 1.4em;
	line-height: 1;
	color: var(--wp--preset--color--primary-blue);
	flex: none;
}

.spd-faq[open] summary::after {
	content: "−";
}

.spd-faq summary:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary-blue);
	outline-offset: 2px;
}

/* ── Kontrast (nález N2) ────────────────────────────────────────────── */
/* Šedá #6B7280 na světle šedém pozadí dává 4,43 : 1, norma žádá 4,5.
   Na světlém pozadí proto sáhneme po tmavším odstínu.                  */
.has-light-gray-background-color .has-mid-gray-color {
	color: #5C636F;
}

@media (prefers-reduced-motion: reduce) {
	.spd-filtr__btn,
	.spd-kandidati__vic {
		transition: none;
	}
}

/* ── Odlišení archivu od aktuální kampaně (nález V1) ─────────────────── */
.spd-archiv-pruh {
	background: var(--wp--preset--color--light-gray);
	border-left: 3px solid var(--wp--preset--color--primary-red);
	border-radius: 3px;
	padding: var(--wp--preset--spacing--4) var(--wp--preset--spacing--5);
	margin-bottom: var(--wp--preset--spacing--6);
}

.spd-archiv-pruh p {
	margin: 0;
	font-size: var(--wp--preset--font-size--sm);
	color: #5C636F;
}

.spd-archiv-znacka {
	display: inline-block;
	margin-inline-start: 0.5em;
	padding: 0.1em 0.5em;
	border-radius: 2px;
	background: var(--wp--preset--color--light-gray);
	color: #5C636F;
	font-size: 0.75em;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

/* ── Viditelné zástupné bloky pro chybějící údaje ────────────────────── */
.spd-doplnit {
	display: inline-block;
	background: #FBF0DE;
	border-left: 3px solid #9A5B00;
	border-radius: 2px;
	padding: 0.5em 0.85em;
	color: #6B4400;
	font-size: var(--wp--preset--font-size--sm);
}

/* ── Karta článku bez náhledového obrázku ────────────────────────────
   40 z 55 článků náhled nemá (stejně jako na produkci). Než je někdo
   doplní, ať karta nevypadá rozbitě.                                   */
.spd-nahled-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	border-radius: 8px;
	background: linear-gradient(135deg, #eef2f7 0%, #e3e9f1 100%);
}

.spd-nahled-placeholder img {
	width: 48px;
	height: 48px;
	opacity: 0.32;
}
