/* =========================================
= WOOCOMMERCE — overrides généraux
========================================= */
.woocommerce ul.products {
  grid-gap: 20px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}
.woocommerce ul.products li.product {
  border: 0.0625rem solid var(--accent);
  border-radius: 3px;
  padding: 0.875rem;
}
.woocommerce div.product .product_title {
  font-size: var(--text-xl);
  margin-bottom: 0.5rem;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price { font-size: var(--text-md); }

/* Boutons WooCommerce — version unifiée (style.css l.94 + l.1104 + l.1402 + l.1534) */
.button,
.wp-element-button,
.button.alt,
.single_add_to_cart_button {
  display: inline-block;
  text-align: center;
  padding: 0.625rem 1rem;
  border: 0.0625rem solid var(--accent);
  border-radius: 1px;
  background: var(--secondary);
  color: var(--primary);
  text-decoration: none;
  cursor: pointer;
}
.button:hover { background: transparent; color: var(--primary); }
.button.is-outline,
.is-outline { background: var(--secondary); color: var(--primary); }

.button--primary {
  width: 100%;
  padding: 0.7rem 1rem;
  border: 0.0625rem solid var(--primary);
  border-radius: 1px;
  background: var(--primary);
  color: var(--secondary);
  font-family: var(--SM);
  font-size: var(--text-xs);
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .2s ease,
  color .2s ease,
  border-color .2s ease,
  transform .2s ease,
  gap .3s ease;
}
.button--primary:hover { filter: brightness(1.08); }

.button.is-danger {
  background: var(--secondary);
  color: var(--danger);
  border-color: var(--danger-bg);
}
.button.is-danger:hover {
  background: var(--danger);
  color: var(--secondary);
  border-color: var(--danger);
}

/* Notices génériques (formulaires + WooCommerce simplifié) */
.notice {
  border: 0.0625rem solid var(--accent);
  border-radius: 3px;
  padding: 0.75rem 1rem;
  margin: 0 0 1rem;
  background: var(--secondary);
}
.notice.is-error   { border-color: var(--danger); color: var(--danger); }
.notice.is-success { border-color: var(--success); color: var(--success); }
.notice.is-info    { border-color: var(--accent); color: var(--primary); }

.price { font-family: var(--SR); font-weight: 300; }

/* =========================================
= FILET DE SÉCURITÉ — CSS WC default désactivé
   Styles minimum pour les zones non-customisées par le thème :
   notices, dashboard "Mon compte", form rows.
========================================= */

/* WC natif désactivé → on réimplémente le masquage des labels a11y
   (sinon « Quantité de … » & co. s'affichent en clair). */
.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Notices (success / error / info) — apparaissent après add-to-cart, login, coupon, etc. */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info,
.woocommerce-notices-wrapper > * {
  list-style: none;
  margin: 0 0 1rem;
  padding: 0.875rem 1rem;
  border-radius: 1px;
  border: 0.0625rem solid var(--muted);
  background: var(--secondary-c);
  color: var(--primary);
  font-family: var(--SR);
  font-size: var(--text-sm);
  line-height: 1.45;
}
.woocommerce-message { border-color: var(--success); background: var(--success-bg); color: var(--success); }
.woocommerce-error   { border-color: var(--danger);  background: var(--danger-bg);  color: var(--danger); }
.woocommerce-message a,
.woocommerce-error a,
.woocommerce-info a { color: inherit; text-decoration: underline; }
.woocommerce-message .button,
.woocommerce-error .button,
.woocommerce-info .button { float: right; margin-left: 1rem; }
.woocommerce-error li,
.woocommerce-message li,
.woocommerce-info li { list-style: none; }

/* Mon compte : layout 2 colonnes (nav + contenu) */
.woocommerce-account .woocommerce {
  display: grid;
  grid-template-columns: 14rem 1fr;
  gap: 2rem;
  align-items: start;
}
.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.25rem;
}
.woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 0.625rem 0.75rem;
  text-decoration: none;
  color: var(--primary);
  border-bottom: 0.0625rem solid var(--muted);
  font-size: var(--text-sm);
}
.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li a:hover {
  background: var(--secondary-c);
}
.woocommerce-MyAccount-content { min-width: 0; }
@media (max-width: 48rem) {
  .woocommerce-account .woocommerce {
    grid-template-columns: 1fr;
  }
}

/* Form rows (login, register, lost password, edit address…) */
.woocommerce form .form-row {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  margin: 0 0 1rem;
}
.woocommerce form .form-row label {
  font-family: var(--SM);
  font-size: var(--text-xs);
  color: var(--primary);
}
.woocommerce form .form-row .required { color: var(--danger); text-decoration: none; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  width: 100%;
  padding: 0.625rem 0.75rem;
  border: 0.0625rem solid var(--muted);
  border-radius: 1px;
  background: var(--secondary);
  font-family: var(--SR);
  font-size: var(--text-sm);
  color: var(--primary);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  outline: 0.125rem solid var(--primary-40);
  outline-offset: 0.125rem;
}
.woocommerce form .form-row-first,
.woocommerce form .form-row-last { width: calc(50% - 0.5rem); display: inline-flex; }
.woocommerce form .form-row-first { margin-right: 1rem; }
@media (max-width: 48rem) {
  .woocommerce form .form-row-first,
  .woocommerce form .form-row-last { width: 100%; margin-right: 0; }
}

/* Boutons par défaut (utilisés dans dashboard, lost password, etc.) */
.woocommerce .button,
.woocommerce button.button,
.woocommerce input[type="submit"].button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.625rem 1rem;
  border: 0.0625rem solid var(--primary);
  border-radius: 1px;
  background: var(--primary);
  color: var(--secondary);
  font-family: var(--SM);
  font-size: var(--text-xs);
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input[type="submit"].button:hover {
  background: transparent;
  color: var(--primary);
}

