#lvchat-root { position: fixed; bottom: 20px; z-index: 999999; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
#lvchat-root.pos-right { right: 20px; }
#lvchat-root.pos-left  { left: 20px; }
.lvchat-bubble { width: 60px; height: 60px; border-radius: 50%; background: var(--lv-primary, #5b6cff); color: var(--lv-text, #fff); display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 8px 24px rgba(0,0,0,.18); border: none; }
.lvchat-bubble svg { width: 26px; height: 26px; fill: currentColor; }
.lvchat-panel { position: absolute; bottom: 76px; width: 340px; max-height: 520px; background: #fff; box-shadow: 0 12px 32px rgba(0,0,0,.2); display: none; flex-direction: column; overflow: hidden; }
#lvchat-root.pos-right .lvchat-panel { right: 0; }
#lvchat-root.pos-left  .lvchat-panel { left: 0; }
#lvchat-root.open .lvchat-panel { display: flex; }
.lvchat-header { background: var(--lv-primary); color: var(--lv-text); padding: 14px 16px; display: flex; align-items: center; gap: 10px; }
.lvchat-header img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; background: rgba(255,255,255,.2); }
.lvchat-header h4 { margin: 0; font-size: 15px; }
.lvchat-header p  { margin: 0; font-size: 12px; opacity: .85; }
.lvchat-body { flex: 1; padding: 14px; overflow-y: auto; background: #f7f8fb; display: flex; flex-direction: column; gap: 8px; }
.lvchat-msg { max-width: 80%; padding: 8px 12px; font-size: 14px; line-height: 1.35; word-wrap: break-word; }
.lvchat-msg.visitor { background: var(--lv-primary); color: var(--lv-text); align-self: flex-end; border-radius: 14px 14px 4px 14px; }
.lvchat-msg.agent, .lvchat-msg.bot { background: #fff; color: #222; align-self: flex-start; border-radius: 14px 14px 14px 4px; box-shadow: 0 1px 2px rgba(0,0,0,.06); }
.lvchat-form { display: flex; border-top: 1px solid #eee; }
.lvchat-form input { flex: 1; border: 0; padding: 12px 14px; font-size: 14px; outline: none; }
.lvchat-form button { background: var(--lv-primary); color: var(--lv-text); border: 0; padding: 0 16px; cursor: pointer; font-weight: 600; }
.lvchat-prechat { padding: 16px; display: flex; flex-direction: column; gap: 8px; }
.lvchat-prechat input { padding: 10px; border: 1px solid #ddd; border-radius: 8px; }
.lvchat-prechat button { background: var(--lv-primary); color: var(--lv-text); border: 0; padding: 10px; border-radius: 8px; cursor: pointer; }

/* Packages shortcode */
.lvchat-packages { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; margin: 24px 0; }
.lvchat-pkg { border: 1px solid #e5e7eb; border-radius: 14px; padding: 24px; background: #fff; text-align: center; }
.lvchat-pkg.is-featured { border-color: var(--lv-primary); transform: scale(1.03); box-shadow: 0 12px 24px rgba(0,0,0,.08); }
.lvchat-pkg h3 { margin: 0 0 10px; }
.lvchat-price { margin-bottom: 16px; }
.lvchat-price .amount { font-size: 32px; font-weight: 700; }
.lvchat-price .period { color: #666; }
.lvchat-pkg ul { list-style: none; padding: 0; margin: 0 0 20px; }
.lvchat-pkg ul li { padding: 6px 0; border-bottom: 1px solid #f0f0f0; font-size: 14px; }
.lvchat-cta { display: inline-block; padding: 10px 20px; background: var(--lv-primary); color: var(--lv-text); border-radius: 8px; text-decoration: none; font-weight: 600; }
