:root{
  --lm-bg:#0b1220;
  --lm-card:#111a2e;
  --lm-text:#eaf0ff;
  --lm-muted:#9fb0d0;
  --lm-accent:#5eead4;
  --lm-border:rgba(255,255,255,.10);
  --lm-shadow: 0 18px 40px rgba(0,0,0,.35);
}

#lmchat-root{ font-family:'Open Sans', system-ui,-apple-system,Segoe UI,Roboto,Arial;  position:fixed; right:15px !important; bottom:18px; z-index:99999; font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial; }

.lmchat-btn{
  display:flex; align-items:center; gap:10px;
  background:var(--lm-bg); color:var(--lm-text); border:1px solid var(--lm-border);
  padding:12px 14px; border-radius:999px; cursor:pointer; box-shadow:var(--lm-shadow);
  user-select:none;
}
.lmchat-dot{ width:10px; height:10px; border-radius:50%; background:var(--lm-accent); box-shadow:0 0 0 4px rgba(94,234,212,.15); }

.lmchat-panel{
  width:360px; max-width:calc(100vw - 36px);
  height:520px; max-height:calc(100vh - 110px);
  background:var(--lm-bg); border:1px solid var(--lm-border);
  border-radius:18px; box-shadow:var(--lm-shadow);
  overflow:hidden; display:none; flex-direction:column;
}

.lmchat-header{
  padding:12px 14px; display:flex; align-items:center; justify-content:space-between;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
  border-bottom:1px solid var(--lm-border);
}
.lmchat-title{ display:flex; gap:10px; align-items:center; }
.lmchat-avatar{
  width:34px; height:34px; border-radius:12px;
  background:var(--lm-card); border:1px solid var(--lm-border);
  display:grid; place-items:center; overflow:hidden;
}
.lmchat-avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
.lmchat-title h4{ margin:0; color:var(--lm-text); font-size:14px; line-height:1.1; }
.lmchat-title p{ margin:0; color:var(--lm-muted); font-size:12px; }

.lmchat-close{
  background:transparent; border:0; color:var(--lm-muted); cursor:pointer; font-size:18px;
  padding:6px 10px; border-radius:10px;
}
.lmchat-close:hover{ background:rgba(255,255,255,.06); color:var(--lm-text); }

.lmchat-body{ padding:14px; overflow:auto; flex:1; background:radial-gradient(800px 400px at 80% -10%, rgba(94,234,212,.12), transparent 55%); }

.lmchat-msg{ display:flex; margin:10px 0; }
.lmchat-msg.bot{ justify-content:flex-start; }
.lmchat-msg.user{ justify-content:flex-end; }

.lmchat-bubble{
  max-width:85%; padding:10px 12px; border-radius:14px;
  border:1px solid var(--lm-border);
  white-space:pre-wrap;
  font-size:13px; line-height:1.35;
}
.lmchat-msg.bot .lmchat-bubble{ background:var(--lm-card); color:var(--lm-text); border-top-left-radius:6px; }
.lmchat-msg.user .lmchat-bubble{ background:rgba(94,234,212,.14); color:var(--lm-text); border-top-right-radius:6px; }

.lmchat-chiprow{ display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 2px; }
.lmchat-chip{
  background:#1A54D4 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:#fff !important;
  padding:9px 12px !important;
  border-radius:999px !important;
  font-size:12px !important;
  cursor:pointer !important;
  line-height:1.1 !important;
  font-weight:600 !important;
}
.lmchat-chip:hover{ filter:brightness(1.06) !important; }

.lmchat-footer{
  padding:10px; border-top:1px solid var(--lm-border);
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.04));
}
.lmchat-inputrow{ display:flex; gap:8px; }
.lmchat-input{
  flex:1; padding:10px 12px; border-radius:12px;
  border:1px solid var(--lm-border); background:rgba(255,255,255,.04);
  color:var(--lm-text); outline:none;
}
.lmchat-send{
  padding:10px 12px; border-radius:12px; cursor:pointer;
  border:1px solid var(--lm-border); background:rgba(94,234,212,.18); color:var(--lm-text);
}
.lmchat-send:hover{ background:rgba(94,234,212,.26); }

.lmchat-note{ font-size:11px; color:var(--lm-muted); margin-top:6px; }

/* Launcher like site (bubble left, mascot right, no circle) */

.lmchat-launcher{
  display:flex;
  align-items:center;
  margin-right:0;
  gap:14px;
  cursor:pointer;
  user-select:none;
}

/* Use brand blue/white. Use !important to avoid theme overrides */
.lmchat-launcher .lmchat-bubblehint{
  background:#1A54D4 !important; /* ajuste aqui se quiser outro azul */
  color:#fff !important;
  border:1px solid rgba(255,255,255,.10);
  padding:11px 16px;
  border-radius:999px;
  font-weight:400; /* menos "grossa" */
  box-shadow: var(--lm-shadow);
  line-height:1;
  white-space:nowrap;
}

/* Mascot image without circular frame */
.lmchat-launcher .lmchat-mascot-full{
  width:120px;
  height:auto;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  flex:0 0 auto;
}
.lmchat-launcher .lmchat-mascot-full img{
  width:120px;
  height:auto;
  object-fit:contain;
  display:block;
}


/* Force our button styling (avoid Elementor/theme overriding) */

.lmchat-chip,
.lmchat-send,
.lmchat-close{
  -webkit-appearance:none !important;
  appearance:none !important;
  font-family:inherit !important;
  text-transform:none !important;
  box-shadow:none !important;
}

.lmchat-chip{
  background:#1A54D4 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:#fff !important;
  padding:9px 12px !important;
  border-radius:999px !important;
  font-size:12px !important;
  cursor:pointer !important;
  line-height:1.1 !important;
  font-weight:600 !important;
}
.lmchat-chip:hover{ filter:brightness(1.06) !important; }

.lmchat-send{
  background:rgba(94,234,212,.18) !important;
  border:1px solid var(--lm-border) !important;
  color:var(--lm-text) !important;
}
.lmchat-send:hover{ background:rgba(94,234,212,.26) !important; }


/* Ensure launcher stays inside viewport */
.lmchat-launcher{ justify-content:flex-end; }


/* Force header buttons (close/reset) to avoid Elementor pink */

#lmchatReset,
#lmchatClose,
.lmchat-close{
  background:transparent !important;
  border:1px solid var(--lm-border) !important;
  color:var(--lm-text) !important;
  box-shadow:none !important;
  text-decoration:none !important;
  padding:6px 10px !important;
  border-radius:10px !important;
}
#lmchatReset:hover,
#lmchatClose:hover,
.lmchat-close:hover{
  background:rgba(255,255,255,.06) !important;
  color:var(--lm-text) !important;
}


/* Link chip styling */
.lmchat-chip-link{ text-decoration:none !important; display:inline-block !important; }

.lmchat-chip-link{ pointer-events:auto !important; cursor:pointer !important; }


@media (max-width: 480px){
  .lmchat-launcher .lmchat-bubblehint{ padding:9px 12px; font-size:13px; }
  .lmchat-launcher .lmchat-mascot-full img{ width:92px; }
  .lmchat-launcher .lmchat-mascot-full{ width:92px; }
}

.lmchat-consent{ margin-top:8px; font-size:11px; line-height:1.3; color:var(--lm-muted); }

.lmchat-consent a{ color:#1A54D4; text-decoration:none; font-weight:400; }
.lmchat-consent a:hover{ text-decoration:underline; }
