/* ══════════════════════════════════════════════
   🎨 Estilos – perfilFiscal.css (integrado ao theme)
   ══════════════════════════════════════════════ */

/* Títulos */
h1, h2 {
  text-align: center;
  color: #334155;
  margin: 0 0 var(--c-space-4, 16px);
}

/* Formulário base */
form.formulario {
  display: flex;
  flex-direction: column;
  gap: var(--c-space-4, 16px);
  margin-bottom: var(--c-space-6, 24px);
}
form.formulario label {
  font-weight: 700;
  color: #334155;
}

/* Linha simples: label à esquerda + campo */
form.formulario .linha {
  display: grid;
  grid-template-columns: 200px 1fr;     /* largura do rótulo */
  align-items: center;
  gap: var(--c-space-3, 12px);
}

/* Textarea usando o mesmo visual dos inputs do tema */
form.formulario textarea {
  width: 100%;
  min-height: 84px;
  box-sizing: border-box;
  background: var(--c-input-bg);
  border: 1px solid var(--c-input-bd);
  border-radius: var(--radius);
  padding: 10px 12px;
  font-size: 14px;
  color: #0f172a;
  transition: border-color .15s, box-shadow .15s, background-color .15s;
  box-shadow: 0 1px 0 rgba(0,0,0,.03), inset 0 1px 0 rgba(255,255,255,.6);
}
form.formulario textarea:hover { border-color: var(--c-input-bd-hover); }
form.formulario textarea:focus {
  border-color: var(--c-primary);
  box-shadow: 0 0 0 3px var(--c-ring);
  background: #fff;
  outline: none;
}

/* 🔹 Grid com 5 colunas (duas linhas no HTML) */
form.formulario .linha-grid {
  display: grid;
  gap: var(--c-space-3, 12px);
  align-items: end;                  /* alinha inputs pela base */
}
form.formulario .linha-grid > div {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
form.formulario .linha-grid.cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

/* Botão salva – usa botão do tema, só deixo full-width */
.btn-salvar { width: 100%; }

/* Tabela: o visível já herda do wrapper .c-scroll--table do tema.
   Ajustes mínimos de leitura: */
#tabelaPerfis th, #tabelaPerfis td {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  padding: 10px 12px;
}

/* Responsivo */
@media (max-width: 1024px) {
  form.formulario .linha { grid-template-columns: 160px 1fr; }
  form.formulario .linha-grid.cols-5 { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 900px) {
  form.formulario .linha-grid.cols-5 { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 720px) {
  form.formulario .linha { grid-template-columns: 1fr; } /* empilha label/campo */
  form.formulario .linha-grid.cols-5 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  form.formulario .linha-grid.cols-5 { grid-template-columns: 1fr; }
}
