/* ==========================================================================
   Coș, finalizare comandă, cont
   Shortcode-urile clasice WooCommerce, aduse în design system-ul site-ului.
   ========================================================================== */

/* Încadrarea: fără ea conținutul pornește din marginea ferestrei. */
.ac-wc {
  max-width: var(--ac-maxw); margin-inline: auto;
  padding: 0 var(--ac-gutter) clamp(3rem, 6vw, 5rem);
}
/* titlul propriu îl punem noi, în antet; cel injectat de ac-page-setup ar dubla */
.woocommerce-cart .ac-wc-titlu, .woocommerce-checkout .ac-wc-titlu { display: none; }
.woocommerce-account .ac-wc-titlu { padding-inline: 0; }

.ac-wc-head {
  padding: clamp(1.4rem, 3vw, 2.4rem) 0 clamp(1.4rem, 3vw, 2.2rem);
  border-bottom: 1px solid var(--ac-hair); margin-bottom: clamp(1.6rem, 3vw, 2.6rem);
}
.ac-wc-head .ac-no { margin-bottom: .7rem; }
.ac-wc-head h1 {
  font-family: "AC Newsreader", Georgia, serif; font-weight: 500;
  font-size: clamp(1.9rem, 4vw, 3rem); line-height: 1.05; letter-spacing: -.022em;
}
.ac-wc-sub { margin-top: .8rem; color: var(--ac-muted); font-size: .92rem; max-width: 60ch; line-height: 1.7; }

/* --- notificări ----------------------------------------------------------- */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
  list-style: none; margin: 0 0 1.4rem; padding: .95rem 1.1rem;
  background: #fff; border: 0; border-left: 3px solid var(--ac-gold);
  font-size: .9rem; color: var(--ac-ink);
}
.woocommerce-error { border-left-color: var(--ac-sale); }
.woocommerce-message { border-left-color: var(--ac-ok); }
.woocommerce-message a, .woocommerce-info a, .woocommerce-error a { color: var(--ac-gold); }
.woocommerce-message .button, .woocommerce-info .button { float: right; }

/* ==========================================================================
   Coșul
   ========================================================================== */
/* `row-gap: 0`: antetul își aduce singur marja de jos, iar un rând de grilă în
   plus lăsa o gaură de ~90px între titlu și tabel */
.woocommerce-cart .woocommerce {
  display: grid; grid-template-columns: minmax(0, 1fr) 360px;
  column-gap: clamp(1.6rem, 3.4vw, 3.4rem); row-gap: 0; align-items: start;
}
.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-cart .woocommerce > .ac-wc-head { grid-column: 1 / -1; }
.woocommerce-cart form.woocommerce-cart-form { grid-column: 1; margin: 0; }
.woocommerce-cart .cart-collaterals { grid-column: 2; width: 100%; float: none; position: sticky; top: calc(var(--ac-top-h) + 20px); }
.woocommerce-cart .cart-collaterals .cart_totals { width: 100%; float: none; }

.shop_table {
  border-collapse: collapse; width: 100%; border: 0; border-radius: 0; margin: 0;
}
.shop_table th, .shop_table td { border: 0; border-bottom: 1px solid var(--ac-hair); padding: 1.1rem .6rem; }
.shop_table thead th {
  font: 600 .7rem/1 "AC Archivo", sans-serif; letter-spacing: .14em; text-transform: uppercase;
  color: var(--ac-muted); padding-bottom: .8rem; border-bottom-color: var(--ac-ink); text-align: left;
}
.shop_table td.product-remove { width: 34px; padding-left: 0; }
.shop_table td.product-thumbnail { width: 92px; }
.shop_table td.product-thumbnail img {
  width: 84px; height: auto; aspect-ratio: 4/5; object-fit: cover;
  background: #fff; box-shadow: inset 0 0 0 1px var(--ac-hair);
}
.shop_table td.product-name a {
  font-family: "AC Newsreader", Georgia, serif; font-size: 1.02rem; color: var(--ac-ink);
  text-decoration: none; line-height: 1.3;
}
.shop_table td.product-name a:hover { color: var(--ac-gold); }
.shop_table .variation {
  margin: .35rem 0 0; font-size: .74rem; letter-spacing: .08em; text-transform: uppercase;
  color: var(--ac-muted); display: flex; flex-wrap: wrap; gap: 0 .8rem;
}
.shop_table .variation dt { font-weight: 400; }
.shop_table .variation dd { margin: 0; }
.shop_table .variation p { margin: 0; }
.shop_table td.product-price, .shop_table td.product-subtotal, .shop_table td.product-total {
  font-family: "AC Newsreader", Georgia, serif; font-size: 1.05rem; color: var(--ac-pret);
  font-variant-numeric: tabular-nums; text-align: right;
}
.shop_table th.product-price, .shop_table th.product-subtotal,
.shop_table th.product-total, .shop_table th.product-quantity { text-align: right; }
.shop_table td.product-quantity { text-align: right; }
.shop_table .woocommerce-Price-currencySymbol { font-size: .62em; color: var(--ac-muted); }
a.remove {
  display: grid; place-items: center; width: 26px; height: 26px; border-radius: 0;
  color: var(--ac-dim) !important; font-size: 1.2rem; line-height: 1; text-decoration: none;
  transition: color .25s;
}
a.remove:hover { background: none !important; color: var(--ac-pret) !important; }

