/* ──────────────────────────────────────────────────────────────────
   WP BIP — Stylesheet zgodny wizualnie z portalem gov.pl / gov.pl/bip
   ──────────────────────────────────────────────────────────────────
   Paleta i typografia odwzorowane z oficjalnego arkusza stylów
   portalu gov.pl (na którym od 29.03.2021 r. działa też strona główna
   BIP — wcześniej bip.gov.pl, obecnie gov.pl/bip). Źródło: arkusz CSS
   dostarczony przez użytkownika, pobrany z serwisu gov.pl.

   UWAGA O FONCIE: oryginalny gov.pl używa fontu "Open Sans" wczytywanego
   z własnego serwera (/fonts/open-sans/...). Nie możemy linkować plików
   z serwera gov.pl (inna domena, brak uprawnień, niestabilne URL-e).
   Zgodnie z decyzją: BEZ zewnętrznych zasobów (Google Fonts czy inne) —
   font-family deklaruje "Open Sans" jako preferencję (zadziała, jeśli
   font jest zainstalowany lokalnie u odwiedzającego lub dodany przez
   motyw/inną wtyczkę), z pełnym, bezpiecznym fallbackiem na systemowe
   sans-serif. Jeśli w przyszłości zechcesz dociągać Open Sans z
   Google Fonts, wystarczy dodać w functions.php motywu:
     wp_enqueue_style('open-sans', 'https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap');
   ────────────────────────────────────────────────────────────────── */

:root {
    /* Paleta gov.pl */
    --bip-color-link:        #0052a5;  /* domyślny kolor linków (a) */
    --bip-color-link-hover:  #006cd7;  /* hover linków */
    --bip-color-text:        #1b1b1b;  /* główny kolor tekstu (body) */
    --bip-color-accent:      #d5233f;  /* czerwony akcent gov.pl (stopka, separator portalu) */
    --bip-color-bg-light:    #f1f1f1;  /* tło paneli / separatory */
    --bip-color-border:      #e5e5e5;
    --bip-color-text-muted:  #767676;  /* tekst pomocniczy w stopce */
    --bip-color-text-muted-2:#656565;
    --bip-color-border-input:#808893;  /* obramowanie pól formularzy */
    --bip-color-focus:       #0452a8;  /* obrys fokusu (dostępność) */
    --bip-color-active-bg:   #0052a5;  /* tło aktywnego elementu menu */
    --bip-font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* ── Reset lekki w obrębie komponentów BIP (nie globalny - nie psujemy motywu) ── */
.bip-wrap, .bip-document, .bip-archive, .bip-metryczka, .bip-history,
.bip-menu, .bip-search, .bip-redakcja, .bip-instrukcja, .bip-documents-list {
    font-family: var(--bip-font-family);
    color: var(--bip-color-text);
    line-height: 1.5;
}

/* ── Strona BIP (body.bip-page) — layout własny, niezależny od motywu ──
   Od wersji z page_open()/page_close() strony natywne BIP (archiwum,
   pojedynczy dokument, strona startowa) renderują WŁASNY, samodzielny
   dokument HTML, bez get_header()/get_footer() motywu — to jest świadoma
   decyzja: zapewnia identyczny, przewidywalny wygląd niezależnie od
   aktywnego motywu (poprzednio różne motywy renderowały BIP bez marginesów,
   czasem z ciężkim headerem motywu, np. id="headerimg", niemożliwym do
   skonfigurowania z poziomu wtyczki). wp_head()/wp_footer() zostają
   wywoływane normalnie, więc inne wtyczki (SEO, analytics) wciąż działają. */
body.bip-page {
    margin: 0;
    background: #fff;
    font-family: var(--bip-font-family);
    color: var(--bip-color-text);
}

/* Pasek powrotny do głównej witryny — zamiennik headera motywu, w pełni
   konfigurowalny (BIP → Ustawienia → Linki): treść tekstu i widoczność. */
.bip-homesite-bar {
    background: var(--bip-color-bg-light);
    border-bottom: 1px solid var(--bip-color-border);
    padding: .6em 1.5rem;
    font-size: .875rem;
}
.bip-homesite-bar a {
    color: var(--bip-color-text-muted);
    text-decoration: none;
}
.bip-homesite-bar a:hover {
    color: var(--bip-color-link);
    text-decoration: underline;
}
.bip-homesite-bar a::before {
    content: "← ";
}

/* Kontener główny — to jest brakujący element, który zapewnia marginesy
   i ograniczenie szerokości na dużych ekranach (wcześniej .bip-wrap nie
   miał żadnego max-width, więc treść rozciągała się na całą szerokość
   ekranu na motywach, które same nie ograniczały <main>). */
#bip-main.bip-wrap {
    max-width: 75rem;
    margin: 0 auto;
    padding: 1.75rem 1.5rem 3rem;
    box-sizing: border-box;
}

