/* ════════════════════════════════════════════════════════════
   ATOMIC FLOW — Redesign system
   Jost (display, equiv. Kiona) + Kumbh Sans (texto) · 3 direções via [data-dir]
   Fontes carregadas via <link> no HTML.
════════════════════════════════════════════════════════════ */

/* ── TOKENS BASE (compartilhados) ── */
:root{
  --font-display:'Jost','Kumbh Sans',sans-serif;
  --font-text:'Kumbh Sans',sans-serif;

  --r-xs:6px; --r-sm:9px; --r-md:13px; --r-lg:18px; --r-xl:24px; --r-full:999px;

  --ease:cubic-bezier(.4,0,.2,1);
  --t-fast:.14s var(--ease); --t:.22s var(--ease);

  /* canais — constantes em todas as direções */
  --c-wpp:#25d366; --c-li:#3b82f6; --c-mail:#a78bfa; --c-call:#fbbf24;
}

/* ════════════════════════════════════════════════════════════
   DIREÇÃO 1 · ECLIPSE  (dark minimalista, amarelo como único acento)
════════════════════════════════════════════════════════════ */
html[data-dir="eclipse"]{
  --bg:#0c0c0d;
  --bg-grad:radial-gradient(120% 80% at 50% -10%,#161617 0%,#0c0c0d 60%);
  --s1:#141415; --s2:#1a1a1c; --s3:#212124; --s-hover:#26262a;
  --line:rgba(255,255,255,.07); --line-2:rgba(255,255,255,.12);
  --tx:#f4f4f2; --tx-mut:#94949c; --tx-faint:#84848c;

  --primary:#ffc002; --primary-ink:#131312;
  --primary-soft:rgba(255,192,2,.12); --primary-line:rgba(255,192,2,.35);
  --accent:#ffc002; --accent-soft:rgba(255,192,2,.12);

  --blue:#6f8cff; --blue-soft:rgba(111,140,255,.13);
  --green:#34d399; --green-soft:rgba(52,211,153,.13);
  --red:#f87171; --red-soft:rgba(248,113,113,.13);
  --orange:#fbbf24; --orange-soft:rgba(251,191,36,.13);
  --purple:#c084fc; --purple-soft:rgba(192,132,252,.13);
  --shadow:0 1px 0 rgba(255,255,255,.03) inset, 0 18px 40px -24px rgba(0,0,0,.9);
  --shadow-pop:0 24px 60px -20px rgba(0,0,0,.85);
  --danger:#f56565; --danger-dim:rgba(239,68,68,.12); --warn:#fffbeb;
  color-scheme:dark;
}


/* ════════════════════════════════════════════════════════════
   DIREÇÃO 3 · DAYLIGHT  (clara, azul primário)
════════════════════════════════════════════════════════════ */
html[data-dir="daylight"]{
  --bg:#f3f4f7;
  --bg-grad:radial-gradient(120% 80% at 50% -10%,#ffffff 0%,#eef0f4 70%);
  --s1:#ffffff; --s2:#ffffff; --s3:#f4f5f8; --s-hover:#eef0f5;
  --line:rgba(19,19,18,.09); --line-2:rgba(19,19,18,.16);
  --tx:#16171a; --tx-mut:#6a6e78; --tx-faint:#707480;

  --primary:#254dcf; --primary-ink:#ffffff;
  --primary-soft:rgba(37,77,207,.10); --primary-line:rgba(37,77,207,.35);
  --accent:#e0a400; --accent-soft:rgba(255,192,2,.18);

  --blue:#254dcf; --blue-soft:rgba(37,77,207,.10);
  --green:#159a5b; --green-soft:rgba(21,154,91,.12);
  --red:#dc2626; --red-soft:rgba(220,38,38,.10);
  --orange:#d97706; --orange-soft:rgba(217,119,6,.12);
  --purple:#7c3aed; --purple-soft:rgba(124,58,237,.10);
  --shadow:0 1px 2px rgba(19,19,18,.04), 0 12px 32px -18px rgba(19,19,18,.22);
  --shadow-pop:0 30px 60px -24px rgba(19,19,18,.28);
  --danger:#dc2626; --danger-dim:rgba(220,38,38,.12); --warn:#fffbeb;
  color-scheme:light;
}

/* ════════════════════════════════════════════════════════════
   RESET
════════════════════════════════════════════════════════════ */
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:var(--bg);
  background-image:var(--bg-grad);
  background-attachment:fixed;
  color:var(--tx);
  font-family:var(--font-text);
  font-size:14px; line-height:1.5;
  -webkit-font-smoothing:antialiased;
  transition:background-color .35s var(--ease), color .35s var(--ease);
  overflow-x:hidden;
}
button{font-family:inherit}
svg{display:block}
.ico{width:18px;height:18px;stroke-width:1.6;flex:0 0 auto}
.ico-sm{width:15px;height:15px}
.ico-lg{width:22px;height:22px}
.ico-xl{width:40px;height:40px;stroke-width:1.3}
.ico-tick{width:11px;height:11px;stroke-width:2.4;flex:0 0 auto}

::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:99px;border:2px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:var(--tx-faint);background-clip:padding-box}

/* ── TIPOGRAFIA ── */
.display{font-family:var(--font-display);font-weight:600;letter-spacing:.01em;line-height:1.02}
.eyebrow{font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--tx-mut)}
.num{font-family:var(--font-display);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.01em}

/* ════════════════════════════════════════════════════════════
   BOTÕES
════════════════════════════════════════════════════════════ */
.btn{display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border:1px solid transparent;border-radius:var(--r-sm);
  font-family:var(--font-text);font-size:13px;font-weight:600;letter-spacing:.01em;cursor:pointer;white-space:nowrap;
  transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast),transform var(--t-fast);}
.btn:active{transform:translateY(.5px)}
.btn .ico{width:16px;height:16px}
.btn-primary{background:var(--primary);color:var(--primary-ink);box-shadow:var(--shadow)}
.btn-primary:hover{filter:brightness(1.07)}
.btn-soft{background:var(--s3);color:var(--tx);border-color:var(--line)}
.btn-soft:hover{background:var(--s-hover);border-color:var(--line-2)}
.btn-ghost{background:transparent;color:var(--tx-mut);border-color:var(--line)}
.btn-ghost:hover{background:var(--s2);color:var(--tx)}
.btn-line{background:transparent;color:var(--tx);border-color:var(--line-2)}
.btn-line:hover{border-color:var(--tx-faint);background:var(--s2)}
.btn-danger{background:var(--red-soft);color:var(--red);border-color:transparent}
.btn-danger:hover{background:var(--red);color:#fff}
.btn-accent{background:var(--accent);color:var(--primary-ink)}
.btn-accent:hover{filter:brightness(1.07)}
.btn-yellow{background:var(--accent);color:var(--primary-ink);font-weight:700}
.btn-yellow:hover{filter:brightness(1.08);transform:translateY(-1px)}
.btn-sm{padding:6px 11px;font-size:12px}
.btn-lg{padding:12px 20px;font-size:14px}
.btn-xs{padding:4px 8px;font-size:11px}
.btn-icon{padding:8px;border-radius:var(--r-sm)}
.btn-icon.btn-sm{padding:6px}
.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}
.select-sm{padding:6px 11px;font-size:12px}

/* ── ACCOUNT STATUS BANNER (#143) — barra de trial/vencido, rodapé fixo ── */
#account-status-banner{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:9999;
  align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;
  padding:10px 16px;font-size:13px;font-weight:600;
}
#account-status-banner span{display:inline-flex;align-items:center;gap:6px}
#account-status-banner.warn{background:var(--accent);color:var(--primary-ink)}
#account-status-banner.danger{background:var(--red);color:#fff}
#account-status-banner button{
  border:none;border-radius:var(--r-sm);padding:6px 14px;
  font-weight:700;font-size:12px;cursor:pointer;
  font-family:var(--font-text);transition:filter var(--t-fast);
}
#account-status-banner button:hover{filter:brightness(1.08)}
#account-status-banner.warn button{background:var(--primary-ink);color:var(--accent)}
#account-status-banner.danger button{background:#fff;color:var(--red)}

/* ── INPUTS ── */
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}
.field label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-mut)}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  background:var(--s1);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--tx);
  font-family:var(--font-text);font-size:13.5px;padding:10px 13px;width:100%;outline:none;
  transition:border-color var(--t-fast),box-shadow var(--t-fast);}
input:focus,select:focus,textarea:focus{border-color:var(--primary-line);box-shadow:0 0 0 3px var(--primary-soft)}
input::placeholder,textarea::placeholder{color:var(--tx-faint)}

/* #136 — composer de template WPP: inputs herdavam --s1, igual ao fundo do
   modal (--s1 também) — no tema claro --s2 é idêntico a --s1, então nem a
   dica/preview destacavam. --s3 é o único token que diferencia nos dois temas. */
#tpl-overlay input:not([type="checkbox"]),#tpl-overlay select,#tpl-overlay textarea,
#ctpl-composer-overlay input:not([type="checkbox"]),#ctpl-composer-overlay select,#ctpl-composer-overlay textarea{
  background:var(--s3);}
input[type="checkbox"],input[type="radio"]{width:17px;height:17px;flex-shrink:0;accent-color:var(--primary);cursor:pointer;padding:0}
select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:36px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2394949c' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;}
select option{background:var(--s2)}

/* #150 — DDI select fechado (ver ddiSelectMakeCompact em utils.js): select
   real fica invisível por cima, a "face" abaixo é o que o usuário vê. */
.ddi-select-wrap{position:relative;display:inline-block}
.ddi-select-face{display:flex;align-items:center;gap:6px;height:100%;box-sizing:border-box;
  white-space:nowrap;overflow:hidden;pointer-events:none;
  background:var(--s1);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--tx);
  font-family:var(--font-text);font-size:13.5px;padding:10px 36px 10px 13px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2394949c' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;}
.ddi-select-face.ml-field-input{background-color:var(--s1);border-color:var(--accent);border-radius:6px;
  font-size:13px;font-weight:600;padding:4px 30px 4px 7px;background-position:right 8px center}
