/* Badge « Économisez X sur N mois » au panier / checkout.
   On affiche le total sur la durée (texte injecté via saleBadgePriceFormat) et on masque
   le montant natif du badge, qui ne reflète que l'économie d'une seule mensualité. */
.abonnement-discount-line .wc-block-components-sale-badge .wc-block-components-formatted-money-amount,
.abonnement-discount-line .wc-block-components-sale-badge .wc-block-formatted-money-amount {
    display: none;
}

/* Suffixe d'intervalle sur le prix */
.abonnement-interval {
    font-size: 0.85em;
    color: var(--primary-d-1, #9c5b54);
    font-weight: normal;
}

.abonnement-duration {
    font-size: 0.8em;
    color: var(--text-body, #555);
    font-weight: normal;
}

/* Badges de statut */
.abonnement-status {
    display: inline-block;
    padding: var(--space-4xs, 0.25rem) var(--space-2xs, 0.5rem);
    border-radius: var(--radius-s, 0.38rem);
    font-size: var(--text-xs, 0.79rem);
    font-weight: 600;
    line-height: 1.4;
}

.abonnement-status--active {
    background: var(--tertiary-10, #2b6a601a);
    color: var(--tertiary-d-2, #1f403a);
}

.abonnement-status--cancelled {
    background: var(--dark-10, rgba(0, 0, 0, 0.1));
    color: var(--dark-60, rgba(0, 0, 0, 0.6));
}

.abonnement-status--expired {
    background: var(--dark-5, rgba(0, 0, 0, 0.05));
    color: var(--dark-50, rgba(0, 0, 0, 0.5));
}

.abonnement-status--past-due {
    background: var(--error-10, hsla(351, 95%, 56%, 0.1));
    color: var(--error, hsl(351, 95%, 56%));
}

.abonnement-status--pending {
    background: var(--danger, #ffb900);
    color: var(--dark-80, rgba(0, 0, 0, 0.8));
}

/* Bouton annuler */
.abonnement-cancel-btn {
    display: inline-block;
    padding: var(--space-4xs, 0.25rem) var(--space-xs, 0.64rem);
    font-size: var(--text-xs, 0.79rem);
    font-weight: 500;
    color: var(--error, hsl(351, 95%, 56%)) !important;
    background: transparent !important;
    border: 1px solid var(--error, hsl(351, 95%, 56%)) !important;
    border-radius: var(--radius-s, 0.38rem);
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
}

.abonnement-cancel-btn:hover {
    background: var(--error, hsl(351, 95%, 56%)) !important;
    color: var(--light, #fff) !important;
}

/* Lien vers l'abonnement dans les détails de commande */
.abonnement-order-link {
    margin-top: var(--space-3xs, 0.4rem);
    display: flex;
    align-items: center;
    gap: var(--space-3xs, 0.4rem);
}

.abonnement-link-btn {
    display: inline-block;
    padding: var(--space-4xs, 0.25rem) var(--space-xs, 0.64rem);
    font-size: var(--text-xs, 0.79rem);
    font-weight: 500;
    color: var(--primary, #C77269) !important;
    background: transparent;
    border: 1px solid var(--primary, #C77269);
    border-radius: var(--radius-s, 0.38rem);
    text-decoration: none;
    transition: all 0.2s ease;
}

.abonnement-link-btn:hover {
    background: var(--primary, #C77269);
    color: var(--light, #fff) !important;
}

/* Table abonnements */
.abonnement-table {
    width: 100%;
}

.abonnement-table th {
    font-size: var(--text-s, 0.89rem);
    color: var(--text-title, #1a1a1b);
    font-weight: 600;
}

.abonnement-table td {
    font-size: var(--text-s, 0.89rem);
    vertical-align: middle;
}
