:root{--cw-bg: var(--bg-card);--cw-border: var(--border);--cw-header-bg: var(--bg);--cw-header-text: var(--text);--cw-empty-color: var(--text-muted);--cw-user-bubble-bg: var(--primary);--cw-user-bubble-text: var(--text-on-primary);--cw-asst-bubble-bg: var(--bg-muted);--cw-asst-bubble-text: var(--text);--cw-typing-dot: var(--text-muted);--cw-footer-border: var(--border);--cw-footer-bg: var(--bg-secondary);--cw-textarea-bg: var(--bg-input);--cw-textarea-border: var(--border);--cw-textarea-text: var(--text);--cw-textarea-ph: var(--text-muted);--cw-textarea-focus: var(--ring);--cw-send-bg: var(--primary);--cw-send-text: var(--text-on-primary);--cw-fab-bg: var(--primary);--cw-fab-shadow: color-mix(in srgb, var(--primary) 30%, transparent);--cw-scrollbar: var(--border)}.chat-panel.svelte-zsv8oa{display:flex;flex-direction:column;height:100%;background:var(--cw-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--cw-border);border-radius:1rem;overflow:hidden}.chat-header.svelte-zsv8oa{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--cw-header-bg);color:var(--cw-header-text);font-weight:600;font-size:.875rem}.header-actions.svelte-zsv8oa{display:flex;align-items:center;gap:4px}.icon-btn.svelte-zsv8oa{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;transition:color .15s,background .15s}.icon-btn.svelte-zsv8oa:hover{color:var(--cw-header-text);background:color-mix(in srgb,var(--text) 10%,transparent)}.close-btn.svelte-zsv8oa{background:transparent;border:none;color:var(--cw-header-text);cursor:pointer;font-size:1rem;line-height:1;padding:.25rem;opacity:.75;transition:opacity .15s}.close-btn.svelte-zsv8oa:hover{opacity:1}.messages-area.svelte-zsv8oa{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem;min-height:0;max-height:480px;background:var(--cw-bg)}.empty-state.svelte-zsv8oa{text-align:center;color:var(--cw-empty-color);font-size:.875rem;padding:2rem 1rem}.message.svelte-zsv8oa{display:flex}.message.user.svelte-zsv8oa{justify-content:flex-end}.message.assistant.svelte-zsv8oa{justify-content:flex-start}.bubble.svelte-zsv8oa{max-width:80%;padding:.625rem .875rem;border-radius:1rem;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.message.user.svelte-zsv8oa .bubble:where(.svelte-zsv8oa){background:var(--cw-user-bubble-bg);color:var(--cw-user-bubble-text);border-bottom-right-radius:.25rem}.message.assistant.svelte-zsv8oa .bubble:where(.svelte-zsv8oa){background:var(--cw-asst-bubble-bg);color:var(--cw-asst-bubble-text);border-bottom-left-radius:.25rem}.typing.svelte-zsv8oa{display:flex;gap:.3rem;align-items:center;padding:.75rem 1rem}.typing.svelte-zsv8oa span:where(.svelte-zsv8oa){width:6px;height:6px;background:var(--cw-typing-dot);border-radius:50%;animation:svelte-zsv8oa-bounce 1.2s infinite ease-in-out}.typing.svelte-zsv8oa span:where(.svelte-zsv8oa):nth-child(1){animation-delay:0s}.typing.svelte-zsv8oa span:where(.svelte-zsv8oa):nth-child(2){animation-delay:.2s}.typing.svelte-zsv8oa span:where(.svelte-zsv8oa):nth-child(3){animation-delay:.4s}@keyframes svelte-zsv8oa-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-6px);opacity:1}}.error-banner.svelte-zsv8oa{padding:.5rem 1rem;background:color-mix(in srgb,var(--error) 15%,transparent);border-top:1px solid color-mix(in srgb,var(--error) 25%,transparent);color:var(--error);font-size:.8rem}.input-row.svelte-zsv8oa{display:flex;gap:.5rem;padding:.75rem;border-top:1px solid var(--cw-footer-border);background:var(--cw-footer-bg)}.input-row.svelte-zsv8oa textarea:where(.svelte-zsv8oa){flex:1;background:var(--cw-textarea-bg);border:1px solid var(--cw-textarea-border);border-radius:.5rem;padding:.5rem .75rem;color:var(--cw-textarea-text);font-size:.875rem;resize:none;outline:none;transition:border-color .15s;font-family:inherit}.input-row.svelte-zsv8oa textarea:where(.svelte-zsv8oa)::-moz-placeholder{color:var(--cw-textarea-ph)}.input-row.svelte-zsv8oa textarea:where(.svelte-zsv8oa)::placeholder{color:var(--cw-textarea-ph)}.input-row.svelte-zsv8oa textarea:where(.svelte-zsv8oa):focus{border-color:var(--cw-textarea-focus)}.input-row.svelte-zsv8oa button:where(.svelte-zsv8oa){background:var(--cw-send-bg);border:none;border-radius:.5rem;color:var(--cw-send-text);font-weight:700;padding:.5rem 1rem;cursor:pointer;white-space:nowrap;transition:opacity .15s;align-self:flex-end}.input-row.svelte-zsv8oa button:where(.svelte-zsv8oa):disabled{opacity:.4;cursor:not-allowed}.input-row.svelte-zsv8oa button:where(.svelte-zsv8oa):not(:disabled):hover{opacity:.82}.floating-wrapper.svelte-zsv8oa{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;width:-moz-fit-content;width:fit-content;pointer-events:none}.floating-panel.svelte-zsv8oa{width:360px;height:520px;box-shadow:0 20px 60px #00000040;pointer-events:auto}.floating-panel.opening.svelte-zsv8oa{animation:svelte-zsv8oa-panel-glow .65s ease-out forwards}@keyframes svelte-zsv8oa-panel-glow{0%{box-shadow:0 20px 60px #00000040,0 0 #f59e0b99}35%{box-shadow:0 20px 60px #00000040,0 0 0 10px #f59e0b59}to{box-shadow:0 20px 60px #00000040,0 0 0 18px #f59e0b00}}.fab.svelte-zsv8oa{width:3.25rem;height:3.25rem;border-radius:50%;background:var(--cw-fab-bg);border:none;color:var(--cw-send-text);font-size:1.25rem;cursor:pointer;box-shadow:0 4px 20px var(--cw-fab-shadow);transition:transform .15s,box-shadow .15s;display:flex;align-items:center;justify-content:center;pointer-events:auto}.fab.svelte-zsv8oa:hover{transform:scale(1.08);box-shadow:0 6px 28px var(--cw-fab-shadow)}.messages-area.svelte-zsv8oa::-webkit-scrollbar{width:4px}.messages-area.svelte-zsv8oa::-webkit-scrollbar-track{background:transparent}.messages-area.svelte-zsv8oa::-webkit-scrollbar-thumb{background:var(--cw-scrollbar);border-radius:2px}
