:root{--aws-chat-primary:#06c;--aws-chat-primary-hover:#0052a3;--aws-chat-primary-dark:#004080;--aws-chat-secondary:#f5f7fa;--aws-chat-text:#1a1a1a;--aws-chat-text-light:#666;--aws-chat-border:#e1e8ed;--aws-chat-shadow:0 4px 20px rgba(0,0,0,.1);--aws-chat-shadow-lg:0 10px 40px rgba(0,0,0,.15);--aws-chat-radius:24px;--aws-chat-radius-sm:12px;--aws-chat-transition:all .3s cubic-bezier(.4,0,.2,1);--aws-chat-z-index:999999}#aws-chat-container{position:fixed;z-index:var(--aws-chat-z-index);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:14px;line-height:1.5}#aws-chat-container.aws-chat-floating{bottom:24px !important;right:24px !important;left:auto !important;top:auto !important}#aws-chat-container.aws-chat-floating.position-bottom-left{left:24px !important;right:auto !important}#aws-chat-container.aws-chat-floating.position-top-right{top:24px !important;bottom:auto !important}#aws-chat-container.aws-chat-floating.position-top-left{top:24px !important;left:24px !important;bottom:auto !important;right:auto !important}#aws-chat-container.aws-chat-inline{position:relative;bottom:auto;right:auto;max-width:600px;margin:20px auto}.aws-chat-compact{display:flex;align-items:center;gap:12px;background:#fff;border-radius:var(--aws-chat-radius);box-shadow:var(--aws-chat-shadow);padding:8px;transition:var(--aws-chat-transition);min-width:368px;max-width:460px}.aws-chat-compact:hover{box-shadow:var(--aws-chat-shadow-lg);transform:translateY(-2px)}.aws-chat-compact-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--aws-chat-primary),var(--aws-chat-primary-dark));display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.aws-chat-compact-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.aws-chat-compact-input{flex:1;border:none;outline:none;font-size:15px;color:var(--aws-chat-text);background:0 0;padding:8px 0;font-family:inherit}.aws-chat-compact-input::placeholder{color:var(--aws-chat-text-light)}.aws-chat-send-compact{width:40px;height:40px;border-radius:50%;background:var(--aws-chat-primary);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--aws-chat-transition);flex-shrink:0;padding:20px}.aws-chat-send-compact .aws-chat-icon{display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;font-weight:700;line-height:1}.aws-chat-send-compact:hover{background:var(--aws-chat-primary-hover);transform:scale(1.05)}.aws-chat-send-compact:active{transform:scale(.95)}.aws-chat-expanded{background:var(--aws-chat-secondary);border-radius:var(--aws-chat-radius);box-shadow:var(--aws-chat-shadow-lg);width:50vw;min-width:400px;max-width:90vw;min-height:400px;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease-out;position:fixed;top:10vh;right:24px;bottom:24px}@keyframes slideUp{from{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.aws-chat-header{background:linear-gradient(135deg,var(--aws-chat-primary),var(--aws-chat-primary-dark));color:#fff;padding:8px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.aws-chat-header-content{display:flex;align-items:center;gap:12px;flex:1}.aws-chat-header-avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;overflow:hidden}.aws-chat-header-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.aws-chat-header-info{flex:1;padding-left:10px}.aws-chat-title{margin:0;font-size:16px;font-weight:600;color:#fff}.aws-chat-status{display:flex;align-items:center;gap:6px;font-size:13px;opacity:.9}.aws-chat-status-dot{width:8px;height:8px;border-radius:50%;background:#0f8;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}.aws-chat-header-actions{display:flex;align-items:center;gap:8px}.aws-chat-btn-header{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--aws-chat-transition);padding:20px}.aws-chat-btn-header .aws-chat-icon{display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:700;line-height:1}#aws-chat-reset-session .aws-chat-icon{font-size:23px}.aws-chat-btn-header:hover{background:rgba(255,255,255,.25);transform:scale(1.05)}.aws-chat-btn-header:active{transform:scale(.95)}.aws-chat-messages{flex:1;overflow-y:auto;padding:20px;background:var(--aws-chat-secondary) !important;display:flex;flex-direction:column;gap:16px}.aws-chat-messages::-webkit-scrollbar{width:6px}.aws-chat-messages::-webkit-scrollbar-track{background:0 0}.aws-chat-messages::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:3px}.aws-chat-messages::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}.aws-chat-message{display:flex;gap:10px;animation:fadeIn .3s ease-out}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.aws-chat-message-user{flex-direction:row-reverse}.aws-chat-message-avatar{width:32px;height:32px;border-radius:50%;background:var(--aws-chat-primary);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;overflow:hidden}.aws-chat-message-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.aws-chat-message-user .aws-chat-message-avatar{background:#6c757d}.aws-chat-message-content{max-width:70%;display:flex;flex-direction:column;gap:4px}.aws-chat-message-bubble{padding:12px 16px;border-radius:18px;line-height:1.5;word-wrap:break-word}.aws-chat-message-bubble strong{font-weight:700}.aws-chat-message-bubble em{font-style:italic}.aws-chat-message-assistant .aws-chat-message-bubble{background:#fff;color:var(--aws-chat-text);border-bottom-left-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.aws-chat-message-user .aws-chat-message-bubble{background:var(--aws-chat-primary);color:#fff;border-bottom-right-radius:6px}.aws-chat-message-time{font-size:11px;color:var(--aws-chat-text-light);padding:0 8px}.aws-chat-message-user .aws-chat-message-time{text-align:right}.aws-chat-typing{display:flex;align-items:center;gap:4px;padding:12px 20px}.aws-chat-typing-dot{width:8px;height:8px;background:var(--aws-chat-text-light);border-radius:50%;animation:typingBounce 1.4s ease-in-out infinite both}.aws-chat-typing-dot:nth-child(1){animation-delay:-.32s}.aws-chat-typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,100%{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.aws-chat-form{padding:24px;background:#fff;border-top:1px solid var(--aws-chat-border);width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.aws-chat-form-header{margin-bottom:16px}.aws-chat-form-header h4{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--aws-chat-text)}.aws-chat-form-header p{margin:0;font-size:13px;color:var(--aws-chat-text-light)}.aws-chat-form-fields{display:flex;flex-direction:column;gap:12px;width:100%;max-width:100%;box-sizing:border-box}.aws-chat-input{padding:12px 16px;border:1px solid var(--aws-chat-border);border-radius:var(--aws-chat-radius-sm);font-size:14px;font-family:inherit;color:var(--aws-chat-text);transition:var(--aws-chat-transition);background:#fff;width:100%;max-width:100%;box-sizing:border-box}.aws-chat-input:focus{outline:none;border-color:var(--aws-chat-primary);box-shadow:0 0 0 3px rgba(0,102,204,.1)}.aws-chat-btn-primary{padding:12px 24px;background:var(--aws-chat-primary);color:#fff;border:none;border-radius:var(--aws-chat-radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:var(--aws-chat-transition);width:100%;max-width:100%;box-sizing:border-box}.aws-chat-btn-primary:hover{background:var(--aws-chat-primary-hover);transform:translateY(-1px)}.aws-chat-btn-primary:active{transform:translateY(0)}.aws-chat-input-container{display:flex;align-items:flex-end;gap:12px;padding:12px 20px;background:#fff;border-top:1px solid var(--aws-chat-border)}.aws-chat-textarea{flex:1;padding:12px 16px;border:1px solid var(--aws-chat-border);border-radius:var(--aws-chat-radius-sm);font-size:14px;font-family:inherit;color:var(--aws-chat-text);resize:none;min-height:44px;max-height:120px;transition:var(--aws-chat-transition);background:#fff}.aws-chat-textarea:focus{outline:none;border-color:var(--aws-chat-primary);box-shadow:0 0 0 3px rgba(0,102,204,.1)}.aws-chat-textarea::placeholder{color:var(--aws-chat-text-light)}.aws-chat-btn-send{width:44px;height:44px;border-radius:50%;background:var(--aws-chat-primary);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--aws-chat-transition);flex-shrink:0;padding:20px}.aws-chat-btn-send .aws-chat-icon{display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;font-weight:700;line-height:1}.aws-chat-btn-send:hover{background:var(--aws-chat-primary-hover);transform:scale(1.05)}.aws-chat-btn-send:active{transform:scale(.95)}.aws-chat-btn-send:disabled{background:#ccc;cursor:not-allowed;transform:none}.aws-chat-footer{padding:7px 20px;text-align:center;font-size:12px;color:var(--aws-chat-text-light);background:var(--aws-chat-secondary);border-top:1px solid var(--aws-chat-border)}@media (max-width:768px){html,body{max-width:100vw;overflow-x:hidden !important}#aws-chat-container,#aws-chat-container *,#aws-chat-container *:before,#aws-chat-container *:after{box-sizing:border-box !important}#aws-chat-container.aws-chat-floating{bottom:0 !important;right:0 !important;left:0 !important;max-width:100vw !important;overflow-x:hidden !important}.aws-chat-compact{margin:16px;min-width:0 !important;width:calc(100vw - 32px) !important;max-width:calc(100vw - 32px) !important;box-sizing:border-box !important}.aws-chat-expanded{border-radius:0 !important;min-width:0 !important;max-width:100vw !important;overflow-x:hidden !important}.aws-chat-expanded.is-visible{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;width:100% !important;min-width:0 !important;max-width:100% !important;height:100dvh !important;height:100vh !important;max-height:100dvh !important;max-height:100vh !important;min-height:0 !important;overflow:hidden !important;overflow-x:hidden !important;display:flex !important;flex-direction:column !important;margin:0 !important;padding:0 !important;border:none !important}.aws-chat-expanded.is-visible.keyboard-open{height:var(--viewport-height,100dvh) !important;max-height:var(--viewport-height,100dvh) !important}.aws-chat-header{border-radius:0;padding:8px !important;flex:0 0 auto !important;min-height:56px;overflow-x:hidden !important;width:100% !important;max-width:100% !important}.aws-chat-header-content,.aws-chat-header-info,.aws-chat-header-actions{max-width:100% !important;overflow-x:hidden !important}.aws-chat-title{overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important}.aws-chat-messages{overflow-y:auto !important;overflow-x:hidden !important;flex:1 1 auto !important;-webkit-overflow-scrolling:touch;min-height:0 !important;padding:10px;width:100% !important;max-width:100% !important}.aws-chat-form{padding:16px !important;overflow-y:auto !important;overflow-x:hidden !important;flex:1 1 auto !important;max-height:none !important;-webkit-overflow-scrolling:touch;min-height:0;width:100% !important;max-width:100% !important;box-sizing:border-box !important}.aws-chat-form-fields{width:100% !important;max-width:100% !important;box-sizing:border-box !important}.aws-chat-input-container{padding:8px !important;flex:0 0 auto !important;background:#fff;border-top:1px solid var(--aws-chat-border);min-height:auto;overflow-x:hidden !important;display:flex !important;gap:8px;align-items:flex-end;width:100% !important;max-width:100% !important;padding-bottom:calc(8px + env(safe-area-inset-bottom, 0px)) !important}.aws-chat-footer{padding:6px 12px !important;padding-bottom:calc(6px + env(safe-area-inset-bottom, 0px)) !important;font-size:10px !important;flex:0 0 auto !important;min-height:auto;overflow-x:hidden !important;width:100% !important;max-width:100% !important}.aws-chat-input,.aws-chat-textarea{font-size:16px !important;min-height:44px !important;padding:10px !important;max-height:100px !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important;border:1px solid var(--aws-chat-border) !important;flex:1 1 auto;min-width:0}.aws-chat-btn-send{width:44px !important;height:44px !important;min-width:44px !important;min-height:44px !important;flex:0 0 auto !important}.aws-chat-btn-header{width:36px !important;height:36px !important;min-width:36px !important;min-height:36px !important}.aws-chat-message{max-width:100% !important;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}.aws-chat-message-content{max-width:75% !important;min-width:0;overflow:hidden}.aws-chat-message-bubble{max-width:100% !important;word-wrap:break-word !important;overflow-wrap:break-word !important;hyphens:auto;overflow:hidden}.aws-chat-messages::-webkit-scrollbar{width:4px}.aws-chat-messages::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);border-radius:2px}}@media (max-width:480px){.aws-chat-compact{min-width:auto}.aws-chat-compact-input{font-size:14px}.aws-chat-message-content{max-width:85%}}.aws-chat-status-icon{display:inline-block;margin-left:4px;font-size:11px;opacity:.8}.aws-chat-status-icon.sending{animation:pulse 1.5s ease-in-out infinite}.aws-chat-status-icon.retrying{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.aws-chat-status-icon.error{color:#d32f2f;cursor:pointer}.aws-chat-status-icon.sent{color:#4caf50}.aws-chat-retry-container{margin-top:8px;padding:8px 12px;background:#ffebee;border-left:3px solid #d32f2f;border-radius:6px;font-size:13px}.aws-chat-error-text{display:block;color:#c62828;margin-bottom:8px;line-height:1.4}.aws-chat-retry-btn{background:#d32f2f;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:var(--aws-chat-transition);display:inline-flex;align-items:center;gap:4px}.aws-chat-retry-btn:hover{background:#c62828;transform:scale(1.05)}.aws-chat-retry-btn:active{transform:scale(.95)}.aws-chat-message[data-status=error] .aws-chat-message-bubble{border:1px solid #ffcdd2}.aws-chat-hidden{display:none !important}.aws-chat-fade-in{animation:fadeIn .3s ease-out}.aws-chat-fade-out{animation:fadeOut .3s ease-out}@keyframes fadeOut{from{opacity:1}to{opacity:0}}.aws-chat-compact-input,.aws-chat-textarea,.aws-chat-input{color:var(--aws-chat-text) !important;background:#fff !important}#aws-chat-container[data-primary-color] .aws-chat-compact-avatar,#aws-chat-container[data-primary-color] .aws-chat-send-compact,#aws-chat-container[data-primary-color] .aws-chat-header,#aws-chat-container[data-primary-color] .aws-chat-message-avatar,#aws-chat-container[data-primary-color] .aws-chat-message-user .aws-chat-message-bubble,#aws-chat-container[data-primary-color] .aws-chat-btn-primary,#aws-chat-container[data-primary-color] .aws-chat-btn-send{background:var(--aws-chat-primary)}#aws-chat-container[data-primary-color] .aws-chat-textarea:focus,#aws-chat-container[data-primary-color] .aws-chat-input:focus{border-color:var(--aws-chat-primary)}