/* ============================================================
   LA OLA · Carrito, checkout, pedido recibido y carrito flotante
   Solo estilos: no cambia cómo funcionan WooCommerce, Modern Cart,
   Mercado Pago ni dLocal Go.
   ============================================================ */
body.lo-ck{
  --lo-bg:#1f1f1f;--lo-surface:#262728;--lo-surface2:#2e2f31;--lo-ink:#f2f3f5;--lo-muted:#a9adb3;--lo-soft:#c9ccd0;
  --lo-accent:#5cc2e4;--lo-dark:#0f1113;--lo-line:rgba(255,255,255,.1);--lo-field:rgba(255,255,255,.04);--lo-tile:#eeeeec;--lo-bad:#ff9a8f;
}

/* ---------- Página (carrito / checkout) ---------- */
body.lo-ck{background:var(--lo-bg)!important}
/* Encabezado simple del checkout (Astra "sin distracciones"): mismo negro que el resto del sitio */
body.lo-ck .main-header-bar,body.lo-ck #masthead .main-header-bar-wrap{background:#000!important;border-bottom:0!important}
body.lo-ck #page,body.lo-ck .site-content,body.lo-ck #primary,body.lo-ck #primary article,body.lo-ck .ast-article-single{background:var(--lo-bg)!important;box-shadow:none!important;border:0!important}
body.lo-ck #content > .ast-container{max-width:1240px!important;padding-left:24px!important;padding-right:24px!important}
body.lo-ck #primary{width:100%!important;margin:0!important;padding:48px 0 96px!important;color:var(--lo-soft);font-family:Inter,sans-serif}
body.lo-ck.ast-separate-container #primary article{padding:0!important}
body.lo-ck #primary *{box-sizing:border-box}
body.lo-ck #primary a{color:var(--lo-accent)}
body.lo-ck #primary a:focus-visible,body.lo-ck #primary button:focus-visible,body.lo-ck #primary input:focus-visible{outline:2px solid var(--lo-accent)!important;outline-offset:2px}
body.lo-ck .entry-header{margin:0 0 28px!important;padding:0!important;text-align:left!important}
body.lo-ck .entry-title{display:flex!important;flex-direction:column;gap:12px;margin:0!important;color:var(--lo-ink)!important;
  font-family:Anton,sans-serif!important;font-weight:400!important;text-transform:uppercase!important;font-size:clamp(40px,5.4vw,78px)!important;line-height:.92!important;letter-spacing:.005em}
body.lo-ck .entry-title::before{content:"Tienda La Ola";display:flex;align-items:center;font-family:"Bebas Neue",sans-serif;font-size:18px;letter-spacing:.18em;line-height:1;color:var(--lo-accent);
  background:linear-gradient(var(--lo-accent),var(--lo-accent)) left center/32px 2px no-repeat;padding-left:44px}
body.lo-ck #primary h2,body.lo-ck #primary h3{color:var(--lo-ink)!important;font-family:Anton,sans-serif!important;font-weight:400!important;text-transform:uppercase!important;letter-spacing:.005em;line-height:1!important}
body.lo-ck .woocommerce-Price-amount{color:inherit;font-variant-numeric:tabular-nums}

/* Avisos */
body.lo-ck .woocommerce-notices-wrapper:not(:empty){margin-bottom:20px}
body.lo-ck #primary .woocommerce-message,body.lo-ck #primary .woocommerce-info,body.lo-ck #primary .woocommerce-error,body.lo-ck #primary .woocommerce-NoticeGroup .woocommerce-error{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 12px!important;padding:14px 18px!important;list-style:none!important;
  border:0!important;border-radius:16px!important;background:var(--lo-surface)!important;color:var(--lo-ink)!important;outline:1px solid var(--lo-line);outline-offset:-1px;font-size:14.5px!important;line-height:1.5}
body.lo-ck #primary .woocommerce-message::before,body.lo-ck #primary .woocommerce-info::before{position:static!important;color:var(--lo-accent)!important;margin:0!important}
body.lo-ck #primary .woocommerce-error{flex-direction:column;align-items:flex-start;outline-color:rgba(255,154,143,.5)}
body.lo-ck #primary .woocommerce-error::before{position:static!important;color:var(--lo-bad)!important;margin:0!important}
body.lo-ck #primary .woocommerce-error li{margin:0!important;padding:0!important;color:var(--lo-ink)!important}
body.lo-ck #primary .woocommerce-message .button,body.lo-ck #primary .woocommerce-info .button{order:2;margin-left:auto!important;float:none!important}
body.lo-ck #primary .woocommerce-info a{color:var(--lo-accent)!important;font-weight:600}

/* Botones */
body.lo-ck #primary .button,body.lo-ck #primary button.button,body.lo-ck #primary input.button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 20px!important;margin:0;border-radius:999px!important;cursor:pointer;
  border:1px solid rgba(255,255,255,.25)!important;background:transparent!important;color:var(--lo-ink)!important;box-shadow:none!important;text-shadow:none!important;
  font-family:"Bebas Neue",sans-serif!important;font-weight:400!important;font-size:19px!important;letter-spacing:.08em;line-height:1!important;text-transform:none!important;transition:border-color .25s,color .25s,filter .25s,opacity .25s}
