/* Zmienne CSS */
:root {
    /* Kolory podstawowe */
    --color-primary: #016954;
    --color-primary-light: #00CCA3;
    --color-danger: #D5233F;
    --color-white: #ffffff;
    --color-black: #000000;
    --color-navibutton: #0000008c;
    --color-tlormenu: #ffffff;
    --color-textrmenu: #757575;
    --color-activtextrmenu: #222;
    --color-caruselbuttons: #ffffff;
    --color-rmenulink: #333;
    --color-czytajico: #000000; /* czytaj więcej */
    --color-link: #222;
    --color-wspolpraca: #262626;
    --color-wspolpracalista: #262626;
    --breadcrumb-text-color: #4f4f4f;
    --color-kboyear: #262626;
    --color-tloszarepodtekst: #F2F3F4; /* szare tło rodzielające + stopka + harmonia + kbo */
    --color-kboyearborder: 1px solid #EBEBEB;
    --color-sqbuttonbg: #ffffff;
    --color-sqbuttonbgh: #016954;
    --color-sqbuttontext: #262626;
    --color-sqbuttontextB: #ffffff;
    --color-sqbuttontexth: #ffffff;
	--color-dropmenuactive: #EAE0CC;
    --mdb-light-rgb: 242, 243, 244; /* strona glowna prawe menu jasny */
    --mdb-black-rgb: 0, 0, 0; /* tekst pils przy dacie aktualnosci */
    --mdb-link-hover-color: #016954;
    --mdb-body-color: #4f4f4f; /*breadcrumb*/
    /* Odcienie szarości */
    --color-gray-100: #F2F3F4;
    --color-gray-200: #EBEBEB;
    --color-gray-300: #dcdcdc;
    --color-gray-400: #757575;
    --color-gray-500: #707070;
    --color-gray-600: #262626;
    --color-gray-700: #333333;
    /* Box shadows */
    --shadow-default: 4px 4px 10px -3px rgba(66, 68, 90, 0.65);
    --shadow-strong: 4px 4px 10px -3px rgba(66, 68, 90, 0.65);
    /* SVG */
    --icon-filter: none;
    --icon-hover-filter: invert(19%) sepia(77%) saturate(3665%) hue-rotate(339deg) brightness(77%) contrast(90%);
}

[data-theme="dark"] {
    --color-primary: #00b392;
    --color-primary-light: #00e6b8;
    --color-gray-300: #1a1a1a; /* strona glowna tło całej strony */
    --color-black: #e0e0e0;
    --color-white: #3A3939;
    --color-navibutton: #e0e0e0;
    --color-tlormenu: #333333; /* tło prawe menu */
    --color-textrmenu: #9c9c9c; /* tekst prawe menu */
    --color-activtextrmenu: #ffffff; /* aktywny tekst prawe menu */
    --color-caruselbuttons: #333333; /* tło guzików karuzeli */
    --color-czytajico: #00b392;
    --color-link: #e0e0e0;
    --color-wspolpraca: #ffffff;
    --color-wspolpracalista: #ffffff;
    --breadcrumb-text-color: #A3A3A3; /*breadcrumb */
    --color-kboyear: #E0E0E0;
    --color-tloszarepodtekst: #282828; /* szare tło rodzielające + stopka + harmonia + kbo */
    --color-kboyearborder: 1px solid #8a8a8a;
    --color-sqbuttonbg: #00B392;
    --color-sqbuttonbgh: #ffffff;
    --color-sqbuttontext: #262626;
    --color-sqbuttontexth: #262626;
    --color-sqbuttontextB: #262626;
    --color-gray-100: #333333;
    --color-gray-200: #5c5c5c; /* WCAG nawigacja ramka */
    --color-gray-600: #e0e0e0; /* tekst */
    --color-gray-400: #e0e0e0;
    --color-rmenulink: #e0e0e0;
    --mdb-white-rgb: 58, 57, 57; /* wartości RGB dla ciemnego koloru */
    --mdb-light-rgb: 40, 40, 40; /* strona glowna prawe menu ciemny i tło nawigacji */
    --mdb-black-rgb: 224, 224, 224; /* tekst pils przy dacie aktualnosci */
    --mdb-link-hover-color: #00B392;
    --mdb-body-color: #E0E0E0;
    /* Box shadows */
    --shadow-default: 4px 4px 10px -3px rgb(20, 20, 20);
    /* SVG */
    --icon-filter: brightness(0) invert(1);
    --after-color: #ffffff; /* kolor dla ::after w trybie ciemnym */
}

@font-face {
    font-family: "PT Sans";
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/PT_Sans/PTSans-Regular.ttf) format("truetype");
}

@font-face {
    font-family: "PT Sans";
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/PT_Sans/PTSans-Bold.ttf) format("truetype");
}

@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/Roboto/Roboto-Regular.ttf) format("truetype");
}

@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/Roboto/Roboto-Regular.ttf) format("truetype");
}
/* === Grid and base layout === */

/* Style dla logo */
.logo-light {
    display: block;
}

.logo-dark {
    display: none;
}

/* Zmiana logo w trybie ciemnym */
[data-theme="dark"] .logo-light {
    display: none;
}

[data-theme="dark"] .logo-dark {
    display: block;
}

[data-theme="dark"] .logo-nsa {
    filter: invert(1);
}

html {
    overflow-y: scroll; /* Wymusza stały scrollbar */
    margin-right: 0; /* Zapobiega przesunięciom */
    scrollbar-gutter: stable; /* Nowoczesna właściwość dla nowszych przeglądarek */
}

:root {
    --highlight: var(--color-primary);
    --body-pad-top: 120px;
    margin: 0;
    padding: 0;
}

/* body {
  font: 15px/1.3 'PT Sans', sans-serif;
  background: var(--color-gray-300);
} */

body {
    font-family: "PT Sans", sans-serif;
    font-weight: 400;
    font-size: 0.9375rem;
    line-height: 18.4px;
    background: var(--color-gray-300);
    position: relative;
    padding-right: 0 !important; /* Zapobiega dodawaniu paddingu przez Bootstrap podczas otwierania modalu */
}

    /* Dodajemy style dla body gdy modal jest otwarty */
    body.modal-open {
        overflow: hidden;
        padding-right: 0 !important;
    }

/* Zapewniamy stałą szerokość dla elementów nawet gdy modal jest otwarty */
.modal {
    padding-right: 0 !important;
}

.modal-open .modal {
    padding-right: 0 !important;
}

.modal {
    --mdb-modal-bg: #ffffff;
}

[data-theme="dark"] .modal {
    --mdb-modal-bg: #3a3939;
}

/* Modal close icon */

.btn-close {
    filter: none;
}

[data-theme="dark"] .btn-close {
    filter: invert(1) brightness(200%);
}

/* Modal kreseczki  */

[data-theme="dark"] .modal-header {
    --mdb-modal-header-border-color: #535353;
}

[data-theme="dark"] .modal-footer {
    --mdb-modal-footer-border-color: #535353;
}


#mnav {
    position: sticky;
    left: 0;
    top: var(--body-pad-top);
    line-height: 2;
}

article {
    margin-top: 0px;
    padding-top: 20px;
}

/* === #mnavbar and marker === */

#mnav ul {
    margin-top: 20px;
    margin-left: 20px;
    margin-right: 20px;
    padding-left: 4px;
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: var(--color-tlormenu);
    list-style: none;
}

#mnav li > ul {
    padding-left: 30px;
}

#mnav a {
    display: inline-block;
    color: var(--color-textrmenu);
    text-decoration: none;
    transition: all 300ms ease-in-out;
}

#mnav li.visible > a {
    color: var(--color-activtextrmenu);
    transform: translate(7px);
}

#mnav svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

#mnav path {
    transition: all 300ms ease;
    /* fill: transparent; */
    stroke: var(--highlight);
    stroke-width: 3px;
    stroke-dasharray: 0 0 0 1000;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* === Body contents === */

section[id] {
    margin: 25px 0;
    padding: 5px 25px 5px;
    /* margin: 25px 0;
  padding: 80px 30px 0px; */
}

h1, h2, h3 {
    margin-bottom: 5px;
    padding: 0;
    font-weight: 700;
    color: var(--color-primary);
    font-size: 30px;
}

h2 {
    font-size: 24px;
}

.h2_aktualnosci {
    color: var(--color-gray-600);
    padding-bottom: 0.5rem;
    font-weight: 700;
    font-size: 24px;
}

.h2_praca {
    color: var(--color-gray-600);
    padding-bottom: 0.5rem;
    font-size: 20px;
}

