/* Aktualności, archiwa kategorii, pojedynczy wpis — makieta L912-1021. */

/* Ukryty tekst dla czytników — WordPress dokłada go do <nav> paginacji (get_the_posts_pagination). */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* chipsy kategorii */
.cp-news-cats{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--cp-line-2)}

/* karta wpisu — cała klikalna przez stretched link na tytule (dokładnie jeden <a> w karcie) */
.cp-post-card{position:relative;display:flex;flex-direction:column;overflow:hidden}
.cp-post-card:hover{border-color:var(--cp-accent-line)}
/* Pierścień fokusu na CAŁEJ karcie (nie tylko na wąskim <a> tytułu) — standardowa technika dla
   „stretched linku”: własny outline linku wyłączony, żeby nie było podwójnego pierścienia.
   :focus-within reaguje też na fokus z kliknięcia myszą (bez :visible) — stąd :has(:focus-visible),
   z fallbackiem na :focus-within tylko w przeglądarkach bez wsparcia dla :has(). */
@supports selector(:has(*)) {
  .cp-post-card:has(:focus-visible){outline:2px solid var(--cp-accent);outline-offset:2px}
}
@supports not selector(:has(*)) {
  .cp-post-card:focus-within{outline:2px solid var(--cp-accent);outline-offset:2px}
}
.cp-post-card:focus-within .cp-post-card__link{outline:none}
.cp-post-card__art{aspect-ratio:16/9}
.cp-post-card__body{display:flex;flex-direction:column;gap:10px;padding:16px;border-top:1px solid var(--cp-line-2)}
.cp-post-card__title{font-size:17px;font-weight:600;line-height:1.3}
.cp-post-card__link{color:var(--cp-text-hi)}
.cp-post-card__link:hover{color:var(--cp-text-hi)}
.cp-post-card__link::after{content:"";position:absolute;inset:0}
.cp-post-card__excerpt{margin:0;font-size:14px;line-height:1.6;color:var(--cp-text-dim)}
/* „Czytaj dalej": zajawka przycięta do 2 wierszy, żeby karty w rzędzie zostały kompaktowe */
.cp-read-more .cp-post-card__excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* linia meta wspólna dla karty i artykułu */
.cp-post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-family:var(--cp-font-head);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--cp-text-dim)}
.cp-post-meta a{color:var(--cp-accent)}
.cp-post-meta__sep{color:var(--cp-text-dim)}
.cp-post-meta__author{color:var(--cp-text-2)}

/* wpis wiodący (tylko 1. strona listy) */
.cp-post-card--lead{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;align-items:center;padding:0 0 32px;margin-bottom:28px;border:0;border-bottom:1px solid var(--cp-line-2);background:none}
.cp-post-card--lead:hover{border-bottom-color:var(--cp-line-2)}
.cp-post-card--lead .cp-post-card__art{aspect-ratio:21/9}
.cp-post-card--lead .cp-post-card__body{padding:0;border-top:0;gap:14px}
.cp-post-card--lead .cp-post-card__title{font-size:29px;line-height:1.15}
.cp-post-card--lead .cp-post-card__excerpt{font-size:15px;color:var(--cp-text-mute)}

/* siatka reszty wpisów */
.cp-news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}

/* pusta lista */
.cp-empty{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:32px}

/* paginacja — ostylowana jak chipsy (.cp-chip w components.css) */
.cp-pagination{margin-top:36px}
.cp-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.cp-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px;padding:4px 10px;border:1px solid var(--cp-line-3);font-family:var(--cp-font-head);font-size:11px;letter-spacing:.08em;color:var(--cp-text-2)}
.cp-pagination a.page-numbers:hover{border-color:var(--cp-accent-line);color:var(--cp-accent)}
.cp-pagination .page-numbers.current{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-on-accent)}

/* wachlarz kart — dekoracyjny; „proporcje kontenera" i cofnięcie w tło z siatką jak inne placeholdery.
   `overflow:hidden` na TYM elemencie (kontener pozycjonowania dla obrazów position:absolute) —
   karty wachlarza nie mogą wyjść poza jego ramkę niezależnie od --i/--n i box-shadow. */
.cp-fan{position:relative;aspect-ratio:16/9;overflow:hidden;background-color:var(--cp-placeholder);background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 6px,transparent 6px 12px)}
.cp-fan--lg{aspect-ratio:21/9}
.cp-fan img{position:absolute;bottom:-12%;left:50%;width:24%;height:auto;transform-origin:bottom center;
  transform:translateX(calc(-50% + (var(--i) - (var(--n) - 1) / 2) * 30%)) rotate(calc((var(--i) - (var(--n) - 1) / 2) * 6deg));
  box-shadow:0 10px 24px rgba(0,0,0,.45);border:1px solid var(--cp-line-3)}
/* Wachlarz otwierający wpis (bezpośrednie dziecko kontenera) — odstęp do treści/spisu poniżej, jak
   w makiecie (L979: margin-bottom:44px na „grafice otwierającej"); bez tego treść i spis stykały
   się z dolną krawędzią wachlarza. */
.cp-container > .cp-fan{margin-bottom:44px}

/* artykuł: .cp-doc odwrócony — spis treści 220px po lewej, treść 72ch po prawej */
.cp-article-head{max-width:780px}
.cp-doc--article{grid-template-columns:220px minmax(0,72ch)}
.cp-doc--article .cp-toc{order:-1}
.cp-doc--article .cp-prose{max-width:72ch}

/* boks „Redakcja" wewnątrz treści */
.cp-redakcja{display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;align-items:start;padding:20px;margin:44px 0;border-left:2px solid var(--cp-accent)}
.cp-redakcja__mark{width:56px;height:56px;background-color:var(--cp-placeholder);background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 5px,transparent 5px 10px);border:1px solid var(--cp-line-3)}
.cp-redakcja__body{display:flex;flex-direction:column;gap:7px;max-width:none}
.cp-redakcja__name{font-family:var(--cp-font-head);font-size:14px;font-weight:600;color:var(--cp-text-hi)}
.cp-redakcja__body p{margin:0;font-size:13px;line-height:1.65;color:var(--cp-text-mute);max-width:none}
/* Samodzielny link-etykieta (nie w bloku tekstu) — bez podkreślenia linków prozy. */
.cp-redakcja__link,.cp-prose .cp-redakcja__link{font-family:var(--cp-font-head);font-size:11px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}

/* „Czytaj dalej" — POZA .cp-doc, pełna szerokość kontenera (nie 72ch kolumny treści); 3 kolumny na
   desktopie, 2 na ≤1024px, 1 na ≤640px. Reużywa kartę wpisu w wersji h3 (podsekcja artykułu). */
.cp-read-more{margin-top:48px;padding-top:4px}
.cp-read-more .cp-news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

@media (max-width:1024px){
  .cp-doc--article{grid-template-columns:minmax(0,1fr)}
  .cp-post-card--lead{grid-template-columns:minmax(0,1fr)}
  .cp-read-more .cp-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .cp-post-card--lead .cp-post-card__title{font-size:22px}
  .cp-redakcja{grid-template-columns:minmax(0,1fr)}
  .cp-redakcja__mark{display:none}
  .cp-read-more .cp-news-grid{grid-template-columns:minmax(0,1fr)}
}
