/* =============================================================================
   style-woo.css — Pages WooCommerce
   12. Collections artisanales (shortcode [rosa_collections])
   17. WooCommerce — Boutique (grille + liste)
   18. WooCommerce — Fiche produit
   19. WooCommerce — Panier & Checkout
   20. WooCommerce — Mon compte
   23. WPForms
   21. WooCommerce — Messages & Notifications
   ============================================================================= */

/* =============================================================================
   12. COLLECTIONS ARTISANALES (shortcode [rosa_collections])
   ============================================================================= */
.rosa-collections-section {
  max-width:  1200px;
  margin:     60px auto;
  padding:    0 20px;
  text-align: center;
}

.rosa-collections-main-title {
  font-size:       32px !important;
  font-weight:     600 !important;
  color:           var(--rosa-text-dark) !important;
  margin-bottom:   40px !important;
  letter-spacing:  0.5px;
}

.rosa-collections-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap:                   30px;
}

.rosa-collection-card {
  background:    #ffffff;
  border:        1px solid var(--rosa-pink-border);
  border-radius: 12px;
  overflow:      hidden;
  box-shadow:    0 4px 12px var(--rosa-shadow-xs);
  transition:    transform 0.3s ease, box-shadow 0.3s ease;
  display:       flex;
  flex-direction: column;
}
.rosa-collection-card:hover {
  transform:  translateY(-5px);
  box-shadow: 0 8px 20px var(--rosa-shadow-sm);
}

.rosa-collection-image-wrapper {
  position:   relative;
  width:      100%;
  padding-top: 100%;
  background-color: var(--rosa-bg-collection);
  overflow:   hidden;
}
.rosa-collection-image-wrapper img {
  position:   absolute;
  top:        0;
  left:       0;
  width:      100%;
  height:     100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.rosa-collection-card:hover .rosa-collection-image-wrapper img { transform: scale(1.04); }

.rosa-collection-content {
  padding:         24px;
  display:         flex;
  flex-direction:  column;
  flex-grow:       1;
  justify-content: space-between;
  align-items:     center;
}

.rosa-collection-title {
  font-size:   20px !important;
  font-weight: 600 !important;
  color:       var(--rosa-text-dark) !important;
  margin:      0 0 16px !important;
}

.rosa-collection-btn {
  display:         inline-block;
  background:      transparent;
  color:           var(--rosa-pink-dark);
  border:          1.5px solid var(--rosa-pink-border);
  padding:         10px 22px;
  border-radius:   30px;
  font-family:     var(--rosa-font);
  font-size:       14px;
  font-weight:     600;
  text-decoration: none !important;
  transition:      all 0.25s ease;
}
.rosa-collection-btn:hover {
  background:   var(--rosa-pink);
  border-color: var(--rosa-pink);
  color:        #ffffff;
}


/* =============================================================================
   17. WOOCOMMERCE — BOUTIQUE (grille + liste)
   ============================================================================= */

/* Layout page boutique (sidebar + contenu) */
.woocommerce-page .site-main .widget-area { width: 240px; flex-shrink: 0; }
.woocommerce-page .site-main .woocommerce { flex: 1; min-width: 0; }

.woocommerce-page .content-container {
  display:         flex !important;
  flex-direction:  row-reverse !important; /* sidebar à gauche */
  gap:             32px !important;
  padding:         0px 60px 40px !important;
  align-items:     flex-start !important;
}
.woocommerce-page .content-container #secondary {
  flex:      0 0 240px !important;
  width:     240px !important;
  position:  sticky !important;
  top:       20px !important;
}
.woocommerce-page .content-container #main { flex: 1 !important; min-width: 0 !important; }

/* Titre de la boutique */
.woocommerce-products-header__title,
.woocommerce .page-title {
  font-size:     32px !important;
  font-weight:   800 !important;
  color:         var(--rosa-text-dark) !important;
  text-align:    center !important;
  margin-bottom: 28px !important;
}

/* Barre résultats + tri */
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering { float: right !important; margin: 0 0 16px !important; }
.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count { float: left !important; margin: 0 0 16px !important; }
.woocommerce-result-count {
  color:       var(--rosa-text-light) !important;
  font-size:   14px !important;
  line-height: 34px !important;
}
.woocommerce-ordering select {
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 8px !important;
  font-family:   var(--rosa-font) !important;
  font-size:     14px !important;
  padding:       6px 12px !important;
  background:    #fff !important;
}