body.lo-ck #primary .button:hover{border-color:var(--lo-accent)!important;color:var(--lo-accent)!important}
body.lo-ck #primary .button:disabled,body.lo-ck #primary .button.disabled{opacity:.4!important;cursor:not-allowed}
body.lo-ck #primary .checkout-button,body.lo-ck #primary #place_order,body.lo-ck #primary .return-to-shop .button,body.lo-ck #primary .woocommerce-message .button{
  border:0!important;background:var(--lo-accent)!important;color:var(--lo-dark)!important}
body.lo-ck #primary .checkout-button:hover,body.lo-ck #primary #place_order:hover,body.lo-ck #primary .return-to-shop .button:hover,body.lo-ck #primary .woocommerce-message .button:hover{filter:brightness(1.08);color:var(--lo-dark)!important}
body.lo-ck #primary .checkout-button,body.lo-ck #primary #place_order{
  display:flex!important;width:100%!important;min-height:58px;justify-content:space-between;padding:0 10px 0 26px!important;margin:0!important;float:none!important;font-size:23px!important}
body.lo-ck #primary .checkout-button::after,body.lo-ck #primary #place_order::after{content:"";width:38px;height:38px;flex:none;border-radius:50%;
  background:var(--lo-dark) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235cc2e4' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
body.lo-ck #primary .checkout-button:hover::after,body.lo-ck #primary #place_order:hover::after{transform:translateX(3px)}

/* Campos */
body.lo-ck #primary input.input-text,body.lo-ck #primary input[type="text"],body.lo-ck #primary input[type="email"],body.lo-ck #primary input[type="tel"],
body.lo-ck #primary input[type="password"],body.lo-ck #primary input[type="number"],body.lo-ck #primary textarea,body.lo-ck #primary select{
  width:100%;min-height:52px;margin:0;padding:14px 16px!important;border-radius:12px!important;border:1px solid rgba(255,255,255,.18)!important;
  background-color:var(--lo-field)!important;color:var(--lo-ink)!important;box-shadow:none!important;font-family:Inter,sans-serif!important;font-size:15px!important;line-height:1.3!important;transition:border-color .2s}
body.lo-ck #primary textarea{min-height:110px}
body.lo-ck #primary input::placeholder,body.lo-ck #primary textarea::placeholder{color:var(--lo-muted)!important;opacity:1}
body.lo-ck #primary input:focus,body.lo-ck #primary textarea:focus,body.lo-ck #primary select:focus{border-color:var(--lo-accent)!important;outline:0}
body.lo-ck #primary select{-webkit-appearance:none;appearance:none;padding-right:40px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235cc2e4' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:14px!important}
body.lo-ck #primary select option{background:var(--lo-surface);color:var(--lo-ink)}
body.lo-ck #primary .form-row label,body.lo-ck #primary label{color:var(--lo-muted)!important;font-size:13px;font-weight:500}
body.lo-ck #primary .form-row .required{color:var(--lo-accent)!important;text-decoration:none}
body.lo-ck #primary .form-row.woocommerce-invalid input.input-text,body.lo-ck #primary .form-row.woocommerce-invalid select{border-color:var(--lo-bad)!important}
body.lo-ck #primary input[type="checkbox"],body.lo-ck #primary input[type="radio"]{accent-color:var(--lo-accent);width:18px;height:18px;min-height:0;margin:0 8px 0 0;vertical-align:-3px}
/* Etiquetas flotantes de Astra */
body.lo-ck #primary .ast-animate-input label,body.lo-ck #primary .form-row.ast-animate-input label{background:transparent!important;color:var(--lo-muted)!important}
/* Selectores con búsqueda (país / departamento) */
body.lo-ck .select2-container--default .select2-selection--single{height:52px!important;border-radius:12px!important;border:1px solid rgba(255,255,255,.18)!important;background:var(--lo-field)!important}
body.lo-ck .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:50px!important;padding-left:16px!important;padding-right:40px!important;color:var(--lo-ink)!important}
body.lo-ck .select2-container--default .select2-selection--single .select2-selection__arrow{height:50px!important;right:10px!important}
/* Etiqueta flotante de Astra: cuando el campo tiene texto la etiqueta queda arriba, chiquita,
   y el texto del campo baja para no encimarse */
body.lo-ck #primary .form-row label:not(.checkbox):not(.radio):not(.woocommerce-form__label-for-checkbox){
  padding:0 17px!important;margin-top:8px!important;font-size:11.5px!important;font-weight:500!important;line-height:1.3!important;letter-spacing:.01em}
