/*
 * Blok: core/post-content (i grupa „Treść wpisu” w projekcie)
 *
 * Proza wpisu, projektu i strony tekstowej (makieta: _prose.scss,
 * `.prose.text-18-relaxed`). Reguły celują w klasy bloków rdzenia, nie
 * w gołe znaczniki (design-files.md): `ul` w treści to też tor karuzeli.
 */

.is-style-tresc-wpisu {
	color: var(--c-text-soft);
	font-size: var(--text-6);
	line-height: 1.65;
}

/* Dwie klasy: reguła przepływu rdzenia (odstęp między blokami) waży jedną
   i stoi po arkuszu bloku (gotchas 2026-10-21). */
:is(.wp-block-post-content, .wp-block-group).is-style-tresc-wpisu > * {
	max-width: 40rem;
	margin-block: 0;
}

/* Sekcja w prozie (deklaracja dostępności: sekcje `a11y-*`): dzieci bez
   odstępu przepływu rdzenia, rytm dają reguły prozy niżej. */
.wp-block-group.is-style-sekcja-prozy > * {
	margin-block: 0;
}

.is-style-tresc-wpisu > .is-style-sekcja-prozy + :is(.wp-block-heading, .is-style-sekcja-prozy),
.is-style-tresc-wpisu > :is(.wp-block-paragraph, .wp-block-list) + .is-style-sekcja-prozy {
	margin-top: var(--space-16);
}

.is-style-tresc-wpisu > .is-style-sekcja-prozy + :is(.wp-block-paragraph, .wp-block-list) {
	margin-top: var(--space-9);
}

.is-style-tresc-wpisu > .wp-block-gallery,
.is-style-tresc-wpisu > .wp-block-flexisnap-logos,
.is-style-tresc-wpisu > .wp-block-flexisnap-download-grid,
.is-style-tresc-wpisu > .wp-block-table {
	max-width: none;
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-paragraph + .wp-block-paragraph {
	margin-top: 1em;
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-heading {
	margin-bottom: var(--space-7);
	color: var(--c-ink);
	text-wrap: balance;
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > h2.wp-block-heading:not(.is-style-tytul-sekcji) {
	font-size: var(--text-h2-sm);
	line-height: 1.3;
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > h3.wp-block-heading {
	font-size: var(--text-h3);
	line-height: 1.25;
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > h4.wp-block-heading {
	font-family: var(--font-sans);
	font-size: var(--text-6);
	line-height: 1.35;
}

/* Odstęp nad nagłówkiem tylko po innym bloku. */
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > :is(.wp-block-paragraph, .wp-block-list, .wp-block-table, .wp-block-quote, .wp-block-separator) + .wp-block-heading {
	margin-top: var(--space-16);
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > :is(.wp-block-list, .wp-block-table, .wp-block-quote, .wp-block-separator) + .wp-block-paragraph,
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-paragraph + :is(.wp-block-list, .wp-block-table, .wp-block-quote) {
	margin-top: var(--space-9);
}

.is-style-tresc-wpisu .wp-block-list {
	display: grid;
	gap: var(--space-5);
	margin-block: 0;
	padding-left: 1.4em;
}

.is-style-tresc-wpisu ul.wp-block-list {
	list-style: disc;
}

.is-style-tresc-wpisu ol.wp-block-list {
	list-style: decimal;
}

.is-style-tresc-wpisu .wp-block-paragraph a,
.is-style-tresc-wpisu .wp-block-list a {
	color: var(--c-primary-hover);
	text-underline-offset: 0.2em;
}

.is-style-tresc-wpisu strong {
	color: var(--c-ink);
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-quote {
	margin-inline: 0;
	padding: var(--space-9) var(--space-13);
	border-left: 4px solid var(--c-primary);
	border-radius: 0 var(--radius-7) var(--radius-7) 0;
	background: var(--c-tint-card);
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-separator {
	margin: var(--space-16) 0;
	border: 0;
	border-top: 1px solid var(--c-border);
}

.is-style-tresc-wpisu .wp-block-table table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--text-4);
}

.is-style-tresc-wpisu .wp-block-table :is(th, td) {
	padding: var(--space-5) var(--space-7);
	border: 0;
	border-bottom: 1px solid var(--c-border);
	text-align: left;
	vertical-align: top;
}

.is-style-tresc-wpisu .wp-block-table th {
	color: var(--c-ink);
}

/* Tytuł zdjęć, zdjęcia i logotypy pod tekstem (makieta: `.section-wpis__main`
   z odstępem f3 między prozą, tytułem i galerią). */
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > * + h2.wp-block-heading.is-style-tytul-sekcji,
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .is-style-tytul-sekcji,
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > * + .wp-block-flexisnap-logos,
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-heading + .wp-block-gallery.is-style-galeria-siatka {
	max-width: none;
	margin-top: var(--space-f3);
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .is-style-tytul-sekcji:first-child {
	margin-top: 0;
}

/* Przyciski z samych odnośników w prozie (makieta: `.prose__buttons`). */
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-paragraph + .wp-block-buttons,
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-buttons + .wp-block-paragraph {
	margin-top: 1em;
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-buttons {
	gap: var(--space-6);
}

/* Tabela (makieta: `figure.prose__table` z `caption` nad tabelą): podpis
   rdzenia (figcaption) przeniesiony nad tabelę, bez grubej kreski rdzenia
   pod nagłówkiem; szeroka tabela przewija się w poziomie. */
:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-table {
	display: flex;
	flex-direction: column;
	overflow-x: auto;
}

:is(.is-style-tresc-wpisu, .is-style-sekcja-prozy) > .wp-block-table > figcaption {
	order: -1;
	margin: 0;
	padding-bottom: var(--space-5);
	color: var(--c-ink);
	font-size: var(--text-4);
	font-weight: 600;
	text-align: left;
}

.is-style-tresc-wpisu .wp-block-table thead {
	border-bottom: 0;
}

/* Pliki do pobrania pod prozą: tytuł i siatka w grupie, bo spis treści nie
   czyta nagłówków w grupie. Grupa na całą szerokość, odstępy jak w kolumnie
   makiety; kreska przed nią zostawia swój dolny margines w prozie (element
   siatki makiety), więc nie skleja się z odstępem do plików. */
.is-style-tresc-wpisu > .wp-block-group:has(> .wp-block-flexisnap-download-grid) {
	display: grid;
	gap: var(--space-f3);
	max-width: none;
	margin-top: var(--space-f3);
}

.is-style-tresc-wpisu > .wp-block-group:has(> .wp-block-flexisnap-download-grid) > * {
	margin-block: 0;
}

.is-style-tresc-wpisu > .wp-block-separator + .wp-block-group:has(> .wp-block-flexisnap-download-grid) {
	margin-top: calc(var(--space-f3) + var(--space-16));
}

/* Podlista w pozycji listy (makieta: `.prose li :is(ul, ol)`). */
.is-style-tresc-wpisu .wp-block-list .wp-block-list {
	margin-top: var(--space-5);
}
