/* NORRPACK – jämna produktkort i Abicarts rutnätsvy.
   Lägg till LÄNGST NED i temats Egen CSS. Behåll befintlig CSS.
   Påverkar bara produktkort. Innehåller ingen offertbanner.
   Produktbilder och produktbeskrivningar inne på produktsidan ändras inte.
*/

.tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: 2.8em 6em minmax(2.6em, auto) auto minmax(3em, 1fr) auto;
  gap: 8px;
  align-items: start !important;
  justify-content: stretch !important;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}

.tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption > .tws-article-list--article-name {
  grid-column: 1;
  grid-row: 1;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  line-height: 1.4;
  max-height: 2.8em;
  margin: 0 !important;
  min-width: 0;
}

.tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption > .tws-article-list--introduction-text {
  grid-column: 1;
  grid-row: 2;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden !important;
  flex: none !important;
  line-height: 1.5 !important;
  height: 6em !important;
  min-height: 0 !important;
  max-height: 6em !important;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  white-space: pre-line;
  overflow-wrap: anywhere;
}

.tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption > .tws-article-list--price {
  grid-column: 1;
  grid-row: 3;
  height: auto !important;
  min-height: 2.6em;
  margin: 0 !important;
  align-self: end;
}

.tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption > .tws-article-list--item-stock-wrap {
  grid-column: 1;
  grid-row: 4;
  margin: 0 !important;
  min-width: 0;
}

.tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption > .tws-article-list--delivery-info {
  grid-column: 1;
  grid-row: 5;
  margin: 0 !important;
  min-width: 0;
  overflow-wrap: anywhere;
}

.tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption > :is(.tws-article-list--buy-button, .tws-article-list--show-more-button) {
  grid-column: 1;
  grid-row: 6;
  align-self: end;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
}

@media (max-width: 767px) {
  .tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption {
    grid-template-rows: 2.8em 4.5em minmax(2.6em, auto) auto minmax(3em, 1fr) auto;
    gap: 6px;
  }
  .tws-article-list--list .tws-list--type-grid .tws-list--grid-item > .thumbnail > .caption > .tws-article-list--introduction-text {
    -webkit-line-clamp: 3;
    line-clamp: 3;
    height: 4.5em !important;
    max-height: 4.5em !important;
  }
}
/* =========================================================
   NORRPACK – KOMPAKTA PRODUKTKORT
   ========================================================= */

/* Gör korten kompakta */
.product-list-item,
.product-item,
.article-item,
.product-box,
.article-box,
[class*="product-list-item"],
[class*="article-item"] {
    height: auto !important;
    min-height: 0 !important;
}

/* Produktens textområde */
.product-list-item .content,
.product-item .content,
.article-item .content,
.product-box .content,
.article-box .content,
[class*="product"] [class*="content"] {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    height: auto !important;
    min-height: 0 !important;
}

/* Produktnamn */
.product-list-item h2,
.product-list-item h3,
.product-item h2,
.product-item h3,
.article-item h2,
.article-item h3,
.product-box h2,
.product-box h3,
.article-box h2,
.article-box h3 {
    margin: 3px 0 5px 0 !important;
    padding: 0 !important;
    line-height: 1.15 !important;
}

/* All brödtext */
.product-list-item p,
.product-item p,
.article-item p,
.product-box p,
.article-box p {
    margin: 0 0 2px 0 !important;
    padding: 0 !important;

    line-height: 1.15 !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    overflow: visible !important;
    text-overflow: initial !important;

    white-space: normal !important;

    display: block !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

/* Beskrivning / dimensioner */
.product-description,
.article-description,
.product-short-description,
.article-short-description,
[class*="description"] {
    margin: 3px 0 5px 0 !important;
    padding: 0 !important;

    line-height: 1.15 !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    overflow: visible !important;
    text-overflow: initial !important;

    white-space: normal !important;

    display: block !important;
    -webkit-line-clamp: unset !important;
}

/* Behåll separata rader */
.product-description br,
.article-description br,
.product-short-description br,
.article-short-description br {
    display: block !important;
    content: "" !important;
    margin: 0 !important;
    line-height: 1 !important;
}

/* Pris */
.product-price,
.article-price,
.price,
[class*="price"] {
    margin: 7px 0 5px 0 !important;
    padding: 0 !important;
    line-height: 1.1 !important;
    min-height: 0 !important;
}

/* Lagerstatus */
.product-stock,
.article-stock,
.stock,
[class*="stock"] {
    margin: 5px 0 6px 0 !important;
    padding: 0 !important;
    line-height: 1.1 !important;
    min-height: 0 !important;
}

/* Ta bort element som skapar artificiell höjd */
.product-list-item .spacer,
.product-item .spacer,
.article-item .spacer,
.product-box .spacer,
.article-box .spacer {
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Köpsektion */
.product-buy,
.article-buy,
.buy,
[class*="buy"] {
    margin-top: 5px !important;
    padding-top: 0 !important;
    position: static !important;
}

/* Köpknapp */
.product-buy button,
.article-buy button,
.product-item button,
.article-item button,
.product-box button,
.article-box button {
    margin-top: 3px !important;
    margin-bottom: 4px !important;
}

/* Om korten kör Flexbox */
.product-list-item,
.product-item,
.article-item,
.product-box,
.article-box {
    justify-content: flex-start !important;
}

/* Förhindra att köpknappen tvingas längst ner */
.product-list-item > *,
.product-item > *,
.article-item > *,
.product-box > *,
.article-box > * {
    flex-grow: 0 !important;
}

/* Viktigt – ingen text ska kapas */
.product-list-item [class*="description"],
.product-item [class*="description"],
.article-item [class*="description"] {
    max-height: none !important;
    overflow: visible !important;
}

/* Mobil */
@media (max-width: 768px) {

    .product-list-item .content,
    .product-item .content,
    .article-item .content {
        padding-top: 3px !important;
        padding-bottom: 3px !important;
    }

    .product-list-item p,
    .product-item p,
    .article-item p,
    .product-description,
    .article-description {
        line-height: 1.12 !important;
        margin-bottom: 1px !important;
    }

    .product-price,
    .article-price,
    [class*="price"] {
        margin-top: 5px !important;
        margin-bottom: 4px !important;
    }

    .product-stock,
    .article-stock,
    [class*="stock"] {
        margin-top: 3px !important;
        margin-bottom: 4px !important;
    }
}