/* XY Live Chat (Motion View style, compact): desktop + laptop only */
.xylc{display:none;position:fixed;right:var(--xylc-r,24px);bottom:var(--xylc-b,24px);z-index:9990;align-items:center;gap:11px;font-family:inherit}
@media (min-width:1025px){.xylc.is-ready{display:flex}}
@media (max-width:1024px){.xylc,.xylc.is-ready{display:none!important}}
.xylc *{box-sizing:border-box}

/* small white bubble, tail points at the photo */
.xylc__bubble{position:relative;display:flex;align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.2);padding:10px 20px;opacity:0;transform:translateX(12px) scale(.96);transform-origin:right center;transition:opacity .3s,transform .3s}
.xylc__bubble::after{content:"";position:absolute;right:-5px;top:50%;width:11px;height:11px;background:#fff;border-radius:2px;transform:translateY(-50%) rotate(45deg)}
.xylc.is-ready .xylc__bubble{opacity:1;transform:none}
.xylc.is-min .xylc__bubble{opacity:0;transform:translateX(12px) scale(.9);pointer-events:none;position:absolute;right:0}
.xylc__text{position:relative;z-index:1;color:#1b1f2a;font-size:clamp(13.5px,1vw,15.5px);font-weight:500;line-height:1.3;white-space:nowrap;text-decoration:none}
.xylc__text:hover{color:#128c7e}

/* tiny round minimize button (theme button styles are reset on purpose) */
.xylc .xylc__min,.xylc .xylc__min:hover,.xylc .xylc__min:focus,.xylc .xylc__min:active{
  -webkit-appearance:none!important;appearance:none!important;position:absolute!important;z-index:2;left:-9px!important;top:-9px!important;
  width:21px!important;height:21px!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;
  border:1px solid #d9dde4!important;border-radius:50%!important;background:#fff!important;color:#2b3040!important;
  box-shadow:0 1px 5px rgba(0,0,0,.2)!important;outline:0!important;cursor:pointer;display:grid!important;place-items:center;line-height:1!important;text-transform:none!important;font-size:0!important
}
.xylc .xylc__min:hover{transform:scale(1.1)}
.xylc .xylc__min:focus-visible{box-shadow:0 0 0 2px rgba(34,197,94,.45)!important}
.xylc__min span{display:block;width:8px;height:1.6px;background:#2b3040;border-radius:2px}

/* round photo + live dot */
.xylc__avatar{position:relative;flex:none;width:clamp(50px,3.7vw,58px);height:clamp(50px,3.7vw,58px);border-radius:50%;background:#dfe3ea;box-shadow:0 4px 14px rgba(0,0,0,.3);display:block;text-decoration:none}
.xylc__img{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center 20%;opacity:0;transition:opacity .7s ease;border:1.5px solid rgba(255,255,255,.85)}
.xylc__img.is-on{opacity:1}
.xylc__live{position:absolute;right:-1px;top:1px;width:12px;height:12px;border-radius:50%;background:#22c55e;border:2px solid #fff;z-index:2;animation:xylc-blink 1.4s ease-in-out infinite}
.xylc__live::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid #22c55e;opacity:0;animation:xylc-ring 1.4s ease-out infinite}
@keyframes xylc-blink{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes xylc-ring{0%{transform:scale(.6);opacity:.7}100%{transform:scale(1.5);opacity:0}}
@media (prefers-reduced-motion:reduce){.xylc__live,.xylc__live::after{animation:none}.xylc__img{transition:none}}
