/* Floating container */
#lts-widget{position:fixed;right:18px;bottom:18px;z-index:999999;font-family:inherit}

/* Toggle pill */
#lts-toggle{background:#2e7d32;color:#fff;border:none;border-radius:9999px;height:48px;padding:0 16px;display:inline-flex;align-items:center;gap:8px;box-shadow:0 8px 24px rgba(0,0,0,.2);cursor:pointer;transition:transform .15s ease,box-shadow .2s ease}
#lts-toggle:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.22)}
#lts-toggle.lts-unread::after{content:"";width:10px;height:10px;background:#ff5252;border-radius:50%;margin-left:6px;box-shadow:0 0 0 2px rgba(255,255,255,.9)}

/* Chat panel */
#lts-panel{display:none;width:360px;max-width:calc(100vw - 28px);max-height:70vh;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 16px 48px rgba(0,0,0,.18);overflow:hidden;transform:translateY(6px) scale(.98);opacity:0;transition:transform .18s ease,opacity .18s ease}
#lts-widget:not(.lts-closed) #lts-panel{display:flex;flex-direction:column;transform:translateY(0) scale(1);opacity:1}

/* Header */
#lts-header{padding:12px 14px;background:#2e7d32;color:#fff;font-weight:600;display:flex;align-items:center;gap:8px}
#lts-title{font-size:15px}
#lts-header a#lts-escalate{color:#fff;text-decoration:underline;font-weight:500;margin-left:auto;margin-right:8px}
#lts-close{background:rgba(255,255,255,.18);color:#fff;border:0;width:28px;height:28px;border-radius:6px;cursor:pointer}
#lts-close:hover{background:rgba(255,255,255,.28)}

/* Messages */
#lts-messages{padding:12px;overflow:auto;flex:1;background:#fafafa;display:flex;flex-direction:column}
.lts-msg{max-width:85%;margin:8px 0;padding:10px 12px;border-radius:16px;line-height:1.4;font-size:14px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.lts-msg.assistant{background:#fff;border:1px solid #eee}
.lts-msg.user{background:#e8f5e9;align-self:flex-end}
.lts-typing{background:#fff;border:1px solid #eee}
.lts-dots{display:inline-block;letter-spacing:2px;font-weight:bold}

/* Form */
#lts-form{display:flex;border-top:1px solid #eee;background:#fff}
#lts-input{flex:1;border:none;padding:12px;outline:none;font-size:14px}
#lts-form button{background:#2e7d32;color:#fff;border:none;padding:0 14px;border-radius:8px;margin:8px}

@media (max-width:767px){
  #lts-widget{right:10px;bottom:10px}
  #lts-panel{width:calc(100vw - 20px);max-height:75vh}
  #lts-toggle{height:44px;padding:0 14px}
}