h3 {
    /* padding-left: 10px; */
    font-size: 18px;
}

p {
    color: var(--color-gray-600);
}

.h3_aktualnosci {
    color: var(--color-gray-600);
    padding-bottom: 0.5rem;
}

.h3_historia {
    color: var(--color-gray-600);
    padding-bottom: 0;
}

.wydarzenie {
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    font-size: 10px;
    line-height: 150%;
    color: var(--color-gray-600);
}

.wydarzenie_pills {
    font-family: "PT Sans", sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 150%;
}

.autorFoto {
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    font-size: 10px;
    font-style: italic;
    line-height: 150%;
    padding-top: 2px;
    color: var(--color-gray-400);
    text-align: right;
}

h1 span,
.subheading {
    display: block;
    color: #666;
    font: 700 20px sans-serif;
}

article a {
    color: var(--color-link);
    text-decoration-color: var(--highlight);
}

    article a:hover {
        margin: -2px;
        padding: 2px;
        border: 0;
        /* background: var(--highlight); */
    }

code {
    margin: -2px;
    padding: 2px;
    background: rgba(0,0,0,.05);
    font-family: 'PT Mono', monospace;
    color: #333;
}

.bold {
    font-weight: 700;
    font-size: large;
}

.buttondown {
    position: absolute;
    bottom: 0;
    display: flex;
    align-items: flex-end;
}


/* === Adjustments === */

/* Scroll all the way up even if the first section starts a couple hundred pixels down the page */
section:first-of-type {
    margin-top: -335px;
    padding-top: 340px;
}

article,
section:last-of-type,
section:last-of-type p:last-of-type {
    margin-bottom: 0;
}

/* ----------OVERLAY--------- */

.overlay {
    background-color: rgba(1, 105, 84, 0.8); /* Zamiast var(--color-primary) i opacity: 0.8 */
    position: absolute;
    height: 100%;
    width: 40%;
    overflow: hidden;
    z-index: 1;
    top: 0%;
    right: 0%;
    padding: 60px;
    margin-right: 20px;
    border-top: var(--color-white) 20px solid;
    border-bottom: var(--color-white) 20px solid;
}

    .overlay h1 {
        color: #F5F5F5;
        font-size: 2.7em;
        line-height: 1.2;
        margin: 0;
    }

    .overlay h2 {
        color: #F5F5F5;
        font-size: 2.1em;
        line-height: 1.2;
        margin: 0;
    }

    .overlay p {
        color: #F5F5F5;
        font-size: 1.5em;
        line-height: 1.4;
        margin-top: 25px;
    }


/* guziki góra WCAG */

.anty-nav {
    --mdb-nav-link-padding-y: 0;
    --mdb-navbar-nav-link-padding-x: 0;
    --mdb-nav-link-color: var(--color-black);
    --mdb-nav-link-hover-color: #C00318;
    background-color: var(--color-white);
    text-align: center;
    width: 80px;
    height: 80px;
    padding-top: 27px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    border-top: 0px;
    border-left: 0px;
    border-right: 1px solid var(--color-gray-200);
    border-bottom: 1px solid var(--color-gray-200);
}

.anty_link {
    --mdb-link-color: var(--color-black);
    --mdb-link-hover-color: #C00318;
}

.separator {
    align-self: stretch;
    height: 12px;
    background-color: var(--color-gray-300);
    overflow: hidden;
    flex-shrink: 0;
}

#nav-sadownictwoAdmi, #nav-aktyPrawne, #nav-orzecznictwo, #nav-zalatwSprawe, #nav-dostepElektro, #nav-kontakt {
    color: var(--color-navibutton);
    font-weight: bold;
}

    #nav-sadownictwoAdmi:hover, #nav-aktyPrawne:hover, #nav-orzecznictwo:hover, #nav-zalatwSprawe:hover, #nav-dostepElektro:hover, #nav-kontakt:hover {
        color: var(--color-primary);
    }

    #nav-sadownictwoAdmi:focus, #nav-aktyPrawne:focus, #nav-orzecznictwo:focus, #nav-zalatwSprawe:focus, #nav-dostepElektro:focus, #nav-kontakt:focus {
        color: var(--color-primary);
    }

#nav-kontakt {
    color: var(--color-navibutton);
    transition: color 0.3s; /* płynne przejście koloru */
}

    #nav-kontakt:hover {
        color: var(--color-primary);
    }

.news {
    color: var(--color-gray-600);
    font-size: 0.875rem;
}

.news_first {
    color: var(--color-gray-600);
    font-size: 0.9375rem;
}

.aktualnosci_read_more {
    color: var(--color-gray-600);
    font-size: 1rem;
    line-height: 1.4em;
}

.round-corners {
    border-radius: 10px;
}

.subheading {
    font-size: 36px;
    color: var(--color-primary);
}

.navb-pills .navb-link.active, .navb-pills .show > .navb-link {
    font-size: 0.875rem;
    color: var(--color-black);
    background-color: var(--color-white);
}

.navb-link {
    font-size: 0.875rem;
    color: var(--color-black);
}

.navb-pills .navb-link:not(.active) {
    border-color: transparent !important;
}

.button-overrides {
    color: var(--color-black);
    padding-left: 0.3rem;
    padding-right: 0.3rem;
    padding-top: 0.9rem;
    padding-bottom: 0.9rem;
    text-transform: none;
    font-size: 0.875rem;
}

    .button-overrides:focus {
        color: var(--color-black);
    }

    .button-overrides:hover {
        background-color: rgba(255, 255, 255, 0);
        color: var(--color-black);
    }

/* -------------------------------------------------- */

.button-overrides-green {
    background-color: var(--color-primary);
    color: var(--color-white);
}

    .button-overrides-green:hover {
        background-color: var(--color-primary-light);
        color: var(--color-white);
    }

    .button-overrides-green:focus {
        background-color: var(--color-primary-light);
        color: var(--color-white);
    }

.noshadow {
    box-shadow: none;
}

.cursor-pointer {
    cursor: pointer;
}
#sadownictwoAdmi:hover, #aktyPrawne:hover, #orzecznictwo:hover, #zalatwSprawe:hover, #dostepElektro:hover, #kontakt:hover {
    color: var(--color-primary);
}

#sadownictwoAdmi:focus, #aktyPrawne:focus, #orzecznictwo:focus, #zalatwSprawe:focus, #dostepElektro:focus, #kontakt:focus {
    color: var(--color-primary);
}

.searchsmall {
    display: block;
    margin-left: auto;
    margin-right: 20px;
    margin-bottom: 3px;
    width: 30px;
}

.top_switch {
    display: block;
    margin-left: 15px;
    margin-right: 15px;
    width: 62px;
}

.top_en {
    display: block;
    margin-left: 15px;
    color: var(--color-black);
}

    .top_en:hover {
        color: var(--color-danger);
    }

    .top_en:focus {
        color: var(--color-danger);
    }

/*.changecolor:hover {
    filter: invert(19%) sepia(77%) saturate(3665%) hue-rotate(339deg) brightness(77%) contrast(90%);
}

.changecolor:focus {
    filter: invert(19%) sepia(77%) saturate(3665%) hue-rotate(339deg) brightness(77%) contrast(90%);
}*/

.vl {
    border-left: 1px solid var(--color-gray-200);
    height: 45px;
}

/* -------SWITCH------------ */

body.dark {
    background-color: #292c35;
}
    /* #9b59b6 */

    body.dark h2,
    body.dark .support a {
        color: #b92a2a;
    }

.checkbox {
    opacity: 0;
    position: absolute;
}

.possition-moon {
    /* filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(86deg) brightness(118%) contrast(119%); */
    position: absolute;
    left: -2px;
    top: 0px;
}

.possition-sun {
    position: absolute;
    left: 23px;
    top: 2px;
}

