/****************************************************************************************
*******************************  CONFIGURAÇÕES BARRA MENU  ******************************
****************************************************************************************/

/* ==================== GARANTE ALTURA TOTAL ==================== */
html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: Calibri, sans-serif;
}

/* ================= CABEÇALHO | BARRA DE BOTÕES ================= */
.menu-bar {
  display: flex;
  align-items: center;
  justify-content: flex-start; /* Garante alinhamento à esquerda */
  padding: 2px 0px;
  gap: 0px;
  margin-right: auto;
  text-align: left !important;
  font-family: Calibri, sans-serif !important;
  font-size: 14px !important; /* Fonte padrão para os itens internos */
}

.menu-item {
  display: flex;
  align-items: center;
  padding: 0px 4px;
  transition: background-color 0.2s ease-in-out;
  border-radius: 0;
  margin: 0;
  font-family: inherit; /* Herdar dos pais */
  font-size: inherit; /* Herdar dos pais */
}

.menu-item.active {
  background-color: #000000;
}

.menu-link {
  text-decoration: none !important;
  color: black !important;
  font-weight: bold;
  padding: 0px 4px;
  font-family: inherit; /* Herdar dos pais */
  font-size: inherit; /* Herdar dos pais */
}

.menu-item.active .menu-link {
  color: white !important;
}

.menu-sep {
  display: flex;
  align-items: center;
  font-weight: bold;
  color: gray;
  user-select: none;
  padding: 0;
  margin: 0;
  font-family: inherit; /* Herdar dos pais */
  font-size: inherit; /* Herdar dos pais */
}

/* =================== IDENTIFICAÇÃO USUÁRIO =================== */
.user-login {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
}

/* === SÍMBOLO LOGOUT === */
.logout-icon {
  color: red !important;
  font-size: 11px;
  font-weight: bold;
  display: inline-block;
}

.logout-icon i {
  color: red !important;
}

.logout-icon:hover i {
  color: red !important;
}

/* ================== CABEÇALHO | BARRA EVENTOS ================== */
.barra-evento {
  background-color: #E6E7E8;
  font-family: Calibri, sans-serif;
  font-size: 14px;
  padding: 4px 10px;
  margin-top: 2px;
  width: 700px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 1px;
}

.evento-select {
  font-family: Calibri, sans-serif;
  font-size: 13px;
  color: black;
  border: none;
  background: white;
  width: 500px;
}

.zoom-controle {
  display: flex;
  align-items: center;
  gap: 6px;
}

.zoom-controle img {
  height: 13px;
  vertical-align: middle;
  cursor: pointer;
}

/****************************************************************************************
*********************************  CONFIGURAÇÕES FONTES  ********************************
****************************************************************************************/

/* ======================= TÍTULOS PADRÃO ======================= */
.titulo-form {
  font-size: 18px;
  font-weight: bold;
  margin-top: 20px;
  text-align: center;
}

.titulo {
  font-family: Calibri, sans-serif;
  color: #000000;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 20px auto;
}

/* ===================== TIPOGRAFIA PADRÃO ===================== */
.p1 {
  font-family: Calibri, sans-serif;
  color: #000000;
  font-size: 12px;
}

.p2 {
  font-family: Calibri, sans-serif;
  color: #000000;
  font-size: 14px;
}

.p3 {
  font-family: Calibri, sans-serif;
  color: #000000;
  font-size: 16px;
}

.p4 {
  font-family: Calibri, sans-serif;
  color: #000000;
  font-size: 18px;
}

.p_erro {
  font-family: Calibri, sans-serif;
  color: red;
  font-size: 16px;
  font-weight: bold;
}

.p_aviso {
  font-family: Calibri, sans-serif;
  color: #a00;
  font-size: 14px;
  text-align: center;
  font-style: italic;
  margin: 6px 0;
  font-weight: normal !important; /* neutraliza o bold de <th> */
  display: inline-block; /* evita colapsos esquisitos dentro de th */
}

