/* Geral para todas as tabelas */
table {
    background-color: #fff;
    overflow: hidden;
    border-radius: 10px;
}

table th {
    background-color: #D7AC8C !important;
    text-transform: uppercase;
}

table td {
    background-color: #faf3eb !important;
    vertical-align: middle;
    transition: background-color 0.3s;
    border-radius: 5px;
}

table td:hover {
    background-color: #ebddce !important;
}

table a {
    color: #060690;
    text-decoration: none;
    font-weight: 500;
    display: block;
}

table a:hover {
    text-decoration: underline;
    color: #aa1916;
}

ul li {
    text-align: justify;
}

h1 {
    color: #272727;
    font-size: 2.3rem;
}

.table.tabela-custom {
    border-collapse: separate;
    border-spacing: 0;
}

.table.tabela-custom th,
.table.tabela-custom td {
    border: 2px solid #ffffff;
}

.descontinuado {
    font-size: 14px;
    color: #060690;
}

.base100 {
    font-style: italic;
    font-size: 16px;
    color: #004000;
}

.vermelho {
    color: #aa1916;
}

.subtitulo {
    font-size: 1.25rem;
    color: #060690 !important;
}

/* Permite o sticky funcionar */
.table-responsive {
    position: relative;
    overflow-x: auto !important;
    overflow-y: visible !important;
}

/* Remove overflow do Bootstrap que quebra o sticky */
.table-responsive>table {
    overflow: visible !important;
}

/* Corrige colapso de bordas */
.tabela-custom {
    border-collapse: separate !important;
    border-spacing: 0;
}

/* Fixa primeira coluna */
.tabela-custom td:first-child,
.tabela-custom th:first-child {
    position: sticky !important;
    left: 0;
    background: #fff;
    z-index: 20;
}

/* Fixa o cabeçalho */
.tabela-custom thead th {
    position: sticky;
    top: 0;
    background: #d9baa3;
    /* sua cor */
    z-index: 30;
}


.table td,
.table th {
    vertical-align: middle;
}