/* ==========================================================================
   En Balance · Materia Clara — carrito, pago y "gracias".
   Un lugar tranquilo y claro para pagar: cristal, aire, el total grande y la
   seguridad dicha junto al botón. Reparto en celular (base), tableta
   (≥ 768 px) y escritorio (≥ 1024 px); materiales en materia-clara.css.
   ========================================================================== */

.mc-pago { --mc-alto-amanecer: 460px; min-height: 70vh; --mc-error: #a8402d; }
.mc-pago-marco { display: flex; flex-direction: column; gap: var(--mc-e4); padding-top: var(--mc-e3); }
.mc-pago .woocommerce { display: contents; }

/* Los "clearfix" de WooCommerce y del tema (::before/::after vacíos) cuentan
   como piezas dentro de flex y grid: sumaban 55 px de aire fantasma. */
.mc-pago :is(.mc-caja, .mc-caja-datos, .mc-caja-pasos, .woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields,
  .mc-paso:not(.mc-canto), .mc-campos, .mc-carrito, .mc-carrito-form, .mc-renglones, .place-order, #payment, .mc-totales)::before,
.mc-pago :is(.mc-caja, .mc-caja-datos, .mc-caja-pasos, .woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields,
  .mc-paso, .mc-campos, .mc-carrito, .mc-carrito-form, .mc-renglones, .place-order, #payment, .mc-totales)::after { content: none !important; display: none !important; }

/* WooCommerce mete aquí un elemento invisible (<wc-order-attribution-inputs>,
   con campos ocultos): también contaba como pieza. Sus campos se envían igual. */
.mc-pago wc-order-attribution-inputs { display: none !important; }

/* ---- Pasos: Carrito · Tus datos · Pago ---- */
.mc-pasos { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: var(--mc-e2); counter-reset: mc-paso; font-size: 13px; font-weight: 600; color: var(--mc-texto-3); }
.mc-pasos li { display: inline-flex; align-items: center; gap: var(--mc-e2); counter-increment: mc-paso; }
.mc-pasos li::before {
  content: counter(mc-paso); width: 22px; height: 22px; display: inline-grid; place-items: center; border-radius: 999px;
  font-size: 12px; box-shadow: inset 0 0 0 1px rgba(22,21,20,.2);
}
.mc-pasos li + li { padding-left: var(--mc-e2); }
.mc-pasos li + li::after { content: none; }
.mc-pasos li:not(:last-child) { padding-right: var(--mc-e5); background: linear-gradient(var(--mc-filete), var(--mc-filete)) no-repeat right center / var(--mc-e4) 1px; }
.mc-pasos .mc-actual { color: var(--mc-tinta); }
.mc-pasos .mc-actual::before { background: var(--mc-tinta); color: #fff; box-shadow: none; }
.mc-pasos .mc-hecho::before { content: "✓"; background: rgba(255,255,255,.7); color: var(--mc-tinta); }
.mc-pasos a { color: inherit; }

.mc-pago-cabeza { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--mc-e2) var(--mc-e4); }
.mc-pago-titulo { font-size: clamp(32px, 1.2rem + 2vw, 48px); }
.mc-seguir { display: inline-flex; align-items: center; gap: var(--mc-e1); font-size: 14px; font-weight: 600; color: var(--mc-texto-2) !important; }
.mc-seguir svg { width: 16px; height: 16px; }

/* =================================================================== CARRITO */
.mc-carrito { display: grid; gap: var(--mc-e5); }
.mc-carrito-form { display: flex; flex-direction: column; gap: var(--mc-e4); margin: 0; min-width: 0; }
.mc-carrito-cuenta { font-weight: 600; }
.mc-renglones { display: flex; flex-direction: column; gap: var(--mc-e3); }

.mc-renglon {
  display: grid; grid-template-columns: 76px minmax(0, 1fr) auto; grid-template-areas: "foto info quitar" "foto cantidad precio";
  column-gap: var(--mc-e3); row-gap: var(--mc-e2); align-items: center; padding: var(--mc-e3);
}
.mc-renglon-foto { grid-area: foto; align-self: start; width: 76px; }
.mc-renglon-info { grid-area: info; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.mc-renglon-nombre { font-size: 16px; font-weight: 600; line-height: 1.25; }
.mc-renglon-detalle { font-size: 13px; color: var(--mc-texto-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mc-renglon-unitario { font-size: 13px; color: var(--mc-texto-2); }
.mc-renglon-cantidad { grid-area: cantidad; }
.mc-renglon-precio { grid-area: precio; justify-self: end; font-size: 17px; }
.mc-renglon-quitar { grid-area: quitar; align-self: start; justify-self: end; }
.mc-mundo .mc-renglon-quitar a.remove {
  width: auto !important; height: auto !important; display: inline !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important;
  background: none !important; color: var(--mc-texto-2) !important; font-size: 13px !important; font-weight: 600 !important; line-height: 1.4 !important;
  text-indent: 0 !important; text-decoration: underline; text-underline-offset: 3px;
}
.mc-mundo .mc-renglon-quitar a.remove:hover { color: var(--mc-tinta) !important; background: none !important; }

/* Cantidad en píldora (el tema dibuja − y +) */
.mc-mundo .mc-renglon .detail-qty {
  display: inline-flex !important; align-items: center; height: 40px; margin: 0 !important; padding: 0 !important; border: 0 !important;
  border-radius: var(--mc-r-pildora); background: rgba(255,255,255,.55) !important; box-shadow: inset 0 0 0 1px rgba(22,21,20,.1) !important;
}
.mc-mundo .mc-renglon .detail-qty a {
  width: 38px; height: 40px; display: grid !important; place-items: center; margin: 0 !important; padding: 0 !important; border: 0 !important;
  background: none !important; color: var(--mc-tinta) !important; font-size: 14px !important; line-height: 1 !important;
}
.mc-mundo .mc-renglon .detail-qty input.qty {
  width: 28px !important; height: 40px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important;
  text-align: center; font: 600 15px/40px var(--mc-fuente) !important; color: var(--mc-tinta) !important; -moz-appearance: textfield;
}
.mc-renglon .quantity.hidden { display: none; }

.mc-carrito-acciones { position: relative; height: 0; overflow: hidden; }

/* ---- Resumen (carrito y pago) ---- */
/* WooCommerce lo flota a la derecha con 48 % de ancho: aquí manda la rejilla. */
.mc-mundo.mc-pago .cart-collaterals, .mc-mundo.mc-pago .cart-collaterals .cart_totals { float: none !important; width: auto !important; margin: 0; }
.mc-resumen { padding: var(--mc-e5) var(--mc-e4); display: flex; flex-direction: column; gap: var(--mc-e4); }
.mc-resumen-titulo { font-size: 22px; }
.mc-totales { display: flex; flex-direction: column; }
.mc-fila-total { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: var(--mc-e1) var(--mc-e3); padding: var(--mc-e2) 0; font-size: 15px; color: var(--mc-texto-2); }
.mc-fila-total > span:last-child, .mc-envio-valor { color: var(--mc-tinta); font-weight: 600; font-variant-numeric: tabular-nums; text-align: right; }
.mc-fila-total--final { margin-top: var(--mc-e2); padding-top: var(--mc-e3); border-top: 1px solid var(--mc-filete); color: var(--mc-tinta); font-weight: 700; font-size: 16px; }
.mc-fila-total--final .mc-total-valor { font-size: 28px; font-weight: 700; letter-spacing: -.02em; }
.mc-fila-total--final .mc-total-valor small { display: block; font-size: 12px; font-weight: 400; color: var(--mc-texto-3); letter-spacing: 0; }
.mc-descuento { color: var(--mc-acento) !important; }
.mc-descuento a { margin-left: var(--mc-e1); font-size: 12px; font-weight: 600; color: var(--mc-texto-2) !important; }
.mc-envio-etiqueta { display: flex; flex-direction: column; }
.mc-envio-destino { font-size: 12px; color: var(--mc-texto-3); }
.mc-envio-pendiente { font-size: 13px; font-weight: 500; color: var(--mc-texto-2); }
.mc-envio-opciones { flex-basis: 100%; list-style: none; margin: var(--mc-e2) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--mc-e2); }
.mc-envio-opciones label { display: inline-flex; gap: var(--mc-e3); justify-content: space-between; width: calc(100% - 28px); font-size: 14px; color: var(--mc-tinta); }
.mc-envio-opciones input { accent-color: var(--mc-acento); margin-right: var(--mc-e2); }

/* Calculadora: solo el código postal */
.mc-calculadora { margin: 0 0 var(--mc-e2); }
.mc-calculadora-campos { display: flex; gap: var(--mc-e2); }
.mc-cambiar-cp { font-size: 13px; font-weight: 600; color: var(--mc-texto-2) !important; text-decoration: underline; text-underline-offset: 3px; }

/* Botón para pagar */
.mc-mundo.mc-pago .wc-proceed-to-checkout { padding: 0 !important; margin: 0; }
.mc-mundo.mc-pago .wc-proceed-to-checkout a.checkout-button, .mc-mundo.mc-pago #place_order:not(.mc-boton) {
  display: flex !important; align-items: center; justify-content: center; width: 100%; min-height: 56px; margin: 0 !important; padding: 0 var(--mc-e4) !important;
  border: 0 !important; border-radius: var(--mc-r-pildora) !important; background: var(--mc-acento) !important; color: #fff !important;
  font: 600 17px/1.2 var(--mc-fuente) !important; letter-spacing: 0 !important; text-transform: none !important; box-shadow: 0 13px 34px -21px rgba(31,116,128,.9) !important;
  cursor: pointer; transition: background .2s ease, transform .16s ease-out;
}
.mc-mundo.mc-pago .wc-proceed-to-checkout a.checkout-button:hover, .mc-mundo.mc-pago #place_order:not(.mc-boton):hover { background: var(--mc-acento-hover) !important; }
.mc-mundo.mc-pago .wc-proceed-to-checkout a.checkout-button:active, .mc-mundo.mc-pago #place_order:active { transform: scale(.98); }

/* Código de descuento, plegado */
.mc-cupon summary, .mc-notas summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: var(--mc-e3); font-size: 14px; font-weight: 600; color: var(--mc-texto-2); }
.mc-cupon summary::-webkit-details-marker, .mc-notas summary::-webkit-details-marker { display: none; }
.mc-cupon summary::after, .mc-notas summary::after { content: "+"; font-size: 20px; font-weight: 400; transition: transform .3s var(--mc-curva-layout); }
.mc-cupon[open] summary::after, .mc-notas[open] summary::after { transform: rotate(45deg); }
.mc-cupon-form { display: flex; gap: var(--mc-e2); margin: var(--mc-e3) 0 0; }
.mc-cupon-form.mc-ocupado { opacity: .6; }
.mc-cupon-aviso { margin: var(--mc-e2) 0 0; font-size: 13px; font-weight: 600; color: var(--mc-error); }
.mc-cupon-aviso.mc-bien { color: var(--mc-acento); }

/* Confianza: tres líneas tranquilas con su icono */
.mc-confianza-lista { list-style: none; margin: 0; padding: var(--mc-e3) 0 0; border-top: 1px solid var(--mc-filete); display: flex; flex-direction: column; gap: var(--mc-e2); }
.mc-confianza-lista li { display: flex; align-items: flex-start; gap: var(--mc-e2); font-size: 13px; line-height: 1.45; color: var(--mc-texto-2); }
.mc-confianza-lista svg { flex: none; width: 18px; height: 18px; color: var(--mc-acento); }
.mc-confianza-lista a { color: var(--mc-acento) !important; text-decoration: underline; text-underline-offset: 3px; }

/* Barra de envío gratis (la pinta functions.php): dentro del resumen, sin caja */
.mc-mundo.mc-pago .mc-resumen .eb-envio-libre {
  margin: 0; padding: 0; background: none; border: 0; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none;
  font-size: 14px; gap: var(--mc-e2);
}
.mc-mundo.mc-pago .mc-resumen .eb-envio-barra { height: 6px; border-radius: 999px; background: rgba(22,21,20,.08); overflow: hidden; }
.mc-mundo.mc-pago .mc-resumen .eb-envio-barra i { display: block; height: 100%; border-radius: inherit; background: var(--mc-acento); }
.mc-mundo.mc-pago .mc-resumen .eb-envio-libre.eb-listo span { color: var(--mc-acento); }

.mc-carrito-rutina { margin-top: var(--mc-e6); }
.mc-carrito-vacio { display: flex; flex-direction: column; gap: var(--mc-e6); }
.mc-carrito-vacio .mc-vacio { align-items: flex-start; }
.mc-compra-fija .mc-precio * { margin: 0 !important; padding: 0 !important; font-size: inherit !important; line-height: 1.2 !important; }
.mc-pago-pagina .mc-pie { padding-bottom: var(--mc-e7); }

/* ====================================================================== PAGO */
.mc-caja { display: grid; grid-template-areas: "cabeza" "resumen" "datos"; gap: var(--mc-e5); }
.mc-caja-cabeza { grid-area: cabeza; }
.mc-caja-datos { grid-area: datos; min-width: 0; margin: 0; display: flex; flex-direction: column; gap: var(--mc-e6); }
.mc-caja-resumen { grid-area: resumen; min-width: 0; }
.mc-caja-pasos { display: flex; flex-direction: column; gap: var(--mc-e6); }
.mc-caja-pasos .woocommerce-billing-fields { display: flex; flex-direction: column; gap: var(--mc-e6); }

/* Resumen plegable en celular */
.mc-resumen-boton {
  display: flex; align-items: center; justify-content: space-between; gap: var(--mc-e3); width: 100%; margin: 0; padding: 0 !important;
  border: 0 !important; background: none !important; box-shadow: none !important; cursor: pointer;
  font: 600 15px/1.3 var(--mc-fuente) !important; color: var(--mc-tinta) !important; text-transform: none !important; letter-spacing: 0 !important;
}
.mc-resumen-boton-total { display: inline-flex; align-items: center; gap: var(--mc-e2); font-size: 17px; font-weight: 700; }
.mc-resumen-boton-total * { font-size: inherit !important; }
.mc-resumen-boton .mc-selector-flecha { transition: transform .3s var(--mc-curva-layout); }
.mc-caja-resumen.mc-abierto .mc-resumen-boton .mc-selector-flecha { transform: rotate(180deg); }
.mc-caja-resumen .mc-resumen { padding: var(--mc-e4); }
.mc-resumen-cuerpo { display: none; flex-direction: column; gap: var(--mc-e4); padding-top: var(--mc-e4); }
.mc-caja-resumen.mc-abierto .mc-resumen-cuerpo { display: flex; }
.mc-caja-resumen .mc-resumen-titulo { display: none; }

/* Pasos del formulario: fieldsets sin marco */
.mc-mundo .mc-paso { margin: 0; padding: 0; border: 0; min-width: 0; display: flex; flex-direction: column; gap: var(--mc-e4); }
.mc-mundo .mc-paso-titulo { float: left; width: 100%; margin: 0; padding: 0; display: flex; align-items: center; gap: var(--mc-e3); font-size: 21px; font-weight: 700; letter-spacing: -.02em; color: var(--mc-tinta); }
.mc-mundo .mc-paso-titulo + * { clear: both; }
.mc-paso-n { flex: none; width: 30px; height: 30px; display: inline-grid; place-items: center; border-radius: 999px; background: var(--mc-tinta); color: #fff; font-size: 14px; font-weight: 700; }
.mc-paso-nota { margin: calc(-1 * var(--mc-e3)) 0 0; }

/* Paso 3: método de pago y botón */
.mc-mundo.mc-pago #payment { background: none !important; border: 0 !important; box-shadow: none !important; border-radius: 0; padding: 0; margin: 0; }
.mc-mundo.mc-pago #payment ul.payment_methods { margin: 0 0 var(--mc-e4) !important; padding: 0 !important; border: 0 !important; list-style: none; display: flex; flex-direction: column; gap: var(--mc-e3); }
.mc-mundo.mc-pago #payment ul.payment_methods li.wc_payment_method {
  margin: 0; padding: var(--mc-e4) !important; border-radius: var(--mc-r-pieza); background: rgba(255,255,255,.62) !important; box-shadow: inset 0 0 0 1px rgba(22,21,20,.1);
  font-size: 15px; line-height: 1.5;
}
.mc-mundo.mc-pago #payment ul.payment_methods li > label { display: inline-flex; align-items: center; gap: var(--mc-e2); font-weight: 600; font-size: 16px; color: var(--mc-tinta); }
/* El logo redondo de Mercado Pago (120 px de origen) se queda del alto del texto; el plugin le pone medidas con !important. */
.mc-mundo.mc-pago #payment ul.payment_methods li > label img { height: 26px !important; width: 26px !important; max-height: 26px !important; max-width: 26px !important; margin: 0 !important; flex: none; vertical-align: middle; position: static; }
.mc-mundo.mc-pago #payment div.payment_box { margin: var(--mc-e3) 0 0 !important; padding: 0 !important; background: none !important; color: var(--mc-texto-2); font-size: 14px; }
.mc-mundo.mc-pago #payment div.payment_box::before { content: none !important; }
.mc-mundo.mc-pago #payment .place-order { margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: var(--mc-e3); }
.mc-mundo.mc-pago #payment .woocommerce-privacy-policy-text, .mc-mundo.mc-pago #payment .woocommerce-terms-and-conditions-wrapper { font-size: 12px; line-height: 1.55; color: var(--mc-texto-3); }
.mc-mundo.mc-pago #payment .woocommerce-privacy-policy-text p { margin: 0; }
.mc-mundo.mc-pago #payment .woocommerce-privacy-policy-text a { color: var(--mc-texto-2) !important; text-decoration: underline; }
.mc-mundo.mc-pago #payment .form-row.validate-required, .mc-mundo.mc-pago #payment p.form-row { margin: 0 !important; padding: 0 !important; }
.mc-mundo.mc-pago #payment .woocommerce-terms-and-conditions-checkbox-text { font-size: 13px; font-weight: 400; color: var(--mc-texto-2); }
.mc-mundo.mc-pago #payment p.cr-customer-consent { margin: 0 !important; }
.mc-mundo.mc-pago #payment label.woocommerce-form__label-for-checkbox { display: flex !important; align-items: flex-start; gap: var(--mc-e2); margin: 0 !important; padding: 0 !important; }
.mc-pago-seguro { margin: 0; display: flex; align-items: flex-start; gap: var(--mc-e2); font-size: 13px; line-height: 1.5; color: var(--mc-texto-2); }
.mc-pago-seguro svg { flex: none; width: 18px; height: 18px; color: var(--mc-acento); }

/* Productos del resumen, con foto y cantidad */
.mc-revision-lista { list-style: none; margin: 0 0 var(--mc-e3); padding: 0; display: flex; flex-direction: column; gap: var(--mc-e3); }
.mc-revision-item { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: var(--mc-e3); align-items: center; }
.mc-revision-foto { position: relative; width: 56px; overflow: visible; }
.mc-revision-foto img { border-radius: inherit; }
.mc-revision-cant {
  position: absolute; top: -6px; right: -6px; min-width: 22px; height: 22px; padding: 0 6px; box-sizing: border-box; display: grid; place-items: center;
  border-radius: 999px; background: var(--mc-tinta); color: #fff; font-size: 12px; font-weight: 700;
}
.mc-revision-info { min-width: 0; display: flex; flex-direction: column; }
.mc-revision-nombre { font-size: 14px; font-weight: 600; line-height: 1.3; }
.mc-revision-detalle { font-size: 12px; color: var(--mc-texto-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mc-revision-precio { font-size: 14px; font-weight: 600; font-variant-numeric: tabular-nums; }

/* ---- Pago en pasos (con JavaScript): uno a la vez, deslizándose ---- */
.mc-caja--pasos[data-mc-actual="1"] [data-mc-paso]:not([data-mc-paso="1"]),
.mc-caja--pasos[data-mc-actual="2"] [data-mc-paso]:not([data-mc-paso="2"]),
.mc-caja--pasos[data-mc-actual="3"] [data-mc-paso]:not([data-mc-paso="3"]),
.mc-caja--pasos[data-mc-actual="3"] #customer_details { display: none !important; }
@keyframes mc-entra { from { opacity: 0; transform: translateX(var(--mc-desde, 55px)); } to { opacity: 1; transform: none; } }
@keyframes mc-aparece { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
.mc-caja--pasos .mc-entra { animation: mc-entra .55s var(--mc-curva-layout) both; }
.mc-pasos-hechos { display: flex; flex-direction: column; gap: var(--mc-e2); }
.mc-hecho-fila {
  display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: var(--mc-e3); align-items: center; padding: var(--mc-e3) var(--mc-e4);
  border-radius: var(--mc-r-pieza); background: rgba(255,255,255,.58); box-shadow: inset 0 0 0 1px rgba(255,255,255,.7), 0 8px 21px -13px rgba(22,21,20,.3);
  animation: mc-aparece .4s var(--mc-curva-entrada) both;
}
.mc-hecho-fila[hidden] { display: none; }
.mc-hecho-marca { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 999px; background: var(--mc-tinta); color: #fff; font-size: 13px; font-weight: 700; }
.mc-hecho-texto { min-width: 0; display: flex; flex-direction: column; }
.mc-hecho-texto b { font-size: 14px; }
.mc-hecho-texto span { font-size: 13px; color: var(--mc-texto-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mc-mundo button.mc-editar {
  padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; min-height: 0;
  font: 600 13px/1.4 var(--mc-fuente) !important; color: var(--mc-acento) !important; text-transform: none !important; letter-spacing: 0 !important;
  text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.mc-paso-avanzar { display: flex; flex-direction: column; gap: var(--mc-e2); padding-top: var(--mc-e2); }
.mc-paso-avanzar .mc-boton { width: 100%; min-height: 56px; font-size: 17px !important; }
.mc-paso-aviso { margin: 0; font-size: 14px; font-weight: 600; color: var(--mc-error); }
@media (prefers-reduced-motion: reduce) { .mc-caja--pasos .mc-entra, .mc-hecho-fila { animation: none; } }

/* ==================================================================== GRACIAS */
.mc-gracias { display: flex; flex-direction: column; gap: var(--mc-e6); }
.mc-gracias-cabeza { padding: var(--mc-e5) var(--mc-e4); display: flex; flex-direction: column; align-items: flex-start; gap: var(--mc-e3); }
.mc-gracias-sello { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 999px; background: rgba(31,116,128,.1); color: var(--mc-acento); }
.mc-gracias-sello svg { width: 26px; height: 26px; }
.mc-gracias-cabeza .mc-lede { max-width: 52ch; }
.mc-gracias-datos { margin: var(--mc-e2) 0 0; display: flex; flex-wrap: wrap; gap: var(--mc-e3) var(--mc-e5); }
.mc-gracias-datos div { display: flex; flex-direction: column; gap: 2px; }
.mc-gracias-datos dt { font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--mc-texto-3); }
.mc-gracias-datos dd { margin: 0; font-size: 17px; font-weight: 700; color: var(--mc-tinta); }
.mc-gracias-sigue { display: flex; flex-direction: column; gap: var(--mc-e4); }
.mc-gracias-pasos { list-style: none; margin: 0; padding: 0; counter-reset: mc-g; display: flex; flex-direction: column; gap: var(--mc-e4); }
.mc-gracias-pasos li { counter-increment: mc-g; display: grid; grid-template-columns: 30px 1fr; column-gap: var(--mc-e3); }
.mc-gracias-pasos li::before { content: counter(mc-g); grid-row: span 2; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(22,21,20,.2); font-size: 14px; font-weight: 700; color: var(--mc-texto-2); }
.mc-gracias-pasos .mc-hecho::before { content: "✓"; background: var(--mc-tinta); color: #fff; box-shadow: none; }
.mc-gracias-pasos .mc-actual::before { box-shadow: inset 0 0 0 2px var(--mc-tinta); color: var(--mc-tinta); }
.mc-gracias-pasos b { font-size: 16px; }
.mc-gracias-pasos span { font-size: 14px; color: var(--mc-texto-2); }
.mc-gracias-botones { display: flex; flex-wrap: wrap; gap: var(--mc-e2); }
/* Detalle del pedido (WooCommerce): tablas limpias, sin rejilla */
.mc-gracias-detalle { display: flex; flex-direction: column; gap: var(--mc-e5); }
.mc-gracias-detalle h2 { margin: 0 0 var(--mc-e3); font-size: 22px; font-weight: 700; letter-spacing: -.02em; text-transform: none !important; }
/* "Qué sigue" ya cuenta el camino y su botón lleva al rastreo de este pedido:
   aquí sobran la línea de tiempo y el enlace suelto (siguen en Mi cuenta). */
.mc-gracias .eb-pasos, .mc-gracias .eb-rastreo-atajo { display: none !important; }
.mc-mundo .mc-gracias-detalle table.shop_table { width: 100%; margin: 0; border: 0 !important; border-collapse: collapse; background: none; font-size: 15px; }
.mc-mundo .mc-gracias-detalle table.shop_table th, .mc-mundo .mc-gracias-detalle table.shop_table td { padding: var(--mc-e2) 0 !important; border: 0 !important; border-bottom: 1px solid var(--mc-filete) !important; background: none !important; text-align: left; }
.mc-mundo .mc-gracias-detalle table.shop_table td:last-child, .mc-mundo .mc-gracias-detalle table.shop_table tfoot td { text-align: right; }
.mc-mundo .mc-gracias-detalle address { font-style: normal; line-height: 1.6; padding: var(--mc-e4); border: 0 !important; border-radius: var(--mc-r-pieza); background: rgba(255,255,255,.55); }

/* ============================================ CABECERA Y PIE MIENTRAS SE PAGA */
.mc-pago-pagina .scroll-top { display: none !important; }   /* el botón "subir" naranja del tema: aquí distrae */
.mc-cabecera-marco--pago .mc-cabecera { padding-right: var(--mc-e4); }
.mc-sello-pago { display: inline-flex; align-items: center; gap: var(--mc-e1); font-size: 13px; font-weight: 600; color: var(--mc-texto-2); }
.mc-sello-pago svg { width: 16px; height: 16px; color: var(--mc-acento); }
.mc-pie--pago .mc-pie-dentro { flex-direction: row !important; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--mc-e3); }
.mc-pie-mini { display: flex; gap: var(--mc-e4); font-size: 13px; }
.mc-pago-cerrado .mc-pie { padding-bottom: var(--mc-e5); }

/* ================================================================== TAMAÑOS */
@media (min-width: 768px) {
  .mc-renglon { grid-template-columns: 88px minmax(0, 1fr) auto auto; grid-template-areas: "foto info cantidad precio" "foto quitar cantidad precio"; column-gap: var(--mc-e4); padding: var(--mc-e3) var(--mc-e4) var(--mc-e3) var(--mc-e3); }
  .mc-renglon-foto { width: 88px; }
  .mc-renglon-quitar { justify-self: start; align-self: end; }
  .mc-renglon-precio { min-width: 92px; text-align: right; }
  .mc-gracias-cabeza { padding: var(--mc-e6) var(--mc-e5); }
}

@media (min-width: 1024px) {
  .mc-pago { --mc-alto-amanecer: 560px; --mc-halo-ancho: 760px; --mc-halo-alto: 560px; --mc-luz-radio: 420px; }
  .mc-pago-marco { padding-top: var(--mc-e4); }
  .mc-carrito { grid-template-columns: minmax(0, 1fr) 380px; column-gap: var(--mc-e6); align-items: start; }
  .mc-carrito-resumen { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 89px); }
  .mc-carrito-rutina { margin-top: var(--mc-e7); }
  .mc-caja { grid-template-columns: minmax(0, 1fr) 400px; grid-template-areas: "cabeza cabeza" "datos resumen"; column-gap: var(--mc-e6); align-items: start; }
  .mc-caja-resumen { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 89px); }
  .mc-caja-resumen .mc-resumen { padding: var(--mc-e5) var(--mc-e4); }
  .mc-resumen-boton { display: none; }
  .mc-resumen-cuerpo { display: flex; padding-top: 0; }
  .mc-caja-resumen .mc-resumen-titulo { display: block; }
  .mc-pago-pagina .mc-pie { padding-bottom: var(--mc-e5); }
}

/* ====================================================== LA LUZ DEL PAGO
   Carrito, datos, pago y gracias: "el lugar seguro". La misma luz de confianza que Nosotros (azul
   más profundo arriba, horizonte salvia, sin durazno): pagar debe sentirse seguro. */
body.mc-pago-pagina, body.mc-pago-pagina .mc-mundo {
  --mc-cielo-1: #b6cdea;
  --mc-cielo-2: #dbe5f2;
  --mc-horizonte: #e6edf3;   /* claro azulado: el salvia se leía como una franja verde cortada */
  --mc-bruma: #eef2f3;
  --mc-linea-horizonte: rgba(255, 255, 255, .55);
  --mc-halo-1: rgba(122, 164, 226, .42);
  --mc-halo-2: rgba(150, 206, 170, .55);
  --mc-halo-3: var(--mc-halo-cielo);
  --mc-halo-4: rgba(122, 164, 226, .34);
}
body.mc-pago-pagina .mc-sol {
  background:
    radial-gradient(520px 420px at 80% 22%, rgba(250, 252, 255, .9), transparent 70%),
    radial-gradient(130% 70px at 50% 68.4%, var(--mc-linea-horizonte), transparent 75%);
}
/* Preguntar antes de pagar (como en la caja) y "¿algo más?" hacia el envío gratis */
.mc-mundo a.mc-resumen-pregunta { align-self: center; margin-top: var(--mc-e2); font-size: 14px; }
.mc-carrito-rutina .mc-pag-intro { gap: var(--mc-e2); }

/* Carrito: al cambiar cantidades, sin bolita de carga ni velo. Los números cambian al instante
   (eb-pago.js) y el servidor confirma por detrás; el bloqueo sigue ahí, invisible, contra dobles clics. */
.mc-mundo.mc-pago--carrito .blockUI.blockOverlay { background: transparent !important; opacity: 0 !important; }
.mc-mundo.mc-pago--carrito .blockUI.blockOverlay::before, .mc-mundo.mc-pago--carrito .blockUI.blockOverlay::after { display: none !important; }

/* E15 · El mismo cristal blanco del testimonio, sin el tinte de eb-formas en Chrome.
   Canto y sombra provienen de las clases del sistema; aquí solo se ajusta su presentación. */
.mc-mundo:is(.mc-pago--carrito, .mc-pago--caja) :is(.mc-renglon, .mc-resumen, .mc-paso).mc-vidrio {
  background: linear-gradient(160deg, rgba(255,255,255,.97), rgba(255,255,255,.9) 55%, rgba(255,255,255,.82));
}
.mc-mundo:is(.mc-pago--carrito, .mc-pago--caja) .mc-resumen { padding: var(--mc-e4); gap: var(--mc-e4); min-width: 0; border-radius: var(--mc-r-pieza); }
.mc-pago .mc-resumen-titulo { margin: 0; font-size: 26px; line-height: 1.1; letter-spacing: -.035em; }
.mc-pago .mc-fila-total { font-size: 15px; line-height: 1.45; gap: var(--mc-e2) var(--mc-e3); }
.mc-pago .mc-fila-total > span { min-width: 0; }
.mc-pago .mc-fila-total .woocommerce-Price-amount { white-space: nowrap; font-variant-numeric: tabular-nums; }
.mc-pago .mc-fila-total--final { align-items: baseline; padding-top: var(--mc-e4); font-size: 18px; line-height: 1.2; }
.mc-pago .mc-fila-total--final > span:first-child { white-space: nowrap; }
.mc-pago .mc-fila-total--final .mc-total-valor { font-size: 32px; line-height: 1.1; letter-spacing: -.035em; }
.mc-pago a.mc-resumen-pregunta { display: inline-flex; align-items: center; justify-content: center; align-self: center; gap: var(--mc-e2); margin: 0; min-height: 44px; font-size: 15px; line-height: 1.3; white-space: nowrap; color: var(--mc-acento) !important; }
.mc-pago .mc-cupon-form input { min-width: 0; }
.mc-pago .mc-cupon summary { font-size: 14px; line-height: 1.45; }
.mc-pago .mc-pago-seguro { line-height: 1.5; text-wrap: pretty; }
.mc-pago .mc-envio-valor { max-width: 24ch; }
.mc-pago .mc-envio-opciones li { display: flex; flex-wrap: wrap; align-items: center; gap: var(--mc-e2); padding: var(--mc-e3); background: #fff; border-radius: var(--mc-r-campo); box-shadow: inset 0 0 0 1px var(--mc-filete); }
.mc-pago .mc-envio-opciones li:has(input:checked) { box-shadow: inset 0 0 0 1.5px rgba(31,138,114,.5), 0 6px 13px -8px rgba(31,138,114,.2); }
.mc-pago .mc-envio-opciones label { flex: 1; min-width: 0; width: auto; align-items: baseline; cursor: pointer; font-size: 15px; line-height: 1.4; }
.mc-pago .mc-envio-opciones label > span:first-child { overflow-wrap: anywhere; }
.mc-pago .mc-envio-opciones label > span:last-child { flex: none; white-space: nowrap; font-variant-numeric: tabular-nums; }
.mc-pago .mc-envio-opciones input { flex: none; width: 18px; height: 18px; margin: 0; accent-color: #1f8a72; }
.mc-pago .mc-envio-opciones li:has(input:focus-visible) { outline: 2px solid rgba(31,138,114,.4); outline-offset: 3px; }
.mc-mundo.mc-pago :is(.wc-proceed-to-checkout a.checkout-button, #place_order:not(.mc-boton)):hover { background: var(--mc-acento) !important; }
.mc-mundo.mc-pago :is(.wc-proceed-to-checkout a.checkout-button, #place_order:not(.mc-boton)) { box-sizing: border-box; transition: none; }
.mc-mundo.mc-pago :is(.wc-proceed-to-checkout a.checkout-button, #place_order):active { transform: none; }

/* La caja comparte el fondo parejo del carrito. */
#main-content.mc-pago--caja { --mc-alto-amanecer: 100%; isolation: isolate; }
.mc-pago--caja > .mc-aurora { -webkit-mask-image: none; mask-image: none; }
.mc-pago--caja::after { content: none; }
.mc-pago--caja .mc-pago-titulo { margin: 0; font-size: clamp(34px, 5vw, 56px); }
.mc-pago--caja .mc-pasos { flex-wrap: wrap; font-size: 13px; gap: var(--mc-e2); }
.mc-pago--caja .mc-pasos li:not(:last-child) { padding-right: var(--mc-e4); background-size: var(--mc-e3) 1px; }
.mc-pago--caja :is(.mc-caja-datos, .mc-caja-pasos, .woocommerce-billing-fields) { gap: var(--mc-e5); }
.mc-mundo.mc-pago--caja .mc-paso.mc-cristal-cuerpo { padding: var(--mc-e4); gap: var(--mc-e4); border-radius: var(--mc-r-pieza); }
.mc-mundo.mc-pago--caja .mc-paso-titulo { font-size: 24px; line-height: 1.2; letter-spacing: -.035em; }
.mc-pago--caja .mc-paso-n { background: rgba(255,255,255,.9); color: var(--mc-texto-2); box-shadow: inset 0 0 0 1px var(--mc-filete); font-weight: 600; }
.mc-pago--caja .mc-paso-nota { margin: 0; font-size: 14px; line-height: 1.5; text-wrap: pretty; }
.mc-mundo.mc-pago--caja .mc-campos .form-row { min-width: 0; }
.mc-mundo.mc-pago--caja .form-row label:not(.checkbox) { font-size: 15px; font-weight: 500; line-height: 1.4; }
.mc-mundo.mc-pago--caja .form-row .description { font-size: 13px; line-height: 1.45; }
.mc-mundo.mc-pago--caja :is(.mc-campos, .mc-cupon) :is(input.input-text, input[name="coupon_code"], textarea, select),
.mc-mundo.mc-pago--caja .select2-container .select2-selection--single { background: #fff !important; border-radius: var(--mc-r-campo) !important; }
.mc-mundo.mc-pago--caja .select2-container { width: 100% !important; min-width: 0; }
.mc-mundo.mc-pago--caja .select2-selection__rendered { text-overflow: ellipsis; }
.mc-mundo.mc-pago--caja :is(.mc-campos, .mc-cupon) :is(input, textarea, select):focus,
.mc-mundo.mc-pago--caja .select2-container:is(.select2-container--open, .select2-container--focus) .select2-selection--single {
  outline: none !important; box-shadow: inset 0 0 0 1.5px rgba(31,138,114,.4), 0 0 13px -4px rgba(31,138,114,.15) !important;
}
.mc-mundo.mc-pago--caja .select2-selection--single:focus-visible { outline: none !important; }
.mc-pago--caja .mc-caja-resumen .mc-resumen { gap: var(--mc-e4); }
.mc-pago--caja .mc-resumen-boton { align-items: flex-start; line-height: 1.45 !important; }
.mc-pago--caja .mc-resumen-boton-total { flex: none; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mc-pago--caja .mc-resumen-boton-total small { display: none; }
.mc-pago--caja .mc-resumen-cuerpo { padding-top: 0; min-width: 0; }
.mc-pago--caja .mc-revision { padding: 0; margin: 0; border: 0; background: none; border-radius: 0; }
.mc-pago--caja .mc-revision-lista { gap: var(--mc-e3); margin-bottom: var(--mc-e4); }
.mc-pago--caja .mc-revision-item { grid-template-columns: 76px minmax(0, 1fr); grid-template-areas: 'foto info' 'foto precio'; gap: var(--mc-e1) var(--mc-e3); align-items: center; padding: var(--mc-e2); border-radius: var(--mc-r-pieza); background: rgba(255,255,255,.5); }
.mc-pago--caja .mc-revision-foto { grid-area: foto; width: 76px; overflow: visible; }
.mc-pago--caja .mc-revision-info { grid-area: info; gap: var(--mc-e1); }
.mc-pago--caja .mc-revision-nombre { font-size: 16px; font-weight: 700; line-height: 1.25; letter-spacing: -.03em; overflow-wrap: anywhere; }
.mc-pago--caja .mc-revision-detalle { font-size: 13px; line-height: 1.4; }
.mc-pago--caja .mc-revision-precio { grid-area: precio; font-size: 16px; font-weight: 700; line-height: 1.3; white-space: nowrap; }
.mc-pago--caja .mc-revision-cant { top: -5px; right: -5px; background: #fff; color: var(--mc-tinta); box-shadow: 0 0 0 1px var(--mc-filete), 0 3px 8px -4px rgba(22,21,20,.2); font-variant-numeric: tabular-nums; }
.mc-mundo.mc-pago--caja #payment ul.payment_methods li.wc_payment_method { min-width: 0; padding: var(--mc-e3) !important; background: #fff !important; border-radius: var(--mc-r-campo); }
.mc-mundo.mc-pago--caja #payment ul.payment_methods li.wc_payment_method:has(> input:checked) { box-shadow: inset 0 0 0 1.5px rgba(31,138,114,.5), 0 6px 13px -8px rgba(31,138,114,.2); }
.mc-mundo.mc-pago--caja #payment ul.payment_methods li > label { display: inline; font-size: 15px; font-weight: 600; line-height: 1.5; cursor: pointer; }
.mc-mundo.mc-pago--caja #payment ul.payment_methods li > label img { display: inline-block; vertical-align: middle; margin-left: var(--mc-e2) !important; }
.mc-mundo.mc-pago--caja #payment ul.payment_methods li > input[type="radio"] { width: 18px; height: 18px; margin: 0 var(--mc-e2) 0 0; vertical-align: middle; accent-color: #1f8a72; }
.mc-mundo.mc-pago--caja #payment ul.payment_methods li.wc_payment_method:has(> input:focus-visible) { outline: 2px solid rgba(31,138,114,.4); outline-offset: 3px; }
.mc-pago--caja :is(.mc-cuenta-opcional, .mc-paso-extra:has(#ship-to-different-address), .mc-notas) { margin-top: 0; padding: var(--mc-e4); border-radius: var(--mc-r-pieza); background: rgba(255,255,255,.86); }
.mc-pago--caja .mc-hecho-fila { background: rgba(255,255,255,.9); }
.mc-pago--caja .mc-paso-avanzar > .mc-boton { box-sizing: border-box; transition: none; }
.mc-pago--caja .mc-paso-avanzar > .mc-boton:active { transform: none; }
@media (max-width: 479px) {
  .mc-mundo.mc-pago--caja .mc-campos .form-row-first,
  .mc-mundo.mc-pago--caja .mc-campos .form-row-last { grid-column: 1 / -1; }
}
@media (min-width: 1024px) {
  .mc-pago--caja .mc-caja { grid-template-columns: minmax(0, 1fr) 380px; column-gap: var(--mc-e5); }
  .mc-mundo.mc-pago--caja .mc-paso.mc-cristal-cuerpo { padding: var(--mc-e5) var(--mc-e5) var(--mc-e4); }
  .mc-pago--caja .mc-caja-resumen .mc-resumen { padding: var(--mc-e5) var(--mc-e4) var(--mc-e4); }
  .mc-mundo:is(.mc-pago--carrito, .mc-pago--caja) .mc-resumen { rotate: -.35deg; }
}
@media (prefers-reduced-motion: reduce) {
  .mc-pago--caja *, .mc-pago--caja *::before, .mc-pago--caja *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* E16 · Azul niebla únicamente en carrito/pago; no añade utilidades globales. */
body.mc-pago-pagina { background:#e8eef2; }
body.mc-pago-pagina,.mc-mundo:is(.mc-pago--carrito,.mc-pago--caja) { --mc-cielo-1:#d9e3ec; --mc-cielo-2:#e3eaf0; --mc-horizonte:#e8eef2; --mc-bruma:#e8eef2; --mc-suelo:#e8eef2; --mc-acento:#1f8a72; --mc-acento-hover:#1f8a72; --mc-halo-1:rgba(150,185,205,.2); --mc-halo-2:rgba(160,185,200,.14); --mc-halo-3:rgba(170,190,205,.12); --mc-halo-4:rgba(150,180,205,.14); }
#main-content.mc-mundo:is(.mc-pago--carrito,.mc-pago--caja) { --mc-alto-amanecer:100%; background:linear-gradient(180deg,#d9e3ec,#e8eef2); }
.mc-mundo:is(.mc-pago--carrito,.mc-pago--caja) > :is(.mc-amanecer,.mc-sol) { display:none; }
.mc-mundo:is(.mc-pago--carrito,.mc-pago--caja) > .mc-aurora { mask-image:none; -webkit-mask-image:none; }
.mc-mundo:is(.mc-pago--carrito,.mc-pago--caja)::after { content:none; }
.mc-pago--carrito .mc-secciones,.mc-pago--caja .mc-secciones { padding-bottom:55px; }
.mc-pago-pagina .mc-cabecera-marco--pago .mc-cabecera { display:flex; flex-wrap:wrap; justify-content:space-between; gap:13px; padding:13px 21px; }
.mc-cabecera-marco--pago .mc-sello-pago { font-size:clamp(14px,1.8vw,21px); color:#1d3a4a; gap:8px; }
.mc-cabecera-marco--pago .mc-sello-pago svg { color:inherit; }
.mc-cabecera-marco--pago .mc-seguir { color:#1d3a4a!important; font-size:13px; }
.mc-pago .mc-atencion { display:flex; align-items:center; gap:13px; padding:12px 16px; border-radius:13px; color:#161514!important; text-decoration:none; }
.mc-atencion-foto { display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#dfe6ec; overflow:hidden; flex:none; }
.mc-atencion-foto img { width:100%; height:100%; object-fit:cover; }
.mc-atencion > span:last-child { display:flex; flex-direction:column; gap:3px; font-size:13px; line-height:1.4; }
.mc-atencion > span:last-child > span { color:var(--mc-texto-3); font-size:13px; }
.mc-pago .mc-caja-terminal { display:block; }
.mc-pago .mc-caja-terminal .mc-caja-datos { display:grid; grid-template-columns:minmax(0,1fr); grid-template-areas:'datos' 'envio' 'pago-titulo' 'metodos' 'terminal'; gap:21px; }
.mc-caja-terminal #customer_details { grid-area:datos; }
.mc-caja-terminal .mc-envio-paso { grid-area:envio; }
.mc-mundo.mc-pago--caja .mc-caja-terminal #customer_details,.mc-mundo.mc-pago--caja .mc-caja-terminal .mc-envio-paso { display:flex; flex-direction:column; gap:13px; padding:24px 28px; background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.72)); border-radius:21px; }
.mc-caja-terminal :is(.mc-paso,.woocommerce-billing-fields,.mc-caja-pasos) { gap:13px; }
.mc-caja-terminal #mc-datos-formulario { display:flex; flex-direction:column; gap:13px; }
.mc-caja-terminal [hidden] { display:none!important; }
.mc-caja-terminal .mc-datos-resumen { display:flex; gap:16px; align-items:center; }
.mc-datos-resumen > div { display:flex; flex-direction:column; min-width:0; flex:1; gap:4px; }
.mc-datos-resumen [data-eb-datos-resumen] { font-size:14px; line-height:1.55; color:var(--mc-texto-2); overflow-wrap:anywhere; }
.mc-caja-terminal .mc-paso-n { background:#1f8a72; width:32px; height:32px; }
.mc-mundo.mc-pago--caja .mc-caja-terminal .mc-paso-pago,.mc-mundo.mc-pago--caja .mc-caja-terminal #payment { display:contents!important; }
.mc-caja-terminal .mc-paso-pago > legend { grid-area:pago-titulo; box-sizing:border-box; background:rgba(255,255,255,.88); padding:24px 28px 13px; margin-bottom:-21px; border-radius:21px 21px 0 0; }
.mc-mundo.mc-pago--caja .mc-caja-terminal #payment ul.payment_methods { grid-area:metodos; display:flex; flex-direction:column; padding:13px 28px 24px!important; margin:0!important; background:rgba(255,255,255,.88); border-radius:0 0 21px 21px; }
.mc-mundo.mc-pago--caja .mc-caja-terminal #payment li.wc_payment_method { padding:16px 21px!important; }
.mc-mundo.mc-pago--caja .mc-caja-terminal #payment .place-order { grid-area:terminal; display:flex; flex-direction:column; align-self:start; padding:16px!important; gap:16px; border-radius:28px; background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(255,255,255,.42)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),inset 0 1px 0 #fff,0 34px 70px -44px rgba(30,50,70,.3); min-width:0; }
.mc-terminal { order:-3; display:flex; flex-direction:column; gap:4px; padding:21px; border-radius:21px; color:#fff; background:linear-gradient(180deg,#1d3a4a,#16303d); box-shadow:inset 0 1px 0 rgba(255,255,255,.15); }
.mc-terminal-cabeza { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; opacity:.75; }
.mc-terminal-cabeza > span { display:inline-flex; align-items:center; gap:5px; }
.mc-terminal-cabeza svg { width:14px; height:14px; }
.mc-terminal p { margin:13px 0 0; font-size:14px; color:rgba(255,255,255,.75); }
.mc-terminal-total { font-size:clamp(34px,4vw,44px); font-weight:700; letter-spacing:-.02em; line-height:1.2; font-variant-numeric:tabular-nums; }
.mc-terminal-total * { font-size:inherit!important; color:inherit!important; }
.mc-terminal .mc-terminal-detalle { margin:4px 0 0; font-size:13px; line-height:1.5; }
.mc-caja-terminal #place_order { order:-2; gap:10px; min-height:60px!important; position:relative; }
.mc-caja-terminal #place_order::before { content:''; width:16px; height:16px; flex:none; background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E"); }
.mc-pago--caja #place_order:active { transform:none!important; }
.mc-procesando { order:-1; display:flex; gap:12px; align-items:center; justify-content:center; min-height:60px; margin:0; font-size:14px; color:#1d3a4a; }
.mc-procesando-anillo { flex:none; width:22px; height:22px; box-sizing:border-box; border:3px solid rgba(31,138,114,.2); border-top-color:#1f8a72; border-radius:50%; animation:eb-procesando-anillo 1s linear infinite; }
@keyframes eb-procesando-anillo { to { transform:rotate(360deg); } }
.mc-enviando #place_order { display:none!important; }
.mc-pago--caja .blockUI.blockOverlay { background:transparent!important; opacity:0!important; }
.mc-pago--caja .blockUI.blockOverlay::before,.mc-pago--caja .blockUI.blockOverlay::after { display:none!important; }
.mc-terminal-pie { order:0; display:flex; flex-direction:column; gap:16px; }
.mc-terminal-bolsa { display:flex; flex-wrap:wrap; gap:10px; align-items:center; font-size:13px; color:var(--mc-texto-3); padding:0 8px; }
.mc-terminal-fotos { display:flex; flex-wrap:wrap; gap:8px; }
.mc-terminal-fotos .mc-vitrina { width:44px; height:44px; aspect-ratio:1; border-radius:10px; }
.mc-terminal-bolsa a { font-weight:600; color:#1d3a4a!important; }
.mc-caja-terminal #payment .woocommerce-terms-and-conditions-wrapper { order:1; }
.mc-caja-terminal .mc-caja-cupon { position:static; margin-top:21px; }
.mc-caja-terminal .mc-envio-opciones { display:flex; gap:13px; margin:0; }
.mc-caja-terminal .mc-envio-opciones li { display:flex; align-items:center; gap:13px; padding:16px 21px; border-radius:13px; background:#fff; box-shadow:inset 0 0 0 1px rgba(22,21,20,.1); }
.mc-caja-terminal .mc-envio-opciones li:has(input:checked),.mc-caja-terminal .mc-envio-opciones li:has(input[type=hidden]) { box-shadow:inset 0 0 0 2px rgba(31,138,114,.55); }
.mc-caja-terminal .mc-envio-opciones li:has(input[type=hidden])::before { content:'✓'; color:#1f8a72; }
.mc-caja-terminal .mc-envio-opciones label { display:flex; align-items:center; gap:13px; width:100%; font-size:14px; font-weight:600; cursor:pointer; }
.mc-envio-plazo { display:block; margin-top:3px; font-size:13px; font-weight:400; color:var(--mc-texto-3); }
.mc-mundo .mc-envio-aviso { flex-basis:100%; margin:8px 0 0; font-size:13px; line-height:1.5; color:var(--mc-texto-2); }
.mc-mundo .mc-envio-opciones label > span:first-child { min-width:0; }
.mc-mundo .mc-envio-opciones label > span:last-child { flex:none; white-space:nowrap; }
.mc-caja-terminal .mc-envio > :is(.mc-envio-etiqueta,.mc-envio-valor) { display:none; }
.mc-caja-terminal .mc-envio:has(.mc-oculto-visual) > .mc-envio-valor,.mc-caja-terminal .mc-envio:not(:has(.mc-envio-opciones)) > .mc-envio-valor { display:block; }
.mc-caja-terminal .mc-revision { padding:0; }
.mc-caja-terminal .woocommerce-error { padding:16px 21px; border-radius:13px; background:#fff; color:#a8402d; }
@media(min-width:1024px) { .mc-pago .mc-caja-terminal .mc-caja-datos { grid-template-columns:minmax(0,1fr) 420px; grid-template-areas:'datos terminal' 'envio terminal' 'pago-titulo terminal' 'metodos terminal'; gap:21px 34px; }.mc-caja-terminal #payment .place-order { position:sticky; top:calc(var(--wp-admin--admin-bar--height,0px) + 34px); }.mc-caja-terminal .mc-caja-cupon { max-width:calc(100% - 454px); } }
@media(max-width:479px) { .mc-pago .mc-caja-terminal #customer_details,.mc-pago .mc-caja-terminal .mc-envio-paso { padding:21px 16px; }.mc-caja-terminal .mc-paso-pago > legend { padding:21px 16px 13px; }.mc-mundo.mc-pago--caja .mc-caja-terminal #payment ul.payment_methods { padding-inline:16px!important; }.mc-pago-pagina .mc-cabecera-marco--pago .mc-cabecera { gap:8px; }.mc-cabecera-marco--pago .mc-sello-pago { flex-basis:100%; order:2; } }
@media(prefers-reduced-motion:reduce) { .mc-caja-terminal * { animation:none!important; transition:none!important; } }
/* Los avisos nativos de Woo permanecen arriba del formulario, a todo el ancho. */
.mc-caja-terminal .mc-caja-datos > .woocommerce-NoticeGroup { grid-area:avisos; }
.mc-pago .mc-caja-terminal .mc-caja-datos:has(> .woocommerce-NoticeGroup) { grid-template-areas:'avisos' 'datos' 'envio' 'pago-titulo' 'metodos' 'terminal'; }
@media(min-width:1024px) { .mc-pago .mc-caja-terminal .mc-caja-datos:has(> .woocommerce-NoticeGroup) { grid-template-areas:'avisos avisos' 'datos terminal' 'envio terminal' 'pago-titulo terminal' 'metodos terminal'; } }
/* Ajustes finos (1-oct) */
/* Números de paso: azul sereno discreto, no jade con negro. */
.mc-caja-terminal .mc-paso-n { background:#dde8f1; color:#1d3a4a; box-shadow:inset 0 0 0 1px rgba(29,58,74,.12); font-weight:700; }
/* «Envío»: la leyenda del fieldset ya no se monta sobre el borde del cristal. */
.mc-pago .mc-envio-paso { border:0; min-inline-size:0; }
.mc-pago .mc-envio-paso > legend { float:left; width:100%; padding:0; margin:0 0 var(--mc-e4); }
.mc-pago .mc-envio-paso > legend + * { clear:both; }
/* Terminal: cristal del sistema (no panel oscuro); el monto en azul tinta como protagonista. */
.mc-terminal { color:#1d3a4a; background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.55)); -webkit-backdrop-filter:blur(24px) saturate(180%); backdrop-filter:blur(24px) saturate(180%); box-shadow:inset 0 0 0 1px rgba(255,255,255,.8), inset 0 1px 0 #fff, 0 1px 2px rgba(30,50,70,.05), 0 21px 34px -24px rgba(30,50,70,.3); }
.mc-terminal p, .mc-terminal .mc-terminal-detalle { color:rgba(29,58,74,.7); }
.mc-terminal-cabeza { color:rgba(29,58,74,.65); }
.mc-terminal-total { color:#1d3a4a; }
/* Botón de pagar con el material del sistema: sin el candado pintado aparte ni el fondo plano antiguo. */
.mc-caja-terminal #place_order.mc-boton::before { content:none; }
/* Terminal en cristal azul difuminado (usuaria, 1-oct). */
.mc-terminal { background:linear-gradient(160deg,rgba(222,236,248,.95),rgba(196,219,240,.62)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.75), inset 0 1px 0 #fff, 0 1px 2px rgba(30,50,70,.05), 0 21px 34px -24px rgba(30,60,90,.35); }
/* Casillas del final: más aire y aviso amable si falta aceptar los términos (sin la franja roja de Woo). */
.mc-caja-terminal #payment .form-row { margin-top:13px!important; }
.mc-pago .woocommerce-invalid input[type="checkbox"], .mc-pago .woocommerce-invalid input[type="checkbox"]:focus { outline:none!important; border-color:#c0564f!important; box-shadow:0 0 0 4px rgba(192,86,79,.16)!important; }
.mc-pago .woocommerce-invalid, .mc-pago .woocommerce-invalid label { outline:none!important; border:0!important; background:none!important; }
/* Casilla obligatoria sin marcar: destello de cristal rojizo en el cuadrito (sin textos extra). */
.mc-pago .woocommerce-invalid input[type="checkbox"] { border-color:rgba(208,106,99,.85)!important; background-color:rgba(255,236,234,.75)!important; box-shadow:0 0 0 4px rgba(208,106,99,.16), 0 0 16px rgba(208,106,99,.45)!important; animation:eb-casilla-destello 1.1s ease-out 2; }
@keyframes eb-casilla-destello { 0% { box-shadow:0 0 0 0 rgba(208,106,99,.45), 0 0 0 rgba(208,106,99,0); } 60% { box-shadow:0 0 0 7px rgba(208,106,99,.12), 0 0 22px rgba(208,106,99,.5); } 100% { box-shadow:0 0 0 4px rgba(208,106,99,.16), 0 0 16px rgba(208,106,99,.45); } }
@media(prefers-reduced-motion:reduce){ .mc-pago .woocommerce-invalid input[type="checkbox"] { animation:none; } }
/* Terminal viva: cristal azul degradado como el de testimonios, con una luz que sigue al cursor y un paralaje mínimo (eb-pago.js). */
.mc-terminal { --tx:50%; --ty:30%; background:radial-gradient(420px 260px at var(--tx) var(--ty), rgba(255,255,255,.75), rgba(255,255,255,0) 70%), linear-gradient(155deg, rgba(226,239,250,.92) 0%, rgba(196,220,242,.66) 55%, rgba(178,208,236,.5) 100%); -webkit-backdrop-filter:blur(30px) saturate(200%); backdrop-filter:blur(30px) saturate(200%); transition:translate .6s cubic-bezier(.2,.8,.2,1); box-shadow:inset 0 0 0 1px rgba(255,255,255,.6), inset 0 1px 0 #fff, inset 0 -1px 0 rgba(255,255,255,.65), 0 6px 6px -3px rgba(30,50,70,.05), 0 34px 70px -44px rgba(30,60,90,.45); }
/* Aviso de errores al pagar: cristal discreto abajo al centro, sin mover la página. */
.mc-pago-aviso { font-family:"Albert Sans",var(--mc-fuente,sans-serif); -webkit-backdrop-filter:blur(16px) saturate(200%); backdrop-filter:blur(16px) saturate(200%); position:fixed; z-index:99980; left:0; right:0; bottom:calc(16px + env(safe-area-inset-bottom)); margin-inline:auto; width:calc(100% - 32px); max-width:560px; box-sizing:border-box; display:flex; align-items:center; gap:13px; padding:10px 10px 10px 20px; border-radius:999px; background:rgba(255,255,255,.72); box-shadow:inset 0 0 0 1px rgba(255,255,255,.8), inset 0 1px 0 #fff, 0 21px 34px -21px rgba(30,50,70,.35); animation:mc-pago-aviso-entra .3s var(--mc-curva-entrada, ease-out) backwards; }
.mc-pago-aviso[hidden] { display:none; }
.mc-pago-aviso p { flex:1; margin:0; font-size:14px; font-weight:600; line-height:1.4; color:#1d3a4a; }
.mc-pago-aviso-punto { width:10px; height:10px; flex:none; border-radius:50%; background:#d06a63; box-shadow:0 0 0 4px rgba(208,106,99,.18), 0 0 12px rgba(208,106,99,.5); }
.mc-pago-aviso .mc-pago-aviso-x { flex:none; width:36px; height:36px; margin:0; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.7); color:#161514; font-size:18px; line-height:1; cursor:pointer; }
@keyframes mc-pago-aviso-entra { from { opacity:0; translate:0 12px; } }
@media(prefers-reduced-motion:reduce){ .mc-pago-aviso { animation:none; } }

/* Cotización de envío en segundo plano.
   El bloqueo de WooCommerce sobre #payment (que aquí es display: contents) se extendía por toda la página
   y, aunque era transparente, se tragaba los clics: ahora no recibe clics. Solo el pedido y el botón de pagar esperan. */
.mc-pago--caja .woocommerce-checkout-payment > .blockUI { pointer-events: none !important; }
.mc-calculando-aviso { margin-left: auto; font-size: 13px; font-weight: 500; letter-spacing: 0; color: var(--mc-texto-3, #6b7480); white-space: nowrap; }
.mc-calculando-aviso[hidden] { display: none; }
.mc-calculando .woocommerce-checkout-review-order-table, .mc-calculando [data-eb-total-real] { opacity: .55; transition: opacity .2s ease; }
.mc-pago--caja .woocommerce-checkout-review-order-table, .mc-pago--caja [data-eb-total-real] { transition: opacity .2s ease; }
.mc-calculando #place_order { pointer-events: none; opacity: .6; }
@media (prefers-reduced-motion: reduce) {
  .mc-calculando .woocommerce-checkout-review-order-table, .mc-calculando [data-eb-total-real], .mc-pago--caja .woocommerce-checkout-review-order-table, .mc-pago--caja [data-eb-total-real] { transition: none; }
}

/* ---- Gracias: aviso del correo y botones grandes (principal jade, secundarios de contorno, cancelar con confirmación) ---- */
.mc-gracias-correo { margin: var(--mc-e2) 0 0; padding: var(--mc-e3) var(--mc-e4); max-width: 60ch; border-radius: var(--mc-r-pieza); background: rgba(31,116,128,.08); box-shadow: inset 3px 0 0 var(--mc-acento); font-size: 15px; line-height: 1.55; color: var(--mc-texto-2); }
.mc-gracias-correo strong { color: var(--mc-tinta); overflow-wrap: anywhere; }
.mc-gracias-botones { flex-direction: column; }
.mc-gracias .mc-gracias-botones .mc-boton, .mc-gracias .mc-gracias-cancelar > summary { min-height: 52px; width: 100%; text-align: center; font-size: 16px; line-height: 1.2; padding-top: 12px; padding-bottom: 12px; }
.mc-gracias .mc-gracias-botones .mc-ligero { box-shadow: inset 0 0 0 1px rgba(22,21,20,.22); }
.mc-gracias-cancelar { display: flex; flex-direction: column; gap: var(--mc-e3); margin-top: calc(var(--mc-e2) * -1); }
.mc-gracias-cancelar > summary { list-style: none; }
.mc-gracias-cancelar > summary::-webkit-details-marker { display: none; }
.mc-gracias-cancelar > summary:focus-visible { outline: 2px solid var(--mc-acento); outline-offset: 3px; }
.mc-gracias-confirma { padding: var(--mc-e4); display: flex; flex-direction: column; gap: var(--mc-e3); }
.mc-gracias-confirma > * { margin: 0; }
.mc-gracias-confirma p { max-width: 56ch; font-size: 15px; line-height: 1.55; }
.mc-gracias-cancelar-nota { margin: 0; }
@media (min-width: 640px) {
  .mc-gracias-botones { flex-direction: row; }
  .mc-gracias .mc-gracias-botones .mc-boton, .mc-gracias .mc-gracias-cancelar > summary { width: auto; min-width: 200px; }
  .mc-gracias-cancelar { align-items: flex-start; }
}