body.lo-ck #primary .form-row.ast-animate-input input.input-text,body.lo-ck #primary .form-row.ast-animate-input input[type="text"],
body.lo-ck #primary .form-row.ast-animate-input input[type="email"],body.lo-ck #primary .form-row.ast-animate-input input[type="tel"],
body.lo-ck #primary .form-row.ast-animate-input input[type="password"],body.lo-ck #primary .form-row.ast-animate-input input[type="number"]{padding:25px 16px 7px!important}
body.lo-ck #primary .form-row.ast-animate-input textarea{padding:28px 16px 10px!important}
body.lo-ck #primary .form-row.ast-animate-input select{padding:25px 40px 7px 16px!important}
body.lo-ck .form-row .select2-container--default .select2-selection--single{padding:0!important}
body.lo-ck .form-row.ast-animate-input .select2-container--default .select2-selection--single{padding:22px 0 0!important}
body.lo-ck .form-row.ast-animate-input .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:24px!important;padding:0 40px 0 16px!important}
body.lo-ck .select2-dropdown{background:var(--lo-surface)!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;overflow:hidden;color:var(--lo-ink)}
body.lo-ck .select2-search--dropdown .select2-search__field{background:var(--lo-field)!important;border:1px solid rgba(255,255,255,.18)!important;color:var(--lo-ink)!important;border-radius:8px}
body.lo-ck .select2-results__option{color:var(--lo-ink)}
body.lo-ck .select2-container--default .select2-results__option--highlighted[aria-selected],body.lo-ck .select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--lo-accent)!important;color:var(--lo-dark)!important}

/* Mientras WooCommerce actualiza (overlay) */
body.lo-ck .blockUI.blockOverlay{background:var(--lo-bg)!important;opacity:.6!important}

/* Tarjeta de resumen (carrito y checkout) */
body.lo-ck #primary .cart_totals,body.lo-ck #primary #order_review{padding:26px!important;border-radius:22px!important;background:var(--lo-surface)!important;border:0!important;outline:1px solid var(--lo-line);outline-offset:-1px;box-shadow:none!important}
body.lo-ck #primary .cart_totals > h2,body.lo-ck #primary #order_review_heading{margin:0 0 18px!important;padding:0!important;border:0!important;font-size:30px!important;background:none!important}
body.lo-ck #primary table.shop_table{width:100%;margin:0!important;border:0!important;border-radius:0!important;border-collapse:collapse!important;background:transparent!important}
body.lo-ck #primary table.shop_table th,body.lo-ck #primary table.shop_table td{padding:14px 0!important;border:0!important;border-top:1px solid var(--lo-line)!important;background:transparent!important;color:var(--lo-soft)!important;vertical-align:top;font-size:14.5px;line-height:1.45}
body.lo-ck #primary table.shop_table tr:first-child > th,body.lo-ck #primary table.shop_table tr:first-child > td{border-top:0!important}
body.lo-ck #primary table.shop_table th{color:var(--lo-muted)!important;font-weight:500!important;text-align:left}
body.lo-ck #primary table.shop_table td{text-align:right;color:var(--lo-ink)!important}
body.lo-ck #primary table.shop_table .order-total th,body.lo-ck #primary table.shop_table .order-total td{padding-top:18px!important;color:var(--lo-ink)!important;font-size:15px}
body.lo-ck #primary table.shop_table .order-total td strong,body.lo-ck #primary table.shop_table .order-total .amount{font-size:26px!important;font-weight:700!important;color:var(--lo-ink)!important}
body.lo-ck #primary table.shop_table .order-total .includes_tax{display:block;font-size:12px;color:var(--lo-muted)}

/* Opciones de envío como tarjetas */
body.lo-ck #primary #shipping_method{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:8px;text-align:left}
body.lo-ck #primary #shipping_method li{position:relative;margin:0!important;padding:0!important;text-indent:0!important}
body.lo-ck #primary #shipping_method li input{position:absolute;left:14px;top:50%;transform:translateY(-50%);margin:0!important;z-index:1}
body.lo-ck #primary #shipping_method li label{display:block!important;margin:0!important;padding:12px 14px 12px 42px;border-radius:12px;border:1px solid rgba(255,255,255,.16);
  color:var(--lo-ink)!important;font-size:13.5px!important;font-weight:500;line-height:1.35;cursor:pointer;transition:border-color .2s,background .2s}
body.lo-ck #primary #shipping_method li:has(input:checked) label,body.lo-ck #primary #shipping_method li input[type="hidden"] + label{border-color:var(--lo-accent);background:rgba(92,194,228,.08)}
body.lo-ck #primary #shipping_method li input[type="hidden"] + label{padding-left:14px}
body.lo-ck #primary #shipping_method .amount{font-weight:700}
body.lo-ck #primary .woocommerce-shipping-destination{margin:10px 0 4px!important;font-size:12.5px;color:var(--lo-muted)!important;text-align:left}
body.lo-ck #primary .woocommerce-shipping-destination strong{color:var(--lo-soft)}
body.lo-ck #primary .shipping-calculator-button{font-size:13px;font-weight:600;color:var(--lo-accent)!important}
body.lo-ck #primary .shipping-calculator-button::after{display:none!important}
body.lo-ck #primary .shipping-calculator-form{margin-top:12px;text-align:left}
body.lo-ck #primary .shipping-calculator-form p{margin:0 0 10px!important}
body.lo-ck #primary td[data-title="Envío"]{text-align:left!important}

/* Beneficios (agregado por el plugin) */
body.lo-ck .lo-ck-perks{list-style:none!important;margin:18px 0 0!important;padding:16px 0 0!important;border-top:1px solid var(--lo-line);display:flex;flex-direction:column;gap:12px}
body.lo-ck .lo-ck-perks li{display:flex;align-items:center;gap:12px;margin:0!important;font-size:13.5px;line-height:1.4;color:var(--lo-soft)}
body.lo-ck .lo-ck-perks strong{color:var(--lo-ink);font-weight:600}
body.lo-ck .lo-ck-perk-ic{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:rgba(92,194,228,.12);color:var(--lo-accent)}
body.lo-ck .lo-ck-perk-ic svg{width:17px;height:17px}

