.ai-loading{display:flex;align-items:center;justify-content:center}.ai-loading-spinner{animation:ai-spin 1s linear infinite;font-size:28px;color:#fff}@keyframes ai-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-box-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;transition:opacity .3s ease}.ai-box{position:fixed;width:520px;height:820px;max-height:100vh;background-color:var(--bs-body-bg, #fff);border-radius:var(--bs-border-radius-xl, 1rem);bottom:24px;z-index:9999;box-shadow:0 .5rem 1rem #00000026;box-sizing:border-box;display:flex;flex-direction:column;font-size:18px;overflow:hidden;border:1px solid rgba(0,0,0,.175)}.ai-box-left{left:24px;right:auto}.ai-box-right{right:24px;left:auto}.ai-box-titlebar{padding:16px 20px;background:linear-gradient(135deg,var(--bs-primary, #0d6efd) 0%,var(--bs-primary, #0d6efd) 100%);color:#fff;display:flex;border-top-left-radius:var(--bs-border-radius-xl, 1rem);border-top-right-radius:var(--bs-border-radius-xl, 1rem);align-items:center;font-size:18px;font-weight:600;box-shadow:0 2px 8px #0d6efd4d}.ai-box-title{display:flex;align-items:center}.ai-box-close button{font-size:20px;background:none;border:none;color:#fff;cursor:pointer;padding:8px;width:40px;height:40px;border-radius:var(--bs-border-radius, .375rem);transition:background-color .2s ease;display:flex;align-items:center;justify-content:center}.ai-box-close button:hover{background-color:#fff3}.ai-box-content{flex:1;overflow:auto;padding:20px;font-size:18px;overscroll-behavior:contain;background-color:var(--bs-light, #f8f9fa)}.ai-box-message{margin-bottom:20px;display:flex;gap:10px;animation:fadeInUp .3s ease}.ai-box-message.user{flex-direction:row-reverse}.ai-box-message-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--bs-primary, #0d6efd) 0%,var(--bs-info, #0dcaf0) 100%);display:flex;align-items:center;justify-content:center;margin-top:4px}.ai-box-message-avatar img{width:24px;height:24px}.ai-box-message-content{padding:14px 18px;border-radius:var(--bs-border-radius, .375rem);background-color:var(--bs-white, #fff);margin-top:8px;font-size:18px;border:1px solid rgba(0,0,0,.175);line-height:1.6;word-break:break-word}.ai-box-message.user .ai-box-message-content{background:linear-gradient(135deg,var(--bs-primary, #0d6efd) 0%,var(--bs-info, #0dcaf0) 100%);color:#fff;text-align:right;border:none;box-shadow:0 2px 8px #0d6efd4d}.ai-box-message-body{display:flex;flex-direction:column;max-width:80%}.ai-box-message.user .ai-box-message-body{align-items:flex-end}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-box-user-input{padding:16px 20px;border-top:1px solid var(--bs-border-color, #dee2e6);display:flex;gap:12px;background-color:var(--bs-white, #fff)}.ai-box-user-input>div{display:flex;flex-direction:column;justify-content:end}.ai-box-user-input textarea{flex:1;outline:none;border:2px solid var(--bs-border-color, #dee2e6);padding:12px 16px;font-size:18px;border-radius:var(--bs-border-radius-lg, .5rem);transition:border-color .2s ease,box-shadow .2s ease;background-color:var(--bs-light, #f8f9fa);resize:none;font-family:inherit;max-height:120px}.ai-box-user-input textarea:focus{border-color:var(--bs-primary, #0d6efd);box-shadow:0 0 0 .25rem #0d6efd40;background-color:var(--bs-white, #fff)}.ai-box-user-input textarea:disabled{opacity:.6;cursor:not-allowed}.ai-box-user-input textarea::placeholder{color:var(--bs-secondary, #6c757d)}.ai-box-user-input button{font-size:18px;padding:12px 20px;border:none;background:linear-gradient(135deg,var(--bs-primary, #0d6efd) 0%,var(--bs-primary, #0d6efd) 100%);color:#fff;border-radius:var(--bs-border-radius-lg, .5rem);cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0d6efd4d}.ai-box-user-input button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0d6efd66}.ai-box-user-input button:active:not(:disabled){transform:translateY(0)}.ai-box-user-input button:disabled{opacity:.6;cursor:not-allowed}.ai-box-robot-icon{width:34px;height:34px}.ai-box-float-icon{position:fixed;width:64px;height:64px;background:linear-gradient(135deg,var(--bs-primary, #0d6efd) 0%,var(--bs-info, #0dcaf0) 100%);border-radius:50%;bottom:24px;right:24px;left:auto;z-index:2999;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 .5rem 1rem #00000026;transition:all .3s ease;border:3px solid white;user-select:none;-webkit-user-select:none;touch-action:none}.ai-box-float-icon:hover{box-shadow:0 6px 20px #0d6efd66;transform:translateY(-5px)}.ai-box-float-icon:active{transform:scale(.95)}.ai-box-bubble{position:absolute;bottom:75px;right:0;background-color:var(--bs-white, #fff);color:var(--bs-dark, #212529);padding:12px 16px;border-radius:var(--bs-border-radius-lg, .5rem);box-shadow:0 .5rem 1rem #00000026;width:300px;font-size:14px;line-height:1.5;animation:bubbleFadeIn .3s ease;border:1px solid rgba(0,0,0,.175)}.ai-box-bubble:after{content:"";position:absolute;bottom:-8px;right:20px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--bs-white, #fff)}@keyframes bubbleFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-box-message-content h1,.ai-box-message-content h2,.ai-box-message-content h3,.ai-box-message-content h4,.ai-box-message-content h5,.ai-box-message-content h6{margin:12px 0 8px;font-weight:600}.ai-box-message-content h1{font-size:24px}.ai-box-message-content h2{font-size:22px}.ai-box-message-content h3{font-size:20px}.ai-box-message-content h4,.ai-box-message-content h5,.ai-box-message-content h6{font-size:18px}.ai-box-message-content p{margin:8px 0}.ai-box-message-content ul,.ai-box-message-content ol{margin:8px 0;padding-left:24px}.ai-box-message-content li{margin:4px 0}.ai-box-message-content code{background-color:var(--bs-light, #f8f9fa);padding:2px 6px;border-radius:4px;font-family:monospace;font-size:16px}.ai-box-message-content pre{background-color:var(--bs-dark, #212529);color:var(--bs-light, #f8f9fa);padding:12px;border-radius:8px;overflow-x:auto;margin:12px 0}.ai-box-message-content pre code{background:none;padding:0;color:inherit}.ai-box-message-content blockquote{border-left:4px solid var(--bs-primary, #0d6efd);padding-left:12px;margin:12px 0;color:var(--bs-secondary, #6c757d)}.ai-box-message-content a{color:var(--bs-primary, #0d6efd);text-decoration:underline}.ai-box-message-content hr{border:none;border-top:1px solid var(--bs-border-color, #dee2e6);margin:16px 0}.ai-btn{display:inline-block;padding:8px 16px;margin:4px;border-radius:var(--bs-border-radius, .375rem);font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid var(--bs-primary, #0d6efd);background-color:var(--bs-primary, #0d6efd);color:#fff;text-decoration:none}.ai-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0d6efd4d;background-color:var(--bs-primary-dark, #0b5ed7);color:#fff}@media(max-width:768px){.ai-box{width:100%;height:100%;bottom:0;right:0;left:0;border-radius:0}.ai-box-float-icon{width:56px;height:56px;bottom:16px;right:16px}}