/* Barre tri + toggle Kadence */
.kadence-shop-top-row {
  display:         flex !important;
  justify-content: flex-end !important;
  align-items:     center !important;
  gap:             12px !important;
  width:           100% !important;
  box-sizing:      border-box !important;
}
.kadence-shop-top-item { display: flex !important; align-items: center !important; }
.kadence-woo-ordering form.woocommerce-ordering { margin: 0 !important; }
.kadence-woo-ordering select.orderby {
  height:      36px !important;
  line-height: 1 !important;
  padding-top:    0 !important;
  padding-bottom: 0 !important;
  margin:      0 !important;
}
.kadence-product-toggle-container {
  display:        flex !important;
  flex-direction: row !important;
  align-items:    center !important;
  gap:            6px !important;
  height:         36px !important;
}
.kadence-toggle-shop-layout {
  height:        36px !important;
  width:         36px !important;
  display:       flex !important;
  align-items:   center !important;
  justify-content: center !important;
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 6px !important;
  background:    transparent !important;
  color:         var(--rosa-text-light) !important;
  cursor:        pointer !important;
  transition:    all 0.2s !important;
}
.kadence-toggle-shop-layout.toggle-active,
.kadence-toggle-shop-layout:hover {
  border-color: var(--rosa-pink) !important;
  color:        var(--rosa-pink) !important;
  background:   var(--rosa-pink-light) !important;
}

/* Grille produits (vue grille) */
.woocommerce ul.products,
.woocommerce-page ul.products {
  display:               grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap:                   22px !important;
  margin:                0 !important;
  padding:               0 !important;
  list-style:            none !important;
  clear:                 both !important;
}

/* Cartes produit */
.woocommerce ul.products li.product {
  background:    #fff !important;
  border-radius: var(--rosa-radius) !important;
  border:        1.5px solid var(--rosa-pink-border) !important;
  overflow:      hidden !important;
  transition:    transform 0.2s, box-shadow 0.2s !important;
  padding:       0 !important;
  margin:        0 !important;
  list-style:    none !important;
}
.woocommerce ul.products li.product:hover {
  transform:  translateY(-4px) !important;
  box-shadow: var(--rosa-shadow) !important;
}
.woocommerce ul.products.woo-archive-action-on-hover li.product:hover .entry-content-wrap,
.woocommerce ul.products.woo-archive-action-on-hover li.product:focus-within .entry-content-wrap {
  transform: none !important;
}
.woocommerce ul.products li.product img {
  width:      100% !important;
  height:     190px !important;
  object-fit: cover !important;
  display:    block !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size:   14px !important;
  font-weight: 700 !important;
  color:       var(--rosa-text-dark) !important;
  padding:     14px 16px 4px !important;
  margin:      0 !important;
}
.woocommerce ul.products li.product .price {
  color:       var(--rosa-pink) !important;
  font-weight: 700 !important;
  font-size:   15px !important;
  padding:     0 16px 14px !important;
  display:     block !important;
}
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product .add_to_cart_button { display: none !important; }

/* Vue liste */
.woocommerce ul.products.products-list-view,
.woocommerce-page ul.products.products-list-view {
  grid-template-columns: 1fr !important;
  gap:                   16px !important;
}
.woocommerce ul.products.products-list-view li.product,
.woocommerce-page ul.products.products-list-view li.product {
  display:        flex !important;
  flex-direction: row !important;
  align-items:    stretch !important;
  overflow:       hidden !important;
  padding:        0 !important;
  min-height:     160px !important;
}
.woocommerce ul.products.products-list-view li.product > a:first-child,
.woocommerce-page ul.products.products-list-view li.product > a:first-child {
  flex:    0 0 180px !important;
  width:   180px !important;
  display: block !important;
}
.woocommerce ul.products.products-list-view li.product img,
.woocommerce-page ul.products.products-list-view li.product img {
  width:      180px !important;
  height:     100% !important;
  min-height: 160px !important;
  object-fit: cover !important;
  display:    block !important;
}
.woocommerce ul.products.products-list-view li.product .woocommerce-loop-product__link,
.woocommerce ul.products.products-list-view li.product > a ~ *,
.woocommerce-page ul.products.products-list-view li.product .woocommerce-loop-product__link {
  display:        flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  flex:           1 !important;
}
.woocommerce ul.products.products-list-view li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products.products-list-view li.product .woocommerce-loop-product__title {
  font-size: 17px !important;
  padding:   0 0 6px !important;
}
.woocommerce ul.products.products-list-view li.product .price,
.woocommerce-page ul.products.products-list-view li.product .price {
  padding:   0 !important;
  font-size: 16px !important;
}