.ddi-select-wrap:focus-within .ddi-select-face{border-color:var(--primary-line);box-shadow:0 0 0 3px var(--primary-soft)}
select.ddi-select-native{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
textarea{resize:vertical;min-height:72px}
.input-search{display:flex;align-items:center;gap:9px;background:var(--s1);border:1px solid var(--line);border-radius:var(--r-sm);padding:0 13px;transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.input-search:focus-within{border-color:var(--primary-line);box-shadow:0 0 0 3px var(--primary-soft)}
.input-search .ico{color:var(--tx-faint);width:16px;height:16px}
.input-search input{background:none!important;border:none!important;border-radius:0!important;padding:10px 0!important;box-shadow:none!important}

.fg{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.fg label,.fg .field-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-mut)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* ── PIPELINE (#98): soma por coluna + forecast ── */
.kcol-sum{display:block;font-size:11px;font-weight:600;color:var(--tx-mut);margin-top:2px}
.fc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.fc-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--shadow)}
.fc-cur{font-family:var(--font-display);font-size:15px;font-weight:700;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.fc-row{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--tx-mut);padding:4px 0}
.fc-row .num{color:var(--tx);font-weight:600}
.fc-row.main{font-size:14px}
.fc-row.main .num{font-family:var(--font-display);font-size:20px;font-weight:600;color:var(--primary)}
.fc-row.won .num{color:var(--green)}

/* ── PICK LIST (seletor de lead custom, substitui <select size> nativo) ── */
.pick-list{display:flex;flex-direction:column;gap:3px;max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-md);padding:6px;background:var(--s2)}
.pick-item{display:flex;align-items:baseline;gap:8px;padding:9px 10px;border-radius:var(--r-sm);border:1px solid transparent;background:none;cursor:pointer;text-align:left;font-family:inherit;width:100%}
.pick-item:hover{background:var(--s3)}
.pick-item.active{background:var(--primary-soft);border-color:var(--primary-line)}
.pick-name{font-size:13px;font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pick-sub{font-size:12px;color:var(--tx-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1}
.pick-empty{padding:20px;text-align:center;color:var(--tx-faint);font-size:13px}

/* ════════════════════════════════════════════════════════════
   APP SHELL
════════════════════════════════════════════════════════════ */
#app{min-height:100vh;display:flex;flex-direction:column}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 32px}
.screen{display:none;flex-direction:column;flex:1;animation:fade .3s var(--ease)}
.screen.active{display:flex}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ── TOPBAR ── */
.topbar{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.topbar-inner{height:62px;display:flex;align-items:center;gap:18px;justify-content:space-between}
.brand{display:flex;align-items:center;gap:11px;cursor:pointer}
.brand-mark{width:30px;height:30px;flex:0 0 auto}
.brand-name{font-family:var(--font-display);font-size:19px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.brand-name b{color:var(--accent);font-weight:600}
.spacer{flex:1}

/* user chip */
.user{display:flex;align-items:center;gap:10px;padding:5px 6px 5px 12px;border-radius:var(--r-full);border:1px solid var(--line);background:var(--s1);cursor:pointer;transition:border-color var(--t-fast)}
.user:hover{border-color:var(--line-2)}
.user .nm{font-size:13px;font-weight:600}
.avatar{width:30px;height:30px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-size:12px;font-weight:600;color:var(--primary-ink);
  background:var(--primary);flex:0 0 auto}
.avatar.lg{width:48px;height:48px;font-size:18px;border-radius:14px}
.avatar.sm{width:22px;height:22px;font-size:9px;border-radius:7px}
.avatar.blue{background:var(--blue);color:#fff}
.avatar.no-owner{background:var(--red-soft);border:1.5px solid var(--red);cursor:help}
.avatar img{width:100%;height:100%;border-radius:inherit;object-fit:cover}

/* ════════════════════════════════════════════════════════════
   PAGE HEADER
════════════════════════════════════════════════════════════ */
.page{padding-top:44px;padding-bottom:64px;flex:1}
.page-head{margin-bottom:32px}
.page-title{font-family:var(--font-display);font-size:34px;font-weight:600;letter-spacing:.005em;margin-bottom:8px}
.page-sub{font-size:14.5px;color:var(--tx-mut);max-width:60ch}


/* ════════════════════════════════════════════════════════════
   CLIENTS GRID
════════════════════════════════════════════════════════════ */
.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:24px}
.client-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;cursor:pointer;position:relative;
  transition:border-color var(--t),transform var(--t),background var(--t);box-shadow:var(--shadow)}
.client-card:hover{transform:translateY(-3px);border-color:var(--line-2);background:var(--s2)}
.cc-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}
.cc-actions{display:flex;gap:4px;opacity:0;transition:opacity var(--t-fast)}
.client-card:hover .cc-actions{opacity:1}
.cc-actions .btn-icon{color:var(--tx-mut)}
.cc-name{font-size:17px;font-weight:700;margin-bottom:3px}
.cc-meta{font-size:12.5px;color:var(--tx-mut);margin-bottom:18px}
.cc-today{display:flex;align-items:baseline;gap:8px;padding:13px 15px;border-radius:var(--r-md);background:var(--accent-soft);margin-bottom:14px}
.cc-today .n{font-family:var(--font-display);font-size:26px;font-weight:600;color:var(--accent);line-height:1}
.cc-today .l{font-size:12px;font-weight:600;color:var(--tx)}
.cc-today.zero{background:var(--s3)}.cc-today.zero .n{color:var(--tx-mut)}
.cc-stats{display:flex;gap:22px}
.cc-stat .n{font-family:var(--font-display);font-size:18px;font-weight:600;display:block;line-height:1}
.cc-stat .l{font-size:10.5px;color:var(--tx-mut);letter-spacing:.04em;margin-top:4px}
.add-card{background:transparent;border:1.5px dashed var(--line-2);border-radius:var(--r-lg);min-height:206px;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--tx-mut);transition:all var(--t)}
.add-card:hover{border-color:var(--primary-line);color:var(--primary);background:var(--primary-soft)}
.add-card .ring{width:46px;height:46px;border-radius:var(--r-full);background:var(--s2);display:flex;align-items:center;justify-content:center}
.add-card:hover .ring{background:var(--primary);color:var(--primary-ink)}

/* ════════════════════════════════════════════════════════════
   WORKSPACE TOPBAR
════════════════════════════════════════════════════════════ */
.ws-bar{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.ws-bar-inner{height:60px;display:flex;align-items:center;gap:14px}
.iconbtn{width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--s1);color:var(--tx-mut);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--t-fast)}
.iconbtn:hover{color:var(--tx);border-color:var(--line-2);background:var(--s2)}
.ws-client{display:flex;align-items:center;gap:8px;padding:5px 14px 5px 6px;border-radius:var(--r-full);background:var(--s2);border:1px solid var(--line-2);margin-right:6px}
.ws-client .nm{font-size:13px;font-weight:700;color:var(--tx);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ws-nav{display:flex;gap:2px}
.ws-tab{display:flex;align-items:center;gap:7px;padding:8px 13px;border-radius:var(--r-sm);background:none;border:none;color:var(--tx-mut);font-family:var(--font-text);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--t-fast)}
.ws-tab .ico{width:16px;height:16px}
.ws-tab:hover{color:var(--tx);background:var(--s2)}
.ws-tab.active{color:var(--tx);background:var(--s3)}
.ws-tab.active .ico{color:var(--primary)}
.ws-actions{display:flex;align-items:center;gap:8px}

.dash-subtab{padding:9px 14px;background:none;border:none;border-bottom:2px solid transparent;color:var(--tx-mut);font-family:var(--font-text);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--t-fast);margin-bottom:-1px}
.dash-subtab:hover{color:var(--tx)}
.dash-subtab.active{color:var(--tx);border-bottom-color:var(--accent)}

.spinner{width:28px;height:28px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ════════════════════════════════════════════════════════════
   SIDEBAR RETRÁTIL (v3.0 — substitui a WORKSPACE TOPBAR acima)
════════════════════════════════════════════════════════════ */
.auxo-ws-root{display:flex;min-height:100vh}
.auxo-sb{width:240px;flex-shrink:0;background:var(--s1);border-right:1px solid var(--line);display:flex;flex-direction:column;height:100vh;position:sticky;top:0;transition:width var(--t);z-index:45}
.auxo-sb.collapsed{width:72px}

.sb-head{display:flex;align-items:center;gap:8px;padding:16px 14px 12px}
.sb-logo{display:flex;align-items:center;gap:8px;overflow:hidden;flex:1;min-width:0}
.sb-logo svg{flex-shrink:0}
.sb-logo .mark{width:20px;height:20px}
.sb-logo .word{width:96px;height:auto;opacity:1;transition:opacity var(--t-fast)}
.auxo-sb.collapsed .sb-logo .word{opacity:0;width:0}
.sb-collapse-btn{width:26px;height:26px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--s2);color:var(--tx-mut);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--t-fast)}
.sb-collapse-btn:hover{background:var(--s-hover,var(--s3));color:var(--tx)}
.sb-collapse-btn svg{transition:transform var(--t)}
.auxo-sb.collapsed .sb-collapse-btn svg{transform:rotate(180deg)}

.sb-switcher{padding:0 10px 12px;position:relative}
.sw-btn{width:100%;display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--s2);color:var(--tx);cursor:pointer;font-family:inherit;text-align:left}
.sw-btn:hover{background:var(--s3)}
.sw-label{flex:1;min-width:0;overflow:hidden}
.sw-name{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-sub{font-size:10.5px;color:var(--tx-faint)}
.sw-chevron{color:var(--tx-faint);flex-shrink:0}
.auxo-sb.collapsed .sb-switcher .sw-label,.auxo-sb.collapsed .sb-switcher .sw-chevron{display:none}
.auxo-sb.collapsed .sw-btn{justify-content:center;padding:8px}
.sw-menu{position:absolute;left:10px;right:10px;top:calc(100% - 4px);z-index:50;background:var(--s2);border:1px solid var(--line-2);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:6px;display:none;max-height:280px;overflow:auto}
.sw-menu.open{display:block}
.auxo-sb.collapsed .sw-menu{left:62px;right:auto;width:220px;top:6px}
.sw-item{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:var(--r-sm);cursor:pointer;font-size:13px;color:var(--tx);border:none;background:none;width:100%;text-align:left;font-family:inherit}
.sw-item:hover{background:var(--s3)}
.sw-item.back{color:var(--tx-mut);border-top:1px solid var(--line);margin-top:4px;padding-top:10px;border-radius:0}

.sb-nav{flex:1;overflow-y:auto;padding:4px 10px;display:flex;flex-direction:column;gap:2px}
.sb-nav-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--r-md);color:var(--tx-mut);cursor:pointer;font-size:13.5px;font-weight:500;white-space:nowrap;border:1px solid transparent;font-family:inherit;background:none;text-decoration:none;width:100%;text-align:left}
.sb-nav-item svg{flex-shrink:0;width:18px;height:18px}
.sb-nav-item:hover{background:var(--s3);color:var(--tx)}
.sb-nav-item.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-line)}
.auxo-sb.collapsed .sb-nav-item{justify-content:center;padding:10px}
.auxo-sb.collapsed .sb-nav-item .lbl{display:none}
.sb-reach{margin:10px 10px 4px;padding-top:10px;border-top:1px solid var(--line)}
.sb-reach .sb-nav-item{color:var(--tx-faint)}

.sb-foot{padding:10px;border-top:1px solid var(--line);position:relative;display:flex;align-items:center;gap:6px}
.av-btn{flex:1;min-width:0;display:flex;align-items:center;gap:9px;padding:7px;border-radius:var(--r-md);cursor:pointer;border:1px solid transparent;background:none;font-family:inherit}
.av-btn:hover{background:var(--s3)}
.av-label{flex:1;min-width:0;text-align:left}
.av-name{font-size:12.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auxo-sb.collapsed .av-btn .av-label{display:none}
.auxo-sb.collapsed .av-btn{justify-content:center}
.sb-foot .menu{position:absolute;left:10px;right:10px;bottom:calc(100% + 6px);top:auto;width:auto}
.auxo-sb.collapsed .sb-foot .menu{left:62px;right:auto;width:240px}
.auxo-sb.collapsed .sb-foot{flex-direction:column}
.sb-foot .sb-collapse-btn{flex-shrink:0}

.auxo-main{flex:1;min-width:0;display:flex;flex-direction:column}
/* padding-right:140px reserva espaço pro #topbar-clock (position:fixed, canto
   sup. direito, ~110px) em QUALQUER barra que tenha .ws-actions colado na
   direita — não só a #auxo-topbar da Prospecção (achado 2026-08-11: work.html
   e as .tab-topbar novas tinham o mesmo esbarrão, só a Prospecção tinha sido
   corrigida em 2026-07-28b). */
.auxo-topbar{height:52px;flex-shrink:0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;padding:0 140px 0 24px;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(14px);position:sticky;top:0;z-index:30}
.auxo-topbar .ws-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}

/* topbar da Prospecção acumula os filtros do kanban (só essa instância — id,
   não afeta as demais telas que reusam .auxo-topbar) — só precisa ajustar
   altura/quebra de linha, o padding-right já vem da regra de classe acima. */
#auxo-topbar{height:auto;min-height:52px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}

.ws-body{flex:1;padding-top:32px;padding-bottom:64px}
.tab-pane{display:none;animation:fade .25s var(--ease)}
.tab-pane.active{display:block}

.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.section-title{font-family:var(--font-display);font-size:23px;font-weight:600}
.section-sub{font-size:13.5px;color:var(--tx-mut);margin-top:3px}

/* Barra de topo por aba (2026-08-11) — mesmo visual/comportamento do
   #auxo-topbar (sticky, blur, borda) que já era usado só pela Prospecção;
   agora toda aba do workspace usa a mesma barra, com título + ações
   próprias. Vive fora de .ws-content-inner (sem padding lateral duplicado)
   como primeiro filho de cada #tab-X, mesma margem negativa que o
   .auxo-topbar original tinha ao ficar fora de .ws-content. */
.tab-topbar{height:52px;flex-shrink:0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;margin:-26px -32px 20px -32px;padding:0 140px 0 32px;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20;flex-wrap:nowrap}
.tab-topbar .ctx-title{font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--tx);white-space:nowrap;flex:0 0 auto}
.tab-topbar .ctx-sub{font-size:12px;color:var(--tx-mut);white-space:nowrap;flex:0 0 auto}
.tab-topbar .ws-actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}

/* ── KANBAN ACTIONS ── */
.kanban-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.kanban-actions-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.segmented{display:flex;background:var(--s1);border:1px solid var(--line);border-radius:var(--r-sm);padding:3px}
.seg{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:none;color:var(--tx-mut);font-family:var(--font-text);font-size:12.5px;font-weight:600;border-radius:6px;cursor:pointer;transition:all var(--t-fast)}
.seg .ico{width:15px;height:15px}
.seg.active{background:var(--s3);color:var(--tx)}
.chips{display:flex;gap:7px;flex-wrap:wrap}
.chip{padding:7px 13px;border-radius:var(--r-full);border:1px solid var(--line);background:var(--s1);color:var(--tx-mut);font-size:12.5px;font-weight:600;cursor:pointer;transition:all var(--t-fast)}
.chip:hover{border-color:var(--line-2);color:var(--tx)}
.chip.active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}
.chip.active.warn{background:var(--accent);border-color:var(--accent);color:var(--primary-ink)}
.chip-divider{width:1px;height:20px;background:var(--line);align-self:center;flex-shrink:0}
.chip-col{opacity:.45}
.chip-col.active{background:transparent;border-color:var(--line-2);color:var(--tx);opacity:1}

