/* ==========================================================================
   TRYBY WYSOKIEGO KONTRASTU WCAG (Wymuszane przez klasę acc-contrast-*)
   ========================================================================== */

/* --- C1: Czarno-żółty --- */
body.acc-contrast-black-yellow,
body.acc-contrast-black-yellow * {
    background-color: #000000 !important;
    color: #ffff00 !important;
    border-color: #ffff00 !important;
}

/* 1. Linki w innym kolorze (Cyjan) */
body.acc-contrast-black-yellow a {
    color: #00ffff !important;
    text-decoration: underline !important;
}

/* 2. Naprawa pola wyszukiwania ("Wpisz szukaną frazę") */
body.acc-contrast-black-yellow ::placeholder {
    color: #ffff00 !important;
    opacity: 1 !important; /* Wymuszamy pełną widoczność */
}

/* 3. Naprawa WSZYSTKICH ikon (odstępy, reset, lupka) - wymuszamy żółty na SVG i wewnątrz nich */
body.acc-contrast-black-yellow svg,
body.acc-contrast-black-yellow svg * {
    color: #ffff00 !important;
    fill: #ffff00 !important;
}
/* Zdejmujemy sztuczny kolor z przezroczystych elementów wewnątrz ikon, żeby nie powstały żółte bloki */
body.acc-contrast-black-yellow svg [fill="none"] {
    fill: none !important;
}
body.acc-contrast-black-yellow svg [stroke] {
    stroke: #ffff00 !important;
}

/* 4. Przycisk szukaj: żółte tło całego przycisku, czarny tekst i czarna ikona */
body.acc-contrast-black-yellow .search-form button {
    background-color: #ffff00 !important;
    border: 2px solid #ffff00 !important;
}

/* Zdejmujemy czarne tło ze spanów wewnątrz przycisku i wymuszamy czarny tekst/ikony */
body.acc-contrast-black-yellow .search-form button *,
body.acc-contrast-black-yellow .search-form button svg {
    background-color: transparent !important; /* To naprawia czarne tło pod tekstem! */
    color: #000000 !important;
    fill: #000000 !important;
    stroke: #000000 !important;
}

/* 5. Główne menu (Górne) - usunięcie czerwonego borderu, dodanie żółtego, hover i active */
body.acc-contrast-black-yellow #menu-menu-gora .nav-link {
    border-bottom-color: #ffff00 !important; /* Domyślny żółty zamiast czerwonego */
}
/* Po najechaniu (hover) i aktywny element: żółte tło, czarny tekst */
body.acc-contrast-black-yellow #menu-menu-gora .nav-link:hover,
body.acc-contrast-black-yellow #menu-menu-gora .nav-link:focus,
body.acc-contrast-black-yellow #menu-menu-gora .nav-link.active {
    background-color: #ffff00 !important;
    color: #000000 !important;
    border-bottom-color: #ffff00 !important;
}

/* 6. Menu boczne (Sidebar) - najechanie (hover) i element aktywny */
body.acc-contrast-black-yellow #left-menu li a:hover,
body.acc-contrast-black-yellow #left-menu li a:focus,
body.acc-contrast-black-yellow #left-menu li.current-menu-item > a {
    background-color: #ffff00 !important;
    color: #000000 !important;
    text-decoration: none !important;
}

/* 7. Ikony drukowania i zapisu */
/* UWAGA: Założyłem popularne klasy. Jeśli Twoje przyciski nazywają się inaczej, dopisz ich klasy poniżej! */
body.acc-contrast-black-yellow .print-btn,
body.acc-contrast-black-yellow .save-btn,
body.acc-contrast-black-yellow a[onclick*="print"] {
    background-color: #ffff00 !important;
    color: #000000 !important;
    border: 2px solid #ffff00 !important;
}
/* Wymuszenie czarnych ikon w przyciskach druku i zapisu */
body.acc-contrast-black-yellow .print-btn svg,
body.acc-contrast-black-yellow .save-btn svg,
body.acc-contrast-black-yellow a[onclick*="print"] svg {
    fill: #000000 !important;
    color: #000000 !important;
    stroke: #000000 !important;
}

/* 8. Obramowanie oddzielające sekcje (Sidebar i Treść główna) */
body.acc-contrast-black-yellow #sidebar,
body.acc-contrast-black-yellow .entry-content {
    border: 2px solid #ffff00 !important;
    padding: 15px !important;
    border-radius: 5px;
}

/* --- C2: Żółto-czarny --- */
body.acc-contrast-yellow-black,
body.acc-contrast-yellow-black * {
    background-color: #ffff00 !important;
    color: #000000 !important;
    border-color: #000000 !important;
}

