@keyframes hpb-fa-spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}#hpb-ai-chat{--hc-brand:#62519e;--hc-ink:#20243b;--hc-muted:#62687a;--hc-border:#e5e5ed;--hc-soft:#f7f7fb;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.55;color:var(--hc-ink);position:relative;z-index:1000000010;text-align:left}#hpb-ai-chat *,#hpb-ai-chat *::before,#hpb-ai-chat *::after{box-sizing:border-box}#hpb-ai-chat [hidden]{display:none!important}#hpb-ai-chat button,#hpb-ai-chat input,#hpb-ai-chat textarea,#hpb-ai-chat select{font:inherit;letter-spacing:normal;text-transform:none;margin:0;min-height:0;box-shadow:none;float:none}#hpb-ai-chat button{border:0;background:none;color:inherit;padding:0;cursor:pointer;line-height:1.3;font-weight:500;min-width:0;border-radius:0}#hpb-ai-chat button:disabled{opacity:.45;cursor:default}#hpb-ai-chat :is(button,a,input,textarea,select):focus-visible{outline:3px solid #9d88dc;outline-offset:2px}#hpb-ai-chat h2,#hpb-ai-chat h3,#hpb-ai-chat p,#hpb-ai-chat form{margin:0;color:inherit;font-family:inherit;font-weight:400;line-height:inherit}#hpb-ai-chat a{color:var(--hc-brand);text-decoration:underline;overflow-wrap:anywhere}#hpb-ai-chat svg{width:23px;height:23px;display:block;flex:none}#hpb-ai-chat .hc-launcher{position:fixed;right:24px;bottom:24px;display:flex;gap:10px;align-items:center;border-radius:28px;padding:15px 20px;background:var(--hc-brand);color:#fff;box-shadow:0 5px 24px #28203c30;min-height:54px;font-size:14px;font-weight:600}#hpb-ai-chat .hc-dot{width:9px;height:9px;background:#63dfb0;border:2px solid #fff;border-radius:50%}#hpb-ai-chat .hc-window{position:fixed;right:24px;bottom:24px;width:420px;height:min(760px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);border:1px solid var(--hc-border);border-radius:24px;background:#fff;box-shadow:0 20px 70px #2220392b;display:flex;flex-direction:column;overflow:hidden;animation:hc-enter .18s ease-out}#hpb-ai-chat .hc-header{display:flex;align-items:center;gap:12px;padding:18px 18px 14px;background:#fff;flex-shrink:0}#hpb-ai-chat .hc-avatar{position:relative!important;width:46px!important;height:46px!important;flex:0 0 46px;overflow:hidden;border-radius:15px;background:#eeebf8;display:grid;place-items:center;color:var(--hc-brand);font-weight:700}#hpb-ai-chat .hc-avatar img{position:absolute!important;inset:0!important;width:46px!important;height:46px!important;max-width:46px!important;min-width:46px!important;object-fit:cover!important;object-position:center 20%!important;transform:none!important;margin:0!important;opacity:1!important}#hpb-ai-chat .hc-brand{min-width:0;flex:1}#hpb-ai-chat .hc-brand strong{display:block;font-size:15px;line-height:1.4;color:var(--hc-ink)}#hpb-ai-chat .hc-brand>span{display:block;color:var(--hc-muted);font-size:12px;margin-top:3px}#hpb-ai-chat .hc-icon{width:36px;height:36px;flex:0 0 36px;border-radius:10px;font-size:24px;display:grid;place-items:center;color:#62687a}#hpb-ai-chat .hc-icon:hover{background:var(--hc-soft)}#hpb-ai-chat .hc-toolbar{display:flex;align-items:center;gap:8px;padding:0 18px 13px;border-bottom:1px solid var(--hc-border);flex-shrink:0}#hpb-ai-chat .hc-mode{font-size:10px;letter-spacing:.8px;font-weight:700;color:var(--hc-brand);margin-right:auto}#hpb-ai-chat .hc-toolbar select{width:76px;height:29px;border:1px solid var(--hc-border);padding:2px 4px;background:#fff;font-size:11px;border-radius:6px}#hpb-ai-chat .hc-toolbar button{font-size:12px;color:var(--hc-brand);min-height:32px}#hpb-ai-chat .hc-body{flex:1;min-height:60px;overflow:auto;overscroll-behavior:contain;padding:22px 18px;background:linear-gradient(#faf9fd,white 60%);scrollbar-width:thin;scrollbar-color:#d9d5e4 #fff0}#hpb-ai-chat .hc-kicker{font-size:10px;letter-spacing:1.1px;color:var(--hc-brand);font-weight:700}#hpb-ai-chat .hc-welcome h2{font-size:23px;font-weight:650;line-height:1.3;letter-spacing:-.5px;margin:12px 0}#hpb-ai-chat .hc-welcome p{font-size:14px;line-height:1.65;color:var(--hc-muted)}#hpb-ai-chat .hc-prompts{display:grid;gap:9px;margin-top:23px}#hpb-ai-chat .hc-prompts button{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:14px;border:1px solid var(--hc-border);border-radius:13px;background:#fff;font-size:13px;min-height:49px;transition:border-color .15s}#hpb-ai-chat .hc-prompts button:hover{border-color:var(--hc-brand)}#hpb-ai-chat .hc-message{margin:0 0 17px;max-width:94%;overflow-wrap:anywhere;font-size:14px}#hpb-ai-chat .hc-message.user{margin-left:auto;text-align:right}#hpb-ai-chat .hc-bubble{white-space:pre-wrap;line-height:1.65;text-align:left;padding:12px 14px;border:1px solid var(--hc-border);border-radius:16px 16px 16px 4px;background:#fff}#hpb-ai-chat .user .hc-bubble{border:0;background:var(--hc-brand);color:#fff;border-radius:16px 16px 4px 16px}#hpb-ai-chat .hc-message.system{max-width:100%;color:var(--hc-muted);font-size:12px;text-align:center;background:var(--hc-soft);padding:8px 10px;border-radius:8px}#hpb-ai-chat .hc-meta{font-size:11px;color:var(--hc-muted);margin-top:5px;display:flex;align-items:center;gap:7px}#hpb-ai-chat .user .hc-meta{justify-content:flex-end}#hpb-ai-chat .hc-message-actions{display:flex;gap:4px;margin-top:4px}#hpb-ai-chat .hc-message-actions button{font-size:12px;min-height:32px;padding:6px 8px;border-radius:7px;color:var(--hc-muted)}#hpb-ai-chat .hc-message-actions button[aria-pressed=true]{background:#eee9fb;color:var(--hc-brand)}#hpb-ai-chat .hc-source{display:block;font-size:12px;margin-top:6px;padding:7px 9px;border-radius:8px;background:var(--hc-soft);text-decoration:none;border:1px solid var(--hc-border)}#hpb-ai-chat .hc-status{padding:9px 18px;background:#fff9ec;color:#735419;font-size:12px;flex-shrink:0}#hpb-ai-chat .hc-status button{margin-left:8px;text-decoration:underline;min-height:28px}#hpb-ai-chat .hc-actions{display:flex;gap:8px;padding:10px 14px 6px;flex-shrink:0}#hpb-ai-chat .hc-actions button{border:1px solid var(--hc-border);border-radius:18px;padding:8px 11px;font-size:12px;min-height:34px}#hpb-ai-chat #hc-more{margin-left:auto;letter-spacing:2px}#hpb-ai-chat .hc-composer{display:flex;align-items:flex-end;gap:8px;margin:6px 14px 0;padding:8px;border:1px solid #d9d5e6;border-radius:17px;flex-shrink:0;background:#fff}#hpb-ai-chat .hc-composer:focus-within{border-color:var(--hc-brand);box-shadow:0 0 0 3px #62519e10}#hpb-ai-chat #hpb-chat-input{flex:1;resize:none;border:0;border-radius:0;padding:8px 0;background:#fff;color:var(--hc-ink);font-size:14px;line-height:22px;height:38px;max-height:100px;min-width:0;width:auto;outline:none;box-shadow:none}#hpb-ai-chat .hc-send{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;background:var(--hc-brand);color:#fff;border-radius:11px}#hpb-ai-chat .hc-upload{display:grid;place-items:center;position:relative;width:27px;height:38px;font-size:24px;cursor:pointer;flex-shrink:0;font-weight:400;margin:0;color:var(--hc-muted)}#hpb-ai-chat .hc-upload input{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer}#hpb-ai-chat .hc-footer{font-size:10.5px;line-height:1.5;text-align:center;color:var(--hc-muted);padding:10px 18px 13px;flex-shrink:0;background:#fff}#hpb-ai-chat .hc-footer>div{display:flex;justify-content:center;gap:7px;margin-top:3px}#hpb-ai-chat .hc-footer button{font-size:11px;text-decoration:underline}#hpb-ai-chat .hc-panel{padding:15px 18px;background:#faf9fd;border-top:1px solid var(--hc-border);max-height:65%;overflow:auto}#hpb-ai-chat .hc-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}#hpb-ai-chat .hc-panel label{display:block;font-size:12px;margin:0 0 10px;color:var(--hc-ink);font-weight:500}#hpb-ai-chat .hc-panel input:not([type=checkbox]){display:block;width:100%;height:38px;padding:8px 10px;border:1px solid #d8d9e4;background:#fff;border-radius:9px;font-size:14px;box-shadow:none;color:var(--hc-ink);margin-top:4px}#hpb-ai-chat .hc-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}#hpb-ai-chat .hc-check{display:flex!important;align-items:flex-start;gap:8px;font-weight:400!important;line-height:1.5}#hpb-ai-chat .hc-check input{width:16px;height:16px;flex:0 0 16px;appearance:auto;margin-top:2px}#hpb-ai-chat .hc-primary{background:var(--hc-brand);color:#fff;border-radius:10px;padding:11px 15px;font-size:13px}#hpb-ai-chat .hc-panel .hc-primary{width:100%}#hpb-ai-chat .hc-error{color:#b42318;font-size:12px;margin-bottom:7px}#hpb-ai-chat .hc-history{position:absolute;top:119px;left:0;right:0;bottom:0;z-index:5;background:#fff;padding:18px;overflow:auto}#hpb-ai-chat .hc-history>p{font-size:12px;color:var(--hc-muted);margin-top:18px}#hpb-ai-chat .hc-history-item{display:block;width:100%;text-align:left;padding:14px 10px;border-bottom:1px solid var(--hc-border);font-size:13px}#hpb-ai-chat .hc-history-item small{display:block;color:var(--hc-muted);font-size:11px;margin-top:4px}#hpb-ai-chat .hc-data-menu{position:absolute;right:16px;bottom:150px;z-index:6;padding:6px;background:#fff;border:1px solid var(--hc-border);box-shadow:0 10px 30px #2222;border-radius:10px}#hpb-ai-chat .hc-data-menu button{display:block;padding:10px 14px;font-size:13px}#hpb-ai-chat .hc-attachment{display:flex;justify-content:space-between;gap:8px;padding:7px 16px;background:var(--hc-soft);font-size:12px}#hpb-ai-chat .hc-confirm{position:absolute;inset:0;z-index:10;background:#fffffffa;padding:36px 24px;display:flex;flex-direction:column;justify-content:center;backdrop-filter:blur(8px)}#hpb-ai-chat .hc-confirm h3{font-size:20px;font-weight:650;margin-bottom:14px}#hpb-ai-chat .hc-confirm p{font-size:14px;color:var(--hc-muted);white-space:pre-line}#hpb-ai-chat .hc-confirm>div{display:flex;gap:20px;justify-content:flex-end;margin-top:24px}#hpb-ai-chat .hc-image-preview{position:static!important;width:auto!important;height:auto!important;max-width:220px!important;max-height:160px!important;border-radius:10px;display:block;margin-top:8px}#hpb-ai-chat .hc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}body.hpb-chat-open .hpb-contact-dock,body.hpb-chat-open .list-shortcut-desktop,body.hpb-chat-open .list-shortcut-mobile{visibility:hidden!important;pointer-events:none!important}@keyframes hc-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:600px){#hpb-ai-chat .hc-window{right:8px;left:8px;top:calc(var(--hc-vv-top,0px) + 8px);bottom:auto;width:auto;height:calc(var(--hc-vv-height,100dvh) - 16px);max-height:calc(var(--hc-vv-height,100dvh) - 16px);border-radius:19px}#hpb-ai-chat .hc-header{padding:12px 12px 10px;gap:8px}#hpb-ai-chat .hc-toolbar{padding:0 12px 8px}#hpb-ai-chat .hc-body{padding:18px 14px}#hpb-ai-chat .hc-launcher{right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}#hpb-ai-chat #hpb-chat-input,#hpb-ai-chat .hc-panel input:not([type=checkbox]){font-size:16px}#hpb-ai-chat .hc-send{width:42px;height:42px;flex-basis:42px}#hpb-ai-chat .hc-icon{width:40px;height:40px;flex-basis:40px}#hpb-ai-chat .hc-footer{padding-bottom:max(10px,env(safe-area-inset-bottom))}#hpb-ai-chat .hc-mode{display:none}#hpb-ai-chat .hc-toolbar button{margin-left:auto}body.hpb-chat-open{overflow:hidden}}@media(max-height:500px){#hpb-ai-chat .hc-header{padding-top:8px;padding-bottom:6px}#hpb-ai-chat .hc-toolbar{padding-bottom:5px}#hpb-ai-chat .hc-footer>span{display:none}#hpb-ai-chat .hc-footer{padding:4px}#hpb-ai-chat .hc-actions{padding-top:5px}#hpb-ai-chat .hc-welcome h2{font-size:19px}}@media(prefers-reduced-motion:reduce){#hpb-ai-chat *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@keyframes hpb-pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}100%{opacity:1;transform:scale(1)}}.hpb-contact-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:28px!important;margin-bottom:65px!important}.hpb-contact-card{background:#ffffff!important;border-radius:18px!important;border:1px solid rgb(226 232 240 / .9)!important;box-shadow:0 4px 20px -2px rgb(15 23 42 / .05),0 2px 6px -1px rgb(15 23 42 / .02)!important;padding:30px 24px!important;display:flex!important;align-items:flex-start!important;gap:18px!important;transition:transform 0.35s cubic-bezier(.16,1,.3,1),box-shadow 0.35s cubic-bezier(.16,1,.3,1),border-color 0.3s ease!important;position:relative!important;box-sizing:border-box!important}.hpb-contact-card:hover{transform:translateY(-6px)!important;box-shadow:0 20px 35px -8px rgb(26 86 219 / .12),0 10px 18px -4px rgb(15 23 42 / .04)!important;border-color:rgb(26 86 219 / .35)!important}.hpb-contact-icon{width:54px!important;height:54px!important;min-width:54px!important;border-radius:15px!important;background:linear-gradient(135deg,rgb(26 86 219 / .08) 0%,rgb(124 58 237 / .12) 100%)!important;color:#1a56db!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all 0.35s ease!important;box-shadow:0 4px 12px rgb(26 86 219 / .08)!important}.hpb-contact-card:hover .hpb-contact-icon{background:linear-gradient(135deg,#1a56db 0%,#7c3aed 100%)!important;color:#ffffff!important;box-shadow:0 6px 18px rgb(26 86 219 / .35)!important;transform:scale(1.06) rotate(3deg)!important}.hpb-contact-icon svg{stroke:currentColor!important}.hpb-contact-content{flex:1 1 auto!important}@media (max-width:1024px){.hpb-contact-grid{grid-template-columns:1fr!important;gap:20px!important}}@media (max-width:767px){.hpb-contact-grid{grid-template-columns:1fr!important;gap:16px!important;margin-bottom:40px!important}.hpb-contact-card{padding:22px 18px!important;border-radius:16px!important}.hpb-contact-icon{width:48px!important;height:48px!important;min-width:48px!important;border-radius:12px!important}}
@media (max-width:849px){a.button:not(.icon),.button.is-link.is-small,button.button.is-link,.hs-solution-action,.hs-pf-link,.hs-text-link,.phone-link,.wc-btn,.social-pill,.course-btn,.hpj-search-clear{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.search-field,.ux-search-submit{min-height:44px}.hpj-domain-link,.hpf-zalo,.hpf-phone{display:inline-flex;align-items:center;min-height:44px}#logo a{min-height:44px}.hpj-badge,.hpj-category-pill,.hpj-tag-item,.hpj-status,.hpt-service-tag,.cat-label,.hpf-eyebrow,.hpf-contact-label,.eyebrow,.hs-eyebrow,.lesson-tool-pill,.wc-kicker,.vc-check-icon,.hpj-pill-count,.hs-solution-badge,.hs-pf-tag,.proof-eyebrow,.output-tag,.course-label,.price-label,.mentor-badge,.closing-note,.proof-tag,.phase-step,.course-btn,.hpf-phone,.hpf-zalo{font-size:12px!important}.course-btn,.hs-solution-action,.hs-pf-link,.social-pill{box-sizing:border-box}}@media (max-width:849px){#hpb-course section.course-section.wrap:not(.mentor):not(.closing):not(.hero){padding-left:20px!important;padding-right:20px!important;box-sizing:border-box}.home-sec-4 h2,.home-sec-8 h2,.home-sec-8 .text-title{padding-left:16px;padding-right:16px;box-sizing:border-box}.home-sec-2{padding-bottom:0!important}.home-sec-2 .img-banner{padding-bottom:0!important}.home-sec-4{padding-top:20px!important}}@media (max-width:549px){#hpb-chat-toggle.hc-launcher{width:56px!important;height:56px!important;min-width:56px!important;padding:0!important;border-radius:50%!important;justify-content:center!important;left:auto!important;right:14px!important;gap:0!important}#hpb-chat-toggle.hc-launcher>span[data-i18n]{display:none!important}#hpb-chat-toggle.hc-launcher>svg{width:26px!important;height:26px!important;margin:0!important}#footer .hpf-grid{grid-template-columns:.9fr 1.1fr!important;gap:28px 12px!important}#footer .hpf li a{white-space:nowrap}}
/* Ẩn các nút liên hệ cũ trùng lặp */
body .phone-ring, body .list-shortcut-desktop, body .list-shortcut-mobile, body .hpb-float-contact { display: none !important; }

/* Contact Menu Container */
.hpb-contact-menu {
    position: fixed;
    left: 20px;
    bottom: max(20px, env(safe-area-inset-bottom));
    z-index: 999999;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    user-select: none;
    -webkit-user-select: none;
}
.hpb-contact-menu *, .hpb-contact-menu *::before, .hpb-contact-menu *::after {
    box-sizing: border-box;
}

/* Trigger Button Summary */
.hpb-contact-menu > summary {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0;
    margin: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    list-style: none;
    outline: none;
}
.hpb-contact-menu > summary::-webkit-details-marker { display: none; }

/* The FAB Circle */
.hpb-contact-btn {
    position: relative;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 24px -4px rgba(37, 99, 235, 0.45), 0 2px 6px -1px rgba(37, 99, 235, 0.3);
    transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s ease, background 0.2s ease;
    border: 2px solid rgba(255, 255, 255, 0.35);
}
.hpb-contact-menu > summary:hover .hpb-contact-btn {
    transform: scale(1.06);
    box-shadow: 0 12px 28px -4px rgba(37, 99, 235, 0.55), 0 4px 10px -2px rgba(37, 99, 235, 0.35);
}
.hpb-contact-menu[open] > summary .hpb-contact-btn {
    background: #0f172a;
    box-shadow: 0 8px 20px -4px rgba(15, 23, 42, 0.4);
    border-color: rgba(255, 255, 255, 0.2);
}

/* Pulsing Wave Effect */
.hpb-contact-pulse {
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    background: rgba(37, 99, 235, 0.35);
    z-index: -1;
    pointer-events: none;
    animation: hpb-pulse-ring 2.4s cubic-bezier(0.24, 0, 0.38, 1) infinite;
}
.hpb-contact-menu[open] .hpb-contact-pulse {
    display: none;
}
@keyframes hpb-pulse-ring {
    0% { transform: scale(0.9); opacity: 0.85; }
    70% { transform: scale(1.45); opacity: 0; }
    100% { transform: scale(1.45); opacity: 0; }
}

/* Online status dot on button */
.hpb-contact-badge {
    position: absolute;
    top: 1px;
    right: 1px;
    width: 13px;
    height: 13px;
    background: #10b981;
    border: 2.5px solid #ffffff;
    border-radius: 50%;
    z-index: 2;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}
.hpb-contact-menu[open] .hpb-contact-badge {
    display: none;
}

/* Trigger Icons */
.hpb-contact-icon-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
}
.hpb-contact-symbol {
    width: 24px;
    height: 24px;
    display: block;
    transition: transform 0.2s ease, opacity 0.2s ease;
}
.hpb-contact-close {
    width: 22px;
    height: 22px;
    display: none;
    transition: transform 0.2s ease;
}
.hpb-contact-menu[open] .hpb-contact-symbol { display: none; }
.hpb-contact-menu[open] .hpb-contact-close {
    display: block;
    animation: hpb-rotate-in 0.25s ease-out;
}
@keyframes hpb-rotate-in {
    from { transform: rotate(-90deg) scale(0.8); opacity: 0; }
    to { transform: rotate(0) scale(1); opacity: 1; }
}

/* Desktop Pill Label */
.hpb-contact-pill-label {
    display: flex;
    align-items: center;
    padding: 8px 14px;
    background: #ffffff;
    color: #1e293b;
    font-size: 13px;
    font-weight: 600;
    border-radius: 24px;
    box-shadow: 0 4px 16px -2px rgba(15, 23, 42, 0.12), 0 0 0 1px rgba(226, 232, 240, 0.9);
    transition: transform 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
    white-space: nowrap;
}
.hpb-contact-menu > summary:hover .hpb-contact-pill-label {
    transform: translateX(3px);
    box-shadow: 0 6px 20px -2px rgba(15, 23, 42, 0.16);
    color: #2563eb;
}
.hpb-contact-menu[open] .hpb-contact-pill-label {
    display: none;
}
.hpb-contact-menu > summary:focus-visible, .hpb-contact-dock a:focus-visible {
    outline: 3px solid #60a5fa;
    outline-offset: 3px;
}

/* --- The Popup Dock Card --- */
.hpb-contact-menu:not([open]) .hpb-contact-dock { display: none; }

.hpb-contact-dock {
    position: absolute;
    left: 0;
    bottom: 72px;
    width: 300px;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(226, 232, 240, 0.85);
    border-radius: 20px;
    box-shadow: 0 20px 40px -10px rgba(15, 23, 42, 0.18), 0 4px 14px -2px rgba(15, 23, 42, 0.06);
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    animation: hpb-dock-reveal 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    transform-origin: bottom left;
}
@keyframes hpb-dock-reveal {
    from { opacity: 0; transform: translateY(12px) scale(0.96); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

/* Dock Header */
.hpb-dock-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2px 4px 8px 4px;
    border-bottom: 1px solid #f1f5f9;
}
.hpb-dock-header__info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.hpb-dock-header__title {
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: -0.2px;
}
.hpb-dock-header__status {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    font-weight: 600;
    color: #10b981;
}
.hpb-dock-header__dot {
    width: 7px;
    height: 7px;
    background: #10b981;
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
    animation: hpb-dot-blink 1.8s infinite ease-in-out;
}
@keyframes hpb-dot-blink {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(0.85); }
}
.hpb-dock-header__close {
    background: transparent;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    padding: 6px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}
.hpb-dock-header__close:hover {
    background: #f1f5f9;
    color: #334155;
}

/* Dock Action Cards */
.hpb-dock-body {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.hpb-dock-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 9px 12px;
    border-radius: 13px;
    background: #f8fafc;
    border: 1px solid #f1f5f9;
    text-decoration: none !important;
    color: inherit;
    transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
    position: relative;
    overflow: hidden;
}
.hpb-dock-card:hover {
    background: #ffffff;
    border-color: #cbd5e1;
    transform: translateY(-1.5px);
    box-shadow: 0 6px 16px -2px rgba(15, 23, 42, 0.08);
}

/* Icon Containers */
.hpb-dock-card__icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    box-shadow: 0 3px 8px rgba(0,0,0,0.12);
    transition: transform 0.2s ease;
}
.hpb-dock-card:hover .hpb-dock-card__icon {
    transform: scale(1.06);
}

