/**
 * Cache-independent feed pagination styles.
 *
 * The dedicated filename ensures existing visitors receive the repaired
 * button even when an upstream WordPress cache removes asset query versions.
 */

.gimmer-pagination {
    margin-top: 72px;
    padding-top: 24px;
    border-top: 1px solid var(--gb-line);
    display: grid;
    justify-items: center;
    gap: 10px;
}

.gimmer-load-more__button {
    min-width: 214px;
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px 20px;
    border: 1px solid var(--gb-copper);
    border-radius: 5px;
    background: var(--gb-copper);
    color: var(--gb-on-copper) !important;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition:
        background-color 160ms cubic-bezier(0.22, 1, 0.36, 1),
        border-color 160ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
}

.gimmer-load-more__button:hover,
.gimmer-load-more__button:focus-visible {
    border-color: var(--gb-copper-hover);
    background: var(--gb-copper-hover);
    transform: translateY(-1px);
}

.gimmer-load-more__button:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px var(--gb-copper-soft);
}

.gimmer-load-more__button[aria-disabled="true"] {
    cursor: wait;
    transform: none;
}

.gimmer-load-more__button[hidden] {
    display: none;
}

.gimmer-load-more__arrow {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.gimmer-load-more__spinner {
    width: 17px;
    height: 17px;
    display: none;
    border: 2px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
}

.gimmer-load-more__button.is-loading .gimmer-load-more__arrow {
    display: none;
}

.gimmer-load-more__button.is-loading .gimmer-load-more__spinner {
    display: block;
    animation: gimmer-feed-spin 700ms linear infinite;
}

.gimmer-load-more__status {
    min-height: 22px;
    margin: 0;
    color: var(--gb-muted);
    font-size: 13px;
    text-align: center;
}

.gimmer-post-card--appended {
    animation: gimmer-feed-reveal 280ms cubic-bezier(0.22, 1, 0.36, 1) both;
    scroll-margin-top: 108px;
}

@keyframes gimmer-feed-spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes gimmer-feed-reveal {
    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