/* Sidebar widgets */
.widget-area .widget {
  background:    #fff;
  border-radius: var(--rosa-radius);
  border:        1.5px solid var(--rosa-pink-border);
  padding:       18px;
  margin-bottom: 20px;
}
.widget-area .widget-title {
  font-size:     15px !important;
  font-weight:   700 !important;
  color:         var(--rosa-text-dark) !important;
  margin-bottom: 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid var(--rosa-pink-border) !important;
}
.widget-area .widget ul li { margin-bottom: 6px !important; }
.widget-area .widget ul li a {
  font-size:   14px !important;
  color:       var(--rosa-text-medium) !important;
  font-weight: 600 !important;
  transition:  color 0.2s !important;
}
.widget-area .widget ul li a:hover { color: var(--rosa-pink-dark) !important; }
.widget-area .widget ul li.current-cat > a { color: var(--rosa-pink-dark) !important; font-weight: 700 !important; }

/* Label « Catégories » sur le bloc WooCommerce */
.wc-block-product-categories::before {
  content:       'Catégories';
  display:       block;
  font-family:   var(--rosa-font);
  font-size:     15px;
  font-weight:   700;
  color:         var(--rosa-text-dark);
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--rosa-pink-border);
}
.wc-block-product-categories {
  margin: 0px !important;
}
.wc-block-product-categories-list {
  margin-bottom: 0px !important;
}

/* Filtre par prix */
.woocommerce-widget-layered-nav-dropdown__submit,
.price_slider_amount button {
  background:    var(--rosa-pink) !important;
  color:         #fff !important;
  border:        none !important;
  border-radius: var(--rosa-radius-btn) !important;
  font-family:   var(--rosa-font) !important;
  font-weight:   700 !important;
  font-size:     14px !important;
  padding:       10px 24px !important;
  cursor:        pointer !important;
  width:         100% !important;
  margin-top:    10px !important;
  transition:    background 0.2s !important;
}
.woocommerce-widget-layered-nav-dropdown__submit:hover,
.price_slider_amount button:hover { background: var(--rosa-pink-dark) !important; }

.ui-slider .ui-slider-range  { background: var(--rosa-pink) !important; }
.ui-slider .ui-slider-handle { border-color: var(--rosa-pink) !important; }


/* =============================================================================
   18. WOOCOMMERCE — FICHE PRODUIT
   ============================================================================= */
.woocommerce div.product {
  background: transparent !important;
  padding:    40px 60px !important;
  box-shadow: none !important;
}

/* Retire l'ombre sur les wrappers Kadence */
.woocommerce div.product .product,
.single-product .content-bg,
.single-product .entry-content-wrap {
  box-shadow: none !important;
  background: transparent !important;
}

/* Titre et prix */
.woocommerce div.product .product_title {
  font-size:   28px !important;
  font-weight: 800 !important;
  color:       var(--rosa-text-dark) !important;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color:       var(--rosa-pink) !important;
  font-size:   26px !important;
  font-weight: 700 !important;
}
.woocommerce div.product .woocommerce-product-details__short-description {
  font-size:   15px !important;
  color:       var(--rosa-text-medium) !important;
  line-height: 1.7 !important;
}

/* Galerie */
.woocommerce div.product .woocommerce-product-gallery__image img {
  border-radius: var(--rosa-radius) !important;
  border:        2px solid var(--rosa-pink-border) !important;
}

/* Formulaire quantité + panier */
.woocommerce div.product form.cart {
  display:     flex !important;
  align-items: center !important;
  gap:         12px !important;
}
.woocommerce div.product form.cart .quantity,
.woocommerce div.product form.cart .single_add_to_cart_button {
  flex:   0 0 auto !important;
  margin: 0 !important;
}

/* Bouton Ajouter au panier */
.woocommerce .single_add_to_cart_button,
.woocommerce button.button.alt {
  background:    var(--rosa-pink) !important;
  color:         #fff !important;
  border-radius: var(--rosa-radius-btn) !important;
  font-family:   var(--rosa-font) !important;
  font-weight:   700 !important;
  font-size:     16px !important;
  padding:       14px 40px !important;
  height:        auto !important;
  line-height:   1.4 !important;
  border:        none !important;
  transition:    background 0.2s, transform 0.15s !important;
}
.woocommerce .single_add_to_cart_button:hover {
  background: var(--rosa-pink-dark) !important;
  transform:  scale(1.02) !important;
}

/* Champ quantité */
.woocommerce .quantity input.qty {
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 8px !important;
  font-family:   var(--rosa-font) !important;
  font-size:     16px !important;
  text-align:    center !important;
}

