/* =========================================================
   COFFY'S — PANIER + CHECKOUT
   WooCommerce shortcode/classic checkout
   ========================================================= */
.coffys-woo{--cw-bg:#080808;--cw-surface:#101010;--cw-soft:#161616;--cw-text:#f4efe9;--cw-muted:#aaa39d;--cw-line:rgba(255,255,255,.12);--cw-accent:var(--co-bronze,#b79c86);background:var(--cw-bg);color:var(--cw-text);font-family:var(--co-sans,Arial,sans-serif);min-height:70vh}
.coffys-woo__container{width:min(1320px,calc(100% - 56px));margin:0 auto}.coffys-woo__hero{padding:clamp(115px,13vw,175px) 0 48px;border-bottom:1px solid var(--cw-line)}.coffys-woo__eyebrow{margin:0 0 14px;color:var(--cw-accent);font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.coffys-woo__hero h1{margin:0;font-family:var(--co-serif,Georgia,serif);font-size:clamp(58px,9vw,126px);font-weight:400;line-height:.86;letter-spacing:-.05em}.coffys-woo__hero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.coffys-woo__count{flex:0 0 auto;margin-bottom:9px;color:var(--cw-muted);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.coffys-woo__intro{max-width:620px;margin:24px 0 0;color:var(--cw-muted);font-size:14px;line-height:1.8}.coffys-woo__main{padding:44px 0 105px}
.coffys-woo__steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.coffys-woo__steps span{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 13px;border:1px solid var(--cw-line);border-radius:999px;color:#706b67;font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.coffys-woo__steps span em{font-style:normal}.coffys-woo__steps .is-done,.coffys-woo__steps .is-active{color:#fff}.coffys-woo__steps .is-active{border-color:var(--cw-accent);background:rgba(183,156,134,.1)}

.coffys-woo .woocommerce{color:var(--cw-text)}.coffys-woo .woocommerce a{color:inherit}.coffys-woo .woocommerce-message,.coffys-woo .woocommerce-info,.coffys-woo .woocommerce-error{margin:0 0 24px!important;padding:16px 18px!important;border:1px solid var(--cw-line)!important;border-top:1px solid var(--cw-line)!important;background:var(--cw-surface)!important;color:#ddd5ce!important;font-size:13px!important;line-height:1.6!important}.coffys-woo .woocommerce-message::before,.coffys-woo .woocommerce-info::before,.coffys-woo .woocommerce-error::before{display:none!important}

/* CART */
.coffys-woo table.shop_table{width:100%;border:0!important;border-collapse:collapse!important;background:transparent!important;color:var(--cw-text);border-radius:0!important}.coffys-woo table.shop_table th{padding:0 16px 14px!important;border:0!important;border-bottom:1px solid var(--cw-line)!important;color:#8e8882!important;font-size:8px!important;letter-spacing:.15em!important;text-transform:uppercase!important}.coffys-woo table.shop_table td{padding:22px 16px!important;border:0!important;border-bottom:1px solid var(--cw-line)!important;background:transparent!important}.coffys-woo .product-thumbnail img{width:92px!important;height:112px!important;object-fit:cover!important}.coffys-woo .product-name a{font-family:var(--co-serif,Georgia,serif);font-size:24px;text-decoration:none}.coffys-woo .product-price,.coffys-woo .product-subtotal{font-size:13px;font-weight:700}.coffys-woo .product-remove a{display:grid!important;place-items:center!important;width:32px!important;height:32px!important;border:1px solid var(--cw-line)!important;border-radius:50%!important;color:#9d9690!important;background:transparent!important;font-size:18px!important;text-decoration:none!important}.coffys-woo .product-remove a:hover{border-color:#fff!important;color:#fff!important;background:transparent!important}.coffys-woo .quantity .qty{width:76px!important;min-height:44px!important;padding:0 10px!important;border:1px solid var(--cw-line)!important;border-radius:0!important;background:var(--cw-surface)!important;color:#fff!important}.coffys-woo .coupon{display:flex!important;gap:8px!important}.coffys-woo .coupon .input-text{width:220px!important;min-height:46px!important;padding:0 14px!important;border:1px solid var(--cw-line)!important;background:var(--cw-surface)!important;color:#fff!important}.coffys-woo button.button,.coffys-woo a.button,.coffys-woo input.button,.coffys-woo #place_order{min-height:46px!important;padding:0 18px!important;border:1px solid var(--cw-accent)!important;border-radius:0!important;background:var(--cw-accent)!important;color:#0a0a0a!important;font:700 9px/44px var(--co-sans,Arial,sans-serif)!important;letter-spacing:.13em!important;text-transform:uppercase!important;transition:.2s ease!important}.coffys-woo button.button:hover,.coffys-woo a.button:hover,.coffys-woo input.button:hover,.coffys-woo #place_order:hover{background:#fff!important;border-color:#fff!important;color:#0a0a0a!important}.coffys-woo button.button:disabled{opacity:.4!important}.coffys-woo .cart-collaterals{display:flex;justify-content:flex-end;margin-top:42px}.coffys-woo .cart_totals{width:min(100%,480px)!important;padding:26px;border:1px solid var(--cw-line);background:var(--cw-surface)}.coffys-woo .cart_totals h2{margin:0 0 18px;font-family:var(--co-serif,Georgia,serif);font-size:32px;font-weight:400}.coffys-woo .cart_totals table th,.coffys-woo .cart_totals table td{padding:14px 0!important;border-bottom:1px solid var(--cw-line)!important}.coffys-woo .wc-proceed-to-checkout{padding:20px 0 0!important}.coffys-woo .checkout-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;margin:0!important;font-size:10px!important}

/* =========================================================
   CHECKOUT COFFY'S — STABLE, CLASSIC WOOCOMMERCE
   No custom payment HTML, no forced iframe styles.
   ========================================================= */
.coffys-woo,
.coffys-woo *,
.coffys-woo *::before,
.coffys-woo *::after{box-sizing:border-box}
.coffys-checkout-page{width:100%;max-width:100%;overflow-x:clip}
.coffys-checkout-page .coffys-woo__container,
.coffys-checkout-page .coffys-woo__native,
.coffys-checkout-page .woocommerce,
.coffys-checkout-page form.checkout,
.coffys-checkout-page #customer_details,
.coffys-checkout-page #order_review,
.coffys-checkout-page #payment{min-width:0;max-width:100%}

/* Classic checkout form: only its 3 standard direct children are positioned.
   Other extension-injected children remain full width beneath them. */
.coffys-checkout-page form.woocommerce-checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
  grid-template-areas:"details title" "details review";
  column-gap:clamp(22px,3.2vw,48px);
  row-gap:0;
  align-items:start;
  width:100%;
  margin:0;
}
.coffys-checkout-page form.woocommerce-checkout > #customer_details{
  grid-area:details;
  display:grid;
  gap:18px;
  width:100%!important;
  min-width:0;
  float:none!important;
}
.coffys-checkout-page #customer_details .col-1,
.coffys-checkout-page #customer_details .col-2{
  float:none!important;
  width:100%!important;
  min-width:0;
  margin:0;
  padding:clamp(18px,2.1vw,30px);
  border:1px solid var(--cw-line);
  background:var(--cw-surface);
}
.coffys-checkout-page .woocommerce-billing-fields h3,
.coffys-checkout-page .woocommerce-shipping-fields h3,
.coffys-checkout-page .woocommerce-additional-fields h3,
.coffys-checkout-page #order_review_heading{
  margin:0 0 22px;
  font:400 clamp(26px,2.5vw,35px)/1.15 var(--co-serif,Georgia,serif);
  letter-spacing:-.025em;
  color:var(--cw-text);
}
.coffys-checkout-page form.woocommerce-checkout > #order_review_heading{
  grid-area:title;
  align-self:start;
  position:static!important;
  width:100%;
  min-width:0;
  margin:0!important;
  padding:26px 26px 14px;
  background:var(--cw-surface);
  border:1px solid var(--cw-line);
  border-bottom:0;
}
.coffys-checkout-page form.woocommerce-checkout > #order_review{
  grid-area:review;
  position:static!important;
  top:auto!important;
  align-self:start;
  width:100%;
  min-width:0;
  margin:0!important;
  padding:0 26px 26px;
  border:1px solid var(--cw-line);
  border-top:0;
  background:var(--cw-surface);
}
.coffys-checkout-page form.woocommerce-checkout > :not(#customer_details):not(#order_review_heading):not(#order_review){
  grid-column:1/-1;
  min-width:0;
}
/* Notices inserted into checkout must not move the standard three areas. */

