/* LOTUS – khung chat trực tiếp */
.lcw-fab { position: fixed; right: 18px; bottom: 90px; z-index: 75; display: inline-flex; align-items: center; gap: 8px; min-height: 52px; padding: 0 18px 0 14px; border: 0; border-radius: 999px; background: var(--lh-primary, #6d3fe4); color: #fff; font: inherit; font-weight: 800; font-size: 15px; cursor: pointer; box-shadow: 0 10px 28px rgba(45, 33, 64, .3); }
.lcw-fab span[aria-hidden] { font-size: 22px; }
.lcw-fab:hover { filter: brightness(1.08); }
.lcw-fab.is-open { display: none; }
.lcw-badge { position: absolute; top: -2px; right: 4px; width: 16px; height: 16px; border-radius: 50%; background: #ff4d5e; color: transparent; border: 2px solid #fff; }
.lc-chat { position: fixed; right: 18px; bottom: 18px; z-index: 76; width: min(370px, calc(100vw - 24px)); height: min(560px, calc(100vh - 110px)); display: flex; flex-direction: column; background: #fff; border-radius: 20px; box-shadow: 0 24px 60px rgba(20, 10, 40, .3); overflow: hidden; border: 1px solid #ebe4f5; font-family: inherit; color: #2d2140; }
.lc-chat[hidden] { display: none; }
.lc-chat.is-inline { position: static; width: 100%; height: 480px; box-shadow: none; border-radius: 18px; }
.lcw-head { display: flex; align-items: center; gap: 10px; padding: 14px 16px; background: linear-gradient(135deg, var(--lh-primary, #6d3fe4), color-mix(in srgb, var(--lh-primary, #6d3fe4) 60%, #1a1030)); color: #fff; }
.lcw-head strong { display: block; font-size: 16px; }
.lcw-head small { opacity: .85; font-size: 12.5px; }
.lcw-dot { width: 10px; height: 10px; border-radius: 50%; background: #ffc46b; box-shadow: 0 0 0 3px rgba(255, 255, 255, .25); flex: none; }
.is-online .lcw-dot { background: #3ddc97; }
.lcw-x { margin-left: auto; width: 36px; height: 36px; border: 0; border-radius: 10px; background: rgba(255, 255, 255, .15); color: #fff; font-size: 22px; cursor: pointer; }
.lcw-body { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 8px; background: #faf8fd; }
.lcw-m { max-width: 82%; padding: 9px 13px; border-radius: 16px; white-space: pre-wrap; word-break: break-word; font-size: 15px; line-height: 1.5; }
.lcw-m b { display: block; font-size: 12px; color: var(--lh-primary, #6d3fe4); }
.lcw-m small { display: block; font-size: 11px; opacity: .6; margin-top: 2px; }
.lcw-m.them { align-self: flex-start; background: #fff; border: 1px solid #ebe4f5; border-bottom-left-radius: 4px; }
.lcw-m.me { align-self: flex-end; background: var(--lh-primary, #6d3fe4); color: #fff; border-bottom-right-radius: 4px; }
.lcw-note { font-size: 13px; color: #6b6178; background: #fff4e0; border-radius: 12px; padding: 8px 12px; }
.lcw-start { padding: 10px 14px 0; display: flex; flex-direction: column; gap: 6px; font-size: 14px; }
.lcw-start[hidden] { display: none; }
.lcw-start input { width: 100%; min-height: 42px; border: 1px solid #ddd3c6; border-radius: 10px; padding: 0 12px; font: inherit; font-size: 14px; box-sizing: border-box; }
.lcw-send { display: flex; gap: 8px; align-items: flex-end; padding: 10px 12px 12px; border-top: 1px solid #f0ebf6; }
.lcw-send textarea { flex: 1; min-height: 44px; max-height: 120px; resize: none; border: 1px solid #ddd3c6; border-radius: 14px; padding: 11px 14px; font: inherit; font-size: 15px; box-sizing: border-box; }
.lcw-send textarea:focus, .lcw-start input:focus { outline: none; border-color: var(--lh-primary, #6d3fe4); box-shadow: 0 0 0 3px rgba(109, 63, 228, .15); }
.lcw-send button { width: 46px; height: 46px; border: 0; border-radius: 50%; background: var(--lh-accent, #ff9f43); color: #2d2140; font-size: 18px; cursor: pointer; flex: none; }
.lcw-err { margin: 0; padding: 0 14px 8px; color: #c8354b; font-size: 13px; font-weight: 600; }
.lcw-err:empty { display: none; }
@media (max-width: 720px) {
	.lcw-fab { bottom: 136px; right: 12px; padding: 0 14px; }
	.lcw-fab-t { display: none; }
	.lc-chat:not(.is-inline) { right: 8px; left: 8px; bottom: 8px; width: auto; height: calc(100vh - 80px); }
}
/* web mới: lớp phụ của giao diện WP mà khung chat dùng (ẩn chữ cho trình đọc màn hình, ô bẫy máy spam) */
.lc-chat .lh-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.lc-chat .lh-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
