/* Compact floating controls. Hover labels live outside the scroll container. */
.hhcb,.hhcb *,.hhcb-dialog,.hhcb-dialog *{box-sizing:border-box}
.hhcb{--hhcb-primary:#df2829;--hhcb-size:50px;--hhcb-x:24px;--hhcb-y:92px;--hhcb-mobile-y:88px;--hhcb-gap:12px;position:fixed;bottom:calc(var(--hhcb-y) + env(safe-area-inset-bottom,0px));z-index:99990;display:flex;flex-direction:column;align-items:flex-end;gap:var(--hhcb-gap);font:500 13px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;max-width:calc(100vw - 16px);text-align:left;isolation:isolate}
.hhcb[hidden],.hhcb [hidden]{display:none!important}
.hhcb--right{right:max(8px,calc(var(--hhcb-x) + env(safe-area-inset-right,0px)))}
.hhcb--left{left:max(8px,calc(var(--hhcb-x) + env(safe-area-inset-left,0px)));align-items:flex-start}
.hhcb__menu{display:flex;flex-direction:column;gap:16px;max-width:min(300px,calc(100vw - 32px));max-height:var(--hhcb-menu-height,calc(100dvh - var(--hhcb-y) - var(--hhcb-size) - 48px));overflow:auto;overscroll-behavior:contain;padding:6px;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}
.hhcb__heading{background:#fff;border:1px solid #e8e8ec;border-radius:10px;padding:14px 16px;box-shadow:0 4px 18px #11182712;width:270px;max-width:100%;color:#22232a}
.hhcb__heading strong{font-size:14px;display:block;font-weight:700}
.hhcb__heading span{display:block;font-size:12px;font-weight:400;color:#747680;margin-top:4px}
.hhcb__items{display:flex;flex-direction:column;align-items:flex-end;gap:var(--hhcb-gap)}
.hhcb--left .hhcb__items{align-items:flex-start}
.hhcb__link{position:relative;display:flex!important;align-items:center;justify-content:flex-end;gap:12px;color:#fff!important;text-decoration:none!important;border:0!important;background:transparent!important;outline-offset:3px!important;margin:0!important;padding:0!important;box-shadow:none!important;min-height:44px;font:inherit!important;max-width:100%;width:auto!important;-webkit-tap-highlight-color:transparent}
.hhcb--left .hhcb__link{flex-direction:row-reverse;justify-content:flex-start}
.hhcb__circle{display:flex;flex:none;align-items:center;justify-content:center;width:var(--hhcb-size);height:var(--hhcb-size);border-radius:50%;color:var(--hhcb-ink,#fff);background:var(--hhcb-button,var(--hhcb-primary));box-shadow:0 2px 7px #15151d26;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
.hhcb__circle svg,.hhcb__toggle svg,.hhcb-dialog__close svg{display:block;flex:none;pointer-events:none}
.hhcb__circle .hhcb-icon--zalo{width:34px;height:24px}
.hhcb__label{display:block;color:#fff;background:#39393f;border:0;padding:7px 10px;border-radius:4px;box-shadow:0 2px 6px #15151d12;max-width:min(210px,calc(100vw - var(--hhcb-size) - 64px));overflow-wrap:anywhere;font-size:12px;font-weight:500;line-height:1.4}
.hhcb:not(.hhcb-labels) .hhcb__label{display:none}
.hhcb__link:hover .hhcb__circle{transform:scale(1.06);filter:brightness(.95);box-shadow:0 4px 12px #15151d29}
.hhcb__link:active .hhcb__circle{transform:scale(.96)}
.hhcb__link:focus-visible{border-radius:50%!important;outline:3px solid #fff!important;box-shadow:0 0 0 5px var(--hhcb-primary)!important}
.hhcb__toggle:focus-visible,.hhcb-dialog button:focus-visible{outline:3px solid #2563eb!important;outline-offset:4px!important}
.hhcb__toggle{position:relative;display:flex!important;align-items:center;justify-content:center;min-width:var(--hhcb-size)!important;width:var(--hhcb-size)!important;height:var(--hhcb-size)!important;min-height:44px;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:var(--hhcb-primary)!important;color:#fff!important;box-shadow:0 2px 9px #15151d29!important;cursor:pointer;font:inherit!important;text-transform:none!important;letter-spacing:normal!important;overflow:visible!important;flex-shrink:0;transition:transform .18s ease}
.hhcb__toggle:hover{transform:scale(1.04)}
.hhcb__toggle-label{position:absolute;right:calc(100% + 12px);white-space:nowrap;background:#39393f;color:#fff;border:0;border-radius:4px;padding:7px 10px;font-size:12px;font-weight:500;box-shadow:0 2px 6px #15151d12;max-width:min(210px,calc(100vw - var(--hhcb-size) - 64px));overflow:hidden;text-overflow:ellipsis}
.hhcb:not(.hhcb-labels) .hhcb__toggle-label{display:none}
.hhcb--left .hhcb__toggle-label{right:auto;left:calc(100% + 12px)}
.hhcb__toggle-close,.hhcb.is-open .hhcb__toggle-open,.hhcb.is-open .hhcb__toggle-label{display:none}
.hhcb.is-open .hhcb__toggle-close{display:block}
.hhcb--stack .hhcb__menu{max-height:var(--hhcb-menu-height,calc(100dvh - var(--hhcb-y) - 24px))}
.hhcb--menu .hhcb__menu{position:absolute;right:0;bottom:calc(100% + var(--hhcb-gap));padding:6px 0 6px 6px;visibility:hidden;pointer-events:none;transition:visibility 0s linear .26s}
.hhcb--menu.hhcb--left .hhcb__menu{right:auto;left:0;padding:6px 6px 6px 0}
.hhcb--menu.is-open .hhcb__menu{visibility:visible;pointer-events:auto;transition-delay:0s}
.hhcb--menu .hhcb__link{opacity:0;transform:translateY(calc((var(--hhcb-order,0) + 1)*(var(--hhcb-size) + var(--hhcb-gap)))) scale(.4);transition:opacity .16s ease,transform .24s cubic-bezier(.2,.8,.25,1);transition-delay:0s}
.hhcb--menu.is-open .hhcb__link{opacity:1;transform:translateY(0) scale(1);transition-delay:calc(var(--hhcb-order,0)*35ms)}
.hhcb--menu .hhcb__heading{opacity:0;transform:translateY(12px);transition:opacity .16s ease,transform .2s ease}
.hhcb--menu.is-open .hhcb__heading{opacity:1;transform:none}
.hhcb__toggle-symbol{display:flex;transition:transform .24s cubic-bezier(.2,.8,.25,1)}
.hhcb.is-open .hhcb__toggle-symbol{transform:rotate(45deg)}
.hhcb-tooltip{position:fixed;z-index:99995;display:block;background:#39393f;color:#fff;border:0;border-radius:4px;padding:7px 10px;box-shadow:0 2px 7px #11182716;font:500 12px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;animation:hhcb-tip-in .14s ease-out}
@keyframes hhcb-tip-in{from{opacity:0;transform:translateX(4px)}to{opacity:1;transform:none}}
.hhcb-pulse .hhcb__toggle:not([aria-expanded="true"]){animation:hhcb-pulse 2.4s ease-out infinite}
@keyframes hhcb-pulse{0%,100%{box-shadow:0 2px 9px #15151d29,0 0 0 0 #df28291e}60%{box-shadow:0 2px 9px #15151d29,0 0 0 10px #df282900}}
.hhcb-dialog{z-index:100000;width:min(480px,calc(100vw - 32px));max-width:480px;max-height:calc(100dvh - 40px);padding:0;margin:auto;border:0;border-radius:14px;background:#fff;color:#24252b;box-shadow:0 20px 80px #15151d40;font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;overflow:auto}
.hhcb-dialog:not([open]){display:none}
.hhcb-dialog::backdrop{background:#17171c8c;backdrop-filter:blur(2px)}
.hhcb-dialog__header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 20px;border-bottom:1px solid #ececf0;background:#fff}
.hhcb-dialog__header h2{margin:0!important;font-size:18px!important;line-height:1.3;color:inherit!important;font-weight:650}
.hhcb-dialog__close{display:flex;align-items:center;justify-content:center;flex:none;width:40px!important;height:40px!important;min-width:40px;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:#f4f4f6!important;color:#60616b!important;cursor:pointer}
.hhcb-dialog__body{padding:22px;overflow-wrap:anywhere}
.hhcb-dialog__body>:first-child{margin-top:0}
.hhcb-dialog__body>:last-child{margin-bottom:0}
.hhcb-dialog__body iframe,.hhcb-dialog__body img{max-width:100%}
@media(min-width:768px){.hhcb.hhcb-device-mobile,.hhcb .hhcb-device-mobile{display:none!important}}
@media(max-width:767px){.hhcb{bottom:calc(var(--hhcb-mobile-y) + env(safe-area-inset-bottom,0px));--hhcb-size-mobile:min(var(--hhcb-size),48px)}.hhcb__circle,.hhcb__toggle{width:var(--hhcb-size-mobile)!important;height:var(--hhcb-size-mobile)!important;min-width:var(--hhcb-size-mobile)!important}.hhcb.hhcb-device-desktop,.hhcb .hhcb-device-desktop{display:none!important}.hhcb__heading{width:min(260px,calc(100vw - 48px))}.hhcb__menu{max-height:var(--hhcb-menu-height,calc(100dvh - var(--hhcb-mobile-y) - var(--hhcb-size) - 48px))}.hhcb--stack .hhcb__menu{max-height:var(--hhcb-menu-height,calc(100dvh - var(--hhcb-mobile-y) - 24px))}}
@media(prefers-reduced-motion:reduce){.hhcb *,.hhcb-tooltip{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
