/* Touch mini-cart only. Reset the v124 touch grid which predates the v129 editor. */
@media (max-width: 767px), (any-pointer: coarse) {
 .hc-mini-cart .hc-mini-panel {
  width: min(500px, calc(100vw - 24px)); max-width: calc(100vw - 24px);
  left: auto; right: 12px; padding: 10px 12px; gap: 6px; overflow: hidden;
 }
 .hc-mini-cart .hc-mini-heading { min-height: 36px; }
 .hc-mini-cart .hc-mini-heading h2 { font-size: 15px !important; font-weight: 500; }
 .hc-mini-cart .hc-mini-items { flex: 0 1 auto; min-height: 0; padding: 0; overflow-y: auto; }
 .hc-mini-cart .hc-mini-item {
  grid-template-columns: 72px minmax(0, 1fr); grid-template-rows: minmax(44px, auto) auto;
  align-items: start; gap: 4px 10px; padding: 8px 0 !important;
 }
 .hc-mini-cart .hc-mini-image { grid-column: 1; grid-row: 1 / 3; width: 72px; height: 72px; align-self: start; }
 .hc-mini-cart .hc-mini-image img { width: 100%; height: 100%; object-fit: contain; }
 .hc-mini-cart .hc-mini-details { grid-column: 2; grid-row: 1; min-width: 0; padding: 0 48px 0 0; }
 .hc-mini-cart .hc-mini-name { font-size: 12px !important; line-height: 18px !important; font-weight: 400; }
 .hc-mini-cart .hc-mini-item-bottom {
  display: flex; grid-column: 2; grid-row: 2; min-width: 0; align-self: end;
  align-items: center; justify-content: space-between; flex-wrap: nowrap; gap: 6px;
 }
 .hc-mini-cart .hc-mini-item-bottom .hc-mini-price { flex: 1 1 0; min-width: 0; max-width: 100%; align-self: center; }
 .hc-mini-cart .hc-mini-unit-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 3px; font-size: 14px; line-height: 1.3; }
 .hc-mini-cart .hc-mini-unit-price .woocommerce-Price-amount { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
 .hc-mini-cart .hc-mini-item .hc-mini-unit-price small { display: inline; margin: 0; font-size: 9px; line-height: 1.3; white-space: nowrap; }
 .hc-mini-cart .hc-mini-item-bottom .hc-qty-controls {
  display: grid; grid-template-columns: 44px minmax(26px, max(26px, calc(var(--hc-mini-qty-digits, 2) * 1ch + 6px))) 44px;
  flex: 0 0 auto; align-items: center; gap: 0; margin: 0; font-size: 16px;
 }
 .hc-mini-cart .hc-mini-item-bottom .hc-qty-controls button[data-qty-step] {
  width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 0;
  border: 0; border-radius: 2px; background: #f4f5f6; font-size: 18px;
 }
 .hc-mini-cart .hc-mini-item-bottom .hc-qty-controls .hc-item-qty {
  width: 100% !important; min-width: 26px; height: 44px; padding: 0 1px;
  border: 0; font-size: 16px !important; line-height: 1.3; text-align: center;
 }
 .hc-mini-cart .hc-mini-remove {
  grid-column: auto; grid-row: auto;
  position: absolute; top: 8px; right: 0; width: 44px; min-width: 44px; height: 44px; min-height: 44px;
  display: flex; align-items: flex-start; justify-content: flex-end; margin: 0; padding: 1px 0 0;
  border: 0; background: transparent; color: #777e87; font-size: 10px; line-height: 18px;
 }
 .hc-mini-cart .hc-variation-editor { margin: 2px 0 0; }
 .hc-mini-cart .hc-variation-toggle { width: fit-content; max-width: 100%; min-height: 44px; padding: 4px 6px; gap: 5px; font-size: 11px; }
 .hc-mini-cart .hc-variation-fields { width: 100%; }
 .hc-mini-cart .hc-variation-fields select { font-size: 16px; }
 .hc-mini-cart .hc-mini-footer {
  flex-wrap: nowrap; align-items: center; gap: 10px; margin: 0; padding: 8px;
  border: 0; border-radius: 4px; background: #f5f5f6;
 }
 .hc-mini-cart .hc-mini-subtotal { flex: 0 1 auto; min-width: 0; max-width: 42%; }
 .hc-mini-cart .hc-mini-subtotal strong { font-size: 14px !important; }
 .hc-mini-cart .hc-mini-footer .hc-mini-cta { flex: 1 1 58%; width: auto; min-height: 44px; margin: 0; padding: 8px 10px !important; }
}
@media (max-width: 359px) {
 .hc-mini-cart .hc-mini-item { grid-template-columns: 60px minmax(0, 1fr); column-gap: 8px; }
 .hc-mini-cart .hc-mini-image { width: 60px; height: 60px; }
 .hc-mini-cart .hc-mini-item-bottom .hc-qty-controls { grid-template-columns: 36px minmax(26px, max(26px, calc(var(--hc-mini-qty-digits, 2) * 1ch + 6px))) 36px; }
 .hc-mini-cart .hc-mini-item-bottom .hc-qty-controls button[data-qty-step] { width: 36px; min-width: 36px; }
}
/* When the browser/keyboard leaves very little height, scroll the whole panel.
   Do not shrink the item list to zero behind a fixed heading and footer. */
@media (max-width: 767px) and (max-height: 450px), (any-pointer: coarse) and (max-height: 450px) {
 .hc-mini-cart .hc-mini-panel { overflow-y: auto; overscroll-behavior: contain; }
 .hc-mini-cart .hc-mini-items { flex: 0 0 auto; min-height: 96px; overflow: visible; }
}
