:root{--cm-font:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;--cm-primary:#0f766e;--cm-accent:#0ea5a4;--cm-bg:#fff;--cm-text:#0f172a;--cm-muted:#64748b;--cm-border:#e2e8f0;--cm-radius:16px;--cm-shadow:0 10px 30px rgba(0,0,0,.15)}.cmcb-hidden{display:none !important}.cmcb-fab{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;background:var(--cm-primary);color:#fff;border:none;box-shadow:var(--cm-shadow);cursor:pointer;display:grid;place-items:center;z-index:2147483000}.cmcb-fab svg{width:28px;height:28px;fill:#fff}.cmcb-panel{position:fixed;right:20px;bottom:90px;width:360px;max-width:calc(100vw - 32px);height:520px;background:var(--cm-bg);color:var(--cm-text);border:1px solid var(--cm-border);border-radius:var(--cm-radius);box-shadow:var(--cm-shadow);overflow:hidden;z-index:2147483001;display:flex;flex-direction:column;animation:cmcb-pop .16s ease-out}.cmcb-header{background:linear-gradient(135deg,var(--cm-primary),var(--cm-accent));color:#fff;padding:16px;display:flex;align-items:center;justify-content:space-between}.cmcb-brand{display:flex;flex-direction:column;gap:2px;font-family:var(--cm-font)}.cmcb-brand .title{font-weight:700;font-size:16px;line-height:1.2}.cmcb-brand .subtitle{font-weight:400;font-size:12px;opacity:.9}.cmcb-close{background:0 0;border:none;color:#fff;cursor:pointer;font-size:20px}.cmcb-content{display:flex;flex-direction:column;height:100%}.cmcb-language{padding:12px 12px 0;font-family:var(--cm-font)}.cmcb-select{width:100%;border:1px solid var(--cm-border);border-radius:10px;padding:10px;font-family:var(--cm-font)}.cmcb-messages{flex:1;padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;font-family:var(--cm-font)}.cmcb-msg{max-width:80%;padding:10px 12px;border-radius:12px;font-size:14px;line-height:1.35;border:1px solid var(--cm-border)}.cmcb-bot{background:#f8fafc;color:var(--cm-text)}.cmcb-user{background:var(--cm-primary);color:#fff;align-self:flex-end;border-color:transparent}.cmcb-input-row{display:flex;gap:8px;padding:12px;border-top:1px solid var(--cm-border);background:#fff}.cmcb-input{flex:1;border:1px solid var(--cm-border);border-radius:999px;padding:10px 14px;font-family:var(--cm-font);font-size:14px;outline:none}.cmcb-send{border:none;border-radius:999px;padding:0 16px;background:var(--cm-primary);color:#fff;font-family:var(--cm-font);cursor:pointer}@keyframes cmcb-pop{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}