.category-image {
    max-height: 277px;
    overflow: hidden;
}

.category-card {
    border-radius: 1rem;
    overflow: hidden;
}
.category-card img {
    transition: all .3s;
}

.category-card:hover img {
    transform: scale(1.1);
}

.text-burgundy {
    color: var(--theme-burgundy);
}

.accordion-button{

}

/* Stylizacja inputu - nawiązanie do zdjęcia */
.custom-search-input {
    border-radius: 50px !important;
    padding: 15px 30px !important;
    border: none !important;
    font-size: 1.1rem;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* Kontener wyników */
.search-results-dropdown {
    /* Zmiana na absolute, aby dropdown nie "pchał" innych elementów w dół */
    position: relative;
    top: 110%;
    left: 0;
    right: 0;
    background: #fff;
    border-radius: 20px;
    z-index: 1;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
    /* Ukrycie i przygotowanie do animacji */
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    overflow-y: hidden;
    /* Płynna animacja wysuwania i pojawiania się */
    transition: max-height 0.8s ease-in-out, opacity 0.8s ease-in-out, visibility 0.8s ease-in-out;
}
.search-results-dropdown.is-open {
    /* Stan otwarty */
    max-height: 400px;
    opacity: 1;
    visibility: visible;

    /* Włączamy scrollowanie dopiero jak element się rozwinie */
    overflow-y: auto;
}
.search-results-dropdownV2 {
    position: absolute;
}

/* Pojedynczy rekord */
.search-result-item {
    display: flex;
    align-items: center;
    padding: 12px 20px;
    text-decoration: none !important;
    color: #333;
    transition: background 0.2s;
    border-bottom: 1px solid #f0f0f0;
}

.search-result-item:hover {
    background-color: #f4e2e0; /* Delikatny róż z Twojego tła */
}

.reviewYellowBg{
    background: #fff5e9!important;
}
.sort-font{
    text-transform: full-size-kana;
    font-weight: unset;
}

.search-result-item img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    margin-right: 15px;
    border: 2px solid #ffca28; /* Żółta obwódka jak napis na dole */
}

.search-result-name {
    display: block;
    font-weight: 700;
    color: var(--bs-heading-color); /* Ciemna czerwień/bordo pasująca do górnego menu */
}

.search-result-sub {
    font-size: 0.8rem;
    color: #888;
}

.search-no-results {
    padding: 20px;
    text-align: center;
    color: #888;
}

.nofound_profil{
    min-height: 350px;
    background: var(--theme-creme);
}
.author-name small{
    font-size:16px;
    position: relative;
    top: -6px;
}
.author-sticky-inner .author-name small{
    font-size:13px;
    top: -5px;
}
.breadcrumb-item + .breadcrumb-item::before{
    display: none!important;
}
.breadcrumb-item.noneslash + .breadcrumb-item::before{
    content: ''!important;
    display: none!important;
}
.breadcrumb-item.noneslash{
    /*text-align: center;*/
    /*!*background: var(--theme-burgundy);*!*/
    /*!*color:white;*!*/
    /*padding-left: 7px!important;*/
    /*padding-right: 7px;*/
    /*border-radius: 10px;*/
    /*margin-left: 7px;*/
    /*font-family: "rubik", sans-serif;*/
    text-decoration: underline;
}

/*Ekran ładowania*/
/* To jest główna klasa twojego kółka */
.loading-circle {
    width: 50px; /* Szerokość kółka */
    height: 50px; /* Wysokość kółka */
    border: 5px solid rgba(207, 91, 40, 0.1); /* Bardzo jasny, półprzezroczysty "cień" kółka */
    border-top: 5px solid #CF5B28; /* Twój kolor: aktywna, ruszająca się część */
    border-radius: 50%; /* To sprawia, że kwadrat staje się idealnym okręgiem */
    animation: spin 1s linear infinite; /* Przypięcie animacji o nazwie 'spin', trwającej 1s, liniowej i powtarzającej się w nieskończoność */
}
/* Kontener główny pozostaje statyczny */
.loading-box {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 30px 0;
    overflow: hidden; /* Zabezpieczenie przed wysunięciem poza div */
}

