
/* Compact touch cards, including wide tablets. Mouse desktop sizes stay intact. */
@media (min-width:641px) and (pointer:coarse) {
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch {
    grid-template-columns:repeat(auto-fill,minmax(min(100%,88px),1fr)); gap:4px;
  }
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch > [data-testid^="product-card-"] {
    min-width:0; padding:3px; border-radius:6px; overflow-wrap:anywhere;
  }
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch [data-testid^="product-image-"] {
    width:100%; height:40px; aspect-ratio:auto; margin-bottom:2px;
  }
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch [data-testid^="product-image-"] + div {
    font-size:10px; line-height:12px; min-height:24px;
  }
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch > [data-testid^="product-card-"] > .mt-0\.5 {
    flex-wrap:wrap; row-gap:1px;
  }
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch > [data-testid^="product-card-"] > .mt-0\.5 > span:first-child {
    font-size:10px; line-height:12px; white-space:normal; overflow-wrap:anywhere;
  }
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch [data-testid^="card-units-"] {
    flex-direction:column; gap:2px; margin-top:2px;
  }
  .app-shell:not([data-gym-tenant]) [data-testid="pos-page"]:not([data-phone-cashier]) .pos-product-grid-touch [data-testid^="card-units-"] > button {
    flex:0 0 auto; min-width:0; min-height:32px; height:auto; padding:2px 3px;
    font-size:10px; line-height:12px; white-space:normal; gap:1px 2px;
  }
}
