/**
 * WooCommerce — styles Synerg-In
 *
 * Couvre : panier, checkout, confirmation, sous-pages mon compte.
 * Palette : orange #FFA800, violet #8b5cf6 / #6000FF, dark #2F2E2A, #1a1a2e.
 *
 * @package synergin-2026
 */

/* =====================================================================
   0. VARIABLES & RESET GLOBAL WC
   ===================================================================== */

:root {
    --syn-orange:  #FFA800;
    --syn-violet:  #8b5cf6;
    --syn-violet-d:#6000FF;
    --syn-dark:    #2F2E2A;
    --syn-navy:    #1a1a2e;
    --syn-grey:    #f5f0ea;
    --syn-border:  #e9e5de;
    --syn-text:    #444;
    --syn-radius:  12px;
    --syn-radius-pill: 50px;
    --syn-shadow:  0 2px 12px rgba(0,0,0,0.06);
    --syn-gradient: linear-gradient(90deg, var(--syn-orange) 0%, var(--syn-violet-d) 100%);
}

/* Masquer le titre H1 générique sur les pages WC (page title) */
.woocommerce-cart .entry-header,
.woocommerce-checkout .entry-header,
.woocommerce-order-received .entry-header {
    display: none !important;
}

/* Fond de page légèrement teinté pour les pages WC */
.woocommerce-cart,
.woocommerce-checkout,
.woocommerce-order-received {
    background: #f9f6f2 !important;
}

/* Contenu centré, marges cohérentes */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-order-received .woocommerce {
    max-width: 82rem;
    margin: 0 auto;
    padding: 3.5rem 3rem 5rem;
    box-sizing: border-box;
}

/* Titre de page (cart / checkout) */
.woocommerce-cart .woocommerce::before,
.woocommerce-checkout .woocommerce::before {
    content: attr(data-page-title);
}
.woocommerce-cart h1,
.woocommerce-checkout h1 {
    font-size: 1.6rem !important;
    font-weight: 900 !important;
    color: var(--syn-navy) !important;
    margin: 0 0 2rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 2px solid var(--syn-border) !important;
    letter-spacing: -0.02em !important;
}

/* Layout 2 colonnes : table à gauche, totaux à droite */
.woocommerce-cart .woocommerce {
    display: grid !important;
    grid-template-columns: 1fr 340px !important;
    grid-template-rows: auto !important;
    gap: 2rem !important;
    align-items: start !important;
}

/* Notifications au-dessus des deux colonnes */
.woocommerce-cart .woocommerce > .woocommerce-message,
.woocommerce-cart .woocommerce > .woocommerce-info,
.woocommerce-cart .woocommerce > .woocommerce-error {
    grid-column: 1 / -1 !important;
}

/* Formulaire panier (colonne gauche) */
.woocommerce-cart .woocommerce-cart-form {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* Totaux (colonne droite, sticky) */
.woocommerce-cart .cart-collaterals {
    grid-column: 2 !important;
    grid-row: 1 !important;
    position: sticky !important;
    top: 100px !important;
}

/* =====================================================================
   1. BOUTONS
   ===================================================================== */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button,
.wc-block-components-button {
    background: var(--syn-violet) !important;
    color: #fff !important;
    border: none !important;
    border-radius: var(--syn-radius-pill) !important;
    padding: 0.7rem 1.6rem !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    cursor: pointer !important;
    transition: background 0.2s, transform 0.15s, box-shadow 0.2s !important;
    text-decoration: none !important;
    display: inline-block !important;
    line-height: 1.4 !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .button:hover {
    background: var(--syn-violet-d) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 16px rgba(96,0,255,0.2) !important;
    color: #fff !important;
}

/* Bouton principal (checkout, panier) — gradient */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
#place_order,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
    background: var(--syn-gradient) !important;
    background-size: 200% 200% !important;
    color: #fff !important;
    border: none !important;
    border-radius: var(--syn-radius-pill) !important;
    padding: 0.85rem 2rem !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    transition: opacity 0.2s, transform 0.15s, box-shadow 0.2s !important;
    text-decoration: none !important;
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
#place_order:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
    opacity: 0.9 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(255,168,0,0.25) !important;
    color: #fff !important;
}

/* Bouton "Vider le panier" — secondaire discret */
.woocommerce a.button.wc-backward,
.woocommerce-cart table.cart td.actions .button:not(.checkout-button) {
    background: transparent !important;
    color: var(--syn-violet) !important;
    border: 1.5px solid var(--syn-violet) !important;
    padding: 0.55rem 1.2rem !important;
}

.woocommerce a.button.wc-backward:hover,
.woocommerce-cart table.cart td.actions .button:not(.checkout-button):hover {
    background: var(--syn-violet) !important;
    color: #fff !important;
    box-shadow: none !important;
    transform: none !important;
}

/* =====================================================================
   2. NOTIFICATIONS / MESSAGES
   ===================================================================== */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border-radius: var(--syn-radius) !important;
    border-top: none !important;
    padding: 1rem 1.4rem 1rem 1.6rem !important;
    margin-bottom: 1.5rem !important;
    box-shadow: var(--syn-shadow) !important;
    display: flex !important;
    align-items: center !important;
    gap: 1rem !important;
    font-size: 0.9rem !important;
}

