.lkc{position:fixed;right:20px;bottom:20px;z-index:800;font-family:'Be Vietnam Pro',system-ui,sans-serif;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.lkc *{box-sizing:border-box}
.lkc-fab{position:relative;width:58px;height:58px;border-radius:50%;border:0;padding:0;background:#002C5F;cursor:pointer;box-shadow:0 6px 20px rgba(0,30,70,.28)!important}
.lkc-fab .lkc-av{width:58px;height:58px;border:2px solid #fff}
.lkc-fab{animation:lkcPulse 2.4s ease-out infinite!important}
@keyframes lkcPulse{0%{box-shadow:0 6px 20px rgba(0,30,70,.28),0 0 0 0 rgba(0,44,95,.45)}70%{box-shadow:0 6px 20px rgba(0,30,70,.28),0 0 0 14px rgba(0,44,95,0)}100%{box-shadow:0 6px 20px rgba(0,30,70,.28),0 0 0 0 rgba(0,44,95,0)}}
.lkc.on .lkc-fab{display:none}
.lkc-dot{position:absolute;top:-3px;right:-3px;min-width:22px;height:22px;border-radius:11px;line-height:18px!important;font-size:12.5px!important;background:#E5352B;color:#fff;font:600 12px/20px system-ui;font-style:normal;text-align:center;border:2px solid #fff}
.lkc-av{position:relative;display:block;width:40px;height:40px;border-radius:50%;flex:none;background:#E9ECEF}
.lkc-av img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.lkc-on{position:absolute;right:0;bottom:1px;width:11px;height:11px;border-radius:50%;background:#22C55E;border:2px solid #fff}
.lkc-fab .lkc-on{width:14px;height:14px;right:1px;bottom:2px}
.lkc-panel{width:340px;max-width:calc(100vw - 24px);background:#fff;border:1px solid #E3E6EA;border-radius:12px;overflow:hidden;box-shadow:0 16px 48px rgba(0,30,70,.22)!important;animation:lkcIn .25s ease-out!important}
@keyframes lkcIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.lkc-head{display:flex;align-items:center;gap:12px;padding:14px 14px 14px 16px;border-bottom:1px solid #E3E6EA}
.lkc-head b{display:block;font-size:15px;color:#121820;font-weight:600;line-height:1.3}
.lkc-head span{display:block;font-size:12.5px;color:#5B6470}
.lkc-x{margin-left:auto;width:34px;height:34px;border:0;background:none;font-size:24px;line-height:1;color:#5B6470;cursor:pointer;border-radius:6px}
.lkc-x:hover{background:#F5F6F8}
.lkc-body{padding:14px;max-height:min(380px,55vh);overflow-y:auto;background:#F7F8FA;display:flex;flex-direction:column;gap:8px}
.lkc-msg{max-width:88%;padding:10px 13px;border-radius:14px;font-size:14.5px;line-height:1.5;color:#121820}
.lkc-msg.bot{background:#fff;border:1px solid #E3E6EA;border-bottom-left-radius:4px;align-self:flex-start}
.lkc-msg.me{background:#002C5F;color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.lkc-chips{display:flex;flex-direction:column;gap:6px;margin-top:2px}
.lkc-chips button{font:inherit;font-size:14px;text-align:left;padding:10px 13px;border:1px solid #C9D3E0;background:#fff;color:#002C5F;font-weight:500;border-radius:8px;cursor:pointer}
.lkc-chips button:hover{border-color:#002C5F;background:#F2F5F9}
.lkc-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:2px}
.lkc-acts a{display:flex;align-items:center;justify-content:center;gap:7px;height:44px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none}
.lkc-call{background:#002C5F;color:#fff!important}
.lkc-zalo{background:#fff;border:1.5px solid #D6E4FF;color:#0068FF!important}
.lkc-zalo img{width:20px;height:20px}
/* icon Zalo dùng chung */
.zl-ico{width:20px;height:20px;flex:none;display:inline-block;vertical-align:middle;object-fit:contain}
.btn-zalo .zl-ico{width:26px;height:26px}
.info-ico .zl-ico{width:18px;height:18px}
@media (max-width:640px){
  .lkc{right:12px;bottom:76px}
  .lkc-fab,.lkc-fab .lkc-av{width:52px;height:52px}
}
.lkc-tease{position:relative;max-width:240px;background:#fff;border:1px solid #E3E6EA;border-radius:12px 12px 4px 12px;padding:11px 30px 11px 13px;font-size:14px;line-height:1.45;color:#121820;cursor:pointer;box-shadow:0 8px 24px rgba(0,30,70,.16)!important;animation:lkcIn .25s ease-out!important}
.lkc-tx{position:absolute;top:4px;right:4px;width:22px;height:22px;border:0;background:none;color:#8A939E;font-size:17px;line-height:1;cursor:pointer;border-radius:4px}
.lkc.on .lkc-tease{display:none}
@media (max-width:640px){.lkc-fab .lkc-av{width:52px;height:52px}.lkc-tease{max-width:210px;font-size:13.5px}}
