.has-virtual-assistant .whatsapp-float { display: none; }

.virtual-assistant-launcher {
  align-items: center;
  background: var(--verde-profundo, #103d3a);
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 999px;
  bottom: max(20px, calc(14px + env(safe-area-inset-bottom)));
  box-shadow: 0 12px 30px rgba(4, 52, 42, .26);
  color: var(--branco, #fff);
  display: inline-flex;
  font: 700 13px/1 "Manrope", Arial, sans-serif;
  gap: 10px;
  letter-spacing: .01em;
  min-height: 52px;
  padding: 13px 18px;
  position: fixed;
  right: max(20px, calc(14px + env(safe-area-inset-right)));
  transition: background var(--ease, 180ms ease), transform var(--ease, 180ms ease), box-shadow var(--ease, 180ms ease);
  z-index: 70;
}

.virtual-assistant-launcher:hover { background: var(--cta-esmeralda, #237a61); box-shadow: 0 15px 34px rgba(4, 52, 42, .32); transform: translateY(-2px); }
.virtual-assistant-launcher__mark { align-items: center; background: url("assets/whatsapp.png") center / contain no-repeat; color: transparent; display: inline-flex; font-size: 0; height: 25px; justify-content: center; width: 25px; }
.virtual-assistant-launcher__mark::before,
.virtual-assistant__avatar::before { content: none; }

.virtual-assistant-chat {
  background: var(--branco, #fff);
  border-radius: 18px;
  bottom: 88px;
  box-shadow: 0 20px 60px rgba(4, 35, 31, .25);
  display: none;
  flex-direction: column;
  height: min(620px, calc(100svh - 116px));
  overflow: hidden;
  position: fixed;
  right: 24px;
  width: min(390px, calc(100vw - 40px));
  z-index: 71;
}

.virtual-assistant-chat.is-open { display: flex; }
.virtual-assistant__header { align-items: center; background: var(--verde-profundo, #103d3a); color: var(--branco, #fff); display: flex; justify-content: space-between; padding: 16px 17px; }
.virtual-assistant__heading { align-items: center; display: flex; gap: 11px; }
.virtual-assistant__avatar { align-items: center; background: url("assets/whatsapp.png") center / contain no-repeat; border: 0; color: transparent; display: inline-flex; font-size: 0; height: 38px; justify-content: center; width: 38px; }
.virtual-assistant__title { font: 600 15px/1.15 "Sora", Arial, sans-serif; margin: 0; }
.virtual-assistant__status { color: #c6d8d2; font: 600 10px/1.4 "Manrope", Arial, sans-serif; letter-spacing: .08em; margin: 4px 0 0; text-transform: uppercase; }
.virtual-assistant__close { align-items: center; background: transparent; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; color: var(--branco, #fff); display: inline-flex; font-size: 23px; height: 34px; justify-content: center; line-height: 1; padding: 0 0 3px; width: 34px; }
.virtual-assistant__close:hover { background: var(--branco, #fff); color: var(--verde-profundo, #103d3a); }

.virtual-assistant__messages { background: var(--marfim, #f8f6f1); display: flex; flex: 1; flex-direction: column; gap: 12px; min-height: 0; overflow-y: auto; padding: 17px; }
.virtual-assistant__message { display: flex; }
.virtual-assistant__message--user { justify-content: flex-end; }
.virtual-assistant__bubble { border-radius: 15px; font: 500 14px/1.55 "Manrope", Arial, sans-serif; max-width: 86%; padding: 11px 13px; white-space: pre-line; }
.virtual-assistant__message--bot .virtual-assistant__bubble { background: var(--branco, #fff); border-bottom-left-radius: 4px; box-shadow: 0 2px 8px rgba(4, 52, 42, .06); color: var(--grafite, #1c2826); }
.virtual-assistant__message--user .virtual-assistant__bubble { background: var(--verde-profundo, #103d3a); border-bottom-right-radius: 4px; color: var(--branco, #fff); }
.virtual-assistant__options { display: flex; flex-wrap: wrap; gap: 8px; margin: -3px 0 5px; }
.virtual-assistant__option { background: var(--branco, #fff); border: 1px solid var(--verde-profundo, #103d3a); border-radius: 999px; color: var(--verde-profundo, #103d3a); font: 700 12px/1.25 "Manrope", Arial, sans-serif; padding: 9px 12px; transition: background var(--ease, 180ms ease), color var(--ease, 180ms ease); }
.virtual-assistant__option:hover { background: var(--verde-profundo, #103d3a); color: var(--branco, #fff); }
.virtual-assistant__whatsapp { align-items: center; background: #c9ee78; border-radius: 11px; color: #075b48; display: inline-flex; font: 700 13px/1.35 "Manrope", Arial, sans-serif; justify-content: center; padding: 13px 16px; text-align: center; width: 100%; }
.virtual-assistant__whatsapp:hover { background: #b8e26a; }
.virtual-assistant__composer { align-items: center; background: var(--branco, #fff); border-top: 1px solid #e4e6df; display: flex; gap: 9px; padding: 10px 12px; }
.virtual-assistant__input { background: #f5f6f2; border: 1px solid #dbe0d9; border-radius: 999px; color: var(--grafite, #1c2826); flex: 1; font: 500 13px/1 "Manrope", Arial, sans-serif; height: 42px; min-width: 0; outline: none; padding: 0 14px; }
.virtual-assistant__input:focus { background: var(--branco, #fff); border-color: #25d366; box-shadow: 0 0 0 3px rgba(37,211,102,.15); }
.virtual-assistant__send { align-items: center; background: #25d366; border: 0; border-radius: 50%; color: #fff; display: inline-flex; flex: 0 0 42px; font-size: 18px; height: 42px; justify-content: center; line-height: 1; padding: 0 1px 0 0; transition: background var(--ease, 180ms ease), transform var(--ease, 180ms ease); width: 42px; }
.virtual-assistant__send:hover { background: #1db956; transform: scale(1.04); }
.virtual-assistant__footer { background: var(--branco, #fff); border-top: 1px solid #e4e6df; color: var(--texto-suave, #61706d); font: 600 10px/1.3 "Manrope", Arial, sans-serif; letter-spacing: .05em; padding: 11px 16px; text-align: center; text-transform: uppercase; }

@media (max-width: 767px) {
  .virtual-assistant-launcher { bottom: max(14px, calc(10px + env(safe-area-inset-bottom))); min-height: 50px; padding: 12px 15px; right: max(14px, calc(10px + env(safe-area-inset-right))); }
  .virtual-assistant-chat { bottom: max(76px, calc(66px + env(safe-area-inset-bottom))); height: min(620px, calc(100svh - 102px)); left: 14px; right: 14px; width: auto; }
  .virtual-assistant__messages { padding: 15px; }
}

@media (max-width: 359px) {
  .virtual-assistant-launcher { border-radius: 50%; font-size: 0; padding: 0; width: 50px; justify-content: center; }
  .virtual-assistant-launcher__mark { height: 27px; width: 27px; }
}
