/*
 * Kiosk: style uzupełniające theme.json.
 * Kolory wyłącznie z presetów (--wp--preset--color--*), więc każda wariacja kolorów działa bez zmian tutaj.
 */

:root {
	/* Proporcje zdjęć we wszystkich podglądach (Wygląd → Dostosuj → Motyw Kiosk → Zdjęcia). */
	--kiosk-img-ratio: 16 / 9;
	--kiosk-gap: clamp(1.75rem, 1rem + 2.5vw, 3rem);
	--kiosk-ease: cubic-bezier(.2, .7, .2, 1);
	--kiosk-sticky-top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--wp--custom--header--height) + 1.25rem);
}

/* Płynne przejścia między podstronami (View Transitions), bez JS. */
@view-transition { navigation: auto; }
@media (prefers-reduced-motion: reduce) {
	@view-transition { navigation: none; }
}

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
p, li { text-wrap: pretty; }
h1, h2, h3, h4, .wp-block-post-title { text-wrap: balance; }
::selection { background: var(--wp--preset--color--tint); color: var(--wp--preset--color--contrast); }
:where(.wp-site-blocks) :focus-visible { outline: 2px solid var(--wp--preset--color--accent); outline-offset: 3px; border-radius: 2px; }

.kiosk-sr-only {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* ---------- Nagłówek ---------- */
.wp-site-blocks > .kiosk-site-header {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 50;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
/* Rozmycie tła na osobnej warstwie: backdrop-filter na samym nagłówku zamykał
   pełnoekranowe menu mobilne (position: fixed) w pasku o wysokości nagłówka. */
.wp-site-blocks > .kiosk-site-header::before {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: color-mix(in srgb, var(--wp--preset--color--base) 84%, transparent);
	-webkit-backdrop-filter: saturate(1.6) blur(14px);
	backdrop-filter: saturate(1.6) blur(14px);
}
@media (max-width: 600px) {
	.admin-bar .wp-site-blocks > .kiosk-site-header { top: 0; }
}
.kiosk-header__inner { min-height: var(--wp--custom--header--height); gap: 1rem 1.5rem; }
/* Logo: wysokość z ustawień, szerokość wynika z proporcji pliku. */
.kiosk-brand .wp-block-site-logo,
.kiosk-footer__brand .wp-block-site-logo { line-height: 0; margin: 0; }
.kiosk-brand .wp-block-site-logo img {
	height: var(--kiosk-logo-h, 64px) !important; width: auto !important; max-width: min(60vw, 420px); object-fit: contain;
}
.kiosk-footer__brand .wp-block-site-logo img {
	height: calc(var(--kiosk-logo-h, 64px) * 1.1) !important; width: auto !important; max-width: 100%; object-fit: contain;
}
.kiosk-footer__brand .wp-block-site-logo + .wp-block-site-tagline { margin-top: .75rem; }
.kiosk-header__inner { padding-block: .5rem; }
@media (max-width: 781px) {
	.kiosk-brand .wp-block-site-logo img { height: var(--kiosk-logo-h-mobile, 48px) !important; }
}
.kiosk-header .wp-block-navigation-item__content { padding-block: .35rem; position: relative; }
.kiosk-header .wp-block-navigation-item__content::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px;
	background: var(--wp--preset--color--accent);
	transform: scaleX(0); transform-origin: left; transition: transform .25s var(--kiosk-ease);
}
.kiosk-header .wp-block-navigation-item__content:hover::after,
.kiosk-header .current-menu-item > .wp-block-navigation-item__content::after { transform: scaleX(1); }

/* Rozwijane menu na komputerze (np. „Przewodniki”). */
.kiosk-header .wp-block-navigation .wp-block-navigation__submenu-container {
	min-width: 13rem !important; padding: .5rem !important; margin-top: .4rem;
	background: var(--wp--preset--color--surface) !important; color: var(--wp--preset--color--contrast) !important;
	border: 1px solid var(--wp--preset--color--line) !important; border-radius: var(--wp--custom--radius--md);
	box-shadow: var(--wp--custom--shadow--card);
}
/* Niewidzialny „mostek” nad podmenu: wypełnia szczelinę (margin-top), żeby kursor nie wychodził z :hover i menu nie znikało. */
@media (min-width: 782px) {
	.kiosk-header .wp-block-navigation .wp-block-navigation__submenu-container::before {
		content: ""; position: absolute; left: 0; right: 0; top: -1.25rem; height: 1.25rem;
	}
}
.kiosk-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: .55rem .75rem !important; border-radius: var(--wp--custom--radius--sm); white-space: nowrap;
}
.kiosk-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after { content: none; }
.kiosk-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--tint); color: var(--wp--preset--color--accent);
}

/* Menu mobilne: pełny ekran, duże pozycje do kliknięcia, wcięta lista podmenu. */
.kiosk-header .wp-block-navigation__responsive-container.is-menu-open {
	/* „Tło” bywa półprzezroczyste (warianty z gradientem), a menu pełnoekranowe musi być kryjące: tło kładziemy na pełnej „Powierzchni”. */
	background: linear-gradient(var(--wp--preset--color--base), var(--wp--preset--color--base)), var(--wp--preset--color--surface) !important; color: var(--wp--preset--color--contrast) !important;
	padding: calc(var(--wp-admin--admin-bar--height, 0px) + 1rem) max(1.25rem, env(safe-area-inset-right, 0px)) 2rem max(1.25rem, env(safe-area-inset-left, 0px)) !important;
	overflow-y: auto;
}
.kiosk-header .is-menu-open .wp-block-navigation__responsive-close { max-width: 100%; }
.kiosk-header .is-menu-open .wp-block-navigation__responsive-container-close { top: calc(var(--wp-admin--admin-bar--height, 0px) + 1.1rem); right: 1.1rem; }
.kiosk-header .is-menu-open .wp-block-navigation__responsive-container-close svg { width: 30px; height: 30px; }
.kiosk-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: stretch !important; padding-top: 3.5rem !important; gap: 0 !important;
}
.kiosk-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: stretch !important; gap: 0 !important; width: 100%;
}
.kiosk-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
	width: 100%; align-items: stretch !important; border-bottom: 1px solid var(--wp--preset--color--line);
}
.kiosk-header .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	display: block; width: 100%; padding: .95rem 0 !important; font-size: 1.3rem; font-weight: 600; line-height: 1.2;
}
.kiosk-header .is-menu-open .wp-block-navigation-item__content::after { content: none; }
.kiosk-header .is-menu-open .wp-block-navigation__submenu-icon { display: none; }
.kiosk-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	display: flex !important; flex-direction: column; gap: 0 !important; width: 100%;
	padding: 0 0 .9rem 1rem !important; margin: 0 !important; border: 0 !important; box-shadow: none !important;
	border-left: 2px solid var(--wp--preset--color--accent) !important; background: transparent !important;
	border-radius: 0 !important; align-items: flex-start !important;
}
.kiosk-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item {
	width: 100%; align-items: flex-start !important; justify-content: flex-start !important; text-align: left;
}
.kiosk-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: .6rem 0 !important; font-size: 1.05rem; font-weight: 500; color: var(--wp--preset--color--muted);
}
.kiosk-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--accent); }
.kiosk-header .wp-block-navigation__responsive-container-open svg { width: 28px; height: 28px; }
.kiosk-header .wp-block-search__button {
	border-radius: var(--wp--custom--radius--pill); background: transparent; color: var(--wp--preset--color--contrast);
	border: 1px solid var(--wp--preset--color--line);
}
.kiosk-header .wp-block-search__input { border-radius: var(--wp--custom--radius--pill); border-color: var(--wp--preset--color--line); }
/* Rozwinięta wyszukiwarka: odstęp między polem a przyciskiem, ta sama wysokość, fokus jako poświata zamiast obwódki. */
.kiosk-header .wp-block-search__inside-wrapper { gap: .5rem; border: 0; padding: 0; align-items: center; }
.kiosk-header .wp-block-search__input,
.kiosk-header .wp-block-search__button { height: 2.6rem; min-height: 2.6rem; margin: 0; box-sizing: border-box; }
.kiosk-header .wp-block-search__button { width: 2.6rem; padding: 0; display: inline-grid; place-items: center; flex: none; }
.kiosk-header .wp-block-search__input { padding-inline: 1rem; }
.kiosk-header .wp-block-search__input:focus,
.kiosk-header .wp-block-search__input:focus-visible {
	outline: none; border-color: var(--wp--preset--color--accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--wp--preset--color--accent) 18%, transparent);
}

