{"version":3,"sources":["webchat.css"],"names":[],"mappings":"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","file":"index.cdn.css","sourcesContent":["/* Importing Google Fonts - Inter */\n@import url('https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,100..900&display=swap');\n\n/*\n * GeniStudio Web Chat Widget - Color Inheritance System\n * \n * This widget automatically inherits colors from your website or buttonColor config. To customize:\n * \n * 1. Via Configuration (Recommended):\n *    Set `buttonColor: '#your-color'` in your widget config\n *    This will automatically theme the entire widget with your brand color\n * \n * 2. Via CSS Variables (Advanced):\n *    Set any of these CSS variables in your website's CSS:\n *    --primary-color, --brand-color, or --accent-color (for main theme color)\n *    --primary-hover, --brand-hover, or --accent-hover (for hover states)\n *    --text-color or --primary-text (for text colors)\n *    --background-color or --bg-color (for backgrounds)\n *    --border-color or --gray-200 (for borders)\n *    --muted-text or --text-secondary (for secondary text)\n *    --light-background or --gray-50 (for light backgrounds)\n * \n * 3. The widget will automatically use these colors if they exist,\n *    or fall back to default values if they don't.\n */\n\n/* CSS Custom Properties for color inheritance */\n:root {\n  --webchat-primary-color: var(--primary-color, var(--brand-color, var(--accent-color, #5350C4)));\n  --webchat-primary-hover: var(--primary-hover, var(--brand-hover, var(--accent-hover, #3d39ac)));\n  --webchat-text-color: var(--text-color, var(--primary-text, #333));\n  --webchat-bg-color: var(--background-color, var(--bg-color, #ffffff));\n  --webchat-border-color: var(--border-color, var(--gray-200, #e5e7eb));\n  --webchat-muted-text: var(--muted-text, var(--text-secondary, #666));\n  --webchat-light-bg: var(--light-background, var(--gray-50, #f9fafb));\n}\n\n/* Scoped CSS reset - only affects chatbot elements */\n.webchat-button,\n.webchat-overlay,\n.webchat-overlay *,\n.webchat-container,\n.webchat-container * {\n  margin: 0;\n  padding: 0;\n  box-sizing: border-box;\n  font-family: \"Inter\", sans-serif;\n}\n\n/* Chat Button Styles */\n.webchat-button {\n  position: fixed;\n  bottom: 30px;\n  right: 35px;\n  border: none;\n  outline: none;\n  height: 65px;\n  width: 65px;\n  display: flex;\n  cursor: pointer;\n  align-items: center;\n  justify-content: center;\n  border-radius: 50%;\n  background: var(--webchat-primary-color);\n  box-shadow: 0 0 25px rgba(0, 0, 0, 0.15);\n  transition: all 0.3s ease;\n  z-index: 10000;\n  animation: chatButtonBounce 2s ease-in-out infinite;\n}\n\n/* Add a pulsing ring effect */\n.webchat-button::before {\n  content: '';\n  position: absolute;\n  top: -8px;\n  left: -8px;\n  right: -8px;\n  bottom: -8px;\n  border: 2px solid var(--webchat-primary-color);\n  border-radius: 50%;\n  opacity: 0;\n  animation: pulseRing 2s cubic-bezier(0.25, 0, 0, 1) infinite;\n}\n\n@keyframes chatButtonBounce {\n  0%, 20%, 50%, 80%, 100% {\n    transform: translateY(0) scale(1);\n  }\n  40% {\n    transform: translateY(-8px) scale(1.05);\n  }\n  60% {\n    transform: translateY(-4px) scale(1.02);\n  }\n}\n\n@keyframes pulseRing {\n  0% {\n    transform: scale(0.7);\n    opacity: 1;\n  }\n  80%, 100% {\n    transform: scale(1.4);\n    opacity: 0;\n  }\n}\n\n.webchat-button:hover {\n  transform: scale(1.1);\n  animation: none;\n  box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);\n}\n\n.webchat-button:hover::before {\n  animation: none;\n  opacity: 0;\n}\n\n.webchat-button .chat-icon {\n  color: #fff;\n  font-size: 26px;\n  transition: opacity 0.2s ease;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.webchat-button .chat-icon svg {\n  width: 30px;\n  height: 30px;\n  fill: #fff;\n}\n\n.webchat-button .close-icon {\n  color: #fff;\n  font-size: 24px;\n  position: absolute;\n  opacity: 0;\n  transition: opacity 0.2s ease;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.webchat-button .close-icon svg {\n  width: 28px;\n  height: 28px;\n  fill: #fff;\n}\n\n.webchat-button.is-open .chat-icon {\n  opacity: 0;\n}\n\n.webchat-button.is-open .close-icon {\n  opacity: 1;\n}\n\n.webchat-button.is-open {\n  transform: rotate(90deg);\n  animation: none; /* Disable bouncing animation when open */\n}\n\n.webchat-button.is-open::before {\n  animation: none; /* Disable pulsing ring animation when open */\n  opacity: 0;\n}\n\n/* Powered By Styles */\n.webchat-powered-by {\n  text-align: center;\n  padding: 8px 12px;\n  margin-top: 8px;\n  font-size: 12px;\n  line-height: 1.2;\n  opacity: 0.7;\n  transition: opacity 0.2s ease;\n}\n\n.webchat-powered-by:hover {\n  opacity: 1;\n}\n\n.webchat-powered-by .powered-text {\n  color: #999;\n  font-weight: 400;\n}\n\n.webchat-powered-by .geni-studio {\n  color: var(--webchat-primary-color);\n  font-weight: 600;\n  margin-left: 3px;\n}\n\n/* Chat Container Styles */\n.webchat-overlay {\n  position: fixed;\n  right: 35px;\n  bottom: 105px;\n  width: min(420px, 90vw); /* Responsive width: max 420px or 90% of viewport width */\n  max-width: 420px;\n  min-width: 320px; /* Minimum width for usability */\n  max-height: 80vh; /* Maximum height as 80% of viewport */\n  overflow: hidden;\n  background: var(--webchat-bg-color);\n  border-radius: 15px;\n  opacity: 0;\n  pointer-events: none;\n  transform: scale(0.2);\n  transform-origin: bottom right;\n  box-shadow: 0 0 128px 0 rgba(0, 0, 0, 0.1),\n    0 32px 64px -48px rgba(0, 0, 0, 0.5);\n  transition: all 0.1s ease;\n  z-index: 10000;\n}\n\n.webchat-overlay.visible {\n  opacity: 1;\n  pointer-events: auto;\n  transform: scale(1);\n}\n\n.webchat-overlay.hidden {\n  opacity: 0;\n  pointer-events: none;\n  transform: scale(0.2);\n}\n\n.webchat-container {\n  display: flex;\n  flex-direction: column;\n  height: min(600px, 80vh); /* Responsive height: max 600px or 80% of viewport height */\n  width: 100%;\n  max-height: 80vh; /* Ensure it doesn't exceed 80% of viewport height */\n}\n\n/* Chat Header */\n.chat-header {\n  display: flex;\n  align-items: center;\n  padding: 15px 22px;\n  background: var(--webchat-primary-color);\n  justify-content: space-between;\n}\n\n.chat-header .header-info {\n  display: flex;\n  gap: 12px;                                      \n  align-items: center;\n}\n\n.header-info .chatbot-logo {\n  width: 35px;\n  height: 35px;\n  padding: 6px;\n  fill: var(--webchat-primary-color);\n  flex-shrink: 0;\n  background: #fff;\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.header-info .logo-text {\n  color: #fff;\n  font-weight: 600;\n  font-size: 1.31rem;\n  letter-spacing: 0.02rem;\n  line-height: 1;\n  margin: 0;\n}\n\n.chat-header .close-button {\n  border: none;\n  color: #fff;\n  height: 40px;\n  width: 40px;\n  font-size: 1.9rem;\n  margin-right: -10px;\n  cursor: pointer;\n  border-radius: 50%;\n  background: none;\n  transition: 0.2s ease;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.chat-header .close-button:hover {\n  background: var(--webchat-primary-hover);\n}\n\n/* Chat Body */\n.chat-body {\n  display: flex;\n  height: calc(100% - 140px); /* Dynamic height: full container minus header/footer space */\n  min-height: 300px; /* Minimum height for usability */\n  background: var(--webchat-light-bg);\n  margin-bottom: 10px;\n  flex-direction: column;\n  overflow: hidden; /* Prevent double scrollbars */\n  padding: 0; /* Remove padding so scrollbar is at edge */\n}\n\n/* Messages container styling - this handles the scrolling */\n.webchat-messages {\n  padding: 25px 22px;\n  gap: 20px;\n  display: flex;\n  margin-bottom: 15px;\n  overflow-y: auto;\n  flex-direction: column;\n  scrollbar-width: thin;\n  scrollbar-color: #ccccf5 transparent;\n}\n\n.webchat-messages:hover {\n  scrollbar-color: #ccccf5 transparent;\n}\n\n/* Custom scrollbar styles for WebKit browsers */\n.webchat-messages::-webkit-scrollbar {\n  width: 6px;\n}\n\n.webchat-messages::-webkit-scrollbar-track {\n  background: transparent;\n}\n\n.webchat-messages::-webkit-scrollbar-thumb {\n  background-color: #ccccf5;\n  border-radius: 3px;\n}\n\n.webchat-messages::-webkit-scrollbar-thumb:hover {\n  background-color: #aaaae0;\n}\n\n/* Ensure last message has enough space at bottom */\n.webchat-messages > *:last-child {\n  margin-bottom: 10px;\n}\n\n/* Message Styles */\n.webchat-messages .message {\n  display: flex;\n  gap: 12px;\n  align-items: flex-start;\n  opacity: 0;\n  transform: translateY(20px);\n  animation: messageSlideIn 0.3s ease forwards;\n}\n\n.chat-body .message:last-child {\n  margin-bottom: 0;\n}\n\n@keyframes messageSlideIn {\n  to {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\n.chat-body .message.message-entering {\n  animation: messageSlideIn 0.3s ease forwards;\n}\n\n.chat-body .message .bot-avatar {\n  width: 35px;\n  height: 35px;\n  padding: 6px;\n  fill: #fff;\n  flex-shrink: 0;\n  align-self: flex-start;\n  border-radius: 50%;\n  background: var(--webchat-primary-color);\n  margin-top: 2px;\n}\n\n.chat-body .message .message-text {\n  padding: 12px 16px;\n  max-width: 75%;\n  font-size: 0.95rem;\n  line-height: 1.5;\n  word-wrap: break-word;\n  overflow-wrap: break-word;\n  hyphens: auto;\n}\n\n.chat-body .bot-message.thinking .message-text {\n  padding: 2px 16px;\n}\n\n.chat-body .bot-message .message-text {\n  background: #F2F2FF;\n  border-radius: 13px 13px 13px 3px;\n  color: var(--webchat-text-color);\n}\n\n.chat-body .user-message {\n  flex-direction: row-reverse;\n  align-items: flex-start;\n}\n\n.chat-body .user-message .message-text {\n  color: #fff;\n  background: var(--webchat-primary-color);\n  border-radius: 13px 13px 3px 13px;\n  margin-left: auto;\n}\n\n/* Thinking Indicator */\n.chat-body .bot-message .thinking-indicator {\n  display: flex;\n  gap: 4px;\n  padding-block: 15px;\n}\n\n.chat-body .bot-message .thinking-indicator .dot {\n  height: 7px;\n  width: 7px;\n  opacity: 0.7;\n  border-radius: 50%;\n  background: #6F6BC2;\n  animation: dotPulse 1.8s ease-in-out infinite;\n}\n\n.chat-body .bot-message .thinking-indicator .dot:nth-child(1) {\n  animation-delay: 0.2s;\n}\n\n.chat-body .bot-message .thinking-indicator .dot:nth-child(2) {\n  animation-delay: 0.3s;\n}\n\n.chat-body .bot-message .thinking-indicator .dot:nth-child(3) {\n  animation-delay: 0.4s;\n}\n\n@keyframes dotPulse {\n  0%,\n  44% {\n    transform: translateY(0);\n  }\n  28% {\n    opacity: 0.4;\n    transform: translateY(-4px);\n  }\n  44% {\n    opacity: 0.2;\n  }\n}\n\n/* Streaming Cursor */\n.cursor {\n  display: inline-block;\n  width: 2px;\n  height: 1em;\n  background-color: var(--webchat-primary-color);\n  margin-left: 2px;\n  animation: blink 1s infinite;\n}\n\n@keyframes blink {\n  0%, 50% { opacity: 1; }\n  51%, 100% { opacity: 0; }\n}\n\n/* Chat Footer */\n.chat-footer {\n  position: absolute;\n  bottom: 0;\n  width: 100%;\n  background: #fff;\n  padding: 15px 22px 20px;\n}\n\n.chat-footer .chat-form {\n  display: flex;\n  align-items: flex-end;\n  position: relative;\n  background: #fff;\n  border-radius: 25px;\n  outline: 1px solid #CCCCE5;\n  box-shadow: 0 0 8px rgba(0, 0, 0, 0.06);\n  transition: 0.2s ease;\n}\n\n.chat-form:focus-within {\n  outline: 2px solid var(--webchat-primary-color);\n}\n\n.chat-form .message-input {\n  width: 100%;\n  min-height: 47px;\n  max-height: 69px;\n  outline: none;\n  resize: none;\n  border: none;\n  scrollbar-width: thin;\n  border-radius: inherit;\n  font-size: 0.95rem;\n  padding: 14px 18px 12px 18px;\n  scrollbar-color: transparent transparent;\n  overflow-y: auto;\n  font-family: inherit;\n  line-height: 1.4;\n  color: #333 !important;\n  background-color: #ffffff !important;\n  -webkit-text-fill-color: #333 !important;\n}\n\n.chat-form .message-input::placeholder {\n  color: #999 !important;\n  font-weight: 400;\n  opacity: 1 !important;\n  -webkit-text-fill-color: #999 !important;\n}\n\n.chat-form .chat-controls {\n  gap: 3px;\n  height: 47px;\n  display: flex;\n  padding-right: 6px;\n  align-items: flex-end;\n  padding-bottom: 6px;\n}\n\n.chat-form .chat-controls .send-button {\n  height: 35px;\n  width: 35px;\n  border: none;\n  outline: none;\n  cursor: pointer;\n  color: #fff;\n  border-radius: 50%;\n  font-size: 1.15rem;\n  background: var(--webchat-primary-color);\n  transition: 0.2s ease;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.chat-form .chat-controls .send-button:hover {\n  background: var(--webchat-primary-hover);\n}\n\n.chat-form .chat-controls .send-button:disabled {\n  background: #ccc;\n  cursor: not-allowed;\n}\n\n.chat-form .message-input:not(:valid) ~ .chat-controls .send-button {\n  background: #ccc;\n  cursor: not-allowed;\n}\n\n/* Empty State */\n.webchat-empty-state {\n  padding: 20px 0;\n}\n\n.webchat-empty-state .message {\n  margin-bottom: 0;\n}\n\n/* Large Desktop Screens (1440px+) */\n@media (min-width: 1440px) {\n  .webchat-overlay {\n    width: min(450px, 90vw);\n    max-width: 450px;\n  }\n  \n  .webchat-container {\n    height: min(650px, 75vh);\n    max-height: 75vh;\n  }\n  \n  .chat-body {\n    height: calc(100% - 150px);\n  }\n}\n\n/* Medium Desktop Screens (1024px to 1439px) */\n@media (min-width: 1024px) and (max-width: 1439px) {\n  .webchat-overlay {\n    width: min(400px, 85vw);\n    max-width: 400px;\n  }\n  \n  .webchat-container {\n    height: min(580px, 80vh);\n    max-height: 80vh;\n  }\n}\n\n/* Small Desktop/Laptop Screens (769px to 1023px) */\n@media (min-width: 769px) and (max-width: 1023px) {\n  .webchat-overlay {\n    width: min(380px, 85vw);\n    max-width: 380px;\n    right: 25px;\n    bottom: 90px;\n  }\n  \n  .webchat-container {\n    height: min(520px, 75vh);\n    max-height: 75vh;\n  }\n  \n  .chat-body {\n    height: calc(100% - 130px);\n  }\n}\n\n/* Responsive Design - Mobile Optimization */\n@media (max-width: 768px) {\n  .webchat-button {\n    right: 20px;\n    bottom: 20px;\n    height: 60px;\n    width: 60px;\n  }\n  \n  .webchat-overlay {\n    right: 0;\n    bottom: 0;\n    left: 0;\n    top: 0;\n    height: 100vh;\n    height: 100dvh; /* Dynamic viewport height for better mobile support */\n    width: 100vw;\n    max-width: 100vw;\n    min-width: 100vw;\n    max-height: 100vh;\n    max-height: 100dvh;\n    border-radius: 0;\n    transform-origin: center;\n    position: fixed;\n  }\n  \n  .webchat-container {\n    height: 100vh;\n    height: 100dvh;\n    max-height: 100vh;\n    max-height: 100dvh;\n    width: 100%;\n    display: flex;\n    flex-direction: column;\n    position: fixed;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    /* Allow dynamic height adjustment for keyboard */\n    transition: height 0.2s ease-out;\n  }\n  \n  .chat-header {\n    padding: 16px 20px;\n    background: var(--webchat-primary-color);\n    flex-shrink: 0;\n    min-height: 60px;\n    position: relative;\n    z-index: 100;\n  }\n  \n  .chat-header .header-info .logo-text {\n    font-size: 1.2rem;\n  }\n  \n  .chat-body {\n    flex: 1;\n    margin-bottom: 0;\n    background: var(--webchat-light-bg);\n    display: flex;\n    flex-direction: column;\n    overflow: hidden;\n    min-height: 0;\n    height: auto;\n    position: relative;\n  }\n\n  .webchat-messages {\n    padding: 20px 16px;\n    padding-top: 20px;\n    padding-bottom: 20px;\n    gap: 16px;\n    flex: 1;\n    overflow-y: auto;\n    height: auto;\n    margin-bottom: 0;\n    /* Better scrolling on mobile */\n    -webkit-overflow-scrolling: touch;\n    overscroll-behavior: contain;\n  }\n  \n  .chat-footer {\n    position: relative;\n    padding: 16px 20px;\n    padding-bottom: max(16px, env(safe-area-inset-bottom, 16px));\n    background: #fff;\n    border-top: 1px solid #eee;\n    flex-shrink: 0;\n    min-height: 80px;\n    z-index: 100;\n    /* Ensure footer stays at bottom but is scrollable if needed */\n    position: sticky;\n    bottom: 0;\n  }\n  \n  .chat-form {\n    border-radius: 20px !important;\n  }\n  \n  .chat-form .message-input {\n    font-size: 16px; /* Prevents zoom on iOS */\n    padding: 12px 16px;\n    min-height: 44px;\n    max-height: 120px;\n    color: #333 !important;\n    background-color: #ffffff !important;\n    -webkit-text-fill-color: #333 !important;\n    /* Fix mobile input issues */\n    -webkit-user-select: text;\n    -webkit-appearance: none;\n    appearance: none;\n    -webkit-text-size-adjust: 100%;\n    touch-action: manipulation;\n    pointer-events: auto;\n    user-select: text;\n    /* Ensure proper input behavior */\n    -webkit-touch-callout: default;\n    -webkit-tap-highlight-color: transparent;\n    /* Prevent viewport jumping */\n    transform: translateZ(0);\n  }\n  \n  .webchat-powered-by {\n    display: none; /* Hide \"Powered by GeniStudio\" on mobile */\n  }\n}\n\n/* Tablet specific styles */\n@media (max-width: 768px) and (min-width: 481px) {\n  .webchat-overlay {\n    right: 20px;\n    bottom: 20px;\n    left: 20px;\n    top: 20px;\n    height: calc(100vh - 40px);\n    width: calc(100vw - 40px);\n    border-radius: 15px;\n  }\n  \n  .webchat-container {\n    height: 100%;\n    display: flex;\n    flex-direction: column;\n  }\n  \n  .chat-body {\n    flex: 1;\n    overflow: hidden;\n    display: flex;\n    flex-direction: column;\n  }\n}\n\n/* Small mobile phones */\n@media (max-width: 480px) {\n  .webchat-button {\n    height: 56px;\n    width: 56px;\n    right: 16px;\n    bottom: 16px;\n  }\n  \n  .chat-header {\n    padding: 12px 16px;\n    min-height: 56px;\n  }\n  \n  .chat-header .header-info .logo-text {\n    font-size: 1.1rem;\n  }\n  \n  .webchat-messages {\n    padding: 16px 12px;\n    gap: 12px;\n    /* Better touch scrolling */\n    -webkit-overflow-scrolling: touch;\n    overscroll-behavior: contain;\n  }\n  \n  .chat-footer {\n    padding: 12px 16px;\n    padding-bottom: max(12px, env(safe-area-inset-bottom, 12px));\n    min-height: 72px;\n  }\n  \n  .message .message-text {\n    font-size: 14px;\n    line-height: 1.4;\n    max-width: 85%;\n    padding: 10px 12px;\n  }\n  \n  .bot-avatar, .user-avatar {\n    width: 32px;\n    height: 32px;\n    min-width: 32px;\n  }\n  \n  .chat-form .message-input {\n    /* Prevent iOS zoom */\n    font-size: 16px !important;\n    min-height: 40px;\n    padding: 10px 14px;\n    color: #333 !important;\n    background-color: #ffffff !important;\n    -webkit-text-fill-color: #333 !important;\n  }\n  \n  .chat-form .chat-controls .send-button {\n    height: 36px;\n    width: 36px;\n    min-height: 36px;\n    min-width: 36px;\n  }\n}\n\n/* Additional mobile optimizations */\n@media (max-width: 768px) {\n  /* Improve touch scrolling performance */\n  .webchat-overlay {\n    -webkit-overflow-scrolling: touch;\n  }\n  \n  .webchat-messages {\n    -webkit-overflow-scrolling: touch;\n    overscroll-behavior: contain;\n  }\n  \n  /* Prevent viewport resize on input focus */\n  .chat-form .message-input {\n    transform: translateZ(0); /* Hardware acceleration */\n  }\n  \n  /* Better tap targets */\n  .webchat-button {\n    /* Ensure minimum 44px tap target */\n    min-height: 44px;\n    min-width: 44px;\n  }\n  \n  /* Ensure the container adjusts when keyboard opens */\n  .webchat-container {\n    height: 100vh;\n    height: 100dvh; /* Dynamic viewport height that accounts for browser UI */\n  }\n  \n  /* Prevent content from being hidden behind keyboard */\n  .chat-footer {\n    position: relative;\n    bottom: 0;\n  }\n}\n\n/* Quick Replies */\n.webchat-quick-replies-container {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 10px;\n}\n\n.webchat-quick-reply-button {\n  background: #f5f5f5;\n  border: 1px solid #ddd;\n  border-radius: 20px;\n  padding: 8px 16px;\n  font-size: 0.9rem;\n  cursor: pointer;\n  transition: all 0.2s ease;\n}\n\n.webchat-quick-reply-button:hover {\n  background: var(--webchat-primary-color);\n  color: #fff;\n  border-color: var(--webchat-primary-color);\n}\n\n/* Date Separator */\n.webchat-date-separator {\n  text-align: center;\n  margin: 20px 0;\n  position: relative;\n}\n\n.webchat-date-separator span {\n  background: #fff;\n  color: #666;\n  font-size: 0.8rem;\n  padding: 0 10px;\n  position: relative;\n  z-index: 1;\n}\n\n.webchat-date-separator::before {\n  content: '';\n  position: absolute;\n  top: 50%;\n  left: 0;\n  right: 0;\n  height: 1px;\n  background: #eee;\n  z-index: 0;\n}\n"]}