/* Onglets description */
.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-bottom-color: var(--rosa-pink-border) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
  border-bottom-color: var(--rosa-pink-border) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border-color: var(--rosa-pink-border) !important;
  background:   transparent !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  background:          #fff !important;
  border-color:        var(--rosa-pink-border) !important;
  border-bottom-color: #fff !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-weight: 600 !important;
  color:       var(--rosa-text-medium) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:not(.active) a {
  color: var(--rosa-text-light) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--rosa-pink-dark) !important;
}
.woocommerce div.product .woocommerce-tabs .panel { border-top: none !important; }

/* Product Add-Ons */
.wc-pao-addon-wrap {
  background:    var(--rosa-pink-light) !important;
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 12px !important;
  padding:       18px !important;
  margin:        16px 0 !important;
}
.wc-pao-addon-name,
.wc-pao-addon-label {
  font-weight:   700 !important;
  color:         var(--rosa-pink-dark) !important;
  font-size:     15px !important;
  margin-bottom: 8px !important;
  display:       block !important;
}
.wc-pao-addon-wrap input[type="text"],
.wc-pao-addon-wrap input[type="email"],
.wc-pao-addon-wrap textarea,
.wc-pao-addon-wrap select {
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 8px !important;
  padding:       10px 14px !important;
  font-family:   var(--rosa-font) !important;
  font-size:     14px !important;
  width:         100% !important;
  background:    #fff !important;
  transition:    border-color 0.2s !important;
}
.wc-pao-addon-wrap input:focus,
.wc-pao-addon-wrap textarea:focus {
  border-color: var(--rosa-pink) !important;
  outline:      none !important;
  box-shadow:   0 0 0 3px var(--rosa-shadow-focus) !important;
}
.wc-pao-addon-wrap input[type="radio"] { accent-color: var(--rosa-pink) !important; }

/* Carte fiche produit — style rosa-about */
.single-product #primary .content-wrap,
.single-product .product-hero-section,
.woocommerce div.product {
  background:    var(--rosa-bg-warm) !important;
  border:        1.5px solid var(--rosa-border-warm) !important;
  border-radius: 20px !important;
  box-shadow:    0 6px 24px var(--rosa-border-warm) !important;
  padding:       40px !important;
  max-width:     1100px !important;
  margin:        40px auto !important;
}

.single-product .entry-content,
.single-product .content-bg {
  background:    var(--rosa-bg-warm) !important;
  border:        1.5px solid var(--rosa-border-warm) !important;
  border-radius: 20px !important;
  box-shadow:    0 6px 24px var(--rosa-border-warm) !important;
}

/* WAPF — champs de personnalisation */
.wapf-field-input input[type="text"],
.wapf-field-input input[type="email"],
.wapf-field-input input[type="number"],
.wapf-field-input textarea,
.wapf-field-input select {
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 8px !important;
  padding:       10px 14px !important;
  font-family:   var(--rosa-font) !important;
  font-size:     14px !important;
  width:         100% !important;
  background:    #fff !important;
  color:         var(--rosa-text-dark) !important;
  transition:    border-color 0.2s !important;
  box-sizing:    border-box !important;
}

.wapf-field-input input:focus,
.wapf-field-input textarea:focus,
.wapf-field-input select:focus {
  border-color: var(--rosa-pink) !important;
  outline:      none !important;
  box-shadow:   0 0 0 3px var(--rosa-shadow-focus) !important;
}

/* =============================================================================
   19. WOOCOMMERCE — PANIER & CHECKOUT
   ============================================================================= */
.woocommerce-cart table.cart,
.woocommerce-checkout #order_review {
  border-radius: var(--rosa-radius) !important;
  border:        1.5px solid var(--rosa-pink-border) !important;
  overflow:      hidden !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 8px !important;
  font-family:   var(--rosa-font) !important;
  font-size:     14px !important;
  padding:       10px 14px !important;
  transition:    border-color 0.2s !important;
}
.woocommerce form .form-row input.input-text:focus {
  border-color: var(--rosa-pink) !important;
  outline:      none !important;
  box-shadow:   0 0 0 3px var(--rosa-shadow-focus) !important;
}

.woocommerce #payment #place_order {
  background:    var(--rosa-pink) !important;
  border-radius: var(--rosa-radius-btn) !important;
  font-family:   var(--rosa-font) !important;
  font-weight:   700 !important;
  font-size:     16px !important;
  border:        none !important;
  padding:       14px 40px !important;
  width:         100% !important;
  transition:    background 0.2s !important;
}
.woocommerce #payment #place_order:hover { background: var(--rosa-pink-dark) !important; }

