.cart-header h2 {
  font-weight: 600;
  font-size: 1.25rem;
}

.cart-table {
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;
  border-color: #dee2e6;
}

.cart-table th,
.cart-table td {
  vertical-align: middle;
  text-align: center;
  padding: 10px;
  color: grey;
  font-size: 14px;
  font-weight: 500;
}

/* Column widths */
.cart-table th:nth-child(1),
.cart-table td:nth-child(1) {
  /* SL */
  width: 3%;
}

.cart-table th:nth-child(2),
.cart-table td:nth-child(2) {
  /* Image */
  width: 6%;
}

.cart-table th:nth-child(3),
.cart-table td:nth-child(3) {
  width: 45%;
  text-align: left;
}

.cart-table th:nth-child(4),
.cart-table td:nth-child(4) {
  /* Variations */
  width: 10%;
}

.cart-table th:nth-child(5),
.cart-table td:nth-child(5) {
  /* Price */
  width: 7%;
}

.cart-table th:nth-child(6),
.cart-table td:nth-child(6) {
  /* Quantity */
  width: 12%;
}

.cart-table th:nth-child(7),
.cart-table td:nth-child(7) {
  width: 5%;
}

.cart-table .cell {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.4;
}

/* Hover effect */
.cart-table tbody tr {
  background-color: var(--color-text-white);
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.cart-table tbody tr:hover {
  background-color: #f5f5f5 !important;
}

.cart-table .cell img {
  height: 35px;
}

.coupon-group {
  max-width: 300px;
}

.coupon-input {
  font-size: 14px;
  padding: 7px 10px;
}

.coupon-input::placeholder {
  color: #888;
  font-size: 13px;
}

.cart-summary p {
  margin-bottom: 0;
  font-weight: normal;
  font-size: 14px;
}

.calculation-area {
  border-bottom: 1px solid #d4d4d4;
  padding-bottom: 10px;
}

.cart-calculation-total span {
  font-weight: 600;
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .item-table {
    width: 100%;
    overflow-x: auto;
  }

  .cart-table {
    min-width: 700px;
    border-collapse: collapse;
    width: 100%;
  }

  .cell button {
    font-size: 10px;
    padding: 5px;
  }

  .cart-table .cell {
    white-space: normal;
    word-wrap: break-word;
    overflow-wrap: anywhere;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.4;
  }

  .cart-table th:nth-child(3),
  .cart-table td:nth-child(3) {
    width: 15%;
    text-align: left;
  }

  .cart-table th:nth-child(7),
  .cart-table td:nth-child(7) {
    width: 4%;
  }

  .cart-table th:last-child,
  .cart-table td:last-child {
    position: sticky;
    right: 0;
    background: var(--color-text-white);
    z-index: 3;
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);
  }

  .cart-table td:last-child {
    border-left: 1px solid #ddd;
  }

  .cart-table tbody tr {
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
  }

  .cart-table tbody tr:hover {
    background-color: #f5f5f5 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  }

  .coupon-input {
    font-size: 12px;
  }

  .coupon-input::placeholder {
    font-size: 12px;
  }
}
