/* CK — carrito / checkout / pago de pedido, estilo configurador (erp.clienty.es/personalizar).
   Solo se carga con body.ck-nuevo (vista previa o flag global). Sustituye a la piel cwd en estas páginas. */

body.ck-nuevo {
  --ck-ink: #111110; --ck-mute: #6b6b66; --ck-faint: #9a9a92;
  --ck-line: #d2d2d7; --ck-line-soft: rgba(17,17,16,.08); --ck-hover: #86868b;
  --ck-soft: #F5F5F7; --ck-green: #15803D; --ck-green-bg: #DCFCE7; --ck-blue: #0055FF; --ck-red: #e11d48;
  --ck-font: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "SF Pro Display", Inter, "Segoe UI", system-ui, sans-serif;
  background: #fff !important;
}
body.ck-nuevo .page-header,
body.ck-nuevo .cwd-steps { display: none !important; }
body.ck-nuevo.ck-checkout .cwd-header nav,
body.ck-nuevo.ck-checkout .cwd-header ul.menu,
body.ck-nuevo.ck-pago .cwd-header nav { display: none !important; }

html body.ck-nuevo div.woocommerce {
  font-family: var(--ck-font); color: var(--ck-ink);
  /* el frame cwd fuerza width/max-width inline con !important: se centra con padding */
  margin: 0 auto !important; padding: 40px max(24px, calc((100% - 1072px) / 2)) 110px !important;
  -webkit-font-smoothing: antialiased; box-sizing: border-box;
}
body.ck-nuevo div.woocommerce *, body.ck-nuevo div.woocommerce *::before, body.ck-nuevo div.woocommerce *::after { box-sizing: border-box; }
body.ck-nuevo div.woocommerce::before, body.ck-nuevo div.woocommerce::after { content: none !important; display: none !important; }
body.ck-nuevo div.woocommerce a { color: var(--ck-ink); }

/* --- Títulos ----------------------------------------------------------- */
body.ck-nuevo .ck-titulo { grid-column: 1 / -1; margin: 0 0 30px; }
body.ck-nuevo .ck-titulo h1 {
  font-family: var(--ck-font); font-size: clamp(30px, 4vw, 44px); font-weight: 800; letter-spacing: -.03em;
  line-height: 1.08; color: var(--ck-ink); margin: 0; padding: 0;
}
body.ck-nuevo .ck-titulo h1 span, body.ck-nuevo .ck-sec span { color: var(--ck-mute); }
body.ck-nuevo .ck-sec {
  font-family: var(--ck-font); font-size: 22px; font-weight: 650; letter-spacing: -.01em; line-height: 1.25;
  color: var(--ck-ink); margin: 0 0 16px; padding: 0; border: 0; text-transform: none;
}
body.ck-nuevo .ck-sec--pago { margin-top: 34px; }