/* 1. Linki w innym kolorze (Ciemnoniebieski świetnie kontrastuje na żółtym i odróżnia się od czarnego tekstu) */
body.acc-contrast-yellow-black a {
    color: #0000ee !important;
    text-decoration: underline !important;
}

/* 2. Naprawa pola wyszukiwania (placeholder) */
body.acc-contrast-yellow-black ::placeholder {
    color: #000000 !important;
    opacity: 1 !important; 
}

/* 3. Naprawa WSZYSTKICH ikon (domyślnie czarne) */
body.acc-contrast-yellow-black svg,
body.acc-contrast-yellow-black svg * {
    color: #000000 !important;
    fill: #000000 !important;
}
/* Odblokowanie przezroczystych środków w ikonach */
body.acc-contrast-yellow-black svg [fill="none"] {
    fill: none !important;
}
body.acc-contrast-yellow-black svg [stroke] {
    stroke: #000000 !important;
}

/* 4. Pole wyszukiwania i przycisk Szukaj */
body.acc-contrast-yellow-black .search-form input {
    border: 2px solid #000000 !important;
    background-color: #ffff00 !important;
    color: #000000 !important;
}
/* Przycisk szukaj: CZARNE tło, żółta ramka */
body.acc-contrast-yellow-black .search-form button {
    background-color: #000000 !important;
    border: 2px solid #000000 !important;
}
/* Zdejmujemy żółte tło ze spanów wewnątrz przycisku i wymuszamy ŻÓŁTY tekst/ikony */
body.acc-contrast-yellow-black .search-form button *,
body.acc-contrast-yellow-black .search-form button svg {
    background-color: transparent !important; 
    color: #ffff00 !important;
    fill: #ffff00 !important;
    stroke: #ffff00 !important;
}

/* 5. Główne menu (Górne) - czarny border-bottom */
body.acc-contrast-yellow-black #menu-menu-gora .nav-link {
    border-bottom-color: #000000 !important; 
}
/* Po najechaniu (hover) i aktywny element: CZARNE tło, ŻÓŁTY tekst */
body.acc-contrast-yellow-black #menu-menu-gora .nav-link:hover,
body.acc-contrast-yellow-black #menu-menu-gora .nav-link:focus,
body.acc-contrast-yellow-black #menu-menu-gora .nav-link.active {
    background-color: #000000 !important;
    color: #ffff00 !important;
    border-bottom-color: #000000 !important;
}

/* 6. Menu boczne (Sidebar) - najechanie (hover) i element aktywny */
body.acc-contrast-yellow-black #left-menu li a:hover,
body.acc-contrast-yellow-black #left-menu li a:focus,
body.acc-contrast-yellow-black #left-menu li.current-menu-item > a {
    background-color: #000000 !important;
    color: #ffff00 !important;
    text-decoration: none !important;
}

/* 7. Agresywna naprawa przycisków akcji w metryczce (Drukuj, Zapisz, PDF) */

/* Celujemy w każdy link i przycisk wewnątrz metryczki dokumentu */
body.acc-contrast-yellow-black .document-footer-meta a,
body.acc-contrast-yellow-black .document-footer-meta button,
body.acc-contrast-yellow-black .entry-footer a,
body.acc-contrast-yellow-black .entry-footer button,
body.acc-contrast-yellow-black #metryczka a,
body.acc-contrast-yellow-black #metryczka button {
    background-color: #000000 !important; /* Czarne tło przycisku */
    border: 2px solid #000000 !important;
    color: #ffff00 !important; /* Żółty tekst */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 16px !important;
    margin: 5px !important;
    text-decoration: none !important;
    min-width: 40px !important;
    min-height: 40px !important;
}

/* WYMUSZENIE WIDOCZNOŚCI IKON DLA WSZYSTKICH ELEMENTÓW W METRYCZCE */
body.acc-contrast-yellow-black .document-footer-meta svg,
body.acc-contrast-yellow-black .document-footer-meta i,
body.acc-contrast-yellow-black .entry-footer svg,
body.acc-contrast-yellow-black .entry-footer i,
body.acc-contrast-yellow-black #metryczka svg,
body.acc-contrast-yellow-black #metryczka i {
    fill: #ffff00 !important;   /* Żółte wypełnienie */
    color: #ffff00 !important;  /* Żółty kolor czcionki ikon */
    stroke: #ffff00 !important; /* Żółty obrys */
    background-color: transparent !important; /* Usunięcie tła spod ikony */
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Jeśli ikona jest ukryta w głębokim span-ie (częste w przyciskach zapisu) */
body.acc-contrast-yellow-black .document-footer-meta span,
body.acc-contrast-yellow-black .entry-footer span {
    background-color: transparent !important;
    color: #ffff00 !important;
}

