/* Factoría de Tinta — 1.6.7. Correcciones finales de alineación y responsive.
   Solo presentación; no cambia lógica de WooCommerce ni los métodos de pago. */

/* Carrito vacío: una tarjeta proporcionada, centrada y coherente con la marca. */
body.woocommerce-cart .site-main .woocommerce:has(.cart-empty) {
  max-width: 1000px !important;
}
body.woocommerce-cart .site-main .woocommerce .cart-empty {
  display: block !important;
  width: min(100%, 760px) !important;
  min-height: 0 !important;
  margin: 28px auto 0 !important;
  padding: 30px 28px 12px !important;
  border: 1px solid #e8e8e8 !important;
  border-bottom: 0 !important;
  border-radius: 16px 16px 0 0 !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  text-align: center !important;
  overflow-wrap: anywhere !important;
}
body.woocommerce-cart .site-main .woocommerce .cart-empty::before {
  display: block !important;
  position: static !important;
  margin: 0 auto 12px !important;
  font-size: 30px !important;
  line-height: 1 !important;
}
body.woocommerce-cart .site-main .woocommerce .cart-empty::after { content: none !important; display:none !important; }
body.woocommerce-cart .site-main .woocommerce .return-to-shop {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 12px !important;
  width: min(100%, 760px) !important;
  margin: 0 auto 28px !important;
  padding: 0 28px 26px !important;
  border: 1px solid #e8e8e8 !important;
  border-top: 0 !important;
  border-radius: 0 0 16px 16px !important;
  background: #fff !important;
  text-align: center !important;
}
body.woocommerce-cart .site-main .woocommerce .return-to-shop::before {
  content: "Parece que aún no has añadido ningún producto a tu carrito." !important;
  display: block !important; position: static !important; width:100% !important; max-width: 460px !important;
  margin:0 auto !important; padding:0 !important; color:#666 !important; font-size:15px !important; line-height:1.55 !important;
  white-space:normal !important; overflow-wrap:normal !important;
}
body.woocommerce-cart .site-main .woocommerce .return-to-shop a.button,
body.woocommerce-cart .site-main .woocommerce a.button.wc-backward {
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  width:auto !important; min-width:190px !important; max-width:100% !important; min-height:44px !important;
  margin:0 auto !important; padding:12px 24px !important; border:0 !important; border-radius:8px !important;
  background:#e30613 !important; color:#fff !important; font-size:14px !important; font-weight:800 !important;
  line-height:1.35 !important; white-space:normal !important; text-align:center !important;
}

/* Checkboxes: control compacto y junto a su texto, sin columnas ni centrado vertical extraño. */
body.woocommerce-checkout p.form-row:has(input[type="checkbox"]),
body.woocommerce-checkout .woocommerce-form-row:has(input[type="checkbox"]),
body.woocommerce-checkout .woocommerce-shipping-fields > p,
body.woocommerce-checkout .woocommerce-form__label-for-checkbox {
  display:flex !important; flex-flow:row nowrap !important; align-items:flex-start !important; justify-content:flex-start !important;
  gap:8px !important; width:100% !important; height:auto !important; min-height:0 !important; margin:8px 0 14px !important;
  padding:0 !important; text-align:left !important; border:0 !important; background:transparent !important; box-shadow:none !important;
}
body.woocommerce-checkout p.form-row:has(input[type="checkbox"]) input[type="checkbox"],
body.woocommerce-checkout .woocommerce-form__label-for-checkbox input[type="checkbox"],
body.woocommerce-checkout .woocommerce-shipping-fields input[type="checkbox"] {
  -webkit-appearance:checkbox !important; appearance:checkbox !important; position:static !important; inset:auto !important;
  flex:0 0 15px !important; display:inline-block !important; width:15px !important; min-width:15px !important; max-width:15px !important;
  height:15px !important; min-height:15px !important; max-height:15px !important; margin:3px 0 0 !important; padding:0 !important;
  transform:none !important; border-radius:2px !important; box-shadow:none !important; vertical-align:top !important;
}
body.woocommerce-checkout p.form-row:has(input[type="checkbox"]) label,
body.woocommerce-checkout .woocommerce-form__label-for-checkbox span,
body.woocommerce-checkout .woocommerce-shipping-fields label {
  flex:1 1 auto !important; min-width:0 !important; width:auto !important; margin:0 !important; padding:0 !important;
  line-height:1.45 !important; font-size:14px !important; white-space:normal !important; text-align:left !important;
}

/* Confirmación de pedido: cinco tarjetas en una línea; el número es la primera y el pago el último. */
body.woocommerce-order-received .site-main ul.woocommerce-order-overview {
  display:grid !important; grid-template-columns:repeat(5,minmax(0,1fr)) !important; grid-auto-flow:row !important;
  align-items:stretch !important; gap:10px !important; width:100% !important; max-width:100% !important;
  margin:0 0 24px !important; padding:0 !important; float:none !important;
}
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li {
  display:flex !important; flex-direction:column !important; justify-content:flex-start !important; align-self:stretch !important;
  grid-column:auto !important; grid-row:auto !important; order:initial !important; float:none !important;
  width:100% !important; min-width:0 !important; max-width:100% !important; min-height:76px !important;
  margin:0 !important; padding:12px !important; border:1px solid #e7e7e7 !important; border-top:3px solid #e30613 !important;
  border-radius:10px !important; box-sizing:border-box !important; overflow-wrap:anywhere !important; line-height:1.4 !important;
}
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li.woocommerce-order-overview__order { order:1 !important; }
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li.woocommerce-order-overview__date { order:2 !important; }
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li.woocommerce-order-overview__email { order:3 !important; }
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li.woocommerce-order-overview__total { order:4 !important; }
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li.woocommerce-order-overview__payment-method { order:5 !important; grid-column:auto !important; }
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li strong { display:block !important; margin:7px 0 0 !important; line-height:1.4 !important; overflow-wrap:anywhere !important; }

