/* Cart category layout v2: larger cards with left-aligned names and tags. */
body.luansuicart-goodsList {
  --ls-category-width: 352px;
  --ls-category-height: 80px;
}
body.luansuicart-goodsList .luansuicart-category-tabs,
body.luansuicart-goodsList .luansuicart-subcategories,
body.luansuicart-goodsList .luansuicart-subcategories.luansuicart-lines {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  grid-template-columns: none !important;
}
body.luansuicart-goodsList .luansuicart-category-tabs {
  padding-bottom: 20px !important;
  margin-bottom: 20px !important;
}
body.luansuicart-goodsList .luansuicart-category-tabs > button,
body.luansuicart-goodsList .luansuicart-subcategories > button,
body.luansuicart-goodsList .luansuicart-subcategories.luansuicart-lines > button {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 0 0 var(--ls-category-width) !important;
  width: var(--ls-category-width) !important;
  max-width: 100% !important;
  height: var(--ls-category-height) !important;
  min-height: var(--ls-category-height) !important;
  margin: 0 !important;
  padding: 12px 20px !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 6px !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-radius: 6px !important;
  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 24px !important;
  text-align: left !important;
  box-shadow: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
}
body.luansuicart-goodsList .luansuicart-subcategories .ls-line-name {
  display: block;
  max-width: 100%;
  min-width: 0;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 24px !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.luansuicart-goodsList .luansuicart-subcategories .ls-line-tags {
  display: flex !important;
  flex: 0 0 auto;
  flex-wrap: nowrap !important;
  align-items: center;
  gap: 6px !important;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
}
body.luansuicart-goodsList .ls-line-tags::-webkit-scrollbar { display: none; }
body.luansuicart-goodsList .ls-line-tags > .ls-tag {
  box-sizing: border-box;
  flex: 0 0 auto;
  min-height: 22px !important;
  height: 22px !important;
  padding: 0 6px !important;
  font-size: 12px !important;
  line-height: 20px !important;
}
body.luansuicart-goodsList .ls-line-tags > .ls-tag.is-image-only { padding: 0 !important; }
body.luansuicart-goodsList .ls-line-tags .ls-tag-image { max-height: 18px !important; }
@media (max-width: 700px) {
  body.luansuicart-goodsList { --ls-category-width: calc((100% - 10px) / 2); }
  body.luansuicart-goodsList .luansuicart-category-tabs > button,
  body.luansuicart-goodsList .luansuicart-subcategories > button,
  body.luansuicart-goodsList .luansuicart-subcategories.luansuicart-lines > button {
    min-width: 0;
    padding: 12px 14px !important;
    font-size: 14px !important;
  }
  body.luansuicart-goodsList .luansuicart-subcategories .ls-line-name { font-size: 14px !important; }
}