.checkbox-label {
    background-color: #ffffff;
    border-width: 1px;
    border-style: solid;
    border-color: var(--color-gray-200);
    width: 46px;
    height: 24px;
    border-radius: 50px;
    position: relative;
    padding: 5px;
    margin-left: 8px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .checkbox-label .ball {
        background-color: #000000;
        width: 18px;
        height: 18px;
        position: absolute;
        left: 23px;
        top: 2px;
        border-radius: 50%;
        transition: transform 0.2s linear;
    }

.checkbox:checked + .checkbox-label .ball {
    transform: translateX(-21px);
}

/* -------------checkbox TOP--------------- */


.checkbox_top {
    opacity: 0;
    position: absolute;
}

.possition_top-moon {
    /* filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(86deg) brightness(118%) contrast(119%); */
    position: absolute;
    left: -4px;
    top: 0px;
}

.possition_top-sun {
    position: absolute;
    left: 25px;
    top: 2px;
}

.checkbox_top-label {
    background-color: var(--color-white);
    border-width: 1px;
    border-style: solid;
    border-color: var(--color-gray-200);
    width: 46px;
    height: 24px;
    border-radius: 50px;
    position: relative;
    padding: 5px;
    margin-left: 8px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .checkbox_top-label .ball_top {
        background-color: var(--color-gray-600);
        width: 18px;
        height: 18px;
        position: absolute;
        left: 23px;
        top: 2px;
        border-radius: 50%;
        transition: transform 0.2s linear;
    }

.checkbox_top:checked + .checkbox_top-label .ball_top {
    transform: translateX(-21px);
}

/* ---------------------------------- */

.navbar-toggler i {
    color: var(--color-black);
}

.navbar-toggler:focus {
    outline: 2px solid var(--color-focus, #0066cc);
    outline-offset: 2px;
    box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
}

.navbar-toggler-icon {
    width: 2.5em;
    height: 1.5em;
    background-image: none;
}

    .navbar-toggler-icon:before {
        font-family: FontAwesome;
        content: "\f29a";
        color: var(--color-black);
        font-size: 30px;
        /* content: "Menu";
  font-size: 1rem; */
    }

    .navbar-toggler-icon:hover:before {
        color: var(--color-danger);
    }

/* .nav-item{
  text-align: right;
} */
.dp_changecolor {
    --mdb-dropdown-state-background-color: #EAE0CC;
}

/* ------------CAROUSEL prev wygląd---------------- */

#demo .carousel-control-prev {
    margin-bottom: 1.25rem;
    color: var(--color-black);
    background: var(--color-caruselbuttons);
    border: 0;
}

    #demo .carousel-control-prev::after {
        font-family: FontAwesome;
        content: "\f053";
        color: var(--color-black);
        font-size: 12px;
        align-self: center;
    }

    #demo .carousel-control-prev:hover {
        background-color: #D5233F;
        color: var(--color-black);
    }

/* --------next wygląd---------------- */

#demo .carousel-control-next {
    margin-bottom: 1.25rem;
    color: var(--color-black);
    background: var(--color-caruselbuttons);
    border: 0;
}

    #demo .carousel-control-next::after {
        font-family: FontAwesome;
        content: "\f054";
        color: var(--color-black);
        font-size: 12px;
        align-self: center;
    }

    #demo .carousel-control-next:hover {
        background-color: #D5233F;
        color: var(--color-black);
    }

    /* --------prev i next wyglad------------- */

    #demo .carousel-control-prev:focus-visible::after, #demo .carousel-control-next:focus-visible::after {
        background-color: #C00318;
        color: var(--color-white);
        width: 30px;
        height: 30px;
        padding: 6px;
        align-items: center;
    }

/* -------pozycja prev next---------- */

#demo .carousel-control {
    width: 5%;
}

#demo .carousel-control-prev {
    position: absolute;
    top: unset;
    bottom: 20px;
    left: unset;
    right: 125px;
}

#demo .carousel-control-next {
    position: absolute;
    top: unset;
    bottom: 20px;
    right: 85px;
}

#demo .carousel-control-prev, #demo .carousel-control-next {
    width: 30px;
    height: 30px;
    align-items: end;
    opacity: 1.0;
}

/* ----------zdjęcia---------------------- */

#demo .carousel-inner .carousel-item {
    width: 100%;
    height: 100%;
    padding: 20px;
}

    #demo .carousel-inner .carousel-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

/* -------pause / play------------- */

.carousel-control-play-pause {
    position: absolute;
    bottom: 20px;
    z-index: 2;
    right: 45px;
    width: 30px;
    height: 30px;
    align-items: center;
    opacity: 1.0;
}

.carousel-control-play-pause {
    margin-bottom: 1.25rem;
    color: var(--color-black);
    background: var(--color-caruselbuttons);
    border: 0;
}

    .carousel-control-play-pause:hover {
        color: var(--color-black);
        background-color: #D5233F;
    }

    .carousel-control-play-pause:focus-visible {
        color: var(--color-white);
        background-color: #C00318;
        outline: none;
    }

    /* -------pause-------------- */

    .carousel-control-play-pause.pause::after {
        font-family: FontAwesome;
        content: "\f04c";
        font-size: 10px;
    }

    /* -------play--------  */

    .carousel-control-play-pause.play::after {
        font-family: FontAwesome;
        content: "\f04b";
        font-size: 10px;
    }

    .carousel-control-play-pause.play::after {
        transform: translateX(1px)
    }

/*--------biały prostokąd pod CARUSEL-------*/

.white-rectangle {
    height: 20px;
    background-color: var(--color-white);
    width: 100%;
}

/*--------logo BIP przy jednym slajdzie-------*/

.bip-logo-link {
    display: inline-block;
    position: absolute;
    bottom: 20px;
    right: 45px;
    z-index: 2;
    background-color: var(--color-white);
    border-radius: 8px;
    width: 56px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    margin-bottom: 1.25rem;
}

.bip-logo-link img {
    max-width: 48px;
    max-height: 24px;
    vertical-align: middle;
}

/* --------międzynarodowe------------- */

.h3_aktualnosci_wm {
    color: var(--color-gray-600);
    padding-top: 1rem;
    padding-left: 0.6rem;
    padding-right: 0.7rem;
    padding-bottom: 0.8rem;
    font-weight: 700;
    font-size: 18px;
}

.h3_aktualnosci_wm_data {
    color: #fffdfd;
    padding-top: 1.1rem;
    padding-left: 0.7rem;
    padding-right: 0.7rem;
    padding-bottom: 1.1rem;
    background-color: var(--color-primary);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0;

}

.bialy_pasek {
    padding-top: 8px;
    padding-right: 0px;
    background-color: var(--color-white);
    background-image: url(../img/trojkat_miedzy.svg);
    background-repeat: no-repeat;
}

.bialy_pasek_2 {
    padding-top: 8px;
    padding-right: 0px;
    background-color: var(--color-white);
}

.center-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 1rem;
    padding-right: 0.7rem;
}

#accordionFlushExample {
    --mdb-accordion-flush-btn-box-shadow: inset 0 0px 0 var(--color-white);
    --mdb-accordion-flush-border-bottom: 8px solid var(--color-white);
    --mdb-accordion-btn-padding-x: 0px;
    --mdb-accordion-btn-padding-y: 0rem;
    --mdb-accordion-bg: var(--color-tloszarepodtekst);
    --mdb-accordion-border-width: 0px;
    --mdb-accordion-active-bg: var(--color-tloszarepodtekst);
}

.accordion-button::after {
    width: 0;
}

.accordion-body {
    padding-top: 0;
}

.grid-container-element {
    display: grid;
    grid-template-columns: 3fr 5fr 0.5fr;
    /* border: 1px solid black; */
    height: 10%;
    width: 100%;
}

.accordion-arrow {
    transition: transform 0.3s ease-in-out;
    transform-origin: 75% 75%;
}

.accordion-button:not(.collapsed) .accordion-arrow {
    transform: scaleY(-1);
    color: var(--color-primary);
}

/* ----------współpraca---------------- */

/* Nadpisanie ogólnego stylu dla linków w tych konkretnych kontenerach */
#wspolpraca a {
    color: inherit;
    text-decoration: none;
}

#wspolpraca div a {
    color: inherit;
    text-decoration: none;
}

#wspolpraca_lista a {
    color: inherit;
    text-decoration: none;
}

#wspolpraca {
    height: 120px;
    font-size: 95%;
    color: var(--color-wspolpraca);
}

    #wspolpraca div {
        padding: 10px;
        border: 1px solid transparent;
    }

        #wspolpraca div:hover {
            border: 1px solid;
            --mdb-link-hover-color: #D5233F;
        }

#wspolpraca_lista {
    color: var(--color-wspolpracalista);
    text-decoration: underline;
}

#wspolpraca_lista.no-underline {
    text-decoration: none;
}

#wspolpraca_lista div:hover {
    border: solid;
    border-width: 0px;
    --mdb-link-hover-color: #016954;
}

#wspolpraca_lista ul {
    line-height: 200%;
}

    #wspolpraca_lista li:hover {
        color: #00b392;
        text-decoration: underline;
        text-decoration-color: #00b392;
        text-decoration-thickness: 1px;
    }

