:root {
    /* 1. Defina sua cor principal aqui */
    --sf-primary-color: #054594 !important;
    /* 2. Defina a cor de Hover (um pouco mais escura) */
    --sf-primary-hover-color: #a6cff7 !important;
    /* 3. Ajuste para textos sobre a cor principal (geralmente branco) */
    --sf-primary-text-color: #ffffff !important;
}

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.table th {
    text-align: center;
    background-color: #325D88;
    color: white;
    align-content: center;
    align-items: center;
}

.e-columnheader  {
    text-align: center;
    background-color: #325D88 !important;
    color: white;
    align-content: center;
    align-items: center;
}
.e-headercell {
    background-color: #325D88 !important;
}

.e-grid  {
    overflow: visible !important;
    border-radius: 10px; /* Mant�m a borda no container pai */
}
.e-columnheader {
    overflow: visible !important;
    border-radius: 10px; /* Mant�m a borda no container pai */
}

/* Altura inicial do corpo do grid calculada dinamicamente em JS (site.js) at� o fim
   da �rea vis�vel da p�gina, mantendo a barra de rolagem horizontal sempre vis�vel.
   "resize: vertical" deixa o usu�rio arrastar o canto inferior direito para ajustar
   o tamanho manualmente quando quiser. */
.e-grid .e-gridcontent .e-content {
    overflow-x: auto !important;
    overflow-y: auto !important;
    resize: vertical;
    min-height: 150px;
}

.table {
    border-collapse: separate; /* Altere para 'separate' para respeitar o border-radius */
    border-spacing: 0; /* Remove os espa�amentos entre c�lulas */
    border-radius: 10px; /* Aplica bordas arredondadas */
    overflow: hidden; /* Garante que o conte�do seja cortado nas bordas */
    vertical-align: middle;
    /*  border: 1px solid #ddd; /* Borda ao redor da tabela */
}

/* Bot�es Primary */
.e-btn.e-primary, .e-css.e-btn.e-primary {
    color: var(--sf-primary-color) !important;
}

    .e-btn.e-primary:hover, .e-css.e-btn.e-primary:hover {
        background-color: var(--sf-primary-hover-color) !important;
        border-color: var(--sf-primary-hover-color) !important;
    }

/* Checkbox e Radio Buttons */
.e-checkbox-wrapper .e-frame.e-check,
.e-css.e-checkbox-wrapper .e-frame.e-check {
    background-color: var(--sf-primary-color) !important;
    border-color: var(--sf-primary-color) !important;
}

/* Sele��o de Linha no Grid */
.e-grid .e-selectionbackground {
    /* Uma vers�o bem clara da sua cor para o fundo da sele��o */
    background-color: rgba(255, 102, 0, 0.15) !important;
}

.e-grid .e-rowcell.e-selectionbackground {
    color: #000 !important; /* Mant�m texto preto na sele��o */
}

/* Pagina��o do Grid (N�mero ativo) */
.e-grid .e-pager .e-currentitem {
    background-color: var(--sf-primary-color) !important;
    color: var(--sf-primary-text-color) !important;
}

.e-grid .e-excelfilter .e-menu-item{
    font-size: 0.8rem !important;
}
.e-excel-menu .e-menu-item{
    font-size: 0.8rem !important;
}

.sf-grid-export{
    height: 1.8rem !important;
    margin-top: -30px !important;
    margin-bottom: -15px !important;
}


.e-grid .e-headercell .e-headertext {
    display: block;
    width: 100%;
    text-align: center !important;
    font-size: 0.75rem !important;
}

.e-grid .e-rowcell {
    font-size: 0.75rem !important;
}


.e-grid .e-row {
    height: 37px !important; /* Set your desired small height */
}

.e-grid .e-rowcell {
    font-size: 0.75rem !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: normal !important; /* Allows the cell to shrink below theme defaults */
    height: 37px !important; 
}

.e-grid .e-gridhover,
.e-grid .e-row:hover .e-rowcell {
    background-color: rgba(50, 93, 136, 0.18) !important;
}

a{
    color: var(--sf-primary-color) ;
}

/* Syncfusion - foco: linha animada ao clicar no input (Material theme) */
.e-input-group:not(.e-float-icon-left):not(.e-success):not(.e-warning):not(.e-error).e-input-focus::before,
.e-input-group:not(.e-float-icon-left):not(.e-success):not(.e-warning):not(.e-error).e-input-focus::after,
.e-float-input:not(.e-success):not(.e-warning):not(.e-error).e-input-focus::before,
.e-float-input:not(.e-success):not(.e-warning):not(.e-error).e-input-focus::after {
    background: #325D88 !important;
}

/* Syncfusion - label flutuante quando o campo está focado ou preenchido */
.e-float-input:not(.e-error):not(.e-success):not(.e-warning) .e-float-text.e-label-top,
.e-float-input.e-input-focus:not(.e-error) .e-float-text {
    color: #325D88 !important;
}

/* Syncfusion - item ativo/selecionado no dropdown e combobox */
.e-dropdownbase .e-list-item.e-active,
.e-dropdownbase .e-list-item.e-active.e-hover,
.e-dropdownbase .e-list-item.e-active.e-item-focus {
    color: #325D88 !important;
    background-color: rgba(50, 93, 136, 0.12) !important;
}

/* Syncfusion - chip/tag no MultiSelect */
.e-multi-select-wrapper .e-chips {
    background-color: #325D88 !important;
}

/* Syncfusion - estado de erro/validação: substitui vermelho por #325D88 */
.e-input-group.e-error,
.e-input-group.e-error:not(.e-float-icon-left),
.e-float-input.e-error,
.e-float-input.e-error:not(.e-input-group) {
    border-color: #325D88 !important;
}

.e-input-group.e-error::before,
.e-input-group.e-error::after,
.e-float-input.e-error::before,
.e-float-input.e-error::after {
    background: #325D88 !important;
}

.e-float-input.e-error .e-float-text,
.e-float-input.e-error label.e-float-text,
.e-input-group.e-error .e-input-group-icon {
    color: #325D88 !important;
}

/* Dropdown/ComboBox em estado de erro */
.e-dropdownlist.e-input-group.e-error,
.e-combobox.e-input-group.e-error {
    border-color: #325D88 !important;
}

/* Mensagem de erro (e-error inline text) */
.e-error,
span.e-error {
    color: #325D88 !important;
}