/* --- NOWE ETYKIETY (BADGES) --- */
.n24-badge {
    font: normal 800 9px/1 sans-serif !important;
    text-transform: uppercase !important;
    padding: 2px 5px !important;
    border-radius: 3px !important;
    letter-spacing: 0.5px !important;
    display: inline-block !important;
}

/* Nowość - Zielona */
.badge-new {
    background: #00cc66 !important; /* Wyrazisty zielony kolor bazowy */
    color: #000000 !important;       /* Czarny tekst dla doskonałego kontrastu */
    position: relative !important;
    
    /* Uruchomienie płynnej animacji pulsowania cienia (neon) */
    animation: n24NewBadgePulse 2s infinite ease-in-out !important;
}

/* Reguły odpowiedzialne za efekt płynnego pulsowania poświaty */
@keyframes n24NewBadgePulse {
    0% {
        box-shadow: 0 0 4px rgba(0, 204, 102, 0.4) !important;
    }
    50% {
        box-shadow: 0 0 12px rgba(0, 204, 102, 0.8) !important;
    }
    100% {
        box-shadow: 0 0 4px rgba(0, 204, 102, 0.4) !important;
    }
}

/* Hit - Złota/Żółta */
.badge-hit {
    background: #ffcc00 !important;
    color: #000 !important;
}

/* Klasyk - Głęboki błękit */
.badge-classic {
    background: #0066cc !important;
    color: #fff !important;
}

