/* Factoría Checkout Visual 1.6.18 — capa final de corrección de estructura, no de pagos. */

/* FINALIZAR COMPRA: una columna ancha real; evita que tema y plugins formen dos columnas. */
body.woocommerce-checkout .site-main article .entry-content > .woocommerce,
body.woocommerce-checkout .site-main article .entry-content .woocommerce,
body.woocommerce-checkout .site-main .woocommerce,
body.woocommerce-checkout .entry-content > .woocommerce {
  width:100%!important; max-width:1160px!important; min-width:0!important;
  margin-left:auto!important; margin-right:auto!important; float:none!important; clear:both!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout form.checkout.woocommerce-checkout,
body.woocommerce-checkout form.woocommerce-checkout {
  display:block!important; width:100%!important; max-width:100%!important; min-width:0!important;
  float:none!important; clear:both!important; margin-left:auto!important; margin-right:auto!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout form.checkout #customer_details,
body.woocommerce-checkout form.checkout #customer_details .col2-set,
body.woocommerce-checkout form.checkout #customer_details .col-1,
body.woocommerce-checkout form.checkout #customer_details .col-2,
body.woocommerce-checkout form.checkout #order_review_heading,
body.woocommerce-checkout form.checkout #order_review,
body.woocommerce-checkout form.checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout form.checkout #payment {
  display:block!important; width:100%!important; max-width:100%!important; min-width:0!important;
  float:none!important; clear:both!important; position:static!important; transform:none!important;
  margin-left:0!important; margin-right:0!important; box-sizing:border-box!important;
}
body.woocommerce-checkout form.checkout #customer_details .col-1,
body.woocommerce-checkout form.checkout #customer_details .col-2 { padding:0!important; }
body.woocommerce-checkout form.checkout #order_review_heading { margin-top:22px!important; }
body.woocommerce-checkout form.checkout #order_review { margin-top:0!important; }

/* Checkbox de recordatorio y envío: pequeño, al lado de su frase y sin cajas gigantes. */
body.woocommerce-checkout label.fdt-inline-check-label,
body.woocommerce-checkout label.fdt-choice-inline,
body.woocommerce-checkout label#ship-to-different-address-checkbox-label,
body.woocommerce-checkout #ship-to-different-address label,
body.woocommerce-checkout label.woocommerce-form__label-for-checkbox,
body.woocommerce-checkout label.woocommerce-form__label-for-checkbox.checkbox {
  display:inline-flex!important; flex-direction:row!important; flex-wrap:nowrap!important;
  align-items:flex-start!important; justify-content:flex-start!important; gap:7px!important;
  width:auto!important; max-width:100%!important; min-width:0!important; height:auto!important; min-height:0!important;
  margin:0!important; padding:0!important; float:none!important; clear:none!important; position:static!important;
  transform:none!important; background:transparent!important; border:0!important; box-shadow:none!important;
  text-align:left!important; vertical-align:top!important; white-space:normal!important; line-height:1.45!important;
  font-size:13px!important; box-sizing:border-box!important;
}
body.woocommerce-checkout .fdt-choice-row,
body.woocommerce-checkout .fdt-choice-row-final,
body.woocommerce-checkout p.fdt-choice-row-final {
  display:block!important; width:100%!important; max-width:100%!important; min-width:0!important;
  height:auto!important; min-height:0!important; margin:8px 0 14px!important; padding:0!important;
  float:none!important; clear:both!important; position:static!important; transform:none!important;
  text-align:left!important; box-sizing:border-box!important;
}
body.woocommerce-checkout input.fdt-compact-choice,
body.woocommerce-checkout .fdt-inline-check-label input[type=checkbox],
body.woocommerce-checkout .fdt-choice-inline input[type=checkbox],
body.woocommerce-checkout #ship-to-different-address input[type=checkbox],
body.woocommerce-checkout label.woocommerce-form__label-for-checkbox input[type=checkbox],
body.woocommerce-checkout #terms {
  appearance:auto!important; -webkit-appearance:checkbox!important; display:inline-block!important;
  flex:0 0 13px!important; width:13px!important; min-width:13px!important; max-width:13px!important;
  height:13px!important; min-height:13px!important; max-height:13px!important;
  margin:2px 0 0!important; padding:0!important; position:static!important; inset:auto!important;
  float:none!important; transform:none!important; align-self:flex-start!important; vertical-align:top!important;
  opacity:1!important; box-sizing:border-box!important;
}
body.woocommerce-checkout #ship-to-different-address {
  display:block!important; width:100%!important; margin:16px 0!important; padding:12px 14px!important;
  float:none!important; clear:both!important; position:static!important; box-sizing:border-box!important;
  border:1px solid #e8e8e8!important; border-radius:10px!important; background:#fff!important;
}
body.woocommerce-checkout #ship-to-different-address label { align-items:center!important; }