/* ── KANBAN BOARD ── */
.kanban-scroll{overflow-x:auto;padding-bottom:16px;margin:0 -32px;padding-left:32px;padding-right:32px}
.kanban{display:flex;gap:14px;min-width:max-content;align-items:flex-start}
.kcol{width:256px;flex:0 0 auto;display:flex;flex-direction:column}
.kcol-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 12px}
.kcol-day{display:flex;align-items:center;gap:9px}
.kcol-num{font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--tx)}
.kcol-ch{display:flex;gap:5px;color:var(--tx-faint)}
.kcol-ch .ico{width:14px;height:14px}
.kcol-cnt{font-family:var(--font-display);font-size:12px;font-weight:600;min-width:22px;height:22px;padding:0 7px;border-radius:var(--r-full);background:var(--s3);color:var(--tx-mut);display:flex;align-items:center;justify-content:center}
.kcol-body{display:flex;flex-direction:column;gap:9px;padding:10px;border-radius:var(--r-md);background:var(--s1);border:1px solid var(--line);min-height:120px;flex:1}
.kcol.done .kcol-body{background:transparent;border-style:dashed}

.kcard{background:var(--s2);border:1px solid var(--line);border-radius:var(--r-md);padding:13px;cursor:pointer;transition:all var(--t-fast);position:relative}
.kcard:hover{border-color:var(--line-2);background:var(--s3);transform:translateY(-1px)}
.kcard.today{border-color:var(--primary-line);box-shadow:0 0 0 1px var(--primary-line)}
.kcard.today::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:99px;background:var(--accent)}
.kcard.respondeu{background:rgba(251,191,36,.13);border-color:rgba(251,191,36,.5);box-shadow:0 0 0 1px rgba(251,191,36,.3),0 4px 16px rgba(251,191,36,.08)}
.kcard.respondeu:hover{background:rgba(251,191,36,.2);border-color:rgba(251,191,36,.7)}
.kcard.respondeu::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:99px;background:#fbbf24}
.kcard.prio{border-color:rgba(249,115,22,.4);background:rgba(249,115,22,.04)}
.kcard.prio:hover{background:rgba(249,115,22,.08);border-color:rgba(249,115,22,.6)}
.kcard.prio::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:99px;background:var(--orange)}
.kcard.vencido{border-color:rgba(239,68,68,.4);background:rgba(239,68,68,.04)}
.kcard.vencido:hover{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.6)}
.kcard.vencido::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:99px;background:var(--red,#ef4444)}
.kcard-reag-bar{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#f59e0b;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.25);border-radius:4px;padding:2px 7px;margin-bottom:8px}
.kcard-reag-bar svg{width:11px;height:11px;stroke:#f59e0b;stroke-width:2.2;flex-shrink:0}
.kcard-class-bar{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;letter-spacing:.04em;border-radius:4px;padding:2px 7px;margin-bottom:8px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kcard-class-bar.positiva{color:#22c55e;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.3)}
.kcard-class-bar.negativa{color:#ef4444;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.3)}
.kcard-class-bar.neutra{color:var(--tx-mut);background:rgba(148,163,184,.1);border:1px solid rgba(148,163,184,.25)}
.kcard-class-bar.automatica{color:#60a5fa;background:rgba(96,165,250,.1);border:1px solid rgba(96,165,250,.25)}
.ld-reagendado-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#f59e0b;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.3);border-radius:6px;padding:1px 6px;margin-left:6px;vertical-align:middle}
.ld-reagendado-badge svg{width:11px;height:11px;stroke:#f59e0b;stroke-width:2.2}
.tag-prio{color:var(--orange)}
.wpp-ack{font-size:11px;font-weight:700;letter-spacing:-.5px;line-height:1}
.ack-sent{color:var(--tx-faint)}
.ack-delivered{color:var(--tx-mut)}
.ack-read{color:#38bdf8}
.wpp-ok{color:var(--c-wpp)}
.wpp-fail{color:var(--red,#ef4444)}
.tag-emoji.wpp-fail{background:rgba(239,68,68,.12);color:var(--red,#ef4444)}
.tag-emoji.wpp-fail .ico path,.wpp-fail .ico path{fill:currentColor;stroke:none}
.obtn.sel-prio{background:rgba(249,115,22,.12);border-color:rgba(249,115,22,.45);color:var(--orange)}
.b-agendamento{background:rgba(251,191,36,.15);color:#fbbf24;border:1px solid rgba(251,191,36,.3)} .b-agendamento .dot{background:#fbbf24}
.kcard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:9px}
.kcard-name{font-size:13.5px;font-weight:700;line-height:1.25}
.kcard-co{font-size:12px;color:var(--tx-mut);margin-top:1px}
.kcard-contact{font-size:11px;color:var(--tx-mut);margin-top:3px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.kcard-contact:hover{color:var(--tx);text-decoration:underline}
.kcard-next{font-size:11px;color:var(--tx);margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kcard-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px}
.kcard-tags{display:flex;gap:5px}
.today-pip{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.today-pip .ico{width:12px;height:12px;stroke-width:2.2}
.kempty{text-align:center;color:var(--tx-faint);font-size:12px;padding:22px 0}

/* ── BADGES ── */
.badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.02em;padding:4px 9px;border-radius:var(--r-full)}
.badge .dot{width:6px;height:6px;border-radius:50%;flex:0 0 auto}
.b-pending{background:var(--blue-soft);color:var(--blue)} .b-pending .dot{background:var(--blue)}
.b-today{background:var(--accent-soft);color:var(--accent)} .b-today .dot{background:var(--accent)}
.b-scheduled{background:var(--orange-soft);color:var(--orange)} .b-scheduled .dot{background:var(--orange)}
.b-done{background:var(--green-soft);color:var(--green)} .b-done .dot{background:var(--green)}
.b-noshow{background:var(--purple-soft);color:var(--purple)} .b-noshow .dot{background:var(--purple)}
.b-won{background:var(--green-soft);color:var(--green)} .b-won .dot{background:var(--green)}
.b-lost{background:var(--red-soft);color:var(--red)} .b-lost .dot{background:var(--red)}
.b-finished{background:var(--s3);color:var(--tx-mut)} .b-finished .dot{background:var(--tx-mut)}
.b-executar{background:var(--accent-soft);color:var(--accent)} .b-executar .dot{background:var(--accent)}
.b-aguardar{background:var(--blue-soft);color:var(--blue)} .b-aguardar .dot{background:var(--blue)}
.b-vencido{background:var(--red-soft);color:var(--red)} .b-vencido .dot{background:var(--red)}
.b-remarketing{background:var(--orange-soft);color:var(--orange)} .b-remarketing .dot{background:var(--orange)}
.tag-emoji{display:inline-flex;width:18px;height:18px;border-radius:5px;background:var(--s3);align-items:center;justify-content:center;color:var(--tx-mut)}
.tag-emoji .ico{width:11px;height:11px}

/* ════════════════════════════════════════════════════════════
   DASHBOARD
════════════════════════════════════════════════════════════ */
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.kpi{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;box-shadow:var(--shadow)}
.kpi-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.kpi-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-mut)}
.kpi-ico{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center}
.kpi-ico .ico{width:16px;height:16px}
.kpi-val{font-family:var(--font-display);font-size:38px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}
.kpi-sub{font-size:12px;color:var(--tx-mut);margin-top:6px}
.kpi.i-blue .kpi-ico{background:var(--blue-soft);color:var(--blue)} .kpi.i-blue .kpi-val{color:var(--blue)}
.kpi.i-accent .kpi-ico{background:var(--accent-soft);color:var(--accent)} .kpi.i-accent .kpi-val{color:var(--accent)}
.kpi.i-green .kpi-ico{background:var(--green-soft);color:var(--green)} .kpi.i-green .kpi-val{color:var(--green)}
.kpi.i-purple .kpi-ico{background:var(--purple-soft);color:var(--purple)} .kpi.i-purple .kpi-val{color:var(--purple)}

.panel{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;margin-bottom:18px;box-shadow:var(--shadow)}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}
.panel-title{font-size:15px;font-weight:700;margin:0}
.legend{display:flex;gap:18px}
.legend .it{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--tx-mut)}
.legend .ln{width:14px;height:3px;border-radius:99px}
.chart-wrap{position:relative;height:280px}

.goal-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.goal-pct{font-family:var(--font-display);font-size:30px;font-weight:600;color:var(--accent)}
.bar{height:8px;border-radius:99px;background:var(--s3);overflow:hidden}
.bar-fill{height:100%;border-radius:99px;background:var(--primary);transition:width .6s var(--ease)}

/* ════════════════════════════════════════════════════════════
   MODAL
════════════════════════════════════════════════════════════ */
.overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity var(--t)}
.overlay.open{opacity:1;pointer-events:auto}
.modal{background:var(--s1);border:1px solid var(--line-2);border-radius:var(--r-xl);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-pop);transform:translateY(16px) scale(.98);transition:transform var(--t)}
.overlay.open .modal{transform:none}
.modal-lg{max-width:680px}
.modal-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;position:sticky;top:0;z-index:10;background:var(--s1);border-bottom:1px solid var(--line);margin-bottom:4px}
.modal-title{font-family:var(--font-display);font-size:19px;font-weight:600}
.modal-body{padding:20px 26px 26px;margin-top:0}
.modal-foot{display:flex;gap:10px;justify-content:flex-end;padding-top:20px;margin-top:8px;border-top:1px solid var(--line)}
.x{width:34px;height:34px;border-radius:var(--r-full);border:1px solid var(--line);background:var(--s3);color:var(--tx-mut);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--t-fast);flex:0 0 auto;font-size:15px}
.x:hover{background:var(--red-soft);color:var(--red);border-color:transparent;transform:scale(1.08)}

/* ── LEAD MODAL ── */
.lead-hero{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--r-md);background:var(--s2);border:1px solid var(--line);margin-bottom:22px}
.lead-hero .nm{font-size:16px;font-weight:700}
.lead-hero .mt{font-size:12.5px;color:var(--tx-mut);margin-top:2px}
.lead-hero .ow{font-size:11.5px;color:var(--tx-faint);margin-top:4px;display:flex;align-items:center;gap:5px}
.ml-owner-sel{background-color:transparent;background-position:right 2px center;border:none;color:var(--tx-faint);font-size:11.5px;font-family:inherit;cursor:pointer;padding:0 18px 0 0;outline:none;max-width:160px}
.ml-owner-sel:hover{color:var(--tx)}
.lead-day{position:relative;margin-left:auto;text-align:center;flex:0 0 auto;padding-left:16px;border-left:1px solid var(--line)}
.lead-day .n{font-family:var(--font-display);font-size:30px;font-weight:600;color:var(--accent);line-height:1}
.lead-day .l{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--tx-mut);margin-top:3px}

/* Lápis de edição inline (hero: nome/dia; campos: pessoa/dados adicionais) — sempre no
   DOM, só fica visível no hover, elimina a necessidade de popup separado de edição. */
.ml-hero-edit-btn{width:20px;height:20px;border-radius:6px;border:1px solid var(--line);background:var(--s2);color:var(--tx-faint);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity var(--t-fast),color var(--t-fast);flex:0 0 auto}
.ml-hero-edit-btn .ico{width:11px;height:11px}
.ml-name-wrap:hover .ml-hero-edit-btn,.lead-day:hover .ml-hero-edit-btn{opacity:1}
.ml-hero-edit-btn:hover{color:var(--tx);border-color:var(--line-2)}
.ml-day-edit-btn{position:absolute;top:-6px;right:-6px}
#ml-day-wrap.editing .ml-day-edit-btn,.ml-name-wrap.editing .ml-hero-edit-btn{display:none}
#ml-day-wrap.editing{padding-left:0;border-left:none}

/* ── LEAD MODAL — painel deslizante da direita (estilo Pipedrive), 2 colunas ── */
#modal-lead.overlay{justify-content:flex-end;padding:0 40px 0 0}
#modal-lead .modal{max-width:980px;width:100%;height:100vh;max-height:100vh;border-radius:0;border-top:none;border-right:none;border-bottom:none;transform:translateX(32px);display:flex;flex-direction:column;overflow:hidden}
#modal-lead .modal-body{flex:1;min-height:0;display:flex;padding:0;margin:0;gap:0;overflow:hidden}
#modal-lead .ml-col-left{width:400px;flex:0 0 400px;overflow-y:auto;padding:20px 24px 28px;border-right:1px solid var(--line)}
#modal-lead .ml-col-right{flex:1;min-width:0;overflow-y:auto;padding:20px 32px 28px 24px;display:flex;flex-direction:column}
#modal-lead .ml-col-right .history-list{max-height:none;flex:1}
#modal-lead .modal-foot{border-top:1px solid var(--line)}
@media(max-width:900px){
  #modal-lead .modal{max-width:100%}
  #modal-lead .modal-body{flex-direction:column;overflow-y:auto}
  #modal-lead .ml-col-left{width:100%;flex:none;border-right:none;border-bottom:1px solid var(--line);overflow-y:visible}
  #modal-lead .ml-col-right{overflow-y:visible}
}

/* ── ORG MODAL — mesmo painel deslizante do Lead (leitura + edição inline) ── */
#modal-target-org.overlay{justify-content:flex-end;padding:0 40px 0 0}
#modal-target-org .modal{max-width:900px;width:100%;height:100vh;max-height:100vh;border-radius:0;border-top:none;border-right:none;border-bottom:none;transform:translateX(32px);display:flex;flex-direction:column;overflow:hidden}
#modal-target-org .modal-body{flex:1;min-height:0;display:flex;padding:0;margin:0;gap:0;overflow:hidden}
#modal-target-org .to-col-left{width:400px;flex:0 0 400px;overflow-y:auto;padding:20px 24px 28px;border-right:1px solid var(--line)}
#modal-target-org .to-col-right{flex:1;min-width:0;overflow-y:auto;padding:20px 32px 28px 24px}
#modal-target-org .modal-foot{border-top:1px solid var(--line)}
@media(max-width:900px){
  #modal-target-org .modal{max-width:100%}
  #modal-target-org .modal-body{flex-direction:column;overflow-y:auto}
  #modal-target-org .to-col-left{width:100%;flex:none;border-right:none;border-bottom:1px solid var(--line);overflow-y:visible}
  #modal-target-org .to-col-right{overflow-y:visible}
}

/* Cards de campo (Detalhes/Pessoa/Organização) — ícone + valor + legenda, estilo Pipedrive */
.ml-card{margin-bottom:22px}
.ml-cf-divider{border-top:1px solid var(--line);margin:4px 0 20px}
.ml-card-empty{font-size:12px;color:var(--tx-faint);padding:2px 0}
.ml-card-empty a{color:var(--accent)}
.ml-person-name{font-size:14px;font-weight:800;margin-bottom:6px}
.ml-field-row{display:flex;align-items:flex-start;gap:11px;padding:7px 0}
.ml-field-row .ml-field-ico{color:var(--tx-faint);margin-top:2px;flex:0 0 auto}
.ml-field-main{min-width:0}
.ml-field-val{font-size:13px;color:var(--tx);font-weight:600;word-break:break-word;line-height:1.4}
.ml-field-val.empty{color:var(--tx-faint);font-weight:400}
.ml-field-val a{color:var(--accent);text-decoration:none}
.ml-field-val a:hover{text-decoration:underline}
.ml-field-cap{font-size:10.5px;color:var(--tx-faint);margin-top:1px}
.ml-field-row.ml-editable{position:relative;padding-right:26px}
.ml-field-row .ml-field-edit-btn{position:absolute;right:0;top:6px;width:22px;height:22px;border-radius:6px;border:1px solid var(--line);background:var(--s2);color:var(--tx-faint);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity var(--t-fast),color var(--t-fast);flex:0 0 auto}
.ml-field-row.ml-editable:hover .ml-field-edit-btn{opacity:1}
.ml-field-edit-btn:hover{color:var(--tx);border-color:var(--line-2)}
.ml-field-edit-btn .ico{width:12px;height:12px}
.ml-field-row.editing .ml-field-edit-btn{display:none}
.ml-field-input{width:100%;background-color:var(--s1);border:1px solid var(--accent);border-radius:6px;color:var(--tx);font-size:13px;font-weight:600;padding:4px 7px;font-family:inherit;outline:none}

/* Picker de organização com 2 colunas (Empresa/nome fantasia | Organização) */
.to-picker-list{max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;margin-top:8px}
.to-picker-head{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:6px 10px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tx-faint);background:var(--s2);position:sticky;top:0}
.to-picker-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px;font-size:12.5px;cursor:pointer;border-top:1px solid var(--line)}
.to-picker-row:hover{background:var(--s2)}
.to-picker-row span:first-child{font-weight:600;color:var(--tx)}
.to-picker-row span:last-child{color:var(--tx-mut)}
select.ml-field-input{padding-right:30px;background-position:right 8px center}
#modal-lead .ml-field-row .ow{font-size:13px;color:var(--tx);margin-top:0;display:flex;align-items:center;gap:5px}
#modal-lead .ml-field-row .ml-owner-sel{font-size:13px;font-weight:600;color:var(--tx);max-width:220px}

/* Coluna direita (atividade) — versão compacta dos mesmos controles do Kanban/Prospecção,
   pra não parecer o mesmo bloco grande de botões dentro do painel de cadastro. */
#modal-lead .ml-col-right .actions{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}
#modal-lead .ml-col-right .action{padding:8px 10px;gap:10px;background:transparent;border-color:transparent;border-radius:var(--r-sm)}
#modal-lead .ml-col-right .action:hover{transform:none;background:var(--s2);border-color:var(--line)}
#modal-lead .ml-col-right .action .ai{width:26px;height:26px;border-radius:8px}
#modal-lead .ml-col-right .action .ai .ico{width:14px;height:14px}
#modal-lead .ml-col-right .action .al{font-size:12.5px}
#modal-lead .ml-col-right .action .as{font-size:10.5px}
#modal-lead .ml-col-right .outcome{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}
#modal-lead .ml-col-right .obtn{flex:1 1 auto;padding:7px 12px;font-size:12px;border-radius:var(--r-full);background:transparent}
#modal-lead .ml-col-right .obtn .ico{width:14px;height:14px}

.sec-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-mut);margin:0 0 11px;display:flex;align-items:center;gap:7px}
.actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}
.action{display:flex;align-items:center;gap:12px;text-align:left;background:var(--s2);border:1px solid var(--line);border-radius:var(--r-md);padding:13px 14px;cursor:pointer;transition:all var(--t-fast);font-family:var(--font-text)}
.action:hover{transform:translateY(-1px);border-color:var(--line-2);background:var(--s3)}
.action .ai{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.action .ai .ico{width:18px;height:18px}
.action>span:last-child{display:flex;flex-direction:column;min-width:0}
.action .al{font-size:13px;font-weight:700;color:var(--tx);display:block}
.action .as{font-size:11.5px;color:var(--tx-mut);margin-top:1px;display:block}
.action.wpp .ai{background:rgba(37,211,102,.14);color:var(--c-wpp)} .action.wpp:hover{border-color:rgba(37,211,102,.4)}
.action.mail .ai{background:var(--purple-soft);color:var(--c-mail)} .action.mail:hover{border-color:var(--purple-soft)}
.action.email .ai{background:var(--purple-soft);color:var(--c-mail)} .action.email:hover{border-color:var(--purple-soft)}
.action.li .ai{background:rgba(59,130,246,.14);color:var(--c-li)} .action.li:hover{border-color:rgba(59,130,246,.4)}
.action.linkedin .ai{background:rgba(59,130,246,.14);color:var(--c-li)} .action.linkedin:hover{border-color:rgba(59,130,246,.4)}
.action.call .ai{background:var(--accent-soft);color:var(--c-call)} .action.call:hover{border-color:var(--primary-line)}
.action.call-done-action .ai{background:rgba(52,211,153,.12);color:var(--green)} .action.call-done-action:hover{border-color:rgba(52,211,153,.4)} .action.call-done-action.done{opacity:.6;cursor:default;pointer-events:none}

.outcome{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.obtn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--s2);color:var(--tx-mut);font-family:var(--font-text);font-size:13px;font-weight:700;cursor:pointer;transition:all var(--t-fast)}
.obtn:hover{color:var(--tx);border-color:var(--line-2)}
.obtn.sel-won{background:var(--green-soft);border-color:var(--green);color:var(--green)}
.obtn.sel-lost{background:var(--red-soft);border-color:var(--red);color:var(--red)}
.obtn.sel-tag{background:var(--accent-soft);border-color:var(--primary-line);color:var(--accent)}

