/* Jivo-shaped launcher (W356): a green circle on the page, a dark panel header above the frame.
   Colours are tokens so the look changes here, not in the markup or the script. */
.rbp-chat-launcher{--chat-green:#3dbe5b;--chat-green-hover:#34a74f;--chat-head:#2b2f3e;
  --chat-head-ink:#fff;--chat-head-note:#a7b0c2;--chat-head-button:#ffffff1f;--chat-head-grip:#5a6379;
  --chat-surface:#fff;--chat-focus:#145bc4;
  position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom));z-index:90;font:16px/1.5 Manrope,Arial,sans-serif}
.rbp-chat-launcher [hidden]{display:none!important}
.rbp-chat-launcher *{box-sizing:border-box}
.rbp-chat-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.rbp-chat-launcher button:focus-visible{outline:3px solid var(--chat-focus);outline-offset:3px}

.rbp-chat-open{display:grid;place-items:center;width:60px;height:60px;padding:0;border:0;border-radius:50%;background:var(--chat-green);color:#fff;cursor:pointer;box-shadow:0 6px 20px #0000002e}
.rbp-chat-open:hover{background:var(--chat-green-hover)}
.rbp-chat-open-label{display:none}
.rbp-chat-mobile-open,.rbp-chat-mobile-open body{overflow:hidden}

.rbp-chat-panel{position:absolute;right:0;bottom:0;display:flex;flex-direction:column;width:min(420px,calc(100vw - 32px));height:min(660px,calc(100dvh - 124px));border-radius:14px;background:var(--chat-surface);box-shadow:0 12px 40px #00000038;overflow:hidden;animation:rbp-chat-enter .22s ease-out}
.rbp-chat-resize{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:100%;min-height:18px;padding:0;border:0;background:var(--chat-head);cursor:ns-resize;touch-action:none}
.rbp-chat-resize span{width:44px;height:4px;border-radius:4px;background:var(--chat-head-grip)}
.rbp-chat-heading{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:6px 12px 14px 18px;background:var(--chat-head);color:var(--chat-head-ink);cursor:grab;touch-action:none;user-select:none}
.rbp-chat-heading:active{cursor:grabbing}
.rbp-chat-heading .rbp-chat-move{flex:1;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:grab;touch-action:none;user-select:none}
.rbp-chat-move:active{cursor:grabbing}
.rbp-chat-move strong{display:block;font-size:17px;font-weight:800;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rbp-chat-move small{display:block;font-size:13px;font-weight:500;color:var(--chat-head-note)}
.rbp-chat-heading button:not(.rbp-chat-move){display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--chat-head-ink);cursor:pointer}
.rbp-chat-heading button:not(.rbp-chat-move):hover{background:var(--chat-head-button)}
#rbp-chat-sound[aria-pressed=false] .rbp-sound-waves{display:none}
#rbp-chat-sound .rbp-sound-off{display:none}
#rbp-chat-sound[aria-pressed=false] .rbp-sound-off{display:block}

.rbp-chat-panel iframe{width:100%;height:100%;flex:1;min-height:0;border:0;background:var(--chat-surface)}
.rbp-chat-loading{flex:1;margin:0;background:var(--chat-surface)}
.rbp-chat-adjusting iframe,.rbp-chat-adjusting .rbp-chat-loading{visibility:hidden;pointer-events:none}

@media(min-width:701px) and (pointer:fine){.rbp-chat-panel{position:fixed;right:auto;bottom:auto;width:420px}}
@media(max-width:700px),(pointer:coarse){.rbp-chat-resize{display:none}.rbp-chat-heading,.rbp-chat-heading .rbp-chat-move{cursor:default}.rbp-chat-heading{padding-top:14px}}
/* Phone: the chat is the screen, and the home indicator never sits on the input. */
@media(max-width:700px),(pointer:coarse){
  .rbp-chat-launcher{right:12px;bottom:calc(16px + env(safe-area-inset-bottom))}
  .rbp-chat-open{display:flex;align-items:center;justify-content:center;gap:10px;width:auto;max-width:calc(100vw - 24px);height:52px;padding:8px 14px;border-radius:18px}
  .rbp-chat-open-label{display:block;text-align:left;line-height:1.2}
  .rbp-chat-open-label strong{display:block;font-size:13px;font-weight:800}
  .rbp-chat-open-label small{display:block;font-size:11px;margin-top:3px}
  .rbp-chat-open svg{flex-shrink:0;width:24px;height:24px}
  .rbp-chat-panel{position:fixed;inset:0;width:100%;height:100dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:0}
  /* The title is the widest thing in the header; at 375px it must not lose its last word. */
  .rbp-chat-heading{padding-left:14px}
  .rbp-chat-move strong{font-size:16px}
}
@keyframes rbp-chat-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.rbp-chat-panel{animation:none}}
