/* =====================================================================
   ILUMAC · Assistente (chat flutuante) — usado com assets/js/assistente.js
   Brandbook 2026: Montserrat; Vermelho ILUMAC e Branco como cores principais; preto e cinzas como apoio;
   retângulo chanfrado (1, 2 ou 4 pontas). Segue o próprio portal: barra vermelha da navbar no topo, corpo branco.
   Duas telas: data-modo="inicio" (saudação, campo e sugestões) e data-modo="conversa".
   Tem as próprias variáveis para funcionar em qualquer página, mesmo sem o ilumac.css.
   ===================================================================== */

.ilu-chat{
  --chat-vermelho:#C31922; --chat-cereja:#800000; --chat-preto:#1D1D1B; --chat-cinza-escuro:#393939;
  --chat-cinza-medio:#B0B0B0; --chat-cinza-claro:#CFCFCF; --chat-suave:rgba(207,207,207,.28); --chat-branco:#FFFFFF;
  --chat-degrade:linear-gradient(var(--chat-vermelho),var(--chat-vermelho));   /* Vermelho ILUMAC chapado, como a navbar */
  --chat-ease:cubic-bezier(.2,.7,.2,1);
  --chat-fonte:'Montserrat',system-ui,-apple-system,'Segoe UI',sans-serif;
  --chat-chanfro:20px;
  position:fixed;right:24px;bottom:24px;z-index:1400;   /* acima da navbar (1210) e do menu (1300) */
  font-family:var(--chat-fonte);color:var(--chat-preto);-webkit-font-smoothing:antialiased;
}
.ilu-chat *{box-sizing:border-box}
.ilu-chat-oculto{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ilu-chat button{font-family:var(--chat-fonte)}

/* ---------------------------------------------------------------- botão flutuante */
.ilu-chat-fab{position:relative;display:flex;align-items:center;justify-content:center;width:60px;height:60px;margin-left:auto;padding:0;border:0;cursor:pointer;
  background:var(--chat-vermelho);color:var(--chat-branco);
  clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);
  filter:drop-shadow(0 10px 20px rgba(195,25,34,.32));transition:background .25s,transform .35s var(--chat-ease);
  animation:iluChatSurge .7s var(--chat-ease) .5s backwards}   /* backwards: depois da entrada o hover volta a controlar o transform */
@keyframes iluChatSurge{from{opacity:0;transform:translateY(18px) scale(.85)}to{opacity:1;transform:none}}
.ilu-chat-fab:hover{background:var(--chat-cereja);transform:translateY(-3px)}
.ilu-chat-fab:active{transform:scale(.95)}
.ilu-chat-fab:focus-visible{outline:none;background:var(--chat-cereja);box-shadow:inset 0 0 0 3px var(--chat-branco)}
.ilu-chat-fab>span{position:absolute;display:flex;transition:opacity .25s,transform .4s var(--chat-ease)}
.ilu-chat-fab .ico-fechar,.ilu-chat-fab .ico-menu{opacity:0;transform:rotate(-90deg) scale(.5)}
.ilu-chat.menu-aberto .ilu-chat-fab .ico-abrir{opacity:0;transform:rotate(90deg) scale(.5)}
.ilu-chat.menu-aberto .ilu-chat-fab .ico-menu{opacity:1;transform:none}
.ilu-chat.aberto .ilu-chat-fab .ico-abrir{opacity:0;transform:rotate(90deg) scale(.5)}
.ilu-chat.aberto .ilu-chat-fab .ico-fechar{opacity:1;transform:none}
/* etiqueta "Fale conosco" ao passar o mouse (só com o chat e o menu fechados) */
.ilu-chat-dica{position:absolute;right:72px;bottom:13px;padding:10px 16px;background:var(--chat-preto);color:var(--chat-branco);
  font:600 13px/16px var(--chat-fonte);white-space:nowrap;pointer-events:none;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%);
  opacity:0;transform:translateX(8px);transition:opacity .25s,transform .3s var(--chat-ease)}