.wp-site-blocks > .kiosk-site-header + * { margin-block-start: 0; }
.kiosk-main { padding-block: clamp(1.5rem, 1rem + 2vw, 2.75rem) clamp(3rem, 2rem + 4vw, 5rem); }

/* Pasek postępu czytania: animacja sterowana przewijaniem, zero JS. */
.kiosk-progress { display: none; }
@supports (animation-timeline: scroll()) {
	.kiosk-progress {
		display: block; position: fixed; z-index: 60; left: 0; right: 0;
		top: var(--wp-admin--admin-bar--height, 0px); height: 3px; margin: 0 !important;
		background: var(--wp--preset--color--accent);
		transform-origin: 0 50%; transform: scaleX(0);
		animation: kiosk-progress linear both; animation-timeline: scroll(root);
	}
	@keyframes kiosk-progress { to { transform: scaleX(1); } }
}

/* ---------- Układ z prawym sidebarem ---------- */
.kiosk-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--kiosk-gap);
	align-items: start;
}
.kiosk-layout > * { margin-block: 0; min-width: 0; }
@media (min-width: 1000px) {
	.kiosk-layout { grid-template-columns: minmax(0, 1fr) var(--wp--custom--sidebar--width); }
	.kiosk-layout > .kiosk-sidebar { align-self: stretch; }
}
.kiosk-layout__main { display: flex; flex-direction: column; gap: var(--kiosk-gap); }
.kiosk-layout__main > * { margin-block: 0; }

.kiosk-sidebar { display: flex; flex-direction: column; gap: 2.25rem; }
.kiosk-sidebar > * { margin-block: 0; }
@media (min-width: 1000px) {
	.kiosk-sidebar { padding-left: var(--kiosk-gap); border-left: 1px solid var(--wp--preset--color--line); }
}
.kiosk-sidebar .is-style-sticky,
.kiosk-sidebar .kiosk-ad--sticky { position: sticky; top: var(--kiosk-sticky-top); }

/* ---------- Typografia pomocnicza ---------- */
.is-style-kicker {
	font-size: var(--wp--preset--font-size--x-small) !important;
	font-weight: 700; letter-spacing: .11em; text-transform: uppercase; line-height: 1.2;
}
.is-style-kicker a { color: var(--wp--preset--color--accent); text-decoration: none; }
.is-style-kicker a:first-of-type::before {
	content: ""; display: inline-block; width: .55em; height: .55em; margin-right: .55em;
	border-radius: 50%; background: currentColor; vertical-align: .06em;
}
.is-style-kicker .wp-block-post-terms__separator,
.is-style-kicker a:not(:first-of-type) { display: none; }

.is-style-pills { display: flex; flex-wrap: wrap; gap: .5rem; }
.is-style-pills .wp-block-post-terms__separator { display: none; }
.is-style-pills a {
	display: inline-block; padding: .4em .9em; border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--tint); color: var(--wp--preset--color--contrast);
	font-weight: 600; text-decoration: none; transition: background-color .2s;
}
.is-style-pills a:hover { background: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent-contrast); }

.wp-block-heading.is-style-section {
	font-size: var(--wp--preset--font-size--large);
	display: flex; align-items: center; gap: .9rem;
}
.wp-block-heading.is-style-section::after {
	content: ""; flex: 1; height: 1px; background: var(--wp--preset--color--line);
}
.wp-block-heading.is-style-eyebrow {
	font-family: inherit; font-size: var(--wp--preset--font-size--x-small); font-weight: 700;
	letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--muted);
}
.is-style-lead { font-size: var(--wp--preset--font-size--large); line-height: 1.5; color: var(--wp--preset--color--muted); }
.is-style-checks { list-style: none; padding-left: 0; }
.is-style-checks li { position: relative; padding-left: 1.75em; }
.is-style-checks li::before {
	content: ""; position: absolute; left: .15em; top: .45em; width: .9em; height: .5em;
	border-left: 2px solid var(--wp--preset--color--accent); border-bottom: 2px solid var(--wp--preset--color--accent);
	transform: rotate(-45deg);
}

.kiosk-meta { gap: .35rem .9rem; font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); }
.kiosk-meta > * { margin: 0; }
/* Kropka po elemencie, nie przed nim: przy zawinięciu linia kończy się kropką, a nie od niej zaczyna. */
.kiosk-meta > *:not(:last-child)::after { content: "·"; margin-left: .9rem; color: var(--wp--preset--color--muted); opacity: .6; font-weight: 700; }
.kiosk-meta > .wp-block-avatar::after { content: none; }
.kiosk-meta .wp-block-avatar img { border-radius: 50%; display: block; }
@media (max-width: 600px) {
	.kiosk-author__avatar img { width: 56px; height: 56px; }
}

