@fusioni/client-sdk 1.1.3 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"ChatWidget.d.ts","sourceRoot":"","sources":["../../src/components/ChatWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AACtE,OAAO,EAAC,eAAe,EAAuD,MAAM,UAAU,CAAC;AAiB/F,OAAO,qBAAqB,CAAC;AAE7B,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAgxBhD,CAAC"}
1
+ {"version":3,"file":"ChatWidget.d.ts","sourceRoot":"","sources":["../../src/components/ChatWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AACtE,OAAO,EAAC,eAAe,EAAuD,MAAM,UAAU,CAAC;AAkB/F,OAAO,qBAAqB,CAAC;AAE7B,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAmyBhD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../src/components/Message.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AA+LtC,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA4hB1C,CAAC"}
1
+ {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../src/components/Message.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AA6LtC,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA0gB1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../src/components/MessageList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAMhD,UAAU,gBAAgB;IACxB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,WAAW,GAAG,cAAc,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC7F,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuUlD,CAAC"}
1
+ {"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../src/components/MessageList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAQhD,UAAU,gBAAgB;IACxB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,WAAW,GAAG,cAAc,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC7F,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAqVlD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export interface MessageStreamLoadingProps {
3
+ streamMessages: string[];
4
+ loadingLabel: string;
5
+ }
6
+ /** Logo + Spotlight: SSE stream lines, or loading label until first stream event */
7
+ export declare const MessageStreamLoading: React.FC<MessageStreamLoadingProps>;
8
+ //# sourceMappingURL=MessageStreamLoading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageStreamLoading.d.ts","sourceRoot":"","sources":["../../src/components/MessageStreamLoading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,WAAW,yBAAyB;IACtC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA6BpE,CAAC"}
@@ -5285,35 +5285,6 @@ var Fusioni = (function () {
5285
5285
  return (jsxRuntimeExports.jsx("div", { className: "fusioni-map-container", children: staticMap ? (jsxRuntimeExports.jsx("div", { className: "fusioni-map-static", children: jsxRuntimeExports.jsx("img", { src: mapUrl, alt: `Map showing location at ${lat}, ${lng}`, width: width, height: height, className: "fusioni-map-image", onError: () => setError('Failed to load map image') }) })) : (jsxRuntimeExports.jsx("div", { className: "fusioni-map-interactive", children: jsxRuntimeExports.jsx("iframe", { src: mapUrl, width: width, height: height, style: { border: 0 }, loading: "lazy", allowFullScreen: true, title: `Map showing location at ${lat}, ${lng}`, className: "fusioni-map-iframe" }) })) }));
5286
5286
  };
5287
5287
 
5288
- const DURATION_MS = 2500;
5289
- const Spotlight = ({ text, className }) => {
5290
- const rootRef = reactExports.useRef(null);
5291
- const startRef = reactExports.useRef(0);
5292
- const frameRef = reactExports.useRef(null);
5293
- reactExports.useEffect(() => {
5294
- startRef.current = performance.now();
5295
- const tick = () => {
5296
- const elapsed = performance.now() - startRef.current;
5297
- const period = DURATION_MS * 2;
5298
- const t = (elapsed % period) / DURATION_MS;
5299
- const x = t <= 1 ? t * 100 : (2 - t) * 100;
5300
- const el = rootRef.current;
5301
- if (el) {
5302
- el.style.setProperty('--mask-x', `${x}%`);
5303
- el.style.setProperty('--mask-y', '50%');
5304
- }
5305
- frameRef.current = requestAnimationFrame(tick);
5306
- };
5307
- frameRef.current = requestAnimationFrame(tick);
5308
- return () => {
5309
- if (frameRef.current != null) {
5310
- cancelAnimationFrame(frameRef.current);
5311
- }
5312
- };
5313
- }, []);
5314
- return (jsxRuntimeExports.jsx("div", { ref: rootRef, className: className ? `fusioni-spotlight ${className}` : 'fusioni-spotlight', children: jsxRuntimeExports.jsxs("div", { className: "fusioni-spotlight-title", children: [jsxRuntimeExports.jsx("span", { className: "fusioni-spotlight-text-base", children: text }), jsxRuntimeExports.jsx("span", { className: "fusioni-spotlight-text-overlay", "aria-hidden": "true", children: text })] }) }));
5315
- };
5316
-
5317
5288
  const GALLERY_STRIP_MAX_ROWS = 2;
5318
5289
  /**
5319
5290
  * Horizontal slide of pages, each a grid with `columns` × {@link GALLERY_STRIP_MAX_ROWS} cells.
@@ -5418,7 +5389,7 @@ var Fusioni = (function () {
5418
5389
  // Module-level Set to track which message IDs have been animated
5419
5390
  // This persists across component unmounts/remounts (e.g., when chat closes and reopens)
5420
5391
  const animatedMessageIds = new Set();
5421
- const Message = ({ message, showThoughts = false, fontSize = 'text-sm', onDelete, onConfirmation, enableButtons = true, streamMessages = [], apiBaseUrl, apiKey, agencyId, currentLanguage = 'en', onOpenGallery }) => {
5392
+ const Message = ({ message, showThoughts = false, fontSize = 'text-sm', onDelete, onConfirmation, enableButtons = true, apiBaseUrl, apiKey, agencyId, currentLanguage = 'en', onOpenGallery }) => {
5422
5393
  const { t } = useTranslation(currentLanguage);
5423
5394
  const [displayedContent, setDisplayedContent] = reactExports.useState('');
5424
5395
  const typingIntervalRef = reactExports.useRef(null);
@@ -5651,14 +5622,53 @@ var Fusioni = (function () {
5651
5622
  ? displayedContent
5652
5623
  : message.content;
5653
5624
  const extractedUrls = reactExports.useMemo(() => extractUrlsFromContent(message.content), [message.content]);
5654
- return (jsxRuntimeExports.jsxs("div", { className: getMessageClasses(), children: [message.content && !message.loading && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-text", dangerouslySetInnerHTML: {
5625
+ const hasVisibleWhileLoading = Boolean(message.extra_data) ||
5626
+ (showThoughts && Boolean(message.thoughts)) ||
5627
+ Boolean(message.has_error);
5628
+ const collapseEmptyLoadingBubble = Boolean(message.loading) && !hasVisibleWhileLoading;
5629
+ return (jsxRuntimeExports.jsxs("div", { className: `${getMessageClasses()}${collapseEmptyLoadingBubble ? ' fusioni-message-bubble--loading-empty' : ''}`.trim(), children: [message.content && !message.loading && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-text", dangerouslySetInnerHTML: {
5655
5630
  __html: enhanceMessageContent(contentToDisplay)
5656
- } })), message.loading && (jsxRuntimeExports.jsx("div", { className: "fusioni-stream-messages", children: (streamMessages.length > 0 ? streamMessages : [t('chat.messages.loading')]).map((line, index) => (jsxRuntimeExports.jsxs("div", { className: "fusioni-stream-message-item", children: [jsxRuntimeExports.jsx("div", { className: "fusioni-stream-message-logo-wrap", children: jsxRuntimeExports.jsx("div", { className: "fusioni-stream-message-logo-frame", children: jsxRuntimeExports.jsx("img", { className: "fusioni-stream-message-logo-img", src: FUSIONI_LOGO_BASE64, alt: "", width: 32, height: 32 }) }) }), jsxRuntimeExports.jsx(Spotlight, { className: "fusioni-stream-message-spotlight", text: line })] }, streamMessages.length > 0 ? `${index}-${line}` : 'loading-placeholder'))) })), !message.loading && extractedUrls.length > 0 && message.role !== 'user' && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-url-previews", children: extractedUrls.map((url) => (jsxRuntimeExports.jsx(UrlPreview, { url: url, agencyId: agencyId, showCloseButton: false, compact: true, autoFetch: true, apiBaseUrl: apiBaseUrl, apiKey: apiKey }, url))) })), message.extra_data && (jsxRuntimeExports.jsxs("div", { className: "fusioni-message-extra m2", children: [message.extra_data.document_images &&
5631
+ } })), !message.loading && extractedUrls.length > 0 && message.role !== 'user' && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-url-previews", children: extractedUrls.map((url) => (jsxRuntimeExports.jsx(UrlPreview, { url: url, agencyId: agencyId, showCloseButton: false, compact: true, autoFetch: true, apiBaseUrl: apiBaseUrl, apiKey: apiKey }, url))) })), message.extra_data && (jsxRuntimeExports.jsxs("div", { className: "fusioni-message-extra m2", children: [message.extra_data.document_images &&
5657
5632
  message.extra_data.document_images.length > 0 &&
5658
5633
  onOpenGallery && (jsxRuntimeExports.jsx(DocumentImageGrid, { images: message.extra_data.document_images, onOpenGallery: onOpenGallery, attachedImagesLabel: t('chat.attachedImages') })), message.extra_data.document_videos &&
5659
5634
  message.extra_data.document_videos.length > 0 && (jsxRuntimeExports.jsx(DocumentVideoGrid, { videos: message.extra_data.document_videos, attachedVideosLabel: t('chat.attachedVideos') })), message.extra_data.image && renderImage(message.extra_data.image), message.extra_data.image_ref && renderImage(message.extra_data.image_ref), message.extra_data.audio_ref && renderAudio(message.extra_data.audio_ref, message.extra_data.duration), message.extra_data.coordinates && renderMap(message.extra_data.coordinates), message.extra_data.map && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-map", children: jsxRuntimeExports.jsx(Map$1, { lat: message.extra_data.map.lat, lng: message.extra_data.map.lng, zoom: message.extra_data.map.zoom, staticMap: true, width: 600, height: 400, apiBaseUrl: apiBaseUrl, apiKey: apiKey, agencyId: agencyId }) }))] })), message.extra_data?.widget === 'Confirmation' && (jsxRuntimeExports.jsxs("div", { className: "fusioni-confirmation-widget", children: [jsxRuntimeExports.jsx("button", { type: "button", disabled: !enableButtons, onClick: () => sendConfirmation('Confirmed', message.extra_data?.key), className: "fusioni-btn fusioni-btn-primary fusioni-btn-confirm", children: t('common.yes') }), jsxRuntimeExports.jsx("button", { type: "button", disabled: !enableButtons, onClick: () => sendConfirmation('NotConfirmed', message.extra_data?.key), className: "fusioni-btn fusioni-btn-secondary fusioni-btn-cancel", children: t('common.no') })] })), showThoughts && message.thoughts && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-thoughts", children: jsxRuntimeExports.jsxs("details", { children: [jsxRuntimeExports.jsx("summary", { children: "AI Thoughts" }), jsxRuntimeExports.jsx("p", { children: message.thoughts })] }) })), message.has_error && (jsxRuntimeExports.jsxs("div", { className: "fusioni-message-error-indicator", children: [jsxRuntimeExports.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("circle", { cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "2" }), jsxRuntimeExports.jsx("line", { x1: "15", y1: "9", x2: "9", y2: "15", stroke: "currentColor", strokeWidth: "2" }), jsxRuntimeExports.jsx("line", { x1: "9", y1: "9", x2: "15", y2: "15", stroke: "currentColor", strokeWidth: "2" })] }), jsxRuntimeExports.jsx("span", { children: "Error occurred" })] }))] }));
5660
5635
  };
5661
5636
 
5637
+ const DURATION_MS = 2500;
5638
+ const Spotlight = ({ text, className }) => {
5639
+ const rootRef = reactExports.useRef(null);
5640
+ const startRef = reactExports.useRef(0);
5641
+ const frameRef = reactExports.useRef(null);
5642
+ reactExports.useEffect(() => {
5643
+ startRef.current = performance.now();
5644
+ const tick = () => {
5645
+ const elapsed = performance.now() - startRef.current;
5646
+ const period = DURATION_MS * 2;
5647
+ const t = (elapsed % period) / DURATION_MS;
5648
+ const x = t <= 1 ? t * 100 : (2 - t) * 100;
5649
+ const el = rootRef.current;
5650
+ if (el) {
5651
+ el.style.setProperty('--mask-x', `${x}%`);
5652
+ el.style.setProperty('--mask-y', '50%');
5653
+ }
5654
+ frameRef.current = requestAnimationFrame(tick);
5655
+ };
5656
+ frameRef.current = requestAnimationFrame(tick);
5657
+ return () => {
5658
+ if (frameRef.current != null) {
5659
+ cancelAnimationFrame(frameRef.current);
5660
+ }
5661
+ };
5662
+ }, []);
5663
+ return (jsxRuntimeExports.jsx("div", { ref: rootRef, className: className ? `fusioni-spotlight ${className}` : 'fusioni-spotlight', children: jsxRuntimeExports.jsxs("div", { className: "fusioni-spotlight-title", children: [jsxRuntimeExports.jsx("span", { className: "fusioni-spotlight-text-base", children: text }), jsxRuntimeExports.jsx("span", { className: "fusioni-spotlight-text-overlay", "aria-hidden": "true", children: text })] }) }));
5664
+ };
5665
+
5666
+ /** Logo + Spotlight: SSE stream lines, or loading label until first stream event */
5667
+ const MessageStreamLoading = ({ streamMessages, loadingLabel, }) => {
5668
+ const lines = streamMessages.length > 0 ? streamMessages : [loadingLabel];
5669
+ return (jsxRuntimeExports.jsx("div", { className: "fusioni-stream-messages", children: lines.map((line, index) => (jsxRuntimeExports.jsxs("div", { className: "fusioni-stream-message-item", children: [jsxRuntimeExports.jsx("div", { className: "fusioni-stream-message-logo-wrap", children: jsxRuntimeExports.jsx("div", { className: "fusioni-stream-message-logo-frame", children: jsxRuntimeExports.jsx("img", { className: "fusioni-stream-message-logo-img", src: FUSIONI_LOGO_BASE64, alt: "", width: 32, height: 32 }) }) }), jsxRuntimeExports.jsx(Spotlight, { className: "fusioni-stream-message-spotlight", text: line })] }, streamMessages.length > 0 ? `${index}-${line}` : 'loading-placeholder'))) }));
5670
+ };
5671
+
5662
5672
  /**
5663
5673
  * Full-screen image lightbox: main image + prev/next, keyboard nav,
5664
5674
  * and a two-row thumbnail strip with horizontal pages and dot indicators (fusioni-web parity).
@@ -5773,6 +5783,7 @@ var Fusioni = (function () {
5773
5783
  };
5774
5784
 
5775
5785
  const MessageList = ({ messages, streamMessages, showThoughts = false, onDeleteMessage, onEditMessage, onConfirmation, enableButtons = true, apiBaseUrl, apiKey, agencyId, currentLanguage = 'en', theme = 'light' }) => {
5786
+ const { t } = useTranslation(currentLanguage);
5776
5787
  const messagesEndRef = reactExports.useRef(null);
5777
5788
  const scrollContainerRef = reactExports.useRef(null);
5778
5789
  const editRef = reactExports.useRef(null);
@@ -5870,12 +5881,12 @@ var Fusioni = (function () {
5870
5881
  const isLastMessage = index === messages.length - 1;
5871
5882
  const messageKey = message.id ??
5872
5883
  `msg-fallback-${index}-${message.role}-${message.created instanceof Date ? message.created.getTime() : 0}`;
5873
- return (jsxRuntimeExports.jsx("div", { className: "fusioni-message-wrapper", children: jsxRuntimeExports.jsxs("div", { className: `fusioni-message ${message.role}`, children: [jsxRuntimeExports.jsx("div", { className: "fusioni-message-avatar", children: message.role === 'user' ? (jsxRuntimeExports.jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("path", { d: "M20 21V19C20 17.9391 19.5786 16.9217 18.8284 16.1716C18.0783 15.4214 17.0609 15 16 15H8C6.93913 15 5.92172 15.4214 5.17157 16.1716C4.42143 16.9217 4 17.9391 4 19V21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("circle", { cx: "12", cy: "7", r: "4", stroke: "currentColor", strokeWidth: "2" })] })) : (jsxRuntimeExports.jsx("img", { src: FUSIONI_LOGO_BASE64, alt: "Fusioni Logo", width: "24", height: "24" })) }), jsxRuntimeExports.jsxs("div", { className: "fusioni-message-content", children: [jsxRuntimeExports.jsx("div", { className: "fusioni-message-body", children: message.role === 'user' && editingMessageId === message.id ? (jsxRuntimeExports.jsx("div", { ref: editRef, className: "fusioni-message-text", contentEditable: true, suppressContentEditableWarning: true, spellCheck: true, onKeyDown: (event) => {
5884
+ return (jsxRuntimeExports.jsx("div", { className: "fusioni-message-wrapper", children: jsxRuntimeExports.jsxs("div", { className: `fusioni-message ${message.role}`, children: [!(message.role === 'assistant' && message.loading) && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-avatar", children: message.role === 'user' ? (jsxRuntimeExports.jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("path", { d: "M20 21V19C20 17.9391 19.5786 16.9217 18.8284 16.1716C18.0783 15.4214 17.0609 15 16 15H8C6.93913 15 5.92172 15.4214 5.17157 16.1716C4.42143 16.9217 4 17.9391 4 19V21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("circle", { cx: "12", cy: "7", r: "4", stroke: "currentColor", strokeWidth: "2" })] })) : (jsxRuntimeExports.jsx("img", { src: FUSIONI_LOGO_BASE64, alt: "Fusioni Logo", width: "24", height: "24" })) })), jsxRuntimeExports.jsxs("div", { className: "fusioni-message-content", children: [jsxRuntimeExports.jsx("div", { className: "fusioni-message-body", children: message.role === 'user' && editingMessageId === message.id ? (jsxRuntimeExports.jsx("div", { ref: editRef, className: "fusioni-message-text", contentEditable: true, suppressContentEditableWarning: true, spellCheck: true, onKeyDown: (event) => {
5874
5885
  if (event.key === 'Escape') {
5875
5886
  event.preventDefault();
5876
5887
  cancelEdit();
5877
5888
  }
5878
- } })) : (jsxRuntimeExports.jsx(Message, { message: message, showThoughts: showThoughts, onDelete: onDeleteMessage, onConfirmation: onConfirmation, enableButtons: enableButtons && isLastMessage, streamMessages: message.loading ? streamMessages : [], apiBaseUrl: apiBaseUrl, apiKey: apiKey, agencyId: agencyId, currentLanguage: currentLanguage, onOpenGallery: openGallery })) }), jsxRuntimeExports.jsxs("div", { className: "fusioni-message-footer", children: [jsxRuntimeExports.jsx("span", { className: "fusioni-message-time", children: formatDate(message.created) }), message.id && (onDeleteMessage || (message.role === 'user' && onEditMessage)) && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-actions", children: message.role === 'user' && editingMessageId === message.id ? (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("button", { onClick: confirmEdit, className: "fusioni-btn fusioni-btn-icon", title: "Save edit", children: jsxRuntimeExports.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: jsxRuntimeExports.jsx("polyline", { points: "20 6 9 17 4 12", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) }), jsxRuntimeExports.jsx("button", { onClick: cancelEdit, className: "fusioni-btn fusioni-btn-icon", title: "Cancel edit", children: jsxRuntimeExports.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("line", { x1: "18", y1: "6", x2: "6", y2: "18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("line", { x1: "6", y1: "6", x2: "18", y2: "18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) })] })) : (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [message.role === 'user' && onEditMessage && (jsxRuntimeExports.jsx("button", { onClick: () => startEdit(message), className: "fusioni-btn fusioni-btn-icon", title: "Edit message", children: jsxRuntimeExports.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("path", { d: "M12 20H21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("path", { d: "M16.5 3.5C16.8978 3.10218 17.4374 2.87868 18 2.87868C18.5626 2.87868 19.1022 3.10218 19.5 3.5C19.8978 3.89782 20.1213 4.43739 20.1213 5C20.1213 5.56261 19.8978 6.10218 19.5 6.5L7 19L3 20L4 16L16.5 3.5Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) })), onDeleteMessage && (jsxRuntimeExports.jsx("button", { onClick: () => onDeleteMessage(message.id), className: "fusioni-btn fusioni-btn-icon", title: "Delete message", children: jsxRuntimeExports.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("path", { d: "M3 6H5H21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("path", { d: "M8 6V4C8 3.46957 8.21071 2.96086 8.58579 2.58579C8.96086 2.21071 9.46957 2 10 2H14C14.5304 2 15.0391 2.21071 15.4142 2.58579C15.7893 2.96086 16 3.46957 16 4V6M19 6V20C19 20.5304 18.7893 21.0391 18.4142 21.4142C18.0391 21.7893 17.5304 22 17 22H7C6.46957 22 5.96086 21.7893 5.58579 21.4142C5.21071 21.0391 5 20.5304 5 20V6H19Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) }))] })) }))] }), showThoughts && message.thoughts && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-thoughts", children: jsxRuntimeExports.jsxs("details", { children: [jsxRuntimeExports.jsx("summary", { children: "Thoughts" }), jsxRuntimeExports.jsx("p", { children: message.thoughts })] }) }))] })] }) }, messageKey));
5889
+ } })) : (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [message.loading && (jsxRuntimeExports.jsx(MessageStreamLoading, { streamMessages: streamMessages, loadingLabel: t('chat.messages.loading') })), !message.loading && (jsxRuntimeExports.jsx(Message, { message: message, showThoughts: showThoughts, onDelete: onDeleteMessage, onConfirmation: onConfirmation, enableButtons: enableButtons && isLastMessage, apiBaseUrl: apiBaseUrl, apiKey: apiKey, agencyId: agencyId, currentLanguage: currentLanguage, onOpenGallery: openGallery }))] })) }), !message.loading && (jsxRuntimeExports.jsxs("div", { className: "fusioni-message-footer", children: [jsxRuntimeExports.jsx("span", { className: "fusioni-message-time", children: formatDate(message.created) }), message.id && (onDeleteMessage || (message.role === 'user' && onEditMessage)) && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-actions", children: message.role === 'user' && editingMessageId === message.id ? (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("button", { onClick: confirmEdit, className: "fusioni-btn fusioni-btn-icon", title: "Save edit", children: jsxRuntimeExports.jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: jsxRuntimeExports.jsx("polyline", { points: "20 6 9 17 4 12", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) }), jsxRuntimeExports.jsx("button", { onClick: cancelEdit, className: "fusioni-btn fusioni-btn-icon", title: "Cancel edit", children: jsxRuntimeExports.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("line", { x1: "18", y1: "6", x2: "6", y2: "18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("line", { x1: "6", y1: "6", x2: "18", y2: "18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) })] })) : (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [message.role === 'user' && onEditMessage && (jsxRuntimeExports.jsx("button", { onClick: () => startEdit(message), className: "fusioni-btn fusioni-btn-icon", title: "Edit message", children: jsxRuntimeExports.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("path", { d: "M12 20H21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("path", { d: "M16.5 3.5C16.8978 3.10218 17.4374 2.87868 18 2.87868C18.5626 2.87868 19.1022 3.10218 19.5 3.5C19.8978 3.89782 20.1213 4.43739 20.1213 5C20.1213 5.56261 19.8978 6.10218 19.5 6.5L7 19L3 20L4 16L16.5 3.5Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) })), onDeleteMessage && (jsxRuntimeExports.jsx("button", { onClick: () => onDeleteMessage(message.id), className: "fusioni-btn fusioni-btn-icon", title: "Delete message", children: jsxRuntimeExports.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", children: [jsxRuntimeExports.jsx("path", { d: "M3 6H5H21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntimeExports.jsx("path", { d: "M8 6V4C8 3.46957 8.21071 2.96086 8.58579 2.58579C8.96086 2.21071 9.46957 2 10 2H14C14.5304 2 15.0391 2.21071 15.4142 2.58579C15.7893 2.96086 16 3.46957 16 4V6M19 6V20C19 20.5304 18.7893 21.0391 18.4142 21.4142C18.0391 21.7893 17.5304 22 17 22H7C6.46957 22 5.96086 21.7893 5.58579 21.4142C5.21071 21.0391 5 20.5304 5 20V6H19Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) }))] })) }))] })), showThoughts && message.thoughts && (jsxRuntimeExports.jsx("div", { className: "fusioni-message-thoughts", children: jsxRuntimeExports.jsxs("details", { children: [jsxRuntimeExports.jsx("summary", { children: "Thoughts" }), jsxRuntimeExports.jsx("p", { children: message.thoughts })] }) }))] })] }) }, messageKey));
5879
5890
  }) })), jsxRuntimeExports.jsx("div", { ref: messagesEndRef })] }) }), gallerySession &&
5880
5891
  typeof document !== 'undefined' &&
5881
5892
  reactDomExports.createPortal(jsxRuntimeExports.jsx(ImageGallery, { images: gallerySession.images, initialIndex: gallerySession.index, theme: theme, onClose: () => setGallerySession(null) }, gallerySession.key), document.body)] }));
@@ -6459,6 +6470,24 @@ var Fusioni = (function () {
6459
6470
  };
6460
6471
  };
6461
6472
 
6473
+ /** Matches `index.css` mobile breakpoint for chat layout. */
6474
+ const MOBILE_MEDIA_QUERY = '(max-width: 768px)';
6475
+ function useIsMobileLayout() {
6476
+ const [isMobile, setIsMobile] = reactExports.useState(() => {
6477
+ if (typeof window === 'undefined')
6478
+ return false;
6479
+ return window.matchMedia(MOBILE_MEDIA_QUERY).matches;
6480
+ });
6481
+ reactExports.useEffect(() => {
6482
+ const mq = window.matchMedia(MOBILE_MEDIA_QUERY);
6483
+ const onChange = () => setIsMobile(mq.matches);
6484
+ onChange();
6485
+ mq.addEventListener('change', onChange);
6486
+ return () => mq.removeEventListener('change', onChange);
6487
+ }, []);
6488
+ return isMobile;
6489
+ }
6490
+
6462
6491
  function styleInject(css, ref) {
6463
6492
  if ( ref === void 0 ) ref = {};
6464
6493
  var insertAt = ref.insertAt;
@@ -6486,7 +6515,7 @@ var Fusioni = (function () {
6486
6515
  }
6487
6516
  }
6488
6517
 
6489
- var css_248z = ":root{--fusioni-primary:#2563eb;--fusioni-primary-light:#3b82f6;--fusioni-primary-dark:#1d4ed8;--fusioni-secondary:#64748b;--fusioni-success:#059669;--fusioni-warning:#d97706;--fusioni-error:#dc2626;--fusioni-info:#0284c7;--fusioni-bg-primary:#fff;--fusioni-bg-secondary:#e7e7e7;--fusioni-bg-tertiary:#f1f5f9;--fusioni-bg-accent:#f0f9ff;--fusioni-bg-dark:#0f172a;--fusioni-bg-darker:#020617;--fusioni-text-primary:#0f172a;--fusioni-text-secondary:#475569;--fusioni-text-muted:#94a3b8;--fusioni-text-light:#fff;--fusioni-border:#e2e8f0;--fusioni-border-light:#f1f5f9;--fusioni-border-dark:#334155;--fusioni-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--fusioni-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--fusioni-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--fusioni-shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--fusioni-shadow-2xl:0 25px 50px -12px rgba(0,0,0,.25);--fusioni-radius:0.375rem;--fusioni-radius-md:0.5rem;--fusioni-radius-lg:0.75rem;--fusioni-radius-xl:1rem;--fusioni-radius-2xl:1.5rem;--fusioni-transition:all 0.2s cubic-bezier(0.4,0,0.2,1);--fusioni-transition-fast:all 0.15s cubic-bezier(0.4,0,0.2,1)}.fusioni-chat-widget{--fusioni-primary:var(--primary-color,#2563eb);--fusioni-primary-light:var(--primary-color,#3b82f6);--fusioni-primary-dark:var(--primary-color,#1d4ed8)}.fusioni-chat-widget.dark{--fusioni-primary:var(--primary-color,#3b82f6);--fusioni-primary-light:var(--primary-color,#60a5fa);--fusioni-primary-dark:var(--primary-color,#2563eb);--fusioni-secondary:#64748b;--fusioni-success:#10b981;--fusioni-warning:#f59e0b;--fusioni-error:#ef4444;--fusioni-info:#06b6d4;--fusioni-bg-primary:#0f172a;--fusioni-bg-secondary:#1e293b;--fusioni-bg-tertiary:#334155;--fusioni-bg-accent:#1e293b;--fusioni-bg-dark:#020617;--fusioni-bg-darker:#000;--fusioni-text-primary:#f8fafc;--fusioni-text-secondary:#cbd5e1;--fusioni-text-muted:#64748b;--fusioni-text-light:#fff;--fusioni-border:#334155;--fusioni-border-light:#475569;--fusioni-border-dark:#1e293b}.fusioni-chat-widget{background-color:var(--fusioni-bg-primary);color:var(--fusioni-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5}.fusioni-floating-button{align-items:center;backdrop-filter:blur(10px);background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border:none;border:2px solid hsla(0,0%,100%,.1);border-radius:50%;box-shadow:var(--fusioni-shadow-2xl);cursor:pointer;display:flex;height:64px;justify-content:center;overflow:visible;position:fixed;width:64px;z-index:1000}.fusioni-floating-button:hover{background:linear-gradient(135deg,var(--fusioni-primary-dark) 0,var(--fusioni-primary) 100%);box-shadow:0 25px 50px -12px rgba(37,99,235,.4);transform:translateY(-2px) scale(1.05)}.fusioni-floating-button:active{transform:translateY(0) scale(.98)}.fusioni-floating-button-glass{backdrop-filter:blur(20px);background:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.4);box-shadow:0 8px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.4)}@supports not (backdrop-filter:blur(20px)){.fusioni-floating-button-glass{background:hsla(0,0%,100%,.9);border:1px solid rgba(0,0,0,.1)}}.fusioni-floating-button-minimal{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);box-shadow:0 4px 12px rgba(0,0,0,.05),0 1px 3px rgba(0,0,0,.1)}.fusioni-floating-button-solid{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);box-shadow:0 4px 12px rgba(37,99,235,.15),0 1px 3px rgba(37,99,235,.1)}.fusioni-floating-button-content{align-items:center;display:flex;justify-content:center}.fusioni-floating-button-icon{transition:all .3s cubic-bezier(.4,0,.2,1)}.fusioni-floating-button-glass .fusioni-floating-button-icon{color:var(--fusioni-text-primary);filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.fusioni-floating-button-minimal .fusioni-floating-button-icon{color:var(--fusioni-text-primary)}.fusioni-floating-button-solid .fusioni-floating-button-icon{color:#fff}.fusioni-floating-button-attention-ring{animation:attentionRingPulse 3s ease-in-out infinite;border:2px solid var(--fusioni-primary);border-radius:50%;bottom:-8px;left:-8px;opacity:0;pointer-events:none;position:absolute;right:-8px;top:-8px}.fusioni-floating-button-attention-ring-2{animation:attentionRingPulse 3s ease-in-out .5s infinite;border:1px solid var(--fusioni-primary-light);border-radius:50%;bottom:-16px;left:-16px;opacity:0;pointer-events:none;position:absolute;right:-16px;top:-16px}.fusioni-floating-button-attention-ring-3{animation:attentionRingPulse 3s ease-in-out 1s infinite;border:1px solid rgba(99,102,241,.3);border-radius:50%;bottom:-24px;left:-24px;opacity:0;pointer-events:none;position:absolute;right:-24px;top:-24px}.fusioni-floating-button-neural-particles{bottom:0;left:0;overflow:visible;pointer-events:none;position:absolute;right:0;top:0}.fusioni-neural-particle{animation:neuralParticleFloat 4s ease-in-out infinite;background:var(--fusioni-primary-light);border-radius:50%;box-shadow:0 0 6px var(--fusioni-primary-light);height:3px;opacity:0;position:absolute;width:3px}.fusioni-neural-particle:first-child{animation-delay:0s;left:15%;top:20%}.fusioni-neural-particle:nth-child(2){animation-delay:.8s;right:20%;top:15%}.fusioni-neural-particle:nth-child(3){animation-delay:1.6s;bottom:25%;left:25%}.fusioni-neural-particle:nth-child(4){animation-delay:2.4s;bottom:20%;right:15%}.fusioni-neural-particle:nth-child(5){animation-delay:3.2s;left:5%;top:50%}.fusioni-neural-particle:nth-child(6){animation-delay:.4s;right:5%;top:50%}.fusioni-floating-button-brain-activity{animation:brainActivityPulse 2.5s ease-in-out infinite;background:linear-gradient(45deg,#10b981,#059669);border-radius:50%;box-shadow:0 0 8px rgba(16,185,129,.6);height:16px;opacity:0;pointer-events:none;position:absolute;right:-2px;top:-2px;width:16px}.fusioni-floating-button-brain-activity:before{animation:brainCorePulse 1s ease-in-out infinite;background:#fff;border-radius:50%;content:\"\";height:6px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:6px}.fusioni-floating-button-attention-sequence{height:100px;left:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:100px}.fusioni-attention-wave{animation:attentionWaveExpand 2s ease-out infinite;border:2px solid var(--fusioni-primary);border-radius:50%;bottom:0;left:0;opacity:0;position:absolute;right:0;top:0}.fusioni-attention-wave:nth-child(2){animation-delay:.3s}.fusioni-attention-wave:nth-child(3){animation-delay:.6s}.fusioni-floating-button-periodic-pulse{animation:periodicAttentionPulse 8s ease-in-out infinite;background:radial-gradient(circle,rgba(99,102,241,.1) 0,transparent 70%);border-radius:50%;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0}.fusioni-floating-button-glow{animation:enhancedGlowPulse 3s ease-in-out infinite;background:radial-gradient(circle,rgba(99,102,241,.3) 0,transparent 70%);border-radius:50%;bottom:-4px;left:-4px;opacity:0;pointer-events:none;position:absolute;right:-4px;top:-4px}.fusioni-floating-button-magnetic-field{animation:magneticFieldRotate 6s linear infinite;border:1px solid rgba(99,102,241,.2);border-radius:50%;bottom:-12px;left:-12px;opacity:0;pointer-events:none;position:absolute;right:-12px;top:-12px}.fusioni-floating-button-magnetic-field:after,.fusioni-floating-button-magnetic-field:before{background:var(--fusioni-primary-light);border-radius:50%;box-shadow:0 0 4px var(--fusioni-primary-light);content:\"\";height:4px;position:absolute;width:4px}.fusioni-floating-button-magnetic-field:before{left:50%;top:0;transform:translateX(-50%)}.fusioni-floating-button-magnetic-field:after{bottom:0;left:50%;transform:translateX(-50%)}.fusioni-floating-button-bottom-right{bottom:1rem;right:1rem}.fusioni-floating-button-bottom-left{bottom:1rem;left:1rem}.fusioni-floating-button-top-right{right:1rem;top:1rem}.fusioni-floating-button-top-left{left:1rem;top:1rem}.fusioni-chat-panel{backdrop-filter:blur(20px);background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border-light);border-radius:var(--fusioni-radius-2xl);box-shadow:var(--fusioni-shadow-2xl);box-sizing:border-box;display:flex;flex-direction:column;height:640px;max-height:calc(100vh - 2rem);max-width:calc(100vw - 2rem);overflow:hidden;position:fixed;width:480px;z-index:50}.fusioni-chat-widget:not(.dark) .fusioni-chat-panel{background:hsla(0,0%,100%,.95)}.fusioni-chat-widget.dark .fusioni-chat-panel{background:rgba(15,23,42,.95)}.fusioni-chat-panel-content{box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.fusioni-chat-panel-bottom-right{bottom:5rem;right:1rem}.fusioni-chat-panel-bottom-left{bottom:5rem;left:1rem}.fusioni-chat-panel-top-right{right:1rem;top:5rem}.fusioni-chat-panel-top-left{left:1rem;top:5rem}.fusioni-chat-panel-fullscreen{border-radius:0!important;bottom:0!important;height:100vh!important;left:0!important;max-height:none!important;max-width:none!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important;z-index:9999!important}.fusioni-chat-backdrop{background:rgba(0,0,0,.5);bottom:0;left:0;position:fixed;right:0;top:0;z-index:40}.fusioni-chat-container{box-sizing:border-box}.fusioni-chat-container,.fusioni-chat-main{display:flex;height:100%;overflow:hidden;width:100%}.fusioni-chat-main{flex:1;flex-direction:column;min-width:0;position:relative;transition:width var(--fusioni-transition)}.fusioni-conversation-list{backdrop-filter:blur(10px);background:var(--fusioni-bg-secondary);border-right:1px solid var(--fusioni-border-light);bottom:0;box-shadow:var(--fusioni-shadow-lg);display:flex;flex-direction:column;left:0;opacity:0;overflow:hidden;position:absolute;top:0;transform:translateX(-100%) scale(.95);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);width:280px;z-index:10}.fusioni-chat-widget:not(.dark) .fusioni-conversation-list{background:linear-gradient(180deg,var(--fusioni-bg-accent) 0,var(--fusioni-bg-secondary) 100%)}.fusioni-conversation-list.open{opacity:1;transform:translateX(0) scale(1)}.fusioni-conversation-backdrop{backdrop-filter:blur(2px);background:rgba(0,0,0,.3);bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1);visibility:hidden;z-index:5}.fusioni-conversation-backdrop.open{opacity:1;visibility:visible}.fusioni-conversation-header{align-items:center;backdrop-filter:blur(10px);background:var(--fusioni-bg-tertiary);border-bottom:1px solid var(--fusioni-border-light);display:flex;justify-content:space-between;padding:1.25rem 1rem}.fusioni-chat-widget:not(.dark) .fusioni-conversation-header{background:hsla(0,0%,100%,.8)}.fusioni-conversation-title{align-items:center;display:flex;gap:.75rem}.fusioni-conversation-logo{align-items:center;border:2px solid hsla(0,0%,100%,.2);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;display:flex;height:44px;justify-content:center;width:44px}.fusioni-conversation-info h3{color:var(--fusioni-text-primary);font-size:1rem;font-weight:600;margin:0}.fusioni-conversation-info p{color:var(--fusioni-text-secondary);font-size:.75rem;margin:0}.fusioni-conversation-search{padding:1rem}.fusioni-search-input{position:relative}.fusioni-input{border:1px solid var(--fusioni-border-light);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow);color:var(--fusioni-text-primary);font-size:.875rem;padding:.75rem 2.5rem .75rem 1rem;transition:var(--fusioni-transition);width:100%}.fusioni-input,.fusioni-input:focus{background:var(--fusioni-bg-secondary)}.fusioni-input:focus{border-color:var(--fusioni-primary);box-shadow:0 0 0 3px rgba(59,130,246,.1),var(--fusioni-shadow-md);outline:none}.fusioni-chat-widget:not(.dark) .fusioni-input{background:var(--fusioni-bg-primary)}.fusioni-chat-widget:not(.dark) .fusioni-input:focus{background:var(--fusioni-bg-primary);box-shadow:0 0 0 3px rgba(37,99,235,.1),var(--fusioni-shadow-md)}.fusioni-search-icon{color:var(--fusioni-text-muted);pointer-events:none;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.fusioni-divider{background:var(--fusioni-border);height:1px;margin:0 1rem}.fusioni-conversations{flex:1;overflow-y:auto;padding:.5rem}.fusioni-conversation-item{backdrop-filter:blur(10px);background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border-light);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow);cursor:pointer;margin-bottom:.5rem;overflow:hidden;padding:1rem .5rem 1rem 1rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.fusioni-conversation-item:before{background:linear-gradient(135deg,rgba(37,99,235,.02),rgba(59,130,246,.05) 50%,rgba(37,99,235,.02));bottom:0;content:\"\";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:1}.fusioni-conversation-item:hover{background:var(--fusioni-bg-secondary);border-color:var(--fusioni-primary);box-shadow:var(--fusioni-shadow-lg);transform:translateY(-2px) scale(1.02)}.fusioni-conversation-item:hover:before{opacity:1}.fusioni-conversation-item.active{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border-color:var(--fusioni-primary);box-shadow:0 8px 32px rgba(37,99,235,.3);color:#fff;transform:translateY(-1px)}.fusioni-conversation-item.active:before{opacity:0}.fusioni-conversation-neural-bg{bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s ease;z-index:0}.fusioni-conversation-item:hover .fusioni-conversation-neural-bg{opacity:.6}.fusioni-conversation-item.active .fusioni-conversation-neural-bg{opacity:.8}.fusioni-neural-node{animation:neuralPulse 3s ease-in-out infinite;background:var(--fusioni-primary);border-radius:50%;box-shadow:0 0 8px var(--fusioni-primary);height:4px;position:absolute;width:4px}.fusioni-neural-node-1{animation-delay:0s;left:15%;top:20%}.fusioni-neural-node-2{animation-delay:1s;right:20%;top:60%}.fusioni-neural-node-3{animation-delay:2s;bottom:25%;left:40%}.fusioni-neural-connection{animation:neuralFlow 4s ease-in-out infinite;background:linear-gradient(90deg,transparent 0,var(--fusioni-primary) 50%,transparent 100%);height:1px;position:absolute}.fusioni-neural-connection-1{animation-delay:.5s;left:15%;top:30%;transform:rotate(15deg);width:60%}.fusioni-neural-connection-2{animation-delay:1.5s;bottom:40%;left:25%;transform:rotate(-20deg);width:45%}.fusioni-ai-pulse-ring{animation:aiPulse 2s ease-in-out infinite;border:2px solid var(--fusioni-primary);border-radius:50%;height:100%;opacity:.6;position:absolute;width:100%}.fusioni-ai-core{align-items:center;animation:aiRotate 4s linear infinite;color:var(--fusioni-primary);display:flex;justify-content:center;position:relative;z-index:1}.fusioni-conversation-item.active .fusioni-ai-core{color:#fff}.fusioni-conversation-item.active .fusioni-ai-pulse-ring{border-color:#fff}.fusioni-conversation-content{display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:2}.fusioni-conversation-main{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.fusioni-conversation-title-section{display:flex;flex:1;flex-direction:column;gap:.5rem;min-width:0}.fusioni-conversation-title-text{align-items:center;color:var(--fusioni-text-primary);display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:600;gap:.5rem;line-height:1.3;margin:0;word-break:break-word}.fusioni-conversation-item.active .fusioni-conversation-title-text{color:#fff}.fusioni-conversation-meta{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-top:.25rem}.fusioni-conversation-status{align-items:center;color:var(--fusioni-text-muted);display:flex;font-size:.75rem;font-weight:500;gap:.375rem}.fusioni-conversation-item.active .fusioni-conversation-status{color:hsla(0,0%,100%,.8)}.fusioni-status-dot{animation:statusPulse 2s ease-in-out infinite;background:var(--fusioni-success);border-radius:50%;box-shadow:0 0 4px var(--fusioni-success);height:6px;width:6px}.fusioni-conversation-temp-indicator{flex-shrink:0}.fusioni-new-badge{align-items:center;animation:newBadgePulse 2s ease-in-out infinite;background:linear-gradient(135deg,var(--fusioni-warning) 0,#f59e0b 100%);border-radius:var(--fusioni-radius);box-shadow:0 2px 8px rgba(217,119,6,.3);color:#fff;display:inline-flex;font-size:.625rem;font-weight:700;letter-spacing:.05em;padding:.25rem .5rem;position:relative;text-transform:uppercase}.fusioni-new-text{position:relative;z-index:2}.fusioni-new-pulse{animation:newPulseRing 2s ease-in-out infinite;background:linear-gradient(135deg,var(--fusioni-warning) 0,#f59e0b 100%);border-radius:var(--fusioni-radius);bottom:0;left:0;opacity:.6;position:absolute;right:0;top:0}.fusioni-conversation-actions{align-items:flex-start;display:flex;gap:.25rem;margin-top:.25rem}.fusioni-delete-btn{opacity:0;transform:scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1)}.fusioni-conversation-item:hover .fusioni-delete-btn{opacity:1;transform:scale(1)}.fusioni-conversation-item.active .fusioni-delete-btn{background:hsla(0,0%,100%,.2);color:#fff;opacity:1;transform:scale(1)}.fusioni-conversation-item.active .fusioni-delete-btn:hover{background:hsla(0,0%,100%,.3);transform:scale(1.1)}.fusioni-conversation-date{color:var(--fusioni-text-muted);font-size:.75rem;font-weight:500;margin:0}.fusioni-conversation-item.active .fusioni-conversation-date{color:hsla(0,0%,100%,.8)}.fusioni-conversation-data-flow{bottom:0;height:2px;left:0;opacity:0;overflow:hidden;position:absolute;right:0;transition:opacity .3s ease}.fusioni-conversation-item.active .fusioni-conversation-data-flow,.fusioni-conversation-item:hover .fusioni-conversation-data-flow{opacity:1}.fusioni-data-stream{animation:dataFlow 3s ease-in-out infinite;background:linear-gradient(90deg,transparent 0,var(--fusioni-primary) 20%,var(--fusioni-primary-light) 50%,var(--fusioni-primary) 80%,transparent 100%);height:100%;left:-100%;position:absolute;top:0;width:100%}.fusioni-conversation-item.active .fusioni-data-stream{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3) 20%,hsla(0,0%,100%,.6) 50%,hsla(0,0%,100%,.3) 80%,transparent)}.fusioni-empty-state{color:var(--fusioni-text-muted);padding:2rem;text-align:center}.fusioni-message-list{background:var(--fusioni-bg-primary);display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:1rem}.fusioni-messages-container{display:flex;flex-direction:column;gap:1rem;height:100%}.fusioni-empty-messages,.fusioni-empty-messages-content{align-items:center;display:flex;height:100%;justify-content:center}.fusioni-empty-messages-content{color:var(--fusioni-text-muted);flex-direction:column;text-align:center}.fusioni-empty-icon{color:var(--fusioni-text-muted);height:64px;margin:0 auto 1rem;width:64px}.fusioni-messages{gap:1rem}.fusioni-message-wrapper,.fusioni-messages{display:flex;flex-direction:column}.fusioni-message{align-items:flex-start;display:flex;gap:5px}.fusioni-message.user{flex-direction:row-reverse}.fusioni-message-avatar{align-items:center;background:var(--fusioni-bg-tertiary);border-radius:8px;color:var(--fusioni-text-secondary);display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.fusioni-message.user .fusioni-message-avatar{background:var(--fusioni-primary);color:#fff}.fusioni-message-content{flex:1;min-width:0}.fusioni-message-footer,.fusioni-message-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.fusioni-message-role{color:var(--fusioni-text-secondary);font-size:.75rem;font-weight:500;margin-left:5px}.fusioni-message-time{color:var(--fusioni-text-muted);font-size:.75rem}.fusioni-message-body{margin-bottom:0}.fusioni-message-bubble{word-wrap:break-word;border-radius:var(--fusioni-radius-lg);max-width:100%;padding:.75rem 1rem;position:relative;transition:var(--fusioni-transition)}.fusioni-message-bubble:hover{box-shadow:var(--fusioni-shadow)}.fusioni-message-user{background:var(--fusioni-primary);border-bottom-right-radius:.25rem;color:#fff}.fusioni-message-assistant{background:var(--fusioni-bg-secondary);border-bottom-left-radius:.25rem;color:var(--fusioni-text-primary)}.fusioni-message-error{background:var(--fusioni-error);color:#fff}.fusioni-message-text{line-height:1.5}.fusioni-message-text h1,.fusioni-message-text h2,.fusioni-message-text h3{line-height:1.25;margin:.5rem 0 .25rem}.fusioni-message-text p{margin:.5rem 0}.fusioni-message-text ol,.fusioni-message-text ul{list-style-position:outside;margin:.5rem 0;padding-left:1rem}.fusioni-message-text code{background:var(--fusioni-bg-tertiary);border-radius:.25rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875em;padding:.125rem .25rem}.fusioni-message-text pre{background:var(--fusioni-bg-dark);border-radius:var(--fusioni-radius);color:var(--fusioni-text-light);margin:.5rem 0;overflow-x:auto;padding:.75rem}.fusioni-message-text a{color:var(--fusioni-primary);text-decoration:underline}.fusioni-message-extra,.fusioni-message-image{margin-top:.5rem}.fusioni-image{border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);height:auto;max-width:100%}.fusioni-message-audio{background:var(--fusioni-bg-tertiary);border-radius:var(--fusioni-radius);margin-top:.5rem;padding:.75rem}.fusioni-audio-header{align-items:center;color:var(--fusioni-text-secondary);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.5rem}.fusioni-audio-duration{color:var(--fusioni-text-muted);font-size:.75rem}.fusioni-audio-player{height:32px;width:100%}.fusioni-message-map{margin-top:.5rem}.fusioni-map-placeholder{background:var(--fusioni-bg-tertiary);border-radius:var(--fusioni-radius);color:var(--fusioni-text-secondary);padding:1rem;text-align:center}.fusioni-map-container{border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);margin-top:.5rem;overflow:hidden}.fusioni-map-interactive,.fusioni-map-static{height:auto;position:relative;width:100%}.fusioni-map-image{border-radius:var(--fusioni-radius);display:block;height:auto;width:100%}.fusioni-map-iframe{border:none;border-radius:var(--fusioni-radius);height:400px;width:100%}.fusioni-map-loading{align-items:center;background:var(--fusioni-bg-tertiary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);display:flex;justify-content:center;padding:2rem}.fusioni-map-loading-content{align-items:center;color:var(--fusioni-text-secondary);display:flex;flex-direction:column;gap:.75rem}.fusioni-map-loading-spinner{animation:spin 1s linear infinite;border-top:2px solid var(--fusioni-border);border:2px solid var(--fusioni-border);border-radius:50%;border-top-color:var(--fusioni-primary);height:24px;width:24px}.fusioni-map-error{align-items:center;background:rgba(220,38,38,.05);border:1px solid rgba(220,38,38,.2);border-radius:var(--fusioni-radius);color:var(--fusioni-error);display:flex;justify-content:center;padding:1rem}.fusioni-map-error-content{align-items:center;display:flex;font-size:.875rem;gap:.5rem}.fusioni-chat-widget.dark .fusioni-map-container{border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-map-loading{background:var(--fusioni-bg-dark);border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-map-error{background:rgba(220,38,38,.1);border-color:rgba(220,38,38,.3)}.fusioni-message-thoughts{color:var(--fusioni-text-muted);font-size:.75rem;margin-top:.5rem}.fusioni-message-thoughts details{cursor:pointer}.fusioni-message-thoughts summary{font-weight:500}.fusioni-message-actions{align-items:center;display:flex;flex-direction:row;gap:.1rem;margin-left:auto;opacity:0;transition:var(--fusioni-transition)}.fusioni-message-actions .fusioni-btn:hover{background:transparent}.fusioni-message:hover .fusioni-message-actions{opacity:1}.fusioni-message-error-indicator{align-items:center;color:var(--fusioni-error);display:flex;font-size:.75rem;gap:.25rem;margin-top:.25rem}.fusioni-stream-message{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.fusioni-stream-message:last-child{margin-bottom:0}.fusioni-stream-indicator{align-items:center;display:flex;justify-content:center}.fusioni-stream-dot{animation:dotPulse 1.5s infinite;background:var(--fusioni-primary);border-radius:50%;box-shadow:0 0 8px rgba(99,102,241,.4);height:6px;width:6px}.fusioni-stream-text{color:var(--fusioni-text-secondary);font-size:.875rem;line-height:1.4}.fusioni-chat-input{background:var(--fusioni-bg-primary);border-top:1px solid var(--fusioni-border);padding:1rem}.fusioni-image-preview{margin-bottom:.75rem}.fusioni-image-preview-content{display:inline-block;position:relative}.fusioni-preview-image{border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);max-height:200px;max-width:200px}.fusioni-image-preview-content .fusioni-btn{position:absolute;right:.5rem;top:.5rem}.fusioni-audio-preview{background:var(--fusioni-bg-secondary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);margin-bottom:.75rem;padding:.75rem}.fusioni-audio-preview-content{display:flex;flex-direction:column;gap:.5rem}.fusioni-audio-preview-header{align-items:center;color:var(--fusioni-text-secondary);display:flex;font-size:.875rem;justify-content:space-between}.fusioni-audio-preview-player{height:32px;width:100%}.fusioni-audio-preview-text{color:var(--fusioni-text-muted);font-size:.75rem;margin:0;text-align:center}.fusioni-input-container{width:100%}.fusioni-input-wrapper{align-items:flex-end;background:var(--fusioni-bg-secondary);border:2px solid var(--fusioni-border);border-radius:var(--fusioni-radius-xl);display:flex;gap:.5rem;padding:.5rem;transition:var(--fusioni-transition)}.fusioni-input-wrapper:focus-within{border-color:var(--fusioni-primary);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.fusioni-textarea{background:transparent;border:none;color:var(--fusioni-text-primary);flex:1;font-family:inherit;font-size:.875rem;line-height:1.5;max-height:120px;min-height:20px;outline:none;padding:.5rem;resize:none}.fusioni-textarea::placeholder{color:var(--fusioni-text-muted)}.fusioni-input-actions{align-items:center;display:flex;gap:.25rem}.fusioni-btn{align-items:center;background:transparent;border:none;border-radius:var(--fusioni-radius);color:var(--fusioni-text-secondary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;justify-content:center;padding:.5rem;text-decoration:none;transition:var(--fusioni-transition)}.fusioni-btn:hover{background:var(--fusioni-bg-tertiary);color:var(--fusioni-text-primary)}.fusioni-btn:disabled{cursor:not-allowed;opacity:.5}.fusioni-btn-icon-primary{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);box-shadow:var(--fusioni-shadow)}.fusioni-btn-icon-primary:hover{background:var(--fusioni-primary-dark);border-color:var(--fusioni-primary-dark);color:#fff}.fusioni-btn-icon{border-radius:50%;height:25px;padding:0;transition:var(--fusioni-transition-fast);width:28px}.fusioni-btn-icon:hover{background:var(--fusioni-primary);border-color:var(--fusioni-primary);color:#fff;transform:scale(1.05)}.fusioni-btn-primary{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border:none;border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;font-weight:600;padding:.75rem 1.5rem;transition:var(--fusioni-transition)}.fusioni-btn-primary:hover{background:linear-gradient(135deg,var(--fusioni-primary-dark) 0,var(--fusioni-primary) 100%);box-shadow:var(--fusioni-shadow-lg);color:#fff;transform:translateY(-1px)}.fusioni-btn-danger{color:var(--fusioni-error)}.fusioni-btn-danger:hover{background:var(--fusioni-error);color:#fff}.fusioni-btn-text{background:transparent;color:var(--fusioni-primary);padding:.25rem .5rem}.fusioni-btn-text:hover{background:var(--fusioni-bg-tertiary);color:var(--fusioni-primary)}.fusioni-btn-send{background:var(--fusioni-primary);color:#fff}.fusioni-btn-send:hover{background:var(--fusioni-primary-dark);color:#fff}.fusioni-btn-send:disabled{background:var(--fusioni-text-muted);color:var(--fusioni-text-light)}.fusioni-btn-send-audio{background:var(--fusioni-success)}.fusioni-btn-send-audio:hover{background:#059669}.fusioni-btn-recording{animation:recordingPulse 2s ease-in-out infinite;background:var(--fusioni-error);color:#fff}.fusioni-btn-recording:hover{background:#dc2626;color:#fff}.fusioni-confirmation-widget{display:flex;gap:.75rem;padding-top:1.25rem}.fusioni-btn-confirm{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border:none;border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:var(--fusioni-transition)}.fusioni-btn-confirm:hover:not(:disabled){background:linear-gradient(135deg,var(--fusioni-primary-dark) 0,var(--fusioni-primary) 100%);box-shadow:var(--fusioni-shadow-lg);color:#fff;transform:translateY(-1px) scale(1.05)}.fusioni-btn-confirm:active:not(:disabled){transform:translateY(0) scale(1)}.fusioni-btn-confirm:disabled{background:var(--fusioni-primary);cursor:not-allowed;opacity:.5;transform:none}.fusioni-btn-cancel{background:var(--fusioni-secondary);border:none;border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:var(--fusioni-transition)}.fusioni-btn-cancel:hover:not(:disabled){background:var(--fusioni-secondary);box-shadow:var(--fusioni-shadow-lg);color:#fff;transform:translateY(-1px) scale(1.05)}.fusioni-btn-cancel:active:not(:disabled){transform:translateY(0) scale(1)}.fusioni-btn-cancel:disabled{cursor:not-allowed;opacity:.5;transform:none}.dark .fusioni-btn-cancel,.dark .fusioni-btn-cancel:hover:not(:disabled),.fusioni-btn-cancel:disabled{background:var(--fusioni-secondary)}.fusioni-audio-recorder{align-items:center;display:flex;gap:.5rem}.fusioni-recording-indicator{align-items:center;display:flex;justify-content:center}.fusioni-recording-dot{animation:recordingPulse 1.5s ease-in-out infinite;background:#fff;border-radius:50%;height:8px;width:8px}.fusioni-recording-timer{color:var(--fusioni-error);font-size:.75rem;font-weight:500;min-width:3rem;text-align:center}.fusioni-audio-error{background:var(--fusioni-error);border-radius:var(--fusioni-radius);bottom:100%;color:#fff;font-size:.75rem;left:0;margin-bottom:.5rem;padding:.5rem;position:absolute;right:0}.fusioni-audio-error p{margin:0 0 .25rem}.fusioni-audio-error button{background:transparent;border:1px solid #fff;border-radius:var(--fusioni-radius);color:#fff;cursor:pointer;font-size:.75rem;padding:.25rem .5rem}.fusioni-chat-loader{padding:1rem;text-align:center}.fusioni-loader-content{align-items:center;display:flex;gap:.75rem;justify-content:center}.fusioni-loader-dots{display:flex;gap:.25rem}.fusioni-loader-dot{animation:dotPulse 1.5s ease-in-out infinite;background:var(--fusioni-primary);border-radius:50%;height:6px;width:6px}.fusioni-loader-dot:nth-child(2){animation-delay:.2s}.fusioni-loader-dot:nth-child(3){animation-delay:.4s}.fusioni-loader-text{color:var(--fusioni-text-secondary);font-size:.875rem}.fusioni-chat-main-header{align-items:center;backdrop-filter:blur(10px);background:var(--fusioni-bg-tertiary);border-bottom:1px solid var(--fusioni-border-light);display:flex;justify-content:space-between;padding:1rem;position:relative;z-index:5}.fusioni-chat-widget:not(.dark) .fusioni-chat-main-header{background:hsla(0,0%,100%,.8)}.fusioni-header-actions{align-items:center;display:flex;gap:.75rem}.fusioni-conversation-toggle{align-items:center;background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);color:var(--fusioni-text-secondary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem .75rem;transition:var(--fusioni-transition)}.fusioni-conversation-toggle:hover{background:var(--fusioni-primary);border-color:var(--fusioni-primary);color:#fff}.fusioni-conversation-toggle-icon{height:16px;transition:transform var(--fusioni-transition);width:16px}.fusioni-conversation-toggle.open .fusioni-conversation-toggle-icon{transform:rotate(180deg)}.fusioni-connection-indicator,.fusioni-connection-status{align-items:center;display:flex}.fusioni-connection-indicator{border-radius:var(--fusioni-radius);padding:.25rem;transition:var(--fusioni-transition)}.fusioni-connection-dot{border-radius:50%;height:8px;transition:var(--fusioni-transition);width:8px}.fusioni-connection-indicator.connected .fusioni-connection-dot{background:var(--fusioni-success);box-shadow:0 0 0 2px rgba(16,185,129,.2)}.fusioni-connection-indicator.disconnected .fusioni-connection-dot{background:var(--fusioni-text-muted);box-shadow:0 0 0 2px rgba(148,163,184,.2)}.fusioni-language-switcher{display:inline-block;position:relative}.fusioni-language-button{align-items:center;background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);color:var(--fusioni-text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;min-width:120px;padding:.5rem .75rem;transition:var(--fusioni-transition)}.fusioni-language-button:hover{background:var(--fusioni-bg-secondary);border-color:var(--fusioni-primary)}.fusioni-language-flag{font-size:1rem;line-height:1}.fusioni-language-name{flex:1;font-weight:500;text-align:left}.fusioni-language-arrow{transition:transform var(--fusioni-transition)}.fusioni-language-arrow.open{transform:rotate(180deg)}.fusioni-language-dropdown{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-lg);left:0;margin-top:.25rem;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.fusioni-language-option{align-items:center;background:transparent;border:none;color:var(--fusioni-text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.75rem;text-align:left;transition:var(--fusioni-transition);width:100%}.fusioni-language-option:hover{background:var(--fusioni-bg-secondary)}.fusioni-language-option.active{background:var(--fusioni-primary);color:#fff}.fusioni-language-check{margin-left:auto;opacity:.8}.fusioni-chat-welcome{align-items:center;background:var(--fusioni-bg-primary);bottom:0;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;overflow:hidden;padding:3rem 2rem;position:absolute;right:0;top:0;width:100%}.fusioni-chat-widget:not(.dark) .fusioni-chat-welcome{background:linear-gradient(135deg,var(--fusioni-bg-accent) 0,var(--fusioni-bg-primary) 100%)}.fusioni-chat-welcome-content{box-sizing:border-box;margin:0 auto;max-width:320px;text-align:center;width:100%}.fusioni-chat-welcome-content h3{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);-webkit-background-clip:text;background-clip:text;color:var(--fusioni-text-primary);font-size:1.5rem;font-weight:700;margin:0 0 1rem}.fusioni-chat-welcome-content p{color:var(--fusioni-text-secondary);font-size:1rem;line-height:1.6;margin:0 0 2rem}.fusioni-chat-error{background:var(--fusioni-error);border-radius:var(--fusioni-radius);color:#fff;margin:1rem;padding:1rem}.fusioni-chat-error p{margin:0 0 .5rem}.fusioni-chat-error button{background:transparent;border:1px solid #fff;border-radius:var(--fusioni-radius);color:#fff;cursor:pointer;padding:.25rem .5rem}.fusioni-spinner{animation:spin 1s linear infinite;border-top:2px solid var(--fusioni-border);border:2px solid var(--fusioni-border);border-radius:50%;border-top-color:var(--fusioni-primary);height:16px;width:16px}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes dotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@keyframes recordingPulse{0%,to{box-shadow:0 0 5px rgba(239,68,68,.5)}50%{box-shadow:0 0 20px rgba(239,68,68,.8),0 0 30px rgba(239,68,68,.6)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes neuralPulse{0%,to{box-shadow:0 0 8px var(--fusioni-primary);opacity:.6;transform:scale(1)}50%{box-shadow:0 0 16px var(--fusioni-primary);opacity:1;transform:scale(1.5)}}@keyframes neuralFlow{0%{opacity:0;transform:scaleX(0)}50%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(0)}}@keyframes aiPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes aiRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes statusPulse{0%,to{box-shadow:0 0 4px var(--fusioni-success);opacity:1;transform:scale(1)}50%{box-shadow:0 0 8px var(--fusioni-success);opacity:.8;transform:scale(1.2)}}@keyframes newBadgePulse{0%,to{box-shadow:0 2px 8px rgba(217,119,6,.3);transform:scale(1)}50%{box-shadow:0 4px 16px rgba(217,119,6,.5);transform:scale(1.05)}}@keyframes newPulseRing{0%{opacity:.6;transform:scale(1)}50%{opacity:.2;transform:scale(1.3)}to{opacity:0;transform:scale(1.6)}}@keyframes dataFlow{0%{left:-100%;opacity:0}10%{opacity:1}90%{opacity:1}to{left:100%;opacity:0}}@keyframes magneticHover{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.02)}to{transform:translateY(-1px) scale(1.01)}}@keyframes neuralGlow{0%,to{filter:brightness(1) saturate(1)}50%{filter:brightness(1.2) saturate(1.3)}}@media (max-width:768px){.fusioni-chat-panel{height:calc(100vh - 1rem);max-height:none;max-width:none;width:calc(100vw - 1rem)}.fusioni-chat-panel-bottom-left,.fusioni-chat-panel-bottom-right,.fusioni-chat-panel-top-left,.fusioni-chat-panel-top-right{bottom:.5rem;height:calc(100vh - 1rem);top:.5rem}.fusioni-conversation-list{border-bottom:1px solid var(--fusioni-border);border-right:none;width:100%}.fusioni-chat-container{flex-direction:column}.fusioni-message-bubble:hover{transform:scale(1.01)}}.fusioni-conversations::-webkit-scrollbar,.fusioni-message-list::-webkit-scrollbar{width:6px}.fusioni-conversations::-webkit-scrollbar-track,.fusioni-message-list::-webkit-scrollbar-track{background:var(--fusioni-bg-tertiary)}.fusioni-conversations::-webkit-scrollbar-thumb,.fusioni-message-list::-webkit-scrollbar-thumb{background:var(--fusioni-text-muted);border-radius:3px}.fusioni-conversations::-webkit-scrollbar-thumb:hover,.fusioni-message-list::-webkit-scrollbar-thumb:hover{background:var(--fusioni-text-secondary)}.fusioni-url-preview{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);margin:.5rem 0;overflow:hidden;transition:var(--fusioni-transition)}.fusioni-url-preview:hover{box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-url-preview-compact{margin:.25rem 0}.fusioni-url-preview-loading{align-items:center;color:var(--fusioni-text-secondary);display:flex;font-size:.875rem;gap:.5rem;padding:.75rem}.fusioni-url-preview-spinner{animation:fusioni-spin 1s linear infinite;border-top:2px solid var(--fusioni-border);border:2px solid var(--fusioni-border);border-radius:50%;border-top-color:var(--fusioni-primary);height:16px;width:16px}@keyframes fusioni-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fusioni-url-preview-error{align-items:center;background:rgba(220,38,38,.05);color:var(--fusioni-error);display:flex;font-size:.875rem;justify-content:space-between;padding:.75rem}.fusioni-url-preview-content{position:relative}.fusioni-url-preview-close{align-items:center;background:rgba(0,0,0,.5);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;line-height:1;position:absolute;right:.5rem;top:.5rem;transition:var(--fusioni-transition);width:24px;z-index:10}.fusioni-url-preview-close:hover{background:rgba(0,0,0,.7)}.fusioni-url-preview-link{display:flex;transition:var(--fusioni-transition)}.fusioni-url-preview-link,.fusioni-url-preview-link:hover{color:inherit;text-decoration:none}.fusioni-url-preview-image{flex-shrink:0;height:80px;overflow:hidden;width:120px}.fusioni-url-preview-compact .fusioni-url-preview-image{height:60px;width:80px}.fusioni-url-preview-image img{height:100%;object-fit:cover;transition:var(--fusioni-transition);width:100%}.fusioni-url-preview-link:hover .fusioni-url-preview-image img{transform:scale(1.05)}.fusioni-url-preview-text{display:flex;flex:1;flex-direction:column;justify-content:space-between;min-width:0;padding:.75rem}.fusioni-url-preview-compact .fusioni-url-preview-text{padding:.5rem}.fusioni-url-preview-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--fusioni-text-primary);display:-webkit-box;font-size:.875rem;font-weight:600;line-height:1.25;margin-bottom:.25rem;overflow:hidden}.fusioni-url-preview-compact .fusioni-url-preview-title{-webkit-line-clamp:1;line-clamp:1;font-size:.8125rem}.fusioni-url-preview-description{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--fusioni-text-secondary);display:-webkit-box;font-size:.8125rem;line-height:1.4;margin-bottom:.25rem;overflow:hidden}.fusioni-url-preview-compact .fusioni-url-preview-description{-webkit-line-clamp:1;line-clamp:1;font-size:.75rem}.fusioni-url-preview-domain{color:var(--fusioni-text-muted);font-size:.75rem;letter-spacing:.025em;text-transform:uppercase}.fusioni-message-url-previews{margin-top:.5rem}.fusioni-chat-widget.dark .fusioni-url-preview{background:var(--fusioni-bg-dark);border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-url-preview-title{color:var(--fusioni-text-light)}.fusioni-chat-widget.dark .fusioni-url-preview-description{color:var(--fusioni-text-secondary)}.fusioni-chat-widget.dark .fusioni-url-preview-error{background:rgba(220,38,38,.1)}.fusioni-stream-messages{display:flex;flex-direction:column;gap:8px;margin-top:8px}.fusioni-stream-message-item{align-items:flex-start;display:flex;gap:8px}.fusioni-stream-message-logo-wrap{flex-shrink:0}.fusioni-stream-message-logo-frame{align-items:center;background:linear-gradient(to bottom right,#f3f4f6,#e5e7eb);border-radius:12px;box-shadow:var(--fusioni-shadow-lg);display:flex;height:32px;justify-content:center;overflow:hidden;width:32px}.fusioni-chat-widget.dark .fusioni-stream-message-logo-frame{background:linear-gradient(to bottom right,#1f2937,#111827)}.fusioni-stream-message-logo-img{animation:fusioni-spin 1s linear infinite;height:32px;margin:0;object-fit:contain;padding:4px;width:32px}.fusioni-stream-message-spotlight{margin-top:4px;min-width:0}.fusioni-spotlight{--mask-x:0%;--mask-y:50%;--text-spotlight-size:100px;display:block}.fusioni-spotlight-title{color:inherit;display:inline-block;position:relative}.fusioni-spotlight-text-base,.fusioni-spotlight-text-overlay,.fusioni-spotlight-title{font-family:inherit;font-size:16px;font-weight:inherit;letter-spacing:inherit;line-height:1.2}.fusioni-spotlight-text-base,.fusioni-spotlight-text-overlay{white-space:nowrap}.fusioni-spotlight-text-base{opacity:.2}.fusioni-spotlight-text-base,.fusioni-spotlight-text-overlay{-webkit-text-fill-color:transparent;background:currentColor;-webkit-background-clip:text;background-clip:text}.fusioni-spotlight-text-overlay{left:0;mask:radial-gradient(circle var(--text-spotlight-size) at var(--mask-x) var(--mask-y),#000 0,transparent 70%);-webkit-mask:radial-gradient(circle var(--text-spotlight-size) at var(--mask-x) var(--mask-y),#000 0,transparent 70%);opacity:1;pointer-events:none;position:absolute;top:0}@keyframes fusioni-dotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}.fusioni-chat-widget.dark .fusioni-conversation-item{background:var(--fusioni-bg-dark);border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-conversation-item:before{background:linear-gradient(135deg,rgba(59,130,246,.05),rgba(37,99,235,.1) 50%,rgba(59,130,246,.05))}.fusioni-chat-widget.dark .fusioni-conversation-item:hover{background:var(--fusioni-bg-secondary);border-color:var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-neural-node{background:var(--fusioni-primary-light);box-shadow:0 0 8px var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-neural-connection{background:linear-gradient(90deg,transparent 0,var(--fusioni-primary-light) 50%,transparent 100%)}.fusioni-chat-widget.dark .fusioni-ai-core{color:var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-ai-pulse-ring{border-color:var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-data-stream{background:linear-gradient(90deg,transparent 0,var(--fusioni-primary-light) 20%,var(--fusioni-primary) 50%,var(--fusioni-primary-light) 80%,transparent 100%)}.fusioni-chat-widget.dark .fusioni-conversation-title-text{color:var(--fusioni-text-light)}.fusioni-chat-widget.dark .fusioni-conversation-status{color:var(--fusioni-text-secondary)}.fusioni-chat-widget.dark .fusioni-conversation-date{color:var(--fusioni-text-muted)}@media (prefers-reduced-motion:reduce){.fusioni-ai-core,.fusioni-ai-pulse-ring,.fusioni-conversation-item,.fusioni-data-stream,.fusioni-neural-connection,.fusioni-neural-node,.fusioni-new-badge,.fusioni-new-pulse,.fusioni-status-dot{animation:none!important;transition:none!important}.fusioni-conversation-item:hover{transform:none!important}}@media (prefers-contrast:high){.fusioni-conversation-item{border-width:2px}.fusioni-conversation-item.active{border-width:3px}.fusioni-ai-pulse-ring,.fusioni-neural-node,.fusioni-status-dot{border:1px solid;box-shadow:none}}.fusioni-conversation-item:focus-visible{outline:2px solid var(--fusioni-primary);outline-offset:2px}.fusioni-conversation-item.active:focus-visible{outline-color:#fff}.fusioni-conversation-item{contain:layout style paint;will-change:transform,box-shadow}.fusioni-ai-pulse-ring,.fusioni-data-stream,.fusioni-neural-connection,.fusioni-neural-node{contain:layout style paint;will-change:transform,opacity}.fusioni-ai-core,.fusioni-conversation-item,.fusioni-data-stream,.fusioni-neural-node{backface-visibility:hidden;perspective:1000px;transform:translateZ(0)}@keyframes attentionRingPulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}@keyframes neuralParticleFloat{0%,to{opacity:0;transform:scale(.5) translateY(0)}25%{opacity:.6;transform:scale(1) translateY(-10px)}50%{opacity:1;transform:scale(1.2) translateY(-20px)}75%{opacity:.6;transform:scale(1) translateY(-10px)}}@keyframes brainActivityPulse{0%,to{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes brainCorePulse{0%,to{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1.3)}}@keyframes attentionWaveExpand{0%{opacity:.8;transform:scale(.5)}50%{opacity:.4;transform:scale(1.2)}to{opacity:0;transform:scale(2)}}@keyframes periodicAttentionPulse{0%,90%{opacity:0;transform:scale(1)}95%{opacity:.6;transform:scale(1.3)}to{opacity:0;transform:scale(1.5)}}@keyframes enhancedGlowPulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.4;transform:scale(1.1)}}@keyframes magneticFieldRotate{0%{opacity:.3;transform:rotate(0deg)}50%{opacity:.6}to{opacity:.3;transform:rotate(1turn)}}@keyframes floatingButtonEntrance{0%{transform:scale(1)}20%{transform:scale(6)}40%{transform:scale(1.1)}70%{transform:scale(.8)}to{transform:scale(1)}}@keyframes attentionSequenceTrigger{0%{opacity:0;transform:scale(.8)}20%{opacity:1;transform:scale(1.2)}40%{opacity:.8;transform:scale(1)}60%{opacity:1;transform:scale(1.1)}80%{opacity:.6;transform:scale(.9)}to{opacity:0;transform:scale(1)}}@keyframes floatingButtonHover{0%{transform:translateY(0) scale(1) rotate(0deg)}25%{transform:translateY(-3px) scale(1.05) rotate(1deg)}50%{transform:translateY(-5px) scale(1.08) rotate(0deg)}75%{transform:translateY(-2px) scale(1.03) rotate(-1deg)}to{transform:translateY(0) scale(1) rotate(0deg)}}@keyframes aiProcessingIndicator{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@keyframes neuralConnectionFlow{0%{opacity:0;transform:scaleX(0)}20%{opacity:.8;transform:scaleX(.3)}50%{opacity:1;transform:scaleX(1)}80%{opacity:.8;transform:scaleX(.7)}to{opacity:0;transform:scaleX(0)}}.fusioni-floating-button-attention-active .fusioni-floating-button-attention-ring,.fusioni-floating-button-attention-active .fusioni-floating-button-attention-ring-2,.fusioni-floating-button-attention-active .fusioni-floating-button-attention-ring-3,.fusioni-floating-button-attention-active .fusioni-floating-button-attention-sequence,.fusioni-floating-button-attention-active .fusioni-floating-button-brain-activity,.fusioni-floating-button-attention-active .fusioni-floating-button-glow,.fusioni-floating-button-attention-active .fusioni-floating-button-magnetic-field,.fusioni-floating-button-attention-active .fusioni-floating-button-neural-particles,.fusioni-floating-button-attention-active .fusioni-floating-button-periodic-pulse{opacity:1}.fusioni-floating-button-entering{animation:floatingButtonEntrance 1.2s ease-in-out forwards}@media (prefers-reduced-motion:reduce){.fusioni-attention-wave,.fusioni-floating-button-attention-ring,.fusioni-floating-button-attention-ring-2,.fusioni-floating-button-attention-ring-3,.fusioni-floating-button-brain-activity,.fusioni-floating-button-glow,.fusioni-floating-button-magnetic-field,.fusioni-floating-button-periodic-pulse,.fusioni-floating-button:hover,.fusioni-neural-particle{animation:none!important}}.fusioni-dialog-backdrop{animation:fadeIn .2s ease-out;backdrop-filter:blur(4px);background-color:rgba(0,0,0,.5);z-index:9998}.fusioni-dialog-backdrop,.fusioni-dialog-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.fusioni-dialog-container{pointer-events:none;z-index:9999}.fusioni-dialog{animation:dialogSlideIn .3s cubic-bezier(.4,0,.2,1);background-color:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-2xl);max-width:420px;overflow:hidden;pointer-events:auto;width:90%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.fusioni-dialog-header{border-bottom:1px solid var(--fusioni-border);padding:1.5rem 1.5rem 1rem}.fusioni-dialog-title{color:var(--fusioni-text-primary);font-size:1.25rem;font-weight:600;line-height:1.5;margin:0}.fusioni-dialog-body{padding:1.5rem}.fusioni-dialog-message{color:var(--fusioni-text-secondary);font-size:.9375rem;line-height:1.6;margin:0}.fusioni-dialog-footer{border-top:1px solid var(--fusioni-border);display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem 1.5rem}.fusioni-dialog-cancel,.fusioni-dialog-confirm{min-width:80px}.fusioni-dialog-confirm-danger{background-color:var(--fusioni-error);border-color:var(--fusioni-error);color:var(--fusioni-text-light)}.fusioni-dialog-confirm-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c;box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-dialog-confirm-danger:active:not(:disabled){box-shadow:var(--fusioni-shadow);transform:translateY(0)}.fusioni-dialog-confirm-warning{background-color:var(--fusioni-warning);border-color:var(--fusioni-warning);color:var(--fusioni-text-light)}.fusioni-dialog-confirm-warning:hover:not(:disabled){background-color:#b45309;border-color:#b45309;box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-dialog-confirm-info{background-color:var(--fusioni-info);border-color:var(--fusioni-info);color:var(--fusioni-text-light)}.fusioni-dialog-confirm-info:hover:not(:disabled){background-color:#0369a1;border-color:#0369a1;box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-chat-widget.dark .fusioni-dialog{background-color:var(--fusioni-bg-secondary);border-color:var(--fusioni-border)}.fusioni-chat-widget.dark .fusioni-dialog-header{border-bottom-color:var(--fusioni-border)}.fusioni-chat-widget.dark .fusioni-dialog-footer{border-top-color:var(--fusioni-border)}.fusioni-image-gallery-overlay{--fusioni-ig-img-offset:8rem;align-items:stretch;animation:fusionImageGalleryFadeIn .2s ease-out;box-sizing:border-box;display:flex;flex-direction:column;inset:0;justify-content:flex-start;overflow:hidden;position:fixed;z-index:100000}.fusioni-image-gallery-overlay.fusioni-image-gallery-has-thumbs{--fusioni-ig-img-offset:14rem}.fusioni-image-gallery-body{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;width:100%}.fusioni-image-gallery-stage{align-items:center;display:flex;flex:1 1 0;justify-content:center;min-height:0;min-width:0;position:relative;width:100%}.fusioni-image-gallery-overlay.fusioni-image-gallery-theme-light{background:linear-gradient(180deg,#374151 0,#9ca3af)}.fusioni-image-gallery-overlay.fusioni-image-gallery-theme-dark{background:linear-gradient(180deg,#111827 0,#1f2937)}@keyframes fusionImageGalleryFadeIn{0%{opacity:0}to{opacity:1}}.fusioni-image-gallery-topbar{align-items:center;background:linear-gradient(180deg,rgba(0,0,0,.7),transparent);display:flex;justify-content:space-between;left:0;padding:.75rem 1rem;pointer-events:none;position:absolute;right:0;top:0;z-index:20}.fusioni-image-gallery-topbar-spacer{width:2.5rem}.fusioni-image-gallery-counter{color:hsla(0,0%,100%,.9);font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:.025em}.fusioni-image-gallery-close{align-items:center;background-color:hsla(0,0%,100%,.1);border:none;border-radius:9999px;color:#fff;cursor:pointer;display:flex;height:2.5rem;justify-content:center;pointer-events:auto;transition:background-color .15s ease;width:2.5rem}.fusioni-image-gallery-close:hover{background-color:hsla(0,0%,100%,.2)}.fusioni-image-gallery-close:focus{outline:none}.fusioni-image-gallery-close:focus-visible{box-shadow:0 0 0 2px hsla(0,0%,100%,.5)}.fusioni-image-gallery-icon{height:1.25rem;width:1.25rem}.fusioni-image-gallery-icon-lg{height:2rem;width:2rem}.fusioni-image-gallery-content{align-items:center;box-sizing:border-box;display:flex;flex:1 1 0;justify-content:center;max-width:100%;min-height:0;min-width:0;padding:4rem 4.5rem;width:100%}.fusioni-image-gallery-img{animation:fusionImageGalleryZoomIn .25s ease-out;border-radius:.5rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.5);display:block;height:auto;max-height:calc(100vh - var(--fusioni-ig-img-offset, 8rem));max-height:calc(100dvh - var(--fusioni-ig-img-offset, 8rem));max-width:100%;object-fit:contain;width:auto}.fusioni-image-gallery-thumbs-wrap{box-sizing:border-box;flex:0 0 auto;margin:0 auto;max-height:12.5rem;max-width:min(100vw - 2rem,42rem);overflow:hidden;padding:0 1rem .75rem;width:100%}.fusioni-image-gallery-thumbs-wrap .fusioni-gallery-strip--lightbox .fusioni-gallery-strip-grid{gap:.5rem}.fusioni-image-gallery-thumbs-wrap .fusioni-gallery-strip--lightbox .fusioni-gallery-strip-cell{align-items:center;display:flex;justify-content:center;max-height:3.75rem}.fusioni-image-gallery-thumb{background:rgba(0,0,0,.35);border:2px solid transparent;border-radius:var(--fusioni-radius-md);box-sizing:border-box;cursor:pointer;display:block;flex-shrink:0;height:3.5rem;margin:0 auto;max-width:5.5rem;overflow:hidden;padding:0;transition:border-color .15s ease,transform .15s ease;width:100%}.fusioni-image-gallery-thumb:hover{border-color:hsla(0,0%,100%,.45)}.fusioni-image-gallery-thumb:focus{outline:none}.fusioni-image-gallery-thumb:focus-visible{box-shadow:0 0 0 2px hsla(0,0%,100%,.55)}.fusioni-image-gallery-thumb-selected{border-color:hsla(0,0%,100%,.9)}.fusioni-image-gallery-thumb img{display:block;height:100%;object-fit:cover;width:100%}.fusioni-image-gallery-thumbs-wrap .fusioni-gallery-strip-dots{margin-top:.5rem}@keyframes fusionImageGalleryZoomIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.fusioni-image-gallery-nav{align-items:center;background-color:hsla(0,0%,100%,.12);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:3rem;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .15s ease,transform .15s ease;width:3rem;z-index:10}.fusioni-image-gallery-nav:hover{background-color:hsla(0,0%,100%,.22);transform:translateY(-50%) scale(1.05)}.fusioni-image-gallery-nav:active{transform:translateY(-50%) scale(.98)}.fusioni-image-gallery-nav:focus{outline:none}.fusioni-image-gallery-nav:focus-visible{box-shadow:0 0 0 2px hsla(0,0%,100%,.5)}.fusioni-image-gallery-nav-prev{left:1rem}.fusioni-image-gallery-nav-next{right:1rem}@media (min-width:640px){.fusioni-image-gallery-nav{height:3.5rem;width:3.5rem}.fusioni-image-gallery-nav-prev{left:1.5rem}.fusioni-image-gallery-nav-next{right:1.5rem}}.fusioni-image.fusioni-image-clickable{cursor:pointer}.fusioni-image-clickable-wrap{background:none;border:none;border-radius:var(--fusioni-radius);cursor:pointer;display:block;margin:0;padding:0;text-align:left;width:100%}.fusioni-image-clickable-wrap:focus-visible{outline:2px solid var(--fusioni-primary);outline-offset:2px}.fusioni-gallery-strip{width:100%}.fusioni-gallery-strip-viewport{max-width:100%;overflow:hidden;width:100%}.fusioni-gallery-strip-track{display:flex;transition:margin-left .3s ease-in-out;width:100%}.fusioni-gallery-strip-page{box-sizing:border-box;flex:0 0 100%;max-width:100%;min-width:0}.fusioni-gallery-strip-grid{display:grid;gap:.75rem}.fusioni-gallery-strip-cell{min-width:0}.fusioni-gallery-strip-dots{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-top:1rem}.fusioni-gallery-strip-dot{border:none;border-radius:9999px;cursor:pointer;height:.625rem;padding:0;transition:background-color .15s ease,transform .15s ease;width:.625rem}.fusioni-gallery-strip--document .fusioni-gallery-strip-dot{background-color:#d1d5db}.fusioni-chat-widget.dark .fusioni-gallery-strip--document .fusioni-gallery-strip-dot{background-color:#475569}.fusioni-gallery-strip--document .fusioni-gallery-strip-dot-active{background-color:var(--fusioni-primary)}.fusioni-chat-widget.dark .fusioni-gallery-strip--document .fusioni-gallery-strip-dot-active{background-color:var(--fusioni-primary-light)}.fusioni-gallery-strip--lightbox .fusioni-gallery-strip-dot{background-color:hsla(0,0%,100%,.35)}.fusioni-gallery-strip--lightbox .fusioni-gallery-strip-dot-active{background-color:hsla(0,0%,100%,.95);transform:scale(1.15)}.fusioni-gallery-strip-dot:focus-visible{outline:2px solid var(--fusioni-primary);outline-offset:2px}.fusioni-gallery-strip--lightbox .fusioni-gallery-strip-dot:focus-visible{outline-color:hsla(0,0%,100%,.85)}.fusioni-document-images,.fusioni-document-videos{margin-top:.25rem;max-width:100%;min-width:0;position:relative;width:100%}.fusioni-document-videos-header{align-items:center;display:flex;justify-content:center;margin-bottom:.75rem;min-height:1.25rem;position:relative}.fusioni-document-videos-header:before{background:var(--fusioni-border);content:\"\";height:1px;left:0;position:absolute;right:0;top:50%;z-index:0}.fusioni-chat-widget.dark .fusioni-document-videos-header:before{background:hsla(0,0%,100%,.12)}.fusioni-document-videos-header-label{align-items:center;background:var(--fusioni-bg-secondary);color:var(--fusioni-text-secondary);display:inline-flex;font-size:.8125rem;font-weight:600;gap:.375rem;padding:0 .625rem;position:relative;z-index:1}.fusioni-document-videos-header-icon{flex-shrink:0;height:1rem;opacity:.9;width:1rem}.fusioni-document-video-wrap{background:hsla(0,0%,100%,.4);border:1px solid rgba(0,0,0,.1);border-radius:var(--fusioni-radius-xl);box-shadow:var(--fusioni-shadow);display:block;overflow:hidden;position:relative;width:100%}.fusioni-chat-widget.dark .fusioni-document-video-wrap{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.1)}.fusioni-document-video-aspect{aspect-ratio:4/3;background:rgba(0,0,0,.05);width:100%}.fusioni-chat-widget.dark .fusioni-document-video-aspect{background:hsla(0,0%,100%,.06)}.fusioni-document-video-aspect video{display:block;height:100%;object-fit:cover;width:100%}.fusioni-document-images-header{align-items:center;display:flex;justify-content:center;margin-bottom:.75rem;min-height:1.25rem;position:relative}.fusioni-document-images-header:before{background:var(--fusioni-border);content:\"\";height:1px;left:0;position:absolute;right:0;top:50%;z-index:0}.fusioni-chat-widget.dark .fusioni-document-images-header:before{background:hsla(0,0%,100%,.12)}.fusioni-document-images-header-label{align-items:center;background:var(--fusioni-bg-secondary);color:var(--fusioni-text-secondary);display:inline-flex;font-size:.8125rem;font-weight:600;gap:.375rem;padding:0 .625rem;position:relative;z-index:1}.fusioni-document-images-header-icon{flex-shrink:0;height:1rem;opacity:.9;width:1rem}.fusioni-document-image-btn{background:hsla(0,0%,100%,.4);border:1px solid rgba(0,0,0,.1);border-radius:var(--fusioni-radius-xl);box-shadow:var(--fusioni-shadow);cursor:pointer;display:block;overflow:hidden;padding:0;position:relative;transition:transform .2s ease,box-shadow .2s ease;width:100%}.fusioni-chat-widget.dark .fusioni-document-image-btn{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.1)}.fusioni-document-image-btn:hover{box-shadow:var(--fusioni-shadow-md);transform:translateY(-2px)}.fusioni-document-image-btn:focus{outline:none}.fusioni-document-image-btn:focus-visible{box-shadow:0 0 0 2px rgba(37,99,235,.5)}.fusioni-document-image-aspect{aspect-ratio:4/3;width:100%}.fusioni-document-image-aspect img{display:block;height:100%;object-fit:cover;transition:transform .2s ease;width:100%}.fusioni-document-image-btn:hover .fusioni-document-image-aspect img{transform:scale(1.02)}";
6518
+ var css_248z = ":root{--fusioni-primary:#2563eb;--fusioni-primary-light:#3b82f6;--fusioni-primary-dark:#1d4ed8;--fusioni-secondary:#64748b;--fusioni-success:#059669;--fusioni-warning:#d97706;--fusioni-error:#dc2626;--fusioni-info:#0284c7;--fusioni-bg-primary:#fff;--fusioni-bg-secondary:#e7e7e7;--fusioni-bg-tertiary:#f1f5f9;--fusioni-bg-accent:#f0f9ff;--fusioni-bg-dark:#0f172a;--fusioni-bg-darker:#020617;--fusioni-text-primary:#0f172a;--fusioni-text-secondary:#475569;--fusioni-text-muted:#94a3b8;--fusioni-text-light:#fff;--fusioni-border:#e2e8f0;--fusioni-border-light:#f1f5f9;--fusioni-border-dark:#334155;--fusioni-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--fusioni-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--fusioni-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--fusioni-shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--fusioni-shadow-2xl:0 25px 50px -12px rgba(0,0,0,.25);--fusioni-radius:0.375rem;--fusioni-radius-md:0.5rem;--fusioni-radius-lg:0.75rem;--fusioni-radius-xl:1rem;--fusioni-radius-2xl:1.5rem;--fusioni-transition:all 0.2s cubic-bezier(0.4,0,0.2,1);--fusioni-transition-fast:all 0.15s cubic-bezier(0.4,0,0.2,1)}.fusioni-chat-widget{--fusioni-primary:var(--primary-color,#2563eb);--fusioni-primary-light:var(--primary-color,#3b82f6);--fusioni-primary-dark:var(--primary-color,#1d4ed8)}.fusioni-chat-widget.dark{--fusioni-primary:var(--primary-color,#3b82f6);--fusioni-primary-light:var(--primary-color,#60a5fa);--fusioni-primary-dark:var(--primary-color,#2563eb);--fusioni-secondary:#64748b;--fusioni-success:#10b981;--fusioni-warning:#f59e0b;--fusioni-error:#ef4444;--fusioni-info:#06b6d4;--fusioni-bg-primary:#0f172a;--fusioni-bg-secondary:#1e293b;--fusioni-bg-tertiary:#334155;--fusioni-bg-accent:#1e293b;--fusioni-bg-dark:#020617;--fusioni-bg-darker:#000;--fusioni-text-primary:#f8fafc;--fusioni-text-secondary:#cbd5e1;--fusioni-text-muted:#64748b;--fusioni-text-light:#fff;--fusioni-border:#334155;--fusioni-border-light:#475569;--fusioni-border-dark:#1e293b}.fusioni-chat-widget{background-color:var(--fusioni-bg-primary);color:var(--fusioni-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5}.fusioni-floating-button{align-items:center;backdrop-filter:blur(10px);background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border:none;border:2px solid hsla(0,0%,100%,.1);border-radius:50%;box-shadow:var(--fusioni-shadow-2xl);cursor:pointer;display:flex;height:64px;justify-content:center;overflow:visible;position:fixed;width:64px;z-index:1000}.fusioni-floating-button:hover{background:linear-gradient(135deg,var(--fusioni-primary-dark) 0,var(--fusioni-primary) 100%);box-shadow:0 25px 50px -12px rgba(37,99,235,.4);transform:translateY(-2px) scale(1.05)}.fusioni-floating-button:active{transform:translateY(0) scale(.98)}.fusioni-floating-button-glass{backdrop-filter:blur(20px);background:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.4);box-shadow:0 8px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.4)}@supports not (backdrop-filter:blur(20px)){.fusioni-floating-button-glass{background:hsla(0,0%,100%,.9);border:1px solid rgba(0,0,0,.1)}}.fusioni-floating-button-minimal{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);box-shadow:0 4px 12px rgba(0,0,0,.05),0 1px 3px rgba(0,0,0,.1)}.fusioni-floating-button-solid{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);box-shadow:0 4px 12px rgba(37,99,235,.15),0 1px 3px rgba(37,99,235,.1)}.fusioni-floating-button-content{align-items:center;display:flex;justify-content:center}.fusioni-floating-button-icon{transition:all .3s cubic-bezier(.4,0,.2,1)}.fusioni-floating-button-glass .fusioni-floating-button-icon{color:var(--fusioni-text-primary);filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.fusioni-floating-button-minimal .fusioni-floating-button-icon{color:var(--fusioni-text-primary)}.fusioni-floating-button-solid .fusioni-floating-button-icon{color:#fff}.fusioni-floating-button-attention-ring{animation:attentionRingPulse 3s ease-in-out infinite;border:2px solid var(--fusioni-primary);border-radius:50%;bottom:-8px;left:-8px;opacity:0;pointer-events:none;position:absolute;right:-8px;top:-8px}.fusioni-floating-button-attention-ring-2{animation:attentionRingPulse 3s ease-in-out .5s infinite;border:1px solid var(--fusioni-primary-light);border-radius:50%;bottom:-16px;left:-16px;opacity:0;pointer-events:none;position:absolute;right:-16px;top:-16px}.fusioni-floating-button-attention-ring-3{animation:attentionRingPulse 3s ease-in-out 1s infinite;border:1px solid rgba(99,102,241,.3);border-radius:50%;bottom:-24px;left:-24px;opacity:0;pointer-events:none;position:absolute;right:-24px;top:-24px}.fusioni-floating-button-neural-particles{bottom:0;left:0;overflow:visible;pointer-events:none;position:absolute;right:0;top:0}.fusioni-neural-particle{animation:neuralParticleFloat 4s ease-in-out infinite;background:var(--fusioni-primary-light);border-radius:50%;box-shadow:0 0 6px var(--fusioni-primary-light);height:3px;opacity:0;position:absolute;width:3px}.fusioni-neural-particle:first-child{animation-delay:0s;left:15%;top:20%}.fusioni-neural-particle:nth-child(2){animation-delay:.8s;right:20%;top:15%}.fusioni-neural-particle:nth-child(3){animation-delay:1.6s;bottom:25%;left:25%}.fusioni-neural-particle:nth-child(4){animation-delay:2.4s;bottom:20%;right:15%}.fusioni-neural-particle:nth-child(5){animation-delay:3.2s;left:5%;top:50%}.fusioni-neural-particle:nth-child(6){animation-delay:.4s;right:5%;top:50%}.fusioni-floating-button-brain-activity{animation:brainActivityPulse 2.5s ease-in-out infinite;background:linear-gradient(45deg,#10b981,#059669);border-radius:50%;box-shadow:0 0 8px rgba(16,185,129,.6);height:16px;opacity:0;pointer-events:none;position:absolute;right:-2px;top:-2px;width:16px}.fusioni-floating-button-brain-activity:before{animation:brainCorePulse 1s ease-in-out infinite;background:#fff;border-radius:50%;content:\"\";height:6px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:6px}.fusioni-floating-button-attention-sequence{height:100px;left:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:100px}.fusioni-attention-wave{animation:attentionWaveExpand 2s ease-out infinite;border:2px solid var(--fusioni-primary);border-radius:50%;bottom:0;left:0;opacity:0;position:absolute;right:0;top:0}.fusioni-attention-wave:nth-child(2){animation-delay:.3s}.fusioni-attention-wave:nth-child(3){animation-delay:.6s}.fusioni-floating-button-periodic-pulse{animation:periodicAttentionPulse 8s ease-in-out infinite;background:radial-gradient(circle,rgba(99,102,241,.1) 0,transparent 70%);border-radius:50%;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0}.fusioni-floating-button-glow{animation:enhancedGlowPulse 3s ease-in-out infinite;background:radial-gradient(circle,rgba(99,102,241,.3) 0,transparent 70%);border-radius:50%;bottom:-4px;left:-4px;opacity:0;pointer-events:none;position:absolute;right:-4px;top:-4px}.fusioni-floating-button-magnetic-field{animation:magneticFieldRotate 6s linear infinite;border:1px solid rgba(99,102,241,.2);border-radius:50%;bottom:-12px;left:-12px;opacity:0;pointer-events:none;position:absolute;right:-12px;top:-12px}.fusioni-floating-button-magnetic-field:after,.fusioni-floating-button-magnetic-field:before{background:var(--fusioni-primary-light);border-radius:50%;box-shadow:0 0 4px var(--fusioni-primary-light);content:\"\";height:4px;position:absolute;width:4px}.fusioni-floating-button-magnetic-field:before{left:50%;top:0;transform:translateX(-50%)}.fusioni-floating-button-magnetic-field:after{bottom:0;left:50%;transform:translateX(-50%)}.fusioni-floating-button-bottom-right{bottom:1rem;right:1rem}.fusioni-floating-button-bottom-left{bottom:1rem;left:1rem}.fusioni-floating-button-top-right{right:1rem;top:1rem}.fusioni-floating-button-top-left{left:1rem;top:1rem}.fusioni-chat-panel{backdrop-filter:blur(20px);background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border-light);border-radius:var(--fusioni-radius-2xl);box-shadow:var(--fusioni-shadow-2xl);box-sizing:border-box;display:flex;flex-direction:column;height:640px;max-height:calc(100vh - 2rem);max-width:calc(100vw - 2rem);overflow:hidden;position:fixed;width:480px;z-index:50}.fusioni-chat-widget:not(.dark) .fusioni-chat-panel{background:hsla(0,0%,100%,.95)}.fusioni-chat-widget.dark .fusioni-chat-panel{background:rgba(15,23,42,.95)}.fusioni-chat-panel-content{box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.fusioni-chat-panel-bottom-right{bottom:5rem;right:1rem}.fusioni-chat-panel-bottom-left{bottom:5rem;left:1rem}.fusioni-chat-panel-top-right{right:1rem;top:5rem}.fusioni-chat-panel-top-left{left:1rem;top:5rem}.fusioni-chat-panel-fullscreen{border-radius:0!important;bottom:0!important;height:100vh!important;left:0!important;max-height:none!important;max-width:none!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important;z-index:9999!important}.fusioni-chat-backdrop{background:rgba(0,0,0,.5);bottom:0;left:0;position:fixed;right:0;top:0;z-index:40}.fusioni-chat-container{box-sizing:border-box}.fusioni-chat-container,.fusioni-chat-main{display:flex;height:100%;overflow:hidden;width:100%}.fusioni-chat-main{flex:1;flex-direction:column;min-width:0;position:relative;transition:width var(--fusioni-transition)}.fusioni-conversation-list{backdrop-filter:blur(10px);background:var(--fusioni-bg-secondary);border-right:1px solid var(--fusioni-border-light);bottom:0;box-shadow:var(--fusioni-shadow-lg);display:flex;flex-direction:column;left:0;opacity:0;overflow:hidden;position:absolute;top:0;transform:translateX(-100%) scale(.95);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);width:280px;z-index:10}.fusioni-chat-widget:not(.dark) .fusioni-conversation-list{background:linear-gradient(180deg,var(--fusioni-bg-accent) 0,var(--fusioni-bg-secondary) 100%)}.fusioni-conversation-list.open{opacity:1;transform:translateX(0) scale(1)}.fusioni-conversation-backdrop{backdrop-filter:blur(2px);background:rgba(0,0,0,.3);bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1);visibility:hidden;z-index:5}.fusioni-conversation-backdrop.open{opacity:1;visibility:visible}.fusioni-conversation-header{align-items:center;backdrop-filter:blur(10px);background:var(--fusioni-bg-tertiary);border-bottom:1px solid var(--fusioni-border-light);display:flex;justify-content:space-between;padding:1.25rem 1rem}.fusioni-chat-widget:not(.dark) .fusioni-conversation-header{background:hsla(0,0%,100%,.8)}.fusioni-conversation-title{align-items:center;display:flex;gap:.75rem}.fusioni-conversation-logo{align-items:center;border:2px solid hsla(0,0%,100%,.2);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;display:flex;height:44px;justify-content:center;width:44px}.fusioni-conversation-info h3{color:var(--fusioni-text-primary);font-size:1rem;font-weight:600;margin:0}.fusioni-conversation-info p{color:var(--fusioni-text-secondary);font-size:.75rem;margin:0}.fusioni-conversation-search{padding:1rem}.fusioni-search-input{position:relative}.fusioni-input{border:1px solid var(--fusioni-border-light);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow);color:var(--fusioni-text-primary);font-size:.875rem;padding:.75rem 2.5rem .75rem 1rem;transition:var(--fusioni-transition);width:100%}.fusioni-input,.fusioni-input:focus{background:var(--fusioni-bg-secondary)}.fusioni-input:focus{border-color:var(--fusioni-primary);box-shadow:0 0 0 3px rgba(59,130,246,.1),var(--fusioni-shadow-md);outline:none}.fusioni-chat-widget:not(.dark) .fusioni-input{background:var(--fusioni-bg-primary)}.fusioni-chat-widget:not(.dark) .fusioni-input:focus{background:var(--fusioni-bg-primary);box-shadow:0 0 0 3px rgba(37,99,235,.1),var(--fusioni-shadow-md)}.fusioni-search-icon{color:var(--fusioni-text-muted);pointer-events:none;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.fusioni-divider{background:var(--fusioni-border);height:1px;margin:0 1rem}.fusioni-conversations{flex:1;overflow-y:auto;padding:.5rem}.fusioni-conversation-item{backdrop-filter:blur(10px);background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border-light);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow);cursor:pointer;margin-bottom:.5rem;overflow:hidden;padding:1rem .5rem 1rem 1rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.fusioni-conversation-item:before{background:linear-gradient(135deg,rgba(37,99,235,.02),rgba(59,130,246,.05) 50%,rgba(37,99,235,.02));bottom:0;content:\"\";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:1}.fusioni-conversation-item:hover{background:var(--fusioni-bg-secondary);border-color:var(--fusioni-primary);box-shadow:var(--fusioni-shadow-lg);transform:translateY(-2px) scale(1.02)}.fusioni-conversation-item:hover:before{opacity:1}.fusioni-conversation-item.active{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border-color:var(--fusioni-primary);box-shadow:0 8px 32px rgba(37,99,235,.3);color:#fff;transform:translateY(-1px)}.fusioni-conversation-item.active:before{opacity:0}.fusioni-conversation-neural-bg{bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s ease;z-index:0}.fusioni-conversation-item:hover .fusioni-conversation-neural-bg{opacity:.6}.fusioni-conversation-item.active .fusioni-conversation-neural-bg{opacity:.8}.fusioni-neural-node{animation:neuralPulse 3s ease-in-out infinite;background:var(--fusioni-primary);border-radius:50%;box-shadow:0 0 8px var(--fusioni-primary);height:4px;position:absolute;width:4px}.fusioni-neural-node-1{animation-delay:0s;left:15%;top:20%}.fusioni-neural-node-2{animation-delay:1s;right:20%;top:60%}.fusioni-neural-node-3{animation-delay:2s;bottom:25%;left:40%}.fusioni-neural-connection{animation:neuralFlow 4s ease-in-out infinite;background:linear-gradient(90deg,transparent 0,var(--fusioni-primary) 50%,transparent 100%);height:1px;position:absolute}.fusioni-neural-connection-1{animation-delay:.5s;left:15%;top:30%;transform:rotate(15deg);width:60%}.fusioni-neural-connection-2{animation-delay:1.5s;bottom:40%;left:25%;transform:rotate(-20deg);width:45%}.fusioni-ai-pulse-ring{animation:aiPulse 2s ease-in-out infinite;border:2px solid var(--fusioni-primary);border-radius:50%;height:100%;opacity:.6;position:absolute;width:100%}.fusioni-ai-core{align-items:center;animation:aiRotate 4s linear infinite;color:var(--fusioni-primary);display:flex;justify-content:center;position:relative;z-index:1}.fusioni-conversation-item.active .fusioni-ai-core{color:#fff}.fusioni-conversation-item.active .fusioni-ai-pulse-ring{border-color:#fff}.fusioni-conversation-content{display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:2}.fusioni-conversation-main{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.fusioni-conversation-title-section{display:flex;flex:1;flex-direction:column;gap:.5rem;min-width:0}.fusioni-conversation-title-text{align-items:center;color:var(--fusioni-text-primary);display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:600;gap:.5rem;line-height:1.3;margin:0;word-break:break-word}.fusioni-conversation-item.active .fusioni-conversation-title-text{color:#fff}.fusioni-conversation-meta{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-top:.25rem}.fusioni-conversation-status{align-items:center;color:var(--fusioni-text-muted);display:flex;font-size:.75rem;font-weight:500;gap:.375rem}.fusioni-conversation-item.active .fusioni-conversation-status{color:hsla(0,0%,100%,.8)}.fusioni-status-dot{animation:statusPulse 2s ease-in-out infinite;background:var(--fusioni-success);border-radius:50%;box-shadow:0 0 4px var(--fusioni-success);height:6px;width:6px}.fusioni-conversation-temp-indicator{flex-shrink:0}.fusioni-new-badge{align-items:center;animation:newBadgePulse 2s ease-in-out infinite;background:linear-gradient(135deg,var(--fusioni-warning) 0,#f59e0b 100%);border-radius:var(--fusioni-radius);box-shadow:0 2px 8px rgba(217,119,6,.3);color:#fff;display:inline-flex;font-size:.625rem;font-weight:700;letter-spacing:.05em;padding:.25rem .5rem;position:relative;text-transform:uppercase}.fusioni-new-text{position:relative;z-index:2}.fusioni-new-pulse{animation:newPulseRing 2s ease-in-out infinite;background:linear-gradient(135deg,var(--fusioni-warning) 0,#f59e0b 100%);border-radius:var(--fusioni-radius);bottom:0;left:0;opacity:.6;position:absolute;right:0;top:0}.fusioni-conversation-actions{align-items:flex-start;display:flex;gap:.25rem;margin-top:.25rem}.fusioni-delete-btn{opacity:0;transform:scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1)}.fusioni-conversation-item:hover .fusioni-delete-btn{opacity:1;transform:scale(1)}.fusioni-conversation-item.active .fusioni-delete-btn{background:hsla(0,0%,100%,.2);color:#fff;opacity:1;transform:scale(1)}.fusioni-conversation-item.active .fusioni-delete-btn:hover{background:hsla(0,0%,100%,.3);transform:scale(1.1)}.fusioni-conversation-date{color:var(--fusioni-text-muted);font-size:.75rem;font-weight:500;margin:0}.fusioni-conversation-item.active .fusioni-conversation-date{color:hsla(0,0%,100%,.8)}.fusioni-conversation-data-flow{bottom:0;height:2px;left:0;opacity:0;overflow:hidden;position:absolute;right:0;transition:opacity .3s ease}.fusioni-conversation-item.active .fusioni-conversation-data-flow,.fusioni-conversation-item:hover .fusioni-conversation-data-flow{opacity:1}.fusioni-data-stream{animation:dataFlow 3s ease-in-out infinite;background:linear-gradient(90deg,transparent 0,var(--fusioni-primary) 20%,var(--fusioni-primary-light) 50%,var(--fusioni-primary) 80%,transparent 100%);height:100%;left:-100%;position:absolute;top:0;width:100%}.fusioni-conversation-item.active .fusioni-data-stream{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3) 20%,hsla(0,0%,100%,.6) 50%,hsla(0,0%,100%,.3) 80%,transparent)}.fusioni-empty-state{color:var(--fusioni-text-muted);padding:2rem;text-align:center}.fusioni-message-list{background:var(--fusioni-bg-primary);display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:1rem}.fusioni-messages-container{display:flex;flex-direction:column;gap:1rem;height:100%}.fusioni-empty-messages,.fusioni-empty-messages-content{align-items:center;display:flex;height:100%;justify-content:center}.fusioni-empty-messages-content{color:var(--fusioni-text-muted);flex-direction:column;text-align:center}.fusioni-empty-icon{color:var(--fusioni-text-muted);height:64px;margin:0 auto 1rem;width:64px}.fusioni-messages{gap:1rem}.fusioni-message-wrapper,.fusioni-messages{display:flex;flex-direction:column}.fusioni-message{align-items:flex-start;display:flex;gap:5px}.fusioni-message.user{flex-direction:row-reverse}.fusioni-message-avatar{align-items:center;background:var(--fusioni-bg-tertiary);border-radius:8px;color:var(--fusioni-text-secondary);display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.fusioni-message.user .fusioni-message-avatar{background:var(--fusioni-primary);color:#fff}.fusioni-message-content{flex:1;min-width:0}.fusioni-message-footer,.fusioni-message-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.fusioni-message-role{color:var(--fusioni-text-secondary);font-size:.75rem;font-weight:500;margin-left:5px}.fusioni-message-time{color:var(--fusioni-text-muted);font-size:.75rem}.fusioni-message-body{margin-bottom:0}.fusioni-message-bubble{word-wrap:break-word;border-radius:var(--fusioni-radius-lg);max-width:100%;padding:.75rem 1rem;position:relative;transition:var(--fusioni-transition)}.fusioni-message-bubble:hover{box-shadow:var(--fusioni-shadow)}.fusioni-message-user{background:var(--fusioni-primary);border-bottom-right-radius:.25rem;color:#fff}.fusioni-message-assistant{background:var(--fusioni-bg-secondary);border-bottom-left-radius:.25rem;color:var(--fusioni-text-primary)}.fusioni-message-bubble.fusioni-message-bubble--loading-empty{background:transparent;border-radius:0;box-shadow:none;margin:0;min-height:0;padding:0}.fusioni-message-bubble.fusioni-message-bubble--loading-empty:hover{box-shadow:none}.fusioni-message-error{background:var(--fusioni-error);color:#fff}.fusioni-message-text{line-height:1.5}.fusioni-message-text h1,.fusioni-message-text h2,.fusioni-message-text h3{line-height:1.25;margin:.5rem 0 .25rem}.fusioni-message-text p{margin:.5rem 0}.fusioni-message-text ol,.fusioni-message-text ul{list-style-position:outside;margin:.5rem 0;padding-left:1rem}.fusioni-message-text code{background:var(--fusioni-bg-tertiary);border-radius:.25rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875em;padding:.125rem .25rem}.fusioni-message-text pre{background:var(--fusioni-bg-dark);border-radius:var(--fusioni-radius);color:var(--fusioni-text-light);margin:.5rem 0;overflow-x:auto;padding:.75rem}.fusioni-message-text a{color:var(--fusioni-primary);text-decoration:underline}.fusioni-message-extra,.fusioni-message-image{margin-top:.5rem}.fusioni-image{border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);height:auto;max-width:100%}.fusioni-message-audio{background:var(--fusioni-bg-tertiary);border-radius:var(--fusioni-radius);margin-top:.5rem;padding:.75rem}.fusioni-audio-header{align-items:center;color:var(--fusioni-text-secondary);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.5rem}.fusioni-audio-duration{color:var(--fusioni-text-muted);font-size:.75rem}.fusioni-audio-player{height:32px;width:100%}.fusioni-message-map{margin-top:.5rem}.fusioni-map-placeholder{background:var(--fusioni-bg-tertiary);border-radius:var(--fusioni-radius);color:var(--fusioni-text-secondary);padding:1rem;text-align:center}.fusioni-map-container{border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);margin-top:.5rem;overflow:hidden}.fusioni-map-interactive,.fusioni-map-static{height:auto;position:relative;width:100%}.fusioni-map-image{border-radius:var(--fusioni-radius);display:block;height:auto;width:100%}.fusioni-map-iframe{border:none;border-radius:var(--fusioni-radius);height:400px;width:100%}.fusioni-map-loading{align-items:center;background:var(--fusioni-bg-tertiary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);display:flex;justify-content:center;padding:2rem}.fusioni-map-loading-content{align-items:center;color:var(--fusioni-text-secondary);display:flex;flex-direction:column;gap:.75rem}.fusioni-map-loading-spinner{animation:spin 1s linear infinite;border-top:2px solid var(--fusioni-border);border:2px solid var(--fusioni-border);border-radius:50%;border-top-color:var(--fusioni-primary);height:24px;width:24px}.fusioni-map-error{align-items:center;background:rgba(220,38,38,.05);border:1px solid rgba(220,38,38,.2);border-radius:var(--fusioni-radius);color:var(--fusioni-error);display:flex;justify-content:center;padding:1rem}.fusioni-map-error-content{align-items:center;display:flex;font-size:.875rem;gap:.5rem}.fusioni-chat-widget.dark .fusioni-map-container{border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-map-loading{background:var(--fusioni-bg-dark);border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-map-error{background:rgba(220,38,38,.1);border-color:rgba(220,38,38,.3)}.fusioni-message-thoughts{color:var(--fusioni-text-muted);font-size:.75rem;margin-top:.5rem}.fusioni-message-thoughts details{cursor:pointer}.fusioni-message-thoughts summary{font-weight:500}.fusioni-message-actions{align-items:center;display:flex;flex-direction:row;gap:.1rem;margin-left:auto;opacity:0;transition:var(--fusioni-transition)}.fusioni-message-actions .fusioni-btn:hover{background:transparent}.fusioni-message:hover .fusioni-message-actions{opacity:1}.fusioni-message-error-indicator{align-items:center;color:var(--fusioni-error);display:flex;font-size:.75rem;gap:.25rem;margin-top:.25rem}.fusioni-stream-message{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.fusioni-stream-message:last-child{margin-bottom:0}.fusioni-stream-indicator{align-items:center;display:flex;justify-content:center}.fusioni-stream-dot{animation:dotPulse 1.5s infinite;background:var(--fusioni-primary);border-radius:50%;box-shadow:0 0 8px rgba(99,102,241,.4);height:6px;width:6px}.fusioni-stream-text{color:var(--fusioni-text-secondary);font-size:.875rem;line-height:1.4}.fusioni-chat-input{background:var(--fusioni-bg-primary);border-top:1px solid var(--fusioni-border);padding:1rem}.fusioni-image-preview{margin-bottom:.75rem}.fusioni-image-preview-content{display:inline-block;position:relative}.fusioni-preview-image{border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);max-height:200px;max-width:200px}.fusioni-image-preview-content .fusioni-btn{position:absolute;right:.5rem;top:.5rem}.fusioni-audio-preview{background:var(--fusioni-bg-secondary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);margin-bottom:.75rem;padding:.75rem}.fusioni-audio-preview-content{display:flex;flex-direction:column;gap:.5rem}.fusioni-audio-preview-header{align-items:center;color:var(--fusioni-text-secondary);display:flex;font-size:.875rem;justify-content:space-between}.fusioni-audio-preview-player{height:32px;width:100%}.fusioni-audio-preview-text{color:var(--fusioni-text-muted);font-size:.75rem;margin:0;text-align:center}.fusioni-input-container{width:100%}.fusioni-input-wrapper{align-items:flex-end;background:var(--fusioni-bg-secondary);border:2px solid var(--fusioni-border);border-radius:var(--fusioni-radius-xl);display:flex;gap:.5rem;padding:.5rem;transition:var(--fusioni-transition)}.fusioni-input-wrapper:focus-within{border-color:var(--fusioni-primary);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.fusioni-textarea{background:transparent;border:none;color:var(--fusioni-text-primary);flex:1;font-family:inherit;font-size:.875rem;line-height:1.5;max-height:120px;min-height:20px;outline:none;padding:.5rem;resize:none}.fusioni-textarea::placeholder{color:var(--fusioni-text-muted)}.fusioni-input-actions{align-items:center;display:flex;gap:.25rem}.fusioni-btn{align-items:center;background:transparent;border:none;border-radius:var(--fusioni-radius);color:var(--fusioni-text-secondary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;justify-content:center;padding:.5rem;text-decoration:none;transition:var(--fusioni-transition)}.fusioni-btn:hover{background:var(--fusioni-bg-tertiary);color:var(--fusioni-text-primary)}.fusioni-btn:disabled{cursor:not-allowed;opacity:.5}.fusioni-btn-icon-primary{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);box-shadow:var(--fusioni-shadow)}.fusioni-btn-icon-primary:hover{background:var(--fusioni-primary-dark);border-color:var(--fusioni-primary-dark);color:#fff}.fusioni-btn-icon{border-radius:50%;height:25px;padding:0;transition:var(--fusioni-transition-fast);width:28px}.fusioni-btn-icon:hover{background:var(--fusioni-primary);border-color:var(--fusioni-primary);color:#fff;transform:scale(1.05)}.fusioni-btn-primary{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border:none;border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;font-weight:600;padding:.75rem 1.5rem;transition:var(--fusioni-transition)}.fusioni-btn-primary:hover{background:linear-gradient(135deg,var(--fusioni-primary-dark) 0,var(--fusioni-primary) 100%);box-shadow:var(--fusioni-shadow-lg);color:#fff;transform:translateY(-1px)}.fusioni-btn-danger{color:var(--fusioni-error)}.fusioni-btn-danger:hover{background:var(--fusioni-error);color:#fff}.fusioni-btn-text{background:transparent;color:var(--fusioni-primary);padding:.25rem .5rem}.fusioni-btn-text:hover{background:var(--fusioni-bg-tertiary);color:var(--fusioni-primary)}.fusioni-btn-send{background:var(--fusioni-primary);color:#fff}.fusioni-btn-send:hover{background:var(--fusioni-primary-dark);color:#fff}.fusioni-btn-send:disabled{background:var(--fusioni-text-muted);color:var(--fusioni-text-light)}.fusioni-btn-send-audio{background:var(--fusioni-success)}.fusioni-btn-send-audio:hover{background:#059669}.fusioni-btn-recording{animation:recordingPulse 2s ease-in-out infinite;background:var(--fusioni-error);color:#fff}.fusioni-btn-recording:hover{background:#dc2626;color:#fff}.fusioni-confirmation-widget{display:flex;gap:.75rem;padding-top:1.25rem}.fusioni-btn-confirm{background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);border:none;border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:var(--fusioni-transition)}.fusioni-btn-confirm:hover:not(:disabled){background:linear-gradient(135deg,var(--fusioni-primary-dark) 0,var(--fusioni-primary) 100%);box-shadow:var(--fusioni-shadow-lg);color:#fff;transform:translateY(-1px) scale(1.05)}.fusioni-btn-confirm:active:not(:disabled){transform:translateY(0) scale(1)}.fusioni-btn-confirm:disabled{background:var(--fusioni-primary);cursor:not-allowed;opacity:.5;transform:none}.fusioni-btn-cancel{background:var(--fusioni-secondary);border:none;border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-md);color:#fff;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:var(--fusioni-transition)}.fusioni-btn-cancel:hover:not(:disabled){background:var(--fusioni-secondary);box-shadow:var(--fusioni-shadow-lg);color:#fff;transform:translateY(-1px) scale(1.05)}.fusioni-btn-cancel:active:not(:disabled){transform:translateY(0) scale(1)}.fusioni-btn-cancel:disabled{cursor:not-allowed;opacity:.5;transform:none}.dark .fusioni-btn-cancel,.dark .fusioni-btn-cancel:hover:not(:disabled),.fusioni-btn-cancel:disabled{background:var(--fusioni-secondary)}.fusioni-audio-recorder{align-items:center;display:flex;gap:.5rem}.fusioni-recording-indicator{align-items:center;display:flex;justify-content:center}.fusioni-recording-dot{animation:recordingPulse 1.5s ease-in-out infinite;background:#fff;border-radius:50%;height:8px;width:8px}.fusioni-recording-timer{color:var(--fusioni-error);font-size:.75rem;font-weight:500;min-width:3rem;text-align:center}.fusioni-audio-error{background:var(--fusioni-error);border-radius:var(--fusioni-radius);bottom:100%;color:#fff;font-size:.75rem;left:0;margin-bottom:.5rem;padding:.5rem;position:absolute;right:0}.fusioni-audio-error p{margin:0 0 .25rem}.fusioni-audio-error button{background:transparent;border:1px solid #fff;border-radius:var(--fusioni-radius);color:#fff;cursor:pointer;font-size:.75rem;padding:.25rem .5rem}.fusioni-chat-loader{padding:1rem;text-align:center}.fusioni-loader-content{align-items:center;display:flex;gap:.75rem;justify-content:center}.fusioni-loader-dots{display:flex;gap:.25rem}.fusioni-loader-dot{animation:dotPulse 1.5s ease-in-out infinite;background:var(--fusioni-primary);border-radius:50%;height:6px;width:6px}.fusioni-loader-dot:nth-child(2){animation-delay:.2s}.fusioni-loader-dot:nth-child(3){animation-delay:.4s}.fusioni-loader-text{color:var(--fusioni-text-secondary);font-size:.875rem}.fusioni-chat-main-header{align-items:center;backdrop-filter:blur(10px);background:var(--fusioni-bg-tertiary);border-bottom:1px solid var(--fusioni-border-light);display:flex;justify-content:space-between;padding:1rem;position:relative;z-index:5}.fusioni-chat-widget:not(.dark) .fusioni-chat-main-header{background:hsla(0,0%,100%,.8)}.fusioni-chat-main-header-title{color:var(--fusioni-text-primary);font-size:.9375rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fusioni-header-actions{align-items:center;display:flex;gap:.75rem}.fusioni-conversation-toggle{align-items:center;background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);color:var(--fusioni-text-secondary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem .75rem;transition:var(--fusioni-transition)}.fusioni-conversation-toggle:hover{background:var(--fusioni-primary);border-color:var(--fusioni-primary);color:#fff}.fusioni-conversation-toggle-icon{height:16px;transition:transform var(--fusioni-transition);width:16px}.fusioni-conversation-toggle.open .fusioni-conversation-toggle-icon{transform:rotate(180deg)}.fusioni-connection-indicator,.fusioni-connection-status{align-items:center;display:flex}.fusioni-connection-indicator{border-radius:var(--fusioni-radius);padding:.25rem;transition:var(--fusioni-transition)}.fusioni-connection-dot{border-radius:50%;height:8px;transition:var(--fusioni-transition);width:8px}.fusioni-connection-indicator.connected .fusioni-connection-dot{background:var(--fusioni-success);box-shadow:0 0 0 2px rgba(16,185,129,.2)}.fusioni-connection-indicator.disconnected .fusioni-connection-dot{background:var(--fusioni-text-muted);box-shadow:0 0 0 2px rgba(148,163,184,.2)}.fusioni-language-switcher{display:inline-block;position:relative}.fusioni-language-button{align-items:center;background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);color:var(--fusioni-text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;min-width:120px;padding:.5rem .75rem;transition:var(--fusioni-transition)}.fusioni-language-button:hover{background:var(--fusioni-bg-secondary);border-color:var(--fusioni-primary)}.fusioni-language-flag{font-size:1rem;line-height:1}.fusioni-language-name{flex:1;font-weight:500;text-align:left}.fusioni-language-arrow{transition:transform var(--fusioni-transition)}.fusioni-language-arrow.open{transform:rotate(180deg)}.fusioni-language-dropdown{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-lg);left:0;margin-top:.25rem;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.fusioni-language-option{align-items:center;background:transparent;border:none;color:var(--fusioni-text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.75rem;text-align:left;transition:var(--fusioni-transition);width:100%}.fusioni-language-option:hover{background:var(--fusioni-bg-secondary)}.fusioni-language-option.active{background:var(--fusioni-primary);color:#fff}.fusioni-language-check{margin-left:auto;opacity:.8}.fusioni-chat-welcome{align-items:center;background:var(--fusioni-bg-primary);bottom:0;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;overflow:hidden;padding:3rem 2rem;position:absolute;right:0;top:0;width:100%}.fusioni-chat-widget:not(.dark) .fusioni-chat-welcome{background:linear-gradient(135deg,var(--fusioni-bg-accent) 0,var(--fusioni-bg-primary) 100%)}.fusioni-chat-welcome-content{box-sizing:border-box;margin:0 auto;max-width:320px;text-align:center;width:100%}.fusioni-chat-welcome-content h3{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,var(--fusioni-primary) 0,var(--fusioni-primary-light) 100%);-webkit-background-clip:text;background-clip:text;color:var(--fusioni-text-primary);font-size:1.5rem;font-weight:700;margin:0 0 1rem}.fusioni-chat-welcome-content p{color:var(--fusioni-text-secondary);font-size:1rem;line-height:1.6;margin:0 0 2rem}.fusioni-chat-error{background:var(--fusioni-error);border-radius:var(--fusioni-radius);color:#fff;margin:1rem;padding:1rem}.fusioni-chat-error p{margin:0 0 .5rem}.fusioni-chat-error button{background:transparent;border:1px solid #fff;border-radius:var(--fusioni-radius);color:#fff;cursor:pointer;padding:.25rem .5rem}.fusioni-spinner{animation:spin 1s linear infinite;border-top:2px solid var(--fusioni-border);border:2px solid var(--fusioni-border);border-radius:50%;border-top-color:var(--fusioni-primary);height:16px;width:16px}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes dotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@keyframes recordingPulse{0%,to{box-shadow:0 0 5px rgba(239,68,68,.5)}50%{box-shadow:0 0 20px rgba(239,68,68,.8),0 0 30px rgba(239,68,68,.6)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes neuralPulse{0%,to{box-shadow:0 0 8px var(--fusioni-primary);opacity:.6;transform:scale(1)}50%{box-shadow:0 0 16px var(--fusioni-primary);opacity:1;transform:scale(1.5)}}@keyframes neuralFlow{0%{opacity:0;transform:scaleX(0)}50%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(0)}}@keyframes aiPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes aiRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes statusPulse{0%,to{box-shadow:0 0 4px var(--fusioni-success);opacity:1;transform:scale(1)}50%{box-shadow:0 0 8px var(--fusioni-success);opacity:.8;transform:scale(1.2)}}@keyframes newBadgePulse{0%,to{box-shadow:0 2px 8px rgba(217,119,6,.3);transform:scale(1)}50%{box-shadow:0 4px 16px rgba(217,119,6,.5);transform:scale(1.05)}}@keyframes newPulseRing{0%{opacity:.6;transform:scale(1)}50%{opacity:.2;transform:scale(1.3)}to{opacity:0;transform:scale(1.6)}}@keyframes dataFlow{0%{left:-100%;opacity:0}10%{opacity:1}90%{opacity:1}to{left:100%;opacity:0}}@keyframes magneticHover{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.02)}to{transform:translateY(-1px) scale(1.01)}}@keyframes neuralGlow{0%,to{filter:brightness(1) saturate(1)}50%{filter:brightness(1.2) saturate(1.3)}}@media (max-width:768px){.fusioni-floating-button-bottom-left,.fusioni-floating-button-bottom-right{bottom:max(1rem,calc(env(safe-area-inset-bottom, 0px) + 1rem))}.fusioni-floating-button-bottom-right,.fusioni-floating-button-top-right{right:max(.75rem,calc(env(safe-area-inset-right, 0px) + .75rem))}.fusioni-floating-button-bottom-left,.fusioni-floating-button-top-left{left:max(.75rem,calc(env(safe-area-inset-left, 0px) + .75rem))}.fusioni-floating-button-top-left,.fusioni-floating-button-top-right{top:max(.75rem,calc(env(safe-area-inset-top, 0px) + .75rem))}.fusioni-chat-panel:not(.fusioni-chat-panel-fullscreen){border-radius:0;height:auto;max-height:none;max-width:none;width:auto}.fusioni-chat-panel-bottom-left,.fusioni-chat-panel-bottom-right,.fusioni-chat-panel-top-left,.fusioni-chat-panel-top-right{bottom:env(safe-area-inset-bottom,0);height:auto;left:env(safe-area-inset-left,0);right:env(safe-area-inset-right,0);top:env(safe-area-inset-top,0);width:auto}.fusioni-conversation-list{border-bottom:1px solid var(--fusioni-border);border-right:none;width:100%}.fusioni-chat-container{flex-direction:column}.fusioni-message-bubble:hover{transform:scale(1.01)}.fusioni-message-bubble{overflow-wrap:anywhere;word-break:break-word}.fusioni-message-list{-webkit-overflow-scrolling:touch;padding-bottom:.25rem;padding-left:.75rem;padding-right:.75rem}.fusioni-chat-input{padding-bottom:max(1rem,calc(env(safe-area-inset-bottom, 0px) + .5rem))}.fusioni-chat-toolbar-close-mobile{flex-shrink:0;min-height:44px;min-width:44px}.fusioni-header-actions{flex-wrap:wrap;justify-content:flex-end;row-gap:.25rem}}.fusioni-conversations::-webkit-scrollbar,.fusioni-message-list::-webkit-scrollbar{width:6px}.fusioni-conversations::-webkit-scrollbar-track,.fusioni-message-list::-webkit-scrollbar-track{background:var(--fusioni-bg-tertiary)}.fusioni-conversations::-webkit-scrollbar-thumb,.fusioni-message-list::-webkit-scrollbar-thumb{background:var(--fusioni-text-muted);border-radius:3px}.fusioni-conversations::-webkit-scrollbar-thumb:hover,.fusioni-message-list::-webkit-scrollbar-thumb:hover{background:var(--fusioni-text-secondary)}.fusioni-url-preview{background:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius);box-shadow:var(--fusioni-shadow);margin:.5rem 0;overflow:hidden;transition:var(--fusioni-transition)}.fusioni-url-preview:hover{box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-url-preview-compact{margin:.25rem 0}.fusioni-url-preview-loading{align-items:center;color:var(--fusioni-text-secondary);display:flex;font-size:.875rem;gap:.5rem;padding:.75rem}.fusioni-url-preview-spinner{animation:fusioni-spin 1s linear infinite;border-top:2px solid var(--fusioni-border);border:2px solid var(--fusioni-border);border-radius:50%;border-top-color:var(--fusioni-primary);height:16px;width:16px}@keyframes fusioni-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fusioni-url-preview-error{align-items:center;background:rgba(220,38,38,.05);color:var(--fusioni-error);display:flex;font-size:.875rem;justify-content:space-between;padding:.75rem}.fusioni-url-preview-content{position:relative}.fusioni-url-preview-close{align-items:center;background:rgba(0,0,0,.5);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;line-height:1;position:absolute;right:.5rem;top:.5rem;transition:var(--fusioni-transition);width:24px;z-index:10}.fusioni-url-preview-close:hover{background:rgba(0,0,0,.7)}.fusioni-url-preview-link{display:flex;transition:var(--fusioni-transition)}.fusioni-url-preview-link,.fusioni-url-preview-link:hover{color:inherit;text-decoration:none}.fusioni-url-preview-image{flex-shrink:0;height:80px;overflow:hidden;width:120px}.fusioni-url-preview-compact .fusioni-url-preview-image{height:60px;width:80px}.fusioni-url-preview-image img{height:100%;object-fit:cover;transition:var(--fusioni-transition);width:100%}.fusioni-url-preview-link:hover .fusioni-url-preview-image img{transform:scale(1.05)}.fusioni-url-preview-text{display:flex;flex:1;flex-direction:column;justify-content:space-between;min-width:0;padding:.75rem}.fusioni-url-preview-compact .fusioni-url-preview-text{padding:.5rem}.fusioni-url-preview-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--fusioni-text-primary);display:-webkit-box;font-size:.875rem;font-weight:600;line-height:1.25;margin-bottom:.25rem;overflow:hidden}.fusioni-url-preview-compact .fusioni-url-preview-title{-webkit-line-clamp:1;line-clamp:1;font-size:.8125rem}.fusioni-url-preview-description{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--fusioni-text-secondary);display:-webkit-box;font-size:.8125rem;line-height:1.4;margin-bottom:.25rem;overflow:hidden}.fusioni-url-preview-compact .fusioni-url-preview-description{-webkit-line-clamp:1;line-clamp:1;font-size:.75rem}.fusioni-url-preview-domain{color:var(--fusioni-text-muted);font-size:.75rem;letter-spacing:.025em;text-transform:uppercase}.fusioni-message-url-previews{margin-top:.5rem}.fusioni-chat-widget.dark .fusioni-url-preview{background:var(--fusioni-bg-dark);border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-url-preview-title{color:var(--fusioni-text-light)}.fusioni-chat-widget.dark .fusioni-url-preview-description{color:var(--fusioni-text-secondary)}.fusioni-chat-widget.dark .fusioni-url-preview-error{background:rgba(220,38,38,.1)}.fusioni-stream-messages{display:flex;flex-direction:column;gap:8px;margin-top:8px}.fusioni-stream-message-item{align-items:flex-start;display:flex;gap:8px}.fusioni-stream-message-logo-wrap{flex-shrink:0}.fusioni-stream-message-logo-frame{align-items:center;background:linear-gradient(to bottom right,#f3f4f6,#e5e7eb);border-radius:12px;box-shadow:var(--fusioni-shadow-lg);display:flex;height:32px;justify-content:center;overflow:hidden;width:32px}.fusioni-chat-widget.dark .fusioni-stream-message-logo-frame{background:linear-gradient(to bottom right,#1f2937,#111827)}.fusioni-stream-message-logo-img{animation:fusioni-spin 1s linear infinite;height:32px;margin:0;object-fit:contain;padding:4px;width:32px}.fusioni-stream-message-spotlight{margin-top:4px;min-width:0}.fusioni-spotlight{--mask-x:0%;--mask-y:50%;--text-spotlight-size:100px;display:block}.fusioni-spotlight-title{color:inherit;display:inline-block;position:relative}.fusioni-spotlight-text-base,.fusioni-spotlight-text-overlay,.fusioni-spotlight-title{font-family:inherit;font-size:16px;font-weight:inherit;letter-spacing:inherit;line-height:1.2}.fusioni-spotlight-text-base,.fusioni-spotlight-text-overlay{white-space:nowrap}.fusioni-spotlight-text-base{opacity:.2}.fusioni-spotlight-text-base,.fusioni-spotlight-text-overlay{-webkit-text-fill-color:transparent;background:currentColor;-webkit-background-clip:text;background-clip:text}.fusioni-spotlight-text-overlay{left:0;mask:radial-gradient(circle var(--text-spotlight-size) at var(--mask-x) var(--mask-y),#000 0,transparent 70%);-webkit-mask:radial-gradient(circle var(--text-spotlight-size) at var(--mask-x) var(--mask-y),#000 0,transparent 70%);opacity:1;pointer-events:none;position:absolute;top:0}@keyframes fusioni-dotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}.fusioni-chat-widget.dark .fusioni-conversation-item{background:var(--fusioni-bg-dark);border-color:var(--fusioni-border-dark)}.fusioni-chat-widget.dark .fusioni-conversation-item:before{background:linear-gradient(135deg,rgba(59,130,246,.05),rgba(37,99,235,.1) 50%,rgba(59,130,246,.05))}.fusioni-chat-widget.dark .fusioni-conversation-item:hover{background:var(--fusioni-bg-secondary);border-color:var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-neural-node{background:var(--fusioni-primary-light);box-shadow:0 0 8px var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-neural-connection{background:linear-gradient(90deg,transparent 0,var(--fusioni-primary-light) 50%,transparent 100%)}.fusioni-chat-widget.dark .fusioni-ai-core{color:var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-ai-pulse-ring{border-color:var(--fusioni-primary-light)}.fusioni-chat-widget.dark .fusioni-data-stream{background:linear-gradient(90deg,transparent 0,var(--fusioni-primary-light) 20%,var(--fusioni-primary) 50%,var(--fusioni-primary-light) 80%,transparent 100%)}.fusioni-chat-widget.dark .fusioni-conversation-title-text{color:var(--fusioni-text-light)}.fusioni-chat-widget.dark .fusioni-conversation-status{color:var(--fusioni-text-secondary)}.fusioni-chat-widget.dark .fusioni-conversation-date{color:var(--fusioni-text-muted)}@media (prefers-reduced-motion:reduce){.fusioni-ai-core,.fusioni-ai-pulse-ring,.fusioni-conversation-item,.fusioni-data-stream,.fusioni-neural-connection,.fusioni-neural-node,.fusioni-new-badge,.fusioni-new-pulse,.fusioni-status-dot{animation:none!important;transition:none!important}.fusioni-conversation-item:hover{transform:none!important}}@media (prefers-contrast:high){.fusioni-conversation-item{border-width:2px}.fusioni-conversation-item.active{border-width:3px}.fusioni-ai-pulse-ring,.fusioni-neural-node,.fusioni-status-dot{border:1px solid;box-shadow:none}}.fusioni-conversation-item:focus-visible{outline:2px solid var(--fusioni-primary);outline-offset:2px}.fusioni-conversation-item.active:focus-visible{outline-color:#fff}.fusioni-conversation-item{contain:layout style paint;will-change:transform,box-shadow}.fusioni-ai-pulse-ring,.fusioni-data-stream,.fusioni-neural-connection,.fusioni-neural-node{contain:layout style paint;will-change:transform,opacity}.fusioni-ai-core,.fusioni-conversation-item,.fusioni-data-stream,.fusioni-neural-node{backface-visibility:hidden;perspective:1000px;transform:translateZ(0)}@keyframes attentionRingPulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}@keyframes neuralParticleFloat{0%,to{opacity:0;transform:scale(.5) translateY(0)}25%{opacity:.6;transform:scale(1) translateY(-10px)}50%{opacity:1;transform:scale(1.2) translateY(-20px)}75%{opacity:.6;transform:scale(1) translateY(-10px)}}@keyframes brainActivityPulse{0%,to{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes brainCorePulse{0%,to{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1.3)}}@keyframes attentionWaveExpand{0%{opacity:.8;transform:scale(.5)}50%{opacity:.4;transform:scale(1.2)}to{opacity:0;transform:scale(2)}}@keyframes periodicAttentionPulse{0%,90%{opacity:0;transform:scale(1)}95%{opacity:.6;transform:scale(1.3)}to{opacity:0;transform:scale(1.5)}}@keyframes enhancedGlowPulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.4;transform:scale(1.1)}}@keyframes magneticFieldRotate{0%{opacity:.3;transform:rotate(0deg)}50%{opacity:.6}to{opacity:.3;transform:rotate(1turn)}}@keyframes floatingButtonEntrance{0%{transform:scale(1)}20%{transform:scale(6)}40%{transform:scale(1.1)}70%{transform:scale(.8)}to{transform:scale(1)}}@keyframes attentionSequenceTrigger{0%{opacity:0;transform:scale(.8)}20%{opacity:1;transform:scale(1.2)}40%{opacity:.8;transform:scale(1)}60%{opacity:1;transform:scale(1.1)}80%{opacity:.6;transform:scale(.9)}to{opacity:0;transform:scale(1)}}@keyframes floatingButtonHover{0%{transform:translateY(0) scale(1) rotate(0deg)}25%{transform:translateY(-3px) scale(1.05) rotate(1deg)}50%{transform:translateY(-5px) scale(1.08) rotate(0deg)}75%{transform:translateY(-2px) scale(1.03) rotate(-1deg)}to{transform:translateY(0) scale(1) rotate(0deg)}}@keyframes aiProcessingIndicator{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@keyframes neuralConnectionFlow{0%{opacity:0;transform:scaleX(0)}20%{opacity:.8;transform:scaleX(.3)}50%{opacity:1;transform:scaleX(1)}80%{opacity:.8;transform:scaleX(.7)}to{opacity:0;transform:scaleX(0)}}.fusioni-floating-button-attention-active .fusioni-floating-button-attention-ring,.fusioni-floating-button-attention-active .fusioni-floating-button-attention-ring-2,.fusioni-floating-button-attention-active .fusioni-floating-button-attention-ring-3,.fusioni-floating-button-attention-active .fusioni-floating-button-attention-sequence,.fusioni-floating-button-attention-active .fusioni-floating-button-brain-activity,.fusioni-floating-button-attention-active .fusioni-floating-button-glow,.fusioni-floating-button-attention-active .fusioni-floating-button-magnetic-field,.fusioni-floating-button-attention-active .fusioni-floating-button-neural-particles,.fusioni-floating-button-attention-active .fusioni-floating-button-periodic-pulse{opacity:1}.fusioni-floating-button-entering{animation:floatingButtonEntrance 1.2s ease-in-out forwards}@media (prefers-reduced-motion:reduce){.fusioni-attention-wave,.fusioni-floating-button-attention-ring,.fusioni-floating-button-attention-ring-2,.fusioni-floating-button-attention-ring-3,.fusioni-floating-button-brain-activity,.fusioni-floating-button-glow,.fusioni-floating-button-magnetic-field,.fusioni-floating-button-periodic-pulse,.fusioni-floating-button:hover,.fusioni-neural-particle{animation:none!important}}.fusioni-dialog-backdrop{animation:fadeIn .2s ease-out;backdrop-filter:blur(4px);background-color:rgba(0,0,0,.5);z-index:9998}.fusioni-dialog-backdrop,.fusioni-dialog-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.fusioni-dialog-container{pointer-events:none;z-index:9999}.fusioni-dialog{animation:dialogSlideIn .3s cubic-bezier(.4,0,.2,1);background-color:var(--fusioni-bg-primary);border:1px solid var(--fusioni-border);border-radius:var(--fusioni-radius-lg);box-shadow:var(--fusioni-shadow-2xl);max-width:420px;overflow:hidden;pointer-events:auto;width:90%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.fusioni-dialog-header{border-bottom:1px solid var(--fusioni-border);padding:1.5rem 1.5rem 1rem}.fusioni-dialog-title{color:var(--fusioni-text-primary);font-size:1.25rem;font-weight:600;line-height:1.5;margin:0}.fusioni-dialog-body{padding:1.5rem}.fusioni-dialog-message{color:var(--fusioni-text-secondary);font-size:.9375rem;line-height:1.6;margin:0}.fusioni-dialog-footer{border-top:1px solid var(--fusioni-border);display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem 1.5rem}.fusioni-dialog-cancel,.fusioni-dialog-confirm{min-width:80px}.fusioni-dialog-confirm-danger{background-color:var(--fusioni-error);border-color:var(--fusioni-error);color:var(--fusioni-text-light)}.fusioni-dialog-confirm-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c;box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-dialog-confirm-danger:active:not(:disabled){box-shadow:var(--fusioni-shadow);transform:translateY(0)}.fusioni-dialog-confirm-warning{background-color:var(--fusioni-warning);border-color:var(--fusioni-warning);color:var(--fusioni-text-light)}.fusioni-dialog-confirm-warning:hover:not(:disabled){background-color:#b45309;border-color:#b45309;box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-dialog-confirm-info{background-color:var(--fusioni-info);border-color:var(--fusioni-info);color:var(--fusioni-text-light)}.fusioni-dialog-confirm-info:hover:not(:disabled){background-color:#0369a1;border-color:#0369a1;box-shadow:var(--fusioni-shadow-md);transform:translateY(-1px)}.fusioni-chat-widget.dark .fusioni-dialog{background-color:var(--fusioni-bg-secondary);border-color:var(--fusioni-border)}.fusioni-chat-widget.dark .fusioni-dialog-header{border-bottom-color:var(--fusioni-border)}.fusioni-chat-widget.dark .fusioni-dialog-footer{border-top-color:var(--fusioni-border)}.fusioni-image-gallery-overlay{--fusioni-ig-img-offset:8rem;align-items:stretch;animation:fusionImageGalleryFadeIn .2s ease-out;box-sizing:border-box;display:flex;flex-direction:column;inset:0;justify-content:flex-start;overflow:hidden;position:fixed;z-index:100000}.fusioni-image-gallery-overlay.fusioni-image-gallery-has-thumbs{--fusioni-ig-img-offset:14rem}.fusioni-image-gallery-body{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;width:100%}.fusioni-image-gallery-stage{align-items:center;display:flex;flex:1 1 0;justify-content:center;min-height:0;min-width:0;position:relative;width:100%}.fusioni-image-gallery-overlay.fusioni-image-gallery-theme-light{background:linear-gradient(180deg,#374151 0,#9ca3af)}.fusioni-image-gallery-overlay.fusioni-image-gallery-theme-dark{background:linear-gradient(180deg,#111827 0,#1f2937)}@keyframes fusionImageGalleryFadeIn{0%{opacity:0}to{opacity:1}}.fusioni-image-gallery-topbar{align-items:center;background:linear-gradient(180deg,rgba(0,0,0,.7),transparent);display:flex;justify-content:space-between;left:0;padding:.75rem 1rem;pointer-events:none;position:absolute;right:0;top:0;z-index:20}.fusioni-image-gallery-topbar-spacer{width:2.5rem}.fusioni-image-gallery-counter{color:hsla(0,0%,100%,.9);font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:.025em}.fusioni-image-gallery-close{align-items:center;background-color:hsla(0,0%,100%,.1);border:none;border-radius:9999px;color:#fff;cursor:pointer;display:flex;height:2.5rem;justify-content:center;pointer-events:auto;transition:background-color .15s ease;width:2.5rem}.fusioni-image-gallery-close:hover{background-color:hsla(0,0%,100%,.2)}.fusioni-image-gallery-close:focus{outline:none}.fusioni-image-gallery-close:focus-visible{box-shadow:0 0 0 2px hsla(0,0%,100%,.5)}.fusioni-image-gallery-icon{height:1.25rem;width:1.25rem}.fusioni-image-gallery-icon-lg{height:2rem;width:2rem}.fusioni-image-gallery-content{align-items:center;box-sizing:border-box;display:flex;flex:1 1 0;justify-content:center;max-width:100%;min-height:0;min-width:0;padding:4rem 4.5rem;width:100%}.fusioni-image-gallery-img{animation:fusionImageGalleryZoomIn .25s ease-out;border-radius:.5rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.5);display:block;height:auto;max-height:calc(100vh - var(--fusioni-ig-img-offset, 8rem));max-height:calc(100dvh - var(--fusioni-ig-img-offset, 8rem));max-width:100%;object-fit:contain;width:auto}.fusioni-image-gallery-thumbs-wrap{box-sizing:border-box;flex:0 0 auto;margin:0 auto;max-height:12.5rem;max-width:min(100vw - 2rem,42rem);overflow:hidden;padding:0 1rem .75rem;width:100%}.fusioni-image-gallery-thumbs-wrap .fusioni-gallery-strip--lightbox .fusioni-gallery-strip-grid{gap:.5rem}.fusioni-image-gallery-thumbs-wrap .fusioni-gallery-strip--lightbox .fusioni-gallery-strip-cell{align-items:center;display:flex;justify-content:center;max-height:3.75rem}.fusioni-image-gallery-thumb{background:rgba(0,0,0,.35);border:2px solid transparent;border-radius:var(--fusioni-radius-md);box-sizing:border-box;cursor:pointer;display:block;flex-shrink:0;height:3.5rem;margin:0 auto;max-width:5.5rem;overflow:hidden;padding:0;transition:border-color .15s ease,transform .15s ease;width:100%}.fusioni-image-gallery-thumb:hover{border-color:hsla(0,0%,100%,.45)}.fusioni-image-gallery-thumb:focus{outline:none}.fusioni-image-gallery-thumb:focus-visible{box-shadow:0 0 0 2px hsla(0,0%,100%,.55)}.fusioni-image-gallery-thumb-selected{border-color:hsla(0,0%,100%,.9)}.fusioni-image-gallery-thumb img{display:block;height:100%;object-fit:cover;width:100%}.fusioni-image-gallery-thumbs-wrap .fusioni-gallery-strip-dots{margin-top:.5rem}@keyframes fusionImageGalleryZoomIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.fusioni-image-gallery-nav{align-items:center;background-color:hsla(0,0%,100%,.12);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:3rem;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .15s ease,transform .15s ease;width:3rem;z-index:10}.fusioni-image-gallery-nav:hover{background-color:hsla(0,0%,100%,.22);transform:translateY(-50%) scale(1.05)}.fusioni-image-gallery-nav:active{transform:translateY(-50%) scale(.98)}.fusioni-image-gallery-nav:focus{outline:none}.fusioni-image-gallery-nav:focus-visible{box-shadow:0 0 0 2px hsla(0,0%,100%,.5)}.fusioni-image-gallery-nav-prev{left:1rem}.fusioni-image-gallery-nav-next{right:1rem}@media (min-width:640px){.fusioni-image-gallery-nav{height:3.5rem;width:3.5rem}.fusioni-image-gallery-nav-prev{left:1.5rem}.fusioni-image-gallery-nav-next{right:1.5rem}}.fusioni-image.fusioni-image-clickable{cursor:pointer}.fusioni-image-clickable-wrap{background:none;border:none;border-radius:var(--fusioni-radius);cursor:pointer;display:block;margin:0;padding:0;text-align:left;width:100%}.fusioni-image-clickable-wrap:focus-visible{outline:2px solid var(--fusioni-primary);outline-offset:2px}.fusioni-gallery-strip{width:100%}.fusioni-gallery-strip-viewport{max-width:100%;overflow:hidden;width:100%}.fusioni-gallery-strip-track{display:flex;transition:margin-left .3s ease-in-out;width:100%}.fusioni-gallery-strip-page{box-sizing:border-box;flex:0 0 100%;max-width:100%;min-width:0}.fusioni-gallery-strip-grid{display:grid;gap:.75rem}.fusioni-gallery-strip-cell{min-width:0}.fusioni-gallery-strip-dots{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-top:1rem}.fusioni-gallery-strip-dot{border:none;border-radius:9999px;cursor:pointer;height:.625rem;padding:0;transition:background-color .15s ease,transform .15s ease;width:.625rem}.fusioni-gallery-strip--document .fusioni-gallery-strip-dot{background-color:#d1d5db}.fusioni-chat-widget.dark .fusioni-gallery-strip--document .fusioni-gallery-strip-dot{background-color:#475569}.fusioni-gallery-strip--document .fusioni-gallery-strip-dot-active{background-color:var(--fusioni-primary)}.fusioni-chat-widget.dark .fusioni-gallery-strip--document .fusioni-gallery-strip-dot-active{background-color:var(--fusioni-primary-light)}.fusioni-gallery-strip--lightbox .fusioni-gallery-strip-dot{background-color:hsla(0,0%,100%,.35)}.fusioni-gallery-strip--lightbox .fusioni-gallery-strip-dot-active{background-color:hsla(0,0%,100%,.95);transform:scale(1.15)}.fusioni-gallery-strip-dot:focus-visible{outline:2px solid var(--fusioni-primary);outline-offset:2px}.fusioni-gallery-strip--lightbox .fusioni-gallery-strip-dot:focus-visible{outline-color:hsla(0,0%,100%,.85)}.fusioni-document-images,.fusioni-document-videos{margin-top:.25rem;max-width:100%;min-width:0;position:relative;width:100%}.fusioni-document-videos-header{align-items:center;display:flex;justify-content:center;margin-bottom:.75rem;min-height:1.25rem;position:relative}.fusioni-document-videos-header:before{background:var(--fusioni-border);content:\"\";height:1px;left:0;position:absolute;right:0;top:50%;z-index:0}.fusioni-chat-widget.dark .fusioni-document-videos-header:before{background:hsla(0,0%,100%,.12)}.fusioni-document-videos-header-label{align-items:center;background:var(--fusioni-bg-secondary);color:var(--fusioni-text-secondary);display:inline-flex;font-size:.8125rem;font-weight:600;gap:.375rem;padding:0 .625rem;position:relative;z-index:1}.fusioni-document-videos-header-icon{flex-shrink:0;height:1rem;opacity:.9;width:1rem}.fusioni-document-video-wrap{background:hsla(0,0%,100%,.4);border:1px solid rgba(0,0,0,.1);border-radius:var(--fusioni-radius-xl);box-shadow:var(--fusioni-shadow);display:block;overflow:hidden;position:relative;width:100%}.fusioni-chat-widget.dark .fusioni-document-video-wrap{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.1)}.fusioni-document-video-aspect{aspect-ratio:4/3;background:rgba(0,0,0,.05);width:100%}.fusioni-chat-widget.dark .fusioni-document-video-aspect{background:hsla(0,0%,100%,.06)}.fusioni-document-video-aspect video{display:block;height:100%;object-fit:cover;width:100%}.fusioni-document-images-header{align-items:center;display:flex;justify-content:center;margin-bottom:.75rem;min-height:1.25rem;position:relative}.fusioni-document-images-header:before{background:var(--fusioni-border);content:\"\";height:1px;left:0;position:absolute;right:0;top:50%;z-index:0}.fusioni-chat-widget.dark .fusioni-document-images-header:before{background:hsla(0,0%,100%,.12)}.fusioni-document-images-header-label{align-items:center;background:var(--fusioni-bg-secondary);color:var(--fusioni-text-secondary);display:inline-flex;font-size:.8125rem;font-weight:600;gap:.375rem;padding:0 .625rem;position:relative;z-index:1}.fusioni-document-images-header-icon{flex-shrink:0;height:1rem;opacity:.9;width:1rem}.fusioni-document-image-btn{background:hsla(0,0%,100%,.4);border:1px solid rgba(0,0,0,.1);border-radius:var(--fusioni-radius-xl);box-shadow:var(--fusioni-shadow);cursor:pointer;display:block;overflow:hidden;padding:0;position:relative;transition:transform .2s ease,box-shadow .2s ease;width:100%}.fusioni-chat-widget.dark .fusioni-document-image-btn{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.1)}.fusioni-document-image-btn:hover{box-shadow:var(--fusioni-shadow-md);transform:translateY(-2px)}.fusioni-document-image-btn:focus{outline:none}.fusioni-document-image-btn:focus-visible{box-shadow:0 0 0 2px rgba(37,99,235,.5)}.fusioni-document-image-aspect{aspect-ratio:4/3;width:100%}.fusioni-document-image-aspect img{display:block;height:100%;object-fit:cover;transition:transform .2s ease;width:100%}.fusioni-document-image-btn:hover .fusioni-document-image-aspect img{transform:scale(1.02)}";
6490
6519
  styleInject(css_248z);
6491
6520
 
6492
6521
  const ChatWidget = ({ config, onMessageSent, onMessageReceived, onConversationCreated, onConversationDeleted, onError }) => {
@@ -6508,6 +6537,7 @@ var Fusioni = (function () {
6508
6537
  const { t, currentLanguage, changeLanguage } = useTranslation(mergedConfig?.language || config.language || 'en');
6509
6538
  const { conversations, currentConversation, messages, streamMessages, setCurrentConversation, setStreamMessages, addMessage, updateMessage, removeMessage, removeOptimisticUserMessages, truncateMessagesAt, addConversation, updateConversation, removeConversation, loadConversations, loadMessages, clearMessages } = useChatState(mergedConfig?.agencyId || config.agencyId);
6510
6539
  const { theme, toggleTheme } = useTheme(mergedConfig?.theme || config.theme);
6540
+ const isMobileLayout = useIsMobileLayout();
6511
6541
  // Initialize API client and fetch server configuration
6512
6542
  reactExports.useEffect(() => {
6513
6543
  const initializeAndFetchConfig = async () => {
@@ -6995,7 +7025,7 @@ var Fusioni = (function () {
6995
7025
  // Debug: Log the primary color and button variant being applied
6996
7026
  console.log('Primary color being applied:', mergedConfig.primaryColor || '#6366f1');
6997
7027
  console.log('Button variant being applied:', mergedConfig.buttonVariant || 'glass');
6998
- return (jsxRuntimeExports.jsxs("div", { className: `fusioni-chat-widget ${theme}`, style: { '--primary-color': mergedConfig.primaryColor || '#6366f1' }, children: [jsxRuntimeExports.jsx(FloatingButton, { isOpen: isOpen, onClick: handleToggleChat, position: mergedConfig.position || 'bottom-right', primaryColor: mergedConfig.primaryColor, buttonRef: floatingButtonRef, variant: mergedConfig.buttonVariant || 'glass', shouldDisplay: !hasConfigError }), isOpen && (jsxRuntimeExports.jsx(ChatPanel, { isOpen: isOpen, onClose: () => setIsOpen(false), position: mergedConfig.position || 'bottom-right', isFullscreen: isFullscreen, floatingButtonRef: floatingButtonRef, children: jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-container", children: [mergedConfig.showConversationList !== false && (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("div", { className: `fusioni-conversation-backdrop ${isConversationListOpen ? 'open' : ''}`, onClick: () => setIsConversationListOpen(false) }), jsxRuntimeExports.jsx(ConversationList, { conversations: conversations, selectedConversationId: currentConversation?.id || undefined, onSelectConversation: handleSelectConversation, onDeleteConversation: handleDeleteConversation, onCreateConversation: handleCreateConversation, isOpen: isConversationListOpen, currentLanguage: currentLanguage })] })), jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-main", children: [mergedConfig.showConversationList !== false && (jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-main-header", children: [jsxRuntimeExports.jsxs("button", { onClick: handleToggleConversationList, className: `fusioni-conversation-toggle ${isConversationListOpen ? 'open' : ''}`, children: [jsxRuntimeExports.jsx("svg", { className: "fusioni-conversation-toggle-icon", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M3 12h18M3 6h18M3 18h18" }) }), t('chat.conversations.title')] }), jsxRuntimeExports.jsxs("div", { className: "fusioni-header-actions", children: [jsxRuntimeExports.jsx("button", { onClick: toggleTheme, className: "fusioni-btn fusioni-btn-icon", title: theme === 'dark' ? t('chat.theme.light') : t('chat.theme.dark'), children: theme === 'dark' ? (jsxRuntimeExports.jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [jsxRuntimeExports.jsx("circle", { cx: "12", cy: "12", r: "5" }), jsxRuntimeExports.jsx("line", { x1: "12", y1: "1", x2: "12", y2: "3" }), jsxRuntimeExports.jsx("line", { x1: "12", y1: "21", x2: "12", y2: "23" }), jsxRuntimeExports.jsx("line", { x1: "4.22", y1: "4.22", x2: "5.64", y2: "5.64" }), jsxRuntimeExports.jsx("line", { x1: "18.36", y1: "18.36", x2: "19.78", y2: "19.78" }), jsxRuntimeExports.jsx("line", { x1: "1", y1: "12", x2: "3", y2: "12" }), jsxRuntimeExports.jsx("line", { x1: "21", y1: "12", x2: "23", y2: "12" }), jsxRuntimeExports.jsx("line", { x1: "4.22", y1: "19.78", x2: "5.64", y2: "18.36" }), jsxRuntimeExports.jsx("line", { x1: "18.36", y1: "5.64", x2: "19.78", y2: "4.22" })] })) : (jsxRuntimeExports.jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z" }) })) }), jsxRuntimeExports.jsx("button", { onClick: handleToggleFullscreen, className: "fusioni-btn fusioni-btn-icon", title: isFullscreen ? t('chat.fullscreen.exit') : t('chat.fullscreen.enter'), children: isFullscreen ? (jsxRuntimeExports.jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M8 3V5M8 3H5M8 3L3 8M16 3V5M16 3H19M16 3L21 8M8 21V19M8 21H5M8 21L3 16M16 21V19M16 21H19M16 21L21 16" }) })) : (jsxRuntimeExports.jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M8 3H5C4.46957 3 3.96086 3.21071 3.58579 3.58579C3.21071 3.96086 3 4.46957 3 5V8M21 8V5C21 4.46957 20.7893 3.96086 20.4142 3.58579C20.0391 3.21071 19.5304 3 19 3H16M16 21H19C19.5304 21 20.0391 20.7893 20.4142 20.4142C20.7893 20.0391 21 19.5304 21 19V16M3 16V19C3 19.5304 3.21071 20.0391 3.58579 20.4142C3.96086 20.7893 4.46957 21 5 21H8" }) })) }), jsxRuntimeExports.jsx(LanguageSwitcher, { currentLanguage: currentLanguage, onLanguageChange: changeLanguage })] })] })), currentConversation ? (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(MessageList, { messages: messages, streamMessages: streamMessages, showThoughts: false, onDeleteMessage: handleDeleteMessage, onEditMessage: handleEditMessage, onConfirmation: handleConfirmation, enableButtons: !isLoading, apiBaseUrl: mergedConfig.apiBaseUrl, apiKey: mergedConfig.accessToken, agencyId: mergedConfig.agencyId, currentLanguage: currentLanguage, theme: theme }), jsxRuntimeExports.jsx(ChatInput, { onSendMessage: handleSendMessage, onFileUpload: handleFileUpload, disabled: isLoading, placeholder: t('chat.input.placeholder'), enableAudioRecording: mergedConfig.enableAudioRecording !== false, enableFileUpload: mergedConfig.enableFileUpload !== false, maxFileSize: mergedConfig.maxFileSize || 10, allowedFileTypes: mergedConfig.allowedFileTypes || ['image/*'], currentLanguage: currentLanguage })] })) : (jsxRuntimeExports.jsx("div", { className: "fusioni-chat-welcome", children: jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-welcome-content", children: [jsxRuntimeExports.jsx("h3", { children: t('chat.welcome.title') }), jsxRuntimeExports.jsx("p", { children: t('chat.welcome.description') }), jsxRuntimeExports.jsx("button", { onClick: handleCreateConversation, disabled: isLoading, className: "fusioni-btn fusioni-btn-primary", children: isLoading ? t('chat.welcome.creating') : t('chat.welcome.startButton') })] }) }))] })] }) })), jsxRuntimeExports.jsx(ConfirmationDialog, { isOpen: isDeleteDialogOpen, title: t('chat.conversations.deleteConfirm.title'), message: t('chat.conversations.deleteConfirm.message'), confirmText: t('chat.conversations.deleteConfirm.confirm'), cancelText: t('chat.conversations.deleteConfirm.cancel'), onConfirm: confirmDeleteConversation, onCancel: cancelDeleteConversation, currentLanguage: currentLanguage, variant: "danger" }), jsxRuntimeExports.jsx(ConfirmationDialog, { isOpen: isDeleteMessageDialogOpen, title: t('chat.messages.deleteConfirm.title'), message: t('chat.messages.deleteConfirm.message'), confirmText: t('chat.messages.deleteConfirm.confirm'), cancelText: t('chat.messages.deleteConfirm.cancel'), onConfirm: confirmDeleteMessage, onCancel: cancelDeleteMessage, currentLanguage: currentLanguage, variant: "danger" })] }));
7028
+ return (jsxRuntimeExports.jsxs("div", { className: `fusioni-chat-widget ${theme}`, style: { '--primary-color': mergedConfig.primaryColor || '#6366f1' }, children: [jsxRuntimeExports.jsx(FloatingButton, { isOpen: isOpen, onClick: handleToggleChat, position: mergedConfig.position || 'bottom-right', primaryColor: mergedConfig.primaryColor, buttonRef: floatingButtonRef, variant: mergedConfig.buttonVariant || 'glass', shouldDisplay: !hasConfigError && (!isMobileLayout || !isOpen) }), isOpen && (jsxRuntimeExports.jsx(ChatPanel, { isOpen: isOpen, onClose: () => setIsOpen(false), position: mergedConfig.position || 'bottom-right', isFullscreen: isFullscreen, floatingButtonRef: floatingButtonRef, children: jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-container", children: [mergedConfig.showConversationList !== false && (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx("div", { className: `fusioni-conversation-backdrop ${isConversationListOpen ? 'open' : ''}`, onClick: () => setIsConversationListOpen(false) }), jsxRuntimeExports.jsx(ConversationList, { conversations: conversations, selectedConversationId: currentConversation?.id || undefined, onSelectConversation: handleSelectConversation, onDeleteConversation: handleDeleteConversation, onCreateConversation: handleCreateConversation, isOpen: isConversationListOpen, currentLanguage: currentLanguage })] })), jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-main", children: [jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-main-header", children: [mergedConfig.showConversationList !== false ? (jsxRuntimeExports.jsxs("button", { type: "button", onClick: handleToggleConversationList, className: `fusioni-conversation-toggle ${isConversationListOpen ? 'open' : ''}`, children: [jsxRuntimeExports.jsx("svg", { className: "fusioni-conversation-toggle-icon", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M3 12h18M3 6h18M3 18h18" }) }), t('chat.conversations.title')] })) : (jsxRuntimeExports.jsx("span", { className: "fusioni-chat-main-header-title", children: t('chat.title') })), jsxRuntimeExports.jsxs("div", { className: "fusioni-header-actions", children: [isMobileLayout && (jsxRuntimeExports.jsx("button", { type: "button", onClick: () => setIsOpen(false), className: "fusioni-btn fusioni-btn-icon fusioni-chat-toolbar-close-mobile", title: t('common.close'), "aria-label": t('common.close'), children: jsxRuntimeExports.jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", "aria-hidden": "true", children: jsxRuntimeExports.jsx("path", { d: "M18 6L6 18M6 6L18 18", strokeLinecap: "round", strokeLinejoin: "round" }) }) })), jsxRuntimeExports.jsx("button", { type: "button", onClick: toggleTheme, className: "fusioni-btn fusioni-btn-icon", title: theme === 'dark' ? t('chat.theme.light') : t('chat.theme.dark'), children: theme === 'dark' ? (jsxRuntimeExports.jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [jsxRuntimeExports.jsx("circle", { cx: "12", cy: "12", r: "5" }), jsxRuntimeExports.jsx("line", { x1: "12", y1: "1", x2: "12", y2: "3" }), jsxRuntimeExports.jsx("line", { x1: "12", y1: "21", x2: "12", y2: "23" }), jsxRuntimeExports.jsx("line", { x1: "4.22", y1: "4.22", x2: "5.64", y2: "5.64" }), jsxRuntimeExports.jsx("line", { x1: "18.36", y1: "18.36", x2: "19.78", y2: "19.78" }), jsxRuntimeExports.jsx("line", { x1: "1", y1: "12", x2: "3", y2: "12" }), jsxRuntimeExports.jsx("line", { x1: "21", y1: "12", x2: "23", y2: "12" }), jsxRuntimeExports.jsx("line", { x1: "4.22", y1: "19.78", x2: "5.64", y2: "18.36" }), jsxRuntimeExports.jsx("line", { x1: "18.36", y1: "5.64", x2: "19.78", y2: "4.22" })] })) : (jsxRuntimeExports.jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z" }) })) }), jsxRuntimeExports.jsx("button", { type: "button", onClick: handleToggleFullscreen, className: "fusioni-btn fusioni-btn-icon", title: isFullscreen ? t('chat.fullscreen.exit') : t('chat.fullscreen.enter'), children: isFullscreen ? (jsxRuntimeExports.jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M8 3V5M8 3H5M8 3L3 8M16 3V5M16 3H19M16 3L21 8M8 21V19M8 21H5M8 21L3 16M16 21V19M16 21H19M16 21L21 16" }) })) : (jsxRuntimeExports.jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: jsxRuntimeExports.jsx("path", { d: "M8 3H5C4.46957 3 3.96086 3.21071 3.58579 3.58579C3.21071 3.96086 3 4.46957 3 5V8M21 8V5C21 4.46957 20.7893 3.96086 20.4142 3.58579C20.0391 3.21071 19.5304 3 19 3H16M16 21H19C19.5304 21 20.0391 20.7893 20.4142 20.4142C20.7893 20.0391 21 19.5304 21 19V16M3 16V19C3 19.5304 3.21071 20.0391 3.58579 20.4142C3.96086 20.7893 4.46957 21 5 21H8" }) })) }), jsxRuntimeExports.jsx(LanguageSwitcher, { currentLanguage: currentLanguage, onLanguageChange: changeLanguage })] })] }), currentConversation ? (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(MessageList, { messages: messages, streamMessages: streamMessages, showThoughts: false, onDeleteMessage: handleDeleteMessage, onEditMessage: handleEditMessage, onConfirmation: handleConfirmation, enableButtons: !isLoading, apiBaseUrl: mergedConfig.apiBaseUrl, apiKey: mergedConfig.accessToken, agencyId: mergedConfig.agencyId, currentLanguage: currentLanguage, theme: theme }), jsxRuntimeExports.jsx(ChatInput, { onSendMessage: handleSendMessage, onFileUpload: handleFileUpload, disabled: isLoading, placeholder: t('chat.input.placeholder'), enableAudioRecording: mergedConfig.enableAudioRecording !== false, enableFileUpload: mergedConfig.enableFileUpload !== false, maxFileSize: mergedConfig.maxFileSize || 10, allowedFileTypes: mergedConfig.allowedFileTypes || ['image/*'], currentLanguage: currentLanguage })] })) : (jsxRuntimeExports.jsx("div", { className: "fusioni-chat-welcome", children: jsxRuntimeExports.jsxs("div", { className: "fusioni-chat-welcome-content", children: [jsxRuntimeExports.jsx("h3", { children: t('chat.welcome.title') }), jsxRuntimeExports.jsx("p", { children: t('chat.welcome.description') }), jsxRuntimeExports.jsx("button", { onClick: handleCreateConversation, disabled: isLoading, className: "fusioni-btn fusioni-btn-primary", children: isLoading ? t('chat.welcome.creating') : t('chat.welcome.startButton') })] }) }))] })] }) })), jsxRuntimeExports.jsx(ConfirmationDialog, { isOpen: isDeleteDialogOpen, title: t('chat.conversations.deleteConfirm.title'), message: t('chat.conversations.deleteConfirm.message'), confirmText: t('chat.conversations.deleteConfirm.confirm'), cancelText: t('chat.conversations.deleteConfirm.cancel'), onConfirm: confirmDeleteConversation, onCancel: cancelDeleteConversation, currentLanguage: currentLanguage, variant: "danger" }), jsxRuntimeExports.jsx(ConfirmationDialog, { isOpen: isDeleteMessageDialogOpen, title: t('chat.messages.deleteConfirm.title'), message: t('chat.messages.deleteConfirm.message'), confirmText: t('chat.messages.deleteConfirm.confirm'), cancelText: t('chat.messages.deleteConfirm.cancel'), onConfirm: confirmDeleteMessage, onCancel: cancelDeleteMessage, currentLanguage: currentLanguage, variant: "danger" })] }));
6999
7029
  };
7000
7030
 
7001
7031
  const DEFAULT_ROOT_ID = 'fusioni-chat-root';
@@ -7053,7 +7083,7 @@ var Fusioni = (function () {
7053
7083
  const Fusioni = {
7054
7084
  init,
7055
7085
  mount,
7056
- version: "1.1.2",
7086
+ version: "1.1.5",
7057
7087
  };
7058
7088
  if (typeof window !== 'undefined') {
7059
7089
  window.Fusioni = Fusioni;