.woocommerce-message {
    background: #f0fdf4 !important;
    border-left: 4px solid #22c55e !important;
    color: #166534 !important;
}

.woocommerce-message::before {
    color: #22c55e !important;
}

.woocommerce-info {
    background: #ede9fe !important;
    border-left: 4px solid var(--syn-violet) !important;
    color: #3b2f6b !important;
}

.woocommerce-info::before {
    color: var(--syn-violet) !important;
}

.woocommerce-error {
    background: #fff1f2 !important;
    border-left: 4px solid #f43f5e !important;
    color: #9f1239 !important;
}

/* =====================================================================
   3. FORMULAIRES (inputs, labels, selects)
   ===================================================================== */

.woocommerce form .form-row {
    margin-bottom: 1rem !important;
}

.woocommerce form .form-row label,
.woocommerce-checkout .form-row label {
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--syn-navy) !important;
    margin-bottom: 0.4rem !important;
    display: block !important;
}

.woocommerce form .input-text,
.woocommerce-checkout .input-text,
.woocommerce form input[type="text"],
.woocommerce form input[type="email"],
.woocommerce form input[type="tel"],
.woocommerce form input[type="password"],
.woocommerce form textarea,
.woocommerce form select {
    border: 1.5px solid #ccc !important;
    border-radius: var(--syn-radius-pill) !important;
    padding: 0.65rem 1.1rem !important;
    font-size: 0.9rem !important;
    outline: none !important;
    transition: border-color 0.2s !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: #fff !important;
    color: var(--syn-navy) !important;
}

.woocommerce form textarea {
    border-radius: 10px !important;
    resize: vertical !important;
    min-height: 80px !important;
}

.woocommerce form .input-text:focus,
.woocommerce form input:focus,
.woocommerce form textarea:focus,
.woocommerce form select:focus {
    border-color: var(--syn-violet) !important;
    box-shadow: 0 0 0 3px rgba(139,92,246,0.1) !important;
}

/* Select2 (WooCommerce utilise Select2 pour les pays/états) */
.select2-container--default .select2-selection--single {
    border: 1.5px solid #ccc !important;
    border-radius: var(--syn-radius-pill) !important;
    height: 44px !important;
    padding: 0 1.1rem !important;
    display: flex !important;
    align-items: center !important;
    background: #fff !important;
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--syn-violet) !important;
    box-shadow: 0 0 0 3px rgba(139,92,246,0.1) !important;
    outline: none !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--syn-navy) !important;
    font-size: 0.9rem !important;
    padding-left: 0 !important;
    line-height: 42px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 42px !important;
    right: 10px !important;
}

.select2-dropdown {
    border: 1.5px solid var(--syn-violet) !important;
    border-radius: 10px !important;
    box-shadow: var(--syn-shadow) !important;
    overflow: hidden !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background: var(--syn-violet) !important;
    color: #fff !important;
}

/* =====================================================================
   4. PAGE PANIER
   ===================================================================== */

.woocommerce-cart h1.cart-title,
.woocommerce-cart .page-title,
.woocommerce-cart .woocommerce > h2:first-child,
.woocommerce-cart .cart-empty {
    font-size: 1.6rem !important;
    font-weight: 900 !important;
    letter-spacing: -0.02em !important;
    color: var(--syn-navy) !important;
    grid-column: 1 / -1 !important;
}

