/* =========================================================
   ASTRA CHEF — Checkout: campi partecipante FooEvents
   Stile allineato al design system (slate #283642 + terracotta
   #E88E64, Inter, squadrato) sopra Salient/Woo.
   Scope: body.woocommerce-checkout — non tocca il resto del checkout.
   Classi reali FooEvents: .fooevents-eventname, .fooevents-attendee,
   .fooevents-attendee-number, .fooevents-variation-desc,
   .fooevents-checkout-attendee-info, p.form-row.fooevents-attendee-*.
   ========================================================= */

body.woocommerce-checkout{
  --acx-main:#283642;
  --acx-accent:#E88E64;
  --acx-accent-d:#c8693f;
  --acx-ink:#283642;
  --acx-muted:#5b6675;
  --acx-line:#e2e8ee;
  --acx-cloud:#eef1f5;
  --acx-font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}

/* ---------- Nome del corso (h3 sopra i partecipanti) ---------- */
body.woocommerce-checkout h3.fooevents-eventname{
  font-family:var(--acx-font)!important;font-weight:700!important;font-style:normal!important;
  font-size:1.35rem!important;line-height:1.25;letter-spacing:-.02em;
  color:var(--acx-ink)!important;margin:2rem 0 1rem!important;
  padding-top:1.4rem;border-top:1px solid var(--acx-line);
}

/* ---------- Card partecipante ---------- */
body.woocommerce-checkout .fooevents-attendee{
  background:#fff;border:1px solid var(--acx-line);border-radius:0;
  padding:1.35rem 1.5rem 1.5rem;margin:0 0 1.2rem;
  display:grid;grid-template-columns:1fr 1fr;gap:0 1.1rem;
}
body.woocommerce-checkout .fooevents-attendee > *{grid-column:1 / -1}
/* Nome + Cognome affiancati su desktop */
body.woocommerce-checkout .fooevents-attendee > p.fooevents-attendee-first-name{grid-column:1}
body.woocommerce-checkout .fooevents-attendee > p.fooevents-attendee-last-name{grid-column:2}

/* ---------- Titolo "Partecipante N" ---------- */
body.woocommerce-checkout .fooevents-attendee h4.fooevents-attendee-number{
  display:flex;align-items:center;gap:.7rem;
  font-family:var(--acx-font)!important;font-weight:700!important;font-style:normal!important;
  font-size:.85rem!important;letter-spacing:.1em;text-transform:uppercase;
  color:var(--acx-accent-d)!important;margin:0 0 1rem!important;padding:0!important;
}
body.woocommerce-checkout .fooevents-attendee h4.fooevents-attendee-number::after{
  content:"";flex:1;height:1px;background:var(--acx-line);
}

/* ---------- Righe info Data / Slot ---------- */
body.woocommerce-checkout .fooevents-attendee .fooevents-variation-desc{
  font-family:var(--acx-font);font-size:.9rem;line-height:1.5;color:var(--acx-ink);
  background:var(--acx-cloud);padding:.5rem .85rem;margin:0 0 .5rem;
}
body.woocommerce-checkout .fooevents-attendee .fooevents-variation-desc:empty{display:none}
body.woocommerce-checkout .fooevents-attendee .fooevents-variation-desc strong,
body.woocommerce-checkout .fooevents-attendee .fooevents-variation-desc b{
  font-weight:700;color:var(--acx-ink);
}
body.woocommerce-checkout .fooevents-attendee .fooevents-checkout-attendee-info{
  font-family:var(--acx-font);font-size:.9rem;color:var(--acx-muted);
}
body.woocommerce-checkout .fooevents-attendee .fooevents-checkout-attendee-info:empty{display:none}
/* respiro dopo il blocco info, prima dei campi */
body.woocommerce-checkout .fooevents-attendee .fooevents-variation-desc:last-of-type{margin-bottom:1rem}

/* ---------- Form row / label / required ---------- */
body.woocommerce-checkout .fooevents-attendee p.form-row{
  margin:0 0 .95rem;padding:0;float:none;width:auto;
}
body.woocommerce-checkout .fooevents-attendee p.form-row label{
  display:block;font-family:var(--acx-font)!important;font-style:normal!important;
  font-weight:600!important;font-size:.82rem!important;line-height:1.3;
  color:var(--acx-ink)!important;margin:0 0 .35rem;letter-spacing:.01em;
}
body.woocommerce-checkout .fooevents-attendee p.form-row label .required{
  color:var(--acx-accent-d);text-decoration:none;border:0;
}

/* ---------- Input / select / textarea ---------- */
body.woocommerce-checkout .fooevents-attendee input[type="text"],
body.woocommerce-checkout .fooevents-attendee input[type="tel"],
body.woocommerce-checkout .fooevents-attendee input[type="email"],
body.woocommerce-checkout .fooevents-attendee input[type="number"],
body.woocommerce-checkout .fooevents-attendee select,
body.woocommerce-checkout .fooevents-attendee textarea{
  width:100%;padding:.7rem .85rem;
  border:1.5px solid var(--acx-line)!important;border-radius:0!important;
  background:#fff!important;box-shadow:none!important;
  font-family:var(--acx-font)!important;font-size:.95rem;color:var(--acx-ink);
  transition:border-color .2s ease;
}
body.woocommerce-checkout .fooevents-attendee input:focus,
body.woocommerce-checkout .fooevents-attendee select:focus,
body.woocommerce-checkout .fooevents-attendee textarea:focus{
  outline:none!important;border-color:var(--acx-main)!important;
}