/* cantitatea, aceeași ramă compactă ca pe produs */
.quantity { display: inline-flex; }
.shop_table .quantity input.qty, .woocommerce .quantity input.qty {
  width: 68px; height: 44px; text-align: center; border: 1px solid var(--ac-hair);
  background: #fff; border-radius: 0; padding: 0;
  font: 600 15px/1 "AC Archivo", sans-serif; color: var(--ac-ink);
  -moz-appearance: textfield; appearance: textfield;
}
.woocommerce .quantity input.qty::-webkit-outer-spin-button,
.woocommerce .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* rândul de acțiuni de sub tabel */
.shop_table td.actions { padding: 1.2rem 0 0; border-bottom: 0; }
.shop_table td.actions .coupon { display: flex; gap: .5rem; float: none; margin-bottom: 1rem; flex-wrap: wrap; }
.shop_table td.actions .coupon label { display: none; }
.shop_table td.actions .coupon input[type="text"] {
  flex: 0 1 220px; border: 1px solid var(--ac-hair); background: #fff; border-radius: 0;
  padding: .8rem .9rem; font: 400 16px/1.2 "AC Archivo", sans-serif; color: var(--ac-ink);
}

/* --- totaluri ------------------------------------------------------------- */
.cart_totals h2, .woocommerce-checkout-review-order h3, #order_review_heading {
  font-family: "AC Newsreader", Georgia, serif; font-weight: 500; font-size: 1.35rem;
  letter-spacing: -.01em; margin-bottom: 1rem;
}
.cart_totals table, .woocommerce-checkout-review-order table {
  width: 100%; border-collapse: collapse; margin-bottom: 1.1rem;
}
.cart_totals th, .cart_totals td,
.woocommerce-checkout-review-order th, .woocommerce-checkout-review-order td {
  border: 0; border-bottom: 1px solid var(--ac-hair); padding: .85rem 0; text-align: left;
  font-size: .92rem; vertical-align: top;
}
.cart_totals th, .woocommerce-checkout-review-order th {
  font: 600 .72rem/1.5 "AC Archivo", sans-serif; letter-spacing: .12em; text-transform: uppercase;
  color: var(--ac-muted); width: 45%;
}
.cart_totals td, .woocommerce-checkout-review-order td { text-align: right; font-variant-numeric: tabular-nums; }
.cart_totals .order-total td, .woocommerce-checkout-review-order .order-total td {
  font-family: "AC Newsreader", Georgia, serif; font-size: 1.5rem; color: var(--ac-pret); line-height: 1.2;
}
.cart_totals .order-total .woocommerce-Price-currencySymbol,
.woocommerce-checkout-review-order .order-total .woocommerce-Price-currencySymbol {
  font-size: .58em; color: var(--ac-muted);
}
.woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; text-align: right; }
.woocommerce-shipping-destination { font-size: .8rem; color: var(--ac-muted); }
.shipping-calculator-button { color: var(--ac-gold); font-size: .84rem; }