/* ---------- Karty i zdjęcia ---------- */
/* Jedna proporcja dla wszystkich zdjęć wyróżniających, zgodna z formatem zdjęć portalu. */
.wp-block-post-featured-image img { aspect-ratio: var(--kiosk-img-ratio) !important; }
/* Tryb „oryginalne proporcje”: zdjęcie w całości, bez przycinania. */
.kiosk-img-natural .wp-block-post-featured-image img,
.kiosk-img-natural .kiosk-feature__img,
.kiosk-img-natural .kiosk-related__img img { aspect-ratio: auto !important; height: auto !important; object-fit: contain !important; }
.kiosk-img-natural .kiosk-related__img { aspect-ratio: auto; }
.wp-block-post-featured-image { overflow: hidden; border-radius: var(--wp--custom--radius--md); margin-bottom: 0; }
.wp-block-post-featured-image img { border-radius: inherit; }
.kiosk-card .wp-block-post-featured-image img { transition: transform .6s var(--kiosk-ease); }
.kiosk-card:hover .wp-block-post-featured-image img { transform: scale(1.035); }
.kiosk-card .wp-block-post-title a {
	text-decoration: underline; text-decoration-color: transparent;
	text-decoration-thickness: .06em; text-underline-offset: .14em;
	transition: text-decoration-color .2s, color .2s;
}
.kiosk-card:hover .wp-block-post-title a { text-decoration-color: currentColor; }
@media (prefers-reduced-motion: reduce) {
	.kiosk-card .wp-block-post-featured-image img { transition: none; }
	.kiosk-card:hover .wp-block-post-featured-image img { transform: none; }
}

.is-style-kiosk-card {
	background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--lg); padding: clamp(1.25rem, 1rem + 1vw, 1.75rem);
}
.is-style-kiosk-tint {
	background: var(--wp--preset--color--tint); border-radius: var(--wp--custom--radius--lg);
	padding: clamp(1.25rem, 1rem + 1vw, 1.75rem);
}

/* Czołówka (temat dnia) */
.kiosk-lead .wp-block-post-template { margin: 0; }
.kiosk-lead__item { display: grid; gap: 1.25rem 2.75rem; align-items: center; }
.kiosk-lead__item > * { margin: 0 !important; }
@media (min-width: 782px) {
	.kiosk-lead__item { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); }
}
.kiosk-lead__text { display: flex; flex-direction: column; gap: 1rem; }
.kiosk-lead__text > * { margin: 0; }
.kiosk-lead__title { font-size: var(--wp--preset--font-size--xx-large); line-height: 1.06; letter-spacing: -.02em; }
.kiosk-lead__dek { font-size: var(--wp--preset--font-size--large); line-height: 1.45; }
.kiosk-lead__dek p { margin: 0; }
.kiosk-lead { padding-bottom: var(--kiosk-gap); border-bottom: 1px solid var(--wp--preset--color--line); }

/* Rząd trzech kart */
.kiosk-row .wp-block-post-template { gap: 1.75rem; margin: 0; }
.kiosk-row .kiosk-card { display: flex; flex-direction: column; gap: .75rem; }
.kiosk-row .kiosk-card > * { margin: 0; }
.kiosk-row .wp-block-post-title { font-size: var(--wp--preset--font-size--large); line-height: 1.2; }
/* Wpis bez zdjęcia: puste pole w kolorze akcentu trzyma rytm siatki. */
.kiosk-row .kiosk-card:not(:has(.wp-block-post-featured-image))::before {
	content: ""; display: block; aspect-ratio: var(--kiosk-img-ratio); border-radius: var(--wp--custom--radius--md);
	background: linear-gradient(135deg, var(--wp--preset--color--tint), color-mix(in srgb, var(--wp--preset--color--accent) 22%, var(--wp--preset--color--tint)));
}
@media (max-width: 781px) {
	.kiosk-row .wp-block-post-template.is-layout-grid { grid-template-columns: minmax(0, 1fr); }
	.kiosk-row .kiosk-card { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); column-gap: 1rem; row-gap: .4rem; align-content: start; }
	.kiosk-row .kiosk-card .wp-block-post-featured-image { grid-row: 1 / span 3; }
}

/* Lista wpisów: tekst + miniatura */
.kiosk-list .wp-block-post-template { margin: 0; }
.kiosk-list .wp-block-post-template > li { border-bottom: 1px solid var(--wp--preset--color--line); }
.kiosk-list .wp-block-post-template > li + li { margin-top: 0; }
.kiosk-list-item {
	display: grid; grid-template-columns: minmax(0, 1fr) clamp(6.5rem, 4rem + 9vw, 11rem);
	gap: 1.25rem 1.75rem; align-items: center; padding-block: 1.4rem;
}
.kiosk-list-item > * { margin: 0 !important; }
.kiosk-list-item__text { display: flex; flex-direction: column; gap: .55rem; }
.kiosk-list-item__text > * { margin: 0; }
.kiosk-list-item .wp-block-post-title { font-size: var(--wp--preset--font-size--large); line-height: 1.22; }
.kiosk-list-item .wp-block-post-excerpt { font-size: var(--wp--preset--font-size--small); }
.kiosk-list-item .wp-block-post-excerpt p { margin: 0; }
@media (max-width: 600px) {
	.kiosk-list-item .wp-block-post-excerpt { display: none; }
}
.kiosk-list-item:not(:has(.wp-block-post-featured-image)) { grid-template-columns: minmax(0, 1fr); }

.wp-block-query-pagination { margin-top: 2rem; gap: .5rem; }
.wp-block-query-pagination-numbers .page-numbers {
	display: inline-grid; place-items: center; min-width: 2.4rem; height: 2.4rem; padding-inline: .5rem;
	border-radius: var(--wp--custom--radius--pill); text-decoration: none; color: var(--wp--preset--color--contrast);
}
.wp-block-query-pagination-numbers .page-numbers.current { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); }
.wp-block-query-pagination a { text-decoration: none; }

/* Ranking z numerami (np. „Polecane” w sidebarze) */
.wp-block-post-template.is-style-ranked { counter-reset: kiosk-rank; margin: 0; }
.wp-block-post-template.is-style-ranked > li {
	counter-increment: kiosk-rank; display: grid; grid-template-columns: 2.4rem minmax(0, 1fr);
	align-items: start; padding-block: .85rem; border-bottom: 1px solid var(--wp--preset--color--line); margin: 0;
}
.wp-block-post-template.is-style-ranked > li::before {
	content: counter(kiosk-rank); font-size: 1.6rem; font-weight: 800; line-height: 1.05;
	color: var(--wp--preset--color--accent); font-variant-numeric: tabular-nums;
}
.wp-block-post-template.is-style-ranked .wp-block-post-title { font-size: 1.0625rem; line-height: 1.3; margin: 0; }
.wp-block-post-template.is-style-divided { margin: 0; }
.wp-block-post-template.is-style-divided > li { padding-block: .9rem; border-bottom: 1px solid var(--wp--preset--color--line); margin: 0; }

