/* Chat: normas de terceiros (só consulta), editor de estilos de resposta e modo de voz. Cores só pelos tokens do tema (claro e escuro). */

/* ---------- normas só do espelho de terceiros ---------- */
.ch-terceiros{margin:8px 0;padding:12px 14px;border:1px dashed var(--bd2);border-radius:10px;background:var(--sf);display:grid;gap:10px}
.ch-terceiros-cab{display:grid;gap:2px}.ch-terceiros-cab b{font-size:13.5px}
.ch-terceiros-lista{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ch-terceiros-lista li{display:grid;gap:3px;padding-top:10px;border-top:1px solid var(--bd)}.ch-terceiros-lista li:first-child{padding-top:0;border-top:0}
.ch-terceiros-t{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--ac);text-decoration:none;width:fit-content}.ch-terceiros-t:hover{text-decoration:underline}
.ch-terceiros-t:focus-visible{outline:2px solid var(--ac);outline-offset:2px;border-radius:3px}
.ch-terceiros-e{font-size:12.5px;color:var(--tx);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ch-selo-terceiros{justify-self:start;font-size:11px;line-height:1;padding:4px 7px;border-radius:999px;border:1px solid color-mix(in srgb,var(--am) 45%,transparent);color:var(--am);background:color-mix(in srgb,var(--am) 9%,transparent)}

/* ---------- meus estilos ---------- */
.es-nota{margin:0;max-width:520px}.es-lista{display:grid;gap:12px;min-width:min(520px,calc(100vw - 64px))}
.es-item{display:grid;gap:6px;padding:10px;border:1px solid var(--bd);border-radius:10px;background:var(--sf2)}
.es-linha{display:flex;gap:6px;align-items:center}.es-linha input{flex:1}
.es-item textarea{width:100%;resize:vertical;min-height:64px;font:inherit}.es-cont{justify-self:end;font-size:11px}
.es-acoes{display:flex;align-items:center;gap:8px}

/* ---------- modo de voz ---------- */
.vz-painel{position:fixed;z-index:900;left:50%;bottom:24px;transform:translateX(-50%);width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;padding:14px 16px 16px;border:1px solid var(--bd2);border-radius:var(--r-janela,20px);background:var(--sf);color:var(--tx);box-shadow:var(--sombra-lg);display:grid;gap:12px}
.vz-painel:focus{outline:none}.vz-painel:focus-visible{box-shadow:var(--sombra-lg),0 0 0 2px var(--ac)}
.vz-topo{display:flex;align-items:center;gap:8px;color:var(--mu)}.vz-topo b{color:var(--tx);font-size:13.5px}
.vz-centro{display:grid;justify-items:center;gap:10px;padding:6px 0}
.vz-estado{font-size:14px;font-weight:600;color:var(--tx)}
.vz-orbe{position:relative;width:84px;height:84px;display:flex;align-items:center;justify-content:center;gap:5px;color:var(--ac)}
.vz-orbe::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid currentColor}
.vz-orbe span{width:6px;height:6px;border-radius:3px;background:currentColor}
[data-estado=ouvindo] .vz-orbe::before{animation:vz-pulso 1.6s ease-out infinite}
[data-estado=pensando] .vz-orbe::before{border-color:color-mix(in srgb,currentColor 22%,transparent);border-top-color:currentColor;animation:vz-gira .9s linear infinite}
[data-estado=pensando] .vz-orbe span{animation:vz-pisca 1.2s ease-in-out infinite}
[data-estado=falando] .vz-orbe span{animation:vz-barra .9s ease-in-out infinite}
.vz-orbe span:nth-child(2){animation-delay:.15s!important}.vz-orbe span:nth-child(3){animation-delay:.3s!important}.vz-orbe span:nth-child(4){animation-delay:.45s!important}
@keyframes vz-pulso{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--ac) 40%,transparent)}100%{box-shadow:0 0 0 16px transparent}}
@keyframes vz-gira{to{transform:rotate(360deg)}}
@keyframes vz-pisca{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes vz-barra{0%,100%{height:6px}50%{height:30px}}
.vz-transcricao{display:grid;gap:8px;min-height:44px;max-height:30vh;overflow:auto}
.vz-voce{margin:0;justify-self:end;max-width:90%;padding:7px 11px;border-radius:12px;background:var(--sf2);font-size:13.5px}.vz-voce:empty{display:none}
.vz-voce.vz-interino{color:var(--mu)}
.vz-resp{margin:0;font-size:13.5px;line-height:1.55}.vz-resp:empty{display:none}
.vz-aviso{margin:0;text-align:center}.vz-aviso.vz-erro{color:var(--ro)}
.vz-acoes{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vz-acoes .btn,.vz-acoes .btn2{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px}
.vz-ajustes{display:grid;gap:10px;padding:10px 12px;border:1px solid var(--bd);border-radius:12px;background:var(--sf2)}
.vz-campo{display:grid;gap:4px;font-size:12.5px;color:var(--mu)}.vz-campo select,.vz-campo input[type=range]{width:100%}
.vz-ajustes .btn2{justify-self:start;display:inline-flex;align-items:center;gap:6px}
.vz-painel [hidden]{display:none!important}
/* compositor com estilo e voz: controles um pouco mais juntos; se quebrar a linha, o enviar fica sempre à direita */
.ch-rod{gap:4px}.ch-rod .ch-env{margin-left:auto}
/* estilo no compositor: no padrão só o ícone (o nome fica na dica); nome longo é cortado */
.sl[data-padrao] .sl-rot{display:none}.sl[aria-label="Estilo"] .sl-rot{max-width:110px;overflow:hidden;text-overflow:ellipsis}
@media (prefers-reduced-motion:reduce){.vz-orbe::before,.vz-orbe span{animation:none!important}}
