.basket-items-wrap { overflow-x: auto; }
.basket-items > thead > tr > th:first-child { min-width: 250px; }
.basket-items > thead > tr > th:nth-child(2) { min-width: 250px; }
.basket-items > thead > tr > th:last-child { min-width: 150px; }
.basket-item-remove { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; background: transparent; border: 0; border-radius: 4px; }
.basket-item-remove:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.basket-item-mobile-label { display: none; }

@media (max-width: 767.98px) {
    .basket-items-wrap { overflow: visible; }
    .basket-items, .basket-items > tbody { display: block; width: 100%; }
    .basket-items > thead { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .basket-items > tbody > .basket-item { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; margin-bottom: 16px; padding: 16px; border: 1px solid var(--bs-border-color, #dee2e6); border-radius: 12px; }
    .basket-items > tbody > .basket-item > td { min-width: 0; padding: 0 !important; border: 0; background: transparent; box-shadow: none; }
    .basket-item-product, .basket-item-options { grid-column: 1 / -1; }
    .basket-item-overview { align-items: flex-start !important; padding-right: 28px; }
    .basket-item-removal { position: absolute; top: 0; right: 0; padding: 0 !important; }
    .basket-item-image { flex: 0 0 75px; margin-right: 12px !important; }
    .basket-item-image img { max-width: 75px; object-fit: contain; }
    .basket-item-description { min-width: 0; overflow-wrap: anywhere; }
    .basket-item-options > table { width: 100%; table-layout: fixed; font-size: 14px; }
    .basket-item-options > table td { padding-bottom: 4px; overflow-wrap: anywhere; }
    .basket-item-options .personalization-detail { max-width: 100%; }
    .basket-item-options--empty { display: none; }
    .basket-item-quantity { grid-column: 1; }
    .basket-item-total { grid-column: 2; align-self: end; overflow-wrap: anywhere; }
    .basket-item-mobile-label { display: block; margin-bottom: 8px; font-size: 14px; font-weight: 500; }
    .basket-item-quantity .shop-quantity { width: 100%; max-width: 150px; margin: 0 !important; }
}