/* Mała pozycja z miniaturą (sidebar artykułu) */
.kiosk-mini { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr); gap: .9rem; align-items: center; }
.kiosk-mini > * { margin: 0 !important; }
.kiosk-mini .wp-block-post-featured-image { border-radius: var(--wp--custom--radius--sm); }
.kiosk-mini .wp-block-post-title { font-size: 1rem; line-height: 1.3; }
.kiosk-mini:not(:has(.wp-block-post-featured-image)) { grid-template-columns: minmax(0, 1fr); }

/* Archiwum kategorii: nadtytuł z nazwą kategorii przy każdym wpisie byłby powtórzeniem tytułu strony. */
body.category .kiosk-list .is-style-kicker { display: none; }

/* Stopka zawsze na dole okna, także na krótkich podstronach. */
.wp-site-blocks { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; }
.wp-site-blocks > .kiosk-site-footer { margin-top: auto; }

/* Telefon: zdjęcie czołówki i artykułu od krawędzi do krawędzi. */
@media (max-width: 781px) {
	.kiosk-lead .wp-block-post-featured-image,
	.kiosk-article-image {
		margin-inline: calc(-1 * var(--wp--style--root--padding-left)) calc(-1 * var(--wp--style--root--padding-right)) !important;
		max-width: none !important; width: auto !important; border-radius: 0;
	}
	.kiosk-lead .wp-block-post-featured-image img,
	.kiosk-article-image img { border-radius: 0; }
}

/* ---------- Artykuł ---------- */
.kiosk-article-header { display: flex; flex-direction: column; gap: 1.1rem; }
.kiosk-article-header > * { margin: 0; max-width: 54rem; }
.kiosk-article-header .wp-block-post-title { font-size: var(--wp--preset--font-size--display); }
.kiosk-dek { font-size: var(--wp--preset--font-size--large); line-height: 1.5; max-width: 44rem; }
.kiosk-dek p { margin: 0; }
.kiosk-article-image { margin-block: clamp(1.5rem, 1rem + 2vw, 2.5rem) var(--kiosk-gap) !important; }
.kiosk-article-image figcaption, .wp-block-post-featured-image figcaption { margin-top: .6rem; }

.kiosk-entry .wp-block-post-content { font-size: 1.125rem; line-height: 1.7; }
.kiosk-entry .wp-block-post-content > :first-child { margin-top: 0; }
.kiosk-entry .wp-block-post-content :where(h2) { font-size: var(--wp--preset--font-size--x-large); margin-top: 2.4em; }
.kiosk-entry .wp-block-post-content :where(h3) { font-size: var(--wp--preset--font-size--large); margin-top: 2em; }
.kiosk-entry .wp-block-post-content :where(p, li) a { text-decoration-thickness: .07em; text-underline-offset: .18em; }
.kiosk-entry .wp-block-post-content figure.wp-block-table { overflow-x: auto; margin-block: 2em; }
.kiosk-entry .wp-block-post-content .wp-block-table table { border-collapse: collapse; width: 100%; font-variant-numeric: tabular-nums; }
.kiosk-entry .wp-block-post-content .wp-block-table :is(th, td) {
	border: 0; border-bottom: 1px solid var(--wp--preset--color--line); padding: .75em 1em; text-align: left; vertical-align: top;
}
.kiosk-entry .wp-block-post-content .wp-block-table thead { border: 0; }
.kiosk-entry .wp-block-post-content .wp-block-table thead th {
	border-bottom: 2px solid var(--wp--preset--color--contrast); font-size: var(--wp--preset--font-size--x-small);
	font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--muted);
}
.kiosk-entry .wp-block-post-content .wp-block-table tbody tr:hover { background: var(--wp--preset--color--tint); }
.kiosk-entry .wp-block-post-content :where(ul, ol) { padding-left: 1.3em; }
.kiosk-entry .wp-block-post-content :where(li) { margin-block: .35em; }
.kiosk-entry .wp-block-post-content :where(li)::marker { color: var(--wp--preset--color--accent); font-weight: 700; }
.kiosk-entry__after { display: flex; flex-direction: column; gap: 2.5rem; margin-top: 3rem; }
.kiosk-entry__after > * { margin: 0; }

/* ---------- Elementy treści: cytaty, separatory, podpisy ---------- */
.wp-block-quote {
	position: relative; margin-block: 2.5rem; padding: 1.6rem 1.75rem 1.5rem 4.6rem;
	border: 0; border-radius: var(--wp--custom--radius--lg); background: var(--wp--preset--color--tint);
}
.wp-block-quote::before {
	content: "\201C"; position: absolute; left: 1.2rem; top: .85rem;
	font-family: Georgia, "Times New Roman", serif; font-size: 4.5rem; line-height: 1;
	color: var(--wp--preset--color--accent);
}
.wp-block-quote p { margin: 0; font-style: normal; }
.wp-block-quote p + p { margin-top: .75em; }
.wp-block-quote cite,
.wp-block-pullquote cite {
	display: flex; align-items: center; gap: .7rem; margin-top: 1.1rem;
	font-size: var(--wp--preset--font-size--x-small); font-style: normal; font-weight: 600;
	letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--muted);
}
.wp-block-quote cite::before,
.wp-block-pullquote cite::before {
	content: ""; flex: none; width: 1.75rem; height: 2px; background: var(--wp--preset--color--accent);
}
.wp-block-quote.has-text-align-center { padding: 3.9rem 2rem 1.9rem; text-align: center; }
.wp-block-quote.has-text-align-center::before { left: 50%; transform: translateX(-50%); }
.wp-block-quote.has-text-align-center cite { justify-content: center; }

.wp-block-pullquote {
	margin-block: 3rem; padding: 1.75rem 0 1.5rem; text-align: left;
	border: 0; border-top: 3px solid var(--wp--preset--color--accent); border-bottom: 1px solid var(--wp--preset--color--line);
}
.wp-block-pullquote blockquote { margin: 0; }
.wp-block-pullquote p { font-size: inherit; line-height: inherit; font-weight: 500; letter-spacing: -.015em; margin: 0; }
.wp-block-pullquote.has-text-align-center cite { justify-content: center; }

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
	width: 3.5rem; border: 0; border-top: 2px solid var(--wp--preset--color--accent); opacity: 1; margin-block: 2.75rem;
}
.wp-block-separator.is-style-dots::before { color: var(--wp--preset--color--accent); letter-spacing: 1.2em; }

.wp-element-caption,
.wp-block-image figcaption,
.wp-block-embed figcaption {
	margin-top: .65rem; font-size: var(--wp--preset--font-size--small); line-height: 1.45;
	color: var(--wp--preset--color--muted); text-align: left;
}

