:root{
  --preto:#0b0b0b;--grafite:#161616;--papel:#f6f4f1;--branco:#fff;--linha:#e2ddd6;--texto:#1c1a18;--suave:#625c55;
  --vermelho:#e50914;--vermelho-escuro:#b3060f;--verde:#1f8a4c;--ambar:#b06a00;--cinza:#8a847c;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papel);color:var(--texto);font:400 17px/1.55 Poppins,system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2{font-family:Teko,Impact,sans-serif;font-weight:600;line-height:1.05;margin:0;letter-spacing:.01em}
h1{font-size:2.2rem}h2{font-size:1.7rem;margin:1.8rem 0 .7rem}
a{color:var(--vermelho-escuro)}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid #1a6cff;outline-offset:2px}

.marca{font:700 1.6rem/1 Teko,Impact,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#fff;margin:0}
.marca b{color:var(--vermelho)}.marca span{color:#9b958d;font-weight:600}
.credito{font-size:.78rem;color:#9b958d;margin:.8rem 0 0}.credito a{color:inherit}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:46px;padding:.55rem 1.05rem;border-radius:6px;border:1px solid transparent;font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none;line-height:1.2}
.btn.principal{background:var(--vermelho);color:#fff}.btn.principal:hover{background:var(--vermelho-escuro)}
.btn.claro{background:var(--branco);border-color:var(--linha);color:var(--texto)}.btn.claro:hover{border-color:var(--texto)}
.btn.perigo{color:var(--vermelho-escuro)}
.btn.ligado{background:#e8f5ec;border-color:var(--verde);color:#125c31}
.btn:disabled{opacity:.6;cursor:wait}

/* entrada */
.entrada{background:var(--preto);min-height:100vh;display:grid;place-items:center;padding:1rem}
.caixa-entrada{width:min(420px,100%);background:var(--grafite);border-top:4px solid var(--vermelho);border-radius:8px;padding:2rem 1.6rem;color:#f1eee9}
.caixa-entrada h1{color:#fff;margin-top:1.2rem}.apoio{color:#b9b3aa;margin:.4rem 0 1.4rem;font-size:.95rem}
.caixa-entrada label{display:block;font-weight:600;font-size:.9rem;margin:1rem 0 .3rem}
.caixa-entrada input{width:100%;min-height:50px;padding:.6rem .8rem;border-radius:6px;border:1px solid #3a3a3a;background:#0f0f0f;color:#fff;font:inherit}
.campo-senha{display:flex;gap:.5rem}.campo-senha button{min-width:96px;border-radius:6px;border:1px solid #3a3a3a;background:#222;color:#fff;font-weight:600;cursor:pointer}
.caixa-entrada .btn.principal{width:100%;margin-top:1.4rem;min-height:52px}
.erro{color:#ff8a90;font-weight:600;margin:1rem 0 0}

/* casca */
.casca{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}
.lateral{background:var(--preto);color:#eee;padding:1.3rem 1rem;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:auto}
.grupo{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#8c867e;margin:1.5rem .6rem .4rem}
.item{display:flex;align-items:center;gap:.6rem;width:100%;min-height:46px;padding:.5rem .7rem;border:0;border-left:3px solid transparent;border-radius:4px;background:none;color:#e9e5df;text-align:left;cursor:pointer;font-size:.95rem}
.item:hover{background:#1c1c1c}.item.ativo{background:#1f1f1f;border-left-color:var(--vermelho);color:#fff;font-weight:600}
.item span{flex:1}
.bolinha{width:11px;height:11px;border-radius:50%;flex:none;display:inline-block}
.bolinha.vermelha{background:var(--vermelho)}.bolinha.verde{background:#2fbf6b}.bolinha.cinza{background:#9a948c}.bolinha.apagada{background:#d5cfc6}
.conta{min-width:26px;padding:0 .45rem;border-radius:999px;background:#333;color:#fff;font-size:.8rem;font-weight:600;text-align:center;line-height:1.7}
.conta:empty{display:none}.conta.urgente{background:var(--vermelho)}
.pe-lateral{margin-top:auto;padding-top:1.5rem}.quem{font-size:.82rem;color:#b9b3aa;margin:0 0 .6rem}.pe-lateral .btn{width:100%}

.palco{min-width:0;display:flex;flex-direction:column;height:100vh}
.topo{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.5rem;background:var(--branco);border-bottom:1px solid var(--linha);flex-wrap:wrap}
.titulo{flex:1;min-width:220px}.titulo p{margin:.15rem 0 0;color:var(--suave);font-size:.92rem}
.acoes-topo{display:flex;gap:.5rem;flex-wrap:wrap}
.faixa{background:#fff4d6;border-bottom:1px solid #e6c873;color:#5c4300;padding:.8rem 1.5rem;font-size:.93rem}
.alerta{background:#ffe9ea;border-bottom:2px solid var(--vermelho);padding:.8rem 1.5rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.alerta strong{color:var(--vermelho-escuro);margin-right:.4rem}
.alerta-btn{background:var(--vermelho);color:#fff}
#conteudo{padding:1.2rem 1.5rem 1.5rem;flex:1;min-width:0;min-height:0;overflow:auto}#conteudo:focus{outline:0}
#conteudo>h2:first-child{margin-top:.2rem}
.carregando,.vazio{color:var(--suave);padding:1.5rem .2rem}

/* cartões */
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem}
.grade.larga{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.cartao{display:flex;flex-direction:column;gap:.15rem;text-align:left;background:var(--branco);border:1px solid var(--linha);border-radius:8px;padding:1rem 1.1rem}
button.cartao{cursor:pointer}button.cartao:hover{border-color:var(--texto)}
.cartao-rotulo{font-size:.86rem;color:var(--suave);font-weight:500}
.cartao-valor{font:600 2.9rem/1 Teko,Impact,sans-serif}
.cartao-apoio{font-size:.84rem;color:var(--suave)}
.cartao.vermelho{border-color:var(--vermelho);background:#fff5f5}.cartao.vermelho .cartao-valor{color:var(--vermelho-escuro)}
.barras{display:flex;align-items:flex-end;gap:4px;height:170px;background:var(--branco);border:1px solid var(--linha);border-radius:8px;padding:1rem 1rem .4rem;overflow-x:auto}
.barra{flex:1;min-width:14px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:.2rem}
.barra i{display:block;width:100%;background:var(--vermelho);border-radius:3px 3px 0 0}.barra span{font-size:.68rem;color:var(--suave)}

/* medição */
.resumo-med{font-weight:600;margin:.2rem 0 1rem}
.med .selo{align-self:flex-start;font-size:.75rem;font-weight:600;padding:.1rem .6rem;border-radius:999px;margin-bottom:.3rem}
.med.ligado .selo{background:#e3f4e9;color:#125c31}.med.falta .selo{background:#fff0d1;color:#7a4a00}
.med.falta{border-color:#e6c873}.med-nome{font-size:1.02rem}
.med code{font-size:.82rem;color:var(--suave);word-break:break-all}
.links{display:flex;gap:.6rem;flex-wrap:wrap}

/* conversas */
.duas{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:1rem;height:100%;min-height:420px}
.lista{overflow:auto;display:flex;flex-direction:column;gap:.5rem;padding-right:.2rem}
.linha{display:flex;flex-direction:column;gap:.2rem;text-align:left;background:var(--branco);border:1px solid var(--linha);border-left:4px solid var(--cinza);border-radius:8px;padding:.7rem .8rem;cursor:pointer}
.linha.precisa{border-left-color:var(--vermelho)}.linha.andrea{border-left-color:#2fbf6b}.linha.arquivada{border-left-color:#d5cfc6}
.linha.aberta{border-color:var(--texto);box-shadow:0 0 0 1px var(--texto)}
.linha-topo{display:flex;align-items:center;gap:.5rem}.linha-topo strong{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.linha-topo time{font-size:.78rem;color:var(--suave);white-space:nowrap}
.linha-previa{font-size:.9rem;color:var(--suave);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.linha-pe{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}
.linha-pe em{font-style:normal;font-size:.74rem;background:#efebe5;border-radius:999px;padding:.05rem .55rem;color:#4a453f}
.linha-pe em.espera{background:#ffe1e3;color:var(--vermelho-escuro);font-weight:600}.linha-pe em.quente{background:#ffeccc;color:#7a4a00;font-weight:600}
.linha-pe .conta{margin-left:auto;background:var(--vermelho)}

.chat{background:var(--branco);border:1px solid var(--linha);border-radius:8px;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.chat-cab{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;padding:.8rem 1rem;border-bottom:1px solid var(--linha)}
.chat-quem{flex:1;min-width:180px;display:flex;flex-direction:column}.chat-quem strong{font-size:1.1rem}.chat-quem span{font-size:.84rem;color:var(--suave)}
.chat-acoes{display:flex;gap:.4rem;flex-wrap:wrap}.chat-acoes .btn{min-height:42px;font-size:.88rem;padding:.4rem .8rem}
.rolo{flex:1;overflow:auto;padding:1rem;display:flex;flex-direction:column;gap:.55rem;background:#efece7}
.dia{align-self:center;font-size:.76rem;background:#ddd7ce;border-radius:999px;padding:.1rem .8rem;margin:.4rem 0;color:#4a453f}
.fala{max-width:min(78%,560px);border-radius:10px;padding:.55rem .75rem .4rem;display:flex;flex-direction:column;gap:.25rem;overflow-wrap:anywhere}
.fala.deles{align-self:flex-start;background:var(--branco);border:1px solid var(--linha)}
.fala.nossa{align-self:flex-end;background:#e9f7ee;border:1px solid #bfe3cc}
.fala.painel,.fala.celular{background:#fff1f1;border-color:#f3c2c5}
.fala-quem{font-size:.72rem;font-weight:600;color:var(--suave);text-transform:uppercase;letter-spacing:.05em}
.fala.painel .fala-quem,.fala.celular .fala-quem{color:var(--vermelho-escuro)}
.fala p{margin:0;white-space:pre-wrap}.fala time{align-self:flex-end;font-size:.72rem;color:var(--suave)}
.fala-transcricao{font-size:.9rem;color:#3c3833}.fala-transcricao em{font-style:normal;font-weight:600}
.fala-aviso{font-size:.88rem;color:var(--suave);font-style:italic}.fala-falha{font-size:.88rem;color:var(--vermelho-escuro);font-weight:600}
.fala audio{width:min(320px,62vw);height:44px}.fala-video{max-width:100%;max-height:340px;border-radius:6px;background:#000}
.fala-foto-btn{border:0;padding:0;background:none;cursor:zoom-in;align-self:flex-start}
.fala-foto{max-width:min(300px,100%);max-height:320px;border-radius:6px;display:block}.fala-figurinha{width:120px;height:auto}
.fala-doc{display:flex;flex-direction:column;gap:.2rem;border:1px solid var(--linha);border-radius:6px;padding:.6rem .7rem;background:#faf8f5}
.fala-doc span{font-size:.82rem;color:var(--suave)}.fala-doc-acoes{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.3rem}
.fala-doc-acoes .btn{min-height:40px;font-size:.86rem}

.escrever{border-top:1px solid var(--linha);padding:.8rem 1rem;display:flex;flex-direction:column;gap:.5rem}
.escrever textarea{width:100%;min-height:64px;max-height:200px;resize:vertical;border:1px solid #bdb6ac;border-radius:6px;padding:.6rem .7rem;font:inherit}
.escrever-pe{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.escrever-pe .principal{margin-left:auto;min-width:130px}
.arquivo-nome{font-size:.86rem;color:var(--suave);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}
.escrever-nota{margin:0;font-size:.8rem;color:var(--suave)}
.escrever-aviso{margin:0;background:#fff4d6;border:1px solid #e6c873;border-radius:6px;padding:.7rem .8rem;color:#5c4300;font-size:.92rem}
.escondido{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}

.janela,.visor{position:fixed;inset:0;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:1rem;z-index:50}
.janela-caixa{background:var(--branco);border-radius:10px;padding:1.6rem;max-width:460px;width:100%}
.janela-caixa p{color:var(--suave)}.janela-botoes{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1.2rem;flex-wrap:wrap}
.visor img{max-width:100%;max-height:86vh;border-radius:6px}.visor .btn{position:fixed;top:1rem;right:1rem}
.recado{position:fixed;left:50%;bottom:1.2rem;transform:translateX(-50%);background:var(--preto);color:#fff;padding:.8rem 1.1rem;border-radius:8px;max-width:min(92vw,560px);z-index:60;font-size:.93rem}
.recado.erro{background:var(--vermelho-escuro)}
.so-celular{display:none}

@media (max-width:900px){
  .casca{grid-template-columns:1fr}.palco{height:auto;min-height:100vh}#conteudo{overflow:visible}
  .lateral{position:fixed;inset:0 auto 0 0;width:min(300px,86vw);transform:translateX(-100%);transition:transform .2s;z-index:40}
  .lateral.aberta{transform:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.5)}
  .so-celular{display:inline-flex}
  .topo{padding:.8rem 1rem}h1{font-size:1.8rem}
  #conteudo{padding:1rem}.faixa,.alerta{padding:.7rem 1rem}
  .duas{grid-template-columns:1fr;height:auto;min-height:0}
  .duas.com-chat .lista{display:none}.duas:not(.com-chat) .chat{display:none}
  .chat{height:calc(100dvh - 190px);min-height:420px}
  .fala{max-width:90%}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* comercial */
.periodo{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem}.periodo .btn{min-height:42px}
.btn.escolhido{background:var(--preto);color:#fff;border-color:var(--preto)}
.leituras{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}
.leitura{display:flex;gap:.8rem;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--branco);border:1px solid var(--linha);border-left:5px solid var(--cinza);border-radius:8px;padding:.7rem .9rem}
.leitura.acao{border-left-color:var(--vermelho);background:#fff5f5}.leitura.alerta{border-left-color:var(--ambar);background:#fff8e6}
.leitura p{margin:0;flex:1;min-width:240px}.leitura .btn{min-height:40px;font-size:.86rem}
.cartao-valor.dinheiro{font-size:2.2rem}
.cartao.quente{border-top:4px solid var(--vermelho)}.cartao.morno{border-top:4px solid var(--ambar)}.cartao.frio{border-top:4px solid #5b7fa6}.cartao.verde{border-top:4px solid var(--verde)}
.bolinha.t-quente{background:var(--vermelho)}.bolinha.t-morno{background:#e0a030}.bolinha.t-frio{background:#5b7fa6}
.selo-temp{display:inline-block;font-size:.76rem;font-weight:600;border-radius:999px;padding:.08rem .6rem;white-space:nowrap}
.selo-temp.quente{background:#ffe1e3;color:var(--vermelho-escuro)}.selo-temp.morno{background:#ffeccc;color:#7a4a00}.selo-temp.frio{background:#e2ebf5;color:#2f4d6e}.selo-temp.neutro{background:#efebe5;color:#4a453f}.selo-temp.ok{background:#e3f4e9;color:#125c31}
.funil{display:flex;flex-direction:column;gap:.35rem;background:var(--branco);border:1px solid var(--linha);border-radius:8px;padding:1rem}
.funil-linha{display:grid;grid-template-columns:minmax(150px,220px) 1fr 3.2rem;gap:.7rem;align-items:center;font-size:.93rem}
.funil-barra{height:18px;background:#efebe5;border-radius:4px;overflow:hidden}.funil-barra i{display:block;height:100%;background:var(--vermelho);border-radius:4px}
.funil-linha b{text-align:right;font:600 1.4rem/1 Teko,Impact,sans-serif}
.rolagem{overflow-x:auto;background:var(--branco);border:1px solid var(--linha);border-radius:8px}
.tabela{width:100%;border-collapse:collapse;font-size:.9rem}
.tabela th,.tabela td{padding:.55rem .7rem;text-align:left;border-bottom:1px solid var(--linha);white-space:nowrap}
.tabela th{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--suave);background:#faf8f5;position:sticky;top:0}
.tabela td.num,.tabela th.num{text-align:right;font-variant-numeric:tabular-nums}
.tabela tr.total td{font-weight:600;background:#faf8f5}
.tabela td.sem{color:var(--cinza);font-style:italic}
.tabela .btn{min-height:36px;padding:.3rem .7rem;font-size:.84rem}
.nota{font-size:.84rem;color:var(--suave);margin:.5rem 0 0}
.ficha-com{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;padding:.55rem 1rem;border-bottom:1px solid var(--linha);background:#faf8f5}
.ficha-com .btn{min-height:38px;font-size:.84rem;padding:.3rem .7rem}.ficha-com .empurra{margin-left:auto}
.ficha-caixa{max-width:520px;max-height:92vh;overflow:auto}
.ficha-caixa label{display:block;font-weight:600;font-size:.9rem;margin:.9rem 0 .25rem}
.ficha-caixa input,.ficha-caixa select,.ficha-caixa textarea{width:100%;min-height:46px;padding:.5rem .7rem;border:1px solid #bdb6ac;border-radius:6px;font:inherit;background:#fff}
.ficha-caixa textarea{min-height:90px;resize:vertical}.ficha-caixa small{display:block;color:var(--suave);font-size:.8rem;margin-top:.2rem}
.bloco{background:var(--branco);border:1px solid var(--linha);border-radius:8px;padding:1rem 1.1rem;margin-bottom:1rem}
.bloco h2{margin-top:0}.bloco p{margin:.3rem 0}
.msgs-retomada{display:flex;flex-direction:column;gap:.4rem;margin:.4rem 0 1rem}
.msgs-retomada p{margin:0;background:#e9f7ee;border:1px solid #bfe3cc;border-radius:10px;padding:.5rem .7rem;max-width:640px;font-size:.93rem}
.opcoes{display:flex;gap:.5rem;flex-wrap:wrap;margin:.6rem 0}
@media (max-width:900px){.funil-linha{grid-template-columns:1fr 3rem}.funil-barra{grid-column:1 / -1;order:3}}
.bloco label{display:block;font-weight:600;font-size:.9rem;margin:.9rem 0 .25rem}
.bloco input,.bloco textarea,.bloco select{width:100%;max-width:640px;min-height:46px;padding:.5rem .7rem;border:1px solid #bdb6ac;border-radius:6px;font:inherit;background:#fff;display:block}
.bloco textarea{min-height:90px;resize:vertical}.bloco strong{display:block;margin-top:.6rem}
