/* Estilos do módulo cadastros, usuários, auditoria e configurações */
.cad-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.cad-cartao { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 16px; background: #fff; border: 1px solid var(--linha); border-radius: var(--raio); text-decoration: none; color: inherit; box-shadow: var(--sombra); }
.cad-cartao:hover { border-color: var(--azul); }
.cad-ic { width: 40px; height: 40px; border-radius: 10px; display: grid; place-items: center; background: var(--azul-claro); color: var(--azul); }
.cad-txt { display: grid; gap: 2px; min-width: 0; }
.cad-tit { font-weight: 650; }
.cad-txt small { color: var(--texto-3); font-size: 13px; line-height: 1.35; }
.cad-num { font-size: 20px; font-variant-numeric: tabular-nums; color: var(--texto-2); }
.cad-linha { display: flex; gap: 8px; align-items: center; }
.cad-linha .ctl { flex: 1; min-width: 0; }
.cad-consulta { font-size: 13.5px; min-height: 0; display: grid; gap: 4px; }
.cad-consulta:empty { display: none; }
.cad-consulta .giro { display: inline-block; vertical-align: -3px; width: 14px; height: 14px; }
.ok-campo { color: var(--verde); display: inline-flex; align-items: center; gap: 4px; }
.cad-banco { border: 1px dashed var(--linha-2); border-radius: var(--raio); padding: 14px 16px 16px; margin: 18px 0 0; }
.cad-banco legend { font-weight: 600; font-size: 14px; padding: 0 6px; color: var(--amarelo); }
.cad-lancs { margin-top: 18px; display: grid; gap: 8px; }
.cad-sub { font-size: 14.5px; font-weight: 650; }
.cad-arvore { display: inline-block; }
.cad-arvore.n0 { font-weight: 650; }
.cad-arvore.n1 { padding-left: 20px; } .cad-arvore.n2 { padding-left: 40px; } .cad-arvore.n3, .cad-arvore.n4 { padding-left: 60px; }
.cad-arvore.n1::before, .cad-arvore.n2::before, .cad-arvore.n3::before, .cad-arvore.n4::before { content: "└ "; color: var(--texto-3); }
.cad-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.cad-obras { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 8px 16px; padding: 10px 12px; border: 1px solid var(--linha); border-radius: 8px; max-height: 240px; overflow-y: auto; }
.cad-flags { display: grid; gap: 8px; }
.cad-papeis { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px 20px; margin: 0 0 12px; }
.cad-papeis dt { font-weight: 650; }
.cad-papeis dd { margin: 2px 0 0; color: var(--texto-2); font-size: 14px; }
.tabela th.mono { font-family: var(--fonte); }
.tabela td.mono { white-space: nowrap; }