/* Fix dla "dziur" w ikonach */
body.acc-contrast-yellow-black svg [fill="none"] {
    fill: none !important;
    stroke: #ffff00 !important;
}

/* 8. Obramowanie oddzielające sekcje (Sidebar i Treść główna) */
body.acc-contrast-yellow-black #sidebar,
body.acc-contrast-yellow-black .entry-content {
    border: 2px solid #000000 !important;
    padding: 15px !important;
    border-radius: 5px;
}

/* --- C3: Czarno-biały --- */
body.acc-contrast-black-white,
body.acc-contrast-black-white * {
    background-color: #000000 !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
}

/* 1. Linki (Cyjan dla odróżnienia od białego tekstu) */
body.acc-contrast-black-white a {
    color: #00ffff !important;
    text-decoration: underline !important;
}

/* 2. Naprawa pola wyszukiwania (placeholder) */
body.acc-contrast-black-white ::placeholder {
    color: #ffffff !important;
    opacity: 1 !important;
}

/* 3. Naprawa ikon (wymuszamy biały) */
body.acc-contrast-black-white svg,
body.acc-contrast-black-white svg * {
    color: #ffffff !important;
    /* fill: #ffffff !important; */
}
body.acc-contrast-black-white svg [fill="none"] {
    fill: none !important;
}
body.acc-contrast-black-white svg [stroke] {
    stroke: #ffffff !important;
}

/* 4. Przycisk szukaj: BIAŁE tło, CZARNY tekst */
body.acc-contrast-black-white .search-form button {
    background-color: #ffffff !important;
    border: 2px solid #ffffff !important;
}
body.acc-contrast-black-white .search-form button *,
body.acc-contrast-black-white .search-form button svg {
    background-color: transparent !important; 
    color: #000000 !important;
    fill: #000000 !important;
    stroke: #000000 !important;
}

/* 5. Główne menu (Górne) */
body.acc-contrast-black-white #menu-menu-gora .nav-link {
    border-bottom-color: #ffffff !important; 
}
body.acc-contrast-black-white #menu-menu-gora .nav-link:hover,
body.acc-contrast-black-white #menu-menu-gora .nav-link:focus,
body.acc-contrast-black-white #menu-menu-gora .nav-link.active {
    background-color: #ffffff !important;
    color: #000000 !important;
    border-bottom-color: #ffffff !important;
}

/* 6. Menu boczne (Sidebar) */
body.acc-contrast-black-white #left-menu li a:hover,
body.acc-contrast-black-white #left-menu li a:focus,
body.acc-contrast-black-white #left-menu li.current-menu-item > a {
    background-color: #ffffff !important;
    color: #000000 !important;
    text-decoration: none !important;
}

/* 7. Naprawa przycisków akcji w C3 (Drukuj, Zapisz) - bez szukania słowa "print" w klasie */

/* A. Baza: Sprawiamy, że przyciski są białe (To już działa) */
body.acc-contrast-black-white button[onclick*="print"],
body.acc-contrast-black-white a[onclick*="print"],
body.acc-contrast-black-white a[href*="print"],
body.acc-contrast-black-white .document-footer-meta a,
body.acc-contrast-black-white .entry-footer a,
body.acc-contrast-black-white .bip-save-button {
    background-color: #ffffff !important; /* Białe tło przycisku */
    border: 2px solid #ffffff !important;
    color: #000000 !important;            /* Czarny tekst */
}

/* B. NAPRAWA IKONY: Wymuszamy CZARNY kolor dla WSZYSTKICH ikon wewnątrz tych białych przycisków */
/* Targetujemy bezpośrednio tagi ikon (svg, i, span) wewnątrz tych konkretnych przycisków */
body.acc-contrast-black-white button[onclick*="print"] svg,
body.acc-contrast-black-white a[onclick*="print"] svg,
body.acc-contrast-black-white .document-footer-meta a svg,
body.acc-contrast-black-white button[onclick*="print"] svg *, /* Wygaszamy wszystko wewnątrz SVG */
body.acc-contrast-black-white a[onclick*="print"] svg *,
body.acc-contrast-black-white button[onclick*="print"] i,     /* Font icons */
body.acc-contrast-black-white a[onclick*="print"] i,
body.acc-contrast-black-white button[onclick*="print"] span,  /* Spany otaczające ikony */
body.acc-contrast-black-white a[onclick*="print"] span,
body.acc-contrast-black-white .bip-save-button * {
    fill: #000000 !important;              /* Dla ikon SVG (wypełnienie) */
    stroke: #000000 !important;            /* Dla ikon SVG (kontur, jeśli używany) */
    color: #000000 !important;             /* Dla ikon czcionkowych (np. FontAwesome) */
    background-color: transparent !important; /* Usuwa białe tło pod ikoną */
}