.wp-block-details {
	border: 1px solid var(--wp--preset--color--line); border-radius: var(--wp--custom--radius--md);
	padding: .9rem 1.2rem; background: var(--wp--preset--color--surface);
}
.wp-block-details summary { cursor: pointer; font-weight: 700; }
.wp-block-details[open] summary { margin-bottom: .6rem; }
.wp-block-details summary::marker { color: var(--wp--preset--color--accent); }

:where(.wp-block-post-content, .kiosk-entry) :not(pre) > code {
	background: var(--wp--preset--color--tint); padding: .12em .38em; border-radius: 4px; font-size: .88em;
}
:where(.wp-block-post-content) mark {
	background: color-mix(in srgb, var(--wp--preset--color--highlight) 32%, transparent); color: inherit; padding: 0 .15em; border-radius: 3px;
}
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent; color: var(--wp--preset--color--accent); border: 2px solid currentColor;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent-contrast); border-color: var(--wp--preset--color--accent);
}

/* ---------- Strony redakcyjne ---------- */
.kiosk-eyebrow {
	font-size: var(--wp--preset--font-size--x-small); font-weight: 700; letter-spacing: .12em;
	text-transform: uppercase; color: var(--wp--preset--color--accent); margin-bottom: 0;
}
.kiosk-eyebrow + .is-style-lead { margin-top: .6rem; }
.wp-block-post-content .wp-block-heading.is-style-section { margin-top: 3rem; margin-bottom: 1.25rem; }
.kiosk-topics { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: 1rem; }
.kiosk-topics__card {
	display: flex; flex-direction: column; gap: .45rem; padding: 1.35rem 1.4rem 1.25rem;
	border: 1px solid var(--wp--preset--color--line); border-radius: var(--wp--custom--radius--lg);
	background: var(--wp--preset--color--surface); color: var(--wp--preset--color--contrast); text-decoration: none;
	transition: border-color .2s, transform .2s var(--kiosk-ease), box-shadow .2s;
}
.kiosk-topics__card:hover { border-color: var(--wp--preset--color--accent); transform: translateY(-2px); box-shadow: var(--wp--custom--shadow--card); }
.kiosk-topics__name { font-size: var(--wp--preset--font-size--large); font-weight: 700; line-height: 1.2; }
.kiosk-topics__name::after { content: " →"; color: var(--wp--preset--color--accent); }
.kiosk-topics__desc { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); line-height: 1.5; }
.kiosk-topics__count {
	margin-top: auto; padding-top: .5rem; font-size: var(--wp--preset--font-size--x-small); font-weight: 700;
	letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--accent);
}
@media (prefers-reduced-motion: reduce) { .kiosk-topics__card { transition: none; } .kiosk-topics__card:hover { transform: none; } }
.wp-block-post-content .kiosk-experts { margin-top: 3rem; }
.wp-block-post-content .kiosk-experts ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); column-gap: 1.5rem; }
.wp-block-post-content .is-style-kiosk-tint { margin-top: 3rem; }