/* --- butoane -------------------------------------------------------------- */
.woocommerce .button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button, .wc-proceed-to-checkout a.button {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  border: 1px solid var(--ac-antracit); border-radius: 0; background: none;
  color: var(--ac-antracit); cursor: pointer;
  padding: .85rem 1.5rem; min-height: 48px;
  font: 600 .85rem/1 "AC Archivo", sans-serif; letter-spacing: .05em;
  text-decoration: none; transition: background .3s, color .3s;
}
.woocommerce .button:hover, .woocommerce button.button:hover,
.woocommerce input.button:hover, .woocommerce a.button:hover {
  background: var(--ac-antracit); color: var(--ac-cream);
}
.woocommerce .button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.wc-proceed-to-checkout a.checkout-button, #place_order {
  background: var(--ac-antracit); color: var(--ac-cream); border-color: var(--ac-antracit);
  width: 100%; box-shadow: 0 12px 26px -18px rgba(20, 14, 8, .9);
}
.woocommerce .button.alt:hover, .wc-proceed-to-checkout a.checkout-button:hover, #place_order:hover {
  background: var(--ac-choc); border-color: var(--ac-choc); color: var(--ac-cream);
}
.woocommerce .button:disabled, .woocommerce .button[disabled] { opacity: .45; cursor: not-allowed; }
.wc-proceed-to-checkout { padding: 0; }

/* --- elemente de încredere ------------------------------------------------ */
.ac-wc-trust {
  list-style: none; margin: 1.6rem 0 0; padding: 1.2rem 0 0;
  border-top: 1px solid var(--ac-hair);
  display: flex; flex-wrap: wrap; gap: .6rem 2rem;
}
.ac-wc-trust li {
  position: relative; padding-left: 1.5rem; font-size: .85rem; color: var(--ac-muted);
}
.ac-wc-trust li::before {
  content: ""; position: absolute; left: 0; top: .42em; width: 9px; height: 5px;
  border-left: 1.6px solid var(--ac-gold); border-bottom: 1.6px solid var(--ac-gold);
  transform: rotate(-45deg);
}

/* --- coș gol -------------------------------------------------------------- */
.cart-empty { font-family: "AC Newsreader", Georgia, serif; font-size: 1.3rem; margin-bottom: 1rem; }
.return-to-shop { margin-bottom: 2rem; }

/* ==========================================================================
   Finalizarea comenzii
   ========================================================================== */
.woocommerce-checkout form.checkout {
  display: grid; grid-template-columns: minmax(0, 1fr) 400px;
  column-gap: clamp(1.6rem, 3.4vw, 3.4rem); row-gap: 0; align-items: start;
}
.woocommerce-checkout #customer_details { grid-column: 1; }
.woocommerce-checkout .woocommerce-checkout-review-order {
  grid-column: 2; position: sticky; top: calc(var(--ac-top-h) + 20px);
  background: var(--ac-paper-2); box-shadow: inset 0 0 0 1px var(--ac-hair);
  padding: clamp(1.1rem, 2.4vw, 1.7rem);
}
.woocommerce-checkout #order_review_heading { grid-column: 2; margin-bottom: .8rem; }

/* fotografia produsului în sumar: clientul confirmă comanda văzând produsul,
   nu doar un rând de text (WooCommerce nu o pune nativ la finalizare).
   `display: contents` pe wrapper: imaginea, numele ȘI cantitatea (pe care
   șablonul o tipărește ca frate, după filtru) devin toate copii direcți ai
   celulei, deci stau pe un rând în loc să cadă cantitatea sub imagine. */
/* `table-layout: fixed` + lățimi explicite: altfel tabelul își calculează
   singur coloanele din conținut, dă coloanei de preț mai mult decât îi trebuie,
   iar celulei cu produsul îi rămân ~90px, în care imaginea sare pe rând propriu.
   Cu layout fix, coloanele nu mai depind de lungimea numelui. */
.woocommerce-checkout-review-order .shop_table { table-layout: fixed; }
.woocommerce-checkout-review-order .shop_table th.product-name { width: 74%; }
/* Caseta de sumar are 400px: imaginea, numele și cantitatea nu încap toate pe
   un rând fără să strivească numele (măsurat: 90px, adică 6 rânduri rupte).
   Cantitatea coboară sub nume, iar numele ia toată lățimea rămasă.
   `display: contents` pe wrapper: imaginea, numele ȘI cantitatea (pe care
   șablonul o tipărește ca frate, după filtru) devin copii direcți ai grilei. */