.square-button {
    background-color: var(--color-sqbuttonbg);
    color: var(--color-sqbuttontext);
    border: 1px solid var(--color-primary);
    border-radius: 10px;
    padding: 0px;
    width: 78px;
    height: 40px;
    text-align: center;
    transition: background-color 0.3s;
    display: inline-block;
    text-decoration: none;
    box-sizing: content-box;
}

.square-button--auto-width {
    width: auto;
    padding: 0 8px 0 8px;
}

.square-button:hover {
    background-color: var(--color-sqbuttonbgh);
    color: var(--color-sqbuttontexth);
    border: 1px solid var(--color-sqbuttonbgh);
    text-decoration: none;
}

.square-button span[class*="fa-"] {
    color: inherit;
}

    .square-button:hover span[class*="fa-"] {
    color: inherit;
}

.square-button--no-border {
    border: 1px solid transparent; /* Przezroczysta ramka, żeby uniknąć "skakania" podczas hover */
}

    .square-button--no-border:hover {
        background-color: white;
        color: black;
        border: 1px solid var(--color-sqbuttonbgh);
        text-decoration: none;
    }

/* Styl dla przycisku bez obramowania w trybie ciemnym */
[data-theme="dark"] .square-button--no-border {
    background-color: transparent;
    color: #e0e0e0; /* Biały tekst w ciemnym trybie */
    border: 1px solid transparent;
}

    /* Styl dla przycisku bez obramowania w trybie ciemnym podczas najechania */
    [data-theme="dark"] .square-button--no-border:hover {
        background-color: transparent;
        color: #00b392; /* Zielony tekst podczas najechania */
        border: 1px solid transparent;
        text-decoration: none;
    }

/* Biała ikona kopiowania w trybie ciemnym */
[data-theme="dark"] .fa-copy {
    color: #e0e0e0;
}

/* Biały kolor tekstu "Link skopiowany!" w trybie ciemnym */
[data-theme="dark"] .skopiowano {
    color: #e0e0e0;
}

/* Styl dla ikony kopiowania przy najechaniu w trybie ciemnym */
[data-theme="dark"] .square-button--no-border:hover .fa-copy {
    color: #00b392;
}

.inverted-button {
    background-color: var(--color-primary);
    color: var(--color-sqbuttontextB);
    border: 1px solid var(--color-primary);
    border-radius: 10px;
    padding: 0px;
    width: 108px;
    height: 40px;
    text-align: center;
    transition: background-color 0.3s, color 0.3s;
    display: inline-block;
    text-decoration: none;
    box-sizing: content-box;
}

.inverted-button--auto-width {
    width: auto;
    padding: 0 8px 0 8px;
    margin-left: 10px;
}

.inverted-button:hover {
    background-color: white;
    color: black;
    border: 1px solid var(--color-primary);
    text-decoration: none;
}



/* Footer Styles */
footer {
    color: #333;
    padding-top: 20px;
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 20px;
}

    footer .container {
        max-width: calc(100% - 40px); /* Adjust max-width to account for padding */
        background-color: var(--color-tloszarepodtekst);
        padding: 30px;
    }

    footer h5 {
        font-size: 18px;
        font-weight: bold;
        color: var(--color-gray-600);
        margin-bottom: 15px;
    }

    footer h6 {
        font-size: 16px;
        font-weight: bold;
        color: var(--color-gray-600);   
        margin-top: 20px;
        margin-bottom: 10px;
    }

    footer p {
        margin-bottom: 5px;
    }

    footer a {
        color: var(--color-gray-600);
        text-decoration: none;
    }

        footer a:hover {
            text-decoration: underline;
        }

    footer .social-icons {
        margin-right: 15px;
        padding-top: 15px;
        padding-bottom: 15px;
    }

        footer .social-icons a {
            font-size: 18px;
            margin-right: 15px;
        }

    footer ul {
        padding-left: 0;
    }

        footer ul li {
            margin-bottom: 10px;
            list-style-type: disc;
            color: var(--color-gray-600);
        }

    footer hr {
        margin: 10px 0;
        border-top: 1px solid #333;
    }

    footer .copyright {
        font-size: 12px;
        color: var(--color-gray-600);
    }

@media (max-width: 768px) {
    footer .col-md-6:last-child {
        margin-top: 30px;
    }
}
/* breadcrump */

.breadcrumb {
    --mdb-breadcrumb-margin-bottom: 0;
}

.breadcrumb-wrapper {
    margin-left: 20px;
    font-family: "PT Sans", sans-serif;
    font-weight: 400;
    font-size: 14px;
    margin-bottom: 0px;
    padding-bottom: 0px;
}

    .breadcrumb-wrapper .breadcrumb a {
        color: var(--color-primary);
        font-weight: 500;
        text-decoration: underline;
    }

    .breadcrumb-wrapper .breadcrumb-item span {
        color: var(--breadcrumb-text-color);
    }

/* Dark mode breadcrumb styling */
[data-theme="dark"] .breadcrumb-wrapper .breadcrumb a {
    color: #ffffff;
    font-weight: 500;
    text-decoration: underline;
}

/* wybrane orzecznictwo */

#wyborzecznictwo {
    color: #333;
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 20px;
    max-width: calc(100% - 40px); /* Adjust max-width to account for padding */
    background-color: var(--color-gray-100);
    padding: 10px 0px 10px;
}

@media (max-width: 768px) {
    #wyborzecznictwo .col-md-4:nth-child(n+2) {
        margin-top: 30px;
    }
}

.orzeczenie-box {
    background: var(--color-white);
    text-align: left;
    position: relative;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 0.3rem;
    box-shadow: var(--shadow-default);
    margin-bottom: 20px; /* dodajemy margines na dole, aby oddzielić orzeczenia */
}

/* komunikaty BO */

#komunikatybo {
    color: #333;
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 20px;
    max-width: calc(100% - 40px); /* Adjust max-width to account for padding */
    background-color: var(--color-gray-100);
    padding: 10px 0px 10px;
}

/* oswiadczenia majatkowe */

#oswiadczenia {
    margin-bottom: 20px;
    max-width: calc(100% - 40px);
    background-color: var(--color-gray-100);
    padding: 10px 0px 10px;
}

#komunikatybo .modal {
    font-size: 1rem;
}

@media (max-width: 768px) {
    #komunikatybo .col-md-4:nth-child(n+2) {
        margin-top: 30px;
    }
}

.komunikaty-box {
    background: var(--color-white);
    text-align: left;
    position: relative;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 0.3rem;
    box-shadow: var(--shadow-default);
    margin-bottom: 20px; /* dodajemy margines na dole, aby oddzielić orzeczenia */
}

.oswiadczenia-box {
    background: var(--color-white);
    text-align: left;
    position: relative;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 0.3rem;
    box-shadow: var(--shadow-default);
}

#oswiadczenia-header {
    padding-top: 20px;
}

.oswiadczenia-body-text {
    padding-top: 10px;
    padding-bottom: 10px;
}

.komunikaty-data {
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    font-size: 10px;
    line-height: 150%;
    color: var(--color-gray-600);
}

/* dowiedz się więcej */
.btn-custom {
    background-color: var(--color-primary);
    border-color: #fff;
}

    .btn-custom:hover {
        background-color: #015745;
        border-color: #f8f9fa;
    }

/* SLIDER */

.btn {
    --mdb-btn-hover-bg: var(--color-white);
}

/* Right NAV menu */
.right-navmenu-title {
    display: block;
    padding: 20px 15px 15px;
    color: var(--color-primary);
    margin-bottom: 0px;
}

.right-navmenu-list {
    list-style-type: none;
    padding-left: 0;
}

.right-navmenu-item {
    margin-bottom: 0px;
}

.right-navmenu-link {
    display: block;
    padding: 6px 15px;
    text-decoration: none;
    color: var(--color-rmenulink);
    transition: background-color 0.3s;
}

    .right-navmenu-link:hover {
        background-color: var(--color-rmenulinkhover);
    }

    .right-navmenu-link i {
        width: 20px;
    }

.right-navmenu-h3 {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    margin: 0;
    padding: 0;
    display: inline;
    line-height: inherit;
}

span.right-navmenu-h3 {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    margin: 0;
    padding: 0;
    display: inline;
    line-height: inherit;
}


.nav-menu-h2 {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    margin: 0;
    padding: 0;
    display: inline;
    line-height: inherit;
}

/* dropdown select */
.custom-dropdown {
    width: 150px;
    padding: 10px;
    margin-left: 10px;
    border-radius: 5px;
    font-size: 1rem;
    color: var(--color-kboyear);
    background-color: var(--color-tloszarepodtekst);
    border: var(--color-kboyearborder);
}

    .custom-dropdown:hover {
        border-color: #999;
    }

    .custom-dropdown option {
        padding: 5px;
    }