/* Fields: leave real WooCommerce / Select2 interaction intact. */
.coffys-checkout-page .form-row{margin:0 0 17px!important;min-width:0}
.coffys-checkout-page .form-row label{
  display:block;margin:0 0 8px!important;
  color:#b9ada4!important;
  font-size:9px!important;font-weight:700!important;
  letter-spacing:.10em!important;text-transform:uppercase!important;
}
.coffys-checkout-page .woocommerce-input-wrapper{display:block;min-width:0;max-width:100%}
.coffys-checkout-page input.input-text,
.coffys-checkout-page select,
.coffys-checkout-page textarea.input-text,
.coffys-checkout-page .select2-selection{
  max-width:100%!important;
  border:1px solid var(--cw-line)!important;
  border-radius:0!important;
  background:#0b0b0b!important;
  color:#fff!important;
  box-shadow:none!important;
}
.coffys-checkout-page input.input-text,
.coffys-checkout-page select,
.coffys-checkout-page .select2-selection{width:100%!important;min-height:48px!important;padding:0 13px!important}
.coffys-checkout-page textarea.input-text{width:100%!important;min-height:105px!important;padding:13px!important}
.coffys-checkout-page .select2-container{max-width:100%!important;width:100%!important}
.coffys-checkout-page .select2-selection--single .select2-selection__rendered{line-height:46px!important;color:#fff!important;padding-left:0!important}
.coffys-checkout-page .select2-selection--single .select2-selection__arrow{height:46px!important}
.coffys-checkout-page input:focus-visible,
.coffys-checkout-page select:focus-visible,
.coffys-checkout-page textarea:focus-visible{outline:2px solid var(--cw-accent);outline-offset:1px}

/* Order list: gift-card details remain readable and cannot stretch the columns. */
.coffys-checkout-page #order_review .shop_table{
  width:100%!important;
  max-width:100%!important;
  min-width:0;
  table-layout:fixed;
  border:0!important;
  border-collapse:collapse!important;
}
.coffys-checkout-page #order_review .shop_table th,
.coffys-checkout-page #order_review .shop_table td{
  padding:15px 8px!important;
  vertical-align:top;
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
  border-bottom:1px solid var(--cw-line)!important;
}
.coffys-checkout-page #order_review .shop_table th:first-child,
.coffys-checkout-page #order_review .shop_table td:first-child{width:68%;padding-left:0!important;text-align:left}
.coffys-checkout-page #order_review .shop_table th:last-child,
.coffys-checkout-page #order_review .shop_table td:last-child{width:32%;padding-right:0!important;text-align:right}
.coffys-checkout-page #order_review .product-name{font:500 14px/1.5 var(--co-sans,Arial,sans-serif)}
.coffys-checkout-page #order_review .variation,
.coffys-checkout-page #order_review .wc-item-meta{
  display:block;
  min-width:0;
  margin:10px 0 0;
  color:#b9b0a8;
  font-size:11px;
  line-height:1.65;
  overflow-wrap:anywhere;
}
.coffys-checkout-page #order_review .variation dt,
.coffys-checkout-page #order_review .variation dd{float:none!important;display:block;margin:0 0 3px;padding:0;max-width:100%}
.coffys-checkout-page #order_review .variation dt{color:var(--cw-accent);font-weight:600}
.coffys-checkout-page #order_review .variation p{margin:0 0 8px}
.coffys-checkout-page #order_review .order-total td{font-weight:700;color:#fff}

