/*
Theme Name: PGK
Theme URI: https://krotkofalowcy.pulawy.pl/
Author: Puławska Grupa Krótkofalowców
Description: Własny motyw blokowy Puławskiej Grupy Krótkofalowców. Kolory i znak z logo PGK: trzy łuki fali i sygnał — · — (litera K w alfabecie Morse'a: „nadawaj”).
Version: 0.2.29
Requires at least: 6.6
Requires PHP: 8.1
License: GPL-2.0-or-later
Text Domain: pgk
*/

/* ---------- Drobne ustawienia ogólne ---------- */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
img { height: auto; }
/* Długie ciągi bez miejsca na złamanie (hashtagi z twardą spacją, adresy) nie rozpychają strony na telefonie */
.wp-site-blocks { overflow-wrap: break-word; }
:where(.wp-site-blocks) :focus-visible { outline: 3px solid var(--wp--preset--color--zolc); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { animation: none !important; transition: none !important; } }

/* ---------- Znak Morse'a K: — · — ---------- */
.pgk-k { display: inline-flex; align-items: center; gap: 5px; color: var(--wp--preset--color--czerwien); }
.pgk-k i { display: block; height: 5px; border-radius: 3px; background: currentColor; }
.pgk-k i:nth-child(odd) { width: 18px; }
.pgk-k i:nth-child(2) { width: 5px; }
/* Styl nagłówka „z sygnałem K” — wybierany w edytorze (Style bloku) */
.wp-block-heading.is-style-pgk-morse::before {
	content: ""; display: block; width: 51px; height: 5px; margin-bottom: .6em;
	background:
		linear-gradient(currentColor, currentColor) 0 0 / 18px 5px no-repeat,
		linear-gradient(currentColor, currentColor) 23px 0 / 5px 5px no-repeat,
		linear-gradient(currentColor, currentColor) 33px 0 / 18px 5px no-repeat;
	color: var(--wp--preset--color--czerwien); border-radius: 3px;
}

/* ---------- Nagłówek strony ---------- */
/* Bez backdrop-filter: tworzy on blok zawierający dla elementów position:fixed, przez co menu
   na telefonie otwierało się w pasku 64 px nagłówka zamiast na całym ekranie. */
.pgk-naglowek { position: sticky; top: 0; z-index: 50; background: #fff; border-bottom: 1px solid var(--wp--preset--color--linia); }
.admin-bar .pgk-naglowek { top: var(--wp-admin--admin-bar--height, 32px); }
.pgk-marka { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--wp--preset--color--atrament); }
.pgk-marka img { height: 40px; width: auto; }
.pgk-marka b { display: block; font: 600 1rem/1.1 var(--wp--preset--font-family--poppins); }
.pgk-marka small { display: block; font: 500 .8rem/1.2 var(--wp--preset--font-family--poppins); color: var(--wp--preset--color--szary); }
.pgk-naglowek .wp-block-navigation a { text-decoration: none; }
.pgk-naglowek .wp-block-navigation .wp-block-navigation-item__content { padding: .5rem .6rem; border-radius: 10px; }
.pgk-naglowek .wp-block-navigation .wp-block-navigation-item__content:hover { background: color-mix(in srgb, var(--wp--preset--color--blekit) 10%, transparent); color: var(--wp--preset--color--blekit-ciemny); }
.pgk-naglowek .wp-block-navigation__submenu-container { border-radius: 12px; border: 1px solid var(--wp--preset--color--linia) !important; box-shadow: var(--wp--preset--shadow--karta); padding: .4rem !important; }
@media (max-width: 780px) { .pgk-naglowek .pgk-dolacz { display: none; } }

/* ---------- Pas główny (hero) ---------- */
.pgk-hero { position: relative; overflow: hidden; color: var(--wp--preset--color--na-ciemnym); background: var(--wp--preset--color--granat); }
.pgk-hero::before { content: ""; position: absolute; inset: 0; background: url(assets/img/hero.webp) center 40% / cover no-repeat; opacity: .9; }
.pgk-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(11,26,51,.96) 22%, rgba(11,26,51,.7) 55%, rgba(11,26,51,.2) 100%); }
.pgk-hero > * { position: relative; z-index: 1; }
.pgk-hero h1 em { font-style: normal; color: var(--wp--preset--color--zolc); }
.pgk-hero .pgk-lead { color: #d6dce7; max-width: 34em; }
.pgk-eyebrow { display: inline-flex; align-items: center; gap: 10px; font: 600 .8rem var(--wp--preset--font-family--poppins); letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--zolc); }
.pgk-eyebrow .pgk-k { color: inherit; }
.pgk-hero .is-style-outline .wp-block-button__link { color: var(--wp--preset--color--na-ciemnym); border: 2px solid currentColor; background: transparent; }
@media (max-width: 781px) {
	.pgk-hero::before { background: url(assets/img/hero.webp) 55% 0 / auto 300px no-repeat; opacity: 1; }
	.pgk-hero::after { background: linear-gradient(180deg, rgba(11,26,51,.1) 0%, rgba(11,26,51,.35) 14%, var(--wp--preset--color--granat) 30%); }
	.pgk-hero > .wp-block-columns { padding-top: 220px !important; }
}