/* ============================================================
   CARRITO
   ============================================================ */
body.lo-ck.woocommerce-cart #ast-cart-wrapper{display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:40px;align-items:start}
body.lo-ck.woocommerce-cart #ast-cart-wrapper > *{width:auto!important;float:none!important;margin:0!important;min-width:0}
/* Productos, sugeridos y resumen como piezas de la misma grilla (en celular el resumen va antes que los sugeridos) */
body.lo-ck.woocommerce-cart #ast-cart-wrapper > .ast-cart-non-sticky{display:contents!important}
body.lo-ck.woocommerce-cart #ast-cart-wrapper .woocommerce-cart-form{grid-column:1;grid-row:1;min-width:0;margin:0!important}
body.lo-ck.woocommerce-cart #ast-cart-wrapper .cross-sells{grid-column:1;grid-row:2;min-width:0}
body.lo-ck.woocommerce-cart #ast-cart-wrapper > .cart-collaterals{grid-column:2;grid-row:1 / span 2}
body.lo-ck.woocommerce-cart .cart-collaterals{display:block!important;width:auto!important}
body.lo-ck.woocommerce-cart .cart-collaterals .cart_totals{width:100%!important;float:none!important;position:sticky;top:24px}
body.lo-ck.woocommerce-cart #ast-checkout-coupon{display:none!important}

/* Productos del carrito como tarjetas */
body.lo-ck #primary table.cart{display:block}
body.lo-ck #primary table.cart thead{display:none!important}
body.lo-ck #primary table.cart tbody{display:flex!important;flex-direction:column;gap:12px}
body.lo-ck #primary table.cart tr.cart_item{display:grid!important;grid-template-columns:96px minmax(0,1fr) auto;grid-template-areas:"img name remove" "img qty sub";
  align-items:center;gap:8px 18px;padding:14px!important;border-radius:18px;background:var(--lo-surface);outline:1px solid var(--lo-line);outline-offset:-1px}
body.lo-ck #primary table.cart tr.cart_item td{display:block!important;padding:0!important;border:0!important;background:transparent!important;text-align:left!important;min-width:0}
body.lo-ck #primary table.cart tr.cart_item td::before{display:none!important}
body.lo-ck #primary table.cart td.product-thumbnail{grid-area:img;width:96px!important}
body.lo-ck #primary table.cart td.product-thumbnail a{display:block;position:relative;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--lo-tile)}
body.lo-ck #primary table.cart td.product-thumbnail img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain;mix-blend-mode:multiply;margin:0!important;border-radius:0!important}
body.lo-ck #primary table.cart td.product-name{grid-area:name;align-self:end}
body.lo-ck #primary table.cart td.product-name a,body.lo-ck #primary table.cart .ast-product-name a{color:var(--lo-ink)!important;font-family:"Bebas Neue",sans-serif!important;font-size:21px;letter-spacing:.03em;line-height:1.05;text-transform:uppercase}
body.lo-ck #primary table.cart td.product-name a:hover{color:var(--lo-accent)!important}
body.lo-ck #primary table.cart .ast-product-image{display:block!important}
body.lo-ck #primary table.cart dl.variation{display:flex;flex-wrap:wrap;gap:2px 6px;margin:6px 0 0!important;font-size:12.5px;color:var(--lo-muted)}
body.lo-ck #primary table.cart dl.variation dt,body.lo-ck #primary table.cart dl.variation dd{margin:0!important;padding:0!important;float:none!important;font-weight:500}
body.lo-ck #primary table.cart dl.variation dd p{margin:0!important;color:var(--lo-soft)}
body.lo-ck #primary table.cart .backorder_notification{font-size:12px;color:var(--lo-muted)}
body.lo-ck #primary table.cart tr.cart_item td.product-price{display:none!important}
body.lo-ck #primary table.cart td.product-quantity{grid-area:qty;align-self:start}
body.lo-ck #primary table.cart td.product-subtotal{grid-area:sub;align-self:center;text-align:right!important;color:var(--lo-ink)!important;font-weight:700;font-size:17px}
body.lo-ck #primary table.cart td.product-remove{grid-area:remove;align-self:start;justify-self:end;width:auto!important}
body.lo-ck #primary table.cart td.product-remove a.remove{width:34px!important;height:34px!important;border-radius:50%!important;display:grid!important;place-items:center;border:1px solid rgba(255,255,255,.16)!important;
  background:transparent!important;color:var(--lo-muted)!important;font-size:20px!important;line-height:1!important;transition:border-color .2s,color .2s}
body.lo-ck #primary table.cart td.product-remove a.remove:hover{border-color:var(--lo-bad)!important;color:var(--lo-bad)!important}
body.lo-ck #primary table.cart td.product-remove a.remove svg{width:14px!important;height:14px!important;fill:currentColor!important}
body.lo-ck #primary table.cart td.product-remove a.remove svg *{fill:currentColor!important}

