/* Centralizar os botões lateralmente */
.list-group, .mt-4 {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
}

/* Estilo para os botões laterais */
.list-group-item {
    background-color: #f8f9fa;
    border: 1px solid #ddd;
    margin-bottom: 5px;
    padding: 10px;
    text-align: center;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
    width: 100%;
}

.list-group-item:hover {
    background-color: #e2e6ea;
}

/* Melhorar o alinhamento dos títulos */
h5 {
    margin-bottom: 12px;
    font-weight: bold;
    text-align: center;
}

/* Wrapper da tabela com altura fixa para permitir rolagem */
.table-wrapper {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid #ddd;
    position: relative;
}

/* Estilos para as tabelas */
.table {
    width: 100%;
    margin-bottom: 20px;
    table-layout: fixed;
}

.table th, .table td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: center;
    word-wrap: break-word;
    vertical-align: middle;
    min-width: 80px;
}

.table th, .table td {
    font-size: 0.85rem; /* Ajuste o valor conforme desejado, menor que 1rem para reduzir */
    padding: 6px; /* Ajuste o padding se necessário para compactar mais */
}

.table-wrapper-health th, .table-wrapper-health td {
    font-size: 0.85rem; /* Ajuste o valor conforme desejado */
    padding: 6px;
}

/* Fixar o cabeçalho no topo da tabela ao rolar */
.table th {
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: #f8f9fa !important; /* Adicionado !important para garantir que o background-color seja mantido */
    color: #333;
    border-bottom: 1px solid #ddd; /* Alterar a cor da borda inferior do cabeçalho */
    text-transform: uppercase;
    font-weight: bold;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
}

/* Garantir que o conteúdo da tabela não sobreponha o cabeçalho */
.table tbody tr {
    z-index: 1;
}

/* Alternar as cores das linhas */
.table tbody tr:nth-child(even) {
    background-color: #f2f2f2;
}

/* Remover a barra de rolagem visível */
.table-wrapper::-webkit-scrollbar {
    display: none;
}

.form-label {
    margin-bottom: 5px;
}

.form-control {
    padding: 5px;
    font-size: 0.9rem;
}

.form-check-label, .form-select, .form-control {
    font-size: 0.9rem;
    padding: 5px;
}

/* Estilo para organizar campos do formulário em duas colunas */
.form-row {
    display: flex;
    justify-content: space-between;
}

.form-column {
    flex: 1; /* Iguala a largura de todas as colunas */
    padding: 0 10px; /* Adiciona espaço entre as colunas */
}


/* Estilo para as opções de status */
fieldset {
    border: 1px solid #ddd;
    padding: 10px;
}

legend {
    font-weight: bold;
    font-size: 1rem;
}

/* Estilo dos campos de input */
.form-control {
    border-radius: 5px;
    border: 1px solid #ccc;
}

/* Tabela de registro de saúde */
.table-wrapper-health {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid #ddd;
    position: relative;
}

.table-wrapper-health::-webkit-scrollbar {
    display: none;
}

.semen-form {
    margin: 20px 0;
    padding: 10px;
    border: 1px solid #ddd;
    background-color: #f8f9fa;
}

/* Reduz o tamanho das caixas de texto e o espaçamento */
.semen-form .form-control {
    font-size: 0.8rem; /* Reduz o tamanho da fonte */
    padding: 3px; /* Reduz o padding interno */
    margin-bottom: 3px; /* Reduz o espaçamento entre os campos */
    max-width: 250px; /* Define uma largura máxima */
}

/* Reduz o tamanho da fonte e o espaçamento entre os rótulos */
.semen-form .form-label {
    font-size: 0.8rem; /* Tamanho menor para os rótulos */
    margin-bottom: 3px; /* Reduz o espaço entre o rótulo e o campo */
}

/* Ajuste na seção de status */
.ejaculation-status {
    border: none; /* Remove a borda */
    padding: 0px; /* Reduz o padding interno */
    width: 200px; /* Define uma largura menor */
}

.ejaculation-status legend {
    font-size: 0.9rem; /* Reduz o tamanho da fonte do título */
    margin-bottom: 5px;
}

.ejaculation-status .form-check-label {
    font-size: 0.8rem; /* Tamanho menor para as labels das opções */
}

.ejaculation-status .form-check {
    margin-bottom: 3px; /* Menor espaço entre as opções */
}

.container-fluid .table th, 
.container-fluid .table td, 
.container-fluid .table-wrapper-health th, 
.container-fluid .table-wrapper-health td {
    font-size: 0.78rem !important; /* Usa !important para garantir que o estilo seja aplicado */
    padding: 6px !important; /* Ajuste o padding se necessário */
}

.btn-sm {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
    border-radius: 0.2rem;
}

.button-container {
    display: flex;
    justify-content: flex-end; /* Alinha o conteúdo à direita */
    padding: 10px 0; /* Adiciona um pouco de espaço acima e abaixo do botão */
}

.button-container button {
    margin-right: 15px; /* Adiciona espaço entre os botões */
}

.form-check-inline {
    display: inline-flex;
    align-items: center;
    margin-right: 10px; /* Espaço entre os checkboxes */
    margin-top: 25px; /* Adiciona espaço acima dos checkboxes */
    margin-bottom: 5px;
}

.button-container-top {
    display: flex;
    justify-content: flex-start; /* Alinha os botões à esquerda */
    margin-top: 20px; /* Espaçamento acima dos botões */
    margin-bottom: 10px; /* Reduz o espaçamento antes do início do formulário */
}

.button-container-top button {
    margin-right: 10px; /* Espaço entre os botões */
}

.list-group-item i {
    margin-right: 5px; /* Espaço à direita do ícone */
    font-size: 1.2em; /* Tamanho do ícone */
}

.radio-group {
    display: flex;
    flex-direction: column;
}

.form-check-label {
    margin-bottom: 10px; /* Espaço entre os controles */
}
