/* Estilo do Ângulo CRM (antes ficava dentro do index.html) */
:root{
  --bg:#f3f4f7; --surface:#ffffff; --surface-2:#f8f9fb; --surface-3:#eef0f4;
  --border:#e2e5eb; --border-strong:#cbd1da;
  --text:#1b2030; --text-dim:#545e70; --text-faint:#8790a1;
  --primary:#7b23b0; --primary-hover:#691d97; --primary-soft:#f4ebfa; --primary-text:#6b1e9b;
  --success:#15803d; --success-soft:#e7f5ec;
  --warning:#b45309; --warning-soft:#fdf2e1;
  --danger:#c22d2d; --danger-soft:#fcebeb;
  --info:#0369a1; --info-soft:#e5f1f9;
  --sb-bg:#1c1a27; --sb-text:#b3afc5; --sb-hover:rgba(255,255,255,.05); --sb-ativo:rgba(255,255,255,.09); --sb-borda:rgba(255,255,255,.08);
  --radius:8px; --sombra:0 1px 2px rgba(16,24,40,.05); --sombra-lg:0 16px 40px rgba(16,24,40,.18);
  color-scheme:light;
}
:root[data-tema="escuro"]{
  --bg:#0f1115; --surface:#171a20; --surface-2:#1c2027; --surface-3:#242933;
  --border:#2a2f38; --border-strong:#3b414c;
  --text:#e6e8ed; --text-dim:#a3aab7; --text-faint:#737b89;
  --primary:#9d4edd; --primary-hover:#ad66e6; --primary-soft:rgba(157,78,221,.16); --primary-text:#c79af1;
  --success:#4ade80; --success-soft:rgba(74,222,128,.12);
  --warning:#fbbf24; --warning-soft:rgba(251,191,36,.12);
  --danger:#f87171; --danger-soft:rgba(248,113,113,.13);
  --info:#38bdf8; --info-soft:rgba(56,189,248,.12);
  --sb-bg:#0b0c10;
  --sombra:0 1px 2px rgba(0,0,0,.3); --sombra-lg:0 16px 40px rgba(0,0,0,.55);
  color-scheme:dark;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0}
