/* =========================================================
   4RINGS — AUTHOR ARCHIVE TEMPLATE
   ========================================================= */

body.archive.author .site-content {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

body.archive.author #primary,
body.archive.author #main {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
}

body.archive.author #right-sidebar,
body.archive.author #left-sidebar,
body.archive.author .widget-area {
    display: none !important;
}

body.archive.author .inside-article {
    padding: 0 !important;
    background: transparent !important;
}

/* Nadpisanie szarego kontenera GeneratePress na przezroczysty */
body.archive.author .page-header {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.archive.author .page-header .page-title,
body.archive.author .page-header .taxonomy-description,
body.archive.author .page-header .author-info {
    display: none !important;
}

/* Ukrycie starych elementów takich jak np. mailpoet/newsletter sidebar widgets */
body.archive.author .sidebar,
body.archive.author .mailpoet_form,
body.archive.author .mc4wp-form {
    display: none !important;
}

/* Kontener autora */
.fr-author-archive-wrap {
    width: 100%;
    max-width: 1080px; /* Szerokość dostosowana do grida wpisów */
    margin: 48px auto 64px;
    padding: 0 24px;
    box-sizing: border-box;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.fr-author-page-header {
    display: grid;
    grid-template-columns: 140px minmax(0, 1fr);
    gap: 32px;
    align-items: start;
    padding: 40px;
    background: #fff;
    border: 1px solid #eeeeee;
    border-top: 4px solid #111;
}

.fr-author-page-avatar {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    overflow: hidden;
    background: #f7f7f7;
    flex-shrink: 0;
    border: 1px solid #eaeaea;
}

.fr-author-page-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.fr-author-page-info {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.fr-author-page-meta-top {
    margin-bottom: 10px;
}

.fr-author-page-label {
    display: inline-flex;
    padding: 4px 8px;
    background: #111;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1;
    font-family: "Space Grotesk", system-ui, -apple-system, sans-serif;
}

.fr-author-page-title {
    margin: 0 0 12px 0;
    font-family: "Space Grotesk", system-ui, -apple-system, sans-serif;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #111;
}

.fr-author-page-meta-bottom {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
    font-size: 14px;
    font-weight: 650;
    color: #555;
}

.fr-author-role {
    color: #E12626;
    font-weight: 750;
}

.fr-author-sep {
    color: #ccc;
    font-size: 16px;
    line-height: 1;
}

.fr-author-page-desc {
    margin-bottom: 22px;
}

.fr-author-page-desc p {
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    color: #333;
}

.fr-author-page-links {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.fr-author-page-links a {
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    font-weight: 750;
    color: #111;
    text-decoration: none;
    padding-bottom: 2px;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
    font-family: "Space Grotesk", system-ui, -apple-system, sans-serif;
}

.fr-author-page-links a:hover {
    color: #E12626;
    border-bottom-color: #E12626;
}

/* Mobile */
@media (max-width: 768px) {
    .fr-author-archive-wrap {
        margin: 24px auto 48px;
        padding: 0 16px;
    }

    .fr-author-page-header {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 24px 20px;
        text-align: center;
    }

    .fr-author-page-avatar {
        width: 110px;
        height: 110px;
        margin: 0 auto;
    }

    .fr-author-page-info {
        align-items: center;
    }

    .fr-author-page-meta-bottom {
        justify-content: center;
    }

    .fr-author-page-desc p {
        font-size: 15px;
        line-height: 1.55;
    }
    
    .fr-author-page-links {
        justify-content: center;
    }
}

/* Paginacja */
body.archive.author .paging-navigation {
    margin: 48px auto;
    text-align: center;
    width: 100%;
    max-width: 1080px;
}

body.archive.author .paging-navigation .nav-links {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

body.archive.author .paging-navigation .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 12px;
    background: #fff;
    border: 1px solid #eaeaea;
    color: #111;
    font-weight: 700;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.2s ease;
    font-family: "Space Grotesk", system-ui, sans-serif;
}

body.archive.author .paging-navigation .page-numbers:hover {
    border-color: #111;
}

body.archive.author .paging-navigation .page-numbers.current {
    background: #111;
    border-color: #111;
    color: #fff;
}

/* =========================================================
   4RINGS — AUTHOR ARCHIVE FINAL v25
   Clean final override after DevTools inspection.
   - AUTOR label is h1.gb-text-5a3a0ec1::before
   - ad placeholder is .gb-element-5e54ba54::before
   - wrapper is .gb-element-6a8c98b7 / .gb-element-162fac59
   Keep this block at the very end of author.css.
   ========================================================= */

body.author .fr-archive-hero .gb-text-5a3a0ec1,
body.archive.author .fr-archive-hero .gb-text-5a3a0ec1 {
    text-transform: none !important;
}

body.author .fr-archive-hero .gb-text-5a3a0ec1::before,
body.archive.author .fr-archive-hero .gb-text-5a3a0ec1::before {
    content: "Autor" !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

body.author .gb-element-6a8c98b7,
body.archive.author .gb-element-6a8c98b7,
body.author .gb-element-6a8c98b7.fr-author-loop-wrap-final-v25,
body.archive.author .gb-element-6a8c98b7.fr-author-loop-wrap-final-v25 {
    margin-top: 32px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body.author .gb-element-162fac59,
body.archive.author .gb-element-162fac59,
body.author .gb-element-162fac59.fr-author-loop-inner-final-v25,
body.archive.author .gb-element-162fac59.fr-author-loop-inner-final-v25 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.author .gb-element-5e54ba54,
body.archive.author .gb-element-5e54ba54,
body.author .gb-element-5e54ba54.fr-author-ad-moved-v22,
body.archive.author .gb-element-5e54ba54.fr-author-ad-moved-v22,
body.author .gb-element-5e54ba54.fr-author-ad-moved-v23,
body.archive.author .gb-element-5e54ba54.fr-author-ad-moved-v23,
body.author .gb-element-5e54ba54.fr-author-ad-final-v24,
body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v24,
body.author .gb-element-5e54ba54.fr-author-ad-final-v25,
body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v25 {
    display: block !important;
    clear: both !important;
    position: relative !important;
    float: none !important;
    width: min(100%, 970px) !important;
    max-width: 970px !important;
    margin: 0 auto 72px !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 0 !important;
    box-sizing: border-box !important;
}

body.author .gb-element-5e54ba54::before,
body.archive.author .gb-element-5e54ba54::before {
    content: "" !important;
    display: block !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 280px !important;
    min-height: 280px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #f5f5f5 !important;
    border: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
}

body.author main .gb-text-0c87f259 a,
body.archive.author main .gb-text-0c87f259 a,
body.author main .gb-element-12b5617a a,
body.archive.author main .gb-element-12b5617a a {
    text-transform: none !important;
}

body.author main .gb-text-0c87f259 a:not(:first-child),
body.archive.author main .gb-text-0c87f259 a:not(:first-child) {
    display: none !important;
}

body.author .gb-query-loop-pagination,
body.archive.author .gb-query-loop-pagination {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-top: 30px !important;
    margin-bottom: 14px !important;
    padding: 0 !important;
}

body.author .gb-query-loop-pagination nav,
body.archive.author .gb-query-loop-pagination nav,
body.author .gb-query-page-numbers-8fec889c,
body.archive.author .gb-query-page-numbers-8fec889c {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
}

body.author .gb-query-loop-pagination .page-numbers.current,
body.archive.author .gb-query-loop-pagination .page-numbers.current,
body.author .gb-query-loop-pagination [aria-current="page"],
body.archive.author .gb-query-loop-pagination [aria-current="page"] {
    background: #E12626 !important;
    border-color: #E12626 !important;
    color: #fff !important;
}

body.author .gb-query-loop-pagination > a,
body.archive.author .gb-query-loop-pagination > a,
body.author .gb-query-loop-pagination a.gb-text-44f6e79f,
body.archive.author .gb-query-loop-pagination a.gb-text-44f6e79f {
    min-width: 88px !important;
    margin-left: 6px !important;
}

body.author :is(main,.site-content,.content-area),
body.archive.author :is(main,.site-content,.content-area),
body.author .gb-element-6a8c98b7,
body.archive.author .gb-element-6a8c98b7 {
    padding-bottom: 0 !important;
}

@media (max-width: 768px) {
    body.author .gb-element-6a8c98b7,
    body.archive.author .gb-element-6a8c98b7,
    body.author .gb-element-6a8c98b7.fr-author-loop-wrap-final-v25,
    body.archive.author .gb-element-6a8c98b7.fr-author-loop-wrap-final-v25 {
        margin-top: 24px !important;
        padding-top: 0 !important;
    }

    body.author .gb-element-5e54ba54,
    body.archive.author .gb-element-5e54ba54,
    body.author .gb-element-5e54ba54.fr-author-ad-moved-v22,
    body.archive.author .gb-element-5e54ba54.fr-author-ad-moved-v22,
    body.author .gb-element-5e54ba54.fr-author-ad-moved-v23,
    body.archive.author .gb-element-5e54ba54.fr-author-ad-moved-v23,
    body.author .gb-element-5e54ba54.fr-author-ad-final-v24,
    body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v24,
    body.author .gb-element-5e54ba54.fr-author-ad-final-v25,
    body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v25 {
        width: calc(100% - 28px) !important;
        max-width: calc(100% - 28px) !important;
        margin: 0 auto 54px !important;
    }

    body.author .gb-element-5e54ba54::before,
    body.archive.author .gb-element-5e54ba54::before {
        height: 280px !important;
        min-height: 280px !important;
        margin: 0 !important;
    }

    body.author .gb-element-9333bc15,
    body.archive.author .gb-element-9333bc15,
    body.author .gb-looper-e8a19db8,
    body.archive.author .gb-looper-e8a19db8,
    body.author .gb-loop-item-bfca2c91,
    body.archive.author .gb-loop-item-bfca2c91 {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: auto !important;
        margin-left: auto !important;
        box-sizing: border-box !important;
    }

    body.author .gb-query-loop-pagination,
    body.archive.author .gb-query-loop-pagination {
        gap: 8px !important;
        margin-top: 28px !important;
        margin-bottom: 8px !important;
        padding-bottom: 0 !important;
    }

    body.author .gb-query-loop-pagination nav,
    body.archive.author .gb-query-loop-pagination nav,
    body.author .gb-query-page-numbers-8fec889c,
    body.archive.author .gb-query-page-numbers-8fec889c {
        gap: 7px !important;
    }

    body.author .gb-query-loop-pagination > a,
    body.archive.author .gb-query-loop-pagination > a,
    body.author .gb-query-loop-pagination a.gb-text-44f6e79f,
    body.archive.author .gb-query-loop-pagination a.gb-text-44f6e79f {
        min-width: 78px !important;
        margin-left: 3px !important;
    }
}

/* =========================================================
   4RINGS — AUTHOR ARCHIVE FINAL v26
   Fix: real gap between ad placeholder ::before and article loop.
   DevTools confirmed article grid is inside .gb-element-5e54ba54 > .gb-element-9333bc15,
   so margin-bottom on the parent does not separate the pseudo-element from the cards.
   ========================================================= */

body.author .gb-element-5e54ba54 > .gb-element-9333bc15,
body.archive.author .gb-element-5e54ba54 > .gb-element-9333bc15,
body.author .gb-element-5e54ba54.fr-author-ad-final-v25 > .gb-element-9333bc15,
body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v25 > .gb-element-9333bc15 {
    padding-top: 58px !important;
    margin-top: 0 !important;
}

body.author .gb-element-5e54ba54 > .gb-element-9333bc15 > div,
body.archive.author .gb-element-5e54ba54 > .gb-element-9333bc15 > div,
body.author .gb-element-5e54ba54 .gb-looper-e8a19db8,
body.archive.author .gb-element-5e54ba54 .gb-looper-e8a19db8 {
    margin-top: 0 !important;
}

@media (max-width: 768px) {
    body.author .gb-element-5e54ba54 > .gb-element-9333bc15,
    body.archive.author .gb-element-5e54ba54 > .gb-element-9333bc15,
    body.author .gb-element-5e54ba54.fr-author-ad-final-v25 > .gb-element-9333bc15,
    body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v25 > .gb-element-9333bc15 {
        padding-top: 42px !important;
        margin-top: 0 !important;
    }
}


/* =========================================================
   4RINGS — AUTHOR ARCHIVE DEFAULT LISTING FALLBACK v27
   Fix dla sytuacji, gdy strona autora renderuje klasyczny listing GeneratePress:
   article.post / inside-article / post-image / entry-header / entry-summary.
   Zakres: tylko body.archive.author.
   Nie ruszać homepage, single, kategorii, tagów, headera ani mobile menu.
   ========================================================= */

body.archive.author {
    background: #f6f7f8;
}

/* Autorzy bez sidebara — pełna szerokość jak archiwa */
body.archive.author.right-sidebar .site-content,
body.archive.author .site-content {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

body.archive.author #primary,
body.archive.author .content-area,
body.archive.author #main,
body.archive.author .site-main {
    width: 100% !important;
    max-width: 1080px !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

body.archive.author #main,
body.archive.author .site-main {
    padding: 32px 24px 64px !important;
}

body.archive.author #right-sidebar,
body.archive.author #left-sidebar,
body.archive.author .widget-area,
body.archive.author .inside-right-sidebar,
body.archive.author .inside-left-sidebar {
    display: none !important;
}

/* Domyślny nagłówek GeneratePress — ukryty, jeśli nie jest naszym hero */
body.archive.author .page-header:not(.fr-archive-hero) {
    display: none !important;
}

/* Karty wpisów — fallback dla klasycznego loopa WP/GeneratePress */
body.archive.author .site-main > article.post,
body.archive.author #main > article.post,
body.archive.author article.post {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    background: #fff !important;
    border: 1px solid rgba(17, 24, 39, 0.10) !important;
    box-shadow: 0 10px 28px rgba(17, 24, 39, 0.055) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

body.archive.author article.post .inside-article {
    display: grid !important;
    grid-template-columns: 300px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: start !important;
    padding: 16px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

/* Obraz po lewej */
body.archive.author article.post .post-image {
    grid-column: 1 !important;
    grid-row: 1 / span 4 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body.archive.author article.post .post-image a {
    display: block !important;
    width: 100% !important;
    text-decoration: none !important;
}

body.archive.author article.post .post-image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    object-fit: cover !important;
    margin: 0 !important;
}

/* Tekst po prawej */
body.archive.author article.post .entry-header {
    grid-column: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.archive.author article.post .entry-title {
    margin: 0 0 8px !important;
    font-family: "Space Grotesk", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: clamp(20px, 2.1vw, 27px) !important;
    line-height: 1.12 !important;
    font-weight: 850 !important;
    letter-spacing: -0.035em !important;
}

body.archive.author article.post .entry-title a {
    color: #111827 !important;
    text-decoration: none !important;
}

body.archive.author article.post .entry-title a:hover {
    color: #E12626 !important;
}

body.archive.author article.post .entry-meta {
    grid-column: 2 !important;
    margin: 0 0 10px !important;
    color: #6b7280 !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

body.archive.author article.post .entry-summary,
body.archive.author article.post .entry-content {
    grid-column: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #374151 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

body.archive.author article.post .entry-summary p,
body.archive.author article.post .entry-content p {
    margin: 0 !important;
}

body.archive.author article.post footer.entry-meta {
    grid-column: 2 !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    color: #6b7280 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

/* Ukrycie zdublowanych kategorii/tagów z domyślnego footera, jeśli robią bałagan */
body.archive.author article.post footer.entry-meta .cat-links,
body.archive.author article.post footer.entry-meta .tags-links {
    display: none !important;
}

/* Placeholder / kontenery GenerateBlocks — zostają, ale bez kolizji z fallbackiem */
body.archive.author .gb-element-5e54ba54 {
    max-width: 970px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Mobile */
@media (max-width: 768px) {
    body.archive.author #main,
    body.archive.author .site-main {
        padding: 24px 16px 48px !important;
    }

    body.archive.author article.post {
        margin-bottom: 18px !important;
    }

    body.archive.author article.post .inside-article {
        display: block !important;
        padding: 14px !important;
    }

    body.archive.author article.post .post-image {
        margin: 0 0 12px !important;
    }

    body.archive.author article.post .entry-title {
        font-size: 21px !important;
        line-height: 1.16 !important;
        letter-spacing: -0.03em !important;
    }

    body.archive.author article.post .entry-meta {
        font-size: 12px !important;
        margin-bottom: 9px !important;
    }

    body.archive.author article.post .entry-summary,
    body.archive.author article.post .entry-content {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }
}

/* =========================================================
   4RINGS — AUTHOR BIO HEADER FINAL v28
   Prawdziwy nagłówek E-E-A-T nad listą wpisów autora.
   Zakres: tylko body.archive.author.
   ========================================================= */

body.archive.author .fr-author-bio-final-v28 {
    width: 100% !important;
    max-width: 900px !important;
    margin: 42px auto 26px !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
}

body.archive.author .fr-author-page-header-final-v28 {
    display: grid !important;
    grid-template-columns: 126px minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: start !important;
    padding: 34px 36px !important;
    background: #fff !important;
    border: 1px solid rgba(17, 24, 39, 0.10) !important;
    border-left: 4px solid #E12626 !important;
    border-top: 1px solid rgba(17, 24, 39, 0.10) !important;
    box-shadow: 0 18px 44px rgba(17, 24, 39, 0.06) !important;
    box-sizing: border-box !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-avatar {
    width: 126px !important;
    height: 126px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    background: #f3f4f6 !important;
    border: 1px solid #e5e7eb !important;
    box-sizing: border-box !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-avatar img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-label {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: max-content !important;
    min-height: 22px !important;
    padding: 4px 8px 4px 9px !important;
    background: #f4f5f6 !important;
    color: #171717 !important;
    border-top: 1px solid #dfe3e7 !important;
    border-right: 1px solid #dfe3e7 !important;
    border-bottom: 1px solid #dfe3e7 !important;
    border-left: 3px solid #E12626 !important;
    border-radius: 0 !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    letter-spacing: .045em !important;
    text-transform: none !important;
    text-decoration: none !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-title {
    margin: 10px 0 10px !important;
    color: #0f172a !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: clamp(31px, 4vw, 44px) !important;
    line-height: 1.04 !important;
    font-weight: 900 !important;
    letter-spacing: -0.045em !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-meta-bottom {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 16px !important;
    color: #64748b !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-role {
    color: #E12626 !important;
    font-weight: 850 !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-sep {
    color: #cbd5e1 !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-desc {
    margin: 0 0 12px !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-desc p,
body.archive.author .fr-author-page-header-final-v28 .fr-author-page-note {
    margin: 0 !important;
    color: #334155 !important;
    font-size: 15px !important;
    line-height: 1.62 !important;
    font-weight: 450 !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-note {
    margin-top: 10px !important;
    color: #475569 !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-links {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    margin-top: 18px !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-links a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 0 13px !important;
    color: #111827 !important;
    background: #fff !important;
    border: 1px solid #d1d5db !important;
    text-decoration: none !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    transition: border-color .18s ease, color .18s ease, background .18s ease !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-links a:hover,
body.archive.author .fr-author-page-header-final-v28 .fr-author-page-links a:focus {
    color: #E12626 !important;
    border-color: #E12626 !important;
    background: #fff7f7 !important;
}

body.archive.author .fr-author-posts-heading {
    margin: 28px 0 18px !important;
    padding-left: 12px !important;
    border-left: 3px solid #E12626 !important;
    color: #111827 !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 21px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: -0.035em !important;
}

/* Dopasowanie pierwszej karty po nagłówku autora */
body.archive.author .fr-author-bio-final-v28 + article.post,
body.archive.author .fr-author-bio-final-v28 + .site-main article.post:first-of-type {
    margin-top: 0 !important;
}

@media (max-width: 768px) {
    body.archive.author .fr-author-bio-final-v28 {
        max-width: 100% !important;
        margin: 24px auto 20px !important;
        padding: 0 16px !important;
    }

    body.archive.author .fr-author-page-header-final-v28 {
        display: block !important;
        padding: 24px 20px !important;
        text-align: center !important;
    }

    body.archive.author .fr-author-page-header-final-v28 .fr-author-page-avatar {
        width: 104px !important;
        height: 104px !important;
        margin: 0 auto 18px !important;
    }

    body.archive.author .fr-author-page-header-final-v28 .fr-author-page-meta-top,
    body.archive.author .fr-author-page-header-final-v28 .fr-author-page-meta-bottom,
    body.archive.author .fr-author-page-header-final-v28 .fr-author-page-links {
        justify-content: center !important;
    }

    body.archive.author .fr-author-page-header-final-v28 .fr-author-page-title {
        font-size: 31px !important;
        line-height: 1.08 !important;
        letter-spacing: -0.04em !important;
    }

    body.archive.author .fr-author-page-header-final-v28 .fr-author-page-desc p,
    body.archive.author .fr-author-page-header-final-v28 .fr-author-page-note {
        font-size: 15px !important;
        line-height: 1.58 !important;
    }

    body.archive.author .fr-author-posts-heading {
        margin-top: 22px !important;
        font-size: 20px !important;
        text-align: left !important;
    }
}

/* =========================================================
   4RINGS — AUTHOR ARCHIVE FINAL POLISH v30 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - zostawić jeden mocny box autora zamiast dwóch konkurujących modułów,
   - ukryć martwy placeholder reklamowy, który nie wyświetla reklam,
   - naprawić desktopowy grid i mobile,
   - dodać padding w kartach artykułów,
   - wyrównać wysokości kart,
   - odsunąć paginację od stopki.
   Nie ruszać homepage, single, headera, menu ani Rankingi mobile final.
   ========================================================= */

/* 1) Ukrywamy prosty górny hero z GenerateBlocks, żeby nie dublował bio autora. 
   Zostaje rozbudowany box .fr-author-bio-final-v28 z avataren, opisem i linkami. */
body.author .fr-archive-hero,
body.archive.author .fr-archive-hero,
body.author .page-header.fr-archive-hero,
body.archive.author .page-header.fr-archive-hero {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* 2) Martwy placeholder reklamowy na stronie autora — ukrycie bez rezerwowania miejsca. */
body.author .gb-element-5e54ba54,
body.archive.author .gb-element-5e54ba54,
body.author .gb-element-5e54ba54.fr-author-ad-moved-v22,
body.archive.author .gb-element-5e54ba54.fr-author-ad-moved-v22,
body.author .gb-element-5e54ba54.fr-author-ad-moved-v23,
body.archive.author .gb-element-5e54ba54.fr-author-ad-moved-v23,
body.author .gb-element-5e54ba54.fr-author-ad-final-v24,
body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v24,
body.author .gb-element-5e54ba54.fr-author-ad-final-v25,
body.archive.author .gb-element-5e54ba54.fr-author-ad-final-v25,
body.author .fr-author-ad,
body.archive.author .fr-author-ad,
body.author .fr-author-ad-placeholder,
body.archive.author .fr-author-ad-placeholder {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.author .gb-element-5e54ba54::before,
body.archive.author .gb-element-5e54ba54::before,
body.author .gb-element-5e54ba54::after,
body.archive.author .gb-element-5e54ba54::after {
  content: none !important;
  display: none !important;
}

/* 3) Główna rama strony autora */
body.archive.author,
body.author {
  background: #fff !important;
}

body.archive.author .site-content,
body.author .site-content,
body.archive.author .content-area,
body.author .content-area,
body.archive.author .site-main,
body.author .site-main,
body.archive.author #primary,
body.author #primary,
body.archive.author #main,
body.author #main {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  box-sizing: border-box !important;
}

body.archive.author #right-sidebar,
body.author #right-sidebar,
body.archive.author #left-sidebar,
body.author #left-sidebar,
body.archive.author .widget-area,
body.author .widget-area {
  display: none !important;
}

/* 4) Jeden finalny box autora — szeroki i czytelny na desktopie */
body.archive.author .fr-author-bio-final-v28,
body.author .fr-author-bio-final-v28 {
  display: block !important;
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 42px auto 38px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  grid-column: 1 / -1 !important;
  clear: both !important;
}

body.archive.author .fr-author-page-header-final-v28,
body.author .fr-author-page-header-final-v28 {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  gap: 30px !important;
  align-items: start !important;
  width: 100% !important;
  padding: 34px 38px !important;
  background: #fff !important;
  border: 1px solid rgba(17, 24, 39, .10) !important;
  border-left: 4px solid #E12626 !important;
  box-shadow: 0 18px 44px rgba(17, 24, 39, .055) !important;
  box-sizing: border-box !important;
}

body.archive.author .fr-author-page-header-final-v28 .fr-author-page-title,
body.author .fr-author-page-header-final-v28 .fr-author-page-title {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  max-width: 100% !important;
}

/* 5) Nagłówek „Artykuły autora” */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 0 auto 22px !important;
  padding-left: 12px !important;
  border-left: 3px solid #E12626 !important;
  color: #111827 !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.035em !important;
  box-sizing: border-box !important;
}

/* 6) Grid artykułów — desktop */
@media (min-width: 769px) {
  body.archive.author .gb-element-6a8c98b7,
  body.author .gb-element-6a8c98b7,
  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    width: min(1080px, calc(100% - 48px)) !important;
    max-width: 1080px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 28px !important;
    align-items: stretch !important;
  }

  /* jeżeli GenerateBlocks ma dodatkowy wrapper, niech nie robi lewej kolumny */
  body.archive.author .gb-element-6a8c98b7 > .fr-author-bio-final-v28,
  body.author .gb-element-6a8c98b7 > .fr-author-bio-final-v28 {
    grid-column: 1 / -1 !important;
  }
}

/* 7) Karty artykułów — wspólny wygląd dla GenerateBlocks i fallback WP */
body.archive.author article.post,
body.author article.post,
body.archive.author .gb-query-loop-item,
body.author .gb-query-loop-item,
body.archive.author .gb-grid-column,
body.author .gb-grid-column {
  min-width: 0 !important;
}

body.archive.author article.post,
body.author article.post,
body.archive.author .gb-query-loop-item > *,
body.author .gb-query-loop-item > *,
body.archive.author .gb-grid-column > *,
body.author .gb-grid-column > * {
  height: 100% !important;
  box-sizing: border-box !important;
}

/* Fallback klasycznego loopa */
body.archive.author article.post {
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(17, 24, 39, .10) !important;
  box-shadow: 0 10px 26px rgba(17, 24, 39, .055) !important;
}

body.archive.author article.post .inside-article {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  padding: 0 !important;
  background: #fff !important;
}

body.archive.author article.post .post-image,
body.archive.author article.post .post-image a {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  aspect-ratio: 16 / 9 !important;
  background: #f3f4f6 !important;
}

body.archive.author article.post .post-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

body.archive.author article.post .entry-header,
body.archive.author article.post .entry-summary,
body.archive.author article.post .entry-content,
body.archive.author article.post .entry-meta {
  padding-left: 14px !important;
  padding-right: 14px !important;
  box-sizing: border-box !important;
}

body.archive.author article.post .entry-header {
  padding-top: 12px !important;
}

body.archive.author article.post .entry-title {
  margin: 7px 0 8px !important;
  color: #111827 !important;
  font-size: 18px !important;
  line-height: 1.18 !important;
  font-weight: 850 !important;
  letter-spacing: -0.025em !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body.archive.author article.post .entry-meta {
  margin-top: auto !important;
  padding-bottom: 14px !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* GenerateBlocks cards — tekst nie może dotykać krawędzi */
body.archive.author .gb-query-loop-item :is(h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper),
body.author .gb-query-loop-item :is(h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper),
body.archive.author .gb-grid-column :is(h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper),
body.author .gb-grid-column :is(h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper) {
  padding-left: 14px !important;
  padding-right: 14px !important;
  box-sizing: border-box !important;
}

body.archive.author .gb-query-loop-item .fr-badge,
body.author .gb-query-loop-item .fr-badge,
body.archive.author .gb-grid-column .fr-badge,
body.author .gb-grid-column .fr-badge,
body.archive.author .gb-query-loop-item [class*="badge"],
body.author .gb-query-loop-item [class*="badge"],
body.archive.author .gb-grid-column [class*="badge"],
body.author .gb-grid-column [class*="badge"] {
  margin-left: 14px !important;
  margin-right: 14px !important;
  max-width: calc(100% - 28px) !important;
  box-sizing: border-box !important;
}

body.archive.author .gb-query-loop-item img,
body.author .gb-query-loop-item img,
body.archive.author .gb-grid-column img,
body.author .gb-grid-column img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

/* 8) Mobile: jeden box, karty w jednej kolumnie, brak nachodzenia na stopkę */
@media (max-width: 768px) {
  body.archive.author .fr-author-bio-final-v28,
  body.author .fr-author-bio-final-v28 {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin: 28px auto 28px !important;
  }

  body.archive.author .fr-author-page-header-final-v28,
  body.author .fr-author-page-header-final-v28 {
    display: block !important;
    padding: 24px 20px !important;
    text-align: center !important;
  }

  body.archive.author .fr-author-page-header-final-v28 .fr-author-page-avatar,
  body.author .fr-author-page-header-final-v28 .fr-author-page-avatar {
    width: 104px !important;
    height: 104px !important;
    margin: 0 auto 18px !important;
  }

  body.archive.author .fr-author-page-header-final-v28 .fr-author-page-meta-top,
  body.author .fr-author-page-header-final-v28 .fr-author-page-meta-top,
  body.archive.author .fr-author-page-header-final-v28 .fr-author-page-meta-bottom,
  body.author .fr-author-page-header-final-v28 .fr-author-page-meta-bottom,
  body.archive.author .fr-author-page-header-final-v28 .fr-author-page-links,
  body.author .fr-author-page-header-final-v28 .fr-author-page-links {
    justify-content: center !important;
  }

  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    width: calc(100% - 32px) !important;
    margin: 0 auto 18px !important;
    font-size: 20px !important;
  }

  body.archive.author .gb-element-6a8c98b7,
  body.author .gb-element-6a8c98b7,
  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    display: block !important;
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.archive.author article.post,
  body.author article.post,
  body.archive.author .gb-query-loop-item,
  body.author .gb-query-loop-item,
  body.archive.author .gb-grid-column,
  body.author .gb-grid-column {
    margin-bottom: 20px !important;
  }

  body.archive.author article.post .entry-title {
    font-size: 18px !important;
    line-height: 1.18 !important;
  }
}

/* 9) Paginacja — oddech przed stopką */
body.author .gb-query-loop-pagination,
body.archive.author .gb-query-loop-pagination,
body.archive.author .paging-navigation,
body.author .paging-navigation,
body.archive.author .nav-links,
body.author .nav-links,
body.archive.author .page-numbers,
body.author .page-numbers {
  box-sizing: border-box !important;
}

body.author .gb-query-loop-pagination,
body.archive.author .gb-query-loop-pagination,
body.archive.author .paging-navigation,
body.author .paging-navigation {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 44px auto 76px !important;
  padding: 0 !important;
  clear: both !important;
}

body.author .gb-query-loop-pagination nav,
body.archive.author .gb-query-loop-pagination nav,
body.author .gb-query-page-numbers-8fec889c,
body.archive.author .gb-query-page-numbers-8fec889c,
body.archive.author .paging-navigation .nav-links,
body.author .paging-navigation .nav-links {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

@media (max-width: 768px) {
  body.author .gb-query-loop-pagination,
  body.archive.author .gb-query-loop-pagination,
  body.archive.author .paging-navigation,
  body.author .paging-navigation {
    width: calc(100% - 32px) !important;
    margin: 36px auto 82px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE FINAL POLISH v30 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE EMPTY AD AFTER HEADER FIX v31 2026-06-10
   Zakres: tylko pusty placeholder reklamy pod nagłówkiem autora.
   Cel:
   - ukryć martwy slot .fr-archive-ad.fr-archive-ad-after-header,
   - usunąć szary prostokąt 380x280 / 970x300,
   - nie ruszać bio autora, gridu wpisów, paginacji, homepage, single ani PHP.
   ========================================================= */

body.author .fr-archive-ad.fr-archive-ad-after-header,
body.archive.author .fr-archive-ad.fr-archive-ad-after-header,
body.author .fr-archive-ad-after-header,
body.archive.author .fr-archive-ad-after-header {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.author .fr-archive-ad.fr-archive-ad-after-header::before,
body.author .fr-archive-ad.fr-archive-ad-after-header::after,
body.archive.author .fr-archive-ad.fr-archive-ad-after-header::before,
body.archive.author .fr-archive-ad.fr-archive-ad-after-header::after,
body.author .fr-archive-ad-after-header::before,
body.author .fr-archive-ad-after-header::after,
body.archive.author .fr-archive-ad-after-header::before,
body.archive.author .fr-archive-ad-after-header::after {
  content: none !important;
  display: none !important;
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE EMPTY AD AFTER HEADER FIX v31 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE ONE BOX FINAL v32 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - zostawić jeden widoczny box autora: bio z avatarem,
   - ukryć prosty górny box autora, który dublował imię i nazwisko,
   - wyrównać czerwone linie i szerokości,
   - dodać realny padding w kartach artykułów,
   - wyrównać wysokości kart,
   - mocno odsunąć paginację od stopki.
   Nie ruszać homepage, single, headera, menu ani PHP.
   ========================================================= */

/* 1) Chowamy prosty górny box autora / hero archiwum.
   Zostaje tylko właściwy box E-E-A-T z avatarem i opisem. */
body.author .fr-archive-hero,
body.archive.author .fr-archive-hero,
body.author .page-header,
body.archive.author .page-header,
body.author header.page-header,
body.archive.author header.page-header,
body.author .generate-columns-container > .page-header,
body.archive.author .generate-columns-container > .page-header,
body.author .site-main > .page-header,
body.archive.author .site-main > .page-header,
body.author .gb-element:has(.gb-text-5a3a0ec1),
body.archive.author .gb-element:has(.gb-text-5a3a0ec1),
body.author .gb-container:has(.gb-text-5a3a0ec1),
body.archive.author .gb-container:has(.gb-text-5a3a0ec1) {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* 2) Dodatkowe zabezpieczenie: martwy slot reklamowy po headerze dalej nie może wrócić. */
body.author .fr-archive-ad.fr-archive-ad-after-header,
body.archive.author .fr-archive-ad.fr-archive-ad-after-header,
body.author .fr-archive-ad-after-header,
body.archive.author .fr-archive-ad-after-header,
body.author .gb-element-5e54ba54,
body.archive.author .gb-element-5e54ba54 {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.author .fr-archive-ad-after-header::before,
body.archive.author .fr-archive-ad-after-header::before,
body.author .fr-archive-ad-after-header::after,
body.archive.author .fr-archive-ad-after-header::after,
body.author .gb-element-5e54ba54::before,
body.archive.author .gb-element-5e54ba54::before,
body.author .gb-element-5e54ba54::after,
body.archive.author .gb-element-5e54ba54::after {
  content: none !important;
  display: none !important;
}

/* 3) Jeden box autora — pełna szerokość i wspólna oś z listą artykułów. */
body.archive.author .fr-author-bio-final-v28,
body.author .fr-author-bio-final-v28 {
  display: block !important;
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 56px auto 30px !important;
  padding: 0 !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.archive.author .fr-author-page-header-final-v28,
body.author .fr-author-page-header-final-v28 {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  gap: 30px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 34px 38px !important;
  background: #fff !important;
  border: 1px solid rgba(17, 24, 39, .10) !important;
  border-left: 4px solid #E12626 !important;
  box-shadow: 0 18px 44px rgba(17, 24, 39, .055) !important;
  box-sizing: border-box !important;
}

/* 4) Nagłówek Artykuły autora — oddech od boxu, ta sama oś. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  display: block !important;
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 0 auto 26px !important;
  padding: 0 0 0 12px !important;
  border-left: 3px solid #E12626 !important;
  color: #111827 !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.035em !important;
  box-sizing: border-box !important;
}

/* 5) Desktop grid — zawsze 3 równe kolumny pod boxem autora. */
@media (min-width: 769px) {
  body.archive.author .gb-element-6a8c98b7,
  body.author .gb-element-6a8c98b7,
  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container,
  body.archive.author .site-main,
  body.author .site-main {
    max-width: 1080px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 28px !important;
    align-items: stretch !important;
  }
}

/* 6) Karty artykułów — padding, równa wysokość, tytuły nie dotykają krawędzi. */
body.archive.author article.post,
body.author article.post,
body.archive.author .gb-query-loop-item,
body.author .gb-query-loop-item,
body.archive.author .gb-grid-column,
body.author .gb-grid-column {
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.archive.author article.post {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(17, 24, 39, .10) !important;
  box-shadow: 0 10px 26px rgba(17, 24, 39, .055) !important;
}

body.archive.author article.post .inside-article {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  padding: 0 !important;
  background: #fff !important;
}

body.archive.author article.post .post-image,
body.archive.author article.post .post-image a {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  aspect-ratio: 16 / 9 !important;
  background: #f3f4f6 !important;
}

body.archive.author article.post .post-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

body.archive.author article.post .entry-header,
body.archive.author article.post .entry-summary,
body.archive.author article.post .entry-content,
body.archive.author article.post .entry-meta {
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box !important;
}

body.archive.author article.post .entry-header {
  padding-top: 13px !important;
}

body.archive.author article.post .entry-title {
  margin: 8px 0 9px !important;
  color: #111827 !important;
  font-size: 18px !important;
  line-height: 1.18 !important;
  font-weight: 850 !important;
  letter-spacing: -0.025em !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body.archive.author article.post .entry-meta {
  margin-top: auto !important;
  padding-bottom: 15px !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* GenerateBlocks — tekst i plakietki kart nie mogą dotykać krawędzi. */
body.archive.author .gb-query-loop-item :is(h1,h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper),
body.author .gb-query-loop-item :is(h1,h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper),
body.archive.author .gb-grid-column :is(h1,h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper),
body.author .gb-grid-column :is(h1,h2,h3,h4,p,.gb-headline,.gb-text,.gb-button-wrapper) {
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box !important;
}

body.archive.author .gb-query-loop-item :is(.fr-badge,[class*="badge"],[class*="kicker"],[class*="cat"]),
body.author .gb-query-loop-item :is(.fr-badge,[class*="badge"],[class*="kicker"],[class*="cat"]),
body.archive.author .gb-grid-column :is(.fr-badge,[class*="badge"],[class*="kicker"],[class*="cat"]),
body.author .gb-grid-column :is(.fr-badge,[class*="badge"],[class*="kicker"],[class*="cat"]) {
  margin-left: 16px !important;
  margin-right: 16px !important;
  max-width: calc(100% - 32px) !important;
  box-sizing: border-box !important;
}

body.archive.author .gb-query-loop-item img,
body.author .gb-query-loop-item img,
body.archive.author .gb-grid-column img,
body.author .gb-grid-column img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

/* 7) Mobile */
@media (max-width: 768px) {
  body.archive.author .fr-author-bio-final-v28,
  body.author .fr-author-bio-final-v28 {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin: 30px auto 26px !important;
  }

  body.archive.author .fr-author-page-header-final-v28,
  body.author .fr-author-page-header-final-v28 {
    display: block !important;
    padding: 24px 20px !important;
    text-align: center !important;
  }

  body.archive.author .fr-author-page-header-final-v28 .fr-author-page-avatar,
  body.author .fr-author-page-header-final-v28 .fr-author-page-avatar {
    width: 104px !important;
    height: 104px !important;
    margin: 0 auto 18px !important;
  }

  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    width: calc(100% - 32px) !important;
    margin: 0 auto 20px !important;
    font-size: 20px !important;
  }

  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    display: block !important;
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }

  body.archive.author article.post,
  body.author article.post,
  body.archive.author .gb-query-loop-item,
  body.author .gb-query-loop-item,
  body.archive.author .gb-grid-column,
  body.author .gb-grid-column {
    margin-bottom: 20px !important;
  }
}

/* 8) Paginacja — mocny oddech od stopki. */
body.author .gb-query-loop-pagination,
body.archive.author .gb-query-loop-pagination,
body.archive.author .paging-navigation,
body.author .paging-navigation {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 50px auto 104px !important;
  padding: 0 !important;
  clear: both !important;
}

body.author .gb-query-loop-pagination nav,
body.archive.author .gb-query-loop-pagination nav,
body.author .gb-query-page-numbers-8fec889c,
body.archive.author .gb-query-page-numbers-8fec889c,
body.archive.author .paging-navigation .nav-links,
body.author .paging-navigation .nav-links {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

@media (max-width: 768px) {
  body.author .gb-query-loop-pagination,
  body.archive.author .gb-query-loop-pagination,
  body.archive.author .paging-navigation,
  body.author .paging-navigation {
    width: calc(100% - 32px) !important;
    margin: 40px auto 110px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE ONE BOX FINAL v32 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE EXACT HEADER FINAL v33 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - ukryć dokładny górny box autora:
     header.fr-archive-header.fr-archive-header-editorial,
   - zostawić jeden box autora z avatarem i bio,
   - poprawić odstępy między boxem autora, nagłówkiem i gridem,
   - dodać skuteczny padding do kart wpisów,
   - mocno odsunąć paginację od stopki.
   Nie ruszać homepage, single, headera globalnego, menu ani PHP.
   ========================================================= */

/* 1) Dokładny górny hero autora — ukryty, bo dubluje box z bio. */
body.author header.fr-archive-header.fr-archive-header-editorial,
body.archive.author header.fr-archive-header.fr-archive-header-editorial,
body.author .fr-archive-header.fr-archive-header-editorial,
body.archive.author .fr-archive-header.fr-archive-header-editorial {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* 2) Martwy slot reklamowy po headerze — dalej ukryty. */
body.author .fr-archive-ad.fr-archive-ad-after-header,
body.archive.author .fr-archive-ad.fr-archive-ad-after-header,
body.author .fr-archive-ad-after-header,
body.archive.author .fr-archive-ad-after-header,
body.author .gb-element-5e54ba54,
body.archive.author .gb-element-5e54ba54 {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.author .fr-archive-ad-after-header::before,
body.archive.author .fr-archive-ad-after-header::before,
body.author .fr-archive-ad-after-header::after,
body.archive.author .fr-archive-ad-after-header::after,
body.author .gb-element-5e54ba54::before,
body.archive.author .gb-element-5e54ba54::before,
body.author .gb-element-5e54ba54::after,
body.archive.author .gb-element-5e54ba54::after {
  content: none !important;
  display: none !important;
}

/* 3) Jeden box autora — bliżej góry, wspólna szerokość z gridem. */
body.archive.author .fr-author-bio-final-v28,
body.author .fr-author-bio-final-v28 {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 44px auto 34px !important;
  padding: 0 !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.archive.author .fr-author-page-header-final-v28,
body.author .fr-author-page-header-final-v28 {
  width: 100% !important;
  max-width: 100% !important;
  padding: 36px 40px !important;
  border-left: 4px solid #E12626 !important;
  box-sizing: border-box !important;
}

/* 4) Nagłówek Artykuły autora — nie dotyka boxu, ale jest blisko logicznie. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 0 auto 28px !important;
  padding-left: 12px !important;
  border-left: 3px solid #E12626 !important;
  box-sizing: border-box !important;
}

/* 5) Grid wpisów — wspólna oś i normalny oddech. */
@media (min-width: 769px) {
  body.archive.author .gb-element-6a8c98b7,
  body.author .gb-element-6a8c98b7,
  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    width: min(1080px, calc(100% - 48px)) !important;
    max-width: 1080px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 30px !important;
    align-items: stretch !important;
  }
}

/* 6) Karty — dodatkowy, brutalnie skuteczny padding na realne klasy z archiwów. */
body.archive.author article.post,
body.author article.post {
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.archive.author article.post .inside-article,
body.author article.post .inside-article {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.archive.author article.post .post-image,
body.author article.post .post-image,
body.archive.author article.post .post-image a,
body.author article.post .post-image a {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  aspect-ratio: 16 / 9 !important;
}

body.archive.author article.post .post-image img,
body.author article.post .post-image img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

/* Typowe GeneratePress/GenerateBlocks elementy tekstowe w karcie */
body.archive.author article.post :is(.entry-header, .entry-summary, .entry-content, .entry-meta, .entry-title),
body.author article.post :is(.entry-header, .entry-summary, .entry-content, .entry-meta, .entry-title),
body.archive.author :is(.gb-query-loop-item, .gb-grid-column) :is(.gb-headline, .gb-text, h1, h2, h3, h4, p, time, .entry-meta),
body.author :is(.gb-query-loop-item, .gb-grid-column) :is(.gb-headline, .gb-text, h1, h2, h3, h4, p, time, .entry-meta) {
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box !important;
}

/* Plakietka kategorii też z marginesem od lewej. */
body.archive.author article.post :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
body.author article.post :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
body.archive.author :is(.gb-query-loop-item, .gb-grid-column) :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
body.author :is(.gb-query-loop-item, .gb-grid-column) :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]) {
  margin-left: 16px !important;
  margin-right: 16px !important;
  max-width: calc(100% - 32px) !important;
  box-sizing: border-box !important;
}

body.archive.author article.post .entry-title,
body.author article.post .entry-title,
body.archive.author :is(.gb-query-loop-item, .gb-grid-column) :is(h2, h3, .gb-headline) {
  margin-top: 8px !important;
  margin-bottom: 9px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

/* Meta na dole kart, żeby karty w rzędzie były równiejsze. */
body.archive.author article.post .entry-meta,
body.author article.post .entry-meta {
  margin-top: auto !important;
  padding-bottom: 16px !important;
}

/* 7) Mobile */
@media (max-width: 768px) {
  body.archive.author .fr-author-bio-final-v28,
  body.author .fr-author-bio-final-v28 {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin: 30px auto 28px !important;
  }

  body.archive.author .fr-author-page-header-final-v28,
  body.author .fr-author-page-header-final-v28 {
    padding: 24px 20px !important;
  }

  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    width: calc(100% - 32px) !important;
    margin: 0 auto 22px !important;
  }

  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    display: block !important;
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.archive.author article.post,
  body.author article.post,
  body.archive.author .gb-query-loop-item,
  body.author .gb-query-loop-item,
  body.archive.author .gb-grid-column,
  body.author .gb-grid-column {
    margin-bottom: 20px !important;
  }
}

/* 8) Paginacja — odsuń od stopki także gdy stopka ma własne marginesy. */
body.author .gb-query-loop-pagination,
body.archive.author .gb-query-loop-pagination,
body.archive.author .paging-navigation,
body.author .paging-navigation {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 56px auto 132px !important;
  padding-bottom: 0 !important;
  clear: both !important;
}

@media (max-width: 768px) {
  body.author .gb-query-loop-pagination,
  body.archive.author .gb-query-loop-pagination,
  body.archive.author .paging-navigation,
  body.author .paging-navigation {
    width: calc(100% - 32px) !important;
    margin: 44px auto 128px !important;
  }
}

/* awaryjny oddech dolny dla głównego kontenera archiwum autora */
body.archive.author #main,
body.author #main,
body.archive.author .site-main,
body.author .site-main {
  padding-bottom: 96px !important;
}

@media (max-width: 768px) {
  body.archive.author #main,
  body.author #main,
  body.archive.author .site-main,
  body.author .site-main {
    padding-bottom: 104px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE EXACT HEADER FINAL v33 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE FINAL COSMETIC v34 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - usunąć z bio autora niepotrzebny akapit o twórcach 4rings.pl,
   - usunąć przyciski „O redakcji” i „Kontakt”,
   - odsunąć nagłówek „Artykuły autora” od boxu autora,
   - dodać mocniejszy padding w kartach wpisów,
   - mocniej odsunąć paginację od stopki.
   Nie ruszać homepage, single, headera, menu ani PHP.
   ========================================================= */

/* 1) Usunięcie dolnego akapitu w bio autora i przycisków. 
   W obecnym DOM akapit o twórcach 4rings.pl jest drugim akapitem opisu. */
body.archive.author .fr-author-page-header-final-v28 .fr-author-page-desc p:nth-of-type(n+2),
body.author .fr-author-page-header-final-v28 .fr-author-page-desc p:nth-of-type(n+2),
body.archive.author .fr-author-page-header-final-v28 .fr-author-page-note,
body.author .fr-author-page-header-final-v28 .fr-author-page-note,
body.archive.author .fr-author-page-header-final-v28 .fr-author-page-links,
body.author .fr-author-page-header-final-v28 .fr-author-page-links {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* 2) Box autora po usunięciu przycisków — trochę lżejszy pionowo. */
body.archive.author .fr-author-page-header-final-v28,
body.author .fr-author-page-header-final-v28 {
  padding-top: 34px !important;
  padding-bottom: 32px !important;
}

/* 3) „Artykuły autora” — wyraźny oddech od boxu bio. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  margin-top: 26px !important;
  margin-bottom: 30px !important;
}

/* 4) Karty wpisów — mocniejszy padding realnych elementów tekstowych. */
body.archive.author article.post .entry-header,
body.author article.post .entry-header,
body.archive.author article.post .entry-summary,
body.author article.post .entry-summary,
body.archive.author article.post .entry-content,
body.author article.post .entry-content,
body.archive.author article.post .entry-meta,
body.author article.post .entry-meta {
  padding-left: 18px !important;
  padding-right: 18px !important;
  box-sizing: border-box !important;
}

body.archive.author article.post .entry-header,
body.author article.post .entry-header {
  padding-top: 14px !important;
}

body.archive.author article.post .entry-title,
body.author article.post .entry-title {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* GenerateBlocks / GB query loop — tytuły, teksty i meta z mocniejszym paddingiem. */
body.archive.author :is(.gb-query-loop-item, .gb-grid-column) :is(.gb-headline, .gb-text, h1, h2, h3, h4, p, time, .entry-meta),
body.author :is(.gb-query-loop-item, .gb-grid-column) :is(.gb-headline, .gb-text, h1, h2, h3, h4, p, time, .entry-meta) {
  padding-left: 18px !important;
  padding-right: 18px !important;
  box-sizing: border-box !important;
}

/* Plakietki kategorii w kartach — odsunięcie od lewej krawędzi. */
body.archive.author article.post :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
body.author article.post :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
body.archive.author :is(.gb-query-loop-item, .gb-grid-column) :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
body.author :is(.gb-query-loop-item, .gb-grid-column) :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]) {
  margin-left: 18px !important;
  margin-right: 18px !important;
  max-width: calc(100% - 36px) !important;
  box-sizing: border-box !important;
}

/* 5) Paginacja — większy oddech od stopki i dodatkowa poduszka kontenera. */
body.author .gb-query-loop-pagination,
body.archive.author .gb-query-loop-pagination,
body.archive.author .paging-navigation,
body.author .paging-navigation {
  margin-top: 64px !important;
  margin-bottom: 170px !important;
}

body.archive.author #main,
body.author #main,
body.archive.author .site-main,
body.author .site-main,
body.archive.author .content-area,
body.author .content-area {
  padding-bottom: 120px !important;
}

@media (max-width: 768px) {
  body.archive.author .fr-author-page-header-final-v28,
  body.author .fr-author-page-header-final-v28 {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    margin-top: 24px !important;
    margin-bottom: 24px !important;
  }

  body.archive.author article.post .entry-header,
  body.author article.post .entry-header,
  body.archive.author article.post .entry-summary,
  body.author article.post .entry-summary,
  body.archive.author article.post .entry-content,
  body.author article.post .entry-content,
  body.archive.author article.post .entry-meta,
  body.author article.post .entry-meta {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.archive.author :is(.gb-query-loop-item, .gb-grid-column) :is(.gb-headline, .gb-text, h1, h2, h3, h4, p, time, .entry-meta),
  body.author :is(.gb-query-loop-item, .gb-grid-column) :is(.gb-headline, .gb-text, h1, h2, h3, h4, p, time, .entry-meta) {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.archive.author article.post :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
  body.author article.post :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
  body.archive.author :is(.gb-query-loop-item, .gb-grid-column) :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]),
  body.author :is(.gb-query-loop-item, .gb-grid-column) :is(.fr-badge, .fr-archive-card-badge, .fr-card-cat, .cat-links, [class*="badge"], [class*="kicker"]) {
    margin-left: 16px !important;
    margin-right: 16px !important;
    max-width: calc(100% - 32px) !important;
  }

  body.author .gb-query-loop-pagination,
  body.archive.author .gb-query-loop-pagination,
  body.archive.author .paging-navigation,
  body.author .paging-navigation {
    margin-top: 46px !important;
    margin-bottom: 150px !important;
  }

  body.archive.author #main,
  body.author #main,
  body.archive.author .site-main,
  body.author .site-main,
  body.archive.author .content-area,
  body.author .content-area {
    padding-bottom: 130px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE FINAL COSMETIC v34 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE ALIGN CARDS PAGINATION FINAL v35 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - wyrównać „Artykuły autora” i czerwoną kreskę do lewej krawędzi boxu autora,
   - zmniejszyć pustą przestrzeń między nagłówkiem „Artykuły autora” a pierwszym rzędem kart,
   - skutecznie odsunąć plakietki i tytuły kart od lewej krawędzi,
   - mocno odsunąć paginację od stopki na desktopie i mobile.
   Nie ruszać homepage, single, headera, menu ani PHP.
   ========================================================= */

/* 1) Ujednolicona oś: bio, heading i grid mają tę samą szerokość i lewą krawędź. */
body.archive.author .fr-author-bio-final-v28,
body.author .fr-author-bio-final-v28,
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading,
body.archive.author .gb-element-6a8c98b7,
body.author .gb-element-6a8c98b7,
body.archive.author .gb-element-162fac59,
body.author .gb-element-162fac59,
body.archive.author .gb-query-loop-wrapper,
body.author .gb-query-loop-wrapper,
body.archive.author .generate-columns-container,
body.author .generate-columns-container {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* 2) Artykuły autora: lewa kreska na osi czerwonego paska boxu autora + mniejsza luka do kart. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  margin-top: 30px !important;
  margin-bottom: 18px !important;
  padding-left: 12px !important;
  border-left: 3px solid #E12626 !important;
  transform: none !important;
}

/* Jeśli heading siedzi w wrapperze, niech wrapper nie dokłada własnego przesunięcia. */
body.archive.author .fr-author-bio-final-v28 + .fr-author-posts-heading,
body.author .fr-author-bio-final-v28 + .fr-author-posts-heading {
  margin-top: 30px !important;
}

/* 3) Grid bliżej nagłówka. */
@media (min-width: 769px) {
  body.archive.author .gb-element-6a8c98b7,
  body.author .gb-element-6a8c98b7,
  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    gap: 30px !important;
  }
}

/* 4) Karty: tekst musi mieć własny padding, niezależnie od tego czy renderuje go GP, GB czy nasz moduł archiwum. */
body.archive.author article.post,
body.author article.post,
body.archive.author .gb-query-loop-item,
body.author .gb-query-loop-item,
body.archive.author .gb-grid-column,
body.author .gb-grid-column,
body.archive.author [class*="archive"] article,
body.author [class*="archive"] article {
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.archive.author article.post .inside-article,
body.author article.post .inside-article {
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Plakietki kategorii — to one na screenie siedzą przy krawędzi. */
body.archive.author article.post .fr-badge,
body.author article.post .fr-badge,
body.archive.author article.post .fr-archive-card-badge,
body.author article.post .fr-archive-card-badge,
body.archive.author article.post .fr-card-cat,
body.author article.post .fr-card-cat,
body.archive.author article.post .cat-links,
body.author article.post .cat-links,
body.archive.author article.post [class*="badge"],
body.author article.post [class*="badge"],
body.archive.author article.post [class*="kicker"],
body.author article.post [class*="kicker"],
body.archive.author article.post [class*="cat"],
body.author article.post [class*="cat"],
body.archive.author .gb-query-loop-item .fr-badge,
body.author .gb-query-loop-item .fr-badge,
body.archive.author .gb-query-loop-item [class*="badge"],
body.author .gb-query-loop-item [class*="badge"],
body.archive.author .gb-query-loop-item [class*="kicker"],
body.author .gb-query-loop-item [class*="kicker"],
body.archive.author .gb-query-loop-item [class*="cat"],
body.author .gb-query-loop-item [class*="cat"],
body.archive.author .gb-grid-column .fr-badge,
body.author .gb-grid-column .fr-badge,
body.archive.author .gb-grid-column [class*="badge"],
body.author .gb-grid-column [class*="badge"],
body.archive.author .gb-grid-column [class*="kicker"],
body.author .gb-grid-column [class*="kicker"],
body.archive.author .gb-grid-column [class*="cat"],
body.author .gb-grid-column [class*="cat"] {
  margin-left: 18px !important;
  margin-right: 18px !important;
  max-width: calc(100% - 36px) !important;
  box-sizing: border-box !important;
}

/* Tytuły i meta — mocny override na linki w nagłówku, bo same .entry-title często nie wystarcza. */
body.archive.author article.post .entry-title,
body.author article.post .entry-title,
body.archive.author article.post .entry-title a,
body.author article.post .entry-title a,
body.archive.author article.post h2,
body.author article.post h2,
body.archive.author article.post h2 a,
body.author article.post h2 a,
body.archive.author article.post h3,
body.author article.post h3,
body.archive.author article.post h3 a,
body.author article.post h3 a,
body.archive.author .gb-query-loop-item h2,
body.author .gb-query-loop-item h2,
body.archive.author .gb-query-loop-item h2 a,
body.author .gb-query-loop-item h2 a,
body.archive.author .gb-query-loop-item h3,
body.author .gb-query-loop-item h3,
body.archive.author .gb-query-loop-item h3 a,
body.author .gb-query-loop-item h3 a,
body.archive.author .gb-query-loop-item .gb-headline,
body.author .gb-query-loop-item .gb-headline,
body.archive.author .gb-grid-column h2,
body.author .gb-grid-column h2,
body.archive.author .gb-grid-column h2 a,
body.author .gb-grid-column h2 a,
body.archive.author .gb-grid-column h3,
body.author .gb-grid-column h3,
body.archive.author .gb-grid-column h3 a,
body.author .gb-grid-column h3 a,
body.archive.author .gb-grid-column .gb-headline,
body.author .gb-grid-column .gb-headline {
  display: block !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
  box-sizing: border-box !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Meta/datę też odsunąć, żeby nie wyglądała jak przyklejona. */
body.archive.author article.post .entry-meta,
body.author article.post .entry-meta,
body.archive.author article.post time,
body.author article.post time,
body.archive.author .gb-query-loop-item .entry-meta,
body.author .gb-query-loop-item .entry-meta,
body.archive.author .gb-query-loop-item time,
body.author .gb-query-loop-item time,
body.archive.author .gb-grid-column .entry-meta,
body.author .gb-grid-column .entry-meta,
body.archive.author .gb-grid-column time,
body.author .gb-grid-column time {
  display: block !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
  padding-bottom: 16px !important;
  box-sizing: border-box !important;
}

/* Obraz zostaje full-bleed — tylko tekst ma padding. */
body.archive.author article.post .post-image,
body.author article.post .post-image,
body.archive.author article.post .post-image a,
body.author article.post .post-image a,
body.archive.author .gb-query-loop-item figure,
body.author .gb-query-loop-item figure,
body.archive.author .gb-grid-column figure,
body.author .gb-grid-column figure {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 5) Paginacja: nie może dotykać stopki. */
body.author .gb-query-loop-pagination,
body.archive.author .gb-query-loop-pagination,
body.archive.author .paging-navigation,
body.author .paging-navigation,
body.archive.author nav.pagination,
body.author nav.pagination,
body.archive.author .pagination,
body.author .pagination {
  display: flex !important;
  justify-content: center !important;
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 72px auto 180px !important;
  padding: 0 0 0 !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.archive.author .site-main,
body.author .site-main,
body.archive.author #main,
body.author #main,
body.archive.author .content-area,
body.author .content-area {
  padding-bottom: 160px !important;
}

/* 6) Mobile */
@media (max-width: 768px) {
  body.archive.author .fr-author-bio-final-v28,
  body.author .fr-author-bio-final-v28,
  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading,
  body.archive.author .gb-element-6a8c98b7,
  body.author .gb-element-6a8c98b7,
  body.archive.author .gb-element-162fac59,
  body.author .gb-element-162fac59,
  body.archive.author .gb-query-loop-wrapper,
  body.author .gb-query-loop-wrapper,
  body.archive.author .generate-columns-container,
  body.author .generate-columns-container {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
  }

  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    margin-top: 28px !important;
    margin-bottom: 16px !important;
  }

  body.archive.author article.post .fr-badge,
  body.author article.post .fr-badge,
  body.archive.author article.post .fr-archive-card-badge,
  body.author article.post .fr-archive-card-badge,
  body.archive.author article.post .fr-card-cat,
  body.author article.post .fr-card-cat,
  body.archive.author article.post .cat-links,
  body.author article.post .cat-links,
  body.archive.author article.post [class*="badge"],
  body.author article.post [class*="badge"],
  body.archive.author article.post [class*="kicker"],
  body.author article.post [class*="kicker"],
  body.archive.author article.post [class*="cat"],
  body.author article.post [class*="cat"],
  body.archive.author .gb-query-loop-item .fr-badge,
  body.author .gb-query-loop-item .fr-badge,
  body.archive.author .gb-query-loop-item [class*="badge"],
  body.author .gb-query-loop-item [class*="badge"],
  body.archive.author .gb-query-loop-item [class*="kicker"],
  body.author .gb-query-loop-item [class*="kicker"],
  body.archive.author .gb-query-loop-item [class*="cat"],
  body.author .gb-query-loop-item [class*="cat"],
  body.archive.author .gb-grid-column .fr-badge,
  body.author .gb-grid-column .fr-badge,
  body.archive.author .gb-grid-column [class*="badge"],
  body.author .gb-grid-column [class*="badge"],
  body.archive.author .gb-grid-column [class*="kicker"],
  body.author .gb-grid-column [class*="kicker"],
  body.archive.author .gb-grid-column [class*="cat"],
  body.author .gb-grid-column [class*="cat"] {
    margin-left: 16px !important;
    margin-right: 16px !important;
    max-width: calc(100% - 32px) !important;
  }

  body.archive.author article.post .entry-title,
  body.author article.post .entry-title,
  body.archive.author article.post .entry-title a,
  body.author article.post .entry-title a,
  body.archive.author article.post h2,
  body.author article.post h2,
  body.archive.author article.post h2 a,
  body.author article.post h2 a,
  body.archive.author article.post h3,
  body.author article.post h3,
  body.archive.author article.post h3 a,
  body.author article.post h3 a,
  body.archive.author .gb-query-loop-item h2,
  body.author .gb-query-loop-item h2,
  body.archive.author .gb-query-loop-item h2 a,
  body.author .gb-query-loop-item h2 a,
  body.archive.author .gb-query-loop-item h3,
  body.author .gb-query-loop-item h3,
  body.archive.author .gb-query-loop-item h3 a,
  body.author .gb-query-loop-item h3 a,
  body.archive.author .gb-query-loop-item .gb-headline,
  body.author .gb-query-loop-item .gb-headline,
  body.archive.author .gb-grid-column h2,
  body.author .gb-grid-column h2,
  body.archive.author .gb-grid-column h2 a,
  body.author .gb-grid-column h2 a,
  body.archive.author .gb-grid-column h3,
  body.author .gb-grid-column h3,
  body.archive.author .gb-grid-column h3 a,
  body.author .gb-grid-column h3 a,
  body.archive.author .gb-grid-column .gb-headline,
  body.author .gb-grid-column .gb-headline {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.author .gb-query-loop-pagination,
  body.archive.author .gb-query-loop-pagination,
  body.archive.author .paging-navigation,
  body.author .paging-navigation,
  body.archive.author nav.pagination,
  body.author nav.pagination,
  body.archive.author .pagination,
  body.author .pagination {
    width: calc(100% - 32px) !important;
    margin: 54px auto 170px !important;
  }

  body.archive.author .site-main,
  body.author .site-main,
  body.archive.author #main,
  body.author #main,
  body.archive.author .content-area,
  body.author .content-area {
    padding-bottom: 170px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE ALIGN CARDS PAGINATION FINAL v35 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE EXACT CARD NAV FINAL v36 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - dokładnie ustawić karty .fr-archive-card,
   - plakietka, tytuł i meta mają być na jednej osi,
   - zmniejszyć odległość między „Artykuły autora” a pierwszym rzędem kart,
   - wyrównać belkę „Artykuły autora” z lewą krawędzią boxu autora,
   - realnie odsunąć .nav-links paginacji od stopki.
   Nie ruszać homepage, single, headera, menu ani PHP.
   ========================================================= */

/* 1) Wspólna oś strony autora */
body.archive.author .fr-author-bio-final-v28,
body.author .fr-author-bio-final-v28,
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* 2) Belka „Artykuły autora” — na osi boxu autora, bliżej kart. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  display: block !important;
  margin-top: 30px !important;
  margin-bottom: 18px !important;
  padding-left: 12px !important;
  border-left: 3px solid #E12626 !important;
  transform: none !important;
  box-sizing: border-box !important;
}

/* 3) Grid bez nadmiarowego odstępu od góry. */
body.archive.author .fr-author-posts-heading + *,
body.author .fr-author-posts-heading + * {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.archive.author .fr-archive-card,
body.author .fr-archive-card {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

/* 4) Obraz full-bleed, bez paddingu. */
body.archive.author .fr-archive-card .fr-archive-card-image,
body.author .fr-archive-card .fr-archive-card-image {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.archive.author .fr-archive-card .fr-archive-card-image img,
body.author .fr-archive-card .fr-archive-card-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

/* 5) Dokładny wrapper tekstowy karty — cała treść na jednej osi. */
body.archive.author .fr-archive-card .fr-archive-card-copy,
body.author .fr-archive-card .fr-archive-card-copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  width: 100% !important;
  padding: 14px 18px 16px !important;
  box-sizing: border-box !important;
}

/* Plakietka, tytuł i meta: zero własnych przesunięć, bo padding robi wrapper. */
body.archive.author .fr-archive-card .fr-archive-badge,
body.author .fr-archive-card .fr-archive-badge,
body.archive.author .fr-archive-card .fr-archive-card-title,
body.author .fr-archive-card .fr-archive-card-title,
body.archive.author .fr-archive-card .fr-archive-card-title a,
body.author .fr-archive-card .fr-archive-card-title a,
body.archive.author .fr-archive-card .fr-archive-meta,
body.author .fr-archive-card .fr-archive-meta {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* Plakietka */
body.archive.author .fr-archive-card .fr-archive-badge,
body.author .fr-archive-card .fr-archive-badge {
  display: inline-flex !important;
  align-self: flex-start !important;
  margin-top: 0 !important;
  margin-bottom: 8px !important;
  max-width: 100% !important;
}

/* Tytuł */
body.archive.author .fr-archive-card .fr-archive-card-title,
body.author .fr-archive-card .fr-archive-card-title {
  width: 100% !important;
  margin-top: 0 !important;
  margin-bottom: 9px !important;
  color: #111827 !important;
  font-size: 18px !important;
  line-height: 1.18 !important;
  font-weight: 850 !important;
  letter-spacing: -0.025em !important;
}

body.archive.author .fr-archive-card .fr-archive-card-title a,
body.author .fr-archive-card .fr-archive-card-title a {
  display: block !important;
  width: 100% !important;
  color: inherit !important;
  text-decoration: none !important;
}

/* Meta */
body.archive.author .fr-archive-card .fr-archive-meta,
body.author .fr-archive-card .fr-archive-meta {
  width: 100% !important;
  margin-top: auto !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* 6) Paginacja — dokładny wrapper z outerHTML: .nav-links */
body.archive.author .nav-links,
body.author .nav-links {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 74px auto 190px !important;
  padding: 0 !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.archive.author .nav-links .page-numbers,
body.author .nav-links .page-numbers {
  box-sizing: border-box !important;
}

/* Dodatkowy bufor dolny, gdy stopka jest przyklejona zaraz po main. */
body.archive.author .site-main,
body.author .site-main,
body.archive.author #main,
body.author #main,
body.archive.author .content-area,
body.author .content-area {
  padding-bottom: 170px !important;
}

/* 7) Mobile */
@media (max-width: 768px) {
  body.archive.author .fr-author-bio-final-v28,
  body.author .fr-author-bio-final-v28,
  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading,
  body.archive.author .nav-links,
  body.author .nav-links {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
  }

  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    margin-top: 28px !important;
    margin-bottom: 16px !important;
  }

  body.archive.author .fr-archive-card .fr-archive-card-copy,
  body.author .fr-archive-card .fr-archive-card-copy {
    padding: 12px 16px 15px !important;
  }

  body.archive.author .fr-archive-card .fr-archive-card-title,
  body.author .fr-archive-card .fr-archive-card-title {
    font-size: 17px !important;
    line-height: 1.18 !important;
  }

  body.archive.author .nav-links,
  body.author .nav-links {
    margin: 58px auto 185px !important;
  }

  body.archive.author .site-main,
  body.author .site-main,
  body.archive.author #main,
  body.author #main,
  body.archive.author .content-area,
  body.author .content-area {
    padding-bottom: 180px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE EXACT CARD NAV FINAL v36 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE BADGES HEADING PAGINATION FINAL v37 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - dopracować położenie nagłówka „Artykuły autora”,
   - zachować dobrą oś tytułów i dat w kartach,
   - poprawić plakietki kategorii: lewa kreska nie dotyka tekstu,
   - lekko cofnąć plakietki w lewo bez ruszania tytułów i dat,
   - zmniejszyć przesadny odstęp paginacji od ostatniego artykułu i stopki.
   Nie ruszać homepage, single, headera, menu ani PHP.
   ========================================================= */

/* 1) „Artykuły autora” — belka na osi boxu autora, ale bliżej gridu. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 24px auto 18px !important;
  padding: 0 0 0 12px !important;
  border-left: 3px solid #E12626 !important;
  transform: none !important;
  box-sizing: border-box !important;
}

/* 2) Karta: wrapper tekstowy zostaje dobry — tytuł i meta na jednej osi. */
body.archive.author .fr-archive-card .fr-archive-card-copy,
body.author .fr-archive-card .fr-archive-card-copy {
  padding: 14px 18px 16px !important;
  box-sizing: border-box !important;
}

/* 3) Plakietka kategorii — ma własny wewnętrzny padding, żeby kreska nie dotykała tekstu.
      Lekko cofamy ją w lewo względem tytułu, ale tekst plakietki nadal ma oddech. */
body.archive.author .fr-archive-card .fr-archive-badge,
body.author .fr-archive-card .fr-archive-badge {
  display: inline-flex !important;
  align-self: flex-start !important;
  width: auto !important;
  max-width: max-content !important;
  min-height: 22px !important;
  margin: 0 0 8px -2px !important;
  padding: 5px 8px 5px 10px !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

/* Jeśli badge ma pseudo-kreskę lub border-left z wcześniejszych stylów, tekst nie może na nią wjeżdżać. */
body.archive.author .fr-archive-card .fr-archive-badge::before,
body.author .fr-archive-card .fr-archive-badge::before {
  margin-right: 6px !important;
}

/* 4) Tytuł i meta — bez zmian osi, tylko zabezpieczenie przed dodatkowymi przesunięciami. */
body.archive.author .fr-archive-card .fr-archive-card-title,
body.author .fr-archive-card .fr-archive-card-title,
body.archive.author .fr-archive-card .fr-archive-card-title a,
body.author .fr-archive-card .fr-archive-card-title a,
body.archive.author .fr-archive-card .fr-archive-meta,
body.author .fr-archive-card .fr-archive-meta {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 5) Paginacja — wraca do normalnego rytmu, bez ogromnej pustki. */
body.archive.author .nav-links,
body.author .nav-links {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 54px auto 72px !important;
  padding: 0 !important;
  clear: both !important;
  box-sizing: border-box !important;
}

/* Usuwamy przesadnie duży dolny bufor kontenera z poprzednich prób. */
body.archive.author .site-main,
body.author .site-main,
body.archive.author #main,
body.author #main,
body.archive.author .content-area,
body.author .content-area {
  padding-bottom: 0 !important;
}

/* 6) Mobile */
@media (max-width: 768px) {
  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin: 22px auto 16px !important;
    padding-left: 12px !important;
  }

  body.archive.author .fr-archive-card .fr-archive-card-copy,
  body.author .fr-archive-card .fr-archive-card-copy {
    padding: 12px 16px 15px !important;
  }

  body.archive.author .fr-archive-card .fr-archive-badge,
  body.author .fr-archive-card .fr-archive-badge {
    margin: 0 0 8px -1px !important;
    padding: 5px 8px 5px 10px !important;
  }

  body.archive.author .nav-links,
  body.author .nav-links {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin: 44px auto 68px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE BADGES HEADING PAGINATION FINAL v37 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE FINAL MICRO ALIGN v38 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - przesunąć „Artykuły autora” i czerwoną kreskę lekko w lewo,
   - zmniejszyć przerwę między „Artykuły autora” a pierwszymi kartami,
   - wyrównać plakietkę kategorii z tytułem i datą w kartach,
   - zachować odstęp między kolorową kreską plakietki a tekstem,
   - zmniejszyć zbyt duży obszar wokół paginacji.
   Nie ruszać homepage, single, headera, menu ani PHP.
   ========================================================= */

/* 1) „Artykuły autora” — lekko w lewo i bliżej kart. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 20px auto 10px !important;
  padding-left: 12px !important;
  border-left: 3px solid #E12626 !important;
  transform: translateX(-22px) !important;
  box-sizing: border-box !important;
}

/* 2) Grid po nagłówku — bez dodatkowej pustki od góry. */
body.archive.author .fr-author-posts-heading + *,
body.author .fr-author-posts-heading + *,
body.archive.author .fr-author-posts-heading ~ .gb-element-6a8c98b7,
body.author .fr-author-posts-heading ~ .gb-element-6a8c98b7,
body.archive.author .fr-author-posts-heading ~ .gb-element-162fac59,
body.author .fr-author-posts-heading ~ .gb-element-162fac59 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 3) Karta — wrapper tekstowy zostaje osią dla badge, tytułu i daty. */
body.archive.author .fr-archive-card .fr-archive-card-copy,
body.author .fr-archive-card .fr-archive-card-copy {
  padding: 14px 18px 16px !important;
  box-sizing: border-box !important;
}

/* 4) Plakietka: wyrównana do tytułu i daty.
      Kreska nie dotyka tekstu, bo dajemy większy padding-left. */
body.archive.author .fr-archive-card .fr-archive-badge,
body.author .fr-archive-card .fr-archive-badge {
  display: inline-flex !important;
  align-self: flex-start !important;
  width: auto !important;
  max-width: max-content !important;
  min-height: 22px !important;
  margin: 0 0 8px 0 !important;
  padding: 5px 9px 5px 12px !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-indent: 0 !important;
}

/* Tekst badge nie może nachodzić na pasek/kreskę. */
body.archive.author .fr-archive-card .fr-archive-badge::before,
body.author .fr-archive-card .fr-archive-badge::before {
  margin-right: 7px !important;
}

/* Tytuł i meta bez przesunięć, na tej samej osi co badge. */
body.archive.author .fr-archive-card .fr-archive-card-title,
body.author .fr-archive-card .fr-archive-card-title,
body.archive.author .fr-archive-card .fr-archive-card-title a,
body.author .fr-archive-card .fr-archive-card-title a,
body.archive.author .fr-archive-card .fr-archive-meta,
body.author .fr-archive-card .fr-archive-meta {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* 5) Paginacja — mniej pustki od ostatniego artykułu i od stopki. */
body.archive.author .nav-links,
body.author .nav-links {
  width: min(1080px, calc(100% - 48px)) !important;
  max-width: 1080px !important;
  margin: 42px auto 46px !important;
  padding: 0 !important;
  clear: both !important;
  box-sizing: border-box !important;
}

/* Zdejmujemy sztuczny dolny bufor kontenera z wcześniejszych prób. */
body.archive.author .site-main,
body.author .site-main,
body.archive.author #main,
body.author #main,
body.archive.author .content-area,
body.author .content-area {
  padding-bottom: 0 !important;
}

/* 6) Mobile */
@media (max-width: 768px) {
  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin: 18px auto 10px !important;
    padding-left: 12px !important;
    transform: translateX(-10px) !important;
  }

  body.archive.author .fr-archive-card .fr-archive-card-copy,
  body.author .fr-archive-card .fr-archive-card-copy {
    padding: 12px 16px 15px !important;
  }

  body.archive.author .fr-archive-card .fr-archive-badge,
  body.author .fr-archive-card .fr-archive-badge {
    margin: 0 0 8px 0 !important;
    padding: 5px 9px 5px 12px !important;
  }

  body.archive.author .nav-links,
  body.author .nav-links {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin: 38px auto 44px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE FINAL MICRO ALIGN v38 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE FINAL BADGE POLISH v39 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - usunąć plakietkę „Autor” z głównego boxu autora,
   - wyrównać plakietki kategorii w kartach z tytułem i datą,
   - zachować odstęp między kolorową kreską plakietki a tekstem,
   - zmniejszyć przerwę między „Artykuły autora” a pierwszymi kartami.
   Nie ruszać homepage, single, archive/kategorii, headera, menu ani PHP.
   ========================================================= */

/* 1) Główny box autora — usuwamy małą plakietkę „Autor”. */
body.archive.author .fr-author-page-header-final-v28 .fr-author-page-eyebrow,
body.author .fr-author-page-header-final-v28 .fr-author-page-eyebrow,
body.archive.author .fr-author-page-header-final-v28 .fr-archive-eyebrow,
body.author .fr-author-page-header-final-v28 .fr-archive-eyebrow,
body.archive.author .fr-author-page-header-final-v28 .fr-author-badge,
body.author .fr-author-page-header-final-v28 .fr-author-badge,
body.archive.author .fr-author-page-header-final-v28 .fr-badge,
body.author .fr-author-page-header-final-v28 .fr-badge {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* 2) Po usunięciu plakietki lekko domykamy pion w boxie. */
body.archive.author .fr-author-page-header-final-v28,
body.author .fr-author-page-header-final-v28 {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

/* 3) „Artykuły autora” bliżej pierwszego rzędu kart. */
body.archive.author .fr-author-posts-heading,
body.author .fr-author-posts-heading {
  margin-top: 20px !important;
  margin-bottom: 6px !important;
}

/* Bezpośredni element po nagłówku nie może dokładać własnego pustego marginesu. */
body.archive.author .fr-author-posts-heading + *,
body.author .fr-author-posts-heading + *,
body.archive.author .fr-author-posts-heading ~ .fr-archive-grid,
body.author .fr-author-posts-heading ~ .fr-archive-grid {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 4) Karta — tekstowa część jest jedyną osią dla plakietki, tytułu i daty. */
body.archive.author .fr-archive-card .fr-archive-card-copy,
body.author .fr-archive-card .fr-archive-card-copy {
  padding: 14px 18px 16px !important;
  box-sizing: border-box !important;
}

/* 5) Plakietka kategorii w karcie:
      - wyrównana do tytułu i daty,
      - bez ujemnego marginesu,
      - z większym lewym paddingiem, żeby kreska nie dotykała tekstu. */
body.archive.author .fr-archive-card .fr-archive-badge,
body.author .fr-archive-card .fr-archive-badge {
  display: inline-flex !important;
  align-self: flex-start !important;
  width: auto !important;
  max-width: max-content !important;
  min-height: 22px !important;
  margin: 0 0 8px 0 !important;
  padding: 5px 9px 5px 13px !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-indent: 0 !important;
}

/* Jeżeli kolorowa kreska jest pseudo-elementem, dostaje dodatkowy oddech od tekstu. */
body.archive.author .fr-archive-card .fr-archive-badge::before,
body.author .fr-archive-card .fr-archive-badge::before {
  margin-right: 7px !important;
}

/* 6) Tytuł i meta bez dodatkowych przesunięć — dokładnie ta sama oś co plakietka. */
body.archive.author .fr-archive-card .fr-archive-card-title,
body.author .fr-archive-card .fr-archive-card-title,
body.archive.author .fr-archive-card .fr-archive-card-title a,
body.author .fr-archive-card .fr-archive-card-title a,
body.archive.author .fr-archive-card .fr-archive-meta,
body.author .fr-archive-card .fr-archive-meta {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* 7) Mobile */
@media (max-width: 768px) {
  body.archive.author .fr-author-page-header-final-v28,
  body.author .fr-author-page-header-final-v28 {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  body.archive.author .fr-author-posts-heading,
  body.author .fr-author-posts-heading {
    margin-top: 18px !important;
    margin-bottom: 6px !important;
  }

  body.archive.author .fr-archive-card .fr-archive-card-copy,
  body.author .fr-archive-card .fr-archive-card-copy {
    padding: 12px 16px 15px !important;
  }

  body.archive.author .fr-archive-card .fr-archive-badge,
  body.author .fr-archive-card .fr-archive-badge {
    margin: 0 0 8px 0 !important;
    padding: 5px 9px 5px 13px !important;
  }
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE FINAL BADGE POLISH v39 2026-06-10
   ========================================================= */

/* =========================================================
   4RINGS — AUTHOR ARCHIVE FINAL ALIGNMENT v34 2026-06-10
   Zakres: tylko strony autorów body.archive.author / body.author.
   Cel:
   - finalnie ustawić odstęp między boxem autora a nagłówkiem „Artykuły autora”,
   - wyrównać czerwoną kreskę nagłówka do osi czerwonej kreski w boxie autora,
   - odsunąć tekst „Artykuły autora” od czerwonej kreski,
   - wyrównać plakietki kategorii w kartach z początkiem tytułu.
   Uwaga:
   - ujemny margin-bottom jest świadomą korektą rytmu tej konkretnej sekcji autora.
   - nie ruszać homepage, single, headera, menu, stopki ani PHP.
   ========================================================= */

body.author .fr-author-posts-heading,
body.author .fr-author-posts-title,
body.author .fr-author-articles-heading,
body.author .fr-archive-section-title,
body.author .fr-archive-heading,
body.archive.author .fr-author-posts-heading,
body.archive.author .fr-author-posts-title,
body.archive.author .fr-author-articles-heading,
body.archive.author .fr-archive-section-title,
body.archive.author .fr-archive-heading {
  margin-top: 34px !important;
  margin-left: -22px !important;
  margin-bottom: -50px !important;
  padding-left: 14px !important;
  transform: none !important;
}

body.author .fr-author-posts-heading::before,
body.author .fr-author-posts-title::before,
body.author .fr-author-articles-heading::before,
body.author .fr-archive-section-title::before,
body.author .fr-archive-heading::before,
body.archive.author .fr-author-posts-heading::before,
body.archive.author .fr-author-posts-title::before,
body.archive.author .fr-author-articles-heading::before,
body.archive.author .fr-archive-section-title::before,
body.archive.author .fr-archive-heading::before {
  left: 0 !important;
  margin-left: 0 !important;
  transform: none !important;
}

body.author .fr-archive-grid,
body.author .fr-author-posts-grid,
body.author .fr-author-articles-grid,
body.archive.author .fr-archive-grid,
body.archive.author .fr-author-posts-grid,
body.archive.author .fr-author-articles-grid {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.author .fr-archive-card .fr-archive-badge,
body.archive.author .fr-archive-card .fr-archive-badge {
  position: relative !important;
  left: -18px !important;
  margin-left: -2px !important;
  transform: none !important;
}

/* =========================================================
   KONIEC — AUTHOR ARCHIVE FINAL ALIGNMENT v34 2026-06-10
   ========================================================= */
