/* =========================================================
   METROINSTAL — WOOCOMMERCE
========================================================= */

:root{
    --ms-blue:#0B4F8C;
    --ms-blue-dark:#07365F;
    --ms-red:#D71920;
    --ms-text:#243447;
    --ms-muted:#627183;
    --ms-light:#F3F7FB;
    --ms-border:#E4EBF2;
    --ms-white:#FFFFFF;
}

/* =========================================================
   PAGINA MAGAZIN / ARHIVE
========================================================= */

.woocommerce.archive .site-content,
.post-type-archive-product .site-content,
.tax-product_cat .site-content{
    background:#F4F7FA;
}

.woocommerce.archive .site-main,
.post-type-archive-product .site-main,
.tax-product_cat .site-main{
    padding-top:48px;
    padding-bottom:80px;
}

/* Titlu pagină */

.woocommerce-products-header{
    margin-bottom:36px;
}

.woocommerce-products-header__title.page-title{
    margin:0 0 12px;
    color:var(--ms-blue-dark);
    font-size:42px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.7px;
}

.term-description{
    max-width:800px;
    color:var(--ms-muted);
    font-size:16px;
    line-height:1.7;
}

/* Rezultate și sortare */

.woocommerce .woocommerce-result-count{
    margin:13px 0 25px;
    color:var(--ms-muted);
    font-size:14px;
}

.woocommerce .woocommerce-ordering{
    margin:0 0 25px;
}

.woocommerce .woocommerce-ordering select{
    min-width:230px;
    height:46px;
    padding:0 42px 0 15px;
    color:var(--ms-text);
    background-color:#fff;
    border:1px solid var(--ms-border);
    border-radius:9px;
    font-size:14px;
    outline:none;
}

.woocommerce .woocommerce-ordering select:focus{
    border-color:var(--ms-blue);
    box-shadow:0 0 0 3px rgba(11,79,140,.10);
}

/* =========================================================
   GRILĂ PRODUSE
========================================================= */