table.menu-home th .p_aviso {
  display: block; /* p_aviso dentro de cabeçalho de tabela = garante quebra de linha abaixo do título */
  margin-top: 4px;
}

.p_ok {
  font-family: Calibri, sans-serif;
  color: black;
  font-size: 16px;
  font-weight: bold;
}

p {
  font-family: Calibri, sans-serif;
  color: #000000;
  font-size: 14px;
}

.tam_fixo {
  font-family: 'Courier New', monospace;
  font-size: 10pt;
}

/* =========================== LINKS =========================== */
a:link,
a:visited,
a:active {
  text-decoration: underline;
  color: black;
}

/****************************************************************************************
****************************  CONFIGURAÇÕES AVISOS/MENSAGENS  ***************************
****************************************************************************************/

/* ==================== MENSAGEM ERRO/SUCESSO ==================== */
/* Container padrão mensagens erro/sucesso */
.msg-container {
  max-width: 700px;
  width: 100%;
  margin: 10px auto;
  padding: 0 10px; /* proteção lateral em telas pequenas */
  text-align: center;
}

/* Padrão mensagens erro/sucesso */
.msg-box {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 2px;
  border: 1px solid;
}

/* Mensagem erro */
.msg-erro {
  background: #fdecea;
  color: #7a1c1c;
  border-color: #f5c2c7;
}

/* Mensagem sucesso */
.msg-sucesso {
  background: #eaf7ea;
  color: #1e4620;
  border-color: #b7e1b0;
}

/* Texto da mensagem (opcional, só pra semântica) */
.msg-texto {
  line-height: 1.2;
}

/* ==================== MENSAGEM MINI TOOLTIP ==================== */
/* Mini-tooltip flutuante (pode ser usado em qualquer página) */
.mtip {
  position: absolute;
  z-index: 99999;
  display: none;
  background: #fff;
  color: #000;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 6px 8px;
  font: 12px/1.3 Calibri, Arial, sans-serif;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
  max-width: 420px;
  white-space: normal;
  word-break: break-word;
}

/* ============= MENSAGEM AVISO DE IMPRESSÃO PADRÃO ============= */
#aviso-impressao {
  color: red;
  font-weight: bold;
  display: none;
  text-align: center;
  margin: 10px auto;
  max-width: 700px;
}

/* Overlay do popup | fundo escurecido + centralização) -    Abre via classe .is-open (JS) */
.popup-aviso{
  display: none; /* fechado por padrão */
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.35);
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.popup-aviso.is-open{
  display: flex; /* abre e centraliza */
}

/* caixa branca do popup */
.popup-conteudo{
  background: #ffffff;
  border-radius: 10px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
  max-width: 380px;
  width: 92%;
  text-align: center;
  font-family: Calibri, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  padding: 18px 22px 16px;
  box-sizing: border-box;
}

/* título (ícone + texto centralizados) */
.popup-conteudo h3{
  margin: 0 0 14px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
  font-size: 16px !important;
  font-weight: bold;
}

/* lista de instruções (você usa <div> dentro do <ul>) */
.popup-conteudo ul{
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
}

.popup-conteudo ul > div{
  width: 100%;
  font-size: 14px;
  text-align: center;
  line-height: 1.4;
}

/* destaque em negrito */
.popup-conteudo strong {
  font-weight: bold;
}

/* botão OK */
.popup-conteudo .botao-gerar-imprimir{
  font-size: 12px;
  padding: 6px 16px;
  margin-top: 16px;
  margin-bottom: 6px;
}

/* garante que o popup fica acima de qualquer coisa com position */
.popup-aviso,
.popup-aviso *{
  box-sizing: border-box;
}

/****************************************************************************************
*********************************  CONFIGURAÇÕES BOTÕES  ********************************
****************************************************************************************/

