/* Pagination Styles */
.pagination-item a,
.pagination-item span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    border-radius: 0.5rem;
    transition: all 0.2s ease-in-out;
}

/* Pagination normal state */
.pagination-normal {
    color: var(--pagination-normal-text, #d1d5db) !important;
    background-color: var(--pagination-normal-bg, #1f2937) !important;
    border: 1px solid var(--pagination-normal-border, #374151) !important;
}

.pagination-normal:hover {
    color: var(--pagination-hover-text, #ffffff) !important;
    background-color: var(--pagination-hover-bg, #374151) !important;
    border-color: var(--pagination-hover-bg, #374151) !important;
}

/* Pagination current state */
.pagination-current {
    color: var(--pagination-current-text, #ffffff) !important;
    background-color: var(--pagination-current-bg, #10b981) !important;
    border: 1px solid var(--pagination-current-border, #10b981) !important;
}

/* Legacy support for WordPress default classes */
.pagination-item .page-numbers {
    color: var(--pagination-normal-text, #d1d5db);
    background-color: var(--pagination-normal-bg, #1f2937);
    border: 1px solid var(--pagination-normal-border, #374151);
}

.pagination-item .page-numbers:hover {
    color: var(--pagination-hover-text, #ffffff);
    background-color: var(--pagination-hover-bg, #374151);
    border-color: var(--pagination-hover-bg, #374151);
}

.pagination-item .page-numbers.current {
    color: var(--pagination-current-text, #ffffff);
    background-color: var(--pagination-current-bg, #10b981);
    border-color: var(--pagination-current-border, #10b981);
}

/* Previous/Next button styles */
.pagination-item .prev.page-numbers,
.pagination-item .next.page-numbers {
    padding: 0.5rem;
}

/* Dots (...) styles */
.pagination-item .dots {
    color: #6b7280;
    background-color: transparent;
    border: none;
    cursor: default;
}

/* Focus styles for accessibility */
.pagination-item .page-numbers:focus {
    outline: 2px solid #2563eb;
    outline-offset: 2px;
}

/* Responsive adjustments */
@media (max-width: 640px) {
    .pagination-item a,
    .pagination-item span {
        min-width: 2rem;
        height: 2rem;
        padding: 0.25rem 0.5rem;
        font-size: 0.75rem;
    }
    
    .pagination-item .prev.page-numbers,
    .pagination-item .next.page-numbers {
        padding: 0.25rem;
    }
}

/* Animation for hover effects */
.pagination-item .page-numbers {
    transform: translateY(0);
}

.pagination-item .page-numbers:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.pagination-item .page-numbers:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Loading state (if needed) */
.pagination-loading {
    opacity: 0.6;
    pointer-events: none;
}

/* Custom styles for different pagination contexts */
.archive-pagination .pagination-item .page-numbers {
    border-color: #374151;
}

.search-pagination .pagination-item .page-numbers {
    border-color: #059669;
}

.search-pagination .pagination-item .page-numbers.current {
    background-color: #059669;
    border-color: #059669;
}
