.ceth-chat { position:fixed; right:24px; bottom:max(20px,env(safe-area-inset-bottom)); z-index:90; font:400 14px/1.4 Roboto,Arial,sans-serif; color:#ededee; }
.ceth-chat [hidden] { display:none !important; }
.ceth-chat *, .ceth-chat *::before, .ceth-chat *::after { box-sizing:border-box; }
.ceth-chat button, .ceth-chat textarea { font:inherit; }
.ceth-chat button { cursor:pointer; }
.ceth-chat button:disabled { cursor:default; }
.ceth-chat button:focus-visible, .ceth-chat a:focus-visible { outline:2px solid #2dc6ff; outline-offset:3px; }
.ceth-chat textarea:focus-visible { outline:none; }
.ceth-chat svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.ceth-chat-launcher { position:relative; width:48px; height:48px; border:0; border-radius:50%; display:grid; place-items:center; margin-left:auto; background:#1fc2fd; color:#071015; box-shadow:0 4px 14px #0002; transition:background .2s,transform .2s; }
.ceth-chat-launcher:hover { background:#44ceff; transform:translateY(-2px); }
.ceth-chat-launcher svg { grid-area:1/1; width:24px; height:24px; transition:opacity .2s,transform .2s; }
.ceth-chat-close-icon { opacity:0; transform:rotate(-90deg); }
.ceth-chat-launcher[aria-expanded="true"] .ceth-chat-open-icon { opacity:0; transform:rotate(90deg); }
.ceth-chat-launcher[aria-expanded="true"] .ceth-chat-close-icon { opacity:1; transform:rotate(0); }
.ceth-chat-panel { position:absolute; right:0; bottom:64px; width:400px; height:min(704px,calc(100dvh - 104px)); max-height:704px; display:flex; flex-direction:column; overflow:hidden; border:1px solid #303235; border-radius:24px; background:#141618; box-shadow:0 10px 30px #0003; transform-origin:bottom right; transition:width .2s ease,height .2s ease; }
.ceth-chat-panel.is-expanded { width:min(640px,calc(100vw - 48px)); height:calc(100dvh - 104px); max-height:900px; }
.ceth-chat-header { flex:none; display:flex; align-items:center; gap:8px; min-height:54px; padding:9px 16px; border-bottom:1px solid #303235; }
.ceth-chat-icon { display:grid; place-items:center; flex:none; width:28px; height:28px; padding:4px; border:0; background:transparent; color:#94979b; border-radius:6px; transition:color .15s,background .15s; }
.ceth-chat-icon:hover:not(:disabled) { color:#fff; background:#ffffff0b; }
.ceth-chat-icon:disabled { opacity:.48; }
.ceth-chat-avatar { position:relative; width:32px; height:32px; flex:none; }
.ceth-chat-avatar img { width:32px; height:32px; border-radius:50%; background:#080b0e; }
.ceth-chat-avatar>span { position:absolute; bottom:0; right:-1px; width:9px; height:9px; border:2px solid #141618; border-radius:50%; background:#efc343; }
.ceth-chat-identity { flex:1; min-width:0; }
.ceth-chat-identity h2 { font:600 14px/17px Roboto,Arial,sans-serif; margin:0; }
.ceth-chat-identity p { display:flex; align-items:center; gap:4px; font-size:12px; line-height:16px; color:#a7a8ac; margin:0; }
.ceth-chat-clock { width:10px; height:10px; border:1.5px solid currentColor; border-radius:50%; position:relative; }
.ceth-chat-clock::after { content:""; position:absolute; left:3px; top:1px; width:3px; height:4px; border-left:1px solid currentColor; border-bottom:1px solid currentColor; }
.ceth-chat-conversation { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; padding:18px 15px; scrollbar-width:thin; scrollbar-color:#404347 transparent; }
.ceth-chat-intro { margin:0 0 24px; color:#a6a8ad; text-align:center; font-size:13px; }
.ceth-chat-bubble { margin:0; padding:13px 16px; border-radius:20px; background:#292b2e; font-size:14px; line-height:20px; overflow-wrap:anywhere; white-space:pre-wrap; }
.ceth-chat-welcome { max-width:312px; }
.ceth-chat-bubble a { text-decoration:underline; text-underline-offset:2px; }
.ceth-chat-caption { margin:4px 15px 0; font-size:12px; color:#a5a7ab; }
.ceth-chat-bottom { flex:none; padding:12px 15px 15px; }
.ceth-chat-composer { border:1px solid #323438; border-radius:18px; padding:12px 12px 8px; position:relative; }
.ceth-chat-composer:focus-within { border-color:#696c72; }
.ceth-chat-composer textarea { display:block; resize:none; min-height:34px; max-height:80px; width:100%; border:0; outline:none; background:transparent; color:#ededee; font-size:14px; line-height:20px; padding:1px 3px; }
.ceth-chat-composer textarea::placeholder { color:#a5a7aa; opacity:1; }
.ceth-chat-composer textarea:disabled { opacity:1; cursor:not-allowed; -webkit-text-fill-color:#a5a7aa; }
.ceth-chat-tools { display:flex; align-items:center; gap:2px; }
.ceth-chat-send { display:grid; place-items:center; margin-left:auto; width:32px; height:32px; border:1px solid #3b3d40; border-radius:50%; color:#8f9297; background:#292c2f; transition:background .15s,color .15s; }
.ceth-chat-send:not(:disabled) { color:white; background:#2463eb; border-color:#2463eb; }
.ceth-chat-note { color:#96999f; font-size:11px; margin:5px 0 7px; text-align:center; }
.ceth-chat-privacy { display:flex; align-items:center; gap:4px; border-radius:14px; background:#292b2e; padding:12px; color:#aaacb1; font-size:12px; line-height:16px; }
.ceth-chat-privacy p { margin:0; }
.ceth-chat-privacy a { text-decoration:underline; text-underline-offset:2px; }
.ceth-chat-privacy .ceth-chat-icon { width:28px; height:28px; padding:4px; flex:0 0 28px; }
.ceth-chat-options { position:absolute; top:56px; right:48px; z-index:2; padding:0; border:1px solid #303235; background:#141618; box-shadow:0 4px 12px #0002; border-radius:12px; overflow:hidden; }
.ceth-chat-options button { display:flex; align-items:center; gap:9px; width:100%; padding:12px 16px; border:0; text-align:left; color:#eee; background:transparent; font-size:13px; font-weight:500; }
.ceth-chat-options button:hover { background:#ffffff08; }
.ceth-chat-options svg { width:15px; height:15px; }
.ceth-chat-sr { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
body.modal-open .ceth-chat { visibility:hidden; }
@media(max-width:480px) {
  .ceth-chat { right:12px; bottom:max(12px,env(safe-area-inset-bottom)); }
  .ceth-chat-panel { width:calc(100vw - 24px); height:min(704px,calc(100dvh - 92px)); bottom:60px; border-radius:22px; }
  .ceth-chat-panel.is-expanded { width:calc(100vw - 24px); height:calc(100dvh - 84px); }
  .ceth-chat-header { padding:9px 12px; }
  .ceth-chat-composer textarea { font-size:16px; }
}
@media(max-height:520px) { .ceth-chat-panel { bottom:56px; height:calc(100dvh - 80px); } .ceth-chat-privacy { display:none; } .ceth-chat-bottom { padding-top:4px; } .ceth-chat-composer textarea { min-height:20px; height:20px; } }
@media(prefers-reduced-motion:reduce) { .ceth-chat *, .ceth-chat *::before,.ceth-chat *::after { transition:none!important; } }
.ceth-chat-options { transform-origin:top right; }

.ceth-chat-avatar.is-online>span{background:#13c794}.ceth-chat-message{max-width:88%;margin-bottom:16px}.ceth-chat-message.visitor{margin-left:auto}.ceth-chat-message.visitor .ceth-chat-bubble{background:#143f50}.ceth-chat-message.visitor .ceth-chat-caption{text-align:right}.ceth-chat-message img,.ceth-chat-message video{display:block;max-width:100%;max-height:240px;border-radius:10px;margin-top:8px}.ceth-chat-message audio{display:block;width:100%;max-width:260px;margin-top:8px}.ceth-chat-categories{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:14px 0}.ceth-chat-categories button{border:1px solid #1fc2fd70;border-radius:16px;background:#152a32;color:#75dcff;padding:9px 12px;font:inherit}.ceth-chat-response{text-align:center;padding:20px 5px;color:#b4b7ba;font-size:12px}.ceth-chat-response strong,.ceth-chat-response span{display:block;margin:5px 0}.ceth-chat-response strong{color:#eee;font-size:14px}.ceth-chat-response em{color:#1fc2fd;font-style:normal}.ceth-chat-pending{display:flex;flex-wrap:wrap;gap:5px;margin:5px 0}.ceth-chat-pending>span{padding:4px 7px;background:#26373e;border-radius:6px;font-size:11px}.ceth-chat-pending button{border:0;color:#ddd;background:none;padding:0 3px}.ceth-chat-note.is-error{color:#ff9aa5}.ceth-chat-teaser{position:absolute;right:0;bottom:64px;width:min(304px,calc(100vw - 24px));display:flex;gap:12px;padding:18px;border:1px solid #34383a;border-radius:16px;background:#171b1e;color:#ddd;box-shadow:0 8px 25px #0003;animation:ceth-invite .25s ease-out}.ceth-chat-teaser button{border:0;background:none;color:inherit;text-align:left;font:inherit;padding:0}.ceth-chat-teaser [data-chat-teaser-close]{align-self:flex-start;font-size:20px;color:#999}.ceth-chat-send:not(:disabled){background:#1fc2fd;border-color:#1fc2fd;color:#071015}@keyframes ceth-invite{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.ceth-chat-teaser{animation:none}}

.ceth-chat-categories button { text-align:left; transition:background .18s,border-color .18s,transform .18s; }
.ceth-chat-categories button:hover { background:#1c3c48; border-color:#1fc2fd; transform:translateX(3px); }
.ceth-chat-categories button:active { transform:scale(.97); }
.ceth-chat-message { transform-origin:bottom left; }
.ceth-chat-message .ceth-chat-bubble:not(:has(img,video,audio)) { width:fit-content; max-width:100%; }
.ceth-chat-message.visitor .ceth-chat-bubble { margin-left:auto; }
.ceth-chat-message.visitor { transform-origin:bottom right; }
.ceth-chat-teaser { font-family:Gilroy,Arial,sans-serif; background:rgba(20,24,27,.64); border-color:rgba(255,255,255,.14); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
.ceth-chat-teaser>div { min-width:0; width:100%; }
.ceth-chat-teaser [data-chat-teaser-close] { position:absolute; top:12px; right:14px; }
.ceth-chat-teaser strong { display:block; padding-right:18px; color:#f1f4f6; font-size:16px; font-weight:600; line-height:1.4; }
.ceth-chat-teaser p { margin:8px 0 14px; font-size:15px; font-weight:400; line-height:1.5; color:#b2b8bd; }
.ceth-chat-teaser [data-chat-invite] { display:flex; align-items:center; justify-content:center; width:238px; max-width:100%; height:48px; background:#1fc2fd; color:var(--color-background,#0c0c0c); padding:12px 24px; border-radius:9999px; font-size:16px; line-height:24px; font-weight:600; transition:background .2s; }
.ceth-chat-teaser [data-chat-invite]:hover { background:var(--color-accentsecondary); }
.ceth-chat-teaser::after { content:""; position:absolute; bottom:-7px; right:18px; width:12px; height:12px; background:rgba(20,24,27,.64); border-right:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); transform:rotate(45deg); }

.ceth-chat-unread { position:absolute; top:-5px; right:-5px; min-width:21px; height:21px; padding:0 5px; display:grid; place-items:center; border:2px solid #0d0d0d; border-radius:999px; background:#ed5267; color:#fff; font:600 11px/1 Gilroy,Arial,sans-serif; box-shadow:0 2px 8px #0003; pointer-events:none; }
