.widget-button{position:fixed;bottom:24px;width:60px;height:60px;border-radius:50%;border:2px solid var(--accent-cyan);background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-dark) 100%);color:var(--accent-cyan);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg),0 0 20px #00d9ff66,inset 0 0 20px #00d9ff1a;transition:all var(--transition-normal);z-index:var(--z-widget-button)}.widget-button-bottom-right{right:24px}.widget-button-bottom-left{left:24px}.widget-button:hover{transform:scale(1.1);box-shadow:0 12px 40px #00d9ff4d,0 0 30px #00d9ff99,inset 0 0 30px #00d9ff33;border-color:var(--accent-cyan);background:linear-gradient(135deg,var(--primary-teal) 0%,var(--accent-cyan-dark) 100%)}.widget-button:active{transform:scale(1.05)}.widget-button:focus-visible{outline:3px solid var(--accent-cyan);outline-offset:4px;box-shadow:0 0 20px #00d9ff99,0 12px 40px #00d9ff4d}.widget-button svg path{fill:var(--accent-cyan);stroke:var(--accent-cyan);filter:drop-shadow(0 0 2px rgba(0,217,255,.5))}.widget-button svg{filter:drop-shadow(0 0 4px rgba(0,217,255,.3))}.widget-button-badge{position:absolute;top:8px;right:8px;width:14px;height:14px;background:var(--accent-cyan);border:2px solid var(--primary-dark);border-radius:50%;animation:badgePulse 2s cubic-bezier(.4,0,.6,1) infinite;box-shadow:0 0 10px var(--accent-cyan),0 0 20px #00d9ff80}@keyframes badgePulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.widget-button-open{transform:rotate(90deg);background:linear-gradient(135deg,var(--accent-cyan-dark) 0%,var(--primary-teal) 100%)}.widget-button-open:hover{transform:rotate(90deg) scale(1.1)}.widget-button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;background-image:radial-gradient(circle at 30% 30%,rgba(0,217,255,.1) 0%,transparent 50%),radial-gradient(circle at 70% 70%,rgba(0,217,255,.05) 0%,transparent 50%);pointer-events:none;animation:circuitPulse 3s ease-in-out infinite}@media (max-width: 640px){.widget-button{width:56px;height:56px;bottom:20px}.widget-button-bottom-right{right:20px}.widget-button-bottom-left{left:20px}.widget-button-badge{width:12px;height:12px}}@keyframes widgetButtonEntrance{0%{opacity:0;transform:scale(0) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.widget-button{animation:widgetButtonEntrance .5s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion: reduce){.widget-button,.widget-button-badge{animation:none}.widget-button:before{animation:none}}.message{display:flex;margin-bottom:var(--spacing-md);max-width:85%}.message-bot{align-self:flex-start;justify-content:flex-start}.message-user{align-self:flex-end;justify-content:flex-end;margin-left:auto}.message-bubble{display:inline-flex;flex-direction:column;padding:10px 14px;border-radius:var(--radius-md);word-wrap:break-word;overflow-wrap:break-word;max-width:100%;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.message-bot .message-bubble{background:#1a3a5299;color:var(--text-cream);border:1px solid rgba(0,217,255,.2);border-bottom-left-radius:4px;box-shadow:0 2px 8px #0003}.message-bot .message-bubble:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--accent-cyan) 0%,transparent 100%);border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.message-user .message-bubble{background:linear-gradient(135deg,var(--accent-cyan-dark) 0%,var(--accent-cyan) 100%);color:var(--primary-dark);border-bottom-right-radius:4px;box-shadow:0 2px 8px #00d9ff4d,0 0 15px #00d9ff33;border:1px solid rgba(255,255,255,.2);font-weight:500}.message-text{margin:0;font-size:var(--font-size-md);line-height:1.5;white-space:pre-wrap}.message-bot .message-text{color:var(--text-cream-light)}.message-user .message-text{color:var(--primary-dark)}.message-timestamp{margin-top:var(--spacing-xs);font-size:var(--font-size-xs);opacity:.7;align-self:flex-end}.message-bot .message-timestamp{color:var(--text-cream-light)}.message-user .message-timestamp{color:#0d2438cc}@media (max-width: 640px){.message{max-width:90%}.message-bubble{padding:8px 12px}.message-text{font-size:var(--font-size-sm)}}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message{animation:messageSlideIn .3s ease-out}@media (prefers-reduced-motion: reduce){.message{animation:none}}.typing-indicator{display:inline-flex;align-items:center;padding:12px 16px;background:#1a3a5280;border:1px solid rgba(0,217,255,.2);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.typing-indicator:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--accent-cyan) 0%,transparent 100%);border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.typing-indicator-dots{display:flex;gap:4px}.typing-dot{width:8px;height:8px;background:var(--accent-cyan);border-radius:50%;animation:typingDot 1.4s infinite ease-in-out;box-shadow:0 0 8px #00d9ff66}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-8px);opacity:1}}@media (prefers-reduced-motion: reduce){.typing-dot{animation:typingDotReduced 1.4s infinite ease-in-out}@keyframes typingDotReduced{0%,60%,to{opacity:.5}30%{opacity:1}}}.message-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-md);background:transparent;display:flex;flex-direction:column;min-height:0;position:relative}.message-list-content{display:flex;flex-direction:column}.message-list-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-cream-light);font-size:var(--font-size-md);opacity:.7}.message-list{scroll-behavior:smooth}@media (max-width: 640px){.message-list{padding:var(--spacing-sm)}}@media (prefers-reduced-motion: reduce){.message-list{scroll-behavior:auto}}.chat-input-container{padding:var(--spacing-md);border-top:1px solid rgba(0,217,255,.15);background:#0d1520cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-input-wrapper{display:flex;gap:8px;align-items:center}.chat-input{flex:1;padding:10px 14px;border:1.5px solid rgba(0,217,255,.3);border-radius:var(--radius-full);font-size:var(--font-size-md);font-family:var(--font-family);color:var(--text-cream);background:#1a3a5266;transition:all var(--transition-fast)}.chat-input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 12px #00d9ff4d;background:#1a3a5299}.chat-input:disabled{opacity:.5;cursor:not-allowed;background:#1a3a5233}.chat-input::placeholder{color:var(--text-cream-light);opacity:.6}.chat-send-button{flex:0 0 auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-cyan-dark) 0%,var(--accent-cyan) 100%);border:1px solid var(--accent-cyan);border-radius:50%;color:var(--primary-dark);cursor:pointer;transition:all var(--transition-fast);box-shadow:0 0 15px #00d9ff4d}.chat-send-button svg{filter:drop-shadow(0 0 2px rgba(13,36,56,.3))}.chat-send-button:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-cyan) 0%,var(--accent-cyan-dark) 100%);transform:scale(1.1);box-shadow:0 0 20px #00d9ff80}.chat-send-button:active:not(:disabled){transform:scale(1.05)}.chat-send-button:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.chat-send-button:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px;box-shadow:0 0 20px #00d9ff80}@media (max-width: 640px){.chat-input-container{padding:var(--spacing-sm)}.chat-input{font-size:var(--font-size-sm);padding:8px 12px}.chat-send-button{width:36px;height:36px}}@media (prefers-reduced-motion: reduce){.chat-send-button:hover:not(:disabled){transform:none}}.quick-replies{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid rgba(0,217,255,.15);background:#0d152099;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.quick-replies-scroll{display:flex;gap:var(--spacing-sm);overflow-x:auto;overflow-y:hidden;padding-bottom:var(--spacing-xs);-webkit-overflow-scrolling:touch;scrollbar-width:thin}.quick-reply-button{flex:0 0 auto;padding:8px 16px;background:#00d9ff1a;border:1.5px solid var(--accent-cyan);color:var(--accent-cyan);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;font-family:var(--font-family);position:relative;overflow:hidden}.quick-reply-button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--accent-cyan-dark) 0%,var(--accent-cyan) 100%);opacity:0;transition:opacity var(--transition-fast)}.quick-reply-button:hover:before{opacity:1}.quick-reply-button:hover{color:var(--primary-dark);border-color:var(--accent-cyan);box-shadow:0 0 12px #00d9ff66;transform:translateY(-2px)}.quick-reply-button span{position:relative;z-index:1}.quick-reply-button:active{transform:translateY(0)}.quick-reply-button:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px;box-shadow:0 0 12px #00d9ff66}.quick-replies{animation:slideUp var(--transition-normal) ease-out}@media (max-width: 640px){.quick-reply-button{font-size:var(--font-size-xs);padding:6px 12px}}@media (prefers-reduced-motion: reduce){.quick-replies{animation:none}.quick-reply-button:hover{transform:none}}.chat-window{position:fixed;bottom:90px;right:var(--spacing-lg);width:380px;height:600px;max-height:calc(100vh - 120px);min-width:320px;min-height:400px;background:linear-gradient(135deg,var(--bg-dark-gradient-start) 0%,var(--bg-dark-gradient-end) 100%);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),0 0 30px #00d9ff26;display:flex;flex-direction:column;overflow:hidden;transition:all var(--transition-normal);border:1px solid rgba(0,217,255,.2);resize:both}.chat-window:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(90deg,rgba(0,217,255,.05) 1px,transparent 1px),linear-gradient(rgba(0,217,255,.05) 1px,transparent 1px);background-size:20px 20px;opacity:.4;pointer-events:none;z-index:0;animation:circuitPulse 3s ease-in-out infinite}.chat-window:after{content:"";position:absolute;top:20px;right:20px;width:6px;height:6px;background:var(--accent-cyan);border-radius:50%;box-shadow:0 0 10px var(--accent-cyan),-30px 15px 0 2px #00d9ff4d,-60px -10px 0 1px #00d9ff33,30px -20px 0 1px #00d9ff40;pointer-events:none;z-index:0;animation:pulse 2s ease-in-out infinite}.chat-window>*{position:relative;z-index:1}.chat-window-header{background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-dark) 100%);color:var(--text-cream);padding:var(--spacing-md);flex-shrink:0;border-bottom:1px solid rgba(0,217,255,.2);box-shadow:0 2px 10px #0000004d}.chat-window-header-content{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.chat-window-title-section{flex:1}.chat-window-title{font-size:var(--font-size-lg);font-weight:600;margin:0;line-height:1.3;color:var(--text-cream);text-shadow:0 1px 3px rgba(0,0,0,.3)}.chat-window-subtitle{font-size:var(--font-size-sm);margin:var(--spacing-xs) 0 0 0;opacity:.9;color:var(--text-cream-light)}.chat-window-close-button{background:#00d9ff1a;border:1px solid rgba(0,217,255,.3);color:var(--accent-cyan);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast);width:32px;height:32px}.chat-window-close-button:hover{background:#00d9ff33;box-shadow:0 0 12px #00d9ff66;border-color:var(--accent-cyan)}.chat-window-close-button:active{background:#00d9ff4d;transform:scale(.95)}.chat-window-close-button svg path{stroke:var(--accent-cyan)}.chat-window-status{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);opacity:.9}.status-indicator{width:8px;height:8px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-online{background:var(--accent-cyan);box-shadow:0 0 8px var(--accent-cyan)}.status-text{font-size:var(--font-size-xs);color:var(--text-cream-light)}.chat-window-error{background:#ff3b301a;border-left:3px solid var(--error-color);color:#ff8a80;padding:var(--spacing-sm) var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);flex-shrink:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-window-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);color:var(--text-cream-light)}.loading-spinner{width:40px;height:40px;border:3px solid rgba(0,217,255,.2);border-top-color:var(--accent-cyan);border-radius:50%;animation:spin .8s linear infinite;box-shadow:0 0 15px #00d9ff4d}@keyframes spin{to{transform:rotate(360deg)}}.chat-window-footer{background:#0d1520cc;padding:var(--spacing-sm) var(--spacing-md);text-align:center;border-top:1px solid rgba(0,217,255,.15);flex-shrink:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-window-branding{font-size:var(--font-size-xs);color:var(--text-cream-light)}.chat-window-branding strong{color:var(--accent-cyan);font-weight:600}.chat-window:after{content:"";position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:linear-gradient(135deg,transparent 50%,var(--accent-cyan) 50%);opacity:.3;cursor:nwse-resize;z-index:var(--z-resize-handle)}.chat-window:hover:after{opacity:.6}@media (max-width: 640px){.chat-window{position:fixed;bottom:0;right:0;left:0;width:100%!important;height:100vh!important;max-height:100vh;border-radius:0;resize:none}.chat-window:after{display:none}}@media (min-width: 641px) and (max-width: 768px){.chat-window{width:360px;height:550px}}@media (min-width: 1280px){.chat-window{width:420px;height:650px}}@media (prefers-reduced-motion: reduce){.chat-window{transition:none}.chat-window:before,.chat-window:after{animation:none}.status-indicator{animation:none}.loading-spinner{animation:spin 2s linear infinite}}.chat-widget{position:fixed;font-family:var(--font-family);z-index:var(--z-widget-window);pointer-events:none}.chat-widget *{pointer-events:auto}.chat-widget-bottom-right{bottom:var(--spacing-lg);right:var(--spacing-lg)}.chat-widget-bottom-left{bottom:var(--spacing-lg);left:var(--spacing-lg)}@media (max-width: 640px){.chat-widget{bottom:0;left:0;right:0;width:100%}.chat-widget-bottom-right,.chat-widget-bottom-left{bottom:0;left:0;right:0}}.chat-widget.dark-mode{color-scheme:dark}.chat-widget.dark-mode .chat-window{background:var(--bg-white);color:var(--text-primary)}:root{--primary-dark: #0d2438;--primary-teal: #1a3a52;--accent-cyan: #00d9ff;--accent-cyan-dark: #00c3e6;--text-cream: #f5f5f5;--text-cream-light: #e8e8e8;--bg-dark-gradient-start: #0d1520;--bg-dark-gradient-end: #1a2834;--text-primary: #1A1A1A;--text-secondary: #666666;--text-light: #999999;--bg-white: #FFFFFF;--bg-gray-light: #F5F5F7;--bg-gray: #E5E5E7;--border-color: #D1D1D6;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 32px rgba(0, 217, 255, .2);--shadow-cyan-glow: 0 0 20px rgba(0, 217, 255, .4);--error-color: #FF3B30;--success-color: #00d9ff;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 9999px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica", "Arial", sans-serif;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--z-widget-button: 9998;--z-widget-window: 9999;--z-resize-handle: 10000}@media (prefers-color-scheme: dark){:root{--text-primary: #FFFFFF;--text-secondary: #EBEBF5;--text-light: #8E8E93;--bg-white: #1C1C1E;--bg-gray-light: #2C2C2E;--bg-gray: #3A3A3C;--border-color: #48484A}}*{box-sizing:border-box}*:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px;box-shadow:0 0 8px #00d9ff66}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fade-in{animation:fadeIn var(--transition-normal) ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp var(--transition-normal) ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.circuit-pulse{animation:circuitPulse 3s ease-in-out infinite}@keyframes circuitPulse{0%,to{opacity:.3}50%{opacity:.6}}.cyan-glow{animation:cyanGlow 2s ease-in-out infinite alternate}@keyframes cyanGlow{0%{box-shadow:0 0 5px #00d9ff4d}to{box-shadow:0 0 15px #00d9ff99}}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--accent-cyan-dark);border-radius:var(--radius-full)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--accent-cyan);box-shadow:0 0 8px #00d9ff66}