/* ---------- Karta „Najbliższe spotkanie” ---------- */
.pgk-antena { background: rgba(11,26,51,.35); border: 1px solid rgba(255,255,255,.18); border-radius: var(--wp--custom--promien); padding: 24px; backdrop-filter: blur(6px); }
.pgk-antena__etykieta { display: flex; align-items: center; gap: 10px; font: 600 .78rem var(--wp--preset--font-family--poppins); letter-spacing: .12em; text-transform: uppercase; color: #d6dce7; }
.pgk-antena__kropka { width: 10px; height: 10px; border-radius: 50%; background: var(--wp--preset--color--zolc); animation: pgk-puls 2s infinite; }
.pgk-antena.na-zywo .pgk-antena__kropka { background: #ff4d4d; }
@keyframes pgk-puls { 0% { box-shadow: 0 0 0 0 rgba(242,194,0,.6); } 70% { box-shadow: 0 0 0 10px rgba(0,0,0,0); } 100% { box-shadow: 0 0 0 0 rgba(0,0,0,0); } }
.pgk-antena__tytul { font: 600 1.45rem/1.2 var(--wp--preset--font-family--poppins); margin: 12px 0 4px; color: #fff; }
.pgk-antena__kiedy { font: 600 1.05rem var(--wp--preset--font-family--poppins); color: var(--wp--preset--color--zolc); }
.pgk-antena ul { list-style: none; margin: 18px 0 0; padding: 16px 0 0; border-top: 1px solid rgba(255,255,255,.14); display: grid; gap: 12px; }
.pgk-antena li { display: grid; grid-template-columns: 92px 1fr; gap: 12px; font-size: .98rem; color: #dde3ee; }
.pgk-antena li b { color: #fff; font-weight: 600; }
.pgk-antena__gdzie { margin: 16px 0 0; font-size: .95rem; color: #dde3ee; }
.pgk-antena__gdzie a { color: #fff; }

/* ---------- Karty wpisów (pętla zapytania) ---------- */
.pgk-karty .wp-block-post { display: flex; }
.pgk-karta { background: var(--wp--preset--color--biel); border-radius: var(--wp--custom--promien); box-shadow: var(--wp--preset--shadow--karta); overflow: hidden; border-top: 4px solid var(--wp--preset--color--blekit); display: flex; flex-direction: column; width: 100%; transition: transform .15s; }
.pgk-karta:hover { transform: translateY(-3px); }
.pgk-karta .wp-block-post-featured-image { margin: 0; border-radius: 0; }
.pgk-karta .wp-block-post-featured-image img { aspect-ratio: 16 / 10; object-fit: cover; width: 100%; border-radius: 0; }
.pgk-karta__tresc { padding: 18px 20px 22px; }
.pgk-karta .wp-block-post-title { font-size: 1.12rem; font-weight: 600; margin: 0; }
.pgk-karta .wp-block-post-title a { color: var(--wp--preset--color--atrament); text-decoration: none; }
.pgk-karta .wp-block-post-title a:hover { color: var(--wp--preset--color--blekit); }
.pgk-karta .wp-block-post-excerpt { color: var(--wp--preset--color--szary); font-size: .98rem; margin: 0; }
.pgk-karta .wp-block-post-excerpt__more-link { display: none; }
.pgk-karta .wp-block-post-excerpt__excerpt { display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 0; }
/* Na telefonie na stronie głównej 3 najnowsze wpisy zamiast 6 */
@media (max-width: 600px) { .pgk-karty--start .wp-block-post:nth-child(n+4) { display: none; } }
.pgk-meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: .9rem; color: var(--wp--preset--color--szary); }
.pgk-meta .wp-block-post-terms a { font: 600 .72rem var(--wp--preset--font-family--poppins); letter-spacing: .06em; text-transform: uppercase; text-decoration: none; padding: 3px 9px; border-radius: 999px; background: color-mix(in srgb, var(--wp--preset--color--blekit) 14%, transparent); color: var(--wp--preset--color--atrament); }
.pgk-meta .wp-block-post-terms__separator { display: none; }
/* Kolor paska karty według kategorii */
.category-akcja-dyplomowa .pgk-karta { border-top-color: var(--wp--preset--color--czerwien); }
.category-spotkania .pgk-karta { border-top-color: var(--wp--preset--color--zolc); }
.category-wydarzenia .pgk-karta { border-top-color: #2f9e6a; }
.category-meshcore .pgk-karta { border-top-color: var(--wp--preset--color--granat-2); }

/* ---------- Kafle działalności ---------- */
.pgk-kafle { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.pgk-kafle > * { margin-block: 0 !important; }  /* odstęp daje gap; margines układu WP przesuwał kafle od drugiego */
@media (max-width: 1100px) { .pgk-kafle { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pgk-kafle { grid-template-columns: 1fr; } }
.pgk-kafel { position: relative; padding: 22px 22px 22px 86px !important; border: 1px solid var(--wp--preset--color--linia); border-radius: var(--wp--custom--promien); background: var(--wp--preset--color--papier); transition: border-color .15s; }
.pgk-kafel:hover { border-color: var(--wp--preset--color--blekit); }
.pgk-kafel h3 { font-size: 1.05rem; margin: 0 0 4px; }
.pgk-kafel h3 a { color: inherit; text-decoration: none; }
.pgk-kafel h3 a::after { content: ""; position: absolute; inset: 0; }  /* cały kafel klikalny */
.pgk-kafel p { margin: 0; color: var(--wp--preset--color--szary); font-size: .96rem; }
@media (min-width: 1101px) { .pgk-kafel { padding: 86px 22px 22px !important; } }  /* 4 kolumny: ikona nad tekstem */
.pgk-kafel::before { content: ""; position: absolute; left: 22px; top: 22px; width: 48px; height: 48px; border-radius: 12px; background: color-mix(in srgb, var(--wp--preset--color--blekit) 12%, transparent); }
.pgk-kafel::after { content: ""; position: absolute; left: 34px; top: 34px; width: 24px; height: 24px; background: var(--wp--preset--color--blekit); -webkit-mask: var(--ikona) center / contain no-repeat; mask: var(--ikona) center / contain no-repeat; }
.pgk-ikona-dyplom   { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='6'/%3E%3Cpath d='M8.5 14 7 22l5-3 5 3-1.5-8'/%3E%3C/svg%3E"); }
.pgk-ikona-pogoda   { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.5 19H8a5 5 0 1 1 .9-9.9A6 6 0 0 1 20 11a4 4 0 0 1-2.5 8Z'/%3E%3C/svg%3E"); }
.pgk-ikona-siec     { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='5' cy='6' r='2'/%3E%3Ccircle cx='19' cy='6' r='2'/%3E%3Ccircle cx='12' cy='18' r='2'/%3E%3Ccircle cx='12' cy='10' r='2'/%3E%3Cpath d='M6.7 7 10.3 9M17.3 7 13.7 9M12 12v4'/%3E%3C/svg%3E"); }
.pgk-ikona-mapa     { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='m3 19 6-9 4 6 3-4 5 7Z'/%3E%3Ccircle cx='17' cy='6' r='2'/%3E%3C/svg%3E"); }
.pgk-ikona-satelita { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg transform='rotate(-45 12 12)'%3E%3Crect x='9.5' y='9' width='5' height='6' rx='1'/%3E%3Crect x='1' y='9.5' width='6.5' height='5' rx='.5'/%3E%3Crect x='16.5' y='9.5' width='6.5' height='5' rx='.5'/%3E%3Cpath d='M7.5 12h2M14.5 12h2M4.25 9.5v5M19.75 9.5v5'/%3E%3Cpath d='M12 9V6.5'/%3E%3Cpath d='M9.8 5a2.2 2.2 0 0 0 4.4 0Z'/%3E%3C/g%3E%3C/svg%3E"); }
.pgk-ikona-ksiazka  { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M4 5.5A2.5 2.5 0 0 1 6.5 3H20v15H6.5A2.5 2.5 0 0 0 4 20.5Z'/%3E%3Cpath d='M4 20.5A2.5 2.5 0 0 0 6.5 23H20v-5'/%3E%3C/svg%3E"); }
.pgk-ikona-klucz    { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='15.5' width='20' height='4.5' rx='1.2'/%3E%3Cpath d='M8 15.5V12'/%3E%3Cpath d='m3.5 13 13.5-3.4'/%3E%3Ccircle cx='19' cy='9' r='2.6'/%3E%3C/svg%3E"); }
.pgk-ikona-kajak    { --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 14c5 3.4 16 3.4 21 0-5-2.6-16-2.6-21 0Z'/%3E%3Ccircle cx='12' cy='8.3' r='1.9'/%3E%3Cpath d='M5.5 4.5 18.5 20'/%3E%3Cpath d='m4 2.6 2.9-.6.2 3.3Z'/%3E%3Cpath d='m20 21.9-2.9.6-.2-3.3Z'/%3E%3C/svg%3E"); }
.pgk-znak { font-family: var(--wp--preset--font-family--mono); font-size: .82rem; font-weight: 600; color: var(--wp--preset--color--czerwien); }

/* ---------- Kroki „Jak zacząć” ---------- */
.pgk-kroki { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; counter-reset: krok; }
.pgk-kroki li { counter-increment: krok; display: grid; grid-template-columns: 52px 1fr; gap: 16px; align-items: start; padding: 18px 20px; background: var(--wp--preset--color--biel); border-radius: var(--wp--custom--promien); box-shadow: var(--wp--preset--shadow--karta); }
.pgk-kroki li::before { content: counter(krok); display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--wp--preset--color--granat); color: var(--wp--preset--color--zolc); font: 700 1.3rem var(--wp--preset--font-family--poppins); }
.pgk-kroki strong { display: block; font: 600 1.05rem var(--wp--preset--font-family--poppins); margin: 4px 0 2px; }
.pgk-kroki span { color: var(--wp--preset--color--szary); }

/* ---------- Pas wsparcia ---------- */
.pgk-wsparcie { color: #1b1500; }
.pgk-wsparcie .wp-block-button__link { background: #1b1500; color: var(--wp--preset--color--zolc); }
.pgk-wsparcie .is-style-outline .wp-block-button__link { background: transparent; color: #1b1500; border: 2px solid #1b1500; }

/* ---------- Stopka ---------- */
.pgk-stopka { color: #b9c3d6; font-size: .98rem; }
.pgk-stopka a { color: var(--wp--preset--color--na-ciemnym); text-decoration: none; }
.pgk-stopka a:hover { text-decoration: underline; }
.pgk-stopka h2 { font: 600 .8rem var(--wp--preset--font-family--poppins); letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--na-ciemnym); margin: 0 0 12px; }
.pgk-stopka ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.pgk-stopka .pgk-marka { color: var(--wp--preset--color--na-ciemnym); }
.pgk-stopka .pgk-marka img { height: 44px; background: #fff; border-radius: 10px; padding: 5px; }
.pgk-stopka .pgk-k { color: var(--wp--preset--color--zolc); }
.pgk-stopka__dol { border-top: 1px solid rgba(255,255,255,.12); font-size: .9rem; }

/* ---------- Wpis ---------- */
.single .wp-block-post-featured-image img { border-radius: var(--wp--custom--promien); }
.pgk-wpis-meta { font-size: .95rem; color: var(--wp--preset--color--szary); }
.wp-block-post-content a { text-underline-offset: .15em; }
.wp-block-query-pagination a, .wp-block-query-pagination .current { padding: .35rem .7rem; border-radius: 8px; text-decoration: none; }
.wp-block-query-pagination .current { background: var(--wp--preset--color--granat); color: #fff; }

/* ---------- Strony: wstęp i baner ---------- */
/* Na stronach wszystko zaczyna się od jednej lewej krawędzi (tytuł, zdjęcie, nagłówki, siatki);
   zwykły tekst zachowuje wygodną szerokość do czytania. */
.pgk-tresc-strony > :is(p, ul, ol, blockquote, .wp-block-list, .wp-block-quote, .wp-block-audio) { max-width: 48rem; }
.wp-block-audio figcaption { text-align: left; }
.pgk-wstep { color: var(--wp--preset--color--atrament); max-width: 42em; }
.page .wp-block-post-featured-image img { aspect-ratio: 3 / 1; object-fit: cover; width: 100%; }
@media (max-width: 600px) { .page .wp-block-post-featured-image img { aspect-ratio: 16 / 9; } }
.pgk-mono { font-family: var(--wp--preset--font-family--mono); font-size: .95em; }

/* ---------- Karty osób (Stowarzyszenie) ---------- */
.pgk-osoby { gap: 18px !important; margin-bottom: var(--wp--preset--spacing--50); }
.pgk-osoba { background: var(--wp--preset--color--biel); border-radius: var(--wp--custom--promien); box-shadow: var(--wp--preset--shadow--karta); overflow: hidden; padding-bottom: 14px; }
.pgk-osoba > * { margin-block: 0 !important; }
.pgk-osoba figure { margin: 0 0 12px !important; }
.pgk-osoba figure img { border-radius: 0; width: 100%; }
.pgk-osoba p { padding-inline: 14px; }
.pgk-osoba__znak { font-family: var(--wp--preset--font-family--mono); font-weight: 700; font-size: .95rem; color: var(--wp--preset--color--czerwien); letter-spacing: .03em; }
.pgk-osoba__imie { font: 600 1rem/1.3 var(--wp--preset--font-family--poppins); }
.pgk-osoba__rola { font-size: .88rem; color: var(--wp--preset--color--szary); }

/* ---------- O nas: gdzie nas spotkać ---------- */
.pgk-miejsca { gap: 18px !important; margin-bottom: var(--wp--preset--spacing--40); }
.pgk-miejsce { background: var(--wp--preset--color--biel); border: 1px solid var(--wp--preset--color--linia); border-top: 4px solid var(--wp--preset--color--blekit); border-radius: var(--wp--custom--promien); padding: 18px 20px; }
.pgk-miejsce h3 { margin: 0 0 6px; font-size: 1.05rem; }
.pgk-miejsce p { margin: 0; color: var(--wp--preset--color--szary); }

/* ---------- Dane stowarzyszenia i zaproszenie ---------- */
.pgk-dane { gap: 18px !important; }
.pgk-dane__pole { background: var(--wp--preset--color--biel); border-radius: var(--wp--custom--promien); box-shadow: var(--wp--preset--shadow--karta); padding: 18px 20px; }
.pgk-dane__pole h3 { margin: 0 0 6px; font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--szary); }
.pgk-dane__pole p { margin: 0; }
.pgk-zaproszenie { margin-top: var(--wp--preset--spacing--50); padding: 22px 24px; border-radius: var(--wp--custom--promien); background: color-mix(in srgb, var(--wp--preset--color--zolc) 22%, var(--wp--preset--color--papier)); }
.pgk-zaproszenie > * { margin-block: 0 0 .75rem; }

/* ---------- Kontakt ---------- */
.pgk-kontakt-dane { background: var(--wp--preset--color--granat); color: #c9d2e3; border-radius: var(--wp--custom--promien); padding: 24px; }
.pgk-kontakt-dane h2 { color: #fff; font-size: 1.2rem; margin-top: 0; }
.pgk-kontakt-dane strong { color: #fff; font-family: var(--wp--preset--font-family--poppins); font-weight: 600; }
.pgk-kontakt-dane a { color: var(--wp--preset--color--zolc); }
/* Formularz Spectry w kolorach motywu */
.pgk-formularz .uagb-forms-main-form .uagb-forms-input { border: 1px solid var(--wp--preset--color--linia) !important; border-radius: 10px !important; background: var(--wp--preset--color--biel) !important; padding: 12px 14px !important; font: inherit !important; }
.pgk-formularz .uagb-forms-main-form .uagb-forms-input:focus { border-color: var(--wp--preset--color--blekit) !important; outline: 3px solid color-mix(in srgb, var(--wp--preset--color--blekit) 25%, transparent) !important; }
.pgk-formularz .uagb-forms-input-label { font: 600 .92rem var(--wp--preset--font-family--poppins) !important; color: var(--wp--preset--color--atrament) !important; }
.pgk-formularz .uagb-forms-main-submit-button { background: var(--wp--preset--color--zolc) !important; color: #1b1500 !important; border: 0 !important; border-radius: 999px !important; padding: 12px 24px !important; font: 600 .95rem var(--wp--preset--font-family--poppins) !important; cursor: pointer; }
.pgk-formularz .uagb-forms-main-submit-button:hover { background: #ffd633 !important; }

/* ---------- Linki ---------- */
.pgk-linki { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: 14px; }
.pgk-linki li { background: var(--wp--preset--color--biel); border: 1px solid var(--wp--preset--color--linia); border-radius: var(--wp--custom--promien); padding: 16px 18px; position: relative; transition: border-color .15s; }
.pgk-linki li:hover { border-color: var(--wp--preset--color--blekit); }
.pgk-linki a { font: 600 1rem/1.35 var(--wp--preset--font-family--poppins); text-decoration: none; color: var(--wp--preset--color--atrament); }
.pgk-linki a::after { content: ""; position: absolute; inset: 0; }
.pgk-domena { display: block; margin-top: 4px; font-family: var(--wp--preset--font-family--mono); font-size: .82rem; color: var(--wp--preset--color--szary); }

/* ---------- Kafle: kolorowy akcent i uniesienie po najechaniu (jak karty wpisów) ---------- */
:is(.pgk-kafel, .pgk-osoba, .pgk-miejsce, .pgk-dane__pole, .pgk-linki li) {
	border-top: 4px solid var(--akcent, var(--wp--preset--color--blekit)) !important;
	transition: transform .15s, box-shadow .15s, border-color .15s;
}
:is(.pgk-kafel, .pgk-osoba, .pgk-miejsce, .pgk-dane__pole, .pgk-linki li, .pgk-karta):hover {
	transform: translateY(-3px);
	box-shadow: 0 2px 4px rgba(14,23,38,.08), 0 14px 32px rgba(14,23,38,.12);
}
/* kolory łuków z logo, na zmianę */
:is(.pgk-kafel, .pgk-miejsce, .pgk-dane__pole, .pgk-linki li):nth-child(4n+1) { --akcent: var(--wp--preset--color--czerwien); }
:is(.pgk-kafel, .pgk-miejsce, .pgk-dane__pole, .pgk-linki li):nth-child(4n+2) { --akcent: var(--wp--preset--color--zolc); }
:is(.pgk-kafel, .pgk-miejsce, .pgk-dane__pole, .pgk-linki li):nth-child(4n+3) { --akcent: var(--wp--preset--color--blekit); }
:is(.pgk-kafel, .pgk-miejsce, .pgk-dane__pole, .pgk-linki li):nth-child(4n+4) { --akcent: var(--wp--preset--color--granat-2); }
/* osoby: kolor według grupy */
.pgk-osoby--zarzad     .pgk-osoba { --akcent: var(--wp--preset--color--czerwien); }
.pgk-osoby--komisja    .pgk-osoba { --akcent: var(--wp--preset--color--blekit); }
.pgk-osoby--czlonkowie .pgk-osoba { --akcent: var(--wp--preset--color--zolc); }
@media (prefers-reduced-motion: reduce) { :is(.pgk-kafel, .pgk-osoba, .pgk-miejsce, .pgk-dane__pole, .pgk-linki li, .pgk-karta):hover { transform: none; } }

/* ---------- Zdjęcie nagłówkowe stron i wpisów: cień jak kafle + pasek w kolorach łuków z logo ---------- */
:is(.page, .single) main > .wp-block-post-featured-image {
	position: relative; overflow: hidden;
	border-radius: var(--wp--custom--promien);
	box-shadow: var(--wp--preset--shadow--karta);
}
:is(.page, .single) main > .wp-block-post-featured-image img { border-radius: 0; display: block; }
:is(.page, .single) main > .wp-block-post-featured-image::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 6px;
	background: linear-gradient(90deg,
		var(--wp--preset--color--czerwien) 0 33.34%,
		var(--wp--preset--color--zolc) 33.34% 66.67%,
		var(--wp--preset--color--blekit) 66.67% 100%);
}

/* ---------- Zdjęcia w treści wpisów i stron: „odbitka” (białe obramowanie i cień, jak karta QSL) ---------- */
/* Biały brzeg rysowany cieniem na zewnątrz zdjęcia (NIE paddingiem): rozmiar i proporcje obrazka
   zostają prawdziwe, więc powiększenie po kliknięciu liczy się poprawnie i mieści na telefonie. */
.wp-block-post-content > .wp-block-image:not(.is-style-rounded) img,
.wp-block-post-content > figure.wp-block-image:not(.is-style-rounded) img {
	border-radius: 3px;
	box-shadow: 0 0 0 8px #fff, 0 2px 3px 8px rgba(14,23,38,.06), 0 12px 28px 8px rgba(14,23,38,.12);
}
.wp-block-post-content > .wp-block-image:not(.is-style-rounded) { margin-block: 2rem; }
.wp-block-post-content .wp-element-caption {
	margin-top: .6rem; text-align: center; font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--szary); font-style: italic;
}
/* Zdjęcie, które da się powiększyć: kursor z lupką */
/* Własna lupka: systemowy kursor zoom-in nie w każdym motywie kursorów istnieje
   (np. whiteglass na Linuksie go nie ma — wtedy widać zwykłą strzałkę). */
.wp-lightbox-container img { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7.5' stroke='%230b1a33' stroke-width='5'/%3E%3Cpath d='M16.5 16.5 24 24' stroke='%230b1a33' stroke-width='6'/%3E%3Ccircle cx='11' cy='11' r='7.5' fill='%23fff' fill-opacity='.35' stroke='%23fff' stroke-width='2.5'/%3E%3Cpath d='M16.5 16.5 24 24' stroke='%23fff' stroke-width='3'/%3E%3Cpath d='M11 7.5v7M7.5 11h7' stroke='%230b1a33' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E") 11 11, zoom-in; }
.wp-lightbox-overlay .scrim { background-color: rgba(11,26,51,.94) !important; }

/* ---------- Zdjęcie otwierające wpis: ramka 16:9, zdjęcie w całości, tło z rozmytej kopii ---------- */
.single main > .wp-block-post-featured-image.pgk-naglowek-wpisu { aspect-ratio: 16 / 9; background: var(--wp--preset--color--granat); isolation: isolate; }
.pgk-naglowek-wpisu::before {
	content: ""; position: absolute; inset: -40px; z-index: -1;
	background: var(--pgk-tlo, none) center / cover no-repeat;
	filter: blur(28px) saturate(1.15) brightness(.85);
}
.single main > .pgk-naglowek-wpisu img { width: 100%; height: 100% !important; object-fit: contain; background: transparent; }

/* ---------- Starszy / nowszy wpis: karty ---------- */
.pgk-sasiedzi { display: grid !important; grid-template-columns: 1fr 1fr; gap: 18px; }
.pgk-sasiedzi > * { margin-block: 0 !important; }  /* odstęp daje siatka, nie domyślny margines bloków */
.pgk-sasiad--nowszy { grid-column: 2; }
@media (max-width: 700px) { .pgk-sasiedzi { grid-template-columns: 1fr; } .pgk-sasiad--nowszy { grid-column: 1; } }
.pgk-sasiad {
	display: grid; grid-template-columns: 120px 1fr; gap: 16px; align-items: center;
	padding: 12px; background: var(--wp--preset--color--biel); border-radius: var(--wp--custom--promien);
	box-shadow: var(--wp--preset--shadow--karta); text-decoration: none; color: var(--wp--preset--color--atrament);
	border-top: 4px solid var(--akcent, var(--wp--preset--color--blekit)); transition: transform .15s, box-shadow .15s;
}
.pgk-sasiad--nowszy { grid-template-columns: 1fr 120px; text-align: right; }
.pgk-sasiad--nowszy .pgk-sasiad__zdjecie { order: 2; }
.pgk-sasiad:hover { transform: translateY(-3px); box-shadow: 0 2px 4px rgba(14,23,38,.08), 0 14px 32px rgba(14,23,38,.12); }
.pgk-sasiad__zdjecie { width: 120px; height: 80px; object-fit: cover; border-radius: 10px; display: block; }
.pgk-sasiad__tekst { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.pgk-sasiad__etykieta { font: 600 .74rem var(--wp--preset--font-family--poppins); letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--szary); }
.pgk-sasiad__tytul { font: 600 1rem/1.3 var(--wp--preset--font-family--poppins); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pgk-sasiad:hover .pgk-sasiad__tytul { color: var(--wp--preset--color--blekit); }
.pgk-sasiad__data { font-family: var(--wp--preset--font-family--mono); font-size: .8rem; color: var(--wp--preset--color--szary); }
.pgk-sasiad.kat-akcja-dyplomowa { --akcent: var(--wp--preset--color--czerwien); }
.pgk-sasiad.kat-spotkania       { --akcent: var(--wp--preset--color--zolc); }
.pgk-sasiad.kat-wydarzenia      { --akcent: #2f9e6a; }
.pgk-sasiad.kat-meshcore        { --akcent: var(--wp--preset--color--granat-2); }
@media (prefers-reduced-motion: reduce) { .pgk-sasiad:hover { transform: none; } }

/* ---------- Menu na telefonie (otwarte) ---------- */
.pgk-naglowek .wp-block-navigation__responsive-container.is-menu-open { padding: 16px 20px 28px; }
.pgk-naglowek .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 56px; align-items: stretch !important; }
.pgk-naglowek .is-menu-open .wp-block-navigation__container { gap: 0 !important; width: 100%; align-items: stretch !important; }
.pgk-naglowek .is-menu-open .wp-block-navigation-item { width: 100%; align-items: stretch !important; border-bottom: 1px solid var(--wp--preset--color--linia); }
.pgk-naglowek .is-menu-open .wp-block-navigation-item__content { display: block; width: 100%; padding: 14px 4px !important; font-size: 1.15rem; font-weight: 600; border-radius: 0; }
.pgk-naglowek .is-menu-open .wp-block-navigation__submenu-container { border: 0 !important; box-shadow: none !important; padding: 0 0 10px 14px !important; width: 100%; }
.pgk-naglowek .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { border-bottom: 0; }
.pgk-naglowek .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 9px 4px !important; font-size: 1rem; font-weight: 500; color: var(--wp--preset--color--szary); }
.pgk-naglowek .is-menu-open .wp-block-navigation__submenu-icon { display: none; }
.pgk-naglowek .wp-block-navigation__responsive-container-close { top: 18px; right: 18px; }
.pgk-naglowek .wp-block-navigation__responsive-container-close svg,
.pgk-naglowek .wp-block-navigation__responsive-container-open svg { width: 30px; height: 30px; }

/* Wyśrodkowane zdjęcia nie mogą być szersze od kolumny — także gdy plik się nie wczyta
   (WordPress układa je jako tabelę, która rośnie do szerokości z atrybutu, np. 1024 px). */
/* min(): nie szerzej niż ekran ORAZ nie szerzej niż kolumna tekstu (sam max-width:100% nadpisywał limit
   kolumny z układu WordPressa i zdjęcia na komputerze rosły do 1024 px przy kolumnie 760 px). */
.wp-block-post-content .wp-block-image.aligncenter { display: block; width: fit-content; max-width: min(100%, var(--wp--style--global--content-size, 760px)); margin-inline: auto; }
.wp-block-post-content .wp-block-image.aligncenter img { max-width: 100%; }

/* Nic w treści nie może być szersze od kolumny: zdjęcia z bloków Spectry o stałej szerokości,
   osadzone ramki (np. posty z Facebooka o szerokości 500 px), filmy, zdjęcia w galeriach
   także wtedy, gdy plik się nie wczyta. */
.wp-block-post-content :is(img, video, iframe, embed, object) { max-width: 100%; }
.wp-block-post-content :is(img, video) { height: auto; }
.wp-block-post-content .wp-block-uagb-image :is(figure, img) { max-width: 100%; }
.wp-block-post-content .wp-block-gallery { max-width: 100%; }
.wp-block-post-content .wp-block-gallery:not(.alignwide, .alignfull) { max-width: min(100%, var(--wp--style--global--content-size, 760px)); }  /* jak zdjęcia: nie szersza niż tekst */
.wp-block-post-content .wp-block-gallery .wp-block-image { min-width: 0; }

/* ---------- Galeria z podpisami POD zdjęciem (klasa podpisy-pod, wpis przeniesiony z Elementora) ----------
 * Przeniesione z „Dodatkowego CSS” Astry — CSS Astry nie działa po zmianie motywu. */
.wp-block-gallery.podpisy-pod.has-nested-images figure.wp-block-image { flex-direction: column; }
.wp-block-gallery.podpisy-pod.has-nested-images figure.wp-block-image:has(figcaption)::before { display: none; }
.wp-block-gallery.podpisy-pod.has-nested-images figure.wp-block-image figcaption { position: static; background: none; color: inherit; text-shadow: none; max-height: none; overflow: visible; margin: 0; padding: .6em 1em; text-align: center; font-weight: 600; font-size: .9em; border: 1px solid var(--wp--preset--color--linia); border-top: 0; }
.wp-block-gallery.podpisy-pod.has-nested-images figure.wp-block-image img { height: auto; }

/* ---------- Ścieżka nawigacyjna nad tytułem wpisu i na listach tagów/kategorii; powrót pod wpisem ---------- */
.pgk-okruszki ol { list-style: none; margin: 0 0 .6rem; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 2px 0; font: 500 .88rem/1.5 var(--wp--preset--font-family--poppins); }
.pgk-okruszki li { display: flex; align-items: center; min-width: 0; }
.pgk-okruszki li + li::before { content: "›"; margin: 0 .55em; color: var(--wp--preset--color--szary); }
.pgk-okruszki a { color: var(--wp--preset--color--szary); text-decoration: none; }
.pgk-okruszki a:hover, .pgk-okruszki a:focus-visible { color: var(--wp--preset--color--blekit); text-decoration: underline; }
.pgk-okruszki li:last-child a { color: var(--wp--preset--color--blekit); }
.pgk-powrot { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; margin-top: var(--wp--preset--spacing--40) !important; font: 600 .95rem var(--wp--preset--font-family--poppins); }
.pgk-powrot a { color: var(--wp--preset--color--blekit); text-decoration: none; }
.pgk-powrot a:hover, .pgk-powrot a:focus-visible { text-decoration: underline; }

/* Kod pocztowy z miastem w jednym wierszu (np. w stopce) — bez twardych znaków w tekście. */
.pgk-bez-lamania { white-space: nowrap; }

/* Liczba odsłon przy dacie wpisu (functions.php, pgk-odslony) */
.pgk-meta .pgk-odslony::before { content: "·"; margin-right: 10px; }