/* Cantidad */
body.lo-ck #primary .quantity{display:inline-flex!important;align-items:center;height:44px;margin:0!important;padding:0 3px;border-radius:999px;border:1px solid rgba(255,255,255,.2)}
body.lo-ck #primary .quantity input.qty{width:38px!important;min-height:0!important;height:100%!important;padding:0!important;border:0!important;background:transparent!important;text-align:center;font-weight:600;-moz-appearance:textfield}
body.lo-ck #primary .quantity input.qty::-webkit-outer-spin-button,body.lo-ck #primary .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
body.lo-ck #primary .lo-ck-qty{width:36px;height:36px;min-height:0!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;
  color:var(--lo-ink)!important;display:grid;place-items:center;cursor:pointer}
body.lo-ck #primary .lo-ck-qty:hover{background:rgba(255,255,255,.08)!important;color:var(--lo-accent)!important}
body.lo-ck #primary .lo-ck-qty svg{width:15px;height:15px}
body.lo-ck #primary .quantity:has(input[type="hidden"]){display:none!important}

/* Fila de cupón / actualizar */
body.lo-ck #primary table.cart tr:not(.cart_item){display:block}
body.lo-ck #primary table.cart td.actions{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:6px 0 0!important;border:0!important;background:transparent!important}
body.lo-ck #primary table.cart td.actions .coupon{display:flex!important;flex:1 1 320px;gap:8px;margin:0!important;float:none!important}
body.lo-ck #primary table.cart td.actions .coupon .input-text{flex:1;width:auto!important;min-width:0;float:none!important;margin:0!important}
body.lo-ck #primary table.cart td.actions .coupon .button{flex:none;float:none!important}
body.lo-ck #primary table.cart td.actions > .button{float:none!important;margin:0!important}
body.lo-ck.lo-ck-js #primary table.cart td.actions > button[name="update_cart"]{display:none!important}

/* Carrito vacío */
body.lo-ck #primary .cart-empty{justify-content:center;padding:28px!important;font-size:17px!important}
body.lo-ck #primary .return-to-shop{margin:18px 0 0!important;text-align:center}
body.lo-ck #primary .return-to-shop .button{min-height:54px;padding:0 28px!important;font-size:21px!important}

/* Productos sugeridos */
body.lo-ck #primary .cross-sells{margin-top:32px!important;width:100%!important;float:none!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.lo-ck #primary .cross-sells > h2{font-size:clamp(30px,3.4vw,44px)!important;margin:0 0 22px!important;padding:0!important;background:transparent!important;border:0!important;text-align:left!important}
body.lo-ck #primary .cross-sells ul.products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:24px 16px;margin:0!important;padding:0!important}
body.lo-ck #primary .cross-sells ul.products::before,body.lo-ck #primary .cross-sells ul.products::after{display:none!important}
body.lo-ck #primary .cross-sells li.product{display:block!important;width:auto!important;margin:0!important;padding:0!important;float:none!important;background:transparent!important;border:0!important;box-shadow:none!important;text-align:left!important;position:relative}
body.lo-ck #primary .cross-sells .astra-shop-summary-wrap{display:block!important;width:auto!important;max-width:none!important;min-height:0!important;padding:0!important;margin:0!important}
body.lo-ck #primary .cross-sells .astra-shop-thumbnail-wrap{position:relative;display:block;width:100%!important;max-width:none!important;flex:none!important;margin:0!important;aspect-ratio:1/1;border-radius:16px;overflow:hidden;background:var(--lo-tile)}
body.lo-ck #primary .cross-sells .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link{position:absolute!important;inset:0;display:block}
body.lo-ck #primary .cross-sells .astra-shop-thumbnail-wrap img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:contain;mix-blend-mode:multiply;margin:0!important}
body.lo-ck #primary .cross-sells .astra-shop-summary-wrap .button,body.lo-ck #primary .cross-sells .ast-card-action-tooltip,body.lo-ck #primary .cross-sells .added_to_cart,body.lo-ck #primary .cross-sells .ast-onsale-card ~ .ast-onsale-card{display:none!important}
/* Botón para sumar el sugerido (lo maneja WooCommerce: agrega y actualiza el carrito) */
body.lo-ck #primary .cross-sells .ast-on-card-button.ast-select-options-trigger{position:absolute!important;right:8px!important;bottom:8px!important;top:auto!important;left:auto!important;z-index:3;width:40px!important;height:40px!important;
  border-radius:50%!important;display:grid!important;place-items:center;padding:0!important;margin:0!important;background:var(--lo-dark)!important;color:var(--lo-accent)!important;opacity:1!important;transform:none!important;visibility:visible!important;border:0!important;box-shadow:none!important}
body.lo-ck #primary .cross-sells .ast-on-card-button.ast-select-options-trigger:hover{background:var(--lo-accent)!important}
body.lo-ck #primary .cross-sells .ast-on-card-button .ahfb-svg-iconset,body.lo-ck #primary .cross-sells .ast-on-card-button .ast-icon{display:grid!important;place-items:center;width:auto!important;height:auto!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important}
body.lo-ck #primary .cross-sells .ast-on-card-button svg{width:17px!important;height:17px!important;fill:var(--lo-accent)!important}
body.lo-ck #primary .cross-sells .ast-on-card-button svg path{fill:var(--lo-accent)!important}
body.lo-ck #primary .cross-sells .ast-on-card-button:hover svg,body.lo-ck #primary .cross-sells .ast-on-card-button:hover svg path{fill:var(--lo-dark)!important}
body.lo-ck #primary .cross-sells .ast-on-card-button.loading{opacity:.6!important}
body.lo-ck #primary .cross-sells .ast-onsale-card{position:absolute!important;top:8px!important;left:8px!important;right:auto!important;z-index:3;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:0!important;
  padding:6px 9px 5px!important;border-radius:999px!important;background:var(--lo-accent)!important;color:var(--lo-dark)!important;font-family:"Bebas Neue",sans-serif!important;font-size:13px!important;letter-spacing:.08em;line-height:1!important}
