/* Opção A: NK integra a mesma barra lateral; a conversa de voz continua visível.
   Só a casca com suporte ao novo encaixe ativa estas regras. */
/* A navegação inerte também sai da pintura: janelas translúcidas não devem
   misturar seus textos com as abas. Não muda a reserva nem a posição da página. */
html:has(#camada-modal > .modal[aria-modal="true"], dialog:modal) .nav-inferior {
  visibility: hidden;
}
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) { --rail: 100px; --dock-lateral: 74px; }
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) body { padding-bottom: 0; }
/* Brasão e menu compartilham a mesma coluna, inclusive na área segura. */
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .topo {
  padding-left: max(14px, env(safe-area-inset-left));
}
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .topo-marca {
  flex: 0 0 var(--dock-lateral);
  justify-content: center;
}
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .nav-inferior {
  top: calc(var(--altura-topo) + 10px + env(safe-area-inset-top));
  left: max(14px, env(safe-area-inset-left)); right: auto; bottom: auto;
  width: var(--dock-lateral); max-height: calc(100dvh - var(--altura-topo) - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  flex-direction: column; gap: 0; padding: 10px 6px; border-radius: 38px;
  overflow: hidden; transform: none;
}
.aki-nav-rolagem {
  display: flex; flex-direction: column; gap: 4px; flex: 1 1 auto;
  min-height: 0; width: 100%; overflow-y: auto; overflow-x: hidden; scrollbar-width: none;
}
.aki-nav-rolagem::-webkit-scrollbar { display: none; }
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .nav-item {
  flex: 0 0 auto; width: 100%; min-height: 44px; padding: 3px 0; gap: 0;
}
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .nav-item .nav-icone { min-width: 44px; min-height: 44px; padding: 10px; }
html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .nav-item span:last-child {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.aki-menu-nativo-lugar {
  flex: 0 0 78px; padding-top: 9px; margin-top: 8px;
  width: 100%; border-top: 1px solid var(--barra-ouro);
}
.aki-menu-nativo-alvo { width: 100%; height: 68px; }
html[data-aki-menu-posicao="lateral"] :is(.iamac-compositor, .chat-entrada:not(.iamac-entrada)) {
  bottom: max(env(safe-area-inset-bottom), var(--aki-teclado-inset, 0px));
}
html[data-aki-menu-posicao="lateral"] .voz-doca { bottom: calc(8px + env(safe-area-inset-bottom)); }
html[data-aki-menu-posicao="lateral"] :is(.iamac-compositor, .chat-entrada:not(.iamac-entrada))::after { display: none; }
@media (max-width: 767px) {
  html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .conteudo:not(:has(> .leitor-tela, > .esc-tela)) {
    max-width: none; margin-left: var(--rail); margin-right: 0; padding: 12px 14px 20px;
  }
  html[data-aki-menu-lateral-disponivel="1"]:not([data-aki-menu-compacto="1"]) .chat-entrada textarea { min-width: 0; }
  html[data-aki-menu-posicao="lateral"] .voz-doca {
    left: calc(var(--rail) + 14px); right: 14px; width: auto;
  }
}

/* O mesmo encaixe nativo funciona no rodapé: NK à esquerda, atalhos roláveis
   ao lado, sem reservar uma segunda barra nem uma coluna no iPhone. */
html:root[data-tema][data-aki-menu-compacto="1"] { --rail: 0px; --dock-lateral: 0px; --aki-nav-reserva: 0px; }
html:root[data-tema][data-aki-menu-compacto="1"] body { padding-bottom: calc(100px + env(safe-area-inset-bottom)); }
html:root[data-tema][data-aki-menu-compacto="1"] .nav-inferior {
  top: auto; bottom: max(10px, env(safe-area-inset-bottom));
  left: max(14px, env(safe-area-inset-left)); right: max(14px, env(safe-area-inset-right));
  width: auto; max-height: none; flex-direction: row; align-items: stretch;
  gap: 6px; padding: 6px; border-radius: 24px; overflow: hidden; transform: none;
}
html:root[data-tema][data-aki-menu-compacto="1"] :is(.nav-expandir, .nav-mais, .nav-marcador) { display: none; }
html:root[data-tema][data-aki-menu-compacto="1"] .aki-nav-rolagem {
  flex-direction: row; align-items: center; min-width: 0; width: auto; height: 68px;
  overflow-x: auto; overflow-y: hidden; gap: 2px; scroll-padding-inline: 4px;
}
html:root[data-tema][data-aki-menu-compacto="1"] .nav-item {
  flex: 0 0 58px; width: 58px; min-height: 60px; padding: 2px 0; gap: 2px;
  flex-direction: column; justify-content: center;
}
html:root[data-tema][data-aki-menu-compacto="1"] .nav-item .nav-icone { min-width: 44px; min-height: 44px; padding: 10px; }
html:root[data-tema][data-aki-menu-compacto="1"] .nav-item span:last-child {
  position: static; width: auto; height: auto; margin: 0; padding: 0;
  clip: auto; clip-path: none; overflow: visible; font-size: 11px; line-height: 1.2; white-space: nowrap;
}
html:root[data-tema][data-aki-menu-compacto="1"] .aki-menu-nativo-lugar {
  order: -1; flex: 0 0 60px; width: 60px; padding: 0 6px 0 0; margin: 0;
  border-top: 0; border-right: 1px solid var(--barra-ouro);
}
html:root[data-tema][data-aki-menu-compacto="1"] :is(.iamac-compositor, .chat-entrada:not(.iamac-entrada)) {
  bottom: max(calc(100px + env(safe-area-inset-bottom)), var(--aki-teclado-inset, 0px));
}
html:root[data-tema][data-aki-menu-compacto="1"] .conteudo:not(:has(> .leitor-tela, > .esc-tela)) {
  width: auto; max-width: none; margin: 0; padding: 12px 14px 20px;
}
html:root[data-tema][data-aki-menu-compacto="1"] .tema-fundo { left: 0; }
html:root[data-tema][data-aki-menu-compacto="1"] .voz-doca {
  left: max(14px, env(safe-area-inset-left)); right: max(14px, env(safe-area-inset-right)); width: auto;
  bottom: max(calc(104px + env(safe-area-inset-bottom)), var(--aki-teclado-inset, 0px));
}
html:root[data-tema][data-aki-menu-compacto="1"] .iamac-trabalho { margin-bottom: 0; }
html:root[data-tema][data-aki-menu-compacto="1"] .chat-entrada textarea {
  min-width: 0; max-height: min(160px, 18dvh); overflow-y: auto;
}
@media (max-width: 399px) {
  html[data-aki-menu-posicao="lateral"] .voz-mini-barra { flex-direction: column; align-items: stretch; }
  html[data-aki-menu-posicao="lateral"] .voz-mini-acoes { align-self: flex-end; }
  html[data-aki-menu-posicao="lateral"] .voz-mini-fala { font-size: 13px; }
}
