/* Migrado de command-center.css; regras modulares abaixo mantêm autoridade final. */
/* Gestão de empregados: diretório operacional, não uma lista de autores */
body.command-center .emp-shell {
  min-width: 0;
}

body.command-center .emp-cabecalho {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 17px;
}

body.command-center .emp-cabecalho > div > span,
body.command-center .emp-modal-cab span,
body.command-center .emp-card-titulo span,
body.command-center .emp-perfil-nome small {
  display: block;
  margin-bottom: 4px;
  color: #657682;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .15em;
  line-height: 1.35;
  text-transform: uppercase;
}

body.command-center .emp-cabecalho h2,
body.command-center .emp-modal-cab h2,
body.command-center .emp-perfil-nome h2 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 24px;
  letter-spacing: .025em;
  text-transform: none;
}

body.command-center .emp-cabecalho p {
  margin: 4px 0 0;
  color: #64747f;
  font-size: 13px;
}

body.command-center .emp-novo,
body.command-center .emp-form-acoes .destaque,
body.command-center .emp-numero-acoes .destaque,
body.command-center .emp-perfil-topo .destaque {
  min-height: 44px;
  border: 1px solid var(--gold2);
  border-radius: 3px;
  background: var(--gold);
  color: var(--navy);
  cursor: pointer;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.command-center .emp-novo {
  padding: 11px 17px;
  box-shadow: 0 5px 14px rgba(4, 44, 83, .13);
}

body.command-center .emp-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  margin-bottom: 14px;
  border: 1px solid var(--cc-line);
  border-top: 3px solid var(--navy);
  border-radius: 6px;
  background: var(--cc-line);
  box-shadow: var(--cc-shadow);
}

body.command-center .emp-kpis button {
  min-height: 112px;
  padding: 15px 18px;
  border: 0;
  background: #fff;
  color: var(--navy);
  cursor: pointer;
  text-align: left;
}

body.command-center .emp-kpis button:hover {
  background: #f6f9fb;
}

body.command-center .emp-kpis button.alerta {
  box-shadow: inset 4px 0 0 var(--gold2);
}

body.command-center .emp-kpis span,
body.command-center .emp-kpis small {
  display: block;
  color: #65747e;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body.command-center .emp-kpis strong {
  display: block;
  margin: 4px 0;
  color: var(--navy);
  font-family: var(--cc-display);
  font-size: 31px;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
}

body.command-center .emp-tabs {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  margin-bottom: 12px;
  padding-bottom: 5px;
}

body.command-center .emp-tab {
  display: inline-flex;
  min-width: max-content;
  min-height: 44px;
  align-items: center;
  gap: 9px;
  padding: 9px 12px;
  border: 1px solid #b7c3cc;
  border-radius: 3px;
  background: #fff;
  color: var(--navy2);
  cursor: pointer;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .07em;
  text-transform: uppercase;
}

body.command-center .emp-tab strong {
  min-width: 22px;
  padding: 3px 6px;
  border-radius: 11px;
  background: #e7edf2;
  text-align: center;
}

body.command-center .emp-tab.on {
  border-color: var(--navy);
  background: var(--navy);
  color: var(--gold);
}

body.command-center .emp-tab.on strong {
  background: rgba(250, 199, 117, .17);
}

body.command-center .emp-filtros {
  display: grid;
  grid-template-columns: minmax(250px, 1.5fr) minmax(150px, .6fr) minmax(170px, .8fr);
  gap: 9px;
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid var(--cc-line);
  border-radius: 5px;
  background: #f3f6f8;
}

body.command-center .emp-filtros label > span,
body.command-center .emp-form label > span {
  display: block;
  margin-bottom: 5px;
  color: #5f6f7a;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .09em;
  text-transform: uppercase;
}

body.command-center .emp-filtros input,
body.command-center .emp-filtros select {
  width: 100%;
}

body.command-center .emp-card-tabela {
  padding: 0;
  overflow: hidden;
  border-top-color: var(--gold2);
}

body.command-center .emp-card-tabela .tw {
  margin: 0;
  border: 0;
  border-radius: 0;
}

body.command-center .emp-card-titulo {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 17px;
  border-bottom: 1px solid var(--cc-line);
}

body.command-center .emp-card-titulo b {
  color: var(--navy);
  font-family: var(--cc-display);
  font-size: 16px;
}

body.command-center .emp-card-titulo small,
body.command-center .emp-sub {
  display: block;
  color: #6b7881;
  font-size: 12px;
}

body.command-center .emp-tabela td {
  vertical-align: middle;
}

body.command-center .emp-identidade {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  text-align: left;
}

body.command-center .emp-identidade > span:first-child,
body.command-center .emp-perfil-nome > span:first-child {
  display: grid;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  place-items: center;
  border: 1px solid #b6cada;
  border-radius: 50%;
  background: #e6f1fb;
  color: var(--navy2);
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
}

body.command-center .emp-identidade b,
body.command-center .emp-identidade small {
  display: block;
}

body.command-center .emp-identidade b {
  color: var(--navy);
  font-size: 12.5px;
}

body.command-center .emp-identidade small {
  color: #6a7780;
  font-size: 12px;
}

