:root {
  --lead-chat-accent: #dca42b;
  --lead-chat-accent-strong: #f2b84b;
  --lead-chat-surface: #0d1c2f;
  --lead-chat-surface-2: #122741;
  --lead-chat-text: #f8f1e5;
  --lead-chat-muted: #b6c2d2;
  --lead-chat-border: rgba(255,255,255,.14);
}

body[data-landing-model="b"] {
  --lead-chat-accent: #2c4bff;
  --lead-chat-accent-strong: #7190ff;
  --lead-chat-surface: #ffffff;
  --lead-chat-surface-2: #f4f6ff;
  --lead-chat-text: #121418;
  --lead-chat-muted: #5d6474;
  --lead-chat-border: rgba(18,20,24,.13);
}

.lead-chat-launcher {
  position: fixed; z-index: 70; right: 24px; bottom: 24px; width: 62px; height: 62px;
  display: grid; place-items: center; border: 0; border-radius: 999px; cursor: pointer;
  color: #fff; background: var(--lead-chat-accent); box-shadow: 0 16px 38px rgba(0,0,0,.28);
  transition: transform .18s ease, box-shadow .18s ease;
}
.lead-chat-launcher:hover { transform: translateY(-2px) scale(1.02); box-shadow: 0 20px 42px rgba(0,0,0,.34); }
.lead-chat-launcher:focus-visible, .lead-chat-close:focus-visible, .lead-chat-send:focus-visible, .lead-chat-form button:focus-visible { outline: 3px solid var(--lead-chat-accent-strong); outline-offset: 3px; }
.lead-chat-launcher svg { width: 27px; height: 27px; }
.lead-chat-pulse { position: absolute; inset: -7px; border: 1px solid var(--lead-chat-accent); border-radius: inherit; opacity: .45; animation: lead-chat-pulse 2.5s ease-out infinite; }
@keyframes lead-chat-pulse { 0% { transform: scale(.78); opacity:.7 } 80%,100% { transform:scale(1.27); opacity:0 } }

.lead-chat-overlay { position:fixed; z-index:80; inset:0; display:flex; align-items:flex-end; justify-content:flex-end; padding:16px; background:rgba(5,10,18,.38); backdrop-filter: blur(4px); }
.lead-chat-panel { width:min(430px,100%); height:min(650px,calc(100dvh - 32px)); min-height:440px; display:flex; flex-direction:column; overflow:hidden; border:1px solid var(--lead-chat-border); border-radius:24px; color:var(--lead-chat-text); background:var(--lead-chat-surface); box-shadow:0 28px 70px rgba(0,0,0,.35); }
.lead-chat-head { display:flex; align-items:flex-start; gap:12px; padding:18px 18px 15px; border-bottom:1px solid var(--lead-chat-border); background:var(--lead-chat-surface); }
.lead-chat-kicker { margin:0 0 7px; color:var(--lead-chat-accent); font:500 10px/1.2 var(--font-mono, monospace); letter-spacing:.14em; text-transform:uppercase; }
.lead-chat-head h2 { margin:0; font-family:var(--font-display, inherit); font-size:25px; line-height:1.02; letter-spacing:-.035em; }
.lead-chat-head p:last-child { margin:9px 0 0; color:var(--lead-chat-muted); font:400 13px/1.45 var(--font-body, Arial, sans-serif); }
.lead-chat-close { flex:0 0 auto; width:35px; height:35px; margin-left:auto; border:1px solid var(--lead-chat-border); border-radius:50%; color:var(--lead-chat-text); background:transparent; cursor:pointer; font-size:23px; line-height:1; }
.lead-chat-body { min-height:0; flex:1; overflow:auto; padding:17px; background:var(--lead-chat-surface-2); }
.lead-chat-form { display:grid; gap:11px; }
.lead-chat-field { display:grid; gap:5px; color:var(--lead-chat-text); font:500 11px/1.25 var(--font-mono, monospace); letter-spacing:.07em; text-transform:uppercase; }
.lead-chat-field input, .lead-chat-compose textarea { box-sizing:border-box; width:100%; border:1px solid var(--lead-chat-border); border-radius:12px; color:var(--lead-chat-text); background:var(--lead-chat-surface); font:400 14px/1.35 var(--font-body, Arial, sans-serif); }
.lead-chat-field input { height:43px; padding:0 12px; }
.lead-chat-field input:focus, .lead-chat-compose textarea:focus { border-color:var(--lead-chat-accent); outline:none; }
.lead-chat-privacy, .lead-chat-feedback, .lead-chat-status { margin:2px 0; color:var(--lead-chat-muted); font:400 12px/1.45 var(--font-body, Arial, sans-serif); }
.lead-chat-feedback[data-state="error"] { color:#e86c6c; }
.lead-chat-form button, .lead-chat-send { min-height:44px; border:0; border-radius:12px; cursor:pointer; color:#fff; background:var(--lead-chat-accent); font:600 13px/1 var(--font-body, Arial, sans-serif); }
.lead-chat-form button:disabled, .lead-chat-send:disabled { cursor:wait; opacity:.6; }
.lead-chat-messages { display:grid; gap:10px; align-content:start; min-height:100%; }
.lead-chat-message { max-width:88%; padding:11px 13px; border-radius:15px; font:400 14px/1.45 var(--font-body, Arial, sans-serif); white-space:pre-wrap; overflow-wrap:anywhere; }
.lead-chat-message--assistant { justify-self:start; border:1px solid var(--lead-chat-border); background:var(--lead-chat-surface); }
.lead-chat-message--user { justify-self:end; color:#fff; background:var(--lead-chat-accent); }
.lead-chat-empty { padding:14px; border:1px dashed var(--lead-chat-border); border-radius:14px; color:var(--lead-chat-muted); font:400 13px/1.45 var(--font-body, Arial, sans-serif); }
.lead-chat-compose { padding:13px; border-top:1px solid var(--lead-chat-border); background:var(--lead-chat-surface); }
.lead-chat-compose textarea { min-height:74px; padding:10px 12px; resize:vertical; }
.lead-chat-compose-row { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:9px; }
.lead-chat-compose small { color:var(--lead-chat-muted); font:400 11px/1.35 var(--font-body, Arial, sans-serif); }
.lead-chat-send { width:42px; min-height:38px; font-size:18px; }
@media (max-width:600px) { .lead-chat-launcher{right:15px;bottom:15px;width:58px;height:58px}.lead-chat-overlay{padding:0}.lead-chat-panel{width:100%;height:100dvh;min-height:0;border-radius:0}.lead-chat-head{padding-top:max(18px,env(safe-area-inset-top))} }