/* Układ dwukolumnowy: sidebar (menu + redakcja) + treść główna.
   flex-wrap pozwala kolumnom złożyć się jedna pod drugą na wąskich
   ekranach (patrz media query niżej), zamiast ściskać się boleśnie wąsko. */
.bip-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    align-items: flex-start;
}
.bip-sidebar {
    flex: 1 1 220px;
    max-width: 280px;
    min-width: 0;
}
.bip-archive,
.bip-document {
    flex: 3 1 480px;
    min-width: 0;
}

/* ── Linki (zgodnie z gov.pl: a { color:#0052a5 }, a:hover { color:#006cd7 }) ── */
.bip-wrap a,
.bip-document a,
.bip-menu a,
.bip-redakcja a,
.bip-instrukcja a,
.bip-documents-list a,
.bip-metryczka a,
.bip-history a {
    color: var(--bip-color-link);
    text-decoration: none;
}
.bip-wrap a:hover,
.bip-document a:hover,
.bip-menu a:hover,
.bip-redakcja a:hover,
.bip-instrukcja a:hover,
.bip-documents-list a:hover,
.bip-metryczka a:hover,
.bip-history a:hover {
    color: var(--bip-color-link-hover);
    text-decoration: underline;
}

/* Treść głównego dokumentu (artykuł) - linki podkreślone od razu, jak w gov.pl main a[href] */
.bip-document__content a[href] {
    text-decoration: underline;
}

/* ── Dostępność: fokus zgodny z gov.pl (niebieska obwódka z białą przerwą) ── */
.bip-wrap a:focus-visible,
.bip-wrap button:focus-visible,
.bip-wrap input:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px var(--bip-color-focus), 0 0 0 4px #fff, 0 0 0 6px var(--bip-color-focus);
}

/* ── Logo BIP ──────────────────────────────────────────────────── */
.bip-logo { margin-bottom: 1em; }
.bip-logo img { max-width: 220px; height: auto; }

/* ── Nawigacja okruszkowa (breadcrumb) — [bip_breadcrumb], lista <ol>
   z separatorami CSS (›) i aria-current="page" na ostatnim, bieżącym
   elemencie (nielinkowanym) — zgodnie z WCAG 2.4.8 Location. ── */
.bip-breadcrumb-nav {
    font-size: .875rem;
    color: var(--bip-color-text-muted);
    margin-bottom: 1.2em;
    padding-bottom: .6em;
    border-bottom: 1px solid var(--bip-color-bg-light);
}
.bip-breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: .35em;
}
.bip-breadcrumb-list li { display: flex; align-items: center; gap: .35em; }
.bip-breadcrumb-list li:not(:first-child)::before {
    content: "\203A"; /* › */
    color: var(--bip-color-text-muted-2);
}
.bip-breadcrumb-list a { color: var(--bip-color-link); }
.bip-breadcrumb-list span[aria-current] { color: var(--bip-color-text-muted); }

/* Klasa zachowana dla kompatybilności z motywami/CSS niestandardowym,
   które mogły wcześniej celować w .bip-breadcrumb (stara, płaska wersja
   bez listy — usunięta z szablonów na rzecz [bip_breadcrumb] powyżej). */
.bip-breadcrumb {
    font-size: .875rem;
    color: var(--bip-color-text-muted);
    margin-bottom: 1.2em;
    padding-bottom: .6em;
    border-bottom: 1px solid var(--bip-color-bg-light);
}
.bip-breadcrumb a { color: var(--bip-color-link); }

