/* Cart totals card — mirrors the supplied reference while retaining the
 * native WooCommerce totals, rate selection and address calculator. */
.woocommerce-cart .wc-block-cart__sidebar {
  color: #fff;
  font-family: Inter, Arial, sans-serif !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__totals-title,
.woocommerce-cart .wc-block-cart__sidebar > .ds-mobile-cart-total-title {
  margin: 0 !important;
  padding: 0 0 0.625rem !important;
  border-bottom: 1px solid #343438 !important;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper {
  padding: 0.625rem 0 !important;
  border-bottom: 1px solid #343438 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item {
  padding: 0 !important;
  color: #fff !important;
  font-size: 0.875rem !important;
  line-height: 1.45 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__label,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__value {
  color: #fff !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__value,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item__value {
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping {
  padding-bottom: 0.5rem !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping__fieldset {
  padding: 0 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping .wc-block-components-totals-item {
  display: block !important;
  margin: 0 0 0.65rem !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping .wc-block-components-totals-item__value {
  display: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping .wc-block-components-totals-item strong,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping .wc-block-components-totals-item__label {
  font-weight: 400 !important;
  text-transform: none !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping__options,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-shipping-rates-control__package {
  margin: 0 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__option {
  min-height: 1.875rem !important;
  margin: 0 !important;
  padding: 0.25rem 0 0.25rem 1.5rem !important;
  align-items: center !important;
  border: 0 !important;
  color: #fff !important;
  font-size: 0.8125rem !important;
  line-height: 1.35 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__input {
  top: 0.45rem !important;
  left: 0.125rem !important;
  width: 0.8125rem !important;
  height: 0.8125rem !important;
  margin: 0 !important;
  border: 1px solid #71717a !important;
  background: transparent !important;
  box-shadow: none !important;
  accent-color: #78bff0;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__input:checked {
  border-color: #9bd6ff !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__input:checked::before {
  background: #78bff0 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__label-group,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__option-layout {
  display: flex !important;
  width: 100% !important;
  flex-direction: row !important;
  align-items: baseline !important;
  justify-content: flex-start !important;
  gap: 0.35rem !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__label,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__description {
  flex: 0 0 auto !important;
  color: #fff !important;
  font-size: 0.8125rem !important;
  line-height: 1.35 !important;
  text-align: left !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__description,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__secondary-description {
  font-weight: 600 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-radio-control__input:checked ~ * {
  font-weight: 700 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping-address-summary,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping__change-address-button,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping__change-address__link {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

.woocommerce-cart .ds-cart-shipping-destination {
  margin-top: 0.35rem;
  color: #fff;
  font-size: 0.8125rem;
  line-height: 1.5;
}

.woocommerce-cart .ds-cart-shipping-destination p {
  margin: 0;
}

.woocommerce-cart .ds-cart-shipping-destination strong {
  font-weight: 500;
}

.woocommerce-cart .ds-cart-shipping-destination button {
  display: block;
  margin: 0.15rem 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #92929a;
  cursor: pointer;
  font: 400 0.8125rem/1.5 Inter, Arial, sans-serif;
  text-decoration: none;
}

.woocommerce-cart .ds-cart-shipping-destination button:hover,
.woocommerce-cart .ds-cart-shipping-destination button:focus-visible {
  color: #fff;
}

.woocommerce-cart .ds-cart-shipment-fallback {
  padding: 0.625rem 0 0.5rem;
  border-bottom: 1px solid #343438;
}

.woocommerce-cart .ds-cart-shipment-fallback__title {
  margin-bottom: 0.45rem;
  font-size: 0.875rem;
}

.woocommerce-cart .ds-cart-shipment-fallback label {
  display: flex;
  min-height: 1.875rem;
  align-items: center;
  gap: 0.5rem;
  color: #fff;
  font-size: 0.8125rem;
}

.woocommerce-cart .ds-cart-shipment-fallback label:has(input:checked) {
  font-weight: 700;
}

.woocommerce-cart .ds-cart-shipment-fallback input {
  width: 0.8125rem;
  height: 0.8125rem;
  margin: 0 0.1rem;
  accent-color: #78bff0;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item {
  font-size: 0.9375rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item__label {
  font-weight: 400 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit {
  margin: 1.5625rem 0 0 !important;
  padding: 0 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit-button {
  min-height: 3.0625rem !important;
  border-radius: 999px !important;
  background: #00bd86 !important;
  color: #fff !important;
  font-size: 0.9375rem !important;
  font-weight: 500 !important;
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit-button:hover {
  background: #00a978 !important;
}

/* The current Cart block changes its native summary markup between releases.
 * Render one stable reference summary so Subtotal and Shipment can never be
 * omitted or renamed to "Estimated total" by a block update. */
body.woocommerce-cart .wc-block-cart__sidebar > .wc-block-cart__totals-title,
body.woocommerce-cart .wc-block-cart__sidebar > .ds-mobile-cart-total-title,
body.woocommerce-cart .wc-block-cart__sidebar > .wp-block-woocommerce-cart-order-summary-block,
body.woocommerce-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
  display: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-reference-totals {
  display: block !important;
  margin: 0;
  padding: 0;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
}

/* The compact Shipping row is used by the mobile reference layout only. */
body.woocommerce-cart .ds-cart-reference-totals__mobile-shipping {
  display: none !important;
}

body.woocommerce-cart .ds-cart-reference-totals h2 {
  margin: 0 !important;
  padding: 0 0 0.625rem !important;
  border-bottom: 1px solid #343438;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-transform: uppercase;
}

body.woocommerce-cart .ds-cart-reference-totals__row {
  display: flex;
  min-height: 3.125rem;
  padding: 0.625rem 0;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #343438;
  color: #fff;
  font-size: 0.875rem;
  line-height: 1.4;
}

body.woocommerce-cart .ds-cart-reference-totals__row strong {
  color: #fff;
  font-size: inherit;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

body.woocommerce-cart .ds-cart-reference-totals__shipment {
  padding: 0.4375rem 0 0.5rem;
  border-bottom: 1px solid #343438;
  color: #fff;
  font-size: 0.8125rem;
}

body.woocommerce-cart .ds-cart-reference-totals__shipment-title {
  margin-bottom: 0.3rem;
  font-size: 0.875rem;
  line-height: 1.45;
}

body.woocommerce-cart .ds-cart-reference-totals fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

body.woocommerce-cart .ds-cart-reference-totals fieldset label {
  display: flex;
  min-height: 1.875rem;
  margin: 0;
  align-items: center;
  gap: 0.5rem;
  color: #fff;
  cursor: pointer;
  font-size: 0.8125rem;
  line-height: 1.35;
}

body.woocommerce-cart .ds-cart-reference-totals fieldset label:has(input:checked) {
  font-weight: 700;
}

body.woocommerce-cart .ds-cart-reference-totals fieldset input {
  display: grid;
  width: 0.8125rem;
  height: 0.8125rem;
  flex: 0 0 0.8125rem;
  margin: 0 0.1rem;
  padding: 0;
  place-content: center;
  appearance: none;
  border: 1px solid #71717a;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
}

body.woocommerce-cart .ds-cart-reference-totals fieldset input::before {
  width: 0.4375rem;
  height: 0.4375rem;
  border-radius: 50%;
  background: #78bff0;
  content: "";
  transform: scale(0);
}

body.woocommerce-cart .ds-cart-reference-totals fieldset input:checked {
  border-color: #9bd6ff;
}

body.woocommerce-cart .ds-cart-reference-totals fieldset input:checked::before {
  transform: scale(1);
}

body.woocommerce-cart .ds-cart-reference-totals fieldset strong {
  font-weight: 600;
}

body.woocommerce-cart .ds-cart-reference-totals__destination {
  margin-top: 0.25rem;
  color: #fff;
  font-size: 0.8125rem;
  line-height: 1.5;
}

body.woocommerce-cart .ds-cart-reference-totals__destination > strong {
  font-weight: 500;
}

body.woocommerce-cart .ds-cart-reference-totals__destination a {
  display: block;
  margin: 0.15rem 0 0;
  padding: 0;
  color: #92929a;
  font: 400 0.8125rem/1.5 Inter, Arial, sans-serif;
  text-decoration: none;
}

body.woocommerce-cart .ds-cart-reference-totals__destination a:hover,
body.woocommerce-cart .ds-cart-reference-totals__destination a:focus-visible {
  color: #fff;
}

body.woocommerce-cart .ds-cart-reference-totals.is-updating {
  opacity: 0.72;
  pointer-events: none;
}

body.woocommerce-cart .ds-cart-reference-totals__total {
  min-height: 2.25rem;
  padding-block: 0.5rem;
  font-size: 0.875rem;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-reference-totals + .wp-block-woocommerce-cart-order-summary-block + .wc-block-cart__submit,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit {
  margin-top: 1.5625rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure {
  display: block !important;
  margin-top: 1.1875rem !important;
  text-align: center;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__label {
  display: flex;
  margin-bottom: 1rem !important;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  color: #85858a !important;
  font-size: 0.6875rem !important;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.35;
  text-transform: uppercase;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__lock {
  position: relative;
  display: inline-block;
  width: 0.625rem;
  height: 0.5rem;
  margin-top: 0.1875rem;
  border: 1px solid currentColor;
  border-radius: 0.1rem;
  color: #d4d4d8;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__lock::before {
  position: absolute;
  bottom: 100%;
  left: 0.125rem;
  width: 0.25rem;
  height: 0.25rem;
  border: 1px solid currentColor;
  border-bottom: 0;
  border-radius: 0.25rem 0.25rem 0 0;
  content: "";
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos {
  display: flex;
  justify-content: center;
  gap: 0.625rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos > span {
  position: relative;
  display: inline-flex;
  width: 3.3125rem !important;
  height: 1.75rem !important;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  border: 1px solid #e4e4e7;
  border-radius: 0.3125rem !important;
  background: #fff !important;
  color: #19224b;
  font-family: Arial, sans-serif;
  font-size: 0.625rem;
  font-weight: 700;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-visa {
  color: #1a1f71 !important;
  font-style: italic;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-mastercard {
  font-size: 0 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .is-mastercard i {
  position: absolute;
  top: 0.375rem;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
}

body.woocommerce-cart .wc-block-cart__sidebar .is-mastercard i:first-child {
  left: 1rem;
  background: #eb001b;
}

body.woocommerce-cart .wc-block-cart__sidebar .is-mastercard i:last-child {
  right: 1rem;
  background: #f79e1b;
  mix-blend-mode: multiply;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-apple {
  color: #111 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-paypal {
  color: #003087 !important;
  font-style: italic;
}


/* Final reference geometry from the supplied 520 × 508 cart-totals crop. */
body.woocommerce-cart .wc-block-cart__sidebar {
  min-height: 29.9375rem !important;
  padding: 1.25rem !important;
  border: 0 !important;
  border-radius: 1.25rem !important;
  background: #1e1e21 !important;
}

body.woocommerce-cart .ds-cart-reference-totals h2 {
  padding-bottom: 0.3125rem !important;
  font-size: 0.9375rem !important;
  line-height: 1.25rem !important;
}

body.woocommerce-cart .ds-cart-reference-totals__subtotal {
  min-height: 3.125rem !important;
  padding-block: 0.625rem !important;
}

body.woocommerce-cart .ds-cart-reference-totals__shipment {
  min-height: 9.625rem;
  padding: 0.375rem 0 0.625rem !important;
}

body.woocommerce-cart .ds-cart-reference-totals__shipment-title {
  margin-bottom: 0.5rem !important;
  font-size: 0.875rem !important;
  line-height: 1.25rem !important;
}

body.woocommerce-cart .ds-cart-reference-totals fieldset label {
  min-height: 1.875rem !important;
  gap: 0.5rem !important;
  font-size: 0.8125rem !important;
}

body.woocommerce-cart .ds-cart-reference-totals__destination {
  margin-top: 0.375rem !important;
  font-size: 0.8125rem !important;
  line-height: 1.25rem !important;
}

body.woocommerce-cart .ds-cart-reference-totals__destination a {
  margin-top: 0.1875rem !important;
  font-size: 0.8125rem !important;
  line-height: 1.25rem !important;
}

body.woocommerce-cart .ds-cart-reference-totals__total {
  min-height: 2.25rem !important;
  padding-block: 0.5rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit {
  margin-top: 1.4375rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit-button {
  min-height: 2.9375rem !important;
  border-radius: 999px !important;
  background: #00bd86 !important;
  font-size: 0.9375rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-transform: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit-button .wc-block-components-button__text {
  font-size: 0.9375rem !important;
  font-weight: 500 !important;
  text-transform: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure {
  margin-top: 1.375rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__label {
  margin-bottom: 1rem !important;
  font-size: 0.6875rem !important;
  line-height: 1rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos > span {
  width: 3.25rem !important;
  height: 1.8125rem !important;
  border-radius: 0.3125rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-mastercard {
  width: 3.75rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-mastercard::after {
  position: absolute;
  right: 0;
  bottom: 0.0625rem;
  left: 0;
  color: #333;
  content: "mastercard";
  font-size: 0.25rem;
  font-weight: 400;
  letter-spacing: -0.02em;
  text-align: center;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-paypal {
  color: transparent !important;
  font-size: 0 !important;
  font-style: normal;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-paypal::before {
  color: #003087;
  content: "P";
  font: italic 800 1.25rem/1 Arial, sans-serif;
  text-shadow: 0.12rem 0 #009cde;
}


/* Restore the original two-card Cart form. */
body.woocommerce-cart .ds-cart-reference {
  padding: 0 1.5rem 5rem;
}

body.woocommerce-cart .ds-cart-reference__steps {
  display: flex;
  max-width: 48rem;
  margin: 1.65rem auto 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  color: #d4d4d8;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1rem, 1.5vw, 1.35rem);
  line-height: 1.4;
}

body.woocommerce-cart .ds-cart-reference__steps span[aria-current="step"] {
  color: #fff;
}

body.woocommerce-cart .ds-cart-reference__steps i {
  color: #71717a;
  font-family: Inter, Arial, sans-serif;
  font-style: normal;
}

body.woocommerce-cart .ds-cart-reference__content,
body.woocommerce-cart .wp-block-woocommerce-cart {
  width: min(100%, 76rem) !important;
  max-width: 76rem !important;
  margin-inline: auto !important;
  padding-top: 0 !important;
}

body.woocommerce-cart .wc-block-cart {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(20rem, 0.95fr) !important;
  align-items: start !important;
  gap: 1.75rem !important;
}

body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-cart__sidebar {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box;
  border: 1px solid #29292d !important;
  border-radius: 1.25rem !important;
  background: #1e1e21 !important;
}

body.woocommerce-cart .wc-block-cart__main {
  padding: 1rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar {
  min-height: 0 !important;
  padding: 1.25rem !important;
}

body.woocommerce-cart .wc-block-cart__sidebar > .wp-block-woocommerce-cart-order-summary-block,
body.woocommerce-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__totals-title {
  display: block !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__totals-title {
  padding: 0 0 0.65rem !important;
  border-bottom: 1px solid #343438 !important;
  color: #fff !important;
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-block-cart-items {
  margin: 0 !important;
}

body.woocommerce-cart .wc-block-cart-items th {
  padding: 0.45rem 0.25rem 0.7rem !important;
  color: #fff !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-block-cart-items td {
  padding: 1rem 0.25rem !important;
  vertical-align: top !important;
}

body.woocommerce-cart .wc-block-cart-item__image {
  width: 5.25rem !important;
  padding-right: 0.85rem !important;
}

body.woocommerce-cart .wc-block-cart-item__image img {
  width: 4.75rem !important;
  height: 4.75rem !important;
  border-radius: 0.25rem;
  object-fit: cover;
}

body.woocommerce-cart .wc-block-components-product-name {
  color: #f4f4f5 !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

body.woocommerce-cart .wc-block-components-product-price,
body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper {
  color: #fff !important;
  font-size: 0.875rem !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link {
  color: #a1a1aa !important;
}

body.woocommerce-cart .wc-block-cart__submit {
  margin-top: 1.35rem !important;
}

body.woocommerce-cart .wc-block-cart__submit-button {
  min-height: 3rem !important;
  border-radius: 999px !important;
  background: #00bd86 !important;
  text-transform: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar::after {
  display: block;
  margin-top: 1.2rem;
  color: #a1a1aa;
  content: "▣  GUARANTEED SAFE & SECURE CHECKOUT\A\A VISA     ●●     Pay     PayPal";
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  white-space: pre;
}


/* Polished legacy Cart composition, backed by the live WooCommerce block state. */
body.woocommerce-cart .wc-block-cart {
  grid-template-columns: minmax(0, 1.285fr) minmax(22rem, 1fr) !important;
}

body.woocommerce-cart .ds-cart-reference-subtotal {
  display: flex;
  min-height: 3.125rem;
  padding: 0.625rem 0;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #343438;
  color: #fff;
  font-size: 0.875rem;
}

body.woocommerce-cart .ds-cart-reference-subtotal strong {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

body.woocommerce-cart .wc-block-cart__sidebar::after {
  display: none !important;
  content: none !important;
}

body.woocommerce-cart .ds-cart-reference-actions {
  margin: 0.25rem 0.25rem 0;
  padding: 0.9rem 0 0;
  border-top: 1px solid #343438;
}

body.woocommerce-cart .ds-cart-reference-actions .ds-cart-reference-coupon {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-panel__button {
  min-height: 2rem;
  padding: 0 0 0.55rem !important;
  color: #fff !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 0 !important;
  font-weight: 400 !important;
}

body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-panel__button::before {
  margin-right: 0.5rem;
  color: #a1a1aa;
  content: "◆";
  font-family: Inter, Arial, sans-serif;
  font-size: 0.75rem;
}

body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-panel__button::after {
  content: "Coupon";
  font-size: 0.95rem;
}

body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-panel__button-icon {
  display: none !important;
}

body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-totals-coupon__form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 0.75rem !important;
  align-items: end !important;
}

body.woocommerce-cart .ds-cart-reference-actions input {
  min-height: 2.35rem !important;
  border: 1px solid #38383d !important;
  border-radius: 999px !important;
  background: #29292d !important;
  color: #fff !important;
}

body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-button {
  min-height: 2.35rem !important;
  padding-inline: 1.25rem !important;
  border: 1px solid #00bd86 !important;
  border-radius: 999px !important;
  background: #00bd86 !important;
  color: #fff !important;
}

body.woocommerce-cart .ds-cart-reference-buttons {
  display: flex;
  margin-top: 0.8rem;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

body.woocommerce-cart .ds-cart-continue-shopping,
body.woocommerce-cart .ds-cart-update {
  display: inline-flex;
  min-height: 2.2rem;
  padding: 0.45rem 1rem;
  align-items: center;
  justify-content: center;
  border: 1px solid #38383d;
  border-radius: 999px;
  background: #29292d;
  color: #fff;
  font: 500 0.78rem/1.2 Inter, Arial, sans-serif;
  text-decoration: none;
}

body.woocommerce-cart .ds-cart-update {
  border-color: transparent;
  background: #008f68;
  color: #b7d8ce;
  cursor: default;
  opacity: 0.72;
}

body.woocommerce-cart .ds-cart-continue-shopping:hover,
body.woocommerce-cart .ds-cart-continue-shopping:focus-visible {
  border-color: #66666d;
  background: #333338;
  color: #fff;
}

body.woocommerce-cart .ds-cart-update,
body.woocommerce-cart .ds-cart-update:disabled {
  border: 1px solid #38383d !important;
  background: #29292d !important;
  color: #a1a1aa !important;
  cursor: default;
  opacity: 1;
}

body.woocommerce-cart .ds-cart-update:not(:disabled):hover,
body.woocommerce-cart .ds-cart-update:not(:disabled):focus-visible {
  border-color: #66666d !important;
  background: #333338 !important;
  color: #fff !important;
}

/* Cart totals action: match the input's modest corner radius. */
body.woocommerce-cart .wc-block-cart__submit-button {
  border: 1px solid #00bd86 !important;
  border-radius: 0.5rem !important;
}

/* Cart actions should match the Enter code field rather than pill buttons. */
body.woocommerce-cart .ds-cart-reference-actions input,
body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-button,
body.woocommerce-cart .ds-cart-continue-shopping,
body.woocommerce-cart .ds-cart-update {
  border-radius: 0.5rem !important;
}

@media (min-width: 768px) {
  body.woocommerce-cart .wc-block-cart-items thead tr {
    display: grid !important;
    grid-template-columns: 1.25rem 4.75rem minmax(0, 1fr) 5rem 6.75rem 5.5rem !important;
    column-gap: 0.65rem !important;
    align-items: center !important;
  }

  body.woocommerce-cart .wc-block-cart-items thead tr::before,
  body.woocommerce-cart .wc-block-cart-items thead tr::after,
  body.woocommerce-cart .wc-block-cart-items__header-total::before {
    color: #fff;
    font: 700 0.78rem/1.3 Inter, Arial, sans-serif;
    text-transform: uppercase;
  }

  body.woocommerce-cart .wc-block-cart-items thead tr::before {
    grid-column: 4;
    content: "Price";
  }

  body.woocommerce-cart .wc-block-cart-items thead tr::after {
    grid-column: 5;
    content: "Quantity";
  }

  body.woocommerce-cart .wc-block-cart-items__header-image {
    display: block !important;
    grid-column: 1 / 4 !important;
    width: auto !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-product {
    display: none !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-total {
    display: block !important;
    grid-column: 6 !important;
    width: auto !important;
    text-align: right !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-total > span {
    display: none !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-total::before {
    content: "Subtotal";
  }

  body.woocommerce-cart .wc-block-cart-items__row {
    display: grid !important;
    grid-template-columns: 1.25rem 4.75rem minmax(0, 1fr) 5rem 6.75rem 5.5rem !important;
    grid-template-rows: auto auto !important;
    column-gap: 0.65rem !important;
    row-gap: 0.25rem !important;
    align-items: start !important;
    padding: 0.95rem 0.25rem !important;
    border-bottom: 1px solid #343438 !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row > td {
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image img {
    width: 4.75rem !important;
    height: 4.75rem !important;
  }

  body.woocommerce-cart .wc-block-cart-item__product,
  body.woocommerce-cart .wc-block-cart-item__wrap,
  body.woocommerce-cart .wc-block-cart-item__quantity {
    display: contents !important;
  }

  body.woocommerce-cart .wc-block-components-product-name {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: start !important;
    font-size: 0.84rem !important;
    line-height: 1.3 !important;
  }

  body.woocommerce-cart .wc-block-components-product-metadata {
    grid-column: 3 !important;
    grid-row: 2 !important;
    margin: 0 !important;
    color: #d4d4d8 !important;
    font-size: 0.72rem !important;
    line-height: 1.35 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__prices {
    grid-column: 4 !important;
    grid-row: 1 !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector {
    grid-column: 5 !important;
    grid-row: 1 !important;
    align-self: start !important;
    justify-self: start !important;
    width: 6.75rem !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link {
    position: static !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: center !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link svg {
    width: 1rem !important;
    height: 1rem !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total {
    display: block !important;
    grid-column: 6 !important;
    grid-row: 1 !important;
    text-align: right !important;
  }
}


/* Final desktop column alignment against the legacy Cart reference. */
@media (min-width: 768px) {
  body.woocommerce-cart .wc-block-cart-items thead tr,
  body.woocommerce-cart .wc-block-cart-items__row {
    grid-template-columns: 1.125rem 4.5rem minmax(0, 1fr) 5.25rem 6.5rem 5.25rem !important;
    column-gap: 0.5rem !important;
  }

  body.woocommerce-cart .wc-block-cart-items thead tr > *,
  body.woocommerce-cart .wc-block-cart-items thead tr::before,
  body.woocommerce-cart .wc-block-cart-items thead tr::after {
    grid-row: 1 !important;
    align-self: center !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image img {
    width: 4.5rem !important;
    height: 4.5rem !important;
  }

  body.woocommerce-cart .wc-block-cart-item__prices,
  body.woocommerce-cart .wc-block-cart-item__total {
    min-width: 0 !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart .wc-block-components-product-name {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector {
    width: 6.5rem !important;
  }
}


/* Clean table rhythm and flatten the Cart Totals rows. */
body.woocommerce-cart .wc-block-cart-items thead tr {
  padding: 0.2rem 0.25rem 0.75rem !important;
  border-bottom: 1px solid #343438 !important;
}

body.woocommerce-cart .wc-block-cart-items__row {
  min-height: 6.75rem !important;
  padding-block: 1rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

body.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name {
  display: -webkit-box !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  line-clamp: 3 !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link {
  border: 1px solid transparent !important;
  border-radius: 50% !important;
  transition: border-color 160ms ease, color 160ms ease, background 160ms ease !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart .wc-block-cart-item__remove-link:focus-visible {
  border-color: #3f3f46 !important;
  background: #29292d !important;
  color: #fff !important;
}

body.woocommerce-cart .ds-cart-reference-actions {
  margin-top: 0.35rem !important;
  padding-top: 0.65rem !important;
  border-top: 0 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-shipping-block,
body.woocommerce-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block > .wc-block-components-totals-wrapper {
  min-height: 3.125rem !important;
  margin: 0 !important;
  padding: 0.625rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #343438 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-totals-block {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping .wc-block-components-totals-item {
  display: flex !important;
  min-height: 1.875rem !important;
  margin: 0 !important;
  align-items: center !important;
  justify-content: space-between !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-shipping .wc-block-components-totals-item__value {
  display: block !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item {
  min-height: 2rem !important;
  align-items: center !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item__label,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item__value {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
}


/* Polish cart product rows: compact rhythm and vertically balanced columns. */
@media (min-width: 768px) {
  body.woocommerce-cart .wc-block-cart-items__row {
    min-height: 6rem !important;
    padding: 0.75rem 0.25rem !important;
    align-items: center !important;
  }
  body.woocommerce-cart .wc-block-cart-item__image {
    grid-row: 1 / span 2 !important;
    align-self: center !important;
  }
  body.woocommerce-cart .wc-block-cart-item__image img {
    width: 4.25rem !important;
    height: 4.25rem !important;
    border-radius: 0.35rem !important;
  }
  body.woocommerce-cart .wc-block-cart-item__prices,
  body.woocommerce-cart .wc-block-components-quantity-selector,
  body.woocommerce-cart .wc-block-cart-item__remove-link,
  body.woocommerce-cart .wc-block-cart-item__total {
    grid-row: 1 / span 2 !important;
    align-self: center !important;
  }
  body.woocommerce-cart .wc-block-cart-item__prices,
  body.woocommerce-cart .wc-block-cart-item__total {
    font-size: 0.82rem !important;
    font-variant-numeric: tabular-nums !important;
  }
  body.woocommerce-cart .wc-block-components-quantity-selector {
    height: 2.125rem !important;
    border: 1px solid #343438 !important;
    border-radius: 0.4rem !important;
    background: #151518 !important;
    overflow: hidden !important;
  }
  body.woocommerce-cart .wc-block-components-quantity-selector input {
    min-width: 2rem !important;
  }
  body.woocommerce-cart .wc-block-components-quantity-selector button {
    min-width: 1.75rem !important;
  }
  body.woocommerce-cart .wc-block-components-product-name {
    align-self: end !important;
  }
  body.woocommerce-cart .wc-block-components-product-metadata {
    align-self: start !important;
  }
}

/* Cart quantity zero and clean empty-state feedback. */
body.woocommerce-cart .wc-block-components-quantity-selector__button--minus {
  opacity: 1 !important;
  cursor: pointer !important;
}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
  width: min(calc(100% - 2rem), 48rem) !important;
  margin: 2rem auto 5rem !important;
  padding: 1.5rem 1rem 3rem !important;
  text-align: center !important;
}
body.woocommerce-cart .ds-cart-updated-notice {
  margin: 0 0 1.5rem !important;
  color: #00d79a !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  text-align: center !important;
}

body.woocommerce-cart .ds-cart-feedback {
  max-height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  background: rgba(0, 189, 134, 0.08);
  color: #00d79a;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.4;
  opacity: 0;
  transform: translateY(-0.25rem);
  transition: max-height 180ms ease, margin 180ms ease, padding 180ms ease, opacity 160ms ease, transform 180ms ease;
}

body.woocommerce-cart .ds-cart-feedback.is-visible {
  max-height: 3rem;
  margin: 0.75rem 0 0;
  padding: 0.55rem 0.75rem;
  border-color: rgba(0, 215, 154, 0.25);
  opacity: 1;
  transform: none;
}

body.woocommerce-cart .ds-cart-empty-notice {
  width: min(100%, 26rem);
  margin: 0 auto 1.25rem;
  padding: 0.7rem 1rem;
  border: 1px solid rgba(0, 215, 154, 0.25);
  border-radius: 0.5rem;
  background: rgba(0, 189, 134, 0.08);
  color: #00d79a;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  box-sizing: border-box;
}
body.woocommerce-cart .wc-block-cart__empty-cart__title {
  margin: 0 0 1.75rem !important;
  color: #fff !important;
  font: 400 1rem/1.5 Inter, Arial, sans-serif !important;
  text-align: center !important;
}
body.woocommerce-cart .wc-block-cart__empty-cart__title::before {
  display: none !important;
  content: none !important;
}
body.woocommerce-cart .ds-empty-cart-return {
  display: inline-flex !important;
  min-height: 3rem !important;
  padding: 0.7rem 1.5rem !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #00bd86 !important;
  border-radius: 0.35rem !important;
  background: #00bd86 !important;
  color: #fff !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}
body.woocommerce-cart .ds-empty-cart-return:hover,
body.woocommerce-cart .ds-empty-cart-return:focus-visible {
  border-color: #00d79a !important;
  background: #00aF7d !important;
  color: #fff !important;
}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > hr,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wc-block-heading:not(.wc-block-cart__empty-cart__title),
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wc-block-grid {
  display: none !important;
}

/* Keep every Cart empty-state icon and return label visible. */
body.woocommerce-cart [class*="empty-cart"] svg,
body.woocommerce-cart [class*="empty-cart"] svg path,
body.woocommerce-cart [class*="empty-cart"] svg circle {
  color: #00bd86 !important;
  fill: none !important;
  stroke: #00bd86 !important;
}
body.woocommerce-cart [class*="empty-cart"] a,
body.woocommerce-cart [class*="empty-cart"] button,
body.woocommerce-cart [class*="empty-cart"] a *,
body.woocommerce-cart [class*="empty-cart"] button * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  opacity: 1 !important;
}
body.woocommerce-cart [class*="empty-cart"] a:empty::after,
body.woocommerce-cart [class*="empty-cart"] button:empty::after {
  color: #fff !important;
  content: "RETURN TO SHOP" !important;
  font-size: 0.9rem !important;
}


/* Desktop Cart: lower-radius coupon field and separated actions. */
@media (min-width: 768px) {
  body.woocommerce-cart .ds-cart-reference-actions input {
    border-radius: 0.5rem !important;
  }

  body.woocommerce-cart .ds-cart-reference-buttons {
    width: 100% !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
  }

  body.woocommerce-cart .ds-cart-update {
    margin-left: auto !important;
  }
}


/* Desktop Cart: compact circular quantity controls. */
@media (min-width: 768px) {
  body.woocommerce-cart .wc-block-components-quantity-selector {
    display: grid !important;
    width: 6.5rem !important;
    height: 2.5rem !important;
    min-height: 2.5rem !important;
    padding: 0.1875rem !important;
    grid-template-columns: 2rem minmax(1.75rem, 1fr) 2rem !important;
    grid-template-rows: 2rem !important;
    align-items: center !important;
    gap: 0.125rem !important;
    border: 1px solid #343438 !important;
    border-radius: 999px !important;
    background: #151518 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__input {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 2rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #f4f4f5 !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    line-height: 2rem !important;
    text-align: center !important;
    appearance: textfield !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button {
    position: static !important;
    display: grid !important;
    width: 2rem !important;
    min-width: 2rem !important;
    height: 2rem !important;
    min-height: 2rem !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #d4d4d8 !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    opacity: 1 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button--minus {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button--plus {
    grid-column: 3 !important;
    grid-row: 1 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button:hover,
  body.woocommerce-cart .wc-block-components-quantity-selector__button:focus-visible {
    border: 0 !important;
    background: #27272a !important;
    color: #00c995 !important;
  }
}

/* Desktop Cart: use simple native-style quantity controls. */
@media (min-width: 768px) {
  body.woocommerce-cart .wc-block-components-quantity-selector {
    display: inline-flex !important;
    width: 6.5rem !important;
    height: 2.25rem !important;
    min-height: 2.25rem !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0 !important;
    border: 1px solid #3f3f46 !important;
    border-radius: 0.5rem !important;
    background: transparent !important;
    overflow: hidden !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button {
    display: inline-flex !important;
    width: 1.75rem !important;
    min-width: 1.75rem !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #d4d4d8 !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button:hover,
  body.woocommerce-cart .wc-block-components-quantity-selector__button:focus-visible {
    background: #27272a !important;
    color: #00c995 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__input {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    text-align: center !important;
  }
}

/* Desktop Cart: keep the secure-payment SVG icons at their intended size. */
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit .wc-block-cart__submit-button {
  border: 1px solid #00bd86 !important;
  border-radius: 0.5rem !important;
}

/* Final cart action pass: Apply and its field share the same restrained
 * radius, even when WooCommerce's generic button rule is loaded later. */
body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-totals-coupon__form input,
body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-totals-coupon__form .wc-block-components-button {
  border-radius: 0.5rem !important;
}

/* Below desktop width, stack the cart panels instead of squeezing the
 * product table and totals sidebar into competing columns. */
@media (max-width: 767px) {
  body.woocommerce-cart .wc-block-cart {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 1rem !important;
  }

  body.woocommerce-cart .wc-block-cart__main,
  body.woocommerce-cart .wc-block-cart__sidebar {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-items,
  body.woocommerce-cart .wc-block-cart-items tbody {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  body.woocommerce-cart .wc-block-cart-items thead {
    display: none !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    padding: 1rem 0 !important;
    grid-template-columns: 5.5rem minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 1rem !important;
    row-gap: 0.5rem !important;
    align-items: start !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row > td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    width: 5.5rem !important;
    padding: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image img {
    display: block !important;
    width: 5.5rem !important;
    height: 5.5rem !important;
    max-width: 100% !important;
    border-radius: 0.35rem !important;
    object-fit: cover !important;
  }

  body.woocommerce-cart .wc-block-cart-item__product {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.woocommerce-cart .wc-block-cart-item__wrap,
  body.woocommerce-cart .wc-block-components-product-name,
  body.woocommerce-cart .wc-block-components-product-metadata {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name {
    overflow: hidden !important;
    overflow-wrap: anywhere !important;
    text-overflow: ellipsis !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 2 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
    justify-self: end !important;
    text-align: right !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper {
    max-width: 100% !important;
  }
}

/* The Cart block has no native submit button, so this control synchronizes
 * edited quantities through the WooCommerce Store API without a page reload. */
body.woocommerce-cart .ds-cart-update,
body.woocommerce-cart .ds-cart-update:disabled {
  min-width: 7.25rem !important;
  border-color: #00bd86 !important;
  background: #00bd86 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  cursor: pointer !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease, transform 100ms ease !important;
}

body.woocommerce-cart .ds-cart-update:hover,
body.woocommerce-cart .ds-cart-update:focus-visible {
  border-color: #00d79a !important;
  background: #00d79a !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.woocommerce-cart .ds-cart-update:active {
  transform: translateY(1px) !important;
}

body.woocommerce-cart .ds-cart-update[data-state="updating"] {
  cursor: wait !important;
  opacity: 0.72 !important;
}

body.woocommerce-cart .ds-cart-update[data-state="updated"] {
  border-color: rgba(0, 215, 154, 0.55) !important;
  background: rgba(0, 189, 134, 0.14) !important;
  color: #00d79a !important;
}

body.woocommerce-cart .ds-cart-update[data-state="error"] {
  border-color: #ef4444 !important;
  background: rgba(239, 68, 68, 0.12) !important;
  color: #fca5a5 !important;
}

body.woocommerce-cart .wc-block-cart-items__row.ds-cart-item-pending-removal {
  opacity: 0.58 !important;
}

body.woocommerce-cart .wc-block-cart-items__row.ds-cart-item-pending-removal .wc-block-components-quantity-selector {
  border-color: rgba(239, 68, 68, 0.7) !important;
}

body.woocommerce-cart .wc-block-cart-items__row.ds-cart-item-pending-removal .wc-block-components-quantity-selector__input {
  color: #fca5a5 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .ds-empty-cart-return {
  margin: 0 auto !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
  min-height: 0 !important;
  padding-block: 2.25rem !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
  margin-bottom: 1.25rem !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-heading:not(.wc-block-cart__empty-cart__title),
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block [class*="product-new"],
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new {
  display: none !important;
}

@media (min-width: 850px) {
  body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos > span > svg {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-mastercard::after,
  body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-paypal::before {
    content: none !important;
  }
}

/* Keep the secure-checkout lock compact at every viewport width. */
body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__label > svg {
  display: block !important;
  width: 0.75rem !important;
  height: 0.75rem !important;
  min-width: 0.75rem !important;
  max-width: 0.75rem !important;
  min-height: 0.75rem !important;
  max-height: 0.75rem !important;
  flex: 0 0 0.75rem !important;
  overflow: visible !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* Payment brands: one consistent badge system at every cart viewport. */
body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos {
  display: flex !important;
  width: 100% !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  flex-wrap: wrap !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos > span,
body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-mastercard {
  display: inline-flex !important;
  width: 3.5rem !important;
  min-width: 3.5rem !important;
  max-width: 3.5rem !important;
  height: 2rem !important;
  min-height: 2rem !important;
  max-height: 2rem !important;
  padding: 0.1875rem 0.25rem !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #e4e4e7 !important;
  border-radius: 0.375rem !important;
  background: #fff !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos > span > svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-mastercard::after,
body.woocommerce-cart .wc-block-cart__sidebar .ds-cart-secure__logos .is-paypal::before {
  display: none !important;
  content: none !important;
}

/* Mobile Shopping Cart composition. */
@media (max-width: 767px) {
  body.woocommerce-cart .ds-cart-reference {
    padding: 0 0.75rem 4rem !important;
  }

  body.woocommerce-cart .ds-cart-reference__steps {
    display: block !important;
    margin: 1.25rem auto 1.75rem !important;
    font-size: 0 !important;
    text-align: center !important;
  }

  body.woocommerce-cart .ds-cart-reference__steps > :not([aria-current="step"]) {
    display: none !important;
  }

  body.woocommerce-cart .ds-cart-reference__steps [aria-current="step"] {
    display: block !important;
    color: #fff !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 1.25rem !important;
    line-height: 1.3 !important;
  }

  body.woocommerce-cart .wc-block-cart__main {
    padding: 0.875rem !important;
    overflow: hidden !important;
    border: 1px solid #29292d !important;
    border-radius: 1rem !important;
    background: #1e1e21 !important;
  }

  body.woocommerce-cart .wc-block-cart-items thead {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart .wc-block-cart-items thead tr {
    display: grid !important;
    width: 100% !important;
    padding: 0.125rem 0 0.5rem !important;
    grid-template-columns: minmax(0, 1fr) 4.5rem !important;
    align-items: center !important;
    border-bottom: 1px solid #343438 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wc-block-cart-items thead th {
    display: block !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    color: #fff !important;
    font: 700 0.75rem/1.3 Inter, Arial, sans-serif !important;
    text-transform: uppercase !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-image {
    grid-column: 1 !important;
    text-align: left !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-product {
    display: none !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-total {
    grid-column: 2 !important;
    text-align: right !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-image > span,
  body.woocommerce-cart .wc-block-cart-items__header-total > span {
    display: none !important;
  }

  body.woocommerce-cart .wc-block-cart-items__header-image::after {
    content: "Product";
  }

  body.woocommerce-cart .wc-block-cart-items__header-total::after {
    content: "Quantity";
  }

  body.woocommerce-cart .wc-block-cart-items__row {
    position: relative !important;
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    padding: 0.75rem 0 1rem !important;
    grid-template-columns: 2.75rem minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    column-gap: 0.75rem !important;
    align-items: start !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 2.75rem !important;
    margin-top: 1.5rem !important;
    padding: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image img {
    display: block !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    max-width: 2.75rem !important;
    border-radius: 0.3rem !important;
    object-fit: cover !important;
  }

  body.woocommerce-cart .wc-block-cart-item__product {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__wrap {
    position: relative !important;
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 1fr) 4.5rem !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 0.5rem !important;
    row-gap: 0.125rem !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name {
    display: -webkit-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    color: #fff !important;
    font-size: 0.7rem !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
  }

  body.woocommerce-cart .wc-block-components-product-metadata {
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow: hidden !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    color: #d4d4d8 !important;
    font-size: 0.65rem !important;
    line-height: 1.3 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__prices {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    grid-column: 1 !important;
    grid-row: 3 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price {
    margin: 0 !important;
    color: #fff !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
  }

  body.woocommerce-cart .ds-cart-line-summary {
    display: none !important;
  }

  body.woocommerce-cart .wc-block-cart-item__quantity {
    position: static !important;
    display: flex !important;
    width: 4.5rem !important;
    height: auto !important;
    grid-column: 2 !important;
    grid-row: 1 / span 3 !important;
    align-self: center !important;
    justify-self: end !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector {
    display: inline-flex !important;
    width: 4.5rem !important;
    min-width: 4.5rem !important;
    height: 1.625rem !important;
    min-height: 1.625rem !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: space-between !important;
    border: 1px solid #343438 !important;
    border-radius: 999px !important;
    background: #1a1a1d !important;
    overflow: hidden !important;
    transition: border-color 150ms ease, box-shadow 150ms ease !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector:focus-within {
    border-color: rgba(0, 215, 154, 0.7) !important;
    box-shadow: 0 0 0 2px rgba(0, 215, 154, 0.12) !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button {
    display: grid !important;
    width: 1.4rem !important;
    min-width: 1.4rem !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    border: 0 !important;
    background: transparent !important;
    color: #a1a1aa !important;
    cursor: pointer !important;
    font-size: 0.75rem !important;
    touch-action: manipulation !important;
    transition: background 120ms ease, color 120ms ease, transform 80ms ease !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button:hover,
  body.woocommerce-cart .wc-block-components-quantity-selector__button:focus-visible {
    background: #29292d !important;
    color: #00d79a !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button:active {
    background: #303034 !important;
    color: #fff !important;
    transform: scale(0.88) !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__button:disabled {
    cursor: wait !important;
    opacity: 0.35 !important;
  }

  body.woocommerce-cart .wc-block-components-quantity-selector__input {
    width: 1.5rem !important;
    min-width: 1.5rem !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #00d79a !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-align: center !important;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link {
    position: absolute !important;
    top: -0.125rem !important;
    left: -3.5rem !important;
    display: grid !important;
    width: 1rem !important;
    height: 1rem !important;
    min-width: 1rem !important;
    min-height: 1rem !important;
    padding: 0 !important;
    place-items: center !important;
    border: 0 !important;
    color: #8b8b92 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link svg {
    width: 0.75rem !important;
    height: 0.75rem !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total,
  body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
  }

  body.woocommerce-cart .ds-cart-reference-actions {
    margin-top: 0 !important;
    padding: 1.25rem 0 0.75rem !important;
    border-top: 0 !important;
  }

  body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-totals-coupon__form {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 0.75rem !important;
  }

  body.woocommerce-cart .ds-cart-reference-actions input,
  body.woocommerce-cart .ds-cart-reference-actions .wc-block-components-button {
    min-height: 2.25rem !important;
    border-radius: 999px !important;
  }

  body.woocommerce-cart .ds-cart-reference-buttons {
    margin-top: 0.75rem !important;
  }
}