/* Animujemy cały kontener oczu */
.loading-box .eyes {

    animation: swayHead 0.4s ease-in-out infinite;
}

/* Wymuszamy identyczne zachowanie dla każdej pigułki i idealny środek */
.custom-filter-pill {
    height: 39px !important;
    display: inline-flex !important;
    align-items: center !important; /* To odpowiada za wyśrodkowanie góra-dół całego środka */
    justify-content: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1 !important;
    vertical-align: middle !important;
}

/* Powiększamy ikonki i trzymamy je w ryzach */
.custom-filter-pill i {
    font-size: 20px !important; /* Przywracamy większy rozmiar dla wszystkich ikonek */
    display: inline-flex !important;
    align-items: center !important; /* Wyśrodkowanie wewnątrz samej ikonki */
    justify-content: center !important;
    line-height: 1 !important; /* Zapobiega rozpychaniu boxa w górę lub dół */
    margin: 0 !important;
}
.radius-regretly{
    border-radius: 1.1rem!important;
    --bs-btn-border-width: 2px!important;
    --bs-btn-border-radius: 1.1rem!important;
}
.not-visible-opacity-grey{
    opacity: 0.38!important;
    pointer-events: none!important;
    color: grey!important;
}

/* Kursor i efekt najechania TYLKO dla filtrów, które można zresetować */
.custom-filter-pill[data-name] {
    cursor: pointer;
    transition: background-color 0.2s ease, opacity 0.2s ease;
}
.big-face-icon{
    font-size: 90px!important;
}

.custom-filter-pill[data-name]:hover {
    opacity: 0.8;
    /* Możesz też zmienić tło po najechaniu, np.: background-color: #fce4e4 !important; */
}

/* Czerwony krzyżyk - nadpisujemy domyślny kolor */
.custom-filter-pill[data-name] i.ph-x {
    color: #dc3545 !important; /* Standardowy czerwony kolor "danger" */
    margin-left: 4px !important; /* Lekki odstęp od tekstu, jeśli używasz gap to może być zbędne */
}

/* Style dla napisu na samej górze wygenerowanego obrazka */
.export-brand-header {
    text-align: center;
    font-weight: 800;
    color: var(--theme-burgundy);
    font-size: 1.2rem;
    letter-spacing: 2px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 2px solid var(--theme-gray); /* Delikatna linia oddzielająca */
    text-transform: uppercase;
}

/* Wymuszenie czystego tła na obrazku i ukrycie tego diva ze strony */
.opinion-export-mode {
    background-color: #ffffff !important;
    padding: 30px !important; /* Większy margines wewnątrz obrazka, żeby wyglądał jak plakat */
    border-radius: 12px;
    width: 600px; /* Sztywna szerokość - dzięki temu obrazek nie będzie wąski i ściśnięty na telefonach! */
}

.get_opinion_important {
    box-shadow: 0 2px 8px var(--theme-orange);
    border: 2px solid var(--theme-burgundy);
    border-radius: 1.1rem;
    margin-bottom: 27px;

    /* Dodajemy animację */
    position: relative;
    transition: all 0.3s ease;
    animation: sun-rays 4s infinite alternate;
}

@keyframes sun-rays {
    0% {
        /* Standardowy cień */
        box-shadow: 0 0 10px var(--theme-orange),
        0 0 5px var(--theme-burgundy);
    }
    50% {
        /* Rozbłysk - "promienie słońca" */
        box-shadow: 0 0 25px var(--theme-orange),
        0 0 40px rgba(255, 165, 0, 0.4); /* Efekt promieni */
        transform: scale(1.01); /* Delikatne pulsowanie */
    }
    100% {
        /* Przesunięcie poświaty (efekt ruchu dookoła) */
        box-shadow: 5px 5px 20px var(--theme-orange),
        -5px -5px 20px var(--theme-burgundy);
    }
}