/* --- Avisos ------------------------------------------------------------ */
body.ck-nuevo .woocommerce-notices-wrapper:empty { display: none; }
body.ck-nuevo .woocommerce-message, body.ck-nuevo .woocommerce-info, body.ck-nuevo .woocommerce-error {
  font-family: var(--ck-font); background: var(--ck-soft) !important; color: var(--ck-ink) !important;
  border: 0 !important; border-radius: 14px !important; padding: 14px 18px !important; margin: 0 0 18px !important;
  font-size: 14px; line-height: 1.5; list-style: none;
}
body.ck-nuevo .woocommerce-error { background: #FEF2F2 !important; color: #991B1B !important; }
body.ck-nuevo .woocommerce-message::before, body.ck-nuevo .woocommerce-info::before, body.ck-nuevo .woocommerce-error::before { display: none !important; }
body.ck-nuevo .woocommerce-message .button, body.ck-nuevo .woocommerce-info .button {
  float: right; background: none !important; color: var(--ck-ink) !important; padding: 0 !important;
  font-weight: 600; text-decoration: underline; border: 0 !important; font-size: 14px;
}

/* --- Campos ------------------------------------------------------------ */
body.ck-nuevo form .form-row { margin: 0 0 14px !important; padding: 0 !important; float: none !important; width: auto !important; }
body.ck-nuevo form .form-row label:not(.checkbox):not(.woocommerce-form__label-for-checkbox) {
  display: block; font-size: 13px; font-weight: 600; color: var(--ck-ink); margin: 0 0 6px; line-height: 1.3;
}
body.ck-nuevo form .form-row label.screen-reader-text { position: absolute !important; clip: rect(1px,1px,1px,1px); height: 1px; width: 1px; overflow: hidden; margin: 0; }
body.ck-nuevo form .form-row .required { color: var(--ck-mute); text-decoration: none; border: 0; }
body.ck-nuevo form .form-row .optional { color: var(--ck-faint); font-weight: 500; }
body.ck-nuevo form .form-row input.input-text,
body.ck-nuevo form .form-row textarea,
body.ck-nuevo form .form-row select,
body.ck-nuevo .quantity input.qty {
  width: 100%; font-family: var(--ck-font); font-size: 15px; color: var(--ck-ink); background: #fff;
  border: 1px solid var(--ck-line) !important; border-radius: 12px !important; padding: 13px 16px !important;
  min-height: 48px; box-shadow: none !important; outline: 0; transition: border-color .12s ease, box-shadow .12s ease;
}
body.ck-nuevo form .form-row textarea { min-height: 88px; line-height: 1.45; }
body.ck-nuevo form .form-row input.input-text:hover, body.ck-nuevo form .form-row textarea:hover { border-color: var(--ck-hover) !important; }
body.ck-nuevo form .form-row input.input-text:focus, body.ck-nuevo form .form-row textarea:focus, body.ck-nuevo form .form-row select:focus {
  border-color: var(--ck-ink) !important; box-shadow: 0 0 0 3px rgba(17,17,16,.08) !important;
}
body.ck-nuevo form .form-row.woocommerce-invalid input.input-text,
body.ck-nuevo form .form-row.woocommerce-invalid .select2-selection { border-color: var(--ck-red) !important; }
body.ck-nuevo form .form-row.woocommerce-validated input.input-text { border-color: var(--ck-line) !important; }
body.ck-nuevo .select2-container .select2-selection--single {
  height: 48px !important; border: 1px solid var(--ck-line) !important; border-radius: 12px !important; background: #fff !important;
}
body.ck-nuevo .select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 46px !important; padding-left: 16px !important; font-size: 15px; color: var(--ck-ink); font-family: var(--ck-font);
}
body.ck-nuevo .select2-container .select2-selection--single .select2-selection__arrow { height: 46px !important; right: 10px !important; }
body.ck-nuevo .select2-dropdown { border-color: var(--ck-line) !important; border-radius: 12px !important; overflow: hidden; font-family: var(--ck-font); }
body.ck-nuevo input[type=checkbox] { accent-color: var(--ck-ink); width: 18px; height: 18px; vertical-align: -3px; margin: 0 8px 0 0; }

/* =========================== CHECKOUT ================================== */
body.ck-nuevo.ck-checkout form.checkout {
  display: grid !important; grid-template-columns: minmax(0,1fr) 400px; column-gap: 56px; row-gap: 0;
  align-items: start; margin: 0 !important; padding: 0 !important; background: none !important; max-width: none !important;
}
body.ck-nuevo.ck-checkout form.checkout > * { grid-column: 1; min-width: 0; }
body.ck-nuevo.ck-checkout form.checkout::before, body.ck-nuevo.ck-checkout form.checkout::after { content: none !important; display: none !important; }
body.ck-nuevo.ck-checkout form.checkout > wc-order-attribution-inputs { display: none; }
body.ck-nuevo.ck-checkout #order_review { display: contents; }
body.ck-nuevo.ck-checkout #order_review_heading { display: none !important; }

/* Datos */
body.ck-nuevo #customer_details.col2-set { width: 100% !important; float: none !important; margin: 0 !important; }
body.ck-nuevo #customer_details .col-1, body.ck-nuevo #customer_details .col-2 { width: 100% !important; float: none !important; max-width: none !important; padding: 0 !important; }
body.ck-nuevo #customer_details::before, body.ck-nuevo #customer_details::after { content: none !important; }
body.ck-nuevo .woocommerce-billing-fields > h3 { display: none !important; }
body.ck-nuevo .woocommerce-billing-fields__field-wrapper,
body.ck-nuevo .woocommerce-shipping-fields__field-wrapper {
  display: grid; grid-template-columns: 1fr 1fr; column-gap: 14px;
  border: 1px solid var(--ck-line); border-radius: 18px; padding: 22px 22px 8px; background: #fff;
}
body.ck-nuevo .woocommerce-billing-fields__field-wrapper > *,
body.ck-nuevo .woocommerce-shipping-fields__field-wrapper > * { grid-column: 1 / -1; }
body.ck-nuevo .woocommerce-billing-fields__field-wrapper > .form-row-first,
body.ck-nuevo .woocommerce-shipping-fields__field-wrapper > .form-row-first,
body.ck-nuevo #billing_postcode_field, body.ck-nuevo #shipping_postcode_field { grid-column: 1; }
body.ck-nuevo .woocommerce-billing-fields__field-wrapper > .form-row-last,
body.ck-nuevo .woocommerce-shipping-fields__field-wrapper > .form-row-last,
body.ck-nuevo #billing_city_field, body.ck-nuevo #shipping_city_field { grid-column: 2; }
body.ck-nuevo #billing_address_2_field, body.ck-nuevo #shipping_address_2_field { margin-top: -6px !important; }
body.ck-nuevo .woocommerce-shipping-fields { margin-top: 14px; }
body.ck-nuevo #ship-to-different-address {
  font-family: var(--ck-font); font-size: 15px !important; font-weight: 600 !important; text-transform: none !important;
  letter-spacing: 0 !important; color: var(--ck-ink) !important; margin: 0 0 12px !important; padding: 0 !important; border: 0 !important;
}
body.ck-nuevo #ship-to-different-address label { display: flex; align-items: center; cursor: pointer; font-size: 15px; font-weight: 600; }
body.ck-nuevo .woocommerce-additional-fields { margin-top: 14px; }
body.ck-nuevo .woocommerce-additional-fields > h3 { display: none !important; }

