/*
 * Baner zgody na cookie (TermsFeed Cookie Consent 4.1.0) w nowym wyglądzie.
 *
 * Skrypt i jego konfiguracja przychodzą z ustawień (get_set_nosec(36) w
 * shared/layouthome), a style TermsFeed wstrzykuje na koniec <head> już po
 * naszych arkuszach. Dlatego selektory banera idą przez jego id, a okna
 * ustawień przez nakładkę + dialog: wyższa specyficzność wygrywa mimo
 * późniejszej kolejności, bez !important (poza marginesami przycisków, które
 * TermsFeed sam ustawia na !important).
 *
 * Desktop: biała karta w prawym dolnym rogu, przyciski w jednym wierszu.
 * Do 600px: pasek przyklejony do dołu na całą szerokość, przyciski jeden pod
 * drugim. "Zgoda" i "Odmawiam" mają równą wagę (wypełniony i obrys w kolorze
 * marki), żeby odmowa nie była trudniejsza od zgody.
 */

#termsfeed-com---nb {
    right: 24px;
    bottom: 24px;
    left: auto;
    max-width: 520px;
    max-height: calc(100vh - 48px);
    border: 1px solid #e3e3e3;
    border-radius: 12px;
    background: #fff;
    color: #000;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.16);
    font-family: 'Montserrat', Arial, sans-serif;
}

#termsfeed-com---nb .cc-nb-main-container {
    padding: 24px;
}

#termsfeed-com---nb .cc-nb-title {
    margin: 0 0 8px;
    font-size: 20px;
    font-weight: 600;
    line-height: 30px;
    color: #000;
}

#termsfeed-com---nb .cc-nb-text {
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 22px;
    color: #424242;
}

#termsfeed-com---nb .cc-nb-text a {
    color: #000;
}

#termsfeed-com---nb .cc-nb-buttons-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

#termsfeed-com---nb .cc-nb-okagree,
#termsfeed-com---nb .cc-nb-reject,
#termsfeed-com---nb .cc-nb-changep {
    margin: 0 !important;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: #000;
    transition: background-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease, filter 0.15s ease;
}

#termsfeed-com---nb .cc-nb-okagree,
#termsfeed-com---nb .cc-nb-reject {
    flex: 1 1 0;
    min-width: 120px;
    padding: 12px 20px;
}

#termsfeed-com---nb .cc-nb-okagree {
    border: 1px solid #ffc42e;
    background: #ffc42e;
}

#termsfeed-com---nb .cc-nb-reject {
    border: 1px solid #ffb700;
    background: #fff;
}

#termsfeed-com---nb .cc-nb-changep {
    padding: 12px 8px;
    background: none;
    text-decoration: underline;
    text-underline-offset: 3px;
}

#termsfeed-com---nb .cc-nb-okagree:hover {
    filter: brightness(0.93);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-1px);
}

#termsfeed-com---nb .cc-nb-reject:hover {
    background: rgba(0, 0, 0, 0.04);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}

#termsfeed-com---nb .cc-nb-changep:hover {
    text-decoration: none;
}

#termsfeed-com---nb .cc-nb-okagree:focus-visible,
#termsfeed-com---nb .cc-nb-reject:focus-visible,
#termsfeed-com---nb .cc-nb-changep:focus-visible {
    box-shadow: 0 0 0 2px #0044ff;
}

@media (max-width: 600px) {
    #termsfeed-com---nb {
        right: 0;
        bottom: 0;
        left: 0;
        max-width: 100%;
        height: auto;
        max-height: 85vh;
        border-width: 1px 0 0;
        border-radius: 16px 16px 0 0;
        box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.16);
    }

    #termsfeed-com---nb .cc-nb-main-container {
        padding: 20px 16px calc(16px + env(safe-area-inset-bottom));
    }

    #termsfeed-com---nb .cc-nb-title {
        font-size: 18px;
        line-height: 26px;
    }

    #termsfeed-com---nb .cc-nb-text {
        margin-bottom: 16px;
        font-size: 13px;
        line-height: 20px;
    }

    #termsfeed-com---nb .cc-nb-buttons-container {
        flex-direction: column;
        align-items: stretch;
    }

    #termsfeed-com---nb .cc-nb-okagree,
    #termsfeed-com---nb .cc-nb-reject,
    #termsfeed-com---nb .cc-nb-changep {
        display: block;
        flex: none;
        width: 100%;
    }

    #termsfeed-com---nb .cc-nb-changep {
        padding: 8px;
    }
}

/* Okno "Zmiana ustawień": tylko font, zaokrąglenia i kolory marki zamiast
   zielonych; układ zakładek zostaje TermsFeed. */
.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog {
    font-family: 'Montserrat', Arial, sans-serif;
}

.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog .cc-pc-container {
    overflow: hidden;
    border-radius: 12px;
}

.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog .cc-cp-body-tabs {
    font-family: 'Montserrat', Arial, sans-serif !important;
}

.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog .cc-cp-foot-save {
    margin-right: 16px;
    padding: 12px 20px;
    border-radius: 12px;
    background: #ffc42e;
    color: #000;
    font-weight: 500;
}

.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog input[type=checkbox].cc-custom-checkbox:checked + label:before {
    background: #ffb700;
}

.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog .cc-pc-head-close:focus {
    border-color: #0044ff;
}

@media (max-width: 600px) {
    .termsfeed-com---pc-overlay .termsfeed-com---pc-dialog .cc-cp-body-content-entry-title {
        font-size: 20px;
        line-height: 28px;
    }
}

.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog .cc-cp-foot-save:focus,
.termsfeed-com---pc-overlay .termsfeed-com---pc-dialog .cc-cp-body-content-entry a:focus {
    box-shadow: 0 0 0 2px #0044ff;
}
