/* UI owns controls, surfaces and overlays. These rules are chat-specific geometry. */
.wblc-launcher.wb-popover {
    position: fixed;
    inset-inline-end: max(var(--wb-s4), env(safe-area-inset-right));
    bottom: max(var(--wb-s4), env(safe-area-inset-bottom));
    pointer-events: none;
}
.wblc-launcher[data-position="left"] {
    inset-inline-start: max(var(--wb-s4), env(safe-area-inset-left));
    inset-inline-end: auto;
}
.wblc-launcher > .wb-btn { pointer-events: auto; }
.wblc-chat-panel.wb-popover-panel {
    width: min(24rem, calc(100vw - var(--wb-s4)));
    min-width: 0;
    max-width: none;
    max-height: min(38rem, calc(100vh - 6rem));
    max-height: min(38rem, calc(100dvh - 6rem));
    overflow: hidden;
}
.wblc-chat-panel.is-open { display: flex; flex-direction: column; }
.wblc-chat-panel > .wb-popover-header,
.wblc-chat-panel > .wb-popover-footer { flex-shrink: 0; }
.wblc-thread { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.wblc-message {
    align-self: flex-start;
    max-width: 85%;
    background: var(--wb-surface-2);
    color: var(--wb-text);
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
.wblc-message[data-outgoing="true"] {
    align-self: flex-end;
    background: var(--wb-primary);
    color: var(--wb-accent-on);
}
.wblc-message > p { white-space: pre-wrap; color: inherit; }
.wblc-message time { display: block; margin-top: var(--wb-s1); text-align: end; color: inherit; }
.wblc-honeypot { position: absolute; left: -10000px; }
