/* Scoped styles keep Elementor's global button typography out of the guide. */
.ume-assistant {
  --ume-guide-navy: #063b67;
  --ume-guide-green: #0b6b3a;
  position: relative;
  z-index: 9997;
  color: #24455f;
  font: 400 14px/1.5 Inter, Arial, sans-serif;
}
.ume-assistant *, .ume-assistant *::before, .ume-assistant *::after { box-sizing: border-box; }
.ume-assistant :where(button, input) { font: inherit; text-transform: none; letter-spacing: normal; }
.ume-assistant :where(button, a) { -webkit-tap-highlight-color: transparent; }
.ume-assistant :where(button, a, input, [tabindex]):focus-visible { outline: 3px solid #d59415; outline-offset: 4px; }

.ume-assistant .ume-assistant__launcher,
.ume-assistant .ume-whatsapp-float {
  position: fixed;
  right: max(22px, env(safe-area-inset-right));
  display: inline-flex;
  width: auto;
  min-width: 142px;
  height: 50px;
  min-height: 50px;
  margin: 0;
  padding: 8px 17px 8px 12px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 2px solid #fff;
  border-radius: 999px;
  color: #fff !important;
  font: 700 13px/1.2 Inter, Arial, sans-serif;
  text-decoration: none !important;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(9, 39, 60, .18);
  transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.ume-assistant .ume-assistant__launcher { bottom: calc(82px + env(safe-area-inset-bottom)); background: var(--ume-guide-navy); }
.ume-assistant .ume-assistant__launcher:hover { background: #092e4c; transform: translateY(-2px); }
.ume-assistant .ume-assistant__launcher-icon,
.ume-assistant .ume-assistant__avatar { display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; }
.ume-assistant .ume-assistant__launcher-icon { width: 29px; height: 29px; background: rgba(255, 255, 255, .1); }
.ume-assistant .ume-assistant__launcher-icon img { display: block; width: 25px; height: 25px; object-fit: contain; }
.ume-assistant .ume-whatsapp-float { bottom: calc(22px + env(safe-area-inset-bottom)); background: var(--ume-guide-green); }
.ume-assistant .ume-whatsapp-float:hover { background: #07552d; transform: translateY(-2px); }
.ume-assistant .ume-whatsapp-float svg { display: block; width: 23px; height: 23px; flex: 0 0 23px; fill: currentColor; }
.ume-assistant .ume-whatsapp-float small { color: inherit; font: 700 13px/1.2 Inter, Arial, sans-serif; }

.ume-assistant .ume-assistant__panel {
  position: fixed;
  right: max(22px, env(safe-area-inset-right));
  bottom: calc(144px + env(safe-area-inset-bottom));
  display: flex;
  width: min(382px, calc(100% - 44px));
  height: min(610px, calc(100vh - 162px));
  height: min(610px, calc(var(--ume-viewport-height, 100dvh) - 162px));
  max-width: calc(100% - 24px);
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  flex-direction: column;
  border: 1px solid #d4e2eb;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 16px 54px rgba(9, 39, 60, .2);
  overscroll-behavior: contain;
  scrollbar-width: thin;
}
.ume-assistant .ume-assistant__panel[hidden] { display: none !important; }
.ume-assistant .ume-assistant__panel > * { flex-shrink: 0; }
.ume-assistant .ume-assistant__header { display: flex; padding: 16px; align-items: center; gap: 11px; background: var(--ume-guide-navy); color: #fff; }
.ume-assistant .ume-assistant__avatar { width: 40px; height: 40px; background: rgba(255, 255, 255, .11); }
.ume-assistant .ume-assistant__avatar img { width: 30px; height: 30px; object-fit: contain; }
.ume-assistant .ume-assistant__header > span:nth-child(2) { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.ume-assistant .ume-assistant__header strong { color: #fff; font: 750 16px/1.3 Inter, Arial, sans-serif; }
.ume-assistant .ume-assistant__header small { margin-top: 3px; color: #dcebf3; font: 400 11px/1.4 Inter, Arial, sans-serif; }
.ume-assistant .ume-assistant__close { display: grid; width: 40px; height: 40px; min-width: 40px; min-height: 40px; padding: 0; place-items: center; border: 1px solid rgba(255, 255, 255, .28); border-radius: 50%; background: transparent; color: #fff; font: 400 27px/1 Arial, sans-serif; cursor: pointer; }
.ume-assistant .ume-assistant__close:hover { background: rgba(255, 255, 255, .15); }
.ume-assistant .ume-assistant__header :focus-visible { outline-color: #ffd17a; outline-offset: 2px; }
.ume-assistant .ume-assistant__messages { display: flex; min-height: 118px; padding: 16px; overflow-y: auto; flex: 1 1 auto; flex-direction: column; gap: 10px; background: #f3f7fa; overscroll-behavior: contain; scrollbar-width: thin; }
.ume-assistant .ume-assistant__bubble { max-width: 96%; padding: 12px 14px; border: 1px solid #e0e8ee; border-radius: 14px 14px 14px 4px; background: #fff; color: #29485e; font: 400 14px/1.5 Inter, Arial, sans-serif; overflow-wrap: anywhere; }
.ume-assistant .ume-assistant__bubble.is-user { align-self: flex-end; border-color: transparent; border-radius: 14px 14px 4px 14px; background: var(--ume-guide-navy); color: #fff; }
.ume-assistant .ume-assistant__quick { display: grid; padding: 12px 14px 4px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; background: #fff; }
.ume-assistant .ume-assistant__quick button { min-width: 0; min-height: 44px; margin: 0; padding: 9px 10px; border: 1px solid #d3e1e9; border-radius: 10px; background: #f4f9fc; color: #17476a; font: 600 12px/1.4 Inter, Arial, sans-serif; cursor: pointer; white-space: normal; overflow-wrap: anywhere; text-align: left; }
.ume-assistant .ume-assistant__quick button:hover { border-color: #86b6cf; background: #e9f3f9; }
.ume-assistant .ume-assistant__form { display: flex; margin: 0; padding: 11px 14px; gap: 8px; background: #fff; }
.ume-assistant .ume-assistant__form input { display: block; width: 100%; min-width: 0; height: 44px; margin: 0; padding: 11px 12px; flex: 1; border: 1px solid #b4c9d7; border-radius: 10px; background: #fff; color: #193c57; font: 400 14px/1.4 Inter, Arial, sans-serif; }
.ume-assistant .ume-assistant__form input::placeholder { color: #617586; opacity: 1; }
.ume-assistant .ume-assistant__form button { min-height: 44px; margin: 0; padding: 10px 13px; flex: 0 0 auto; border: 0; border-radius: 10px; background: var(--ume-guide-navy); color: #fff; font: 700 13px/1.3 Inter, Arial, sans-serif; cursor: pointer; }
.ume-assistant .ume-assistant__form button:hover { background: #092e4c; }
.ume-assistant .ume-assistant__links { display: flex; margin: 0; padding: 0 14px 10px; gap: 7px; }
.ume-assistant .ume-assistant__links a { display: flex; min-width: 0; min-height: 40px; padding: 8px 5px; flex: 1; align-items: center; justify-content: center; border: 1px solid #dfe8ee; border-radius: 8px; background: #fff; color: #17476a !important; font: 600 12px/1.3 Inter, Arial, sans-serif; text-align: center; text-decoration: none; }
.ume-assistant .ume-assistant__links a:hover { background: #f0f7fb; border-color: #a8c9dc; }
.ume-assistant .ume-assistant__whatsapp { display: block; width: calc(100% - 28px); min-height: 42px; margin: 0 14px; padding: 11px 13px; border: 0; border-radius: 10px; background: var(--ume-guide-green); color: #fff !important; font: 700 13px/1.4 Inter, Arial, sans-serif; text-align: center; text-decoration: none; white-space: normal; cursor: pointer; }
.ume-assistant .ume-assistant__whatsapp:hover { background: #07552d; }
.ume-assistant .ume-assistant__whatsapp.is-pending { border: 1px solid #b8d5c7; background: #edf6f1; color: #25503d !important; }
.ume-assistant .ume-assistant__whatsapp.is-pending:hover { background: #deeee5; }
.ume-assistant .ume-assistant__notice { margin: 10px 16px 14px; color: #5a6c7c; font: 400 11px/1.45 Inter, Arial, sans-serif; text-align: center; }
.ume-assistant .screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

@media (max-width: 767px) {
  .ume-assistant .ume-assistant__launcher, .ume-assistant .ume-whatsapp-float { right: max(12px, env(safe-area-inset-right)); min-width: 132px; height: 48px; min-height: 48px; padding-right: 14px; }
  .ume-assistant .ume-assistant__launcher { bottom: calc(70px + env(safe-area-inset-bottom)); }
  .ume-assistant .ume-whatsapp-float { bottom: calc(12px + env(safe-area-inset-bottom)); }
  .ume-assistant.is-open .ume-assistant__launcher, .ume-assistant.is-open .ume-whatsapp-float { visibility: hidden; }
  .ume-assistant .ume-assistant__panel { left: 12px; right: 12px; bottom: calc(12px + var(--ume-viewport-offset-bottom, 0px) + env(safe-area-inset-bottom)); width: auto; max-width: none; height: min(660px, calc(100vh - 24px)); height: min(660px, calc(var(--ume-viewport-height, 100dvh) - 24px - env(safe-area-inset-bottom))); border-radius: 17px; }
  .ume-assistant .ume-assistant__form input { font-size: 16px; }
}
@media (max-height: 650px) and (min-width: 768px) {
  .ume-assistant .ume-assistant__panel { right: 180px; bottom: 16px; height: calc(var(--ume-viewport-height, 100dvh) - 32px); }
}
@media (max-width: 360px) {
  .ume-assistant .ume-assistant__header { padding: 12px; gap: 8px; }
  .ume-assistant .ume-assistant__avatar { width: 33px; height: 33px; }
  .ume-assistant .ume-assistant__header small { font-size: 10.5px; }
  .ume-assistant .ume-assistant__quick { padding-right: 12px; padding-left: 12px; }
}
/* Logged-in editors keep the guide header below WordPress's toolbar. */
body.admin-bar .ume-assistant { --ume-admin-bar-height: 32px; }
body.admin-bar .ume-assistant .ume-assistant__panel {
  max-height: calc(var(--ume-viewport-height, 100dvh) - 162px - var(--ume-admin-bar-height));
}
@media (max-width: 782px) {
  body.admin-bar .ume-assistant { --ume-admin-bar-height: 46px; }
}
@media (max-width: 767px) {
  body.admin-bar .ume-assistant .ume-assistant__panel {
    max-height: calc(var(--ume-viewport-height, 100dvh) - 24px - var(--ume-admin-bar-height) - env(safe-area-inset-bottom));
  }
}
@media (max-height: 650px) and (min-width: 768px) {
  body.admin-bar .ume-assistant .ume-assistant__panel {
    max-height: calc(var(--ume-viewport-height, 100dvh) - 32px - var(--ume-admin-bar-height));
  }
}
@media (prefers-reduced-motion: reduce) {
  .ume-assistant *, .ume-assistant *::before, .ume-assistant *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
  .ume-assistant .ume-assistant__launcher:hover, .ume-assistant .ume-whatsapp-float:hover { transform: none; }
}
