.tpc-alert, .woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice {
  --tpc-alert-color: var(--tpc-primary-color);
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--tpc-space-3);
  margin: 0 0 var(--tpc-space-4); padding: var(--tpc-space-3) var(--tpc-space-4);
  border: 1px solid var(--tpc-border-color); border-left: 4px solid var(--tpc-alert-color);
  border-radius: var(--tpc-border-radius); background: var(--tpc-surface-color); color: var(--tpc-text-color);
  list-style: none;
}
.tpc-alert--success, .woocommerce-message { --tpc-alert-color: var(--tpc-success-color); }
.tpc-alert--warning { --tpc-alert-color: var(--tpc-warning-color); }
.tpc-alert--error, .woocommerce-error { --tpc-alert-color: var(--tpc-error-color); }

/* WooCommerce : retire l'icône-police et les flottants d'origine. */
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none; }
.woocommerce-message .button, .woocommerce-info .button, .woocommerce-error .button { float: none; margin-left: auto; order: 2; }
.woocommerce-error li { margin: 0; }
.woocommerce-message:focus, .woocommerce-error:focus, .woocommerce-info:focus { outline-offset: 2px; }