/* Datos de variación del producto: cada etiqueta y valor quedan en una misma línea base. */
body.woocommerce-order-received .site-main .woocommerce-order-details table.shop_table dl.variation,
body.woocommerce-order-received .site-main .woocommerce-order-details table.shop_table dl.wc-item-meta {
  display:grid !important; grid-template-columns:max-content minmax(0,1fr) !important; align-items:baseline !important;
  column-gap:6px !important; row-gap:3px !important; margin:7px 0 0 !important; line-height:1.45 !important;
}
body.woocommerce-order-received .site-main .woocommerce-order-details table.shop_table dl.variation dt,
body.woocommerce-order-received .site-main .woocommerce-order-details table.shop_table dl.variation dd {
  display:block !important; float:none !important; position:static !important; align-self:baseline !important;
  width:auto !important; min-width:0 !important; margin:0 !important; padding:0 !important; line-height:1.45 !important;
  overflow-wrap:anywhere !important;
}
body.woocommerce-order-received .site-main .woocommerce-order-details table.shop_table dl.variation dt { font-weight:700 !important; }

/* Direcciones simétricas, ambas arrancan a la misma altura. */
body.woocommerce-order-received .site-main .woocommerce-customer-details,
body.woocommerce-order-received .site-main .woocommerce-customer-details .col2-set,
body.woocommerce-order-received .site-main .woocommerce-customer-details .addresses,
body.woocommerce-order-received .site-main .woocommerce-customer-details .woocommerce-columns--addresses,
body.woocommerce-order-received .site-main .woocommerce-columns--addresses {
  display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; align-items:stretch !important;
  gap:16px !important; width:100% !important; max-width:100% !important; min-width:0 !important;
}
body.woocommerce-order-received .site-main .woocommerce-customer-details > h2,
body.woocommerce-order-received .site-main .woocommerce-customer-details > h3 { grid-column:1/-1 !important; margin:0 0 4px !important; }
body.woocommerce-order-received .site-main .woocommerce-customer-details .col-1,
body.woocommerce-order-received .site-main .woocommerce-customer-details .col-2,
body.woocommerce-order-received .site-main .woocommerce-column--billing-address,
body.woocommerce-order-received .site-main .woocommerce-column--shipping-address,
body.woocommerce-order-received .site-main .woocommerce-columns--addresses .woocommerce-column {
  display:block !important; float:none !important; position:static !important; width:100% !important; max-width:100% !important;
  min-width:0 !important; margin:0 !important; padding:0 !important; align-self:stretch !important;
}
body.woocommerce-order-received .site-main .woocommerce-customer-details address {
  width:100% !important; min-height:100% !important; height:100% !important; margin:0 !important; padding:14px !important;
  border:1px solid #e7e7e7 !important; border-radius:10px !important; background:#fff !important;
  line-height:1.55 !important; overflow-wrap:anywhere !important;
}

@media(max-width:767px) {
  body.woocommerce-cart .site-main .woocommerce .cart-empty { width:100% !important; margin-top:18px !important; padding:24px 18px 10px !important; font-size:21px !important; }
  body.woocommerce-cart .site-main .woocommerce .return-to-shop { width:100% !important; padding:0 18px 22px !important; margin-bottom:20px !important; }
  body.woocommerce-cart .site-main .woocommerce .return-to-shop a.button,
  body.woocommerce-cart .site-main .woocommerce a.button.wc-backward { width:100% !important; min-width:0 !important; }
  body.woocommerce-checkout p.form-row:has(input[type="checkbox"]),
  body.woocommerce-checkout .woocommerce-form__label-for-checkbox,
  body.woocommerce-checkout .woocommerce-shipping-fields > p { align-items:flex-start !important; gap:8px !important; }
  body.woocommerce-checkout p.form-row:has(input[type="checkbox"]) label,
  body.woocommerce-checkout .woocommerce-form__label-for-checkbox span,
  body.woocommerce-checkout .woocommerce-shipping-fields label { font-size:13px !important; line-height:1.45 !important; }
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px !important; }
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li { min-height:70px !important; padding:10px !important; font-size:11px !important; }
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li strong { font-size:12px !important; }
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li.woocommerce-order-overview__order { grid-column:1/-1 !important; }
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li.woocommerce-order-overview__payment-method { grid-column:1/-1 !important; }
  body.woocommerce-order-received .site-main .woocommerce-customer-details,
  body.woocommerce-order-received .site-main .woocommerce-customer-details .col2-set,
  body.woocommerce-order-received .site-main .woocommerce-customer-details .addresses,
  body.woocommerce-order-received .site-main .woocommerce-customer-details .woocommerce-columns--addresses,
  body.woocommerce-order-received .site-main .woocommerce-columns--addresses { grid-template-columns:minmax(0,1fr) !important; gap:12px !important; }
  body.woocommerce-order-received .site-main .woocommerce-customer-details address { height:auto !important; min-height:0 !important; }
}
@media(min-width:768px) and (max-width:1050px) {
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