body.command-center .emp-acoes,
body.command-center .emp-form-acoes,
body.command-center .emp-numero-acoes,
body.command-center .emp-perfil-topo,
body.command-center .emp-perfil-topo > div {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

body.command-center .emp-acoes button,
body.command-center .emp-form-acoes button,
body.command-center .emp-numero-acoes button,
body.command-center .emp-perfil-topo button,
body.command-center .emp-numero-linha > button {
  min-height: 44px;
  padding: 7px 9px;
  border: 1px solid #aebbc5;
  border-radius: 3px;
  background: #f7f9fa;
  color: var(--navy2);
  cursor: pointer;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .055em;
  text-transform: uppercase;
}

body.command-center .emp-acoes button.destaque {
  border-color: #b88832;
  background: #fbefda;
  color: #704709;
}

body.command-center .emp-acoes button.perigo {
  border-color: #d1a3a3;
  background: #fff5f5;
  color: var(--red);
}

body.command-center .emp-modal-box {
  width: min(760px, 100%);
  max-width: 760px;
  padding: 0;
  overflow: hidden auto;
}

body.command-center .emp-modal-cab {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 19px 21px 16px;
  border-bottom: 1px solid var(--cc-line);
  background: linear-gradient(110deg, #f9fafb, #eef3f6);
}

body.command-center .emp-modal-cab h2 {
  font-size: 21px;
}

body.command-center .emp-modal-cab > button {
  display: inline-flex;
  width: 44px;
  min-width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #aebbc5;
  border-radius: 50%;
  background: #fff;
  color: var(--navy);
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
}

body.command-center .emp-form,
body.command-center .emp-numero-resumo,
body.command-center .emp-numero-lista,
body.command-center .emp-contexto {
  padding: 18px 21px;
}

body.command-center .emp-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 12px;
}

body.command-center .emp-grid .largo {
  grid-column: 1 / -1;
}

body.command-center .emp-grid input,
body.command-center .emp-grid select,
body.command-center .emp-grid textarea {
  width: 100%;
}

body.command-center .emp-form-nota,
body.command-center .emp-numero-resumo p {
  margin-top: 15px;
  padding: 10px 12px;
  border-left: 3px solid var(--gold2);
  background: #fbf3e3;
  color: #644f1e;
  font-size: 12px;
  line-height: 1.55;
}

body.command-center .emp-form-acoes {
  display: flex;
  flex: 0 0 auto;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid #d5e0e5;
}

body.command-center .emp-form-acoes .destaque,
body.command-center .emp-numero-acoes .destaque,
body.command-center .emp-perfil-topo .destaque {
  min-height: 44px;
  padding: 8px 12px;
}

body.command-center .emp-contexto {
  border-bottom: 1px solid var(--cc-line-soft);
}

body.command-center .emp-contexto b,
body.command-center .emp-contexto small {
  display: block;
}

body.command-center .emp-contexto b {
  color: var(--navy);
  font-family: var(--cc-display);
  font-size: 16px;
}

body.command-center .emp-contexto small {
  margin-top: 3px;
  color: #697780;
}

body.command-center .emp-numero-resumo {
  padding-bottom: 10px;
}

body.command-center .emp-numero-resumo p {
  margin: 0 0 12px;
}

body.command-center .emp-numero-lista {
  padding-top: 5px;
  padding-bottom: 5px;
}

body.command-center .emp-numero-linha {
  display: flex;
  min-height: 70px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 0;
  border-bottom: 1px solid var(--cc-line-soft);
}

body.command-center .emp-numero-linha.encerrado {
  opacity: .62;
}

body.command-center .emp-numero-linha b,
body.command-center .emp-numero-linha small {
  display: block;
}

body.command-center .emp-numero-linha b {
  color: var(--navy);
  font-family: var(--cc-display);
}

body.command-center .emp-numero-linha small {
  margin-top: 4px;
  color: #697780;
  font-size: 12px;
}

body.command-center .emp-perfil-topo {
  justify-content: space-between;
  margin-bottom: 12px;
}

body.command-center .emp-perfil-identidade {
  padding: 0;
  overflow: hidden;
  border-top-color: var(--gold2);
}

body.command-center .emp-perfil-nome {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 19px 20px;
  background: linear-gradient(110deg, #fff, #f1f5f7);
}

body.command-center .emp-perfil-nome > span:first-child {
  width: 48px;
  height: 48px;
  flex-basis: 48px;
  border-color: var(--navy2);
  font-size: 13px;
}

body.command-center .emp-perfil-nome > div {
  min-width: 0;
  flex: 1;
}

body.command-center .emp-perfil-nome h2 {
  font-size: 23px;
}

body.command-center .emp-perfil-nome p {
  color: #62727d;
  font-size: 12px;
}

body.command-center .emp-perfil-dados {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  border-top: 1px solid var(--cc-line);
  background: var(--cc-line);
}

body.command-center .emp-perfil-dados > div {
  min-height: 78px;
  padding: 12px 14px;
  background: #fff;
}

body.command-center .emp-perfil-dados span,
body.command-center .emp-perfil-dados b {
  display: block;
}

body.command-center .emp-perfil-dados span {
  color: #687680;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

body.command-center .emp-perfil-dados b {
  margin-top: 5px;
  color: #31424e;
  font-size: 12px;
  line-height: 1.5;
}

/* Núcleo familiar: extensão compacta do cadastro mestre de pessoas. */
body.command-center .emp-nucleo {
  display: inline-flex;
  min-width: 82px;
  flex-direction: column;
  gap: 2px;
  color: var(--navy);
  line-height: 1.15;
}

body.command-center .emp-nucleo strong {
  font-family: var(--cc-display);
  font-size: 14px;
  font-variant-numeric: tabular-nums;
}

body.command-center .emp-nucleo small {
  color: #687985;
  font-size: 12px;
}

body.command-center .emp-nucleo-familiar {
  overflow: hidden;
  padding: 0;
  border-top: 3px solid var(--gold2);
}

body.command-center .emp-nucleo-familiar > header {
  display: flex;
  min-height: 0;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--cc-line);
  background: #f8fafb;
  color: var(--navy);
}

body.command-center .emp-nucleo-familiar > header span {
  color: #657682;
  font-family: var(--cc-display);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

body.command-center .emp-nucleo-familiar > header h2 {
  margin: 3px 0 2px;
  font-size: 20px;
}

body.command-center .emp-nucleo-familiar > header p {
  margin: 0;
  color: #5d6e79;
  font-size: 13px;
}

body.command-center .emp-nucleo-familiar > header button:disabled {
  cursor: not-allowed;
  opacity: .52;
}

body.command-center .emp-nucleo-responsavel {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 12px 20px;
  border-bottom: 1px solid #e5eaee;
  background: #fffaf1;
}

body.command-center .emp-nucleo-responsavel span,
body.command-center .emp-nucleo-responsavel small {
  color: #697984;
  font-size: 12px;
}

body.command-center .emp-dependentes-lista {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.command-center .emp-dependente {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 20px;
  border-bottom: 1px solid #e8ecef;
  background: #fff;
}

body.command-center .emp-dependente-inativo {
  background: #f7f8f8;
}

body.command-center .emp-dependente-identidade strong,
body.command-center .emp-dependente-identidade span,
body.command-center .emp-dependente-identidade small {
  display: block;
}

body.command-center .emp-dependente-identidade strong {
  color: var(--navy);
  font-size: 14px;
}

body.command-center .emp-dependente-identidade span,
body.command-center .emp-dependente-identidade small {
  margin-top: 3px;
  color: #667680;
  font-size: 12px;
}

body.command-center .emp-dependente-acoes {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

body.command-center .emp-dependente-acoes .ui-button {
  min-height: 38px;
  padding: 7px 10px;
  font-size: 12px;
}

body.command-center .emp-nucleo-vazio {
  padding: 24px 20px;
  text-align: center;
}

body.command-center .emp-nucleo-vazio p,
body.command-center .emp-nucleo-nota {
  color: #687984;
  font-size: 12px;
}

body.command-center .emp-nucleo-vazio p {
  margin: 4px 0 0;
}

body.command-center .emp-nucleo-nota {
  margin: 0;
  padding: 11px 20px;
  background: #edf2f5;
  line-height: 1.45;
}

body.command-center .portaria-veiculo-cobertura {
  color: #526d7d !important;
  font-weight: 700;
}


@media (max-width: 700px) {
  body.command-center .emp-nucleo-familiar > header,
  body.command-center .emp-dependente {
    align-items: stretch;
    flex-direction: column;
  }

  body.command-center .emp-nucleo-familiar > header button {
    width: 100%;
  }

  body.command-center .emp-nucleo-responsavel {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  body.command-center .emp-dependente-acoes {
    justify-content: flex-start;
  }

  body.command-center .emp-dependente-acoes .ui-button {
    flex: 1 1 150px;
  }


}

body.command-center .emp-perfil-topo button.ui-button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 14px;
}

body.command-center .emp-form-acoes button.ui-button.destaque,
body.command-center .emp-numero-acoes button.ui-button.destaque,
body.command-center .emp-perfil-topo button.ui-button.destaque {
  min-height: 44px;
  padding: 10px 14px;
}

body.command-center .emp-selecao-item {
  position: relative;
  display: grid;
  min-height: 78px;
  grid-template-columns: 30px 40px minmax(0, 1fr) minmax(160px, 210px);
  grid-template-areas: "check avatar identity metrics";
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid #d8e3e8;
  border-radius: 9px;
  background: #fff;
  color: #233c4d;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

body.command-center .emp-selecao-item:hover {
  border-color: #9aadb8;
  box-shadow: 0 5px 14px rgba(34, 58, 72, .08);
  transform: none;
}

body.command-center .emp-selecao-item:focus-within {
  outline: 3px solid rgba(39, 101, 127, .25);
  outline-offset: -2px;
}

body.command-center .emp-selecao-item.selecionado,
body.command-center .emp-selecao-item:has(input:checked) {
  border-color: #a97824;
  background: #fffaf0;
  box-shadow: inset 4px 0 0 #b98224;
}

body.command-center .emp-selecao-item.inativo {
  border-color: #d4dde1;
  background: #edf1f2;
  color: #68767d;
  cursor: not-allowed;
  opacity: .82;
}

body.command-center .emp-selecao-item.inativo:hover {
  box-shadow: none;
  transform: none;
}

body.command-center .emp-selecao-item.inativo.historico {
  border-color: #d8c59b;
  background: #f7f3e9;
  color: #5d5b54;
  cursor: pointer;
  opacity: 1;
}

body.command-center .emp-selecao-item input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  opacity: 0;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  clip-path: inset(50%);
}

body.command-center .emp-selecao-check {
  display: grid;
  width: 26px;
  min-width: 26px;
  height: 26px;
  grid-area: check;
  place-items: center;
  margin: 0;
  padding: 0;
  border: 1px solid #aebec8;
  border-radius: 7px;
  background: #fff;
  color: transparent;
  line-height: 1;
  transition: background .16s ease, border-color .16s ease, color .16s ease;
}

body.command-center .emp-selecao-item input:focus-visible + .emp-selecao-check {
  outline: 3px solid rgba(39, 101, 127, .35);
  outline-offset: 3px;
}

body.command-center .emp-selecao-check-mark {
  display: none;
  width: 15px;
  height: 15px;
  align-items: center;
  justify-content: center;
  opacity: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 900;
  line-height: 1;
}

body.command-center .emp-selecao-item.selecionado .emp-selecao-check,
body.command-center .emp-selecao-item:has(input:checked) .emp-selecao-check {
  border-color: #9b6a1c;
  background: #b98224;
}

body.command-center .emp-selecao-item.selecionado .emp-selecao-check-mark,
body.command-center .emp-selecao-item:has(input:checked) .emp-selecao-check-mark {
  display: inline-flex;
  opacity: 1;
}

body.command-center .emp-selecao-item.inativo .emp-selecao-check {
  border-color: #c8d1d5;
  background: #e3e8ea;
}

body.command-center .emp-selecao-avatar {
  display: grid;
  width: 38px;
  height: 38px;
  grid-area: avatar;
  place-items: center;
  border: 1px solid #c9d9e0;
  border-radius: 50%;
  background: #e4edf1;
  color: #27536b;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .04em;
}

body.command-center .emp-selecao-identidade > b {
  display: block;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  grid-area: nome;
  color: #233c4d;
  font-size: 15px;
  font-weight: 850;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.command-center .emp-selecao-detalhes {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  grid-area: detalhes;
  gap: 2px 8px;
}

body.command-center .emp-selecao-detalhes small {
  min-width: 0;
  overflow: hidden;
  color: #63747e;
  font-size: 12px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.command-center .emp-selecao-detalhes small + small::before {
  margin-right: 8px;
  color: #a2b0b7;
  content: "·";
}

body.command-center .emp-selecao-status {
  display: block;
  width: fit-content;
  max-width: 100%;
  overflow: hidden;
  grid-area: status;
  margin: 0;
  padding: 5px 8px;
  border: 1px solid #bfd4c9;
  border-radius: 7px;
  background: #eef8f1;
  color: #1f6848;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .04em;
  line-height: 1.1;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

body.command-center .emp-selecao-item.fora-fazenda .emp-selecao-status {
  border-color: #ead7a9;
  background: #fff8e8;
  color: #785820;
}

body.command-center .emp-selecao-item.inativo .emp-selecao-status {
  border-color: #cbd3d7;
  background: #e8ecee;
  color: #68777e;
}

body.command-center .emp-selecao-item.inativo.historico .emp-selecao-status {
  border-color: #dfcda7;
  background: #fbf4e3;
  color: #8a6628;
}

body.command-center .emp-selecao-metricas > span {
  display: grid;
  min-width: 72px;
  gap: 2px;
  align-content: center;
  padding: 7px 8px;
  border: 1px solid #d8e2e7;
  border-radius: 9px;
  background: #f7fafb;
  text-align: center;
}

body.command-center .emp-selecao-metricas b {
  color: #294a5b;
  font-size: 17px;
  line-height: 1;
}

body.command-center .emp-selecao-metricas small {
  display: grid;
  gap: 1px;
  color: #6b7c85;
  font-size: 12px;
  line-height: 1.15;
  white-space: normal;
}

body.command-center .emp-selecao-item.selecionado .emp-selecao-metricas > span,
body.command-center .emp-selecao-item:has(input:checked) .emp-selecao-metricas > span {
  border-color: #e3c98f;
  background: #fffdf7;
}

body.command-center .emp-selecao-item.inativo .emp-selecao-metricas > span {
  border-color: #d4dce0;
  background: #e6eaec;
}

body.command-center .emp-selecao-item.inativo.historico .emp-selecao-metricas > span {
  border-color: #dfcfad;
  background: #fbf7ed;
}

@media (max-width: 760px) {
  body.command-center .emp-selecao-item {
    grid-template-columns: 30px 38px minmax(0, 1fr);
    grid-template-areas: "check avatar identity" "check avatar metrics";
    align-items: start;
    gap: 8px 10px;
  }

}

@media (max-width: 700px) {
  body.command-center .emp-selecao-item {
    padding: 10px;
  }

  body.command-center .emp-form-acoes {
    justify-content: stretch;
  }

  body.command-center .emp-form-acoes button {
    flex: 1;
  }
}

/* Pessoas — catálogo de cargos, vínculo e atuação operacional */
body.command-center .emp-cabecalho-acoes {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

body.command-center #emp-modal.emp-editor-aberto {
  padding: 0;
  align-items: stretch;
  justify-content: flex-end;
  background: rgba(4, 35, 61, .48);
  backdrop-filter: blur(2px);
  z-index: 180;
}

body.command-center #app-dialog[data-aberto="true"] {
  z-index: 190;
}

body.command-center #emp-modal.emp-editor-aberto .emp-modal-box {
  width: clamp(780px, 72vw, 1120px);
  max-width: 1120px;
  height: 100dvh;
  max-height: none;
  border: 0;
  border-left: 1px solid #bdcad4;
  border-radius: 22px 0 0 22px;
  overflow: hidden;
  box-shadow: -24px 0 70px rgba(4, 35, 61, .25);
  animation: emp-editor-entrada 180ms ease-out;
}

body.command-center #emp-modal.emp-editor-aberto #emp-modal-corpo,
body.command-center .emp-editor-shell {
  height: 100%;
  min-height: 0;
}

body.command-center .emp-editor-shell {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  background: #f4f7f9;
}

body.command-center .emp-editor-cabecalho {
  min-height: 142px;
  padding: 23px 28px 21px;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  color: #fff;
  background: #08385b;
  border-top: 4px solid #d7a740;
}

body.command-center .emp-editor-identidade {
  min-width: 0;
  flex: 1 1 auto;
  display: grid;
  gap: 3px;
}

body.command-center .emp-editor-identidade > span {
  color: #f2cf78;
  font-size: 12px;
  font-weight: 820;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.command-center .emp-editor-identidade h2 {
  margin: 0;
  color: #dbeaf3;
  font-size: 13px;
  font-weight: 650;
}

body.command-center .emp-editor-identidade > strong {
  overflow: hidden;
  color: #fff;
  font-family: var(--cc-display, inherit);
  font-size: clamp(22px, 2vw, 29px);
  line-height: 1.12;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.command-center .emp-editor-identidade p {
  margin: 3px 0 0;
  color: #bad0df;
  font-size: 13px;
}

body.command-center .emp-editor-cabecalho-acoes {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
}

body.command-center .emp-editor-estado {
  min-height: 30px;
  padding: 5px 10px;
  display: inline-flex;
  align-items: center;
  color: #dbeaf3;
  background: rgba(255, 255, 255, .09);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
}

body.command-center .emp-editor-estado[data-estado="alterado"] {
  color: #4f3506;
  background: #f7d98e;
  border-color: #f7d98e;
}

body.command-center .emp-editor-estado[data-estado="salvando"] {
  color: #08385b;
  background: #dcebf4;
  border-color: #dcebf4;
}

body.command-center .emp-editor-fechar {
  width: 44px;
  height: 44px;
  padding: 0;
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  color: #fff;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, .34);
  border-radius: 50%;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
}

body.command-center .emp-editor-fechar:hover {
  background: rgba(255, 255, 255, .1);
}

body.command-center .emp-editor-form {
  min-height: 0;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
}

body.command-center .emp-editor-corpo {
  min-height: 0;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
}

body.command-center .emp-editor-nav {
  padding: 25px 14px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  background: #edf3f6;
  border-right: 1px solid #d4e0e7;
}

body.command-center .emp-editor-nav button {
  min-height: 48px;
  padding: 9px 11px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #466273;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 10px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 720;
  text-align: left;
}

body.command-center .emp-editor-nav button span {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  color: #7a5a16;
  background: #f8e7bd;
  border-radius: 7px;
  font-size: 12px;
}

body.command-center .emp-editor-nav button:hover {
  color: #08385b;
  background: rgba(255, 255, 255, .65);
}

body.command-center .emp-editor-nav button.ativo {
  color: #fff;
  background: #0d4f78;
  border-color: #0d4f78;
  box-shadow: 0 5px 14px rgba(13, 79, 120, .16);
}

body.command-center .emp-editor-nav button.ativo span {
  color: #62440b;
  background: #f6d98f;
}

body.command-center .emp-editor-conteudo {
  min-width: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 28px 32px 72px;
  scroll-behavior: smooth;
  scroll-padding-top: 24px;
}

body.command-center .emp-form-secao {
  margin: 0 0 18px;
  padding: 24px;
  display: grid;
  gap: 19px;
  background: #fff;
  border: 1px solid #d8e2e9;
  border-radius: 14px;
  box-shadow: 0 4px 13px rgba(19, 54, 76, .045);
}

body.command-center .emp-form-secao-cab > div {
  display: grid;
  gap: 2px;
}

body.command-center .emp-form-secao-cab span {
  color: #a3731e;
  font-size: 12px;
  font-weight: 820;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body.command-center .emp-form-secao-cab h3 {
  margin: 0;
  color: #092e4d;
  font-family: var(--cc-display, inherit);
  font-size: 18px;
}

body.command-center .emp-editor-form .emp-grid {
  gap: 17px 14px;
}

body.command-center .emp-editor-form label > span:first-child,
body.command-center .emp-observacoes-campo > span {
  color: #36566d;
  font-size: 12px;
  font-weight: 760;
}

body.command-center .emp-editor-form :is(input, select, textarea) {
  min-height: 44px;
  border-color: #bdccd6;
  background: #fff;
}

body.command-center .emp-editor-form :is(input, select, textarea):focus {
  border-color: #0d4f78;
  box-shadow: 0 0 0 3px rgba(13, 79, 120, .12);
}

body.command-center .emp-origem-bloqueada {
  min-height: 84px;
  padding: 14px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background: #f1f6f9;
  border: 1px solid #cbdbe4;
  border-left: 4px solid #d4a23e;
  border-radius: 11px;
}

body.command-center .emp-origem-bloqueada > div {
  display: grid;
  gap: 3px;
}

body.command-center .emp-origem-bloqueada span,
body.command-center .emp-origem-bloqueada small {
  color: #61798b;
  font-size: 12px;
  font-weight: 650;
}

body.command-center .emp-origem-bloqueada strong {
  color: #092e4d;
  font-size: 16px;
}

body.command-center .emp-atuacao-matriz {
  overflow: hidden;
  border: 1px solid #d5e0e7;
  border-radius: 12px;
}

body.command-center .emp-atuacao-matriz-cab,
body.command-center .emp-atuacao-linha {
  display: grid;
  grid-template-columns: minmax(155px, 1.25fr) minmax(142px, 1fr) minmax(164px, 1fr);
  align-items: center;
}

body.command-center .emp-atuacao-matriz-cab {
  min-height: 43px;
  color: #4a6475;
  background: #eaf1f5;
  font-size: 12px;
  font-weight: 820;
  letter-spacing: .035em;
  text-transform: uppercase;
}

body.command-center .emp-atuacao-matriz-cab span,
body.command-center .emp-atuacao-linha > div {
  padding: 10px 14px;
}

body.command-center .emp-atuacao-linha {
  min-height: 66px;
  border-top: 1px solid #e1e8ed;
}

body.command-center .emp-atuacao-linha:nth-child(odd) {
  background: #fbfcfd;
}

body.command-center .emp-atuacao-linha.eh-origem {
  background: #fff9ec;
  box-shadow: inset 4px 0 #d4a23e;
}

body.command-center .emp-atuacao-fazenda {
  display: grid;
  gap: 2px;
}

body.command-center .emp-atuacao-fazenda strong {
  color: #143e5b;
  font-size: 14px;
}

body.command-center .emp-atuacao-fazenda small {
  color: #718797;
  font-size: 12px;
}

body.command-center .emp-atuacao-linha.eh-origem .emp-atuacao-fazenda small {
  color: #8a641d;
  font-weight: 760;
}

body.command-center .emp-atuacao-controle {
  position: relative;
  min-height: 44px;
  padding: 5px 9px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #4d6676;
  cursor: pointer;
  font-size: 12px;
  font-weight: 720;
}

body.command-center .emp-atuacao-controle input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

body.command-center .emp-atuacao-marca {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  color: transparent;
  background: #fff;
  border: 1px solid #aebfca;
  border-radius: 7px;
  transition: 130ms ease;
}

body.command-center .emp-atuacao-marca .ui-icon {
  width: 15px;
  height: 15px;
}

body.command-center .emp-atuacao-controle input:checked + .emp-atuacao-marca {
  color: #fff;
  background: #0d4f78;
  border-color: #0d4f78;
}

body.command-center .emp-atuacao-linha > div:nth-child(2) .emp-atuacao-controle input:checked + .emp-atuacao-marca {
  color: #5f4007;
  background: #f4cf76;
  border-color: #c4922d;
}

body.command-center .emp-atuacao-controle input:focus-visible + .emp-atuacao-marca {
  outline: 3px solid rgba(13, 79, 120, .2);
  outline-offset: 2px;
}

body.command-center .emp-atuacao-controle.origem {
  color: #806125;
  cursor: not-allowed;
}

body.command-center .emp-atuacao-controle.origem .emp-atuacao-marca {
  background: #f5e5bc;
  border-color: #d8b760;
}

body.command-center .emp-atuacao-ajuda {
  margin: 0;
  padding-left: 11px;
  color: #647b8a;
  border-left: 3px solid #d4a23e;
  font-size: 12px;
  line-height: 1.5;
}

body.command-center .emp-observacoes-campo {
  display: grid;
  gap: 7px;
}

body.command-center .emp-observacoes-campo textarea {
  width: 100%;
  resize: vertical;
}

body.command-center .emp-observacoes-campo small {
  color: #718797;
  font-size: 12px;
}

body.command-center .emp-editor-rodape {
  min-height: 76px;
  padding: 14px 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: #fff;
  border-top: 1px solid #ccd9e1;
  box-shadow: 0 -8px 22px rgba(25, 57, 77, .06);
}

body.command-center .emp-editor-rodape > div {
  display: flex;
  gap: 9px;
}

body.command-center .emp-editor-rodape button {
  min-width: 130px;
}

body.command-center .emp-editor-rodape button:disabled {
  opacity: .5;
  cursor: not-allowed;
}

body.command-center .emp-editor-erro {
  margin: 0;
  color: #9e3030;
  font-size: 12px;
  font-weight: 680;
}

@keyframes emp-editor-entrada {
  from { transform: translateX(24px); opacity: .72; }
  to { transform: translateX(0); opacity: 1; }
}

body.command-center .emp-cargos-topo {
  padding: 18px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: #f4f8fb;
  border-bottom: 1px solid var(--g-color-border, #d8e2e9);
}

body.command-center .emp-cargos-topo p {
  margin: 0;
  color: var(--g-color-muted, #61798b);
  font-size: 13px;
}

body.command-center .emp-cargos-lista {
  max-height: min(56vh, 540px);
  margin: 0;
  padding: 8px 24px;
  overflow-y: auto;
  list-style: none;
}

body.command-center .emp-cargos-lista li {
  min-height: 58px;
  padding: 9px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid #e6edf2;
}

body.command-center .emp-cargos-lista li:last-child {
  border-bottom: 0;
}

body.command-center .emp-cargos-lista li > div {
  display: grid;
  gap: 3px;
}

body.command-center .emp-cargos-lista strong {
  color: var(--g-color-brand-strong, #092e4d);
}

body.command-center .emp-cargos-lista small {
  color: var(--g-color-muted, #61798b);
}

body.command-center .emp-perfil-vinculo {
  padding: 0;
  overflow: hidden;
}

body.command-center .emp-perfil-vinculo > header {
  padding: 16px 20px;
  background: linear-gradient(110deg, #0a3658, #0d4f78);
}

body.command-center .emp-perfil-vinculo > header span,
body.command-center .emp-perfil-vinculo > header h2 {
  margin: 0;
  color: #fff;
}

body.command-center .emp-perfil-vinculo > header span {
  color: #f2cf78;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

body.command-center .emp-perfil-vinculo > header h2 {
  margin-top: 3px;
  font-size: 17px;
}

body.command-center .emp-vinculo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.command-center .emp-vinculo-grid > div {
  min-height: 102px;
  padding: 16px 20px;
  display: grid;
  align-content: start;
  gap: 5px;
  border-right: 1px solid var(--g-color-border, #d8e2e9);
  border-bottom: 1px solid var(--g-color-border, #d8e2e9);
}

body.command-center .emp-vinculo-grid > div:nth-child(2n) {
  border-right: 0;
}

body.command-center .emp-vinculo-grid > div:nth-last-child(-n + 2) {
  border-bottom: 0;
}

body.command-center .emp-vinculo-grid > div > span {
  color: var(--g-color-muted, #61798b);
  font-size: 12px;
  font-weight: 780;
  letter-spacing: .07em;
  text-transform: uppercase;
}

body.command-center .emp-vinculo-grid > div > strong {
  color: var(--g-color-brand-strong, #092e4d);
}

body.command-center .emp-vinculo-grid > div > small,
body.command-center .emp-dado-vazio {
  color: var(--g-color-muted, #61798b);
  font-size: 12px;
  font-weight: 520;
}

body.command-center .emp-atuacao-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

body.command-center .emp-atuacao-chip {
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 760;
}

body.command-center .emp-atuacao-chip.responsavel {
  color: #73500b;
  background: #fff0c5;
  border: 1px solid #dfba61;
}

body.command-center .emp-atuacao-chip.servico {
  color: #0a456d;
  background: #e4f1f8;
  border: 1px solid #b4d2e4;
}

@media (max-width: 900px) {
  body.command-center #emp-modal.emp-editor-aberto .emp-modal-box {
    width: 100%;
    max-width: none;
    border-left: 0;
    border-radius: 0;
  }

  body.command-center .emp-editor-cabecalho {
    min-height: 126px;
    padding: 19px 20px 17px;
  }

  body.command-center .emp-editor-corpo {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr);
  }

  body.command-center .emp-editor-nav {
    padding: 8px 12px;
    overflow-x: auto;
    flex-direction: row;
    border-right: 0;
    border-bottom: 1px solid #d4e0e7;
  }

  body.command-center .emp-editor-nav button {
    min-width: max-content;
    min-height: 42px;
  }

  body.command-center .emp-editor-conteudo {
    padding: 20px 22px 58px;
  }
}

@media (max-width: 700px) {
  body.command-center .emp-cabecalho-acoes,
  body.command-center .emp-cargos-topo {
    width: 100%;
    align-items: stretch;
    flex-direction: column;
  }

  body.command-center .emp-form-secao {
    padding: 17px 16px;
  }

  body.command-center .emp-origem-bloqueada {
    align-items: stretch;
    flex-direction: column;
  }

  body.command-center .emp-origem-bloqueada > button {
    width: 100%;
  }

  body.command-center .emp-editor-cabecalho {
    min-height: 118px;
    padding: 15px 14px;
    gap: 10px;
  }

  body.command-center .emp-editor-identidade > strong {
    max-width: 62vw;
    font-size: 21px;
  }

  body.command-center .emp-editor-identidade p {
    max-width: 66vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.command-center .emp-editor-cabecalho-acoes {
    align-items: flex-end;
    flex-direction: column-reverse;
    gap: 7px;
  }

  body.command-center .emp-editor-estado {
    min-height: 26px;
    padding: 4px 8px;
    font-size: 12px;
  }

  body.command-center .emp-editor-conteudo {
    padding: 14px 12px 46px;
  }

  body.command-center .emp-atuacao-matriz {
    overflow: visible;
    border: 0;
    border-radius: 0;
  }

  body.command-center .emp-atuacao-matriz-cab {
    display: none;
  }

  body.command-center .emp-atuacao-linha {
    min-height: 0;
    margin-bottom: 10px;
    display: grid;
    grid-template-columns: 1fr;
    background: #fff !important;
    border: 1px solid #d8e2e9;
    border-radius: 10px;
    box-shadow: none;
  }

  body.command-center .emp-atuacao-linha.eh-origem {
    background: #fff9ec !important;
    border-color: #dfc98f;
    box-shadow: inset 4px 0 #d4a23e;
  }

  body.command-center .emp-atuacao-linha > div {
    padding: 9px 12px;
  }

  body.command-center .emp-atuacao-linha > div[data-coluna] {
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-top: 1px solid #e2e9ed;
  }

  body.command-center .emp-atuacao-linha > div[data-coluna]::before {
    content: attr(data-coluna);
    color: #526d7e;
    font-size: 12px;
    font-weight: 720;
  }

  body.command-center .emp-editor-rodape {
    min-height: 72px;
    padding: 11px 12px;
  }

  body.command-center .emp-editor-rodape > div {
    width: 100%;
  }

  body.command-center .emp-editor-rodape button {
    min-width: 0;
    flex: 1;
    font-size: 12px;
    white-space: nowrap;
  }

  body.command-center .emp-editor-erro:empty {
    display: none;
  }

  body.command-center .emp-vinculo-grid {
    grid-template-columns: 1fr;
  }

  body.command-center .emp-vinculo-grid > div {
    border-right: 0;
    border-bottom: 1px solid var(--g-color-border, #d8e2e9) !important;
  }

  body.command-center .emp-vinculo-grid > div:last-child {
    border-bottom: 0 !important;
  }
}

html[data-frontend="modular"] .g-identity-link-dialog { width: min(560px, calc(100vw - 28px)); max-width: none; padding: 0; overflow: hidden; color: var(--g-color-ink); background: var(--g-color-surface); border: 1px solid #8fa3b2; border-top: 5px solid var(--gold2); border-radius: var(--g-radius-md); box-shadow: 0 28px 80px rgba(3,31,58,.34); }
html[data-frontend="modular"] .g-identity-link-dialog::backdrop { background: rgba(3,31,58,.58); backdrop-filter: blur(3px); }
html[data-frontend="modular"] .g-identity-link-dialog > header { padding: 16px 18px; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; color: #fff; background: var(--g-color-brand-strong); }
html[data-frontend="modular"] .g-identity-link-dialog > header span { display: block; margin-bottom: 3px; color: var(--gold2); font-size: var(--g-font-xs); font-weight: 760; letter-spacing: .08em; text-transform: uppercase; }
html[data-frontend="modular"] .g-identity-link-dialog h2 { margin: 0; color: #fff; font-size: var(--g-font-lg); }
html[data-frontend="modular"] .g-identity-link-close { min-width: 36px; min-height: 36px; padding: 0; font-size: 22px; }
html[data-frontend="modular"] .g-identity-link-form { padding: 18px; display: grid; gap: 14px; }
html[data-frontend="modular"] .g-identity-link-form label { display: grid; gap: 6px; color: var(--g-color-muted); font-size: var(--g-font-xs); font-weight: 730; }
html[data-frontend="modular"] .g-identity-link-form select,
html[data-frontend="modular"] .g-identity-link-form textarea { width: 100%; }
html[data-frontend="modular"] .g-identity-link-context { margin: 0; padding: 10px 12px; background: var(--g-color-brand-soft); border-left: 3px solid var(--gold2); }
html[data-frontend="modular"] .g-identity-link-error { margin: 0; color: var(--g-color-danger); }
html[data-frontend="modular"] .g-identity-link-actions { padding-top: 12px; display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--g-color-border); }
html[data-frontend="modular"] .g-unidentified-note { color: var(--g-color-muted); font-size: var(--g-font-xs); }

.g-identity-exclusions { display:grid; gap:16px; margin:20px 0; }
.g-identity-exclusions section { border-bottom:1px solid #d3dde3; padding-bottom:16px; }

.emp-profile-tabs { display:flex; gap:8px; flex-wrap:wrap; margin:20px 0; }
.emp-profile-tabs button { padding:12px 18px; border:1px solid #bdccd5; border-radius:6px; background:#f5f8fa; color:#163348; }
.emp-profile-tabs button[aria-selected="true"] { background:#164967; color:#f8fafc; }
.emp-profile-ncs { list-style:none; padding:0; }
.emp-profile-ncs li { display:flex; justify-content:space-between; align-items:start; gap:20px; padding:18px 0; border-bottom:1px solid #d3dde3; }
.emp-profile-ncs li p { max-width:70ch; white-space:pre-wrap; overflow-wrap:anywhere; }
.emp-perfil [role="tabpanel"][hidden] { display:none; }

html[data-frontend="modular"] .g-identity-exclusion-dialog { padding:24px; max-height:85dvh; overflow:auto; }
html[data-frontend="modular"] .g-identity-exclusion-dialog h2 { color:var(--g-color-ink); margin-bottom:14px; }

/* Diretório: uma única hierarquia, com os tokens do restante da aplicação. */
#v-empregados .g-employees { display: grid; gap: 16px; min-width: 0; }
#v-empregados .g-employees > * { min-width: 0; }
#v-empregados .g-employees [hidden] { display: none !important; }
#v-empregados .g-employees-top { display: grid; gap: 20px; }
#v-empregados .g-employees-heading { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 16px; padding: 0; border: 0; background: transparent; color: var(--g-color-ink); box-shadow: none; }
#v-empregados .g-employees-heading h2 { margin: 0; padding: 0; border: 0; color: var(--g-color-brand-strong); font-size: var(--g-font-2xl); letter-spacing: normal; text-transform: none; }
#v-empregados .g-employees-heading p { margin: 6px 0 0; color: var(--g-color-muted); font-size: var(--g-font-sm); line-height: 1.5; }
#v-empregados .g-employees-top-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
#v-empregados .g-employees .ui-button { min-height: 44px; font-family: var(--cc-body); font-size: 14px; letter-spacing: normal; text-transform: none; box-shadow: none; }
#v-empregados .g-employees-tabs { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid var(--g-color-border-strong); }
#v-empregados .g-employees-tabs button { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 10px 16px; border: 0; border-bottom: 3px solid transparent; background: transparent; color: var(--g-color-muted); cursor: pointer; font: 600 14px var(--cc-body); }
#v-empregados .g-employees-tabs button[aria-selected="true"] { border-bottom-color: var(--g-color-accent); color: var(--g-color-brand-strong); background: var(--g-color-brand-soft); }
#v-empregados .g-employees-tabs strong { padding: 2px 6px; border-radius: 4px; background: var(--g-color-surface-subtle); color: var(--g-color-ink-soft); font-size: 12px; font-variant-numeric: tabular-nums; }
#v-empregados .g-employees-tabs button:focus-visible { outline: 3px solid var(--g-color-focus); outline-offset: -3px; }
#v-empregados .g-employees-filters { display: grid; grid-template-columns: minmax(0,1.5fr) repeat(3,minmax(0,1fr)); align-items: end; gap: 12px; padding: 16px; border: 1px solid var(--g-color-border); border-radius: var(--g-radius-md); background: var(--g-color-surface-subtle); }
#v-empregados .g-employees-filters label { display: grid; min-width: 0; gap: 6px; color: var(--g-color-ink-soft); font: 600 13px var(--cc-body); }
#v-empregados .g-employees-filters :is(input,select) { box-sizing: border-box; width: 100%; min-width: 0; height: 44px; margin: 0; font: 400 14px var(--cc-body); }
#v-empregados .g-employees-filters .g-employees-extra-fields:not([hidden]) { display: contents; }
#v-empregados #g-employees-clear { justify-self: start; grid-column: 1 / -1; }
#v-empregados .g-employees-applied { display: flex; flex-wrap: wrap; gap: 8px; }
#v-empregados .g-employees-applied .ui-button { background: var(--g-color-brand-soft); white-space: normal; overflow-wrap: anywhere; }
#v-empregados .g-employees-result { color: var(--g-color-muted); font-size: 13px; }
#v-empregados .g-directory-table-wrap { width: 100%; overflow: hidden; border: 1px solid var(--g-color-border); border-radius: var(--g-radius-md); background: var(--g-color-surface); }
#v-empregados .g-directory-table { width: 100%; margin: 0; table-layout: fixed; border-collapse: collapse; border-spacing: 0; }
#v-empregados .g-directory-table :is(th,td) { border-inline: 0; text-align: left; overflow-wrap: anywhere; }
#v-empregados .g-directory-table th { padding: 12px 16px; color: var(--g-color-on-brand); background: var(--g-color-brand-strong); font: 600 13px var(--cc-body); letter-spacing: normal; text-transform: none; }
#v-empregados .g-directory-table th:first-child { width: 29%; }
#v-empregados .g-directory-table th:last-child { width: 19%; }
#v-empregados .g-directory-table td { padding: 18px 16px; border-bottom: 1px solid var(--g-color-border); color: var(--g-color-ink-soft); font-size: 14px; vertical-align: middle; }
#v-empregados .g-directory-table tbody tr:last-child td { border-bottom: 0; }
#v-empregados .g-employee-identity { display: flex; align-items: center; gap: 12px; width: 100%; min-width: 0; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; white-space: normal; font-family: var(--cc-body); }
#v-empregados .g-employee-avatar { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; background: var(--g-color-brand-soft); color: var(--g-color-brand); font-size: 12px; font-weight: 700; }
#v-empregados .g-employee-identity > span:last-child { min-width: 0; display: grid; gap: 5px; }
#v-empregados .g-employee-identity strong { color: var(--g-color-brand-strong); font-size: 16px; line-height: 1.4; }
#v-empregados .g-directory-table small { color: var(--g-color-muted); font-size: 12px; line-height: 1.5; }
#v-empregados .g-employee-employment, #v-empregados .g-unidentified-identity { display: grid; gap: 6px; }
#v-empregados .g-employee-employment > span { display: none; }
#v-empregados .g-employee-scope { display: grid; gap: 10px; }
#v-empregados .g-employee-scope > div { display: grid; gap: 5px; }
#v-empregados .g-employee-scope > div > span, #v-empregados .g-employee-scope-empty { color: var(--g-color-muted); font-size: 12px; line-height: 1.5; }
#v-empregados .g-employee-scope > div > div { display: flex; flex-wrap: wrap; gap: 4px 10px; }
#v-empregados .g-employee-scope .g-tag { margin: 0; padding: 0; border: 0; background: transparent; color: var(--g-color-brand); font-size: 13px; font-weight: 600; white-space: normal; }
#v-empregados .g-employee-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
#v-empregados .g-employee-actions .ui-button { padding-inline: 12px; white-space: normal; }
#v-empregados .g-employee-missing { padding: 6px 8px; border-radius: 4px; color: var(--g-color-warning); background: var(--g-color-warning-soft); }
@media (hover:hover) {
  #v-empregados .g-employees-tabs button:hover { color: var(--g-color-brand); background: var(--g-color-brand-soft); }
  #v-empregados .g-directory-table tbody tr:hover { background: var(--g-color-surface-subtle); }
  #v-empregados .g-employee-identity:hover strong { text-decoration: underline; text-underline-offset: 3px; }
}
@media (max-width:1100px) {
  #v-empregados .g-employees-heading { align-items: flex-start; flex-direction: column; }
  #v-empregados .g-employees-top-actions { align-self: flex-end; }
  #v-empregados .g-employees-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  #v-empregados .g-employees-top { gap: 16px; }
  #v-empregados .g-employees-top-actions { display: grid; width: 100%; grid-template-columns: repeat(2,minmax(0,1fr)); }
  #v-empregados .g-employees-top-actions .ui-button { min-width: 0; white-space: normal; }
  #v-empregados .g-employees-top-actions > :last-child { grid-column: 1 / -1; }
  #v-empregados .g-employees-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; }
  #v-empregados .g-employees-tabs button { justify-content: space-between; padding: 10px; }
  #v-empregados .g-employees-filters { grid-template-columns: minmax(0,1fr) auto; padding: 12px; }
  #v-empregados .g-employees-search { grid-column: 1 / -1; }
  #v-empregados .g-employees-filters .g-employees-extra-fields:not([hidden]) { display: none; }
  #v-empregados .g-detail-panel .g-employees-extra-fields:not([hidden]) { display: grid; }
  #v-empregados .g-directory-table-wrap { overflow: visible; border: 0; background: transparent; }
  #v-empregados .g-directory-table thead { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); }
  #v-empregados .g-directory-table, #v-empregados .g-directory-table tbody { display: grid; gap: 12px; }
  #v-empregados .g-directory-table tbody tr { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; padding: 16px; border: 1px solid var(--g-color-border); border-radius: var(--g-radius-md); background: var(--g-color-surface); }
  #v-empregados .g-directory-table td { min-width: 0; padding: 0; border: 0; display: grid; align-content: start; gap: 8px; }
  #v-empregados .g-directory-table td::before { content: attr(data-label); font-size: 12px; color: var(--g-color-muted); font-weight: 600; }
  #v-empregados .g-directory-table td:first-child, #v-empregados .g-directory-table td:last-child { grid-column: 1 / -1; }
  #v-empregados .g-directory-table td:first-child::before, #v-empregados .g-directory-table td:last-child::before { display: none; }
  #v-empregados .g-employee-actions { padding-top: 12px; border-top: 1px solid var(--g-color-border); }
}
@media (max-width:430px) {
  #v-empregados .g-directory-table tbody tr { grid-template-columns: minmax(0,1fr); }
}

.g-identity-records { padding:16px; background:oklch(96% .012 155); min-height:100%; box-sizing:border-box; }
.g-identity-records > p { margin:0 0 16px; font-size:12px; color:var(--g-color-ink-soft); }
.g-identity-chat { display:grid; gap:14px; padding-bottom:16px; }
.g-identity-chat article { width:fit-content; max-width:min(92%,65ch); min-width:180px; box-sizing:border-box; padding:12px 14px 8px; border:1px solid oklch(88% .016 155); border-radius:3px 12px 12px 12px; background:oklch(99% .004 155); overflow-wrap:anywhere; }
.g-identity-message-origin { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; }
.g-identity-message-origin strong { color:oklch(37% .065 160); font-size:13px; }
.g-identity-message-origin span { color:var(--g-color-ink-soft); font-size:12px; }
.g-identity-record-body { margin:8px 0; white-space:pre-wrap; font-size:14px; line-height:1.55; color:var(--g-color-ink); }
.g-identity-record-meta { display:block; text-align:right; color:var(--g-color-ink-soft); font-size:12px; }
.g-identity-chat .is-unavailable { background:transparent; border-style:dashed; }
@media(max-width:600px) { .g-identity-records { padding:12px; } .g-identity-chat article { max-width:100%; min-width:0; } }

.g-identity-chat-group > h3 { margin:4px 0 12px; padding:8px 0; font-size:14px; font-weight:650; color:var(--g-color-ink); border-bottom:1px solid var(--g-color-border); overflow-wrap:anywhere; }
.g-identity-chat-group > [role="list"] { display:grid; gap:12px; }
.g-identity-chat-group + .g-identity-chat-group { margin-top:12px; }

.g-people-farm-group + .g-people-farm-group { margin-top:24px; }
.g-people-farm-group > h3 { margin:0 0 10px; font-size:16px; color:var(--g-color-ink); }
