/* ===== PAGINATION COMPONENT ===== */

.pagination-container {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: var(--spacing-16);
}

.pagination {
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
}

/* Pagination Buttons (Previous/Next) */
.pagination-btn {
    width: 2.75rem;
    height: 2.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    border-radius: var(--radius-full);
    cursor: pointer;
    transition: all 0.2s ease;
    color: var(--color-text-black);
    position: relative;
}

.pagination-btn:hover {
    background-color: var(--color-text-100);
    color: var(--color-primary-500);
}

.pagination-btn:active {
    transform: scale(0.95);
}

.pagination-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

.pagination-btn svg {
    width: 1rem;
    height: 1rem;
    transition: transform 0.2s ease;
}

.pagination-btn:hover svg {
    transform: scale(1.1);
}

/* Pagination Numbers */
.pagination-numbers {
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
}

.pagination-number {
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    border-radius: var(--radius-3xl);
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-black);
    line-height: 1;
    min-width: 2rem;
}

.pagination-number:hover {
    background-color: var(--color-text-100);
    color: var(--color-primary-500);
    transform: translateY(-1px);
}

.pagination-number.active {
    background-color: var(--color-secondary-500);
    color: var(--color-text-white);
    font-weight: var(--font-weight-bold);
    box-shadow: var(--shadow-sm);
}

.pagination-number:active {
    transform: scale(0.95);
}

/* Pagination with Dots */
.pagination-dots {
    display: flex;
    align-items: center;
    gap: var(--spacing-1);
    padding: 0 var(--spacing-2);
}

.pagination-dot {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: var(--radius-full);
    background-color: var(--color-text-400);
    transition: background-color 0.2s ease;
}

.pagination-dot:hover {
    background-color: var(--color-text-600);
}

/* Pagination Variants */
.pagination-sm .pagination-btn {
    width: 2rem;
    height: 2rem;
}

.pagination-sm .pagination-number {
    width: 1.5rem;
    height: 1.5rem;
}

.pagination-lg .pagination-btn {
    width: 3.5rem;
    height: 3.5rem;
}

.pagination-lg .pagination-number {
    width: 2.5rem;
    height: 2.5rem;
}

/* Pagination with Border */
.pagination-bordered .pagination-number {
    border: 1px solid var(--color-text-300);
}

.pagination-bordered .pagination-number:hover {
    border-color: var(--color-primary-500);
}

.pagination-bordered .pagination-number.active {
    border-color: var(--color-secondary-500);
}
