/* Shared floating conversation layout. Appearance belongs to ui.css,
   icons.css, message and avatar; no page-specific overrides. */
.sf-ui.sfui-live-chat {
  --sfui-live-chat-width: 350px;
  --sfui-live-chat-height: 460px;
  --sfui-live-chat-edge: var(--sfui-space-20);
  padding: 0;
  background: transparent;
}
.sfui-live-chat__launcher { position: fixed; right: calc(var(--sfui-live-chat-edge) + env(safe-area-inset-right, 0px)); bottom: calc(var(--sfui-live-chat-edge) + env(safe-area-inset-bottom, 0px)); z-index: 10000; }
.sfui-dialog--floating {
  --sfui-dialog-width: var(--sfui-live-chat-width);
  --sfui-card-padding: var(--sfui-space-16);
  --sfui-dialog-backdrop: transparent;
  margin: 0; border: 0; overflow: hidden;
}
.sfui-dialog--floating[open] { display: flex; flex-direction: column; }
.sfui-dialog--floating .sfui-dialog__heading { align-items: center; }
.sfui-live-chat__conversation { display: flex; flex: 1; flex-direction: column; min-height: 0; overflow: clip; }
.sfui-live-chat__messages { display: flex; flex: 1; min-height: 0; flex-direction: column; gap: var(--sfui-space-12); padding: var(--sfui-space-12) var(--sfui-space-16); overflow-y: auto; overscroll-behavior: contain; overflow-anchor: none; }
.sfui-live-chat__status { flex: none; padding: var(--sfui-space-8) var(--sfui-space-16); }
.sfui-live-chat__composer { display: grid; flex: none; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: var(--sfui-space-8); padding: var(--sfui-space-12) var(--sfui-space-16); }
html.sfui-live-chat-open { overflow: hidden; }
html.sfui-live-chat-open body { position: fixed; top: var(--sfui-live-chat-scroll-offset); width: 100%; overflow: hidden; }
@media (min-width: 768px) {
  .sfui-dialog--floating {
    position: fixed; inset: auto;
    right: calc(var(--sfui-live-chat-edge) + env(safe-area-inset-right, 0px));
    bottom: calc(var(--sfui-live-chat-edge) * 2 + var(--sfui-badge-large) + env(safe-area-inset-bottom, 0px));
    width: min(var(--sfui-dialog-width), calc(100% - var(--sfui-live-chat-edge) * 2));
    height: var(--sfui-live-chat-height);
    max-height: calc(var(--sfui-viewport-height, 100dvh) - var(--sfui-badge-large) - var(--sfui-live-chat-edge) * 3 - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  }
}
@media (max-width: 767.98px) {
  .sfui-live-chat__launcher { display: none; }
  html.sfui-live-chat-open .sf-mobile-dock { visibility: hidden; pointer-events: none; }
}