/* Payment: wrap gateways without changing their own secure iframe internals. */
.coffys-checkout-page #payment{
  width:100%;min-width:0;
  margin-top:22px!important;
  border:1px solid var(--cw-line);
  border-radius:0!important;
  background:#0b0b0b!important;
}
.coffys-checkout-page #payment ul.payment_methods{
  width:100%;min-width:0;
  margin:0!important;
  padding:10px 18px!important;
  list-style:none!important;
  border-bottom:1px solid var(--cw-line)!important;
  background:transparent!important;
}
.coffys-checkout-page #payment ul.payment_methods > li{
  position:relative;
  min-width:0;
  margin:0!important;
  padding:15px 0!important;
  list-style:none!important;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.coffys-checkout-page #payment ul.payment_methods > li:last-child{border-bottom:0}
.coffys-checkout-page #payment ul.payment_methods > li::marker{content:""}
.coffys-checkout-page #payment ul.payment_methods > li > input[type="radio"]{
  margin:0 7px 0 0!important;
  vertical-align:middle;
  accent-color:var(--cw-accent);
}
.coffys-checkout-page #payment ul.payment_methods > li > label{
  display:inline;
  font-size:13px!important;
  font-weight:600;
  line-height:1.7;
  letter-spacing:0!important;
  text-transform:none!important;
  color:var(--cw-text)!important;
}
.coffys-checkout-page #payment ul.payment_methods > li > label img{
  display:inline-block;
  width:auto!important;
  height:auto!important;
  max-width:min(110px,70%)!important;
  max-height:26px!important;
  margin:0 4px!important;
  vertical-align:middle;
}
.coffys-checkout-page #payment div.payment_box{
  width:100%;max-width:100%;min-width:0;
  margin:13px 0 0!important;
  padding:14px!important;
  border:1px solid var(--cw-line);
  border-radius:0!important;
  background:#151413!important;
  color:#ded6cf!important;
  font-size:12px;
  line-height:1.6;
  overflow-wrap:anywhere;
}
.coffys-checkout-page #payment div.payment_box::before{display:none!important}
.coffys-checkout-page #payment div.payment_box p{max-width:100%;overflow-wrap:anywhere}
.coffys-checkout-page #payment .payment_box fieldset{min-width:0;max-width:100%}
.coffys-checkout-page #payment .payment_box iframe{max-width:100%}
.coffys-checkout-page #payment .place-order{
  margin:0!important;
  padding:19px 18px!important;
  background:#0d0d0d!important;
  min-width:0;
}
.coffys-checkout-page #place_order{
  display:block;float:none!important;
  width:100%!important;
  min-height:52px!important;
  line-height:1.4!important;
  white-space:normal;
}
.coffys-checkout-page .woocommerce-privacy-policy-text,
.coffys-checkout-page .woocommerce-terms-and-conditions-wrapper{
  max-width:100%;
  color:var(--cw-muted);
  font-size:12px;
  line-height:1.7;
  overflow-wrap:anywhere;
}
.coffys-checkout-page .woocommerce-form-coupon-toggle,
.coffys-checkout-page .woocommerce-form-login-toggle{margin-bottom:16px}
.coffys-checkout-page form.checkout_coupon,
.coffys-checkout-page form.login{
  margin:0 0 24px!important;
  padding:20px!important;
  border:1px solid var(--cw-line)!important;
  border-radius:0!important;
  background:var(--cw-surface)!important;
}

