.bootstrap-table {
    width: 100% !important;
}


/* Força o container principal a ocupar a largura total disponível */
.bootstrap-table,
.fixed-table-container,
.fixed-table-body,
.bootstrap-table .table {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

.bootstrap-table .table,
.bootstrap-table .table>tbody>tr>td,
.bootstrap-table .table>tbody>tr>th,
.bootstrap-table .table>tfoot>tr>td,
.bootstrap-table .table>tfoot>tr>th,
.bootstrap-table .table>thead>tr>td {
    padding: 8px !important
}

.bootstrap-table .table.table-no-bordered>tbody>tr>td,
.bootstrap-table .table.table-no-bordered>thead>tr>th {
    border-right: 2px solid transparent
}

.fixed-table-container {
    position: relative;
    clear: both;
    border: none !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
    /*border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px*/
}

.fixed-table-container.table-no-bordered {
    border: 1px solid transparent
}

.fixed-table-footer,
.fixed-table-header {
    min-height: 37px;
    height: auto;
    overflow: hidden;
    border-radius: 10px 10px 0 0 !important;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0
}

.fixed-table-header {
    border-bottom: 1px solid #ddd;
    margin-right: 0 !important;
    width: 100% !important;
}

.fixed-table-footer {
    border-top: 1px solid #ddd
}

.fixed-table-body {
    overflow-x: auto;
    overflow-y: auto;
    height: 100%
}

.fixed-table-container table {
    width: 100%
}

.fixed-table-container thead th {
    height: 0;
    padding: 0;
    margin: 0;
    border-left: 1px solid #ddd;
    background-color: #40528B !important;
}

.fixed-table-container thead th:first-child {
    border-left: none;
    border-top-left-radius: 4px;
    -webkit-border-top-left-radius: 4px;
    -moz-border-radius-topleft: 4px
}

/*.fixed-table-container thead th .th-inner {
    padding: 8px;
    line-height: 24px;
    vertical-align: top;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}*/

.fixed-table-container thead th .th-inner {
    padding: 17px 17px !important;
    height: auto !important;
    line-height: normal !important;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    display: flex;
}

.bootstrap-table .table>thead>tr>th .th-inner {
    display: block !important;
    align-items: center !important;
    justify-content: flex-start !important;
    height: 55px !important;
    overflow: visible !important;
    line-height: normal !important;
    box-sizing: border-box !important;
    /* O SEGREDO: Ajustamos o padding-top para empurrar o texto para o meio */
    /* Se 18px for muito, tente 16px ou 17px até alinhar com o seu olho */
    padding-top: 18px !important;
    padding-left: 15px !important;
    padding-right: 35px !important;

}

.fixed-table-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center !important;
    font-family: Arial, Helvetica Neue, Helvetica, sans-serif !important;
    font-size: 13px;
    color: #555;
    position: relative;
    padding-top: 25px;
    padding-bottom: 25px;
}

/* lado esquerdo (texto) */
.fixed-table-pagination .pagination-detail {
    display: flex;
    align-items: center;
    gap: 20px;
    /*order: 1;*/
    width: 100%;
    /* espaço entre textos */
}

/*.pagination>li:last-child>a,
.pagination>li:last-child>span {
    color: #4a6cf7 !important;

}*/

/* hover */
.pagination>li>a:hover {
    color: #4a6cf7 !important;
    background: #eef1ff !important;
}

.fixed-table-pagination .btn-group .caret {
    border-top-color: #4a6cf7 !important;
    transform: scale(1.2);
    /* aumenta tamanho */
}

/* força fundo branco */
.bootstrap-table .table>tbody>tr {
    background: #fff !important;
}

/* remove qualquer borda entre linhas */
.bootstrap-table .table>tbody>tr>td {
    border: none !important;
}


.fixed-table-container tbody tr {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
    /* mais suave */
}



/* seta à ESQUERDA */
.fixed-table-container thead th .sortable::before {
    content: none !important;
    font-size: 10px;
    opacity: 0.6;
    /*margin-right: 6px;*/
}

/* remove qualquer after antigo */
.fixed-table-container thead th .sortable::after {
    content: none !important;
}

.fixed-table-container th.detail {
    width: 30px
}

.fixed-table-container tbody td {
    border-left: 1px solid #ddd
}

.fixed-table-container tbody tr:first-child td {
    border-top: none
}

.fixed-table-container tbody td:first-child {
    border-left: none
}

.fixed-table-container tbody .selected td {
    background-color: #f5f5f5
}

.fixed-table-container .bs-checkbox {
    text-align: center
}

.fixed-table-container .bs-checkbox .th-inner {
    padding: 8px 0
}

