/*
Theme Name: TazaShop Child
Theme URI: https://tazashop.ma/
Description: Thème enfant Hello Elementor pour TazaShop.ma — boutique e-commerce généraliste inspirée par Taza et destinée à tout le Maroc. Gère la boutique, la fiche produit et le blog ; le header et le footer restent libres pour Elementor / ElementsKit.
Author: TazaShop
Author URI: https://tazashop.ma/
Template: hello-elementor
Version: 4.6.8
Requires PHP: 7.4
License: GNU General Public License v3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: tazashop-child
Tags: e-commerce, woocommerce, elementor, rtl-language-support
*/

/*
 * Ce fichier ne sert qu'à déclarer le thème enfant.
 * Tous les styles réels sont dans assets/css/ et chargés
 * conditionnellement depuis inc/setup.php :
 *
 *   global.css       → partout (tokens, boutons, badges, conteneur)
 *   components.css   → partout (recherche, bloc newsletter en shortcode)
 *   shop.css         → boutique, archives produits, panier, commande, compte
 *   product.css      → fiche produit
 *   blog.css         → blog et archives d'articles
 *   single-post.css  → article seul
 *   responsive.css   → partout, chargé en dernier
 *
 * Le thème ne produit aucun header ni footer : construisez-les avec
 * Elementor / ElementsKit.
 *
 * Ajoutez ici uniquement vos retouches rapides : ce fichier est chargé
 * après tous les autres.
 */

