/* ── ZAP · Fluxos de WhatsApp — visual no padrão Unnichat ─────────────────── */
#vZap{
  --zbg:#f3f5f4;--card:#fff;--border:#e3e7e5;--border2:#eef1ef;--text:#1f2a26;--muted:#7a8580;--faint:#a9b2ae;--sub:#f5f7f6;
  --side:#1f5c4a;--side2:#2a6e59;--side-text:#e8f2ee;--side-muted:#9fc2b5;
  --green:#1D9E75;--green-bg:#E1F5EE;--red:#E24B4A;--red-bg:#FCE4E4;--red-hd:#FDE8E8;--orange:#BA7517;--orange-bg:#FAEEDA;
  --blue:#2F6FDB;--blue-bg:#E6EEFC;--blue-hd:#DCE8FB;--purple:#534AB7;--purple-bg:#EEEDFE;--yellow-hd:#FBF3D5;--pink-hd:#FBE3EF;--gray-hd:#EEF0F2;
  --wa:#21a366;--wa-bg:#E3F6EC;--port:#55606a;--edge:#b9c2c7;
  --msg-in:#fff;--msg-out:#DCF8C6;--msg-out-text:#1a1a1a;
  --cbg:#eaf2ed;--cdot:#d3e0d8;--nbd:#e1e8e4;--num:#2b6be0;--ntx:#3a4541;--edge-h:#5d6b66;--wa-sel:rgba(33,163,102,.25);--wa-chat:#e9e2d8;
  --h-wa:#e1f3e7;--i-wa:#25a35a;--h-blue:#dbe7fb;--i-blue:#2f6fdb;--h-red:#fde2e2;--i-red:#dc3b3b;--h-yellow:#fbf3d0;--i-yellow:#a68a12;--h-pink:#fbe1ee;--i-pink:#c23a83;--h-orange:#fdecdc;--i-orange:#e07a26;--note0:#f4eed6;
  --gt-bg:#fdf3ea;--gt-bd:#f4dfca;--info-bg:#eaf5fb;--info-bd:#cfe7f4;--info-tx:#3d5260;
  color:var(--text);
}
[data-theme="dark"] #vZap{
  --zbg:#15181a;--card:#1f2326;--border:#30363a;--border2:#2a2f33;--text:#e9eeec;--muted:#98a39e;--faint:#66706c;--sub:#262b2e;
  --side:#123a2f;--side2:#1b4d3e;--side-text:#e3efe9;--side-muted:#86ad9f;
  --green:#2DB887;--green-bg:#163a2c;--red:#E55C5C;--red-bg:#3a1d1d;--red-hd:#3a2224;--orange:#D4882A;--orange-bg:#3a2a12;
  --blue:#6E9CF0;--blue-bg:#1b2840;--blue-hd:#1d2c47;--purple:#8b84e0;--purple-bg:#2a2550;--yellow-hd:#3a3318;--pink-hd:#3a2030;--gray-hd:#2a2f33;
  --wa:#2DB887;--wa-bg:#163a2c;--port:#a5b0b6;--edge:#4c565c;
  --msg-in:#2a2f33;--msg-out:#1f4a35;--msg-out-text:#e9eeec;
  --cbg:#141917;--cdot:#232b27;--nbd:#30383a;--num:#79a5f5;--ntx:#cfd8d4;--edge-h:#9aa7a2;--wa-sel:rgba(45,184,135,.3);--wa-chat:#0f1a16;
  --h-wa:#183a2a;--i-wa:#4fd08f;--h-blue:#1d2c47;--i-blue:#7ea6f2;--h-red:#3d2224;--i-red:#f07a7a;--h-yellow:#3a3318;--i-yellow:#e2c55a;--h-pink:#3d2133;--i-pink:#ec86bd;--h-orange:#3d2b1b;--i-orange:#f2a15a;--note0:#3a3420;
  --gt-bg:#2b2219;--gt-bd:#4a3a2a;--info-bg:#16262f;--info-bd:#21404f;--info-tx:#a9c3d1;
}
#vZap *{box-sizing:border-box}
#vZap .zu-app{display:grid;grid-template-columns:232px 1fr;min-height:calc(100vh - 52px);background:var(--zbg)}
/* menu lateral */
#vZap .zu-side{background:var(--side);color:var(--side-text);padding:14px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:calc(100vh - 52px);overflow:auto}
#vZap .zu-logo{display:flex;align-items:center;gap:8px;font-size:19px;font-weight:700;padding:4px 8px 12px;letter-spacing:-.01em}
#vZap .zu-logo i{font-size:24px}
#vZap .zu-perfil{background:var(--side2);border-radius:12px;padding:10px 12px;margin-bottom:10px;font-size:12px}
#vZap .zu-perfil .l{color:var(--side-muted);font-size:11px}
#vZap .zu-perfil .v{display:flex;gap:6px;align-items:center;font-weight:600;margin-top:3px;font-size:13px}
#vZap .zu-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;color:var(--side-text);font-size:14px;cursor:pointer;border:0;background:none;width:100%;text-align:left;font-family:inherit}
#vZap .zu-item i{font-size:19px;opacity:.9}
#vZap .zu-item:hover{background:rgba(255,255,255,.07)}
#vZap .zu-item.on{background:var(--side2);font-weight:600}
#vZap .zu-item .zu-badge{margin-left:auto;background:#e85c5c;color:#fff;border-radius:99px;font-size:10px;padding:1px 7px;font-weight:700}
#vZap .zu-main{min-width:0;padding:18px 22px 60px}
#vZap .zu-main.canvas-on{padding:0;position:relative}
#vZap .zu-h1{font-size:20px;font-weight:700;margin:0 0 4px;display:flex;align-items:center;gap:8px}
#vZap .zu-sub{font-size:12.5px;color:var(--muted)}
#vZap .zu-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:16px}
/* controles genéricos */
#vZap .zp-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px}
#vZap .zp-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#vZap .zp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#vZap .zp-h3{font-size:13px;font-weight:650;margin:0 0 10px;display:flex;align-items:center;gap:6px}
#vZap .zp-btn{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:99px;font-size:12px;padding:6px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-family:inherit;white-space:nowrap;text-decoration:none}
#vZap .zp-btn:hover{border-color:var(--muted)}
#vZap .zp-btn.pri{background:var(--side);border-color:var(--side);color:#fff;font-weight:600}
#vZap .zp-btn.dan{color:var(--red);border-color:var(--red-bg)}
#vZap .zp-btn.sm{font-size:11px;padding:4px 10px}
#vZap .zp-btn:disabled{opacity:.45;cursor:not-allowed}
#vZap .zp-in,#vZap .zp-sel,#vZap .zp-ta{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:9px;padding:7px 10px;font-size:13px;font-family:inherit;width:100%}
#vZap .zp-ta{min-height:90px;resize:vertical;line-height:1.45}
#vZap .zp-lbl{font-size:11px;color:var(--muted);margin:12px 0 4px;display:block;font-weight:600;text-transform:uppercase;letter-spacing:.03em}
#vZap .zp-help{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.45}
#vZap .zp-chip{display:inline-flex;align-items:center;gap:4px;border-radius:99px;font-size:11px;padding:2px 9px;font-weight:600;background:var(--sub);color:var(--muted);white-space:nowrap}
#vZap .zp-chip.desligado{background:var(--sub);color:var(--muted)}
#vZap .zp-chip.teste,#vZap .zp-chip.agendado{background:var(--orange-bg);color:var(--orange)}
#vZap .zp-chip.ativo,#vZap .zp-chip.concluido{background:var(--green-bg);color:var(--green)}
#vZap .zp-chip.erro,#vZap .zp-chip.falhou,#vZap .zp-chip.cancelado{background:var(--red-bg);color:var(--red)}
#vZap .zp-chip.fim,#vZap .zp-chip.lido,#vZap .zp-chip.resolvida{background:var(--green-bg);color:var(--green)}
#vZap .zp-chip.entregue,#vZap .zp-chip.enviado,#vZap .zp-chip.enviando{background:var(--blue-bg);color:var(--blue)}
#vZap .zp-chip.aprovado,#vZap .zp-chip.APPROVED{background:var(--green-bg);color:var(--green)}
#vZap .zp-chip.rascunho,#vZap .zp-chip.PENDING{background:var(--orange-bg);color:var(--orange)}
#vZap .zp-chip.REJECTED,#vZap .zp-chip.PAUSED,#vZap .zp-chip.DISABLED{background:var(--red-bg);color:var(--red)}
#vZap .zp-chip.tag{background:var(--purple-bg);color:var(--purple);font-weight:500}
#vZap .zp-chip.tag button{background:none;border:0;color:inherit;cursor:pointer;padding:0;font-size:13px;line-height:1}
#vZap .zp-empty{color:var(--muted);font-size:13px;padding:30px 10px;text-align:center}
#vZap .zp-err{background:var(--red-bg);color:var(--red);border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:12px}
#vZap .zp-note{background:var(--orange-bg);color:var(--orange);border-radius:10px;padding:10px 12px;font-size:12.5px;margin-bottom:12px;line-height:1.45}
#vZap .zp-loading{color:var(--muted);font-size:13px;padding:20px 0}
#vZap .zp-dot{width:8px;height:8px;border-radius:50%;background:var(--green);display:inline-block}
#vZap .zp-dot.warn{background:var(--orange)} #vZap .zp-dot.bad{background:var(--red)} #vZap .zp-dot.off{background:var(--faint)}
#vZap .zp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
#vZap .zp-kpi{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px 14px}
#vZap .zp-kpi .l{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:5px}
#vZap .zp-kpi .v{font-size:24px;font-weight:700;margin-top:4px;font-variant-numeric:tabular-nums}
#vZap .zp-kpi .s{font-size:11px;color:var(--muted);margin-top:2px}
#vZap .zp-kpi.ok .v{color:var(--green)} #vZap .zp-kpi.bad .v{color:var(--red)} #vZap .zp-kpi.warn .v{color:var(--orange)}
#vZap .zp-bars{display:flex;align-items:flex-end;gap:4px;height:120px;padding-top:6px}
#vZap .zp-bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;min-width:0;height:100%}
#vZap .zp-bar .b{width:100%;max-width:26px;background:var(--wa);border-radius:4px 4px 0 0;position:relative}
#vZap .zp-bar .b .r{position:absolute;left:0;right:0;bottom:0;background:var(--side);opacity:.55;border-radius:4px 4px 0 0}
#vZap .zp-bar .d{font-size:9.5px;color:var(--muted)}
#vZap .zp-table{width:100%;border-collapse:collapse;font-size:12.5px;background:var(--card)}
#vZap .zp-table th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;padding:9px 10px;border-bottom:1px solid var(--border)}
#vZap .zp-table td{padding:10px;border-bottom:1px solid var(--border2);vertical-align:middle}
#vZap .zp-table tr.clk{cursor:pointer} #vZap .zp-table tr.clk:hover td{background:var(--sub)}
#vZap .zp-tablebox{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}
#vZap .zp-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:center}
#vZap .zp-filters .zp-in,#vZap .zp-filters .zp-sel{width:auto;min-width:160px}
#vZap .zp-toggle{position:relative;width:38px;height:22px;border-radius:99px;background:var(--faint);border:0;cursor:pointer;flex:0 0 38px;transition:.15s}
#vZap .zp-toggle::after{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.15s}
#vZap .zp-toggle.on{background:var(--wa)} #vZap .zp-toggle.on::after{left:19px}
#vZap .zp-toggle.teste{background:var(--orange)} #vZap .zp-toggle.teste::after{left:11px}

