/* ===== Zarovnání vlevo jako na produktu (sidebar úplně vlevo) ===== */
.mp-wrap.mp-archive .mp-grid {
    margin-left: -16px;
}
.mp-wrap.mp-archive .mp-col--sidebar {
    padding: 16px 16px 16px 0;
}

/* ===== Dlaždice podkategorií ===== */
.mp-archive-subcategories { margin: 10px 0 18px; }
.mp-archive-subcategories .mp-cat-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
}
.mp-archive-subcategories .mp-cat-card {
    border: 1px solid #ddd;
    background: #fff;
    min-height: 52px;
    position: relative;
}
.mp-archive-subcategories .mp-cat-card-link {
    position: absolute;
    inset: 0;
    padding: 8px 10px;
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #111;
}
.mp-archive-subcategories .mp-cat-card-title {
    margin: 0;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
    pointer-events: none;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.mp-archive-subcategories .mp-cat-card:hover { border-color: #f47c20; }

@media (max-width: 1200px) { .mp-archive-subcategories .mp-cat-grid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 768px)  { .mp-archive-subcategories .mp-cat-grid { grid-template-columns: repeat(2, 1fr); } }

/* ===== Ovládání katalogu ===== */
.mp-catalog-controls {
    display: grid;
    grid-template-columns: 1fr auto 1fr; /* left | center | right */
    align-items: center;
    gap: 12px;
    margin: 8px 0 12px;
    font-size: 12px;
}
.mp-catalog-controls-left { justify-self: start; }
.mp-catalog-controls-center { justify-self: center; }
.mp-catalog-controls-right { justify-self: end; white-space: nowrap; }

.mp-catalog-controls-center .woocommerce-ordering { margin: 0; }
.mp-catalog-controls-center select.orderby { padding: 6px 8px; font-size: 12px; }

.mp-perpage-label { opacity: .85; margin-right: 6px; }

/* klasicky modré odkazy (i když theme přebarví) */
.mp-perpage-link {
    margin-left: 6px;
    text-decoration: none;
    color: #0000EE !important;
}
.mp-perpage-link:visited { color: #551A8B !important; }
.mp-perpage-link:hover { text-decoration: underline; }

.mp-perpage-current { margin-left: 6px; font-weight: 800; opacity: .75; }

/* ===== Produkty – jednotné karty ===== */
.mp-archive ul.products.columns-4,
.mp-archive ul.products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 1fr; /* Všechny řádky mají stejnou výšku */
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
    align-items: stretch; /* Zajistí, že všechny karty mají stejnou výšku */
}

.mp-archive ul.products li.product {
    border: 1px solid #ddd;
    background: #fff;
    border-radius: 0;
    padding: 10px;
    margin: 0 !important;

    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
    min-height: 0; /* Důležité pro grid */
    position: relative; /* aby štítky (Sleva, aj.) s position:absolute zůstaly na kartě, ne v rohu stránky */
    
    /* Zajistíme minimální výšku pro všechny karty */
    min-height: 380px; /* Přibližná výška: obrázek (170px) + název (32px) + cena (30px) + varianty (50px) + tlačítko (40px) + padding (20px) + mezery (38px) */
}

.mp-archive ul.products li.product a.woocommerce-LoopProduct-link {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    text-decoration: none;
}

/* Tlačítko vždy úplně dole - použijeme margin-top: auto */
/* Order odstraníme, protože může způsobovat problémy s HTML strukturou */

/* sjednocení obrázkového prostoru */
.mp-archive ul.products li.product a.woocommerce-LoopProduct-link img {
    width: 100%;
    height: 170px;
    object-fit: contain;
    object-position: center;
    display: block;
    margin: 0 0 10px;
}

/* název max 2 řádky + stejná výška */
.mp-archive ul.products li.product .woocommerce-loop-product__title {
    font-size: 13px;
    font-weight: 650;
    line-height: 1.25;
    margin: 0 0 8px;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(2 * 1.25em);
}

/* cena – stabilizace i pro slevy (del/ins často mění výšku) */
.mp-archive ul.products li.product .price {
    font-weight: 800;
    margin: 0 0 8px;
    line-height: 1.25;
    display: block;

    /* klíčové: sleva vs. nesleva nebude měnit výšku karty */
    min-height: 2.4em;
    
    /* Cena vždy dole nad tlačítkem - použijeme margin-top: auto */
    margin-top: auto;
}

.mp-archive ul.products li.product .price del,
.mp-archive ul.products li.product .price ins {
    display: inline-block;
    line-height: 1.25;
    vertical-align: baseline;
}

.mp-archive ul.products li.product .price ins {
    text-decoration: none;
}

/* pokud se někde objeví rating/extra prvky, ať nerozhodí výšku */
.mp-archive ul.products li.product .star-rating,
.mp-archive ul.products li.product .woocommerce-product-rating {
    display: none !important;
}

/* CTA tlačítko vždy dole + pokrytí typů Woo tlačítek */
.mp-archive ul.products li.product .button,
.mp-archive ul.products li.product a.add_to_cart_button,
.mp-archive ul.products li.product a.product_type_simple,
.mp-archive ul.products li.product a.product_type_variable,
.mp-archive ul.products li.product a.product_type_grouped,
.mp-archive ul.products li.product a.product_type_external {
    border-radius: 0;
    padding: 10px 12px;
    width: 100%;
    text-align: center;
    margin-top: 0 !important; /* Tlačítko je přímo pod cenou/skladem, nepotřebujeme margin-top: auto */
    order: 999 !important; /* Zajistíme, že je vždy poslední */
}

/* responzivní sloupce */
@media (max-width: 1024px) { .mp-archive ul.products { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px)  { .mp-archive ul.products { grid-template-columns: repeat(2, 1fr); } }

/* ===== Doporučené produkty – jasné oddělení ===== */
.mp-recommended-wrap {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 2px solid #f47c20;
}
.mp-recommended-title {
    font-size: 14px;
    font-weight: 900;
    margin: 0 0 10px;
}

.mp-empty-note {
    padding: 10px 12px;
    border: 1px solid #ddd;
    background: #fff;
    margin: 10px 0 12px;
}

/* ===== Skladový štítek v katalogu ===== */
.mp-archive ul.products li.product .mp-stock {
    margin: 0 0 10px; /* Mezera pod skladem před tlačítkem */
    font-size: 13px;
    line-height: 1.2;
    font-weight: 650;
    /* Skladem je přímo pod cenou, takže když se cena posune dolů, skladem se posune s ní */
}

.mp-archive ul.products li.product .mp-stock--ok,
.mp-archive ul.products li.product .mp-stock--lead {
    color: #1f7a1f;
}

.mp-archive ul.products li.product .mp-stock--na {
  color: #777;
  font-weight: 600;
}

/* Blocksy: sklad vždy vizuálně POD cenou */
.mp-archive ul.products li.product .price {
    display: flex;
    flex-direction: column;
}

.mp-archive ul.products li.product .mp-stock--blocksy {
    margin-top: 4px;
}

/* ===== Varianty barev a další prvky - přesuneme výše ===== */
/* Varianty barev - přesuneme je pod název produktu, před cenu */
.mp-archive ul.products li.product .variations,
.mp-archive ul.products li.product .woocommerce-variation,
.mp-archive ul.products li.product .woocommerce-variation-description,
.mp-archive ul.products li.product .variations_form,
.mp-archive ul.products li.product .woocommerce-variation-add-to-cart,
.mp-archive ul.products li.product .variations_button {
    margin: 0 0 10px;
    min-height: 0;
}

/* Varianty barev - tlačítka/swatches */
.mp-archive ul.products li.product .variations select,
.mp-archive ul.products li.product .variations .variation,
.mp-archive ul.products li.product .variations .value {
    margin: 0 0 8px;
}

/* Varianty barev - obdélníkové nebo čtvercové tlačítka */
.mp-archive ul.products li.product .variations .variation label,
.mp-archive ul.products li.product .variations .variation .value select,
.mp-archive ul.products li.product .variations .variation .value .swatch-wrapper,
.mp-archive ul.products li.product .variations .variation .value a,
.mp-archive ul.products li.product .variations .variation .value span {
    display: inline-block;
    margin: 2px;
    vertical-align: middle;
}

/* Pokud produkt nemá varianty, skryjeme je */
.mp-archive ul.products li.product:not(.product-type-variable) .variations {
    display: none;
}

/* Zajistíme, že všechny produkty mají stejný prostor před tlačítkem */
.mp-archive ul.products li.product > *:last-child {
    margin-top: auto;
}

/* Další možné prvky, které mohou měnit výšku */
.mp-archive ul.products li.product .woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

/* Zajistíme, že obrázek má vždy stejnou výšku */
.mp-archive ul.products li.product a.woocommerce-LoopProduct-link img,
.mp-archive ul.products li.product img.attachment-woocommerce_thumbnail,
.mp-archive ul.products li.product img.wp-post-image {
    width: 100% !important;
    height: 170px !important;
    object-fit: contain !important;
    object-position: center !important;
    display: block !important;
    margin: 0 0 10px !important;
    background: #f9f9f9;
}

/* ===== Varianty velikosti: zvýraznění podle dostupnosti ===== */
/* Podporuje různé názvy tříd/atributů z pluginů i vlastního výstupu. */
.mp-archive ul.products li.product .mp-variants,
.mp-archive ul.products li.product .product-variants,
.mp-archive ul.products li.product .variable-items-wrapper,
.mp-archive ul.products li.product .variations {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.mp-archive ul.products li.product .mp-variants .variant,
.mp-archive ul.products li.product .mp-variants .mp-variant,
.mp-archive ul.products li.product .product-variants .variant,
.mp-archive ul.products li.product .product-variants .mp-variant,
.mp-archive ul.products li.product .variable-items-wrapper .variable-item,
.mp-archive ul.products li.product .variable-items-wrapper .variable-item .variable-item-span,
.mp-archive ul.products li.product .variations .value > span,
.mp-archive ul.products li.product .variations .value > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    padding: 2px 6px;
    border: 1px solid #d4d7dc;
    border-radius: 2px;
    background: #fff;
    color: #444;
    font-size: 11px;
    line-height: 1.25;
    font-weight: 500;
    text-decoration: none;
}

/* Klikací šablonové swatche: obarvení dle dostupnosti */
.mp-archive ul.products li.product .variable-items-wrapper .variable-item {
    padding: 0;
    overflow: hidden;
}

.mp-archive ul.products li.product .variable-items-wrapper .variable-item .variable-item-span {
    min-width: 26px;
    padding: 2px 6px;
}

/* Explicitní stavy (pokud je plugin/téma poskytuje) */
.mp-archive ul.products li.product .variable-item.onbackorder,
.mp-archive ul.products li.product .variable-item.backorder,
.mp-archive ul.products li.product .variable-item.available-on-backorder,
.mp-archive ul.products li.product .mp-variant--instock,
.mp-archive ul.products li.product .variant--lead,
.mp-archive ul.products li.product .stock-onbackorder,
.mp-archive ul.products li.product [data-stock-state="leadtime"],
.mp-archive ul.products li.product [data-stock-status="leadtime"],
.mp-archive ul.products li.product [data-stock-state="onbackorder"],
.mp-archive ul.products li.product [data-stock-status="onbackorder"],
.mp-archive ul.products li.product [data-availability="lead"] {
    color: #2f9b2f !important;
    border-color: #89c989 !important;
    background: #f5fcf5 !important;
    font-weight: 500 !important;
}

.mp-archive ul.products li.product .mp-variant--inquiry,
.mp-archive ul.products li.product .variant--inquiry,
.mp-archive ul.products li.product .variable-item.inquiry,
.mp-archive ul.products li.product .stock-inquiry,
.mp-archive ul.products li.product [data-stock-state="inquiry"],
.mp-archive ul.products li.product [data-stock-status="inquiry"],
.mp-archive ul.products li.product [data-availability="inquiry"] {
    color: #1f5fa8 !important;
    border-color: #8eb4e3 !important;
    background: #f3f8ff !important;
    font-weight: 500 !important;
}

.mp-archive ul.products li.product .mp-variant--outofstock,
.mp-archive ul.products li.product .variant--outofstock,
.mp-archive ul.products li.product .stock-outofstock,
.mp-archive ul.products li.product .variable-item.disabled,
.mp-archive ul.products li.product .variable-item.out-of-stock,
.mp-archive ul.products li.product .variable-item.outofstock,
.mp-archive ul.products li.product [data-stock-state="disabled"],
.mp-archive ul.products li.product [data-stock-status="disabled"],
.mp-archive ul.products li.product [data-stock-state="outofstock"],
.mp-archive ul.products li.product [data-stock-status="outofstock"],
.mp-archive ul.products li.product [data-availability="outofstock"] {
    color: #b52828 !important;
    border-color: #e5aaaa !important;
    background: #fff6f6 !important;
    text-decoration: line-through !important;
    font-weight: 500 !important;
    opacity: .95;
}

/* Fallback dostupné = tučně zelené (u nás skladem) */
.mp-archive ul.products li.product .mp-variant--instock,
.mp-archive ul.products li.product .variant--instock,
.mp-archive ul.products li.product .stock-instock,
.mp-archive ul.products li.product [data-stock-state="instock"],
.mp-archive ul.products li.product [data-stock-status="instock"],
.mp-archive ul.products li.product [data-availability="instock"],
.mp-archive ul.products li.product .variable-item:not(.disabled):not(.out-of-stock):not(.outofstock):not(.backorder):not(.onbackorder):not(.available-on-backorder):not(.inquiry) {
    color: #1f7a1f !important;
    border-color: #1f7a1f !important;
    background: #eef9ee !important;
    font-weight: 700 !important;
}

/* ===== Šablonové (klikací) swatche – obarvení přes JS třídy ===== */
.mp-archive ul.products li.product .mp-swatch--instock,
.mp-archive ul.products li.product .mp-swatch--instock .variable-item-span {
    color: #1f7a1f !important;
    border-color: #1f7a1f !important;
    background: #eef9ee !important;
    font-weight: 700 !important;
}

.mp-archive ul.products li.product .mp-swatch--leadtime,
.mp-archive ul.products li.product .mp-swatch--leadtime .variable-item-span {
    color: #2f9b2f !important;
    border-color: #89c989 !important;
    background: #f5fcf5 !important;
    font-weight: 500 !important;
}

.mp-archive ul.products li.product .mp-swatch--inquiry,
.mp-archive ul.products li.product .mp-swatch--inquiry .variable-item-span {
    color: #1f5fa8 !important;
    border-color: #8eb4e3 !important;
    background: #f3f8ff !important;
    font-weight: 500 !important;
}

.mp-archive ul.products li.product .mp-swatch--disabled,
.mp-archive ul.products li.product .mp-swatch--disabled .variable-item-span {
    color: #b52828 !important;
    border-color: #e5aaaa !important;
    background: #fff6f6 !important;
    text-decoration: line-through !important;
    font-weight: 500 !important;
    opacity: .95 !important;
}
