/* Główny wrapper dla nowego boxa autora */
.custom-author-box-2 {
    margin-top: 20px;
}

.custom-author-box-2 {
    margin-bottom: 0 !important;
}

/* Nagłówek w układzie klasycznym – desktop */
.ab-author-name-desktop {
    font-size: 1.5rem;
    line-height: 1.5;
    padding: 5px;
    margin: 0;
}

/* Nagłówek w układzie mobilnym pod avatarem – domyślnie ukryty */
.ab-author-name-mobile {
    display: none;
    margin: 6px 0 0;
    font-size: 1.1rem;
    text-align: center;
}

/* Opcja: nick pod avatarem również na desktopie (klasa dodawana z PHP) */
@media (min-width: 769px) {
    .ab-name-under-avatar-desktop .ab-author-name-mobile {
        display: block;
    }

    .ab-name-under-avatar-desktop .ab-author-name-desktop {
        display: none;
    }
}

/* Dodatkowy nagłówek nad opisem (np. „O autorze:”) */
.ab-author-extra-heading {
    font-size: 1.0rem;
    font-weight: 700;
    margin: 4px 0 6px;
    padding: 0px 5px;
    text-align: left;
}

/* ============================
   Widok desktopowy – baza
   ============================ */

.ab-container {
    display: flex;
    width: 100%;
    min-height: 180px;          /* referencyjna wysokość jak w oryginale */
    height: auto;               /* rośnie z tekstem */
    align-items: stretch;       /* prawa kolumna rozciąga się na całą wysokość */
    border-radius: 0.75rem;
    background-color: #303030;
}



.ab-avatar-column {
    width: 134px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 5px;
}

/* Gdy włączona opcja "Nick pod avatarem na desktopie" */
@media (min-width: 769px) {
    .ab-name-under-avatar-desktop .ab-avatar-column {
        flex-direction: column;   /* avatar nad nickiem */
        align-items: center;      /* wyśrodkowanie nicka pod spodem */
    }
}

.author-avatar img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
}

.ab-left {
    flex: 7;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 10px 0;
}

.ab-description-main {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.ab-author-description {
    font-size: 1rem;
    line-height: inherit;
    /*padding: 0 5px;*/
    font-size: 14px;
    padding: 0px 5px 0px 5px;
}


/* Prawa kolumna – wrapper panelu */
.ab-right-wrapper {
    /* width: 180px; */
    width: 196px;
    display: flex;
    justify-content: center;
    align-items: stretch;    /* rozciąga panel w pionie */
    padding-top: 10px;
    padding-right: 5px;
    padding-bottom: 10px;
    box-sizing: border-box;
}

.ab-right {
    display: flex;
    flex-direction: column;
    /*justify-content: center;*/   /* elementy wyśrodkowane w pionie */
    justify-content: center;       /* DOMYŚLNIE – gdy tagi są wyłączone */
    gap: 6px;                      /* STAŁY odstęp między górą, środkiem i dołem */
    padding: 10px 0;               /* pusta przestrzeń NAD i POD całą zawartością */
    width: 90%;
    height: 100%;
    background-color: #3E4042;
    border-radius: 0.75rem;
    box-sizing: border-box;
}

/* Gdy są tagi – wyrównujemy panel do góry */
.ab-right.ab-has-tags {
    justify-content: flex-start;
}


/* Górny wiersz z „Obserwuj” */
.ab-top-box {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 5px; /* odstęp pod górnym wierszem - wyłącz w media */
}


/* Piguła z ikoną oka, tekstem i ikoną usera */
.ab-top-inner {
    display: flex;
    width: 85%;
    /* bez sztywnej wysokości – wysokość robi padding w segmentach */
    border: 3px solid #7a7a7a;
    border-radius: 0.75rem;    /* jak w oryginalnym boxie */
    background-color: #555555;
    box-sizing: border-box;
    overflow: hidden;          /* ⇐ NOWE: przycina hover do zaokrąglonej piguły */
    padding: 0;           /* <-- ważne: brak pionowego paddingu */
}




/* Lewa i prawa część piguły */
.ab-top-left,
.ab-top-right {
    display: flex;
    justify-content: center;
    align-items: center;
    /*height: 100%;*/              /* wypełnia CAŁĄ wysokość pigułki – hover też */
    box-sizing: border-box;
    transition: background-color 0.3s ease, color 0.3s ease, fill 0.3s ease;
}

/* lewa część – oko + tekst */
/*.ab-top-left {
    flex: 6;
    border-right: 2px solid #7a7a7a;*/
    /*padding: 4px 14px 4px 10px;*/ /* tu robimy dodatkowy odstęp po PRAWEJ od „Obserwuj” */
    /*padding: 6px 14px 6px 10px;*/   /* ↑ tu zmieniasz wysokość */
/*}*/

.ab-top-left {
    flex: 6;
    border-right: 2px solid #7a7a7a;
    padding: 0;                /* padding przenosimy na <a> */
}

.ab-top-right {
    flex: 2.2;
    border-right: none;
    /*padding: 6px 0px;*/      /* ↑ ten sam vertical padding */
    padding: 0;                /* padding przenosimy na <a> */
}

.ab-middle-box,
.ab-bottom-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /*padding: 5px 0;*/          /* odstęp nad i pod wierszem - wyłącz w media */
    padding: 8px 0;              /* gdy brak tagów */
}

/* Gdy tagi są włączone – ciaśniej */
.ab-right.ab-has-tags .ab-middle-box,
.ab-right.ab-has-tags .ab-bottom-box {
    padding-top: 4px;
    padding-bottom: 4px;
}


.ab-middle-left,
.ab-bottom-left {
    flex: 8;
    font-size: 12px;
    padding-left: 15px;
}

.ab-middle-right,
.ab-bottom-right {
    flex: 2;
    text-align: right;
    font-size: 12px;
    padding-right: 15px;
}

/* Tekst „Obserwuj” */
.ab-obserwuj-text {
    display: block;
    font-size: 12px;
    line-height: 1.8;
    color: #ffffff;
    text-align: center;
    margin: 0;
    white-space: nowrap;    /* nie łam „Obserwuj” */
}


/* Wrapper na ikonę usera */
.ab-author-stats-icon .ab-author-icon-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

