/* Container do grid */
#vigencia_lancamento_info {
    width: 100%;             /* ocupa toda a largura da tela */
    max-width: 100%;       /* mas não ultrapassa 1200px */
    overflow-x: auto;        /* barra de rolagem horizontal se necessário */
    margin: 0;               /* mantém alinhado à esquerda */
}

/* Grid interno */
.grid-vigencia-lancamento {
    width: max-content;      /* permite que a tabela cresça além do container */
    min-width: 100%;         /* garante que ocupe 100% do container se menor que 1200px */
    border-collapse: collapse;
}

/* Evita quebra de linha nas células */
.grid-vigencia-lancamento th,
.grid-vigencia-lancamento td {
    white-space: nowrap;
}



/* ================================================== */
/* Campos de filtro no topo */
/* ================================================== */

/* Campo ANO */
#ff_9_ano_vigencia_contabilidade {
  border-radius: 10px;
  border: 1px solid rgba(159,0,251,1);
  padding: 4px;
  font-size: 14px;
  background-color: #fff;
  box-sizing: border-box;
  text-align: center;
  width: 20ch;
  font-weight: 700;
}

/* Label do campo ANO */
#label_ff_9_ano_vigencia_contabilidade {
  color: rgba(159,0,251,0.85);
  font-weight: 600;
}

/* Campo PERÍODO */
#ff_9_periodo_vigencia_contabilidade {
  border-radius: 10px;
  border: 1px solid rgba(159,0,251,1);
  padding: 4px;
  font-size: 14px;
  background-color: #fff;
  box-sizing: border-box;
  text-align: center;
  width: 20ch;
  font-weight: 700;
}

/* Label do campo PERÍODO */
#label_ff_9_periodo_vigencia_contabilidade {
  color: rgba(159,0,251,0.85);
  font-weight: 600;
}

/* Campo CONTABILIDADE */
#ff_9_id_contabilidade_vigencia {
  border-radius: 10px;
  border: 1px solid rgba(159,0,251,1);
  padding: 4px;
  font-size: 14px;
  background-color: #fff;
  box-sizing: border-box;
  text-align: left;
  width: 40ch;
  font-weight: 700;
}

/* Label do campo CONTABILIDADE */
#label_ff_9_id_contabilidade_vigencia {
  color: rgba(159,0,251,0.85);
  font-weight: 600;
}

/* ================================================== */
/* Grid de Vigência */
/* ================================================== */
.grid-vigencia-lancamento {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
    font-size: 14px;
    margin-top: 10px;
}

.grid-vigencia-lancamento th,
.grid-vigencia-lancamento td {
    border: 1px solid #ccc;
    padding: 6px 8px;
    vertical-align: middle;
    text-align: left;
    font-weight: bold;
}

.grid-vigencia-lancamento th {
    background-color: rgba(159,0,251,0.1);
    color: rgba(159,0,251,0.85);
    text-align: center;
    border-radius: 6px;
}

/* Hover linha */
.grid-vigencia-lancamento tbody tr:hover {
    background-color: rgba(159,0,251,0.05);
}

/* Inputs e selects dentro do grid */
.grid-vigencia-lancamento td input,
.grid-vigencia-lancamento td select,
.grid-vigencia-lancamento td textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 4px;
    font-size: 13px;
    font-family: inherit;
}

/* =============================== */
/* Campos cd_* com 30 caracteres */
/* =============================== */
.grid-vigencia-lancamento select.select-cd {
    width: 30ch;
    max-width: 100%;
}

/* Cabeçalhos cd_* */
.grid-vigencia-lancamento th.cd-th {
    width: 30ch;
    text-align: center;
}

/* ================================================== */
/* Cabeçalho e célula Funcionário Lançamento */
.grid-vigencia-lancamento th.funcionario-th {
    width: 100ch;        /* largura do cabeçalho */
    max-width: 100ch;
    text-align: center;
}

.grid-vigencia-lancamento td select#id_funcionario_lancamento {
    width: 100%;          /* ocupa toda a célula */
    min-width: 100ch;     /* garante largura mínima */
    max-width: 100ch;
    box-sizing: border-box;
    font-weight: bold;
    font-size: 13px;
}


/* =============================== */
/* Checkboxes centralizados */
/* =============================== */
.grid-vigencia-lancamento td input[type="checkbox"] {
    display: block;
    margin: 0 auto;
    width: auto;
}

/* =============================== */
/* Campos numéricos alinhados à direita */
/* =============================== */
.grid-vigencia-lancamento td input[type="number"] {
    text-align: right;
}

/* =============================== */
/* Campos Observação maiores (40ch × 4 linhas) */
/* =============================== */
.grid-vigencia-lancamento td textarea.observacao {
    width: 40ch;
    height: 4em;
    resize: vertical;
    box-sizing: border-box;
    padding: 4px;
    font-size: 13px;
}

/* =============================== */
/* Inputs date centralizados */
/* =============================== */
.grid-vigencia-lancamento td input[type="date"] {
    text-align: center;
}

/* =============================== */
/* Mensagem "nenhum registro encontrado" */
/* =============================== */
#vigencia_lancamento_info p {
    font-style: italic;
    color: #555;
    padding: 10px;
}

/* =============================== */
/* Toast de usuário */
/* =============================== */
#toast-container div {
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3;
}