body{background:var(--bg);color:var(--text);font:13.5px/1.45 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}
a{color:var(--primary-text)}
p{margin:0 0 10px}
.ic{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.num{font-variant-numeric:tabular-nums}
.fraco{color:var(--text-faint)}
.dim{color:var(--text-dim)}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ---------- botões e formulários ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 13px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:500;cursor:pointer;white-space:nowrap;text-decoration:none}
.btn:hover{background:var(--surface-2)}
.btn-primario{background:var(--primary);border-color:var(--primary);color:#fff}
.btn-primario:hover{background:var(--primary-hover);border-color:var(--primary-hover)}
.btn-whats{background:#1f9d55;border-color:#1f9d55;color:#fff}
.btn-whats:hover{background:#198348;border-color:#198348}
.btn-facebook{background:#1877f2;border-color:#1877f2;color:#fff;font-weight:600}
.btn-facebook:hover{background:#166fe0;border-color:#166fe0}
.btn-facebook svg{width:18px;height:18px;fill:currentColor}
.btn-sm{height:28px;padding:0 10px;font-size:12.5px}
.btn.desab{opacity:.45;pointer-events:none}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn-icone{width:32px;height:32px;padding:0;border:none;background:none;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-dim);cursor:pointer;flex-shrink:0}
.btn-icone:hover{background:var(--surface-3);color:var(--text)}
.btn-icone:disabled{opacity:.35;cursor:not-allowed;background:none}
.btn-link{border:none;background:none;padding:0;color:var(--primary-text);cursor:pointer;font-weight:500}
.btn-link.perigo{color:var(--danger)}
.campo{display:flex;flex-direction:column;gap:5px;margin-bottom:12px;min-width:0}
.campo label{font-size:12px;font-weight:600;color:var(--text-dim)}
.ajuda{font-size:12px;color:var(--text-faint)}
.input{width:100%;height:36px;padding:0 10px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface);outline:none}
textarea.input{height:auto;min-height:74px;padding:8px 10px;resize:vertical}
.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
.input:disabled{background:var(--surface-2);color:var(--text-dim)}
.linha-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.linha-3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.busca{position:relative;display:flex;align-items:center}
.busca .ic{position:absolute;left:10px;color:var(--text-faint);pointer-events:none}
.busca .input{padding-left:32px;width:230px}

/* ---------- login ---------- */
.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.login-caixa{width:100%;max-width:390px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px;box-shadow:var(--sombra)}
.login-marca{display:flex;align-items:center;gap:10px;margin-bottom:24px}
.login h1{font-size:19px;margin-bottom:4px}
.aviso-erro{background:var(--danger-soft);color:var(--danger);border-radius:6px;padding:9px 11px;font-size:12.5px;margin-bottom:12px}
.aviso-info{background:var(--primary-soft);color:var(--primary-text);border-radius:6px;padding:9px 11px;font-size:12.5px;line-height:1.5}
.aviso-info .ic{width:14px;height:14px;vertical-align:-2px;margin-right:4px}
.logo{width:32px;height:32px;border-radius:8px;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.logo svg{width:21px;height:21px}

/* ---------- estrutura ---------- */
.app{display:grid;grid-template-columns:232px 1fr;min-height:100vh}
.sidebar{background:var(--sb-bg);color:var(--sb-text);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;height:100dvh;padding:16px 12px;overflow:hidden}
.sb-marca{display:flex;align-items:center;gap:10px;padding:2px 8px 20px}
.sb-nome{color:#fff;font-weight:600;font-size:14.5px}
.sb-sub{font-size:11px;opacity:.75}
/* Só a lista do menu rola; o logo (em cima) e o Recolher + plantão (embaixo) ficam fixos */
.sb-nav{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;margin:0 -6px;padding:0 6px}
.sb-nav > *{flex-shrink:0}
.sb-nav::-webkit-scrollbar{width:6px}
.sb-nav::-webkit-scrollbar-thumb{border-width:1px}
.sb-marca,.sb-recolher,.sb-plantao{flex-shrink:0}
.sb-item{display:flex;align-items:center;gap:10px;height:36px;padding:0 10px;border-radius:6px;color:var(--sb-text);text-decoration:none;font-weight:500}
.sb-item:hover{background:var(--sb-hover);color:#fff}
.sb-item.ativo{background:var(--sb-ativo);color:#fff;box-shadow:inset 3px 0 0 #b46ae6}
.sb-item .contador{margin-left:auto;background:#b46ae6;color:#fff;font-size:11px;font-weight:600;border-radius:10px;padding:0 7px;line-height:18px}
.sb-plantao{margin-top:10px;border:1px solid var(--sb-borda);border-radius:8px;padding:11px;font-size:12px;line-height:1.4}
.sb-plantao strong{color:#fff;display:flex;align-items:center;gap:6px;font-size:12.5px;margin-bottom:3px}
.sb-plantao .luz{width:8px;height:8px;border-radius:50%;background:#6b6880}
.sb-plantao .luz.on{background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.18)}
.sb-plantao .btn{width:100%;height:30px;margin-top:9px;background:transparent;border-color:var(--sb-borda);color:#fff}
.sb-plantao .btn:hover{background:var(--sb-hover)}
.sb-fundo{display:none}
.area{min-width:0;display:flex;flex-direction:column}
.topo{min-height:60px;display:flex;align-items:center;gap:10px 14px;padding:10px 24px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}
.topo h1{font-size:16.5px;white-space:nowrap}
.topo-titulo{min-width:0;flex-shrink:0}
.topo-sub{font-size:12px;color:var(--text-faint);white-space:nowrap}
.topo-acoes{margin-left:auto;display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0}
.usuario{flex-shrink:0}
.topo-menu{display:none}
.usuario{position:relative;padding-left:12px;border-left:1px solid var(--border)}
.usuario-botao{display:flex;align-items:center;gap:9px;border:none;background:none;cursor:pointer;padding:4px 6px;border-radius:6px;text-align:left}
.usuario-botao:hover{background:var(--surface-2)}
.usuario-nome{font-weight:600;font-size:12.5px;line-height:1.2}
.usuario-papel{font-size:11px;color:var(--text-faint)}
.menu-suspenso{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--sombra-lg);min-width:190px;padding:5px;z-index:30}
.menu-suspenso button{display:flex;align-items:center;gap:9px;width:100%;border:none;background:none;padding:8px 10px;border-radius:5px;cursor:pointer;text-align:left}
.menu-suspenso button:hover{background:var(--surface-2)}
.conteudo{padding:22px 24px 40px;min-width:0}

/* ---------- componentes ---------- */
.avatar{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:600;flex-shrink:0}
.avatar-foto{object-fit:cover;background:var(--surface-3)}
.foto-perfil{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.avatar.sem-resp{background:var(--surface-3);color:var(--text-faint);border:1px dashed var(--border-strong)}
.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:11px;background:var(--surface-3);color:var(--text-dim);font-size:11.5px;font-weight:500;white-space:nowrap}
.badge .ponto{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.badge-roxo{background:var(--primary-soft);color:var(--primary-text)}
.badge-verde{background:var(--success-soft);color:var(--success)}
.badge-amarelo{background:var(--warning-soft);color:var(--warning)}
.badge-vermelho{background:var(--danger-soft);color:var(--danger)}
.badge-azul{background:var(--info-soft);color:var(--info)}
.painel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--sombra);min-width:0}
.painel-topo{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border)}
.painel-topo h2{font-size:14px}
.painel-corpo{padding:14px 16px}
.painel + .painel{margin-top:16px}
.grade-2 > .painel + .painel,.grade-meia > .painel + .painel{margin-top:0}
.vazio{padding:30px 16px;text-align:center;color:var(--text-faint);font-size:13px;line-height:1.6}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--sombra)}
.kpi-rotulo{font-size:12px;color:var(--text-dim);font-weight:500}
.kpi-valor{font-size:22px;font-weight:600;margin-top:4px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.kpi-sub{font-size:12px;color:var(--text-faint);margin-top:2px}
.grade-2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.grade-meia{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.tabela-caixa{overflow-x:auto}
.tabela{width:100%;border-collapse:collapse}
.tabela th{text-align:left;font-size:11px;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;padding:9px 14px;background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap}
.tabela td{padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:middle}
.tabela tbody tr:last-child td{border-bottom:none}
.tabela tbody tr.clicavel{cursor:pointer}
.tabela tbody tr.clicavel:hover td{background:var(--surface-2)}
.celula-nome{display:flex;align-items:center;gap:9px;font-weight:600}
.celula-sub{font-size:12px;color:var(--text-faint);font-weight:400}
.lista-item{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border)}
.lista-item:last-child{border-bottom:none}
.clicavel{cursor:pointer}
.lista-item.clicavel:hover{background:var(--surface-2)}
.lista-corpo{flex:1;min-width:0}
.lista-titulo{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lista-sub{font-size:12px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barra-linha{display:grid;grid-template-columns:150px 1fr 40px 96px;align-items:center;gap:10px;padding:8px 16px}
.barra-trilho{height:8px;background:var(--surface-3);border-radius:4px;overflow:hidden}
.barra-cheia{height:100%;border-radius:4px}
.filtros{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}
.filtros .input{width:auto;min-width:160px;height:32px}
.chave{position:relative;width:38px;height:22px;border-radius:11px;background:var(--border-strong);border:none;cursor:pointer;flex-shrink:0;padding:0;transition:background .15s}
.chave::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.chave.ligada{background:var(--success)}
.chave.ligada::after{left:19px}
.chave:disabled{opacity:.45;cursor:not-allowed}
.config-linha{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid var(--border)}
.config-linha:last-child{border-bottom:none}
.config-titulo{font-weight:600}
.config-desc{font-size:12.5px;color:var(--text-faint)}
.abas{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:18px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.aba{border:none;background:none;padding:10px 14px;font-weight:500;color:var(--text-dim);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}
.aba:hover{color:var(--text)}
.aba.ativa{color:var(--primary-text);border-bottom-color:var(--primary)}
.secao-rotulo{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin-bottom:8px}

/* ---------- funil ---------- */
.quadro{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;align-items:flex-start}
.coluna{flex:0 0 272px;background:var(--surface-3);border-radius:var(--radius);display:flex;flex-direction:column;max-height:calc(100vh - 140px)}
.coluna-topo{padding:10px 12px 8px;border-top:3px solid var(--c);border-radius:var(--radius) var(--radius) 0 0}
.coluna-titulo{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:600;font-size:13px}
.coluna-total{font-size:12px;color:var(--text-faint);margin-top:2px}
.coluna-cards{padding:4px 8px 10px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:90px;flex:1}
.coluna-cards.sobre{background:var(--primary-soft);border-radius:0 0 var(--radius) var(--radius)}
.card-lead{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:10px 11px;cursor:grab;box-shadow:var(--sombra)}
.card-lead:hover{border-color:var(--border-strong)}
.card-lead.arrastando{opacity:.45}
.card-nome{font-weight:600;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card-interesse{font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-rodape{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:9px}
.card-valor{font-weight:600;font-size:12.5px}
.card-meta{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-faint)}
.card-meta .avatar{width:22px;height:22px;font-size:9.5px}
.ponto-origem{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* ---------- tarefas ---------- */
.tarefa{display:flex;align-items:flex-start;gap:11px;padding:11px 16px;border-bottom:1px solid var(--border)}
.tarefa:last-child{border-bottom:none}
.check{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--border-strong);background:var(--surface);flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-top:1px;padding:0}
.check:hover{border-color:var(--success)}
.check.marcado{background:var(--success);border-color:var(--success);color:#fff}
.check .ic{width:12px;height:12px;stroke-width:3}
.tarefa-titulo{font-weight:500}
.tarefa-titulo.feita{text-decoration:line-through;color:var(--text-faint)}
.tarefa-meta{display:flex;flex-wrap:wrap;gap:3px 12px;font-size:12px;color:var(--text-faint);margin-top:3px}
.tarefa-meta .ic{width:13px;height:13px;vertical-align:-2px}
.grupo-titulo{padding:9px 16px;font-size:12px;font-weight:600;color:var(--text-dim);background:var(--surface-2);border-bottom:1px solid var(--border);display:flex;justify-content:space-between}
.grupo-titulo:first-child{border-radius:var(--radius) var(--radius) 0 0}
.grupo-titulo.atrasada{color:var(--danger)}

/* ---------- plantão ---------- */
.fila-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}
.fila-pos{width:24px;height:24px;border-radius:50%;background:var(--surface-3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--text-dim);flex-shrink:0}
.fila-item.proximo{background:var(--primary-soft)}
.fila-item.proximo .fila-pos{background:var(--primary);color:#fff}

/* ---------- relatórios ---------- */
.grafico{display:flex;gap:10px;height:190px;padding:14px 16px 0}
.grafico-col{flex:1;display:flex;flex-direction:column;align-items:center;min-width:0}
.grafico-valor{font-size:11px;color:var(--text-dim);height:18px;white-space:nowrap}
.grafico-area{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}
.grafico-barra{width:70%;max-width:44px;background:var(--primary);border-radius:4px 4px 0 0}
.grafico-rotulos{display:flex;gap:10px;padding:6px 16px 12px;border-top:1px solid var(--border);margin:0 16px}
.grafico-rotulos span{flex:1;text-align:center;font-size:11.5px;color:var(--text-faint);text-transform:capitalize}
.donut-linha{display:flex;align-items:center;gap:24px;padding:16px}
.donut{width:140px;height:140px;border-radius:50%;flex-shrink:0;position:relative}
.donut::after{content:'';position:absolute;inset:26px;border-radius:50%;background:var(--surface)}
.legenda{flex:1;min-width:0}
.legenda-item{display:flex;align-items:center;gap:8px;padding:4px 0}
.legenda-item .ponto{width:9px;height:9px;border-radius:50%;flex-shrink:0}
.legenda-item .valor{margin-left:auto;font-weight:600}

/* ---------- configurações ---------- */
.etapa-linha{display:flex;align-items:center;gap:8px;padding:9px 16px;border-bottom:1px solid var(--border)}
.etapa-linha:last-child{border-bottom:none}
.funil-abas{margin-bottom:14px}
.funil-abas .badge{margin-left:2px}
.funil-cor{width:14px;height:34px;border-radius:5px;flex-shrink:0}
.etapa-onde{width:150px;flex-shrink:0;font-size:12.5px}
span.etapa-onde{text-align:center}
@media (max-width:640px){.etapa-linha{flex-wrap:wrap}.etapa-linha>input.input{flex:1 1 calc(100% - 50px)!important}.etapa-onde{flex:1 1 0;min-width:0;width:auto;text-align:left!important}.funil-cfg>div{flex:1 1 calc(100% - 30px)!important}.funil-cfg .btn{margin-left:22px;margin-right:auto}}
.etapa-linha input[type=color]{width:34px;height:34px;border:1px solid var(--border-strong);border-radius:6px;padding:2px;background:var(--surface);cursor:pointer;flex-shrink:0}
.integracoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.integracao{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--sombra)}
.integracao-icone{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}
.integracao-icone .ic{width:18px;height:18px}
.site-item{border:1px solid var(--border);border-radius:8px;padding:12px;margin-bottom:10px}
.site-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.copiar-linha{display:flex;gap:6px;margin-top:10px}
.copiar-linha .input{font-size:12px;height:32px;color:var(--text-dim)}
.progresso{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden;margin-top:10px}
.progresso div{height:100%;width:0;background:var(--primary);transition:width .5s}
.progresso.erro div{background:var(--danger)}

/* ---------- modal e avisos ---------- */
.modal-fundo{position:fixed;inset:0;background:rgba(15,17,25,.45);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;z-index:100;overflow-y:auto}
.modal{background:var(--surface);border-radius:10px;box-shadow:var(--sombra-lg);width:100%;max-width:470px}
.modal.largo{max-width:880px}
.modal.extra{max-width:1140px}
/* Editor de proposta: tela grande, com seções em cartões e o resumo fixo do lado. */
.modal.pe-modal{max-width:1380px;background:var(--bg)}
.modal-fundo:has(.pe-modal){padding-top:16px;padding-bottom:16px}
.pe-topo{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--surface);border-bottom:1px solid var(--border);border-radius:10px 10px 0 0}
.pe-icone-titulo{width:42px;height:42px;border-radius:10px;background:var(--primary-soft);color:var(--primary-text);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pe-icone-titulo .ic{width:22px;height:22px}
.pe-topo h2{font-size:18px}
.pe-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:3px;font-size:12.5px;color:var(--text-dim)}
.pe-meta span{display:inline-flex;align-items:center;gap:5px}
.pe-meta .ic{width:14px;height:14px;color:var(--text-faint)}
.pe-grade{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;padding:16px 20px 20px;align-items:start}
.pe-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:14px}
.pe-card-topo{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border)}
.pe-card-topo .pe-num{width:26px;height:26px;border-radius:7px;background:var(--surface-3);color:var(--text-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pe-card-topo .pe-num .ic{width:15px;height:15px}
.pe-card-topo h3{font-size:14px;margin:0;flex:1}
.pe-card-topo .fraco{font-size:12px}
.pe-card-corpo{padding:14px 16px}
.pe-card-corpo .campo:last-child{margin-bottom:0}
.pe-lado{position:sticky;top:0}
.pe-resumo{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}
.pe-stat{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px dashed var(--border)}
.pe-stat:last-of-type{border-bottom:none}
.pe-stat .pe-num{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--surface-3);color:var(--text-dim)}
.pe-stat .pe-num .ic{width:16px;height:16px}
.pe-stat span{display:block;font-size:11.5px;color:var(--text-faint);font-weight:500}
.pe-stat strong{display:block;font-size:15px;font-variant-numeric:tabular-nums}
.pe-stat.destaque .pe-num{background:var(--primary);color:#fff}
.pe-stat.destaque strong{font-size:21px;color:var(--primary-text)}
.pe-barra{display:flex;height:12px;border-radius:6px;overflow:hidden;background:var(--surface-3);margin:12px 0 8px}
.pe-barra div{height:100%}
.pe-legenda{display:flex;flex-direction:column;gap:4px;font-size:12px;margin-bottom:12px}
.pe-legenda div{display:flex;align-items:center;gap:7px}
.pe-legenda i{width:9px;height:9px;border-radius:3px;flex-shrink:0}
.pe-legenda b{margin-left:auto;font-weight:600;font-variant-numeric:tabular-nums}
.pe-botoes{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.pe-botoes .btn{width:100%;height:38px}
.pe-tipo{display:flex;align-items:center;gap:6px}
.pe-tipo i{width:9px;height:9px;border-radius:3px;flex-shrink:0}
.pe-grade > *{min-width:0}
.pe-card .tabela-caixa{overflow-x:auto}
@media (max-width:980px){ .pe-grade{grid-template-columns:minmax(0,1fr)} .pe-lado{position:static} }
@media (max-width:560px){ .pe-grade{padding:12px} .pe-topo{padding:14px} .pe-meta{gap:4px 10px} }
.modal-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}
.modal-topo h2{font-size:16px}
.modal-corpo{padding:16px 18px}
.modal-rodape{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 10px 10px}
.modal-rodape .esquerda{margin-right:auto}
.lead-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.lead-grade > div{padding:16px 18px;min-width:0}
.lead-grade > div + div{border-left:1px solid var(--border)}
.dados{display:grid;grid-template-columns:96px 1fr;gap:9px 12px;margin:6px 0 16px}
.dados dt{color:var(--text-faint);font-size:12.5px}
.dados dd{margin:0;font-weight:500;word-break:break-word}
.acoes-lead{display:flex;flex-wrap:wrap;gap:8px}
.historico{margin-top:16px}
.hist-item{position:relative;padding:0 0 14px 18px;border-left:2px solid var(--border);margin-left:5px}
.hist-item:last-child{border-left-color:transparent;padding-bottom:0}
.hist-item::before{content:'';position:absolute;left:-6px;top:3px;width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--border-strong)}
.hist-item.nota::before{border-color:var(--primary);background:var(--primary-soft)}
.hist-texto{white-space:pre-wrap;word-break:break-word}
.hist-item.nota .hist-texto{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:8px 10px}
.hist-meta{font-size:11.5px;color:var(--text-faint);margin-top:3px}
.toasts{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:8px;z-index:200;max-width:calc(100vw - 36px)}
.toast{background:#1f2330;color:#fff;border-radius:8px;padding:11px 14px;box-shadow:var(--sombra-lg);font-size:13px;max-width:350px}
.toast.erro{background:#a32222}
.toast.info{background:var(--primary)}
.toast.clicavel{cursor:pointer}

/* ---------- mapa de vendas ---------- */
.mapa-status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.mapa-status.selecionado{box-shadow:0 0 0 2px var(--cor);background:color-mix(in srgb, var(--cor) 8%, var(--surface))}
.mapa-filtro{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:3px 10px}
.mapa-filtro .btn-link{margin-left:4px;font-size:12.5px}
.mapa-status{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--cor);border-radius:var(--radius);padding:10px 12px;cursor:pointer;text-align:left;box-shadow:var(--sombra)}
.mapa-status:hover{background:var(--surface-2)}
.mapa-status.inativo{opacity:.4}
.mapa-status-topo{display:flex;justify-content:space-between;gap:6px;font-size:11.5px;font-weight:600;color:var(--text-dim)}
.mapa-status-num{font-size:20px;font-weight:600;margin-top:2px}
.mapa-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--border)}
.mapa-toolbar .espaco{flex:1}
.mapa-toolbar .btn.ativo{background:var(--warning-soft);border-color:var(--warning);color:var(--warning)}
.mapa-dica{font-size:12px;color:var(--warning)}
.mapa-resumo{font-size:12px;color:var(--text-dim)}
.mapa-scroll{position:relative;overflow:auto;background:var(--surface-2);max-height:72vh;border-radius:0 0 var(--radius) var(--radius)}
.mapa-canvas{position:relative;width:100%}
.mapa-canvas img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none;pointer-events:none}
.mapa-canvas.editando{cursor:crosshair}
.mapa-pontos{position:absolute;inset:0}
.lote-ponto{position:absolute;transform:translate(-50%,-50%);min-width:24px;height:24px;padding:0 5px;border-radius:12px;background:var(--cor);font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.92);box-shadow:0 2px 5px rgba(0,0,0,.4);cursor:pointer;touch-action:none;user-select:none;font-variant-numeric:tabular-nums}
.lote-ponto:hover{transform:translate(-50%,-50%) scale(1.15);z-index:2}
.mapa-canvas.editando .lote-ponto{cursor:grab}
.lote-ponto.arrastando{cursor:grabbing;z-index:3;transform:translate(-50%,-50%) scale(1.25)}
.simulador{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:12px 12px 6px;margin-bottom:14px}
.simulador-linha{display:flex;justify-content:space-between;align-items:baseline;font-size:12.5px;color:var(--text-dim);padding:3px 0}
.simulador-linha strong{color:var(--text);font-variant-numeric:tabular-nums}
.simulador-parcela{font-size:16px;color:var(--success)!important}
.status-escolha{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.status-escolha button{border:1px solid var(--border-strong);background:var(--surface);border-radius:15px;padding:4px 10px;font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px}
.status-escolha button.ativo{border-color:var(--cor);background:color-mix(in srgb, var(--cor) 16%, transparent);font-weight:600}
.bolinha-status{width:9px;height:9px;border-radius:50%;background:var(--cor);flex-shrink:0}
.pill-lote{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:12px;background:color-mix(in srgb, var(--cor) 16%, transparent)}

/* ---------- responsivo ---------- */
/* ---------- negociação e propostas ---------- */
.negocio-bloco{border:1px solid var(--border);border-radius:8px;margin-top:12px;overflow:hidden}
.negocio-topo{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:var(--surface-2);border-bottom:1px solid var(--border)}
.negocio-topo h3{margin:0;font-size:13px;font-weight:600}
.negocio-item{display:flex;align-items:center;gap:10px;padding:9px 12px}
.negocio-item + .negocio-item{border-top:1px solid var(--border)}
.negocio-item .info{flex:1;min-width:0}
.negocio-item .titulo{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.negocio-item .sub{font-size:12px;color:var(--text-faint);margin-top:1px}
.negocio-item .acoes{display:flex;gap:4px;align-items:center;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
.negocio-vazio{padding:10px 12px;font-size:12.5px;color:var(--text-faint)}
.negocio-form{padding:10px 12px;border-top:1px solid var(--border);background:var(--surface-2)}
.faixa-status{padding:6px 18px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff}
.prop-resumo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 12px}
.prop-resumo.quatro{grid-template-columns:repeat(4,minmax(0,1fr))}
.prop-resumo > div{border:1px solid var(--border);border-radius:8px;padding:9px 12px;min-width:0}
.prop-resumo span{display:block;font-size:11.5px;color:var(--text-faint);font-weight:500}
.prop-resumo strong{display:block;font-size:16px;margin-top:2px;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prop-aviso{border-radius:6px;padding:8px 11px;font-size:12.5px;margin-bottom:12px}
.prop-aviso.ok{background:var(--success-soft);color:var(--success)}
.prop-aviso.atencao{background:var(--warning-soft);color:var(--warning)}
.parcelas-tabela{width:100%;border-collapse:collapse;min-width:900px}
.parcelas-tabela th{font-size:11.5px;font-weight:600;color:var(--text-dim);text-align:left;padding:6px 4px;border-bottom:1px solid var(--border);white-space:nowrap}
.parcelas-tabela td{padding:5px 4px;vertical-align:middle}
.parcelas-tabela .input{height:32px}
.parcelas-tabela tfoot td{border-top:1px solid var(--border);font-weight:600;padding-top:8px}
.qtd-controle{display:flex;align-items:center;gap:3px}
.qtd-controle .input{width:52px;text-align:center;padding:0 4px}
.qtd-controle .btn{width:28px;padding:0}
.input-junto{display:flex;align-items:stretch}
.input-junto > span{display:flex;align-items:center;padding:0 8px;background:var(--surface-3);border:1px solid var(--border-strong);font-size:12px;color:var(--text-dim)}
.input-junto > span:first-child{border-right:none;border-radius:6px 0 0 6px}
.input-junto > span:last-child{border-left:none;border-radius:0 6px 6px 0}
.input-junto .input{border-radius:0;min-width:0}
.input-junto .input:first-child{border-radius:6px 0 0 6px}
.input-junto .input:last-child{border-radius:0 6px 6px 0}
.modelos-parcela{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px;font-size:12px;color:var(--text-faint)}
.btn-sucesso{background:var(--success);border-color:var(--success);color:#fff}
.btn-perigo{background:var(--danger);border-color:var(--danger);color:#fff}
.btn-pendencia{background:var(--primary-soft);border-color:var(--primary-soft);color:var(--primary-text)}
.card-proposta{margin-top:6px}
.kpi.clicavel{cursor:pointer}
.kpi.clicavel.ativo{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
.parecer{border-left:3px solid var(--primary);background:var(--surface-2);border-radius:0 6px 6px 0;padding:8px 11px;margin:6px 0 12px;font-size:13px;white-space:pre-wrap}
.check-linha{display:flex;align-items:center;gap:8px;font-size:13px;margin:4px 0 8px;cursor:pointer}
@media (max-width:560px){
  .prop-resumo,.prop-resumo.quatro{grid-template-columns:repeat(2,minmax(0,1fr))}
  .negocio-item{flex-wrap:wrap}
}
.produtos-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.produto-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.produto-nome{font-size:16px;font-weight:600}
.produto-info{font-size:12.5px;color:var(--text-dim);line-height:1.5;flex:1}
.produto-acoes{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.regras-tabela{min-width:980px}
.grafico-acumulado{border:1px solid var(--border);border-radius:8px;padding:10px 10px 6px}
.grafico-acumulado svg{width:100%;height:auto;display:block}
.grafico-acumulado text{font-size:11px;fill:var(--text-faint)}
.grafico-legenda{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;padding:4px 6px 0}
.grafico-legenda i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.unid-topo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:8px 14px;border-bottom:1px solid var(--border)}
.unid-produto{display:flex;align-items:center;gap:10px}
.unid-produto > .ic{width:34px;height:34px;padding:7px;border:1px solid var(--border);border-radius:8px;color:var(--text-dim)}
.unid-grupo + .unid-grupo{border-top:1px solid var(--border)}
.unid-grupo-topo{width:100%;display:flex;align-items:center;gap:12px;padding:11px 14px;border:none;background:var(--primary);color:#fff;cursor:pointer;text-align:left;font-size:13.5px}
.unid-grupo-topo:hover{filter:brightness(1.08)}
.unid-grupo-topo .ic{width:16px;height:16px;flex-shrink:0}
.unid-grupo-resumo{margin-left:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 12px;font-size:12px;font-weight:500}
.unid-cont{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.unid-grupo-corpo{padding:10px 12px}
.unid-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:6px;flex:1}
.unid-tile{border:none;border-radius:6px;padding:7px 4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:1px;line-height:1.2;transition:transform .1s}
.unid-tile:hover{transform:translateY(-1px);box-shadow:var(--sombra)}
.unid-tile b{font-size:14px}
.unid-tile span{font-size:10px;opacity:.9}
.unid-tile.apagado{opacity:.18}
.unid-andar{display:flex;gap:8px;align-items:stretch}
.unid-andar + .unid-andar{margin-top:6px}
.unid-andar-rotulo{width:64px;flex-shrink:0;background:var(--surface-3);border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:13px}
.unid-andar-rotulo span{font-size:10px;font-weight:500;color:var(--text-faint)}
.unid-dica{position:fixed;z-index:200;width:230px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--sombra-lg);pointer-events:none;overflow:hidden}
.unid-dica-topo{background:#3f4452;color:#fff;font-weight:600;font-size:12.5px;padding:6px 10px}
.unid-dica dl{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;margin:0;padding:8px 10px;font-size:12px}
.unid-dica dt{color:var(--text-faint)}
.unid-dica dd{margin:0;text-align:right;font-weight:500}
#unidStatus .mapa-status{position:relative}
#unidStatus .mapa-status:hover::after{content:attr(data-vgv);position:absolute;left:8px;bottom:calc(100% + 6px);background:var(--cor);color:#fff;font-size:12px;font-weight:600;padding:6px 10px;border-radius:6px;white-space:nowrap;box-shadow:var(--sombra);z-index:5}
.produto-card{padding:0;overflow:hidden;display:flex;flex-direction:column}
.produtos-grade > .painel{margin:0}
.produto-capa{position:relative;aspect-ratio:16/9;background:var(--surface-3) center/cover no-repeat}
.produto-sem-capa{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-faint)}
.produto-sem-capa .ic{width:40px;height:40px;opacity:.6}
.produto-capa .produto-num{position:absolute;top:10px;left:10px;background:var(--surface);color:var(--text);padding:3px 9px;border-radius:6px;font-size:11.5px;font-weight:600;box-shadow:var(--sombra)}
.produto-editar{position:absolute;top:8px;right:8px;background:var(--surface);box-shadow:var(--sombra)}
.produto-corpo{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.contador-mini{background:var(--primary);color:#fff;border-radius:9px;font-size:10.5px;padding:0 6px;line-height:16px}
.capa-previa{aspect-ratio:16/9;max-width:420px;border:1px dashed var(--border-strong);border-radius:8px;background:var(--surface-2) center/cover no-repeat;display:flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:12.5px}
.marketing-lista{display:flex;flex-direction:column;gap:8px}
.marketing-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;color:var(--text);text-decoration:none}
.marketing-item:hover{border-color:var(--primary);background:var(--primary-soft)}
.marketing-tipo{color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;flex-shrink:0}
.marketing-titulo{flex:1;font-weight:500}
.marketing-item .ic{width:15px;height:15px;color:var(--text-faint)}
.painel-destaque{border-color:var(--warning);box-shadow:0 0 0 1px var(--warning)}
.luz.espera{background:var(--warning)}
.aud-tipo{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap}
.funil-resumo{padding:14px 18px 16px;margin-bottom:14px}
.funil-resumo-topo{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;align-items:center;margin-bottom:12px;font-size:13px}
.funil-indicadores{display:flex;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--text-dim)}
.funil-indicadores span{background:var(--surface-3);border-radius:99px;padding:3px 10px}
.funil-indicadores span.perda{background:color-mix(in srgb,var(--warning) 16%,transparent);color:var(--text)}
.funil-desenho{display:flex;flex-direction:column;gap:6px;max-width:820px;margin:0 auto}
.funil-linha{display:grid;grid-template-columns:minmax(0,1fr) 116px;align-items:center;gap:12px}
.fn-faixa{--c:#94a3b8;justify-self:center;display:flex;align-items:center;gap:10px;height:44px;padding:0 16px;border-radius:12px;cursor:pointer;font:inherit;text-align:left;
  background:color-mix(in srgb,var(--c) 13%,var(--surface));border:1px solid color-mix(in srgb,var(--c) 55%,transparent);color:color-mix(in srgb,var(--c) 72%,#000);
  transition:transform .15s,box-shadow .15s;transform-origin:center}
.fn-faixa:hover{transform:translateY(-1px);box-shadow:0 6px 16px -10px var(--c)}
:root[data-tema="escuro"] .fn-faixa{background:color-mix(in srgb,var(--c) 20%,var(--surface));color:color-mix(in srgb,var(--c) 45%,#fff)}
.fn-faixa .ic{width:18px;height:18px;flex-shrink:0}
.fn-nome{font-weight:600;font-size:14px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fn-qtd{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}
.fn-valor{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.fn-taxa{font-size:12px;color:var(--text-dim);white-space:nowrap}
.fn-taxa span{display:inline-block;background:var(--surface-3);border-radius:99px;padding:3px 10px;color:var(--text)}
.fn-taxa span.perda{background:color-mix(in srgb,var(--warning) 18%,transparent)}
.fn-taxa b{color:var(--success);font-weight:600}
.fn-av{font-style:normal}
.fn-anima .fn-faixa{animation:fnCresce .6s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * 70ms)}
@keyframes fnCresce{from{transform:scaleX(.25);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.fn-anima .fn-faixa{animation:none}}
.fn-vazio{display:flex;align-items:center;gap:16px;padding:18px 20px;margin-bottom:14px}
.fn-vazio .fn-vazio-ic{width:48px;height:48px;border-radius:14px;background:var(--primary-soft);color:var(--primary-text);display:grid;place-items:center;flex-shrink:0}
.fn-vazio .fn-vazio-ic .ic{width:24px;height:24px}
.fn-vazio b{display:block;font-size:15px;margin-bottom:2px}
.fn-vazio p{margin:0;font-size:13px;color:var(--text-dim)}
.coluna.destaque{box-shadow:0 0 0 2px var(--primary);transition:box-shadow .2s}
.btn.ativo-toggle{border-color:var(--primary);color:var(--primary-text)}
@media (max-width:560px){
  .funil-linha{grid-template-columns:minmax(0,1fr) 78px;gap:6px}
  .fn-faixa{height:auto;min-height:44px;padding:6px 10px;gap:7px;flex-wrap:wrap}
  .fn-nome{font-size:13px}
  .fn-qtd{font-size:17px}
  .fn-valor{flex-basis:100%;font-size:11px;margin-top:-4px}
  .fn-taxa span{padding:3px 7px}
  .fn-av{display:none}
  .fn-vazio{flex-wrap:wrap}
}
.barra-pasta{height:6px;background:var(--surface-3);border-radius:3px;overflow:hidden}
.barra-pasta div{height:100%;background:var(--primary);transition:width .3s}
.pasta-grupo{font-size:11.5px;font-weight:700;color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;margin:12px 0 4px}
.pasta-doc{border:1px solid var(--border);border-radius:8px;margin-bottom:6px}
.pasta-doc + .pasta-doc{border-top:1px solid var(--border)}
.pasta-doc .acoes label.btn{cursor:pointer}
.fila-prioridade{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;padding:10px 14px 14px}
.fila-pri-item{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px 10px;cursor:pointer;color:var(--text)}
.fila-pri-item:hover{border-color:var(--primary)}
.marcacoes-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px}
.marcacao{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:6px 9px;cursor:pointer;color:var(--text)}
.marcacao:hover{border-color:var(--primary)}
.marcacao code{font-size:12px;color:var(--primary-text);font-weight:600}
.marcacao span{font-size:11.5px;color:var(--text-faint)}
.negocio-item .acoes label.btn{cursor:pointer}
/* Contrato: muitos botões; ficam numa linha embaixo do nome, sem espremer o texto. */
/* Equipe (imobiliária) do corretor */
.badge-equipe{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;color:var(--text-dim);white-space:nowrap}
.badge-equipe::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cor-eq,#94a3b8);flex-shrink:0}
.equipe-item{display:flex;align-items:center;gap:10px;padding:10px 16px;border-top:1px solid var(--border)}
.equipe-item .cor{width:14px;height:14px;border-radius:4px;flex-shrink:0}
.equipe-item .nome{font-weight:600;flex:1;min-width:0}
.cores-equipe{display:flex;gap:8px;flex-wrap:wrap}
.cores-equipe button{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer}
.cores-equipe button.ativa{border-color:var(--text);box-shadow:0 0 0 2px var(--surface) inset}
.negocio-item.empilhado{flex-wrap:wrap;align-items:flex-start}
.negocio-item.empilhado .info{flex:1 1 0}
.negocio-item.empilhado .titulo{white-space:normal}
.negocio-item.empilhado .acoes{order:3;flex-basis:100%;justify-content:flex-start}
.negocio-item.empilhado > .btn-icone{order:2;margin-left:auto}
.app{transition:grid-template-columns .2s ease}
.sb-recolher{margin-top:10px;border:none;background:none;cursor:pointer;width:100%;font-family:inherit;font-size:inherit;color:var(--sb-text);opacity:.8}
.sb-recolher:hover{opacity:1}
.sb-recolher .ic{transition:transform .2s}
.sb-plantao-mini{display:none}
@media (min-width:861px){
  .app.sb-recolhido{grid-template-columns:68px 1fr}
  .app.sb-recolhido .sidebar{padding:16px 10px;overflow-x:hidden}
  .app.sb-recolhido .sb-marca{justify-content:center;padding:2px 0 20px}
  .app.sb-recolhido .sb-marca > div{display:none}
  .app.sb-recolhido .sb-item{justify-content:center;padding:0;position:relative}
  .app.sb-recolhido .sb-item span:not(.contador){display:none}
  .app.sb-recolhido .sb-item .contador{position:absolute;top:2px;right:4px;margin:0;padding:0 5px;font-size:10px;line-height:15px}
  .app.sb-recolhido .sb-recolher .ic{transform:rotate(180deg)}
  .app.sb-recolhido .sb-plantao{border:none;padding:0}
  .app.sb-recolhido .sb-plantao > :not(.sb-plantao-mini){display:none}
  .app.sb-recolhido .sb-plantao-mini{display:flex;position:relative;align-items:center;justify-content:center;width:100%;height:40px;border:1px solid var(--sb-borda);border-radius:8px;background:none;color:var(--sb-text);cursor:pointer}
  .app.sb-recolhido .sb-plantao-mini:hover{background:var(--sb-hover);color:#fff}
  .app.sb-recolhido .sb-plantao-mini .luz{position:absolute;top:6px;right:8px;width:8px;height:8px;border-radius:50%;background:#6b6880}
  .app.sb-recolhido .sb-plantao-mini .luz.on{background:#4ade80}
  .app.sb-recolhido .sb-plantao-mini .luz.espera{background:var(--warning)}
}
@media (max-width:860px){ .sb-recolher{display:none} }
body.mapa-tela-cheia{overflow:hidden}
body.mapa-tela-cheia .mapa-bloco{position:fixed;inset:0;z-index:90;background:var(--surface);display:flex;flex-direction:column}
body.mapa-tela-cheia .mapa-bloco .mapa-scroll{flex:1;max-height:none;border-radius:0}
@media (max-width:1100px){
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grade-2,.grade-meia{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:860px){
  .app{grid-template-columns:1fr}
  .sidebar{position:fixed;left:0;top:0;bottom:0;height:auto;width:252px;z-index:60;transform:translateX(-100%);transition:transform .2s}
  .app.menu-aberto .sidebar{transform:none;box-shadow:var(--sombra-lg)}
  .app.menu-aberto .sb-fundo{display:block;position:fixed;inset:0;background:rgba(15,17,25,.4);z-index:55}
  .topo{padding:10px 14px;flex-wrap:wrap}
  .topo-menu{display:inline-flex}
  .usuario{margin-left:auto}
  .topo-acoes{order:3;width:100%;justify-content:flex-start;margin-left:0}
  .topo-acoes:empty{display:none}
  .busca .input{width:170px}
  .usuario-texto{display:none}
  .conteudo{padding:16px 14px 32px}
  .lead-grade{grid-template-columns:1fr}
  .lead-grade > div + div{border-left:none;border-top:1px solid var(--border)}
  .barra-linha{grid-template-columns:110px 1fr 32px 84px}
}
@media (max-width:560px){
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rotulo-btn{display:none}
  .linha-2,.linha-3{grid-template-columns:1fr}
  .mapa-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .donut-linha{flex-direction:column;align-items:stretch}
  .donut{align-self:center}
  .barra-linha{grid-template-columns:90px 1fr 28px}
  .barra-linha .num:last-child{display:none}
}

/* ================= VISUAL: cara de aplicativo (branco + roxo/lilás da marca) ================= */
:root{
  --bg:#f6f4fa; --primary:#8E1FC4; --primary-hover:#7a19a9; --primary-soft:#f3e8fb; --primary-text:#7417a6;
  --sb-bg:linear-gradient(180deg,#8E1FC4 0%,#7417a6 60%,#5f1289 100%); --sb-text:rgba(255,255,255,.86); --sb-forte:#fff; --sb-hover:rgba(255,255,255,.12); --sb-ativo:rgba(255,255,255,.2); --sb-ativo-txt:#fff; --sb-borda:rgba(255,255,255,.18); --sb-icone:rgba(255,255,255,.82);
  --radius:10px; --sombra:0 1px 2px rgba(60,30,90,.04),0 2px 6px rgba(60,30,90,.04);
  --c-roxo:#8E1FC4; --c-roxo-s:#f3e8fb; --c-azul:#0284c7; --c-azul-s:#e3f2fb; --c-verde:#16a34a; --c-verde-s:#e5f6ec; --c-laranja:#d97706; --c-laranja-s:#fdf1e0;
  --c-rosa:#db2777; --c-rosa-s:#fce8f2; --c-vermelho:#dc2626; --c-vermelho-s:#fdeaea; --c-cinza:#64748b; --c-cinza-s:#eef1f5;
}
:root[data-tema="escuro"]{
  --sb-bg:#0b0c10; --sb-text:#b3afc5; --sb-forte:#fff; --sb-hover:rgba(255,255,255,.05); --sb-ativo:rgba(157,78,221,.2); --sb-ativo-txt:#e6cdfb; --sb-borda:rgba(255,255,255,.07); --sb-icone:#8c86a3;
  --c-roxo:#c79af1; --c-roxo-s:rgba(157,78,221,.18); --c-azul:#38bdf8; --c-azul-s:rgba(56,189,248,.14); --c-verde:#4ade80; --c-verde-s:rgba(74,222,128,.13); --c-laranja:#fbbf24; --c-laranja-s:rgba(251,191,36,.13);
  --c-rosa:#f472b6; --c-rosa-s:rgba(244,114,182,.14); --c-vermelho:#f87171; --c-vermelho-s:rgba(248,113,113,.14); --c-cinza:#a3aab7; --c-cinza-s:rgba(163,170,183,.12);
}
.cor-roxo{background:var(--c-roxo-s);color:var(--c-roxo)} .cor-azul{background:var(--c-azul-s);color:var(--c-azul)} .cor-verde{background:var(--c-verde-s);color:var(--c-verde)}
.cor-laranja{background:var(--c-laranja-s);color:var(--c-laranja)} .cor-rosa{background:var(--c-rosa-s);color:var(--c-rosa)} .cor-vermelho{background:var(--c-vermelho-s);color:var(--c-vermelho)} .cor-cinza{background:var(--c-cinza-s);color:var(--c-cinza)}

/* menu lateral: roxo da logo com ícones e textos brancos (no tema escuro, fica escuro) */
.sb-marca .logo{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.sb-nome{color:var(--sb-forte)}
.sb-sub{color:var(--sb-text);opacity:.8}
.sb-item{border-radius:8px}
.sb-item .ic{color:var(--sb-icone);width:18px;height:18px}
.sb-item:hover{background:var(--sb-hover);color:var(--sb-forte)}
.sb-item:hover .ic{color:var(--sb-forte)}
.sb-item.ativo{background:var(--sb-ativo);color:var(--sb-ativo-txt);box-shadow:inset 3px 0 0 #fff;font-weight:600}
.sb-item.ativo .ic{color:var(--sb-ativo-txt)}
.sb-item .contador{background:#fff;color:#7417a6}
.sb-plantao{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);border-radius:10px;color:var(--sb-text)}
.sb-plantao strong{color:var(--sb-forte)}
.sb-plantao .luz{background:rgba(255,255,255,.5)}
.sb-plantao .btn{background:#fff;border-color:#fff;color:#7417a6;font-weight:600}
.sb-plantao .btn:hover{background:#f3e8fb}
:root[data-tema="escuro"] .sidebar{border-right:1px solid var(--sb-borda)}
:root[data-tema="escuro"] .sb-marca .logo{background:var(--primary-soft);box-shadow:none}
:root[data-tema="escuro"] .sb-item.ativo{box-shadow:none}
:root[data-tema="escuro"] .sb-item.ativo .ic{color:#d8b4fe}
:root[data-tema="escuro"] .sb-item .contador{background:var(--primary);color:#fff}
:root[data-tema="escuro"] .sb-plantao{background:var(--primary-soft);border-color:transparent}
:root[data-tema="escuro"] .sb-plantao .luz{background:#6b6880}
:root[data-tema="escuro"] .sb-plantao .btn{background:var(--surface);border-color:var(--border-strong);color:var(--text);font-weight:500}

/* topo com o ícone da página */
.topo{background:rgba(255,255,255,.85);backdrop-filter:blur(8px)}
:root[data-tema="escuro"] .topo{background:rgba(23,26,32,.88)}
.topo-icone{width:38px;height:38px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.topo-icone:empty{display:none}
@media (max-width:760px){ .topo-icone{display:none} }
.topo-icone .ic{width:20px;height:20px}
:root[data-tema="escuro"] .topo-icone{color:#d8b4fe}

/* botões, cartões, abas */
.btn{border-radius:8px}
.btn-primario{background:linear-gradient(135deg,#9b2bd3,#7a19a9);border-color:#8420b8;box-shadow:0 2px 6px rgba(142,31,196,.25)}
.btn-primario:hover{background:linear-gradient(135deg,#8a22bf,#6c1597);border-color:#741ba3}
.painel,.kpi{border-radius:12px;border-color:#ebe7f1}
:root[data-tema="escuro"] .painel,:root[data-tema="escuro"] .kpi{border-color:var(--border)}
.painel-topo h2{display:flex;align-items:center;gap:9px}
.titulo-ic{width:28px;height:28px;border-radius:8px;background:var(--primary-soft);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.titulo-ic .ic{width:15px;height:15px}
:root[data-tema="escuro"] .titulo-ic{color:#d8b4fe}
.negocio-topo h3{display:flex;align-items:center;gap:8px}
.negocio-topo .titulo-ic{width:24px;height:24px;border-radius:7px}
.negocio-topo .titulo-ic .ic{width:13px;height:13px}
.kpi{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}
.kpi > :not(.kpi-icone){grid-column:2}
.kpi-icone{grid-row:span 3;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}
.kpi-icone .ic{width:21px;height:21px}
.kpi-valor{font-size:23px;font-weight:700}
.aba.ativa{font-weight:600}
.dados dt{display:flex;align-items:center;gap:6px}
.dados dt .ic{width:14px;height:14px;color:var(--sb-icone)}
.tabela th{background:#faf8fd}
:root[data-tema="escuro"] .tabela th{background:var(--surface-2)}
.vazio::before{content:"";display:block;width:44px;height:44px;margin:0 auto 10px;border-radius:12px;background:var(--primary-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238E1FC4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12h-6l-2 3h-4l-2-3H2'/%3E%3Cpath d='M5.5 5.1L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.5-6.9A2 2 0 0 0 16.8 4H7.2a2 2 0 0 0-1.7 1.1z'/%3E%3C/svg%3E") center/20px no-repeat}
.modal{border-radius:14px}
.modal-topo{border-radius:14px 14px 0 0}
.modal-rodape{border-radius:0 0 14px 14px}

/* parcelas com cor por tipo (Entrada, Mensal, Anual...) */
.simulador{background:linear-gradient(135deg,var(--primary-soft),var(--surface) 70%);border-color:color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:12px}
.simulador-parcela{font-size:20px;color:var(--primary-text)!important}
.aba{display:inline-flex;align-items:center;gap:7px}
.aba .ic{width:15px;height:15px;opacity:.75}
.aba.ativa .ic{opacity:1}
.card-lead{border-radius:10px;border-left:3px solid var(--etapa,var(--border))}
.card-lead:hover{box-shadow:0 4px 14px rgba(60,30,90,.10)}
.coluna{border-radius:12px;background:#efecf5}
:root[data-tema="escuro"] .coluna{background:var(--surface-3)}
.modal.medio{max-width:620px}
/* Integrações com cara de aplicativo */
.int-hero{background:linear-gradient(135deg,#8E1FC4 0%,#6c159c 70%,#56107d 100%);color:#fff;border-radius:16px;padding:20px 22px;display:flex;align-items:center;gap:18px;margin-bottom:20px;box-shadow:0 10px 30px rgba(110,21,160,.25);flex-wrap:wrap}
.int-hero .int-icone{background:rgba(255,255,255,.18);box-shadow:none}
.int-hero h2{font-size:18px;color:#fff;margin:0}
.int-hero p{margin:3px 0 0;color:rgba(255,255,255,.82);font-size:13px}
.int-hero-nums{display:flex;gap:10px;margin-left:auto;flex-wrap:wrap}
.int-hero-nums div{background:rgba(255,255,255,.14);border-radius:12px;padding:8px 14px;min-width:96px}
.int-hero-nums strong{display:block;font-size:20px}
.int-hero-nums span{font-size:11.5px;color:rgba(255,255,255,.8)}
.int-grupo{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);margin:6px 0 10px;display:flex;align-items:center;gap:8px}
.int-grupo::after{content:"";flex:1;height:1px;background:var(--border)}
.int-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;margin-bottom:22px}
.int-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--sombra);transition:box-shadow .15s,transform .15s}
.int-card:hover{box-shadow:0 10px 26px rgba(60,30,90,.10);transform:translateY(-2px)}
.int-card-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.int-icone{width:50px;height:50px;border-radius:14px;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 6px 14px rgba(0,0,0,.12)}
.int-icone .ic{width:24px;height:24px}
.int-icone svg:not(.ic){width:24px;height:24px;fill:currentColor}
.int-card h3{font-size:15px;margin:2px 0 0}
.int-card p{margin:0;font-size:12.5px;color:var(--text-dim);line-height:1.5;flex:1}
.int-status{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:12px;font-size:11.5px;font-weight:600;white-space:nowrap}
.int-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.int-status.ativo{background:var(--c-verde-s);color:var(--c-verde)}
.int-status.disponivel{background:var(--c-azul-s);color:var(--c-azul)}
.int-status.breve{background:var(--c-cinza-s);color:var(--c-cinza)}
.int-rodape{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px dashed var(--border);padding-top:12px;margin-top:2px;flex-wrap:wrap}
.int-num{display:flex;align-items:baseline;gap:6px}
.int-num strong{font-size:18px;font-variant-numeric:tabular-nums}
.int-num span{font-size:12px;color:var(--text-faint)}
/* passos ilustrados nas janelas */
.passos-app{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 16px}
.passo-app{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--surface-2);display:flex;flex-direction:column;gap:6px;position:relative}
.passo-app .n{width:30px;height:30px;border-radius:9px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center}
:root[data-tema="escuro"] .passo-app .n{color:#d8b4fe}
.passo-app .n .ic{width:16px;height:16px}
.passo-app b{font-size:13px}
.passo-app span{font-size:12px;color:var(--text-dim);line-height:1.45}
.item-app{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:14px;padding:12px 14px;margin-bottom:10px;background:var(--surface)}
.item-app .int-icone{width:40px;height:40px;border-radius:11px;box-shadow:none}
.item-app .int-icone .ic,.item-app .int-icone svg:not(.ic){width:19px;height:19px}
.item-app-corpo{flex:1;min-width:0}
.item-app-corpo b{display:block;font-size:13.5px}
.item-app-corpo span{font-size:12px;color:var(--text-faint)}
.chip-num{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:12px;background:var(--surface-3);font-size:11.5px;font-weight:600;color:var(--text-dim);white-space:nowrap}
.chip-num .ic{width:13px;height:13px}
.cartao-form{border:1px dashed var(--border-strong);border-radius:14px;padding:14px;background:var(--surface-2)}
.plataformas{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.plataforma{border:1px solid var(--border);border-radius:14px;padding:14px;display:flex;align-items:center;gap:12px;opacity:.9}
.plataforma .logo-txt{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;color:#fff}
.plataforma b{display:block}
.plataforma span{font-size:12px;color:var(--text-faint)}
.assinantes{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.assinante{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:12px;padding:10px 12px}
.assinante .n{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.assinante .n .ic{width:15px;height:15px}
.assinante b{display:block;font-size:12.5px}
.assinante span{font-size:11.5px;color:var(--text-faint)}
.chave-card{display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:14px}
@media (max-width:620px){ .plataformas,.assinantes{grid-template-columns:1fr} .int-hero-nums{margin-left:0} }
/* menu do botão direito do CRM (no lugar do menu do navegador) */
.menu-contexto{position:fixed;z-index:300;min-width:236px;max-width:290px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 44px rgba(40,15,70,.22);padding:6px;font-size:13px;animation:menuCtx .12s ease-out}
@keyframes menuCtx{from{opacity:0;transform:scale(.97) translateY(-4px)}to{opacity:1;transform:none}}
.menu-contexto .mc-topo{display:flex;align-items:center;gap:9px;padding:8px 10px 10px;margin-bottom:4px;border-bottom:1px solid var(--border)}
.menu-contexto .mc-topo .logo{width:26px;height:26px;border-radius:7px;background:var(--primary-soft);box-shadow:none}
.menu-contexto .mc-topo .logo svg{width:17px;height:17px}
.menu-contexto .mc-topo b{font-size:12.5px;display:block}
.menu-contexto .mc-topo span{font-size:11px;color:var(--text-faint)}
.menu-contexto button{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;padding:8px 10px;border-radius:8px;cursor:pointer;text-align:left;color:var(--text)}
.menu-contexto button .ic{width:16px;height:16px;color:var(--primary)}
:root[data-tema="escuro"] .menu-contexto button .ic{color:#d8b4fe}
.menu-contexto button:hover:not(:disabled){background:var(--primary-soft)}
.menu-contexto button:disabled{opacity:.4;cursor:default}
.menu-contexto button kbd{margin-left:auto;font:11px Inter,sans-serif;color:var(--text-faint)}
.menu-contexto .mc-sep{height:1px;background:var(--border);margin:5px 6px}
.menu-contexto .mc-grupo{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);padding:6px 10px 3px}
.cliente-lote{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;margin-bottom:14px;text-decoration:none;color:var(--text)}
.cliente-lote:hover{border-color:var(--primary);background:var(--primary-soft)}
.cliente-lote div > span{display:block;font-size:11.5px;color:var(--text-faint)}
.cliente-lote > .ic{margin-left:auto;transform:rotate(180deg);color:var(--text-faint)}
.chip-parcela{display:inline-flex;align-items:center;gap:7px;font-weight:600;white-space:nowrap}
.chip-parcela::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--cp);flex-shrink:0}
.parcelas-tabela tbody tr:hover td{background:var(--surface-2)}
/* proposta aberta */
.pv-status{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:12px;font-size:12px;font-weight:600;color:var(--st);background:color-mix(in srgb,var(--st) 13%,transparent);white-space:nowrap}
.pv-status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--st)}
.pv-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.pv-kpi{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px;display:flex;gap:11px;align-items:center;min-width:0}
.pv-kpi .kpi-icone{width:38px;height:38px;border-radius:10px;grid-row:auto;display:flex;flex-shrink:0}
.pv-kpi .kpi-icone .ic{width:18px;height:18px}
.pv-kpi span{display:block;font-size:11.5px;color:var(--text-faint);font-weight:500}
.pv-kpi strong{display:block;font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-lado .dados{grid-template-columns:110px 1fr;margin:0}
.pv-decisao{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.pv-decisao .btn{height:38px}
.pv-decisao .btn-primario{grid-column:1 / -1}
.pv-acoes{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.pv-acoes .btn{flex:1 1 auto}
@media (max-width:760px){ .pv-kpis{grid-template-columns:1fr 1fr} }

/* ================= CELULAR: nada espremido, nada saindo da tela ================= */
@media (max-width:640px){
  /* topo: menu, título e foto na mesma linha; o título encolhe com "..." */
  .topo{gap:8px 10px}
  .topo-titulo{flex:1 1 0;min-width:0}
  .topo h1,.topo-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .usuario{padding-left:8px}
  .modal-fundo{padding:10px}
  /* títulos dos quadros: o texto do lado e os botões quebram linha */
  .painel-topo{flex-wrap:wrap;row-gap:8px}
  /* fila do plantão e listas: nome em cima, etiquetas e botões embaixo */
  .fila-item{flex-wrap:wrap;gap:8px 10px;padding:12px}
  .fila-item .lista-corpo{flex:1 1 calc(100% - 96px)}
  .fila-item > :not(.fila-pos):not(.avatar):not(.lista-corpo){margin-left:0}
  .lista-item{flex-wrap:wrap;row-gap:6px}
  .lista-item .lista-corpo{flex:1 1 55%}
  /* negociação (ficha do cliente), documentos da pasta: texto inteiro, botões na linha de baixo */
  .negocio-item{flex-wrap:wrap;row-gap:8px}
  .negocio-item .info{flex:1 1 100%}
  .negocio-item .titulo{white-space:normal}
  .negocio-item .acoes{justify-content:flex-start}
  .negocio-item.empilhado .info{flex:1 1 0}
  /* listas de sites e Páginas (Integrações) */
  .site-topo{flex-wrap:wrap}
  .site-topo > div{min-width:150px}
  .chave-card{flex-wrap:wrap}
  /* números do topo: ícone em cima, número embaixo */
  .kpi{grid-template-columns:1fr;padding:12px 13px}
  .kpi > :not(.kpi-icone){grid-column:1}
  .kpi-icone{grid-row:auto;width:34px;height:34px;border-radius:10px;margin-bottom:6px}
  .kpi-icone .ic{width:17px;height:17px}
  .kpi-valor{font-size:19px;overflow-wrap:anywhere}
  .pv-kpis{grid-template-columns:1fr 1fr!important}
  .pv-kpi{flex-direction:column;align-items:flex-start;gap:6px;padding:11px 12px}
  .pv-kpi strong{font-size:15px;white-space:normal;overflow-wrap:anywhere}
  .int-hero{padding:16px}
  /* tabelas e gráficos */
  .tabela td.num,.tabela td:first-child{white-space:nowrap}
  .grafico-valor{font-size:9px;white-space:normal;line-height:1.1;text-align:center}
  .filtros .input{min-width:0;flex:1 1 140px}
  .config-linha > div:first-child{flex:1;min-width:0}
}

/* ================= PÁGINAS DE CAPTURA ================= */
.pc-item{border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:10px;background:var(--surface)}
.pc-item.inativa{opacity:.7}
.pc-topo{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pc-capa{width:56px;height:56px;border-radius:12px;background:var(--pc,#8E1FC4) center/cover no-repeat;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}
.pc-capa .ic{width:22px;height:22px}
.pc-nums{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 10px}
.pc-acoes{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.pc-cores{display:flex;gap:8px;flex-wrap:wrap}
.pc-cores button{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:pointer}
.pc-cores button.ativa{border-color:var(--text);box-shadow:0 0 0 2px var(--surface) inset}
.pc-blocos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.pc-bloco{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:12px;padding:10px 12px;cursor:pointer;font-size:13px}
.pc-bloco input{margin-top:3px;accent-color:var(--primary)}
.pc-bloco b{display:block;font-weight:600}
.pc-bloco span{color:var(--text-faint);font-size:12px}
.pc-qr{display:flex;flex-direction:column;align-items:center;gap:12px;padding:6px 0}
.pc-qr #qrCaixa{background:#fff;padding:14px;border-radius:14px;border:1px solid var(--border)}
.pc-qr #qrCaixa img,.pc-qr #qrCaixa canvas{display:block;width:220px;height:220px}
.pc-barra{display:flex;align-items:flex-end;gap:3px;height:110px;padding:8px 0 0}
.pc-barra div{flex:1;min-width:3px;background:color-mix(in srgb,var(--primary) 25%,transparent);border-radius:4px 4px 0 0;position:relative}
.pc-barra div i{position:absolute;left:0;right:0;bottom:0;background:var(--primary);border-radius:4px 4px 0 0}
.pc-endereco{display:flex;align-items:center;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface)}
.pc-endereco span{padding:0 4px 0 10px;color:var(--text-faint);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.pc-endereco input{border:0!important;box-shadow:none!important;padding-left:2px;min-width:0;width:auto;flex:1 1 120px}
.pc-endereco span{flex:0 1 auto}
/* editor: fotos */
.pc-capa-edit{position:relative;border-radius:14px;overflow:hidden;min-height:150px;background:linear-gradient(135deg,#d946ef,#86198f) center/cover no-repeat;display:flex;align-items:flex-end}
.pc-capa-edit::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 20%,rgba(10,6,20,.75))}
.pc-capa-info{position:relative;color:#fff;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.pc-capa-info b{display:flex;align-items:center;gap:6px;font-size:14px}
.pc-capa-info b .ic{width:16px;height:16px}
.pc-capa-info > span{font-size:12px;opacity:.85}
.pc-galeria-edit{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.pc-foto{display:flex;flex-direction:column;gap:6px}
.pc-foto .input{height:32px;font-size:12.5px}
.pc-foto-img{position:relative;aspect-ratio:4/3;border-radius:12px;background:var(--surface-3) center/cover no-repeat;overflow:hidden}
.pc-foto-acoes{position:absolute;top:6px;right:6px;display:flex;gap:4px}
.pc-foto-acoes button{width:28px;height:28px;border-radius:8px;border:none;background:rgba(255,255,255,.92);color:#1b2030;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.pc-foto-acoes .ic{width:14px;height:14px}
.pc-foto-1{background:rgba(10,6,20,.66);color:#fff;font-size:10.5px;font-weight:600;padding:3px 8px;border-radius:10px;white-space:nowrap}
.pc-foto-papeis{position:absolute;left:6px;right:6px;bottom:6px;display:flex;flex-wrap:wrap;gap:4px;pointer-events:none}
.pc-fotos-guia{display:flex;gap:10px;align-items:flex-start;margin-top:8px;padding:10px 12px;border-radius:10px;background:var(--primary-soft);font-size:12.5px;line-height:1.5;color:var(--text)}
.pc-fotos-guia .ic{flex:none;width:16px;height:16px;margin-top:2px;color:var(--primary-text)}
.pc-fotos-guia .fraco{font-size:12px}
.pc-subindo{display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-faint);background:repeating-linear-gradient(45deg,var(--surface-2),var(--surface-2) 10px,var(--surface-3) 10px,var(--surface-3) 20px);animation:pcListras 1s linear infinite;background-size:28px 28px}
@keyframes pcListras{to{background-position:28px 0}}
.pc-foto-add{aspect-ratio:4/3;border:2px dashed var(--border);border-radius:12px;background:var(--surface-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;color:var(--primary-text,var(--primary));padding:10px;text-align:center;font:inherit}
.pc-foto-add:hover{border-color:var(--primary)}
.pc-foto-add b{font-size:13px}
.pc-foto-add span{font-size:11px;color:var(--text-faint)}
/* ================= IMÓVEIS ================= */
.im-filtros{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.im-filtros .input{width:auto;min-width:150px;flex:0 1 auto}
.im-quadro{display:flex;gap:14px;overflow-x:auto;padding-bottom:10px;align-items:flex-start}
.im-coluna{flex:0 0 300px;display:flex;flex-direction:column;gap:10px;min-width:0}
.im-resumo{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px 14px;border-top:3px solid var(--c)}
.im-resumo-topo{display:flex;align-items:center;gap:7px;font-weight:600;font-size:13px}
.im-resumo-topo .ic{width:15px;height:15px;color:var(--c)}
.im-resumo-num{display:flex;justify-content:space-between;align-items:flex-end;margin-top:6px;gap:8px}
.im-resumo-num strong{font-size:24px;line-height:1;font-variant-numeric:tabular-nums}
.im-resumo-num span{font-size:11px;color:var(--text-faint)}
.im-vg{text-align:right;font-size:12px;font-weight:600;color:var(--c);line-height:1.5;font-variant-numeric:tabular-nums}
.im-vg small{font-weight:500;color:var(--text-faint);font-size:10px;margin-left:3px}
.im-lista{display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 290px);overflow-y:auto;padding-right:2px}
.im-card{flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;cursor:pointer;box-shadow:var(--sombra);transition:transform .15s,box-shadow .15s}
.im-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(30,10,60,.12)}
.im-capa{aspect-ratio:16/10;background:var(--surface-3) center/cover no-repeat;position:relative;display:flex;align-items:center;justify-content:center;color:var(--text-faint)}
.im-capa .ic{width:34px;height:34px}
.im-capa .im-nfotos{position:absolute;right:8px;bottom:8px;background:rgba(10,6,20,.6);color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;display:flex;gap:4px;align-items:center}
.im-capa .im-nfotos .ic{width:12px;height:12px}
.im-capa .im-excl{position:absolute;left:8px;top:8px;background:#f59e0b;color:#fff;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:10px}
.im-corpo{padding:10px 12px 12px}
.im-titulo{font-weight:700;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.im-titulo b{color:var(--primary-text,var(--primary))}
.im-preco{font-size:12.5px;margin-top:3px}
.im-preco b{font-variant-numeric:tabular-nums}
.im-linha{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-dim);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.im-linha .ic{width:13px;height:13px;flex-shrink:0}
.im-specs{display:flex;gap:12px;flex-wrap:wrap}
.im-rodape{display:flex;align-items:center;gap:8px;margin-top:9px;padding-top:9px;border-top:1px solid var(--border)}
.im-rodape .im-capt{margin-left:auto;text-align:right;font-size:12px;line-height:1.25;min-width:0}
.im-rodape .im-capt small{display:block;color:var(--text-faint);font-size:10.5px}
.im-datas{display:flex;justify-content:space-between;font-size:10.5px;color:var(--text-faint);margin-top:8px}
.im-vazio{border:2px dashed var(--border);border-radius:14px;padding:18px 12px;text-align:center;color:var(--text-faint);font-size:12.5px}
.im-capa .im-portal{position:absolute;right:8px;top:8px;background:linear-gradient(135deg,#6e0ad6,#f28000);color:#fff;font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;letter-spacing:.02em}
.im-portal-linha{display:flex;align-items:center;gap:10px}
.im-portal-linha b{font-size:13.5px}
.im-pend{margin-top:10px;background:var(--c-vermelho-s);color:var(--c-vermelho);border-radius:10px;padding:8px 10px;font-size:12.5px;line-height:1.5}
.im-pend .ic{width:13px;height:13px;vertical-align:-2px}
/* ficha */
.im-galeria{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin-bottom:16px}
.im-galeria .principal{aspect-ratio:16/10;border-radius:14px;background:var(--surface-3) center/cover no-repeat;cursor:zoom-in;position:relative}
.im-galeria .lado{display:grid;grid-template-rows:1fr 1fr;gap:8px}
.im-galeria .lado div{border-radius:12px;background:var(--surface-3) center/cover no-repeat;cursor:zoom-in;position:relative}
.im-galeria .mais{position:absolute;inset:0;background:rgba(10,6,20,.55);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:15px}
.im-chips{display:flex;gap:6px;flex-wrap:wrap}
.im-chip{display:inline-flex;align-items:center;gap:5px;background:var(--primary-soft);color:var(--primary-text,var(--primary));border-radius:20px;padding:4px 11px;font-size:12px;font-weight:600}
.im-desc{white-space:pre-wrap;line-height:1.6;color:var(--text-dim);font-size:13.5px}
.im-caixa{border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:12px}
.go-dist{border:1px solid var(--border);border-radius:14px;padding:6px 14px 12px;margin-bottom:14px}
.go-dist-linha{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--border)}
.go-dist-rot b{display:block;font-size:14px}
.go-dist-rot span{font-size:12.5px;color:var(--text-dim)}
.go-dist-rodape{display:flex;gap:12px;align-items:center;justify-content:space-between;padding-top:10px}
@media (max-width:640px){.go-dist-linha{grid-template-columns:1fr}.go-dist-rodape{flex-direction:column;align-items:stretch}}
.wa-status{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;margin-bottom:12px;background:var(--surface-2,rgba(100,116,139,.1));font-weight:500}
.wa-status.ligado{background:rgba(34,197,94,.13);color:#15803d}
.wa-status .ic{width:16px;height:16px}
.wa-alerta{display:flex;gap:8px;padding:10px 12px;border-radius:10px;margin-bottom:12px;background:rgba(245,158,11,.13);font-size:13px}
.wa-alerta .ic{width:16px;height:16px;flex-shrink:0;color:#d97706;margin-top:2px}
.wa-passos{margin:0;padding-left:20px;font-size:13px;line-height:1.55}
.wa-passos li{margin-bottom:4px}
.linha-2.wa-linha-3{grid-template-columns:1fr 1fr 110px}
.wa-modelo{border:1px dashed var(--border-strong);border-radius:10px;padding:10px;margin-bottom:10px}
.wa-modelo-topo{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.wa-modelo pre{white-space:pre-wrap;font-family:inherit;font-size:12.5px;margin:0 0 6px;background:var(--surface-2,rgba(100,116,139,.08));padding:8px 10px;border-radius:8px}
.wa-diag{font-size:12.5px;margin-bottom:3px;overflow-wrap:anywhere}
@media (max-width:640px){.linha-2.wa-linha-3{grid-template-columns:1fr}}
.im-caixa h3{margin:0 0 10px;font-size:13.5px;display:flex;align-items:center;gap:7px}
.im-caixa h3 .ic{width:15px;height:15px;color:var(--primary)}
.im-status{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:12px;font-size:12px;font-weight:600;color:var(--c);background:color-mix(in srgb,var(--c) 13%,transparent)}
.im-status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c)}
.im-hist{display:flex;flex-direction:column;gap:8px;font-size:12.5px}
.im-hist div{display:flex;gap:8px}
.im-hist span{color:var(--text-faint);white-space:nowrap;font-variant-numeric:tabular-nums}
.lightbox-crm{position:fixed;inset:0;background:rgba(8,4,16,.92);z-index:300;display:flex;align-items:center;justify-content:center;padding:20px}
.lightbox-crm img{max-width:100%;max-height:86vh;border-radius:10px}
.lightbox-crm button{position:absolute;width:46px;height:46px;border-radius:50%;border:none;background:rgba(255,255,255,.15);color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.lightbox-crm .fechar{top:16px;right:16px}
.lightbox-crm .ant{left:16px;top:50%;transform:translateY(-50%)}
.lightbox-crm .prox{right:16px;top:50%;transform:translateY(-50%)}
.lightbox-crm .cont{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#fff;font-size:13px}
/* editor */
.im-abas{display:flex;gap:4px;overflow-x:auto;padding:10px 18px 0;border-bottom:1px solid var(--border);scrollbar-width:none}
.im-abas button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 13px;border:none;background:transparent;border-radius:10px 10px 0 0;color:var(--text-dim);font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent}
.im-abas button .ic{width:15px;height:15px}
.im-abas button.ativa{color:var(--primary-text,var(--primary));border-bottom-color:var(--primary);background:var(--primary-soft)}
.im-aba{display:none}
.im-aba.ativa{display:block}
.im-grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 12px}
.im-grade .dupla{grid-column:span 2}
.im-grade .toda{grid-column:1 / -1}
.im-grade .tres{grid-column:span 3}
.im-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.im-check{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;padding:8px 10px;font-size:13px;cursor:pointer}
.im-check input{accent-color:var(--primary)}
.im-capt-linha{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}
.im-capt-linha .input{width:90px;height:32px}
.im-prop{border:1px solid var(--border);border-radius:12px;padding:12px;margin-bottom:10px;position:relative}
.im-prop .btn-icone{position:absolute;top:8px;right:8px}
.im-opcoes{display:flex;flex-direction:row;gap:10px 22px;flex-wrap:wrap;align-items:center;margin:2px 0 14px}
.im-opcoes .im-check{border:none;padding:0;font-weight:500;font-size:13.5px;color:var(--text)}
@media (max-width:760px){
  .im-grade{grid-template-columns:1fr 1fr}
  .im-grade .dupla,.im-grade .toda,.im-grade .tres{grid-column:1 / -1}
  .im-rodape-ed{flex-wrap:wrap}
  .im-rodape-ed .btn{flex:1 1 auto}
  .im-rodape-ed .btn-primario{flex-basis:100%;order:-1}
  .im-galeria{grid-template-columns:1fr}
  .im-galeria .lado{grid-template-rows:none;grid-template-columns:1fr 1fr;height:90px}
  .im-coluna{flex-basis:270px}
}
/* ================= FILAS E ROLETA COM ACEITE ================= */
.plantao-barra{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:10px 14px;margin-bottom:14px}
.plantao-barra .dim{display:flex;align-items:center;gap:6px}
.plantao-barra .dim .ic{width:15px;height:15px}
.filas-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px;align-items:start}
.fila-col{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--sombra);display:flex;flex-direction:column;overflow:hidden}
.fila-col-topo{padding:14px 16px 6px}
.fila-col-tags{display:flex;justify-content:space-between;gap:6px;margin-bottom:8px}
.tag-fila{font-size:11px;font-weight:600;padding:3px 9px;border-radius:8px;background:var(--surface-3);color:var(--text-dim)}
.tag-fila.verde{background:var(--c-verde-s);color:var(--c-verde)}
.fila-col h3{margin:0;font-size:15.5px;display:flex;align-items:center;gap:8px}
.fila-col h3 .luz{width:9px;height:9px;border-radius:50%;background:var(--c-cinza);flex-shrink:0}
.fila-col h3 .luz.on{background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.18)}
.fila-col-info{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--text-dim);margin-top:5px;flex-wrap:wrap}
.fila-col-info .ic{width:13px;height:13px}
.fila-col-rot{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin:12px 0 6px}
.fila-col-lista{display:flex;flex-direction:column;gap:8px;padding:0 12px 12px}
.fila-col-rodape{border-top:1px solid var(--border);padding:8px 12px;display:flex;justify-content:flex-end}
.atendente{display:flex;align-items:center;gap:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:9px 10px}
.atendente.proximo{border-color:var(--primary);background:var(--primary-soft)}
.atendente.apagado{opacity:.6}
.at-pos{font-size:12px;font-weight:700;color:var(--text-faint);min-width:24px}
.at-corpo{flex:1;min-width:0}
.at-nome{font-weight:600;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.at-sub{font-size:11.5px;color:var(--text-faint);margin-top:2px}
.at-lado{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.at-acoes{display:flex;gap:2px}
.at-acoes .btn-icone{width:28px;height:28px}
.at-status{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:8px;white-space:nowrap}
.at-status .ic{width:12px;height:12px}
.at-status.roxo{background:var(--c-roxo-s);color:var(--c-roxo)} .at-status.laranja{background:var(--c-laranja-s);color:var(--c-laranja)} .at-status.cinza{background:var(--c-cinza-s);color:var(--c-cinza)}
.at-status.pulsar{animation:atPulso 1.4s ease-in-out infinite}
@keyframes atPulso{50%{opacity:.55}}
.membros-lista{display:flex;flex-direction:column;gap:6px}
.membro{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;padding:6px 8px;font-size:13px}
.membro .btn-icone{width:28px;height:28px}
/* distribuição de hoje */
.dist-topo{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.dist-filtro{width:auto;min-width:200px;height:36px;border-radius:20px}
.dist-data{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#a855f7,#7e22ce);color:#fff;font-weight:600;font-size:13px;padding:8px 16px;border-radius:20px;box-shadow:0 6px 16px rgba(126,34,206,.25)}
.dist-data .ic{width:15px;height:15px}
.dist-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px;margin:0 auto 22px;max-width:1100px}
.dist-kpi{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px;text-align:center;box-shadow:var(--sombra);display:flex;flex-direction:column;gap:2px}
.dist-kpi span{font-size:12px;color:var(--text-dim)}
.dist-kpi strong{font-size:24px;line-height:1.2;font-variant-numeric:tabular-nums}
.dist-kpi small{font-size:10.5px;color:var(--text-faint)}
.linha-tempo{position:relative;max-width:1100px;margin:0 auto;padding:6px 0}
.linha-tempo::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--border);transform:translateX(-1px)}
.lt-item{position:relative;width:50%;padding:0 26px 18px}
.lt-item.esq{margin-right:auto}
.lt-item.dir{margin-left:auto}
.lt-ponto{position:absolute;top:18px;width:12px;height:12px;border-radius:50%;background:var(--c);box-shadow:0 0 0 4px var(--bg)}
.lt-item.esq .lt-ponto{right:-6px}
.lt-item.dir .lt-ponto{left:-6px}
.lt-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--c);border-radius:14px;padding:12px 14px;box-shadow:var(--sombra)}
.lt-topo{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}
.lt-topo .ic{width:12px;height:12px;vertical-align:-2px}
.lt-status{display:inline-flex;align-items:center;gap:5px;background:var(--c);color:#fff;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:3px 10px;border-radius:10px}
.lt-status .ic{width:12px;height:12px}
.lt-lead{font-weight:700;font-size:14px;margin:9px 0 3px}
.lt-meta{font-size:12px;color:var(--text-dim);line-height:1.5}
.lt-ciclo{border:1px solid var(--border);border-radius:10px;padding:8px 10px;margin-top:9px;background:var(--surface-2)}
.lt-ciclo-topo{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-dim);margin-bottom:5px}
.lt-ciclo-topo .ic{width:12px;height:12px}
.lt-resp{margin-left:auto;background:var(--c-verde-s);color:var(--c-verde);border-radius:8px;padding:2px 8px;font-size:11px}
.lt-passo{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-faint);padding:2px 0}
.lt-passo span{width:8px;height:8px;border-radius:50%;background:var(--border)}
.lt-passo.feito{color:var(--text)}
.lt-passo.feito span{background:var(--p)}
.lt-passo b{margin-left:auto;font-weight:500;font-variant-numeric:tabular-nums}
.lt-corretor{display:flex;align-items:center;gap:8px;margin-top:9px;padding-top:9px;border-top:1px solid var(--border);font-size:12.5px}
/* aviso de lead pra aceitar */
#ofertasLead{position:fixed;right:18px;bottom:18px;z-index:250;display:flex;flex-direction:column;gap:10px;width:min(360px,calc(100vw - 32px))}
.oferta-card{background:var(--surface);border:2px solid var(--primary);border-radius:16px;box-shadow:0 18px 50px rgba(60,10,110,.32);padding:14px;animation:ofertaEntra .35s cubic-bezier(.2,.8,.2,1)}
@keyframes ofertaEntra{from{transform:translateY(20px) scale(.96);opacity:0}}
.oferta-topo{display:flex;align-items:center;gap:10px}
.oferta-topo b{display:block;font-size:14.5px}
.oferta-topo div span{font-size:12px;color:var(--text-dim)}
.oferta-sino{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#a855f7,#7e22ce);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;animation:atPulso 1.2s infinite}
.oferta-sino .ic{width:19px;height:19px}
.oferta-tempo{margin-left:auto;font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--primary-text,var(--primary))}
.oferta-tempo.urgente{color:var(--c-vermelho)}
.oferta-barra{height:5px;border-radius:3px;background:var(--surface-3);margin:10px 0;overflow:hidden}
.oferta-barra i{display:block;height:100%;background:linear-gradient(90deg,#a855f7,#7e22ce);transition:width 1s linear}
.oferta-lead{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}
.oferta-lead b{font-size:15px}
.oferta-lead span{font-size:12.5px;color:var(--text-dim)}
.oferta-lead small{font-size:12px;color:var(--text-faint)}
.oferta-botoes{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}
.oferta-botoes .btn{height:42px;justify-content:center}
.oferta-notif{display:flex;align-items:center;gap:6px;width:100%;margin-top:10px;border:1px dashed var(--c-laranja);background:var(--c-laranja-s);color:var(--c-laranja);border-radius:10px;padding:7px 10px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;text-align:left}
.oferta-notif .ic{width:14px;height:14px;flex-shrink:0}
@media (max-width:900px){
  .dist-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .linha-tempo::before{left:8px}
  .lt-item,.lt-item.esq,.lt-item.dir{width:100%;padding:0 0 14px 26px}
  .lt-item.esq .lt-ponto,.lt-item.dir .lt-ponto{left:2px;right:auto}
}
@media (max-width:640px){
  .filas-grade{grid-template-columns:1fr}
  #ofertasLead{right:16px;bottom:16px}
  .atendente{flex-wrap:wrap}
  .at-corpo{flex:1 1 0;min-width:0}
  .at-lado{flex-direction:row;align-items:center;justify-content:space-between;width:100%;padding-left:34px}
}
#avisoVersao{position:fixed;left:50%;top:12px;transform:translateX(-50%);z-index:400;display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#8E1FC4,#6c159c);color:#fff;padding:10px 12px 10px 16px;border-radius:14px;box-shadow:0 12px 34px rgba(60,10,110,.35);font-size:13.5px;max-width:calc(100vw - 32px);flex-wrap:wrap}
#avisoVersao .ic{width:18px;height:18px;flex-shrink:0}
#avisoVersao .btn{background:#fff;color:#6c159c;border:none;font-weight:700}
/* olhinho da senha */
.senha-caixa{position:relative;display:block;min-width:0}
.copiar-linha .senha-caixa{flex:1}
.senha-caixa .input{padding-right:42px;width:100%}
.olho-senha{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;background:transparent;color:var(--text-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px}
.olho-senha:hover{color:var(--text);background:var(--surface-3)}
.olho-senha .ic{width:18px;height:18px}
.com-juros{font-size:11px;color:var(--c-azul);font-weight:500;line-height:1.35;margin-top:2px;white-space:normal}
/* produto nas integrações */
.int-produto{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}
.int-produto label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text-dim)}
.int-produto label .ic{width:14px;height:14px}
.int-produto .input{width:auto;min-width:220px;flex:1;max-width:340px;height:34px}
.codigos-produtos{display:flex;flex-direction:column;gap:8px}
.codigo-linha{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.codigo-nome{flex:1 1 180px;font-weight:600;font-size:13px;min-width:0;display:flex;flex-direction:column}
.codigo-nome small{font-weight:400;color:var(--text-faint);font-size:11.5px}
.codigo-linha .input{width:auto;flex:0 1 220px;height:34px}
.codigo-linha input.input{font-family:ui-monospace,Consolas,monospace;letter-spacing:.04em}
/* stands e produto do lead */
.stand-titulo{display:flex;gap:10px;align-items:center;min-width:0}
.stand-ic{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.stand-ic .ic{width:17px;height:17px}
.stand-prods{display:flex;gap:5px;flex-wrap:wrap;margin-top:4px}
.stand-painel .painel-topo{align-items:flex-start}
.card-produto{display:flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;color:var(--primary-text,var(--primary));margin:2px 0 1px;min-width:0}
.card-produto .ic{width:12px;height:12px;flex-shrink:0}
/* editor: cartão do WhatsApp */
.pc-zap{background:#efeae2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Ccircle cx='4' cy='4' r='1.2' fill='%23d9d2c5'/%3E%3C/svg%3E");border-radius:12px;padding:14px;display:flex;flex-direction:column;align-items:flex-end}
:root[data-tema="escuro"] .pc-zap{background-color:#0b141a}
.pc-zap-bolha{background:#d9fdd3;border-radius:10px 2px 10px 10px;padding:4px 4px 6px;max-width:340px;width:100%;box-shadow:0 1px 1px rgba(0,0,0,.12);color:#111b21}
:root[data-tema="escuro"] .pc-zap-bolha{background:#005c4b;color:#e9edef}
.pc-zap-cartao{background:rgba(0,0,0,.05);border-radius:7px;overflow:hidden}
.pc-zap-img{aspect-ratio:1200/630;background:#ccc center/cover no-repeat}
.pc-zap-txt{padding:7px 9px 8px;display:flex;flex-direction:column;gap:2px}
.pc-zap-txt b{font-size:13.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pc-zap-txt span{font-size:12.5px;opacity:.75;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pc-zap-txt small{font-size:11.5px;opacity:.55}
.pc-zap-link{font-size:13px;color:#027eb5;padding:6px 6px 0;overflow-wrap:anywhere}
:root[data-tema="escuro"] .pc-zap-link{color:#53bdeb}
.pc-zap-hora{text-align:right;font-size:11px;opacity:.6;padding:2px 6px 0}
.pc-zap-hora span{color:#53bdeb}
/* editor: prévia ao lado */
.pc-previa-col,.pc-btn-previa{display:none}
@media (min-width:1100px){ .pc-btn-previa{display:inline-flex} }
.modal.pc-com-previa{max-width:1640px;height:88vh;display:flex;flex-direction:column}
.modal.pc-com-previa .pc-grade{flex:1;min-height:0;display:grid;grid-template-columns:minmax(440px,520px) 1fr}
.modal.pc-com-previa .pc-grade > .modal-corpo{overflow-y:auto}
.modal.pc-com-previa .pc-previa-col{display:flex;flex-direction:column;min-width:0;border-left:1px solid var(--border);background:var(--surface-2)}
.pc-previa-barra{display:flex;align-items:center;gap:8px;padding:9px 12px 9px 16px;border-bottom:1px solid var(--border);font-size:13px}
.pc-previa-barra .pc-seg{margin-left:auto}
.pc-ao-vivo{width:8px;height:8px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 0 rgba(22,163,74,.5);animation:pcPulso 2s infinite}
@keyframes pcPulso{70%{box-shadow:0 0 0 8px rgba(22,163,74,0)}100%{box-shadow:0 0 0 0 rgba(22,163,74,0)}}
.pc-seg{display:inline-flex;background:var(--surface-3);border-radius:10px;padding:3px;gap:2px}
.pc-seg button{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}
.pc-seg button .ic{width:14px;height:14px}
.pc-seg button.ativo{background:var(--surface);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.pc-previa-area{flex:1;min-height:0;overflow:hidden;display:flex;justify-content:center;align-items:flex-start;padding:16px}
.pc-moldura{position:relative;border-radius:10px;overflow:hidden;box-shadow:0 10px 40px rgba(30,10,60,.18);background:#fff;flex-shrink:0}
.pc-moldura.celular{border-radius:34px;box-shadow:0 0 0 10px #1b1d24,0 18px 50px rgba(30,10,60,.3);margin-top:10px}
.pc-moldura iframe{position:absolute;left:0;top:0;border:0;transform-origin:0 0;background:#fff}
@media (max-width:640px){
  .pc-topo > div:nth-child(2){flex:1 1 calc(100% - 70px)}
  .pc-acoes .btn{flex:1 1 auto}
  .pc-rodape{flex-wrap:wrap}
  .pc-rodape .btn{flex:1 1 auto}
  .pc-rodape .btn-primario{flex-basis:100%;order:-1}
}
/* Rolagem do Ângulo CRM: barra fina e arredondada, sem setinhas, que só aparece ao passar o mouse ou enquanto rola
   (no celular e no tablet o próprio aparelho mostra só enquanto arrasta o dedo) */
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-button{display:none;width:0;height:0}
::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}
::-webkit-scrollbar-thumb{background-color:transparent;border-radius:99px;border:3px solid transparent;background-clip:padding-box}
:hover::-webkit-scrollbar-thumb,.rolando::-webkit-scrollbar-thumb{background-color:rgba(128,128,145,.45)}
::-webkit-scrollbar-thumb:hover{background-color:rgba(128,128,145,.75)}
::-webkit-scrollbar-thumb:active{background-color:rgba(128,128,145,.9)}
@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:transparent transparent}:hover,.rolando{scrollbar-color:rgba(128,128,145,.5) transparent}}
/* Metas de VGV e prazo de atendimento */
.kpi-var{font-size:11.5px;font-weight:600;margin-left:4px}
.kpi-var.sobe{color:var(--success)}.kpi-var.desce{color:var(--danger)}
.meta-barra{height:6px;border-radius:99px;background:var(--surface-3);overflow:hidden;margin:8px 0 4px}
.meta-barra span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#a855f7,var(--primary))}
.meta-linha{display:flex;align-items:center;gap:8px}.meta-linha .meta-barra{flex:1;margin:0}
.metas-grade{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:12px}
.meta-campo{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:8px;align-items:center;padding:5px 0;font-size:13.5px}
.meta-campo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sla-badge{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:99px;margin-top:6px;white-space:nowrap}
.sla-badge .ic{width:13px;height:13px}
.sla-badge.prazo{background:color-mix(in srgb,var(--warning) 16%,transparent);color:color-mix(in srgb,var(--warning) 70%,var(--text))}
.sla-badge.atrasado{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}
.pv-status + .sla-badge,.badge + .sla-badge{margin-top:0}
.painel-sla{border-color:color-mix(in srgb,var(--danger) 35%,var(--border))}
.painel-sla h2 .ic{color:var(--danger);width:17px;height:17px;vertical-align:-3px}
@media (max-width:640px){.metas-grade{grid-template-columns:1fr}.meta-campo{grid-template-columns:minmax(0,1fr) 120px}}
/* Simulação da proposta: entrada, parcelamento, pró-soluto, CET e correção estimada */
.sim-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:12px 0 4px}
.sim-item{background:var(--surface-2,var(--surface-3));border:1px solid var(--border);border-radius:10px;padding:9px 11px;min-width:0}
.sim-item span{display:block;font-size:11.5px;color:var(--text-dim)}
.sim-item strong{display:block;font-size:14.5px;font-variant-numeric:tabular-nums;margin-top:2px}
.sim-item small{display:block;font-size:11.5px;color:var(--text-dim);margin-top:2px}
.sim-item.destaque{background:var(--primary-soft);border-color:transparent}
.sim-item.destaque strong{color:var(--primary-text);font-size:16px}
.sim-correcao{grid-column:1/-1}
.sim-taxa{width:64px;height:24px;padding:0 6px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font:inherit;font-size:12px}
.sim-nota{font-size:11.5px;color:var(--text-dim);margin:2px 0 8px}
.pe-lado .sim-grade{grid-template-columns:1fr}
/* Contas a pagar */
.contas-mes{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:3px 6px}
.contas-mes strong{min-width:130px;text-align:center;font-size:14px}
.contas-grade{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.contas-lado{display:grid;gap:16px}
.tabela-contas .badge .ic{width:12px;height:12px;vertical-align:-2px}
.tabela-contas tr.conta-paga td{color:var(--text-dim)}
.tabela-contas tr.conta-paga a{color:inherit}
.conta-anexo{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;font-size:13.5px}
.conta-anexo a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:1400px){.contas-grade{grid-template-columns:1fr}.contas-lado{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.contas-lado{grid-template-columns:1fr}.contas-mes{width:100%;justify-content:space-between}}
/* Aviso "Salvo com sucesso!" (com confete) */
.toast-salvo{position:relative;overflow:hidden;display:flex;align-items:center;gap:12px;background:var(--surface);color:var(--text);border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));
  border-left:4px solid var(--primary);border-radius:12px;padding:12px 34px 14px 12px;min-width:260px;box-shadow:0 12px 32px rgba(76,29,149,.22);animation:tsEntra .42s cubic-bezier(.2,1.4,.4,1)}
.toast-salvo.saindo{animation:tsSai .3s ease forwards}
.ts-icone{flex:none;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#a855f7,#7c3aed);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(124,58,237,.4);animation:tsPula .5s .1s cubic-bezier(.2,1.6,.4,1) both}
.ts-icone svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;animation:tsRisca .35s .3s ease forwards}
.ts-texto{display:flex;flex-direction:column;gap:2px;min-width:0}
.ts-texto strong{font-size:14px;color:var(--primary-text)}
.ts-texto span{font-size:12.5px;color:var(--text-dim)}
.ts-fechar{position:absolute;top:6px;right:8px;border:0;background:none;color:var(--text-faint);font-size:18px;line-height:1;cursor:pointer;padding:2px 4px}
.ts-fechar:hover{color:var(--text)}
.ts-tempo{position:absolute;left:0;bottom:0;height:3px;width:100%;background:linear-gradient(90deg,#a855f7,var(--primary));transform-origin:left;animation:tsTempo 4.2s linear forwards}
.confete{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:199}
@keyframes tsEntra{from{opacity:0;transform:translateY(16px) scale(.92)}to{opacity:1;transform:none}}
@keyframes tsSai{to{opacity:0;transform:translateX(30px)}}
@keyframes tsPula{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes tsRisca{to{stroke-dashoffset:0}}
@keyframes tsTempo{to{transform:scaleX(0)}}
@media (prefers-reduced-motion:reduce){.toast-salvo,.ts-icone,.ts-icone svg,.ts-tempo{animation:none;stroke-dashoffset:0}}
/* Tipo de empresa e produto vitrine */
.tipo-emp-grade{display:grid;gap:10px}
.tipo-emp{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1.5px solid var(--border);border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s}
.tipo-emp:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}
.tipo-emp.ativo{border-color:var(--primary);background:var(--primary-soft)}
.tipo-emp input{margin-top:12px;accent-color:var(--primary)}
.tipo-emp .int-icone{flex:none;width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;color:#fff}
.tipo-emp .int-icone .ic{width:20px;height:20px}
.tipo-emp b{display:block;font-size:14.5px;margin-bottom:2px}
.tipo-emp div span{font-size:13px;color:var(--text-dim);line-height:1.45}
.produto-vitrine{display:flex;flex-direction:column;gap:4px}
.produto-vitrine span{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.produto-vitrine span.fraco{white-space:normal;display:block}
.produto-vitrine .ic{width:14px;height:14px;flex:none;color:var(--text-faint)}
/* Dashboard: escolha do visual (Clássico / Analítico) */
.seg-painel{display:inline-flex;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:3px;gap:2px}
.seg-painel button{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--text-dim);font:inherit;font-size:13px;font-weight:600;padding:6px 12px;border-radius:7px;cursor:pointer}
.seg-painel button .ic{width:15px;height:15px}
.seg-painel button.ativo{background:var(--primary);color:#fff;box-shadow:0 2px 8px rgba(124,58,237,.3)}
.seg-painel button:not(.ativo):hover{color:var(--text);background:var(--primary-soft)}

/* Dashboard analítico (sempre escuro, nas cores da marca) */
.painel-analitico{--pa-fundo:#141726;--pa-card:#1b1f33;--pa-borda:rgba(255,255,255,.06);--pa-texto:#eef0fb;--pa-dim:#9aa1c2;
  background:radial-gradient(1200px 500px at 0% 0%,rgba(168,85,247,.16),transparent 60%),radial-gradient(900px 500px at 100% 100%,rgba(34,211,238,.10),transparent 60%),var(--pa-fundo);
  color:var(--pa-texto);border-radius:22px;padding:22px;box-shadow:0 20px 50px rgba(15,10,40,.25)}
.pa-grade{display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(0,.4fr);align-items:start}
.pa-esq{display:grid;gap:18px;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-areas:"k1 k1 k2 k2 mi mi" "li li li li li li" "or or or re re re";min-width:0}
.pa-dir{display:flex;flex-direction:column;gap:18px;min-width:0}
.pa-card{background:var(--pa-card);border:1px solid var(--pa-borda);border-radius:16px;padding:18px 20px;min-width:0;position:relative}
.pa-card h3{margin:0 0 12px;font-size:14.5px;font-weight:700;color:var(--pa-texto)}
.pa-card-topo{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.pa-card-topo h3{margin:0}
.pa-legenda{display:flex;gap:16px;font-size:12px;color:var(--pa-dim)}
.pa-legenda span{display:flex;align-items:center;gap:7px}
.pa-l-cheia{width:20px;height:3px;border-radius:2px;background:#38bdf8}
.pa-l-traco{width:20px;height:0;border-top:3px dotted #c084fc}
.pa-kpi{border-radius:16px;padding:18px 20px;color:#fff;position:relative;overflow:hidden;min-width:0;display:flex;flex-direction:column;gap:6px;min-height:132px}
.pa-kpi::after{content:"";position:absolute;right:-30px;bottom:-40px;width:130px;height:130px;border-radius:50%;background:rgba(255,255,255,.12)}
.pa-kpi::before{content:"";position:absolute;right:40px;top:-50px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.08)}
.pa-kpi-roxo{background:linear-gradient(135deg,#e879f9,#a855f7 55%,#7c3aed);box-shadow:0 10px 26px rgba(168,85,247,.35)}
.pa-kpi-ciano{background:linear-gradient(135deg,#2dd4bf,#22d3ee 45%,#3b82f6);box-shadow:0 10px 26px rgba(34,211,238,.3)}
.pa-kpi-rotulo{font-size:13.5px;font-weight:500;opacity:.95;position:relative;z-index:1}
.pa-kpi-valor{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;position:relative;z-index:1}
.pa-kpi-valor .pa-grande{font-size:38px;font-weight:800;line-height:1.05;letter-spacing:-.5px}
.pa-kpi-valor small{font-size:15px;font-weight:600;opacity:.85;margin-right:4px}
.pa-kpi-sub{font-size:12.5px;opacity:.92;position:relative;z-index:1}
.pa-kpi-barra{height:5px;border-radius:9px;background:rgba(255,255,255,.3);overflow:hidden;position:relative;z-index:1}
.pa-kpi-barra span{display:block;height:100%;background:#fff;border-radius:9px}
.pa-minis{display:grid;gap:12px;min-width:0}
.pa-mini{background:var(--pa-card);border:1px solid var(--pa-borda);border-radius:16px;padding:12px 14px;display:flex;align-items:center;gap:12px;min-width:0}
.pa-mini-ic{flex:none;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}
.pa-mini-ic .ic{width:18px;height:18px}
.pa-mini-nome{flex:1;min-width:0;font-size:13.5px;color:var(--pa-dim);display:flex;flex-direction:column}
.pa-mini-nome b{font-size:20px;color:var(--pa-texto);line-height:1.2}
.pa-var{font-size:12px;font-weight:700;padding:3px 9px;border-radius:7px;white-space:nowrap}
.pa-var.sobe{background:rgba(45,212,191,.16);color:#5eead4}
.pa-var.desce{background:rgba(244,114,182,.16);color:#f9a8d4}
.pa-svg{display:block;width:100%;height:auto;overflow:visible}
.painel-analitico .pa-svg text{fill:var(--pa-dim);font-size:11px;font-family:inherit}
.painel-analitico .pa-svg g.pa-eixos{display:inline}
.painel-analitico .pa-svg g.pa-eixos line{stroke:rgba(255,255,255,.07)}
.painel-analitico .pa-svg text.pa-balao{fill:#fff;font-size:12px;font-weight:700}
.pa-area{position:relative;height:170px;margin:0 -4px 14px}
.pa-area .pa-svg{height:170px}
.pa-pico{position:absolute;transform:translate(-50%,-125%);background:linear-gradient(135deg,#22d3ee,#3b82f6);color:#fff;border-radius:8px;padding:4px 10px;font-size:11px;text-align:center;white-space:nowrap;box-shadow:0 6px 16px rgba(34,211,238,.3);pointer-events:none}
.pa-pico span{display:block;opacity:.85;font-size:10px}
.pa-pico b{font-size:12.5px}
.pa-botao{width:100%;display:flex;justify-content:space-between;align-items:center;background:#262b45;border:0;border-radius:10px;color:var(--pa-texto);font:inherit;font-size:13px;padding:11px 14px;cursor:pointer}
.pa-botao:hover{background:#2f3555}
.pa-botao span{color:#38bdf8;letter-spacing:1px;font-weight:800}
.pa-barras{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;height:300px;align-items:stretch;margin-top:8px}
.pa-barra-col{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;font-size:11.5px;color:var(--pa-dim)}
.pa-barra-num{font-size:11px;color:var(--pa-texto);height:14px}
.pa-barra-trilho{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;border-left:1px solid rgba(255,255,255,.05);background:repeating-linear-gradient(to top,rgba(255,255,255,.05) 0 1px,transparent 1px 25%)}
.pa-barra{width:min(26px,70%);height:var(--h);min-height:2px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#22d3ee,#7c3aed)}
.pa-nota{display:block;margin-top:10px;font-size:11.5px;color:var(--pa-dim);text-align:right}
.pa-rosca-linha{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.pa-rosca{width:190px;height:190px;flex:none}
.pa-rosca text.pa-pct{fill:#0b1020;font-size:10.5px;font-weight:800}
.pa-rosca text.pa-centro-rot{fill:var(--pa-dim);font-size:12px}
.pa-rosca text.pa-centro-num{fill:var(--pa-texto);font-size:20px;font-weight:800}
.pa-legenda-lista{list-style:none;margin:0;padding:0;display:grid;gap:12px;flex:1;min-width:150px}
.pa-legenda-lista li{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--pa-texto)}
.pa-legenda-lista li i{width:16px;height:16px;border-radius:50%;border:3.5px solid;flex:none}
.pa-legenda-lista li span{display:flex;flex-direction:column}
.pa-legenda-lista li small{font-size:10.5px;color:var(--pa-dim)}
.pa-legenda-lista li b{margin-left:auto;color:var(--pa-dim);font-weight:600}
/* entrada animada (só na primeira vez) */
.painel-analitico.animar .pa-kpi,.painel-analitico.animar .pa-mini,.painel-analitico.animar .pa-card{animation:paSobe .5s ease both}
.painel-analitico.animar .pa-esq > :nth-child(2){animation-delay:.05s}
.painel-analitico.animar .pa-esq > :nth-child(3){animation-delay:.1s}
.painel-analitico.animar .pa-esq > :nth-child(n+4){animation-delay:.2s}
.painel-analitico.animar .pa-dir > *{animation-delay:.15s}
.painel-analitico.animar .pa-traco.pa-cheia{stroke-dasharray:2000;stroke-dashoffset:2000;animation:paRisca 1.4s .3s ease forwards}
.painel-analitico.animar .pa-barra{animation:paCresce .8s .3s cubic-bezier(.2,.9,.3,1) both}
.painel-analitico.animar .pa-arco{animation:paAparece .8s .3s ease both}
@keyframes paSobe{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes paRisca{to{stroke-dashoffset:0}}
@keyframes paCresce{from{height:0}}
@keyframes paAparece{from{opacity:0}}
@media (prefers-reduced-motion:reduce){.painel-analitico.animar *{animation:none!important;stroke-dashoffset:0!important}}
@media (max-width:1280px){.pa-grade{grid-template-columns:1fr}.pa-esq{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"k1 k2" "mi mi" "li li" "or re"}.pa-minis{grid-template-columns:1fr 1fr}.pa-dir{display:grid;grid-template-columns:1fr 1fr}.pa-barras{height:220px}}
@media (max-width:720px){.painel-analitico{padding:14px;border-radius:16px}.pa-esq{grid-template-columns:1fr;grid-template-areas:"k1" "k2" "mi" "li" "or" "re"}.pa-minis{grid-template-columns:1fr}.pa-dir{grid-template-columns:1fr}.pa-kpi-valor .pa-grande{font-size:32px}.seg-painel span{display:none}}
/* Editor da página: modelos e conteúdo dos modelos */
.pc-modelos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pc-modelo{display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:3px;padding:8px;border:1.5px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer;font:inherit;color:var(--text);transition:border-color .15s,box-shadow .15s}
.pc-modelo:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}
.pc-modelo.ativo{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
.pc-modelo-img{display:block;aspect-ratio:16/10;border-radius:8px;background:var(--surface-3) center/cover;margin-bottom:5px}
.pc-modelo b{font-size:13.5px}
.pc-modelo span:last-child{font-size:11.5px;color:var(--text-dim);line-height:1.35}
.pc-pares{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6px;margin-top:6px}
.pc-planta{display:grid;grid-template-columns:1.1fr .6fr 1fr .8fr 1.6fr 1fr;gap:6px;margin-top:6px}
@media (max-width:760px){.pc-modelos{grid-template-columns:1fr 1fr 1fr}.pc-modelo span:last-child{display:none}.pc-planta{grid-template-columns:1fr 1fr}}