.ilu-chat:not(.aberto):not(.menu-aberto) .ilu-chat-dica:has(~.ilu-chat-fab:hover),
.ilu-chat:not(.aberto):not(.menu-aberto) .ilu-chat-dica:has(~.ilu-chat-fab:focus-visible),
.ilu-chat.mostrar-dica:not(.aberto):not(.menu-aberto) .ilu-chat-dica{opacity:1;transform:none}
/* onda: cópia chanfrada do botão, atrás dele, que cresce e some devagar a cada 4,5 s */
.ilu-chat-onda{position:absolute;right:0;bottom:0;width:60px;height:60px;background:var(--chat-vermelho);pointer-events:none;opacity:0;
  clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);
  animation:iluChatOnda 4.5s cubic-bezier(.25,.6,.3,1) 1.8s infinite}
@keyframes iluChatOnda{0%{opacity:.28;transform:scale(1)}55%,100%{opacity:0;transform:scale(1.5)}}
.ilu-chat.aberto .ilu-chat-onda,.ilu-chat.menu-aberto .ilu-chat-onda{animation:none}

/* ---------------------------------------------------------------- menu "Fale conosco" (abre no botão flutuante) */
/* botão: verde do WhatsApp enquanto fechado ou com o menu aberto; com o chat aberto volta ao vermelho da marca */
.ilu-chat{--chat-whatsapp:#1FAF54;--chat-whatsapp-escuro:#168A41}
.ilu-chat-fab{background:var(--chat-whatsapp);filter:drop-shadow(0 10px 20px rgba(31,175,84,.35))}
.ilu-chat-fab:hover,.ilu-chat-fab:focus-visible{background:var(--chat-whatsapp-escuro)}
.ilu-chat-onda{background:var(--chat-whatsapp)}
.ilu-chat.aberto .ilu-chat-fab{background:var(--chat-vermelho);filter:drop-shadow(0 10px 20px rgba(195,25,34,.32))}
.ilu-chat.aberto .ilu-chat-fab:hover,.ilu-chat.aberto .ilu-chat-fab:focus-visible{background:var(--chat-cereja)}

/* lista limpa: cabeçalho vermelho (o mesmo degradê do chat), uma linha fina entre as opções e só o ícone colorido */
.ilu-chat-menu{position:absolute;right:0;bottom:76px;width:min(340px,calc(100vw - 32px));
  filter:drop-shadow(0 24px 44px rgba(29,29,27,.22)) drop-shadow(0 3px 8px rgba(29,29,27,.08));
  opacity:0;visibility:hidden;transform:translateY(14px) scale(.98);transform-origin:bottom right;
  transition:opacity .25s var(--chat-ease),transform .35s var(--chat-ease),visibility 0s linear .35s}
.ilu-chat.menu-aberto .ilu-chat-menu{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.ilu-chat-menu-caixa{display:flex;flex-direction:column;overflow:hidden;background:var(--chat-branco);
  clip-path:polygon(var(--chat-chanfro) 0,100% 0,100% calc(100% - var(--chat-chanfro)),calc(100% - var(--chat-chanfro)) 100%,0 100%,0 var(--chat-chanfro))}
.ilu-chat-menu-cab{padding:22px 24px 20px;background:var(--chat-degrade);color:var(--chat-branco)}
.ilu-chat-menu-cab h3{margin:0;font:700 19px/1.2 var(--chat-fonte);letter-spacing:-.01em}
.ilu-chat-menu-cab p{margin:5px 0 0;font:400 13px/1.4 var(--chat-fonte);opacity:.9}
.ilu-chat-menu-cab+.ilu-chat-opcao{border-top:0}
.ilu-chat-opcao{position:relative;display:flex;align-items:center;gap:16px;width:100%;margin:0;padding:15px 44px 15px 24px;border:0;border-top:1px solid rgba(207,207,207,.55);
  background:var(--chat-branco);color:var(--chat-preto);text-align:left;text-decoration:none;cursor:pointer;font-family:var(--chat-fonte);transition:background .2s}
.ilu-chat-opcao:last-child{padding-bottom:19px}
.ilu-chat-opcao::after{content:"\203A";position:absolute;right:22px;top:50%;transform:translateY(-50%);font:400 24px/1 var(--chat-fonte);color:var(--chat-cinza-medio);transition:transform .25s var(--chat-ease),color .25s}
.ilu-chat-opcao:hover,.ilu-chat-opcao:focus-visible{background:var(--chat-suave);outline:none}
.ilu-chat-opcao:hover::after,.ilu-chat-opcao:focus-visible::after{color:var(--chat-vermelho);transform:translate(4px,-50%)}
.ilu-chat-opcao-ico{flex:none;display:flex;align-items:center;justify-content:center;width:26px;height:26px;color:var(--chat-preto)}
.ilu-chat-opcao-ico svg{width:26px;height:26px}
.ilu-chat-opcao-ico.ia{color:var(--chat-vermelho)}
.ilu-chat-opcao-ico.wa{color:var(--chat-whatsapp)}
.ilu-chat-opcao-txt{min-width:0}
.ilu-chat-opcao-txt b{display:block;font:700 14.5px/1.3 var(--chat-fonte)}
.ilu-chat-opcao-txt small{display:block;margin-top:2px;font:400 12.5px/1.4 var(--chat-fonte);color:var(--chat-cinza-escuro)}

/* ---------------------------------------------------------------- janela */
/* a sombra fica no contêiner: o chanfro do clip-path cortaria um box-shadow */
.ilu-chat-janela{position:absolute;right:0;bottom:76px;width:390px;height:min(620px,calc(100vh - 130px));
  filter:drop-shadow(0 24px 44px rgba(29,29,27,.22)) drop-shadow(0 3px 8px rgba(29,29,27,.08));
  opacity:0;visibility:hidden;transform:translateY(16px) scale(.98);transform-origin:bottom right;
  transition:opacity .3s var(--chat-ease),transform .4s var(--chat-ease),visibility 0s linear .4s}
.ilu-chat.aberto .ilu-chat-janela{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.ilu-chat.sem-animacao .ilu-chat-janela,.ilu-chat.sem-animacao .ilu-chat-fab>span,.ilu-chat.sem-animacao .ilu-chat-janela *{transition:none!important;animation:none!important}
.ilu-chat-caixa{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--chat-branco);
  clip-path:polygon(var(--chat-chanfro) 0,100% 0,100% calc(100% - var(--chat-chanfro)),calc(100% - var(--chat-chanfro)) 100%,0 100%,0 var(--chat-chanfro))}

/* ---------------------------------------------------------------- cabeçalho */
.ilu-chat-topo{flex-shrink:0;display:flex;align-items:center;gap:2px;height:58px;padding:0 8px 0 22px;background:var(--chat-degrade);color:var(--chat-branco)}
.ilu-chat-marca{flex:1;display:flex;align-items:center;gap:12px;min-width:0}
.ilu-chat-marca img{display:block;width:100px;height:auto}
.ilu-chat-nome{padding-left:12px;border-left:1px solid rgba(255,255,255,.45);font:600 14px/20px var(--chat-fonte);white-space:nowrap}
.ilu-chat-acao{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;
  background:transparent;color:var(--chat-branco);cursor:pointer;transition:background .2s,transform .2s}
.ilu-chat-acao:hover{background:rgba(255,255,255,.16)}
.ilu-chat-acao:active{transform:scale(.92)}
.ilu-chat-acao:focus-visible{outline:2px solid var(--chat-branco);outline-offset:-2px}
.ilu-chat-nova{display:none}

/* ---------------------------------------------------------------- tela de início */
.ilu-chat-inicio{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:26px 22px 8px;scrollbar-width:thin}
.ilu-chat-ola h3{margin:0;font:700 19px/1.3 var(--chat-fonte);color:var(--chat-preto);letter-spacing:-.01em}
.ilu-chat-ola p{margin:6px 0 0;font:400 14px/1.55 var(--chat-fonte);color:var(--chat-cinza-escuro)}
.ilu-chat-vaga-inicio{margin-top:18px}
.ilu-chat-sugestoes{display:flex;flex-direction:column;gap:8px;margin-top:24px}
.ilu-chat-divisor{display:flex;align-items:center;gap:14px;margin:0 0 4px;font:600 11px/16px var(--chat-fonte);letter-spacing:.08em;text-transform:uppercase;color:var(--chat-cinza-escuro)}
.ilu-chat-divisor::before,.ilu-chat-divisor::after{content:"";flex:1;height:1px;background:var(--chat-cinza-claro)}
/* mesmo desenho dos atalhos da home do portal: cinza suave, chanfro embaixo à direita, vermelho no hover */
.ilu-chat-sugestao{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:46px;padding:11px 14px 11px 16px;border:0;cursor:pointer;text-align:left;
  background:var(--chat-suave);color:var(--chat-preto);font:600 13.5px/1.35 var(--chat-fonte);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
  transition:background .25s,color .25s;animation:iluChatEntra .4s var(--chat-ease) both;animation-delay:calc(var(--i,0) * 50ms + 80ms)}
.ilu-chat-sugestao svg{flex-shrink:0;color:var(--chat-vermelho);transition:transform .25s var(--chat-ease),color .25s}
.ilu-chat-sugestao:hover,.ilu-chat-sugestao:focus-visible{background:var(--chat-vermelho);color:var(--chat-branco);outline:none}
.ilu-chat-sugestao:hover svg,.ilu-chat-sugestao:focus-visible svg{color:var(--chat-branco);transform:translateX(3px)}
.ilu-chat.aguardando .ilu-chat-sugestao{cursor:wait;opacity:.6}

/* ---------------------------------------------------------------- campo e enviar */
/* borda pelo fundo + ::before branco, para o chanfro ter contorno também na diagonal (técnica dos cards da home) */
.ilu-chat-form{--borda:var(--chat-cinza-claro);position:relative;display:flex;align-items:flex-end;gap:6px;padding:5px;background:var(--borda);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);transition:background .2s}
.ilu-chat-form::before{content:"";position:absolute;inset:1.5px;background:var(--chat-branco);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 11.4px),calc(100% - 11.4px) 100%,0 100%)}
.ilu-chat-form>*{position:relative}
.ilu-chat-form:focus-within{--borda:var(--chat-vermelho)}
.ilu-chat-form textarea{flex:1;min-width:0;height:42px;min-height:42px;max-height:120px;margin:0;padding:10px 8px 10px 12px;border:0;border-radius:0;resize:none;background:transparent;
  font:400 14px/22px var(--chat-fonte);color:var(--chat-preto);outline:none;box-shadow:none}