/* Table panier */
.woocommerce table.shop_table {
    border: 1.5px solid rgba(139,92,246,0.14) !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #fff !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 16px rgba(0,0,0,0.05) !important;
    overflow: hidden !important;
    width: 100% !important;
}

.woocommerce table.shop_table thead th {
    background: var(--syn-grey) !important;
    color: var(--syn-navy) !important;
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    padding: 1rem 1.4rem !important;
    border: none !important;
}

.woocommerce table.shop_table tbody tr {
    border-bottom: 1px solid var(--syn-border) !important;
    transition: background 0.15s !important;
}

.woocommerce table.shop_table tbody tr:hover {
    background: #fdfcfb !important;
}

.woocommerce table.shop_table tbody td {
    padding: 1.25rem 1.4rem !important;
    border: none !important;
    vertical-align: middle !important;
    font-size: 0.9rem !important;
    color: var(--syn-navy) !important;
}

/* Image produit dans le panier */
.woocommerce table.cart .product-thumbnail {
    width: 88px !important;
    padding: 0.75rem 0.75rem 0.75rem 1.2rem !important;
}
.woocommerce table.cart .product-thumbnail img {
    border-radius: 10px !important;
    width: 72px !important;
    height: 72px !important;
    object-fit: cover !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.10) !important;
    display: block !important;
}

/* Nom du produit */
.woocommerce table.cart .product-name a {
    color: var(--syn-navy) !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
}

.woocommerce table.cart .product-name a:hover {
    color: var(--syn-violet) !important;
}

/* Prix récurrent (WC Subscriptions) sous le nom */
.woocommerce table.cart .product-name .subscription-details,
.woocommerce table.cart .product-name .woocommerce-subscription-price {
    display: block !important;
    margin-top: 0.25rem !important;
    font-size: 0.82rem !important;
    font-weight: 500 !important;
    color: var(--syn-violet) !important;
}

/* Métadonnées (options ligne par ligne) */
.woocommerce table.cart .product-name .wc-item-meta,
.woocommerce table.cart .product-name dl.variation {
    margin-top: 0.5rem !important;
    font-size: 0.78rem !important;
    color: var(--syn-text) !important;
}

.woocommerce table.cart .product-name .wc-item-meta li,
.woocommerce table.cart .product-name dl.variation dd {
    background: var(--syn-grey) !important;
    border-radius: 6px !important;
    padding: 0.2rem 0.55rem !important;
    display: inline-block !important;
    margin: 0.15rem 0.2rem 0 0 !important;
    font-size: 0.76rem !important;
}

.woocommerce table.cart .product-name .wc-item-meta dt,
.woocommerce table.cart .product-name dl.variation dt {
    font-weight: 600 !important;
    color: var(--syn-navy) !important;
}

/* Bouton supprimer item */
.woocommerce table.cart .product-remove a {
    color: #d1cdc6 !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    transition: color 0.2s !important;
}

.woocommerce table.cart .product-remove a:hover {
    color: #f43f5e !important;
}

/* Quantité — contrôles +/- custom */
.woocommerce table.cart .quantity {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    border: 1.5px solid var(--syn-border) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    width: fit-content !important;
}
.woocommerce table.cart .quantity .qty {
    border: none !important;
    border-left: 1.5px solid var(--syn-border) !important;
    border-right: 1.5px solid var(--syn-border) !important;
    border-radius: 0 !important;
    padding: 0.4rem 0.5rem !important;
    width: 40px !important;
    text-align: center !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
}
.woocommerce table.cart .quantity button.plus,
.woocommerce table.cart .quantity button.minus {
    background: var(--syn-grey) !important;
    border: none !important;
    padding: 0.4rem 0.7rem !important;
    font-size: 1rem !important;
    cursor: pointer !important;
    color: var(--syn-navy) !important;
    transition: background 0.15s !important;
}
.woocommerce table.cart .quantity button.plus:hover,
.woocommerce table.cart .quantity button.minus:hover {
    background: var(--syn-border) !important;
}

/* Total ligne */
.woocommerce table.cart .product-subtotal {
    font-weight: 800 !important;
    font-size: 1rem !important;
    color: var(--syn-navy) !important;
}

