body {
    font-family: Arial, sans-serif;
    background-color: #ffffff; /* Branco */
    margin: 0;
    padding: 0;
    color: #333; /* Texto em cinza escuro */
}

.container {
    margin-top: 50px;
}

.jumbotron {
    background-color: #fff3e0; /* Laranja Claro Suave */
    padding: 2rem 1rem;
    border-radius: .3rem;
}

.jumbotron .display-4, .jumbotron .lead {
    color: #ff8f00; /* Laranja Médio */
}

.carousel-item img {
    height: 400px;
    object-fit: cover;
}

h2, h3 {
    text-align: center;
    margin-bottom: 20px;
    color: #ff6f00; /* Laranja Escuro */
}

.form-group {
    margin-bottom: 15px;
}

.table {
    margin-top: 20px;
}

.btn-primary {
    background-color: #15497b; /* Laranja Médio */
    border-color: #15497b;
}

.btn-primary:hover {
    background-color: #ffa726; /* Laranja Claro */
    border-color: #ffa726;
}

.text-success {
    color: #388e3c; /* Verde Escuro */
}

.text-danger {
    color: #d32f2f; /* Vermelho Escuro */
}

.navbar {
    background-color: #ffffff; /* Branco */
    border-bottom: 2px solid #15497b; /* Laranja Médio */
}

.navbar .navbar-brand, .navbar .nav-link {
    color: #0066ff; /* Laranja Médio */
    font-size: 1.2rem; /* Aumenta o tamanho da fonte */
    font-family: 'Segoe UI';
}

.navbar .nav-link:hover {
    color: #0400ff; /* Laranja Escuro */
}

.dropdown-menu {
    background-color: #ffffff; /* Branco */
    border: 1px solid #15497b; /* Laranja Médio */
}

.dropdown-item {
    color: #15497b; /* Laranja Médio */
    font-size: 1rem; /* Aumenta o tamanho da fonte */
}

.dropdown-item:hover {
    background-color: #ffe0b2; /* Laranja Muito Claro */
    color: #15497b; /* Laranja Escuro */
}

.navbar-brand img {
    border-radius: 50%;
    width: 40px;
    height: 40px;
}

body, html {
    height: 100%;
    margin: 0;
}

.login-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    background-color: #ffffff; /* Branco */
}

.login-container {
    width: 100%;
    max-width: 400px;
    padding: 20px;
    background-color: white;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    text-align: center;
}

.login-container img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

.login-container h2 {
    margin-bottom: 20px;
    color: #15497b; /* Laranja Escuro */
}

.login-container .form-control {
    margin-bottom: 15px;
}

.table-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.table-actions .btn {
    margin-right: 10px;
}

.table-actions .btn:last-child {
    margin-right: 0;
}

.modal-header {
    background-color: #15497b; /* Laranja Médio */
    color: white;
}

.modal-footer .btn-secondary {
    background-color: #388e3c;
    border-color: #388e3c;
}

.modal-footer .btn-secondary:hover {
    background-color: #4caf50;
    border-color: #4caf50;
}

/* Remove o sublinhado dos links */
a {
    text-decoration: none;
    color: inherit;
}

/* Efeito hover para links */
a:hover {
    text-decoration: underline;
    color: #007bff;
}

/* Ajuste para a tabela */
.table-column-bordered td, 
.table-column-bordered th {
    border-left: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
    padding: 4px; /* Reduz o preenchimento para compactar as colunas */
    text-align: left; /* Alinhamento à esquerda */
    white-space: nowrap; /* Impede quebra de linha */
    overflow: hidden; /* Esconde o conteúdo que exceder a largura da célula */
    text-overflow: ellipsis; /* Mostra reticências se o conteúdo for muito longo */
    max-width: 120px; /* Limita a largura máxima das colunas */
}

/* Definir largura mínima e máxima para as colunas */
.table-column-bordered th {
    max-width: 150px; /* Define largura máxima para cabeçalhos */
    min-width: 200px; /* Define uma largura mínima */
}

/* Remover as bordas horizontais entre as linhas */
.table-column-bordered tr td,
.table-column-bordered tr th {
    border-top: none;
    border-bottom: none;
}

/* Estilo de receitas */
.receita {
    font-weight: bold;
}

/* Estilo de despesas */
.despesa {
    font-weight: bold;
}

/* Estilo de receitas */
.receita_valor {
    color: black;
}

/* Estilo de despesas */
.despesa_valor {
    color: black;
}

.descricao {
    padding-left: 40px;
    text-transform: none; 
    font-size: 13px; 
    font-weight: normal; 
} 

.descricao_valor {
    text-transform: none; 
    font-size: 13px; 
    font-weight: normal; 
} 

/* Estilo para saldo parcial */
.saldo-parcial {
    background-color: #dddddd; 
    font-weight: bold; 
    font-size: 13px
}

/* Estilo para saldo final */
.saldo-final {
    background-color: #dddddd; 
    font-weight: bold; 
    font-size: 13px
}

/* Estilo para descrições de receitas */
.descricao_receita {
    font-weight: bold;
    background-color: #f0f0f0;
    color: darkblue;
}

/* Estilo para descrições de despesas */
.descricao_despesa {
    font-weight: bold;
    background-color: #f0f0f0;
    color: crimson;
}

/* Estilo para descrições de saldo */
.descricao_saldo {
    font-weight: bold;
    background-color: #f0f0f0;
    color: dimgray;
}

/* Oculta as descrições de detalhe por padrão */
.descricao_detalhe {
    display: none;
}

/* Estilo para grupos com negrito */
.grupo_receita, .grupo_despesa {
    font-weight: bold;
}

/* Estilo para descrições com fonte simples */
.descricao_detalhe {
    font-weight: normal;
}

.filtros_fluxo {
    border: 1px solid #e8e8e8;
    border-radius: 2px;
    margin-top: 15px;
    margin-bottom: 10px;
    border-top-width: 4px;
}

.tr_total {
    position: sticky;
    background-color: #e9ecef;
    z-index: 10;
    font-weight: bold;
    bottom: 0; /* Fixa no rodapé ao rolar para cima */
}

.td_total {
    position: sticky;
    background-color: #e9ecef;
    z-index: 10;
    font-weight: bold;
    bottom: 0; /* Fixa no rodapé ao rolar para cima */;
}