.history{display:flex;flex-direction:column;gap:0;position:relative;padding-left:8px}
.hitem{display:flex;gap:13px;padding:10px 0;position:relative}
.hitem:not(:last-child)::before{content:'';position:absolute;left:13px;top:30px;bottom:-4px;width:1.5px;background:var(--line)}
.hdot{width:28px;height:28px;border-radius:var(--r-full);background:var(--s2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--tx-mut);flex:0 0 auto;z-index:1}
.hdot .ico{width:14px;height:14px}
.hbody{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px}
.htext{font-size:13px;flex:1 1 160px;min-width:0;word-break:break-word}
.htime{font-size:11px;color:var(--tx-faint);white-space:nowrap;flex:0 0 auto}

/* ── USER MENU ── */
.user-wrap{position:relative}
.user .chev{color:var(--tx-faint);width:15px;height:15px;transition:transform var(--t-fast)}
.user-wrap.open .chev{transform:rotate(180deg)}
.menu{position:absolute;top:calc(100% + 10px);right:0;z-index:60;width:268px;background:var(--s1);border:1px solid var(--line-2);border-radius:var(--r-lg);
  box-shadow:var(--shadow-pop);padding:8px;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:all var(--t-fast);transform-origin:top right}
.user-wrap.open .menu{opacity:1;transform:none;pointer-events:auto}
.user-chip-sm.open .menu{opacity:1;transform:none;pointer-events:auto}
.user-chip-sm.open + .menu{opacity:1;transform:none;pointer-events:auto}
.menu-head{display:flex;align-items:center;gap:11px;padding:10px 10px 12px}
.menu-head .mh-name{font-size:13.5px;font-weight:700;line-height:1.2}
.menu-head .mh-mail{font-size:11.5px;color:var(--tx-mut);margin-top:2px}
.menu-sec{padding:8px 10px}
.menu-label{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-faint);margin-bottom:9px}
.theme-seg{width:100%}
.theme-seg .seg{flex:1;justify-content:center}
.menu-divider{height:1px;background:var(--line);margin:6px 4px}
.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:none;background:none;border-radius:var(--r-sm);
  color:var(--tx-mut);font-family:var(--font-text);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--t-fast)}
.menu-item:hover{background:var(--s2);color:var(--tx)}
.menu-item .ico{width:16px;height:16px}

/* ── TOAST ── */
.toast{position:fixed;bottom:84px;left:50%;transform:translate(-50%,20px);z-index:400;background:var(--s3);border:1px solid var(--line-2);
  border-radius:var(--r-full);padding:11px 20px;font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:all var(--t);box-shadow:var(--shadow-pop);display:flex;align-items:center;gap:9px}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast .ico{width:16px;height:16px;color:var(--green)}

/* production toast (bottom-right, id="toast") */
#toast{
  position:fixed;bottom:24px;right:24px;
  background:var(--s3);border:1px solid var(--line-2);
  border-radius:var(--r-full);padding:11px 20px;
  font-size:13px;font-weight:600;z-index:9999;
  transform:translateY(60px) scale(.96);opacity:0;
  transition:all .22s var(--ease);max-width:320px;
  display:flex;align-items:center;gap:9px;
  box-shadow:var(--shadow-pop);
}
#toast.show{transform:translateY(0) scale(1);opacity:1}
#toast.success{border-color:rgba(52,211,153,.4)}
#toast.error{border-color:rgba(248,113,113,.4)}
#toast.warn{border-color:rgba(251,191,36,.4)}
#toast.error .ico{color:var(--red)}
#toast.warn .ico{color:var(--orange)}
#toast.warning{border-color:rgba(251,191,36,.4)}

/* ── LEADS LIST ── */
.leads-list{display:flex;flex-direction:column;gap:8px}
.lead-row{display:flex;align-items:center;gap:14px;padding:13px 16px;background:var(--s1);border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;transition:all var(--t-fast)}
.lead-row:hover{border-color:var(--line-2);background:var(--s2)}
.lr-main{flex:1;min-width:0}
.lr-name{font-size:13.5px;font-weight:700}
.lr-co{font-size:12px;color:var(--tx-mut);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lr-day{font-size:12px;color:var(--tx-mut);min-width:54px;text-align:right}
.lr-owner-tag{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--tx-mut);background:var(--s2);border:1px solid var(--line);border-radius:20px;padding:2px 8px;white-space:nowrap;flex-shrink:0}
.lr-owner-tag.no-owner{color:var(--tx-faint);border-style:dashed}
.lr-owner-tag .ico{width:11px;height:11px;opacity:.6}
.lt-owner-sel{font-size:11px;color:var(--tx-mut);background-color:var(--s2);background-position:right 9px center;border:1px solid var(--line);border-radius:20px;padding:3px 26px 3px 10px;font-family:inherit;cursor:pointer;max-width:100%}
.lt-owner-sel:hover{color:var(--tx);border-color:var(--line-2)}
.lead-row .btn .ico{width:14px;height:14px}