/* ==================== BOTÃO-GERAR-IMPRIMIR ==================== */
.botao-gerar-imprimir {
  background-color: #000000;
  color: white;
  font-weight: bold;
  padding: 6px 14px;
  font-size: 12px;
  border: none;
  cursor: pointer;
}

/* Reforço para corrigir heranças estranhas */
body .botao-gerar-imprimir {
  font-size: 12px;
  font-family: Calibri, sans-serif;
}

/* ============== BOTÃO VOLTAR CENTRAL FINAL PÁGINA ============== */
.acoes-final {
  width: 800px;
  margin: 10px auto 20px;
  display: flex;
  justify-content: center;
}

.acoes-final-700 {
  width: 700px;
  margin: 10px auto 20px;
  display: flex;
  justify-content: center;
}

/****************************************************************************************
********************************  CONFIGURAÇÕES TABELAS  ********************************
****************************************************************************************/

/* ======= TABELA DE FORMULÁRIO CINZA: form-entrada-cinzas ======= */
table.form-entrada-cinzas {
  margin: 0 auto 20px auto;
  width: 700px;
  border-collapse: collapse;
  background: #f9f9f9;
  font-size: 14px;
  line-height: 1.0;
}

table.form-entrada-cinzas th,
table.form-entrada-cinzas td {
  border: 1px solid #ccc;
  padding: 6px 10px;
  text-align: left;
}

table.form-entrada-cinzas th {
  background-color: #eaeaea;
  font-weight: bold;
  width: 180px;
}

table.form-entrada-cinzas label {
  font-weight: bold; /* Rótulos em negrito */
}

table.form-entrada-cinzas td input.botao-gerar-imprimir {
  width: auto !important;
  float: right;
  display: inline-block;
  margin-top: 4px;
}

table.form-entrada-cinzas tr:last-child td[colspan] {
  background-color: #c0c0c0;
  text-align: right;
}

/* ========= TABELAS CENTRAIS PÁGINAS : tabela menu-home ========= */
table.menu-home {
  width: 700px;
  margin: 20px auto;
  border-collapse: collapse;
  background-color: #f9f9f9;
  font-size: 14px;
  line-height: 1.0;
  border: 1px solid #ccc;
}

table.menu-home th,
table.menu-home td {
  border: 1px solid #ccc;
  padding: 4px 8px;
  font-family: Calibri, sans-serif;
  text-align: left; /* Corrigido para alinhar à esquerda */
}

table.menu-home th {
  background-color: #eaeaea;
  font-weight: bold;
  text-align: left !important; /* força o alinhamento à esquerda */
}

/* ========== TABELAS PLANILHAS | tabela cinza e branca =========== */
table.clean {
  line-height: 1.0;
  border-collapse: collapse;
  width: 100%;
  margin: 10px auto;
  font-size: 14px;
  color: #000;
}

table.clean th {
  background-color: #eaeaea;
  font-weight: bold;
  text-align: center;
  border: 1px solid #ccc;
  padding: 4px 8px;
}

table.clean td {
  background-color: white;
  text-align: center;
  border: 1px solid #ccc;
  padding: 4px 8px;
}

/****************************************************************************************
*********************  CONFIGURAÇÕES TABELAS COM BARRAS DE ROLAGEM  *********************
****************************************************************************************/

/* ================== BARRA ROLAGEM HORIZONTAL ================== */
.table-scroll-x{
  width: 700px; /* ou 800px */
  max-width: 100%;
  overflow-x: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0 auto;
  border-radius: 6px;
}

table.clean.pivot{
  width: auto;       /* essencial pro overflow-x */
  min-width: 900px;  /* fallback; JS sobrescreve via data-min-w */
  margin-top: 0;     /* evita gap */
}

/* =================== BARRA ROLAGEM VERTICAL =================== */
.pivot-top-scroll{
  margin: 0 auto 6px auto;
}

#pivotTopInner{ height: 1px; }

