
#rmsva-root{position:fixed;bottom:24px;z-index:999999;font-family:Arial,sans-serif}
#rmsva-root.rmsva-right{right:24px} #rmsva-root.rmsva-left{left:24px}
#rmsva-launch{width:58px;height:58px;border:0;border-radius:50%;background:var(--rmsva-primary);color:#fff;font-size:26px;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.2)}
#rmsva-panel{display:none;width:360px;max-width:calc(100vw - 28px);height:540px;max-height:75vh;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.25);flex-direction:column;margin-bottom:12px}
#rmsva-panel.open{display:flex}
#rmsva-panel header{background:var(--rmsva-primary);color:#fff;padding:15px 16px;display:flex;align-items:center;justify-content:space-between}
#rmsva-panel header small{display:block;opacity:.85;margin-top:2px}
#rmsva-close{border:0;background:transparent;color:#fff;font-size:25px;cursor:pointer}
.rmsva-lang{display:flex;padding:8px;gap:6px;border-bottom:1px solid #eee}
.rmsva-lang button,.rmsva-quick button{border:1px solid #ddd;background:#fff;border-radius:18px;padding:7px 10px;cursor:pointer}
.rmsva-lang button.active{background:var(--rmsva-primary);border-color:var(--rmsva-primary);color:#fff}
#rmsva-messages{flex:1;overflow:auto;padding:14px;background:#f7f8fa}
.rmsva-msg{max-width:82%;padding:10px 12px;border-radius:14px;margin:7px 0;line-height:1.45;font-size:14px}
.rmsva-bot{background:#fff;border:1px solid #e6e6e6}
.rmsva-user{background:var(--rmsva-primary);color:#fff;margin-left:auto}
.rmsva-quick{padding:8px 10px;display:flex;gap:6px;flex-wrap:wrap;border-top:1px solid #eee}
#rmsva-form{display:flex;padding:10px;border-top:1px solid #eee;gap:8px}
#rmsva-input{flex:1;border:1px solid #ddd;border-radius:20px;padding:10px 13px;outline:none}
#rmsva-form button{width:42px;border:0;border-radius:50%;background:var(--rmsva-primary);color:#fff;cursor:pointer}
@media(max-width:480px){#rmsva-root{bottom:14px!important;right:14px!important;left:auto!important}#rmsva-panel{width:calc(100vw - 28px);height:70vh}}

.rmsva-quick{display:grid;grid-template-columns:1fr 1fr;max-height:145px;overflow:auto}
.rmsva-quick button{text-align:left;font-size:12px;line-height:1.25}
.rmsva-quick button:last-child:nth-child(odd){grid-column:1/-1}


/* v1.4.1 - Elementor/theme compatibility patch */
#rmsva-root,
#rmsva-root * { box-sizing: border-box; }

#rmsva-root .rmsva-lang button,
#rmsva-root .rmsva-quick button {
  color: #333 !important;
  background: #fff !important;
  border-color: #d9d9d9 !important;
  -webkit-text-fill-color: #333 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

#rmsva-root .rmsva-lang button:hover,
#rmsva-root .rmsva-quick button:hover {
  color: var(--rmsva-primary) !important;
  background: #f3f7fb !important;
  border-color: var(--rmsva-primary) !important;
  -webkit-text-fill-color: var(--rmsva-primary) !important;
}

#rmsva-root .rmsva-lang button.active,
#rmsva-root .rmsva-lang button.active:hover {
  color: #fff !important;
  background: var(--rmsva-primary) !important;
  border-color: var(--rmsva-primary) !important;
  -webkit-text-fill-color: #fff !important;
}

#rmsva-root .rmsva-quick button span {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#rmsva-root #rmsva-input {
  color: #333 !important;
  background: #fff !important;
  -webkit-text-fill-color: #333 !important;
}

#rmsva-root #rmsva-input::placeholder {
  color: #777 !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #777 !important;
}

#rmsva-root .rmsva-msg {
  color: #333 !important;
  -webkit-text-fill-color: #333 !important;
}

#rmsva-root .rmsva-user {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}


/* v1.4.2 - Premium floating launcher */
#rmsva-toggle,
.rmsva-launcher,
.rmsva-fab,
.rmsva-open {
  width: auto !important;
  min-width: 132px !important;
  height: 56px !important;
  padding: 0 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--rmsva-primary, #1269ad) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .1px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.22) !important;
  cursor: pointer !important;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
  overflow: visible !important;
}

#rmsva-toggle:hover,
.rmsva-launcher:hover,
.rmsva-fab:hover,
.rmsva-open:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 11px 28px rgba(0,0,0,.27) !important;
  filter: brightness(1.04) !important;
}

#rmsva-toggle .rmsva-launch-icon,
.rmsva-launcher .rmsva-launch-icon,
.rmsva-fab .rmsva-launch-icon,
.rmsva-open .rmsva-launch-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

#rmsva-toggle .rmsva-launch-text,
.rmsva-launcher .rmsva-launch-text,
.rmsva-fab .rmsva-launch-text,
.rmsva-open .rmsva-launch-text {
  display: inline-block !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  white-space: nowrap !important;
}

@media (max-width: 480px) {
  #rmsva-toggle,
  .rmsva-launcher,
  .rmsva-fab,
  .rmsva-open {
    min-width: 124px !important;
    height: 54px !important;
    padding: 0 17px !important;
    font-size: 14px !important;
  }
}

/* When chat window is open, launcher can stay compact if JS applies common open classes. */
#rmsva-root.open #rmsva-toggle,
#rmsva-root.rmsva-opened #rmsva-toggle,
#rmsva-root.is-open #rmsva-toggle {
  min-width: 56px !important;
  width: 56px !important;
  padding: 0 !important;
}
#rmsva-root.open #rmsva-toggle .rmsva-launch-text,
#rmsva-root.rmsva-opened #rmsva-toggle .rmsva-launch-text,
#rmsva-root.is-open #rmsva-toggle .rmsva-launch-text {
  display: none !important;
}