.woocommerce ul.products{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:24px;
    margin:0;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after{
    display:none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
    position:relative;
    width:100% !important;
    min-width:0;
    display:flex;
    flex-direction:column;
    float:none !important;
    clear:none !important;
    overflow:hidden;
    margin:0 !important;
    padding:0 0 20px;
    background:#fff;
    border:1px solid var(--ms-border);
    border-radius:16px;
    box-shadow:0 10px 30px rgba(7,54,95,.06);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.woocommerce ul.products li.product:hover{
    border-color:rgba(11,79,140,.26);
    box-shadow:0 22px 45px rgba(7,54,95,.13);
    transform:translateY(-6px);
}

/* =========================================================
   IMAGINE PRODUS
========================================================= */

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    display:flex;
    flex-direction:column;
    flex-grow:1;
    color:inherit;
    text-decoration:none;
}

.woocommerce ul.products li.product a img{
    width:100%;
    height:260px;
    display:block;
    margin:0 0 20px !important;
    padding:25px;
    background:#F8FAFC;
    object-fit:contain;
    transition:transform .3s ease;
}

.woocommerce ul.products li.product:hover a img{
    transform:scale(1.04);
}

/* =========================================================
   BADGE REDUCERE
========================================================= */

.woocommerce span.onsale{
    top:14px !important;
    right:auto !important;
    left:14px !important;
    z-index:3;
    min-width:auto;
    min-height:auto;
    margin:0 !important;
    padding:7px 12px;
    color:#fff;
    background:var(--ms-red);
    border-radius:50px;
    box-shadow:0 6px 16px rgba(215,25,32,.22);
    font-size:12px;
    font-weight:800;
    line-height:1.2;
}

/* =========================================================
   TITLU PRODUS
========================================================= */

.woocommerce ul.products li.product .woocommerce-loop-product__title{
    flex-grow:1;
    min-height:68px;
    margin:0;
    padding:0 20px 12px !important;
    color:var(--ms-blue-dark);
    font-size:17px !important;
    font-weight:750;
    line-height:1.38;
    transition:color .2s ease;
}

.woocommerce ul.products li.product:hover .woocommerce-loop-product__title{
    color:var(--ms-blue);
}

/* =========================================================
   RATING
========================================================= */

.woocommerce ul.products li.product .star-rating{
    margin:0 20px 12px;
    color:#F4B400;
    font-size:13px;
}

/* =========================================================
   PREȚ
========================================================= */

.woocommerce ul.products li.product .price{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
    min-height:31px;
    margin:0 20px 16px !important;
    color:var(--ms-red) !important;
    font-size:20px !important;
    font-weight:800 !important;
    line-height:1.3;
}

.woocommerce ul.products li.product .price del{
    color:#8B97A5;
    font-size:14px;
    font-weight:500;
    opacity:1;
}

.woocommerce ul.products li.product .price ins{
    color:var(--ms-red);
    background:none;
    text-decoration:none;
    font-weight:800;
}

/* =========================================================
   BUTON ADAUGĂ ÎN COȘ
========================================================= */

.woocommerce ul.products li.product .button{
    width:calc(100% - 40px);
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 20px !important;
    padding:12px 16px !important;
    color:#fff !important;
    background:var(--ms-blue) !important;
    border:0 !important;
    border-radius:9px !important;
    box-shadow:none;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.2;
    text-align:center;
    transition:
        background-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.woocommerce ul.products li.product .button:hover{
    color:#fff !important;
    background:var(--ms-red) !important;
    box-shadow:0 10px 22px rgba(215,25,32,.20);
    transform:translateY(-2px);
}

.woocommerce ul.products li.product .added_to_cart{
    margin:12px 20px 0;
    color:var(--ms-blue);
    font-size:13px;
    font-weight:700;
    text-align:center;
    text-decoration:none;
}

.woocommerce ul.products li.product .added_to_cart:hover{
    color:var(--ms-red);
}

/* Icon de încărcare AJAX */

.woocommerce ul.products li.product .button.loading{
    padding-right:38px !important;
}

.woocommerce ul.products li.product .button.added::after{
    margin-left:8px;
}

/* =========================================================
   PAGINARE
========================================================= */

.woocommerce nav.woocommerce-pagination{
    margin-top:48px;
}

.woocommerce nav.woocommerce-pagination ul{
    display:flex;
    justify-content:center;
    gap:7px;
    border:0;
}

.woocommerce nav.woocommerce-pagination ul li{
    border:0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
    min-width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 12px;
    color:var(--ms-blue-dark);
    background:#fff;
    border:1px solid var(--ms-border);
    border-radius:8px;
    font-size:14px;
    font-weight:700;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current{
    color:#fff;
    background:var(--ms-blue);
    border-color:var(--ms-blue);
}

/* =========================================================
   MESAJE WOOCOMMERCE
========================================================= */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
    margin-bottom:28px;
    padding:18px 22px 18px 52px;
    background:#fff;
    border:1px solid var(--ms-border);
    border-top:3px solid var(--ms-blue);
    border-radius:10px;
    box-shadow:0 8px 25px rgba(7,54,95,.06);
}

.woocommerce-error{
    border-top-color:var(--ms-red);
}

/* =========================================================
   TABLETĂ
========================================================= */

@media (max-width:1100px){

    .woocommerce ul.products{
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap:20px;
    }

    .woocommerce ul.products li.product a img{
        height:235px;
    }
}

@media (max-width:850px){

    .woocommerce ul.products{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .woocommerce-products-header__title.page-title{
        font-size:36px;
    }
}

/* =========================================================
   MOBIL
========================================================= */

@media (max-width:560px){

    .woocommerce.archive .site-main,
    .post-type-archive-product .site-main,
    .tax-product_cat .site-main{
        padding-top:32px;
        padding-bottom:55px;
    }

    .woocommerce-products-header__title.page-title{
        font-size:30px;
    }

    .woocommerce .woocommerce-result-count,
    .woocommerce .woocommerce-ordering{
        width:100%;
        float:none;
    }

    .woocommerce .woocommerce-ordering select{
        width:100%;
    }

    .woocommerce ul.products{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:12px;
    }

    .woocommerce ul.products li.product{
        padding-bottom:14px;
        border-radius:12px;
    }

    .woocommerce ul.products li.product a img{
        height:170px;
        margin-bottom:14px !important;
        padding:15px;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title{
        min-height:63px;
        padding:0 12px 9px !important;
        font-size:14px !important;
        line-height:1.4;
    }

    .woocommerce ul.products li.product .price{
        min-height:27px;
        margin:0 12px 12px !important;
        font-size:16px !important;
    }

    .woocommerce ul.products li.product .price del{
        font-size:12px;
    }

    .woocommerce ul.products li.product .button{
        width:calc(100% - 24px);
        min-height:43px;
        margin:0 12px !important;
        padding:9px 8px !important;
        font-size:12px !important;
    }

    .woocommerce ul.products li.product .added_to_cart{
        margin:10px 12px 0;
        font-size:12px;
    }

    .woocommerce span.onsale{
        top:8px !important;
        left:8px !important;
        padding:6px 9px;
        font-size:10px;
    }
}
/* =========================================================
   CORECȚII ASTRA + WOOCOMMERCE
========================================================= */

/* Reduce spațiul mare de deasupra magazinului */
.woocommerce.archive .site-content,
.post-type-archive-product .site-content,
.tax-product_cat .site-content {
    padding-top: 0 !important;
}

.woocommerce.archive .ast-container,
.post-type-archive-product .ast-container,
.tax-product_cat .ast-container {
    padding-top: 45px !important;
}

.woocommerce.archive .site-main,
.post-type-archive-product .site-main,
.tax-product_cat .site-main {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb {
    margin: 0 0 22px;
    color: #718096;
    font-size: 14px;
}

.woocommerce .woocommerce-breadcrumb a {
    color: #627183;
    text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a:hover {
    color: var(--ms-blue);
}

/* Titlul magazinului */
.woocommerce-products-header__title.page-title {
    margin-bottom: 42px !important;
}

/* Aliniere rezultate + sortare */
.woocommerce .woocommerce-result-count {
    margin-top: 12px !important;
}

.woocommerce .woocommerce-ordering {
    margin-bottom: 28px !important;
}

/* Forțează badge-ul MetroInstal peste stilul Astra */
.woocommerce ul.products li.product .onsale,
.woocommerce-page ul.products li.product .onsale,
.woocommerce span.onsale {
    top: 14px !important;
    right: auto !important;
    bottom: auto !important;
    left: 14px !important;

    min-width: auto !important;
    min-height: auto !important;
    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 7px 12px !important;

    color: #fff !important;
    background: var(--ms-red) !important;
    border: 0 !important;
    border-radius: 30px !important;
    box-shadow: 0 7px 18px rgba(215, 25, 32, .25) !important;

    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

/* Elimină spațierea Astra din card */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    padding-top: 0 !important;
}

/* Fundalul imaginii */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    overflow: hidden;
}

.woocommerce ul.products li.product a img {
    border-radius: 0 !important;
}

/* Imagine mai bine centrată */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
    min-height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8fafc;
}

/* Carduri puțin mai compacte */
.woocommerce ul.products li.product .astra-shop-summary-wrap {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding-top: 0;
}

/* Ascunde eventualele categorii afișate de Astra */
.woocommerce ul.products li.product .ast-woo-product-category {
    display: none;
}
/* =========================================================
   FIX ASTRA SHOP
========================================================= */

/* Elimină spațiul mare de sus din pagina Magazin */
body.woocommerce-shop .site-content > .ast-container,
body.post-type-archive-product .site-content > .ast-container,
body.tax-product_cat .site-content > .ast-container {
    padding-top: 45px !important;
    padding-bottom: 70px !important;
}

body.woocommerce-shop #primary,
body.post-type-archive-product #primary,
body.tax-product_cat #primary {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.woocommerce-shop .site-main,
body.post-type-archive-product .site-main,
body.tax-product_cat .site-main {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Header-ul arhivei */
body.woocommerce-shop .woocommerce-products-header,
body.post-type-archive-product .woocommerce-products-header,
body.tax-product_cat .woocommerce-products-header {
    margin-top: 0 !important;
    margin-bottom: 32px !important;
}

body.woocommerce-shop .woocommerce-breadcrumb,
body.post-type-archive-product .woocommerce-breadcrumb,
body.tax-product_cat .woocommerce-breadcrumb {
    margin-top: 0 !important;
    margin-bottom: 22px !important;
}

/* Badge-ul real folosit de Astra */
.woocommerce ul.products li.product .ast-onsale-card,
.woocommerce-page ul.products li.product .ast-onsale-card {
    position: absolute !important;
    top: 14px !important;
    right: auto !important;
    bottom: auto !important;
    left: 14px !important;
    z-index: 10 !important;

    width: auto !important;
    height: auto !important;
    min-width: auto !important;
    min-height: auto !important;

    margin: 0 !important;
    padding: 7px 12px !important;

    color: #fff !important;
    background: #D71920 !important;
    border: 0 !important;
    border-radius: 30px !important;
    box-shadow: 0 7px 18px rgba(215, 25, 32, .25) !important;

    font-size: 0 !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

/* Înlocuiește vizual textul Sale! */
.woocommerce ul.products li.product .ast-onsale-card::after,
.woocommerce-page ul.products li.product .ast-onsale-card::after {
    content: "Reducere";
    font-size: 12px;
    font-weight: 800;
}

/* Elimină orice badge WooCommerce duplicat */
.woocommerce ul.products li.product span.onsale {
    display: none !important;
}

/* Card și imagine */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
    position: relative;
    min-height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #F8FAFC;
}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img {
    width: 100%;
    height: 260px;
    margin: 0 !important;
    padding: 24px;
    object-fit: contain;
}