.woocommerce-checkout-review-order td.product-name {
  display: grid; grid-template-columns: 48px minmax(0, 1fr);
  column-gap: .7rem; row-gap: .2rem; align-items: start;
}
.ac-chk-produs { display: contents; }
.ac-chk-produs .ac-chk-thumb {
  grid-column: 1; grid-row: 1 / span 2;
  width: 48px; height: 60px; object-fit: cover;
  background: var(--ac-paper); box-shadow: inset 0 0 0 1px var(--ac-hair);
}
.ac-chk-produs-t { grid-column: 2; grid-row: 1; min-width: 0; }
.woocommerce-checkout-review-order td.product-name .product-quantity {
  grid-column: 2; grid-row: 2; font-weight: 400; color: var(--ac-muted);
}
.woocommerce-checkout .col2-set { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; }
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 { width: 100%; float: none; }
/* Fără `border-top` pe fiecare h3: exceptarea `.col-1 > h3:first-child` nu se
   aplica (titlul stă în .woocommerce-billing-fields, nu direct în .col-1), așa
   că lua linie și „Datele de facturare", și „Comanda dumneavoastră". Secțiunile
   se despart prin spațiu; caseta de sumar are oricum propriul chenar. */
.woocommerce-checkout h3 {
  font-family: "AC Newsreader", Georgia, serif; font-weight: 500; font-size: 1.3rem;
  letter-spacing: -.01em; margin: 0 0 1rem;
}
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
  margin-top: 1.8rem; padding-top: 1.4rem; border-top: 1px solid var(--ac-hair);
}

/* „Livrați la o adresă diferită?" e un h3 în care WooCommerce bagă o bifă.
   Ca titlu serif de 1.3rem, caseta rămânea agățată de linia de bază a unui
   text mult mai mare: 6,8px decalaj față de etichetă. Îl aducem la un rând
   normal de bifă. */
.woocommerce-checkout h3#ship-to-different-address {
  font-family: "AC Archivo", sans-serif; font-size: .95rem; font-weight: 500;
  letter-spacing: 0; margin: 0;
}
.woocommerce-checkout h3#ship-to-different-address label { align-items: center; font-size: inherit; }
/* Bricks (assets/css/integrations/woocommerce.min.css) scoate bifa din flux ca
   să o ancoreze în dreapta: `position:absolute; right:0; top:50%;
   transform:translateY(-50%)`. Eticheta noastră e flex, cu bifa prima, deci
   cele două rețete se bat cap în cap și caseta ajungea cu 6,4px deasupra
   textului. Selectorul de mai jos e mai specific decât al lui (0,1,3,1). */
.woocommerce-checkout .woocommerce-shipping-fields #ship-to-different-address input[type="checkbox"] {
  position: relative; right: auto; top: auto; transform: none; margin-top: 0;
}

/* câmpuri */
.woocommerce form .form-row { display: block; margin-bottom: 1.05rem; padding: 0; }
.woocommerce form .form-row label {
  display: block; font-size: .78rem; font-weight: 600; letter-spacing: .06em;
  color: var(--ac-muted); margin-bottom: .35rem;
}
.woocommerce form .form-row .required { color: var(--ac-sale); text-decoration: none; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection--single {
  width: 100%; background: #fff; border: 1px solid var(--ac-hair); border-radius: 0;
  padding: .8rem .9rem; height: auto; min-height: 48px;
  font: 400 16px/1.4 "AC Archivo", sans-serif; color: var(--ac-ink);
}
.woocommerce form .form-row textarea { min-height: 110px; }
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  outline: 2px solid var(--ac-gold); outline-offset: -1px; border-color: var(--ac-gold);
}
.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: var(--ac-sale); }
.woocommerce form .form-row.woocommerce-validated input.input-text { border-color: var(--ac-ok); }
.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 1.4; padding: 0; color: var(--ac-ink);
}
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; right: 8px; }
.woocommerce-input-wrapper { display: block; }
/* WooCommerce core dă `width: 47%` + float pe form-row-first/last; în grila
   noastră asta lăsa un gol cât jumătate de coloană între Prenume și Nume */
