/* Versaro — sacola oficial e contador no cabeçalho, v1.0.0. */
#masthead .vs-menu-cart {
    flex-shrink: 0;
}

#masthead .vs-header-cart-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    flex: 0 0 auto;
    min-width: 44px;
    min-height: 44px;
    text-decoration: none;
    border-radius: 0;
}

#ast-desktop-header .main-header-menu > .vs-menu-cart > .vs-header-cart-link {
    width: 3rem;
    padding-inline: 0 !important;
    gap: 0;
}

.vs-header-cart-content {
    display: inline-flex;
    position: relative;
    align-items: center;
    justify-content: center;
    flex: 0 0 24px;
    width: 24px;
    height: 28px;
    line-height: 1;
}

.vs-header-cart-icon {
    display: block;
    width: 21px;
    height: 25px;
    background-color: currentColor;
    -webkit-mask: url("../../img/versaro-cart.svg") center / contain no-repeat;
    mask: url("../../img/versaro-cart.svg") center / contain no-repeat;
    transition: transform 160ms ease;
}

.vs-header-cart-count {
    position: absolute;
    top: -5px;
    right: -10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 17px;
    height: 17px;
    padding: 0 3px;
    border-radius: 99px;
    background: var(--vs-color-diamante, #edebe6);
    color: var(--vs-color-chama, #6e341f);
    font-family: var(--vs-font-body, sans-serif);
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    pointer-events: none;
}

.vs-header-cart-count[hidden] { display: none !important; }

.vs-header-cart-label {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

#ast-desktop-header .vs-header-cart-menu-text { display: none; }

#masthead .vs-header-cart-link:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}

#masthead .vs-header-cart-link:hover .vs-header-cart-icon {
    transform: translateY(-1px);
}

#ast-mobile-header .vs-header-cart-mobile {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    margin-inline-end: 8px;
}

#ast-mobile-header .vs-header-cart-link {
    width: 44px;
    padding: 0;
    color: var(--vs-color-diamante, #edebe6);
}

#ast-mobile-header .vs-header-cart-link:hover {
    color: var(--vs-color-areia, #c9beaa);
}

/* Se o JS não executar, continua existindo um link no menu móvel. */
#ast-hf-mobile-menu .vs-menu-cart .vs-header-cart-link {
    display: flex;
    align-items: center;
    gap: .8rem;
}

body.vs-header-cart-mounted #ast-hf-mobile-menu > .vs-menu-cart {
    display: none !important;
}

@media (prefers-reduced-motion: reduce) {
    .vs-header-cart-icon { transition: none; }
}