/* Ligne actions (coupon + update) */
.woocommerce table.cart td.actions {
    padding: 1rem 1.2rem !important;
    background: var(--syn-grey) !important;
    border-top: 1px solid var(--syn-border) !important;
}

.woocommerce table.cart td.actions .coupon {
    display: flex !important;
    gap: 0.6rem !important;
    align-items: center !important;
}

.woocommerce table.cart td.actions .coupon .input-text {
    width: auto !important;
    flex: 1 !important;
    max-width: 200px !important;
}

/* Récap totaux panier */
.cart_totals {
    background: #fff !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.06) !important;
    padding: 2rem !important;
    border: 1.5px solid rgba(255,168,0,0.25) !important;
    border-top: 4px solid var(--syn-orange) !important;
    overflow: hidden !important;
}

.cart_totals h2 {
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    color: var(--syn-orange) !important;
    margin: 0 0 1.25rem !important;
    padding-bottom: 0.9rem !important;
    border-bottom: 1px solid var(--syn-border) !important;
}

.cart_totals table.shop_table {
    box-shadow: none !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.cart_totals table.shop_table th {
    color: var(--syn-text) !important;
    font-size: 0.82rem !important;
    font-weight: 500 !important;
    padding: 0.5rem 0 !important;
}

.cart_totals table.shop_table td {
    font-size: 0.9rem !important;
    padding: 0.5rem 0 !important;
    text-align: right !important;
}

/* Ligne récurrent WC Subscriptions (ex: "Total récurrent mensuel") */
.cart_totals table.shop_table tr.recurring-total th,
.cart_totals table.shop_table tr.recurring-total td {
    padding-top: 0.75rem !important;
    font-size: 0.82rem !important;
    color: var(--syn-text) !important;
    border-top: 1px dashed var(--syn-border) !important;
}

.cart_totals table.shop_table tr.order-total td,
.cart_totals table.shop_table tr.order-total th {
    font-weight: 900 !important;
    font-size: 1.25rem !important;
    color: var(--syn-navy) !important;
    padding-top: 1.1rem !important;
    border-top: 2px solid var(--syn-border) !important;
}

/* Montants en gras */
.cart_totals .woocommerce-Price-amount,
.cart_totals bdi {
    font-weight: 700 !important;
}

/* Séparateur avant le bouton */
.wc-proceed-to-checkout {
    margin-top: 1.5rem !important;
    padding-top: 1.5rem !important;
    border-top: 1px solid var(--syn-border) !important;
}

/* Bouton "Valider la commande" */
.wc-proceed-to-checkout a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
    background: var(--syn-gradient) !important;
    border: none !important;
    color: #fff !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    padding: 1.05rem 1.5rem !important;
    border-radius: var(--syn-radius-pill) !important;
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    transition: opacity 0.2s, transform 0.15s, box-shadow 0.2s !important;
    box-shadow: 0 4px 18px rgba(96,0,255,0.22) !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}
.wc-proceed-to-checkout a.checkout-button:hover {
    opacity: 0.9 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 22px rgba(96,0,255,0.3) !important;
    color: #fff !important;
}

/* Mention sécurité sous le bouton */
.wc-proceed-to-checkout::after {
    content: "🔒 Paiement 100 % sécurisé";
    display: block !important;
    text-align: center !important;
    font-size: 0.72rem !important;
    color: #888 !important;
    margin-top: 0.75rem !important;
    letter-spacing: 0.02em !important;
}

/* =====================================================================
   5. PAGE CHECKOUT
   ===================================================================== */

/* Layout 2 colonnes — s'applique sur le <form> qui contient tout */
form.woocommerce-checkout {
    display: grid !important;
    grid-template-columns: 1fr 380px !important;
    gap: 2rem !important;
    align-items: start !important;
}

/* Formulaire billing (colonne gauche) */
form.woocommerce-checkout #customer_details {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
}

/* Titre récap (colonne droite) */
form.woocommerce-checkout #order_review_heading {
    grid-column: 2 !important;
    grid-row: 1 !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    color: var(--syn-navy) !important;
    margin: 0 0 0.75rem !important;
}

/* Récap commande (colonne droite) */
form.woocommerce-checkout #order_review {
    grid-column: 2 !important;
    grid-row: 2 !important;
    position: sticky !important;
    top: 100px !important;
}