/* Breakpoints: avoid squeezed gateway embeds on tablets. */
@media(max-width:1100px){
  .coffys-checkout-page form.woocommerce-checkout{
    display:flex!important;
    flex-direction:column;
    gap:0;
  }
  .coffys-checkout-page form.woocommerce-checkout > #customer_details,
  .coffys-checkout-page form.woocommerce-checkout > #order_review_heading,
  .coffys-checkout-page form.woocommerce-checkout > #order_review{width:100%!important;max-width:100%}
  .coffys-checkout-page form.woocommerce-checkout > #order_review_heading{
    margin:26px 0 0!important;
    padding:22px 22px 12px;
  }
  .coffys-checkout-page form.woocommerce-checkout > #order_review{padding:0 22px 22px}
}
@media(max-width:700px){
  .coffys-woo__container{width:min(100% - 28px,1320px)}
  .coffys-woo__hero{padding:105px 0 38px}
  .coffys-woo__hero-row{display:block}
  .coffys-woo__count{display:block;margin:16px 0 0}
  .coffys-woo__main{padding:30px 0 80px}
  .coffys-woo__steps{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}
  .coffys-woo__steps::-webkit-scrollbar{display:none}
  .coffys-woo__steps span{flex:0 0 auto}
  .coffys-cart-page .shop_table_responsive tr td{padding:13px 0!important}
  .coffys-cart-page .product-thumbnail{display:none!important}
  .coffys-cart-page .coupon{display:grid!important;grid-template-columns:1fr auto}
  .coffys-cart-page .coupon .input-text{width:100%!important}
  .coffys-cart-page .woocommerce-cart-form td.actions{padding-top:20px!important}
  .coffys-cart-page .woocommerce-cart-form td.actions>button{width:100%!important;margin-top:10px!important}
  .coffys-checkout-page #customer_details .col-1,
  .coffys-checkout-page #customer_details .col-2{padding:18px}
  .coffys-checkout-page form.woocommerce-checkout > #order_review_heading{padding:18px 18px 12px}
  .coffys-checkout-page form.woocommerce-checkout > #order_review{padding:0 18px 18px}
  .coffys-checkout-page #payment ul.payment_methods{padding:8px 12px!important}
  .coffys-checkout-page #payment div.payment_box{padding:12px!important}
}
/* Legacy cart layout preserved, breakpoint aligned with original version. */
@media(min-width:1051px){
  .coffys-cart-page .coffys-woo__native--cart > .woocommerce{
    display:grid;
    grid-template-columns:minmax(0,2fr) minmax(300px,1fr);
    gap:clamp(24px,3vw,46px);
    align-items:start;
  }
  .coffys-cart-page .woocommerce-cart-form{
    grid-column:1;grid-row:1;
    float:none!important;width:100%!important;min-width:0;margin:0!important;
  }
  .coffys-cart-page .cart-collaterals{
    grid-column:2;grid-row:1;
    display:block!important;float:none!important;clear:none!important;
    width:100%!important;min-width:0;margin:0!important;
  }
  .coffys-cart-page .cart-collaterals .cart_totals{
    position:sticky;top:110px;
    float:none!important;width:100%!important;max-width:none!important;margin:0!important;
  }
  .coffys-cart-page .coffys-woo__native--cart > .woocommerce > :not(.woocommerce-cart-form):not(.cart-collaterals){grid-column:1/-1}
}
@media(max-width:1050px){
  .coffys-cart-page .woocommerce-cart-form,
  .coffys-cart-page .cart-collaterals,
  .coffys-cart-page .cart_totals{width:100%!important;float:none!important}
  .coffys-cart-page .cart-collaterals{display:block!important;margin-top:32px}
  .coffys-cart-page .cart_totals{max-width:none!important}
}
@supports not (overflow:clip){.coffys-checkout-page{overflow-x:hidden}}