/* ── lista de automações (como no Unnichat) */
#vZap .zl-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:12px}
#vZap .zl-crumb{font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px;margin-bottom:4px}
#vZap .zl-crumb a{cursor:pointer;color:var(--text)} #vZap .zl-crumb span{color:var(--muted);font-weight:400}
#vZap .zl-crumb i{font-size:17px;color:var(--muted)}
#vZap .zl-btn{border:1.5px solid var(--side);background:var(--card);color:var(--side);border-radius:99px;font-size:13px;font-weight:600;padding:8px 16px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:inherit}
#vZap .zl-btn.pri{background:var(--side);color:#fff}
[data-theme="dark"] #vZap .zl-btn{color:var(--side-text);border-color:var(--side2)} [data-theme="dark"] #vZap .zl-btn.pri{background:var(--side2)}
#vZap .zl-info{background:var(--info-bg);border:1px solid var(--info-bd);border-radius:12px;padding:12px 16px;margin-bottom:12px;font-size:12.5px;line-height:1.6;color:var(--info-tx)}
#vZap .zl-info .t{font-weight:700;font-size:13.5px;color:var(--text);display:flex;align-items:center;gap:6px;margin-bottom:2px}
#vZap .zl-info .t i{color:#2a8ec7}
#vZap .zl-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}
#vZap .zl-cardhd{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:12px}
#vZap .zl-h{font-size:17px;font-weight:700;margin-bottom:2px}
#vZap .zl-busca{position:relative}
#vZap .zl-busca input{border:0;background:var(--sub);border-radius:99px;padding:8px 34px 8px 14px;font-size:13px;width:220px;color:var(--text);font-family:inherit;outline:0}
#vZap .zl-busca i{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted)}
#vZap .zl-lote{display:flex;align-items:center;gap:8px;background:var(--wa-bg);border-radius:10px;padding:8px 12px;margin-bottom:10px;font-size:13px}
#vZap .zl-tablewrap{border:1px solid var(--border2);border-radius:10px;overflow:hidden}
#vZap .zl-table td{padding:13px 10px;font-size:13.5px}
#vZap .zl-table th{font-size:12.5px;text-transform:none;letter-spacing:0;color:var(--text);font-weight:700;padding:12px 10px}
#vZap .zl-nome{display:inline-flex;align-items:center;gap:8px;font-weight:500}
#vZap .zl-data{color:var(--text);font-variant-numeric:tabular-nums}
#vZap .zl-st{font-size:13px;color:var(--text);white-space:nowrap}
#vZap .zl-st.teste{color:var(--orange)} #vZap .zl-st.desligado{color:var(--muted)}
#vZap .zl-acts{display:flex;gap:2px;justify-content:flex-end}
#vZap .zl-acts .zp-ico{font-size:18px;color:var(--text)}
#vZap .zl-table input[type=checkbox]{width:16px;height:16px;accent-color:var(--side)}