/* C. Fix dla przezroczystych elementów ikon (żeby nie zamieniły się w czarne klocki) */
body.acc-contrast-black-white button[onclick*="print"] svg [fill="none"],
body.acc-contrast-black-white a[onclick*="print"] svg [fill="none"] {
    fill: none !important;
}

/* 8. Obramowanie sekcji */
body.acc-contrast-black-white #sidebar,
body.acc-contrast-black-white .entry-content {
    border: 2px solid #ffffff !important;
    padding: 15px !important;
    border-radius: 5px;
}

/* --- C4: Biało-czarny --- */
body.acc-contrast-white-black,
body.acc-contrast-white-black * {
    background-color: #ffffff !important;
    color: #000000 !important;
    border-color: #000000 !important;
}

/* 1. Linki (Mocny niebieski dla odróżnienia od czarnego tekstu) */
body.acc-contrast-white-black a {
    color: #0000ee !important;
    text-decoration: underline !important;
}

/* 2. Naprawa pola wyszukiwania (placeholder) */
body.acc-contrast-white-black ::placeholder {
    color: #000000 !important;
    opacity: 1 !important;
}

/* 3. Naprawa ikon (wymuszamy czarny) */
body.acc-contrast-white-black svg,
body.acc-contrast-white-black svg * {
    color: #000000 !important;
    fill: #000000 !important;
}
body.acc-contrast-white-black svg [fill="none"] {
    fill: none !important;
}
body.acc-contrast-white-black svg [stroke] {
    stroke: #000000 !important;
}

/* 4. Przycisk szukaj: CZARNE tło, BIAŁY tekst i BIAŁA ikona */
body.acc-contrast-white-black .search-form button {
    background-color: #000000 !important;
    border: 2px solid #000000 !important;
}
body.acc-contrast-white-black .search-form button *,
body.acc-contrast-white-black .search-form button svg,
body.acc-contrast-white-black .search-form button svg path {
    background-color: transparent !important; 
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

/* 5. Główne menu (Górne) - Czarny border-bottom */
body.acc-contrast-white-black #menu-menu-gora .nav-link {
    border-bottom-color: #000000 !important; 
}
/* Hover i Active: Czarne tło, biały tekst */
body.acc-contrast-white-black #menu-menu-gora .nav-link:hover,
body.acc-contrast-white-black #menu-menu-gora .nav-link:focus,
body.acc-contrast-white-black #menu-menu-gora .nav-link.active {
    background-color: #000000 !important;
    color: #ffffff !important;
    border-bottom-color: #000000 !important;
}

/* 6. Menu boczne (Sidebar) - Hover i Active: Czarne tło, biały tekst */
body.acc-contrast-white-black #left-menu li a:hover,
body.acc-contrast-white-black #left-menu li a:focus,
body.acc-contrast-white-black #left-menu li.current-menu-item > a {
    background-color: #000000 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* 7. Przyciski Drukowania i Zapisu - CZARNE tło i BIAŁE ikony */
body.acc-contrast-white-black button[onclick*="print"],
body.acc-contrast-white-black a[onclick*="print"],
body.acc-contrast-white-black .document-footer-meta a,
body.acc-contrast-white-black .entry-footer a,
body.acc-contrast-white-black .bip-save-button {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: 2px solid #000000 !important;
}

/* Wymuszamy biały kolor ikon wewnątrz czarnych przycisków */
body.acc-contrast-white-black button[onclick*="print"] *,
body.acc-contrast-white-black a[onclick*="print"] *,
body.acc-contrast-white-black .document-footer-meta a *,
body.acc-contrast-white-black .entry-footer a *,
body.acc-contrast-white-black button[onclick*="print"] svg path,
body.acc-contrast-white-black a[onclick*="print"] svg path {
    background-color: transparent !important; /* To naprawia problem z białą plamą */
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

/* 8. Obramowanie sekcji (Sidebar i Treść główna) */
body.acc-contrast-white-black #sidebar,
body.acc-contrast-white-black .entry-content {
    border: 2px solid #000000 !important;
    padding: 15px !important;
    border-radius: 5px;
}

/* --- OCHRONA OBRAZKÓW I IKON --- */
/* Działa dla wszystkich trybów kontrastu POZA normalnym */
body[class*="acc-contrast-"]:not(.acc-contrast-normal) img,
body[class*="acc-contrast-"]:not(.acc-contrast-normal) svg {
    background-color: transparent !important;
    filter: grayscale(100%) contrast(120%) !important;
}

/* Chronimy nasz panel dostępności przed zniknięciem ramki w trybie wysokiego kontrastu */
body[class*="acc-contrast-"] #bip-access-bar button.active {
    outline: 3px dashed currentcolor !important;
    outline-offset: 2px !important;
}