/* ============= PIVOT "congelado" (linha 1 + coluna 1) ============= */
.pivot-wrap { /* rolagem dentro do container para permitir sticky */
  max-height: 700px;     /* ajuste livre */
  overflow-x: auto;
  overflow-y: auto;
  padding-right: 18px; /* evita “cortar” a última coluna quando aparece scrollbar vertical */
  box-sizing: border-box; /* garante que width definida via JS funcione como esperado */
}

/* Cabeçalho (linha 1) */
table.pivot tr:first-child th {
  position: sticky;
  top: 0;
  z-index: 30;
  background: #eaeaea;
}

/* Coluna 1 (Expositor) */
table.pivot .col-expositor {
  position: sticky;
  left: 0;
  z-index: 20;
  background: #f9f9f9;
}

/* Canto superior esquerdo */
table.pivot tr:first-child th.col-expositor {
  z-index: 40;
  background: #eaeaea;
}

/****************************************************************************************
*************************  CONFIGURAÇÕES CAMPOS DE FORMULÁRIOS  *************************
****************************************************************************************/

/* ======================== FORM-TEXT-AREA ========================*/
/* Campos de formulário: form-text-area */
select.form-text-area,
textarea.form-text-area,
input[type="text"].form-text-area,
input[type="email"].form-text-area,
input[type="number"].form-text-area,
input[type="date"].form-text-area,
input[type="time"].form-text-area,
input[type="password"].form-text-area {
  width: 100%;
  padding: 2px;
  font-size: 14px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #000; /* fonte preta */
}

/* Força o date a ter a mesma cara do .form-text-area */
input[type="date"].form-text-area {
  width: 100%;
  box-sizing: border-box;
  font-size: 14px;
  padding: 2px; /* similar ao textarea */
  height: 28px; /* ajuda a padronizar a altura */
  border: 1px solid #ccc !important;
  border-radius: 4px !important;
  background-color: #fff;
  color: #000;
  appearance: none; /* padrão */
  -webkit-appearance: none; /* Chrome/Safari */
  -moz-appearance: textfield; /* Firefox: remove o estilo nativo */
}

/* Ajusta o ícone/calendário do Chrome/Safari */
input[type="date"].form-text-area::-webkit-calendar-picker-indicator {
  cursor: pointer;
  opacity: .7;
  margin-right: 4px;
}

/* Remove o “inner spin” em alguns WebKit */
input[type="date"].form-text-area::-webkit-inner-spin-button,
input[type="date"].form-text-area::-webkit-clear-button {
  display: none;
}

/* Em alguns Firefox, ajuda a altura alinhar ao texto */
input[type="date"].form-text-area::-moz-focus-inner {
  border: 0;
}

/* =================== TEXTAREA COM DICA FIXA =================== */
/* mostra uma dica no canto inferior direito do <textarea> */
.textarea-container {
  position: relative;
  width: 100%;
}

.textarea-container .form-text-area {
  width: 100%;
  padding-right: 100px; /* reserva espaço para a dica */
  box-sizing: border-box;
}

.textarea-hint {
  position: absolute;
  bottom: 6px;
  right: 10px;
  font-size: 12px;
  color: #888;
  pointer-events: none; /* permite digitação normal */
}

/* ===================== INPUT COM DICA FIXA ===================== */
/* mostra uma dica fixa no lado direito de <input> */
.input-container {
  position: relative;
  width: 100%;
}

.input-container .form-text-area {
  width: 100%;
  padding-right: 100px; /* reserva espaço para a dica */
  box-sizing: border-box;
}

.input-hint {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  font-size: 12px;
  color: #888;
  pointer-events: none;
}

/* ==== VALIDAÇÃO DE FORMULÁRIO: campos com classe .validavel ==== */
/* borda vermelha se inválido (útil para múltiplos campos com validação) */
input.validavel:invalid {
  border: 1px solid red !important;
  outline: none;
  box-shadow: none !important;
}

/* ============================================================ */
/* =================== Utilitários Gerais ===================== */
/* ============================================================ */