.woocommerce-Price-amount.amount,
.woocommerce-mini-cart .quantity { color: var(--rosa-pink-dark) !important; }

/* Select2 — bordure rose */
.select2-container .select2-selection--single,
.select2-container--default .select2-selection--single {
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 8px !important;
  height:        42px !important;
  font-family:   var(--rosa-font) !important;
  background:    #ffffff !important;
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
  border-color: var(--rosa-pink) !important;
  outline:      none !important;
  box-shadow:   0 0 0 3px var(--rosa-shadow-focus) !important;
}

.select2-selection__rendered {
  font-family:  var(--rosa-font) !important;
  font-size:    14px !important;
  color:        var(--rosa-text-dark) !important;
  line-height:  42px !important;
  padding-left: 14px !important;
}
.select2-selection__arrow {
  height: 42px !important;
}

.select2-dropdown {
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: 8px !important;
  font-family:   var(--rosa-font) !important;
  font-size:     14px !important;
}
.select2-results__option--highlighted {
  background: var(--rosa-pink) !important;
  color:      #ffffff !important;
}

/* =============================================================================
   20. WOOCOMMERCE — MON COMPTE
   ============================================================================= */

/* Largeur du conteneur */
.woocommerce-account #content,
.woocommerce-account .content-container,
.woocommerce-account .content-wrap {
  max-width:     1200px !important;
  width:         100% !important;
  margin-left:   auto !important;
  margin-right:  auto !important;
  padding-left:  20px !important;
  padding-right: 20px !important;
  box-sizing:    border-box !important;
}

/* Layout principal : nav gauche + contenu droit */
.woocommerce-account .woocommerce {
  display:         flex !important;
  flex-direction:  row !important;
  justify-content: space-between !important;
  align-items:     flex-start !important;
  gap:             40px !important;
  width:           100% !important;
  max-width:       100% !important;
  min-height:      500px;
}

/* Navigation gauche */
.woocommerce-account .woocommerce-MyAccount-navigation {
  flex:        0 0 260px !important;
  width:       260px !important;
  box-sizing:  border-box !important;
  background:  #ffffff !important;
  padding:     20px !important;
  border-radius: var(--rosa-radius) !important;
  border:      2px solid var(--rosa-pink-border) !important;
  box-shadow:  var(--rosa-shadow) !important;
  height:      fit-content;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin-bottom: 8px !important;
  border-bottom: 1px dashed var(--rosa-pink-light) !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child { margin-bottom: 0 !important; border-bottom: none !important; }

.woocommerce-MyAccount-navigation li a,
.woocommerce-MyAccount-navigation li a:focus,
.woocommerce-MyAccount-navigation li a:visited,
.woocommerce-MyAccount-navigation li a:active {
  display:          block !important;
  padding:          12px 16px !important;
  color:            var(--rosa-text-medium) !important;
  font-weight:      700 !important;
  font-size:        16px !important;
  border-radius:    calc(var(--rosa-radius) - 4px) !important;
  transition:       all 0.3s ease !important;
  outline:          none !important;
  box-shadow:       none !important;
  border-color:     transparent !important;
  text-decoration:  none !important;
}
.woocommerce-MyAccount-navigation li a:hover,
.woocommerce-MyAccount-navigation li.is-active a {
  background-color: var(--rosa-pink-medium) !important;
  color:            var(--rosa-pink-dark) !important;
  padding-left:     22px !important;
}
.woocommerce-MyAccount-navigation li.is-active { border-left-color: var(--rosa-pink-dark) !important; }
.woocommerce-MyAccount-navigation li.is-active::before { background-color: var(--rosa-pink-dark) !important; }

/* Déconnexion */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--rosa-text-light) !important; }
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
  background-color: var(--rosa-red-light) !important;
  color:            #c0392b !important;
}

/* Contenu droit */
.woocommerce-account .woocommerce-MyAccount-content {
  flex:          1 !important;
  box-sizing:    border-box !important;
  background:    #ffffff !important;
  padding:       35px !important;
  border-radius: var(--rosa-radius) !important;
  border:        1px solid var(--rosa-pink-border) !important;
  box-shadow:    var(--rosa-shadow) !important;
}
.woocommerce-MyAccount-content p       { color: var(--rosa-text-medium) !important; font-size: 16px !important; line-height: 1.6 !important; }
.woocommerce-MyAccount-content p strong { color: var(--rosa-pink-dark) !important; font-weight: 800 !important; }