/* Actual launcher selector - v1.4.2 */
#rmsva-launch {
  width: auto !important;
  min-width: 132px !important;
  height: 56px !important;
  padding: 0 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--rmsva-primary, #1269ad) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.22) !important;
  cursor: pointer !important;
  transition: transform .18s ease, box-shadow .18s ease !important;
}
#rmsva-launch:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 11px 28px rgba(0,0,0,.27) !important;
}
#rmsva-launch .rmsva-launch-icon { font-size:20px !important; line-height:1 !important; }
#rmsva-launch .rmsva-launch-text {
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  white-space:nowrap !important;
  display:inline-block !important;
}
@media (max-width:480px) {
  #rmsva-launch { min-width:124px !important; height:54px !important; padding:0 17px !important; font-size:14px !important; }
}


/* v1.4.3 - Selectable floating chat button styles */

/* Base button */
#rmsva-launch {
  position: relative !important;
}

/* 1) Pill */
#rmsva-launch.rmsva-style-pill {
  min-width: 132px !important;
  width: auto !important;
  height: 56px !important;
  padding: 0 20px !important;
  border-radius: 999px !important;
}

/* 2) Circular */
#rmsva-launch.rmsva-style-circle {
  min-width: 56px !important;
  width: 56px !important;
  height: 56px !important;
  padding: 0 !important;
  border-radius: 50% !important;
}
#rmsva-launch.rmsva-style-circle .rmsva-launch-icon {
  font-size: 22px !important;
}

/* 3) Online */
#rmsva-launch.rmsva-style-online {
  min-width: 118px !important;
  width: auto !important;
  height: 56px !important;
  padding: 0 19px !important;
  border-radius: 999px !important;
}
#rmsva-launch .rmsva-online-dot {
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: #39c66d !important;
  display: inline-block !important;
  box-shadow: 0 0 0 3px rgba(57,198,109,.18) !important;
  margin-left: 1px !important;
}

/* 4) Corporate clean */
#rmsva-launch.rmsva-style-corporate {
  min-width: 124px !important;
  width: auto !important;
  height: 54px !important;
  padding: 0 22px !important;
  border-radius: 14px !important;
  letter-spacing: .2px !important;
}

/* 5) AI Badge */
#rmsva-launch.rmsva-style-ai {
  min-width: 96px !important;
  width: auto !important;
  height: 56px !important;
  padding: 0 20px !important;
  border-radius: 999px !important;
}
#rmsva-launch .rmsva-ai-badge {
  position: absolute !important;
  top: -6px !important;
  right: -5px !important;
  min-width: 24px !important;
  height: 22px !important;
  padding: 0 6px !important;
  border-radius: 999px !important;
  background: #3ac45d !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 22px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,.18) !important;
}

@media (max-width: 480px) {
  #rmsva-launch.rmsva-style-pill {
    min-width: 124px !important;
    height: 54px !important;
    padding: 0 17px !important;
  }
  #rmsva-launch.rmsva-style-online {
    min-width: 110px !important;
    height: 54px !important;
  }
  #rmsva-launch.rmsva-style-corporate {
    min-width: 116px !important;
    height: 52px !important;
    padding: 0 18px !important;
  }
  #rmsva-launch.rmsva-style-ai {
    min-width: 90px !important;
    height: 54px !important;
  }
}
