:root{--bg:#0b0f19;--card:#111827;--accent:#3b82f6;--muted:#9ca3af;--text:#e5e7eb;--me:#1f2937;}
html.cal-noscroll,body.cal-noscroll{overflow:hidden!important}
.cal-root{position:fixed !important; inset:auto auto 0 0; z-index:2147483647 !important; pointer-events:none !important;}
.cal-root *{pointer-events:auto !important;}
.cal-root.open #cal-fab{display:none !important}
.cal-fab{position:fixed !important; left:50% !important; bottom:24px !important; transform:translateX(-50%) !important; border-radius:999px; background:var(--accent); color:#fff; border:none; box-shadow:0 10px 30px rgba(0,0,0,.35); cursor:pointer; z-index:2147483647 !important;}
.cal-modal{position:fixed !important; inset:0 !important; display:none; z-index:2147483646 !important;}
.cal-modal.open{display:block !important}
.cal-modal-backdrop{position:absolute !important; inset:0 !important; background:rgba(0,0,0,.55) !important; z-index:0 !important;}
.cal-card{position:absolute !important; left:50% !important; top:50% !important; transform:translate(-50%,-50%) !important; background:var(--card); color:var(--text); border-radius:16px; width:min(92vw,560px); box-shadow:0 20px 50px rgba(0,0,0,.45); overflow:hidden; display:grid; grid-template-rows:auto 1fr auto auto; border:1px solid rgba(255,255,255,.06); z-index:1 !important;}
.cal-header{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0));}
.cal-title{font-weight:600}
.cal-actions{margin-left:auto;display:flex;gap:8px;align-items:center}
.cal-wa{font-size:12px;padding:6px 10px;border:1px solid rgba(255,255,255,.15);border-radius:999px;color:#fff;text-decoration:none}
.cal-close{background:transparent;border:none;color:#fff;font-size:16px;cursor:pointer}
.cal-chat{padding:14px;height:min(60vh,520px);overflow:auto;display:flex;flex-direction:column;background:rgba(255,255,255,.02)}
.cal-bubble{max-width:85%;padding:10px 12px;margin:6px 0;border-radius:14px;line-height:1.35;}
.cal-bubble.bot{background:#0f172a}
.cal-bubble.me{background:var(--accent);color:#fff;margin-left:auto}
.cal-suggestions{display:none;gap:8px;flex-wrap:wrap;padding:8px 14px;border-top:1px solid rgba(255,255,255,.08);}
.cal-chip{background:rgba(59,130,246,.15);border:1px solid rgba(59,130,246,.35);padding:6px 10px;border-radius:999px;color:#cfe1ff;cursor:pointer}
.cal-input{display:flex;gap:8px;padding:10px;border-top:1px solid rgba(255,255,255,.08);}
#cal-text{flex:1;background:#0b1220;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:10px;color:#fff}
#cal-send,#cal-restart{background:var(--accent);border:none;color:#fff;border-radius:10px;padding:10px 12px;cursor:pointer}
#cal-status-badge.tag{display:inline-block;padding:.2em .6em;border-radius:6px;background:#eee}
#cal-status-badge.cal-ok{background:#e6ffed;color:#065f46}
#cal-status-badge.cal-off{background:#fff7ed;color:#92400e}
#cal-status-badge.cal-error{background:#fee2e2;color:#991b1b}


/* ===== Ajuste de posição do botão inicial (FAB) ===== */
.cal-fab{
  right: var(--fab-offset-right, 24px) !important;
  bottom: var(--fab-offset-bottom, 24px) !important;
  left: auto !important;
  transform: none !important;
  z-index: 2147483647 !important;
}

/* ===== Botão WhatsApp dentro do cabeçalho do chat ===== */
.cal-card .cal-actions{
  display: flex;
  gap: 8px;
  margin-left: auto;
  align-items: center;
}
.cal-card .cal-actions .cal-wa{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 12px;
  border-radius: 999px;
  background: #25D366 !important;
  color: #fff !important;
  font-weight: 600;
  text-decoration: none !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
  border: none;
}
.cal-card .cal-actions .cal-wa:hover{
  filter: brightness(1.05);
}
