/* Wyjazdowo — style bloków (front + edytor). Korzysta z tokenów theme.json, ma bezpieczne wartości domyślne. */
:root {
	--wy-teal: var(--wp--preset--color--teal, #0D9488);
	--wy-teal-dark: var(--wp--preset--color--teal-dark, #0F766E);
	--wy-teal-light: var(--wp--preset--color--teal-light, #CCFBF1);
	--wy-amber: var(--wp--preset--color--amber, #D97706);
	--wy-charcoal: var(--wp--preset--color--charcoal, #0F172A);
	--wy-slate: var(--wp--preset--color--slate, #64748B);
	--wy-mist: var(--wp--preset--color--mist, #F1F5F9);
	--wy-border: var(--wp--preset--color--border, #E2E8F0);
	--wy-radius: var(--wp--custom--radius--md, 1rem);
	--wy-heading: var(--wp--preset--font-family--heading, system-ui, sans-serif);
}
.wy-ikona { flex: none; vertical-align: -3px; }
.wy-etykieta { margin: 0; font-size: .75rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--wy-teal-dark); }
.wy-avatar {
	display: inline-grid; place-items: center; flex: none; width: 2rem; height: 2rem; border-radius: 9999px;
	background: var(--wy-kolor, var(--wy-charcoal)); color: #fff; font: 700 .8rem/1 var(--wy-heading);
	box-shadow: 0 0 0 2px #fff;
}

/* Komentarz uczestnika */
.wy-komentarz { margin-block: 1.5rem; padding: 1.4rem 1.75rem; background: var(--wy-mist); border-radius: var(--wy-radius); }
.wy-komentarz__kto { display: flex; align-items: center; gap: .65rem; margin: 0 0 .6rem; font: 700 1.15rem/1.3 var(--wy-heading); color: var(--wy-charcoal); }
.wy-komentarz__tresc { font-style: italic; font-size: 1rem; line-height: 1.7; }
.wy-komentarz__tresc > :first-child { margin-top: 0; }
.wy-komentarz__tresc > :last-child { margin-bottom: 0; }
.wy-komentarz__tresc p + p { margin-top: .6rem; }

/* Fakty wyprawy */
.wy-fakty { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: 1rem; margin-block: 2rem; }
.wy-fakty__kafel { background: #fff; border: 1px solid var(--wy-border); border-radius: var(--wy-radius); padding: 1.1rem 1.25rem; }
.wy-fakty__wartosc { margin: .3rem 0; font: 700 1.5rem/1.2 var(--wy-heading); color: var(--wy-charcoal); }
.wy-fakty__kafel:nth-child(2) .wy-fakty__wartosc { color: var(--wy-teal-dark); }
.wy-fakty__kafel:nth-child(4) .wy-fakty__wartosc { color: #B45309; }
.wy-fakty__opis { margin: 0; font-size: .85rem; line-height: 1.5; color: var(--wy-slate); }

/* Znacznik kraju */
.wy-znacznik {
	display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .75rem; border-radius: 9999px;
	font: 600 .78rem/1.2 var(--wp--preset--font-family--body, system-ui); text-decoration: none !important;
	background: rgba(255, 255, 255, .9); color: var(--wy-charcoal) !important; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.wy-znacznik.is-teal { background: var(--wy-teal-light); color: var(--wy-teal-dark) !important; }

/* Meta wyprawy */
.wy-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.4rem; font-size: .9rem; color: var(--wy-slate); }
.wy-meta > span { display: inline-flex; align-items: center; gap: .4rem; }
.wy-meta strong { color: var(--wy-charcoal); font-weight: 600; }
.wy-meta .wy-avatary { display: inline-flex; }
.wy-meta .wy-avatary .wy-avatar + .wy-avatar { margin-left: -.45rem; }
.wy-meta.is-ciemny { color: rgba(255, 255, 255, .85); background: rgba(15, 23, 42, .45); border: 1px solid rgba(255, 255, 255, .15);
	border-radius: var(--wy-radius); padding: .8rem 1.1rem; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); width: fit-content; }
.wy-meta.is-ciemny strong { color: #fff; }

/* Odznaki */
.wy-odznaki { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.wy-odznaki a { display: inline-block; padding: .25rem .6rem; border-radius: .5rem; background: var(--wy-teal-light); color: var(--wy-teal-dark); font-size: .78rem; font-weight: 600; text-decoration: none; }

/* Liczniki */
.wy-liczniki { display: grid; grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); gap: 1rem; }
.wy-licznik { background: #fff; border: 1px solid var(--wy-border); border-radius: var(--wy-radius); padding: 1.1rem 1.25rem; }
.wy-licznik p { margin: 0; }
.wy-licznik__wiersz { display: flex; align-items: baseline; flex-wrap: wrap; gap: .35rem; }
.wy-licznik__w { font: 700 clamp(1.5rem, 2.6vw, 2.25rem)/1.1 var(--wy-heading); color: var(--wy-teal-dark); white-space: nowrap; }
.wy-licznik.is-1 .wy-licznik__w { color: var(--wy-amber); }
.wy-licznik.is-2 .wy-licznik__w { color: #9A3412; }
.wy-licznik.is-3 .wy-licznik__w { color: var(--wy-charcoal); }
.wy-licznik__e { font-weight: 600; font-size: .9rem; color: var(--wy-charcoal); }
.wy-licznik__e::after { content: ":"; }
.wy-licznik__o { font-size: .8rem; color: var(--wy-slate); }

/* Perspektywy */
.wy-perspektywy { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1rem; margin-block: 2rem; }
.wy-perspektywa { background: #fff; border: 1px solid var(--wy-border); border-top: 4px solid var(--wy-kolor); border-radius: var(--wy-radius); padding: 1.1rem 1.25rem; }
.wy-perspektywa .wy-etykieta { color: var(--wy-kolor); }
.wy-perspektywa__kto { margin: .35rem 0; font: 600 1.25rem/1.2 var(--wy-heading); }
.wy-perspektywa__tekst { margin: 0; font-size: .88rem; line-height: 1.55; color: var(--wy-slate); }

/* GPX */
.wy-gpx { background: var(--wy-mist); border-radius: var(--wy-radius); padding: 1.5rem; display: grid; gap: 1rem; margin-block: 2rem; }
.wy-gpx__naglowek { display: flex; gap: .9rem; align-items: center; }
.wy-gpx__ikona { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border-radius: .75rem; background: var(--wy-teal-dark); color: #fff; }
.wy-gpx__ikona .wy-ikona { width: 1.4rem; height: 1.4rem; }
.wy-gpx__tytul { margin: 0; font: 600 1.15rem/1.3 var(--wy-heading); }
.wy-gpx__opis { margin: 0; font-size: .85rem; color: var(--wy-slate); }
.wy-gpx__punkty { margin: 0; padding-left: 1.2rem; font-size: .9rem; }
.wy-gpx__przycisk { display: inline-flex; gap: .5rem; align-items: center; justify-content: center; padding: .85rem 1.4rem; border-radius: .75rem;
	background: var(--wy-teal-dark); color: #fff !important; font-weight: 600; text-decoration: none !important; }
.wy-gpx__przycisk:hover { background: var(--wy-teal); }

/* Meldunki */
.wy-meldunki { background: #fff; border: 1px solid var(--wy-border); border-radius: var(--wy-radius); padding: 1.4rem 1.5rem; }
.wy-meldunki__tytul { margin: 0 0 1rem; display: flex; align-items: center; gap: .5rem; font: 600 1.2rem var(--wy-heading); }
.wy-kropka { width: .6rem; height: .6rem; border-radius: 9999px; background: var(--wy-amber); box-shadow: 0 0 0 4px rgba(217, 119, 6, .15); }
.wy-meldunki ol { list-style: none; margin: 0; padding: 0 0 0 1rem; border-left: 2px solid var(--wy-border); display: grid; gap: 1.2rem; }
.wy-meldunki li { position: relative; }
.wy-meldunki li::before { content: ""; position: absolute; left: calc(-1rem - 6px); top: .3rem; width: 10px; height: 10px; border-radius: 9999px; background: var(--wy-teal); }
.wy-meldunki li:nth-child(2)::before { background: var(--wy-amber); }
.wy-meldunki__tresc { font-size: .92rem; }
.wy-meldunki__tresc p { margin: .3rem 0; }
.wy-meldunki__autor { margin: 0; font-size: .8rem; color: var(--wy-slate); }

/* Kalkulator */
.wy-kalkulator { background: #fff; border: 1px solid var(--wy-border); border-radius: 1.5rem; padding: clamp(1.25rem, 3vw, 2.5rem); }
.wy-kalkulator__tytul { margin: .4rem 0 1.25rem; }
.wy-kalkulator__filtry { display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: 1rem; }
.wy-kalkulator__filtry label { display: grid; gap: .4rem; }
.wy-kalkulator select { padding: .6rem .8rem; border: 1px solid var(--wy-border); border-radius: .5rem; background: var(--wy-mist); font: inherit; }
.wy-kalkulator__wynik { display: grid; gap: 1rem; margin-top: 1.25rem; }
.wy-kalkulator__karta { background: var(--wy-mist); border-radius: var(--wy-radius); padding: 1.25rem; }
.wy-kalkulator__karta h3 { margin: .4rem 0; }
.wy-zgodnosc { float: right; background: var(--wy-teal-light); color: var(--wy-teal-dark); border-radius: 9999px; padding: .1rem .6rem; }
.wy-kalkulator__meta { font-size: .85rem; color: var(--wy-slate); }

/* Edytor */
.wy-fakty-edit { border: 1px dashed var(--wy-border); border-radius: var(--wy-radius); padding: 1rem; background: #fff; }
.wy-rows { display: grid; gap: .75rem; }
.wy-rows.is-kafelki { grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); align-items: start; margin: .75rem 0; }
.wy-rows.is-kafelki > .components-button { align-self: center; justify-self: start; }
.wy-rows__row { display: grid; gap: .5rem; background: var(--wy-mist); border-radius: .75rem; padding: .75rem; }
.wy-rows__akcje { display: flex; justify-content: flex-end; gap: .25rem; }
.wy-podglad { opacity: .85; }

/* Okruszki */
.wy-okruszki-nav ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .35rem; font-size: .85rem; color: var(--wy-slate); }
.wy-okruszki-nav li + li::before { content: "›"; margin-right: .35rem; color: var(--wy-border); }
.wy-okruszki-nav a { color: var(--wy-slate); text-decoration: none; }
.wy-okruszki-nav a:hover { color: var(--wy-teal-dark); }
.wy-okruszki-nav [aria-current] { color: var(--wy-teal-dark); font-weight: 600; }

/* Ramki wyróżnień: wskazówka / informacja / uwaga */
.is-style-wskazowka, .is-style-info, .is-style-uwaga {
	position: relative; border-radius: .85rem; padding: 1.1rem 1.25rem 1.1rem 3.25rem; margin-block: 1.75rem;
}
.is-style-wskazowka::before, .is-style-info::before, .is-style-uwaga::before {
	position: absolute; left: 1.1rem; top: 1.1rem; width: 1.6rem; height: 1.6rem; border-radius: 9999px;
	display: grid; place-items: center; font-size: .95rem; line-height: 1; color: #fff;
}
.is-style-wskazowka { background: #ECFDF5; border: 1px solid #A7F3D0; }
.is-style-wskazowka::before { content: "💡"; background: #10B981; }
.is-style-info { background: #EFF6FF; border: 1px solid #BFDBFE; }
.is-style-info::before { content: "ℹ"; background: #3B82F6; }
.is-style-uwaga { background: #FFFBEB; border: 1px solid #FDE68A; }
.is-style-uwaga::before { content: "⚠"; background: var(--wy-amber); }
.is-style-wskazowka > *:first-child, .is-style-info > *:first-child, .is-style-uwaga > *:first-child { margin-top: 0; }
.is-style-wskazowka > *:last-child, .is-style-info > *:last-child, .is-style-uwaga > *:last-child { margin-bottom: 0; }
.is-style-wskazowka strong:first-child, .is-style-info strong:first-child, .is-style-uwaga strong:first-child { display: block; margin-bottom: .2rem; font-family: var(--wy-heading); }

/* Zabezpieczenie przed przewinięciem poziomym: część starych wpisów ma w treści wklejone jako zwykły
   tekst bardzo długie, nieprzełamywalne linki (np. surowe URL-e do Google Maps) — bez tej reguły
   wychodzą poza kontener i psują layout całej strony (poziomy scrollbar). overflow-wrap:anywhere
   łamie tylko wtedy, gdy naprawdę trzeba — normalny tekst zawija się jak dotychczas. */
.wp-block-post-content { overflow-wrap: anywhere; }
.wp-block-post-content a { word-break: break-word; }

/* 9 starych wpisów o Meksyku (2012) ma w treści zdjęcia z podmienionym linkiem na wariant wygenerowany
   kiedyś przez mod_pagespeed na starym serwerze (".pagespeed.ic.HASH.jpg") — tego pliku nigdy nie było
   w bibliotece mediów, tylko po stronie serwera; oryginał też już nie istnieje (potwierdzone: brak
   zarówno na test, jak i na produkcji — utracone jeszcze przed tym projektem). Zamiast pokazywać
   ikonę zepsutego obrazka, chowamy je do czasu, aż Adam znajdzie kopię zapasową zdjęć z Meksyku 2012. */
img[src*=".pagespeed.ic."] { display: none; }

/* Nagłówki sekcji z numerem — retrofit: dotyczy WSZYSTKICH h2 bezpośrednio w treści WPISU lub STRONY
   (nie tylko is-style-sekcja), żeby efekt objął też ~380 wcześniej zmigrowanych wpisów i istniejące
   strony bez ręcznej edycji treści. */
.single-post .wp-block-post-content,
.page-template-default .wp-block-post-content { counter-reset: wysekcja; }
.single-post .wp-block-post-content > h2,
.single-post .wp-block-post-content > .wp-block-group > h2,
.page-template-default .wp-block-post-content > h2,
.page-template-default .wp-block-post-content > .wp-block-group > h2 {
	counter-increment: wysekcja; position: relative; padding-left: 3.25rem; min-height: 2.5rem; display: flex; align-items: center;
}
.single-post .wp-block-post-content > h2::before,
.single-post .wp-block-post-content > .wp-block-group > h2::before,
.page-template-default .wp-block-post-content > h2::before,
.page-template-default .wp-block-post-content > .wp-block-group > h2::before {
	content: counter(wysekcja); position: absolute; left: 0; top: 0; width: 2.5rem; height: 2.5rem; border-radius: 9999px;
	background: var(--wy-teal-dark); color: #fff; display: grid; place-items: center; font: 700 1.1rem/1 var(--wy-heading); flex: none;
}
/* h2 wewnątrz naszych własnych bloków na końcu wpisu (np. „Więcej z tej wyprawy”) nie powinny wyglądać jak sekcje */
.wy-podobne h2, .wy-komentarze h2, .wy-toc h2 { counter-increment: none; position: static; padding-left: 0; min-height: 0; display: block; }
.wy-podobne h2::before, .wy-komentarze h2::before, .wy-toc h2::before { content: none; }

/* Pasek statystyk wpisu (pod hero) */
.wy-staty { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: 1rem; margin-block: 1.75rem; }
.wy-staty__kafel { background: #fff; border: 1px solid var(--wy-border); border-radius: var(--wy-radius); padding: 1rem 1.1rem; text-align: center; }
.wy-staty__ikona { display: grid; place-items: center; margin: 0 auto .4rem; width: 2.25rem; height: 2.25rem; border-radius: 9999px; background: var(--wy-teal-light); color: var(--wy-teal-dark); }
.wy-staty__wartosc { margin: 0; font: 700 1.15rem/1.25 var(--wy-heading); color: var(--wy-charcoal); }
.wy-staty__etykieta { margin: .2rem 0 0; font-size: .78rem; color: var(--wy-slate); }

/* Układ z sidebarem: treść + spis treści */
.wy-uklad { display: grid; grid-template-columns: minmax(0, 1fr) 17rem; gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.wy-uklad__glowna { min-width: 0; }
/* width:100% jawnie (nie tylko stretch z grida) — gdy sidebar ma tylko JEDNO dziecko (samą mapę,
   bez spisu treści), Chromium potrafi błędnie policzyć jego "auto" szerokość jako prawie zerową
   (procentowa szerokość dziecka nie wlicza się do sizingu intrinsic), mimo że kolumna 17rem
   w .wy-uklad jest poprawnie zarezerwowana. Jawne 100% omija to liczenie od zera. */
.wy-uklad__sidebar { position: sticky; top: 1.5rem; display: grid; gap: 1.25rem; width: 100%; min-width: 0; }
.wy-uklad__sidebar > * { width: 100%; min-width: 0; }
@media (max-width: 782px) { .wy-uklad { grid-template-columns: 1fr; } .wy-uklad__sidebar { position: static; } }
/* Gdy spis treści i mapa się nie pokazują, blok wyjazdowo/panel-boczny (PHP) nie renderuje NAWET
   pustego <div> — .wy-uklad__sidebar w ogóle wtedy nie istnieje w DOM. Dzięki temu prosty (nie
   zagnieżdżony) :has() poprawnie wykrywa jego brak i zwija układ do jednej kolumny — druga,
   zarezerwowana kolumna 17rem nie zostaje pustym, martwym miejscem po prawej stronie treści.
   Uwaga: zagnieżdżone :has(:has(...)) jest nieprawidłowym selektorem CSS i zostaje po cichu
   zignorowane przez przeglądarkę — stąd to podejście przez sam brak elementu, nie przez :empty. */
.wy-uklad:not(:has(.wy-uklad__sidebar)) { grid-template-columns: 1fr; }

/* Nagłówek wpisu (jasny, ze zdjęciem w kontenerze — nie na całą szerokość) */
.wy-hero-zdjecie img { border-radius: 1.25rem; display: block; width: 100%; object-fit: cover; }
.wy-glowa .wp-block-post-title { font-size: clamp(2rem, 4.2vw, 3.25rem); letter-spacing: -.02em; line-height: 1.08; margin: 0; color: var(--wy-charcoal); }
.wy-glowa .wp-block-post-excerpt__excerpt { margin: 0; max-width: 46rem; }

/* Nagłówek wpisu: zdjęcie (2/3 szerokości) i mapa Progress Map (1/3) obok siebie w jednym rzędzie.
   Mapa nie ma własnej wysokości — dzięki align-items:stretch dopasowuje się do wysokości zdjęcia
   (które wynika z aspect-ratio 16/9), a jej wewnętrzny znacznik cspm_linear_gradient_bg (z wtyczki
   Progress Map, ma wpisany na sztywno inline style height:220px) jest nadpisywany na 100% !important. */
.wy-hero-wrap { display: flex; flex-wrap: nowrap; align-items: stretch; gap: clamp(.75rem, 2vw, 1.5rem); width: 100%; }
.wy-hero-zdjecie-kol { position: relative; flex: 2 1 0; min-width: 0; }
.wy-hero-zdjecie-kol > .wp-block-post-featured-image { width: 100%; max-width: none; }
.wy-hero-mapa { flex: 1 1 0; min-width: 0; border-radius: 1.25rem; }
.wy-hero-mapa .cspm_linear_gradient_bg { height: 100% !important; }
/* Wpis bez zapisanej trasy/lokalizacji: blok wyjazdowo/mapa nie renderuje nic, więc .wy-hero-mapa
   w ogóle nie istnieje w DOM — zdjęcie wraca wtedy na pełną szerokość rzędu. */
.wy-hero-wrap:not(:has(.wy-hero-mapa)) .wy-hero-zdjecie-kol { flex: 1 1 100%; }
@media (max-width: 782px) {
	.wy-hero-wrap { flex-direction: column; }
	/* W układzie kolumnowym flex-basis:0 (odziedziczone z .wy-hero-mapa) przy wysokości auto kontenera
	   liczy się jako 0 wysokości, a overflow:hidden na .wy-mapa-osadzona ucina zawartość do 0 zamiast
	   dopasować się do niej — sprawdzone. Trzeba więc jawnie ustawić stałą wysokość rzędu mapy na mobile. */
	.wy-hero-mapa { flex: 0 0 220px; }
}

/* Znacznik lokalizacji (Progress Map) — odznaka na zdjęciu głównym */
.wy-lokalizacja {
	position: absolute; left: 1.25rem; bottom: 1.25rem; z-index: 1;
	display: inline-flex; align-items: center; gap: .45rem;
	background: rgba(15, 23, 42, .72); backdrop-filter: blur(4px); color: #fff;
	padding: .5rem .9rem; border-radius: 9999px; font: 600 .82rem/1.3 var(--wy-heading);
	max-width: calc(100% - 2.5rem);
}
.wy-lokalizacja__ikona { flex: none; display: inline-flex; }
.wy-lokalizacja__tekst { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Mapa wpisu (Progress Map) — używana w rzędzie nagłówka (.wy-hero-mapa) i, jeśli kiedyś potrzeba, gdzie indziej.
   Uwaga: celowo BEZ jawnej wysokości tutaj — .wy-hero-mapa to element flex, który ma się dopasować
   do wysokości zdjęcia przez align-items:stretch (blocks.css, .wy-hero-wrap). Jawne height:100% na tym
   elemencie wyłączyłoby "stretch" i (bez ustalonej wysokości rodzica) zapadłoby się do 0 — sprawdzone. */
.wy-mapa-osadzona { width: 100%; border-radius: var(--wy-radius); overflow: hidden; border: 1px solid var(--wy-border); line-height: 0; }
.wy-mapa-osadzona img, .wy-mapa-osadzona iframe, .wy-mapa-osadzona > div { display: block; width: 100%; }

/* Kompaktowa nawigacja „poprzedni / następny dzień” w nagłówku wpisu */
.wy-dniownav { margin-top: .25rem; padding-top: .85rem; border-top: 1px solid var(--wy-border); }
.wy-dniownav .wp-block-post-navigation-link { font-weight: 600; }
.wy-dniownav a { color: var(--wy-teal-dark) !important; text-decoration: none !important; }
.wy-dniownav a:hover { text-decoration: underline !important; }
.wy-dniownav .post-navigation-link-previous a::before { content: "← "; }
.wy-dniownav .post-navigation-link-next a::after { content: " →"; }
/* jeśli nie ma ani poprzedniego, ani następnego wpisu w wyprawie, cały pasek znika */
.wy-dniownav:empty { display: none; }

/* Spis treści */
.wy-toc { background: #fff; border: 1px solid var(--wy-border); border-radius: var(--wy-radius); padding: 1.25rem 1.4rem; }
.wy-toc__tytul { margin: 0 0 .85rem; font: 700 .95rem/1.3 var(--wy-heading); color: var(--wy-charcoal); text-transform: uppercase; letter-spacing: .04em; }
.wy-toc ol { list-style: none; margin: 0; padding: 0; counter-reset: wytoc; display: grid; gap: .55rem; }
.wy-toc li { counter-increment: wytoc; }
.wy-toc a {
	display: flex; gap: .6rem; align-items: baseline; text-decoration: none !important; color: var(--wy-slate); font-size: .88rem; line-height: 1.4;
}
.wy-toc a::before {
	content: counter(wytoc); flex: none; width: 1.4rem; height: 1.4rem; border-radius: 9999px; background: var(--wy-mist);
	color: var(--wy-teal-dark); display: inline-grid; place-items: center; font: 700 .72rem/1 var(--wy-heading);
}
.wy-toc a:hover { color: var(--wy-teal-dark); }

/* Galerie */
.wp-block-post-content .wp-block-gallery { border-radius: var(--wy-radius); overflow: hidden; }
.wp-block-post-content .wp-block-gallery .wp-block-image img { border-radius: .6rem; }
.wp-block-post-content .wp-block-image figcaption,
.wp-block-post-content .wp-block-gallery figcaption { font-size: .82rem; color: var(--wy-slate); text-align: center; }

/* Tabele (np. porównania / negocjacje cen) */
.wp-block-post-content .wp-block-table { margin-block: 1.75rem; }
.wp-block-post-content .wp-block-table table { border-collapse: separate; border-spacing: 0; width: 100%; border: 1px solid var(--wy-border); border-radius: var(--wy-radius); overflow: hidden; }
.wp-block-post-content .wp-block-table th, .wp-block-post-content .wp-block-table td { padding: .75rem 1rem; border-bottom: 1px solid var(--wy-border); text-align: left; }
.wp-block-post-content .wp-block-table thead th { background: var(--wy-charcoal); color: #fff; font-family: var(--wy-heading); font-weight: 600; }
.wp-block-post-content .wp-block-table tbody tr:last-child td { border-bottom: 0; }
.wp-block-post-content .wp-block-table tbody tr:nth-child(even) { background: var(--wy-mist); }
.wp-block-post-content .is-style-stripes .wp-block-table table { border: 1px solid var(--wy-border); }

/* Podobne wyprawy */
.wy-podobne { margin-block: 2.5rem; }
.wy-podobne__tytul { margin: 0 0 1.25rem; }
.wy-podobne__siatka { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1.25rem; }
.wy-podobne__karta { display: block; text-decoration: none !important; color: inherit; border-radius: var(--wy-radius); overflow: hidden; background: #fff; border: 1px solid var(--wy-border); transition: transform .15s ease, box-shadow .15s ease; }
.wy-podobne__karta:hover { transform: translateY(-3px); box-shadow: 0 12px 24px -12px rgba(15, 23, 42, .18); }
.wy-podobne__foto { position: relative; aspect-ratio: 4/3; overflow: hidden; background: linear-gradient(135deg, var(--wy-mist), var(--wy-teal-light)); }
.wy-podobne__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wy-podobne__znacznik { position: absolute; left: .75rem; bottom: .75rem; }
.wy-podobne__karta-tytul { margin: 0; padding: .9rem 1rem; font: 600 1rem/1.4 var(--wy-heading); color: var(--wy-charcoal); }