/* ── Redakcja BIP ──────────────────────────────────────────────── */
.bip-redakcja {
    background: #fff;
    border: 1px solid var(--bip-color-bg-light);
    border-radius: .25rem;
    padding: 1em 1.2em;
    margin-bottom: 1.5em;
}
.bip-redakcja h3 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 .6em 0;
    color: var(--bip-color-text);
}
.bip-redakcja address { font-style: normal; }
.bip-redakcja p { margin: .3em 0; font-size: .9375rem; }

/* ── Instrukcja korzystania ────────────────────────────────────── */
.bip-instrukcja {
    background: #f5f8fc;
    border-left: .25rem solid var(--bip-color-link);
    padding: 1em 1.4em;
    margin-bottom: 1.5em;
    font-size: .9375rem;
}
.bip-instrukcja h3 {
    margin-top: 0;
    font-size: 1rem;
    font-weight: 700;
}

/* ── Menu przedmiotowe (wzorowane na .govpl-menu__section gov.pl) ── */
.bip-menu {
    margin: 0 0 1.5em 0;
    background: var(--bip-color-bg-light);
    border-radius: .25rem;
    overflow: hidden;
}
.bip-menu__list, .bip-menu__sub { list-style: none; margin: 0; padding: 0; }
.bip-menu__list > li {
    position: relative;
}
.bip-menu__list > li:not(:last-child)::after {
    content: "";
    position: absolute;
    bottom: 0; left: 1.3rem; right: 1rem;
    height: 1px;
    background-color: #b7b7b7;
}
.bip-menu__link {
    display: block;
    padding: .625rem 1.5rem;
    font-weight: 600;
    color: var(--bip-color-text);
    text-decoration: none;
}
.bip-menu__link:hover {
    color: var(--bip-color-link-hover);
    text-decoration: none;
    background: rgba(0,0,0,.03);
}
.bip-menu__sub { padding: 0 0 .5em 0; }
.bip-menu__sub li a {
    display: block;
    padding: .4em 1.5rem .4em 2.2rem;
    color: var(--bip-color-text);
    text-decoration: none;
    font-size: .875rem;
}
.bip-menu__sub li a:hover {
    color: var(--bip-color-link-hover);
    text-decoration: none;
}
.bip-menu__sub li a.is-active {
    color: #fff;
    background-color: var(--bip-color-active-bg);
}
.bip-count { font-size: .8em; color: var(--bip-color-text-muted); font-weight: 400; }

/* ── Komunikaty bieżące (PRO) — [bip_komunikaty], wyświetlane automatycznie
   PRZED głównym contentem na każdej natywnej stronie BIP. Klasy generowane
   przez wp-bip-pro/includes/class-bip-pro-announcements.php, stylowane
   tutaj (w lite) zgodnie z resztą wyglądu BIP — dodatek PRO nie ładuje
   własnego arkusza stylów. ── */