/* Liens dans le contenu */
.woocommerce-MyAccount-content a       { color: var(--rosa-pink-dark) !important; font-weight: 600 !important; transition: color 0.2s !important; }
.woocommerce-MyAccount-content a:hover { color: var(--rosa-pink) !important; text-decoration: underline !important; }

/* Tableaux */
.woocommerce-MyAccount-content table.shop_table {
  border-collapse: separate !important;
  border-spacing:  0 !important;
  border:          1px solid var(--rosa-pink-border) !important;
  border-radius:   var(--rosa-radius) !important;
  overflow:        hidden !important;
}
table.shop_table th {
  background-color: var(--rosa-pink-medium) !important;
  color:            var(--rosa-pink-dark) !important;
  font-weight:      700 !important;
  padding:          14px !important;
  border:           none !important;
}
table.shop_table td { padding: 14px !important; border-top: 1px solid var(--rosa-pink-light) !important; color: var(--rosa-text-dark) !important; }

/* Adresses */
.woocommerce-Addresses .title h3 { font-family: var(--rosa-font) !important; color: var(--rosa-pink-dark) !important; font-weight: 700 !important; }
.woocommerce-Address {
  background:    var(--rosa-purple-light) !important;
  border:        1px solid var(--rosa-purple-border) !important;
  padding:       20px !important;
  border-radius: var(--rosa-radius) !important;
  margin-top:    15px !important;
}
.woocommerce-Address address { color: var(--rosa-text-medium) !important; font-style: normal !important; line-height: 1.5 !important; }

/* Champs de formulaire */
.woocommerce-MyAccount-content form .form-row label { color: var(--rosa-text-medium) !important; font-weight: 600 !important; margin-bottom: 6px !important; }
.woocommerce-MyAccount-content form .input-text,
.woocommerce-MyAccount-content form input[type="text"],
.woocommerce-MyAccount-content form input[type="email"],
.woocommerce-MyAccount-content form input[type="password"] {
  border:           2px solid var(--rosa-pink-border) !important;
  border-radius:    calc(var(--rosa-radius) - 6px) !important;
  padding:          10px 14px !important;
  background-color: #ffffff !important;
  color:            var(--rosa-text-dark) !important;
  transition:       border-color 0.3s ease !important;
}
.woocommerce-MyAccount-content form .input-text:focus { border-color: var(--rosa-pink) !important; outline: none !important; }
.woocommerce-MyAccount-content fieldset {
  border:        1px dashed var(--rosa-pink) !important;
  padding:       20px !important;
  border-radius: var(--rosa-radius) !important;
  margin-top:    20px !important;
}
.woocommerce-MyAccount-content fieldset legend { color: var(--rosa-pink-dark) !important; font-weight: 700 !important; padding: 0 10px !important; }

/* Boutons */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button.button {
  background-color: var(--rosa-pink) !important;
  color:            #ffffff !important;
  font-family:      var(--rosa-font) !important;
  font-weight:      700 !important;
  padding:          10px 24px !important;
  border-radius:    var(--rosa-radius-btn) !important;
  border:           none !important;
  box-shadow:       0 4px 12px var(--rosa-shadow-btn) !important;
  transition:       all 0.3s ease !important;
  cursor:           pointer !important;
}
.woocommerce-MyAccount-content .button:hover,
.woocommerce-MyAccount-content button.button:hover {
  background-color: var(--rosa-pink-dark) !important;
  box-shadow:       0 6px 16px var(--rosa-shadow-btn-dark) !important;
  transform:        translateY(-1px) !important;
}

.woocommerce-Button.wc-forward,
.button.wc-forward {
  background:    var(--rosa-pink) !important;
  color:         #ffffff !important;
  border-radius: var(--rosa-radius-btn) !important;
  font-family:   var(--rosa-font) !important;
  font-weight:   700 !important;
  padding:       13px 30px !important;
  border:        none !important;
  transition:    background 0.2s, transform 0.15s !important;
  display:       inline-block !important;
  text-decoration: none !important;
}
.woocommerce-Button.wc-forward:hover,
.button.wc-forward:hover {
  background: var(--rosa-pink-dark) !important;
  color:      #ffffff !important;
  transform:  scale(1.02) !important;
}
.woocommerce-MyAccount-content .woocommerce-Button.wc-forward:hover,
.woocommerce-MyAccount-content .button.wc-forward:hover {
  text-decoration: none !important;
}

/* Retire le bordure bleue Kadence sur le menu compte */
@media screen and (min-width: 768px) {
  .woocommerce-account .account-navigation-wrap { border-left: 0 !important; }
}