/* stati validazione Woo: niente verde/rosso di default sgargiante */
body.woocommerce-checkout .fooevents-attendee p.form-row.woocommerce-invalid input,
body.woocommerce-checkout .fooevents-attendee p.form-row.woocommerce-invalid select{
  border-color:#c0392b!important;
}
body.woocommerce-checkout .fooevents-attendee p.form-row.woocommerce-validated input,
body.woocommerce-checkout .fooevents-attendee p.form-row.woocommerce-validated select{
  border-color:var(--acx-line)!important;
}

/* ---------- Responsive ---------- */
@media (max-width:640px){
  body.woocommerce-checkout .fooevents-attendee{grid-template-columns:1fr;padding:1.1rem 1.1rem 1.2rem}
  body.woocommerce-checkout .fooevents-attendee > p.fooevents-attendee-first-name,
  body.woocommerce-checkout .fooevents-attendee > p.fooevents-attendee-last-name{grid-column:1 / -1}
}


/* =========================================================
   CARRELLO (body.woocommerce-cart)
   ========================================================= */

body.woocommerce-cart{
  --acx-main:#283642;
  --acx-accent:#E88E64;
  --acx-accent-d:#c8693f;
  --acx-ink:#283642;
  --acx-muted:#5b6675;
  --acx-line:#e2e8ee;
  --acx-cloud:#eef1f5;
  --acx-font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}

/* header tabella: via il corsivo serif di Salient */
body.woocommerce-cart table.shop_table th{
  font-family:var(--acx-font)!important;font-style:normal!important;font-weight:600!important;
  font-size:.76rem!important;letter-spacing:.09em;text-transform:uppercase;
  color:var(--acx-muted)!important;
}

/* titolo prodotto: dimensione da card, non da heading */
body.woocommerce-cart table.cart td.product-name > a{
  font-family:var(--acx-font)!important;font-weight:700!important;font-style:normal!important;
  font-size:1.15rem!important;line-height:1.3!important;
  color:var(--acx-ink)!important;text-decoration:none;
}
body.woocommerce-cart table.cart td.product-name > a:hover{color:var(--acx-accent-d)!important}

/* meta Data / Slot (dl.variation di Woo) — griglia etichetta|valore, niente float */
body.woocommerce-cart td.product-name dl.variation{
  display:grid;grid-template-columns:auto 1fr;gap:.15rem .45rem;align-items:baseline;
  margin:.45rem 0 0;font-family:var(--acx-font);font-size:.88rem;line-height:1.5;
}
body.woocommerce-cart td.product-name dl.variation dt{
  float:none;clear:none;margin:0;font-weight:700;font-style:normal;color:var(--acx-ink);
}
body.woocommerce-cart td.product-name dl.variation dd{margin:0;color:var(--acx-muted)}
body.woocommerce-cart td.product-name dl.variation dd p{margin:0;display:inline;font-size:.88rem!important}

/* link "Add more" di FooEvents Bookings: da testo gigante a link discreto */
body.woocommerce-cart .fooevents-add-more-bookings,
body.woocommerce-checkout .fooevents-add-more-bookings{
  display:inline-block;font-family:var(--acx-font)!important;font-style:normal!important;
  font-size:.8rem!important;font-weight:600!important;line-height:1.2!important;
  color:var(--acx-accent-d)!important;text-decoration:none!important;
  border:1.5px solid var(--acx-accent-d);padding:.28rem .65rem;margin:.15rem 0 .15rem .4rem;vertical-align:baseline;
  letter-spacing:.02em;transition:.2s;
}
body.woocommerce-cart .fooevents-add-more-bookings:hover,
body.woocommerce-checkout .fooevents-add-more-bookings:hover{
  background:var(--acx-main);border-color:var(--acx-main);color:#fff!important;
}

/* prezzi e subtotali */
body.woocommerce-cart table.cart td.product-price,
body.woocommerce-cart table.cart td.product-subtotal{
  font-family:var(--acx-font)!important;font-weight:600;color:var(--acx-ink);
}

/* rimuovi (x) */
body.woocommerce-cart table.cart td.product-remove a.remove{
  color:var(--acx-muted)!important;background:transparent!important;border-radius:0;
}
body.woocommerce-cart table.cart td.product-remove a.remove:hover{color:#c0392b!important}

/* coupon */
body.woocommerce-cart td.actions .coupon input.input-text{
  padding:.68rem .85rem;border:1.5px solid var(--acx-line)!important;border-radius:0!important;
  font-family:var(--acx-font)!important;font-size:.92rem;box-shadow:none!important;background:#fff;
}
body.woocommerce-cart td.actions .coupon input.input-text:focus{outline:none;border-color:var(--acx-main)!important}

/* bottoni carrello (applica codice, aggiorna, procedi) */
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart a.checkout-button{
  font-family:var(--acx-font)!important;font-weight:600!important;font-size:.95rem!important;
  border-radius:0!important;border:0!important;
  background:var(--acx-main)!important;color:#fff!important;
  padding:.85rem 1.5rem!important;transition:background .2s ease;
}
body.woocommerce-cart .woocommerce button.button:hover,
body.woocommerce-cart a.checkout-button:hover{background:var(--acx-accent)!important;color:#2a1c12!important}
body.woocommerce-cart .woocommerce button.button:disabled,
body.woocommerce-cart .woocommerce button.button[disabled]{
  background:var(--acx-cloud)!important;color:var(--acx-muted)!important;opacity:1!important;cursor:not-allowed;
}

/* totali */
body.woocommerce-cart .cart_collaterals .cart-totals h2{
  font-family:var(--acx-font)!important;font-weight:700!important;font-style:normal!important;
  font-size:1.35rem!important;letter-spacing:-.02em;color:var(--acx-ink)!important;
}
body.woocommerce-cart .cart_collaterals table.shop_table td{
  font-family:var(--acx-font)!important;color:var(--acx-ink);
}
