/* Product-page bar only. Public variables can be overridden by the child theme. */
#as-sticky-cart {
    --as-sc-blue: #094e91;
    --as-sc-control-height: 44px;
    --as-sc-offset: 0px;
    position: fixed;
    bottom: var(--as-sc-offset);
    left: 0;
    right: 0;
    z-index: 1020; /* Bootstrap modals and backdrops remain above the bar. */
    border-top: 3px solid #ebd7b9;
    background: rgba(255, 255, 255, .80);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    color: #263747;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, .12);
    padding: 8px 20px;
    padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
    font-family: inherit;
    text-align: left;
}
#as-sticky-cart[hidden], #as-sticky-cart-spacer[hidden] { display: none !important; }
#as-sticky-cart, #as-sticky-cart * { box-sizing: border-box; }
#as-sticky-cart .as-sc-inner {
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: space-between;
}
#as-sticky-cart .as-sc-product { min-width: 0; flex: 1 1 auto; }
#as-sticky-cart .as-sc-image { width: 44px; height: 44px; flex: 0 0 44px; object-fit: contain; border-radius: 3px; }
#as-sticky-cart .as-sc-image[hidden] { display: none !important; }
#as-sticky-cart .as-sc-title {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    overflow-wrap: anywhere;
    margin: 0 0 3px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
#as-sticky-cart .as-sc-number { font-size: 12px; line-height: 1.4; color: #5e6c79; overflow-wrap: anywhere; }
#as-sticky-cart .as-sc-price { flex: 0 0 auto; color: #ff8000; font-family: var(--as-sc-price-font, inherit); font-size: 24px; font-weight: var(--as-sc-price-weight, 700); line-height: 1.2; white-space: nowrap; }
#as-sticky-cart .as-sc-price[hidden] { display: none !important; }
#as-sticky-cart .as-sc-actions { display: flex; gap: 14px; align-items: center; flex: 0 0 auto; }
#as-sticky-cart .as-sc-quantity { display: flex; height: var(--as-sc-control-height); border: 1px solid #cbd5de; border-radius: 5px; overflow: hidden; background: #fff; }
#as-sticky-cart .as-sc-step, #as-sticky-cart .as-sc-input, #as-sticky-cart .as-sc-buy {
    font-family: inherit;
    margin: 0;
    min-height: 0;
    border: 0;
    box-shadow: none;
}
#as-sticky-cart .as-sc-step { width: 36px; height: 100%; background: #f3f6f8; color: #263747; font-size: 21px; padding: 0; cursor: pointer; }
#as-sticky-cart .as-sc-input { width: 54px; height: 100%; min-width: 0; text-align: center; padding: 0 3px; background: #fff; color: #263747; font-size: 16px; border-radius: 0; }
#as-sticky-cart .as-sc-buy { display: flex; gap: 6px; align-items: center; justify-content: center; height: var(--as-sc-control-height); border: 1px solid var(--as-sc-blue); border-radius: 20px; padding: 0 18px; background: #fff; color: var(--as-sc-blue); font-size: 15px; font-weight: 400; line-height: 1.4; white-space: nowrap; cursor: pointer; touch-action: manipulation; }
#as-sticky-cart .as-sc-buy span { order: 1; }
#as-sticky-cart .as-sc-buy i { order: 2; }
@media (hover: hover) and (pointer: fine) {
    #as-sticky-cart .as-sc-buy:hover { background: #5cb85c; border-color: #5cb85c; color: #fff; }
}
#as-sticky-cart .as-sc-buy:disabled { opacity: .6; cursor: wait; }
#as-sticky-cart button:focus-visible, #as-sticky-cart input:focus-visible { outline: 2px solid var(--as-sc-blue); outline-offset: -3px; }
#as-sticky-cart .as-sc-error { width: 100%; margin: 8px auto 0; color: #a71b24; font-size: 13px; }
#as-sticky-cart .as-sc-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
#as-sticky-cart-spacer { height: 0; pointer-events: none; }

    #as-sticky-cart.as-sc-mobile { border-top-width: 2px; padding: 6px 10px; padding-bottom: calc(6px + env(safe-area-inset-bottom, 0px)); }
    #as-sticky-cart.as-sc-mobile .as-sc-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px; }
    #as-sticky-cart.as-sc-mobile.as-sc-has-image .as-sc-inner { grid-template-columns: 28px minmax(0, 1fr) auto; }
    #as-sticky-cart.as-sc-mobile .as-sc-image { grid-column: 1; grid-row: 1; width: 28px; height: 28px; }
    #as-sticky-cart.as-sc-mobile .as-sc-product { grid-column: 1; grid-row: 1; }
    #as-sticky-cart.as-sc-mobile.as-sc-has-image .as-sc-product { grid-column: 2; }
    #as-sticky-cart.as-sc-mobile .as-sc-price { grid-column: 2; grid-row: 1; }
    #as-sticky-cart.as-sc-mobile.as-sc-has-image .as-sc-price { grid-column: 3; }
    #as-sticky-cart.as-sc-mobile .as-sc-actions { grid-column: 1 / -1; grid-row: 2; }
    #as-sticky-cart.as-sc-mobile .as-sc-product, #as-sticky-cart.as-sc-mobile .as-sc-actions { flex-basis: 100%; }
    #as-sticky-cart.as-sc-mobile .as-sc-product { flex: 1 1 0; }
    #as-sticky-cart.as-sc-mobile .as-sc-price { font-family: inherit; font-size: 16px; font-weight: 600; line-height: 18px; }
    #as-sticky-cart.as-sc-mobile .as-sc-title { display: block; margin: 0; font-size: 13px; line-height: 18px; white-space: nowrap; text-overflow: ellipsis; overflow-wrap: normal; }
    #as-sticky-cart.as-sc-mobile .as-sc-number { display: none; }
    #as-sticky-cart.as-sc-mobile .as-sc-actions { gap: 8px; }
    #as-sticky-cart.as-sc-mobile .as-sc-buy { flex: 1 1 auto; padding: 0 10px; font-size: 14px; }
    #as-sticky-cart.as-sc-mobile .as-sc-step { width: 34px; }
    #as-sticky-cart.as-sc-mobile .as-sc-input { width: 46px; }

@media print { #as-sticky-cart, #as-sticky-cart-spacer { display: none !important; } }