/* =========================================================
   TAZASHOP 4.5.0 — SHORTCODE PRODUITS
========================================================= */
.tzs-products,.tzs-products *{box-sizing:border-box}.tzs-products{width:100%;font-family:Inter,"Segoe UI",Arial,sans-serif}.tzs-products__grid{display:grid;grid-template-columns:repeat(var(--tzs-columns,4),minmax(0,1fr));gap:24px}.tzs-product-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid #E8ECEA;border-radius:16px;transition:.25s ease}.tzs-product-card:hover{transform:translateY(-4px);border-color:#D9E2DE;box-shadow:0 14px 35px rgba(23,63,53,.10)}.tzs-product-card__image{position:relative;display:block;width:100%;aspect-ratio:1/1;overflow:hidden;background:#F7F8F7}.tzs-product-card__image img{display:block;width:100%!important;height:100%!important;object-fit:contain;padding:16px;transition:transform .35s ease}.tzs-product-card:hover .tzs-product-card__image img{transform:scale(1.035)}.tzs-product-card__badge{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:7px;background:#D66A35;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.tzs-product-card__content{display:flex;flex-direction:column;flex:1;padding:18px}.tzs-product-card__category{margin-bottom:7px;color:#65736C;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.7px}.tzs-product-card__title{margin:0 0 10px;font-size:16px;line-height:1.4;font-weight:700}.tzs-product-card__title a{color:#18231F;text-decoration:none}.tzs-product-card__rating{display:flex;align-items:center;gap:6px;margin-bottom:12px;font-size:12px;color:#7A8580}.tzs-product-card__bottom{margin-top:auto}.tzs-product-card__price{margin-bottom:15px;color:#173F35;font-size:21px;font-weight:850}.tzs-product-card__price .amount{color:#173F35}.tzs-product-card__price del,.tzs-product-card__price del .amount{color:#929B97;font-size:14px;font-weight:500}.tzs-product-card__price ins{text-decoration:none}.tzs-product-card__button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;padding:11px 15px;border-radius:9px;background:#173F35;color:#fff!important;font-size:13px;font-weight:700;text-decoration:none!important}.tzs-product-card__button:hover{background:#0F3028}.tzs-no-products{padding:30px;border:1px solid #E5E9E7;border-radius:12px;background:#F8FAF9;color:#53615B;text-align:center}
@media(max-width:1024px){.tzs-products__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
@media(max-width:767px){.tzs-products__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tzs-product-card__content{padding:14px}.tzs-product-card__title{font-size:14px}.tzs-product-card__price{font-size:18px}.tzs-product-card__button{min-height:41px;padding:10px;font-size:12px}}


/* =========================================================
   TAZASHOP 4.5.2 — PRIX UNIFIÉ + 5 ÉTOILES WOOCOMMERCE
========================================================= */
:root{
  --tz-price:#D66A35;
  --tz-price-old:#858B88;
  --tz-rating-yellow:#F5A000;
}

/* Cartes accueil, boutique, catégories et produits liés. */
body.tz-theme ul.products li.product .price,
body.tz-theme ul.products li.product .price > .woocommerce-Price-amount,
body.tz-theme ul.products li.product .price ins,
body.tz-theme ul.products li.product .price ins .woocommerce-Price-amount,
body.tz-theme ul.products li.product .price ins .woocommerce-Price-currencySymbol,
.tzs-products.tz-theme ul.products li.product .price,
.tzs-products.tz-theme ul.products li.product .price .woocommerce-Price-amount,
.tzs-products.tz-theme ul.products li.product .price .woocommerce-Price-currencySymbol{
  color:var(--tz-price)!important;
}
body.tz-theme ul.products li.product .price del,
body.tz-theme ul.products li.product .price del .woocommerce-Price-amount,
body.tz-theme ul.products li.product .price del .woocommerce-Price-currencySymbol{
  color:var(--tz-price-old)!important;
}

/* Fiche produit : uniquement la couleur du prix, aucun changement de layout. */
body.tz-theme.single-product .tz-product__price .price,
body.tz-theme.single-product .tz-product__price .price > .woocommerce-Price-amount,
body.tz-theme.single-product .tz-product__price .price ins,
body.tz-theme.single-product .tz-product__price .price ins .woocommerce-Price-amount,
body.tz-theme.single-product .tz-product__price .price ins .woocommerce-Price-currencySymbol,
body.tz-theme.single-product .woocommerce-variation-price .price,
body.tz-theme.single-product .woocommerce-variation-price .price ins,
body.tz-theme.single-product .woocommerce-variation-price .price ins .woocommerce-Price-amount{
  color:var(--tz-price)!important;
}
body.tz-theme.single-product .tz-product__price .price del,
body.tz-theme.single-product .tz-product__price .price del .woocommerce-Price-amount,
body.tz-theme.single-product .tz-product__price .price del .woocommerce-Price-currencySymbol{
  color:var(--tz-price-old)!important;
}

/* Exactement 5 étoiles, jaunes comme sur la fiche produit. */
body.tz-theme .tz-rating__stars{
  position:relative!important;
  display:inline-block!important;
  width:auto!important;
  overflow:visible!important;
  font-size:14px!important;
  line-height:1!important;
  letter-spacing:1px!important;
  white-space:nowrap!important;
  color:#DDD8D1!important;
}
body.tz-theme .tz-rating__stars-base{
  display:inline-block!important;
  color:#DDD8D1!important;
}
body.tz-theme .tz-rating__stars-fill{
  position:absolute!important;
  top:0!important;
  left:0!important;
  bottom:auto!important;
  display:block!important;
  height:1em!important;
  overflow:hidden!important;
  color:var(--tz-rating-yellow)!important;
  white-space:nowrap!important;
}
body.tz-theme .tz-rating__count{
  margin-left:2px;
}
@media(max-width:767px){
  body.tz-theme .tz-rating__stars{font-size:12px!important;letter-spacing:.5px!important;}
}

/* =========================================================
   TAZASHOP 4.5.4 — SINGLE PRODUCT: COULEUR DU PRIX UNIQUEMENT
   Le markup custom .tz-product__price ne contient pas de .price.
   Aucune taille, marge, fond, bordure ou disposition n'est modifiée.
========================================================= */
body.tz-theme.single-product .tz-product__price > ins,
body.tz-theme.single-product .tz-product__price > ins .woocommerce-Price-amount,
body.tz-theme.single-product .tz-product__price > ins .woocommerce-Price-currencySymbol,
body.tz-theme.single-product .tz-product__price > .woocommerce-Price-amount,
body.tz-theme.single-product .tz-product__price > .woocommerce-Price-amount .woocommerce-Price-currencySymbol {
  color:#D66A35 !important;
}

/* =====================================================================
   TazaShop 4.6.8 — Page panier WooCommerce (Blocks + panier classique)
   Optimisation ciblée desktop/mobile. Chargé en dernier pour neutraliser
   les largeurs du Cart Block sans modifier le header/footer Elementor.
   ===================================================================== */
body.tz-theme.woocommerce-cart .woocommerce,
body.tz-theme.woocommerce-cart .wp-block-woocommerce-cart,
body.tz-theme.woocommerce-cart .wc-block-cart{
  width:min(1380px,94%)!important;
  max-width:1380px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* WooCommerce Cart Block — desktop */
body.tz-theme.woocommerce-cart .wc-block-cart{
  padding:34px 0 64px!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart__main{
  box-sizing:border-box!important;
  padding-right:52px!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart__sidebar{
  box-sizing:border-box!important;
  padding-left:18px!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart-items{
  width:100%!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart-items th,
body.tz-theme.woocommerce-cart .wc-block-cart-items td{
  border-color:#E7E0D7!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart-item__image{
  width:92px!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart-item__image img{
  width:78px!important;
  height:78px!important;
  object-fit:contain!important;
}
body.tz-theme.woocommerce-cart .wc-block-components-product-name{
  color:#173F35!important;
  font-weight:600!important;
  line-height:1.4!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart__totals-title{
  color:#173F35!important;
  font-weight:700!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart__submit-button{
  width:100%!important;
  min-height:52px!important;
  border-radius:8px!important;
  background:#173F35!important;
  color:#fff!important;
  font-weight:700!important;
  box-shadow:none!important;
}
body.tz-theme.woocommerce-cart .wc-block-cart__submit-button:hover{
  background:#0F3028!important;
  color:#fff!important;
}

/* Panier WooCommerce classique — desktop */
body.tz-theme.woocommerce-cart .woocommerce-cart-form{
  width:63%!important;
  float:left!important;
  box-sizing:border-box!important;
  padding-right:52px!important;
}
body.tz-theme.woocommerce-cart .cart-collaterals{
  width:37%!important;
  float:right!important;
  box-sizing:border-box!important;
}
body.tz-theme.woocommerce-cart .cart-collaterals .cart_totals{
  width:100%!important;
  float:none!important;
}
body.tz-theme.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  min-height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:8px!important;
  background:#173F35!important;
  color:#fff!important;
}

@media (max-width: 767px){
  body.tz-theme.woocommerce-cart,
  body.tz-theme.woocommerce-cart #page,
  body.tz-theme.woocommerce-cart .site-main{
    overflow-x:hidden!important;
  }
  body.tz-theme.woocommerce-cart .woocommerce,
  body.tz-theme.woocommerce-cart .wp-block-woocommerce-cart,
  body.tz-theme.woocommerce-cart .wc-block-cart{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding-left:14px!important;
    padding-right:14px!important;
    box-sizing:border-box!important;
  }

  /* Block cart : empilement réel sur mobile */
  body.tz-theme.woocommerce-cart .wc-block-cart{
    display:block!important;
    padding-top:20px!important;
    padding-bottom:42px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart__main,
  body.tz-theme.woocommerce-cart .wc-block-cart__sidebar{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart__sidebar{
    margin-top:24px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-items,
  body.tz-theme.woocommerce-cart .wc-block-cart-items tbody,
  body.tz-theme.woocommerce-cart .wc-block-cart-items tr{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-items tr{
    display:grid!important;
    grid-template-columns:76px minmax(0,1fr)!important;
    grid-template-areas:
      "image product"
      "image total"!important;
    column-gap:12px!important;
    padding:17px 0!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-item__image{
    grid-area:image!important;
    width:76px!important;
    padding:0!important;
    align-self:start!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-item__image img{
    width:70px!important;
    height:70px!important;
    max-width:70px!important;
    object-fit:contain!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-item__product{
    grid-area:product!important;
    min-width:0!important;
    width:100%!important;
    padding:0 0 6px!important;
    text-align:left!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-item__total{
    grid-area:total!important;
    width:100%!important;
    padding:0!important;
    text-align:left!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-components-product-name{
    display:block!important;
    padding-right:4px!important;
    font-size:13px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-components-quantity-selector{
    margin-top:8px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-item__remove-link{
    margin-top:7px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart__totals-title{
    font-size:18px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart__submit-container,
  body.tz-theme.woocommerce-cart .wc-block-cart__submit-button{
    width:100%!important;
    max-width:100%!important;
  }

  /* Panier classique */
  body.tz-theme.woocommerce-cart .woocommerce-cart-form,
  body.tz-theme.woocommerce-cart .cart-collaterals{
    width:100%!important;
    max-width:100%!important;
    float:none!important;
    padding:0!important;
    margin:0!important;
  }
  body.tz-theme.woocommerce-cart .cart-collaterals{
    margin-top:24px!important;
  }
}

@media (max-width: 390px){
  body.tz-theme.woocommerce-cart .woocommerce,
  body.tz-theme.woocommerce-cart .wp-block-woocommerce-cart,
  body.tz-theme.woocommerce-cart .wc-block-cart{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-items tr{
    grid-template-columns:66px minmax(0,1fr)!important;
    column-gap:10px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-item__image{
    width:66px!important;
  }
  body.tz-theme.woocommerce-cart .wc-block-cart-item__image img{
    width:60px!important;
    height:60px!important;
    max-width:60px!important;
  }
}