/* Brand specific icon backgrounds */
.hpb-dock-card--phone .hpb-dock-card__icon {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}
.hpb-dock-card--zalo .hpb-dock-card__icon {
    background: linear-gradient(135deg, #0084ff 0%, #0056d6 100%);
}
.hpb-dock-card--messenger .hpb-dock-card__icon {
    background: linear-gradient(135deg, #00b2ff 0%, #006aff 50%, #9b51e0 100%);
}

.hpb-dock-card__content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}
.hpb-dock-card__title {
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.25;
    transition: color 0.15s ease;
}
.hpb-dock-card:hover .hpb-dock-card__title {
    color: #2563eb;
}
.hpb-dock-card__subtitle {
    font-size: 11.5px;
    font-weight: 500;
    color: #64748b;
    margin-top: 1px;
    line-height: 1.3;
}
.hpb-dock-card--phone .hpb-dock-card__subtitle {
    color: #059669;
    font-weight: 600;
}

/* Arrow Chevrons */
.hpb-dock-card__arrow {
    color: #cbd5e1;
    transition: transform 0.2s ease, color 0.2s ease;
    flex: none;
}
.hpb-dock-card:hover .hpb-dock-card__arrow {
    color: #2563eb;
    transform: translateX(3px);
}

/* Footer Note */
.hpb-dock-footer {
    padding-top: 8px;
    margin-top: 2px;
    border-top: 1px dashed #e2e8f0;
    text-align: center;
    font-size: 11px;
    font-weight: 500;
    color: #94a3b8;
}

/* Mobile & Reduced Motion */
@media (max-width: 549px) {
    .hpb-contact-menu {
        left: 14px;
        bottom: max(14px, env(safe-area-inset-bottom));
    }
    .hpb-contact-pill-label {
        display: none;
    }
    .hpb-contact-btn {
        width: 50px;
        height: 50px;
    }
    .hpb-contact-dock {
        width: calc(100vw - 28px);
        max-width: 320px;
        bottom: 66px;
    }
    body.hpb-chat-open .hpb-contact-menu {
        visibility: hidden !important;
        pointer-events: none !important;
        opacity: 0 !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    .hpb-contact-btn, .hpb-contact-pulse, .hpb-contact-dock {
        animation: none !important;
        transition: none !important;
    }
}

/* Vị trí nút cuộn lên đầu trang (Back to top) */
body #top-link.back-to-top {
    right: 24px;
    left: auto;
    bottom: calc(84px + env(safe-area-inset-bottom));
    width: 36px;
    height: 36px;
    min-height: 36px;
    min-width: 36px;
    margin: 0;
    padding: 0;
    border: 1px solid #dce4ee;
    border-radius: 50%;
    background: #fff;
    color: #53657d;
    box-shadow: 0 3px 12px #0f172a12;
    z-index: 999998;
    line-height: 34px;
}
body #top-link.back-to-top i { display: none; }
body #top-link.back-to-top::before {
    content: '';
    position: absolute;
    top: 14px;
    left: 13px;
    width: 8px;
    height: 8px;
    border-top: 2px solid currentColor;
    border-left: 2px solid currentColor;
    transform: rotate(45deg);
}
body #top-link.back-to-top:hover {
    background: #eff5ff;
    color: #2057dc;
    border-color: #a9c1ef;
}
body #top-link.back-to-top:focus-visible {
    outline: 3px solid #60a5fa;
    outline-offset: 3px;
}
body.hpb-chat-open #top-link.back-to-top {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
@media (max-width: 549px) {
    body #top-link.back-to-top {
        right: 18px;
        bottom: calc(76px + env(safe-area-inset-bottom));
    }
}