/* Texto legal, casilla de aceptación y botón: asterisco junto al texto, nunca flotando en el botón. */
body.woocommerce-checkout #payment .place-order,
body.woocommerce-checkout #payment .form-row.place-order {
  display:flex!important; flex-direction:column!important; align-items:stretch!important; justify-content:flex-start!important;
  gap:10px!important; width:100%!important; max-width:100%!important; min-width:0!important;
  margin:0!important; padding:16px!important; float:none!important; clear:both!important; position:static!important;
  text-align:left!important; box-sizing:border-box!important;
}
body.woocommerce-checkout #payment .place-order .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout #payment .place-order .woocommerce-privacy-policy-text,
body.woocommerce-checkout #payment .place-order .fdt-terms-copy {
  display:block!important; width:100%!important; max-width:100%!important; margin:0!important; padding:0!important;
  float:none!important; clear:both!important; position:static!important; inset:auto!important; transform:none!important;
  text-align:left!important; box-sizing:border-box!important; line-height:1.55!important;
}
body.woocommerce-checkout #payment .place-order .required,
body.woocommerce-checkout #payment .place-order abbr.required,
body.woocommerce-checkout #payment .place-order .required-field,
body.woocommerce-checkout #payment .place-order abbr {
  display:inline!important; position:static!important; inset:auto!important; float:none!important; clear:none!important;
  transform:none!important; margin:0 0 0 3px!important; padding:0!important; color:#e30613!important;
  font-size:inherit!important; line-height:inherit!important; vertical-align:baseline!important;
}
body.woocommerce-checkout #payment .place-order label[for=terms],
body.woocommerce-checkout #payment .place-order label.woocommerce-form__label-for-checkbox,
body.woocommerce-checkout #payment .place-order label.fdt-terms-inline-final {
  display:inline-flex!important; flex-direction:row!important; align-items:flex-start!important; justify-content:flex-start!important;
  gap:7px!important; width:auto!important; max-width:100%!important; margin:0!important; padding:0!important;
  float:none!important; position:static!important; transform:none!important; text-align:left!important; line-height:1.5!important;
}
body.woocommerce-checkout #payment .place-order #place_order,
body.woocommerce-checkout #place_order {
  order:10!important; display:block!important; width:100%!important; max-width:100%!important; min-height:50px!important;
  margin:4px 0 0!important; padding:14px 20px!important; float:none!important; clear:both!important;
  position:static!important; transform:none!important; border-radius:9px!important; box-sizing:border-box!important;
}

/* PEDIDO RECIBIDO: cinco datos en la misma fila, con número al principio y pago al final. */
body.woocommerce-order-received ul.woocommerce-order-overview,
body.woocommerce-order-received .site-main ul.woocommerce-order-overview,
body.woocommerce-order-received .woocommerce 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; justify-content:stretch!important;
  gap:10px!important; width:100%!important; max-width:100%!important; min-width:0!important;
  margin:20px 0 26px!important; padding:0!important; float:none!important; clear:both!important;
  position:static!important; list-style:none!important; box-sizing:border-box!important;
}
body.woocommerce-order-received ul.woocommerce-order-overview > li,
body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li {
  display:flex!important; flex-direction:column!important; align-items:flex-start!important; justify-content:flex-start!important;
  grid-column:auto!important; grid-row:1!important; order:0!important; width:auto!important; min-width:0!important; max-width:none!important;
  min-height:70px!important; margin:0!important; padding:13px!important; float:none!important; clear:none!important;
  position:static!important; transform:none!important; overflow-wrap:anywhere!important; word-break:normal!important;
  border:1px solid #e6e6e6!important; border-top:2px solid #e30613!important; border-radius:9px!important; background:#fff!important;
  font-size:11px!important; line-height:1.45!important; box-sizing:border-box!important;
}
body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__order {grid-column:1!important;grid-row:1!important;order:1!important}
body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__date {grid-column:2!important;grid-row:1!important;order:2!important}
body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__email {grid-column:3!important;grid-row:1!important;order:3!important}
body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__total {grid-column:4!important;grid-row:1!important;order:4!important}
body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__payment-method {grid-column:5!important;grid-row:1!important;order:5!important}
body.woocommerce-order-received ul.woocommerce-order-overview > li strong {display:block!important;width:100%!important;margin:6px 0 0!important;font-size:13px!important;line-height:1.4!important;overflow-wrap:anywhere!important}
body.woocommerce-order-received .woocommerce-notice--success.woocommerce-thankyou-order-received {display:none!important}