/* ── LEADS TABLE (v3.0 — planilha estilo Pipedrive/HubSpot) ── */
.leads-table-wrap{border:1px solid var(--line);border-radius:var(--r-md);overflow:auto;background:var(--s1)}
.leads-table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}
.leads-table thead th{position:sticky;top:0;z-index:1;background:var(--s2);color:var(--tx-faint);font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:10px 14px;border-bottom:1px solid var(--line-2)}
.leads-table th.lt-action{width:1%}
.leads-table tbody tr.lt-row{cursor:pointer;transition:background var(--t-fast)}
.leads-table tbody tr.lt-row:not(:last-child) td{border-bottom:1px solid var(--line)}
.leads-table tbody tr.lt-row:hover{background:var(--s2)}
.leads-table td{padding:9px 14px;vertical-align:middle;color:var(--tx)}
.leads-table td.lt-mut{color:var(--tx-mut);overflow:hidden;text-overflow:ellipsis;max-width:220px}
.leads-table td.lt-mut .lt-faint{color:var(--tx-faint)}
.leads-table td.lt-action{text-align:right}
.lt-name-cell{display:flex;align-items:center;gap:8px;min-width:0}
.lt-nome{font-weight:700;overflow:hidden;text-overflow:ellipsis}
.leads-table.lt-fixed{table-layout:fixed}
.leads-table.lt-fixed td{overflow:hidden;text-overflow:ellipsis}
.leads-table.lt-fixed th{overflow:hidden;text-overflow:ellipsis}
.leads-table.lt-fixed td.lt-action{overflow:visible}
.lt-resize{position:absolute;top:0;right:0;width:7px;height:100%;cursor:col-resize;z-index:2}
.lt-resize:hover,.lt-resize.lt-resizing{background:var(--primary-line)}
.leads-table th.lt-check,.leads-table td.lt-check{width:36px;padding-left:14px;padding-right:0}
.leads-bulk-bar{display:flex;align-items:center;gap:12px;background:var(--primary-soft);border:1px solid var(--primary-line);border-radius:var(--r-md);padding:9px 14px;margin-bottom:12px;font-size:12.5px;font-weight:600;color:var(--tx)}
.leads-bulk-bar .lt-owner-sel{background-color:var(--s1)}

/* ── CONFIG ── */
.cfg-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}

/* queue info bar */
.queue-info-bar{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--tx-mut)}
#queue-info{display:none;font-size:13px;margin-bottom:16px;padding:13px 16px;
  background:var(--s1);border:1px solid var(--line);border-radius:var(--r-md);
  display:flex;align-items:center;justify-content:space-between;gap:12px}

@media(max-width:920px){
  .kpi-grid{grid-template-columns:1fr 1fr}
  .wrap{padding:0 18px}
  .frow,.cfg-grid{grid-template-columns:1fr}
}

/* ════════════════════════════════════════════════════════════
   PRODUCTION-SPECIFIC STYLES
   (components not in the redesign reference)
════════════════════════════════════════════════════════════ */

/* ── LOGIN SCREEN ── */
.login-screen{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:1000}
.login-card{
  background:var(--s1);border:1px solid var(--line-2);
  border-radius:var(--r-xl);padding:48px 48px 40px;
  display:flex;flex-direction:column;align-items:center;
  max-width:400px;width:100%;box-shadow:var(--shadow-pop);
}
.btn-google{
  display:inline-flex;align-items:center;gap:12px;
  background:var(--s2);border:1px solid var(--line-2);border-radius:var(--r-md);
  padding:13px 24px;color:var(--tx);font-family:var(--font-text);
  font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;
  transition:all var(--t-fast);
}
.btn-google:hover{border-color:var(--blue);background:var(--blue-soft)}

.login-divider{display:flex;align-items:center;gap:10px;width:100%;margin:18px 0 14px;color:var(--tx-faint);font-size:11px}
.login-divider::before,.login-divider::after{content:'';flex:1;height:1px;background:var(--line)}
.login-input{width:100%;padding:11px 14px;background:var(--s2);border:1px solid var(--line-2);border-radius:var(--r-md);color:var(--tx);font-family:var(--font-text);font-size:13px;outline:none;margin-bottom:8px;transition:border-color var(--t-fast);box-sizing:border-box}
.login-input:focus{border-color:var(--primary)}
.login-error{font-size:12px;color:var(--red);background:var(--red-soft);border:1px solid rgba(248,113,113,.25);border-radius:var(--r-sm);padding:8px 12px;margin-bottom:8px;width:100%;box-sizing:border-box}
.login-success{font-size:12px;color:var(--green);background:var(--green-soft);border:1px solid rgba(52,211,153,.3);border-radius:var(--r-sm);padding:8px 12px;margin-bottom:8px;width:100%;box-sizing:border-box}
.login-warn{font-size:12px;color:var(--tx);background:var(--primary-soft);border:1px solid var(--primary-line);border-radius:var(--r-sm);padding:8px 12px;margin-bottom:16px;width:100%;box-sizing:border-box;text-align:center}
.login-forgot{background:none;border:none;color:var(--tx-faint);font-family:var(--font-text);font-size:11px;cursor:pointer;margin-top:8px;padding:4px 0;transition:color var(--t-fast)}
.login-forgot:hover{color:var(--tx-mut)}
#login-local-form,#login-forgot-form{display:flex;flex-direction:column;align-items:stretch;width:100%}

/* ── Conteúdo markdown renderizado (Termos de Uso no gate, #141) ──
   Mesmas classes .doc-render/.doc-table usadas em Configurações → Manual
   (user-settings.css) — versão enxuta pra caber no login-card. */
.doc-render{font-size:13px;line-height:1.6;color:var(--tx)}
.doc-render h1{font-size:17px;margin:24px 0 10px;padding-top:18px;border-top:1px solid var(--line)}
.doc-render h1:first-child{margin-top:0;padding-top:0;border-top:none}
.doc-render h2{font-size:14px;margin:20px 0 8px;padding-top:12px;border-top:1px solid var(--line)}
.doc-render h2:first-child{margin-top:0;padding-top:0;border-top:none}
.doc-render h3{font-size:12.5px;margin:14px 0 5px;color:var(--tx-mut);text-transform:uppercase;letter-spacing:.04em}
.doc-render p{margin:0 0 10px}
.doc-render hr{display:none}
.doc-render ul,.doc-render ol{margin:0 0 10px;padding-left:20px}
.doc-render li{margin-bottom:4px}
.doc-render strong{font-weight:700;color:var(--tx)}
.doc-render code{font-family:var(--font-mono,monospace);font-size:11.5px;background:var(--s3);border-radius:4px;padding:1px 5px}
.doc-render a.doc-link,.doc-render a.doc-anchor-link{color:var(--accent);text-decoration:underline;cursor:pointer}
.doc-table{width:100%;border-collapse:collapse;font-size:12px;margin-bottom:10px}
.doc-table th{text-align:left;padding:6px 10px;background:var(--s2);color:var(--tx-faint);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line-2)}
.doc-table td{padding:6px 10px;border-bottom:1px solid var(--line)}

/* ── DISPATCH PANEL ── */
.dispatch-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:100;opacity:0;pointer-events:none;transition:opacity var(--t)}
.dispatch-overlay.open{opacity:1;pointer-events:all}
.dispatch-panel{
  position:fixed;left:-420px;top:0;height:100vh;width:400px;
  background:var(--s1);border-right:1px solid var(--line-2);
  z-index:101;transition:left .3s var(--ease);display:flex;flex-direction:column;overflow:hidden;
}
.dispatch-panel.open{left:0}
.dp-header{padding:20px 20px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.dp-title{font-family:var(--font-display);font-size:16px;font-weight:700}
.dp-close{
  background:var(--s3);border:1px solid var(--line);color:var(--tx-mut);
  width:28px;height:28px;border-radius:var(--r-full);cursor:pointer;font-size:13px;
  display:flex;align-items:center;justify-content:center;transition:all var(--t-fast);
}
.dp-close:hover{background:var(--red-soft);color:var(--red);border-color:transparent}
.dp-stop{background:var(--red-soft);border:1px solid var(--red);color:var(--red);padding:4px 12px;border-radius:var(--r-full);cursor:pointer;font-size:12px;font-weight:600;transition:all var(--t-fast)}
.dp-stop:hover{background:var(--red);color:#fff}
.dp-meta{padding:10px 20px;font-size:12px;color:var(--tx-mut);border-bottom:1px solid var(--line);flex-shrink:0}
.dp-body{flex:1;overflow-y:auto;padding:12px}
.dp-empty{color:var(--tx-mut);font-size:13px;text-align:center;padding:40px 20px}
.dp-item{background:var(--s2);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;margin-bottom:8px}
.dp-item-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.dp-item-name{font-size:13px;font-weight:700}
.dp-item-status{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;padding:2px 8px;border-radius:var(--r-full);letter-spacing:.04em}
.dp-item-status .ico{width:11px;height:11px}
.dp-item-status.waiting{background:var(--s3);color:var(--tx-faint)}
.dp-item-status.sending{background:var(--accent-soft);color:var(--accent)}
.dp-item-status.done{background:rgba(37,99,235,.12);color:var(--accent)}
.dp-item-status.error{background:var(--red-soft);color:var(--red)}
.dp-item-status.skipped{background:var(--s3);color:var(--tx-mut)}
.dp-blocks{font-size:11px;color:var(--tx-mut);margin-top:4px}
.dp-wait{font-size:11px;color:var(--tx-faint);padding:6px 14px;text-align:center;font-style:italic}
.dp-done-banner{background:var(--green-soft);border:1px solid rgba(52,211,153,.35);border-radius:var(--r-md);padding:14px;text-align:center;margin-top:8px}
.dp-done-banner div:first-child{font-size:20px;margin-bottom:4px}
.dp-done-banner div:last-child{font-size:13px;font-weight:700;color:var(--green)}

/* ── ATOMIC MAPS PANEL ── */
.gmaps-fab{
  position:fixed;bottom:28px;left:28px;
  width:52px;height:52px;border-radius:var(--r-full);
  background:var(--s1);border:1px solid var(--line-2);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  z-index:500;box-shadow:var(--shadow-pop);transition:all var(--t);padding:0;
}
.gmaps-fab:hover{border-color:var(--blue);box-shadow:0 4px 28px var(--blue-soft);transform:scale(1.08)}
.gmaps-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:110;opacity:0;pointer-events:none;transition:opacity var(--t)}
.gmaps-overlay.open{opacity:1;pointer-events:all}
.gmaps-panel{
  position:fixed;left:-920px;top:0;height:100vh;width:900px;max-width:100vw;
  background:var(--s1);border-right:1px solid var(--line-2);
  z-index:111;transition:left .3s var(--ease);display:flex;flex-direction:column;overflow:hidden;
}
.gmaps-panel.open{left:0}
.gm-header{padding:16px 22px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;flex-shrink:0}
.gm-title{font-family:var(--font-display);font-size:16px;font-weight:700;flex:1}
.gm-subtitle{font-size:11px;color:var(--tx-mut)}
.gm-filter-bar{padding:10px 22px;border-bottom:1px solid var(--line);display:flex;gap:9px;flex-shrink:0;flex-wrap:wrap;align-items:center}
.gm-filter-bar input,.gm-filter-bar select{padding:7px 11px;font-size:12px}
.gm-filter-bar input{flex:1;min-width:140px}
.gm-filter-bar select{width:auto;min-width:150px}
.gm-table-wrap{flex:1;overflow-y:auto}
.gm-table{width:100%;border-collapse:collapse;font-size:12px}
.gm-table th{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-mut);padding:9px 14px;text-align:left;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--s1);z-index:1;white-space:nowrap}
.gm-table td{padding:8px 14px;border-bottom:1px solid rgba(255,255,255,.025);vertical-align:middle}
.gm-table tr:hover td{background:rgba(255,255,255,.02)}
.gm-empresa{font-weight:600;color:var(--tx);max-width:220px}
.gm-sub{font-size:10px;color:var(--tx-mut);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}
.gm-muted{color:var(--tx-mut);font-size:11px;white-space:nowrap}
.gm-seg-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--r-full);font-size:10px;font-weight:700;background:var(--blue-soft);color:var(--blue);border:1px solid rgba(111,140,255,.2);white-space:nowrap}
.gm-pushed{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;color:var(--green)}
.gm-bulk-bar{padding:12px 22px;background:var(--s2);border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;flex-shrink:0}
.gm-sel-count{font-size:13px;font-weight:700;color:var(--tx);flex:1}
.gm-empty{color:var(--tx-mut);font-size:13px;text-align:center;padding:60px 20px}

