.mp-product-availability {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin: .15rem 0 .75rem;
    padding: .4rem .65rem;
    border-radius: 999px;
    background: #eef8f2;
    color: var(--mp-success);
    font-size: .76rem;
    font-weight: 800;
}
.mp-product-availability::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.mp-product-availability.is-unavailable { background: var(--mp-surface-2); color: var(--mp-muted); }
.mp-document-request { margin: 1.1rem 0; padding: .9rem 1rem; border: 1px dashed var(--mp-border); border-radius: var(--mp-radius); color: var(--mp-muted); font-size: .82rem; }
.mp-document-request a { color: var(--mp-ink); font-weight: 750; }
.mp-mobile-product-bar { display: none; }

@media (max-width: 760px) {
    body.single-product { padding-bottom: 78px; }
    /* The permanent privacy-preferences control remains available, but it must
       sit above the mobile purchase bar instead of covering the buy CTA. */
    body.single-product .mpc-consent-manage {
        bottom: calc(92px + env(safe-area-inset-bottom));
        left: 10px;
    }
    .mp-mobile-product-bar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 180;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: .5rem;
        align-items: center;
        padding: .65rem max(12px, env(safe-area-inset-left)) calc(.65rem + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-right));
        border-top: 1px solid var(--mp-border);
        background: rgb(255 255 255 / .98);
        box-shadow: 0 -12px 35px rgb(15 23 42 / .10);
        backdrop-filter: blur(14px);
    }
    .mp-mobile-product-bar__price { min-width: 0; overflow: hidden; color: var(--mp-ink); font-size: .9rem; font-weight: 850; white-space: nowrap; text-overflow: ellipsis; }
    .mp-mobile-product-bar__price del { display: none; }
    .mp-mobile-product-bar .mp-button { min-height: 46px; padding-inline: .9rem; font-size: .8rem; }
    .mp-mobile-product-bar__quote { border-color: var(--mp-border); background: #fff; color: var(--mp-ink); }
}

@media (max-width: 420px) {
    .mp-mobile-product-bar { grid-template-columns: 1fr 1fr; }
    .mp-mobile-product-bar__price { grid-column: 1 / -1; font-size: .78rem; }
    .mp-mobile-product-bar .mp-button { width: 100%; }
}


.mp-product-image-reference {
    margin: .65rem 0 0;
    padding: 0 .25rem;
    color: var(--mp-muted);
    font-size: .68rem;
    font-weight: 750;
    line-height: 1.45;
    letter-spacing: .035em;
    text-align: center;
    text-transform: uppercase;
}