.bip-announcements { display: flex; flex-direction: column; gap: .75rem; margin: 0 0 1.5em; }
.bip-announcement { border-radius: .25rem; padding: .75rem 1.2em; border-left: .25rem solid; }
.bip-announcement__title { display: block; margin-bottom: .25em; font-size: 1rem; }
.bip-announcement__content { font-size: .9375rem; }
.bip-announcement__content p:last-child { margin-bottom: 0; }
.bip-announcement--info    { background: #eef6fc; border-color: var(--bip-color-link); }
.bip-announcement--warning { background: #fff8e5; border-color: #dba617; }
.bip-announcement--urgent  { background: #fcf0f1; border-color: var(--bip-color-accent); }

/* ── Statystyki odwiedzin (PRO) — [bip_statystyki], domyślnie widoczne
   w panelu bocznym natywnych stron BIP. Ten sam "wrapper karty" co
   .bip-redakcja, dla wizualnej zgodności z resztą panelu bocznego. ── */
.bip-stats-widget {
    background: #fff;
    border: 1px solid var(--bip-color-bg-light);
    border-radius: .25rem;
    padding: 1em 1.2em;
    margin-bottom: 1.5em;
}
.bip-stats-widget h3 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 .6em 0;
    color: var(--bip-color-text);
}
.bip-stats-table { width: 100%; font-size: .9375rem; margin-bottom: .5em; }
.bip-stats-table th { text-align: left; font-weight: 400; padding: .2em 0; }
.bip-stats-table td { text-align: right; font-weight: 700; padding: .2em 0; }
.bip-stats-popular { margin: 0; padding-left: 1.2em; font-size: .9375rem; }

/* ── Subskrypcja powiadomień e-mail (PRO) — [bip_subscribe], domyślnie
   WYŁĄCZONE (administrator włącza świadomie, patrz README PRO) w panelu
   bocznym natywnych stron BIP. Ten sam wrapper karty co .bip-redakcja/
   .bip-stats-widget; pola formularza w stylu .bip-search. ── */
.bip-subscribe-widget {
    background: #fff;
    border: 1px solid var(--bip-color-bg-light);
    border-radius: .25rem;
    padding: 1em 1.2em;
    margin-bottom: 1.5em;
}
.bip-subscribe-widget h3 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 .6em 0;
    color: var(--bip-color-text);
}
.bip-subscribe-form p { margin: 0 0 .75em; }
.bip-subscribe-form label { display: block; font-size: .9375rem; font-weight: 600; margin-bottom: .3em; }
.bip-subscribe-form input[type=email],
.bip-subscribe-form select {
    width: 100%;
    box-sizing: border-box;
    height: 2.25rem;
    padding: 0 .6em;
    font-size: .9375rem;
    font-family: inherit;
    border: solid 1px var(--bip-color-border-input);
    border-radius: .25rem;
}
.bip-subscribe-form input[type=email]:focus,
.bip-subscribe-form select:focus {
    outline: none;
    border-color: var(--bip-color-link);
    border-width: 2px;
}
.bip-subscribe-form button {
    height: 2.25rem;
    padding: 0 1.2em;
    background-color: #fff;
    color: var(--bip-color-accent);
    border: solid 1px var(--bip-color-border-input);
    border-radius: .25rem;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
}
.bip-subscribe-form button:hover { background-color: var(--bip-color-bg-light); }
.bip-subscribe-form__description { font-size: .8125rem; color: var(--bip-color-text-muted); margin-bottom: 0; }
.bip-subscribe-form__honeypot { position: absolute; left: -9999px; }

/* ── Moduł wyszukujący (wzorowany na .search-form gov.pl) ───────── */
.bip-search { display: flex; gap: 0; margin: 1em 0; flex-wrap: wrap; max-width: 28rem; }
.bip-search input[type=search] {
    flex: 1 1 auto;
    min-width: 12rem;
    height: 2.5rem;
    padding: 0 .75em;
    font-size: 1rem;
    font-family: inherit;
    border: solid 1px var(--bip-color-border-input);
    border-right: 0;
    border-radius: .25rem 0 0 .25rem;
}
.bip-search input[type=search]:focus {
    outline: none;
    border-color: var(--bip-color-link);
    border-width: 2px;
}
.bip-search button {
    height: 2.5rem;
    padding: 0 1em;
    background-color: #fff;
    color: var(--bip-color-accent);
    border: solid 1px var(--bip-color-border-input);
    border-left: 0;
    border-radius: 0 .25rem .25rem 0;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
}
.bip-search button:hover {
    background-color: var(--bip-color-bg-light);
}

/* ── Wyszukiwanie zaawansowane (PRO) — pasek główny (fraza + przycisk)
   w stylu .bip-search, reszta filtrów w rozwijanym panelu <details>
   otwieranym linkiem „Zaawansowane”. Klasy generowane przez
   wp-bip-pro/includes/class-bip-pro-search.php, stylowane tutaj (w lite)
   zgodnie z resztą wyglądu BIP — dodatek PRO nie ładuje własnego arkusza
   stylów. ── */
.bip-search-advanced {
    margin: 1em 0 1.5em;
    font-family: var(--bip-font-family);
    color: var(--bip-color-text);
}
.bip-sa-main-row {
    display: flex;
    gap: 0;
    flex-wrap: wrap;
    max-width: 28rem;
}
.bip-sa-row--phrase {
    flex: 1 1 auto;
    min-width: 12rem;
    margin: 0;
}
.bip-sa-row--phrase input[type=text] {
    height: 2.5rem;
    width: 100%;
    padding: 0 .75em;
    font-size: 1rem;
    font-family: inherit;
    border: solid 1px var(--bip-color-border-input);
    border-right: 0;
    border-radius: .25rem 0 0 .25rem;
}
.bip-sa-row--phrase input[type=text]:focus {
    outline: none;
    border-color: var(--bip-color-link);
    border-width: 2px;
}
.bip-sa-main-row .bip-sa-submit {
    margin: 0;
}
.bip-sa-main-row .bip-sa-submit button {
    height: 2.5rem;
    padding: 0 1em;
    background-color: #fff;
    color: var(--bip-color-accent);
    border: solid 1px var(--bip-color-border-input);
    border-left: 0;
    border-radius: 0 .25rem .25rem 0;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
}
.bip-sa-main-row .bip-sa-submit button:hover {
    background-color: var(--bip-color-bg-light);
}

/* Rozwijany panel "Zaawansowane" — <details>/<summary> natywne, bez JS.
   Link otwierający stylowany jak inne akcje tekstowe BIP (kolor linku),
   z własną strzałką ▸/▾ zamiast domyślnego trójkąta przeglądarki. */
.bip-sa-advanced {
    margin-top: .5em;
}
.bip-sa-advanced summary {
    display: inline-block;
    cursor: pointer;
    color: var(--bip-color-link);
    font-size: .875rem;
    font-weight: 600;
    list-style: none;
    padding-left: 1.1em;
    position: relative;
}
.bip-sa-advanced summary::-webkit-details-marker { display: none; }
.bip-sa-advanced summary::before {
    content: "▸";
    position: absolute;
    left: 0;
    font-size: .85em;
}
.bip-sa-advanced[open] summary::before { content: "▾"; }
.bip-sa-advanced summary:hover { color: var(--bip-color-link-hover); }
.bip-sa-advanced summary:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px var(--bip-color-focus), 0 0 0 4px #fff, 0 0 0 6px var(--bip-color-focus);
}