body.lo-ck #primary .cross-sells .woocommerce-loop-product__title{margin:12px 0 4px!important;color:var(--lo-ink)!important;font-family:"Bebas Neue",sans-serif!important;font-size:19px!important;letter-spacing:.03em;line-height:1.05!important;text-transform:uppercase}
body.lo-ck #primary .cross-sells .price{position:static!important;display:block!important;float:none!important;margin:0!important;color:var(--lo-ink)!important;font-weight:600;font-size:15px;text-align:left!important}
body.lo-ck #primary .cross-sells .astra-shop-summary-wrap > *{position:static!important;float:none!important}
body.lo-ck #primary .cross-sells .price ins{text-decoration:none;color:var(--lo-accent)}
body.lo-ck #primary .cross-sells .price del{color:#7d8187;font-size:12.5px}

/* ============================================================
   CHECKOUT
   ============================================================ */
body.lo-ck.woocommerce-checkout form.checkout{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:48px;align-items:start}
body.lo-ck.woocommerce-checkout form.checkout > *{min-width:0}
body.lo-ck.woocommerce-checkout form.checkout #customer_details{grid-column:1;grid-row:1 / span 2;width:100%!important;float:none!important;margin:0!important;padding:0!important}
body.lo-ck.woocommerce-checkout form.checkout #order_review_heading{grid-column:2;grid-row:1;width:100%!important;float:none!important;margin:0 0 14px!important;padding:0!important;border:0!important;font-size:30px!important}
body.lo-ck.woocommerce-checkout form.checkout #order_review{grid-column:2;grid-row:2;width:100%!important;float:none!important;margin:0!important;position:sticky;top:24px}
body.lo-ck.woocommerce-checkout #customer_details .col-1,body.lo-ck.woocommerce-checkout #customer_details .col-2{width:100%!important;float:none!important;margin:0!important;padding:0!important;max-width:none!important}
body.lo-ck.woocommerce-checkout #customer_details .col-2{margin-top:28px!important}
body.lo-ck.woocommerce-checkout #customer_details::before,body.lo-ck.woocommerce-checkout #customer_details::after{display:none!important}
body.lo-ck.woocommerce-checkout #customer_details h3{margin:0 0 18px!important;padding:0!important;border:0!important;font-size:30px!important}
body.lo-ck.woocommerce-checkout #customer_details h3 label{display:flex;align-items:center;font-family:Inter,sans-serif!important;text-transform:none!important;font-size:15px!important;font-weight:600;color:var(--lo-ink)!important;letter-spacing:0}
body.lo-ck.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,body.lo-ck.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.lo-ck.woocommerce-checkout .woocommerce-additional-fields__field-wrapper{display:flex;flex-wrap:wrap;gap:0 12px}
body.lo-ck.woocommerce-checkout #primary .form-row{width:100%!important;float:none!important;margin:0 0 12px!important;padding:0!important}
body.lo-ck.woocommerce-checkout #primary .form-row-first,body.lo-ck.woocommerce-checkout #primary .form-row-last{width:calc(50% - 6px)!important}
body.lo-ck.woocommerce-checkout #primary .form-row::before,body.lo-ck.woocommerce-checkout #primary .form-row::after{display:none!important}
body.lo-ck.woocommerce-checkout .woocommerce-form-login,body.lo-ck.woocommerce-checkout .checkout_coupon{margin:0 0 20px!important;padding:20px!important;border:0!important;border-radius:18px!important;background:var(--lo-surface)!important;outline:1px solid var(--lo-line);outline-offset:-1px;color:var(--lo-soft)}
body.lo-ck.woocommerce-checkout .checkout_coupon{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
body.lo-ck.woocommerce-checkout .checkout_coupon p{margin:0!important;float:none!important;width:auto!important}
body.lo-ck.woocommerce-checkout .checkout_coupon .form-row-first{flex:1 1 220px}
body.lo-ck.woocommerce-checkout .checkout_coupon .clear{display:none}

/* Retiro en el local: sin campos de dirección */
body.lo-ck .lo-ck-retiro-aviso{display:none}
body.lo-ck.lo-retiro .lo-ck-retiro-aviso{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px!important;padding:14px 16px!important;border-radius:14px;
  background:rgba(92,194,228,.1);outline:1px solid rgba(92,194,228,.35);outline-offset:-1px;color:var(--lo-soft);font-size:14px;line-height:1.5}
body.lo-ck.lo-retiro .lo-ck-retiro-aviso strong{color:var(--lo-ink)}
body.lo-ck .lo-ck-retiro-aviso svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--lo-accent)}
body.lo-ck.lo-retiro #billing_address_1_field,body.lo-ck.lo-retiro #billing_address_2_field,body.lo-ck.lo-retiro #billing_city_field,
body.lo-ck.lo-retiro #billing_state_field,body.lo-ck.lo-retiro #billing_postcode_field,body.lo-ck.lo-retiro .woocommerce-shipping-fields{display:none!important}

