/* =============================================================
   DPL Cart Brand Overrides
   Applies to: cart drawer (snippets/cart-drawer.liquid)
               cart page   (sections/main-cart-items + main-cart-footer)
   ============================================================= */

/* ── Drawer shell ─────────────────────────────────────────── */

.drawer__inner {
  background: #FFFFFF;
  border: none;
  border-left: 1px solid #E5E5E5;
  width: 420px;
}

.drawer__header {
  padding: 20px 0;
  border-bottom: 1px solid #E5E5E5;
}

.drawer__heading {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 18px;
  font-weight: 500;
  color: #0D0D0D;
  letter-spacing: 0;
  margin: 0;
  text-align: left;
}

.drawer__close {
  color: #6B6B6B;
}

.drawer__close:hover {
  color: #0D0D0D;
}

.drawer__footer {
  border-top: 1px solid #E5E5E5;
  padding: 20px 0;
}

/* ── Cart page heading ────────────────────────────────────── */

.title--primary {
  font-family: 'IBM Plex Sans', sans-serif;
  font-weight: 500;
  color: #0D0D0D;
  text-align: left;
  letter-spacing: 0;
}

.title-wrapper-with-link .underlined-link {
  font-family: 'Geist', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #6B6B6B;
}

.title-wrapper-with-link .underlined-link:hover {
  color: #FF9A01;
}

/* ── Table header dividers ────────────────────────────────── */

.cart-items th {
  font-family: 'Geist', sans-serif;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6B6B6B;
  border-bottom: 1px solid #E5E5E5;
}

.cart-drawer .cart-items th {
  border-bottom: 1px solid #E5E5E5;
}

/* ── Cart item ────────────────────────────────────────────── */

.cart-items th,
.cart-items td {
  border: none;
}

/* Product image — 20px radius */
.cart-item__image-container,
.cart-drawer .cart-item__image {
  border-radius: 20px;
  overflow: hidden;
}

.cart-item__image {
  border-radius: 20px;
}

/* Product name */
.cart-item__name {
  font-family: 'Geist', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #0D0D0D;
  text-decoration: none;
}

.cart-item__name:hover {
  color: #FF9A01;
  text-decoration: none;
}

/* Variant / option text */
.product-option,
.product-option dt,
.product-option dd {
  font-family: 'Geist', sans-serif;
  font-size: 13px;
  font-weight: 400;
  color: #6B6B6B;
}

/* Price */
.cart-item__price-wrapper .price,
.cart-item__price-wrapper .price--end {
  font-family: 'Geist', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #0D0D0D;
}

.cart-item__old-price {
  color: #6B6B6B;
}

/* Row separator */
.cart-items td {
  border-bottom: 1px solid #F7F7F7;
}

/* ── Quantity input ───────────────────────────────────────── */

.quantity {
  background: #F7F7F7;
  border: 1px solid #E5E5E5;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  align-items: center;
  height: 40px;
  min-width: 112px;
}

.quantity__button {
  background: transparent;
  border: none;
  color: #0D0D0D;
  width: 36px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: none !important;
  min-width: unset;
  padding: 0;
}

.quantity__button:hover {
  color: #FF9A01;
  box-shadow: none !important;
  background: transparent;
}

.quantity__input {
  background: transparent;
  border: none;
  font-family: 'Geist', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #0D0D0D;
  text-align: center;
  width: 40px;
  box-shadow: none !important;
  padding: 0;
}

/* ── Remove button ────────────────────────────────────────── */

cart-remove-button .button,
cart-remove-button .button:hover {
  background: transparent;
  box-shadow: none !important;
  color: #6B6B6B;
  min-width: unset;
  padding: 0;
  border-radius: 50%;
  width: 32px;
  height: 32px;
}

cart-remove-button .button:hover {
  color: #dc2626;
}

/* ── Totals ───────────────────────────────────────────────── */

.totals {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}

.totals__total {
  font-family: 'Geist', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #6B6B6B;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0;
}

.totals__total-value {
  font-family: 'Geist', sans-serif;
  font-size: 22px;
  font-weight: 400;
  color: #0D0D0D;
  margin: 0;
}

.tax-note {
  font-family: 'Geist', sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #6B6B6B;
}

/* ── Checkout button ──────────────────────────────────────── */

.cart__checkout-button,
.cart__checkout-button.button {
  background: #FF9A01 !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 20px;
  height: 44px;
  font-family: 'Geist', sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  width: 100%;
  max-width: 100%;
  cursor: pointer;
  transition: background 0.15s;
}

.cart__checkout-button:hover,
.cart__checkout-button.button:hover {
  background: #D97F00 !important;
  box-shadow: none !important;
}

/* ── Empty state ──────────────────────────────────────────── */

.cart__empty-text {
  font-family: 'IBM Plex Sans', sans-serif;
  font-weight: 500;
  color: #0D0D0D;
}

.cart__warnings .button,
.cart-drawer__empty-content .button {
  background: #FF9A01 !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
  border-radius: 20px;
  height: 44px;
  font-family: 'Geist', sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: background 0.15s;
}

.cart__warnings .button:hover,
.cart-drawer__empty-content .button:hover {
  background: #D97F00 !important;
  box-shadow: none !important;
}

/* ── Cart page divider ────────────────────────────────────── */

.cart__items {
  border-bottom: 1px solid #E5E5E5;
}

/* ── Cart page footer ─────────────────────────────────────── */

.cart-drawer__footer {
  padding-top: 16px;
}

/* ── Discount badge ───────────────────────────────────────── */

.discounts__discount {
  font-family: 'Geist', sans-serif;
  font-size: 12px;
  color: #6B6B6B;
}

/* ── Scrollbar ────────────────────────────────────────────── */

cart-drawer-items::-webkit-scrollbar {
  width: 3px;
}

cart-drawer-items::-webkit-scrollbar-thumb {
  background: #E5E5E5;
  border-radius: 100px;
}

/* Shown when the free extras can't be supplied as a complete set — see assets/dpl-addon-sync.js.
   Stated plainly, and never alarming: the order still goes through. */
.dpl-gift-notice {
  margin: 0 0 16px;
  padding: 12px 16px;
  border: 1px solid #E5E5E5;
  border-radius: 20px;
  background: #F7F7F7;
  font-size: 13px;
  font-weight: 400;
  color: #6B6B6B;
}