.bip-sa-advanced__fields {
    background: #fff;
    border: 1px solid var(--bip-color-bg-light);
    border-radius: .25rem;
    padding: 1.1em 1.3em .2em;
    margin-top: .7em;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 1.5em;
    max-width: 38rem;
}
.bip-sa-row {
    margin: 0 0 .9em 0;
    display: flex;
    flex-direction: column;
    gap: .35em;
}
.bip-sa-row label {
    font-size: .8125rem;
    font-weight: 600;
    color: var(--bip-color-text-muted-2);
}
.bip-sa-row input[type=text],
.bip-sa-row input[type=date],
.bip-sa-row select {
    height: 2.5rem;
    padding: 0 .75em;
    font-size: 1rem;
    font-family: inherit;
    color: var(--bip-color-text);
    background: #fff;
    border: solid 1px var(--bip-color-border-input);
    border-radius: .25rem;
    width: 100%;
}
.bip-sa-row input[type=text]:focus,
.bip-sa-row input[type=date]:focus,
.bip-sa-row select:focus {
    outline: none;
    border-color: var(--bip-color-link);
    border-width: 2px;
}
/* Pary "od – do" (daty) na jednym wierszu wewnątrz swojej komórki siatki —
   klasa .bip-sa-row--range jest dodawana jawnie przez wp-bip-pro (nie przez
   selektor :has(), żeby zachować maksymalną kompatybilność ze starszymi
   przeglądarkami, których część stacji w urzędach wciąż może używać). */
.bip-sa-row--range {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: end;
    gap: .35em .6em;
}
.bip-sa-row--range label:first-of-type { grid-column: 1; grid-row: 1; }
.bip-sa-row--range label:last-of-type  { grid-column: 2; grid-row: 1; align-self: center; margin-bottom: .55em; }
.bip-sa-row--range input:first-of-type { grid-column: 1; grid-row: 2; }
.bip-sa-row--range input:last-of-type  { grid-column: 3; grid-row: 2; }