/* ── canvas (idêntico ao Unnichat) */
#vZap .zc-wrap{position:relative;height:calc(100vh - 52px);overflow:hidden;background:var(--cbg);touch-action:none;cursor:grab;
  background-image:radial-gradient(var(--cdot) 1px,transparent 1px);background-size:22px 22px}
#vZap .zc-wrap.pan{cursor:grabbing} #vZap .zc-wrap.ligando{cursor:crosshair}
#vZap .zc-stage{position:absolute;left:0;top:0;transform-origin:0 0}
#vZap .zc-svg{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}
#vZap .zc-svg path{fill:none}
#vZap .zc-svg path.ln{stroke:var(--edge);stroke-width:1.5;pointer-events:none}
#vZap .zc-svg path.ln.sel{stroke:var(--wa);stroke-width:2.6}
#vZap .zc-svg path.hit{stroke:transparent;stroke-width:14;pointer-events:stroke;cursor:pointer}
#vZap .zc-svg path.hit:hover + path.ln{stroke:var(--edge-h);stroke-width:2.2}
#vZap .zc-svg path.temp{stroke:var(--wa);stroke-width:2;stroke-dasharray:6 5;pointer-events:none}
#vZap .zc-edgex{position:absolute;display:none;align-items:center;justify-content:center;width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;border:0;background:var(--red);color:#fff;cursor:pointer;z-index:4;box-shadow:0 2px 6px rgba(0,0,0,.2);font-size:13px}
/* topo */
#vZap .zc-top{position:absolute;left:16px;right:16px;top:12px;display:flex;justify-content:space-between;align-items:center;gap:10px;z-index:6;pointer-events:none}
#vZap .zc-top > *{pointer-events:auto}
#vZap .zc-title{display:flex;align-items:center;gap:8px;min-width:0}
#vZap .zc-back{border:0;background:none;color:var(--text);font-size:14px;font-weight:600;cursor:pointer;padding:4px 10px 4px 4px;display:flex;align-items:center;gap:4px;border-radius:8px;white-space:nowrap}#vZap .zc-back .ti{font-size:19px}
#vZap .zc-back:hover{background:var(--card)}
#vZap .zc-title input{border:1px solid transparent;background:transparent;color:var(--text);font-size:15px;font-weight:600;font-family:inherit;width:min(380px,42vw);outline:0;border-radius:8px;padding:5px 8px}
#vZap .zc-title input:hover{border-color:var(--border)} #vZap .zc-title input:focus{border-color:var(--wa);background:var(--card)}
#vZap .zc-title .zl-st{background:var(--card);border:1px solid var(--border);border-radius:99px;padding:2px 10px;font-size:11.5px}
#vZap .zc-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
#vZap .zc-tbtn{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;font-size:13px;padding:8px 13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:inherit;white-space:nowrap;box-shadow:0 1px 2px rgba(0,0,0,.04)}
#vZap .zc-tbtn:hover{border-color:var(--muted)}
#vZap .zc-tbtn.pri{background:var(--side);border-color:var(--side);color:#fff;font-weight:600}
#vZap .zc-modos{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--card)}
#vZap .zc-modos button{border:0;background:var(--card);color:var(--muted);font-size:12.5px;padding:8px 11px;cursor:pointer;font-family:inherit}
#vZap .zc-modos button.on.desligado{background:var(--sub);color:var(--text);font-weight:600}
#vZap .zc-modos button.on.teste{background:var(--orange-bg);color:var(--orange);font-weight:600}
#vZap .zc-modos button.on.ativo{background:var(--wa);color:#fff;font-weight:600}
/* paleta de blocos */
#vZap .zc-pal{position:absolute;left:16px;top:64px;z-index:6;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 14px rgba(20,40,30,.08);width:206px;max-height:calc(100% - 140px);overflow:auto}
#vZap .zc-pal-tg{display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;padding:10px 12px;font-size:13px;font-weight:700;color:var(--text);cursor:pointer;font-family:inherit}
#vZap .zc-pal-tg i{width:22px;height:22px;border-radius:6px;background:var(--side);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px}
#vZap .zc-pal.fechada{width:auto} #vZap .zc-pal.fechada .zc-pal-list{display:none}
#vZap .zc-pal-list{padding:0 6px 8px;display:flex;flex-direction:column;gap:2px}
#vZap .zc-pal-it{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:8px;font-size:12.5px;cursor:grab;user-select:none;color:var(--text);touch-action:none}
#vZap .zc-pal-it:hover{background:var(--sub)}
.zc-pal-it.fantasma{position:fixed;z-index:5000;pointer-events:none;transform:translate(-20px,-50%);background:#fff;border:1px solid #d9e2dd;border-radius:10px;padding:8px 12px;box-shadow:0 8px 24px rgba(0,0,0,.18);display:flex;align-items:center;gap:9px;font-size:13px;font-family:inherit;color:#1f2a26}
#vZap .ic,.zc-pal-it.fantasma .ic{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:15px;flex:0 0 26px}
/* rodapé do canvas */
#vZap .zc-zoom{position:absolute;right:16px;bottom:18px;display:flex;flex-direction:column;z-index:6;background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.05)}
#vZap .zc-zoom button{width:36px;height:34px;border:0;border-bottom:1px solid var(--border2);background:var(--card);color:var(--text);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}
#vZap .zc-zoom button:last-child{border-bottom:0} #vZap .zc-zoom button:hover{background:var(--sub)}
#vZap .zc-status{position:absolute;left:16px;bottom:18px;z-index:6;display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:7px 12px;font-size:13px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
#vZap .zc-status i{color:var(--wa);font-size:17px} #vZap .zc-status.sujo{border-color:var(--orange)} #vZap .zc-status.sujo i{color:var(--orange)}
/* cores dos cabeçalhos (as mesmas do Unnichat) */
#vZap .c-wa{background:var(--h-wa)} #vZap .c-wa i{color:var(--i-wa)}
#vZap .c-blue{background:var(--h-blue)} #vZap .c-blue i{color:var(--i-blue)}
#vZap .c-red{background:var(--h-red)} #vZap .c-red i{color:var(--i-red)}
#vZap .c-yellow{background:var(--h-yellow)} #vZap .c-yellow i{color:var(--i-yellow)}
#vZap .c-pink{background:var(--h-pink)} #vZap .c-pink i{color:var(--i-pink)}
#vZap .c-orange{background:var(--h-orange)} #vZap .c-orange i{color:var(--i-orange)}
#vZap .c-gray{background:var(--sub)} #vZap .c-gray i{color:var(--muted)}
#vZap .c-note{background:var(--note0)} #vZap .c-note i{color:#9a8540}
.zc-pal-it.fantasma .c-wa{background:#e1f3e7} .zc-pal-it.fantasma .c-blue{background:#dbe7fb} .zc-pal-it.fantasma .c-red{background:#fde2e2} .zc-pal-it.fantasma .c-yellow{background:#fbf3d0} .zc-pal-it.fantasma .c-pink{background:#fbe1ee} .zc-pal-it.fantasma .c-orange{background:#fdecdc} .zc-pal-it.fantasma .c-gray{background:#eef1ef} .zc-pal-it.fantasma .c-note{background:#f4eed6}
/* nós */
#vZap .zn{position:absolute;width:280px;background:var(--card);border:1px solid var(--nbd);border-radius:10px;box-shadow:0 1px 4px rgba(20,40,30,.08);font-size:12.5px;user-select:none;cursor:pointer}
#vZap .zn:hover{box-shadow:0 3px 12px rgba(20,40,30,.12)}
#vZap .zn.sel{border-color:var(--wa);box-shadow:0 0 0 2px var(--wa-sel),0 6px 18px rgba(20,40,30,.12)}
#vZap .zn.alvo{border-color:var(--wa);box-shadow:0 0 0 3px var(--wa-sel)}
#vZap .zn.arrastando{box-shadow:0 12px 30px rgba(20,40,30,.22);z-index:3;cursor:grabbing;opacity:.96}
#vZap .zn-hd{display:flex;align-items:center;gap:7px;margin:8px 8px 0;padding:6px 9px;border-radius:7px;font-size:12.5px;color:var(--text);font-weight:500}
#vZap .zn-hd i{font-size:16px}
#vZap .zn-hd .id{margin-left:auto;font-size:10px;opacity:.45;font-family:ui-monospace,monospace;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#vZap .zn-stats{display:grid;text-align:center;padding:9px 6px 2px;gap:2px}
#vZap .zn-stats b{display:block;font-size:14.5px;color:var(--num);font-variant-numeric:tabular-nums;font-weight:700;line-height:1.2}
#vZap .zn-stats span{font-size:9.5px;color:var(--muted)}
#vZap .zn-bd{padding:8px 12px 4px}
#vZap .zn-txt{white-space:pre-wrap;word-break:break-word;max-height:300px;overflow:hidden;font-size:12px;line-height:1.5;color:var(--ntx)}
#vZap .zn-txt .vazio{color:var(--faint);font-style:italic}
#vZap .zn-midia{display:flex;align-items:center;justify-content:center;gap:6px;height:64px;border-radius:8px;background:var(--sub);color:var(--muted);margin-bottom:8px;font-size:12px}
#vZap .zn-midia i{font-size:22px}
#vZap .zn-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:10.5px;color:var(--muted)}
#vZap .zn-meta .zp-chip{font-size:10px;padding:1px 7px}
#vZap .zn-out{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--border2);padding:9px 10px 9px 12px;font-size:12px;color:var(--ntx)}
#vZap .zn-out.bt{justify-content:flex-end}
#vZap .zn-out.bt .t{display:inline-flex;align-items:center;gap:5px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#vZap .zn-out.bt.link{justify-content:center} #vZap .zn-out.bt.link .t{margin-left:auto}
#vZap .zn-out.bt .t i{color:var(--muted)}
#vZap .zn-out .pc{font-size:11.5px;color:var(--ntx);min-width:30px;text-align:right}
#vZap .zn-out > span:first-child i{font-size:15px;vertical-align:-2px}
#vZap .zn-ft{display:flex;align-items:center;gap:2px;padding:7px 10px 8px 8px;border-top:1px solid var(--border2);margin-top:6px}
#vZap .zn-ft .zp-ico{font-size:15px;color:var(--muted)}
#vZap .zn-ft .nx{margin-left:auto;font-size:12px;color:var(--ntx);margin-right:8px}
#vZap .zn-box{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--border2);border-radius:8px;padding:9px 10px;font-size:12px;line-height:1.45;color:var(--ntx)}
#vZap .zn-box i{font-size:16px;color:var(--muted)} #vZap .zn-box .s,#vZap .zn-tg .s{font-size:11px;color:var(--muted)}
#vZap .zn-gh{font-weight:700;font-size:12.5px;margin-bottom:6px;color:var(--text)}
#vZap .zn-grp{border:1px solid var(--border2);border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.5}
#vZap .zn-grp .md{color:var(--text);padding-bottom:6px;margin-bottom:4px;border-bottom:1px solid var(--border2)}
#vZap .zn-grp .cd{color:var(--muted);padding:2px 0}
#vZap .zn-tg{display:flex;gap:9px;align-items:flex-start;font-size:12px;color:var(--ntx);line-height:1.45}
#vZap .zn-tg > i{font-size:18px;color:var(--muted);margin-top:1px}
#vZap .zn-tgi{display:flex;align-items:center;gap:6px;margin-top:8px;padding:6px 8px;border-radius:7px;background:var(--sub);font-size:11.5px;color:var(--ntx);word-break:break-all}
#vZap .zn-tgi i{color:var(--muted)} #vZap .zn-tgi.rm{text-decoration:line-through;opacity:.7}
#vZap .zn-wait{font-size:11px;color:var(--orange);padding:4px 12px 0}
/* gatilho */
#vZap .zn.gatilho{background:var(--gt-bg);border-color:var(--gt-bd)}
#vZap .zn-gt{display:flex;gap:10px;align-items:flex-start;padding:14px 14px 8px}
#vZap .zn-gt > i{font-size:20px;color:var(--i-orange);margin-top:1px}
#vZap .zn-gt b{font-size:13.5px;color:var(--text)} #vZap .zn-gt .s{font-size:11.5px;color:var(--muted);margin-top:3px;line-height:1.4}
#vZap .zn-gt-x{font-size:11px;color:var(--muted);padding:0 14px 6px 44px}
#vZap .zn.gatilho .zn-ft{border-top-color:var(--gt-bd)}
/* fim */
#vZap .zn.fim{width:auto;min-width:190px;border-radius:99px;padding:8px 10px 8px 16px;color:var(--muted);display:flex;align-items:center;gap:8px}
#vZap .zn.fim .zport.in{top:50%;margin-top:-6.5px}
#vZap .zn.fim .zp-ico{margin-left:auto}
/* nota */
#vZap .zn-nota{position:absolute;width:300px;min-height:110px;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,.08);padding:28px 14px 14px;font-size:12.5px;color:#3b3520;cursor:grab;user-select:none}
#vZap .zn-nota.c0{background:#f6f0d9} #vZap .zn-nota.c1{background:#e3f1e7} #vZap .zn-nota.c2{background:#e2ebfa} #vZap .zn-nota.c3{background:#fbe3ec}
#vZap .zn-nota.sel{box-shadow:0 0 0 2px var(--wa)}
#vZap .zn-nota-tb{position:absolute;right:6px;top:4px;display:flex;gap:2px}
#vZap .zn-nota-tb .zp-ico{color:#8a7f5c;font-size:14px}
#vZap .zn-nota-tx{white-space:pre-wrap;word-break:break-word;line-height:1.5}
#vZap .zn-nota-tx u{color:#2a5d8a}
#vZap .zn-nota-tx textarea{width:100%;min-height:90px;border:0;background:rgba(255,255,255,.5);border-radius:6px;padding:6px;font:inherit;color:inherit;resize:vertical;outline:0}
/* portas */
#vZap .zport{width:13px;height:13px;border-radius:50%;background:var(--card);border:1.5px solid var(--port);flex:0 0 13px;display:inline-block}
#vZap .zport.in{position:absolute;left:-7px;top:17px;z-index:2}
#vZap .zport.out{cursor:crosshair;position:relative}
#vZap .zport.out::after{content:'';position:absolute;inset:-7px;border-radius:50%}
#vZap .zport.out:hover{border-color:var(--wa);background:var(--wa-bg);transform:scale(1.25)}
/* gaveta do editor */
#vZap .zc-drawer{position:absolute;right:0;top:0;bottom:0;width:min(420px,100%);background:var(--card);border-left:1px solid var(--border);box-shadow:-8px 0 24px rgba(0,0,0,.08);z-index:8;overflow:auto;padding:14px 16px 40px;transform:translateX(100%);transition:transform .18s}
#vZap .zc-drawer.on{transform:none}
#vZap .zc-dhd{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px}
#vZap .zc-dhd .zn-hd{flex:1}
#vZap .zc-cond{display:grid;grid-template-columns:1fr 1fr 28px;gap:6px;margin-top:6px;align-items:center}
#vZap .zc-dias{display:flex;flex-wrap:wrap;gap:4px;font-size:11px}
#vZap .zc-dias label{display:flex;align-items:center;gap:2px}
#vZap .zc-bt{border:1px solid var(--border2);border-radius:10px;padding:8px;margin-top:6px}
#vZap .zc-bt-l{display:flex;gap:6px;align-items:center}
#vZap .zc-prev{background:var(--wa-chat);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:4px}
#vZap .zc-prev .pbal{background:var(--msg-in);border-radius:8px;padding:6px 8px 4px;font-size:13px;line-height:1.4;box-shadow:0 1px 1px rgba(0,0,0,.06);max-width:92%}
#vZap .zc-prev .pm{height:120px;border-radius:6px;background:#2b3a35;color:#fff;display:flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:6px}
#vZap .zc-prev .pt{white-space:pre-wrap;word-break:break-word}
#vZap .zc-prev .ph{font-size:10px;color:var(--muted);text-align:right}
#vZap .zc-prev .pb{background:var(--msg-in);border-radius:8px;text-align:center;color:#1c8fd8;font-size:13px;padding:7px;max-width:92%;box-shadow:0 1px 1px rgba(0,0,0,.06)}
#vZap .zp-menu{position:absolute;z-index:30;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.14);padding:5px;min-width:240px;max-height:480px;overflow:auto}
#vZap .zp-menu-h{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 10px 4px}
#vZap .zp-menu button{display:flex;gap:9px;align-items:center;width:100%;border:0;background:none;color:var(--text);padding:8px 10px;font-size:13px;border-radius:8px;cursor:pointer;font-family:inherit;text-align:left}
#vZap .zp-menu button:hover{background:var(--sub)}
/* gaveta global e modal */
#zpDrawer{position:fixed;inset:0;z-index:2000;display:none}
#zpDrawer.on{display:block}
#zpDrawer .bg{position:absolute;inset:0;background:rgba(0,0,0,.35)}
#zpDrawer .pn{position:absolute;right:0;top:0;bottom:0;width:min(560px,100%);background:var(--card);border-left:1px solid var(--border);overflow:auto;padding:18px}
#zpDrawer .x{float:right}
#zpModal{position:fixed;inset:0;z-index:2100;display:none;align-items:center;justify-content:center;padding:16px}
#zpModal.on{display:flex}
#zpModal .bg{position:absolute;inset:0;background:rgba(0,0,0,.4)}
#zpModal .pn{position:relative;background:var(--card);color:var(--text);border-radius:16px;padding:18px;width:min(500px,100%);max-height:90vh;overflow:auto;border:1px solid var(--border)}
#zpModal h4{margin:0 0 8px;font-size:15px}
#zpModal p{font-size:13px;line-height:1.5;color:var(--muted);margin:0 0 10px}
/* live chat */
#vZap .zp-inbox{display:grid;grid-template-columns:330px 1fr;border:1px solid var(--border);border-radius:14px;overflow:hidden;height:calc(100vh - 170px);min-height:440px;background:var(--card)}
#vZap .zp-clist{border-right:1px solid var(--border);overflow:auto}
#vZap .zp-citem{padding:10px 12px;border-bottom:1px solid var(--border2);cursor:pointer;display:flex;gap:10px;align-items:flex-start}
#vZap .zp-citem:hover,#vZap .zp-citem.on{background:var(--sub)}
#vZap .zp-av{width:36px;height:36px;border-radius:50%;background:var(--wa-bg);color:var(--wa);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex:0 0 36px}
#vZap .zp-citem .n{font-size:13px;font-weight:600;display:flex;justify-content:space-between;gap:6px}
#vZap .zp-citem .n small{font-weight:400;color:var(--muted);font-size:10.5px;white-space:nowrap}
#vZap .zp-citem .p{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
#vZap .zp-citem.unread .p{color:var(--text);font-weight:600}
#vZap .zp-citem .m{font-size:10.5px;color:var(--muted);margin-top:3px;display:flex;gap:6px}
#vZap .zp-citem .m span{white-space:nowrap}
#vZap .zp-citem .m{flex-wrap:wrap;row-gap:2px}
#vZap .zp-unread{width:8px;height:8px;border-radius:50%;background:var(--wa);display:inline-block;margin-left:4px}
#vZap .zp-chat{display:flex;flex-direction:column;min-width:0}
#vZap .zp-chat-hd{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
#vZap .zp-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:6px;background:var(--zbg)}
#vZap .zp-msg{max-width:76%;padding:7px 10px;border-radius:10px;font-size:13px;line-height:1.4;white-space:pre-wrap;word-break:break-word;box-shadow:0 1px 1px rgba(0,0,0,.05)}
#vZap .zp-msg.entrada{background:var(--msg-in);align-self:flex-start;border-top-left-radius:2px}
#vZap .zp-msg.saida{background:var(--msg-out);color:var(--msg-out-text);align-self:flex-end;border-top-right-radius:2px}
#vZap .zp-msg.sys{background:none;box-shadow:none;align-self:center;color:var(--muted);font-size:11px}
#vZap .zp-msg .meta{font-size:10px;color:var(--muted);margin-top:3px;display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
#vZap .zp-compose{border-top:1px solid var(--border);padding:10px;display:flex;gap:8px;align-items:flex-end;position:relative}
#vZap .zp-compose .zp-ta{min-height:42px;max-height:140px}
#vZap .zp-quick{position:absolute;bottom:100%;left:10px;right:10px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:0 -6px 18px rgba(0,0,0,.08);max-height:220px;overflow:auto}
#vZap .zp-quick button{display:block;width:100%;text-align:left;border:0;background:none;padding:8px 12px;font-size:12.5px;cursor:pointer;color:var(--text);font-family:inherit}
#vZap .zp-quick button:hover{background:var(--sub)}
#vZap .zp-back{display:none}
#vZap .zu-mtop{display:none}

@media(max-width:900px){
  #vZap .zu-app{grid-template-columns:1fr}
  #vZap .zu-side{position:static;height:auto;flex-direction:row;overflow-x:auto;padding:8px;gap:4px;scrollbar-width:none}
  #vZap .zu-side::-webkit-scrollbar{display:none}
  #vZap .zu-logo,#vZap .zu-perfil{display:none}
  #vZap .zu-item{width:auto;white-space:nowrap;padding:8px 11px;font-size:13px}
  #vZap .zu-item span.t{display:inline}
  #vZap .zu-main{padding:14px 12px 50px}
  #vZap .zc-wrap{height:calc(100vh - 110px)}
  #vZap .zc-title input{width:46vw;font-size:13px}
  #vZap .zc-top{flex-direction:column;align-items:stretch}
  #vZap .zc-tools{justify-content:flex-start}
  #vZap .zc-tbtn span{display:none}
  #vZap .zc-pal{top:auto;bottom:66px;max-height:55%}
  #vZap .zl-busca input{width:100%}
  #vZap .zl-cardhd > .zp-row{width:100%}
  #vZap .zp-kpis{grid-template-columns:repeat(2,1fr)}
  #vZap .zp-grid2{grid-template-columns:1fr}
  #vZap .zp-inbox{grid-template-columns:1fr;height:calc(100vh - 170px)}
  #vZap .zp-inbox.chat-on .zp-clist{display:none}
  #vZap .zp-inbox:not(.chat-on) .zp-chat{display:none}
  #vZap .zp-back{display:inline-flex}
  #vZap .zp-msg{max-width:88%}
  #vZap .zp-table.cards thead{display:none}
  #vZap .zp-table.cards tr{display:block;border-bottom:1px solid var(--border);padding:8px}
  #vZap .zp-table.cards td{display:flex;justify-content:space-between;gap:10px;border:0;padding:4px 2px;text-align:right}
  #vZap .zp-table.cards td::before{content:attr(data-l);color:var(--muted);font-size:11px;text-align:left;font-weight:600}
}

/* ── organizar (estilo Miro): retângulos com título e títulos soltos */
#vZap .c-area{background:var(--sub)} #vZap .c-area i{color:var(--text)}
#vZap .zf-ret{position:absolute;border-radius:14px;border:2px solid var(--fbd);background:var(--fbg);pointer-events:none}
#vZap .zf-ret.c0{--fbg:rgba(47,111,219,.06);--fbd:rgba(47,111,219,.35);--ftx:#2357b5}
#vZap .zf-ret.c1{--fbg:rgba(33,163,102,.07);--fbd:rgba(33,163,102,.4);--ftx:#167a4a}
#vZap .zf-ret.c2{--fbg:rgba(224,122,38,.07);--fbd:rgba(224,122,38,.42);--ftx:#b25a12}
#vZap .zf-ret.c3{--fbg:rgba(194,58,131,.06);--fbd:rgba(194,58,131,.38);--ftx:#a02d6b}
#vZap .zf-ret.c4{--fbg:rgba(166,138,18,.08);--fbd:rgba(166,138,18,.42);--ftx:#806a0c}
#vZap .zf-ret.c5{--fbg:rgba(90,100,110,.06);--fbd:rgba(90,100,110,.35);--ftx:#4b5560}
#vZap .zf-ret.sel,#vZap .zf-ret.msel{border-style:dashed;border-color:var(--wa)}
#vZap .zf-hd{position:absolute;left:0;right:0;top:0;height:44px;display:flex;align-items:center;gap:8px;padding:0 10px 0 16px;pointer-events:auto;cursor:grab;border-radius:12px 12px 0 0}
#vZap .zf-hd .tx{font-size:20px;font-weight:700;color:var(--ftx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#vZap .zf-hd .tx input,#vZap .zf-tit .tx input{font:inherit;color:inherit;border:1px solid var(--wa);border-radius:6px;background:var(--card);padding:2px 6px;outline:0;min-width:220px}
#vZap .zf-tb{display:none;gap:2px;margin-left:auto}
#vZap .zf-ret:hover .zf-tb,#vZap .zf-ret.sel .zf-tb,#vZap .zf-tit:hover .zf-tb,#vZap .zf-tit.sel .zf-tb{display:flex}
#vZap .zf-rs{position:absolute;right:-2px;bottom:-2px;width:22px;height:22px;pointer-events:auto;cursor:nwse-resize;border-radius:0 0 12px 0;background:linear-gradient(135deg,transparent 50%,var(--fbd) 50%)}
#vZap .zf-tit{position:absolute;cursor:grab;padding:2px 6px;border-radius:8px;white-space:nowrap}
#vZap .zf-tit .tx{font-weight:800;letter-spacing:-.01em;color:var(--text);display:block}
#vZap .zf-tit.s1 .tx{font-size:20px} #vZap .zf-tit.s2 .tx{font-size:30px} #vZap .zf-tit.s3 .tx{font-size:46px}
#vZap .zf-tit.c1 .tx{color:#167a4a} #vZap .zf-tit.c2 .tx{color:#b25a12} #vZap .zf-tit.c3 .tx{color:#a02d6b} #vZap .zf-tit.c4 .tx{color:#2357b5} #vZap .zf-tit.c5 .tx{color:var(--muted)}
#vZap .zf-tit .zf-tb{position:absolute;left:0;top:-30px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:2px}
#vZap .zf-tit.sel,#vZap .zf-tit.msel{outline:2px dashed var(--wa);outline-offset:2px}
#vZap .zc-wrap.desenhando{cursor:crosshair}
#vZap .zc-desenho{position:absolute;border:2px dashed var(--wa);border-radius:14px;background:rgba(33,163,102,.06);pointer-events:none}
#vZap .zc-desenho.titulo{border-radius:6px}
#vZap .zc-caixa{position:absolute;border:1.5px solid var(--i-blue);background:rgba(47,111,219,.08);border-radius:4px;pointer-events:none}
#vZap .zn.msel,#vZap .zn-nota.msel{box-shadow:0 0 0 2px var(--i-blue),0 6px 18px rgba(20,40,30,.12)}
#vZap .pisca{animation:zcPisca 1.2s ease}
@keyframes zcPisca{0%,100%{box-shadow:0 1px 4px rgba(20,40,30,.08)}30%{box-shadow:0 0 0 6px var(--wa-sel)}}
/* paleta: seção e ferramenta ativa */
#vZap .zc-pal-sec{font-size:10.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:10px 8px 4px;border-top:1px solid var(--border2);margin-top:4px}
#vZap .zc-pal-it.ativo{background:var(--wa-bg);box-shadow:inset 0 0 0 1px var(--wa)}
/* minimapa */
#vZap .zc-mini{position:absolute;right:62px;bottom:18px;width:190px;height:120px;background:var(--card);border:1px solid var(--border);border-radius:10px;z-index:6;overflow:hidden;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.05)}
#vZap .zc-mini i{position:absolute;border-radius:2px;background:var(--faint);opacity:.75}
#vZap .zc-mini i.m-enviar,#vZap .zc-mini i.m-template{background:var(--i-wa)} #vZap .zc-mini i.m-se{background:var(--i-blue)} #vZap .zc-mini i.m-esperar,#vZap .zc-mini i.m-esperar_ate,#vZap .zc-mini i.m-optout{background:var(--i-red)}
#vZap .zc-mini i.m-tag{background:var(--i-yellow)} #vZap .zc-mini i.m-fluxo{background:var(--i-pink)} #vZap .zc-mini i.m-g,#vZap .zc-mini i.m-webhook{background:var(--i-orange)}
#vZap .zc-mini i.m-f{background:none;border:1px solid var(--muted);opacity:.5} #vZap .zc-mini i.m-n{background:#d8c98a} #vZap .zc-mini i.m-tt{background:var(--text);opacity:.4}
#vZap .zc-mini b{position:absolute;border:1.5px solid var(--wa);background:rgba(33,163,102,.08);border-radius:3px}
#vZap .zc-zoom button.pct{font-size:10.5px;font-weight:700;height:28px}
/* busca */
#vZap .zc-busca{display:none;position:absolute;left:50%;top:62px;transform:translateX(-50%);width:min(440px,calc(100% - 32px));z-index:9;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.15);overflow:hidden}
#vZap .zc-busca.on{display:block}
#vZap .zc-busca-in{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border2)}
#vZap .zc-busca-in input{flex:1;border:0;background:none;font:inherit;font-size:14px;color:var(--text);outline:0}
#vZap .zc-busca .r{max-height:340px;overflow:auto;padding:4px}
#vZap .zc-busca .r button{display:flex;gap:9px;align-items:center;width:100%;border:0;background:none;text-align:left;padding:7px 8px;border-radius:8px;cursor:pointer;color:var(--text);font:inherit;font-size:13px}
#vZap .zc-busca .r button:hover{background:var(--sub)}
/* menu de contexto */
#vZap .zp-menu.ctx{min-width:230px;padding:4px}
#vZap .zp-menu.ctx button{padding:7px 10px;gap:10px}
#vZap .zp-menu.ctx button i{font-size:16px;color:var(--muted)}
#vZap .zp-menu.ctx button kbd{margin-left:auto;font-size:10.5px;color:var(--muted);font-family:inherit}
#vZap .zp-menu.ctx button.dan,#vZap .zp-menu.ctx button.dan i{color:var(--red)}
#vZap .zp-menu.ctx hr{border:0;border-top:1px solid var(--border2);margin:4px 2px}
/* ajuda */
.zc-help{display:grid;gap:6px;font-size:13px}
.zc-help div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border2);padding-bottom:5px}
.zc-help kbd{font-family:inherit;font-weight:600;font-size:12px;background:var(--sub);border-radius:6px;padding:2px 7px;white-space:nowrap}
/* nó: nome, variáveis do template, vídeo pendente */
#vZap .zn-hd .id.tit{font-family:inherit;font-size:11px;opacity:.75;font-weight:600;max-width:130px}
#vZap .zn-txt mark{background:var(--h-blue);color:var(--text);border-radius:4px;padding:0 3px}
#vZap .zn-midia.pend{height:auto;padding:8px;border:1px dashed var(--orange);background:var(--orange-bg);color:var(--orange);font-size:11.5px}
#vZap .zc-adv{margin-top:8px;font-size:12px;color:var(--muted)} #vZap .zc-adv summary{cursor:pointer} #vZap .zc-adv .zp-in{margin-top:6px}
#vZap .zc-var{display:grid;grid-template-columns:44px 1fr;gap:6px;align-items:center;margin-top:6px}
#vZap .zc-var code{font-size:12px;color:var(--i-blue)}
@media(max-width:900px){ #vZap .zc-mini{display:none} #vZap .zc-zoom button:nth-child(4),#vZap .zc-zoom button:nth-child(8){display:none} }

/* live chat · filtros (09/10): período, chips com contagem, separador por dia */
#vZap .zp-ctop{padding:10px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--card);z-index:5}
#vZap .zp-busca{flex:1;min-width:0;display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:10px;padding:0 10px;background:var(--card)}
#vZap .zp-busca i{color:var(--muted);font-size:14px}
#vZap .zp-busca input{border:0;outline:0;background:none;color:var(--text);font:inherit;font-size:12.5px;padding:8px 0;width:100%;min-width:0}
#vZap .dp-wrap{position:relative;flex:0 0 auto}
#vZap .dp-btn{font-size:11.5px;font-weight:600;color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:20px;padding:7px 12px;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:5px;white-space:nowrap}
#vZap .dp-btn:hover{border-color:var(--muted)}
#vZap .dp-chev{font-size:9px;color:var(--muted)}
#vZap .dp-menu{position:absolute;top:calc(100% + 5px);right:0;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:4px;box-shadow:0 8px 24px rgba(0,0,0,.14);z-index:300;min-width:190px;display:none}
#vZap .dp-menu.open{display:block}
#vZap .dp-opt{display:block;width:100%;text-align:left;padding:8px 12px;font-size:12.5px;color:var(--muted);background:none;border:0;border-radius:8px;cursor:pointer;font-family:inherit}
#vZap .dp-opt:hover{background:var(--sub);color:var(--text)}
#vZap .dp-opt.active{font-weight:600;color:var(--text);background:var(--sub)}
#vZap .dp-sep{border:0;border-top:1px solid var(--border);margin:4px 0}
#vZap .dp-custom{display:flex;flex-direction:column;gap:6px;padding:6px 8px 8px}
#vZap .dp-custom label{font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:2px}
#vZap .dp-custom input{border:1px solid var(--border);border-radius:8px;padding:6px 8px;font:inherit;font-size:12.5px;background:var(--card);color:var(--text)}
#vZap .zp-fchips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}
#vZap .zp-fchips::-webkit-scrollbar{display:none}
#vZap .zp-fchip{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:99px;padding:5px 11px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap}
#vZap .zp-fchip b{font-size:10.5px;font-weight:700;background:var(--sub);color:var(--muted);border-radius:99px;padding:1px 7px;min-width:18px;text-align:center}
#vZap .zp-fchip:hover{color:var(--text)}
#vZap .zp-fchip.alerta b{background:var(--orange-bg);color:var(--orange)}
#vZap .zp-fchip.on{background:var(--wa);border-color:var(--wa);color:#fff}
#vZap .zp-fchip.on b{background:rgba(255,255,255,.25);color:#fff}
#vZap .zp-sel-sm{width:auto;max-width:55%;font-size:12px;padding:5px 8px}
#vZap .zp-lnk{border:0;background:none;color:var(--wa);font:inherit;font-size:12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:4px 2px}
#vZap .zp-lnk:hover{text-decoration:underline}
#vZap .zp-dia{position:sticky;top:0;z-index:2;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--sub);padding:5px 12px;border-bottom:1px solid var(--border2)}
#vZap .zp-ctop + #zpCList .zp-dia{top:0}
#vZap .zp-tg{display:inline-flex;align-items:center;gap:3px;border-radius:6px;padding:1px 6px;font-weight:600;background:var(--sub);color:var(--muted)}
#vZap .zp-tg.ia{background:var(--purple-bg);color:var(--purple)}
#vZap .zp-tg.warn{background:var(--orange-bg);color:var(--orange)}
#vZap .zp-tg.ok{background:var(--green-bg);color:var(--green)}
#vZap .zp-tg.dz{background:var(--blue-bg);color:var(--blue)}
#vZap .zp-rodape{text-align:center;font-size:11px;color:var(--muted);padding:12px}
#vZap .zp-clist{display:flex;flex-direction:column}
#vZap #zpCList{flex:1}
#vZap .zp-clist{overflow:hidden}
#vZap #zpCList{overflow:auto;min-height:0}
#vZap .zp-ctop{position:static}
/* 09/10: a conversa aberta crescia do tamanho das mensagens (linha da grade "auto") e a moldura cortava; trava a altura e a rolagem fica no .zp-msgs */
#vZap .zp-inbox{grid-template-rows:minmax(0,1fr)}
#vZap .zp-chat,#vZap .zp-clist{min-height:0}
#vZap .zp-msgs{min-height:0}
/* 09/10: selo "por onde sai" (nome do bot, nunca o número) */
#vZap .zp-via{display:inline-flex;align-items:center;gap:4px;background:var(--wa-bg);color:var(--wa);border-radius:99px;padding:2px 9px;font-size:11.5px;font-weight:600;white-space:nowrap;margin-right:6px;vertical-align:middle}
#vZap .zp-via i{font-size:13px}
#vZap .zc-title .zp-via{margin-left:6px}
/* 13/10: placar do teste A/B no bloco de condição */
#vZap .zab{width:100%;border-collapse:collapse;font-size:11.5px;margin-top:6px;font-variant-numeric:tabular-nums}
#vZap .zab th{font-size:9.5px;font-weight:600;color:var(--muted);text-align:center;padding:3px 2px}
#vZap .zab td{text-align:center;padding:5px 2px;border-top:1px solid var(--line,#e6e6e3)}
#vZap .zab td:first-child{text-align:left;padding-left:4px}
#vZap .zab tr.lider td{background:rgba(52,168,83,.12)}
#vZap .zab tr.lider td:last-child b{color:#1e8e3e}
#vZap .zab-obs{font-size:10.5px;color:var(--muted);margin-top:6px;line-height:1.35}
