/* Corps & Décors — harmonisation WooCommerce avec la charte du site.
   Feuille volontairement minimale : elle ne touche que les éléments WooCommerce
   (boutons, badges, messages) pour qu'ils adoptent la palette du thème sans
   modifier quoi que ce soit d'autre. */

:root {
  --cd-vert: #5F7A61;
  --cd-vert-fonce: #4E6B50;
  --cd-vert-clair: #8FA98F;
  --cd-sable: #F4EFE6;
  --cd-creme: #FBF8F2;
  --cd-or: #C9A227;
  --cd-or-clair: #E8C86B;
  --cd-encre: #2E3530;
  --cd-terracotta: #B9755A;
}

/* Boutons : pastilles arrondies or/vert, comme les .btn du site */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #payment #place_order,
.wc-block-components-button {
  background: var(--cd-or);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 0.65rem 1.4rem;
  letter-spacing: 0.3px;
  transition: transform 0.15s, box-shadow 0.15s;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #payment #place_order:hover,
.wc-block-components-button:hover {
  background: var(--cd-vert);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
}

/* Vignettes produit de la boutique : toujours contenues dans leur cadre
   (évite qu'une image plus grande que sa case ne déborde sur le texte). */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 0 1em;
}

/* Prix, liens et badges promo */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
  color: var(--cd-vert-fonce);
}

.woocommerce span.onsale {
  background: var(--cd-terracotta);
  border-radius: 999px;
}

/* Messages (panier mis à jour, erreurs…) */
.woocommerce-message,
.woocommerce-info {
  border-top-color: var(--cd-vert);
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: var(--cd-vert);
}

/* Fils d'Ariane et étapes du paiement */
.woocommerce .woocommerce-breadcrumb a,
.woocommerce-checkout .woocommerce-info a {
  color: var(--cd-vert);
}

/* Tableaux panier / commandes : fond crème doux */
.woocommerce table.shop_table {
  border-color: #e6dfd2;
  border-radius: 12px;
}

.woocommerce table.shop_table th {
  background: var(--cd-sable);
  color: var(--cd-encre);
}

/* ==========================================================================
   Espace client « Mon compte »
   ========================================================================== */

/* Navigation latérale du compte */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #e6dfd2;
  border-radius: 12px;
  overflow: hidden;
  background: var(--cd-creme);
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0;
  border-bottom: 1px solid #efe9dd;
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
  border-bottom: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 0.75rem 1.1rem;
  color: var(--cd-encre);
  text-decoration: none;
  transition: background 0.15s, color 0.15s;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background: var(--cd-sable);
  color: var(--cd-vert-fonce);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: var(--cd-vert);
  color: #fff;
  font-weight: 600;
}

/* Tableau de bord personnalisé */
.cd-account-hello {
  font-size: 1.1rem;
  margin: 0 0 1.2rem;
}

.cd-last-order {
  border: 1px solid #e6dfd2;
  border-left: 4px solid var(--cd-or);
  border-radius: 12px;
  background: var(--cd-creme);
  padding: 1rem 1.2rem;
  margin-bottom: 1.6rem;
}

.cd-last-order-label {
  display: block;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a8f8b;
  margin-bottom: 0.35rem;
}

.cd-last-order-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.cd-order-no {
  font-weight: 700;
  color: var(--cd-encre);
}

.cd-order-date {
  color: #8a8f8b;
  font-size: 0.9rem;
}

.cd-last-order-track,
.cd-last-order-view {
  display: inline-block;
  margin-top: 0.75rem;
  margin-right: 1rem;
  color: var(--cd-vert-fonce);
  font-weight: 600;
  text-decoration: none;
}

.cd-last-order-track:hover,
.cd-last-order-view:hover {
  text-decoration: underline;
}

/* Tuiles d'accès rapide */
.cd-account-tiles {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

.cd-account-tile {
  display: block;
  border: 1px solid #e6dfd2;
  border-radius: 12px;
  padding: 1.1rem 1.2rem;
  background: #fff;
  text-decoration: none;
  color: var(--cd-encre);
  transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;
}

.cd-account-tile:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08);
  border-color: var(--cd-vert-clair);
}

.cd-tile-ico {
  font-size: 1.5rem;
  display: block;
  margin-bottom: 0.4rem;
}

.cd-tile-t {
  display: block;
  font-weight: 600;
  color: var(--cd-vert-fonce);
}

.cd-tile-d {
  display: block;
  font-size: 0.85rem;
  color: #6d726e;
  margin-top: 0.2rem;
}

@media (max-width: 600px) {
  .cd-account-tiles {
    grid-template-columns: 1fr;
  }
}

/* --------------------------------------------------------------------------
   Pastilles de statut de commande (liste des commandes + tableau de bord)
   -------------------------------------------------------------------------- */
.cd-status {
  display: inline-block;
  padding: 0.15rem 0.7rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.6;
  background: #ece7dd;
  color: var(--cd-encre);
}

/* En attente / attente de paiement : sable */
.cd-status--pending,
.cd-status--on-hold {
  background: #f3ecd6;
  color: #8a6d1a;
}

/* Payée (en préparation) : vert clair */
.cd-status--processing {
  background: #e2ecdf;
  color: var(--cd-vert-fonce);
}

/* Expédiée : or */
.cd-status--expediee {
  background: #f6e9c2;
  color: #7a5a00;
}

/* Terminée : vert plein */
.cd-status--completed {
  background: var(--cd-vert);
  color: #fff;
}

/* Annulée / remboursée / échouée : terracotta */
.cd-status--cancelled,
.cd-status--refunded,
.cd-status--failed {
  background: #f0ddd5;
  color: var(--cd-terracotta);
}

/* Suivi Mondial Relay sur la page « Ma commande » */
.cd-mr-suivi {
  padding: 0.75rem 1rem;
  border-radius: 10px;
  background: var(--cd-creme);
  border: 1px solid #e6dfd2;
}