/* ── Tryb osadzony (BIP_Link_Context): breadcrumb powrotu i tytuł
   kategorii na podstronie z [bip_documents] — patrz BIP_Shortcodes ── */
.bip-embedded-breadcrumb {
    font-size: .875rem;
    margin-bottom: 1em;
}
.bip-embedded-breadcrumb a { color: var(--bip-color-link); font-weight: 600; }
.bip-embedded-breadcrumb a:hover { color: var(--bip-color-link-hover); }
.bip-embedded-category-title {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 .8em 0;
    color: var(--bip-color-text);
}

/* ── Treść strony startowej BIP (tryb "Strona WordPress"/"Własna treść") ── */
.bip-homepage-content { font-size: .9375rem; }
.bip-homepage-content p:first-child { margin-top: 0; }

/* ── Lista dokumentów ─────────────────────────────────────────── */
.bip-documents-list__item {
    padding: .9em 0;
    border-bottom: 1px solid var(--bip-color-bg-light);
}
.bip-doc-title { font-weight: 600; font-size: 1.0625rem; color: var(--bip-color-link); text-decoration: underline; }
.bip-doc-number { font-size: .85em; color: var(--bip-color-text-muted); font-weight: 400; }
.bip-doc-meta { display: block; font-size: .8125rem; color: var(--bip-color-text-muted-2); margin-top: .25em; }
.bip-doc-cats { display: block; font-size: .8125rem; margin-top: .25em; }
.bip-doc-cats a { color: var(--bip-color-link); }

/* ── Typ dokumentu i status (PST BIP PRO) — etykiety dopisywane przez
   pst_bip_pro_document_list_meta na liście dokumentów. Stylowane tutaj
   (w lite) zgodnie z resztą wyglądu BIP — dodatek PRO nie ładuje własnego
   arkusza stylów. Bez PRO te klasy nigdy nie trafiają do znacznika HTML. ── */