.woocommerce form .form-row-first, .woocommerce form .form-row-last {
  width: 100%; float: none;
}
/* codul poștal nu se afișează: îl completează selectorul de localitate */
.woocommerce form .form-row.ac-camp-ascuns { display: none; }
/* două coloane pentru câmpurile scurte, ca formularul să nu fie o coloană lungă */
@media (min-width: 720px) {
  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-shipping-fields__field-wrapper,
  .woocommerce-additional-fields__field-wrapper {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1rem;
  }
  .woocommerce-billing-fields__field-wrapper > .form-row-wide,
  .woocommerce-shipping-fields__field-wrapper > .form-row-wide,
  .woocommerce-additional-fields__field-wrapper > .form-row-wide { grid-column: 1 / -1; }
}

/* facturare persoană fizică / juridică (câmpurile pluginului SmartBill,
   trecute pe butoane radio în `ac-smartbill.php`) */
/* input și label sunt frați direcți în wrapper: gap-ul mic îi leagă,
   marginea de pe label desparte perechile între ele */
#smartbill_billing_type_field .woocommerce-input-wrapper {
  display: flex !important; flex-wrap: wrap; align-items: center;
  gap: .5rem; padding-top: .2rem;
}
#smartbill_billing_type_field label:not(:last-child) { margin-right: 1.4rem; }
/* WooCommerce repetă marcajul de câmp obligatoriu pe FIECARE opțiune a unui
   grup radio: „Persoană fizică * Persoană juridică *", trei asteriscuri pe un
   rând. Rămâne cel de pe eticheta grupului. */
#smartbill_billing_type_field .woocommerce-input-wrapper .required,
#smartbill_billing_type_field .woocommerce-input-wrapper abbr { display: none; }
#smartbill_billing_type_field .input-radio {
  appearance: none; -webkit-appearance: none;
  /* !important: altfel iese oval; lățimea și paddingul vin din CSS-ul
     de formulare al temei (padding 0 12px + border-box = minim 26px) */
  width: 17px !important; height: 17px !important; box-sizing: border-box;
  padding: 0 !important;
  margin: 0 !important; border: 1px solid var(--ac-hair); border-radius: 50%;
  background: #fff; cursor: pointer; flex: none; position: relative;
  transition: border-color .2s;
}
#smartbill_billing_type_field .input-radio:checked { border-color: var(--ac-choc); }
#smartbill_billing_type_field .input-radio:checked::after {
  content: ""; position: absolute; inset: 3px; border-radius: 50%;
  background: var(--ac-choc);
}
#smartbill_billing_type_field .input-radio:focus-visible { outline: 2px solid var(--ac-gold); outline-offset: 2px; }
#smartbill_billing_type_field label {
  display: inline-flex; align-items: center; gap: .5rem; margin: 0;
  font-size: .9rem; font-weight: 400; letter-spacing: 0; color: var(--ac-ink);
  text-transform: none; cursor: pointer; line-height: 1.2 !important;
}

/* rezumatul comenzii */
.woocommerce-checkout-review-order-table .product-name {
  font-family: "AC Newsreader", Georgia, serif; font-size: .98rem; color: var(--ac-ink);
  text-align: left; line-height: 1.35;
}
.woocommerce-checkout-review-order-table .product-quantity { color: var(--ac-muted); font-family: "AC Archivo", sans-serif; }
.woocommerce-checkout-review-order-table td.product-total { color: var(--ac-pret); }
.woocommerce-checkout-review-order-table thead th { border-bottom-color: var(--ac-ink); }

/* plata */
.woocommerce-checkout #payment { background: none; border-radius: 0; }
.woocommerce-checkout #payment ul.payment_methods {
  list-style: none; margin: 0 0 1rem; padding: 1.1rem 0 0; border-top: 1px solid var(--ac-hair);
}
.woocommerce-checkout #payment ul.payment_methods li { margin-bottom: .5rem; }
.woocommerce-checkout #payment ul.payment_methods label {
  font-size: .92rem; font-weight: 600; color: var(--ac-ink); cursor: pointer;
}
.woocommerce-checkout #payment div.payment_box {
  background: #fff; border-radius: 0; margin: .5rem 0 0; padding: .8rem 1rem;
  font-size: .85rem; color: var(--ac-muted);
}
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout #payment .form-row.place-order { padding: 0; margin: 1rem 0 0; }
.woocommerce-privacy-policy-text { font-size: .8rem; color: var(--ac-muted); }
.woocommerce-terms-and-conditions-wrapper { margin-bottom: 1rem; }
/* bifele: caseta implicită a sistemului e de 13px și arată a formular din 2004.
   Selectorul are nevoie de `form .form-row label` ca să bată regula generală a
   etichetelor de câmp (display: block), care strica bifa „Doriți să vă creați
   cont?": eticheta pe bloc, caseta fără aliniere și fără spațiu față de text. */
