/* Igreja Gestão V57 - correções visuais globais */

/* =============================================================
   SimpleDataTables - fallback visual
   Suporta versões antigas (.dataTable-*) e novas (.datatable-*).
   ============================================================= */
.dataTable-wrapper,
.datatable-wrapper {
    width: 100%;
    color: #344054;
}

.dataTable-top,
.datatable-top,
.dataTable-bottom,
.datatable-bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    padding: 10px 0 !important;
    font-size: 12px !important;
    color: #667085 !important;
}

.dataTable-dropdown,
.datatable-dropdown,
.dataTable-search,
.datatable-search {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 0 !important;
}

.dataTable-selector,
.datatable-selector {
    min-width: 70px !important;
    height: 36px !important;
    padding: 5px 28px 5px 9px !important;
    border: 1px solid #d8e0ec !important;
    border-radius: 9px !important;
    background-color: #fff !important;
    color: #344054 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

.dataTable-input,
.datatable-input {
    width: min(280px, 100%) !important;
    min-width: 190px !important;
    height: 36px !important;
    padding: 7px 11px !important;
    border: 1px solid #d8e0ec !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #344054 !important;
    font-size: 12px !important;
    outline: none !important;
    box-shadow: none !important;
}

.dataTable-input:focus,
.datatable-input:focus,
.dataTable-selector:focus,
.datatable-selector:focus {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,.10) !important;
}

.dataTable-info,
.datatable-info {
    margin: 0 !important;
    padding: 0 !important;
    color: #667085 !important;
    font-size: 12px !important;
}

.dataTable-pagination,
.datatable-pagination {
    margin: 0 !important;
    padding: 0 !important;
}

.dataTable-pagination ul,
.datatable-pagination ul,
ul.dataTable-pagination-list,
ul.datatable-pagination-list {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.dataTable-pagination li,
.datatable-pagination li,
.dataTable-pagination-list li,
.datatable-pagination-list li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.dataTable-pagination a,
.datatable-pagination a,
.dataTable-pagination button,
.datatable-pagination button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    height: 34px !important;
    padding: 0 9px !important;
    border: 1px solid #dde5f0 !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #475467 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

.dataTable-pagination a:hover,
.datatable-pagination a:hover {
    border-color: #2563eb !important;
    color: #2563eb !important;
    background: #f5f8ff !important;
}

.dataTable-pagination .active a,
.datatable-pagination .active a,
.dataTable-pagination li.active a,
.datatable-pagination li.active a {
    background: #1f6fff !important;
    border-color: #1f6fff !important;
    color: #fff !important;
}

.dataTable-pagination .disabled a,
.datatable-pagination .disabled a,
.dataTable-pagination li.disabled a,
.datatable-pagination li.disabled a {
    opacity: .4 !important;
    pointer-events: none !important;
}

/* Tabela: preserva o padrão do sistema. */
.dataTable-table,
.datatable-table {
    width: 100% !important;
    border-collapse: collapse !important;
}

.dataTable-table > thead > tr > th,
.datatable-table > thead > tr > th {
    vertical-align: middle !important;
}

/* =============================================================
   Menu lateral - reforço de layout para os submenus dinâmicos.
   ============================================================= */
.menu-subitens {
    list-style: none !important;
    padding-left: 12px !important;
    margin: 5px 0 8px !important;
}

.menu-subitens > li {
    list-style: none !important;
}

.menu-grupo-link {
    cursor: pointer !important;
}

.menu-grupo-link .menu-seta {
    transition: transform .18s ease !important;
}

.menu-grupo-link:not(.collapsed) .menu-seta {
    transform: rotate(180deg) !important;
}

@media (max-width: 767px) {
    .dataTable-top,
    .datatable-top,
    .dataTable-bottom,
    .datatable-bottom {
        align-items: stretch !important;
    }
    .dataTable-search,
    .datatable-search,
    .dataTable-input,
    .datatable-input {
        width: 100% !important;
    }
}