/* Lewy segment (oko + „Obserwuj”) – zostaje blok */
/* .author-stats-follow {
    display: block;
    width: auto;
    height: 100%;
    text-decoration: none;
    color: inherit;
} */

/* Lewy segment (oko + „Obserwuj”) – klikalny cały prostokąt */
.author-stats-follow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;                       /* wypełnij całą szerokość .ab-top-left */
    height: 100%;                      /* i całą wysokość */
    padding: 6px 14px 6px 10px;        /* dawny padding z .ab-top-left */
    box-sizing: border-box;
    text-decoration: none;
    color: inherit;
}


/* Prawy segment (ikonka usera) – flex, żeby ikona była idealnie na środku
   w poziomie i pionie na CAŁEJ szerokości i wysokości segmentu */
/* .ab-author-stats-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%; */
    /*padding: 4px 10px;*/       /* ten sam odstęp co wcześniej, ale na całym klikalnym obszarze */
    /*box-sizing: border-box;*/  /* padding nie powiększa segmentu */
    /* text-decoration: none;
    color: inherit;
} */

/* Prawy segment (ikonka profilu) – cały prostokąt klikalny */
.ab-author-stats-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 6px 0;                    /* dawny padding z .ab-top-right */
    box-sizing: border-box;
    text-decoration: none;
    color: inherit;
}

/* Ikona usera oraz oko – rozmiar + kolory bazowe (dark) */
.ab-author-stats-icon svg,
.ab-eye-icon {
    width: 16px;
    height: 16px;
    /* ikony wypełnione */
    fill: #ffffff;
    /* ikony obrysowe (stroke="currentColor", fill="none") */
    stroke: #ffffff;
    /* SVG bazujące na currentColor */
    color: #ffffff;
    display: block;
    margin: auto;
}

/* Hover na pigułę */
.ab-top-left:hover,
.ab-top-right:hover {
    background-color: #7a7a7a;
}

.ab-top-left:hover .ab-obserwuj-text,
.ab-top-right:hover .ab-obserwuj-text {
    color: #ffffff;
}

.ab-top-left:hover svg,
.ab-top-right:hover svg {
    /* wszystkie typy ikon na hover mają być białe */
    fill: #ffffff;
    stroke: #ffffff;
    color: #ffffff;
}

/* Tekst + oko obok siebie */
.ab-top-left .author-stats-text {
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

/* Samo oko – dodatkowo trzymamy definicję, ale rozmiar już wyżej */
.ab-top-left:hover .ab-eye-icon {
    fill: #ffffff;
}

/* Najczęstsze tagi w panelu statystyk */

/* Zewnętrzna sekcja tagów – nagłówek + lista tagów */
.ab-tags-section {
    padding-top: 0; /* odstęp kontrolujemy paddingiem .ab-tags-row (domyślnie 8px) */
}

/* Wiersz z nagłówkiem – sam w sobie bez paddingu,
   padding ustawiamy na .ab-tags-label (możliwy override z opcji) */
.ab-tags-header {
}

/* Sam nagłówek tekstowy */
.ab-tags-label {
    font-size: 12px;
    line-height: 1.8;
    padding: 0 13px 0 15px;        /* domyślne wartości */
    display: block;                /* ułatwia centrowanie / padding */
    text-align: left;              /* domyślnie do lewej */
}

/* Wiersz z listą tagów – tu działa padding z opcji .ab-tags-row_* */
.ab-tags-row {
    margin-top: 4px;               
    padding: 8px 13px 0 15px;      /* domyślne: 8 / 13 / 0 / 15 */
}

/* Lista piguł tagów */
.ab-tags-list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 0px;                  /* odstęp między pigułami */
}



/* Stabilny pomiar i brak łamania wewnątrz piguły */
/* .ab-tag-pill {
    white-space: nowrap;
    flex: 0 0 auto;
}


.ab-tag-pill {
    display: inline-block;
    padding: 2px 6px;
    border-radius: 999px;
    background-color: #4b4d4f;
    font-size: 11px;
    text-decoration: none;
    color: #ffffff;
}

.ab-tag-pill:hover {
    background-color: #7a7a7a;
    color: #ffffff;
} */