/* Klucz animacji kołysania głową */
@keyframes swayHead {
    0%, 100% {
        transform: translateX(-9px) rotate(-5deg);
    }
    50% {
        transform: translateX(9px) rotate(5deg);
    }
}
.ml20{
    margin-left: 20px;
}
.modal-content.modal-adele{
    border: 0;
}
.modal-adele *{
    font-family: "rubik", sans-serif;
}


/*Dodawanie opinii*/
.addinflutext{
    font-family: "rubik", sans-serif;
    font-size: 29px;
}
.addinflutext_lm{
    border: 2px solid var(--theme-orange);
    border-radius: 20px;
}

/* 1. Kontener i kursor */
.addNewOpinion .interactive-stars .stars {
    cursor: pointer;
    line-height: 1;
}

/* 2. Powiększamy ikony TYLKO w tym jednym miejscu */
.addNewOpinion .interactive-stars .stars-row i {
    font-size: 42px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* 3. Dolna warstwa: Białe wypełnienie w środku pustej gwiazdki */
.addNewOpinion .interactive-stars .base-row i {
    color: var(--theme-black); /* Kolor czarnej obwódki */
    background-color: #ffffff; /* Wymuszenie białego środka */
    border-radius: 50%; /* Okrągłe tło, żeby ładnie chowało się pod ikonką ph-seal */
}

/* 4. Górna warstwa: Złote wypełnienie + przepuszczanie kliknięć */
.addNewOpinion .interactive-stars .stars-row.filled {
    color: var(--theme-gold);
    pointer-events: none; /* BARDZO WAŻNE: przepuszcza myszkę do warstwy base-row */
    line-height: 0 !important;
}

/* Opcjonalnie: lekki margines między gwiazdkami dla lepszego klikania na telefonie */
.addNewOpinion .interactive-stars .stars-row {
    gap: 4px;
}
.min-textarea-h{
    min-height: 250px !important;
}
.addNewOpinion textarea{
    font-family: "rubik", sans-serif!important;
    font-weight: bold;
}
.addNewOpinion input{
    font-family: "rubik", sans-serif!important;
}
.addNewOpinion textarea{
    line-height: 23px;
}
.addNewOpinion textarea {
    resize: none;
}
.addNewOpinion input.fat{
    border-radius: 20px!important;
}
.addNewOpinion .input-group button{
    background: var(--theme-gray)!important;
    color:var(--theme-burgundy)!important;

    border-color: var(--theme-burgundy) !important;
    border: 1px solid var(--theme-burgundy)!important;
    border-left: none!important;
    position: absolute;
    height: 100%;
    right: 0;
    font-size: 27px;
}
.purchase-input-box{
    padding-top: 19px!important;
    padding-bottom: 19px!important;
}
.addNewOpinion{
    background-color: var(--theme-creme);
    background-image: url(/assets/img/star-opinion-bg.png);
    background-repeat: no-repeat;
    background-position-x: 88%;
}
.addNewOpinion .form-check-input{
    /*background: white;*/
}
/* Powiększamy sam kwadracik i nadajemy mu styl z obrazka */
.custom-statement-checkbox .form-check-input {
    width: 32px; /* Szerokość boxa */
    height: 32px; /* Wysokość boxa */
    margin-top: 2px; /* Delikatne wyrównanie do pierwszej linijki tekstu */
    margin-left: 0;
    border: 2px solid var(--theme-black, #111); /* Grubsze, ciemne obramowanie */
    border-radius: 8px; /* Zaokrąglone rogi */
    flex-shrink: 0; /* Zapobiega zmniejszaniu się boxa, gdy tekst jest długi */
    cursor: pointer;
}

/* Stylizacja tekstu obok */
.custom-statement-checkbox .form-check-label {
    font-size: 1rem;
    line-height: 1.6;
    color:  var(--bs-heading-color);
    cursor: pointer;
}

/* Opcjonalnie: Zmiana koloru boxa po zaznaczeniu (Bootstrap domyślnie robi niebieski) */
.custom-statement-checkbox .form-check-input:checked {
    background-color: var(--theme-black, #111);
    border-color: var(--theme-black, #111);
}
/**/
.smallFontRegulations{
    font-size: 15px!important;
    line-height: 17px!important;
}
.box-log-btn-addop{
    max-width: 310px;
    padding-top: 20px;
}
.box-log-btn-addop button{
    text-align: left;
    margin-bottom: 12px;
}
.text-color-inherit{
    color: inherit!important;
}
.successOpinionSummarySection{
    background-color: var(--theme-creme);
}

/* Kontener, który zapobiega scrollowaniu podczas animacji */
.star-explosion-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    pointer-events: none; /* Nie blokuje klikania w elementy pod spodem */
    zIndex: 99999;
    overflow: hidden; /* Kluczowe: ukrywa wszystko co wyleci poza ekran */
}

/* Podstawowy styl gwiazdki */
.falling-star {
    position: absolute;
    opacity: 1;
    will-change: transform, opacity; /* Optymalizacja wydajności */
    transform-origin: center center;
}

/*Profil - Podsumowanie opinii*/
.miniboxAuthor.noafter{
    padding: 15px;
    border-bottom: 2px solid var(--theme-orange);
    box-shadow: none;
}
.miniboxAuthor:not(.noafter){
    position: relative;
    padding: 15px;
    border: 2px solid var(--theme-orange);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    margin-bottom: 110px;
}
.miniboxAuthor .author-avatar-inner{
    max-width: var(--avatar-width, 90px);
}
.miniboxAuthor .author-avatar{
    position: relative;
}
.miniboxAuthor .author-about{
    max-width: fit-content;
    flex:1;
}
.miniboxAuthor .author-profile{
    padding-top: 0;
}
.miniboxAuthor:not(.noafter)::after {
    content: ""; /* Wymagane dla każdego pseudoelementu */

    /* 2. Pozycjonowanie absolutne */
    position: absolute;
    top: 100%; /* Zaczynamy na samym dole pierwszego diva */
    left: 50%; /* Przesuwamy punkt startu dokładnie na środek szerokości */
    transform: translateX(-50%); /* Korekta wyśrodkowania linii (żeby jej grubość nie przesunęła środka) */

    /* 3. Wymiary linii */
    width: 0; /* Linia nie ma szerokości jako bryła... */
    height: 110px; /* ...ale ma wysokość równą marginesowi z punktu 1. */

    /* 4. Styl linii kropkowanej */
    border-left: 5px dotted var(--theme-burgundy); /* Rysujemy kropki używając lewego obramowania o grubości 2px i kolorze szarym */

    margin-top: 2px;
    /* height: 30px;    <-- Skróci linię
    /* margin-bottom: 5px; <-- Stworzy odstęp na dole przed drugim boxem */
}
.miniboxAuthor.noafter .author-avatar-inner{
    border: 2px solid var(--theme-orange);
    border-radius: 50%;
}
.miniboxAuthor.noafter .author-about{
    max-width: unset!important;
}
.miniboxAuthor.noafter .number_stat_mini b{
    font-size: 33px;
}
/**/
.comment-summary-box{
    border: 2px solid var(--theme-orange);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    padding: 15px;
    margin-bottom: 25px;
    position: relative;
}
.eyesAbsoluteSummary{
    position: absolute;
    margin-top: -80px; /* Zastępuje margin-top, przy absolute lepiej używać właściwości kierunkowych */
    left: 50%; /* Przesuwa lewą krawędź diva na sam środek rodzica */
    transform: translateX(-50%);
    background: var(--theme-creme);
    padding: 4px;
}
.reviewStatus{
   border: 2px solid var(--theme-orange);
    border-bottom: 0!important;
    padding: 5px 15px;
}
.reviewStatus.stat-1{
background: #dc3545;
    color: white;
}
.reviewStatus.stat-0{
    background: var(--theme-gold);
}
.reviewStatus.stat2{
    background: #198754;
    color: white;
}
.reviewStatus{
    font-family: "rubik", sans-serif;
}
.reviewStatus i{
    font-size: 22px;
    display: inline-block;
    position: relative;
    top: 3px;
}
.authorCommentBox img{
    margin-right: 10px;
}
.opinionBoxOptions a{
    color: inherit;
    font-family: "rubik", sans-serif;
    text-decoration: none;
    margin-right: 10px;
}
.edit-opinion-avatar{

}
.profile-link {
    display: flex;
    align-items: center;
    gap: 20px;
}

.content-wrapper {
    display: flex;
    flex-direction: column; /* Ustawia teksty jeden pod drugim */
    flex-grow: 1;
}

.product-container {
    margin-top: 5px; /* Opcjonalny odstęp między imieniem a produktem */
}
.edit-opinion-avatar a{
    color: inherit;
    text-decoration: none!important;
}
.edit-opinion-avatar img{
    width: 110px!important;
}
.container-addOpinion{
    max-width: 750px;
}

.container-addOpinion .interactive-stars i {
    background-color: transparent !important;
    box-shadow: none !important;
}

.container-addOpinion .stars-row.base-row {
    color: #ffffff;
}

/* Górna warstwa (zaznaczone) ma swój kolor, np. żółty/pomarańczowy */
.container-addOpinion .stars-row.filled {
    color: #ffc107; /* Podmień na swój kolor z palety, jeśli jest inny */
}

/* To zabezpieczenie, o którym pisaliśmy, zostaje - żeby tło pudełka ikonki zawsze było puste */
.container-addOpinion .interactive-stars i {
    background-color: transparent !important;
    box-shadow: none !important;
    -webkit-text-stroke: none; /* 2px to grubość, podmień kolor HEX na swój czarny/granatowy */
}
html .container-addOpinion .interactive-stars .base-row i{
    color: white!important;
}
.star-required{
    color: var(--theme-orange);
}

/* PODEJŚCIE 1: Zamazanie (Blur) - Nowoczesne i estetyczne */
.censored-swear {
    filter: blur(2px);
    opacity: 0.7;
    user-select: none; /* Zapobiega kopiowaniu tekstu myszką */
    transition: filter 0.3s ease;
}

/* Opcjonalnie: Administrator lub użytkownik może podejrzeć słowo po najechaniu myszką */
.censored-swear:hover {
    filter: blur(0px);
    opacity: 1;
}
.useropinions-bar{
    /*padding-bottom: 25px;*/
}
.parent_pos{
    position: relative;
}
.child_pos{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.allOpinionsUserProfile .opinionBoxOptions i{
    position: relative;
    top: 2px;
}
.number_stat_mini i{
    position: relative;
    top: 2px;
}
.number_stat_mini b{
    font-family: "rubik", sans-serif;
}
.border-bott-orange{
    border-bottom: 2px solid var(--theme-purple);
}
.allOpinionsUserProfile h2{
    font-family: "rubik", sans-serif;
}
.max-content{
    width: max-content;
}
.edit-settings-profile input,.edit-settings-profile select, .edit-settings-profile option{
    font-family: "rubik", sans-serif;
}
.readonly-input{
    background:lightgrey!important;
    pointer-events: none!important;
    cursor: crosshair;
}
.breadcrumb-item a{
    text-decoration: none;
}
.bg-cat-search-person{
    padding-top: 60px;
    padding-bottom: 60px;

}
.bg-cat-search-person input{
    border-radius: 1.1rem!important;
    font-family: "rubik", sans-serif;
}
.bg-cat-search-person .mini-p-no-mg{
    padding-top: 25px;
}
.bg-cat-search-person .mini-p-no-mg p{
    margin-bottom: 0px!important;
    padding-left: 1rem!important;
    padding-right: 1rem!important;
    font-family: "rubik", sans-serif;
    color: black;
    font-size: 1.5rem;
    font-weight: lighter;
}


/*LISTA KATEGORII*/
/* Tło całego kontenera (jasny beżowy) */
.custom-list-wrapper {
    /*background-color: #FAF6F3; !* Dostosuj do koloru swojej strony *!*/
    padding: 20px 15px;
    font-family: inherit;
}

/* Przycisk sortowania */
.sort-btn {
    border-bottom: 1px solid #000 !important; /* Cienka linia pod sortowaniem */
    border-radius: 0;
}

/* Element listy */
.category-item {
    border-top: 2px solid var(--theme-purple); /* Szarawa linia podziału */
}
.category-item:first-child{
    border-top: none!important;
}
.category-item:last-child {
    border-bottom: 2px solid var(--theme-purple);
}

/* Przycisk nagłówka (np. + BIZNES I ZARABIANIE) */
.category-header {
    margin-top: 10px;
    margin-bottom: 10px;
    width: 100%;
    text-align: left;
    background: transparent;
    border: none;
    padding: 12px 10px;
    font-weight: 600;
    font-size: 20px;
    color: #36101f;
    cursor: pointer;
    text-transform: uppercase;
    transition: background-color 0.3s ease;
}
.edit-settings-profile .category-header .accordion-button{
    font-weight: 600;
    font-size: 20px;
}
.accordion-button::after{
    opacity: 0!important;
}
html .edit-settings-profile h2{
    font-size: 22px!important;
}
.edit-settings-profile .miniboxAuthor{
    padding: 12px 10px!important;
}
.edit-settings-profile .miniboxAuthor .category-header{
    padding: 0!important;
}

.category-item .category-collapse{

}

/* Magia znaków + i - */
.category-header::before {
    content: "- "; /* Domyślnie minus (gdy otwarte) */
    font-weight: bold;
    display: inline-block;
    width: 15px;
}
.category-header.collapsed::before {
    content: "+ "; /* Plus, gdy zwinięte (klasa collapsed z Bootstrapa) */
}

/* Po rozwinięciu tło zmienia kolor na lekko ciemniejszy/różowawy beż */

/* Wnętrze z listą blogerów */
.category-body {
    padding: 0px 10px 25px 10px; /* Wcięcie z lewej strony */
    display: flex;
    flex-direction: column;
    gap: 12px; /* Odstępy między linkami */
}

/* Stylowanie poszczególnych linków (osób) */
.creator-link {
    color: #222;
    text-decoration: none;
    font-size: 0.95rem;
    display: inline-block;
    align-self: flex-start; /* Żeby border-bottom kończył się równo z tekstem */
    border-bottom: 1px solid #444; /* Podkreślenie całej linii */
    padding-bottom: 2px;
    padding-left: 0px;
    margin-left: 20px;
}
.creator-link:hover {
    color: #000;
    border-bottom-color: #000;
}
.creator-name {
    font-weight: 700;
    margin-right: 4px;
}
/**/

.IGbutton{

}
.IGimage{
    width: 20px; height: 20px; margin-right: 10px;
}
.instalog-settings-profile{
    margin-bottom: 10px; display: flex; align-items: center;  padding: 10px; border-radius: 8px;
    flex-wrap: wrap;
}

.instalog-settings-profile .auth_profile_container_stggs{
    flex-grow: 1;
    width: 100%;
    margin-top: 10px;
}
.font-purpledark{
    color: #36101f!important;
}

/* Definicja animacji 'spin' */
@keyframes spin {
    0% {
        transform: rotate(0deg); /* Początkowy obrót: 0 stopni */
    }
    100% {
        transform: rotate(360deg); /* Końcowy obrót: pełne 360 stopni */
    }
}
/**/

/*blog v2*/
.article_list_p1{
    color: white;
    background: var(--theme-burgundy);
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.9rem;
    border-radius: 1.1rem;
    margin: 0px 20px;
}
.article_list_p2{
    padding-left: 20px;
    padding-right: 20px;
    text-align: end;
    display: block;
}
.article_list_p3{
    margin: 10px 20px;
}
.article_list_p3 h3{
    padding: 0px;
    padding-top: 5px;
    border-top: 2px solid var(--theme-purple);
}
.aktualnosc br{
    display: none;
}
.aktualnosc .col-lg-6{
    padding-bottom: 5px;
}
/**/

.purchase_cert{
    background: var(--theme-gray);
    font-family: adelle, serif;
    font-weight: 100;
    font-style: normal;
    font-size: 13px;
    padding: 2px 8px;
    width: max-content;
    color: var(--theme-burgundy);
}
.purchase_cert_box{
    width: 100%;
    display: block;
}
.author-metas .author-verified-badge{
    margin-left: auto;
}
.btn{
    min-width: 209px!important;

    display: inline-flex;       /* inline-flex sprawi, że przycisk zachowa się jak element liniowy (nie rozciągnie się na 100% szerokości) */
    align-items: center;        /* Centrowanie w pionie (vertical-align) */
    justify-content: center;    /* Centrowanie w poziomie (opcjonalne, ale zazwyczaj pożądane przy przyciskach) */
    min-height: 54px;           /* Minimalna wysokość elementu */
    font-weight: 600;
    font-size: 17px;
    /* Pozostałe podstawowe style przycisku (dopasuj do siebie) */
    box-sizing: border-box;     /* Gwarantuje, że paddingi nie powiększą min-height powyżej 57px */
    text-align: center;
    --bs-btn-border-radius:20px!important;
}
.btn{
    box-shadow:none!important;
}
.btn-old{
    min-width: 0!important;
    min-height: 0!important;
    font-size: 0!important;
}
.comment-title span{
    font-family: adelle, serif;
    font-weight: 300;
    font-style: italic;
}
.section.author .adelle-thin b{
    font-family: adelle, serif;
    font-weight: 600;
}


/* --- Główny kontener przełącznika --- */
.pricing-switch-wrapper {
    display: flex;
    justify-content: flex-start; /* lub center, jeśli ma być na środku */
    font-family: sans-serif;
}

/* Jasne tło okalające obie opcje */
.toggle-pill {
    position: relative; /* Konieczne do zatrzymania pływającego tła w środku */
    display: inline-flex;
    align-items: center;
    background-color: #f9f0ec;
    border-radius: 50px;
    padding: 4px;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.03);
    z-index: 1;
}

/* --- Wygląd pojedynczej etykiety (przycisku) --- */
.toggle-label {
    position: relative;
    z-index: 2; /* Ważne: Tekst MUSI być wyżej niż ruchome tło (z-index 2 > 0) */
    margin: 0;
    padding: 12px 26px;
    border-radius: 50px;
    cursor: pointer;
    font-weight: 700;
    font-size: 1rem;
    transition: color 0.4s ease-in-out;
    user-select: none;
    font-family: "adelle-sans", sans-serif;
}

/* Formatowanie dodatkowego tekstu (różowego) */
.highlight {
    transition: color 0.4s ease-in-out;
    margin-left: 4px;
    font-family: "adelle-sans", sans-serif;
    font-weight: 600;
    color: var(--theme-purple);
}
.sliding-bg {
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 4px; /* Początkowa pozycja */
    width: 146px; /* Szerokość przycisku "Miesięcznie" */
    background-color: #2e151e; /* Czekoladowo-bordowy kolor bąbla */
    border-radius: 50px;
    /* Piękna, płynna animacja dla ruchu (left) i rozmiaru (width) */
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    z-index: 0; /* Znajduje się pod tekstem, ale nad jasnym tłem kontenera */
}

/* --- STANY AKTYWNE (Zaznaczenie) --- */

/* 1. Stan domyślny: "Miesięcznie" aktywne (checkbox ODZNACZONY) */
#company_switch:not(:checked) ~ .pricing-switch-wrapper .left-label {
    font-family: "adelle-sans", sans-serif;
    background-color: var(--theme-burgundy);
    color:var(--theme-creme) !important;
}

/* 2. Stan zmieniony: "Rocznie" aktywne (checkbox ZAZNACZONY) */
#company_switch:checked ~ .pricing-switch-wrapper .right-label {
    font-family: "adelle-sans", sans-serif;
    background-color: var(--theme-burgundy);
    color:var(--theme-creme) !important;
}

/* Rozjaśnienie różowego dopisku, gdy wskakuje na niego ciemne tło */
#company_switch:checked ~ .pricing-switch-wrapper .right-label .highlight {
    font-family: "adelle-sans", sans-serif;
    color: var(--theme-purple);
}
#company_switch:checked ~ .pricing-switch-wrapper .sliding-bg {
    left: 152px; /* Przesunięcie o szerokość pierwszej opcji */
}
.pricer-family-box{
    position: relative;
    height: 100%;
}
.shortspan_{
    position: absolute;
    font-family: "adelle-sans", sans-serif;
    font-weight: bold;
    font-size: 14px;
    border-radius: 50px;
    padding: 8px 15px;
    width: max-content;
    right: 0;
    background-color: var(--theme-orange);
    top: -20px;
    right: 10px;
    z-index: 1;
}
.bg-light{
    background: white!important;
}
.history_comment{
    background: transparent;
    opacity: 1;
    padding-left: 3px;
    padding-right: 3px;
}
.history_comment *{
    font-size: 12px!important;
}
.comment.history_comment:not(:first-child)::after{
    width: 100% !important;
}


