.chat-launcher{z-index:50;background:var(--cta-bg);color:var(--cta-fg);box-shadow:var(--cta-glow-1);border:1px solid color-mix(in srgb,var(--cta-bg)40%,transparent);border-radius:999px;align-items:center;gap:8px;padding:12px 14px;font-weight:700;transition:transform .2s,box-shadow .25s,filter .2s;display:flex;position:fixed;bottom:20px;right:20px}.chat-launcher:hover{box-shadow:var(--cta-glow-2);filter:brightness(1.02);transform:translateY(-2px)}.launcher-glow{box-shadow:0 0 20px var(--cta-bg);pointer-events:none;border-radius:999px;animation:2.5s infinite pulse;position:absolute;top:0;bottom:0;left:0;right:0}.launcher-text{padding-right:8px;font-size:1rem}@keyframes pulse{0%,to{opacity:.85}50%{opacity:1}}@media (max-width:640px){.launcher-text{display:none}}.chat-window{z-index:50;width:100%;height:75vh;box-shadow:var(--shadow-hard);background:var(--panel);border:1px solid var(--border);border-radius:16px 16px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;right:0;overflow:hidden}@media (min-width:640px){.chat-window{border-radius:var(--radius-lg);width:380px;height:70vh;max-height:550px;bottom:20px;right:20px}}.chat-header{border-bottom:1px solid var(--border);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.chat-title{color:var(--fg);text-shadow:none;font-size:1rem;font-weight:700}.minimize-btn{color:var(--muted);border-radius:8px;padding:6px;transition:color .15s,background-color .15s}.minimize-btn:hover{color:var(--fg);background:#f2f5f9}.messages-list{background:var(--panel);flex-direction:column;flex-grow:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.messages-list::-webkit-scrollbar{width:10px}.messages-list::-webkit-scrollbar-track{border-left:1px solid var(--border);background:#f2f5f9}.messages-list::-webkit-scrollbar-thumb{background:#c9d3e0;border:2px solid #f2f5f9;border-radius:8px}.messages-list::-webkit-scrollbar-thumb:hover{background:#b6c4d6}.message-row{display:flex}.row-user{justify-content:flex-end}.row-ai{justify-content:flex-start}.message-bubble{word-wrap:break-word;border:1px solid var(--border);border-radius:16px;max-width:80%;padding:10px 14px;font-size:.95rem;line-height:1.6}.user-bubble{background:var(--mg-blue);color:#fff;border-color:color-mix(in srgb,var(--mg-blue)60%,#000);border-bottom-right-radius:4px}.ai-bubble{color:var(--fg);background:#fff;border-bottom-left-radius:4px}.ai-bubble strong{color:var(--fg);font-weight:700}.ai-bubble em{color:#374151;font-style:italic}.thinking-dots{align-items:center;gap:6px;padding:6px 4px;display:flex}.dot{background:#c9d3e0;border-radius:50%;width:8px;height:8px;animation:1s infinite bounce}.dot.d2{animation-delay:.15s}.dot.d3{animation-delay:.3s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-input-form{border-top:1px solid var(--border);background:#fff;flex-shrink:0;align-items:center;gap:8px;padding:12px;display:flex}.chat-input{border-radius:var(--radius-sm);border:1px solid var(--border);min-width:0;color:var(--fg);background:#f7f9fd;outline:none;flex-grow:1;padding:10px 14px;font-size:.95rem;transition:all .15s}.chat-input:focus{border-color:var(--mg-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--mg-blue)25%,transparent)}.send-btn{background:var(--mg-blue);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;transition:transform .15s,filter .15s,background-color .15s;display:grid}.send-btn:hover:not(:disabled){background:var(--mg-blue-600);transform:scale(1.05)}.send-btn:disabled{opacity:.6;cursor:not-allowed}
