/**
 * File: assets/css/frontend/cart-responsive.css
 * Purpose: Split piece of a larger source file (1.0.191 file-size programme; cascade/build order unchanged). Split from assets/css/frontend/cart.css (1.0.191, 300-line standard): cascade order is preserved by the enqueue chain; this file holds lines 777-1036 of the original file, verbatim.
 * Scope: Same feature scope as the source file named in the provenance line; not a standalone design source.
 * Package: HyperDAF Engine
 */
@media (min-width: 64rem) and (max-width: 79.999rem) {
  .hdf-cart-items__columns,
  .hdf-cart-line {
    grid-template-columns: minmax(13.25rem, 2.4fr) minmax(17rem, 1.6fr) var(--hdf-engine-cart-quantity-height);
    gap: var(--hdf-engine-space-2);
  }

  .hdf-cart-items__commerce-columns,
  .hdf-cart-line__commerce {
    grid-template-columns: minmax(5.5rem, 0.78fr) minmax(4.75rem, 0.62fr) minmax(5.75rem, 0.85fr);
    gap: var(--hdf-engine-space-2);
  }

  .hdf-cart-line__product {
    grid-template-columns: clamp(5rem, 7vw, var(--hdf-engine-cart-media-width)) minmax(0, 1fr);
    gap: var(--hdf-engine-space-3);
  }

  .hdf-cart-line__media {
    width: clamp(5rem, 7vw, var(--hdf-engine-cart-media-width));
    height: auto;
    aspect-ratio: 8 / 5;
  }

  .hdf-cart-line__quantity {
    width: min(100%, 4.75rem);
  }
}

@media (max-width: 63.999rem) {
  .hdf-cart-intro__inner,
  .hdf-cart-page__inner {
    padding-inline: var(--hdf-engine-layout-gutter-tablet);
  }

  .hdf-cart-intro__layout,
  .hdf-cart-layout {
    grid-template-columns: 1fr;
  }

  .hdf-cart-intro__layout {
    align-items: start;
    gap: var(--hdf-engine-space-5);
  }

  .hdf-cart-summary {
    width: 100%;
    position: static;
  }

  .hdf-cart-items__columns {
    display: none;
  }

  .hdf-cart-line {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: var(--hdf-engine-space-3);
  }

  .hdf-cart-line__product {
    padding-inline-end: calc(var(--hdf-engine-cart-quantity-height) + var(--hdf-engine-space-3));
  }

  .hdf-cart-line__commerce {
    width: 100%;
    grid-template-columns: minmax(0, 1fr) minmax(4.25rem, min(var(--hdf-engine-cart-quantity-width), 5.5rem)) minmax(0, 1fr);
    align-items: start;
    gap: var(--hdf-engine-space-3);
  }

  .hdf-cart-line__label {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    clip-path: none;
    color: var(--hdf-engine-color-text-muted);
    font-size: var(--hdf-engine-font-size-xs);
    font-weight: var(--hdf-engine-font-weight-medium);
    white-space: normal;
  }

  .hdf-cart-line__metric,
  .hdf-cart-line__quantity {
    min-width: 0;
  }

  .hdf-cart-line__quantity {
    width: 100%;
    justify-self: center;
  }

  .hdf-cart-line__unit {
    justify-self: start;
  }

  .hdf-cart-line__total {
    justify-self: end;
    text-align: end;
  }

  .hdf-cart-line__metric strong {
    white-space: nowrap;
  }

  .hdf-cart-line__remove {
    position: absolute;
    top: var(--hdf-engine-cart-row-padding, var(--hdf-engine-space-4));
    right: var(--hdf-engine-cart-panel-padding);
  }
}

@media (max-width: 47.999rem) {
  .hdf-cart-intro__inner,
  .hdf-cart-page__inner {
    width: min(100%, var(--hdf-engine-cart-width));
    padding-inline: var(--hdf-engine-layout-gutter-mobile);
  }

  .hdf-cart-progress {
    width: 100%;
    overflow-x: auto;
    padding-bottom: var(--hdf-engine-space-1);
  }

  .hdf-cart-progress li {
    min-width: 5.75rem;
  }

  .hdf-cart-progress li:not(:last-child) {
    margin-inline-end: var(--hdf-engine-space-3);
    padding-inline-end: var(--hdf-engine-space-3);
  }

  .hdf-cart-progress li:not(:last-child)::after {
    width: var(--hdf-engine-space-3);
  }

  .hdf-cart-items__heading,
  .hdf-cart-summary__heading {
    align-items: flex-start;
  }

  .hdf-cart-items__heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    padding-inline: var(--hdf-engine-space-4);
  }

  .hdf-cart-items__heading > a {
    text-align: end;
  }

  .hdf-cart-line {
    padding: var(--hdf-engine-space-4);
  }

  .hdf-cart-line__product {
    grid-template-columns: var(--hdf-engine-cart-media-width-mobile) minmax(0, 1fr);
    gap: var(--hdf-engine-space-3);
    padding-inline-end: calc(var(--hdf-engine-cart-quantity-height) + var(--hdf-engine-space-2));
  }

  .hdf-cart-line__media {
    width: var(--hdf-engine-cart-media-width-mobile);
    height: var(--hdf-engine-cart-media-height-mobile);
  }

  .hdf-cart-line__commerce {
    grid-template-columns: minmax(0, 1fr) minmax(4.25rem, 5rem) minmax(0, 1fr);
    gap: var(--hdf-engine-space-2);
  }

  .hdf-cart-line__metric strong,
  .hdf-cart-line__quantity-input {
    font-size: var(--hdf-engine-font-size-xs);
  }

  .hdf-cart-line__remove {
    top: var(--hdf-engine-space-4);
    right: var(--hdf-engine-space-4);
  }

  .hdf-cart-summary {
    padding: var(--hdf-engine-space-4);
  }

  .hdf-cart-notice {
    padding-inline: var(--hdf-engine-space-3);
  }

  .hdf-coupon-form {
    grid-template-columns: 1fr;
  }

  .hdf-coupon-form button {
    width: 100%;
  }
}

@media (max-width: 29.999rem) {
  .hdf-cart-breadcrumbs {
    margin-bottom: var(--hdf-engine-space-3);
  }

  .hdf-cart-progress li {
    min-width: 5rem;
  }

  .hdf-cart-items__heading {
    gap: var(--hdf-engine-space-2);
  }

  .hdf-cart-items__heading > a {
    font-size: var(--hdf-engine-font-size-xs);
  }

  .hdf-cart-line__product {
    grid-template-columns: var(--hdf-engine-cart-media-width-mobile) minmax(0, 1fr);
  }

  .hdf-cart-line__commerce {
    grid-template-columns: minmax(0, 1fr) minmax(4rem, 4.5rem) minmax(0, 1fr);
    gap: var(--hdf-engine-space-2);
  }

  .hdf-cart-line__label {
    font-size: 0.6875rem;
  }

  .hdf-cart-line__metric strong,
  .hdf-cart-line__quantity-input {
    font-size: 0.75rem;
  }

  .hdf-cart-line__total small {
    font-size: 0.625rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hdf-cart-page * {
    scroll-behavior: auto !important;
  }

  .hdf-cart-summary__empty {
    transition: none;
  }

  .hdf-cart-summary__empty:hover,
  .hdf-cart-summary__empty:focus-visible {
    transform: none;
  }
}

.hdf-cart-line__quantity-status:empty {
  display: none;
}