/* Wymuszamy, aby kontener scrolla i jego dzieci dopasowywały się do swojej zawartości */
.history-scroll-wrapper {
    display: block !important;
    width: 100% !important;
    max-height: 160px !important; /* Maksymalna wysokość okienka */
    height: auto !important;      /* Zapobiega sztywnemu kurczeniu całego kontenera */
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

/* Resetujemy wysokość dla pojedynczych wpisów historii, żeby tekst nie nachodził na siebie */
.history-scroll-wrapper .history_comment {
    height: auto !important;        /* Nadpisuje ewentualne height: 25px */
    min-height: filter-none !important;
    max-height: none !important;
    display: block !important;      /* Blokowy układ, by elementy nie nakładały się na siebie */
    margin-bottom: 15px !important; /* Odstęp między wpisami */
    padding: 10px !important;       /* Wewnętrzny oddech dla każdego wpisu */
}


.history-scroll-wrapper .comment-header {
    height: auto !important;
    min-height: 35px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}
.history-scroll-wrapper .collapse {
    height: auto;
}
.history-scroll-wrapper .history-oc-header {
    position: sticky !important;
    top: 0;
    background-color:white !important;
    z-index: 1;
    height: auto !important;
    padding: 8px 10px !important;
    margin-bottom: 15px !important;
    border-bottom: 1px solid #dee2e6 !important;
}
.reviews .comments-loop .history_comment {
    margin-top: -1.4rem;
    margin-bottom: -1.4rem;
}
.reviews .comments-loop .history_comment:first-child {
    margin-top: 0;
}
.reviews .comments-loop .history_comment:last-child {
    margin-bottom: 0;
}
.history-oc-header{
    font-size: 16px;
}
.comment.history_comment{
    opacity: 0.4;
}
@media (min-width: 1200px) {
    h4, .h4 {
        font-size: 1.4rem;
    }
}