/* En-tête de section dans le formulaire billing */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-account-fields h3 {
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    color: var(--syn-navy) !important;
    margin: 0 0 1.4rem !important;
    padding-bottom: 0.8rem !important;
    border-bottom: 2px solid var(--syn-border) !important;
}

/* Bloc facturation */
#customer_details {
    background: #fff !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 16px rgba(0,0,0,0.05) !important;
    padding: 2rem !important;
    border: 1.5px solid rgba(139,92,246,0.14) !important;
}

/* Récapitulatif commande */
#order_review {
    background: #fff !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 16px rgba(0,0,0,0.05) !important;
    padding: 2rem !important;
    border: 1.5px solid rgba(255,168,0,0.25) !important;
    border-top: 4px solid var(--syn-orange) !important;
}

/* Table récap commande dans checkout */
.woocommerce-checkout-review-order-table thead th {
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: var(--syn-text) !important;
    padding: 0.7rem 0 !important;
    border: none !important;
    border-bottom: 2px solid var(--syn-border) !important;
}

.woocommerce-checkout-review-order-table tbody td {
    padding: 0.9rem 0 !important;
    border-bottom: 1px solid var(--syn-border) !important;
    font-size: 0.9rem !important;
    color: var(--syn-navy) !important;
    vertical-align: middle !important;
}

/* Nom produit dans la récap */
.woocommerce-checkout-review-order-table .product-name {
    font-weight: 600 !important;
}

/* Métadonnées produit (options ligne par ligne) */
.woocommerce-checkout-review-order-table .product-name .wc-item-meta {
    margin-top: 0.3rem !important;
}

.woocommerce-checkout-review-order-table .product-name .wc-item-meta li,
.woocommerce-checkout-review-order-table .product-name dl.variation {
    display: flex !important;
    gap: 0.4rem !important;
    font-size: 0.8rem !important;
    color: var(--syn-text) !important;
    margin: 0.15rem 0 !important;
    list-style: none !important;
    padding: 0 !important;
}

.woocommerce-checkout-review-order-table .product-name .wc-item-meta li dt,
.woocommerce-checkout-review-order-table .product-name dl.variation dt {
    font-weight: 600 !important;
    color: var(--syn-navy) !important;
    min-width: 100px !important;
}

/* Totaux checkout */
.woocommerce-checkout-review-order-table tfoot tr td,
.woocommerce-checkout-review-order-table tfoot tr th {
    padding: 0.7rem 0 !important;
    font-size: 0.9rem !important;
    border: none !important;
    color: var(--syn-navy) !important;
}

.woocommerce-checkout-review-order-table tfoot .order-total td,
.woocommerce-checkout-review-order-table tfoot .order-total th {
    font-weight: 900 !important;
    font-size: 1.1rem !important;
    color: var(--syn-navy) !important;
    padding-top: 1rem !important;
    border-top: 2px solid var(--syn-border) !important;
}

/* Section paiement */
#payment {
    background: var(--syn-grey) !important;
    border-radius: var(--syn-radius) !important;
    padding: 1.5rem !important;
    margin-top: 1.5rem !important;
}

#payment ul.payment_methods {
    list-style: none !important;
    margin: 0 0 1.2rem !important;
    padding: 0 !important;
}

#payment ul.payment_methods li {
    padding: 0.75rem 1rem !important;
    background: #fff !important;
    border-radius: 8px !important;
    margin-bottom: 0.6rem !important;
    border: 1.5px solid var(--syn-border) !important;
    transition: border-color 0.2s !important;
}

#payment ul.payment_methods li:has(input:checked) {
    border-color: var(--syn-violet) !important;
    box-shadow: 0 0 0 3px rgba(139,92,246,0.08) !important;
}

#payment ul.payment_methods li label {
    font-weight: 600 !important;
    font-size: 0.9rem !important;
    color: var(--syn-navy) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.6rem !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

#payment .payment_box {
    background: #f5f0ea !important;
    border-radius: 8px !important;
    padding: 0.8rem 1rem !important;
    margin-top: 0.6rem !important;
    font-size: 0.85rem !important;
    color: var(--syn-text) !important;
}

/* Mentions RGPD & CG */
.woocommerce-terms-and-conditions-wrapper {
    font-size: 0.82rem !important;
    color: var(--syn-text) !important;
    margin-bottom: 1rem !important;
}