.bip-pro-doc-type {
    display: inline-block;
    background: #e7f0fa;
    color: var(--bip-color-link);
    font-size: .8em;
    font-weight: 600;
    padding: .1em .55em;
    border-radius: .2rem;
}
.bip-pro-doc-status {
    display: inline-block;
    font-weight: 600;
    font-size: .8em;
}
.bip-pro-doc-status--obowiazujacy { color: #00a32a; }
.bip-pro-doc-status--uchylony     { color: #d63638; }
.bip-pro-doc-status--projektowany { color: #b8860b; }

/* ── Metryczka dokumentu ──────────────────────────────────────── */
.bip-metryczka { margin: 2em 0 1.5em; }
.bip-metryczka h3 {
    margin-bottom: .6em;
    font-size: 1.0625rem;
    font-weight: 700;
    padding-bottom: .4em;
    border-bottom: .125rem solid var(--bip-color-accent);
}
.bip-version-badge {
    display: inline-block;
    background: #e7f0fa;
    color: var(--bip-color-link);
    font-size: .8em;
    padding: .15em .55em;
    border-radius: .2rem;
    margin-left: .4em;
    font-weight: 600;
}

.bip-archive > h1,
.bip-document__title {
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 1em;
    color: var(--bip-color-text);
}

/* ── Załączniki dokumentu (PRO) — wyświetlane automatycznie po treści
   dokumentu, przed metryczką, przez hook pst_bip_pro_after_document_content.
   Klasy generowane przez wp-bip-pro/includes/class-bip-pro-attachments.php,
   stylowane tutaj (w lite) zgodnie z resztą wyglądu BIP. ── */
.bip-document-attachments {
    margin: 0 0 1.5em;
    padding: .9em 1.1em;
    background: #fafafa;
    border: 1px solid var(--bip-color-bg-light);
    border-radius: .25rem;
}
.bip-document-attachments h3 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 .5em;
    color: var(--bip-color-text);
}
.bip-document-attachments ul { margin: 0; padding-left: 1.2em; }
.bip-document-attachments li { margin-bottom: .3em; font-size: .9375rem; }
.bip-document-attachments__meta { color: var(--bip-color-text-muted); font-size: .875em; }

/* Tabela meta dokumentu */
.bip-document__meta { width: 100%; border-collapse: collapse; margin: 0 0 1.5em; font-size: .9375rem; }
.bip-document__meta caption { text-align: left; font-weight: 700; margin-bottom: .4em; font-size: 1.05em; caption-side: top; }
.bip-document__meta th,
.bip-document__meta td { padding: .55em .75em; border: 1px solid var(--bip-color-bg-light); text-align: left; }
.bip-document__meta th { background: #fafafa; width: 240px; font-weight: 600; color: var(--bip-color-text); }

/* ── Historia zmian (rozwijana, <details>) ───────────────────── */
.bip-history {
    margin-top: 1em;
    border: 1px solid var(--bip-color-bg-light);
    border-radius: .25rem;
    padding: .7em 1em;
    background: #fafafa;
}
.bip-history summary {
    cursor: pointer;
    font-weight: 600;
    color: var(--bip-color-link);
    padding: .3em 0;
}
.bip-history summary:hover { color: var(--bip-color-link-hover); }
.bip-history__table { width: 100%; border-collapse: collapse; margin-top: .7em; font-size: .875rem; }
.bip-history__table th, .bip-history__table td { padding: .45em .65em; border-bottom: 1px solid var(--bip-color-border); text-align: left; }
.bip-history__table th { background: var(--bip-color-bg-light); font-weight: 700; }
.bip-history__note { font-size: .8125rem; color: var(--bip-color-text-muted-2); margin-top: .7em; font-style: italic; }
.bip-history__archive-links { white-space: nowrap; font-size: .92em; }
.bip-history__link { color: var(--bip-color-link); text-decoration: underline; }
.bip-history__link:hover { color: var(--bip-color-link-hover); }
.bip-history__current { color: var(--bip-color-text-muted); font-style: italic; font-size: .9em; }

/* ── Baner archiwalnej wersji (podgląd w stylu strony) ──────────
   Kolorystyka ostrzegawcza spójna z systemem alertów - żółte tło
   sygnalizuje "uwaga", zgodnie z konwencją WCAG dla komunikatów
   ostrzegawczych (nie blokujących, ale wymagających uwagi). ── */
.bip-archive-version-banner {
    background: #fff8e1;
    border: 1px solid #e0b400;
    border-left: .25rem solid #e0b400;
    border-radius: .25rem;
    padding: .85em 1.1em;
    margin: 0 0 1.4em 0;
    font-size: .9375rem;
    font-family: var(--bip-font-family);
    color: var(--bip-color-text);
}
.bip-archive-version-banner a { font-weight: 600; color: var(--bip-color-link); }
.bip-archive-version-banner a:hover { color: var(--bip-color-link-hover); }

/* ── Komunikat o ograniczeniu dostępu (art. 5 UDIP) ─────────────── */
.bip-restriction-notice {
    background: #fdecea;
    border: 1px solid #d5233f;
    border-left: .25rem solid var(--bip-color-accent);
    border-radius: .25rem;
    padding: .9em 1.2em;
    margin-bottom: 1.2em;
    font-size: .9375rem;
}

/* ── Paginacja listy dokumentów ([bip_documents] i natywne archiwum) ──
   Klasa .bip-pagination jest własna (BIP_Shortcodes::render_pagination());
   .page-numbers jest generowana przez wbudowaną the_posts_pagination()
   WordPressa na natywnym archiwum — oba stylowane tutaj konsekwentnie. ── */
.bip-pagination {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .6em;
    margin-top: 1.5em;
    padding-top: 1em;
    border-top: 1px solid var(--bip-color-bg-light);
    font-size: .9375rem;
}
.bip-pagination__list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: .3em;
}
.bip-pagination__list a,
.bip-pagination__list span,
.bip-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2rem;
    height: 2rem;
    padding: 0 .4em;
    border-radius: .25rem;
    text-decoration: none;
}
.bip-pagination__list a,
.bip-pagination .page-numbers:not(.current):not(.dots) {
    color: var(--bip-color-link);
    border: 1px solid var(--bip-color-border-input);
}
.bip-pagination__list a:hover,
.bip-pagination .page-numbers:not(.current):not(.dots):hover {
    background-color: var(--bip-color-bg-light);
}
.bip-pagination__list span[aria-current],
.bip-pagination .page-numbers.current {
    background-color: var(--bip-color-link);
    color: #fff;
    font-weight: 600;
}
.bip-pagination__prev,
.bip-pagination__next,
.bip-pagination .prev.page-numbers,
.bip-pagination .next.page-numbers {
    color: var(--bip-color-link);
    text-decoration: none;
    font-weight: 600;
}
.bip-pagination__prev:hover,
.bip-pagination__next:hover {
    color: var(--bip-color-link-hover);
}

/* ── Drukuj ───────────────────────────────────────────────────── */
.bip-print-note { margin-top: 1em; }
.bip-print-btn {
    display: inline-block;
    padding: .45em 1.1em;
    border: 1px solid var(--bip-color-link);
    border-radius: .25rem;
    color: var(--bip-color-link);
    text-decoration: none;
    font-size: .9375rem;
    font-weight: 600;
}
.bip-print-btn:hover { background: var(--bip-color-link); color: #fff; text-decoration: none; }

/* ── Stopka redakcyjna BIP (wzorowana na .footer gov.pl: czerwona
   górna linia 3px + ciemnoszary tekst pomocniczy) ────────────── */
.bip-footer {
    border-top: solid var(--bip-color-accent) .1875rem;
    padding-top: 1.5em;
    margin-top: 2.5em;
    font-size: .875rem;
    color: var(--bip-color-text-muted);
}

/* ── Accessibility helpers ───────────────────────────────────── */
.screen-reader-text { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* ── Responsywność (przybliżona do breakpointów gov.pl: 43.75rem, 80rem) ── */
@media (max-width: 43.75rem) {
    .bip-document__meta th { width: auto; }
    .bip-search { max-width: 100%; }
    .bip-sa-main-row { max-width: 100%; }
    .bip-sa-advanced__fields { grid-template-columns: 1fr; max-width: 100%; }

    /* Layout strony — kolumna sidebar+treść składa się w jedną kolumnę,
       sidebar (menu, redakcja) ZAWSZE pod treścią główną, nie nad nią —
       na telefonie priorytetem jest dotarcie do dokumentów, nie do menu. */
    #bip-main.bip-wrap { padding: 1.25rem 1rem 2rem; }
    .bip-content-wrap { flex-direction: column-reverse; gap: 1.5rem; }
    .bip-sidebar { max-width: 100%; flex-basis: auto; }
    .bip-archive, .bip-document { flex-basis: auto; }
    .bip-homesite-bar { padding: .5em 1rem; }
    .bip-document__title, .bip-archive > h1 { font-size: 1.4rem; }

    /* Breadcrumb na telefonie: cała ścieżka (Strona główna › Dokumenty ›
       Kategoria › Tytuł dokumentu) nie mieści się czytelnie w wąskim
       ekranie i łamie się w nieprzewidywalny sposób. Standardowy wzorzec
       mobilny (GOV.UK, Material Design) — pokazujemy tylko bieżący
       (ostatni) element. Używamy techniki "wizualnie schowane" (jak
       .screen-reader-text), NIE display:none — display:none usunąłby
       elementy też dla czytników ekranu, a cała ścieżka ma zostać
       dostępna w strukturze <nav><ol> dla technologii asystujących,
       chowamy ją tylko wizualnie dla osób widzących wąski ekran. */
    .bip-breadcrumb-list li:not(:last-child) {
        position: absolute;
        left: -9999px;
        width: 1px;
        height: 1px;
        overflow: hidden;
    }
    .bip-breadcrumb-list li:last-child::before { content: ""; }
}

/* ── Wydruk ───────────────────────────────────────────────────── */
@media print {
    .bip-search, .bip-search-advanced, .bip-print-note, nav.bip-menu, .bip-archive-version-banner, .bip-pagination, .bip-breadcrumb-nav { display: none; }
    .bip-document__meta { font-size: .8em; }
    a[href]:after { content: " (" attr(href) ")"; }
}
