/*
 * Bootstrap Pagination Override - Meelion Brand
 * Este arquivo sobrescreve completamente as classes de paginação do Bootstrap
 * com o design customizado do Meelion
 */

/* Reset completo das classes de paginação do Bootstrap */
.pagination {
    --bs-pagination-padding-x: 0 !important;
    --bs-pagination-padding-y: 0 !important;
    --bs-pagination-font-size: 0.9rem !important;
    --bs-pagination-color: #2E6C86 !important;
    --bs-pagination-bg: #ffffff !important;
    --bs-pagination-border-width: 2px !important;
    --bs-pagination-border-color: #e9ecef !important;
    --bs-pagination-border-radius: 8px !important;
    --bs-pagination-hover-color: #2E6C86 !important;
    --bs-pagination-hover-bg: #f8f9fa !important;
    --bs-pagination-hover-border-color: #C3F53C !important;
    --bs-pagination-focus-color: #2E6C86 !important;
    --bs-pagination-focus-bg: #f8f9fa !important;
    --bs-pagination-focus-border-color: #C3F53C !important;
    --bs-pagination-focus-box-shadow: 0 2px 8px rgba(195, 245, 60, 0.2) !important;
    --bs-pagination-active-color: #2E6C86 !important;
    --bs-pagination-active-bg: #C3F53C !important;
    --bs-pagination-active-border-color: #C3F53C !important;
    --bs-pagination-disabled-color: #adb5bd !important;
    --bs-pagination-disabled-bg: #f8f9fa !important;
    --bs-pagination-disabled-border-color: #e9ecef !important;
    
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: 'Montserrat', sans-serif !important;
}

.page-item {
    margin: 0 2px !important;
    border: none !important;
}

.page-item:not(:first-child) .page-link {
    margin-left: 0 !important;
}

.page-item:first-child .page-link,
.page-item:last-child .page-link {
    border-radius: 8px !important;
}

.page-link {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 8px 12px !important;
    margin-left: 0 !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    color: #2E6C86 !important;
    text-decoration: none !important;
    background-color: #ffffff !important;
    border: 2px solid #e9ecef !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
    font-family: 'Montserrat', sans-serif !important;
    line-height: 1 !important;
}

.page-link:hover {
    z-index: 2 !important;
    color: #2E6C86 !important;
    text-decoration: none !important;
    background-color: #f8f9fa !important;
    border-color: #C3F53C !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 8px rgba(195, 245, 60, 0.2) !important;
}

.page-link:focus {
    z-index: 3 !important;
    color: #2E6C86 !important;
    background-color: #f8f9fa !important;
    border-color: #C3F53C !important;
    outline: 0 !important;
    box-shadow: 0 2px 8px rgba(195, 245, 60, 0.2) !important;
}

.page-item.active .page-link {
    z-index: 3 !important;
    color: #2E6C86 !important;
    background-color: #C3F53C !important;
    border-color: #C3F53C !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(195, 245, 60, 0.3) !important;
}

.page-item.disabled .page-link {
    color: #adb5bd !important;
    pointer-events: none !important;
    background-color: #f8f9fa !important;
    border-color: #e9ecef !important;
    cursor: not-allowed !important;
    opacity: 0.6 !important;
}

.page-item.disabled .page-link:hover {
    transform: none !important;
    box-shadow: none !important;
    color: #adb5bd !important;
    background-color: #f8f9fa !important;
    border-color: #e9ecef !important;
}

/* Wrapper da paginação */
.pagination-wrapper {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
}

/* Informações da paginação */
.pagination-info {
    margin-top: 1rem !important;
    font-family: 'Montserrat', sans-serif !important;
}

.pagination-info .text-muted {
    color: #566573 !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
}

/* Responsividade para mobile */
@media (max-width: 576px) {
    .page-link {
        min-width: 35px !important;
        height: 35px !important;
        padding: 6px 10px !important;
        font-size: 0.8rem !important;
    }
    
    .page-item {
        margin: 0 1px !important;
    }
    
    .pagination-info .text-muted {
        font-size: 0.8rem !important;
    }
}

/* Garantir que os estilos sejam aplicados mesmo com alta especificidade do Bootstrap */
ul.pagination {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: 'Montserrat', sans-serif !important;
}

ul.pagination .page-item {
    margin: 0 2px !important;
    border: none !important;
}

ul.pagination .page-link {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 8px 12px !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    color: #2E6C86 !important;
    background-color: #ffffff !important;
    border: 2px solid #e9ecef !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    font-family: 'Montserrat', sans-serif !important;
    line-height: 1 !important;
}

ul.pagination .page-link:hover {
    color: #2E6C86 !important;
    background-color: #f8f9fa !important;
    border-color: #C3F53C !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 8px rgba(195, 245, 60, 0.2) !important;
    z-index: 2 !important;
}

ul.pagination .page-item.active .page-link {
    color: #2E6C86 !important;
    background-color: #C3F53C !important;
    border-color: #C3F53C !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(195, 245, 60, 0.3) !important;
    z-index: 3 !important;
}

ul.pagination .page-item.disabled .page-link {
    color: #adb5bd !important;
    background-color: #f8f9fa !important;
    border-color: #e9ecef !important;
    cursor: not-allowed !important;
    opacity: 0.6 !important;
    pointer-events: none !important;
}