.woocommerce form .form-row label.checkbox,
.woocommerce-form__label-for-checkbox {
  display: flex; align-items: flex-start; gap: .6rem; font-size: .86rem;
  color: var(--ac-ink); cursor: pointer; text-transform: none; letter-spacing: 0;
  font-weight: 400; margin: 0;
}
/* `padding: 0` NU e de prisos: regula generală a inputurilor dă `0 12px`, iar
   cu `box-sizing: border-box` cele 24px de padding băteau lățimea de 17px și
   caseta ieșea 26×17, adică vizibil dreptunghiulară. */
.woocommerce-form__label-for-checkbox input[type="checkbox"],
.woocommerce form .form-row label.checkbox input[type="checkbox"] {
  appearance: none; -webkit-appearance: none; flex: none;
  width: 17px; height: 17px; min-width: 17px; padding: 0;
  margin: .12em 0 0; border-radius: 0;
  border: 1px solid var(--ac-hair); background: #fff; cursor: pointer;
  position: relative; transition: background .2s, border-color .2s;
}
.woocommerce-form__label-for-checkbox input[type="checkbox"]:checked,
.woocommerce form .form-row label.checkbox input[type="checkbox"]:checked {
  background: var(--ac-choc); border-color: var(--ac-choc);
}
.woocommerce-form__label-for-checkbox input[type="checkbox"]:checked::after,
.woocommerce form .form-row label.checkbox input[type="checkbox"]:checked::after {
  content: ""; position: absolute; left: 5px; top: 2px; width: 4px; height: 9px;
  border: solid var(--ac-cream); border-width: 0 1.5px 1.5px 0; transform: rotate(45deg);
}
.woocommerce-form__label-for-checkbox input[type="checkbox"]:focus-visible {
  outline: 2px solid var(--ac-gold); outline-offset: 2px;
}

/* login / cupon de deasupra formularului: o singură linie discretă (bara
   ac-chk-porti, tipărită de ac-cos-checkout.php); bannerele implicite se ascund */
.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle { display: none; }
/* Bara stă acum ÎN antet (vezi ac_wc_porti_checkout): fără chenar propriu,
   pentru că linia de jos a antetului închide tot blocul. */
.ac-chk-porti {
  display: flex; flex-wrap: wrap; gap: .4rem 2.2rem; margin-top: 1.1rem;
  font-size: .86rem; color: var(--ac-muted);
}
.ac-chk-porti a { color: var(--ac-gold); font-weight: 600; text-underline-offset: 3px; }
.ac-chk-porti a:hover { color: var(--ac-ink); }
.woocommerce form.login, .woocommerce form.checkout_coupon {
  border: 1px solid var(--ac-hair); border-radius: 0; padding: 1.2rem; margin-bottom: 1.4rem;
  background: #fff;
}
.woocommerce form.login { max-width: 460px; }
/* cuponul: câmp și buton pe același rând */
.woocommerce form.checkout_coupon { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; }
.woocommerce form.checkout_coupon > p { margin: 0; }
.woocommerce form.checkout_coupon > p:not(.form-row) { flex: 1 1 100%; font-size: .86rem; color: var(--ac-muted); }
.woocommerce form.checkout_coupon .form-row-first { flex: 1 1 220px; width: auto; }
.woocommerce form.checkout_coupon .form-row-last { flex: 0 0 auto; width: auto; }
.woocommerce form.checkout_coupon .clear { display: none; }

/* ==========================================================================
   Contul meu
   ========================================================================== */