/* Resumen del pedido */
body.lo-ck.woocommerce-checkout #order_review table.shop_table thead th{padding-top:0!important;font-size:12px!important;letter-spacing:.1em;text-transform:uppercase}
body.lo-ck.woocommerce-checkout #order_review td.product-name{text-align:left!important;color:var(--lo-ink)!important;font-weight:500}
body.lo-ck.woocommerce-checkout #order_review .product-quantity{color:var(--lo-muted);font-weight:500}
body.lo-ck.woocommerce-checkout #order_review dl.variation{margin:4px 0 0!important;font-size:12.5px;color:var(--lo-muted)}
body.lo-ck.woocommerce-checkout #order_review dl.variation dt,body.lo-ck.woocommerce-checkout #order_review dl.variation dd{display:inline;margin:0!important;float:none!important}
body.lo-ck.woocommerce-checkout #order_review dl.variation dd p{display:inline;margin:0!important}
body.lo-ck.woocommerce-checkout #order_review .ast-product-image{display:block!important}

/* Medios de pago */
body.lo-ck.woocommerce-checkout #payment{margin-top:18px;padding:0!important;border-radius:0!important;background:transparent!important}
body.lo-ck.woocommerce-checkout #payment ul.payment_methods{display:flex;flex-direction:column;gap:10px;margin:0 0 18px!important;padding:0!important;border:0!important;list-style:none!important}
body.lo-ck.woocommerce-checkout #payment ul.payment_methods::before,body.lo-ck.woocommerce-checkout #payment ul.payment_methods::after{display:none!important}
body.lo-ck.woocommerce-checkout #payment li.wc_payment_method{margin:0!important;padding:14px 16px!important;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:transparent;transition:border-color .2s,background .2s;line-height:1.4}
body.lo-ck.woocommerce-checkout #payment li.wc_payment_method:has(> input:checked){border-color:var(--lo-accent);background:rgba(92,194,228,.07)}
body.lo-ck.woocommerce-checkout #payment li.wc_payment_method > input{margin:0 10px 0 0!important;vertical-align:middle}
body.lo-ck.woocommerce-checkout #payment li.wc_payment_method > label{display:inline-flex!important;align-items:center;flex-wrap:wrap;gap:8px;margin:0!important;color:var(--lo-ink)!important;font-size:15px!important;font-weight:600;cursor:pointer;vertical-align:middle}
body.lo-ck.woocommerce-checkout #payment li.wc_payment_method > label img{max-height:26px;width:auto;margin:0!important;border-radius:4px;background:#fff;padding:2px 4px}
/* El contenido de cada medio de pago queda en un panel claro para que siempre se lea bien */
body.lo-ck.woocommerce-checkout #payment div.payment_box{margin:12px 0 0!important;padding:14px 16px!important;border-radius:12px!important;background:#f2f3f5!important;color:#1f1f1f!important;font-size:14px}
body.lo-ck.woocommerce-checkout #payment div.payment_box::before{display:none!important}
body.lo-ck.woocommerce-checkout #payment div.payment_box p{color:#1f1f1f}
body.lo-ck.woocommerce-checkout #payment div.payment_box h4{color:#1f1f1f!important}
body.lo-ck.woocommerce-checkout #payment div.payment_box input,body.lo-ck.woocommerce-checkout #payment div.payment_box select,body.lo-ck.woocommerce-checkout #payment div.payment_box textarea{
  background-color:#fff!important;color:#1f1f1f!important;border-color:#c9ccd0!important}
body.lo-ck.woocommerce-checkout #payment .place-order{margin:0!important;padding:0!important}
body.lo-ck.woocommerce-checkout #payment .woocommerce-privacy-policy-text p,body.lo-ck.woocommerce-checkout #payment .woocommerce-terms-and-conditions-checkbox-text{font-size:12.5px;line-height:1.55;color:var(--lo-muted)!important}
body.lo-ck.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper{margin:0 0 16px}
body.lo-ck.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper .form-row{margin:10px 0 0!important}
body.lo-ck.woocommerce-checkout #payment .woocommerce-terms-and-conditions{background:var(--lo-surface2)!important;color:var(--lo-soft)!important;border-radius:12px;padding:14px!important}
body.lo-ck.woocommerce-checkout .lo-ck-seguro{display:flex;align-items:center;justify-content:center;gap:8px;margin:14px 0 0!important;font-size:12.5px;color:var(--lo-muted)}
body.lo-ck.woocommerce-checkout .lo-ck-seguro svg{width:15px;height:15px;color:var(--lo-accent)}

/* ============================================================
   PEDIDO RECIBIDO (gracias por tu compra)
   ============================================================ */
body.lo-ck.woocommerce-order-received form.checkout{display:block!important}
body.lo-ck #primary .woocommerce-order{max-width:880px}
body.lo-ck #primary .woocommerce-thankyou-order-received,body.lo-ck #primary .woocommerce-notice--success{margin:0 0 24px!important;padding:22px 24px!important;border-radius:18px;background:rgba(92,194,228,.1)!important;outline:1px solid rgba(92,194,228,.35);outline-offset:-1px;
  color:var(--lo-ink)!important;font-family:"Bebas Neue",sans-serif!important;font-size:26px!important;letter-spacing:.04em;line-height:1.1}
