.bb-public-alert-wrap { display:grid; gap:10px; padding-top:20px; }
.bb-public-alert { border:1px solid transparent; border-radius:9px; padding:14px 17px; }
.bb-public-alert.is-success { background:#eaf8ef; border-color:#bfe3cc; color:#195b32; }
.bb-public-alert.is-warning { background:#fff7df; border-color:#eed69a; color:#684c0c; }
.bb-public-alert.is-error { background:#fff0f2; border-color:#edc3cb; color:#811a30; }
.bb-public-alert.is-info { background:#f7edf1; border-color:#ead4dc; color:#5c3946; }

.bb-quantity-control .cs_quantity_input { width:72px; min-width:0; height:100%; border:0; background:transparent; appearance:textfield; }
.bb-quantity-control .cs_quantity_input::-webkit-inner-spin-button,
.bb-quantity-control .cs_quantity_input::-webkit-outer-spin-button { margin:0; appearance:none; }
.bb-quantity-control .cs_quantity_input:focus { outline:2px solid var(--bb-berry); outline-offset:-2px; }
.bb-quantity-control button:disabled { opacity:.45; cursor:not-allowed; }

.bb-cart-table { min-width:800px; }
.bb-cart-quantity-form { display:grid; gap:8px; min-width:165px; }
.bb-cart-quantity-form .cs_quantity { max-width:165px; }
.bb-update-quantity { width:max-content; border:0; background:transparent; color:var(--bb-berry); padding:0; text-decoration:underline; font-weight:600; }
.bb-cart-remove { position:static; }
.bb-cart-actions { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; }
.bb-cart-actions form { margin:0; }
.bb-empty-cart { max-width:680px; margin:0 auto; padding:50px 25px; text-align:center; border:1px dashed #dfcbd2; border-radius:16px; background:#fff9fb; }
.bb-empty-cart img { display:block; width:min(220px,65vw); height:190px; object-fit:contain; margin:0 auto 22px; }

.bb-disabled-action { display:inline-flex; align-items:center; justify-content:center; opacity:.6; cursor:not-allowed; pointer-events:none; }
.bb-product-purchase { display:grid; gap:16px; margin-top:22px; }
.bb-product-actions form { margin:0; }
.bb-product-unavailable { margin-top:22px; padding:16px; border:1px solid #edc3cb; border-radius:9px; background:#fff0f2; color:#811a30; }
.bb-quick-add-form { margin:0; }

.bb-mini-cart-empty { display:grid; justify-items:center; gap:10px; padding:55px 24px; text-align:center; }
.bb-mini-cart-empty i { color:var(--bb-berry); font-size:38px; }
.cs_cart_card_item_right form { margin:0; }
.cs_cart_card_subtotal { margin-bottom:14px; }

.bb-checkout-lines { display:grid; gap:14px; margin-bottom:15px; }
.bb-checkout-line { display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:12px; padding-bottom:14px; border-bottom:1px solid #f0e8eb; }
.bb-checkout-line img { width:58px; height:58px; object-fit:contain; border-radius:8px; background:#f8f5f6; }
.bb-checkout-line strong { text-align:right; }

@media (max-width:767px) {
  .bb-cart-scroll { max-width:100%; overscroll-behavior-inline:contain; }
  .bb-cart-actions { align-items:stretch; flex-direction:column; }
  .bb-cart-actions .cs_btn { width:100%; justify-content:center; }
  .bb-cart-actions form .cs_btn { width:100%; }
  .bb-checkout-line { grid-template-columns:50px minmax(0,1fr); }
  .bb-checkout-line img { width:50px; height:50px; }
  .bb-checkout-line > strong { grid-column:2; text-align:left; }
}

@media (max-width:390px) {
  .cs_cart_card { width:min(100%, 390px); }
  .bb-order-card { padding:22px 18px; }
}