/* ---------- Karty filmów („okładki” bez plakatów) ---------- */
.kiosk-films { display: grid; gap: 1.75rem; margin-block: 1.5rem 2.5rem; }
.kiosk-films > * { margin: 0 !important; }
.kiosk-film {
	display: grid; grid-template-columns: 8.75rem minmax(0, 1fr); gap: 1.4rem; align-items: start;
	padding-bottom: 1.75rem; border-bottom: 1px solid var(--wp--preset--color--line);
}
.kiosk-film > * { margin: 0 !important; }
.kiosk-film__poster {
	position: relative; aspect-ratio: 2 / 3; border-radius: var(--wp--custom--radius--md); overflow: hidden;
	display: flex; flex-direction: column; justify-content: flex-end; gap: .35rem; padding: .85rem .8rem;
	color: #fff; box-shadow: var(--wp--custom--shadow--card); isolation: isolate;
}
.kiosk-film__poster > * { margin: 0 !important; position: relative; z-index: 1; }
.kiosk-film__poster::before {
	content: ""; position: absolute; inset: 0; z-index: 0;
	background:
		radial-gradient(120% 60% at 85% 0%, rgb(255 255 255 / .22), transparent 60%),
		radial-gradient(90% 50% at 0% 100%, rgb(0 0 0 / .45), transparent 70%),
		repeating-linear-gradient(115deg, rgb(255 255 255 / .035) 0 2px, transparent 2px 7px);
}
/* Etykieta (część serii, rok nagrody) w lewym górnym rogu; dekoracyjna kreska nad rokiem, nie koliduje z etykietą. */
.kiosk-film__badge {
	position: absolute !important; top: .6rem; left: .6rem; max-width: calc(100% - 1.2rem);
	font-size: .62rem !important; font-weight: 800; line-height: 1.2; letter-spacing: .08em; text-transform: uppercase;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
	padding: .3em .6em; border-radius: var(--wp--custom--radius--pill);
	background: rgb(255 255 255 / .16); border: 1px solid rgb(255 255 255 / .22);
	-webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.kiosk-film__year { font-size: .72rem !important; font-weight: 700; letter-spacing: .14em; opacity: .85; display: flex; flex-direction: column; gap: .45rem; }
.kiosk-film__year::before { content: ""; width: 1.6rem; height: 2px; background: rgb(255 255 255 / .55); }
.kiosk-film .kiosk-film__title {
	color: #fff; font-size: 1.12rem !important; line-height: 1.1; letter-spacing: -.01em; text-wrap: balance;
	display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden;
}
.kiosk-film__genre { font-size: .7rem !important; opacity: .8; line-height: 1.3; }
.kiosk-poster-0 { background: linear-gradient(160deg, #3b2a8f, #120c2e); }
.kiosk-poster-1 { background: linear-gradient(160deg, #8f2a4e, #2a0b18); }
.kiosk-poster-2 { background: linear-gradient(160deg, #1f6b74, #07222a); }
.kiosk-poster-3 { background: linear-gradient(160deg, #b0662a, #3a1a08); }
.kiosk-poster-4 { background: linear-gradient(160deg, #2d4f9e, #0a1633); }
.kiosk-poster-5 { background: linear-gradient(160deg, #5a2a86, #1d0b2e); }
.kiosk-poster-6 { background: linear-gradient(160deg, #2f6b46, #0b2416); }
.kiosk-poster-7 { background: linear-gradient(160deg, #8a3b2a, #2b0e08); }
.kiosk-film__body { display: flex; flex-direction: column; gap: .55rem; }
.kiosk-film__body > * { margin: 0 !important; }
.kiosk-film__name { font-size: var(--wp--preset--font-size--large) !important; line-height: 1.2; }
.kiosk-film__name a { color: inherit; }
.kiosk-film__desc { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); }
.kiosk-film__facts { list-style: none; padding: 0 !important; margin: 0; display: grid; gap: .25rem; font-size: var(--wp--preset--font-size--small); }
.kiosk-film__facts li { margin: 0 !important; }
.kiosk-film__facts li::marker { content: none; }
.kiosk-film__facts strong { color: var(--wp--preset--color--contrast); font-weight: 700; }
.kiosk-film__score {
	display: inline-block; padding: .1em .5em; border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--tint); color: var(--wp--preset--color--accent); font-weight: 700;
}
@media (max-width: 600px) {
	.kiosk-film { grid-template-columns: 6.5rem minmax(0, 1fr); gap: 1rem; }
	.kiosk-film .kiosk-film__title { font-size: .95rem !important; }
}

/* Najważniejsze w liczbach */
.kiosk-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 9.5rem), 1fr)); gap: .75rem; margin-block: 1.5rem; }
.kiosk-stats > * { margin: 0 !important; }
.kiosk-stat {
	padding: 1rem 1.1rem; border-radius: var(--wp--custom--radius--md); background: var(--wp--preset--color--tint);
	display: flex; flex-direction: column; gap: .2rem;
}
.kiosk-stat > * { margin: 0 !important; }
.kiosk-stat__value { font-size: 1.6rem !important; font-weight: 700; line-height: 1.1; color: var(--wp--preset--color--accent); }
.kiosk-stat__label { font-size: var(--wp--preset--font-size--x-small) !important; text-transform: uppercase; letter-spacing: .08em; color: var(--wp--preset--color--muted); font-weight: 600; }
.kiosk-source { font-size: var(--wp--preset--font-size--x-small); color: var(--wp--preset--color--muted); margin-top: 2.5rem; padding-top: 1rem; border-top: 1px solid var(--wp--preset--color--line); }

/* Lista podstron działu (blok „Lista stron” na stronach-hubach) jako kafle. */
.wp-block-post-content .wp-block-page-list {
	list-style: none; padding: 0 !important; margin-block: 2rem;
	display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: .9rem;
}
.wp-block-post-content .wp-block-page-list > li { margin: 0 !important; }
.wp-block-post-content .wp-block-page-list > li > a {
	display: flex; align-items: flex-end; min-height: 6.5rem; height: 100%; box-sizing: border-box;
	padding: 1rem 1.1rem; border-radius: var(--wp--custom--radius--md); text-decoration: none;
	background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line);
	color: var(--wp--preset--color--contrast); font-weight: 700; line-height: 1.3;
	transition: border-color .2s, transform .2s var(--kiosk-ease), box-shadow .2s;
}
.wp-block-post-content .wp-block-page-list > li > a::after { content: " →"; color: var(--wp--preset--color--accent); white-space: pre; }
.wp-block-post-content .wp-block-page-list > li > a:hover { border-color: var(--wp--preset--color--accent); transform: translateY(-2px); box-shadow: var(--wp--custom--shadow--card); }
.wp-block-post-content .wp-block-page-list ul { display: none; }
@media (prefers-reduced-motion: reduce) { .wp-block-post-content .wp-block-page-list > li > a { transition: none; } .wp-block-post-content .wp-block-page-list > li > a:hover { transform: none; } }

/* Okruszki */
.kiosk-breadcrumbs { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); }
.kiosk-breadcrumbs a { color: var(--wp--preset--color--muted); text-decoration: none; }
.kiosk-breadcrumbs a:hover { color: var(--wp--preset--color--accent); }
.kiosk-breadcrumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .25rem .5rem; }
.kiosk-breadcrumbs li + li::before { content: "/"; margin-right: .5rem; color: var(--wp--preset--color--line); }
.kiosk-breadcrumbs [aria-current] { color: var(--wp--preset--color--contrast); }
.kiosk-breadcrumbs .breadcrumb_last { color: var(--wp--preset--color--contrast); }

/* Ramka autora */
.kiosk-author {
	display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1.25rem; align-items: start;
	padding: clamp(1.25rem, 1rem + 1vw, 1.75rem); border-radius: var(--wp--custom--radius--lg);
	background: var(--wp--preset--color--tint);
}
.kiosk-author__avatar img { border-radius: 50%; display: block; }
.kiosk-author__label { font-size: var(--wp--preset--font-size--x-small); font-weight: 700; letter-spacing: .11em; text-transform: uppercase; color: var(--wp--preset--color--muted); margin: 0; }
.kiosk-author__name { font-size: var(--wp--preset--font-size--large); margin: .2rem 0 .5rem; }
.kiosk-author__name a { color: inherit; text-decoration: none; }
.kiosk-author__bio { font-size: var(--wp--preset--font-size--small); }
.kiosk-author__bio p { margin: 0 0 .6em; }
.kiosk-author__links { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; font-size: var(--wp--preset--font-size--small); font-weight: 600; margin-top: .4rem; }
.kiosk-author--archive { background: transparent; padding: 0; align-items: center; }
.kiosk-author--archive .kiosk-author__name { font-size: var(--wp--preset--font-size--xx-large); }
.kiosk-author--archive .kiosk-author__bio { font-size: var(--wp--preset--font-size--medium); max-width: 44rem; }

/* Nasi eksperci */
.kiosk-experts ul { list-style: none; margin: 0; padding: 0; }
.kiosk-experts li {
	display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: .85rem; align-items: center;
	padding-block: .8rem; border-bottom: 1px solid var(--wp--preset--color--line);
}
.kiosk-experts img { border-radius: 50%; display: block; }
.kiosk-experts a { display: block; font-weight: 700; color: var(--wp--preset--color--contrast); text-decoration: none; line-height: 1.25; }
.kiosk-experts a:hover { color: var(--wp--preset--color--accent); }
.kiosk-experts span { display: block; font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); line-height: 1.35; }

/* Czytaj także */
.kiosk-related__title { margin: 0 0 1.25rem; }
.kiosk-related__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 13rem), 1fr)); gap: 1.5rem; list-style: none; padding: 0; margin: 0; }
.kiosk-related__grid .kiosk-card { display: flex; flex-direction: column; gap: .6rem; }
.kiosk-related__img { display: block; overflow: hidden; border-radius: var(--wp--custom--radius--md); aspect-ratio: var(--kiosk-img-ratio); background: var(--wp--preset--color--tint); }
.kiosk-related__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s var(--kiosk-ease); }
.kiosk-card:hover .kiosk-related__img img { transform: scale(1.035); }
.kiosk-related .wp-block-post-title { font-size: 1.125rem; line-height: 1.25; margin: 0; }
.kiosk-related .wp-block-post-title a { color: var(--wp--preset--color--contrast); }

/* ---------- Slot reklamowy ---------- */
.kiosk-ad { display: flex; flex-direction: column; align-items: center; gap: .4rem; }
.kiosk-ad__label {
	font-size: .6875rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
	color: var(--wp--preset--color--muted);
}
.kiosk-ad__slot {
	width: 100%; max-width: var(--kiosk-ad-w, 100%); aspect-ratio: var(--kiosk-ad-ratio, auto);
	min-height: var(--kiosk-ad-min, 0); display: flex; justify-content: center; align-items: center; overflow: hidden;
}
.kiosk-ad__slot > * { max-width: 100%; }
@media (max-width: 781px) { .kiosk-hide-mobile { display: none !important; } }
@media (min-width: 782px) { .kiosk-hide-desktop { display: none !important; } }

/* Edytor: podgląd slotu */
.kiosk-ad--editor {
	border: 1.5px dashed var(--wp--preset--color--muted); border-radius: var(--wp--custom--radius--md);
	padding: 1rem; align-items: stretch;
	background: repeating-linear-gradient(135deg, transparent 0 10px, color-mix(in srgb, var(--wp--preset--color--line) 50%, transparent) 10px 11px);
}
.kiosk-ad--editor .kiosk-ad__label { align-self: flex-start; }
.kiosk-ad--editor textarea.kiosk-ad__code {
	width: 100%; min-height: 7rem; font: 13px/1.5 ui-monospace, Consolas, monospace;
	background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--sm); padding: .6rem;
}
.kiosk-placeholder {
	border: 1.5px dashed var(--wp--preset--color--line); border-radius: var(--wp--custom--radius--md);
	padding: 1rem; color: var(--wp--preset--color--muted); font-size: var(--wp--preset--font-size--small);
}

/* ---------- Komentarze ---------- */
.kiosk-comments { margin-top: 1rem; }
.kiosk-comments .wp-block-comments-title { font-size: var(--wp--preset--font-size--large); }
.kiosk-comments .wp-block-post-comments-form .comment-reply-title { font-size: var(--wp--preset--font-size--large); }
.kiosk-comment { padding-block: 1.25rem; border-bottom: 1px solid var(--wp--preset--color--line); }
.kiosk-comment .wp-block-avatar img { border-radius: 50%; }
.kiosk-comment .wp-block-comment-date { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); }
.wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]),
.wp-block-post-comments-form textarea {
	border: 1px solid var(--wp--preset--color--line); border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--surface); color: var(--wp--preset--color--contrast); padding: .7em .9em; font: inherit;
}

