/* Conversas pela ponte: leitura, anexos e decisões com hierarquia própria. */
html:root[data-tema] .iamac {
  --chat-pedido-fundo: rgb(18 69 55 / .4);
  --chat-pedido-borda: #7daa9180;
  --chat-pedido-tinta: #e3f2e9;
  --chat-pedido-apoio: #b6d6c5;
  --chat-resposta-fundo: rgb(24 21 17 / .4);
  --chat-resposta-borda: #bda97f5e;
  --chat-arquivo-fundo: rgb(21 20 17 / .4);
  gap: 16px;
}
html:root[data-tema="claro"] .iamac {
  --chat-pedido-fundo: rgb(164 211 188 / .4);
  --chat-pedido-borda: #416d5680;
  --chat-pedido-tinta: #173a2c;
  --chat-pedido-apoio: #335b48;
  --chat-resposta-fundo: rgb(247 240 221 / .4);
  --chat-resposta-borda: #8c744052;
  --chat-arquivo-fundo: rgb(247 242 230 / .4);
}
.iamac-cabecalho { min-width: 0; }
/* O campo faz parte da cápsula; as regras globais de inputs não criam uma
   segunda placa/linha sob o texto. */
html:root[data-tema] #conteudo .iamac .chat-entrada textarea {
  background: transparent; box-shadow: none; border: 0; field-sizing: fixed;
}
html:root[data-tema] #conteudo .iamac .chat-entrada textarea:focus-visible { outline: none; }
html:root[data-tema] #conteudo .iamac .chat-entrada:has(textarea:focus-visible) {
  outline: 2px solid var(--foco); outline-offset: 3px;
}
html:root[data-tema] .iamac .chat-cabecalho { display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 14px; padding: 0; margin: 0; border: 0; background: none; box-shadow: none; }
html:root[data-tema] .iamac .chat-titulo { flex: 1 1 200px; min-width: 0; text-align: start; gap: 5px; }
html:root[data-tema] .iamac .chat-titulo strong { font-size: 19px; line-height: 1.4; font-weight: 680; white-space: normal; -webkit-line-clamp: 2; }
.iamac .chat-titulo > span { font-size: 12px; }
.iamac .iamac-conexao-resumo { margin: 0 0 12px; font-size: 11.5px; }
html:root[data-tema] .iamac .chat-acoes { display: flex; flex-wrap: nowrap; width: auto; gap: 8px; }
html:root[data-tema] .iamac .chat-acao { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 8px 12px; font-size: 12px; border-radius: 13px; }
.iamac .iamac-detalhes-conexao { margin: 12px 0 0; font-size: 12px; }
.iamac-detalhes-conexao > summary { min-height: 36px; padding-block: 7px; }
.iamac-trabalho { gap: 16px; min-height: var(--iamac-altura-minima, 0px); }
html:root[data-tema] .iamac .iamac-caixa { padding: 18px 4px 24px; gap: 22px; scroll-padding-block: 20px; }
html:root[data-tema] .iamac .mensagem {
  width: auto; max-width: min(100%, 760px); padding: 18px;
  font-size: calc(15px * var(--escala-texto)); line-height: 1.65;
  text-align: start; text-align-last: auto; -webkit-hyphens: manual; hyphens: manual;
  border-radius: 20px; box-shadow: none; white-space: normal;
}
html:root[data-tema] .iamac .mensagem :is(p, li, blockquote) { text-align: start; text-align-last: auto; -webkit-hyphens: manual; hyphens: manual; }
html:root[data-tema] .iamac .mensagem.usuario { max-width: min(90%, 680px); background: var(--chat-pedido-fundo); border: 1px solid var(--chat-pedido-borda); color: var(--chat-pedido-tinta); border-bottom-right-radius: 7px; }
html:root[data-tema] .iamac .mensagem.assistente { background: var(--chat-resposta-fundo); border: 1px solid var(--chat-resposta-borda); padding-inline-start: 18px; border-bottom-left-radius: 7px; }
html:root[data-tema] .iamac .mensagem.assistente::before { inset-inline-start: 18px; top: 17px; }
.iamac-mensagem-cab { display: flex; align-items: center; gap: 10px; min-height: 32px; margin-bottom: 12px; font-size: 12px; line-height: 1.4; color: var(--tinta-2); }
.iamac-mensagem-cab > strong { color: var(--metal-texto, var(--acento-claro)); font-weight: 650; }
.iamac .usuario .iamac-mensagem-cab, .iamac .usuario .iamac-mensagem-cab > strong { color: var(--chat-pedido-apoio); }
html:not([data-aki-avatar="oculto"]) .iamac .assistente > .iamac-mensagem-cab { padding-inline-start: 42px; min-height: 34px; }
.iamac-mensagem-cab time { margin-inline-start: auto; color: inherit; font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.iamac-mensagem-estado { font-size: 11px; font-weight: 400; }
.iamac-texto-usuario { white-space: pre-wrap; }
.iamac .iamac-texto { line-height: 1.7; }
.iamac .iamac-texto p { margin: 0 0 16px; }
.iamac .iamac-texto p:last-child { margin-bottom: 0; }
.iamac .iamac-texto :is(ul, ol) { padding-inline-start: 20px; margin-block: 12px; }
.iamac .iamac-texto li + li { margin-top: 7px; }
.iamac .iamac-meta { font-size: 11px; color: var(--tinta-2); }
.iamac .iamac-passos { padding-block: 2px; font-size: 12px; }
.iamac .iamac-passos > summary { white-space: normal; min-height: 36px; padding-block: 7px; }
.iamac .iamac-passos ul { margin-block: 10px; gap: 9px; }
.iamac .iamac-passos .iamac-passo { gap: 10px; }
.iamac .iamac-resposta { gap: 12px; }
.iamac-resposta > .iamac-mensagem-cab { margin-bottom: 0; }
.iamac-mensagem-ferramentas { display: flex; flex-wrap: wrap; align-items: start; gap: 4px 8px; padding-top: 10px; margin-top: 14px; border-top: 1px solid var(--hairline); font-size: 11.5px; line-height: 1.3; white-space: normal; }
.iamac-resposta > .iamac-mensagem-ferramentas { margin-top: 4px; }
.iamac-mensagem-ferramentas :is(button, summary), .iamac-arquivo-acoes button {
  display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 40px; padding: 7px 8px;
  border: 1px solid transparent; border-radius: 9px; background: none; color: var(--tinta-2); font: inherit; cursor: pointer;
}
.iamac-mensagem-ferramentas > .msg-ouvir { margin: 0; font-size: inherit; border-color: transparent; }
.iamac-mensagem-ferramentas > details { min-width: 0; }
.iamac-ferramentas-mais > summary { list-style: none; }
.iamac-ferramentas-mais > summary::-webkit-details-marker { display: none; }
.iamac-ferramentas-extras { display: flex; flex-wrap: wrap; gap: 4px; padding: 8px; border: 1px solid var(--borda-forte); border-radius: 12px; }
.iamac-ferramentas-mais[open] { flex: 1 1 100%; }
.iamac .usuario .iamac-mensagem-ferramentas { border-color: var(--chat-pedido-borda); }
.iamac .usuario .iamac-mensagem-ferramentas :is(button, summary) { color: var(--chat-pedido-apoio); }
.iamac .mensagem :is(.iamac-texto, .iamac-texto-usuario) { -webkit-user-select: text; user-select: text; -webkit-touch-callout: default; }
.iamac-selecao-texto { width: 100%; min-height: 38dvh; max-height: 60dvh; font: 16px/1.65 var(--fonte); resize: vertical; white-space: pre-wrap; }
.iamac-arquivos-grade { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap: 12px; margin-top: 10px; }
.iamac-arquivo.iamac-item {
  min-width: 0; display: flex; flex-direction: column; gap: 0; padding: 0; overflow: hidden;
  border: 1px solid var(--controle-borda, var(--borda-forte)); border-radius: 15px;
  background: var(--chat-arquivo-fundo, var(--lente-base)); color: var(--tinta);
}
.iamac-arquivo .iamac-arquivo-abrir {
  display: flex; align-items: center; gap: 12px; width: 100%; min-width: 0; padding: 12px; text-align: start;
  border: 0; background: none; color: inherit; font: inherit; cursor: pointer;
}
.iamac-arquivo-visual { position: relative; display: grid; place-content: center; gap: 7px; flex: 0 0 76px; width: 76px; height: 90px; overflow: hidden; border-radius: 8px; background: rgb(175 160 130 / .12); color: var(--metal-texto, var(--acento)); }
.iamac-arquivo-visual :is(img, canvas) { width: 76px; height: 90px; object-fit: cover; object-position: top; background: #fff; }
.iamac-arquivo-formato { font-size: 10px; font-weight: 700; text-align: center; }
.iamac-arquivo-meta { display: grid; gap: 5px; flex: 1; min-width: 0; }
.iamac-arquivo-meta > strong { font-size: 12.5px; font-weight: 600; color: var(--tinta); overflow-wrap: anywhere; line-height: 1.45; }
.iamac-arquivo-meta > small { color: var(--tinta-2); font-size: 10px; line-height: 1.4; }
.iamac-arquivo-status { font-size: 10px; color: var(--tinta-2); line-height: 1.4; }
.iamac-arquivo-extrato { display: block; align-self: stretch; padding: 8px; width: 76px; height: 90px; overflow: hidden; background: #faf8f1; color: #37332a; text-align: start; font: 6px/1.55 var(--fonte); white-space: pre-wrap; word-break: break-word; }
.iamac-arquivo-acoes { display: flex; justify-content: flex-end; gap: 8px; padding: 0 6px 4px; font-size: 11px; }
.iamac-arquivo-acoes button { min-height: 36px; color: var(--metal-texto, var(--acento)); }
.iamac-arquivo[aria-busy="true"] .iamac-arquivo-visual { opacity: .6; }
html:root[data-tema] .iamac .iamac-anexos-pendentes { display: flex; gap: 10px; overflow-x: auto; max-height: 120px; padding-block: 4px; }
.iamac-anexos-pendentes > .iamac-arquivo { flex: 0 0 min(280px, 88%); position: relative; padding-inline-end: 28px; }
.iamac-anexos-pendentes .iamac-arquivo-visual { flex-basis: 52px; width: 52px; height: 64px; }
.iamac-anexos-pendentes .iamac-arquivo-visual :is(img, canvas), .iamac-anexos-pendentes .iamac-arquivo-extrato { width: 52px; height: 64px; }
.iamac-anexos-pendentes .iamac-arquivo-acoes { position: absolute; inset-inline-end: 2px; top: 2px; padding: 0; }
.iamac-arquivo-ampliado { display: block; width: 100%; max-height: 66dvh; object-fit: contain; }
.iamac-arquivo-leitura { padding: 16px; max-height: 60dvh; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; font: 14px/1.7 var(--fonte); text-align: start; -webkit-user-select: text; user-select: text; }
.modal:has(> .iamac-selecao) { display: flex; flex-direction: column; height: min(88dvh, 780px); overflow: hidden; }
.modal:has(> .iamac-selecao)::before { position: static; flex: 0 0 4px; margin: 8px auto 0; transform: none; }
.modal:has(> .iamac-selecao) > .modal-cab, .modal:has(> .iamac-selecao) > .modal-acoes { position: relative; flex: 0 0 auto; }
.modal > .iamac-selecao { flex: 1; min-height: 0; overflow: auto; }
.modal > .iamac-selecao textarea { min-height: min(38dvh, 230px); }
html:root[data-tema] .iamac .iamac-compositor { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
html:root[data-tema] .iamac .iamac-barra { padding: 0; gap: 10px; flex-wrap: wrap; align-items: center; font-size: 11.5px; }
.iamac .iamac-barra > label { display: flex; align-items: center; gap: 8px; }
.iamac .iamac-barra .iamac-ia { max-width: 160px; }
html:root[data-tema] .iamac .iamac-entrada { padding: 10px; gap: 8px; }
html:root[data-tema] .iamac .iamac-entrada textarea { min-height: 48px; max-height: 120px; padding: 10px 4px; line-height: 1.5; }
.iamac .iamac-continuar { display: flex; flex-wrap: wrap; gap: 10px; margin-block: 0 8px; }
.iamac .iamac-continuar .botao { font-size: 12px; min-height: 44px; }
.iamac-solicitacao { min-width: 0; display: grid; gap: 14px; padding: 20px; border-radius: 20px; text-shadow: var(--janela-sombra-texto); }
.iamac-solicitacao-cab { display: flex; align-items: center; gap: 12px; }
.iamac-solicitacao-cab > .icone { color: var(--metal-texto, var(--acento)); }
.iamac-solicitacao-cab > div { display: grid; gap: 4px; min-width: 0; }
.iamac-solicitacao-cab small { font-size: 11px; font-weight: 400; color: var(--tinta-2); }
.iamac-solicitacao-cab strong { font-size: 16px; line-height: 1.4; color: var(--metal-texto, var(--acento-claro)); }
.iamac-solicitacao p { margin: 0; text-align: start; line-height: 1.65; }
.iamac-solicitacao .iamac-solicitacao-resumo { font-size: 14px; }
.iamac-solicitacao :is(.iamac-solicitacao-tipo, .iamac-solicitacao-ajuda, .iamac-solicitacao-status) { color: var(--tinta-2); font-size: 12px; }
.iamac-solicitacao-detalhes > summary { min-height: 40px; padding-block: 8px; font-size: 12px; cursor: pointer; }
.iamac-solicitacao .iamac-permissao-acoes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.iamac-solicitacao .iamac-permissao-acoes > :last-child:nth-child(3) { grid-column: 1 / -1; }
.iamac-solicitacao .iamac-permissao-acoes .botao { min-width: 0; min-height: 46px; font-size: 12px; padding-inline: 12px; }
.iamac-pergunta fieldset { border-top: 1px solid var(--hairline); padding-top: 16px; gap: 12px; }
.iamac-pergunta legend { font-size: 14px; line-height: 1.5; padding-block: 4px; }
.iamac-pergunta .iamac-alternativa { padding: 14px; gap: 12px; }
.iamac-pergunta .iamac-alternativa small { margin-top: 4px; font-size: 12px; line-height: 1.5; }
.iamac-pergunta .iamac-resposta-livre { font-size: 12px; gap: 8px; }
.iamac-pergunta textarea { font-size: 16px; min-height: 72px; }
.iamac-permissoes-globais .iamac-solicitacao { overflow: visible; }
@media (max-width: 760px) {
  html:root[data-tema] .iamac .chat-titulo { flex-basis: 100%; }
  html:root[data-tema] .iamac .chat-acoes { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) 44px; gap: 8px; }
  html:root[data-tema] .iamac .chat-acoes:not(:has(> :nth-child(4))) { grid-template-columns: repeat(2, minmax(0, 1fr)) 44px; }
  html:root[data-tema] .iamac .chat-acao { padding-inline: 6px; font-size: 11.5px; }
  html:root[data-tema] .iamac .chat-acao svg { display: inline-block; }
  html:root[data-tema] .iamac .mensagem.assistente { width: 100%; }
}
@media (max-width: 360px) {
  html:root[data-tema] .iamac .mensagem { padding: 14px; font-size: calc(14px * var(--escala-texto)); }
  html:root[data-tema] .iamac .mensagem.assistente::before { inset-inline-start: 14px; top: 13px; }
  html:root[data-tema] .iamac .chat-acao { font-size: 10.5px; gap: 3px; }
  .iamac-mensagem-ferramentas { gap: 2px; }
  .iamac-solicitacao { padding: 16px; }
}
@media (max-height: 520px) and (min-width: 600px) {
  .iamac-cabecalho { display: grid; grid-template-areas: 'chat chat' 'status detalhes'; grid-template-columns: auto minmax(0, 1fr); gap: 4px 18px; align-items: center; }
  html:root[data-tema] .iamac .chat-cabecalho { grid-area: chat; flex-wrap: nowrap; gap: 12px; }
  html:root[data-tema] .iamac .chat-titulo { flex: 1; }
  html:root[data-tema] .iamac .chat-titulo strong { font-size: 15px; }
  .iamac .iamac-conexao-resumo { grid-area: status; margin: 0; font-size: 10px; }
  .iamac .iamac-detalhes-conexao { grid-area: detalhes; margin: 0; font-size: 10px; }
  .iamac-detalhes-conexao > summary { min-height: 28px; padding-block: 4px; }
  html:root[data-tema] .iamac .chat-acoes { width: auto; display: flex; }
  html:root[data-tema] .iamac .iamac-compositor { display: grid; grid-template-columns: minmax(145px, .65fr) minmax(0, 1.35fr); gap: 8px 12px; }
  .iamac .iamac-barra { grid-column: 1; grid-row: 1; }
  .iamac .iamac-anexos-pendentes { grid-column: 1; grid-row: 2; }
  .iamac .iamac-entrada { grid-column: 2; grid-row: 1 / 3; }
  html:root[data-tema] .iamac .iamac-caixa { padding-block: 10px; }
}
@media (any-hover: hover) {
  .iamac-mensagem-ferramentas :is(button, summary):hover, .iamac-arquivo-acoes button:hover { background: var(--acento-tinto); border-color: var(--borda); }
  .iamac-arquivo-abrir:hover { background: var(--acento-tinto); }
}
.iamac-mensagem-ferramentas :is(button, summary):focus-visible, .iamac-arquivo :is(button, a):focus-visible { outline: 2px solid var(--foco, var(--acento)); outline-offset: -3px; }
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  html:root[data-tema] .iamac { --chat-pedido-fundo: #173e33; --chat-resposta-fundo: var(--superficie); --chat-arquivo-fundo: var(--superficie); }
  html:root[data-tema="claro"] .iamac { --chat-pedido-fundo: #d2e8da; }
}
@media (forced-colors: active) {
  .iamac .mensagem, .iamac-arquivo, .iamac-solicitacao { border: 1px solid CanvasText; }
}