.fa-solid {
    color: var(--color-czytajico);
}

/* SVG accessible */

    /* Style dla ikony */
.nav-item.dropdowna .nav-link img[src*="accessible.svg"] {
    filter: var(--icon-filter);
    transition: filter 0.2s ease-in-out;
}

    /* Style dla strzałki dropdown */
.nav-item.dropdowna .nav-link::after {
    color: var(--after-color);
/*    transition: color 0.2s ease-in-out;*/
}

    /* Wspólny hover dla obu elementów */
.nav-item.dropdowna .nav-link:hover img[src*="accessible.svg"],
.nav-item.dropdowna .nav-link:hover::after {
    filter: var(--icon-hover-filter);
    color: var(--icon-hover-color);
}

    /* Stan aktywnego dropdownu */
.nav-item.dropdowna.show .nav-link img[src*="accessible.svg"],
.nav-item.dropdowna.show .nav-link::after {
    filter: var(--icon-hover-filter);
    color: var(--icon-hover-color);
}

    /* Powrót do stanu domyślnego gdy dropdown jest otwarty ale nie ma hovera */
.nav-item.dropdowna.show .nav-link:not(:hover) img[src*="accessible.svg"],
.nav-item.dropdowna.show .nav-link:not(:hover)::after {
    filter: var(--icon-filter);
    color: var(--after-color);
}

/* Style dla ikon search.svg i accessible.svg w nawigacji mobilnej */
.nav-item.anty-nav img[src*="search.svg"],
.nav-item.anty-nav img[src*="accessible.svg"],
div.col-2.ms-auto img[src*="search.svg"],
div.col-auto img[src*="accessible.svg"] {
    filter: var(--icon-filter);
}

.nav-item.anty-nav img[src*="search.svg"]:hover,
.nav-item.anty-nav img[src*="search.svg"]:focus,
.nav-item.anty-nav a:focus img[src*="search.svg"],
.nav-item.anty-nav img[src*="search.svg"]:active,
.nav-item.anty-nav img[src*="accessible.svg"]:hover,
.nav-item.anty-nav img[src*="accessible.svg"]:focus,
.nav-item.anty-nav a:focus img[src*="accessible.svg"],
.nav-item.anty-nav img[src*="accessible.svg"]:active,
div.col-2.ms-auto img[src*="search.svg"]:hover,
div.col-2.ms-auto img[src*="search.svg"]:focus,
div.col-2.ms-auto a:focus img[src*="search.svg"],
div.col-2.ms-auto img[src*="search.svg"]:active,
div.col-auto img[src*="accessible.svg"]:hover,
div.col-auto img[src*="accessible.svg"]:focus,
div.col-auto a:focus img[src*="accessible.svg"],
div.col-auto img[src*="accessible.svg"]:active {
    filter: var(--icon-hover-filter);
}

/* KEYBOARD LISTENER */

/* Style dla fokusa na aktualnościach */
.news-item:focus-visible {
    outline: 2px solid #016954;
    border-radius: 10px;
}

.news-item {
    position: relative;
    padding: 10px;
}

/* Style dla fokusa na obrazkach */
.news-image:focus-visible {
    outline: 2px solid #016954;
    border-radius: 10px;
}

.news-image:focus:not(:focus-visible) {
    outline: none;
}

/* Style dla fokusa na przyciskach "Czytaj dalej" */
.button-overrides:focus-visible {
    outline: 2px solid #016954;
    border-radius: 5px;
    text-decoration: underline;
}

.button-overrides:focus:not(:focus-visible) {
    outline: none;
    text-decoration: none;
}

/* Dodanie tabindexu dla lepszej nawigacji */
[tabindex]:focus-visible {
    outline: 2px solid #016954;
}

[tabindex]:focus:not(:focus-visible) {
    outline: none;
}

/* Style dla fokusa na elementach międzynarodowych */
.grid-container-element:focus-visible {
    outline: 2px solid #016954;
    border-radius: 5px;
}

[data-theme="dark"] .grid-container-element:focus-visible {
    outline: 2px solid #00b392;
}

/* Style dla przycisków akordeonu */
.accordion-button {
    box-shadow: none !important;
}

    .accordion-button:focus {
        box-shadow: none !important;
        outline: none !important;
    }

    .accordion-button:focus-visible {
        outline: 2px solid #016954 !important;
        border-radius: 5px;
    }

[data-theme="dark"] .accordion-button:focus-visible {
    outline: 2px solid #00b392 !important;
}

/* Usuwamy domyślne style Bootstrap dla akordeonu */
.accordion-button:not(.collapsed) {
    box-shadow: none !important;
}

.accordion-button.collapsed {
    box-shadow: none !important;
}

/* Resetowanie wszystkich domyślnych outlinów przy fokusie myszką */
*:focus:not(:focus-visible) {
    outline: none !important;
    box-shadow: none !important;
}

/*nagłówek tabeli*/
.tabela {
    background-color: var(--color-tloszarepodtekst);
}

/*COOKIE*/

#cb-cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    border-radius: 0;
    display: none;
}

    #cb-cookie-banner a {
        color: #ffffff;
        text-decoration: underline;
    }

        #cb-cookie-banner a:hover {
            color: #00b392;
            text-decoration: none;
        }

/* Style dla linków MOBILE */
.mobile-link {
    display: block;
    position: relative;
    z-index: 100; /* Wyższy z-index, żeby linki były zawsze na wierzchu */
    cursor: pointer;
}

.mobile-menu a {
    pointer-events: auto !important; /* Wymuszenie obsługi zdarzeń */
}

/* Usunięcie ewentualnych stylów, które mogą blokować interakcje */
.collapse.show {
    z-index: 1030;
    position: relative;
}

/* Style dla przełącznika mobilnego */
.checkbox_top-label {
    cursor: pointer;
    position: relative;
    z-index: 100;
}

/* Naprawienie przeciążania stylów */
.anty_link a,
.mobile-menu a {
    pointer-events: auto !important;
}

/* Zapewnienie, że panel mobilny jest zawsze interaktywny */
#navbarToggleExternalContent.show {
    pointer-events: auto !important;
}

/* Naprawienie położenia switcha języka */
.mobile-lang-switcher {
    position: relative;
    z-index: 100;
    padding: 0.5rem;
}

/* Link skopiowano! */
.skopiowano {
    display: none;
    margin-right: 40px;
    font-weight: bold;
    color: #016954;
}

/* Style dla opływania obrazów */
.article-image-container {
    max-width: 380px;
    margin-bottom: 1rem;
}

@media (max-width: 576px) {
    .article-image-container {
        max-width: 100%;
        float: none !important;
        margin-right: 0 !important;
        margin-bottom: 1.5rem;
    }
}

/* Sreen reader only*/
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}
/* -------------------------- */

/* Style dla aktywnych elementów nawigacji głównej */
.nav-item .nav-link.active,
.nav-item .nav-link[aria-current="page"] {
    color: var(--color-primary) !important;
    font-weight: bold;
    position: relative;
    text-decoration: none;
    border-bottom: none;
}

.nav-item .nav-link.active span,
.nav-item .nav-link[aria-current="page"] span {
    border-bottom: 3px solid var(--color-primary);
    padding-bottom: 2px;
}

/* Style dla aktywnego przycisku kontaktu */
.active-nav-item {
    color: var(--color-primary) !important;
    font-weight: bold;
    position: relative;
    text-decoration: none;
    border-bottom: none;
}

.active-nav-item span {
    border-bottom: 3px solid var(--color-primary);
    padding-bottom: 2px;
}

/* Zachowanie oryginalnych stylów dla nieaktywnego przycisku kontaktu */
#kontakt {
    color: var(--color-navibutton);
    font-weight: bold;
    transition: color 0.3s;
}

#kontakt:hover {
    color: var(--color-primary);
}


/* Style dla aktywnych elementów w menu rozwijanych */
.dropdown-menu .list-group-item.active,
.dropdown-menu .list-group-item[aria-current="page"] {
    background-color: var(--color-dropmenuactive) !important;
    color: var(--mdb-list-group-color);
    border: var(--mdb-list-group-border-width) solid var(--mdb-list-group-border-color);
}

/* Style dla sfokusowanych elementów menu */
.nav-link:focus,
.list-group-item:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* Style dla menu prawego (bocznego) */
.right-navmenu-link.active,
.right-navmenu-link[aria-current="page"] {
    position: relative;
    background-color: transparent;
    color: var(--color-rmenulink) !important;
}