/* ---------- Stopka ---------- */
.wp-site-blocks > .kiosk-site-footer {
	margin-block-start: 0; border-top: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--surface); content-visibility: auto; contain-intrinsic-size: auto 320px;
}
.kiosk-footer { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--muted); }
.kiosk-footer a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.kiosk-footer a:hover { color: var(--wp--preset--color--accent); }
.kiosk-footer__grid { display: grid; gap: 2rem var(--kiosk-gap); grid-template-columns: minmax(0, 1fr); }
.kiosk-footer__grid > * { margin: 0 !important; }
@media (min-width: 782px) { .kiosk-footer__grid { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr); } }
.kiosk-footer__brand .wp-block-site-title { font-size: 2rem; margin: 0 0 .5rem; }
.kiosk-footer__brand .wp-block-site-tagline { font-size: var(--wp--preset--font-size--medium); max-width: 30ch; margin: 0; }
.kiosk-footer .is-style-eyebrow { margin: 0 0 .9rem; }
.kiosk-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; }
.kiosk-footer__list li { margin: 0; }
.kiosk-footer__bottom { margin-top: var(--wp--preset--spacing--50) !important; padding-top: 1.25rem; border-top: 1px solid var(--wp--preset--color--line); }
.kiosk-footer__bottom p { margin: 0; }

/* ---------- Pasek wyróżnionego wpisu ---------- */
.wp-site-blocks > .kiosk-strip { margin-block-start: 0; }
.wp-site-blocks > .kiosk-strip + * { margin-block-start: 0; }
.kiosk-strip {
	background: var(--wp--preset--color--tint);
	border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--accent) 14%, transparent);
	padding-left: var(--wp--style--root--padding-left); padding-right: var(--wp--style--root--padding-right);
}
.kiosk-strip__inner {
	max-width: var(--wp--style--global--wide-size); margin-inline: auto; min-height: 3.25rem;
	display: flex; align-items: center; gap: .85rem; padding-block: .55rem;
	color: var(--wp--preset--color--contrast); text-decoration: none; font-size: var(--wp--preset--font-size--small);
}
.kiosk-strip__thumb { width: 2.25rem; height: 2.25rem; flex: none; object-fit: cover; border-radius: var(--wp--custom--radius--sm); }
.kiosk-strip__label {
	flex: none; font-size: .6875rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
	color: var(--wp--preset--color--accent-contrast); background: var(--wp--preset--color--accent);
	padding: .35em .75em; border-radius: var(--wp--custom--radius--pill);
}
.kiosk-strip__title {
	min-width: 0; font-weight: 600; line-height: 1.35;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.kiosk-strip__more { margin-left: auto; flex: none; font-weight: 700; color: var(--wp--preset--color--accent); white-space: nowrap; }
.kiosk-strip__more::after { content: " →"; display: inline-block; transition: transform .25s var(--kiosk-ease); }
.kiosk-strip__inner:hover .kiosk-strip__title { text-decoration: underline; text-underline-offset: .15em; }
.kiosk-strip__inner:hover .kiosk-strip__more::after { transform: translateX(3px); }
@media (max-width: 600px) {
	.kiosk-strip__thumb, .kiosk-strip__more { display: none; }
}

/* ---------- Karta wyróżnionego wpisu ---------- */
/* Zdjęcie w pełnych proporcjach u góry (bez przycinania kadru), tekst pod spodem na ciemnej karcie. */
.kiosk-feature {
	position: relative; display: flex; flex-direction: column; overflow: hidden;
	border-radius: var(--wp--custom--radius--lg); text-decoration: none;
	color: var(--wp--preset--color--base); background: var(--wp--preset--color--contrast); box-shadow: var(--wp--custom--shadow--card);
}
.kiosk-feature__media { position: relative; display: block; overflow: hidden; }
.kiosk-feature__img {
	display: block; width: 100%; height: auto; aspect-ratio: var(--kiosk-img-ratio); object-fit: cover;
	transition: transform .7s var(--kiosk-ease);
}
.kiosk-feature:hover .kiosk-feature__img { transform: scale(1.04); }
.kiosk-feature__body { display: flex; flex-direction: column; gap: .55rem; padding: 1.1rem 1.25rem 1.25rem; }
.kiosk-feature__label {
	align-self: flex-start; font-size: .6875rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
	padding: .4em .8em; border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent-contrast);
}
.kiosk-feature__media .kiosk-feature__label { position: absolute; left: .85rem; top: .85rem; box-shadow: 0 2px 10px rgb(0 0 0 / .25); }
.kiosk-feature .kiosk-feature__title { color: inherit; font-size: 1.35rem; line-height: 1.15; margin: 0; }
.kiosk-feature__meta { font-size: var(--wp--preset--font-size--small); opacity: .75; }
.kiosk-feature--noimg { background: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent-contrast); }
.kiosk-feature--noimg .kiosk-feature__body { padding-top: 1.4rem; min-height: 12rem; justify-content: flex-end; }
.kiosk-feature--noimg .kiosk-feature__label { background: rgb(255 255 255 / .2); color: inherit; }
@media (prefers-reduced-motion: reduce) {
	.kiosk-feature__img { transition: none; }
	.kiosk-feature:hover .kiosk-feature__img { transform: none; }
}