.ilu-chat-form textarea::placeholder{color:var(--chat-cinza-escuro);opacity:.75}
.ilu-chat-enviar{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:0;cursor:pointer;
  background:var(--chat-vermelho);color:var(--chat-branco);clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);transition:background .2s}
.ilu-chat-enviar svg{transition:transform .25s var(--chat-ease)}
.ilu-chat-enviar:hover{background:var(--chat-cereja)}
.ilu-chat-enviar:hover svg{transform:translate(2px,-2px)}
.ilu-chat-enviar:focus-visible{outline:none;background:var(--chat-cereja);box-shadow:inset 0 0 0 3px var(--chat-branco)}
.ilu-chat-enviar:disabled{background:var(--chat-cinza-medio);cursor:wait}
.ilu-chat-enviar:disabled svg{transform:none}
.ilu-chat-vaga-conversa{flex-shrink:0;padding:12px 16px 0;border-top:1px solid rgba(207,207,207,.55)}

/* ---------------------------------------------------------------- mensagens */
.ilu-chat-msgs{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;padding:20px 16px 16px;
  scrollbar-width:thin;scrollbar-color:var(--chat-cinza-claro) transparent}
.ilu-chat-msgs:focus-visible{outline:2px solid var(--chat-vermelho);outline-offset:-2px}
.ilu-chat-msg{display:flex;max-width:100%;animation:iluChatEntra .35s var(--chat-ease) both}
@keyframes iluChatEntra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ilu-chat-msg.usuario{justify-content:flex-end}
/* brasão ILUMAC (vermelho, sem fundo) ao lado das respostas */
.ilu-chat-msg.bot{gap:10px;align-items:flex-start}
.ilu-chat-avatar{flex-shrink:0;display:flex;width:22px;margin-top:3px}
.ilu-chat-avatar img{display:block;width:22px;height:auto}
.ilu-chat-msg.erro .ilu-chat-avatar img{filter:grayscale(1);opacity:.5}
.ilu-chat-balao{max-width:84%;padding:11px 15px;font:400 14px/1.55 var(--chat-fonte);overflow-wrap:anywhere}
.ilu-chat-msg.bot .ilu-chat-balao{background:var(--chat-suave);color:var(--chat-preto);clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%)}
.ilu-chat-msg.usuario .ilu-chat-balao{background:var(--chat-vermelho);color:var(--chat-branco);white-space:pre-wrap;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%)}
.ilu-chat-msg.erro .ilu-chat-balao{background:rgba(195,25,34,.08);color:var(--chat-cereja);box-shadow:inset 3px 0 0 var(--chat-vermelho)}
.ilu-chat-balao p{margin:0}
.ilu-chat-balao p+p,.ilu-chat-balao p+ul,.ilu-chat-balao p+ol,.ilu-chat-balao ul+p,.ilu-chat-balao ol+p{margin-top:8px}
.ilu-chat-balao ul,.ilu-chat-balao ol{margin:0;padding-left:20px}
.ilu-chat-balao li+li{margin-top:4px}
.ilu-chat-balao li::marker{color:var(--chat-vermelho);font-weight:700}
.ilu-chat-balao li:has(>a.ilu-chat-arquivo:only-child){list-style:none;margin-left:-20px}   /* lista só de arquivos: o selo já faz o papel do marcador */
.ilu-chat-balao strong{font-weight:700}
.ilu-chat-balao a{color:var(--chat-vermelho);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.ilu-chat-balao a:hover{color:var(--chat-cereja)}
.ilu-chat-balao a:focus-visible{outline:2px solid var(--chat-vermelho);outline-offset:2px}
/* link de arquivo (PDF, DWG...): cartão com selo do formato, como os cartões de documento do site */
.ilu-chat-balao a.ilu-chat-arquivo{display:flex;align-items:center;gap:10px;width:100%;margin:2px 0;padding:6px 14px 6px 6px;
  background:var(--chat-branco);color:var(--chat-preto);font-weight:700;font-size:13px;line-height:1.3;text-decoration:none;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%);transition:background .2s,color .2s}