/* Texto elíptico (corta com ...) */
.cell-ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Ícone pequeno de ação (editar/excluir etc.) */
.icon-acao {
  width: 17px;
  height: 17px;
  vertical-align: middle;
  cursor: pointer;
}

/****************************************************************************************
********************************  CONFIGURAÇÕES PÁGINAS  ********************************
****************************************************************************************/

/* ========================= EXPOSITORES ========================= */
/* Aba seleção: memberships / non-Memberships */
table.aba-selecao {
  width: 700px;
  margin: 0 auto 0 auto !important; /* margem inferior reduzida de 20px para 0 */
  border-collapse: collapse;
  font-family: Calibri, sans-serif;
}

table.aba-selecao td {
  width: 50%;
  padding: 5px;
  text-align: center;
  border: 1px solid #ccc;
  cursor: pointer;
  font-size: 14px; /* Aqui você ajusta o tamanho da fonte */
}

table.aba-selecao .ativo {
  background-color: #eaeaea;
  font-weight: bold;
  border: 2px solid #d3d3d3;
}

table.aba-selecao .inativo {
  background-color: #fafafa;
  border: 1px solid #d3d3d3;
}

/* ============ ALTERAÇÃO DADOS GATO: NOME E TÍTULOS ============ */
/* Checkbox títulos: alinhamento vários checkbox */
.titulos-prefixo-grid {
  display: grid;
  grid-template-columns: repeat(11, minmax(40px, 1fr));
  gap: 8px;
  align-items: start;
  justify-items: center;
}

.titulo-box {
  text-align: center;
}

.titulo-box label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
}

/* Checkbox títulos: anos */
.anos-wrap select {
  display: block;
  margin: 3px 0;
  width: 50px;
}

.linha-nome {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
}

.sufixos-wrap {
  text-align: center;
  margin-top: 8px;
}

.sufixos-wrap select {
  width: 50px !important;
  display: inline-block;
  margin: 0 3px;
}

.slim {
  width: 40px !important;
}

/* ================== RELATÓRIO GATOS INSCRITOS ================== */
table.menu-home.rel-inscricoes {
  width: 800px !important;
  font-size: 13px;
  table-layout: fixed;
  margin: 20px auto; /* mantém padrão */
  outline: 1px solid #ccc; /* desenha a borda externa da tabela */
  outline-offset: -1px; /* cola a outline na borda da tabela */
}

table.menu-home.rel-inscricoes th,
table.menu-home.rel-inscricoes td {
  text-align: center !important;
}

/* larguras das colunas (usadas no <colgroup>) */
table.menu-home.rel-inscricoes col.c-num {
  width: 50px !important;
}

table.menu-home.rel-inscricoes col.c-nome {
  width: 270px !important;
}

table.menu-home.rel-inscricoes col.c-show {
  width: 50px !important;
}

table.menu-home.rel-inscricoes col.c-classe {
  width: 60px !important;
}

table.menu-home.rel-inscricoes col.c-ems {
  width: 130px !important;
}

table.menu-home.rel-inscricoes col.c-chip {
  width: 110px !important;
}

table.menu-home.rel-inscricoes col.c-reg {
  width: 130px !important;
}

/* quando não existe coluna “Nº”: some a borda esquerda do primeiro th/td */
table.menu-home.rel-inscricoes:not(.has-num) tr>th:first-child,
table.menu-home.rel-inscricoes:not(.has-num) tr>td:first-child {
  border-left: 1px solid transparent !important;
}

/* barra de filtros do relatório */
.rel-insc-filtros {
  width: 800px;
  margin: 5px auto 10px;
  text-align: center;
}

.rel-insc-filtros .form-text-area {
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
  font-size: 12px;
}

.rel-insc-filtros .sel-show {
  width: 80px !important;
}

.rel-insc-filtros .sel-breed {
  width: 240px !important;
}

.rel-insc-filtros .sel-class {
  width: 100px !important;
}

.rel-insc-filtros .sel-cat {
  width: 80px !important;
}

