/* Kontener główny spisu treści */
#ez-toc-container {
    background-color: #F7F4F9 !important;
    border: 1px solid #E7DCEC !important;
    border-radius: 1rem !important;
    padding: 2.25rem 2.5rem 1rem 2.5rem;
}

#ez-toc-container.toc_close{
	padding: 2.25rem 2.5rem;
}

/* Nagłówek spisu treści */
.ez-toc-title-container {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding-bottom: 1.25rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #E7DCEC;
}

.ez-toc-title {
    color: #7A2E84 !important;
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    margin: 0 !important;
}

/* Ikona przy nagłówku */
.ez-toc-title-container::before {
    content: "\f0ca";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 9999px;
    background-color: #7A2E84;
    color: white;
    font-size: 0.875rem;
}

/* Reset liczników */
#ez-toc-container {
    counter-reset: main-item;
}

/* Nagłówek spisu treści - główny kontener */
#ez-toc-container .ez-toc-title-container {
    display: flex;
    align-items: center;
    /* Usuń justify-content: space-between, jeśli tam było */
    gap: 0.75rem; 
    padding-bottom: 1.25rem;
    margin-bottom: 0;
    border-bottom: 1px solid #E7DCEC;
}

/* Przycisk rozwijania - Wypychamy go na prawą stronę */
.ez-toc-title-container .ez-toc-title-toggle {
    margin-left: auto !important; /* To jest kluczowe! Wypycha element maksymalnie w prawo */
}

/* Ustawiamy przycisk jako Flexbox, aby napis i ikona były w jednej linii */
.ez-toc-title-container .ez-toc-title-toggle a {
    display: flex;
    align-items: center;
    gap: 8px; /* Odstęp między słowem "Rozwiń" a ikoną */
    text-decoration: none !important;
}
/* Dodajemy napis "Rozwiń" z lewej strony ikony */
.ez-toc-title-container .ez-toc-title-toggle a::before {
    content: "Rozwiń";
    font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #7A2E84; /* Kolor fioletowy dopasowany do nagłówka */
    transition: color 0.3s ease;
}

/* (Opcjonalnie) Efekt po najechaniu myszką na przycisk */
.ez-toc-title-container .ez-toc-title-toggle a:hover::before {
    color: #3F2147; /* Ciemniejszy fiolet */
}

/* Poziom 1 (Główne punkty 1, 2, 3...) */
.ez-toc-list-level-1 {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ez-toc-list-level-1 > li {
    margin-bottom: 1rem !important;
    counter-increment: main-item;
    counter-reset: sub-item; /* Resetuje licznik podpunktów dla każdego punktu głównego */
}

/* Licznik punktów głównych */
#ez-toc-container .ez-toc-list-level-1 > li > a::before {
    content: counter(main-item);
    display: flex;                /* Używamy flexboxa */
    align-items: center;          /* Centrowanie pionowe */
    justify-content: center;      /* Centrowanie poziome */
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 0.375rem;
    background-color: rgba(122, 46, 132, 0.1);
    color: #7A2E84;
    font-size: 0.75rem;
    font-weight: 700;
    flex: none;                   /* Zapobiega rozciąganiu */
    float: none;                  /* Usuwamy float */
    line-height: 1;               /* Ważne: resetuje wysokość linii */
}

#ez-toc-container .ez-toc-list-level-1 > li{
	margin-top: 16px;
}
#ez-toc-container .ez-toc-list-level-1 > li > ul{
	margin-top: 12px;
}

/* Stylowanie linków głównych */
.ez-toc-list-level-1 .ez-toc-link {
    display: flex !important;
    align-items: center !important;
    color: #3F2147 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
	gap: 0.75rem;
	font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;
}
.ez-toc-list li, .single.single-post #content li{
	margin-bottom:16px;
}

#ez-toc-container nav .ez-toc-list li a:hover,
#ez-toc-container nav .ez-toc-list li a:focus {
    color: rgb(122, 46, 132) !important;
}

/* Podlisty (poziom 3 i niżej - 3.1, 3.2...) */
.ez-toc-list-level-3 {
    margin: 0.75rem 0 0 2.25rem !important;
    padding: 0 !important;
    list-style: none !important;
}

.ez-toc-list-level-3 > li {
    margin-bottom: 0.625rem !important;
    counter-increment: sub-item;
}

/* Ikona z Font Awesome jako ::before */
#ez-toc-container .ez-toc-list-level-3 .ez-toc-link::before {
    content: "\f105"; 
    font-family: "Font Awesome 6 Free" !important;
    color: #A64DB0;
    font-weight: 900;
    font-size: 10px;
    /* Usuwamy wszystkie stare marginesy */
	margin-left: -5px;
    margin-right: 5px;
}

#ez-toc-container .ez-toc-list-level-3 .ez-toc-link{
	margin-left: 10px;
}

/* Numeracja jako ::after */
#ez-toc-container .ez-toc-list-level-3 .ez-toc-link::after {
    content: counter(main-item) "." counter(sub-item) ".";
    /* Usuwamy absolute, Grid zajmie się układem */
    position: static; 
    margin: 0;
    color: inherit;
    /* Mówimy Gridowi, że ::after ma wejść do 2 kolumny, przed sam tekst linku! */
    grid-row: 1;
    grid-column: 2;
}


/* Właściwe rozwiązanie: użycie CSS Grid dla linku */
.ez-toc-list-level-3 .ez-toc-link {
    color: #6B5872 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    /* Przechodzimy na Grid, aby automatycznie wyrównać elementy */
    display: grid !important; 
    /* Kolumna 1: auto (dla ikony), Kolumna 2: auto (dla numeru), Kolumna 3: 1fr (reszta miejsca dla tekstu) */
    grid-template-columns: auto auto 1fr;
    /* Precyzyjny odstęp: 8px między ikoną a numerem, 8px między numerem a tekstem. Możesz to swobodnie zmieniać. */
    gap: 5px; 
    align-items: baseline; /* Wyrównanie do linii tekstu, wygląda to lepiej niż center przy długich tytułach */
    text-decoration: none !important;
}
.ez-toc-counter nav ul li a::before {
    display: block; 
}


@media(max-width: 450px){
	#ez-toc-container{
		padding: 2.25rem 0.5rem !important;
	}
	#ez-toc-container .ez-toc-list-level-3 .ez-toc-link{
		margin-bottom: 0.8rem;
		line-height: 1.4;
	}
}