/* WooCommerce surface guard for Lucaffè theme.
   Scoped to WooCommerce pages; does not redesign the public editorial sections. */

body.woocommerce-order-received .woocommerce,
body.woocommerce-view-order .woocommerce,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce{
  --lwc-bg:#fff;
  --lwc-soft:#f7f2ed;
  --lwc-ink:#211816;
  --lwc-muted:#71635f;
  --lwc-line:rgba(47,29,25,.13);
  --lwc-red:#9d1728;
  color:var(--lwc-ink)!important;
  font-size:16px!important;
  line-height:1.6!important;
}

body.woocommerce-order-received main,
body.woocommerce-order-received .site-main,
body.woocommerce-view-order main,
body.woocommerce-view-order .site-main{
  width:min(1180px,calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:48px 0 90px!important;
}

body.woocommerce-order-received .woocommerce,
body.woocommerce-view-order .woocommerce{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:clamp(22px,4vw,48px)!important;
  border:1px solid var(--lwc-line)!important;
  border-radius:24px!important;
  background:var(--lwc-bg)!important;
  box-shadow:0 24px 80px rgba(0,0,0,.14)!important;
  overflow:hidden!important;
}

body.woocommerce-order-received .woocommerce *:not(a),
body.woocommerce-view-order .woocommerce *:not(a){
  color:inherit;
}

.woocommerce-order-received .woocommerce-notice,
.woocommerce-order-received .woocommerce-thankyou-order-received{
  margin:0 0 24px!important;
  padding:17px 19px!important;
  border:1px solid rgba(157,23,40,.16)!important;
  border-left:4px solid var(--lwc-red)!important;
  border-radius:12px!important;
  background:#fff8f7!important;
  color:var(--lwc-ink)!important;
  font-size:17px!important;
  font-weight:700!important;
}

.woocommerce-order-received ul.woocommerce-order-overview,
.woocommerce-view-order ul.woocommerce-order-overview{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:0!important;
  width:100%!important;
  margin:0 0 38px!important;
  padding:0!important;
  border:1px solid var(--lwc-line)!important;
  border-radius:14px!important;
  background:var(--lwc-soft)!important;
  overflow:hidden!important;
  list-style:none!important;
}
.woocommerce-order-overview li{
  float:none!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:15px!important;
  border:0!important;
  border-right:1px solid var(--lwc-line)!important;
  color:var(--lwc-muted)!important;
  font-size:11px!important;
  line-height:1.35!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  overflow-wrap:anywhere!important;
}
.woocommerce-order-overview li:last-child{border-right:0!important}
.woocommerce-order-overview li strong{
  display:block!important;
  margin-top:7px!important;
  color:var(--lwc-ink)!important;
  font-size:14px!important;
  line-height:1.4!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.woocommerce-order-details,
.woocommerce-customer-details{
  width:100%!important;
  max-width:100%!important;
  margin:38px 0 0!important;
  overflow:visible!important;
}
.woocommerce-order-details h2,
.woocommerce-customer-details h2{
  margin:0 0 17px!important;
  color:var(--lwc-ink)!important;
  font-size:clamp(24px,3vw,34px)!important;
  line-height:1.15!important;
  font-weight:750!important;
}
.woocommerce-order-details table,
.woocommerce-table--order-details{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  border:1px solid var(--lwc-line)!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:14px!important;
  background:#fff!important;
  overflow:hidden!important;
  table-layout:auto!important;
  color:var(--lwc-ink)!important;
  font-size:15px!important;
}
.woocommerce-order-details th,
.woocommerce-order-details td{
  padding:14px 13px!important;
  border:0!important;
  border-bottom:1px solid var(--lwc-line)!important;
  background:transparent!important;
  color:var(--lwc-ink)!important;
  text-align:left!important;
  vertical-align:middle!important;
  overflow-wrap:anywhere!important;
}
.woocommerce-order-details thead th{
  background:var(--lwc-soft)!important;
  font-size:13px!important;
  font-weight:750!important;
}
.woocommerce-order-details th:last-child,
.woocommerce-order-details td:last-child{text-align:right!important}
.woocommerce-order-details tfoot tr:last-child th,
.woocommerce-order-details tfoot tr:last-child td{border-bottom:0!important}
.woocommerce-order-details .product-name a{color:var(--lwc-ink)!important;text-decoration:none!important}

.woocommerce-customer-details .woocommerce-columns{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
  margin:0!important;
}
.woocommerce-customer-details .woocommerce-column{
  float:none!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
}
.woocommerce-customer-details address{
  min-height:100%!important;
  margin:0!important;
  padding:20px!important;
  border:1px solid var(--lwc-line)!important;
  border-radius:14px!important;
  background:var(--lwc-soft)!important;
  color:var(--lwc-ink)!important;
  font-style:normal!important;
  font-size:15px!important;
  line-height:1.7!important;
}
.woocommerce-customer-details address p{margin:8px 0 0!important}

.woocommerce-order-received a.button,
.woocommerce-view-order a.button,
.woocommerce-order-details a.button,
.lucaffe-proforma-link a.button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 15px!important;
  border:1px solid var(--lwc-red)!important;
  border-radius:9px!important;
  background:var(--lwc-red)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:750!important;
  line-height:1.2!important;
  text-decoration:none!important;
  box-shadow:none!important;
}

.woocommerce-bacs-bank-details{
  margin:28px 0!important;
  padding:20px!important;
  border:1px solid var(--lwc-line)!important;
  border-radius:14px!important;
  background:#fff8f7!important;
  color:var(--lwc-ink)!important;
}
.woocommerce-bacs-bank-details h2{font-size:24px!important}
.woocommerce-bacs-bank-details h3{font-size:18px!important}

/* Cart, checkout and account: consistent readable containers. */
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-account .woocommerce{
  width:min(1220px,calc(100% - 32px))!important;
  max-width:1220px!important;
  margin:0 auto!important;
}
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content{
  color:var(--lwc-ink)!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  margin:0!important;padding:8px!important;list-style:none!important;
  border:1px solid var(--lwc-line)!important;border-radius:13px!important;background:#fff!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block!important;padding:10px 12px!important;border-radius:8px!important;color:var(--lwc-ink)!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{background:var(--lwc-soft)!important;color:var(--lwc-red)!important}

@media(max-width:900px){
  .woocommerce-order-received ul.woocommerce-order-overview,
  .woocommerce-view-order ul.woocommerce-order-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .woocommerce-order-overview li{border-bottom:1px solid var(--lwc-line)!important}
  .woocommerce-customer-details .woocommerce-columns{grid-template-columns:1fr!important}
}
@media(max-width:620px){
  body.woocommerce-order-received main,
  body.woocommerce-order-received .site-main,
  body.woocommerce-view-order main,
  body.woocommerce-view-order .site-main{width:calc(100% - 18px)!important;padding:22px 0 60px!important}
  body.woocommerce-order-received .woocommerce,
  body.woocommerce-view-order .woocommerce{padding:16px!important;border-radius:16px!important}
  .woocommerce-order-received ul.woocommerce-order-overview,
  .woocommerce-view-order ul.woocommerce-order-overview{grid-template-columns:1fr!important}
  .woocommerce-order-overview li{border-right:0!important}
  .woocommerce-order-details{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .woocommerce-order-details table{min-width:560px!important}
  .woocommerce-order-details h2,.woocommerce-customer-details h2{font-size:24px!important}
}