/* ── IMPORT MODAL (imp-*) ── */
.imp-steps{display:flex;align-items:center;margin-bottom:24px}
.imp-step-item{display:flex;align-items:center;gap:7px}
.imp-step-connector{flex:1;height:1px;background:var(--line);margin:0 10px}
.imp-step-dot{
  width:26px;height:26px;border-radius:var(--r-full);
  background:var(--s3);border:2px solid var(--line-2);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-size:10px;font-weight:700;color:var(--tx-mut);
  flex-shrink:0;transition:all var(--t);
}
.imp-step-dot.active{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}
.imp-step-dot.done{background:var(--green-soft);border-color:rgba(52,211,153,.4);color:var(--green)}
.imp-step-lbl{font-size:11px;font-weight:600;color:var(--tx-mut);white-space:nowrap;transition:color var(--t)}
.imp-step-lbl.active{color:var(--tx)}
.imp-upload-area{
  border:1.5px dashed var(--line-2);border-radius:var(--r-lg);padding:28px;
  text-align:center;cursor:pointer;transition:all var(--t);margin-bottom:8px;
}
.imp-upload-area:hover,.imp-upload-area.drag-over{border-color:var(--primary-line);background:var(--primary-soft)}
.imp-upload-area.has-file{border-color:rgba(52,211,153,.4);background:var(--green-soft)}
.imp-upload-icon{font-size:26px;margin-bottom:6px}
.imp-upload-title{font-size:13px;font-weight:700;margin-bottom:3px}
.imp-upload-sub{font-size:11px;color:var(--tx-mut)}
.imp-divider{display:flex;align-items:center;gap:12px;margin:12px 0;color:var(--tx-mut);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.imp-divider::before,.imp-divider::after{content:'';flex:1;height:1px;background:var(--line)}
.imp-map-meta{display:inline-block;font-size:11px;color:var(--tx-mut);margin-bottom:12px;background:var(--s2);border:1px solid var(--line);border-radius:var(--r-sm);padding:5px 11px}
.imp-map-table{width:100%;border-collapse:collapse}
.imp-map-table th{font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--tx-mut);padding:7px 12px;text-align:left;border-bottom:1px solid var(--line)}
.imp-map-table td{padding:4px 8px;border-bottom:1px solid rgba(255,255,255,.025);vertical-align:middle}
.imp-map-table tr:last-child td{border-bottom:none}
.imp-col-src{font-size:12px;font-weight:600;padding:8px 12px!important;white-space:nowrap}
.imp-col-preview{font-size:11px;color:var(--tx-faint);padding:8px 12px!important;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.imp-confirm-box{text-align:center;padding:22px 0}
.imp-confirm-count{font-family:var(--font-display);font-size:48px;font-weight:700;color:var(--accent);line-height:1}
.imp-confirm-label{font-size:13px;color:var(--tx-mut);margin-top:4px;margin-bottom:16px}
.imp-confirm-detail{font-size:11px;color:var(--tx-faint);background:var(--s2);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 14px;text-align:left}
.modal-add-lead{max-width:580px}

/* ── WPP MULTI-MESSAGE ── */
.wpp-mode-toggle{display:flex;gap:6px;margin-bottom:10px}
.wpp-mode-btn{flex:1;padding:6px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--s3);color:var(--tx-mut);font-family:var(--font-text);font-size:11px;font-weight:600;cursor:pointer;transition:all var(--t-fast);text-align:center}
.wpp-mode-btn.active{border-color:rgba(37,211,102,.4);background:rgba(37,211,102,.09);color:#25d366}
.wpp-blocks{display:flex;flex-direction:column;gap:8px}
.wpp-block{background:var(--s3);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px}
.wpp-block-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
.wpp-block-num{font-size:10px;font-weight:700;color:var(--tx-mut);letter-spacing:.1em;text-transform:uppercase}
.wpp-block-del{background:none;border:none;color:var(--tx-mut);cursor:pointer;font-size:13px;padding:2px 5px;border-radius:var(--r-xs);transition:all var(--t-fast)}
.wpp-block-del:hover{background:var(--red-soft);color:var(--red)}
.add-wpp-block{width:100%;padding:7px;border-radius:var(--r-sm);border:1px dashed var(--line-2);background:transparent;color:var(--tx-mut);font-family:var(--font-text);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--t-fast);margin-top:4px}
.add-wpp-block:hover{border-color:rgba(37,211,102,.4);color:#25d366}
.sintaxe-hint{font-size:11px;color:var(--tx-mut);margin-bottom:10px}
.pedaco-toolbar{display:flex;align-items:center;gap:8px;margin:8px 0;padding:8px 10px;background:var(--s3);border-radius:var(--r-sm)}
.pedaco-toolbar-label{font-size:11px;font-weight:700;color:var(--tx-mut);text-transform:uppercase;letter-spacing:.05em;margin-right:auto}
.sintaxe-cols{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}
.sintaxe-col{flex:0 0 280px;background:var(--s3);border:1px solid rgba(192,132,252,.25);border-radius:var(--r-sm);padding:10px;display:flex;flex-direction:column}
.sintaxe-col-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
.sintaxe-col-num{font-size:10px;font-weight:700;color:var(--purple,#c084fc);letter-spacing:.1em;text-transform:uppercase}
.sintaxe-col-del{background:none;border:none;color:var(--tx-mut);cursor:pointer;font-size:13px;padding:2px 5px;border-radius:var(--r-xs);transition:all var(--t-fast)}
.sintaxe-col-del:hover{background:var(--red-soft);color:var(--red)}
.sintaxe-col textarea{resize:vertical}
.sintaxe-col-add{flex:0 0 160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:var(--r-sm);border:1px dashed var(--line-2);background:transparent;color:var(--tx-mut);font-family:var(--font-text);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--t-fast);min-height:120px}
.sintaxe-col-add:hover{border-color:rgba(192,132,252,.45);color:var(--purple)}
.sintaxe-col-add-sub{font-size:10px;font-weight:400;opacity:.75}

/* ── SINTAXE: PEDAÇOS (aninhados dentro de cada variação) ── */
.sintaxe-variacoes{display:flex;flex-direction:column}
.variacao-divider{height:1px;background:var(--line-2);margin:10px 0}
.variacao-row{display:flex;flex-direction:column}
.variacao-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}
.variacao-num{font-size:9px;font-weight:700;color:var(--tx-mut);letter-spacing:.08em;text-transform:uppercase}

/* ── SINTAXE: PREVIEW AO VIVO ── */
.sintaxe-preview{margin-top:14px;background:var(--s2);border:1px solid var(--line-2);border-radius:var(--r-md);padding:14px}
.sintaxe-preview-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.sintaxe-preview-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tx-mut)}
.sintaxe-preview-reload{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-full);border:1px solid rgba(37,211,102,.3);background:rgba(37,211,102,.08);color:#25d366;font-family:var(--font-text);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--t-fast)}
.sintaxe-preview-reload:hover{background:rgba(37,211,102,.16);border-color:#25d366}
.sintaxe-preview-bubble{background:var(--s3);border:1px solid rgba(37,211,102,.2);border-radius:var(--r-md);padding:12px 14px;font-size:13px;color:var(--tx);line-height:1.55;white-space:pre-wrap;word-break:break-word;min-height:20px}

/* ── WPP SEND SEQUENCE ── */
.wpp-sequence{display:flex;flex-direction:column;gap:8px}
.wpp-seq-item{background:var(--s2);border:1px solid rgba(37,211,102,.15);border-radius:var(--r-md);padding:12px 14px;display:flex;align-items:flex-start;gap:12px}
.wpp-seq-num{width:22px;height:22px;border-radius:var(--r-full);background:rgba(37,211,102,.12);border:1px solid rgba(37,211,102,.25);color:#25d366;font-family:var(--font-display);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.wpp-seq-text{font-size:12px;color:var(--tx);flex:1;line-height:1.55;white-space:pre-wrap;word-break:break-word}
.wpp-seq-btn{background:#25d366;border:none;border-radius:var(--r-sm);color:#fff;font-family:var(--font-text);font-size:11px;font-weight:700;padding:7px 12px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all var(--t-fast)}
.wpp-seq-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.wpp-seq-btn.sent{background:var(--s3);color:var(--green);border:1px solid rgba(52,211,153,.3)}

/* ── LINKEDIN SECTION ── */
.linkedin-section{background:var(--s2);border:1px solid rgba(59,130,246,.2);border-radius:var(--r-md);padding:14px;display:flex;flex-direction:column;gap:10px}
.li-msg-block{background:var(--s3);border-radius:var(--r-sm);padding:10px 12px}
.li-msg-label{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-mut);margin-bottom:6px}
.li-msg-text{font-size:12px;color:var(--tx);line-height:1.55;white-space:pre-wrap;word-break:break-word;margin-bottom:8px}
.li-msg-actions{display:flex;gap:7px;flex-wrap:wrap}
.li-copy-btn,.li-connect-btn{padding:5px 12px;border-radius:var(--r-sm);border:1px solid rgba(59,130,246,.35);background:rgba(59,130,246,.08);color:var(--blue);font-family:var(--font-text);font-size:11px;font-weight:700;cursor:pointer;transition:all var(--t-fast);display:inline-flex;align-items:center;gap:5px}
.li-copy-btn:hover,.li-connect-btn:hover{background:rgba(59,130,246,.18);border-color:var(--blue)}
.li-copy-btn.copied{background:var(--green-soft);border-color:rgba(52,211,153,.4);color:var(--green)}
.li-connect-btn{background:rgba(59,130,246,.13);border-color:rgba(59,130,246,.5)}
.li-connect-btn .ico,.li-copy-btn .ico{width:12px;height:12px}
.li-done-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.li-done-btn{padding:5px 12px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--s3);color:var(--tx);font-family:var(--font-text);font-size:11px;font-weight:700;cursor:pointer;transition:all var(--t-fast);margin-left:auto;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}
.li-done-btn:hover{background:var(--s-hover);border-color:var(--line-2)}
.li-done-btn.done{background:var(--green,#22c55e);border-color:var(--green,#22c55e);color:#fff;cursor:default}
.li-done-btn.li-done-sent{background:var(--green-soft);border-color:rgba(52,211,153,.5);opacity:.7;cursor:default}

/* ── HISTORY (production list style) ── */
.history-wrap{margin-bottom:16px}
.history-list{display:flex;flex-direction:column;gap:6px;max-height:160px;overflow-y:auto}
.hist-item{display:flex;align-items:flex-start;gap:9px;background:var(--s2);border:1px solid var(--line);border-radius:var(--r-sm);padding:9px 11px}
.hist-icon{font-size:14px;flex-shrink:0;margin-top:1px}
.hist-text{font-size:12px;color:var(--tx);flex:1;line-height:1.45}
.hist-time{font-family:var(--font-display);font-size:9px;color:var(--tx-faint);white-space:nowrap}
.hist-empty{font-size:12px;color:var(--tx-mut);text-align:center;padding:12px 0}


/* Sistema de modal legado removido (consolidado no único .overlay/.modal/
   .modal-head/.modal-body/.modal-foot/.x acima — ver review de UI/UX 2026-08-14) */

/* ── CONFIG sections ── */
.cfg-section{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:16px;overflow:hidden;box-shadow:var(--shadow)}
.cfg-sec-head{padding:16px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.cfg-sec-title{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.01em;margin:0}
.cfg-sec-body{padding:20px 22px}

.cad-day{background:var(--s2);border:1px solid var(--line);border-radius:var(--r-md);padding:14px;margin-bottom:10px}
.cad-day-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.day-badge{
  background:var(--blue-soft);color:var(--blue);
  font-family:var(--font-display);font-size:10px;font-weight:700;
  padding:3px 9px;border-radius:var(--r-full);border:1px solid rgba(111,140,255,.2);
}

.ch-row{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.ch-tog{
  display:flex;align-items:center;gap:5px;padding:5px 11px;
  border-radius:var(--r-full);border:1px solid var(--line);background:var(--s3);
  cursor:pointer;font-size:11px;font-weight:600;color:var(--tx-mut);
  transition:all var(--t-fast);user-select:none;
}
.ch-tog.on-wpp{border-color:rgba(37,211,102,.4);background:rgba(37,211,102,.09);color:#25d366}
.ch-tog.on-email{border-color:var(--primary-line);background:var(--primary-soft);color:var(--tx)}
.ch-tog.on-linkedin{border-color:rgba(59,130,246,.4);background:rgba(59,130,246,.1);color:var(--blue)}
.ch-tog.on-call{border-color:var(--primary-line);background:var(--accent-soft);color:var(--accent)}

.tpl-block{display:flex;flex-direction:column;gap:16px}
.cad-channel-block{background:var(--s3);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.cad-channel-head{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px}
.cad-ch-wpp{border-left:3px solid #25d366;background:rgba(37,211,102,.05)} .cad-ch-wpp .cad-channel-head{color:#25d366}
.cad-ch-email{border-left:3px solid var(--accent);background:rgba(37,99,235,.05)} .cad-ch-email .cad-channel-head{color:var(--accent)}
.cad-ch-linkedin{border-left:3px solid rgba(59,130,246,.85);background:rgba(59,130,246,.05)} .cad-ch-linkedin .cad-channel-head{color:var(--blue)}
.tpl-label{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-mut);margin-bottom:3px;display:flex;align-items:center;gap:6px}
.var-hint{font-family:var(--font-display);font-size:8px;background:var(--s3);border:1px solid var(--line);border-radius:var(--r-xs);padding:2px 5px;color:var(--tx-faint)}

/* ── DASHBOARD (production card names) ── */
.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.dash-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--shadow)}
.dash-label{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tx-mut);margin-bottom:10px}
.dash-value{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1;margin-bottom:4px}
.dash-sub{font-size:11px;color:var(--tx-mut)}
.dash-card.c-blue{border-top:2px solid var(--blue)} .dash-card.c-blue .dash-value{color:var(--blue)}
.dash-card.c-yellow{border-top:2px solid var(--accent)} .dash-card.c-yellow .dash-value{color:var(--accent)}
.dash-card.c-green{border-top:2px solid var(--green)} .dash-card.c-green .dash-value{color:var(--green)}
.dash-card.c-purple{border-top:2px solid var(--purple)} .dash-card.c-purple .dash-value{color:var(--purple)}

.chart-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;margin-bottom:20px;box-shadow:var(--shadow)}
.chart-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:12px}
.chart-title{font-family:var(--font-display);font-size:14px;font-weight:700}
.chart-legend{display:flex;gap:16px}
.leg-item{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--tx-mut)}
.leg-dot{width:10px;height:3px;border-radius:var(--r-full)}

.prog-card{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;margin-bottom:20px;box-shadow:var(--shadow)}
.prog-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.prog-pct{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--accent)}
.prog-bar-bg{background:var(--s3);border-radius:var(--r-full);height:7px;overflow:hidden}
.prog-bar-fill{height:100%;border-radius:var(--r-full);background:linear-gradient(90deg,var(--primary),var(--accent));transition:width .5s var(--ease)}