/* Polecamy - Fiolet / Purpura */
.badge-recommend {
    /* Ustawienie płynnego gradientu przechodzącego przez odcienie fioletu, różu i błękitu */
    background: linear-gradient(120deg, #9933ff, #ff007f, #3399ff, #9933ff) !important;
    background-size: 300% 300% !important; /* Rozszerzenie tła, aby ruch był płynny */
    color: #fff !important;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6) !important;
    
    /* Uruchomienie animacji: trwa 4 sekundy, zapętla się w nieskończoność i działa płynnie */
    animation: n24RainbowBadge 4s ease infinite !important;
    
    /* Subtelny efekt świecenia (neon) dopasowany do ciemnego motywu forum */
    box-shadow: 0 0 8px rgba(153, 51, 255, 0.4) !important;
}

/* Reguły odpowiedzialne za ruch gradientu w tle */
@keyframes n24RainbowBadge {
    0% {
        background-position: 0% 50% !important;
    }
    50% {
        background-position: 100% 50% !important;
    }
    100% {
        background-position: 0% 50% !important;
    }
}

/* Brak pliku - Czerwona */
.badge-missing {
    background: #d9534f !important;
    color: #fff !important;
}

/* --- POPRAWIONA IKONKA BRAKU ODCINKA NA KADRZE --- */
.ep-thumb.thumb-missing::after {
    content: "!" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    
    /* Tworzenie małego narożnika w rogu grafiki */
    width: 0 !important;
    height: 0 !important;
    border-style: solid !important;
    border-width: 0 20px 20px 0 !important;
    border-color: transparent #d9534f transparent transparent !important;
    
    z-index: 10 !important;
}

/* Pozycjonowanie samego białego znaku wykrzyknika wewnątrz narożnika */
.ep-thumb.thumb-missing::before {
    content: "!" !important;
    position: absolute !important;
    top: 1px !important;
    right: 4px !important;
    font: normal 900 10px/1 sans-serif !important;
    color: #ffffff !important;
    z-index: 11 !important;
}

/* --- RESZTA STRUKTURY BEZ ZMIAN --- */
.ep-row {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    padding: 12px !important;
    background: #1a1a1a !important;
    border-radius: 8px !important;
    margin-bottom: 10px !important;
}
.ep-row-missing {
    border-left: 3px solid #d9534f !important;
    background: #1f1414 !important;
}
.ep-thumb {
    display: block !important;
    width: 90px !important;             
    height: 51px !important;            
    background-size: cover !important;  
    background-position: center !important;
    position: relative !important;     
    overflow: hidden !important;
    flex-shrink: 0 !important;
    border: 1px solid #333 !important;
    border-radius: 4px !important;
}
.ep-thumb .ep-num {
    display: block !important;
    position: absolute !important;
    top: 2px !important;                
    left: 4px !important;
    font: normal 800 10px/1 sans-serif !important; 
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8) !important;
    z-index: 99 !important;
}
.ep-main { flex-grow: 1 !important; }
.ep-title { font-size: 14px !important; font-weight: bold !important; display: flex !important; align-items: center; gap: 6px; flex-wrap: wrap; }
.ep-meta { font-size: 11px !important; color: #aaa !important; margin-top: 4px !important; }
.ep-accordion { display: block !important; margin-top: 6px !important; font-size: 11px !important; }
.ep-accordion-trigger { display: inline-flex !important; align-items: center !important; gap: 5px !important; color: #aaa !important; cursor: pointer !important; font-weight: 600 !important; outline: none !important; list-style: none !important; }
.ep-accordion-trigger::-webkit-details-marker { display: none !important; }
.ep-accordion-trigger::before { content: "▶" !important; font-size: 8px !important; color: #888 !important; display: inline-block !important; transition: transform 0.2s ease !important; }
.ep-accordion[open] .ep-accordion-trigger::before { transform: rotate(90deg) !important; color: #fff !important; }
.ep-accordion-content { padding: 6px 0 2px 0 !important; color: #ccc !important; font-size: 12px !important; line-height: 1.4 !important; }
.ep-media { display: flex !important; gap: 8px !important; flex-shrink: 0 !important; }
.btn-report { background: #444 !important; color: #fff !important; padding: 6px 12px !important; font-size: 11px !important; text-decoration: none !important; border-radius: 4px !important; border: 1px solid #555 !important; }
.btn-report:hover { background: #d9534f !important; border-color: #d43f3a !important; }
.text-muted { color: #888 !important; 
}
/* Kontener główny wiersza reklamowego */
.ep-row-ad {
    display: block !important;
    padding: 10px 12px !important;
    background: #141414 !important; 
    border: 1px dashed #333 !important; 
    border-radius: 8px !important;
    margin-bottom: 10px !important;
    position: relative !important;
    text-align: center !important;
}

/* Mały szary napis informacyjny */
.ep-ad-label {
    font: normal 700 9px/1 sans-serif !important;
    color: #555 !important;
    letter-spacing: 1px !important;
    margin-bottom: 6px !important;
    text-transform: uppercase !important;
}

/* Bezpieczny kontener na reklamę */
.n24-ad-wrapper {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    overflow: hidden !important;
}

/* --- BANER ZACHĘCAJĄCY (Czysty CSS) --- */
.n24-ad-placeholder {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 728px !important;
    height: 90px !important;
    background: #1e1e1e !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    position: relative !important;
    overflow: hidden !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s, background 0.2s !important;
}

/* Efekt rozświetlenia po najechaniu myszką przez reklamodawcę */
.n24-ad-placeholder:hover {
    border-color: #00cc66 !important; /* Zielony akcent Nedds24 */
    background: #222222 !important;
}

/* Ozdobny świecący pasek z boku baneru */
.ad-placeholder-accent {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 4px !important;
    background: linear-gradient(to bottom, #00cc66, #0066cc) !important;
}

/* Układ tekstowy reklamy */
.ad-placeholder-text {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    gap: 4px !important;
    flex-grow: 1 !important;
    margin-right: 15px !important;
}

.ad-placeholder-text .ad-title {
    font: normal 800 16px/1 sans-serif !important;
    color: #ffffff !important;
    letter-spacing: 0.5px !important;
}

.ad-placeholder-text .ad-subtitle {
    font: normal 400 11px/1.3 sans-serif !important;
    color: #888 !important;
}

/* Neonowy przycisk wezwania do działania (CTA) */
.ad-placeholder-btn {
    font: normal 700 11px/1 sans-serif !important;
    color: #000000 !important;
    background: #00cc66 !important;
    padding: 8px 14px !important;
    border-radius: 4px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: transform 0.2s, box-shadow 0.2s !important;
    flex-shrink: 0 !important;
}

.n24-ad-placeholder:hover .ad-placeholder-btn {
    transform: scale(1.03) !important;
    box-shadow: 0 0 10px rgba(0, 204, 102, 0.6) !important;
}

/* Responsywność dla urządzeń mobilnych */
@media (max-width: 600px) {
    .n24-ad-placeholder {
        height: auto !important;
        flex-direction: column !important;
        padding: 15px !important;
        gap: 12px !important;
    }
    .ad-placeholder-text {
        text-align: center !important;
        margin-right: 0 !important;
    }
}




/* --- GŁÓWNY KONTENER SIDEBARU --- */
.n24-sidebar-container {
    width: 100% !important;
    max-width: 300px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
    box-sizing: border-box !important;
}

/* Podstawowy blok boczny */
.n24-sidebar-block {
    background: #1a1a1a !important; /* Identyczne tło jak wiersze odcinków ep-row */
    border: 1px solid #2a2a2a !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

/* Przebudowany, stonowany blok poszukiwań */
.n24-sidebar-block.block-alert {
    border-color: #4a2827 !important; /* Ciemny, zgaszony bordowy obrys */
    background: #181313 !important;    /* Bardzo głębokie, matowe tło */
}

/* Zgaszony nagłówek alertu poszukiwań */
.n24-sb-header.header-red {
    background: #3d1d1c !important; /* Ciemny, matowy burgund zamiast jaskrawej czerwieni */
    border-bottom: 1px solid #4a2827 !important;
    padding: 10px 12px !important;
    font: normal 700 11px/1 sans-serif !important;
    color: #d6b2b1 !important; /* Szaroróżowy tekst, łagodny dla oczu */
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.n24-sb-body {
    padding: 12px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

/* --- STONOWANY PASEK POSTĘPU --- */
.n24-progress-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
}

.n24-progress-info {
    display: flex !important;
    justify-content: space-between !important;
    font-size: 11px !important;
    color: #888 !important; /* Zgaszony szary */
}

.n24-progress-info strong {
    color: #a85856 !important; /* Ciemniejsza, matowa czerwień */
}

.n24-progress-bar-bg {
    width: 100% !important;
    height: 6px !important; /* Nieco cieńszy, bardziej subtelny pasek */
    background: #111 !important;
    border-radius: 3px !important;
    overflow: hidden !important;
    border: 1px solid #222 !important;
}

.n24-progress-bar-fill {
    height: 100% !important;
    background: #8c3836 !important; /* Spokojny, ciemnoczerwony kolor postępu */
    border-radius: 3px !important;
}

/* --- LISTA STATYSTYK --- */
.n24-sb-stats-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    background: #131313 !important;
    padding: 10px !important;
    border-radius: 4px !important;
    border: 1px solid #222 !important;
}

.stat-row-item {
    display: flex !important;
    align-items: center !important;
    font-size: 11px !important;
    color: #aaa !important;
}

.stat-dot {
    width: 5px !important;
    height: 5px !important;
    border-radius: 50% !important;
    margin-right: 8px !important;
    display: inline-block !important;
    opacity: 0.7; /* Wygaszenie punktów */
}

.dot-green { background: #00cc66 !important; }
.dot-red { background: #d9534f !important; }
.dot-gray { background: #555 !important; }

.stat-name {
    flex-grow: 1 !important;
    color: #999 !important;
}

.stat-val {
    font-weight: 700 !important;
    color: #ccc !important;
}

.text-green { color: #00a352 !important; } /* Ciemniejsza zieleń */
.text-red { color: #b84643 !important; }   /* Ciemniejsza czerwień */

/* Tekst pomocniczy pod statystykami */
.n24-sb-help-text {
    font-size: 11px !important;
    color: #777 !important; /* Bardziej ukryty tekst informacyjny */
    line-height: 1.4 !important;
    margin: 0 !important;
    text-align: center !important;
}

/* Przycisk akcji z wygaszonym, powolnym pulsem */
.n24-sb-btn-action {
    display: block !important;
    background: #5c2c2b !important; /* Bardzo stonowany bordowy przycisk */
    color: #d6b2b1 !important;
    padding: 9px 0 !important;
    font: normal 700 11px/1 sans-serif !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    text-align: center !important;
    border: 1px solid #733937 !important;
    transition: background 0.2s, color 0.2s !important;
    animation: n24MutedPulse 3s infinite ease-in-out !important; /* Dłuższy, łagodniejszy puls */
}

.n24-sb-btn-action:hover {
    background: #733937 !important;
    color: #fff !important;
}

@keyframes n24MutedPulse {
    0% { box-shadow: 0 0 0 0 rgba(115, 57, 55, 0.3); }
    75% { box-shadow: 0 0 0 5px rgba(115, 57, 55, 0); }
    100% { box-shadow: 0 0 0 0 rgba(115, 57, 55, 0); }
}

/* --- SEKCJA BOKSU REKLAMOWEGO (Dopasowana i ciemna) --- */
/* --- SEKCJA BOKSU REKLAMOWEGO (Zwiększona wysokość do 400px) --- */
.n24-sidebar-ad-box {
    display: block !important;
    width: 100% !important;
    max-width: 300px !important;
    margin-top: 5px !important;
    text-align: center !important;
}

.n24-sidebar-ad-box .ep-ad-label {
    font: normal 700 9px/1 sans-serif !important;
    color: #444 !important; /* Bardzo ciemny napis informacyjny */
    letter-spacing: 1px !important;
    margin-bottom: 5px !important;
    text-transform: uppercase !important;
}

.n24-sidebar-ad-placeholder {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important; /* Idealne rozłożenie elementów w pionie */
    align-items: center !important;
    width: 100% !important;
    height: 400px !important; /* Zwiększona wysokość do 400px zgodnie z prośbą */
    background: #1a1a1a !important; /* Spójne tło z listą odcinków */
    border: 1px solid #2a2a2a !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    position: relative !important;
    overflow: hidden !important;
    padding: 30px 20px !important; /* Zwiększony padding góra/dół dla lepszego wyglądu */
    box-sizing: border-box !important;
    transition: border-color 0.2s, background 0.2s !important;
}

.n24-sidebar-ad-placeholder:hover {
    border-color: #333 !important; 
    background: #1d1d1d !important;
}

/* Zgaszony pasek akcentowy na górze baneru */
.ad-sb-accent {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(to right, #444, #2a2a2a) !important;
}

.ad-sb-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important; /* Zwiększony odstęp między tytułem a opisem */
    margin-top: 20px !important;
}

.ad-sb-content .ad-sb-title {
    font: normal 800 19px/1.3 sans-serif !important; /* Lekko powiększony tytuł */
    color: #eee !important; 
    letter-spacing: 0.5px !important;
    text-align: center !important;
}

.ad-sb-content .ad-sb-desc {
    font: normal 400 12px/1.5 sans-serif !important;
    color: #666 !important; 
    text-align: center !important;
}

/* Przycisk aktywuje kolor dopiero po najechaniu kursorem */
.ad-sb-btn {
    font: normal 700 11px/1 sans-serif !important;
    color: #888 !important; 
    background: #252525 !important;
    border: 1px solid #333 !important;
    width: 100% !important;
    padding: 12px 0 !important; /* Nieco grubszy, wygodniejszy przycisk */
    border-radius: 4px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    transition: all 0.2s ease !important;
}

/* Zielone podświetlenie aktywuje się dopiero w momencie najechania myszką */
.n24-sidebar-ad-placeholder:hover .ad-sb-btn {
    color: #000000 !important;
    background: #00cc66 !important; /* Firmowy zielony akcent Nedds24 */
    border-color: #00cc66 !important;
    box-shadow: 0 0 10px rgba(0, 204, 102, 0.4) !important;
}

/* Dyskretna informacja o AdBlocku pod subtytułem baneru */
.ad-placeholder-text .ad-ab-notice {
    font: normal 400 10px/1.3 sans-serif !important;
    color: #9c5c5a !important; /* Spokojny, zgaszony odcień bordowo-czerwony, spójny z sidebarem */
    margin-top: 4px !important;
    display: block !important;
    border-top: 1px dashed #2a2a2a !important; /* Dyskretna linia oddzielająca */
    padding-top: 4px !important;
}

/* Responsywność dla małych ekranów (aktualizacja) */
@media (max-width: 600px) {
    .ad-placeholder-text .ad-ab-notice {
        text-align: center !important;
    }
}

/* Kontener zbiorczy stronicowania */
.nd-pagination-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 15px !important;
    margin: 20px 0 !important;
    padding: 10px !important;
}

/* Informacja o stronie */
.nd-pagination-info {
    font: normal 700 12px/1 sans-serif !important;
    color: #888 !important;
}

/* Uniwersalny styl dla przycisków i odnośników paginacji */
.nd-pagination-btn {
    display: inline-block !important;
    font: normal 700 11px/1 sans-serif !important;
    color: #aaa !important;
    background: #1a1a1a !important;
    border: 1px solid #2a2a2a !important;
    padding: 8px 14px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

/* Efekt najechania na aktywny przycisk */
.nd-pagination-btn:not(:disabled):not(.disabled):hover {
    color: #fff !important;
    background: #252525 !important;
    border-color: #333 !important;
}

/* Przyciski zablokowane (np. pierwsza/ostatnia strona) */
.nd-pagination-btn:disabled, 
.nd-pagination-btn.disabled {
    opacity: 0.4 !important;
    cursor: not-allowed !important;
    background: #141414 !important;
    border-color: #222 !important;
    color: #555 !important;
}