/* ===== Turquoise AI - Universal Floating Widget ===== */
#ta-chat-widget{position:fixed;bottom:20px;right:20px;z-index:99999;font-family:"Segoe UI",system-ui,-apple-system,sans-serif}
#ta-chat-fab{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#0d9488,#0f766e);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(13,148,136,.4);transition:all .3s;color:#fff;font-size:28px;position:relative}
#ta-chat-fab:hover{transform:scale(1.1);box-shadow:0 6px 25px rgba(13,148,136,.5)}
#ta-chat-fab svg{width:30px;height:30px;fill:#fff}
#ta-chat-fab .ta-close-icon{display:none}
#ta-chat-widget.open #ta-chat-fab .ta-chat-icon{display:none}
#ta-chat-widget.open #ta-chat-fab .ta-close-icon{display:block}
#ta-chat-badge{position:absolute;top:-2px;right:-2px;width:20px;height:20px;background:#E74C3C;border-radius:50%;color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;font-weight:700;border:2px solid #fff;animation:ta-pulse 2s infinite}
#ta-chat-widget.open #ta-chat-badge{display:none}
@keyframes ta-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}
#ta-chat-window{display:none;position:absolute;bottom:70px;right:0;width:380px;height:520px;background:#f0fdfa;border-radius:16px;box-shadow:0 8px 40px rgba(0,0,0,.2);overflow:hidden;flex-direction:column;animation:ta-slideUp .3s ease-out}
#ta-chat-widget.open #ta-chat-window{display:flex}
@keyframes ta-slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.ta-chat-header{background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px;flex-shrink:0}
.ta-chat-header-icon{width:38px;height:38px;background:rgba(255,255,255,.2);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}
.ta-chat-header-text h3{font-size:15px;margin:0;font-weight:600}
.ta-chat-header-text span{font-size:11px;opacity:.85}
.ta-chat-header-status{margin-left:auto;font-size:11px;padding:3px 8px;border-radius:12px;background:rgba(255,255,255,.2)}
.ta-chat-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}
.ta-msg{max-width:82%;padding:10px 14px;border-radius:14px;line-height:1.5;font-size:14px;word-wrap:break-word;animation:ta-fadeIn .25s ease-out}
@keyframes ta-fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.ta-msg.user{align-self:flex-end;background:#0d9488;color:#fff;border-bottom-right-radius:4px}
.ta-msg.bot{align-self:flex-start;background:#fff;border:1px solid #b2dfdb;border-bottom-left-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.ta-msg-wrap{display:flex;flex-direction:column;align-items:flex-start;max-width:82%}
.ta-msg-source{font-size:10px;margin-top:4px;padding:2px 6px;border-radius:8px;background:#ccfbf1;color:#0f766e}
.ta-msg-source.llm{background:#ede9fe;color:#6d28d9}
.ta-typing{display:flex;gap:4px;padding:10px 14px;align-self:flex-start}
.ta-typing span{width:7px;height:7px;background:#0d9488;border-radius:50%;animation:ta-bounce 1.2s infinite}
.ta-typing span:nth-child(2){animation-delay:.15s}
.ta-typing span:nth-child(3){animation-delay:.3s}
@keyframes ta-bounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-5px)}}
.ta-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:6px 12px}
.ta-suggestion{font-size:12px;padding:5px 10px;background:#fff;border:1px solid #b2dfdb;border-radius:16px;cursor:pointer;color:#0f766e;transition:all .15s}
.ta-suggestion:hover{background:#0d9488;color:#fff;border-color:#0d9488}
.ta-chat-input{display:flex;gap:8px;padding:10px 12px;background:#fff;border-top:1px solid #b2dfdb;flex-shrink:0}
.ta-chat-input input{flex:1;padding:10px 14px;border:1px solid #b2dfdb;border-radius:20px;font-size:14px;outline:none}
.ta-chat-input input:focus{border-color:#0d9488;box-shadow:0 0 0 2px #ccfbf1}
.ta-chat-input button{width:40px;height:40px;border-radius:50%;border:none;background:#0d9488;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.ta-chat-input button:hover{background:#0f766e}
.ta-chat-input button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:480px){#ta-chat-window{width:calc(100vw - 20px);height:calc(100vh - 100px);bottom:65px;right:-10px}}