.woocommerce-account .woocommerce {
  display: grid; grid-template-columns: 230px minmax(0, 1fr);
  gap: clamp(1.6rem, 3.4vw, 3.4rem); align-items: start;
}
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-account .woocommerce-MyAccount-navigation { width: 100%; float: none; }
.woocommerce-account .woocommerce-MyAccount-content { width: 100%; float: none; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--ac-hair); }
.woocommerce-MyAccount-navigation li a {
  display: block; padding: .8rem 0; text-decoration: none; color: var(--ac-muted);
  font-size: .9rem; transition: color .25s;
}
.woocommerce-MyAccount-navigation li a:hover { color: var(--ac-ink); }
.woocommerce-MyAccount-navigation li.is-active a { color: var(--ac-ink); font-weight: 600; }
.woocommerce-account .woocommerce-form-login, .woocommerce-account .woocommerce-form-register {
  max-width: 460px;
}

/* ==========================================================================
   Mulțumim / detaliile comenzii
   ========================================================================== */
.woocommerce-order { max-width: 780px; }
.woocommerce-thankyou-order-received {
  font-family: "AC Newsreader", Georgia, serif; font-size: clamp(1.3rem, 2.6vw, 1.8rem);
  color: var(--ac-ink); margin-bottom: 1.4rem; line-height: 1.3;
}
.woocommerce-order-overview {
  list-style: none; margin: 0 0 2rem; padding: 1.2rem 0; display: flex; flex-wrap: wrap;
  gap: 1.2rem 2.4rem; border-block: 1px solid var(--ac-hair);
}
.woocommerce-order-overview li {
  font-size: .72rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
  color: var(--ac-muted); border: 0;
}
.woocommerce-order-overview li strong {
  display: block; margin-top: .35rem; font: 500 1.05rem/1.3 "AC Newsreader", Georgia, serif;
  letter-spacing: 0; text-transform: none; color: var(--ac-ink);
}

/* ==========================================================================
   Responsiv
   ========================================================================== */
@media (max-width: 1000px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout form.checkout,
  .woocommerce-account .woocommerce { grid-template-columns: minmax(0, 1fr); }
  .woocommerce-cart form.woocommerce-cart-form,
  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout #customer_details,
  .woocommerce-checkout .woocommerce-checkout-review-order,
  .woocommerce-checkout #order_review_heading { grid-column: 1; }
  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout .woocommerce-checkout-review-order { position: static; }
}

@media (max-width: 720px) {
  /* tabelul coșului devine listă: un tabel de 5 coloane pe 375px e ilizibil */
  .woocommerce-cart .shop_table thead { display: none; }
  .woocommerce-cart .shop_table, .woocommerce-cart .shop_table tbody,
  .woocommerce-cart .shop_table tr, .woocommerce-cart .shop_table td { display: block; width: 100%; }
  .woocommerce-cart .shop_table tr.cart_item {
    position: relative; display: grid;
    grid-template-columns: 84px minmax(0, 1fr); gap: .2rem .9rem;
    padding: 1.1rem 0; border-bottom: 1px solid var(--ac-hair);
  }
  .woocommerce-cart .shop_table tr.cart_item td { border: 0; padding: 0; }
  .woocommerce-cart .shop_table td.product-remove { grid-column: 2; grid-row: 1; justify-self: end; }
  .woocommerce-cart .shop_table td.product-thumbnail { grid-column: 1; grid-row: 1 / 5; width: auto; }
  .woocommerce-cart .shop_table td.product-thumbnail img { width: 100%; }
  .woocommerce-cart .shop_table td.product-name { grid-column: 2; grid-row: 1; padding-right: 2rem; }
  .woocommerce-cart .shop_table td.product-price { display: none; }
  .woocommerce-cart .shop_table td.product-quantity { grid-column: 2; grid-row: 2; text-align: left; margin-top: .6rem; }
  .woocommerce-cart .shop_table td.product-subtotal { grid-column: 2; grid-row: 3; text-align: left; margin-top: .5rem; }
  .woocommerce-cart .shop_table td.actions { grid-column: 1 / -1; }
  .woocommerce-cart .shop_table td.actions .coupon input[type="text"] { flex: 1 1 auto; }
  .woocommerce-cart .shop_table td.actions .button { width: 100%; }
  .ac-wc-trust { gap: .5rem 1.2rem; }
}
