/* Xenyra hub chat avatars (H60): hub page only. The assistant shows the Xenyra orb, the visitor an empty round avatar until sign-in
   (then the profile photo, see hub-chatav.mjs). Added beside the existing bubbles; the widget itself is not changed. */
.xh-page{--xh-user-av:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e6ebfb'/%3E%3Ccircle cx='20' cy='15' r='6.5' fill='%239aa6c8'/%3E%3Cpath d='M7 35c1.6-7 7-10.5 13-10.5S31.400 28 33 35a20 20 0 01-26 0z' fill='%239aa6c8'/%3E%3C/svg%3E")}
.xh-page .xenyra-msg-assistant:not([data-greeting="1"]),
.xh-page .xenyra-msg-user:not([data-greeting="1"]){--xh-av:28px;--xh-av-gap:10px}
.xh-page .xenyra-msg-assistant:not([data-greeting="1"]){padding-left:calc(var(--xh-av) + var(--xh-av-gap) * 2)}
.xh-page .xenyra-msg-user:not([data-greeting="1"]){padding-right:calc(var(--xh-av) + var(--xh-av-gap) * 2)}
.xh-page .xenyra-msg-assistant:not([data-greeting="1"])::before,
.xh-page .xenyra-msg-user:not([data-greeting="1"])::before{content:"";position:absolute;top:var(--xh-av-gap);width:var(--xh-av);height:var(--xh-av);border-radius:50%;background-repeat:no-repeat;background-position:center;background-size:cover;pointer-events:none}
.xh-page .xenyra-msg-assistant:not([data-greeting="1"])::before{left:var(--xh-av-gap);background-image:url("../../assets/voice-orb-m25i.webp");box-shadow:0 0 0 1px rgba(79,92,255,.18),0 4px 12px -4px rgba(79,92,255,.5)}
.xh-page .xenyra-msg-user:not([data-greeting="1"])::before{right:var(--xh-av-gap);background-image:var(--xh-user-av);box-shadow:0 0 0 1px rgb(var(--xt-ink-rgb) / .1)}
