/* Minha conta e administração nominal: mesmas superfícies dos detalhes comerciais. */
.pc-conta-icone { width: 16px; height: 16px; flex: 0 0 auto; vertical-align: middle; }
.pc-conta-pagina { max-width: 680px; margin: 32px auto; padding: 0 24px; }
.pc-conta-pagina__cabecalho { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 20px; }
.pc-conta-pagina__cabecalho h1 { margin: 0; font-size: 24px; }
.pc-conta-conteudo { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.pc-conta-cartao { background: var(--superficie, #fff); border: 1px solid #c7d2cc; border-radius: 12px; overflow: hidden; }
.pc-conta-faixa { height: 68px; background: repeating-linear-gradient(45deg,#006e651a 0 2px,transparent 2px 8px),#eaf3f1; border-bottom: 1px solid #d5e5e1; }
.pc-conta-identidade__corpo { padding: 0 22px 20px; }
.pc-conta-identidade__topo { display: flex; align-items: flex-start; gap: 14px; margin-top: -26px; }
.pc-conta-identidade__topo > div { padding-top: 32px; min-width: 0; }
.pc-conta-identidade h2 { margin: 12px 0 6px; font-size: 20px; overflow-wrap: anywhere; }
.pc-conta-identidade p { overflow-wrap: anywhere; }
.pc-conta-avatar { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; flex: none; border-radius: 18px; border: 4px solid var(--superficie, #fff); background: #00524b; color: #fff; font-size: 20px; font-weight: 700; }
.pc-conta-avatar--mini { width: 36px; height: 36px; border: none; border-radius: 11px; background: #dcebe7; color: #00524b; font-size: 12px; }
.pc-conta-grade { display: grid; grid-template-columns: 1fr .7fr 1.4fr; gap: 14px 22px; margin: 20px 0 0; padding: 16px 0; border-block: 1px solid var(--color-border, #e6e4dd); }
.pc-conta-grade dt { color: var(--texto-secundario, #696d6b); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px; }
.pc-conta-grade dd { margin: 0; font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
.pc-conta-aviso { display: flex; align-items: flex-start; gap: 10px; background: #fafaf7; border: 1px solid var(--color-border, #e6e4dd); border-radius: 10px; padding: 12px 14px; margin: 16px 0; font-size: 12px; line-height: 1.6; }
.pc-conta-aviso .pc-conta-icone { color: var(--color-primary, #006e65); margin-top: 3px; }
.pc-conta-aviso p { margin: 0; }
.pc-conta-acoes { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pc-conta-acoes form { margin-left: auto; }
.pc-conta-conteudo .pc-botao, .pc-contas-pagina .pc-botao, .pc-contas-dialogo .pc-botao { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 0 16px; border: 1px solid #ded9cb; border-radius: 12px; background: #fff; color: var(--texto-primario, #1b1f1e); font: inherit; font-size: 12px; font-weight: 600; text-decoration: none; cursor: pointer; }
.pc-conta-conteudo .pc-botao:hover, .pc-contas-pagina .pc-botao:hover { background: #f5f2e8; }
.pc-conta-conteudo .pc-botao--primario, .pc-contas-pagina .pc-botao--primario { background: #006e65; color: #fff; border-color: #006e65; min-height: 44px; }
.pc-conta-conteudo .pc-botao--primario:hover, .pc-contas-pagina .pc-botao--primario:hover { background: #00524b; }
.pc-conta-conteudo .pc-botao:disabled, .pc-contas-pagina .pc-botao:disabled { opacity: .5; cursor: not-allowed; }
.pc-conta-conteudo .pc-conta-sair { color: #006e65; border-color: #006e65; }
.pc-conta-conteudo .pc-etiqueta { display: inline-flex; padding: 3px 9px; border-radius: 6px; color: #005b54; background: #dcebe7; font-size: 11px; font-weight: 700; }
.pc-conta-senha { padding: 20px 22px 22px; }
.pc-conta-senha h2 { display: flex; align-items: center; gap: 10px; font-size: 15px; margin: 0 0 16px; }
.pc-conta-senha .pc-campo { display: flex; flex-direction: column; gap: 6px; margin-bottom: 14px; }
.pc-conta-senha label { font-size: 12px; font-weight: 600; }
.pc-conta-entrada { position: relative; }
.pc-conta-entrada input { width: 100%; min-height: 44px; padding: 0 44px 0 12px; font: inherit; font-size: 14px; color: var(--texto-primario, #1b1f1e); background: #fafaf7; border: 1px solid #ded9cb; border-radius: 12px; }
.pc-conta-olho { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); border: none; border-radius: 8px; background: transparent; width: 32px; height: 32px; padding: 0; color: #696d6b; cursor: pointer; }
.pc-conta-olho[aria-pressed="true"]::after { content: ''; position: absolute; left: 6px; top: 15px; width: 20px; height: 2px; transform: rotate(45deg); background: currentColor; }
.pc-conta-olho:hover { background: #f5f2e8; }
.pc-conta-form-rodape { display: flex; align-items: center; gap: 20px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--color-border, #e6e4dd); }
.pc-conta-form-rodape p { flex: 1; margin: 0; font-size: 12px; line-height: 1.55; }
.pc-conta-form-rodape .pc-botao { flex: none; }
.pc-conta-conteudo .pc-admin__aviso { padding: 12px 14px; border-left: 3px solid #006e65; background: #dcebe7; border-radius: 10px; }
.pc-conta-conteudo .pc-admin__aviso--erro { border-color: #b3261e; background: #b3261e10; }
html.pc-contas-modal-aberto { overflow: hidden; }
dialog.pc-contas-dialogo { width: min(1080px, 94vw); max-width: min(1080px, 94vw); }
dialog.pc-contas-dialogo--conta, dialog.pc-contas-dialogo--cadastro { width: min(680px, 94vw); max-width: min(680px, 94vw); }
.pc-contas-dialogo [data-detalhe-conta] { padding: 0; margin: 0; width: 100%; max-width: none; gap: 16px; }
.pc-contas-dialogo [data-detalhe-conta] > .pc-admin__trilha, .pc-contas-dialogo [data-detalhe-conta] > .pc-admin__abas { display: none; }
.pc-contas-dialogo [data-detalhe-conta] > .pc-admin__cabecalho { padding: 0; border: 0; }
.pc-contas-dialogo [data-detalhe-conta] > .pc-admin__cabecalho .pc-admin__atalhos, .pc-contas-dialogo [data-detalhe-conta] > .pc-admin__cabecalho h1, .pc-contas-dialogo [data-detalhe-conta] > .pc-admin__cabecalho .pc-admin__sobretitulo { display: none; }
.pc-contas-pagina { max-width: none; gap: 20px; padding-inline: var(--respiro-pagina,24px); }
.pc-contas-cabecalho-acoes { justify-content: flex-end; }
.pc-contas-indicadores { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.pc-contas-indicador { padding: 14px 18px; border: 1px solid #ded9cb; border-left: 3px solid #006e65; border-radius: 12px; background: #fff; color: inherit; text-decoration: none; }
.pc-contas-indicador small { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .06em; color: var(--texto-secundario,#696d6b); margin-bottom: 6px; }
.pc-contas-indicador strong { font-family: var(--fonte-numero, monospace); font-size: 26px; }
.pc-contas-indicador:hover { background: #006e650a; }
.pc-contas-lista > h2 { display: flex; align-items: center; gap: 8px; }
.pc-contas-lista > h2 small { font-size: 12px; font-weight: 400; color: var(--texto-secundario); }
.pc-contas-chips { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 16px; font-size: 12px; }
.pc-contas-chip { display: inline-flex; align-items: center; gap: 6px; border-radius: 999px; background: #dcebe7; color: #00524b; padding: 5px 10px; text-decoration: none; }
.pc-contas-chip .pc-conta-icone { width: 12px; height: 12px; }
.pc-contas-tabela-wrap { width: 100%; margin-top: 16px; }
.pc-contas-tabela { width: 100%; table-layout: fixed; min-width: 0; border-collapse: collapse; }
.pc-contas-tabela :is(th,td) { padding: 12px 8px; white-space: normal; overflow-wrap: anywhere; }
.pc-contas-tabela th { font-size: 11px; }
.pc-contas-tabela th button { padding: 0; border: 0; background: none; font: inherit; color: inherit; font-weight: 600; cursor: pointer; text-align: left; }
.pc-contas-tabela td { font-size: 13px; }
.pc-contas-tabela tr[data-conta] { cursor: pointer; }
.pc-contas-tabela tr[data-conta]:hover td { background: #f7f6f0; }
.pc-contas-tabela [hidden] { display: none; }
.pc-contas-pessoa { display: flex; align-items: center; gap: 12px; min-width: 0; }
.pc-contas-pessoa > div { min-width: 0; flex: 1; }
.pc-contas-reticencias { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
.pc-contas-pessoa code { font-size: 11.5px; color: var(--texto-secundario); }
.pc-contas-pessoa a { font-weight: 600; }
.pc-contas-tabela .pc-etiqueta { max-width: 100%; padding-inline: 7px; font-size: 11px; }
.pc-contas-tentativas { display: inline-block; padding: 3px 9px; border-radius: 999px; }
.pc-contas-tentativas--alerta { color: #8a5a00; background: #fff4dc; font-weight: 700; }
.pc-contas-grupo { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.pc-contas-detalhe { display: grid; grid-template-columns: 330px minmax(0,1fr); gap: 20px; align-items: start; }
.pc-contas-detalhe__identidade, .pc-contas-detalhe__edicao, [data-conta-painel] { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.pc-contas-detalhe__identidade .pc-conta-avatar { margin-top: -26px; }
.pc-contas-detalhe .pc-admin__ficha { grid-template-columns: minmax(0,1fr); }
.pc-contas-detalhe .pc-admin__cartao { padding: 20px; min-width: 0; }
.pc-contas-detalhe .pc-admin__acoes { flex-direction: column; }
.pc-contas-detalhe .pc-admin__acoes button { width: 100%; text-align: left; min-height: 40px; }
.pc-contas-abas { display: flex; gap: 4px; border-bottom: 1px solid #ded9cb; }
.pc-contas-abas button { border: 0; border-bottom: 2px solid transparent; background: none; color: var(--texto-secundario); padding: 10px 14px; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.pc-contas-abas button[aria-selected="true"] { color: #006e65; border-bottom-color: #006e65; }
.pc-contas-detalhe [data-conta-painel][hidden] { display: none; }
.pc-contas-detalhe [data-conta-salvar-botao] { justify-self: end; }
.pc-contas-detalhe [data-salvo] { background: #3f7a5c; border-color: #3f7a5c; }
.pc-contas-dialogo .pc-admin__papeis { width: 100%; }
.pc-contas-dialogo [data-cadastro-conta] .pc-admin__formulario { grid-template-columns: repeat(2,minmax(0,1fr)); }
.pc-contas-dialogo [data-cadastro-conta] .pc-admin__areas { grid-column: 1 / -1; }
.pc-contas-dialogo [data-cadastro-conta] button[type="submit"] { justify-self: end; grid-column: 1 / -1; }
.pc-conta-conteudo :is(input,button,a):focus-visible, .pc-contas-pagina :is(input,select,button,a,tr):focus-visible { outline: 2px solid #006e65; outline-offset: 2px; }
@media (max-width: 900px) {
  .pc-contas-detalhe { grid-template-columns: minmax(0,1fr); }
  .pc-contas-indicadores { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .pc-conta-grade { grid-template-columns: minmax(0,1fr); }
  .pc-conta-form-rodape { flex-direction: column; align-items: stretch; }
  .pc-conta-acoes form { margin-left: 0; }
  .pc-contas-tabela colgroup, .pc-contas-tabela thead { display: none; }
  .pc-contas-tabela tbody, .pc-contas-tabela tr:not([hidden]) { display: block; width: 100%; }
  .pc-contas-tabela tr[data-conta] { margin-block: 12px; border: 1px solid var(--color-border); border-radius: 12px; overflow: hidden; }
  .pc-contas-tabela tr[data-conta] td { display: grid; grid-template-columns: 110px minmax(0,1fr); gap: 8px; width: 100%; }
  .pc-contas-tabela tr[data-conta] td::before { content: attr(data-coluna); font-weight: 600; font-size: 12px; color: var(--texto-secundario); }
  .pc-contas-tabela .pc-admin__grupo th { display: block; width: 100%; }
  .pc-contas-grupo { flex-wrap: wrap; }
  .pc-contas-dialogo [data-cadastro-conta] .pc-admin__formulario { grid-template-columns: minmax(0,1fr); }
}

.pc-conta-sobretitulo { margin: 0; color: var(--texto-secundario, #696d6b); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.pc-contas-tabela .pc-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* A administração e a saída compartilham os controles existentes. */
.pc-contas-pagina a, .pc-contas-dialogo a { text-decoration: none; }
.pc-contas-pagina .pc-admin__atalhos .pc-botao, .pc-contas-pagina .pc-admin__trilha .pc-botao { min-height: 32px; padding: 0 10px; }
.pc-contas-pagina .pc-admin__filtros { grid-template-columns: repeat(4,minmax(0,1fr)) auto; }
.pc-contas-pagina .pc-admin__abas a { display: flex; gap: 8px; align-items: center; }
.pc-contas-pagina .pc-admin__abas a span { font-size: 11px; background: #edf2ef; padding: 2px 7px; border-radius: 999px; }
dialog.pc-contas-dialogo--saida { width: min(490px,94vw); max-width: min(490px,94vw); }
.pc-contas-dialogo--saida .pc-painel-flutuante__cabecalho strong { flex: 1; }
.pc-contas-dialogo--saida .pc-painel-flutuante__cabecalho .pc-info__botao { flex: none; }
.pc-saida-identidade { display: flex; gap: 12px; align-items: center; padding: 16px; border: 1px solid #ded9cb; border-radius: 12px; background: #fafaf7; }
.pc-saida-identidade small { display: block; margin-top: 4px; color: var(--texto-secundario); }
.pc-contas-dialogo--saida form .pc-conta-acoes { justify-content: flex-end; }
.pc-auditoria .pc-tabela { width: 100%; min-width: 0; table-layout: fixed; }
.pc-auditoria .pc-tabela :is(th,td) { white-space: normal; overflow-wrap: anywhere; }
.pc-auditoria .pc-tabela th:first-child { width: 17%; }
.pc-auditoria .pc-tabela th:nth-child(2) { width: 21%; }
.pc-auditoria-detalhe[hidden] { display: none; }
.pc-auditoria-detalhe dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; padding: 12px; }
.pc-auditoria-detalhe dt { font-size: 11px; color: var(--texto-secundario); }
.pc-auditoria-detalhe dd { margin: 4px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.pc-auditoria-evento { display: inline-block; padding: 4px 8px; border-radius: 6px; font-size: 11px; font-weight: 600; background: #edf2ef; color: #00524b; }
.pc-auditoria-evento--tentativas, .pc-auditoria-evento--recusas { background: #fff4dc; color: #8a5a00; }
.pc-auditoria-evento--administracao, .pc-auditoria-evento--permissoes { background: #e9edf8; color: #354f91; }
.pc-auditoria-evento--exportacao { background: #eee7f6; color: #664287; }
.pc-auditoria .pc-auditoria-expandir { min-height: 28px; padding: 2px 8px; margin-top: 4px; font-size: 11px; }
.pc-contas-dialogo .pc-info__botao { display: inline-flex; }
@media (max-width:900px) {
  .pc-contas-pagina .pc-admin__filtros { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pc-auditoria-detalhe dl { grid-template-columns: minmax(0,1fr); }
}
@media (max-width:480px) { .pc-contas-pagina .pc-admin__filtros { grid-template-columns: minmax(0,1fr); } }
.pc-contas-pagina .pc-admin__sobretitulo { letter-spacing: .08em; }
.pc-contas-pagina .pc-admin__cabecalho h1 { font-size: 24px; }
.pc-contas-pagina .pc-admin__descricao { font-size: 13px; }

@media (max-width:720px) {
  .pc-auditoria .pc-tabela thead { display: none; }
  .pc-auditoria .pc-tabela tbody, .pc-auditoria .pc-tabela tr:not([hidden]) { display: block; width: 100%; }
  .pc-auditoria .pc-tabela tr[data-evento] { margin-block: 12px; border: 1px solid var(--color-border); border-radius: 12px; overflow: hidden; }
  .pc-auditoria .pc-tabela tr[data-evento] td { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 8px; width: 100%; }
  .pc-auditoria .pc-tabela tr[data-evento] td::before { content: attr(data-coluna); color: var(--texto-secundario); font-size: 12px; font-weight: 600; }
  .pc-auditoria .pc-tabela .pc-auditoria-expandir { grid-column: 2; justify-self: start; }
  .pc-auditoria .pc-tabela .pc-auditoria-detalhe td { display: block; width: 100%; }
}
@media (max-width:720px) {
  .pc-auditoria .pc-tabela td, .pc-contas-tabela tr[data-conta] td { height: auto; min-height: 36px; padding-block: 8px; position: static; }
}
