@keyframes rolly-chat-panel-in{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rolly-chat-panel-in-bouncy{0%{opacity:0;transform:translateY(24px) scale(.9)}70%{opacity:1;transform:translateY(-4px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rolly-chat-launcher-pop{0%{transform:scale(.86)}70%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes rolly-chat-launcher-pop-bouncy{0%{transform:scale(.7)}55%{transform:scale(1.12)}80%{transform:scale(.96)}to{transform:scale(1)}}@keyframes rolly-chat-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@keyframes rolly-chat-spin{to{transform:rotate(1turn)}}.rolly-chat-root{font-family:var(--rolly-chat-font,system-ui,-apple-system,sans-serif);font-size:var(--rolly-chat-font-size,14px);z-index:var(--rolly-chat-z,40)}.rolly-chat-spinner{animation:rolly-chat-spin .7s linear infinite}.rolly-chat-tick-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:14px;padding:0 4px;border-radius:999px;background:rgba(0,0,0,.28);line-height:1;font-size:10px;font-weight:700;letter-spacing:-1px;color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.12)}.rolly-chat-tick-badge.is-read{color:#7dffa8;background:rgba(0,0,0,.38)}.rolly-chat-tick-badge.is-sending{min-width:14px;width:14px;padding:0;background:rgba(0,0,0,.32)}.rolly-chat-tick-spinner{width:8px;height:8px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:rolly-chat-spin .65s linear infinite}.rolly-chat-panel{width:min(var(--rolly-chat-panel-w,390px),calc(100vw - 24px));height:min(680px,var(--rolly-chat-panel-h,78vh));border-radius:var(--rolly-chat-radius,22px);background:var(--rolly-chat-panel-bg);color:var(--rolly-chat-panel-fg);box-shadow:var(--rolly-chat-shadow);border:1px solid var(--rolly-chat-border);transform-origin:bottom right}.rolly-chat-panel[data-side=left]{transform-origin:bottom left}.rolly-chat-panel[data-anim=subtle]{animation:rolly-chat-panel-in .22s cubic-bezier(.22,1,.36,1) both}.rolly-chat-panel[data-anim=bouncy]{animation:rolly-chat-panel-in-bouncy .38s cubic-bezier(.34,1.4,.64,1) both}.rolly-chat-panel[data-glass=true]{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.rolly-chat-panel[data-compact=true]{--rolly-chat-pad:10px}.rolly-chat-header{background-image:var(--rolly-chat-header-bg);background-color:var(--rolly-chat-accent,#2563eb);color:var(--rolly-chat-header-fg)}.rolly-chat-bubble-user{background:var(--rolly-chat-user-bg);color:var(--rolly-chat-user-fg)}.rolly-chat-bubble-agent,.rolly-chat-bubble-user{border-radius:var(--rolly-chat-bubble-radius,18px)}.rolly-chat-bubble-agent{background:var(--rolly-chat-agent-bg);color:var(--rolly-chat-agent-fg);border:1px solid var(--rolly-chat-border)}.rolly-chat-launcher{background:var(--rolly-chat-launcher-bg);color:var(--rolly-chat-launcher-fg);box-shadow:var(--rolly-chat-shadow);transition:transform .16s ease,box-shadow .16s ease}.rolly-chat-launcher[data-style=bubble]{width:var(--rolly-chat-launcher-size,56px);height:var(--rolly-chat-launcher-size,56px);border-radius:999px}.rolly-chat-launcher[data-style=bar]{height:calc(var(--rolly-chat-launcher-size, 56px) * .78);padding:0 18px;border-radius:999px;gap:8px;width:auto;min-width:120px}.rolly-chat-launcher[data-style=text]{height:44px;padding:0 16px;border-radius:12px;width:auto;font-weight:600;font-size:14px}.rolly-chat-launcher[data-anim=subtle]{animation:rolly-chat-launcher-pop .28s cubic-bezier(.22,1,.36,1) both}.rolly-chat-launcher[data-anim=bouncy]{animation:rolly-chat-launcher-pop-bouncy .42s cubic-bezier(.34,1.4,.64,1) both}.rolly-chat-launcher:hover{transform:scale(1.04)}.rolly-chat-link{color:var(--rolly-chat-link)}.rolly-chat-typing span{display:inline-block;width:5px;height:5px;margin:0 2px;border-radius:999px;background:currentColor;animation:rolly-chat-dot 1s ease-in-out infinite}.rolly-chat-typing span:nth-child(2){animation-delay:.15s}.rolly-chat-typing span:nth-child(3){animation-delay:.3s}@media (prefers-reduced-motion:reduce){.rolly-chat-launcher,.rolly-chat-panel,.rolly-chat-typing span{animation:none!important}}