/* Formulaire de connexion (non connecté) */
.woocommerce-account .woocommerce:has(.woocommerce-form-login) {
  flex-direction:  column !important;
  align-items:     center !important;
  justify-content: flex-start !important;
  width:           100% !important;
  min-height:      auto !important;
  gap:             0 !important;
}
.woocommerce-account .woocommerce:has(.woocommerce-form-login) h2 {
  text-align:    center !important;
  margin-top:    20px !important;
  margin-bottom: 16px !important;
  width:         100% !important;
  display:       block !important;
}
.woocommerce-account .woocommerce-form-login {
  width:         100% !important;
  max-width:     500px !important;
  margin:        0 auto 20px !important;
  float:         none !important;
  display:       block !important;
}
.woocommerce-account form.login {
  border:           1px solid var(--rosa-pink-border) !important;
  border-radius:    12px !important;
  padding:          28px !important;
  background-color: #ffffff !important;
  box-shadow:       0 4px 12px rgba(0, 0, 0, 0.03) !important;
}
.woocommerce-account .woocommerce-form-login__submit       { margin-right: 15px !important; }
.woocommerce-account .woocommerce-form-login__rememberme   { display: inline-flex !important; align-items: center !important; margin-top: 10px; }

/* Retire le fond blanc, contour et ombre sur pages Mon compte */
.page-id-16 .content-bg,
.page-id-10 .content-bg {
  background:    transparent !important;
  border:        none !important;
  border-radius: 0 !important;
  box-shadow:    none !important;
}

.page-id-16 .entry-content-wrap,
.page-id-10 .entry-content-wrap {
  padding:       0 !important;
  border:        none !important;
  border-radius: 0 !important;
  box-shadow:    none !important;
}

/* =============================================================================
   23. WPFORMS — Style cohérent avec Mon Compte WooCommerce
   ============================================================================= */

/* Conteneur principal */
.wpforms-container {
  max-width: 100% !important;
  margin:        0 auto !important;
  background:    #ffffff !important;
  border:        1px solid var(--rosa-pink-border) !important;
  border-radius: var(--rosa-radius) !important;
  box-shadow:    var(--rosa-shadow) !important;
  padding:       35px !important;
}

/* Labels */
.wpforms-field label.wpforms-field-label {
  font-family:   var(--rosa-font) !important;
  font-size:     14px !important;
  font-weight:   600 !important;
  color:         var(--rosa-text-medium) !important;
  margin-bottom: 6px !important;
}

/* Champs texte, email, textarea */
.wpforms-field input[type="text"],
.wpforms-field input[type="email"],
.wpforms-field input[type="tel"],
.wpforms-field textarea,
.wpforms-field select {
  border:           2px solid var(--rosa-pink-border) !important;
  border-radius:    calc(var(--rosa-radius) - 6px) !important;
  padding:          10px 14px !important;
  font-family:      var(--rosa-font) !important;
  font-size:        14px !important;
  color:            var(--rosa-text-dark) !important;
  background:       #ffffff !important;
  width:            100% !important;
  transition:       border-color 0.3s ease !important;
  box-sizing:       border-box !important;
}

/* Focus */
.wpforms-field input:focus,
.wpforms-field textarea:focus,
.wpforms-field select:focus {
  border-color: var(--rosa-pink) !important;
  outline:      none !important;
  box-shadow:   0 0 0 3px var(--rosa-shadow-focus) !important;
}

/* Bouton soumettre */
.wpforms-submit-container button.wpforms-submit {
  background:    var(--rosa-pink) !important;
  color:         #ffffff !important;
  font-family:   var(--rosa-font) !important;
  font-weight:   700 !important;
  font-size:     15px !important;
  padding:       10px 24px !important;
  border-radius: var(--rosa-radius-btn) !important;
  border:        none !important;
  box-shadow:    0 4px 12px var(--rosa-shadow-btn) !important;
  transition:    all 0.3s ease !important;
  cursor:        pointer !important;
  width:         100% !important;
  margin-top:    8px !important;
}
.wpforms-submit-container button.wpforms-submit:hover {
  background: var(--rosa-pink-dark) !important;
  box-shadow: 0 6px 16px var(--rosa-shadow-btn-dark) !important;
  transform:  translateY(-1px) !important;
}

/* Message de confirmation */
.wpforms-confirmation-container-full {
  background:    var(--rosa-pink-light) !important;
  border:        1.5px solid var(--rosa-pink-border) !important;
  border-radius: var(--rosa-radius) !important;
  color:         var(--rosa-pink-dark) !important;
  font-weight:   600 !important;
  padding:       16px 20px !important;
  text-align:    center !important;
  margin-top:    16px !important;
}

