/* ==========================================================================
   Pagination — shared listing pager (Sprint 2 Faza D)
   Canonical home: replaces fragmented pagination CSS in ad-list.css,
   agency-show.css, my-ads.css.

   Structure:
   .pagination-wrapper > .pagination (ul) > li > a/span
   plus .pagination-info caption underneath
   ========================================================================== */

.pagination-wrapper {
    margin-top: 48px;
    padding-top: 32px;
    border-top: 1px solid var(--hairline);
    text-align: center;
}

.pagination-wrapper .pagination {
    display: inline-flex;
    gap: 4px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.pagination-wrapper .pagination li,
.pagination-wrapper .pagination span {
    display: inline-block;
}

.pagination-wrapper .pagination li a,
.pagination-wrapper .pagination li span,
.pagination-wrapper .pagination span a,
.pagination-wrapper .pagination span.current {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    background: transparent;
    border: 1px solid var(--hairline);
    color: var(--ink);
    font-family: var(--font-body);
    font-size: 0.85rem;
    text-decoration: none;
    border-radius: 0;
    transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}

.pagination-wrapper .pagination li a:hover,
.pagination-wrapper .pagination span a:hover {
    background: var(--ink);
    color: var(--cream);
    border-color: var(--ink);
}

/* KnpPaginator emits .current for the active page */
.pagination-wrapper .pagination li.active span,
.pagination-wrapper .pagination li.current span,
.pagination-wrapper .pagination span.current {
    background: var(--ink);
    color: var(--cream);
    border-color: var(--ink);
    cursor: default;
    pointer-events: none;
}

/* Disabled page item */
.pagination-wrapper .pagination li.disabled span,
.pagination-wrapper .pagination .disabled,
.pagination-wrapper .pagination span.disabled {
    color: var(--hairline-strong);
    border-color: var(--hairline);
    cursor: not-allowed;
    pointer-events: none;
}

/* Caption below the pager */
.pagination-info {
    margin-top: 14px;
    font-family: var(--font-body);
    font-size: 0.78rem;
    letter-spacing: 0.06em;
    color: var(--taupe);
}

.pagination-info strong {
    color: var(--ink);
    font-weight: 500;
    font-feature-settings: "tnum" 1;
    font-variant-numeric: tabular-nums;
}

@media (max-width: 560px) {
    .pagination-wrapper .pagination li a,
    .pagination-wrapper .pagination li span,
    .pagination-wrapper .pagination span a,
    .pagination-wrapper .pagination span.current {
        min-width: 32px;
        height: 32px;
        font-size: 0.8rem;
        padding: 0 8px;
    }
}