/* ==========================================================================
   ROZMIARY CZCIONEK (Wymuszane na tagu <html>)
   ========================================================================== */

/* Bootstrap domyślnie używa 1rem jako bazy (zazwyczaj 16px). 
   Zwiększając bazowy font w <html>, automatycznie skalujemy CAŁĄ stronę (marginesy, paddingi, em/rem). */

html.acc-font-medium {
    font-size: 115% !important; /* Ok. 18.4px bazowo */
}

html.acc-font-big {
    font-size: 130% !important; /* Ok. 20.8px bazowo */
}


/* ==========================================================================
   ODSTĘPY (Wymuszane na tagu <html>)
   ========================================================================== */

/* Zwiększone odstępy między literami (Letter Spacing) */
html.acc-letter-spacing * {
    letter-spacing: 0.12em !important;
}

/* Zwiększone odstępy między wierszami (Line Height) */
html.acc-line-spacing * {
    line-height: 1.8 !important; /* Standard WCAG to 1.5, ale dla pewności dajemy wyraźne 1.8 */
}



/* ==========================================================================
   OCHRONA PRZYCISKÓW KONTRASTU (Zachowanie oryginalnych kolorów)
   ========================================================================== */

/* A. Przycisk Normalny (ID: contrast-normal) */
body[class*="acc-contrast-"] button#contrast-normal {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 2px solid #000000 !important;
}
body[class*="acc-contrast-"] button#contrast-normal * { color: #000000 !important; fill: #000000 !important; stroke: #000000 !important; }

/* B. Przycisk C1 Czarno-żółty (ID: black-yellow - bez słowa contrast!) */
body[class*="acc-contrast-"] button#black-yellow {
    background-color: #000000 !important;
    color: #ffff00 !important;
    border: 2px solid #ffff00 !important;
}
body[class*="acc-contrast-"] button#black-yellow * { color: #ffff00 !important; fill: #ffff00 !important; stroke: #ffff00 !important; }

/* C. Przycisk C2 Żółto-czarny (ID: yellow-black) */
body[class*="acc-contrast-"] button#yellow-black {
    background-color: #ffff00 !important;
    color: #000000 !important;
    border: 2px solid #000000 !important;
}
body[class*="acc-contrast-"] button#yellow-black * { color: #000000 !important; fill: #000000 !important; stroke: #000000 !important; }

/* D. Przycisk C3 Czarno-biały (ID: black-white) */
body[class*="acc-contrast-"] button#black-white {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
}
body[class*="acc-contrast-"] button#black-white * { color: #ffffff !important; fill: #ffffff !important; stroke: #ffffff !important; }

/* E. Przycisk C4 Biało-czarny (ID: white-black) */
body[class*="acc-contrast-"] button#white-black {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 2px solid #000000 !important;
}
body[class*="acc-contrast-"] button#white-black * { color: #000000 !important; fill: #000000 !important; stroke: #000000 !important; }

/* F. Przyciski panelu: Rozmiar tekstu, Odstępy i Reset (Zawsze białe tło, czarna ramka i tekst) */
body[class*="acc-contrast-"] button[data-font],
body[class*="acc-contrast-"] button[data-spacing],
body[class*="acc-contrast-"] button#acc-reset {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 2px solid #000000 !important;
}

/* Wymuszamy czarny kolor dla tekstów i ikon wewnątrz tych przycisków */
body[class*="acc-contrast-"] button[data-font] *,
body[class*="acc-contrast-"] button[data-spacing] *,
body[class*="acc-contrast-"] button#acc-reset * {
    color: #000000 !important;
    fill: #000000 !important;
    stroke: #000000 !important;
}

/* Ochrona przed zamalowaniem na czarno środków w ikonach (np. w lupce czy literze A) */
body[class*="acc-contrast-"] button[data-font] svg [fill="none"],
body[class*="acc-contrast-"] button[data-spacing] svg [fill="none"],
body[class*="acc-contrast-"] button#acc-reset svg [fill="none"] {
    fill: none !important;
}