/* ── TODAY BAR (clients screen) ── */
.today-bar{
  background:linear-gradient(100deg,var(--primary-soft),transparent 70%);
  border:1px solid var(--primary-line);border-radius:var(--r-lg);
  padding:16px 20px;margin-bottom:28px;display:flex;align-items:center;gap:16px;
}
.today-bar .tb-icon{font-size:22px;flex-shrink:0}
.today-bar .tb-text{font-size:13.5px;font-weight:600;color:var(--tx);flex:1}
.today-bar .tb-count{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--accent);line-height:1}

/* ── USER CHIP (production) ── */
.user-chip{display:flex;align-items:center;gap:10px}
.user-chip-sm{display:flex;align-items:center;position:relative;cursor:pointer}
.uc-av{
  width:32px;height:32px;border-radius:var(--r-full);
  background:var(--blue-soft);border:1px solid rgba(111,140,255,.3);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-size:12px;font-weight:700;color:var(--blue);flex-shrink:0;
}
.uc-name{font-size:13px;font-weight:600;color:var(--tx)}

/* ── CLIENTS SCREEN HEADER (production) ── */
#sc-clients{min-height:100vh;display:flex;flex-direction:column}
.ch-inner{width:100%;max-width:1200px;margin:0 auto;padding:20px 32px;display:flex;align-items:center;justify-content:space-between}
.logo-wrap{display:flex;align-items:center;gap:13px}
.cb{flex:1;padding:32px 0}
.cb-inner{width:100%;max-width:1200px;margin:0 auto;padding:0 32px}
.pg-title{font-family:var(--font-display);font-size:30px;font-weight:700;margin-bottom:6px;letter-spacing:.01em}
.pg-sub{color:var(--tx-mut);font-size:13.5px;margin-bottom:32px}

/* ── SEARCH BAR (production) ── */
.search-bar{display:flex;align-items:center;gap:10px;background:var(--s1);border:1px solid var(--line);border-radius:var(--r-md);padding:9px 14px;margin-bottom:24px;max-width:360px;transition:border-color var(--t-fast)}
.search-bar:focus-within{border-color:var(--primary-line)}
.search-bar input{background:transparent;border:none;padding:0;font-size:13px;color:var(--tx);box-shadow:none!important}
.search-icon{color:var(--tx-mut);font-size:14px;flex-shrink:0}

/* ── CC-AVATAR (production client card, maps to .avatar.lg) ── */
.cc-avatar{
  width:44px;height:44px;border-radius:var(--r-md);
  background:linear-gradient(135deg,var(--blue-soft),rgba(111,140,255,.08));
  border:1px solid rgba(111,140,255,.25);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-size:17px;font-weight:700;color:var(--blue);
}

/* ── WORKSPACE CONTENT (production) ── */
.ws-content{flex:1;padding:26px 0}
.ws-content-inner{width:100%;margin:0 auto;padding:0 32px}

/* ── WORKSPACE TOPBAR (production legacy, kept for JS selectors) ── */
.ws-topbar{
  background:rgba(12,12,13,.82);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  padding:0;display:flex;align-items:center;height:56px;
  position:sticky;top:0;z-index:90;
}
.ws-topbar-inner{width:100%;max-width:1200px;margin:0 auto;padding:0 32px;display:flex;align-items:center;height:100%}

/* ── TOPBAR CLOCK ── */
.topbar-clock{position:fixed;top:0;right:0;height:62px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:0 18px;z-index:50;pointer-events:none}
.topbar-clock .tc-time{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--tx);line-height:1.2;letter-spacing:.03em;text-align:right}
.topbar-clock .tc-date{font-size:10px;color:var(--tx-mut);font-weight:500;text-align:right;margin-top:2px;text-transform:capitalize}