/* Erreurs de validation */
.wpforms-error-container,
label.wpforms-error {
  color:       #c0392b !important;
  font-family: var(--rosa-font) !important;
  font-size:   13px !important;
  font-weight: 600 !important;
  margin-top:  4px !important;
}
.wpforms-field input.wpforms-error,
.wpforms-field textarea.wpforms-error {
  border-color: #e74c3c !important;
}

/* =============================================================================
   21. WOOCOMMERCE — MESSAGES & NOTIFICATIONS
   ============================================================================= */
.woocommerce-message {
  background:    var(--rosa-pink-light) !important;
  border-top-color: var(--rosa-pink) !important;
  border-radius: 0 0 var(--rosa-radius) var(--rosa-radius) !important;
}
.woocommerce-error { border-top-color: #e74c3c !important; font-family: var(--rosa-font) !important; }

.woocommerce-info {
  border-top-color:  var(--rosa-pink) !important;
  border-left-color: var(--rosa-pink-dark) !important;
  background-color:  var(--rosa-pink-light) !important;
  color:             var(--rosa-pink-dark) !important;
  border-radius:     calc(var(--rosa-radius) - 6px) !important;
  padding:           15px 20px !important;
  display:           flex !important;
  flex-direction:    column !important;
  align-items:       flex-start !important;
  gap:               16px !important;
  font-family:       var(--rosa-font) !important;
}
.woocommerce-info .button,
.woocommerce-info .woocommerce-Button {
  margin-left: 0 !important;
  margin-top:  5px !important;
  display:     inline-block !important;
  align-self:  flex-start !important;
}

.woocommerce-Message {
  border-top-color:  var(--rosa-pink) !important;
  background-color:  var(--rosa-pink-light) !important;
  color:             var(--rosa-pink-dark) !important;
  border-radius:     calc(var(--rosa-radius) - 6px) !important;
  padding:           15px 20px !important;
}

/* =============================================================================
   RESPONSIVE — WooCommerce
   ============================================================================= */

@media (max-width: 1024px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; }
  .woocommerce div.product  { padding: 32px !important; }
  .rosa-categories           { grid-template-columns: repeat(2, 1fr); padding: 20px 32px 36px; }
}

@media (max-width: 768px) {
  /* ── Layout boutique ── */
  .woocommerce-page .content-container {
    flex-direction: column !important;
    padding:        20px 16px !important;
    gap:            20px !important;
  }
  .woocommerce-page .content-container #secondary {
    flex:     none !important;
    width:    100% !important;
    position: static !important;
    order: -1 !important;
  }
  .woocommerce-page .content-container #main { 
    width: 100% !important; 
    order:  0 !important;
  }
  .widget-area .widget { width: 100% !important; box-sizing: border-box !important; }

  /* ── Barre de tri ── */
  .kadence-shop-top-row {
    flex-wrap:       wrap !important;
    justify-content: flex-start !important;
    gap:             8px !important;
    margin-bottom:   16px !important;
  }

  /* ── Grille produits ── */
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap:                   12px !important;
  }
  .woocommerce ul.products li.product img { height: 150px !important; }

  /* ── Vue liste ── */
  .woocommerce ul.products.products-list-view li.product > a:first-child { flex: 0 0 120px !important; width: 120px !important; }
  .woocommerce ul.products.products-list-view li.product img             { width: 120px !important; }

  /* ── Fiche produit ── */
  .woocommerce div.product { padding: 20px !important; margin: 16px !important; }

  /* ── Mon compte ── */
  .woocommerce-account .woocommerce   { flex-direction: column !important; gap: 16px !important; }
  .woocommerce-account .woocommerce-MyAccount-navigation {
    width:   100% !important;
    flex:    none !important;
    padding: 12px !important;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display:               grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap:                   4px !important;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation li {
    margin-bottom: 0 !important;
    border-bottom: none !important;
  }
  .woocommerce-MyAccount-navigation li a {
    font-size:  14px !important;
    padding:    10px 12px !important;
    text-align: center !important;
  }
  .woocommerce-MyAccount-navigation li a:hover,
  .woocommerce-MyAccount-navigation li.is-active a { padding-left: 12px !important; }
  .woocommerce-account .woocommerce-MyAccount-content {
    width:   100% !important;
    flex:    none !important;
    padding: 20px 16px !important;
  }
}

@media (max-width: 480px) {
  .rosa-categories          { grid-template-columns: 1fr; }
  .woocommerce ul.products { grid-template-columns: 1fr !important; }
  .rosa-shop-section ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