/* Célula com botão de refresh e nome - Relatório Gatos Inscritos */
.nome-cell {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
}

.nome-cell img {
  width: 21px;
  height: 21px;
  cursor: pointer;
}

.nome-cell .nome-txt {
  flex: 1;
  text-align: center;
}

/* Mensagem Sucesso/Erro acima da tabela */
#msg-refresh {
  width: 800px;
  margin: 8px auto;
  text-align: center;
}

/* =========================== RAÇAS ============================ */
/* Cabeçalho preto (variação visual) */
table.menu-home.racas th.cat-head {
  font-size: 16px !important;
  text-align: center !important;
  background: #000 !important;
  color: #fff !important;
  letter-spacing: .3px;
  line-height: 1.6 !important;
  padding: 4px 8px !important;
}

/* Centraliza conteúdo de uma tabela menu-home quando precisar */
table.menu-home.center-all th,
table.menu-home.center-all td {
  text-align: center !important;
  vertical-align: middle !important;
}

/* larguras específicas usadas em racas.php */
table.menu-home.racas col.c-ems {
  width: 120px;
}

table.menu-home.racas col.c-desc {
  width: 360px;
}

table.menu-home.racas col.c-irm {
  width: 160px;
}

table.menu-home.racas col.c-ac {
  width: 60px;
}

/* Somente a PRIMEIRA tabela de raças logo após as abas fica sem margem-top */
table.aba-selecao+table.menu-home.racas {
  margin-top: 0 !important;
}

/* =========================== CORES ============================ */
/* Cabeçalho preto (variação visual) */
table.menu-home.cores th.cat-head {
  font-size: 16px !important;
  text-align: center !important;
  background: #000 !important;
  color: #fff !important;
  letter-spacing: .3px;
  line-height: 1.6 !important;
  padding: 4px 8px !important;
}

/* Divisores internos dos selects de raça */
select[name="raca"] option.divisor,
select[name="id_raca"] option.divisor {
  font-style: italic;
  font-weight: bold;
  color: #222;
}

/* Tabela de listagem de cores */
table.menu-home.cores {
  width: 700px;
  margin: 10px auto !important;
}

/* Remove o "estouro" de altura do EMS code */
table.menu-home.cores td p.tam_fixo {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.0 !important;
  display: block;
}

/* Coluna descrição centralizada */
table.menu-home.cores td.td-center {
  text-align: center !important;
}

/* ================ LISTA AUSENTES: rel_moderno ================ */
.rel_moderno {
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
  font-size: 14px;
}

.rel_moderno .header {
  display: flex;
  border: 2px solid black;
}

.rel_moderno .header-number {
  background-color: black;
  color: white;
  font-weight: bold;
  font-size: 15px;
  width: 35px;
  text-align: center;
  padding: 4px 0;
  border-right: 2px solid black;
}

.rel_moderno .header-name {
  background-color: #d3d3d3;
  color: black;
  font-weight: bold;
  padding: 4px;
  flex: 1;
}

.rel_moderno .cat-row {
  display: flex;
  border-left: 2px solid black;
  border-right: 2px solid black;
  border-bottom: 2px solid black;
}

.rel_moderno .cat-number {
  background-color: white;
  color: black;
  width: 35px;
  text-align: center;
  padding: 4px 0;
  border-right: 2px solid black;
}

.rel_moderno .cat-name {
  background-color: white;
  color: black;
  padding: 4px;
  flex: 1;
}

/* ================== RELATÓRIO STEWARD CONTROL ================= */
/* tabela preta e branca */
table.steward-control {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 10px;
  font-size: 16px;
}

table.steward-control th {
  background-color: black;
  color: white;
  font-weight: bold;
  text-align: center;
  padding: 5px;
  border: 2px solid black;
}

table.steward-control td {
  background-color: white;
  text-align: center;
  padding: 5px;
  border: 2px solid black;
}

/* campo inserir expositor responsável */
.linha-com-responsavel {
  background-color: #e6e6e6;
}