/* ---------- Banner ---------- */
.kiosk-banner { display: flex; flex-direction: column; align-items: center; gap: .4rem; }
.kiosk-banner__link { display: block; width: 100%; border-radius: var(--wp--custom--radius--md); overflow: hidden; }
.kiosk-banner img { display: block; width: 100%; height: auto; border-radius: var(--wp--custom--radius--md); transition: opacity .2s; }
.kiosk-banner__link:hover img { opacity: .92; }
.kiosk-banner__code { width: 100%; display: flex; justify-content: center; }
.kiosk-banner__code > * { max-width: 100%; }

/* ---------- Wyszukiwarka i 404 ---------- */
.wp-block-search__input {
	border-radius: var(--wp--custom--radius--pill); border: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--surface); color: var(--wp--preset--color--contrast); padding-inline: 1.1em;
}
.kiosk-hero-404 .wp-block-heading { font-size: var(--wp--preset--font-size--display); }

/* Sekcja „Od redakcji” na stronach z treściami z Wikidata – własny komentarz redakcji do danych. */
.kiosk-editorial {
	margin-block: 0 1rem !important; padding: 1rem 1.25rem; border-left: 3px solid var(--wp--preset--color--accent);
	background: var(--wp--preset--color--tint); border-radius: 0 var(--wp--custom--radius--md) var(--wp--custom--radius--md) 0;
	line-height: 1.65;
}
.kiosk-editorial + .kiosk-editorial { margin-top: -.25rem !important; }

/* „Od redakcji” v2: karta z wierszami (zacznij od / kto kogo gra / warto wiedzieć / zestaw na wieczór). */
.kiosk-ed {
	margin-block: 0 1.5rem !important; padding: 0 !important; overflow: hidden;
	background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line);
	border-top: 3px solid var(--wp--preset--color--accent); border-radius: var(--wp--custom--radius--md);
	box-shadow: var(--wp--custom--shadow--card);
}
.kiosk-ed__row {
	display: grid; grid-template-columns: 9.5rem 1fr; gap: .25rem 1.25rem; align-items: start;
	margin: 0 !important; padding: 1rem 1.25rem !important; border-top: 1px solid var(--wp--preset--color--line);
}
.kiosk-ed__row:first-child { border-top: 0; }
.kiosk-ed__label {
	margin: .2rem 0 0 !important; font-size: var(--wp--preset--font-size--x-small) !important; font-weight: 700;
	text-transform: uppercase; letter-spacing: .08em; color: var(--wp--preset--color--accent);
}
.kiosk-ed__text { margin: 0 !important; line-height: 1.6; }
.kiosk-ed__cast, .kiosk-ed__facts { margin: 0 !important; padding: 0 !important; list-style: none; line-height: 1.5; }
.kiosk-ed__cast { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: .4rem 1.25rem; }
.kiosk-ed__cast li, .kiosk-ed__facts li { margin: 0 !important; padding: 0 !important; }
.kiosk-ed__cast strong { color: var(--wp--preset--color--contrast); }
.kiosk-ed__film { color: var(--wp--preset--color--muted); font-size: .9em; }
.kiosk-ed__facts li { position: relative; padding-left: 1.1rem !important; margin-bottom: .45rem !important; }
.kiosk-ed__facts li:last-child { margin-bottom: 0 !important; }
.kiosk-ed__facts li::before { content: ""; position: absolute; left: 0; top: .6em; width: .45rem; height: .45rem; border-radius: 50%; background: var(--wp--preset--color--accent); }
@media (max-width: 640px) {
	.kiosk-ed__row { grid-template-columns: 1fr; padding: .9rem 1rem !important; }
}

/* Palety kolorów i tabele zużycia (strony z gotowymi paletami / tabelami, np. homester.pl). */
.kiosk-pal { margin: 0 0 .5rem; }
.kiosk-pal__bar { display: flex; height: 4.5rem; border-radius: var(--wp--custom--radius--md); overflow: hidden; border: 1px solid var(--wp--preset--color--line); }
.kiosk-pal__bar > span { display: block; }
.kiosk-pal__list { list-style: none; margin: .9rem 0 .35rem !important; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15.5rem), 1fr)); gap: .5rem 1.25rem; }
.kiosk-pal__list li { display: flex; align-items: center; gap: .45rem; flex-wrap: wrap; margin: 0 !important; padding: 0 !important; line-height: 1.35; }
.kiosk-pal__dot { width: 1.1rem; height: 1.1rem; border-radius: 50%; border: 1px solid rgba(0, 0, 0, .18); flex: none; }
.kiosk-pal__list code { font-size: .82em; background: var(--wp--preset--color--tint); padding: .08em .4em; border-radius: 4px; }
.kiosk-pal__list em { color: var(--wp--preset--color--muted); font-style: normal; font-size: .9em; }
.kiosk-pal__meta { margin: .3rem 0 0; font-size: var(--wp--preset--font-size--x-small); color: var(--wp--preset--color--muted); }
.wp-block-post-content figure.wp-block-table { overflow-x: auto; margin-block: 1.5em 2em; }
.wp-block-post-content .wp-block-table table { border-collapse: collapse; width: 100%; font-variant-numeric: tabular-nums; }
.wp-block-post-content .wp-block-table :is(th, td) { border: 0; border-bottom: 1px solid var(--wp--preset--color--line); padding: .7em .9em; text-align: left; vertical-align: top; }
.wp-block-post-content .wp-block-table thead { border: 0; }
.wp-block-post-content .wp-block-table thead th { border-bottom: 2px solid var(--wp--preset--color--contrast); font-size: var(--wp--preset--font-size--x-small); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.wp-block-post-content .wp-block-table tbody tr:hover { background: var(--wp--preset--color--tint); }
.wp-block-post-content .wp-block-table figcaption { font-size: var(--wp--preset--font-size--x-small); color: var(--wp--preset--color--muted); text-align: left; margin-top: .6rem; }