/* =============================================================
   COFFY'S V5 — PANIER ÉDITORIAL, MÉTADONNÉES COMPACTES
   Correctif scoped exclusivement au panier. Ne modifie pas le
   DOM WooCommerce ni les champs sécurisés de paiement.
   ============================================================= */
.coffys-cart-page .woocommerce-cart-form,
.coffys-cart-page .woocommerce-cart-form table,
.coffys-cart-page .woocommerce-cart-form td.product-name {min-width:0;max-width:100%}
.coffys-cart-page .woocommerce-cart-form table.shop_table {table-layout:fixed!important;border-collapse:collapse!important}
.coffys-cart-page .woocommerce-cart-form table.shop_table th,
.coffys-cart-page .woocommerce-cart-form table.shop_table td {box-sizing:border-box}
.coffys-cart-page .woocommerce-cart-form table.shop_table th {padding:0 7px 14px!important;font-size:8px!important;letter-spacing:.09em!important}
.coffys-cart-page .woocommerce-cart-form table.shop_table td {padding:20px 7px!important;vertical-align:middle!important}
.coffys-cart-page .woocommerce-cart-form th.product-remove,
.coffys-cart-page .woocommerce-cart-form td.product-remove {width:36px!important}
.coffys-cart-page .woocommerce-cart-form th.product-thumbnail,
.coffys-cart-page .woocommerce-cart-form td.product-thumbnail {width:85px!important}
.coffys-cart-page .woocommerce-cart-form th.product-price,
.coffys-cart-page .woocommerce-cart-form td.product-price {width:80px!important}
.coffys-cart-page .woocommerce-cart-form th.product-quantity,
.coffys-cart-page .woocommerce-cart-form td.product-quantity {width:78px!important}
.coffys-cart-page .woocommerce-cart-form th.product-subtotal,
.coffys-cart-page .woocommerce-cart-form td.product-subtotal {width:88px!important}
.coffys-cart-page .woocommerce-cart-form .product-thumbnail img {width:68px!important;height:88px!important;object-fit:cover!important}
.coffys-cart-page .woocommerce-cart-form .product-name {overflow-wrap:anywhere}
.coffys-cart-page .woocommerce-cart-form .product-name > a {display:block;margin:0 0 10px!important;font-size:clamp(20px,1.75vw,28px)!important;line-height:1.15!important;font-weight:400!important}
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation {display:grid!important;grid-template-columns:minmax(65px,95px) minmax(0,1fr);align-items:start;column-gap:8px;row-gap:6px;margin:0!important;padding:0!important;font-size:11px!important;line-height:1.45!important}
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation::before,
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation::after {display:none!important}
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation dt,
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation dd {display:block!important;float:none!important;clear:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;line-height:1.5!important;overflow-wrap:anywhere}
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation dt {font-size:10px!important;letter-spacing:.02em;color:#b79c86!important;font-weight:700!important}
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation dd,
.coffys-cart-page .woocommerce-cart-form .product-name dl.variation dd p {font-size:11px!important;line-height:1.5!important;color:#d9d1ca!important;margin:0!important;overflow-wrap:anywhere}
.coffys-cart-page .woocommerce-cart-form .product-name .wc-item-meta {list-style:none!important;padding:0!important;margin:0!important;font-size:11px!important}
.coffys-cart-page .woocommerce-cart-form .product-name .wc-item-meta li {display:grid!important;grid-template-columns:minmax(65px,95px) minmax(0,1fr);gap:8px;align-items:start;margin:0 0 7px!important;padding:0!important;min-width:0}
.coffys-cart-page .woocommerce-cart-form .product-name .wc-item-meta strong {font-size:10px!important;line-height:1.5!important;color:#b79c86!important}
.coffys-cart-page .woocommerce-cart-form .product-name .wc-item-meta p {font-size:11px!important;line-height:1.5!important;margin:0!important;min-width:0;overflow-wrap:anywhere}
.coffys-cart-page .woocommerce-cart-form td.product-price,
.coffys-cart-page .woocommerce-cart-form td.product-subtotal {font-size:12px!important;line-height:1.45!important;white-space:normal!important;text-align:center;overflow-wrap:normal}
.coffys-cart-page .woocommerce-cart-form td.product-quantity {text-align:center}
.coffys-cart-page .woocommerce-cart-form .quantity .qty {width:58px!important;min-height:42px!important;padding:0 5px!important;text-align:center;font-size:13px!important}
.coffys-cart-page .woocommerce-cart-form td.product-remove a {width:30px!important;height:30px!important;font-size:16px!important;margin-inline:auto}
.coffys-cart-page .woocommerce-cart-form td.actions {padding-top:22px!important}
.coffys-cart-page .woocommerce-cart-form td.actions .coupon {gap:8px!important;flex-wrap:wrap}
.coffys-cart-page .woocommerce-cart-form td.actions .coupon .input-text {width:min(200px,100%)!important}
/* Avec plusieurs détails de carte, la largeur disponible prime sur le ratio. */
@media (min-width:1051px) and (max-width:1299px){
 .coffys-cart-page .coffys-woo__native--cart > .woocommerce {grid-template-columns:minmax(0,1fr)!important}
 .coffys-cart-page .woocommerce-cart-form {grid-column:1!important;grid-row:auto!important}
 .coffys-cart-page .cart-collaterals {grid-column:1!important;grid-row:auto!important;margin-top:22px!important}
 .coffys-cart-page .cart-collaterals .cart_totals {position:static!important;max-width:470px!important;margin-left:auto!important}
}
@media (min-width:1051px){
 .coffys-cart-page .coffys-woo__native--cart > .woocommerce {grid-template-columns:minmax(0,1.85fr) minmax(280px,.95fr);gap:clamp(20px,2.3vw,36px)}
}
/* Sur tablettes et petits écrans : préserver les libellés WooCommerce */
@media (max-width:1050px){
 .coffys-cart-page .woocommerce-cart-form table.shop_table {table-layout:auto!important}
 .coffys-cart-page .woocommerce-cart-form table.shop_table td.product-name {padding:14px 0!important}
 .coffys-cart-page .woocommerce-cart-form td.product-price,
 .coffys-cart-page .woocommerce-cart-form td.product-subtotal {text-align:right}
}
@media (max-width:700px){
 .coffys-cart-page .woocommerce-cart-form table.shop_table tr.cart_item {display:block;padding:16px 0;border-bottom:1px solid var(--cw-line)}
 .coffys-cart-page .woocommerce-cart-form table.shop_table tr.cart_item td {box-sizing:border-box;padding:7px 0!important;border:0!important}
 .coffys-cart-page .woocommerce-cart-form table.shop_table tr.cart_item td.product-name {padding:12px 0!important}
 .coffys-cart-page .woocommerce-cart-form .product-name > a {font-size:25px!important}
 .coffys-cart-page .woocommerce-cart-form .product-name dl.variation {grid-template-columns:minmax(76px,100px) minmax(0,1fr)}
 .coffys-cart-page .woocommerce-cart-form .product-quantity {text-align:right!important}
 .coffys-cart-page .woocommerce-cart-form .product-thumbnail {display:none!important}
 .coffys-cart-page .woocommerce-cart-form .product-remove a {margin:0 0 0 auto!important}
}


/* =========================================================
   COFFY'S — LOADER PANIER & COMMANDE (V6)
   Ajout isolé sans changer la mise en page V5.
   ========================================================= */
.coffys-wait-screen {
  position: fixed;
  inset: 0;
  z-index: 2147482000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(5, 5, 5, .88);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #f4efe9;
  opacity: 0;
  visibility: hidden;
  pointer-events: none; /* Ne bloque jamais un challenge 3-D Secure ou une fenêtre PayPal. */
  transition: opacity .22s ease, visibility .22s ease;
}
.coffys-wait-screen.is-visible { opacity: 1; visibility: visible; }
.coffys-wait-screen__panel {
  width: min(420px, 100%);
  text-align: center;
  padding: clamp(32px, 6vw, 56px) 24px;
  border: 1px solid rgba(183, 156, 134, .35);
  background: #10100f;
  box-shadow: 0 22px 80px rgba(0, 0, 0, .55);
  font-family: var(--co-sans, Arial, sans-serif);
}
.coffys-wait-screen__ring {
  display: block;
  margin: 0 auto 24px;
  width: 64px;
  height: 64px;
  border: 2px solid rgba(183, 156, 134, .2);
  border-top-color: #b79c86;
  border-radius: 50%;
  animation: coffys-wait-rotate .85s linear infinite;
}
.coffys-wait-screen__eyebrow { display: block; margin-bottom: 12px; color: #b79c86; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; }
.coffys-wait-screen__title { margin: 0; color: #f4efe9; font: 400 clamp(28px, 5vw, 42px)/1.1 var(--co-serif, Georgia, serif); }
.coffys-wait-screen__detail { margin: 16px 0 0; color: #bfb4aa; font-size: 13px; line-height: 1.6; }
@keyframes coffys-wait-rotate { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .coffys-wait-screen { transition: none; }
  .coffys-wait-screen__ring { animation-duration: 2s; }
}
