html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.logo-container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70vh; /* Altura total da tela */
}

.logo {
    max-width: 90%;
    max-height: 70vh; /* Ajuste a altura máxima conforme necessário */
}
.btn-custom-small {
    padding: 3px 6px;
    font-size: 12px;
}
.table-custom {
    width: 100%; /* Faz a tabela ocupar toda a largura disponível */
    max-width: 100%; /* Define um limite máximo de largura */
    margin: 0 auto; /* Centraliza a tabela */
}
.custom-container {
    max-width: 90%; /* Ajuste conforme necessário */
    margin: 0 auto; /* Centraliza o conteúdo */
}
/* Estilos para a paginação */
/* Estilos para a paginação */
ul.pagination {
    display: flex;
    justify-content: center;
    margin: 20px 0;
    font-family: 'Arial', sans-serif;
}

    ul.pagination li.page-item,
    ul.pagination li.PagedList-skipToFirst,
    ul.pagination li.PagedList-skipToPrevious,
    ul.pagination li.PagedList-skipToNext,
    ul.pagination li.PagedList-skipToLast,
    ul.pagination li {
        margin: 0 5px;
    }

        ul.pagination li.page-item a.page-link,
        ul.pagination li.page-item span.page-link,
        ul.pagination li a,
        ul.pagination li span {
            display: flex;
            align-items: center;
            justify-content: center;
            min-width: 40px;
            height: 40px;
            padding: 0;
            font-size: 16px;
            color: #007bff;
            background-color: #fff;
            border: 1px solid #dee2e6;
            border-radius: 8px;
            transition: all 0.3s ease;
            text-decoration: none;
        }

            ul.pagination li.page-item a.page-link:hover,
            ul.pagination li a:hover {
                background-color: #e9ecef;
                border-color: #007bff;
                color: #0056b3;
            }

        ul.pagination li.page-item.active span.page-link,
        ul.pagination li.active span {
            background-color: #007bff;
            border-color: #007bff;
            color: #fff;
            font-weight: bold;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

        ul.pagination li.page-item.disabled span.page-link,
        ul.pagination li.page-item.disabled a.page-link,
        ul.pagination li.disabled span,
        ul.pagination li.disabled a {
            color: #6c757d;
            background-color: #f8f9fa;
            border-color: #dee2e6;
            cursor: not-allowed;
        }

        /* Ícones de Anterior/Próximo */
        ul.pagination li.page-item a.page-link[aria-label="Previous"],
        ul.pagination li.page-item a.page-link[aria-label="Next"],
        ul.pagination li.page-item span.page-link[aria-label="Previous"],
        ul.pagination li.page-item span.page-link[aria-label="Next"],
        ul.pagination li.PagedList-skipToPrevious a,
        ul.pagination li.PagedList-skipToNext a,
        ul.pagination li.PagedList-skipToFirst a,
        ul.pagination li.PagedList-skipToLast a {
            font-size: 18px;
            width: 50px;
        }

/* Ajustes para telas menores */
@media (max-width: 576px) {
    ul.pagination {
        flex-wrap: wrap;
    }

        ul.pagination li.page-item a.page-link,
        ul.pagination li.page-item span.page-link,
        ul.pagination li a,
        ul.pagination li span {
            min-width: 35px;
            height: 35px;
            font-size: 14px;
        }

            ul.pagination li.page-item a.page-link[aria-label="Previous"],
            ul.pagination li.page-item a.page-link[aria-label="Next"],
            ul.pagination li.page-item span.page-link[aria-label="Previous"],
            ul.pagination li.page-item span.page-link[aria-label="Next"],
            ul.pagination li.PagedList-skipToPrevious a,
            ul.pagination li.PagedList-skipToNext a,
            ul.pagination li.PagedList-skipToFirst a,
            ul.pagination li.PagedList-skipToLast a {
                width: 45px;
            }
}

.pagination-info {
    font-size: 16px;
    color: #333;
    font-weight: bold;
}

.pagination-container {
    display: flex;
    justify-content: center;
}
/* Estilos para o resumo de boletos */
.summary-container {
    margin-bottom: 1.5rem;
}

.summary-card .card {
    border: 1px solid #dee2e6;
    border-radius: 6px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease;
    padding: 0.5rem;
}
.summary-card .card:hover {
        transform: translateY(-3px);
}

.summary-card .card-title {
    font-size: 0.9rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 0.3rem;
}

.summary-card .card-text {
    font-size: 1.2rem;
    font-weight: bold;
    color: #007bff;
}

/* Cores específicas para cada tipo de total */
.summary-card:nth-child(1) .card-text { /* Total de Boletos */
    color: #343a40;
}

.summary-card:nth-child(2) .card-text { /* Gerados */
    color: #6c757d;
}

.summary-card:nth-child(3) .card-text { /* Em Aberto */
    color: #007bff;
}

.summary-card:nth-child(4) .card-text { /* Pagos */
    color: #28a745;
}

.summary-card:nth-child(5) .card-text { /* Baixados */
    color: #dc3545;
}

/* Responsividade */
@media (max-width: 768px) {
    .summary-card {
        margin-bottom: 0.8rem;
    }

        .summary-card .card-title {
            font-size: 0.85rem;
        }

        .summary-card .card-text {
            font-size: 1.1rem;
        }
}

.summary-card {
    max-width: 210px; /* Define a largura máxima dos cartões */
    margin: 0 5px; /* Reduz a margem entre os cartões */
}

@media (max-width: 576px) {
    .summary-card {
        max-width: 100%; /* Em telas pequenas, os cartões ocupam a largura total */
        margin: 5px 0;
    }
}

.header-grid {
    background-color: #d0d0d0; 
    color: #000; /* Texto preto */
    font-size: 1.25rem;
    font-weight: 600;
}