/* Dodajemy pionowy pasek jako pseudo-element */
.right-navmenu-link.active::before,
.right-navmenu-link[aria-current="page"]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px; /* Szerokość paska */
    height: 100%;
    background-color: var(--color-primary);
}

/* Dla nawigacji mobilnej */
@media (max-width: 992px) {
    .nav-item .nav-link.active,
    .nav-item .nav-link[aria-current="page"] {
        background-color: rgba(1, 105, 84, 0.1);
        border-radius: 4px;
    }

}

/* Dla trybu ciemnego */


[data-theme="dark"] .dropdown-menu .list-group-item.active,
[data-theme="dark"] .dropdown-menu .list-group-item[aria-current="page"] {
    background-color: var(--color-dropmenuactive) !important;
    color: var(--mdb-list-group-color);
    border: var(--mdb-list-group-border-width) solid var(--mdb-list-group-border-color);
}

/* Dla trybu ciemnego - dostosowanie kolorów (Right menu) */
[data-theme="dark"] .right-navmenu-link.active::before,
[data-theme="dark"] .right-navmenu-link[aria-current="page"]::before {
    background-color: var(--color-primary);
}

[data-theme="dark"] .right-navmenu-link.active,
[data-theme="dark"] .right-navmenu-link[aria-current="page"] {
    background-color: rgba(0, 179, 146, 0.1);
}

/* === POPRAWKI WCAG - DODANE NA KOŃCU PLIKU === */

/* Klasy zastępujące style inline */
.search-header-spacing {
    padding-top: 20px;
    padding-left: 30px;
}

.search-result-meta {
    color: #707070;
    font-size: 13px;
    font-weight: bold;
}

.search-highlight {
    background-color: #90EE90;
    padding: 2px 4px;
    border-radius: 2px;
}

.article-spacing-top {
    padding-top: 20px;
}

.article-content-spacing {
    padding: 10px 55px 10px;
}

@media (max-width: 768px) {
    .article-content-spacing {
        padding: 10px 20px 10px;
    }

    #content-padding {
        padding: 0px 20px 10px !important;
    }
}

.image-min-width {
    min-width: 150px;
}

.carousel-text-size {
    font-size: 16px;
}

/* Klasa dla tekstu w karuzeli z wyższą specyficznością niż .overlay p */
/* Klasy dla nagłówków zachowujące wygląd */
.carousel-looks-like-h1 {
    color: #F5F5F5;
    font-size: 2.7em;
    font-weight: 700;
    line-height: 1.2;
    padding: 0;
}

.carousel-looks-like-h2 {
    color: #F5F5F5;
    font-size: 2.1em;
    font-weight: 700;
    line-height: 1.2;
    padding: 0;
}

.overlay .carousel-text-size {
    font-size: 16px;
    color: #F5F5F5;
    line-height: 1.4;
    margin-top: 25px;
}

/* Klasy dla nagłówków zachowujące wygląd */
.looks-like-h1 {
    margin-bottom: 5px;
    padding: 0;
    font-weight: 700;
    color: var(--color-primary);
    font-size: 30px;
    line-height: normal;
}

/* Wyższa specyficzność dla h2 z klasą looks-like-h1 */
h2.looks-like-h1 {
    margin-bottom: 5px !important;
    padding: 0 !important;
    font-weight: 700 !important;
    color: var(--color-primary) !important;
    font-size: 30px !important;
}

.overlay-title {
    font-size: 2.5rem;
    font-weight: bold;
    color: var(--color-white);
    margin-bottom: 1rem;
    line-height: 1.2;
}

.overlay-subtitle {
    font-size: 2rem;
    font-weight: bold;
    color: var(--color-white);
    margin-bottom: 1rem;
    line-height: 1.2;
}

/* Komunikaty o błędach i statusach */
.error-message {
    color: var(--color-danger);
    font-weight: bold;
    background: #fff3cd;
    border: 1px solid #ffeaa7;
    padding: 8px 12px;
    border-radius: 4px;
    margin: 10px 0;
}

.important-notice {
    background-color: #fff3cd;
    border: 1px solid #ffeaa7;
    padding: 10px;
    border-radius: 4px;
    margin: 10px 0;
}

.status-success {
    color: #2e7d32;
    font-weight: 500;
}

.status-warning {
    color: #f57c00;
    font-weight: 500;
}

.status-error {
    color: #d32f2f;
    font-weight: 500;
}

/* Wyróżnienia w tekście */
.highlight-text {
    background-color: #fff176;
    padding: 2px 4px;
    border-radius: 2px;
}

/* Dodatkowe informacje */
.additional-info {
    font-size: 0.875rem;
    color: var(--color-gray-500);
    font-style: italic;
}

/* Responsywność dla nowych klas */
@media (max-width: 768px) {
    .looks-like-h1,
    .overlay-title {
        font-size: 2rem;
        line-height: 2.4rem;
    }
    
    .overlay-subtitle {
        font-size: 1.5rem;
    }
    
    .search-header-spacing {
        padding-left: 15px;
    }
}

/* Tryb ciemny */
[data-theme="dark"] .search-highlight {
    background-color: #4a5d23;
    color: #ffffff;
}

[data-theme="dark"] .error-message {
    background: #3d2914;
    border-color: #8b6914;
    color: #ffc107;
}

[data-theme="dark"] .important-notice {
    background-color: #3d2914;
    border-color: #8b6914;
}

/* Klasa dla sekcji współpracy międzynarodowej */
.cooperation-section {
    font-size: 15px;
}

/* Klasa kopiująca styles z footer h5 */
.footer-h5-style {
    font-size: 18px;
    font-weight: bold;
    color: var(--color-gray-600);
    margin-bottom: 20px;
}

/* Zwiększenie obszaru kliknięcia dla elementów list */
/* Klasa dla elementów span z minimalnym rozmiarem 24px */
.target-size-24 {
    min-height: 24px;
    padding: 4px 0;
    line-height: 1.4;
    display: inline-block; /* Potrzebne dla span, żeby min-height działało */
    text-decoration: underline;
}

/* Klasa dla pełnych bloków z minimalnym rozmiarem 24px */
.target-size-24-block {
    min-height: 24px;
    padding: 4px 0;
    line-height: 1.4;
    display: block; /* Pełna szerokość */
    text-decoration: underline;
}

/* Klasa dla podkreślonych linków w stopce */
.footer-link-underlined {
    text-decoration: underline !important;
}

.footer-link-underlined a {
    text-decoration: underline !important;
    color: var(--color-gray-600);
}

.footer-link-underlined a:hover {
    text-decoration: underline !important;
    color: var(--color-primary);
}

/* Dla trybu ciemnego */
[data-theme="dark"] .footer-link-underlined a {
    color: var(--color-gray-600);
    text-decoration: underline !important;
}

[data-theme="dark"] .footer-link-underlined a:hover {
    color: var(--color-primary);
    text-decoration: underline !important;
}

/* === WCAG - Usuwanie wszystkich stylów inline === */

/* Klasy dla pozycjonowania */
.position-relative {
    position: relative;
}

/* Klasy dla logo */
.logo-main-size {
    min-width: 190px;
    margin-bottom: 10px;
}

.logo-mini-size {
    min-width: 280px;
    margin-bottom: 10px;
}

/* Klasy dla nawigacji */
.nav-padding-right {
    padding-right: 28px;
}

.nav-margin-font {
    margin: 7px 40px 7px 40px;
    font: 17px 'PT Sans', sans-serif;
}

.nav-padding-left {
    padding-left: 0.15rem;
}

.nav-column-width-10 {
    width: 10px;
}

.nav-column-width-40 {
    width: 40px;
}

/* Klasy dla często używanych paddingów */
.article-padding-top {
    padding-top: 20px;
}

.article-padding-full {
    padding: 10px 55px 10px;
}

.article-padding-no-left {
    padding: 0px 55px 10px;
}

.article-content-padding {
    padding: 30px 55px 10px;
}

.kommunikaty-margin-bottom {
    margin-bottom: 20px;
}

/* Klasy dla rozmiarów obrazków */
.image-min-width-215 {
    min-width: 215px;
}

.image-min-width-380 {
    max-width: 380px;
}

/* Klasy dla dropdown menu */
.dropdown-min-width-600 {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    min-width: 600px;
}

@media (max-width: 991.98px) {
    .dropdown-min-width-600 {
        min-width: 100%;
    }
}

.dropdown-min-width-265 {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    min-width: 265px;
}