/* ── ANIMATIONS ── */
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideUp{from{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}

@media(max-width:768px){
  .dash-grid{grid-template-columns:1fr 1fr}
  .frow{grid-template-columns:1fr}
  .ch-inner,.cb-inner,.ws-topbar-inner,.ws-content-inner{padding-left:16px;padding-right:16px}
  .dispatch-panel{width:100%;left:-100%}
}
@media(max-width:960px){.gmaps-panel{width:100%;left:-100%}}

/* ── PAINEL VARIÁVEIS ───────────────────── */
#vars-panel{position:fixed;right:-400px;top:0;height:100vh;width:360px;max-width:100vw;background:var(--s1);border-left:1px solid var(--line-2);z-index:120;transition:right .3s var(--ease);display:flex;flex-direction:column;overflow:hidden}
#vars-panel.open{right:0}
#vars-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:119;display:none}
#vars-overlay.open{display:block}
.vars-header{padding:16px 22px 12px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0}
.vars-title{font-family:var(--font-display);font-size:16px;font-weight:700}
.vars-sub{font-size:11px;color:var(--tx-mut);margin-top:2px}
.vars-body{flex:1;overflow-y:auto;padding-bottom:24px}
.vars-section{padding:16px 22px 0}
.vars-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--tx-mut);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}
.vars-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.vars-row:last-child{border-bottom:none}
.var-code{font-family:monospace;font-size:12px;background:var(--s3);border:1px solid var(--line);border-radius:5px;padding:2px 7px;color:var(--accent);white-space:nowrap;flex-shrink:0}
.var-desc{font-size:12px;color:var(--tx-mut);flex:1}
.vars-locked{font-size:10px;color:var(--tx-mut)}
.vars-add-form{padding:12px 22px;border-top:1px solid var(--line);margin-top:8px;display:flex;flex-direction:column;gap:8px}
.vars-add-form input,.vars-add-form select{font-size:12px;padding:7px 10px}
/* picker inline no editor */
.var-picker{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 6px;align-items:center}
.var-chip{font-family:monospace;font-size:11px;background:var(--s3);border:1px solid var(--line);border-radius:4px;padding:2px 7px;cursor:pointer;color:var(--accent);line-height:1.5;transition:background .12s,border-color .12s}
.var-chip:hover{background:var(--s2);border-color:var(--accent)}
.var-chip-op{color:var(--blue,#60a5fa)}.var-chip-op:hover{border-color:var(--blue,#60a5fa)}
.var-code-op{color:var(--blue,#60a5fa)}
.var-chip-custom{color:var(--green,#4ade80)}.var-chip-custom:hover{border-color:var(--green,#4ade80)}
.var-chip-dynamic{color:var(--purple,#c084fc);position:relative}.var-chip-dynamic:hover{border-color:var(--purple,#c084fc)}
.var-group-label{font-size:10px;color:var(--purple,#c084fc);text-transform:uppercase;letter-spacing:.03em;margin-right:2px;cursor:default}
.linebreak-btn{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;background:var(--s3);border:1px solid rgba(37,211,102,.3);border-radius:4px;padding:3px 9px;cursor:pointer;color:#25d366;line-height:1.5;transition:background .12s,border-color .12s;margin-left:2px}
.linebreak-btn:hover{background:rgba(37,211,102,.1);border-color:#25d366}
.linebreak-btn .ico{width:13px;height:13px}
.var-chip-dynamic[data-tip]:hover::after,.var-chip-dynamic[data-tip]:focus-visible::after{
  content:attr(data-tip);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);
  background:var(--s1);color:var(--tx);border:1px solid var(--purple,#c084fc);border-radius:6px;
  padding:8px 10px;font-size:11px;font-family:sans-serif;font-weight:400;line-height:1.4;
  white-space:normal;width:max-content;max-width:230px;text-align:left;
  box-shadow:0 6px 16px rgba(0,0,0,.45);z-index:60;pointer-events:none;
}
.var-divider{width:1px;height:16px;background:var(--line);margin:0 2px;flex-shrink:0}
@media(max-width:960px){#vars-panel{width:100%;right:-100%}}

/* ── PAINEL COLUNAS (Leads) ─────────────── */
#leads-cols-panel{position:fixed;right:-420px;top:0;height:100vh;width:400px;max-width:100vw;background:var(--s1);border-left:1px solid var(--line-2);z-index:120;transition:right .3s var(--ease);display:flex;flex-direction:column;overflow:hidden}
#leads-cols-panel.open{right:0}
#leads-cols-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:119;display:none}
#leads-cols-overlay.open{display:block}
@media(max-width:960px){#leads-cols-panel{width:100%;right:-100%}}
.lc-locked-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:10px;background:var(--s2);opacity:.7}
.lc-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:6px;background:var(--s2);cursor:grab}
.lc-row.dragging{opacity:.4}
.lc-row.drag-over{border-color:var(--accent)}
.lc-grip{color:var(--tx-faint);flex-shrink:0;display:flex}
.lc-label{flex:1;font-size:13px;font-weight:600;color:var(--tx)}
.lc-cf-tag{font-size:10px;color:var(--tx-mut);background:var(--s3);border-radius:4px;padding:2px 6px;flex-shrink:0}
.extra-activities-block{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.extra-act-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.extra-act-title{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-mut)}
.extra-act-card{background:var(--s2);border:1px solid rgba(251,191,36,.3);border-left:3px solid #f59e0b;border-radius:var(--r-md);padding:10px 12px;margin-bottom:8px;display:flex;flex-direction:column;gap:8px}
.extra-act-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

/* ════════════════════════════════════════════════════════════
   AUXO CENTRAL (CHAT) — redesign 2026-08-10, ver AUXO_CENTRAL_SPEC.md
   A versão anterior usava var(--bg3)/var(--border), tokens que nunca
   existiram neste arquivo — por isso bolha/divisor sumiam e o contraste
   quebrava. Tudo abaixo usa só tokens reais (--s1/s2/s3, --line, --tx*).
════════════════════════════════════════════════════════════ */
.chat-shell{display:flex;height:100%;background:var(--s1)}

.chat-list-pane{width:320px;flex:0 0 320px;border-right:1px solid var(--line);background:var(--s1);display:flex;flex-direction:column;min-height:0}
.chat-list-search{padding:10px 14px;border-bottom:1px solid var(--line);flex:0 0 auto;display:flex;gap:8px;align-items:center}
.chat-list-search input{flex:1;min-width:0;background:var(--s2);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--tx);font-size:12.5px;padding:7px 10px}
/* #138(b) — ícone de filtro (funil), abre o painel em modal — nada de chip
   sempre visível competindo com a lista (redesenho 2026-08-17, feedback do
   Felipe comparando com o Chatwoot: a v1 empilhava 4 linhas de chip do
   mesmo peso visual, virou ruído). Ponto vermelho = filtro não-padrão ativo. */
.chat-filter-btn{position:relative;flex:0 0 auto;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--s2);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--tx-mut);cursor:pointer;transition:all var(--t-fast)}
.chat-filter-btn:hover{color:var(--tx);border-color:var(--line-2)}
.chat-filter-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.chat-filter-opt-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.chat-filter-opt-row .chip{padding:6px 12px;font-size:12px}
.chat-filter-divider{height:1px;background:var(--line);margin:16px 0}
#chat-conv-list{flex:1;overflow-y:auto;min-height:0}
.chat-list-empty{padding:40px 16px;color:var(--tx-mut);font-size:13px;text-align:center}
/* topo da linha (não embaixo), mesmo lugar do InboxName do Chatwoot —
   redesenho 2026-08-17. Texto puro continuou "não claro" pro Felipe mesmo
   no topo — virou .badge (mesmo componente já usado nas pílulas de status
   do topo da página) com cor fixa por número. purple/neutro (não
   blue/green/orange/red) de propósito: essas 4 já têm significado nos
   badges de desfecho do lead na mesma linha (won/agendado/lost/atenção) —
   reusar teria colidido semântica na mesma tela.*/
.chat-row-instance{margin-bottom:4px}
.chat-row-instance .badge{font-size:10px;padding:2px 7px}
/* paleta completa — Felipe escolhe por número em Configurações → Integrações
   (2026-08-17). Sem seleção, o frontend cicla purple/gray (ver chat.js). */
.b-inst-purple{background:var(--purple-soft);color:var(--purple)} .b-inst-purple .dot{background:var(--purple)}
.b-inst-blue{background:var(--blue-soft);color:var(--blue)} .b-inst-blue .dot{background:var(--blue)}
.b-inst-green{background:var(--green-soft);color:var(--green)} .b-inst-green .dot{background:var(--green)}
.b-inst-orange{background:var(--orange-soft);color:var(--orange)} .b-inst-orange .dot{background:var(--orange)}
.b-inst-red{background:var(--red-soft);color:var(--red)} .b-inst-red .dot{background:var(--red)}
.b-inst-gray{background:var(--s3);color:var(--tx-mut)} .b-inst-gray .dot{background:var(--tx-mut)}
/* swatches do seletor de cor no formulário de editar número */
.color-swatch{width:26px;height:26px;border-radius:50%;cursor:pointer;border:2px solid transparent;flex:0 0 auto;transition:border-color var(--t-fast)}
.color-swatch.sel{border-color:var(--tx)}
.chat-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);cursor:pointer;transition:background var(--t-fast)}
.chat-row:hover{background:var(--s2)}
.chat-row.active{background:var(--s3)}
.chat-row-body{flex:1;min-width:0}
.chat-row-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.chat-row-name-wrap{display:flex;align-items:baseline;gap:5px;min-width:0;flex:1}
.chat-row-name{font-weight:600;font-size:13.5px;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.chat-row-time{font-size:11px;color:var(--tx-faint);flex:0 0 auto}
/* Sinal de desfecho por conversa na lista (2026-08-11) — mesma cor da
   chat-outcome-btn, só ícone, sem disputar espaço com o preview. */
.chat-row-badges{display:flex;gap:3px;flex:0 0 auto}
.chat-row-badge{display:inline-flex;align-items:center;position:relative}
.chat-row-badge .ico-sm{width:12px;height:12px}
.chat-row-badge.won{color:var(--green)}
.chat-row-badge.agendado{color:var(--blue)}
.chat-row-badge.lost{color:var(--red)}
.chat-row-badge.attn{color:var(--orange)}
/* tooltip custom via data-tip — title nativo tem ~1s de delay fixo do
   navegador (mesmo fix já aplicado em .hint-ico, Configurações) */
.chat-row-badge::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--s3);color:var(--tx);border:1px solid var(--line);border-radius:7px;padding:5px 8px;font-size:11px;font-weight:600;line-height:1.2;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .05s ease;z-index:20}
.chat-row-badge:hover::after{opacity:1}
.chat-row-preview{font-size:12.5px;color:var(--tx-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.chat-unread-badge{background:var(--accent);color:var(--primary-ink);font-size:11px;font-weight:700;border-radius:var(--r-full);min-width:19px;height:19px;display:flex;align-items:center;justify-content:center;padding:0 5px;flex:0 0 auto}
.chat-row-mark-unread{background:none;border:none;color:var(--tx-faint);cursor:pointer;padding:4px;border-radius:var(--r-sm);display:flex;flex:0 0 auto;opacity:0;transition:opacity var(--t-fast),background var(--t-fast),color var(--t-fast)}
.chat-row-mark-unread svg{fill:currentColor}
.chat-row:hover .chat-row-mark-unread{opacity:1}
.chat-row-mark-unread:hover{background:var(--s3);color:var(--accent)}

.chat-thread-pane{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg)}
.chat-thread-header{display:flex;align-items:center;gap:12px;padding:13px 20px;border-bottom:1px solid var(--line);background:var(--s1)}
.chat-thread-header-body{flex:1;min-width:0}
.chat-thread-header-name{font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-thread-header-sub{font-size:12px;color:var(--tx-mut)}
.chat-mute-btn{background:none;border:none;color:var(--tx-faint);cursor:pointer;padding:6px;border-radius:var(--r-sm);display:flex}
.chat-mute-btn:hover{background:var(--s2)}
.chat-mute-btn.active{color:var(--tx)}

.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column}
.chat-day-sep{align-self:center;font-size:11.5px;color:var(--tx-mut);background:var(--s2);border:1px solid var(--line);padding:4px 12px;border-radius:var(--r-full);margin:16px 0}
.chat-day-sep:first-child{margin-top:0}
.chat-bubble-row{display:flex;margin-bottom:3px}
.chat-bubble-row.out{justify-content:flex-end}
.chat-bubble-row.in{justify-content:flex-start}
.chat-bubble{max-width:66%;padding:8px 12px;border-radius:var(--r-md);font-size:13.5px;line-height:1.42}
.chat-bubble.out{background:var(--s2);color:var(--tx);border:1px solid var(--line);border-bottom-right-radius:4px}
.chat-bubble.in{background:var(--accent);color:var(--primary-ink);border-bottom-left-radius:4px}
.chat-bubble-meta{display:flex;justify-content:flex-end;gap:5px;font-size:10.5px;margin-top:3px;opacity:.65}
.chat-bubble-quote{border-left:3px solid rgba(19,19,18,.3);padding:4px 8px;margin-bottom:5px;font-size:12px;border-radius:4px;background:rgba(19,19,18,.06)}
.chat-bubble.out .chat-bubble-quote{border-left-color:var(--line-2);background:var(--s3)}
.chat-bubble-reactions{display:flex;gap:2px;margin-top:3px;font-size:12px}

.chat-input-row{display:flex;gap:8px;align-items:flex-end;padding:14px 20px;border-top:1px solid var(--line);background:var(--s1)}
/* era <input type="text"> — corta texto longo, sem como reler antes de
   enviar (Felipe, 2026-08-17). Textarea com auto-crescimento via JS
   (chatAutoGrowInput), Enter envia / Shift+Enter quebra linha. */
#chat-thread-input{resize:none;min-height:38px;max-height:140px;overflow-y:auto;line-height:1.4;padding:8px 12px}
.chat-avatar{flex:0 0 auto}

/* Desfecho do lead na conversa (Fase 3, §6) */
.chat-outcome-bar{padding:9px 20px;border-bottom:1px solid var(--line);background:var(--s2);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.chat-outcome-empty{font-size:12px;color:var(--tx-faint)}
.chat-outcome-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
/* Botões de desfecho — o estado ativo (Ganho/Agendado/Perdido) É a cor do
   botão, sem pill duplicada ao lado dizendo a mesma coisa (2026-08-11). */
.chat-outcome-btn{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:5px 11px;border-radius:var(--r-full);border:1px solid var(--line);background:transparent;color:var(--tx-mut);cursor:pointer;transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}
.chat-outcome-btn:hover{border-color:var(--tx-faint);color:var(--tx)}
.chat-outcome-btn .ico-sm{flex:0 0 auto}
.chat-outcome-btn.active.won{background:var(--green-soft);color:var(--green);border-color:transparent}
.chat-outcome-btn.active.agendado{background:var(--blue-soft);color:var(--blue);border-color:transparent}
.chat-outcome-btn.active.lost{background:var(--red-soft);color:var(--red);border-color:transparent}
.chat-outcome-btn.attn.active{background:var(--orange-soft);color:var(--orange);border-color:transparent}
.chat-outcome-sub{font-size:11.5px;color:var(--tx-faint)}
.chat-outcome-panel{padding:12px 20px;border-bottom:1px solid var(--line);background:var(--s2);display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.chat-outcome-panel select,.chat-outcome-panel input[type=datetime-local]{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--tx);font-size:12.5px;padding:6px 8px}

.chat-ack{display:inline-flex;align-items:center;position:relative}
.chat-ack .ico-tick+.ico-tick{margin-left:-6px}
.chat-ack.read .ico-tick{color:#254dcf}
/* #138(c) — ack=-1, falha real de entrega (statuses[] da Meta) */
.chat-ack.failed{color:var(--red)}
.chat-ack.failed::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);right:0;white-space:nowrap;background:var(--s3);color:var(--tx);border:1px solid var(--line);border-radius:7px;padding:5px 8px;font-size:11px;font-weight:600;line-height:1.2;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .05s ease;z-index:20}
.chat-ack.failed:hover::after{opacity:1}
.chat-media-fallback{display:inline-flex;align-items:center;gap:6px;color:var(--tx-faint);font-size:12.5px;padding:6px 0}
.chat-media-doc-link{display:inline-flex;align-items:center;gap:6px;color:inherit;text-decoration:underline}

/* Diagnóstico de sessão caída (Fase 4, §8) */
.chat-session-banner{padding:8px 20px;font-size:12.5px;font-weight:600;background:var(--red-soft);color:var(--red);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px}
.chat-session-banner.connecting{background:var(--orange-soft);color:var(--orange)}

/* #138 — picker de templates pra reabrir conversa (janela de 24h fechada) */
.reopen-tpl-item{display:block;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--s1);cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast)}
.reopen-tpl-item:hover:not(:disabled){background:var(--s2);border-color:var(--accent)}
.reopen-tpl-item:disabled{opacity:.5;cursor:not-allowed}
/* #138(c) — clicar só seleciona, precisa do botão "Enviar" separado pra
   confirmar (Felipe, 2026-08-17: envio direto no clique era perigoso demais
   — clique errado manda template real pro lead, sem volta). */
.reopen-tpl-item.sel{background:var(--accent-soft);border-color:var(--accent)}
.reopen-tpl-name{font-weight:600;font-size:13px;color:var(--tx);margin-bottom:4px}
.reopen-tpl-preview{font-size:12.5px;color:var(--tx-mut);line-height:1.5;white-space:pre-wrap}

/* Coluna "Contatos" (inspirada no Chatwoot) — info do lead + atalhos, sem
   atribuição/prioridade/tags de conversa (decisão 2026-08-11: já coberto
   pelo desfecho da Fase 3, não duplicar). */
.chat-info-pane{width:280px;flex:0 0 280px;border-left:1px solid var(--line);background:var(--s1);overflow-y:auto;padding:20px 18px}
.chat-info-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.chat-info-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--tx-mut)}
.chat-info-title .ico-sm{flex:0 0 auto;color:var(--tx-mut)}
.chat-info-close{background:none;border:none;color:var(--tx-mut);cursor:pointer;padding:2px;display:flex}
.chat-info-close:hover{color:var(--tx)}
.chat-info-empty{color:var(--tx-faint);font-size:12.5px;text-align:center;padding:30px 0}
/* Fixo no topo ao rolar o painel — "de quem é essa conversa" nunca some de
   vista quando o usuário desce até Notas/Organização (2026-08-11). */
.chat-info-avatar-wrap{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:16px;position:sticky;top:0;background:var(--s1);z-index:1;padding-bottom:2px}
.chat-info-avatar-wrap .avatar{width:56px;height:56px;font-size:20px}
.chat-info-name{font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--tx);text-align:center}
/* Desfecho (Fase 3) refletido na coluna Contatos — antes só existia na barra
   abaixo do header; marcar "Atenção" ali não mudava nada aqui (2026-08-11). */
.chat-info-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:6px}
.chat-info-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:4px 9px;border-radius:var(--r-full)}
.chat-info-badge .ico-sm{flex:0 0 auto}
.chat-info-badge.won{background:var(--green-soft);color:var(--green)}
.chat-info-badge.agendado{background:var(--blue-soft);color:var(--blue)}
.chat-info-badge.lost{background:var(--red-soft);color:var(--red)}
.chat-info-badge.attn{background:var(--orange-soft);color:var(--orange)}
.chat-info-field{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.chat-info-field:last-child{border-bottom:none}
.chat-info-field .ico-sm{flex:0 0 auto;color:var(--tx-faint)}
.chat-info-field-val{flex:1;min-width:0;font-size:12.5px;color:var(--tx);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-info-field-link{cursor:pointer}
.chat-info-field-link .ico-sm{color:var(--tx)}
.chat-info-field-link:hover .ico-sm,.chat-info-field-link:hover .chat-info-field-val{color:var(--accent)}
.chat-info-field-off{cursor:default}
.chat-info-field-off .chat-info-field-val{color:var(--tx-faint)}
.chat-info-field-val a{color:inherit;text-decoration:underline}
.chat-info-copy{background:none;border:none;color:var(--tx-faint);cursor:pointer;flex:0 0 auto;display:flex;padding:2px}
.chat-info-copy:hover{color:var(--tx)}
.chat-info-copy.copied{color:var(--green)}
.chat-info-section{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.chat-info-open-lead{width:100%;margin-top:16px}
.chat-info-note-input{width:100%;resize:vertical;background:var(--s2);border:1px solid var(--line);border-radius:8px;color:var(--tx);padding:9px 10px;font-size:12.5px;font-family:inherit;line-height:1.5;margin-bottom:8px}
.chat-info-note-save{width:100%}

#chat-push-btn.active-push{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
