.cart-table { width:100%; border-collapse:collapse; background:#fff; border-radius:12px; overflow:hidden; border:1px solid var(--store-border); }
.cart-table th, .cart-table td { padding:14px 16px; border-bottom:1px solid var(--store-border); text-align:left; }
.cart-table th { background:#f9fafb; font-size:13px; color:#6b7280; }
.cart-table__check { width:44px; text-align:center; vertical-align:middle; }
.cart-table__check input[type="checkbox"] { width:18px; height:18px; cursor:pointer; accent-color:var(--store-accent-search); }
.cart-actions__hint { margin-right:auto; color:#6b7280; font-size:14px; }
.cart-item { display:flex; align-items:center; gap:12px; }
.cart-item img { width:64px; height:64px; object-fit:cover; border-radius:8px; background:#f1f5f9; }
.cart-item__shop { color:#6b7280; font-size:12px; }
.cart-qty { display:inline-flex; align-items:center; border:1px solid var(--store-border); border-radius:999px; overflow:hidden; background:#fff; }
.cart-qty__btn { width:34px; height:34px; border:0; background:#f9fafb; color:#111827; font-size:18px; line-height:1; cursor:pointer; }
.cart-qty__btn:hover:not(:disabled) { background:#f3f4f6; }
.cart-qty__btn:disabled { color:#cbd5e1; cursor:not-allowed; }
.cart-item__qty { min-width:34px; padding:0 8px; text-align:center; font-weight:700; }
.cart-actions { margin-top:20px; display:flex; justify-content:flex-end; align-items:center; gap:12px; }

@media (max-width: 768px) {
  body.page-cart,
  body.page-cart.page-mobile-cart {
    padding-bottom: calc(56px + env(safe-area-inset-bottom, 0px));
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  body.page-cart .store-main,
  body.page-cart.page-mobile-cart .store-main {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 8px 16px 20px;
  }

  body.page-cart .section,
  body.page-cart.page-mobile-cart .section {
    min-width: 0;
  }

  body.page-cart .section__title,
  body.page-cart.page-mobile-cart .section__title {
    font-size: 18px;
    margin-bottom: 12px;
  }

  body.page-cart .store-footer,
  body.page-cart #storeFooterLinks,
  body.page-cart #storeFooterLinksSection,
  body.page-cart.page-mobile-cart .store-footer,
  body.page-cart.page-mobile-cart #storeFooterLinks,
  body.page-cart.page-mobile-cart #storeFooterLinksSection {
    display: none !important;
  }

  body.page-cart #mobileTabbar.tk-tabbar,
  body.page-cart.page-mobile-cart #mobileTabbar.tk-tabbar {
    display: flex !important;
    position: fixed !important;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 500;
    height: calc(56px + env(safe-area-inset-bottom, 0px));
    padding-bottom: env(safe-area-inset-bottom, 0px);
    background: #fff;
    border-top: 1px solid #eee;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.06);
  }

  .cart-table {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .cart-table thead {
    display: none;
  }

  .cart-table tbody {
    display: grid;
    width: 100%;
    min-width: 0;
    gap: 12px;
  }

  .cart-table tr {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 8px 10px;
    width: 100%;
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--store-border);
    border-radius: 12px;
    background: #fff;
  }

  .cart-table th,
  .cart-table td {
    min-width: 0;
    padding: 0;
    border-bottom: 0;
  }

  .cart-table__check {
    width: 32px;
  }

  .cart-table td {
    display: flex;
    align-items: center;
  }

  .cart-table td:nth-child(1) {
    grid-row: 1 / span 4;
    align-items: flex-start;
    justify-content: center;
    padding-top: 4px;
  }

  .cart-table td:nth-child(2) {
    grid-column: 2;
  }

  .cart-table td:nth-child(3),
  .cart-table td:nth-child(4),
  .cart-table td:nth-child(5) {
    grid-column: 2;
    justify-content: space-between;
    gap: 12px;
    color: #111827;
    font-size: 13px;
  }

  .cart-table td:nth-child(3)::before,
  .cart-table td:nth-child(4)::before,
  .cart-table td:nth-child(5)::before {
    content: attr(data-label);
    flex-shrink: 0;
    color: #6b7280;
    font-weight: 500;
  }

  .cart-table td:nth-child(6) {
    grid-column: 1 / -1;
    justify-content: flex-end;
    padding-top: 2px;
  }

  .cart-item {
    width: 100%;
    min-width: 0;
    align-items: flex-start;
  }

  .cart-item img {
    width: 56px;
    height: 56px;
    flex-shrink: 0;
  }

  .cart-item > div {
    min-width: 0;
  }

  .cart-item__title {
    display: block;
    overflow-wrap: anywhere;
    line-height: 1.35;
  }

  .cart-qty {
    flex-shrink: 0;
  }

  .cart-actions { align-items:stretch; flex-direction:column; }
  .cart-actions .btn { justify-content:center; min-height:44px; }
}