/* Piguły tagów – hover jak w przycisku „Obserwuj” */
.ab-tag-pill {
    display: inline-flex;              /* wycentrowanie tekstu jak w przycisku */
    align-items: center;
    justify-content: center;
    padding: 2px 8px;
    border-radius: 999px;
    background-color: #4b4d4f;
    font-size: 10px;
    text-decoration: none;
    color: #ffffff;
    white-space: nowrap;               /* nie łam tekstu w środku */
    flex: 0 0 auto;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.ab-tag-pill:hover {
    background-color: #7a7a7a;         /* identyczny kolor hover jak w segmencie „Obserwuj” */
    color: #ffffff;
}



/* =========================================
   Layout 2: panel po lewej (desktop & mobile)
   ========================================= */

.custom-author-box-2-panel-left .ab-container-panel-left {
    display: flex;
    width: 100%;
    height: auto;
    border-radius: 0.75rem;
    background-color: #303030;
}

/* Kolumna z panelem autora */
.custom-author-box-2-panel-left .ab-panel-left {
    width: 240px;
    display: flex;
    justify-content: center;
    align-items: stretch;
    padding: 10px;
    box-sizing: border-box;
}

.custom-author-box-2-panel-left .ab-right {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

/* Avatar + nick */
.custom-author-box-2-panel-left .ab-panel-avatar {
    display: flex;
    flex-direction: column;
    align-items: center;
    /*padding: 8px 0 12px;*/ /* odstęp nad i pod avatarem - w razie gdyby się przydał */
}

.custom-author-box-2-panel-left .ab-panel-avatar .author-avatar img {
    width: 80px;
    height: 80px;
}

.custom-author-box-2-panel-left .ab-author-name-panel {
    margin: 6px 0 4px;
    font-size: 1.1rem;
    text-align: center;
}

/* Prawa kolumna – opis autora */
.custom-author-box-2-panel-left .ab-panel-description {
    flex: 1;
    padding: 10px 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    box-sizing: border-box;
}

.custom-author-box-2-panel-left .ab-panel-description .ab-author-description {
    font-size: 1rem;
    line-height: 1.5;
}

/* =========================================
   Layout 3: panel po lewej TYLKO na mobile
   ========================================= */

.custom-author-box-2-panel-left-mobile-desktop {
    display: block;
}
.custom-author-box-2-panel-left-mobile-mobile {
    display: none;
}

/* ============================
   Widok mobilny
   ============================ */
@media (max-width: 768px) {

    /* Swap dla opcji panel_left_mobile (układ 3) */
    .custom-author-box-2-panel-left-mobile-desktop {
        display: none;
    }
    .custom-author-box-2-panel-left-mobile-mobile {
        display: block;
    }

    /* --- LAYOUT 1: klasyczny --- */

    .custom-author-box-2-classic .ab-container {
        display: grid;
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 8px;
        row-gap: 4px;
        width: 100%;
        min-height: 0;       /* zeruje min-height z .ab-container na mobile */
        height: auto;
        padding: 10px 10px 12px;
        box-sizing: border-box;
    }

    .custom-author-box-2-classic .ab-avatar-column {
        grid-column: 1;
        grid-row: 1;
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        padding: 4px 0;
    }

    .custom-author-box-2-classic .author-avatar img {
        width: 72px;
        height: 72px;
    }

    .custom-author-box-2-classic .ab-author-name-mobile {
        display: block;
    }

    .custom-author-box-2-classic .ab-author-name-desktop {
        display: none;
    }

    .custom-author-box-2-classic .ab-right-wrapper {
        grid-column: 2;
        grid-row: 1;
        width: 100%;
        padding: 0;
        height: 100%;
        display: flex;
        align-items: stretch;
        justify-content: center;
        box-sizing: border-box;
    }

    .custom-author-box-2-classic .ab-right {
        width: 100%;
        height: 100%;
    }

    .custom-author-box-2-classic .ab-left {
        grid-column: 1 / 3;
        grid-row: 2;
        width: 100%;
        padding: 6px 2px 0;
        justify-content: center;
    }

    .custom-author-box-2-classic .ab-author-description {
        font-size: 0.9rem;
        line-height: 1.4;
        padding: 0 3px;
    }

    .custom-author-box-2-classic .ab-middle-left,
    .custom-author-box-2-classic .ab-bottom-left,
    .custom-author-box-2-classic .ab-middle-right,
    .custom-author-box-2-classic .ab-bottom-right {
        font-size: 11px;
        padding-left: 10px;
        padding-right: 10px;
    }

    /* --- LAYOUT 2: panel po lewej (mobile dla opcji 2) --- */

    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-container-panel-left {
        flex-direction: column;
        padding: 10px;
        height: auto;
        box-sizing: border-box;
    }

    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-panel-left {
        width: 100%;
        padding: 0 0 8px;
    }

    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-panel-avatar .author-avatar img {
        width: 72px;
        height: 72px;
    }

    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-panel-description {
        width: 100%;
        padding: 6px 0 0;
        align-items: center;
    }

    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-panel-description .ab-author-description {
        font-size: 0.9rem;
    }

    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-middle-left,
    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-bottom-left,
    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-middle-right,
    .custom-author-box-2-panel-left:not(.custom-author-box-2-panel-left-mobile-mobile) .ab-bottom-right {
        font-size: 11px;
        padding-left: 10px;
        padding-right: 10px;
    }

    /* --- LAYOUT 3: panel_left_mobile (opcja 3) – 2 kolumny po 50% --- */

    .custom-author-box-2-panel-left-mobile-mobile .ab-container-panel-left {
        display: flex;
    }

    .custom-author-box-2-panel-left-mobile-mobile .ab-panel-left,
    .custom-author-box-2-panel-left-mobile-mobile .ab-panel-description {
        width: 50%;
        flex: 0 0 50%;
    }

    .custom-author-box-2-panel-left-mobile-mobile .ab-panel-description {
        padding: 10px 8px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        box-sizing: border-box;
    }

    .custom-author-box-2-panel-left-mobile-mobile .ab-author-description {
        font-size: 0.9rem;
        line-height: 1.4;
        padding: 0;
    }

    .custom-author-box-2-panel-left-mobile-mobile .ab-author-extra-heading {
        font-size: 1rem;
        margin-bottom: 6px;
    }

    /* Wariant z rozciąganiem lewego panelu – klasa .ab-stretch-panel-mobile */
    .custom-author-box-2-panel-left-mobile-mobile.ab-stretch-panel-mobile .ab-container-panel-left {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: stretch;
    }

    .custom-author-box-2-panel-left-mobile-mobile.ab-stretch-panel-mobile .ab-panel-left,
    .custom-author-box-2-panel-left-mobile-mobile.ab-stretch-panel-mobile .ab-panel-description {
        width: auto;
        flex: none;
        height: 100%;
    }

    .custom-author-box-2-panel-left-mobile-mobile.ab-stretch-panel-mobile .ab-right-wrapper,
    .custom-author-box-2-panel-left-mobile-mobile.ab-stretch-panel-mobile .ab-right {
        height: 100%;
    }

    /*.ab-middle-box,
    .ab-bottom-box {
    padding: 0;*/          /* odstęp nad i pod wierszem - wyłącz w media */
    /*}*/

    /*.ab-top-box {
    margin-bottom: 0px;*/ /* odstęp pod górnym wierszem - wyłącz w media */
    /*}*/

    .custom-author-box-2 .ab-middle-box,
    .custom-author-box-2 .ab-bottom-box {
        padding: 0;
    }

    .custom-author-box-2 .ab-top-box {
        margin-bottom: 0;
    }
}

/* ============================================
   Author Box Ultimate – jasny wariant (light)
   Działa dla:
   - motywów bez data-scheme na <body>
   - Maag z data-scheme="light"
   ============================================ */

/* Zestaw kolorów dla jasnych motywów (Maag + fallbacki) */
body:not([data-scheme]),
body[data-scheme="light"] {
    --abu-bg-main:        var(--cs-layout-background, #f7f7f7);
    --abu-bg-panel:       var(--cs-site-background, #ffffff);
    --abu-border-color:   var(--cs-color-border, #e0e0e0);
    --abu-pill-bg:        var(--cs-color-tag-background, #f5f5f5);
    --abu-text-strong:    var(--cs-color-primary, #161616);
    --abu-text-muted:     var(--cs-color-secondary, #666666);
}

/* Główny kontener boxa autora */
body:not([data-scheme]) .custom-author-box-2 .ab-container,
body[data-scheme="light"] .custom-author-box-2 .ab-container {
    background-color: var(--abu-bg-main) !important;
    border-radius: 0.75rem;
    /* pseudo-obramowanie bez zmiany szerokości */
    box-shadow: 0 0 0 1px var(--abu-border-color);
}

body:not([data-scheme]) .custom-author-box-2 .ab-container-panel-left,
body[data-scheme="light"] .custom-author-box-2 .ab-container-panel-left {
    background-color: var(--abu-bg-main) !important;
    border-radius: 0.75rem;
    box-shadow: 0 0 0 1px var(--abu-border-color);
}

/* Panel statystyk po prawej */
body:not([data-scheme]) .custom-author-box-2 .ab-right,
body[data-scheme="light"] .custom-author-box-2 .ab-right {
    background-color: var(--abu-bg-panel) !important;
    border-radius: 0.75rem;
    box-shadow: 0 0 0 1px var(--abu-border-color);
}

/* Górna piguła (Powiązane / ikonka) – stan bazowy */
body:not([data-scheme]) .custom-author-box-2 .ab-top-inner,
body[data-scheme="light"] .custom-author-box-2 .ab-top-inner {
    background-color: var(--abu-pill-bg) !important;
    border-color: var(--abu-border-color) !important;
}

/* --- CZARNY HOVER TYLKO W LIGHT --- */

/* Hover na segmentach piguły (lewy / prawy) */
body:not([data-scheme]) .custom-author-box-2 .ab-top-left:hover,
body[data-scheme="light"] .custom-author-box-2 .ab-top-left:hover,
body:not([data-scheme]) .custom-author-box-2 .ab-top-right:hover,
body[data-scheme="light"] .custom-author-box-2 .ab-top-right:hover {
    background-color: #000000 !important;
}

/* Tekst „Powiązane / Obserwuj” – biały na hoverze */
body:not([data-scheme]) .custom-author-box-2 .ab-top-left:hover .ab-obserwuj-text,
body[data-scheme="light"] .custom-author-box-2 .ab-top-left:hover .ab-obserwuj-text,
body:not([data-scheme]) .custom-author-box-2 .ab-top-right:hover .ab-obserwuj-text,
body[data-scheme="light"] .custom-author-box-2 .ab-top-right:hover .ab-obserwuj-text {
    color: #ffffff !important;
}

/* Ikony (oko + user + dowolne SVG z biblioteki) – białe na hoverze (light) */
body:not([data-scheme]) .custom-author-box-2 .ab-top-left:hover svg,
body[data-scheme="light"] .custom-author-box-2 .ab-top-left:hover svg,
body:not([data-scheme]) .custom-author-box-2 .ab-top-right:hover svg,
body[data-scheme="light"] .custom-author-box-2 .ab-top-right:hover svg {
    /* fill-owe ikonki */
    fill: #ffffff !important;
    /* ikonki obrysowe */
    stroke: #ffffff !important;
    /* ikonki na currentColor */
    color: #ffffff !important;
}

/* Stan nie-hover – ciemny tekst i ikony (jak w dark, tylko na jasnym tle) */
body:not([data-scheme]) .custom-author-box-2 .ab-obserwuj-text,
body[data-scheme="light"] .custom-author-box-2 .ab-obserwuj-text {
    color: var(--abu-text-strong) !important;
}

body:not([data-scheme]) .custom-author-box-2 .ab-author-stats-icon svg,
body[data-scheme="light"] .custom-author-box-2 .ab-author-stats-icon svg,
body:not([data-scheme]) .custom-author-box-2 .ab-eye-icon,
body[data-scheme="light"] .custom-author-box-2 .ab-eye-icon {
    /* domyślnie ciemne jak tekst – działa dla wszystkich typów SVG */
    fill: var(--abu-text-strong) !important;
    stroke: var(--abu-text-strong) !important;
    color: var(--abu-text-strong) !important;
}

/* Wiersze statystyk – podpisy po lewej */
body:not([data-scheme]) .custom-author-box-2 .ab-middle-left,
body[data-scheme="light"] .custom-author-box-2 .ab-middle-left,
body:not([data-scheme]) .custom-author-box-2 .ab-bottom-left,
body[data-scheme="light"] .custom-author-box-2 .ab-bottom-left {
    color: var(--abu-text-muted) !important;
}

/* Nagłówek sekcji tagów */
body:not([data-scheme]) .custom-author-box-2 .ab-tags-label,
body[data-scheme="light"] .custom-author-box-2 .ab-tags-label {
    color: var(--abu-text-muted) !important;
}

/* Piguły tagów – bazowo szare, na hover czarne jak przycisk */
body:not([data-scheme]) .custom-author-box-2 .ab-tag-pill,
body[data-scheme="light"] .custom-author-box-2 .ab-tag-pill {
    background-color: var(--abu-pill-bg) !important;
    color: var(--abu-text-strong) !important;
}

body:not([data-scheme]) .custom-author-box-2 .ab-tag-pill:hover,
body[data-scheme="light"] .custom-author-box-2 .ab-tag-pill:hover {
    background-color: #000000 !important;
    color: #ffffff !important;
}

/* ─────────────────────────────────────────────────────────────
   Social icons row
   ───────────────────────────────────────────────────────────── */
.ab-social-meta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 6px;
}

.ab-social-meta.ab-social-meta-sticky {
    margin-top: auto;
    padding-top: 0px;
    padding-bottom: 4px;
}

.ab-author-website {
    margin-top: 8px;
    line-height: 1.3;
    font-size: 14px;
}

.ab-author-website a {
    color: #ffffff;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.ab-social-meta .ab-social-meta-tags-section {
    width: 100%;
    margin-top: 10px;
}

.ab-social-meta .ab-social-meta-tags-row {
    margin-top: 0;
    padding: 0;
}

.ab-social-meta .ab-social-meta-tags-list {
    width: 100%;
}

.ab-social-row{
    /* szerokość tylko do ikon (jak Maag) */
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;

    /* WRACAMY do klasycznego gap – to przywraca wygląd jak na screen 1 */
    --abu-social-gap: var(--abu-social-icon-gap, 10px);
    --abu-social-gap-half: calc(var(--abu-social-gap) / 2);

    column-gap: var(--abu-social-gap);
    row-gap: 4px;

    margin-top: 10px;
    align-self: flex-start;
}

.ab-social-link{
    position: relative;               /* potrzebne pod ::before */
    display: inline-flex;
    align-items: center;
    justify-content: center;

    /* WRACAMY do starej geometrii linka (jak wcześniej) */
    width: 22px;
    height: 22px;
    padding: 0;

    text-decoration: none;

    color: #ffffff;
    opacity: .95;

    transition: opacity .2s ease, filter .2s ease, transform .2s ease;
    border-radius: 4px;
}

/* HITBOX: połówki gapów należą do sąsiednich ikonek (bez migania),
   ale NIE zmienia to wizualnych odstępów (bo ::before nie wpływa na layout) */
.ab-social-link::before{
    content: "";
    position: absolute;

    /* minimalny “luz” góra/dół (możesz dać 0 jeśli nie chcesz) */
    top: -2px;
    bottom: -2px;

    /* to jest klucz: wchodzimy w gap po połowie */
    left:  calc(-1 * var(--abu-social-gap-half));
    right: calc(-1 * var(--abu-social-gap-half));
}

/* żeby nie łapało hovera “poza” skrajnymi ikonkami */
.ab-social-link:first-child::before{ left: 0; }
.ab-social-link:last-child::before{ right: 0; }

.ab-social-link:hover{
    opacity: 1;
}

.ab-social-icon{
    width:18px;
    height:18px;
    display:block;
}

/* tabler ma zwykle stroke, FA ma fill=currentColor – oba zagrają z color linka */
.ab-social-icon *{
    vector-effect: non-scaling-stroke;
}

/* Light scheme: ciemne ikony */
body:not([data-scheme]) .custom-author-box-2 .ab-social-link,
body[data-scheme="light"] .custom-author-box-2 .ab-social-link{
    color: var(--abu-text-strong, #161616);
    opacity: .9;
}

/* =========================
   Social hover effects
   ========================= */

/* 1) default — lift też ma działać */
.ab-social-row.ab-social-hover-default .ab-social-link:hover{
    opacity: 1;
    transform: translate3d(0px, var(--abu-social-lift, 0px), 0);
}

/* 2) dim_others — reaguj TYLKO gdy hover jest na jakimkolwiek linku (nie na pustym miejscu) */
.custom-author-box-2 .ab-social-row.ab-social-hover-dim_others:has(.ab-social-link:hover) .ab-social-link{
    opacity: .55;
    filter: grayscale(.35) brightness(.97);
}
.custom-author-box-2 .ab-social-row.ab-social-hover-dim_others:has(.ab-social-link:hover) .ab-social-link:hover{
    opacity: 1;
    filter: none;
    transform: translate3d(0px, var(--abu-social-lift, 0px), 0);
}

/* 3) glow_dim_others — reaguj TYLKO gdy hover jest na jakimkolwiek linku */
.custom-author-box-2 .ab-social-row.ab-social-hover-glow_dim_others .ab-social-link{
    opacity: 1;
    filter: drop-shadow(0 0 6px currentColor);
}

.custom-author-box-2 .ab-social-row.ab-social-hover-glow_dim_others:has(.ab-social-link:hover) .ab-social-link{
    opacity: .50;
    filter: grayscale(.35) brightness(.97);
}

.custom-author-box-2 .ab-social-row.ab-social-hover-glow_dim_others:has(.ab-social-link:hover) .ab-social-link:hover{
    opacity: 1;
    filter: drop-shadow(0 0 8px currentColor);
    transform: translate3d(0px, var(--abu-social-lift, 0px), 0);
}


body:not([data-scheme]) .custom-author-box-2 .ab-author-website a,
body[data-scheme="light"] .custom-author-box-2 .ab-author-website a {
    color: var(--abu-text-strong) !important;
}

/* Automatic scheme: apply the light appearance only when the operating
   system requests it. Automatic dark mode continues to use the base styles. */
@media (prefers-color-scheme: light) {
    body[data-scheme="auto"] .custom-author-box-2 {
        --abu-bg-main:        var(--cs-layout-background, #f7f7f7);
        --abu-bg-panel:       var(--cs-site-background, #ffffff);
        --abu-border-color:   var(--cs-color-border, #e0e0e0);
        --abu-pill-bg:        var(--cs-color-tag-background, #f5f5f5);
        --abu-text-strong:    var(--cs-color-primary, #161616);
        --abu-text-muted:     var(--cs-color-secondary, #666666);
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-container,
    body[data-scheme="auto"] .custom-author-box-2 .ab-container-panel-left {
        background-color: var(--abu-bg-main) !important;
        border-radius: 0.75rem;
        box-shadow: 0 0 0 1px var(--abu-border-color);
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-right {
        background-color: var(--abu-bg-panel) !important;
        border-radius: 0.75rem;
        box-shadow: 0 0 0 1px var(--abu-border-color);
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-top-inner {
        background-color: var(--abu-pill-bg) !important;
        border-color: var(--abu-border-color) !important;
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-top-left:hover,
    body[data-scheme="auto"] .custom-author-box-2 .ab-top-right:hover,
    body[data-scheme="auto"] .custom-author-box-2 .ab-tag-pill:hover {
        background-color: #000000 !important;
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-top-left:hover .ab-obserwuj-text,
    body[data-scheme="auto"] .custom-author-box-2 .ab-top-right:hover .ab-obserwuj-text,
    body[data-scheme="auto"] .custom-author-box-2 .ab-tag-pill:hover {
        color: #ffffff !important;
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-top-left:hover svg,
    body[data-scheme="auto"] .custom-author-box-2 .ab-top-right:hover svg {
        fill: #ffffff !important;
        stroke: #ffffff !important;
        color: #ffffff !important;
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-obserwuj-text,
    body[data-scheme="auto"] .custom-author-box-2 .ab-tag-pill,
    body[data-scheme="auto"] .custom-author-box-2 .ab-social-link,
    body[data-scheme="auto"] .custom-author-box-2 .ab-author-website a {
        color: var(--abu-text-strong) !important;
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-author-stats-icon svg,
    body[data-scheme="auto"] .custom-author-box-2 .ab-eye-icon {
        fill: var(--abu-text-strong) !important;
        stroke: var(--abu-text-strong) !important;
        color: var(--abu-text-strong) !important;
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-middle-left,
    body[data-scheme="auto"] .custom-author-box-2 .ab-bottom-left,
    body[data-scheme="auto"] .custom-author-box-2 .ab-tags-label {
        color: var(--abu-text-muted) !important;
    }

    body[data-scheme="auto"] .custom-author-box-2 .ab-tag-pill {
        background-color: var(--abu-pill-bg) !important;
    }
}


/* =========================================================
   ABU: Sticky WWW + social icons (bez zmiany wysokości boxa)
   Działa TYLKO gdy:
   - .ab-social-meta ma klasę .ab-social-meta-sticky
   - a kolumna opisu ma klasę .ab-left-sticky (dodawaną w PHP)
   ========================================================= */

/* 1) Tryb sticky: kolumna opisu ma układ top -> bottom (bez centrowania) */
.custom-author-box-2 .ab-left.ab-left-sticky,
.custom-author-box-2 .ab-panel-description.ab-left-sticky{
    justify-content: flex-start !important;
    margin-top: 4px;
}

/* 2) Klucz: .ab-description-main MUSI zająć wolną wysokość kolumny,
      żeby margin-top:auto na .ab-social-meta-sticky miał “z czego” spychać */
.custom-author-box-2 .ab-left.ab-left-sticky > .ab-description-main,
.custom-author-box-2 .ab-panel-description.ab-left-sticky > .ab-description-main{
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
}

/* 3) Przyklej WWW + social icons do dołu kolumny (bez wpływu na wysokość boxa) */
.custom-author-box-2 .ab-left.ab-left-sticky > .ab-description-main > .ab-social-meta.ab-social-meta-sticky,
.custom-author-box-2 .ab-panel-description.ab-left-sticky > .ab-description-main > .ab-social-meta.ab-social-meta-sticky{
    margin-top: auto !important;
}

/* 4) Opcjonalnie: jeśli chcesz “dokładnie jak na screenie 1” (delikatny odstęp od dołu)
      zostaw to, a jeśli ma być bardziej “do krawędzi” zmień 6px -> 0px */
.custom-author-box-2 .ab-left.ab-left-sticky > .ab-description-main > .ab-social-meta.ab-social-meta-sticky,
.custom-author-box-2 .ab-panel-description.ab-left-sticky > .ab-description-main > .ab-social-meta.ab-social-meta-sticky{
    padding-bottom: 6px;
}

/* =========================================================
   Stage 3 additions
   The approved styles above remain unchanged. Every rule below either targets
   a new element or an explicitly selected design state.
   ========================================================= */

/* The protected dark preset is the approved visual baseline. It must stay
   dark even when the theme exposes an automatic/light body scheme. Palette
   presets below remain fully independent from this compatibility guard. */
body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) {
    --abu-bg-main: #303030;
    --abu-bg-panel: #3e4042;
    --abu-border-color: #7a7a7a;
    --abu-pill-bg: #555555;
    --abu-text-strong: #ffffff;
    --abu-text-muted: #ffffff;
    color: #ffffff;
}

body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) :where(
    .ab-container,
    .ab-container-panel-left
) {
    background-color: #303030 !important;
    box-shadow: none;
}

body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) .ab-right {
    background-color: #3e4042 !important;
    box-shadow: none;
}

body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) .ab-top-inner {
    background-color: #555555 !important;
    border-color: #7a7a7a !important;
}

body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) :where(
    .ab-author-description,
    .ab-author-extra-heading,
    .ab-author-name-desktop,
    .ab-author-name-mobile,
    .ab-author-name-panel,
    .ab-middle-left,
    .ab-bottom-left,
    .ab-middle-right,
    .ab-bottom-right,
    .ab-tags-label,
    .ab-author-website a,
    .ab-social-link,
    .ab-obserwuj-text
) {
    color: #ffffff !important;
}

body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) :where(
    .ab-author-stats-icon svg,
    .ab-eye-icon
) {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) .ab-tag-pill {
    color: #ffffff !important;
    background-color: #4b4d4f !important;
}

body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) :where(
    .ab-top-left,
    .ab-top-right
):hover,
body .custom-author-box-2.abu-preset-dark:not(.abu-design-palette) .ab-tag-pill:hover {
    color: #ffffff !important;
    background-color: #7a7a7a !important;
}

/* Explicit and system color schemes apply only while the user has not chosen
   a palette preset. The protected established appearance therefore remains
   byte-for-byte compatible, while an intentional scheme choice is real. */
body .custom-author-box-2.abu-author-box.abu-scheme-light:not(.abu-design-palette) {
    --abu-scheme-surface: #f7f7f7;
    --abu-scheme-surface-muted: #ffffff;
    --abu-scheme-text: #161616;
    --abu-scheme-text-muted: #5f6368;
    --abu-scheme-border: #d7dce1;
    --abu-scheme-chip: #e7e9ec;
    --abu-scheme-chip-text: #20242a;
    --abu-scheme-hover: #f2f3f5;
    --abu-scheme-hover-text: #161616;
    --abu-scheme-soft: rgba(22, 22, 22, 0.06);
    --abu-scheme-soft-active: rgba(22, 22, 22, 0.12);
}

body .custom-author-box-2.abu-author-box.abu-scheme-system:not(.abu-design-palette) {
    --abu-scheme-surface: #303030;
    --abu-scheme-surface-muted: #3e4042;
    --abu-scheme-text: #ffffff;
    --abu-scheme-text-muted: #e5e7eb;
    --abu-scheme-border: #7a7a7a;
    --abu-scheme-chip: #4b4d4f;
    --abu-scheme-chip-text: #ffffff;
    --abu-scheme-hover: #7a7a7a;
    --abu-scheme-hover-text: #ffffff;
    --abu-scheme-soft: rgba(255, 255, 255, 0.08);
    --abu-scheme-soft-active: rgba(255, 255, 255, 0.14);
}

@media (prefers-color-scheme: light) {
    body .custom-author-box-2.abu-author-box.abu-scheme-system:not(.abu-design-palette) {
        --abu-scheme-surface: #f7f7f7;
        --abu-scheme-surface-muted: #ffffff;
        --abu-scheme-text: #161616;
        --abu-scheme-text-muted: #5f6368;
        --abu-scheme-border: #d7dce1;
        --abu-scheme-chip: #e7e9ec;
        --abu-scheme-chip-text: #20242a;
        --abu-scheme-hover: #f2f3f5;
        --abu-scheme-hover-text: #161616;
        --abu-scheme-soft: rgba(22, 22, 22, 0.06);
        --abu-scheme-soft-active: rgba(22, 22, 22, 0.12);
    }
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) {
    color: var(--abu-scheme-text);
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) :where(
    .ab-container,
    .ab-container-panel-left
) {
    background-color: var(--abu-scheme-surface) !important;
    box-shadow: none;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-right {
    background-color: var(--abu-scheme-surface-muted) !important;
    box-shadow: none;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-top-inner {
    color: var(--abu-scheme-chip-text);
    background-color: var(--abu-scheme-chip) !important;
    border-color: var(--abu-scheme-border) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-top-left {
    border-right-color: var(--abu-scheme-border) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) :where(
    .ab-author-description,
    .ab-author-extra-heading,
    .ab-author-name-desktop,
    .ab-author-name-mobile,
    .ab-author-name-panel,
    .ab-author-website a,
    .ab-social-link,
    .ab-obserwuj-text
) {
    color: var(--abu-scheme-text) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) :where(
    .ab-middle-left,
    .ab-bottom-left,
    .ab-middle-right,
    .ab-bottom-right,
    .ab-tags-label,
    .abu-author-box__role
) {
    color: var(--abu-scheme-text-muted) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-author-stats-icon svg,
body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-eye-icon {
    color: var(--abu-scheme-chip-text) !important;
    fill: var(--abu-scheme-chip-text) !important;
    stroke: var(--abu-scheme-chip-text) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-tag-pill {
    color: var(--abu-scheme-chip-text) !important;
    background-color: var(--abu-scheme-chip) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) :where(
    .ab-top-left,
    .ab-top-right
):hover,
body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-tag-pill:hover {
    color: var(--abu-scheme-hover-text) !important;
    background-color: var(--abu-scheme-hover) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-top-left:hover .ab-obserwuj-text,
body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-top-right:hover .ab-obserwuj-text,
body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-top-left:hover svg,
body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .ab-top-right:hover svg {
    color: var(--abu-scheme-hover-text) !important;
    fill: var(--abu-scheme-hover-text) !important;
    stroke: var(--abu-scheme-hover-text) !important;
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) :where(
    .abu-author-box__contributor,
    .abu-author-box__tab-list
) {
    background: var(--abu-scheme-soft);
}

body .custom-author-box-2.abu-author-box:is(
    .abu-scheme-light,
    .abu-scheme-system
):not(.abu-design-palette) .abu-author-box__tab-list [role="tab"][aria-selected="true"] {
    color: var(--abu-scheme-text);
    background: var(--abu-scheme-soft-active);
}

.abu-author-box .abu-author-headline {
    margin: 0 5px 4px;
    font-size: 0.82rem;
    font-weight: 700;
    opacity: 0.78;
}

.abu-author-box__contributors,
.abu-author-box__tabs {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    margin-top: 10px;
    padding: 9px 10px;
    border-radius: 0.75rem;
    background: rgba(0, 0, 0, 0.12);
}

.abu-author-box__section-title {
    margin: 0 0 7px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.abu-author-box__contributor-list,
.abu-author-box__recent-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.abu-author-box__contributor {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 7px;
    padding: 5px 8px;
    border-radius: 0.65rem;
    background: rgba(255, 255, 255, 0.08);
}

.abu-author-box__contributor img {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border-radius: 50%;
    object-fit: cover;
}

.abu-author-box__contributor-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    line-height: 1.25;
}

.abu-author-box__contributor-name,
.abu-author-box__role {
    overflow-wrap: anywhere;
}

.abu-author-box__role {
    font-size: 0.72rem;
    opacity: 0.72;
}

.abu-author-box__tab-list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 8px;
    padding: 4px;
    border-radius: 0.65rem;
    background: rgba(255, 255, 255, 0.08);
}

.abu-author-box__tab-list [role="tab"] {
    min-height: 34px;
    padding: 6px 10px;
    border: 0;
    border-radius: 0.5rem;
    color: inherit;
    background: transparent;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 700;
    cursor: pointer;
}

.abu-author-box__tab-list [role="tab"][aria-selected="true"] {
    color: #ffffff;
    background: rgba(0, 0, 0, 0.3);
}

.abu-author-box__tab-panel {
    min-width: 0;
    margin: 0;
    padding: 4px 2px 2px;
}

.abu-author-box.abu-tabs-ready .abu-author-box__tab-panel[hidden] {
    display: none !important;
}

.abu-author-box__recent-list {
    flex-direction: column;
}

.abu-author-box__recent-list li,
.abu-author-box__recent-list a {
    min-width: 0;
    overflow-wrap: anywhere;
}

.abu-author-box__recent-list span {
    display: block;
    font-size: 0.72rem;
    opacity: 0.72;
}

.abu-author-box :where(.abu-author-box__contributors, .abu-author-box__tabs) a,
.abu-author-box :where(.abu-author-box__contributors, .abu-author-box__tabs) button {
    color: inherit;
}

.abu-author-box :where(a, button):focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 3px;
}

body .custom-author-box-2.abu-author-box.abu-design-active .ab-container,
body .custom-author-box-2.abu-author-box.abu-design-active .ab-container-panel-left {
    background-image: var(--abu-background-image);
    background-position: center;
    background-size: cover;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-container,
body .custom-author-box-2.abu-author-box.abu-design-palette .ab-container-panel-left {
    color: var(--abu-text);
    background-color: var(--abu-surface) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-right {
    color: var(--abu-text);
    background-color: var(--abu-surface-muted) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-top-inner {
    color: var(--abu-chip-text);
    background-color: var(--abu-chip-surface) !important;
    border-color: var(--abu-border) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-top-left {
    border-right-color: var(--abu-border) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette :where(
    .ab-author-description,
    .ab-author-extra-heading,
    .ab-author-name-desktop,
    .ab-author-name-mobile,
    .ab-author-name-panel
) {
    color: var(--abu-text) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette :where(
    .ab-middle-left,
    .ab-bottom-left,
    .ab-middle-right,
    .ab-bottom-right,
    .ab-tags-label
) {
    color: var(--abu-text-muted) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette :where(
    .ab-author-website a,
    .ab-social-link
) {
    color: var(--abu-text) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-author-stats-icon svg,
body .custom-author-box-2.abu-author-box.abu-design-palette .ab-eye-icon {
    color: var(--abu-chip-text) !important;
    fill: var(--abu-chip-text) !important;
    stroke: var(--abu-chip-text) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-obserwuj-text {
    color: var(--abu-chip-text) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-tag-pill {
    color: var(--abu-chip-text) !important;
    background-color: var(--abu-chip-surface) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette :where(
    .ab-top-left,
    .ab-top-right
):hover {
    color: var(--abu-chip-hover-text) !important;
    background-color: var(--abu-chip-hover-surface) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-tag-pill:hover {
    color: var(--abu-chip-hover-text) !important;
    background-color: var(--abu-chip-hover-surface) !important;
}

body .custom-author-box-2.abu-author-box.abu-design-palette .ab-top-left:hover .ab-obserwuj-text,
body .custom-author-box-2.abu-author-box.abu-design-palette .ab-top-right:hover .ab-obserwuj-text,
body .custom-author-box-2.abu-author-box.abu-design-palette .ab-top-left:hover svg,
body .custom-author-box-2.abu-author-box.abu-design-palette .ab-top-right:hover svg {
    color: var(--abu-chip-hover-text) !important;
    fill: var(--abu-chip-hover-text) !important;
    stroke: var(--abu-chip-hover-text) !important;
}

body .custom-author-box-2.abu-author-box.abu-custom-border-width .ab-container,
body .custom-author-box-2.abu-author-box.abu-custom-border-width .ab-container-panel-left {
    border-style: solid;
    border-color: var(--abu-border);
    border-width: var(--abu-frame-width);
}

body .custom-author-box-2.abu-author-box.abu-custom-radius .ab-container,
body .custom-author-box-2.abu-author-box.abu-custom-radius .ab-container-panel-left,
body .custom-author-box-2.abu-author-box.abu-custom-radius .ab-right {
    border-radius: var(--abu-radius);
}

body .custom-author-box-2.abu-author-box.abu-custom-shadow .ab-container,
body .custom-author-box-2.abu-author-box.abu-custom-shadow .ab-container-panel-left,
body .custom-author-box-2.abu-author-box.abu-custom-shadow .ab-right {
    box-shadow: var(--abu-shadow);
}

body .custom-author-box-2.abu-author-box.abu-custom-avatar-size .author-avatar img {
    width: var(--abu-avatar-size);
    height: var(--abu-avatar-size);
}

body .custom-author-box-2.abu-author-box.abu-custom-avatar-shape.abu-avatar-rounded .author-avatar img {
    border-radius: min(24%, var(--abu-radius));
}

body .custom-author-box-2.abu-author-box.abu-custom-avatar-shape.abu-avatar-square .author-avatar img {
    border-radius: 0;
}

body .custom-author-box-2.abu-author-box.abu-custom-avatar-effect.abu-avatar-effect-ring .author-avatar img {
    box-shadow: 0 0 0 3px var(--abu-accent);
}

body .custom-author-box-2.abu-author-box.abu-custom-avatar-effect.abu-avatar-effect-shadow .author-avatar img {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);
}

body .custom-author-box-2.abu-author-box.abu-custom-avatar-effect.abu-avatar-effect-mono .author-avatar img {
    filter: grayscale(1);
}

body .custom-author-box-2.abu-author-box.abu-custom-font-family {
    font-family: var(--abu-font-family);
}

body .custom-author-box-2.abu-author-box.abu-custom-font-size {
    font-size: var(--abu-font-size);
}

body .custom-author-box-2.abu-author-box.abu-custom-name-size :where(
    .ab-author-name-desktop,
    .ab-author-name-mobile,
    .ab-author-name-panel
) {
    font-size: var(--abu-name-size);
}

body .custom-author-box-2.abu-author-box.abu-custom-icon-size :where(
    .ab-social-link svg,
    .ab-author-stats-icon svg,
    .ab-eye-icon
) {
    width: var(--abu-icon-size);
    height: var(--abu-icon-size);
}

body .custom-author-box-2.abu-author-box.abu-custom-space :where(
    .ab-left,
    .ab-panel-description
) {
    padding-top: var(--abu-space);
    padding-bottom: var(--abu-space);
}

body .custom-author-box-2.abu-author-box.abu-custom-gap :where(
    .ab-social-row,
    .ab-tags-list,
    .abu-author-box__contributor-list,
    .abu-author-box__tab-list
) {
    gap: var(--abu-gap);
}

body .custom-author-box-2.abu-author-box.abu-custom-control-shape :where(
    .ab-top-inner,
    .ab-tag-pill,
    .abu-author-box__tab-list [role="tab"]
) {
    border-radius: var(--abu-radius);
}

body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-none .ab-container,
body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-none .ab-container-panel-left {
    border-width: 0;
}

body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-top .ab-container,
body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-top .ab-container-panel-left {
    border-width: var(--abu-frame-width) 0 0;
}

body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-bottom .ab-container,
body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-bottom .ab-container-panel-left {
    border-width: 0 0 var(--abu-frame-width);
}

body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-vertical .ab-container,
body .custom-author-box-2.abu-author-box.abu-design-active.abu-border-vertical .ab-container-panel-left {
    border-width: 0 var(--abu-frame-width);
}

@media (max-width: 768px) {
    .abu-author-box__contributors,
    .abu-author-box__tabs {
        padding: 8px;
    }

    .abu-author-box__contributor-list {
        flex-direction: column;
    }
}

/* Stage 4: RTL-only corrections. The approved LTR baseline is untouched. */
[dir="rtl"] .custom-author-box-2.abu-author-box {
    direction: rtl;
}

[dir="rtl"] .custom-author-box-2.abu-author-box :where(
    .ab-author-description,
    .ab-panel-description,
    .abu-author-box__tab-panel
) {
    text-align: right;
}

[dir="rtl"] .custom-author-box-2.abu-author-box .ab-panel-left {
    border-right: 0;
    border-left: 2px solid #7a7a7a;
}