body.lo-ck #primary ul.order_details{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 32px!important;padding:0!important;list-style:none!important}
body.lo-ck #primary ul.order_details::before,body.lo-ck #primary ul.order_details::after{display:none!important}
body.lo-ck #primary ul.order_details li{float:none!important;margin:0!important;padding:14px 16px!important;border:0!important;border-radius:14px;background:var(--lo-surface);outline:1px solid var(--lo-line);outline-offset:-1px;
  font-size:11.5px!important;letter-spacing:.1em;text-transform:uppercase;color:var(--lo-muted)!important;line-height:1.4}
body.lo-ck #primary ul.order_details li strong{display:block;margin-top:6px;font-size:15px;letter-spacing:0;text-transform:none;color:var(--lo-ink);font-weight:600;word-break:break-word}
body.lo-ck #primary .woocommerce-order-details,body.lo-ck #primary .woocommerce-customer-details{margin:0 0 28px!important;padding:24px!important;border-radius:20px;background:var(--lo-surface);outline:1px solid var(--lo-line);outline-offset:-1px}
body.lo-ck #primary .woocommerce-order-details__title,body.lo-ck #primary .woocommerce-column__title{margin:0 0 14px!important;font-size:28px!important}
body.lo-ck #primary .woocommerce-customer-details address{padding:0!important;border:0!important;color:var(--lo-soft);font-style:normal;line-height:1.7}
body.lo-ck #primary .woocommerce-customer-details .col2-set .col-1,body.lo-ck #primary .woocommerce-customer-details .col2-set .col-2{width:100%!important;float:none!important;margin:0 0 16px!important}
body.lo-ck #primary table.order_details td.product-name{text-align:left!important}
body.lo-ck #primary table.order_details td.product-name a{color:var(--lo-ink)!important;font-weight:600}

/* ---------- Responsive ---------- */
@media (max-width:921px){
  body.lo-ck.woocommerce-cart #ast-cart-wrapper{grid-template-columns:minmax(0,1fr);gap:24px}
  body.lo-ck.woocommerce-cart .cart-collaterals .cart_totals{position:static}
  body.lo-ck.woocommerce-cart #ast-cart-wrapper .woocommerce-cart-form,body.lo-ck.woocommerce-cart #ast-cart-wrapper > .cart-collaterals,body.lo-ck.woocommerce-cart #ast-cart-wrapper .cross-sells{grid-column:1;grid-row:auto}
  body.lo-ck.woocommerce-cart #ast-cart-wrapper .woocommerce-cart-form{order:1}
  body.lo-ck.woocommerce-cart #ast-cart-wrapper > .cart-collaterals{order:2}
  body.lo-ck.woocommerce-cart #ast-cart-wrapper .cross-sells{order:3;margin-top:24px!important}
  body.lo-ck.woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr);grid-template-rows:none}
  body.lo-ck.woocommerce-checkout form.checkout #customer_details,body.lo-ck.woocommerce-checkout form.checkout #order_review_heading,body.lo-ck.woocommerce-checkout form.checkout #order_review{grid-column:1;grid-row:auto}
  body.lo-ck.woocommerce-checkout form.checkout #order_review_heading{margin-top:32px!important}
  body.lo-ck.woocommerce-checkout form.checkout #order_review{position:static}
}
@media (max-width:767px){
  body.lo-ck #content > .ast-container{padding-left:16px!important;padding-right:16px!important}
  body.lo-ck #primary{padding:28px 0 72px!important}
  body.lo-ck .entry-header{margin-bottom:20px!important}
  body.lo-ck #primary .cart_totals,body.lo-ck #primary #order_review{padding:20px!important;border-radius:18px!important}
  body.lo-ck #primary table.cart tr.cart_item{grid-template-columns:76px minmax(0,1fr) auto;gap:8px 12px;padding:12px!important}
  body.lo-ck #primary table.cart td.product-thumbnail{width:76px!important}
  body.lo-ck #primary table.cart td.product-name a,body.lo-ck #primary table.cart .ast-product-name a{font-size:18px}
  body.lo-ck #primary table.cart td.product-subtotal{font-size:15px}
  body.lo-ck.woocommerce-checkout #primary .form-row-first,body.lo-ck.woocommerce-checkout #primary .form-row-last{width:100%!important}
  body.lo-ck #primary .checkout-button,body.lo-ck #primary #place_order{font-size:21px!important}
}
@media (prefers-reduced-motion:reduce){
  body.lo-ck #primary *{transition:none!important}
}

/* Celular: los campos con letra menor a 16px hacen que el iPhone (Safari y Chrome) haga zoom al tocarlos */
@media (max-width:1024px){
  body.lo-ck #primary input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  body.lo-ck #primary select,body.lo-ck #primary textarea,
  body.lo-ck.woocommerce-checkout #payment div.payment_box input,body.lo-ck.woocommerce-checkout #payment div.payment_box select,
  body.lo-ck .select2-container .select2-search__field,body.lo-ck .select2-container .select2-selection__rendered{font-size:16px!important}
}