.dropdown-min-width-300 {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    min-width: 300px;
}

.dropdown-min-width-250 {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    min-width: 250px;
}

/* Klasy dla czcionek */
.font-pt-sans-16 {
    font: 16px 'PT Sans', sans-serif;
}

.font-weight-bold-style {
    font-weight: bold;
}

/* Klasy dla metadanych */
.article-meta-style {
    color: #707070;
    font-size: 13px;
    font-weight: bold;
}

/* Klasa dla ukrywania elementów */
.display-none {
    display: none;
}

/* Responsywność */
@media (max-width: 768px) {
    .logo-main-size,
    .logo-mini-size {
        min-width: 280px;
        margin-bottom: 8px;
    }
    
    .nav-margin-font {
        margin: 5px 20px 5px 20px;
        font-size: 15px;
    }
    
    .article-padding-full,
    .article-padding-no-left,
    .article-content-padding {
        padding: 10px 20px 10px;
    }
}

/* === WCAG Poprawki - Style inline zastąpione klasami === */

/* Klasy dla obrazów - różne minimalne szerokości */
.image-min-width-150 {
    min-width: 150px;
}

.image-min-width-215 {
    min-width: 215px;
}

.image-min-width-320 {
    min-width: 320px;
}

.image-min-width-325 {
    min-width: 325px;
}

/* Klasy dla kolumn */
.column-min-width-325 {
    min-width: 325px;
}

.column-min-width-215 {
    min-width: 215px;
}

/* Klasa dla paddingu górnego */
.padding-top-20 {
    padding-top: 20px;
}

/* Klasa dla paddingu lewego */
.padding-left-50 {
    padding-left: 50px;
}

/* Responsywność dla obrazów na mniejszych ekranach */
@media (max-width: 768px) {
    .image-min-width-325,
    .column-min-width-325 {
        min-width: 280px;
    }
    
    .image-min-width-215,
    .column-min-width-215 {
        min-width: 180px;
    }
    
    .image-min-width-320 {
        min-width: 280px;
    }
    
    .image-min-width-150 {
        min-width: 120px;
    }
    
    .padding-left-50 {
        padding-left: 20px;
    }
}

/* === WCAG poprawki - Semantyczne klasy dla komponentów Dzialalnosc === */

/* Padding dla sekcji artykułów */
.articles-row-padding {
    padding: 30px 55px 10px;
}

/* Responsywność dla sekcji artykułów */
@media (max-width: 768px) {
    .articles-row-padding {
        padding: 20px 15px 10px;
    }
}

/* Padding dla sekcji orzecznictwo i komunikaty */
.section-row-padding {
    padding: 30px 40px 10px;
}

/* Responsywność dla sekcji orzecznictwo i komunikaty */
@media (max-width: 768px) {
    .section-row-padding {
        padding: 20px 15px 10px;
    }
    
    /* Zmniejszamy boczny padding sekcji na mobile - wykluczamy first żeby nie psuć menu */
    section[id]:not(:first-of-type) {
        padding: 5px 0px 5px;
    }
    
    /* Dla sekcji #first - zachowujemy padding-top z section:first-of-type */
    section:first-of-type {
        padding: 320px 0px 5px;
    }
}

/* === WCAG poprawki - Semantyczna klasa dla h2 wyglądającego jak h3 === */

/* Klasa dla h2 w prawym menu, które ma wyglądać jak h3 */
.h2-looks-like-h3 {
    display: block;
    padding: 20px 15px 15px;
    color: var(--color-primary);
    margin-bottom: 0px;
    /* Kopiujemy dokładnie styles z .right-navmenu-title */
    font-size: 18px; /* Rozmiar h3 */
    font-weight: 700;   /* Grubość h3 */
}

/* === Style dla wyników wyszukiwania === */

.search-result-category {
    font-size: 0.875rem;
    color: var(--color-gray-500);
    font-style: italic;
    margin-left: 8px;
}

.search-result-excerpt {
    font-size: 0.9rem;
    color: var(--color-gray-600);
    margin-top: 8px;
    margin-bottom: 16px;
    line-height: 1.4;
}

/* Style dla listy wyników wyszukiwania */
.search-results ul {
    list-style-type: none;
    padding-left: 0;
}

.search-results li {
    margin-bottom: 20px;
    padding: 15px;
    border: 1px solid var(--color-gray-200);
    border-radius: 8px;
    background-color: var(--color-white);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.2s ease;
}

.search-results li:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.search-results a {
    color: var(--color-primary);
    text-decoration: none;
    font-weight: 600;
    font-size: 1.1rem;
    line-height: 1.3;
}

.search-results a:hover {
    color: var(--color-primary-light);
    text-decoration: underline;
}

/* Responsywność dla wyników wyszukiwania */
@media (max-width: 768px) {
    .search-results li {
        padding: 12px;
        margin-bottom: 15px;
    }
    
    .search-results a {
        font-size: 1rem;
    }
    
    .search-result-excerpt {
        font-size: 0.85rem;
    }
}

/* Tryb ciemny dla wyników wyszukiwania */
[data-theme="dark"] .search-results li {
    background-color: var(--color-white);
    border-color: var(--color-gray-200);
}

[data-theme="dark"] .search-result-category {
    color: var(--color-gray-400);
}

[data-theme="dark"] .search-result-excerpt {
    color: var(--color-gray-400);
}

.heading-style {
    font-weight: bold;
    font-size: 1.3em;
    margin: 1em 0 0.5em 0;
}

.center-heading {
    text-align: center;
}

/* === WCAG poprawki - Klasy dla nagłówków zachowujące wygląd h3 === */

/* Klasa dla h2 które powinny wyglądać jak h3_historia */
h2.h3_historia {
    color: var(--color-gray-600);
    padding-bottom: 0;
    font-size: 18px; /* Rozmiar h3 */
    font-weight: 700; /* Grubość h3 */
    margin-bottom: 5px;
}

/* Klasa dla h4 które powinny wyglądać jak h3_historia */
h4.h3_historia {
    color: var(--color-gray-600);
    padding-bottom: 0;
    font-size: 18px; /* Rozmiar h3 */
    font-weight: 700; /* Grubość h3 */
    margin-bottom: 5px;
}

/* Klasa dla p które powinny wyglądać jak h3_historia */
p.h3_historia {
    color: var(--color-gray-600);
    padding-bottom: 0;
    font-size: 18px; /* Rozmiar h3 */
    font-weight: 700; /* Grubość h3 */
    margin-bottom: 5px;
}

/* Klasa dla h2 które powinny wyglądać jak h3_aktualnosci */
h2.h3_aktualnosci {
    color: var(--color-gray-600);
    padding-bottom: 0.5rem;
    font-size: 18px; /* Rozmiar h3 */
    font-weight: 700; /* Grubość h3 */
    margin-bottom: 5px;
}

/* Klasy dla h2 w akordeonie współpracy międzynarodowej */
h2.h3_aktualnosci_wm_data {
    color: #fffdfd;
    padding-top: 1.1rem;
    padding-left: 0.7rem;
    padding-right: 0.7rem;
    padding-bottom: 1.1rem;
    background-color: var(--color-primary);
    font-size: 18px; /* Rozmiar h3 */
    font-weight: 700; /* Grubość h3 */
    margin-bottom: 0;
}

h2.h3_aktualnosci_wm {
    color: var(--color-gray-600);
    padding-top: 1rem;
    padding-left: 0.6rem;
    padding-right: 0.7rem;
    padding-bottom: 0.8rem;
    font-size: 18px; /* Rozmiar h3 */
    font-weight: 700; /* Grubość h3 */
    margin-bottom: 0;
}

/* === WCAG poprawki - Styl hover dla dropdown-item === */

/* Nadpisanie domyślnego stylu Bootstrap dla dropdown-item hover */
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: var(--color-dropmenuactive) !important;
    color: var(--mdb-list-group-color);
}

/* Dla trybu ciemnego */
[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background-color: var(--color-dropmenuactive) !important;
    color: var(--mdb-list-group-color);
}

/* === WCAG poprawki - Puste wiersze w menu dropdown === */

/* Pusty wiersz na początku menu dropdown */
.dropdown-spacer-top {
    border: none !important;
    background: transparent !important;
    height: 24px;
    padding: 0;
    margin: 0;
    pointer-events: none;
}

/* Pusty wiersz na końcu menu dropdown z zaokrąglonymi rogami */
.dropdown-spacer-bottom {
    border: none !important;
    background: transparent !important;
    height: 24px;
    padding: 0;
    margin: 0;
    pointer-events: none;
    border-radius: 0.5rem;
}

