:host { all:initial; position:fixed!important; inset:auto 24px 24px auto!important; z-index:2147483647!important; font:14px/1.5 Arial,Helvetica,sans-serif; color:#171717; text-align:left; color-scheme:light; }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
button,input,textarea { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:wait; opacity:.55; }
button,a,input,textarea { -webkit-tap-highlight-color:transparent; }
button:focus-visible,a:focus-visible { outline:2px solid #128345; outline-offset:3px; }
.launcher { display:flex; align-items:center; gap:9px; min-height:50px; padding:0 19px; background:#fff; border:1px solid #dedede; border-radius:28px; color:#111; box-shadow:0 4px 24px #0003; font-weight:700; }
svg { display:block; flex:none; width:21px; height:21px; }
.panel { position:absolute; bottom:66px; right:0; width:380px; height:min(620px,calc(var(--chat-viewport,100dvh) - 115px)); max-height:740px; display:flex; flex-direction:column; overflow:hidden; border:1px solid #dedede; border-radius:18px; background:#fff; box-shadow:0 12px 48px #0004; }
.panel-content { display:flex; flex:1; flex-direction:column; min-height:0; overflow:hidden; }
header { flex:none; display:flex; align-items:center; justify-content:space-between; padding:19px 20px; background:#101111; color:white; }
.brand { font-size:19px; font-weight:800; letter-spacing:-.5px; }
.badge { display:flex; align-items:center; gap:6px; font-size:12px; color:#c4c9c6; margin-top:2px; }
.badge { display:block; max-width:165px; font-size:11px; }
.identity { display:flex; align-items:center; gap:11px; min-width:0; }
.identity > div { min-width:0; }
.avatars { display:inline-flex; align-items:center; flex:none; padding-inline-start:0; }
.avatar { display:grid; place-items:center; width:27px; height:27px; border:2px solid #101111; border-radius:50%; background:#e8ebe9; color:#535e57; overflow:hidden; }
.avatar + .avatar { margin-inline-start:-8px; }
.avatar:nth-child(2) { background:#c7d2ca; color:#38483e; }
.avatar:nth-child(3) { background:#acbbb1; color:#25382c; }
.avatar svg { width:24px; height:24px; margin-top:5px; }
.close { flex:none; }
.toolbar { display:flex; align-items:center; justify-content:space-between; flex:none; padding:8px 17px; border-bottom:1px solid #e9ecea; background:#fafbfa; }
.toolbar-button { border:0; background:transparent; color:#526359; font-size:11px; padding:4px 0; text-align:start; }
.end-chat { color:#626662; }
.team-footer { display:flex; align-items:center; justify-content:space-between; gap:9px; flex:none; padding:11px 16px; background:#fafbfa; border-top:1px solid #e9ecea; font-size:10px; color:#6c776f; }
.team-label { display:flex; align-items:center; gap:7px; min-width:0; }
.team-footer .avatar { width:23px; height:23px; border-color:#fafbfa; }
.team-footer .avatar svg { width:19px; height:19px; }
.avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.team-footer .avatar { width:28px; height:28px; }
.suggestions.billing-options,.suggestions.report-actions { flex-direction:row; flex-wrap:wrap; }
.report-actions [data-action="issue_submit"] { background:#171a18; color:white; border-color:#171a18; }
.contact-team { border:0; background:transparent; color:#324b3c; font-size:11px; text-align:end; padding:0; }
.reply-actions { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.chat-link { display:inline-block; border:1px solid #d7e0da; background:#fff; padding:7px 10px; border-radius:8px; font-size:11px; font-weight:700; color:#294c37; text-decoration:none; }
.chat-link:hover { background:#f0f6f2; }
.handoff { margin-bottom:8px; }
.ended-bar { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 17px; border-top:1px solid #e9ecea; font-size:12px; color:#69736c; }
.history-row { display:flex; gap:8px; border:1px solid #e0e5e1; border-radius:10px; margin-bottom:10px; overflow:hidden; }
.history-open { flex:1; min-width:0; text-align:start; border:0; padding:12px; background:white; color:#202722; }
.history-open:hover { background:#f3f7f4; }
.history-open strong { display:block; font-size:12px; font-weight:600; overflow-wrap:anywhere; }
.history-meta { display:block; font-size:10px; color:#7b857e; margin-top:5px; }
.history-delete { flex:none; align-self:center; border:0; background:transparent; color:#7e867f; padding:10px; font-size:19px; }
.storage-note,.failed { color:#8b6244; font-size:11px; padding:4px 16px; margin:0; }
.close { display:grid; place-items:center; width:34px; height:34px; border:1px solid #ffffff25; border-radius:9px; color:white; background:#ffffff0b; font-size:23px; line-height:1; }
.body { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:23px 20px; scrollbar-width:thin; }
h2 { font-size:24px; line-height:1.2; letter-spacing:-.7px; margin:0 0 9px; }
.intro { margin:0 0 23px; color:#656969; }
label { display:block; margin:15px 0 6px; font-size:12px; font-weight:700; }
input { width:100%; min-height:46px; padding:11px 12px; border:1px solid #d9dcdc; border-radius:9px; background:#fff; color:#171717; outline:none; font-size:16px; }
input:focus,textarea:focus { border-color:#78877e; box-shadow:0 0 0 2px #c5f2d6; }
.primary { width:100%; margin-top:21px; min-height:46px; border:1px solid #111; border-radius:9px; background:#111; color:#fff; font-weight:700; padding:10px 14px; }
.privacy { flex:none; text-align:center; color:#7b8080; font-size:11px; padding:10px 18px 13px; border-top:1px solid #eff0f0; background:#fff; }
.intake-note { margin:15px 0 0; text-align:center; color:#7b8080; font-size:12px; }
.message { margin-bottom:15px; max-width:91%; overflow-wrap:anywhere; }
.message .who { font-size:10px; font-weight:700; color:#7b8080; margin-bottom:5px; }
.bubble { padding:11px 13px; border-radius:12px 12px 12px 3px; background:#f1f3f2; white-space:pre-wrap; }
.message.user { margin-left:auto; }
.user .who { text-align:right; }
.user .bubble { background:#171a18; color:white; border-radius:12px 12px 3px 12px; }
.suggestions { display:flex; align-items:flex-start; flex-direction:column; gap:8px; padding:1px 0 12px; }
.chip { text-align:start; border:1px solid #dce3df; border-radius:10px; padding:9px 12px; background:white; color:#222; font-size:12px; max-width:100%; }
.chip:hover { background:#f2f7f4; border-color:#98b2a1; }
.plans { flex-direction:row; flex-wrap:wrap; }
.plans .chip { min-width:65px; text-align:center; font-weight:700; }
.guide { display:inline-block; font-size:12px; color:#136535; margin-top:8px; }
.composer { flex:none; padding:12px 15px 10px; border-top:1px solid #e9ecea; background:white; }
.compose-row { display:flex; align-items:flex-end; gap:9px; }
textarea { display:block; flex:1; min-width:0; width:100%; height:45px; max-height:100px; resize:vertical; border:1px solid #d9dcdc; outline:none; border-radius:10px; padding:11px 12px; font-size:16px; line-height:21px; color:#171717; background:#fff; }
.send { display:grid; place-items:center; flex:none; width:44px; height:45px; border:0; border-radius:10px; background:#171a18; color:#fff; }
.notice { color:#738078; font-size:11px; margin:9px 0 0; }
.status { margin:0; padding:10px 18px; font-size:12px; background:#f7f7f7; border-top:1px solid #eee; color:#555; }
.status.error { color:#8b302c; background:#fff5f4; }
.retry { border:0; padding:0 0 0 8px; background:transparent; text-decoration:underline; color:inherit; font-weight:700; }
.reset { display:block; margin:5px auto 0; border:0; background:transparent; font-size:11px; color:#666; text-decoration:underline; }
.trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media(max-width:600px) {
  :host { right:max(12px,env(safe-area-inset-right))!important; bottom:max(14px,env(safe-area-inset-bottom))!important; }
  .launcher { min-height:48px; padding:0 15px; font-size:12px; }
  .panel { width:min(380px,calc(100vw - 24px)); bottom:61px; height:min(600px,calc(var(--chat-viewport,100dvh) - 96px)); border-radius:15px; }
  header { padding:15px 17px; }
  .body { padding:20px 16px; }
  h2 { font-size:23px; }
}
@media(prefers-reduced-motion:no-preference) { .panel { animation:appear .15s ease-out; } @keyframes appear { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } } }
.launcher { position:relative; transition:background .2s,color .2s; }
.launcher.has-unread { background:#d7ffe8; border-color:#21a96a; color:#064626; box-shadow:0 4px 26px #11915140; }
.unread-badge { position:absolute; top:-7px; right:-5px; display:grid; place-items:center; min-width:23px; height:23px; padding:0 5px; border-radius:20px; border:2px solid white; background:#0e8251; color:white; font-size:11px; }
.invitation-preview { position:absolute; bottom:67px; right:0; display:flex; align-items:flex-start; gap:8px; width:min(330px,calc(100vw - 26px)); padding:16px; border:1px solid #bbdfcc; border-radius:16px; background:#fffffff0; backdrop-filter:blur(16px); box-shadow:0 10px 34px #073e2524; }
.preview-message { flex:1; min-width:0; border:0; background:transparent; text-align:start; color:#23372c; padding:0; line-height:1.6; }
.preview-message strong,.preview-message span { display:block; }
.preview-message strong { margin-bottom:5px; font-size:11px; color:#157d4c; }
.preview-dismiss { border:0; background:transparent; color:#64786b; font-size:20px; line-height:1; padding:0 0 8px 8px; }
.invitation-intake { border:1px solid #c8e2d3; background:#effaf4; border-radius:12px; padding:15px; margin-bottom:22px; }
.invitation-intake p { white-space:pre-wrap; overflow-wrap:anywhere; max-height:170px; overflow:auto; }
.invitation-intake small { display:block; color:#536a5c; }
.invitation-intake .chip { margin-top:12px; padding:5px 10px; }
.privacy-link { display:block; font-size:10px; color:#617267; line-height:1.6; margin-top:15px; }
.message.system { max-width:100%; text-align:center; }
.system-event { font-size:11px; color:#62736a; padding:5px; }
.receipt,.typing { display:block; font-size:10px; color:#6c8073; margin:5px 0 9px; }
.panel{animation:none!important}
.bot-brief{margin:12px 0;padding:12px;border:1px solid #dce7df;border-radius:12px;background:#f5faf5;font-size:12px}.bot-brief summary{cursor:pointer;font-weight:650}.bot-brief label{display:block;margin:12px 0 5px}.bot-brief input,.bot-brief select,.bot-brief textarea{box-sizing:border-box;width:100%;padding:9px;border:1px solid #cfdcd3;border-radius:8px;background:white;color:#173326;font-family:inherit;font-size:14px;line-height:1.5}.bot-brief textarea{min-height:70px;resize:vertical}.bot-brief .chip{margin-top:12px}
.chat-screenshot{display:block;max-width:100%;max-height:220px;object-fit:contain;border-radius:10px;border:1px solid #d4e1d5;background:#f4f8f2}.screenshot-link{display:inline-block;max-width:100%;margin:8px 0}.screenshot-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:9px}.screenshot-tools .small{border:1px solid #cfded2;border-radius:7px;background:#f5faf3;color:#284b32;padding:7px 10px;font-size:11px;cursor:pointer}.upload-status{font-size:10px;color:#718173;overflow-wrap:anywhere}

.image-draft{width:60px;height:48px;object-fit:contain;border-radius:6px;background:#f0f5f1}.owner-status{font-size:11px;color:#c4dacb;margin-top:3px}
.owner-status{display:flex;align-items:center;gap:6px}.owner-status::before{content:'';width:7px;height:7px;flex:none;border-radius:50%;background:#edaa47}.owner-status.is-online::before{background:#44d486}
@media(max-width:600px){
 input,textarea,select,.bot-brief input,.bot-brief textarea,.bot-brief select{font-size:16px!important}
 :host([data-open]){inset:var(--chat-top,0px) auto auto var(--chat-left,0px)!important;width:var(--chat-width,100vw)!important;height:var(--chat-viewport,100dvh)!important;pointer-events:none;transform:none!important}
 :host([data-open]) .panel{pointer-events:auto;inset:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom)) 8px;width:auto;height:auto;max-height:none;min-height:0;border-radius:16px}
 :host([data-open]) .launcher,:host([data-open]) .invitation-preview{display:none!important}
 .panel header{padding:12px 16px}.body{min-height:0;overscroll-behavior:contain}.composer{flex:none;padding:10px 12px}.composer textarea{max-height:90px}.team-footer{padding:7px 12px}
 :host([data-keyboard]) .team-footer{display:none}.screenshot-tools .small{font-size:12px}.upload-status{font-size:11px}
}

.bot-quote{margin:14px 0;padding:16px;border:1px solid #b8d9c4;border-radius:14px;background:#f2faf5;color:#183b28}.bot-quote h3{font-size:15px}.quote-price{font-size:24px;font-weight:750;margin:10px 0}.quote-scope{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6}.bot-quote .primary{padding:12px 18px;border-radius:10px;background:#167b50;color:white;border:0;cursor:pointer}.bot-quote .notice{display:block;line-height:1.6}

@media(max-width:600px){.panel{box-shadow:0 5px 20px #0002}.invitation-preview{backdrop-filter:none}.body{contain:content}}

/* A dismissible, compact offer preview, without a full-page blur layer. */
.invitation-preview{backdrop-filter:none;-webkit-backdrop-filter:none}
.offer-preview{background:#fff;border-color:#ddd9f5;box-shadow:0 8px 24px #2118461c;padding:18px;border-radius:16px}
.offer-preview .preview-message{color:#29243f;line-height:1.4}.offer-preview .preview-message strong{font-size:9px;letter-spacing:1px;color:#7055c9}.offer-preview .preview-offer-title{font-weight:650;font-size:13px;margin:8px 0}.offer-preview .preview-offer-price{font-size:22px;font-weight:800;letter-spacing:-.5px;color:#302845}.offer-preview .preview-offer-action{margin-top:12px;padding:9px 14px;border-radius:8px;background:#635bff;color:#fff;text-align:center;font-size:12px;font-weight:700}.offer-preview .preview-dismiss{padding:4px;min-width:28px;min-height:28px;color:#787086}
.launcher,.panel .close{touch-action:manipulation}.panel .close{min-width:44px;min-height:44px}.panel{contain:layout style}