/* Resumen (tabla de revisión) como tarjeta fija a la derecha */
body.ck-nuevo.ck-checkout table.woocommerce-checkout-review-order-table {
  grid-column: 2; grid-row: 1 / span 30; align-self: start; position: sticky; top: 86px;
  width: 100%; margin: 0 !important; background: #fff; font-family: var(--ck-font);
  border: 1px solid var(--ck-line) !important; border-radius: 18px !important; border-collapse: separate !important; border-spacing: 0;
  padding: 8px 22px 14px !important; box-shadow: none;
}
body.ck-nuevo table.woocommerce-checkout-review-order-table thead { display: none; }
body.ck-nuevo table.woocommerce-checkout-review-order-table th,
body.ck-nuevo table.woocommerce-checkout-review-order-table td {
  border: 0 !important; border-top: 1px solid var(--ck-line-soft) !important; padding: 13px 0 !important; background: none !important;
  font-size: 14px; line-height: 1.4; color: var(--ck-ink); vertical-align: top; text-transform: none; letter-spacing: 0; font-weight: 500;
}
body.ck-nuevo table.woocommerce-checkout-review-order-table td:last-child,
body.ck-nuevo table.woocommerce-checkout-review-order-table th + td { text-align: right; padding-left: 14px !important; }
body.ck-nuevo table.woocommerce-checkout-review-order-table tr.ck-res-head td {
  border-top: 0 !important; text-align: left !important; padding: 12px 0 8px !important; font-size: 18px; font-weight: 700; letter-spacing: -.01em;
}
body.ck-nuevo tr.ck-res-head td span { font-size: 13px; font-weight: 500; color: var(--ck-mute); margin-left: 6px; }
body.ck-nuevo table.woocommerce-checkout-review-order-table .cart_item td.product-name { font-weight: 600; text-align: left !important; padding-left: 0 !important; }
body.ck-nuevo table.woocommerce-checkout-review-order-table .product-quantity { color: var(--ck-mute); font-weight: 600; }
body.ck-nuevo table.woocommerce-checkout-review-order-table .cart_item td.product-total { white-space: nowrap; font-weight: 600; }
body.ck-nuevo table.woocommerce-checkout-review-order-table tfoot th { color: var(--ck-mute); font-weight: 500; text-align: left; }
body.ck-nuevo table.woocommerce-checkout-review-order-table #shipping_method { list-style: none; margin: 0; padding: 0; }
body.ck-nuevo table.woocommerce-checkout-review-order-table #shipping_method li { margin: 0; padding: 0; text-indent: 0; }
body.ck-nuevo table.woocommerce-checkout-review-order-table #shipping_method label { font-weight: 500; }
body.ck-nuevo table.woocommerce-checkout-review-order-table tr.order-total th { color: var(--ck-ink); font-size: 15px; font-weight: 700; padding-top: 16px !important; }
body.ck-nuevo table.woocommerce-checkout-review-order-table tr.order-total td { padding-top: 12px !important; }
body.ck-nuevo table.woocommerce-checkout-review-order-table tr.order-total td strong,
body.ck-nuevo table.woocommerce-checkout-review-order-table tr.order-total .woocommerce-Price-amount { font-size: 26px; font-weight: 800; letter-spacing: -.02em; }
body.ck-nuevo table.woocommerce-checkout-review-order-table tr.order-total small { display: block; font-size: 12px; color: var(--ck-mute); font-weight: 500; }