.woocommerce-terms-and-conditions-wrapper a {
    color: var(--syn-violet) !important;
    text-decoration: underline !important;
}

/* =====================================================================
   6. PAGE CONFIRMATION (Order Received / Thank You)
   ===================================================================== */

.woocommerce-order {
    text-align: center !important;
    max-width: 680px !important;
    margin: 0 auto !important;
}

.woocommerce-order-received .woocommerce-thankyou-order-details,
.woocommerce-order ul.woocommerce-order-overview {
    list-style: none !important;
    margin: 2rem 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    justify-content: center !important;
}

.woocommerce-order ul.woocommerce-order-overview li {
    background: #fff !important;
    border-radius: var(--syn-radius) !important;
    box-shadow: var(--syn-shadow) !important;
    padding: 1rem 1.4rem !important;
    flex: 1 1 160px !important;
    text-align: center !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: var(--syn-text) !important;
    border: none !important;
}

.woocommerce-order ul.woocommerce-order-overview li strong {
    display: block !important;
    font-size: 1rem !important;
    color: var(--syn-navy) !important;
    margin-top: 0.3rem !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.woocommerce-order-details,
.woocommerce-customer-details {
    background: #fff !important;
    border-radius: var(--syn-radius) !important;
    box-shadow: var(--syn-shadow) !important;
    padding: 1.5rem !important;
    margin-bottom: 1.5rem !important;
    text-align: left !important;
}

.woocommerce-order-details h2,
.woocommerce-customer-details h2 {
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--syn-navy) !important;
    margin: 0 0 1rem !important;
    padding-bottom: 0.7rem !important;
    border-bottom: 2px solid var(--syn-border) !important;
}

/* Notice de confirmation */
.woocommerce-thankyou-order-received {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #166534 !important;
    background: #f0fdf4 !important;
    border-left: 4px solid #22c55e !important;
    border-radius: var(--syn-radius) !important;
    padding: 1rem 1.4rem !important;
    margin-bottom: 1.5rem !important;
    text-align: left !important;
}

/* =====================================================================
   7. MON COMPTE — sous-pages (commandes, factures, profil…)
   ===================================================================== */

/* Contenu des sous-pages */
.woocommerce-MyAccount-content {
    font-size: 0.9rem !important;
    color: var(--syn-navy) !important;
}

/* Titres sections */
.woocommerce-MyAccount-content h2 {
    font-size: 1rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--syn-navy) !important;
    margin: 0 0 1.2rem !important;
    padding-bottom: 0.7rem !important;
    border-bottom: 2px solid var(--syn-border) !important;
}

/* Table des commandes */
.woocommerce-orders-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #fff !important;
    border-radius: var(--syn-radius) !important;
    box-shadow: var(--syn-shadow) !important;
    overflow: hidden !important;
}

.woocommerce-orders-table thead th {
    background: var(--syn-grey) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: var(--syn-navy) !important;
    padding: 0.9rem 1rem !important;
    border: none !important;
    white-space: nowrap !important;
}

.woocommerce-orders-table tbody tr {
    border-bottom: 1px solid var(--syn-border) !important;
    transition: background 0.15s !important;
}

.woocommerce-orders-table tbody tr:hover {
    background: #fafaf9 !important;
}

.woocommerce-orders-table tbody td {
    padding: 0.9rem 1rem !important;
    border: none !important;
    font-size: 0.88rem !important;
    color: var(--syn-navy) !important;
    vertical-align: middle !important;
}

/* Badges de statut commande — WC place les classes sur l'élément <mark> */
.woocommerce-orders-table mark.order-status,
.woocommerce mark.order-status {
    background: var(--syn-grey) !important;
    color: var(--syn-navy) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    padding: 0.2rem 0.7rem !important;
    border-radius: 20px !important;
    display: inline-block !important;
}

