/**
 * Shared pagination partial styles (app/Views/partials/pagination.php).
 * Pill-style numbered pager with prev/next arrows. Mirrors the previous
 * marketplace pager visual but works in any listing context.
 */

.sat-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 40px;
    /* Reset global `nav { background; border; box-shadow }` from theme-system.css */
    background: transparent;
    border: 0;
    box-shadow: none;
}

.sat-pagination--left { justify-content: flex-start; }
.sat-pagination--right { justify-content: flex-end; }
.sat-pagination--inline { margin-top: 0; }

.sat-pagination__page,
.sat-pagination__nav,
.sat-pagination__ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border-radius: var(--radius-pill, 999px);
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    border: 0;
    cursor: pointer;
    transition: background var(--transition-fast, 150ms ease),
                color var(--transition-fast, 150ms ease);
}

.sat-pagination__page,
.sat-pagination__nav {
    background: var(--bg-tertiary);
    color: var(--text-primary);
}

.sat-pagination__page:hover,
.sat-pagination__nav:hover {
    background: var(--primary-100, var(--bg-secondary));
    color: var(--primary-800, var(--text-primary));
}

.sat-pagination__page.is-current {
    background: var(--brand-primary);
    color: var(--text-inverse, #fff);
}

.sat-pagination__page.is-current:hover {
    background: var(--brand-primary);
    color: var(--text-inverse, #fff);
    cursor: default;
}

.sat-pagination__nav[aria-disabled="true"] {
    opacity: 0.45;
    pointer-events: none;
}

.sat-pagination__ellipsis {
    background: transparent;
    color: var(--text-tertiary);
    cursor: default;
    user-select: none;
}