/* Ahorro */
body.ck-nuevo tr.ck-ahorro td { border-top: 0 !important; padding: 0 0 10px !important; text-align: right !important; }
body.ck-nuevo .ck-pill {
  display: inline-block; background: var(--ck-green-bg); color: var(--ck-green); font-size: 12px; font-weight: 800;
  border-radius: 99px; padding: 4px 11px; letter-spacing: .01em; text-transform: uppercase; white-space: nowrap;
}
body.ck-nuevo .ck-pill .woocommerce-Price-amount { color: inherit; font-size: inherit; font-weight: inherit; }
body.ck-nuevo .ck-ahorro-txt { display: block; font-size: 12px; color: var(--ck-mute); margin-top: 4px; }

/* --- Métodos de pago como tarjetas --------------------------------------- */
body.ck-nuevo #payment { background: transparent !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important; font-family: var(--ck-font); }
body.ck-nuevo #payment ul.payment_methods {
  display: flex; flex-direction: column; gap: 10px; list-style: none; margin: 0 0 22px !important; padding: 0 !important; border: 0 !important;
}
body.ck-nuevo #payment ul.payment_methods::before, body.ck-nuevo #payment ul.payment_methods::after { display: none !important; }
body.ck-nuevo #payment ul.payment_methods > li {
  position: relative; list-style: none; margin: 0 !important; padding: 0 !important; background: #fff;
  border: 1px solid var(--ck-line); border-radius: 14px; transition: border-color .12s ease; line-height: 1.4; text-align: left;
}
body.ck-nuevo #payment ul.payment_methods > li:hover { border-color: var(--ck-hover); }
body.ck-nuevo #payment ul.payment_methods > li.ck-sel,
body.ck-nuevo #payment ul.payment_methods > li:has(> input.input-radio:checked) { border: 2px solid var(--ck-ink); }
body.ck-nuevo #payment ul.payment_methods > li > input.input-radio {
  position: absolute !important; opacity: 0 !important; width: 1px !important; height: 1px !important; margin: 0 !important; left: 18px; top: 22px; pointer-events: none;
}
body.ck-nuevo #payment ul.payment_methods > li > label {
  display: flex !important; flex-wrap: wrap; align-items: center; gap: 2px 10px; margin: 0 !important; padding: 16px 18px !important;
  cursor: pointer; font-size: 15px !important; font-weight: 700 !important; color: var(--ck-ink) !important; width: 100%;
}
body.ck-nuevo #payment ul.payment_methods > li.ck-sel > label,
body.ck-nuevo #payment ul.payment_methods > li:has(> input.input-radio:checked) > label { padding: 15px 17px !important; }
body.ck-nuevo #payment ul.payment_methods > li > label img { max-height: 20px !important; width: auto; margin: 0 !important; float: none !important; vertical-align: middle; }
body.ck-nuevo #payment ul.payment_methods > li > label .ck-pm-tag { margin-left: auto; font-size: 14px; font-weight: 600; white-space: nowrap; }
body.ck-nuevo #payment ul.payment_methods > li > label .ck-pm-sub { flex-basis: 100%; font-size: 13px; font-weight: 500; color: var(--ck-mute); }
body.ck-nuevo #payment .payment_box {
  background: var(--ck-soft) !important; color: var(--ck-ink) !important; border-radius: 12px !important;
  margin: 0 14px 14px !important; padding: 14px 16px !important; font-size: 14px !important; width: auto !important; max-width: none !important;
}
body.ck-nuevo #payment .payment_box::before { display: none !important; }
body.ck-nuevo #payment .payment_box p:last-child { margin-bottom: 0; }
body.ck-nuevo #payment #wc-stripe-card-element, body.ck-nuevo #payment .wc-stripe-card-element {
  background: #fff; border: 1px solid var(--ck-line) !important; border-radius: 12px !important; padding: 14px 16px !important;
}
body.ck-nuevo #payment .woocommerce-SavedPaymentMethods { list-style: none; margin: 0 0 10px; padding: 0; }
body.ck-nuevo #payment .woocommerce-SavedPaymentMethods-saveNew label { font-size: 13px; font-weight: 500; }