.woocommerce mark.order-status.status-completed  { background: #dcfce7 !important; color: #166534 !important; }
.woocommerce mark.order-status.status-processing { background: #dbeafe !important; color: #1e40af !important; }
.woocommerce mark.order-status.status-pending    { background: #fef9c3 !important; color: #854d0e !important; }
.woocommerce mark.order-status.status-on-hold    { background: #f3f4f6 !important; color: #374151 !important; }
.woocommerce mark.order-status.status-cancelled  { background: #fff1f2 !important; color: #9f1239 !important; }
.woocommerce mark.order-status.status-refunded   { background: #f3f4f6 !important; color: #374151 !important; }
.woocommerce mark.order-status.status-failed     { background: #fff1f2 !important; color: #9f1239 !important; }

/* Vue détail d'une commande */
.woocommerce-order-details table.woocommerce-table--order-details,
.woocommerce-table--order-details {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #fff !important;
    border-radius: var(--syn-radius) !important;
    box-shadow: var(--syn-shadow) !important;
    overflow: hidden !important;
}

/* Formulaire "Modifier mon compte" */
.woocommerce-MyAccount-content fieldset {
    border: 1.5px solid var(--syn-border) !important;
    border-radius: var(--syn-radius) !important;
    padding: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

.woocommerce-MyAccount-content fieldset legend {
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--syn-navy) !important;
    padding: 0 0.6rem !important;
}

/* Méthodes de paiement */
.woocommerce-MyAccount-content .woocommerce-PaymentMethods--table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #fff !important;
    border-radius: var(--syn-radius) !important;
    box-shadow: var(--syn-shadow) !important;
    overflow: hidden !important;
}

/* Téléchargements */
.woocommerce-MyAccount-content table.woocommerce-table--order-downloads {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #fff !important;
    border-radius: var(--syn-radius) !important;
    box-shadow: var(--syn-shadow) !important;
    overflow: hidden !important;
}

/* =====================================================================
   8. LIENS WC GLOBAUX
   ===================================================================== */

.woocommerce a,
.woocommerce-page a {
    color: var(--syn-violet);
}

.woocommerce a:hover,
.woocommerce-page a:hover {
    color: var(--syn-violet-d);
}

/* Liens "Voir" dans les tables */
.woocommerce-orders-table .woocommerce-button {
    font-size: 0.78rem !important;
}

/* =====================================================================
   9. RESPONSIVE
   ===================================================================== */

@media (max-width: 900px) {
    /* Panier : empiler les colonnes */
    .woocommerce-cart .woocommerce {
        grid-template-columns: 1fr !important;
    }
    .woocommerce-cart .cart-collaterals {
        grid-column: 1 !important;
        grid-row: auto !important;
        position: static !important;
    }

    /* Checkout : empiler les colonnes */
    form.woocommerce-checkout {
        grid-template-columns: 1fr !important;
    }
    form.woocommerce-checkout #customer_details,
    form.woocommerce-checkout #order_review_heading,
    form.woocommerce-checkout #order_review {
        grid-column: 1 !important;
        grid-row: auto !important;
    }
    #order_review {
        position: static !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-cart .woocommerce,
    .woocommerce-checkout .woocommerce,
    .woocommerce-order-received .woocommerce {
        padding: 2rem 1.25rem 3rem !important;
    }

    /* Table panier scrollable sur mobile */
    .woocommerce table.shop_table {
        display: block !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* Colonnes checkout */
    .woocommerce-checkout #customer_details,
    .woocommerce-checkout #order_review {
        padding: 1.5rem !important;
    }

    /* Bouton place order pleine largeur */
    #place_order {
        font-size: 0.85rem !important;
        padding: 0.85rem 1.2rem !important;
    }

    /* Récap commande — liste d'infos en colonne */
    .woocommerce-order ul.woocommerce-order-overview {
        flex-direction: column !important;
    }

    .woocommerce-order ul.woocommerce-order-overview li {
        flex: 1 1 100% !important;
    }

    /* Grille dashboard si affichée dans sous-page */
    .syn-dashboard-grid {
        grid-template-columns: 1fr !important;
        padding: 0 1rem 2rem !important;
    }
}

@media (max-width: 480px) {
    .woocommerce-cart .woocommerce,
    .woocommerce-checkout .woocommerce {
        padding: 1.5rem 1rem 3rem !important;
    }

    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button {
        padding: 0.65rem 1rem !important;
        font-size: 0.8rem !important;
    }

    .cart_totals {
        padding: 1.25rem !important;
    }

    .woocommerce table.cart .product-thumbnail img {
        width: 52px !important;
        height: 52px !important;
    }
}

/* Masquer l'ancienne zone de signature inline dans le contenu des contrats.
   Le pad de signature est géré par la popup — pas dans le corps du document. */
.signature-area {
    display: none;
}
