/* Public homepage contact panel, composed inside the existing support widget. */
body.qm-public-home.is-home-route .hrc-support-widget--contact {
    grid-template-rows: auto auto minmax(0, 1fr);
    block-size: min(720px, calc(100dvh - 112px));
}

body.qm-public-home .hrc-home-contact {
    display: grid;
    gap: var(--hrc-space-3);
    padding: var(--hrc-space-4);
    border-block-end: 1px solid var(--hrc-color-border);
    background: linear-gradient(145deg, var(--hrc-color-surface-raised), var(--hrc-color-surface-soft));
}

body.qm-public-home .hrc-home-contact-copy {
    display: grid;
    gap: 2px;
}

body.qm-public-home .hrc-home-contact-copy strong {
    color: var(--hrc-color-text);
    font-size: var(--hrc-text-sm);
    line-height: 1.35;
}

body.qm-public-home .hrc-home-contact-copy span {
    color: var(--hrc-color-text-muted);
    font-size: var(--hrc-text-xs);
    line-height: 1.4;
}

body.qm-public-home .hrc-home-contact-zalo {
    min-block-size: 62px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 24px;
    align-items: center;
    gap: var(--hrc-space-3);
    padding: 10px 12px;
    border: 1px solid color-mix(in srgb, #0a7cff 72%, var(--hrc-color-border));
    border-radius: var(--hrc-radius-md);
    background: linear-gradient(135deg, #0a7cff, #075ed1);
    color: #fff;
    box-shadow: 0 10px 24px rgba(10, 124, 255, .2);
    text-decoration: none;
    transition: transform 160ms ease, box-shadow 160ms ease;
}

body.qm-public-home .hrc-home-contact-zalo:hover {
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 14px 30px rgba(10, 124, 255, .26);
}

body.qm-public-home .hrc-home-contact-zalo-icon {
    inline-size: 42px;
    block-size: 42px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: #fff;
    color: #0877ee;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: -.03em;
}

body.qm-public-home .hrc-home-contact-zalo > span:nth-child(2) {
    min-inline-size: 0;
    display: grid;
    gap: 2px;
}

body.qm-public-home .hrc-home-contact-zalo b,
body.qm-public-home .hrc-home-contact-zalo small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.qm-public-home .hrc-home-contact-zalo b {
    font-size: var(--hrc-text-sm);
}

body.qm-public-home .hrc-home-contact-zalo small {
    color: rgba(255, 255, 255, .84);
    font-size: 11px;
}

body.qm-public-home .hrc-home-contact-zalo > svg {
    inline-size: 20px;
    block-size: 20px;
}

body.qm-public-home .hrc-home-contact-socials {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--hrc-space-2);
}

body.qm-public-home .hrc-home-contact-socials a {
    min-block-size: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px;
    border: 1px solid var(--hrc-color-border);
    border-radius: var(--hrc-radius-sm);
    background: var(--hrc-color-surface-raised);
    color: var(--hrc-color-text-soft);
    font-size: 11px;
    font-weight: var(--hrc-weight-bold);
    text-decoration: none;
    transition: border-color 140ms ease, background-color 140ms ease, color 140ms ease, transform 140ms ease;
}

body.qm-public-home .hrc-home-contact-socials a:hover {
    border-color: color-mix(in srgb, currentColor 42%, var(--hrc-color-border));
    background: var(--hrc-color-surface-soft);
    transform: translateY(-1px);
}

body.qm-public-home .hrc-home-contact-socials a.is-facebook { color: #1877f2; }
body.qm-public-home .hrc-home-contact-socials a.is-youtube { color: #e62117; }
body.qm-public-home .hrc-home-contact-socials a.is-tiktok { color: var(--hrc-color-text); }

body.qm-public-home .hrc-home-contact-socials svg {
    inline-size: 19px;
    block-size: 19px;
    flex: none;
}

body.qm-public-home .hrc-home-contact-socials .is-facebook svg,
body.qm-public-home .hrc-home-contact-socials .is-youtube svg,
body.qm-public-home .hrc-home-contact-socials .is-tiktok svg {
    fill: currentColor;
    stroke: none;
}

body.qm-public-home.is-home-route .hrc-support-widget--contact .hrc-support-identity {
    justify-content: flex-start;
    padding-block: var(--hrc-space-5);
}

@media (max-width: 767px) {
    body.qm-public-home.is-home-route .hrc-support-widget--contact {
        block-size: auto;
    }

    body.qm-public-home .hrc-home-contact {
        gap: var(--hrc-space-2);
        padding: var(--hrc-space-3);
    }

    body.qm-public-home .hrc-home-contact-zalo {
        min-block-size: 58px;
    }

    body.qm-public-home .hrc-home-contact-socials a {
        min-block-size: 48px;
    }
}

@media (max-width: 480px) {
    body.qm-public-home.is-home-route .hrc-support-widget--contact {
        block-size: 100dvh;
    }

    body.qm-public-home .hrc-home-contact-copy span {
        display: none;
    }

    body.qm-public-home .hrc-home-contact-zalo small {
        white-space: normal;
    }

    body.qm-public-home .hrc-home-contact-socials a {
        flex-direction: column;
        gap: 3px;
        padding: 6px 4px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.qm-public-home .hrc-home-contact :is(a, svg) {
        animation-duration: .01ms !important;
        transition-duration: .01ms !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.qm-public-home .hrc-home-contact :is(a) {
        transition-duration: .01ms !important;
    }
}