/* Términos + botón */
body.ck-nuevo #payment .place-order { padding: 0 !important; margin: 0 !important; background: none !important; }
body.ck-nuevo .woocommerce-terms-and-conditions-wrapper { font-size: 13px; color: var(--ck-mute); margin: 0 0 16px; line-height: 1.5; }
body.ck-nuevo .woocommerce-terms-and-conditions-wrapper .form-row { margin: 8px 0 0 !important; }
body.ck-nuevo .woocommerce-terms-and-conditions-wrapper label.checkbox { display: flex !important; align-items: flex-start; gap: 0; font-size: 14px; color: var(--ck-ink); font-weight: 500; cursor: pointer; }
body.ck-nuevo .woocommerce-terms-and-conditions-wrapper a { text-decoration: underline; }
body.ck-nuevo .woocommerce-terms-and-conditions { border: 1px solid var(--ck-line); border-radius: 12px; padding: 14px; background: #fff; }
body.ck-nuevo #place_order,
body.ck-nuevo .wc-proceed-to-checkout a.checkout-button {
  display: block; width: 100% !important; float: none !important; background: var(--ck-ink) !important; color: #fff !important;
  font-family: var(--ck-font); font-size: 16px !important; font-weight: 700 !important; letter-spacing: 0; text-transform: none;
  border: 0 !important; border-radius: 99px !important; padding: 17px 26px !important; margin: 0 !important; line-height: 1.2;
  cursor: pointer; text-align: center; text-decoration: none !important; box-shadow: none !important;
  position: relative; overflow: hidden; transition: background .12s ease;
}
body.ck-nuevo #place_order:hover, body.ck-nuevo .wc-proceed-to-checkout a.checkout-button:hover { background: #2a2a28 !important; }
body.ck-nuevo #place_order::after, body.ck-nuevo .wc-proceed-to-checkout a.checkout-button::after, body.ck-nuevo .ck-shine::after {
  content: ""; position: absolute; top: 0; left: -70%; width: 45%; height: 100%; pointer-events: none;
  background: linear-gradient(100deg, transparent, rgba(255,255,255,.28), transparent); animation: ckShine 3.2s ease-in-out infinite;
}
@keyframes ckShine { 0% { left: -70%; } 55% { left: 130%; } 100% { left: 130%; } }
@media (prefers-reduced-motion: reduce) { body.ck-nuevo #place_order::after, body.ck-nuevo .ck-shine::after, body.ck-nuevo .wc-proceed-to-checkout a.checkout-button::after { animation: none; display: none; } }
body.ck-nuevo .cwd-trust {
  list-style: none; margin: 14px 0 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 16px;
  font-size: 12.5px; color: var(--ck-mute);
}
body.ck-nuevo .cwd-trust li { margin: 0 !important; padding: 0 !important; }
body.ck-nuevo .cwd-trust li::before { content: "\2713\00a0"; color: var(--ck-green); font-weight: 700; }

/* =========================== CARRITO =================================== */
body.ck-nuevo.ck-carrito div.woocommerce { display: grid; grid-template-columns: minmax(0,1fr) 380px; column-gap: 56px; align-items: start; }
body.ck-nuevo.ck-carrito div.woocommerce > * { grid-column: 1 / -1; min-width: 0; }
body.ck-nuevo.ck-carrito div.woocommerce > form.woocommerce-cart-form { grid-column: 1; }
body.ck-nuevo.ck-carrito div.woocommerce > .cart-collaterals { grid-column: 2; position: sticky; top: 86px; width: auto !important; float: none !important; }
body.ck-nuevo.ck-carrito .cwd-keep-shopping { display: inline-block; font-size: 14px; font-weight: 600; color: var(--ck-mute) !important; text-decoration: none; margin: 0 0 14px; }
body.ck-nuevo.ck-carrito .cwd-keep-shopping:hover { color: var(--ck-ink) !important; }
body.ck-nuevo.ck-carrito table.cart { display: block; width: 100%; border: 0 !important; margin: 0 !important; background: none; border-collapse: separate; }
body.ck-nuevo.ck-carrito table.cart thead { display: none; }
body.ck-nuevo.ck-carrito table.cart tbody { display: flex; flex-direction: column; gap: 10px; }
body.ck-nuevo.ck-carrito table.cart tr.cart_item {
  display: grid; grid-template-columns: 76px minmax(0,1fr) auto auto; grid-template-areas: "thumb name name remove" "thumb price qty subtotal";
  column-gap: 16px; row-gap: 8px; align-items: center; border: 1px solid var(--ck-line); border-radius: 14px; padding: 16px 18px; background: #fff;
}
body.ck-nuevo.ck-carrito table.cart tr.cart_item td { display: block !important; border: 0 !important; padding: 0 !important; background: none !important; text-align: left !important; font-size: 14px; }
body.ck-nuevo.ck-carrito table.cart tr.cart_item td::before { display: none !important; }
body.ck-nuevo.ck-carrito td.product-remove { grid-area: remove; justify-self: end; align-self: start; }
body.ck-nuevo.ck-carrito td.product-remove a.remove {
  display: inline-flex !important; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 99px !important;
  color: var(--ck-mute) !important; font-size: 20px; line-height: 1; background: transparent; text-decoration: none; font-weight: 400;
}
body.ck-nuevo.ck-carrito td.product-remove a.remove:hover { background: var(--ck-soft) !important; color: var(--ck-ink) !important; }
body.ck-nuevo.ck-carrito td.product-thumbnail { grid-area: thumb; width: auto !important; }
body.ck-nuevo.ck-carrito td.product-thumbnail img { width: 76px !important; height: 76px; object-fit: cover; border-radius: 10px; background: #f6f6f4; display: block; }
body.ck-nuevo.ck-carrito td.product-name { grid-area: name; font-size: 15px !important; font-weight: 700; line-height: 1.35; }
body.ck-nuevo.ck-carrito td.product-name a { text-decoration: none; font-weight: 700; }
body.ck-nuevo.ck-carrito td.product-name dl.variation { margin: 4px 0 0; font-size: 13px; color: var(--ck-mute); font-weight: 500; }
body.ck-nuevo.ck-carrito td.product-price { grid-area: price; color: var(--ck-mute); font-weight: 500; }
body.ck-nuevo.ck-carrito td.product-price::after { content: " / ud."; }
body.ck-nuevo.ck-carrito td.product-quantity { grid-area: qty; }
body.ck-nuevo.ck-carrito .quantity input.qty { width: 74px !important; min-height: 40px; padding: 8px 10px !important; text-align: center; border-radius: 99px !important; }
body.ck-nuevo.ck-carrito td.product-subtotal { grid-area: subtotal; font-size: 16px !important; font-weight: 700; text-align: right !important; min-width: 84px; }
body.ck-nuevo.ck-carrito table.cart tr:not(.cart_item) { display: block; }
body.ck-nuevo.ck-carrito table.cart td.actions { display: flex !important; justify-content: flex-end; gap: 10px; border: 0 !important; padding: 4px 0 0 !important; background: none; }
body.ck-nuevo.ck-carrito table.cart td.actions .coupon { display: flex; gap: 8px; margin-right: auto; }
body.ck-nuevo.ck-carrito table.cart td.actions .coupon input.input-text { border: 1px solid var(--ck-line) !important; border-radius: 99px !important; padding: 11px 18px !important; width: 240px; }
body.ck-nuevo.ck-carrito table.cart td.actions .button,
body.ck-nuevo .ck-ghost {
  background: #fff !important; color: var(--ck-ink) !important; font-family: var(--ck-font); font-weight: 600 !important; font-size: 14px !important;
  border: 1.5px solid var(--ck-line) !important; border-radius: 99px !important; padding: 11px 22px !important; cursor: pointer;
}
body.ck-nuevo.ck-carrito table.cart td.actions .button:disabled, body.ck-nuevo.ck-carrito table.cart td.actions .button[disabled] { opacity: .45; cursor: default; }

body.ck-nuevo.ck-carrito .cart-collaterals .cart_totals {
  width: 100% !important; float: none !important; border: 1px solid var(--ck-line); border-radius: 18px; padding: 20px 22px 22px; background: #fff; font-family: var(--ck-font);
}
body.ck-nuevo.ck-carrito .cart_totals > h2 { font-family: var(--ck-font); font-size: 18px !important; font-weight: 700 !important; letter-spacing: -.01em; text-transform: none !important; color: var(--ck-ink) !important; margin: 0 0 6px !important; }
body.ck-nuevo.ck-carrito .cart_totals table.shop_table { border: 0 !important; margin: 0 0 16px !important; width: 100%; border-collapse: collapse; }
body.ck-nuevo.ck-carrito .cart_totals table.shop_table th,
body.ck-nuevo.ck-carrito .cart_totals table.shop_table td {
  border: 0 !important; border-top: 1px solid var(--ck-line-soft) !important; padding: 12px 0 !important; font-size: 14px; background: none !important;
  vertical-align: top; color: var(--ck-ink); font-weight: 500; text-transform: none; letter-spacing: 0;
}
body.ck-nuevo.ck-carrito .cart_totals table.shop_table th { color: var(--ck-mute); text-align: left; width: 40%; }
body.ck-nuevo.ck-carrito .cart_totals table.shop_table td { text-align: right; }
body.ck-nuevo.ck-carrito .cart_totals table.shop_table td::before { display: none !important; }
/* Woo en pantallas pequeñas oculta los <th> del resumen (shop_table_responsive): los recuperamos */
body.ck-nuevo.ck-carrito .cart_totals table.shop_table_responsive tr { display: table-row !important; }
body.ck-nuevo.ck-carrito .cart_totals table.shop_table_responsive tr th,
body.ck-nuevo.ck-carrito .cart_totals table.shop_table_responsive tr td { display: table-cell !important; }
body.ck-nuevo.ck-carrito .cart_totals #shipping_method { list-style: none; margin: 0; padding: 0; }
body.ck-nuevo.ck-carrito .cart_totals .woocommerce-shipping-destination { font-size: 12.5px; color: var(--ck-mute); margin: 4px 0 0; }
body.ck-nuevo.ck-carrito .cart_totals .shipping-calculator-button { font-size: 12.5px; font-weight: 600; }
body.ck-nuevo.ck-carrito .cart_totals .shipping-calculator-button::after { display: none; }
body.ck-nuevo.ck-carrito .cart_totals .shipping-calculator-form { text-align: left; margin-top: 10px; }
body.ck-nuevo.ck-carrito .cart_totals .shipping-calculator-form button.button { background: var(--ck-ink) !important; color: #fff !important; border-radius: 99px !important; padding: 10px 18px !important; border: 0 !important; }
body.ck-nuevo.ck-carrito .cart_totals tr.order-total th { color: var(--ck-ink); font-weight: 700; font-size: 15px; padding-top: 16px !important; }
body.ck-nuevo.ck-carrito .cart_totals tr.order-total td strong,
body.ck-nuevo.ck-carrito .cart_totals tr.order-total .woocommerce-Price-amount { font-size: 26px; font-weight: 800; letter-spacing: -.02em; }
body.ck-nuevo.ck-carrito .cart_totals tr.order-total small { display: block; font-size: 12px; color: var(--ck-mute); font-weight: 500; }
body.ck-nuevo.ck-carrito .wc-proceed-to-checkout { padding: 0 !important; margin: 0 !important; }
body.ck-nuevo.ck-carrito .wc-proceed-to-checkout a.checkout-button { margin: 0 0 10px !important; }
body.ck-nuevo.ck-carrito .cwd-cta-total .woocommerce-Price-amount { color: #fff !important; font-weight: inherit; font-size: inherit; }
body.ck-nuevo.ck-carrito .cwd-trust-line { font-size: 12.5px; color: var(--ck-mute); text-align: center; margin: 4px 0 0; }
body.ck-nuevo.ck-carrito .cross-sells { margin-top: 26px; }
body.ck-nuevo.ck-carrito .cart-empty, body.ck-nuevo.ck-carrito .return-to-shop { grid-column: 1 / -1; }
body.ck-nuevo.ck-carrito .return-to-shop .button { background: var(--ck-ink) !important; color: #fff !important; border-radius: 99px !important; padding: 14px 26px !important; font-weight: 700; }

/* =========================== PAGO DE PEDIDO ============================ */
html body.ck-nuevo.ck-pago div.woocommerce { padding-left: max(24px, calc((100% - 712px) / 2)) !important; padding-right: max(24px, calc((100% - 712px) / 2)) !important; }
body.ck-nuevo.ck-pago form#order_review > table.shop_table {
  width: 100%; border: 1px solid var(--ck-line) !important; border-radius: 18px !important; border-collapse: separate !important; border-spacing: 0;
  padding: 8px 22px 12px; margin: 0 0 8px !important; background: #fff; font-family: var(--ck-font);
}
body.ck-nuevo.ck-pago form#order_review > table.shop_table th,
body.ck-nuevo.ck-pago form#order_review > table.shop_table td {
  border: 0 !important; border-top: 1px solid var(--ck-line-soft) !important; padding: 12px 0 !important; font-size: 14px; background: none !important; color: var(--ck-ink);
}
body.ck-nuevo.ck-pago form#order_review > table.shop_table thead th { border-top: 0 !important; color: var(--ck-mute); font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
body.ck-nuevo.ck-pago form#order_review > table.shop_table td.product-name { font-weight: 600; }
body.ck-nuevo.ck-pago form#order_review > table.shop_table td.product-total,
body.ck-nuevo.ck-pago form#order_review > table.shop_table td.product-subtotal,
body.ck-nuevo.ck-pago form#order_review > table.shop_table th.product-total { text-align: right; }
body.ck-nuevo.ck-pago form#order_review > table.shop_table tfoot tr:last-child th,
body.ck-nuevo.ck-pago form#order_review > table.shop_table tfoot tr:last-child td { font-size: 16px; font-weight: 800; }

/* =========================== BARRA SUPERIOR ============================ */
#ckBarra {
  position: fixed; top: 0; left: 0; right: 0; z-index: 99990; font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  background: rgba(255,255,255,.94); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(17,17,16,.08); box-shadow: 0 6px 24px rgba(17,17,16,.07);
  display: flex; align-items: center; gap: 16px; padding: 10px max(22px, calc((100vw - 1120px) / 2 + 24px));
  transform: translateY(-110%); transition: transform .25s ease; color: #111110;
}
#ckBarra.ck-on { transform: translateY(0); }
#ckBarra .ckb-nom { min-width: 0; }
#ckBarra .ckb-nom p { font-size: 14px; font-weight: 800; line-height: 1.15; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#ckBarra .ckb-ahorro { display: block; font-size: 11.5px; color: #15803D; font-weight: 700; white-space: nowrap; }
#ckBarra .ckb-ahorro[hidden] { display: none; }
#ckBarra .ckb-tot { margin-left: auto; white-space: nowrap; }
#ckBarra .ckb-g, #ckBarra .ckb-g .woocommerce-Price-amount { font-size: 19px; font-weight: 800; letter-spacing: -.01em; color: #111110; }
#ckBarra .ckb-g small { display: none; }
#ckBarra .ckb-cta {
  position: relative; overflow: hidden; background: #0055FF; color: #fff !important; font-family: inherit; font-weight: 800; font-size: 14px;
  border: 0; border-radius: 99px; padding: 11px 22px; white-space: nowrap; cursor: pointer; text-decoration: none; line-height: 1.2;
}
#ckBarra .ckb-cta:hover { background: #0047d6; }

/* =========================== RESPONSIVE =============================== */
@media (max-width: 900px) {
  html body.ck-nuevo div.woocommerce { padding: 26px 16px 90px !important; }
  body.ck-nuevo.ck-checkout form.checkout { grid-template-columns: minmax(0,1fr); }
  body.ck-nuevo.ck-checkout table.woocommerce-checkout-review-order-table { grid-column: 1; grid-row: auto; position: static; margin-top: 22px !important; }
  body.ck-nuevo.ck-carrito div.woocommerce { grid-template-columns: minmax(0,1fr); }
  body.ck-nuevo.ck-carrito div.woocommerce > form.woocommerce-cart-form,
  body.ck-nuevo.ck-carrito div.woocommerce > .cart-collaterals { grid-column: 1; position: static; }
  body.ck-nuevo.ck-carrito div.woocommerce > .cart-collaterals { margin-top: 18px; }
  body.ck-nuevo .ck-titulo { margin-bottom: 20px; }
  body.ck-nuevo .ck-sec { font-size: 20px; }
}
@media (max-width: 560px) {
  body.ck-nuevo .woocommerce-billing-fields__field-wrapper,
  body.ck-nuevo .woocommerce-shipping-fields__field-wrapper { grid-template-columns: minmax(0,1fr); padding: 18px 16px 6px; }
  body.ck-nuevo .woocommerce-billing-fields__field-wrapper > *,
  body.ck-nuevo .woocommerce-shipping-fields__field-wrapper > * { grid-column: 1 !important; }
  body.ck-nuevo.ck-checkout table.woocommerce-checkout-review-order-table { padding: 6px 16px 12px !important; }
  body.ck-nuevo.ck-carrito table.cart tr.cart_item {
    grid-template-columns: 64px minmax(0,1fr) auto; grid-template-areas: "thumb name remove" "thumb price price" "qty qty subtotal"; padding: 14px;
  }
  body.ck-nuevo.ck-carrito td.product-thumbnail img { width: 64px !important; height: 64px; }
  body.ck-nuevo.ck-carrito table.cart td.actions { flex-wrap: wrap; }
  body.ck-nuevo.ck-carrito table.cart td.actions .coupon { width: 100%; }
  #ckBarra { gap: 10px; padding: 8px 14px; }
  #ckBarra .ckb-nom p { display: none; }
  #ckBarra .ckb-tot { margin-left: 0; order: -1; }
  #ckBarra .ckb-nom { margin-right: auto; }
  #ckBarra .ckb-g, #ckBarra .ckb-g .woocommerce-Price-amount { font-size: 17px; }
  #ckBarra .ckb-cta { font-size: 13.5px; padding: 11px 18px; }
}
/* Enlace «Modificar carrito» en el resumen del checkout */
body.ck-nuevo .ck-res-head .ck-mod-carrito{float:right;font-size:13px;font-weight:600;color:#111110;text-decoration:underline;text-underline-offset:3px}
body.ck-nuevo .ck-res-head .ck-mod-carrito:hover,body.ck-nuevo .ck-res-head .ck-mod-carrito:focus-visible{color:#0071E3}
/* Móvil: hueco para que el botón flotante de WhatsApp no tape «Realizar el pedido» */
@media (max-width: 767px){body.ck-nuevo.ck-checkout form.checkout,body.ck-nuevo.ck-pago #order_review{padding-bottom:84px}}
