.chatbot-widget{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}.chatbot-widget *,.chatbot-widget *:before,.chatbot-widget *:after{box-sizing:border-box}.chatbot-card{background-color:var(--background-color, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;width:100%;max-width:32rem;position:relative;overflow:hidden}.chatbot-header{padding:1.25rem;background:linear-gradient(135deg,var(--primary-color, #2563eb) 0%,var(--primary-color, #1e40af) 100%);border-bottom:none;border-radius:12px 12px 0 0;color:#fff}.chatbot-header-content{display:flex;align-items:center;gap:.75rem}.chatbot-header-icon{width:2rem;height:2rem;flex-shrink:0;opacity:.9}.chatbot-header-text{flex:1;min-width:0}.chatbot-close-button{background:none;border:none;color:#fff;cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out;opacity:.8}.chatbot-close-button:hover{opacity:1;background:#ffffff1a}.chatbot-close-button:active{background:#fff3}.chatbot-close-button svg{width:1.25rem;height:1.25rem}.chatbot-title{font-size:1.125rem;font-weight:600;color:#fff;margin:0;line-height:1.25}.chatbot-subtitle{font-size:.75rem;font-weight:400;color:#fffc;margin:.25rem 0 0;line-height:1.2}.chatbot-content{height:40vh;overflow-y:auto;padding:1rem;flex:1;min-height:10rem;border-top:1px solid rgba(0,0,0,.05)}.chatbot-footer{padding:1rem;border-top:1px solid var(--border-color, #e2e8f0);display:flex;flex-direction:column;gap:.75rem}.branding{text-align:center;font-size:.625rem;color:var(--muted-text-color, #64748b);opacity:.7;font-weight:400}.branding a{font-weight:700;text-decoration:none;transition:all .2s ease-in-out}.branding a:hover{opacity:.8;text-decoration:underline}.messages-container{display:flex;flex-direction:column;gap:1rem;font-size:.8rem}.message{display:flex;flex-direction:column;max-width:80%;gap:.25rem}.message.user{margin-left:auto;align-items:flex-end}.message.bot{margin-right:auto;align-items:flex-start}.message img{width:100%}.message-bubble{padding:.5rem .75rem;border-radius:.5rem;word-wrap:break-word;transition:all .2s ease-in-out}.message-bubble.user{background:linear-gradient(135deg,var(--primary-color, #2563eb) 0%,var(--primary-color, #1e40af) 100%);color:#fff;box-shadow:0 2px 4px rgba(var(--primary-color, #2563eb),.2)}.message-bubble.bot{background-color:var(--bot-message-color, #f8fafc);color:var(--text-color, #1f2937);border:1px solid var(--border-color, #e2e8f0)}.message-timestamp{font-size:.65rem;color:var(--muted-text-color, #64748b)}.empty-state{display:flex;align-items:center;justify-content:flex-start;height:100%;color:var(--muted-text-color, #64748b)}.loading-indicator{display:flex;flex-direction:column;max-width:80%;gap:.25rem;margin-right:auto;align-items:flex-start}.loading-bubble{padding:.5rem .75rem;border-radius:.5rem;background-color:#e5e7eb;display:flex;gap:.25rem;align-items:flex-end}.loading-dots{display:flex;gap:.25rem;align-items:flex-end;padding-bottom:.125rem}.loading-dot{width:.25rem;height:.25rem;background-color:var(--text-color, #1f2937);border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.loading-dot:nth-child(1){animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}.loading-dot:nth-child(3){animation-delay:0s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.message-form{display:flex;width:100%}.message-input{flex:1;min-height:2.25rem;width:100%;border-radius:.375rem 0 0 .375rem;border:1px solid var(--border-color, #e2e8f0);background-color:transparent;padding:.5rem .75rem;font-size:.875rem;font-family:inherit;line-height:1.4;resize:none;transition:all .2s ease-in-out;outline:none;scrollbar-width:none}.message-input:focus{border-color:var(--primary-color, #2563eb);box-shadow:none}.message-input:disabled{cursor:not-allowed;opacity:.5}.message-input::placeholder{color:var(--muted-text-color, #64748b)}.message-input::-webkit-scrollbar{display:none}.send-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:0 .375rem .375rem 0;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out;outline:none;border:1px solid var(--primary-color, #2563eb);background:linear-gradient(135deg,var(--primary-color, #2563eb) 0%,var(--primary-color, #1e40af) 100%);color:#fff;box-shadow:0 1px 2px #0000000d;height:2.5rem;width:2.25rem;cursor:pointer}.send-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px rgba(var(--primary-color, #2563eb),.3)}.send-button:focus{box-shadow:0 0 0 1px var(--primary-color, #2563eb)}.send-button:disabled{pointer-events:none;opacity:.5;cursor:not-allowed}.send-button svg{width:1rem;height:1rem;flex-shrink:0}.message-content{display:block;line-height:1.5}.message-content:has(>p+*),.message-content:has(>*+p),.message-content:has(>ul),.message-content:has(>ol),.message-content:has(>blockquote),.message-content:has(>pre),.message-content:has(>table),.message-content:has(>h1),.message-content:has(>h2),.message-content:has(>h3),.message-content:has(>h4),.message-content:has(>h5),.message-content:has(>h6){display:grid;gap:.5rem}.message-content>p+p,.message-content>p+ul,.message-content>p+ol,.message-content>p+blockquote,.message-content>p+pre,.message-content>p+table,.message-content>ul+p,.message-content>ol+p,.message-content>blockquote+p,.message-content>pre+p,.message-content>table+p{margin-top:1rem}.message-content ol{margin:0}.message-content ol:has(li p){display:grid;gap:1rem}.message-content ol>li>p:first-child{font-size:1rem;font-weight:300}.message-content ul{padding-left:0;margin:0;list-style:none}.message-content li>img{margin-top:.5rem}.message-content p{margin:0 0 .5rem}.message-content p:last-child{margin-bottom:0}.message-content blockquote,.message-content pre,.message-content table{margin:1rem 0}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{margin:0}.message-content h1:first-child,.message-content h2:first-child,.message-content h3:first-child,.message-content h4:first-child,.message-content h5:first-child,.message-content h6:first-child{margin-top:0}.message-content th{border:1px solid var(--muted-text-color, #64748b);font-size:.75rem;text-align:center}.message-content td{border:1px solid var(--border-color, #e2e8f0);font-size:.75rem;text-align:center}@media (max-width: 640px){.chatbot-card{max-width:100%;border-radius:0;height:100vh}.chatbot-card:before{border-radius:0}.chatbot-content{height:calc(100vh - 160px)}.branding{font-size:.5rem}}.floating-chatbot-container{position:fixed;pointer-events:none;z-index:1000}.floating-chatbot-container *{pointer-events:auto}.floating-chatbot-bottom-right{bottom:20px;right:20px}.floating-chatbot-bottom-left{bottom:20px;left:20px}.floating-chatbot-top-right{top:20px;right:20px}.floating-chatbot-top-left{top:20px;left:20px}.floating-chat-window{position:absolute;bottom:80px;right:0;opacity:0;width:320px;transform:translateY(20px) scale(.95);animation:slideInUp var(--animation-duration, .3s) ease-out forwards;transform-origin:bottom right}.floating-chat-window.floating-chat-hidden{display:none!important;visibility:hidden}.floating-chatbot-bottom-left .floating-chat-window{right:auto;left:0;transform-origin:bottom left}.floating-chatbot-top-right .floating-chat-window{bottom:auto;top:80px;transform:translateY(-20px) scale(.95);animation:slideInDown var(--animation-duration, .3s) ease-out forwards;transform-origin:top right}.floating-chatbot-top-left .floating-chat-window{bottom:auto;top:80px;right:auto;left:0;transform:translateY(-20px) scale(.95);animation:slideInDown var(--animation-duration, .3s) ease-out forwards;transform-origin:top left}.floating-chat-button{position:relative;width:60px;height:60px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,var(--primary-color, #2563eb) 0%,var(--primary-color, #1e40af) 100%);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transition:all .3s ease-in-out;display:flex;align-items:center;justify-content:center;color:#fff;outline:none}.floating-chat-button:hover:not(:disabled){transform:translateY(-2px) scale(1.05);box-shadow:0 15px 25px rgba(var(--primary-color, #2563eb),.4)}.floating-chat-button:active{transform:translateY(0) scale(.98)}.floating-chat-button:focus{box-shadow:0 0 0 3px rgba(var(--primary-color, #2563eb),.3)}.floating-chat-button:disabled{opacity:.7;cursor:not-allowed;transform:none!important}.floating-chatbot-sm .floating-chat-button{width:50px;height:50px}.floating-chatbot-sm .floating-chat-button .floating-button-icon svg{width:20px;height:20px}.floating-chatbot-md .floating-chat-button{width:60px;height:60px}.floating-chatbot-md .floating-chat-button .floating-button-icon svg{width:24px;height:24px}.floating-chatbot-lg .floating-chat-button{width:70px;height:70px}.floating-chatbot-lg .floating-chat-button .floating-button-icon svg{width:28px;height:28px}.floating-button-icon{display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out}.floating-button-icon svg{width:24px;height:24px;stroke-width:2}.floating-button-icon .chat-icon,.floating-button-icon .close-icon{opacity:1;transform:rotate(0);transition:all .2s ease-in-out}.floating-chatbot-open .floating-button-icon .chat-icon{opacity:0;transform:rotate(-90deg)}.floating-chatbot-open .floating-button-icon .close-icon{opacity:1;transform:rotate(0)}.floating-button-badge{position:absolute;top:-5px;right:-5px;background:#ef4444;color:#fff;border-radius:50%;min-width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;line-height:1;padding:0 6px;box-shadow:0 2px 4px #0003;animation:pulse 2s infinite}.floating-hint-card{position:absolute;bottom:80px;right:0;max-width:280px;min-width:200px;background:var(--background-color, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;box-shadow:0 10px 25px #00000026;opacity:0;transform:translateY(10px) scale(.95);animation:hintSlideIn .3s ease-out forwards;z-index:10}.floating-chatbot-bottom-left .floating-hint-card{right:auto;left:0}.floating-chatbot-top-right .floating-hint-card{bottom:auto;top:80px;transform:translateY(-10px) scale(.95);animation:hintSlideInFromTop .3s ease-out forwards}.floating-chatbot-top-left .floating-hint-card{bottom:auto;top:80px;right:auto;left:0;transform:translateY(-10px) scale(.95);animation:hintSlideInFromTop .3s ease-out forwards}.floating-hint-card:hover{cursor:pointer}.floating-hint-content{padding:12px 16px;position:relative}.floating-hint-message{flex:1;font-size:.8rem;line-height:1.4;color:var(--text-color, #1f2937);margin:0}.floating-hint-close{position:absolute;top:2px;right:2px;flex-shrink:0;background:none;border:none;cursor:pointer;padding:2px;border-radius:4px;color:#adadad;transition:all .2s ease-in-out}.floating-hint-close svg{width:16px;height:16px}.floating-hint-arrow{position:absolute;bottom:-6px;right:20px;width:12px;height:12px;background:var(--background-color, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-top:none;border-left:none;transform:rotate(45deg)}.floating-chatbot-bottom-left .floating-hint-arrow{right:auto;left:20px}.floating-chatbot-top-right .floating-hint-arrow,.floating-chatbot-top-left .floating-hint-arrow{bottom:auto;top:-6px;border:1px solid var(--border-color, #e5e7eb);border-bottom:none;border-right:none;transform:rotate(-45deg)}.floating-chatbot-top-left .floating-hint-arrow{right:auto;left:20px}.floating-chatbot-widget{box-shadow:0 20px 40px #00000026;border-radius:16px;overflow:hidden}.floating-chatbot-widget .chatbot-card{border-radius:16px;box-shadow:none;border:none;height:100%}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes hintSlideIn{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes hintSlideInFromTop{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 640px){.floating-chat-window{position:fixed!important;bottom:0!important;top:0!important;left:0!important;right:0!important;width:100vw!important;height:100vh!important;height:100svh!important;z-index:9999!important;transform:translateY(100%);animation:slideInUpMobile var(--animation-duration, .3s) ease-out forwards}.floating-chat-window .floating-chatbot-widget{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;border-radius:0!important;box-shadow:none!important}.floating-chat-window .floating-chatbot-widget .chatbot-card{border-radius:0!important;border:none!important;height:100%;display:flex!important;flex-direction:column!important;box-shadow:none!important}.floating-chat-window .floating-chatbot-widget .chatbot-card .chatbot-header{border-radius:0!important;flex-shrink:0}.floating-chat-window .floating-chatbot-widget .chatbot-card .chatbot-content{flex:1!important;min-height:0;overflow-y:auto}.floating-chat-window .floating-chatbot-widget .chatbot-card .chatbot-footer{flex-shrink:0;padding:1rem;padding-bottom:max(1rem,env(safe-area-inset-bottom));background:var(--background-color, #ffffff);border-top:1px solid var(--border-color, #e5e7eb)}.floating-chatbot-container{bottom:15px!important;right:15px!important;left:auto!important;top:auto!important;z-index:9999!important}.floating-chat-button{width:55px!important;height:55px!important;z-index:10000!important}.floating-chat-button .floating-button-icon svg{width:22px!important;height:22px!important}.floating-chat-button.mobile-hidden{display:none!important}.floating-hint-card{max-width:calc(100vw - 30px)!important;right:15px!important;left:auto!important;bottom:80px!important}.floating-chatbot-bottom-left .floating-hint-card{left:15px!important;right:auto!important}.floating-chatbot-top-right .floating-hint-card,.floating-chatbot-top-left .floating-hint-card{top:80px!important;bottom:auto!important}.floating-chatbot-top-left .floating-hint-card{left:15px!important;right:auto!important}.floating-hint-arrow{right:25px!important}.floating-chatbot-bottom-left .floating-hint-arrow,.floating-chatbot-top-left .floating-hint-arrow{left:25px!important;right:auto!important}}@keyframes slideInUpMobile{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 640px){.floating-chat-window.mobile-opening{animation:slideInUpMobile var(--animation-duration, .3s) ease-out forwards!important}}@media (max-width: 640px){.floating-chatbot-open .floating-chat-window{display:block!important;visibility:visible!important;opacity:1!important}body.floating-chat-open{overflow:hidden;position:fixed;width:100%}.floating-chatbot-container.floating-chatbot-open{z-index:9999!important}.floating-chatbot-open .floating-chat-window{background:#0000004d!important}.floating-chatbot-open .floating-chat-window .floating-chatbot-widget{background:#fff!important;position:relative!important;z-index:1!important;box-shadow:none!important}}.floating-chatbot-widget .chatbot-card,.floating-chatbot-widget .chatbot-content{background-color:var(--background-color, #ffffff)!important;color:var(--text-color, #1f2937)!important}.floating-chatbot-widget .message-bubble.bot{background-color:var(--bot-message-color, #f8fafc)!important;color:var(--text-color, #1f2937)!important;border:1px solid var(--border-color, #e2e8f0)!important}.floating-chatbot-widget .loading-bubble{background-color:var(--bot-message-color, #e5e7eb)!important}.floating-chatbot-widget .loading-dot{background-color:var(--text-color, #1f2937)!important}.floating-chatbot-widget .empty-state,.floating-chatbot-widget .message-timestamp{color:var(--muted-text-color, #64748b)!important}@media (prefers-contrast: high){.floating-chat-button{border:2px solid #000}.floating-button-badge{border:2px solid #fff}}@media (prefers-reduced-motion: reduce){.floating-chat-button,.floating-button-icon,.floating-chat-window{transition:none!important;animation:none!important}.floating-button-badge{animation:none!important}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html,body{margin:0;padding:0;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{margin:0;padding:0;min-height:100vh}ul,ol{list-style:none}button{border:none;background:none;font:inherit;cursor:pointer}input,textarea{border:none;outline:none;font:inherit}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}table{border-collapse:collapse;border-spacing:0}fieldset{border:none;margin:0;padding:0}legend{padding:0}