.fixed-table-container input[type=radio],
.fixed-table-container input[type=checkbox] {
    margin: 0 auto !important
}

.fixed-table-container .no-records-found {
    text-align: center;
    padding: 40px 0 !important;
    font-size: 14px;
    color: #666;
    display: table-cell !important;
    vertical-align: middle;
    background-color: #fff !important;
}

.fixed-table-container tbody tr.no-records-found {
    display: table-row !important;
}



/* célula */
.fixed-table-container .no-records-found td {
    text-align: center !important;
    width: 100% !important;
    padding: 40px 0 !important;
    border: none !important;
}

.fixed-table-pagination .pagination-detail,
.fixed-table-pagination div.pagination {
    /*margin-top: 10px;
    margin-bottom: 10px;*/
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.fixed-table-pagination div.pagination .pagination {
    order: 2;
    margin: 0 auto !important;
}

.fixed-table-pagination .pagination a {
    padding: 6px 12px;
    line-height: 1.428571429
}

.fixed-table-pagination .pagination-info {
    line-height: 34px;
    margin-right: 5px;
    font-size: 13px !important;
    font-weight: 400;
    color: #555 !important;
}

.fixed-table-pagination .btn-group .ps-btn span {
    font-family: inherit !important;
    font-size: inherit !important;
}

.fixed-table-pagination .btn-group .ps-btn {
    font-family: Arial, Helvetica Neue, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #555 !important;
    background: transparent !important;
    border: none !important;
}

.fixed-table-pagination .btn-group {
    position: relative;
    display: inline-block;
    vertical-align: middle
}

.fixed-table-pagination .dropup .dropdown-menu {
    margin-bottom: 0
}

.fixed-table-pagination .page-list {
    display: inline-flex !important;
    margin-left: auto;
    /* joga pra direita */
}

.fixed-table-toolbar .columns-left {
    margin-right: 5px
}

.fixed-table-toolbar .columns-right {
    margin-left: 5px
}

.fixed-table-toolbar .columns label {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.428571429
}

.fixed-table-toolbar .bars,
.fixed-table-toolbar .columns,
.fixed-table-toolbar .search {
    position: relative;
    margin-top: 10px;
    margin-bottom: 10px;
    line-height: 34px
}

/* container da busca */
.fixed-table-toolbar .search {
    position: relative;
}

/* input */
.fixed-table-toolbar .search input {
    border: 1px solid #ccc !important;
    border-radius: 20px;
    padding: 8px 35px 8px 12px !important;
    /* espaço pra lupa */
    outline: none;
    font-size: 13px;
    width: 220px;
    transition: 0.2s;
}

/* foco (opcional, deixa mais moderno) */
.fixed-table-toolbar .search input:focus {
    border-color: #4a6cf7 !important;
    box-shadow: 0 0 0 2px rgba(74, 108, 247, 0.1);
}

/* 🔍 lupa à direita */
.fixed-table-toolbar .search::after {
    /*content: "🔍";*/
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    opacity: 0.6;
    pointer-events: none;
}

.fixed-table-pagination li.disabled a {
    pointer-events: none;
    cursor: default
}

.fixed-table-loading {
    display: none;
    position: absolute;
    top: 42px;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 99;
    background-color: #fff;
    text-align: center
}

.fixed-table-body .card-view .title {
    font-weight: 700;
    display: inline-block;
    min-width: 30%;
    text-align: left !important
}

.fixed-table-body thead th .th-inner {
    box-sizing: border-box
}

.table td,
.table th {
    vertical-align: middle;
    box-sizing: border-box
}

.fixed-table-toolbar .dropdown-menu {
    text-align: left;
    max-height: 300px;
    overflow: auto
}

.fixed-table-toolbar .btn-group>.btn-group {
    display: inline-block;
    margin-left: -1px !important
}

.fixed-table-toolbar .btn-group>.btn-group>.btn {
    border-radius: 0
}

.fixed-table-toolbar .btn-group>.btn-group:first-child>.btn {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px
}

.fixed-table-toolbar .btn-group>.btn-group:last-child>.btn {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.bootstrap-table .table>thead>tr>th {
    vertical-align: middle !important;
    overflow: visible !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    border-bottom: 2px solid #ddd;
    height: 55px !important;
    padding: 0 !important;
    margin: 0;
    position: relative !important;
}


.pull-right .dropdown-menu {
    right: 0;
    left: auto
}

p.fixed-table-scroll-inner {
    width: 100%;
    height: 200px
}

div.fixed-table-scroll-outer {
    top: 0;
    left: 0;
    visibility: hidden;
    width: 200px;
    height: 150px;
    overflow: hidden
}


.fixed-table-container th.sortable {
    /*background: none !important;*/
    background-image: none !important;
}

/*.fixed-table-container thead th .sortable {
    position: relative;
    background-image: none !important;
    cursor: pointer;
    display: inline-block !important;
    max-width: calc(100% - 10px) !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    /*padding-right: 25px !important;
    padding: 0 !important;
    vertical-align: top !important;
    align-items: center !important;
    margin: 0 !important;
}*/

.fixed-table-container thead th .sortable {
    display: inline-flex !important;
    align-items: center !important;
    position: relative !important;
    width: auto !important;
    max-width: 100% !important;
    color: #fff !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    text-decoration: none !important;
}

/*.bootstrap-table .fixed-table-container .table thead th .desc {
    background-image: none !important;
}


.bootstrap-table .fixed-table-container .table thead th .asc {
    background-image: none !important;
}*/

.fixed-table-container thead th .sortable::after {
    content: "▲\A▼" !important;
    white-space: pre !important;
    display: inline-block !important;
    transform: translateY(-2px) !important;
    vertical-align: middle !important;
    font-size: 8px !important;
    line-height: 9px !important;
    /*margin-left: 5px !important;*/
    color: rgba(255, 255, 255, 0.3) !important;
    font-weight: bold !important;
}

.bootstrap-table .fixed-table-container thead th .sortable::before,
.bootstrap-table .fixed-table-container thead th .sortable::after {
    position: absolute !important;
    right: 10px !important;
    left: auto !important;
    display: block !important;
}

.bootstrap-table .fixed-table-container thead th .sortable::before {
    bottom: 6px !important;
}

.fixed-table-container th.sortable .th-inner {
    display: inline-flex !important;
    align-items: center !important;
}

/* Ordem Crescente */
.bootstrap-table .table>thead>tr>th.asc .sortable::after,
.bootstrap-table .table>thead>tr>th .sortable.asc::after {
    content: "▲" !important;
    color: #FFFFFF !important;
    opacity: 1 !important;
    font-size: 8px !important;
}

/* Ordem Decrescente */
.bootstrap-table .table>thead>tr>th.desc .sortable::after,
.bootstrap-table .table>thead>tr>th .sortable.desc::after {
    content: "▼" !important;
    color: #FFFFFF !important;
    opacity: 1 !important;
    font-size: 8px !important;
}


.fixed-table-container thead th .th-inner {
    overflow: visible !important;
}

/* ================================================= */
/* CONFIGURAÇÃO DO CORPO DA TABELA (TBODY)           */
/* ================================================= */

/* Remove o efeito de espaçamento de "cards" para permitir a borda contínua */


/* remove possíveis linhas fantasmas */

.bootstrap-table .table {
    width: 100% !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    background-color: #fff !important;
    table-layout: auto !important;
    border: none !important;
    margin-bottom: 25x !important;
}

.bootstrap-table .table>tbody>tr {
    background: #ffffff !important;
    box-shadow: none !important;
    /* Remove o sombreado que você não quer */
    border-radius: 0 !important;
    /* Remove arredondamento das linhas */
}


/* Remove arredondamentos específicos das células que existiam nos cards */
.bootstrap-table .table>tbody>tr>td:first-child,
.bootstrap-table .table>tbody>tr>td:last-child {
    border-radius: 0 !important;
}

/* Opcional: Remove a borda do topo da primeira linha para não colidir com o header */
.bootstrap-table .table>tbody>tr:first-child>td {
    border-top: none !important;
}

/* 2. Estilo das "Bolinhas" (Links da Paginação) */
.pagination>li>a,
.pagination>li>span {
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 50% !important;
    /* Formato circular */
    border: 1px solid #ddd !important;
    /* Borda cinza claro */
    background-color: #ffffff !important;
    color: #555 !important;
    margin: 0 3px !important;
    /* Espaçamento entre as bolinhas */
    transition: all 0.2s ease;
}

/* 3. Hover apenas nas bolinhas que NÃO estão ativas */
/* O seletor :not(.active) garante que o estilo só mude nas outras */
.pagination>li:not(.active)>a:hover,
.pagination>li:not(.active)>span:hover {
    background-color: #eeeeee !important;
    /* Cinza claro dentro */
    border-color: #ccc !important;
    color: #333 !important;
}

/* 4. Seletor de Registros por Página (Dropdown/Input) */
/* Envolve o seletor em um quadrado conforme solicitado */
.fixed-table-pagination .page-list .btn-group .dropdown-toggle {
    border: 1px solid #ddd !important;
    background-color: #fff !important;
    border-radius: 0px !important;
    padding: 10px !important;
    font-size: 14px !important;
    color: #333 !important;
    display: flex !important;
    align-items: center !important;
    height: 34px !important;
    margin-right: 8px !important;
}

/*5 Garante que o texto ao lado do seletor tenha a fonte certa */
.fixed-table-pagination .pagination-info,
.fixed-table-pagination .page-list {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    color: #555 !important;
    line-height: 34px !important;
    display: flex !important;
    align-items: center !important;
}

/*** setinhas da paginação **/

/* 1. Estilo base das Setas de Navegação */
.pagination>.page-first>a,
.pagination>.page-pre>a,
.pagination>.page-next>a,
.pagination>.page-last>a {
    border: none !important;
    /* Remove a borda circular */
    background: transparent !important;
    /* Garante fundo transparente */
    color: #6B7280 !important;
    /* Cor padrão solicitada */
    font-family: 'Open Sans', sans-serif !important;
    font-size: 22px !important;
    width: auto !important;
    /* Remove a largura fixa de bolinha */
    height: 34px !important;
    margin: 0 8px !important;
    /* 2px de cada lado = 4px de espaço entre elas */
    transition: color 0.2s ease !important;
    box-shadow: none !important;
    /* Garante que não apareça sombra */
    transform: translateY(-3px);
}

/* 2. Hover das Setas (FORÇANDO a cor) */
/* Usamos seletores combinados para garantir que o CSS vença qualquer outra regra */
.fixed-table-pagination .pagination>li.page-first>a:hover,
.fixed-table-pagination .pagination>li.page-pre>a:hover,
.fixed-table-pagination .pagination>li.page-next>a:hover,
.fixed-table-pagination .pagination>li.page-last>a:hover {
    color: #4a6cf7 !important;
    /* Azul no hover */
    background-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* 3. Ajuste de espaçamento específico entre as setas e as bolinhas */
/* Se quiser que o grupo de setas fique colado */
.pagination>li.page-pre {
    margin-right: 2px !important;
}

.pagination>li.page-next {
    margin-left: 2px !important;
}

/* 4. Reset para as bolinhas numéricas não serem afetadas */
/* (Mantendo o que já fizemos antes para os números) */
.pagination>li:not(.page-first):not(.page-pre):not(.page-next):not(.page-last):not(.active)>a:hover {
    background-color: #eeeeee !important;
    /* O cinza continua apenas nos números */
}

/* Ajuste específico no SELECT (o quadrado de registros) */
.fixed-table-pagination .page-list .btn-group {
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle !important;
}

.fixed-table-pagination span.page-list {
    position: relative;
    top: 0px;
    /* Ajuste aqui se precisar subir ou descer 1px (ex: -1px) */
}

.fixed-table-pagination .pagination-detail,
.fixed-table-pagination .pagination,
.fixed-table-pagination .page-list {
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle !important;
    /*margin: 0 !important;*/
    line-height: 1 !important;
    height: 34px !important;
    margin-top: -2px;
}

.bootstrap-table .table>thead>tr>th .th-inner {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    display: flex !important;
    align-items: center !important;
    height: 55px !important;
    padding: 0 30px 0 15px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    justify-content: flex-start !important;
    line-height: 1 !important;
    overflow: visible !important;
}

/*.bootstrap-table .table>tbody>tr>td {
    padding: 14px 16px !important;
    color: #2B2B2B !important;
    vertical-align: middle !important;
    border-top: 1px solid #ddd !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 1px;
    width: auto;
}*/

.bootstrap-table .table>tbody>tr>td {
    padding: 14px 16px !important;
    color: #2B2B2B !important;
    vertical-align: middle !important;
    border-top: 1px solid #ddd !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    /*max-width: 150px;*/
    max-width: none !important;
    width: auto;
}

.bootstrap-table .table>tbody>tr>td:first-child,
.bootstrap-table .table>thead>tr>th:first-child {
    width: 25% !important;
    /* Exemplo: Corretora ganha 25% da largura total */
}

.bootstrap-table .table>tbody>tr>td:last-child {
    width: 100px !important;
}

/* Ajusta a célula que contém a imagem */
.bootstrap-table .table>tbody>tr>td img {
    max-height: 80px !important;
    /* Define um teto para a imagem não esticar a linha */
    width: auto !important;
    /* Mantém a proporção */
    display: block !important;
    margin: 0 auto !important;
    /* Centraliza se necessário */
    object-fit: contain !important;
    /* Garante que a imagem caiba no quadro sem cortar */
}

/* Garante que a célula da imagem não tenha paddings que esmaguem a foto */
.bootstrap-table .table>tbody>tr>td:has(img) {
    padding: 5px !important;
    vertical-align: middle !important;
}