/* Sepet + ödeme */

.cart-table th { font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; color: var(--mh-gray); font-weight: 700; border-bottom: 1px solid var(--mh-mid-gray); }
.cart-table td { vertical-align: middle; padding: 1rem .5rem; border-bottom: 1px solid var(--mh-light-gray); }
.cart-thumb { width: 64px; height: 64px; border-radius: 10px; background: var(--mh-light-gray); display: grid; place-items: center; color: #b9bcc3; font-size: 1.6rem; flex: 0 0 auto; overflow: hidden; }
.cart-thumb img { width: 100%; height: 100%; object-fit: contain; }
.summary-box { background: var(--mh-light-gray); border-radius: var(--mh-radius); padding: 1.5rem; position: sticky; top: 140px; }
.summary-box .row-line { display: flex; justify-content: space-between; font-size: .9rem; padding: .35rem 0; }
.summary-box .row-line.total { font-size: 1.2rem; font-weight: 800; border-top: 1px solid var(--mh-mid-gray); margin-top: .5rem; padding-top: .8rem; }
.summary-box .row-line .text-success { font-weight: 700; }
.free-ship-bar { height: 8px; background: #e2e2e2; border-radius: 4px; overflow: hidden; margin: .5rem 0; }
.free-ship-bar span { display: block; height: 100%; background: var(--mh-green); }
.pay-option { border: 1.5px solid var(--mh-mid-gray); border-radius: var(--mh-radius-sm); padding: 1rem; cursor: pointer; display: flex; gap: .75rem; align-items: flex-start; height: 100%; }
.pay-option:has(input:checked) { border-color: var(--mh-primary); background: var(--mh-primary-tint); }
.pay-option .pay-title { font-weight: 800; display: block; }
.pay-option small { color: var(--mh-gray); }
.card-pay-panel { border-top: 1px solid var(--mh-mid-gray); padding-top: 1.25rem; }
.installment-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: .5rem; }
.inst-option { border: 1.5px solid var(--mh-mid-gray); border-radius: 10px; padding: .65rem .75rem; cursor: pointer; text-align: center; font-weight: 700; font-size: .88rem; margin: 0; }
.inst-option input { display: none; }
.inst-option:has(input:checked) { border-color: var(--mh-primary); background: var(--mh-primary-tint); color: var(--mh-primary-dark); }

@media (max-width: 991.98px) {
  .summary-box { position: static; margin-top: .25rem; }
  .pay-option { padding: .85rem; }
  .empty-state .btn { display: block; width: 100%; margin: .4rem 0 0 !important; }
  .cart-actions-bar {
    flex-direction: column;
    gap: .5rem;
  }
  .cart-actions-bar .btn { width: 100%; }
}

@media (max-width: 575.98px) {
  .cart-thumb { width: 56px; height: 56px; font-size: 1.35rem; }
  .qty-input { margin-left: auto; }
}
