/*
 * woocommerce-overrides.css
 * Adatta WooCommerce al design system Istituto Giuridico (blu petrolio / oro / avorio).
 * Caricato condizionalmente solo sulle pagine WC.
 */

.ig-wc-page { padding: 3rem 0 5rem; min-height: 60vh; }
.ig-wc-main { padding-bottom: 4rem; }

/* === Tipografia heading WC === */
.woocommerce-products-header__title,
.woocommerce h1,
.woocommerce h2,
.woocommerce-page h1,
.woocommerce-page h2 {
  font-family: Georgia, 'Times New Roman', serif;
  color: var(--mag-scuro);
}
.woocommerce-products-header__title { font-size: clamp(1.8rem, 4vw, 2.5rem); margin-bottom: 1.5rem; }

/* === Lista categorie sullo shop (page Corsi) === */
.woocommerce ul.products,
.woocommerce-page ul.products {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 2rem 0 0;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  background: var(--mag-bianco);
  border: 1px solid var(--mag-grigio-md);
  border-radius: var(--mag-radius);
  padding: 1.5rem;
  transition: transform var(--mag-transition), box-shadow var(--mag-transition);
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-2px);
  box-shadow: var(--mag-shadow);
}
.woocommerce ul.products li.product img {
  border-radius: var(--mag-radius);
  margin-bottom: 1rem;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-category__title {
  font-family: Georgia, 'Times New Roman', serif !important;
  color: var(--mag-scuro) !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  padding: 0 !important;
}
.woocommerce ul.products li.product .price {
  color: var(--mag-oro) !important;
  font-weight: 600;
  font-size: 1.1rem;
}
.woocommerce ul.products li.product .price del { color: #999; opacity: .7; }

@media (min-width: 700px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1100px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products { grid-template-columns: repeat(3, 1fr); }
}

/* === Pulsanti WC adattati al sistema === */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #payment #place_order,
.woocommerce-page a.button.alt,
.woocommerce a.button.alt {
  background: var(--mag-oro) !important;
  color: var(--mag-scuro) !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  padding: .75rem 1.75rem !important;
  border-radius: var(--mag-radius) !important;
  border: 2px solid var(--mag-oro) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  transition: background var(--mag-transition), color var(--mag-transition) !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce #payment #place_order:hover,
.woocommerce-page a.button.alt:hover,
.woocommerce a.button.alt:hover {
  background: var(--mag-oro-hover) !important;
  color: var(--mag-bianco) !important;
  border-color: var(--mag-oro-hover) !important;
}

/* === Prodotto singolo === */
.woocommerce div.product .product_title {
  font-family: Georgia, 'Times New Roman', serif;
  color: var(--mag-scuro);
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--mag-oro);
  font-size: 1.6rem;
  font-weight: 600;
}
.woocommerce div.product .woocommerce-product-details__short-description { color: #444; }
.woocommerce-tabs ul.tabs li.active {
  background: var(--mag-oro-light) !important;
  border-color: var(--mag-grigio-md) !important;
}
.woocommerce-tabs ul.tabs li.active a { color: var(--mag-scuro) !important; }

/* === Carrello / Checkout === */
.woocommerce table.shop_table {
  border-radius: var(--mag-radius);
  border-color: var(--mag-grigio-md);
}
.woocommerce table.shop_table thead th {
  background: var(--mag-grigio);
  color: var(--mag-scuro);
  font-family: Georgia, serif;
  font-weight: 700;
}
.woocommerce .cart-collaterals .cart_totals h2,
.woocommerce-checkout #payment {
  background: var(--mag-grigio) !important;
  border-radius: var(--mag-radius);
}
.woocommerce-info,
.woocommerce-message {
  border-top-color: var(--mag-oro) !important;
}
.woocommerce-info::before,
.woocommerce-message::before {
  color: var(--mag-oro) !important;
}
.woocommerce .woocommerce-form-coupon,
.woocommerce form.checkout_coupon { border-color: var(--mag-grigio-md); }

/* === Form input WC === */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row input.input-text,
.woocommerce-page form .form-row textarea {
  border: 1px solid #ccc !important;
  border-radius: var(--mag-radius) !important;
  padding: .7rem .9rem !important;
  font-family: 'Inter', sans-serif !important;
  font-size: .95rem !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--mag-oro) !important;
  box-shadow: 0 0 0 3px rgba(201, 168, 76, .15) !important;
  outline: none !important;
}

/* === My account === */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
  border-bottom: 1px solid var(--mag-grigio-md);
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  color: var(--mag-scuro);
  padding: .8rem 0;
  display: block;
  font-weight: 500;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { color: var(--mag-oro); font-weight: 700; }

/* === Notice / alert === */
.woocommerce-error { border-top-color: #c0392b !important; }