/* Detalles del pedido: encabezado y columnas estables; cada característica alinea etiqueta y valor. */
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-order-details table.shop_table,
body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details {
  width:100%!important; max-width:100%!important; min-width:0!important; margin-left:0!important; margin-right:0!important;
  float:none!important; clear:both!important; table-layout:fixed!important; border-collapse:collapse!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce-order-details table.shop_table th,
body.woocommerce-order-received .woocommerce-order-details table.shop_table td,
body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details th,
body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details td {
  vertical-align:top!important; text-align:left!important; padding:12px 10px!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce-order-details table.shop_table thead th:last-child,
body.woocommerce-order-received .woocommerce-order-details table.shop_table td.product-total,
body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details thead th:last-child,
body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details td:last-child {width:22%!important;text-align:right!important}
body.woocommerce-order-received .woocommerce-order-details table.shop_table thead th:first-child,
body.woocommerce-order-received .woocommerce-order-details table.shop_table td.product-name,
body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details thead th:first-child {width:78%!important}
body.woocommerce-order-received .woocommerce-order-details td.product-name {overflow-wrap:anywhere!important;word-break:normal!important}
body.woocommerce-order-received .woocommerce-order-details td.product-name p.fdt-product-meta-row,
body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-row {
  display:flex!important; flex-direction:column!important; flex-wrap:nowrap!important; align-items:stretch!important; gap:5px!important;
  width:100%!important; max-width:100%!important; margin:8px 0 0!important; padding:0!important;
  float:none!important; clear:both!important; text-align:left!important; font-size:13px!important; line-height:1.5!important;
}
body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-item {
  display:flex!important; flex-direction:row!important; flex-wrap:nowrap!important; align-items:baseline!important; gap:8px!important;
  width:100%!important; max-width:100%!important; min-width:0!important; margin:0!important; padding:0!important;
  float:none!important; clear:both!important; white-space:normal!important; overflow-wrap:anywhere!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-item strong,
body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-item b {
  display:inline-block!important; flex:0 0 145px!important; width:145px!important; min-width:145px!important; max-width:145px!important;
  margin:0!important; padding:0!important; float:none!important; font-weight:700!important; color:#333!important;
}
body.woocommerce-order-received .woocommerce-order-details td.product-name dl.variation,
body.woocommerce-order-received .woocommerce-order-details td.product-name dl.wc-item-meta,
body.woocommerce-order-received .woocommerce-order-details td.product-name dl.fdt-product-meta-final {
  display:grid!important; grid-template-columns:minmax(120px,0.38fr) minmax(0,1fr)!important; align-items:baseline!important;
  column-gap:12px!important; row-gap:6px!important; width:100%!important; max-width:100%!important; margin:8px 0 0!important; padding:0!important;
  font-size:13px!important; line-height:1.5!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce-order-details td.product-name dl.variation dt,
body.woocommerce-order-received .woocommerce-order-details td.product-name dl.wc-item-meta dt,
body.woocommerce-order-received .woocommerce-order-details td.product-name dl.variation dd,
body.woocommerce-order-received .woocommerce-order-details td.product-name dl.wc-item-meta dd {float:none!important;width:auto!important;margin:0!important;padding:0!important}

/* Direcciones de facturación/envío: un contenedor común, dos columnas iguales reales. */
body.woocommerce-order-received .woocommerce .woocommerce-customer-details,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details.fdt-address-root-hard {
  display:block!important; width:100%!important; max-width:100%!important; min-width:0!important;
  margin:24px 0!important; padding:20px!important; float:none!important; clear:both!important;
  position:static!important; transform:none!important; grid-column:1/-1!important; box-sizing:border-box!important;
  border:1px solid #e8e8e8!important; border-radius:14px!important; background:#fff!important;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid {
  display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; align-items:stretch!important;
  gap:20px!important; width:100%!important; max-width:100%!important; min-width:0!important;
  margin:0!important; padding:0!important; float:none!important; clear:both!important; position:static!important;
  transform:none!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid > .woocommerce-column,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid > .col-1,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid > .col-2,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid > div {
  display:flex!important; flex-direction:column!important; align-items:stretch!important; justify-content:flex-start!important;
  grid-column:auto!important; width:100%!important; max-width:none!important; min-width:0!important; height:auto!important; min-height:0!important;
  margin:0!important; padding:0!important; float:none!important; clear:none!important; position:static!important; transform:none!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid .woocommerce-column__title,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid h2,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid h3 {
  display:block!important; width:100%!important; max-width:none!important; margin:0 0 10px!important; padding:0 0 10px!important;
  float:none!important; clear:both!important; position:static!important; transform:none!important; text-align:left!important;
  font-size:19px!important; line-height:1.35!important; white-space:normal!important; overflow-wrap:normal!important;
  border-bottom:1px solid #eee!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid address {
  display:block!important; width:100%!important; max-width:none!important; min-width:0!important; min-height:150px!important; height:auto!important;
  margin:0!important; padding:18px!important; float:none!important; position:static!important; transform:none!important;
  border:1px solid #e5e5e5!important; border-radius:10px!important; background:#fafafa!important; font-size:14px!important;
  line-height:1.65!important; font-style:normal!important; overflow-wrap:anywhere!important; box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .col2-set:empty,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .addresses:empty,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-columns--addresses:empty,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details section.addresses:empty {display:none!important}

/* Elimina solo el código literal EUR; conserva el símbolo €. */
body.woocommerce-cart .woocommerce-Price-currencyCode,
body.woocommerce-checkout .woocommerce-Price-currencyCode,
body.woocommerce-order-received .woocommerce-Price-currencyCode {display:none!important}

@media (max-width:1100px) {
  body.woocommerce-order-received ul.woocommerce-order-overview,
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview {grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.woocommerce-order-received ul.woocommerce-order-overview > li,
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li {grid-row:auto!important}
}
@media (max-width:767px) {
  body.woocommerce-checkout .site-main article .entry-content > .woocommerce,
  body.woocommerce-checkout .site-main article .entry-content .woocommerce,
  body.woocommerce-checkout .site-main .woocommerce,
  body.woocommerce-checkout .entry-content > .woocommerce {width:100%!important;max-width:100%!important;padding-left:12px!important;padding-right:12px!important}
  body.woocommerce-checkout form.checkout #customer_details,
  body.woocommerce-checkout form.checkout #order_review,
  body.woocommerce-checkout form.checkout #payment,
  body.woocommerce-checkout form.checkout .woocommerce-checkout-review-order {width:100%!important;max-width:100%!important;min-width:0!important;padding-left:0!important;padding-right:0!important}
  body.woocommerce-checkout #payment .place-order {padding:12px!important}
  body.woocommerce-checkout #payment .place-order label[for=terms],
  body.woocommerce-checkout #payment .place-order label.woocommerce-form__label-for-checkbox {font-size:12px!important;line-height:1.45!important}
  body.woocommerce-order-received ul.woocommerce-order-overview,
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview,
  body.woocommerce-order-received .woocommerce ul.woocommerce-order-overview {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  body.woocommerce-order-received ul.woocommerce-order-overview > li,
  body.woocommerce-order-received .site-main ul.woocommerce-order-overview > li {grid-row:auto!important;padding:11px!important;font-size:10px!important;min-height:62px!important}
  body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__order {grid-column:1!important;grid-row:1!important}
  body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__date {grid-column:2!important;grid-row:1!important}
  body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__email {grid-column:1!important;grid-row:2!important}
  body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__total {grid-column:2!important;grid-row:2!important}
  body.woocommerce-order-received ul.woocommerce-order-overview > li.woocommerce-order-overview__payment-method {grid-column:1/-1!important;grid-row:3!important}
  body.woocommerce-order-received .woocommerce-order-details table.shop_table th,
  body.woocommerce-order-received .woocommerce-order-details table.shop_table td {padding:9px 6px!important;font-size:12px!important}
  body.woocommerce-order-received .woocommerce-order-details table.shop_table td.product-name {width:76%!important}
  body.woocommerce-order-received .woocommerce-order-details table.shop_table td.product-total {width:24%!important}
  body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-row {gap:5px!important;font-size:12px!important}
  body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-item {gap:6px!important;align-items:flex-start!important}
  body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-item strong,
  body.woocommerce-order-received .woocommerce-order-details td.product-name .fdt-product-meta-item b {flex:0 0 112px!important;width:112px!important;min-width:112px!important;max-width:112px!important}
  body.woocommerce-order-received .woocommerce-order-details td.product-name dl.variation,
  body.woocommerce-order-received .woocommerce-order-details td.product-name dl.wc-item-meta {grid-template-columns:minmax(95px,0.42fr) minmax(0,1fr)!important;column-gap:7px!important;font-size:12px!important}
  body.woocommerce-order-received .woocommerce .woocommerce-customer-details,
  body.woocommerce-order-received .woocommerce .woocommerce-customer-details.fdt-address-root-hard {padding:13px!important;margin:18px 0!important}
  body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid {grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  body.woocommerce-order-received .woocommerce .woocommerce-customer-details .fdt-addresses-hard-grid address {min-height:0!important;padding:15px!important;font-size:14px!important}
}
