/* ── LeadChat Widget v2.5 ── */

/* Isolation */
#lcw-root{all:initial;position:fixed!important;z-index:9999999999;top:0;left:0;width:0!important;height:0!important;overflow:visible!important;pointer-events:none!important;font-family:'Helvetica Neue',Helvetica,Arial,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:15px;line-height:1.5;color:#222;box-sizing:border-box}
#lcw-root *{all:initial;font:inherit!important;color:inherit;box-sizing:border-box!important;position:initial}
#lcw-root img{display:inline-block!important}
#lcw-root strong{font-weight:700!important;display:inline!important}
#lcw-root br{display:block!important}

/* ── Bubble ── */
.lcw-bubble{position:fixed!important;bottom:28px!important;right:28px!important;display:flex!important;align-items:flex-end!important;gap:14px!important;cursor:pointer!important;z-index:9999999999!important;pointer-events:auto!important;touch-action:manipulation!important;opacity:0;transform:translateY(20px);transition:opacity .4s ease,transform .4s ease}
.lcw-bubble.lcw-visible{opacity:1!important;transform:translateY(0)!important}
.lcw-bubble.lcw-hidden{display:none!important}
.lcw-bubble-text{display:block!important;background:#fff!important;color:#222!important;padding:20px 24px!important;border-radius:18px 18px 4px 18px!important;box-shadow:0 4px 24px rgba(0,0,0,.1)!important;font-size:15px!important;line-height:1.55!important;max-width:280px!important;font-weight:400!important}
.lcw-bubble-avatar-wrap{position:relative!important;flex-shrink:0!important;display:block!important}
.lcw-bubble-avatar{display:block!important;width:72px!important;height:72px!important;border-radius:50%!important;object-fit:cover!important;box-shadow:0 4px 20px rgba(0,0,0,.12)!important;border:3px solid #fff!important}
.lcw-bubble-dot{position:absolute!important;bottom:3px!important;right:3px!important;width:15px!important;height:15px!important;background:#22c55e!important;border-radius:50%!important;border:3px solid #fff!important;display:block!important;animation:lcw-pulse 2s ease-in-out infinite!important}

/* ── Popup ── */
.lcw-popup{position:fixed!important;bottom:28px!important;right:28px!important;width:400px!important;max-height:calc(100vh - 56px)!important;max-height:calc(100dvh - 56px)!important;border-radius:20px!important;overflow:hidden!important;box-shadow:0 12px 48px rgba(0,0,0,.16),0 2px 8px rgba(0,0,0,.06)!important;z-index:9999999999!important;pointer-events:auto!important;touch-action:manipulation!important;opacity:0;transform:translateY(20px) scale(.95);transition:opacity .3s ease,transform .3s ease;display:flex!important;flex-direction:column!important;background:#fff!important}
.lcw-popup.lcw-visible{opacity:1!important;transform:translateY(0) scale(1)!important}
.lcw-popup.lcw-hidden{display:none!important}

/* Header */
.lcw-popup-header{display:flex!important;align-items:center!important;gap:14px!important;padding:16px 22px!important;color:#fff!important}
.lcw-popup-header-avatar{display:block!important;width:46px!important;height:46px!important;border-radius:50%!important;object-fit:cover!important;border:2px solid rgba(255,255,255,.3)!important}
.lcw-popup-header-info{display:block!important;flex:1!important}
.lcw-popup-header-name{display:block!important;font-size:15px!important;font-weight:700!important;color:#fff!important;line-height:1.3!important}
.lcw-popup-header-status{display:block!important;font-size:12.5px!important;color:rgba(255,255,255,.85)!important;margin-top:2px!important;font-weight:400!important;line-height:1.3!important}
.lcw-popup-close{display:flex!important;align-items:center!important;justify-content:center!important;background:none!important;border:none!important;color:rgba(255,255,255,.7)!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;width:36px!important;height:36px!important;border-radius:50%!important;font-size:20px!important;line-height:1!important}
.lcw-popup-close:hover{background:rgba(255,255,255,.15)!important;color:#fff!important}

/* Body (pre-chat) */
.lcw-popup-body{display:flex!important;flex-direction:column!important;padding:24px 22px 22px!important}

/* Greeting row */
.lcw-popup-greeting-row{display:flex!important;align-items:flex-start!important;gap:10px!important;width:100%!important}
.lcw-popup-greeting-avatar{display:block!important;width:40px!important;height:40px!important;border-radius:50%!important;object-fit:cover!important;flex-shrink:0!important}
.lcw-popup-greeting-bubble{display:block!important;background:#f2f2f7!important;color:#222!important;padding:18px 22px 22px!important;border-radius:4px 16px 16px 16px!important;font-size:15px!important;line-height:1.55!important;font-weight:400!important;flex:1!important}
.lcw-popup-greeting-text{display:block!important;margin-bottom:18px!important}

/* CTA button */
.lcw-popup-cta-btn{display:inline-block!important;padding:14px 36px!important;color:#fff!important;font-size:15px!important;font-weight:600!important;border:none!important;border-radius:28px!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;text-decoration:none!important;text-align:center!important;line-height:1.3!important}
.lcw-popup-cta-btn:hover{opacity:.9!important}

/* Privacy */
.lcw-popup-privacy{display:block!important;margin-top:12px!important;font-size:11.5px!important;color:#999!important;line-height:1.5!important;font-weight:400!important}
.lcw-popup-privacy a{display:inline!important;color:var(--lcw-primary,#7438F2)!important;text-decoration:none!important;font-weight:500!important;cursor:pointer!important}

/* ── Chat iframe ── */
.lcw-popup-iframe-wrap{display:block!important;position:relative!important;width:100%!important;flex-grow:1!important;flex-shrink:1!important;flex-basis:0%!important;min-height:0!important;background:#111b21!important}
.lcw-popup-iframe-wrap iframe{display:block!important;width:100%!important;height:100%!important;border:none!important;position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;opacity:0;transition:opacity .3s ease}
.lcw-popup-iframe-wrap iframe.lcw-iframe-loaded{opacity:1!important}
.lcw-popup.lcw-chat-mode{width:420px!important;height:calc(100dvh - 56px)!important;max-height:740px!important}

/* ── Loading indicator ── */
.lcw-loader{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;z-index:1!important}
.lcw-loader-avatar{display:block!important;width:64px!important;height:64px!important;border-radius:50%!important;object-fit:cover!important;margin-bottom:20px!important;border:3px solid rgba(255,255,255,.1)!important}
.lcw-loader-spinner{display:block!important;width:32px!important;height:32px!important;border:3px solid rgba(255,255,255,.1)!important;border-top-color:var(--lcw-primary,#7438F2)!important;border-radius:50%!important;animation:lcw-spin .8s linear infinite!important}
.lcw-loader-text{display:block!important;margin-top:14px!important;font-size:13px!important;color:rgba(255,255,255,.45)!important;font-weight:400!important}
@keyframes lcw-spin{to{transform:rotate(360deg)}}

/* ── Mobile ── */
@media(max-width:480px){
.lcw-bubble{bottom:20px!important;right:16px!important;gap:10px!important}
.lcw-bubble-text{font-size:14px!important;max-width:220px!important;padding:18px 20px!important}
.lcw-bubble-avatar{width:64px!important;height:64px!important}
.lcw-popup{bottom:0!important;right:0!important;width:100%!important;height:100vh!important;height:100dvh!important;max-height:100vh!important;max-height:100dvh!important;border-radius:0!important}
.lcw-popup.lcw-chat-mode{width:100%!important;height:100vh!important;height:100dvh!important;max-height:100vh!important;max-height:100dvh!important}
}

@keyframes lcw-pulse{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.4)}50%{box-shadow:0 0 0 8px rgba(34,197,94,0)}}

/* ── MUST BE LAST — hide override wins over any display above ── */
#lcw-root .lcw-el-hidden{display:none!important}