.nome-responsavel {
  font-size: 11px;
  font-style: italic;
  text-decoration: underline;
}

.input-responsavel {
  margin-top: 3px;
  width: 90%;
  font-size: 11px;
}

/* Duplicação conteúdo em colunas */
.container-duplicado {
  display: flex;
  justify-content: center;
  gap: 0;
  margin: 0;
  padding: 0;
}

.coluna {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
}

/************************************************************************************************************************************************************/
/************************************************************************************************************************************************************/
/********************************************************************** TABELAS ANTIGAS *********************************************************************/
/************************************************************************************************************************************************************/
/************************************************************************************************************************************************************/

/* LEGADO: manter apenas para compatibilidade com páginas antigas. Não reutilizar em novas implementações. */

  /* === TABELA: .tabela1 === */
  table.tabela1 {background: #d3d3d3; border: 0; margin-left: auto; margin-right: auto;}
  table.tabela1 td {background: #e8e8e8; font-family: Verdana, sans-serif; font-size: 12px; padding: 2px 2px 2px 2px;}
  table.tabela1 td.cab_bold {background: #c0c0c0; font-family: Verdana, sans-serif; font-size: 12px; font-weight: bold; padding: 2px 2px 2px 2px;}
  table.tabela1 td.cab {background: #c0c0c0; font-family: Verdana, sans-serif; font-size: 12px; padding: 2px 2px 2px 2px;}

  /* === TABELA: .rel === */
  table.rel {background: #d3d3d3; border: 0; width: 750px; margin-left: auto; margin-right: auto;}
  table.rel td {background: #e8e8e8; font-family: Verdana, sans-serif; font-size: 12px; padding: 2px 2px 2px 2px; height: 25px;}
  table.rel th {background: #c0c0c0; font-family: Verdana, sans-serif; font-size: 12px; font-weight: bold; padding: 2px; text-align: left;}

  /* === TABELA: .rel2 === */
  table.rel2 {background: #ffffff; border: 0; width: 850px; margin-left: auto; margin-right: auto;}
  table.rel2 td {background: #e8e8e8; font-family: Verdana, sans-serif; font-size: 12px; padding: 2px 2px 2px 2px; height: 25px;}
  table.rel2 th {background: #c0c0c0; font-family: Verdana, sans-serif; font-size: 12px; font-weight: bold; padding: 2px 2px 2px 2px; text-align: left;}

  /* === TABELA: .rel_full === */
  table.rel_full {background: #ffffff; border: 0; width: 900px; margin-left: auto; margin-right: auto;}
  table.rel_full td {background: #e8e8e8; font-family: Verdana, sans-serif; font-size: 12px; padding: 2px 2px 2px 2px; height: 25px;}
  table.rel_full th { background: #c0c0c0; font-family: Verdana, sans-serif; font-size: 12px; font-weight: bold; padding: 2px 2px 2px 2px; text-align: left;}

  /* === TABELA: .rel_small === */
  table.rel_small {background: #d3d3d3; border: 0; width: 600px; margin-left: auto; margin-right: auto;}
  table.rel_small td {background: #e8e8e8; font-family: Verdana, sans-serif; font-size: 12px; padding: 2px 2px 2px 2px;}
  table.rel_small th {background: #c0c0c0; font-family: Verdana, sans-serif; font-size: 12px; font-weight: bold; padding: 2px 2px 2px 2px; text-align: left;}

  /* === TABELA: .cad === */
  table.cad {background: #d3d3d3; border: 0; width: 600px; margin-left: auto; margin-right: auto;}
  table.cad td {background: #e8e8e8; font-family: Verdana, sans-serif; font-size: 12px; padding: 2px 2px 2px 2px; height: 25px;}
  table.cad th {background: #c0c0c0; font-family: Verdana, sans-serif; font-size: 12px; font-weight: normal; padding: 2px 2px 2px 2px; text-align: left; height: 25px;}