.ilu-chat-balao a.ilu-chat-arquivo::before{content:attr(data-formato);flex-shrink:0;display:flex;align-items:flex-end;justify-content:center;width:28px;height:34px;padding-bottom:5px;
  background:var(--chat-vermelho);color:var(--chat-branco);font:700 9px/1 var(--chat-fonte);letter-spacing:.02em;
  clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%)}
.ilu-chat-balao a.ilu-chat-arquivo::after{content:"";flex-shrink:0;width:16px;height:16px;margin-left:auto;background:currentColor;opacity:.55;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11m0 0-4.5-4.5M12 15l4.5-4.5M5 19h14'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11m0 0-4.5-4.5M12 15l4.5-4.5M5 19h14'/%3E%3C/svg%3E") center/contain no-repeat}
.ilu-chat-balao a.ilu-chat-arquivo:hover{background:var(--chat-preto);color:var(--chat-branco)}
.ilu-chat-balao a.ilu-chat-arquivo:hover::after{opacity:1}

/* "digitando..." */
.ilu-chat-msg.digitando .ilu-chat-balao{display:flex;align-items:center;gap:5px;padding:15px 17px}
.ilu-chat-msg.digitando i{width:7px;height:7px;border-radius:50%;background:var(--chat-vermelho);animation:iluChatPonto 1.2s ease-in-out infinite}
.ilu-chat-msg.digitando i:nth-of-type(2){animation-delay:.15s}
.ilu-chat-msg.digitando i:nth-of-type(3){animation-delay:.3s}
@keyframes iluChatPonto{0%,60%,100%{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}

/* ---------------------------------------------------------------- rodapé (avisos) */
.ilu-chat-aviso{flex-shrink:0;padding:10px 22px 14px;text-align:center}
.ilu-chat-aviso p{margin:0;font:400 11px/16px var(--chat-fonte);color:var(--chat-cinza-escuro)}
.ilu-chat-links{display:flex;justify-content:center;gap:24px;margin-top:8px}
.ilu-chat-links a{font:600 12px/16px var(--chat-fonte);color:var(--chat-preto);text-decoration:none;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.ilu-chat-links a:hover,.ilu-chat-links a:focus-visible{color:var(--chat-vermelho);border-bottom-color:currentColor;outline:none}

/* ---------------------------------------------------------------- telas */
.ilu-chat[data-modo="inicio"] .ilu-chat-msgs,.ilu-chat[data-modo="inicio"] .ilu-chat-vaga-conversa{display:none}
.ilu-chat[data-modo="conversa"] .ilu-chat-inicio{display:none}
.ilu-chat[data-modo="conversa"] .ilu-chat-nova{display:flex}
.ilu-chat[data-modo="conversa"] .ilu-chat-aviso{padding:8px 22px 12px}
.ilu-chat[data-modo="conversa"] .ilu-chat-aviso p{font-size:10.5px;line-height:14px}
.ilu-chat[data-modo="conversa"] .ilu-chat-links{display:none}

/* ---------------------------------------------------------------- celular: tela cheia */
@media (max-width:600px){
  .ilu-chat{right:16px;bottom:16px}
  .ilu-chat-fab,.ilu-chat-onda{width:56px;height:56px}
  .ilu-chat-dica{display:none}
  .ilu-chat-menu{bottom:72px}
  .ilu-chat-janela{position:fixed;inset:0;width:auto;height:100%;height:100dvh;filter:none;transform:translateY(24px);transform-origin:bottom center}
  .ilu-chat-caixa{clip-path:none}
  .ilu-chat-topo{height:auto;min-height:58px;padding-top:env(safe-area-inset-top)}
  .ilu-chat.aberto .ilu-chat-fab{opacity:0;visibility:hidden;pointer-events:none}
  .ilu-chat-form textarea{font-size:16px}   /* 16px evita o zoom automático do iPhone */
  .ilu-chat-aviso{padding-bottom:max(14px,env(safe-area-inset-bottom))}
  html.ilu-chat-aberto,html.ilu-chat-aberto body{overflow:hidden}
}
/* toque: sem hover "preso" depois do toque; o retorno visual fica no :active */
@media (hover:none){
  .ilu-chat-sugestao:hover{background:var(--chat-suave);color:var(--chat-preto)}
  .ilu-chat-sugestao:hover svg{color:var(--chat-vermelho);transform:none}
  .ilu-chat-sugestao:active{background:var(--chat-vermelho);color:var(--chat-branco)}
  .ilu-chat-balao a.ilu-chat-arquivo:hover{background:var(--chat-branco);color:var(--chat-preto)}
  .ilu-chat-balao a.ilu-chat-arquivo:active{background:var(--chat-preto);color:var(--chat-branco)}
}
@media (max-height:560px) and (min-width:601px){.ilu-chat-janela{height:calc(100vh - 110px)}}

@media (prefers-reduced-motion:reduce){
  .ilu-chat *,.ilu-chat *::before{animation:none!important;transition:none!important}
}
@media print{.ilu-chat{display:none}}