/* Ostatni element w menu dropdown bez dolnego bordera */
.dropdown-menu-last-item {
    border-bottom: none !important;
}

/* Menu dostępności z mocniejszym cieniem */
.accessibility-dropdown-menu {
    box-shadow: var(--shadow-strong) !important;
}

/* === WCAG Language Switcher Accessibility Classes === */
/* Dodane dla poprawek WCAG - zachowanie istniejącego wyglądu */

.language-switcher-mobile {
    position: relative;
}

.language-switcher-dropdown {
    font: 16px 'PT Sans', sans-serif;
}

/* Statyctyki i roczniki */

.reports-list {
    list-style: none;
    padding: 0;
    counter-reset: list-counter;
}

.reports-list li {
    margin-bottom: 12px;
    padding: 15px 15px 15px 35px; /* Dodajemy więcej miejsca z lewej strony dla numeru */
    background-color: #f8f9fa;
    border-left: 4px solid #016954;
    border-radius: 4px;
    transition: background-color 0.3s ease;
    counter-increment: list-counter;
    position: relative;
}

.reports-list li::before {
    content: counter(list-counter) ".";
    position: absolute;
    left: 12px; /* Pozycjonujemy numer tuż po zielonej linii */
    top: 15px;
    font-weight: bold;
    color: #333; /* Zielony kolor pasujący do linii */
    font-size: 1rem;
}

.reports-list li:hover {
    background-color: #e8f5f0;
}

/* Wariant bez numeracji */
.reports-list-no-numbers {
    list-style: none;
    padding: 0;
}

.reports-list-no-numbers li {
    margin-bottom: 12px;
    padding: 15px;
    background-color: #f8f9fa;
    border-left: 4px solid #016954;
    border-radius: 4px;
    transition: background-color 0.3s ease;
}

.reports-list-no-numbers li:hover {
    background-color: #e8f5f0;
}

.year {
    font-weight: bold;
    color: #333;
    margin-right: 15px;
    font-size: 1.1em;
}

.download-link {
    text-decoration: underline;
    color: #333;
    font-weight: 500;
    transition: color 0.3s ease;
}

.download-link:hover {
    color: #555;
}

.attachment {
    margin-top: 8px;
    margin-left: 20px;
    font-size: 0.9em;
}

.attachment a {
    text-decoration: underline;
    color: #333;
}

/* Dark mode dla roczników i statystyk */
[data-theme="dark"] .reports-list li,
[data-theme="dark"] .reports-list-no-numbers li {
    background-color: #2a2a2a;
    border-left-color: var(--color-primary);
}

[data-theme="dark"] .reports-list li:hover,
[data-theme="dark"] .reports-list-no-numbers li:hover {
    background-color: #333;
}

[data-theme="dark"] .reports-list li::before,
[data-theme="dark"] .year {
    color: #e0e0e0;
}

[data-theme="dark"] .download-link,
[data-theme="dark"] .attachment a {
    color: #e0e0e0;
}

[data-theme="dark"] .download-link:hover {
    color: var(--color-primary);
}

/* === End WCAG Language Switcher Classes === */

/* === Klasy dla Deklaracji Dostępności (WCAG) === */

/* Lista punktowa w deklaracji dostępności */
.declaration-list {
    list-style-type: disc;
    margin: 0;
    padding-left: 20px;
    font-family: "PT Sans", sans-serif;
    font-size: 15px;
    line-height: 18.4px;
    color: var(--color-gray-600);
}

.declaration-list li {
    margin-bottom: 0;
    padding: 0;
}

/* Wcięcia dla opisów budynków */
.declaration-indent {
    padding-left: 40px;
    font-family: "PT Sans", sans-serif;
    font-size: 15px;
    line-height: 18.4px;
    color: var(--color-gray-600);
}

/* Kombinowane wcięcie dla list wewnątrz wcięć */
.declaration-list.declaration-indent {
    padding-left: 60px; /* 40px wcięcie + 20px dla list */
}

/* Nagłówki tylko dla czytników ekranu */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Style dla sekcji deklaracji */
section[aria-labelledby] {
    margin-bottom: 1rem;
}

/* Nagłówki h2 w deklaracji dostępności */
#deklaracja,
#pozostale-informacje,
#a11y-architektura,
#ewakuacja,
#komunikacja,
#koordynator {
    font-family: "PT Sans", sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 22px;
    color: var(--color-primary);
    margin: 1.5rem 0 1rem 0;
}
/* Nagłówki h3 w deklaracji dostępności */
#status,
#tresc-nieobjeta,
#przygotowanie-deklaracji,
#skroty-klawaiturowe,
#informacje-zwrotne,
#a11y-procedura,
#dojazd,
#boduena,
#jasna-2,
#jasna-6,
#dostepnosc-nieslyszacy {
    font-family: "PT Sans", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    color: var(--color-gray-600);
    margin: 1.2rem 0 0.8rem 0;
}
/* Nagłówki h4 w deklaracji dostępności */
#opis-wejscie,
#opis-schody,
#parking,
#pies,
#zgloszenie,
#ETR,
#PJM {
    font-family: "PT Sans", sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 18.4px;
    color: var(--color-gray-600);
    margin: 1rem 0 0.6rem 0;
}

/* Dostosowanie trybu ciemnego */
[data-theme="dark"] .declaration-list,
[data-theme="dark"] .declaration-indent {
    color: var(--color-gray-600);
}

[data-theme="dark"] #status-dostepnosci,
[data-theme="dark"] #informacje-zwrotne,
[data-theme="dark"] #procedura,
[data-theme="dark"] #dojazd,
[data-theme="dark"] #dostepnosc-architektoniczna,
[data-theme="dark"] #dostepnosc-informacyjna,
[data-theme="dark"] #dostepnosc-sluchowa,
[data-theme="dark"] #strona-internetowa,
[data-theme="dark"] #aplikacja-portal,
[data-theme="dark"] #aplikacja-baza,
[data-theme="dark"] #budynek-boduena,
[data-theme="dark"] #budynek-jasna24,
[data-theme="dark"] #budynek-jasna6,
[data-theme="dark"] #zgloszenia,
[data-theme="dark"] #wejscie-boduena,
[data-theme="dark"] #parking-boduena,
[data-theme="dark"] #komunikacja-boduena,
[data-theme="dark"] #psy-boduena,
[data-theme="dark"] #alternatywny-boduena,
[data-theme="dark"] #wejscie-jasna24,
[data-theme="dark"] #parking-jasna24,
[data-theme="dark"] #komunikacja-jasna24,
[data-theme="dark"] #psy-jasna24,
[data-theme="dark"] #alternatywny-jasna24,
[data-theme="dark"] #wejscie-jasna6,
[data-theme="dark"] #parking-jasna6,
[data-theme="dark"] #komunikacja-jasna6,
[data-theme="dark"] #psy-jasna6,
[data-theme="dark"] #alternatywny-jasna6,
[data-theme="dark"] #koordynator {
    color: var(--color-gray-600);
}

/* === BIP - Metadata artykułów === */

/* Metadane artykułów w BIP (informacje o publikacji i edycji) */
.bip-content-metadata {
    font-size: 0.8125rem;
    line-height: 1.3;
}

.bip-content-metadata .bip-meta-row {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0 0.5rem;
    margin-bottom: 0.35rem;
}

.bip-content-metadata .bip-meta-label {
    font-weight: 600;
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    .bip-content-metadata .bip-meta-row {
        grid-template-columns: 1fr;
        margin-bottom: 0.5rem;
    }
}

/* === BIP - Przesunięcie dropdown menu "Rejestry / sprawozdania / oświadczenia" === */

/* Przesunięcie menu w lewo, aby nie wystawało poza obrys strony */
.dropdown-rejestry-bip[data-bs-popper] {
    left: -175px;
}

@media (max-width: 991.98px) {
    .dropdown-rejestry-bip[data-bs-popper] {
        left: 0;
    }
}

/* === BIP - Zmniejszony padding nawigacji === */

/* Mniejszy odstęp między guzikami nawigacji tylko dla stron BIP */
.bip-page .navbar {
    --mdb-navbar-nav-link-padding-x: 1.4rem;
}

/* === Artykuł - nagłówek (NSA + BIP) === */

.article-header-top {
    padding-top: 20px;
}

.article-header-margins {
    margin-left: 3rem;
    margin-right: 3rem;
}

@media (max-width: 768px) {
    .article-header-top {
        padding-top: 10px;
    }

    .article-header-margins {
        margin-left: 1rem;
        margin-right: 1rem;
    }
}