/* Bloque original */
:root{--ink:#182026;--muted:#68727b;--soft:#f4f6f7;--line:#e4e8eb;--accent:#ff5a1f;--accent2:#ff7a2f;--deep:#12212b;--green:#0b9f6e;--white:#fff;--shadow:0 14px 34px rgba(25,35,45,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:#fff}.container{width:min(1180px,calc(100% - 32px));margin:auto}.topbar{background:var(--deep);color:#dbe4e9;font-size:12px}.topbar-inner{width:min(1180px,calc(100% - 32px));margin:auto;display:flex;justify-content:space-between;gap:20px;padding:9px 0}.header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:20;border-bottom:1px solid var(--line)}.header-main{display:grid;grid-template-columns:220px 1fr auto;gap:24px;align-items:center;padding:17px 0}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}.brand-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;color:#fff;font-weight:800;font-size:23px;box-shadow:0 8px 18px rgba(255,90,31,.25)}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-text strong{font-size:20px;letter-spacing:.8px}.brand-text small{font-size:10px;letter-spacing:2.5px;color:var(--muted);margin-top:5px}.search-wrap{height:48px;border:2px solid var(--accent);border-radius:14px;display:flex;align-items:center;overflow:hidden;background:#fff}.search-icon{padding-left:16px;font-size:22px}.search-wrap input{border:0;outline:0;flex:1;padding:0 14px;font-size:14px}.search-wrap button{height:100%;border:0;background:var(--accent);color:#fff;font-weight:700;padding:0 22px;cursor:pointer}.header-actions{display:flex;gap:10px}.ghost-btn,.cart-btn{border:1px solid var(--line);background:#fff;height:44px;border-radius:12px;padding:0 14px;font-weight:700;cursor:pointer}.cart-btn{background:var(--deep);color:#fff;border-color:var(--deep)}.cart-btn b{display:inline-grid;place-items:center;width:21px;height:21px;background:var(--accent);border-radius:999px;margin-left:6px}.nav{display:flex;gap:8px;overflow:auto;padding-bottom:13px}.nav-pill{border:0;background:#f3f5f6;border-radius:999px;padding:8px 14px;font-weight:600;white-space:nowrap;cursor:pointer}.nav-pill.active,.nav-pill:hover{background:#fff0ea;color:var(--accent)}.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;padding:42px 0 30px}.hero-copy{background:linear-gradient(135deg,#fff6f1,#fff 70%);border:1px solid #ffe0d2;border-radius:28px;padding:42px}.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:1.5px;color:var(--accent)}.hero h1{font-size:56px;line-height:1.02;margin:12px 0 16px;letter-spacing:-2.5px}.hero h1 span{color:var(--accent)}.hero p{font-size:18px;color:var(--muted);max-width:620px;line-height:1.6}.hero-actions{display:flex;gap:12px;margin:26px 0}.primary-cta,.secondary-cta{padding:13px 18px;border-radius:12px;text-decoration:none;font-weight:800}.primary-cta{background:var(--accent);color:#fff}.secondary-cta{background:#fff;color:var(--ink);border:1px solid var(--line)}.trust-row{display:flex;gap:36px;border-top:1px solid #f2d9cf;padding-top:22px}.trust-row div{display:flex;flex-direction:column}.trust-row strong{font-size:15px}.trust-row span{font-size:12px;color:var(--muted);margin-top:4px}.hero-card{position:relative;background:var(--deep);border-radius:28px;color:#fff;padding:28px;overflow:hidden;box-shadow:var(--shadow)}.deal-badge{display:inline-block;background:var(--accent);padding:7px 10px;border-radius:8px;font-size:11px;font-weight:800;letter-spacing:1px}.hero-product-art{height:230px;position:relative;margin:8px 0}.chip{position:absolute;background:#273946;border:1px solid #425563;border-radius:18px;display:grid;place-items:center;font-weight:800;box-shadow:0 16px 40px rgba(0,0,0,.25)}.chip.big{width:170px;height:115px;left:40px;top:48px;transform:rotate(-7deg);font-size:28px}.chip.small{width:120px;height:80px;right:28px;top:16px;transform:rotate(8deg)}.chip.tiny{width:96px;height:64px;right:62px;bottom:18px;transform:rotate(-10deg);font-size:13px}.hero-price-row{display:flex;justify-content:space-between;align-items:center}.hero-price-row div{display:flex;flex-direction:column}.hero-price-row small{color:#b9c7cf}.hero-price-row strong{font-size:34px;margin-top:4px}.discount-circle{width:64px;height:64px;border-radius:50%;background:#fff;color:var(--accent);display:grid;place-items:center;font-weight:800}.progress-wrap{margin-top:20px}.progress-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:7px;color:#cbd5db}.progress{height:8px;background:#dfe4e7;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent);width:72%;border-radius:999px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:12px auto 26px}.benefits article{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:16px;padding:18px}.benefits article>span{font-size:24px}.benefits strong{display:block;font-size:14px}.benefits p{font-size:12px;color:var(--muted);margin:5px 0 0;line-height:1.5}.promo-strip{background:linear-gradient(90deg,var(--accent),#ff823d);color:#fff;border-radius:20px;padding:22px 26px;display:flex;justify-content:space-between;align-items:center}.promo-strip div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.promo-kicker{font-size:11px;font-weight:800;background:rgba(255,255,255,.18);padding:6px 8px;border-radius:7px}.promo-strip small{opacity:.9}.promo-strip button{border:0;background:#fff;color:var(--accent);font-weight:800;padding:11px 16px;border-radius:10px;cursor:pointer}.section{padding:48px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.section-head h2{font-size:30px;margin:5px 0 0}.section-head a{color:var(--accent);text-decoration:none;font-weight:700}.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.category-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:20px 16px;text-align:left;cursor:pointer;transition:.2s}.category-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#ffd0bd}.category-card>span{font-size:30px}.category-card strong{display:block;margin:12px 0 5px}.category-card small{color:var(--muted);line-height:1.35}.deals-section{background:var(--deals-bg,#16242d);color:#fff}.section-head.light h2{color:#fff}.deal-timer{display:flex;align-items:center;gap:8px;font-size:12px}.deal-timer b{background:#0d9f6e;padding:7px 9px;border-radius:8px}.deal-grid,.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.product-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.2s;position:relative}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-media{height:180px;background:linear-gradient(135deg,#f5f7f8,#eceff1);display:grid;place-items:center;position:relative}.product-art{width:96px;height:72px;border-radius:14px;background:#253844;color:#fff;display:grid;place-items:center;font-weight:800;box-shadow:0 15px 28px rgba(15,25,32,.22);transform:rotate(-5deg)}.product-badge{position:absolute;left:10px;top:10px;background:var(--accent);color:#fff;border-radius:7px;padding:6px 8px;font-size:11px;font-weight:800}.stock-badge{position:absolute;right:10px;top:10px;background:#eaf8f3;color:var(--green);border-radius:7px;padding:6px 8px;font-size:10px;font-weight:800}.stock-badge.out-of-stock{background:#f1f2f4;color:#6b7280}.product-body{padding:15px}.product-category{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.7px}.product-title{font-size:14px;font-weight:700;line-height:1.4;height:40px;margin:6px 0}.old-price{font-size:12px;color:#9aa3aa;text-decoration:line-through}.price-row{display:flex;align-items:flex-end;justify-content:space-between;margin-top:4px}.price-row strong{font-size:23px}.off{color:var(--green);font-size:12px;font-weight:800}.wholesale-price{font-size:11px;color:var(--accent);font-weight:700;margin-top:7px}.add-btn{width:100%;margin-top:13px;border:0;background:#17262f;color:#fff;padding:11px;border-radius:10px;font-weight:800;cursor:pointer}.add-btn:hover{background:var(--accent)}.filter-label{font-size:12px;color:var(--muted)}.wholesale{margin-top:8px;margin-bottom:48px;background:#f5f7f8;border-radius:24px;padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.wholesale h2{font-size:32px;margin:8px 0}.wholesale p{color:var(--muted);line-height:1.6}.wholesale-table{display:grid;gap:10px}.wholesale-table div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;justify-content:space-between}.wholesale-table .best{border-color:#ffc2aa;background:#fff8f5}.wholesale-table span{color:var(--muted)}.cart-panel{position:fixed;right:-430px;top:0;width:min(420px,100%);height:100%;background:#fff;z-index:50;box-shadow:-20px 0 40px rgba(0,0,0,.15);transition:.25s;display:flex;flex-direction:column}.cart-panel.open{right:0}.overlay{position:fixed;inset:0;background:rgba(10,20,25,.45);z-index:40;opacity:0;pointer-events:none;transition:.2s}.overlay.show{opacity:1;pointer-events:auto}.cart-head{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--line)}.cart-head div{display:flex;flex-direction:column}.cart-head strong{font-size:23px;line-height:1.1}.cart-head small{color:var(--muted);margin-top:3px}.cart-head button{border:0;background:none;font-size:20px;cursor:pointer}.cart-progress{padding:16px 20px;background:#fff6f1;font-size:12px}.cart-progress .progress{margin-top:9px}.cart-items{padding:10px 20px;overflow:auto;flex:1}.cart-item{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cart-thumb{width:54px;height:44px;background:#263a46;color:white;border-radius:8px;display:grid;place-items:center;font-size:10px;font-weight:800}.cart-item strong{font-size:12px;display:block}.cart-item small{color:var(--muted)}.cart-item button{border:0;background:#f2f4f5;width:28px;height:28px;border-radius:8px;cursor:pointer}.cart-summary{border-top:1px solid var(--line);padding:18px 20px}.cart-summary>div{display:flex;justify-content:space-between}.checkout-btn{width:100%;border:0;background:var(--accent);color:#fff;border-radius:12px;padding:14px;margin-top:14px;font-weight:800}.cart-summary small{display:block;text-align:center;color:var(--muted);font-size:10px;margin-top:9px}footer{background:#101b22;color:#d7e0e5;padding:42px 0}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:40px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px}.footer-grid strong{color:#fff}.footer-grid a,.footer-grid p{font-size:12px;color:#9fb0ba}.footer-brand .brand-text small{color:#8fa0aa}
@media(max-width:900px){.header-main{grid-template-columns:1fr auto}.search-wrap{grid-column:1/-1;grid-row:2}.ghost-btn{display:none}.hero{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(3,1fr)}.deal-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.benefits{grid-template-columns:repeat(2,1fr)}.wholesale{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}.topbar-inner span:nth-child(n+3){display:none}}
@media(max-width:560px){.container{width:min(100% - 20px,1180px)}.header-main{padding:12px 0;gap:10px}.brand-text strong{font-size:17px}.brand-mark{width:38px;height:38px}.cart-btn span{display:none}.hero{padding-top:20px}.hero-copy{padding:26px 20px}.hero h1{font-size:40px}.hero p{font-size:15px}.trust-row{gap:18px;flex-wrap:wrap}.hero-card{padding:22px}.benefits{grid-template-columns:1fr 1fr;gap:8px}.benefits article{padding:13px}.benefits p{display:none}.promo-strip{align-items:flex-start;gap:14px;flex-direction:column}.category-grid{grid-template-columns:repeat(2,1fr)}.deal-grid,.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-media{height:140px}.product-title{font-size:12px;height:34px}.price-row strong{font-size:18px}.product-body{padding:11px}.section{padding:34px 0}.section-head h2{font-size:24px}.wholesale{padding:22px}.footer-grid{grid-template-columns:1fr}.topbar-inner{justify-content:center}.topbar-inner span:nth-child(n+2){display:none}}

.compex-contact-banner[hidden]{display:none!important}
.compex-contact-banner{position:relative;isolation:isolate;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-top:8px;margin-bottom:26px;padding:22px 24px;overflow:hidden;border:1px solid rgba(255,99,34,.45);border-radius:20px;color:#fff;background:linear-gradient(115deg,#13242e 0%,#1a303c 62%,#263b45 100%);box-shadow:0 16px 38px rgba(13,28,36,.18)}
.compex-contact-banner::before{content:"";position:absolute;z-index:-1;width:260px;height:260px;right:9%;top:-205px;border-radius:50%;background:radial-gradient(circle,rgba(255,97,31,.8),rgba(255,97,31,0) 68%);animation:compexBannerGlow 4.5s ease-in-out infinite}
.compex-contact-banner::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(100deg,transparent 15%,rgba(255,255,255,.09) 45%,transparent 70%);transform:translateX(-120%);animation:compexBannerShine 6s ease-in-out infinite}
.compex-contact-icon{position:relative;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#2ee273,#08aa50);color:#fff;box-shadow:0 9px 24px rgba(37,211,102,.34),inset 0 1px 0 rgba(255,255,255,.35);animation:compexBannerFloat 2.8s ease-in-out infinite}
.compex-contact-icon::after{content:"";position:absolute;inset:-5px;border:2px solid rgba(37,211,102,.45);border-radius:50%;animation:compexWhatsAppPulse 2.2s ease-out infinite;pointer-events:none}
.compex-contact-icon svg{width:34px;height:34px;display:block;filter:drop-shadow(0 2px 2px rgba(0,0,0,.14));animation:compexWhatsAppWiggle 3.4s ease-in-out infinite;transform-origin:center}
.compex-contact-kicker{display:block;margin-bottom:5px;color:#ff9c70;font-size:11px;font-weight:900;letter-spacing:1.25px}
.compex-contact-copy h2{margin:0 0 6px;font-size:22px;line-height:1.15;letter-spacing:-.35px}
.compex-contact-copy p{margin:0;color:#dce5e9;font-size:14px;line-height:1.5}
.compex-contact-response{display:flex;align-items:center;gap:7px;margin-top:9px;color:#fff;font-size:13px;font-weight:750}
.compex-contact-response span{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:#35d07f;box-shadow:0 0 0 0 rgba(53,208,127,.6);animation:compexOnlinePulse 2s infinite}
.compex-contact-cta{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border:0;border-radius:13px;background:#ff5a1f;color:#fff;font:800 14px/1 Inter,system-ui,sans-serif;white-space:nowrap;cursor:pointer;box-shadow:0 10px 24px rgba(255,90,31,.28);transition:transform .2s ease,background .2s ease}
.compex-contact-cta:hover{background:#ff7138;transform:translateY(-2px)}
.compex-contact-cta span{font-size:20px;transition:transform .2s ease}.compex-contact-cta:hover span{transform:translateX(3px)}
@keyframes compexBannerGlow{50%{transform:scale(1.25);opacity:.65}}
@keyframes compexBannerShine{0%,58%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
@keyframes compexBannerFloat{50%{transform:translateY(-4px) rotate(-2deg)}}
@keyframes compexWhatsAppPulse{0%,35%{transform:scale(.88);opacity:0}55%{opacity:.85}100%{transform:scale(1.28);opacity:0}}
@keyframes compexWhatsAppWiggle{0%,72%,100%{transform:rotate(0) scale(1)}78%{transform:rotate(-10deg) scale(1.06)}84%{transform:rotate(9deg) scale(1.06)}90%{transform:rotate(-5deg) scale(1.03)}}
@keyframes compexOnlinePulse{70%{box-shadow:0 0 0 7px rgba(53,208,127,0)}}
@media(max-width:720px){.compex-contact-banner{grid-template-columns:auto 1fr;padding:18px;gap:14px}.compex-contact-icon{width:48px;height:48px}.compex-contact-copy h2{font-size:19px}.compex-contact-copy p{font-size:13px}.compex-contact-response{font-size:12px}.compex-contact-cta{grid-column:1/-1;width:100%}}
@media(prefers-reduced-motion:reduce){.compex-contact-banner::before,.compex-contact-banner::after,.compex-contact-icon,.compex-contact-icon::after,.compex-contact-icon svg,.compex-contact-response span{animation:none}}
.product-img{width:100%;height:100%;object-fit:contain;display:block;background:#fff;padding:14px;box-sizing:border-box}.cart-thumb img{width:100%;height:100%;object-fit:contain}.catalog-state{grid-column:1/-1;padding:40px;border:1px dashed #d7dce2;border-radius:16px;background:#fff;text-align:center}.catalog-state strong,.catalog-state span{display:block}.catalog-state span{margin-top:8px;color:#68727b;font-size:14px}.add-btn:disabled{opacity:.45;cursor:not-allowed}.sync-status{font-size:12px;color:#6a737d;margin-top:3px}.site-version{font-size:9px;color:#9aa3aa;margin-left:5px;font-weight:700;letter-spacing:.2px;vertical-align:1px}

.cart-item{grid-template-columns:54px 1fr auto;align-items:start}
.cart-item-info{min-width:0}
.cart-item-info strong{line-height:1.3}
.qty-control{display:flex;align-items:center;gap:7px;margin-top:9px}
.qty-control button{width:30px;height:30px;border:1px solid var(--line);background:#f5f7f8;border-radius:8px;font-weight:800;cursor:pointer}
.qty-control button:disabled{opacity:.35;cursor:not-allowed}
.qty-control span{min-width:26px;text-align:center;font-weight:800;font-size:13px}
.qty-control .remove-cart{width:auto;padding:0 9px;margin-left:4px;color:#a53a1e;background:#fff3ee;border-color:#ffd7ca;font-size:11px}
.cart-qty-label{font-size:11px;color:#66727a;font-weight:800;white-space:nowrap;margin-right:2px}
.qty-control{margin-top:6px;gap:6px;flex-wrap:wrap}
.cart-summary .cart-promo-discount-row,.cart-summary .cart-discount-row{display:none!important}
.cart-line-total{font-size:12px;white-space:nowrap;margin-top:3px}
.checkout-btn:disabled{opacity:.45;cursor:not-allowed}


/* Corrige imágenes verticales, muy grandes o con relación de aspecto extraña */
.product-media{
  height:190px;
  min-height:190px;
  max-height:190px;
  overflow:hidden;
  position:relative;
  display:block;
  background:#fff;
}

/* Estados de disponibilidad unificados */
.stock-badge,.product-detail-stock,.cart-stock-status{
  display:inline-flex;align-items:center;gap:6px;border-radius:999px;font-weight:700;line-height:1.2
}
.stock-badge>span,.product-detail-stock>span,.cart-stock-status>span{
  width:7px;height:7px;border-radius:50%;background:currentColor;flex:0 0 7px
}
.stock-badge.stock-available,.product-detail-stock.stock-available,.cart-stock-status.stock-available{
  color:#067647;background:#ecfdf3
}
.stock-badge.stock-low,.product-detail-stock.stock-low,.cart-stock-status.stock-low{
  color:#9a6700;background:#fff7d6
}
.stock-badge.stock-out,.product-detail-stock.stock-out,.cart-stock-status.stock-out{
  color:#b42318;background:#fef3f2
}
.cart-stock-status{width:max-content;margin-top:5px;padding:4px 8px;font-size:11px}

@media(max-width:700px){
  .stock-badge.stock-available{color:#067647!important;background:#ecfdf3!important}
  .stock-badge.stock-low{color:#9a6700!important;background:#fff7d6!important}
  .stock-badge.stock-out{color:#b42318!important;background:#fef3f2!important}
}
.product-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  padding:14px;
  background:#fff;
}
.product-badge,.stock-badge{z-index:2}
.product-card{display:flex;flex-direction:column;min-width:0}
.product-body{display:flex;flex-direction:column;flex:1}
.add-btn{margin-top:auto}
.deal-grid .product-card{height:398px}
.deal-grid .product-body{min-height:0}
@media(max-width:560px){
  .product-media{height:145px;min-height:145px;max-height:145px}
  .deal-grid .product-card{height:350px}
}

/* Checkout / formas de pago */
.checkout-modal{
  position:fixed;
  inset:0;
  z-index:80;
  background:rgba(10,20,25,.56);
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.checkout-modal.open{display:flex}
.checkout-box{
  width:min(520px,100%);
  max-height:calc(100vh - 40px);
  overflow:auto;
  background:#fff;
  border-radius:22px;
  box-shadow:0 28px 80px rgba(0,0,0,.25);
  padding:32px 24px;
}
.checkout-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.checkout-title-row h3{font-size:25px;margin:6px 0 0}
.checkout-close{
  border:0;background:#f2f4f5;border-radius:10px;width:38px;height:38px;
  cursor:pointer;font-size:18px
}
.checkout-total-box{
  margin:20px 0;
  padding:16px 18px;
  background:#f5f7f8;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.checkout-total-box span{color:var(--muted);font-size:13px}
.checkout-total-box strong{font-size:24px}
.payment-options{display:grid;gap:12px}
.payment-option{
  width:100%;
  display:grid;
  grid-template-columns:48px 1fr auto;
  gap:13px;
  align-items:center;
  text-align:left;
  border:1px solid var(--line);
  background:#fff;
  border-radius:15px;
  padding:15px;
  cursor:pointer;
}
.payment-option:hover,.payment-option.selected{
  border-color:var(--accent);
  background:#fff8f5;
}
.payment-option .payment-icon{
  width:44px;height:44px;border-radius:12px;background:#f3f5f6;
  display:grid;place-items:center;font-size:22px
}
.payment-option span:nth-child(2){display:flex;flex-direction:column;gap:3px}
.payment-option small{color:var(--muted)}
.payment-option b{font-size:25px;color:#8b969d}
.payment-detail{
  display:none;
  margin-top:14px;
  border:1px solid #ffd8c8;
  background:#fff8f5;
  border-radius:14px;
  padding:16px;
}
.payment-detail.show{display:block}
.payment-detail-label{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}
.payment-detail small{display:block;color:var(--muted);margin-top:8px;font-size:11px}
.alias-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.alias-row strong{font-size:20px;word-break:break-all}
.alias-row button{
  border:0;background:var(--deep);color:#fff;border-radius:9px;padding:9px 11px;
  cursor:pointer;font-weight:700;white-space:nowrap
}
.confirm-order-btn{
  width:100%;
  margin-top:18px;
  border:0;
  border-radius:12px;
  padding:14px;
  background:var(--accent);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.confirm-order-btn:disabled{opacity:.45;cursor:not-allowed}
.payment-confirmed{
  display:none;
  margin-top:14px;
  padding:13px 14px;
  background:#eaf8f3;
  color:#087a56;
  border-radius:12px;
  font-size:13px;
  font-weight:700;
}
.payment-confirmed.show{display:block}


/* Ajustes portada */
.hero-deal{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:100%;
  padding:28px;
}
.hero-benefits{
  display:grid;
  gap:14px;
  margin-top:24px;
}
.hero-benefit{
  background:#ffffff0d;
  border:1px solid #ffffff18;
  border-radius:14px;
  padding:16px;
}
.hero-benefit b{
  display:block;
  color:#fff;
  font-size:18px;
  margin-bottom:4px;
}
.hero-benefit span{
  color:#c9d5db;
  font-size:13px;
  line-height:1.4;
}
.hero-cta-note{
  margin-top:18px;
  color:#dce7eb;
  font-size:13px;
  border-top:1px solid #ffffff1a;
  padding-top:16px;
}
.cart-progress.compact{display:none!important}
.footer-stock{
  display:block;
  text-align:center;
  color:#7c8790;
  font-size:10px;
  padding:10px 0 16px;
}

.checkout-wizard{width:min(620px,100%)}
.wizard-steps{display:flex;gap:8px;margin:18px 0 22px;flex-wrap:wrap}
.wizard-steps span{font-size:12px;font-weight:800;color:#8a959c;background:#f2f4f5;border-radius:999px;padding:8px 11px}
.wizard-steps span.active{background:#17262e;color:#fff}
.wizard-step{display:none}.wizard-step.active{display:block}
.wizard-step h4{font-size:18px;margin:0 0 14px}
.choice-card{display:flex;gap:12px;align-items:flex-start;border:1px solid #dde3e7;border-radius:14px;padding:14px;margin:10px 0;cursor:pointer}
.choice-card:has(input:checked){border-color:#ff5a26;background:#fff7f3}
.choice-card input{margin-top:3px}
.choice-card span{display:flex;flex-direction:column;gap:4px}
.choice-card small{color:#758089}
.shipping-methods{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.shipping-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}
.shipping-fields input,.contact-fields input{width:100%;padding:12px;border:1px solid #ccd5da;border-radius:10px;font-size:14px}
.quote-btn{margin-top:10px;border:0;border-radius:10px;background:#17262e;color:#fff;font-weight:800;padding:11px 14px;cursor:pointer}
.shipping-quote{font-size:13px;margin-top:10px;font-weight:700}
.shipping-quote.ok{color:#087443}.shipping-quote.err{color:#b42318}
.free-shipping-note{margin-top:10px;color:#087443;font-weight:800;font-size:13px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.contact-fields label:first-child{grid-column:1/-1}
.shipping-calculated-price{display:none;margin:14px 0 4px;padding:12px 14px;border-radius:12px;background:#eefaf4;border:1px solid #9ed9b9;font-size:18px;font-weight:900;color:#087a4b;text-align:center}
@media(max-width:620px){.contact-fields{grid-template-columns:1fr}.contact-fields label:first-child{grid-column:auto}}
.contact-fields label{font-size:13px;font-weight:800;display:grid;gap:7px}
.wizard-actions{display:flex;justify-content:space-between;gap:10px;margin-top:20px}
.wizard-next,.wizard-back{border:0;border-radius:10px;padding:12px 16px;font-weight:900;cursor:pointer}
.wizard-next{background:#17262e;color:#fff}.wizard-next:disabled{opacity:.42;cursor:not-allowed;background:#9aa7ae}.wizard-back{background:#eef2f4;color:#34434b}
.checkout-summary{margin-top:18px;background:#f6f8f9;border-radius:14px;padding:14px}
.checkout-summary>div{display:flex;justify-content:space-between;padding:6px 0;font-size:13px}
.checkout-summary .total{border-top:1px solid #dce2e5;margin-top:6px;padding-top:12px;font-size:17px}
.payment-dynamic-card{border:1px solid #dde3e7;border-radius:14px;padding:15px;background:#fff}
.payment-dynamic-card h5{font-size:16px;margin:0 0 7px}.payment-dynamic-card p{font-size:13px;color:#69757c;margin:0 0 12px}
.alias-box{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#fff7f3;border:1px solid #ffd7c8;border-radius:12px;padding:12px}
.alias-box b{font-size:18px;word-break:break-all}
.alias-box button{border:0;background:#17262e;color:#fff;border-radius:8px;padding:8px 10px;font-weight:800;cursor:pointer}
@media(max-width:600px){.shipping-methods,.shipping-fields{grid-template-columns:1fr}.checkout-box{padding:26px 18px}}

.cart-progress>small{display:block;margin-top:8px;color:var(--muted);font-size:10px}.cart-progress>small b{color:var(--accent)}


/* ===== Carrito: desafios de beneficios ===== */
.cart-progress{
  --challenge:#ff5a1f;
  --challenge-soft:#fff3ed;
  padding:14px 20px 12px;
  background:var(--challenge-soft);
  border-bottom:1px solid rgba(0,0,0,.04);
  transition:background .35s ease, box-shadow .35s ease;
}
.cart-progress.goal-start{--challenge:#ff6b35;--challenge-soft:#fff6f1}
.cart-progress.goal-quantity{--challenge:#7657d5;--challenge-soft:#f6f2ff}
.cart-progress.goal-shipping{--challenge:#12a66a;--challenge-soft:#eefbf5}
.cart-progress.goal-wholesale{--challenge:#d69200;--challenge-soft:#fff8e8}
.cart-progress.goal-complete{--challenge:#079a64;--challenge-soft:#ecfaf4}
.cart-progress .challenge-top,.cart-progress .unlock-pop{
  display:flex;align-items:center;gap:10px;min-height:38px;
}
.cart-progress .challenge-top>div:nth-child(2),.cart-progress .unlock-pop>div:nth-child(2){
  min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;
}
.cart-progress .challenge-top b,.cart-progress .unlock-pop b{
  font-size:14px;line-height:1.2;color:#17262f;font-weight:850;
}
.cart-progress .challenge-top span,.cart-progress .unlock-pop span{
  font-size:12px;line-height:1.3;color:#68757d;font-weight:600;
}
.cart-progress .challenge-icon,.cart-progress .unlock-icon{
  width:34px;height:34px;flex:0 0 34px;border-radius:10px;
  display:grid;place-items:center;font-size:19px;
  background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.cart-progress .challenge-percent{
  flex:0 0 auto;font-size:13px;color:var(--challenge);background:#fff;
  border:1px solid color-mix(in srgb,var(--challenge) 25%,white);
  padding:5px 7px;border-radius:999px;
}
.cart-progress .progress{
  height:8px;margin-top:8px;background:rgba(23,38,47,.10);border-radius:999px;overflow:hidden;
}
.cart-progress .progress span{
  height:100%;display:block;border-radius:999px;background:var(--challenge);
  transition:width .55s cubic-bezier(.22,.8,.32,1),background .35s ease;
  position:relative;
}
.cart-progress .progress span::after{
  content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);
  transform:translateX(-100%);animation:challengeShine 2.4s infinite;
}
.cart-progress>small{display:block;margin-top:7px!important;color:#718088!important;font-size:11px!important;line-height:1.25}
.cart-progress>small b{color:var(--challenge)!important;font-size:11.5px}
.cart-progress.celebrate{animation:benefitPulse .65s ease 2;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--challenge) 28%,transparent)}
.cart-progress.celebrate .unlock-icon{animation:unlockBounce .65s cubic-bezier(.2,.9,.25,1.3) 2}
.cart-progress.celebrate .unlock-pop b{font-size:15px;color:var(--challenge)}
@keyframes challengeShine{0%,55%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
@keyframes benefitPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.015)}}
@keyframes unlockBounce{0%{transform:scale(.7) rotate(-12deg)}55%{transform:scale(1.25) rotate(8deg)}100%{transform:scale(1) rotate(0)}}
@media(max-width:560px){
  .cart-progress{padding:13px 18px 11px}
  .cart-progress .challenge-top b,.cart-progress .unlock-pop b{font-size:13.5px}
  .cart-progress .challenge-top span,.cart-progress .unlock-pop span{font-size:11.5px}
}


/* Escalera de beneficios + resumen claro del descuento */
.cart-progress .next-benefit{
  margin-top:9px;padding-top:9px;border-top:1px dashed rgba(23,38,47,.14);
  font-size:11px;line-height:1.35;color:#596870;font-weight:700;
}
.cart-summary .cart-summary-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.cart-summary .cart-discount-row{
  color:#198754;font-size:12px;
}
.cart-summary .cart-discount-row strong{color:#198754}
.cart-summary .cart-free-shipping-row{
  position:relative;overflow:hidden;margin-top:7px;padding:9px 11px;border-radius:11px;
  background:linear-gradient(100deg,#e9fff2,#d8fbe6,#effff5);
  border:1px solid #86e3a9;color:#087a3b;font-size:12px;font-weight:900;
  box-shadow:0 4px 14px rgba(16,185,90,.13);animation:freeShippingPulse 1.8s ease-in-out infinite;
}
.cart-summary .cart-free-shipping-row:after{
  content:"";position:absolute;inset:0 auto 0 -55%;width:40%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);
  transform:skewX(-18deg);animation:freeShippingShine 2.5s ease-in-out infinite;pointer-events:none;
}
.cart-summary .cart-free-shipping-row span,.cart-summary .cart-free-shipping-row strong{position:relative;z-index:1}
.cart-summary .cart-free-shipping-row strong{color:#057333;font-size:13px;letter-spacing:.04em}

.cart-summary .cart-highlight-row{
  position:relative;overflow:hidden;min-height:42px;margin-top:7px;padding:10px 12px;border-radius:11px;
  background:linear-gradient(100deg,#e9fff2,#d8fbe6,#effff5);
  border:1px solid #86e3a9;color:#087a3b;font-size:13px;font-weight:900;
  box-shadow:0 4px 14px rgba(16,185,90,.13);
  align-items:center;justify-content:space-between;gap:10px;
}
.cart-summary .cart-savings-row.cart-highlight-row strong{color:#057333;font-size:16px;font-weight:900}
.cart-summary .cart-highlight-row span,.cart-summary .cart-highlight-row strong{position:relative;z-index:1}
.cart-summary .cart-highlight-row:after{content:"";position:absolute;inset:0 auto 0 -55%;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transform:skewX(-18deg);animation:freeShippingShine 2.5s ease-in-out infinite;pointer-events:none}
.cart-summary .cart-highlight-row.cart-highlight-in{animation:cartHighlightIn .28s ease both}
@keyframes cartHighlightIn{from{opacity:.15;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
.cart-summary .free-shipping-truck{display:inline-block;margin-right:4px;animation:freeShippingTruck 1.2s ease-in-out infinite}
@keyframes freeShippingPulse{0%,100%{transform:scale(1);box-shadow:0 4px 14px rgba(16,185,90,.10)}50%{transform:scale(1.008);box-shadow:0 6px 18px rgba(16,185,90,.20)}}
@keyframes freeShippingShine{0%,55%{left:-55%}100%{left:125%}}
@keyframes freeShippingTruck{0%,100%{transform:translateX(0)}50%{transform:translateX(3px)}}
.cart-summary .cart-total-row{
  margin-top:4px;padding-top:11px;border-top:1px solid #e7ebee;
  align-items:flex-end;
}
.cart-summary .cart-total-row span{
  font-size:13px;font-weight:800;color:#26343c;
}
.cart-summary .cart-total-row strong{
  font-size:20px;line-height:1;color:#111d24;
}


/* Rotación suave de desafíos del carrito */
.cart-progress.challenge-switch .challenge-top{animation:challengeIn .28s ease both}
.cart-progress.challenge-switch .next-benefit{animation:challengeIn .34s ease both}
.cart-progress .challenge-dots{display:flex;justify-content:center;gap:5px;margin-top:6px}
.cart-progress .challenge-dots i{width:5px;height:5px;border-radius:999px;background:rgba(23,38,47,.18);transition:width .25s ease,background .25s ease}
.cart-progress .challenge-dots i.active{width:16px;background:var(--challenge)}
@keyframes challengeIn{from{opacity:.25;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}

/* Popup después de agregar un producto */
.added-cart-popup{position:fixed;right:22px;top:96px;width:min(360px,calc(100% - 28px));background:#fff;border:1px solid #e7ebee;border-radius:18px;box-shadow:0 18px 48px rgba(10,20,25,.22);z-index:70;padding:16px;opacity:0;transform:translateX(24px) scale(.98);pointer-events:none;transition:.22s ease}
.added-cart-popup.show{opacity:1;transform:translateX(0) scale(1);pointer-events:auto}
.added-cart-popup-head{display:flex;align-items:flex-start;gap:11px}
.added-cart-popup-icon{width:38px;height:38px;border-radius:11px;background:#eaf8f3;color:#0d9f6e;display:grid;place-items:center;font-size:20px;font-weight:900;flex:0 0 auto}
.added-cart-popup-copy{min-width:0;flex:1}.added-cart-popup-copy strong{display:block;font-size:14px}.added-cart-popup-copy small{display:block;color:var(--muted);font-size:12px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.added-cart-popup-close{border:0;background:none;font-size:19px;line-height:1;cursor:pointer;color:#68727b;padding:2px}
.added-cart-popup-total{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:13px}.added-cart-popup-total strong{font-size:18px}
.added-cart-popup-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}.added-cart-popup-actions button{border-radius:11px;padding:11px 10px;font-weight:800;cursor:pointer;font-size:12px}.added-cart-continue{background:#fff;border:1px solid var(--line);color:var(--ink)}.added-cart-checkout{background:var(--accent);border:1px solid var(--accent);color:#fff}
@media(max-width:600px){.added-cart-popup{right:14px;top:auto;bottom:14px}}


/* ===== Ajustes v8 solicitados ===== */
/* Los títulos de producto dentro del bloque oscuro deben seguir siendo legibles */
.product-card{color:var(--ink)}
.product-title{color:var(--ink)!important;display:block;overflow:visible}
.product-category{color:var(--muted)}

/* Checkout: ocultamos el indicador Entrega / Contacto / Pago */
.wizard-steps{display:none!important}

/* Botones del checkout con el mismo tamaño */
.wizard-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}
.wizard-actions>button,
.wizard-actions .wizard-back,
.wizard-actions .wizard-next,
.wizard-actions .confirm-order-btn{
  width:100%!important;
  min-width:0!important;
  height:48px!important;
  margin:0!important;
  padding:0 16px!important;
  border-radius:10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-weight:900!important;
}
/* En el primer paso mantenemos Continuar ocupando la mitad derecha */
.wizard-actions>span{display:block}

@media(max-width:560px){
  .wizard-actions{grid-template-columns:1fr 1fr}
}

/* Ficha de producto */
.product-card{cursor:pointer}
.product-card .add-btn{cursor:pointer}
.product-modal,.orders-modal{position:fixed;inset:0;background:rgba(15,28,35,.62);display:none;align-items:center;justify-content:center;padding:20px;z-index:1200}
.product-modal.open,.orders-modal.open{display:flex}
.product-modal-box,.orders-modal-box{position:relative;width:min(760px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.28);padding:28px}
.product-modal-close{position:absolute;top:18px;right:18px;width:40px;height:40px;border:0;border-radius:12px;background:#f1f4f5;font-size:18px;cursor:pointer}
.product-detail{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:28px;align-items:start}
.product-detail-image{width:100%;aspect-ratio:1/1;object-fit:contain;border:1px solid #e5eaed;border-radius:18px;background:#fff}
.product-detail h3{font-size:25px;line-height:1.2;margin:8px 48px 10px 0}
.product-detail-price{font-size:28px;font-weight:800;margin:10px 0}
.product-detail-stock{display:inline-block;background:#e9f8f1;color:#008c55;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}
.product-detail-desc{margin-top:20px;padding-top:18px;border-top:1px solid #e7ecef;white-space:pre-line;line-height:1.55;color:#37444c;font-size:14px}

.product-detail-warning{margin-top:14px;padding:10px 12px;border-radius:10px;background:#fff7e8;color:#7a5a16;font-size:12px;line-height:1.4}
.product-detail-ml-link{display:inline-flex;margin-top:14px;font-weight:800;font-size:13px;color:#12344d;text-decoration:underline}
.product-detail-loading{padding:55px 20px;text-align:center;color:#68747b}
.product-detail .add-btn{margin-top:18px;width:100%}
.orders-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.orders-modal-head h3{font-size:28px;margin:4px 0 0}
.orders-help{color:#69757d;font-size:13px;margin:8px 0 20px}
.order-card{border:1px solid #e2e8eb;border-radius:16px;padding:16px;margin:12px 0;background:#fff}
.order-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.order-card-id{font-weight:800}.order-card-date{font-size:12px;color:#7b858b}
.order-card-total{font-size:20px;font-weight:800}.order-card-status{margin-top:8px;font-size:12px;font-weight:800;text-transform:uppercase;color:#0b8d58}
.order-pay-now{width:100%;margin-top:12px;border:0;border-radius:11px;padding:13px 16px;background:var(--accent);color:#fff;font-weight:900;font-size:13px;cursor:pointer;box-shadow:0 7px 16px color-mix(in srgb,var(--accent) 18%,transparent)}
.order-pay-now:hover{filter:brightness(.96)}
.order-pay-now:disabled{opacity:.65;cursor:wait}
.order-tracking{margin-top:12px;border:1px solid #f0cc55;background:#fff8d9;border-radius:12px;padding:11px 12px;box-shadow:inset 0 0 0 1px rgba(240,204,85,.12)}.order-tracking-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.order-tracking-head b{font-size:12px}.order-tracking-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;word-break:break-all;color:#34454d;margin-top:6px}.order-track-btn{width:100%;margin-top:9px;border:0;border-radius:10px;padding:11px 14px;background:#172033;color:#fff;font-weight:900;cursor:pointer}.order-track-note{display:block;color:#6f7c82;font-size:10px;margin-top:6px;line-height:1.35}
.order-empty{text-align:center;padding:38px 12px;color:#707b82}
@media(max-width:680px){.product-detail{grid-template-columns:1fr}.product-modal-box,.orders-modal-box{padding:20px;border-radius:18px}.product-detail-image{max-height:280px}.product-detail h3{font-size:21px}}


/* Mis pedidos: recuperación por ID + email */
.order-lookup{background:#f6f8f9;border:1px solid #e1e7ea;border-radius:16px;padding:16px;margin:12px 0 20px}
.order-lookup-title{font-size:14px;font-weight:900;margin-bottom:10px}
.order-lookup-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}
.order-lookup-fields input{min-width:0;border:1px solid #d8e0e4;border-radius:10px;padding:11px 12px;background:#fff;font:inherit}
.order-lookup-fields button{border:0;border-radius:10px;padding:0 16px;background:var(--accent);color:#fff;font-weight:900;cursor:pointer}
.order-lookup-fields button:disabled{opacity:.65;cursor:wait}
.order-lookup-error{margin-top:10px;padding:10px 12px;border-radius:10px;background:#fff0ed;color:#a53820;font-size:13px;font-weight:700}
.orders-separator{display:flex;align-items:center;gap:10px;margin:18px 0 8px;color:#7b858b;font-size:10px;font-weight:900;letter-spacing:.08em}
.orders-separator:before,.orders-separator:after{content:"";height:1px;background:#e2e8eb;flex:1}
.order-card-expanded{margin-top:12px;background:#fff}
.order-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #e7ecef}
.order-detail-grid div{background:#f6f8f9;border-radius:10px;padding:10px}.order-detail-grid small{display:block;color:#77828a;margin-bottom:4px}.order-detail-grid strong{font-size:13px}
.order-items{margin-top:12px;border-top:1px solid #e7ecef;padding-top:8px}.order-items>div{display:flex;justify-content:space-between;gap:14px;padding:7px 0;font-size:12px}.order-items span{color:#46535b}.order-items strong{white-space:nowrap}
@media(max-width:680px){.order-lookup-fields{grid-template-columns:1fr}.order-lookup-fields button{min-height:44px}.order-detail-grid{grid-template-columns:1fr 1fr}}


/* V11: popup de carrito más legible */
.added-cart-popup{width:min(400px,calc(100% - 28px));padding:19px}
.added-cart-popup-copy strong{font-size:17px;line-height:1.2}
.added-cart-popup-copy small{font-size:14px;line-height:1.35;margin-top:5px}
.added-cart-popup-total{font-size:15px}
.added-cart-popup-total strong{font-size:22px}
.added-cart-popup-actions button{font-size:14px;padding:13px 11px}
.added-cart-popup-icon{width:42px;height:42px;font-size:24px}

/* V11: búsqueda instantánea - deja aire al bajar a resultados */
#productos{scroll-margin-top:135px}

/* V11: pantalla profesional de pedido finalizado */
.checkout-box.checkout-success-mode{width:min(620px,calc(100% - 28px));padding:0;overflow:hidden}
.checkout-success{position:relative;padding:34px 30px 28px;text-align:center;background:#fff}
.checkout-success-close{position:absolute;right:18px;top:18px;width:40px;height:40px;border:0;border-radius:12px;background:#f2f4f5;font-size:18px;cursor:pointer}
.checkout-success-icon{width:68px;height:68px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#e7f8f1;color:#069b66;font-size:38px;font-weight:900}
.checkout-success-kicker{font-size:12px;letter-spacing:1.5px;font-weight:900;color:var(--accent);margin-bottom:7px}
.checkout-success h3{font-size:29px;margin:0 0 8px}
.checkout-success>p{color:#65727b;margin:0 auto 18px}
.checkout-success-number{background:#17262e;color:#fff;border-radius:18px;padding:18px 20px;margin:22px 0 14px;display:grid;gap:5px}
.checkout-success-number span{font-size:12px;color:#cbd6db;text-transform:uppercase;letter-spacing:.8px;font-weight:800}
.checkout-success-number strong{font-size:31px;letter-spacing:1.2px}
.checkout-success-number small{font-size:12px;color:#dce5e9}
.checkout-success-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
.checkout-success-info>div{background:#f5f7f8;border-radius:13px;padding:13px;display:grid;gap:4px;text-align:left}
.checkout-success-info span{font-size:11px;color:#758089;text-transform:uppercase;font-weight:800}
.checkout-success-info strong{font-size:14px}
.checkout-success-email{background:#eefaf6!important;color:#087c58!important;border-radius:12px;padding:12px 14px;margin:14px 0!important;font-size:13px}
.checkout-success-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.checkout-success-actions button{height:50px;border-radius:11px;border:0;font-weight:900;cursor:pointer}
.checkout-success-shop{margin-top:12px;border:0;background:none;color:#5c6870;text-decoration:underline;font-weight:700;cursor:pointer}
@media(max-width:560px){.checkout-success{padding:30px 18px 22px}.checkout-success-actions{grid-template-columns:1fr}.checkout-success-info{grid-template-columns:1fr}.checkout-success-number strong{font-size:25px}}

@media print{
  body.printing-order *{visibility:hidden!important}
  body.printing-order #checkoutSuccess,body.printing-order #checkoutSuccess *{visibility:visible!important}
  body.printing-order #checkoutSuccess{position:fixed;inset:0;width:100%;padding:25mm;background:#fff}
  body.printing-order .checkout-success-close,
  body.printing-order .checkout-success-actions,
  body.printing-order .checkout-success-shop{display:none!important}
}


/* ===== V12: carrito + Mis pedidos ===== */
/* Deja una zona libre debajo del botón del carrito para que no quede pegado al borde de pantalla. */
.cart-summary{padding-bottom:max(42px,calc(22px + env(safe-area-inset-bottom)))!important;background:#fff;flex:0 0 auto}
.checkout-btn{margin-bottom:0!important}

/* Alineación exacta de los botones de la confirmación. */
.checkout-success-actions{align-items:stretch}
.checkout-success-actions button,
.checkout-success-actions .wizard-back,
.checkout-success-actions .confirm-order-btn{
  width:100%!important;height:52px!important;margin:0!important;padding:0 14px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  line-height:1.1!important;text-align:center!important;box-sizing:border-box!important;
}

/* Historial: estado, abonado y detalle desplegable. */
.order-card-total-block{text-align:right}.order-card-total-block small{display:block;color:#7b858b;font-size:10px;font-weight:800;text-transform:uppercase;margin-bottom:2px}
.order-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.order-card-status{margin-top:0}
.order-card-paid{display:flex;align-items:baseline;gap:7px;background:#f3f7f5;border-radius:999px;padding:7px 10px}
.order-card-paid span{font-size:10px;color:#68757c;font-weight:800;text-transform:uppercase}.order-card-paid strong{font-size:13px;color:#087c58}
.order-detail-toggle{width:100%;margin-top:12px;border:1px solid #dfe6e9;background:#f7f9fa;color:#223039;border-radius:10px;min-height:38px;font-weight:900;cursor:pointer}
.order-detail-toggle:hover{background:#eef3f5}
.order-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.order-card-actions:empty{display:none}.order-card-actions .order-detail-toggle,.order-card-actions .order-pay-now{width:auto;flex:1;margin-top:0;min-width:180px}.order-invoice-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border-radius:10px;background:#17262e;color:#fff;text-decoration:none;font-weight:900;flex:1;min-width:150px}.order-invoice-link:hover{background:#ff5a1f}
.order-progress{margin:14px 0 4px;padding:4px 2px 0}.order-progress-track{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start}.order-progress-step{position:relative;text-align:center;color:#98a2a8;font-size:10px;font-weight:800;line-height:1.2;padding-top:23px}.order-progress-step::before{content:'';position:absolute;top:5px;left:50%;transform:translateX(-50%);width:13px;height:13px;border:3px solid #cfd7db;background:#fff;border-radius:50%;z-index:2}.order-progress-step:not(:last-child)::after{content:'';position:absolute;top:11px;left:50%;width:100%;height:3px;background:#dfe5e8;z-index:1}.order-progress-step.done,.order-progress-step.active{color:#29353b}.order-progress-step.done::before,.order-progress-step.active::before{border-color:#cc6688;background:#cc6688;box-shadow:0 0 0 3px #f7e4eb}.order-progress-step.done:not(:last-child)::after{background:#cc6688}.order-progress-step.active::before{background:#fff}.order-progress-step span{display:block;max-width:110px;margin:0 auto}.order-progress-step.active span{font-weight:900}.order-progress.paid .order-progress-step.done,.order-progress.paid .order-progress-step.active{color:#117a52}.order-progress.paid .order-progress-step.done::before,.order-progress.paid .order-progress-step.active::before{border-color:#18a66f;box-shadow:0 0 0 3px #dff6ec}.order-progress.paid .order-progress-step.done::before{background:#18a66f}.order-progress.paid .order-progress-step.done:not(:last-child)::after{background:#18a66f}.order-progress-step.active::before{animation:orderProgressPulse 1.15s ease-in-out infinite}.order-progress.paid .order-progress-step.active::before{background:#fff}.order-progress.cancelled{opacity:.55}.order-progress.cancelled .order-progress-step.active::before{animation:none}@keyframes orderProgressPulse{0%,100%{transform:translateX(-50%) scale(1);box-shadow:0 0 0 3px rgba(204,102,136,.18)}50%{transform:translateX(-50%) scale(1.16);box-shadow:0 0 0 7px rgba(204,102,136,.08)}}.order-progress.paid .order-progress-step.active::before{animation-name:orderProgressPulsePaid}@keyframes orderProgressPulsePaid{0%,100%{transform:translateX(-50%) scale(1);box-shadow:0 0 0 3px rgba(24,166,111,.18)}50%{transform:translateX(-50%) scale(1.16);box-shadow:0 0 0 7px rgba(24,166,111,.08)}}
.order-details-wrap{display:none}.order-details-wrap.open{display:block}
.order-items-empty{margin-top:12px;color:#77828a;font-size:12px}
@media(max-width:560px){.cart-summary{padding-bottom:max(34px,calc(18px + env(safe-area-inset-bottom)))!important}.order-card-meta{align-items:flex-start;flex-direction:column}.order-card-paid{align-self:stretch;justify-content:space-between}.order-progress-step{font-size:9px}.order-progress-step span{max-width:88px}}
/* V140: estados claros + soporte WhatsApp */
.order-card-status.status-pending-payment{color:#b42318}
.order-card-status.status-pending-shipping{color:#9a6700}
.order-card-status.status-shipped{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:999px;background:#fff2b8;color:#805700}
.order-card-status.status-delivered{color:#0b8d58}
.order-cancel-message{margin-top:12px;padding:13px 14px;border:1px solid #fecaca;background:#fff7f7;border-radius:12px;color:#991b1b;font-size:13px;line-height:1.45}.order-cancel-message b{display:block;margin-bottom:4px}
.order-card-id{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.order-card-id .order-label{font-size:11px;color:#6f7c82;font-weight:700}.order-card-id .order-code{font-size:17px;color:#17262f;font-weight:900}
.whatsapp-support{display:none;align-items:center;justify-content:center;gap:10px;text-decoration:none;border:1px solid #cdebdc;background:#f2fff8;color:#106b46;border-radius:12px;padding:11px 13px;font-weight:800;font-size:13px;margin-top:12px;cursor:pointer}.whatsapp-support.show{display:flex}.whatsapp-support .wa-icon{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;font-size:16px}.orders-whatsapp{margin:14px 0 2px}.cart-whatsapp{margin-top:12px}.footer-whatsapp{margin:20px auto 0;max-width:420px}.site-footer .whatsapp-support{background:#15262f;border-color:#2d4b3d;color:#e9fff4}.site-footer .whatsapp-support .wa-icon{background:#25D366}

\n\n/* ===== V13: tarjetas + barra de niveles ===== */\n/* Las tarjetas ya no muestran \"PRECIO WEB\" ni la leyenda mayorista debajo de cada artículo. */\n.product-card{display:flex;flex-direction:column}\n.product-body{display:flex;flex-direction:column;flex:1}\n.product-title{height:auto;min-height:59px;margin-bottom:7px;overflow:visible}\n.old-price{margin-top:auto;min-height:17px}\n.price-row{min-height:34px;align-items:center;gap:10px}\n.off{\n  display:inline-flex;align-items:center;justify-content:center;\n  background:#e8fbf3;color:#008b57;border:1px solid #bfeeda;\n  border-radius:999px;padding:6px 9px;font-size:13px;font-weight:900;\n  line-height:1;white-space:nowrap;box-shadow:0 2px 8px rgba(0,139,87,.08)\n}\n.add-btn{margin-top:12px}\n.product-badge,.wholesale-price{display:none!important}\n\n/* Aparece debajo de las categorías cuando el usuario ya bajó por la tienda. */\n.discount-sticky{\n  max-height:0;overflow:hidden;opacity:0;background:#fff7f2;border-top:0 solid #ffd8c7;\n  transition:max-height .22s ease,opacity .18s ease,border-width .18s ease;\n}\n.discount-sticky.show{max-height:68px;opacity:1;border-top-width:1px}\n.discount-sticky-inner{min-height:54px;display:flex;align-items:center;gap:16px;padding:8px 0}\n.discount-sticky-inner>strong{font-size:13px;white-space:nowrap;color:#1e2b33}\n.discount-levels{display:flex;align-items:center;gap:7px;flex:1;overflow:auto;scrollbar-width:none}\n.discount-levels::-webkit-scrollbar{display:none}\n.discount-levels span{\n  flex:0 0 auto;background:#fff;border:1px solid #ffd4c2;border-radius:999px;\n  padding:6px 10px;font-size:11px;color:#58656d;white-space:nowrap\n}\n.discount-levels b{color:#ff5722;font-size:12px}\n.discount-sticky-inner>small{font-size:10px;color:#6e797f;white-space:nowrap}\n\n@media(max-width:760px){\n  .discount-sticky.show{max-height:62px}\n  .discount-sticky-inner{gap:8px;padding:7px 10px}\n  .discount-sticky-inner>strong{font-size:0}\n  .discount-sticky-inner>strong:after{content:'💸 Niveles';font-size:12px}\n  .discount-sticky-inner>small{display:none}\n  .discount-levels span{padding:6px 8px;font-size:10px}\n  .discount-levels b{font-size:11px}\n}\n@media(max-width:560px){\n  .product-title{min-height:50px}\n}\n

/* ===== V14: ajuste botón carrito ===== */
/* Más espacio debajo para elevar el botón dentro del panel. */
.cart-summary{padding-bottom:max(70px,calc(48px + env(safe-area-inset-bottom)))!important}
.checkout-btn{
  min-height:54px!important;
  padding:16px 18px!important;
  font-size:16px!important;
  line-height:1.15!important;
  font-weight:900!important;
}
@media(max-width:560px){
  .cart-summary{padding-bottom:max(62px,calc(42px + env(safe-area-inset-bottom)))!important}
  .checkout-btn{min-height:56px!important;font-size:17px!important}
}


/* ===== V15: barra de descuentos compacta y profesional ===== */
/* Sobrescribe la barra V13: invisible al inicio, aparece sólo al hacer scroll. */
.discount-sticky{
  max-height:0!important;
  opacity:0!important;
  overflow:hidden!important;
  transform:translateY(-6px);
  background:rgba(255,255,255,.98)!important;
  border-top:0!important;
  border-bottom:0 solid #e5e9eb!important;
  box-shadow:none!important;
  transition:max-height .24s ease,opacity .2s ease,transform .24s ease,border-width .2s ease,box-shadow .2s ease!important;
}
.discount-sticky.show{
  max-height:58px!important;
  opacity:1!important;
  transform:translateY(0);
  border-bottom-width:1px!important;
  box-shadow:0 8px 18px rgba(18,35,45,.07)!important;
}
.discount-sticky-inner{
  min-height:56px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:7px 0!important;
}
.discount-sticky-title{
  display:flex;align-items:center;gap:9px;min-width:245px;
}
.discount-sticky-icon{
  width:31px;height:31px;border-radius:9px;display:grid;place-items:center;
  background:#fff0ea;color:var(--accent);font-size:15px;font-weight:900;
}
.discount-sticky-title>span:last-child{display:flex;flex-direction:column;line-height:1.12}
.discount-sticky-title strong{font-size:12.5px;color:#18262e;white-space:nowrap}
.discount-sticky-title small{font-size:9.5px;color:#7a858b;margin-top:3px;white-space:nowrap}
.discount-levels{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  gap:6px!important;flex:1!important;overflow:visible!important;
}
.discount-levels span{
  display:flex!important;align-items:center!important;gap:6px!important;
  flex:0 0 auto!important;background:#f6f8f9!important;border:1px solid #e4e9ec!important;
  border-radius:10px!important;padding:7px 10px!important;white-space:nowrap!important;
  box-shadow:none!important;
}
.discount-levels span b{font-size:12px!important;color:#15252e!important;line-height:1!important}
.discount-levels span em{font-size:10px!important;color:#68757d!important;font-style:normal!important;line-height:1!important}
.discount-levels i{font-style:normal;color:#a8b0b5;font-size:16px;line-height:1}
.discount-levels .discount-level-best{
  background:#fff3ed!important;border-color:#ffd0bd!important;
}
.discount-levels .discount-level-best b{color:var(--accent)!important}

@media(max-width:900px){
  .discount-sticky.show{max-height:55px!important}
  .discount-sticky-title{min-width:auto}
  .discount-sticky-title small{display:none}
  .discount-sticky-title strong{font-size:11px}
  .discount-levels span{padding:6px 8px!important}
  .discount-levels span em{display:none}
}
@media(max-width:620px){
  .discount-sticky.show{max-height:52px!important}
  .discount-sticky-inner{min-height:50px!important;gap:7px!important;padding:5px 10px!important}
  .discount-sticky-title{gap:6px}
  .discount-sticky-icon{width:27px;height:27px;border-radius:8px;font-size:13px}
  .discount-sticky-title strong{font-size:0!important}
  .discount-sticky-title strong:after{content:'Descuentos';font-size:11px}
  .discount-levels{gap:4px!important;overflow:auto!important;scrollbar-width:none}
  .discount-levels::-webkit-scrollbar{display:none}
  .discount-levels span{border-radius:8px!important;padding:6px 7px!important}
  .discount-levels span b{font-size:10.5px!important}
  .discount-levels i{font-size:13px}
}


/* ============================================================
   RULETA DE PREMIOS - aparece a los 20 s
   ============================================================ */
body.roulette-open{overflow:hidden}
.roulette-modal{position:fixed;inset:0;z-index:140;background:rgba(9,17,23,.68);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:18px;opacity:0;transition:opacity .25s ease}
.roulette-modal.open{display:flex}.roulette-modal.ready{opacity:1}
/* V609: seguro visual adicional: ningún modal/overlay puede convivir con la ruleta. */
body:has(.billing-modal-overlay) #rouletteModal,body:has(#checkoutModal.open) #rouletteModal,body:has(#productModal.open) #rouletteModal,body:has(#ordersModal.open) #rouletteModal{display:none!important;opacity:0!important;pointer-events:none!important}
.roulette-shell{position:relative;width:min(570px,96vw);max-height:95vh;overflow:hidden;background:radial-gradient(circle at 50% 0,#fffaf5 0,#fff 43%,#f8fafb 100%);border:1px solid rgba(255,255,255,.7);border-radius:30px;box-shadow:0 35px 100px rgba(0,0,0,.36),0 0 0 1px rgba(255,90,31,.08);padding:25px 28px 22px;text-align:center;transform:translateY(18px) scale(.96);transition:transform .35s cubic-bezier(.2,.9,.2,1)}
.roulette-modal.ready .roulette-shell{transform:translateY(0) scale(1)}
.roulette-close{position:absolute;right:17px;top:17px;width:38px;height:38px;border:0;border-radius:12px;background:#eef2f4;color:#39474f;font-size:17px;cursor:pointer;z-index:8}
.roulette-copy{position:relative;z-index:2}.roulette-kicker{display:inline-block;color:var(--accent);font-size:11px;font-weight:900;letter-spacing:1.2px;margin-top:2px}.roulette-copy h2{font-size:32px;margin:7px 0 4px;letter-spacing:-1px}.roulette-copy p{margin:0 auto 12px;color:#69767d;font-size:13px;max-width:420px}.roulette-copy p b{color:#1b2a32}
.roulette-glow{position:absolute;width:330px;height:330px;border-radius:50%;background:rgba(255,95,35,.10);filter:blur(50px);left:50%;top:90px;transform:translateX(-50%);pointer-events:none;animation:rouletteGlow 1.8s ease-in-out infinite alternate}
@keyframes rouletteGlow{to{transform:translateX(-50%) scale(1.16);opacity:.55}}
.roulette-stage{position:relative;display:grid;place-items:center;padding:4px 0 10px;z-index:2}.roulette-wheel-wrap{position:relative;width:min(338px,72vw);aspect-ratio:1;border-radius:50%;padding:10px;background:#fff;box-shadow:0 18px 42px rgba(19,34,43,.22),0 0 0 7px #17262f,0 0 0 10px #ff713e}
.roulette-wheel{position:relative;width:100%;height:100%;border-radius:50%;background:conic-gradient(from -30deg,#ff5a26 0 60deg,#17262f 60deg 120deg,#ffd34d 120deg 180deg,#ff8055 180deg 240deg,#243a47 240deg 300deg,#ffb343 300deg 360deg);overflow:hidden;transform:rotate(0deg);will-change:transform;box-shadow:inset 0 0 0 5px rgba(255,255,255,.2)}
.roulette-wheel:after{content:'';position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from -30deg,transparent 0 59deg,rgba(255,255,255,.72) 59deg 60deg);pointer-events:none}
.roulette-labels{position:absolute;inset:0}.roulette-labels span{position:absolute;left:50%;top:50%;width:94px;height:52px;margin-left:-47px;margin-top:-26px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#fff;transform:rotate(calc(var(--i) * 60deg)) translateY(-112px) rotate(calc(var(--i) * -60deg));transform-origin:center;z-index:2;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.roulette-labels span:nth-child(3),.roulette-labels span:nth-child(6){color:#18262e;text-shadow:none}.roulette-labels span b{font-size:19px;line-height:1}.roulette-labels span em{font-size:9px;line-height:1.08;font-style:normal;font-weight:900;max-width:85px}
.roulette-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:92px;height:92px;border-radius:50%;background:#fff;display:grid;place-content:center;z-index:4;box-shadow:0 4px 20px rgba(0,0,0,.25),inset 0 0 0 7px #f3f5f6}.roulette-center span{font-size:9px;font-weight:900;color:var(--accent);letter-spacing:1.3px}.roulette-center b{font-size:20px;color:#17262f}
.roulette-pointer{position:absolute;top:-4px;left:50%;transform:translateX(-50%);z-index:7;color:#ff5a26;font-size:38px;line-height:1;filter:drop-shadow(0 4px 2px rgba(0,0,0,.18));animation:pointerBounce .65s ease-in-out infinite alternate}@keyframes pointerBounce{to{transform:translateX(-50%) translateY(4px)}}
.roulette-lights{position:absolute;inset:-5px;border-radius:50%;pointer-events:none;background:radial-gradient(circle at 50% 0,#fff 0 3px,transparent 4px),radial-gradient(circle at 100% 50%,#fff 0 3px,transparent 4px),radial-gradient(circle at 50% 100%,#fff 0 3px,transparent 4px),radial-gradient(circle at 0 50%,#fff 0 3px,transparent 4px);animation:lightsPulse .55s steps(2) infinite}@keyframes lightsPulse{50%{filter:drop-shadow(0 0 7px #ffd34d);opacity:.45}}
.roulette-spin{position:relative;z-index:3;display:inline-block;width:min(330px,90%);margin-left:auto;margin-right:auto;border:0;border-radius:14px;background:linear-gradient(135deg,#ff4d17,#ff7a35);color:#fff;padding:15px 22px;font-weight:900;font-size:15px;letter-spacing:.4px;cursor:pointer;box-shadow:0 11px 26px rgba(255,90,31,.32);animation:spinCta 1.15s ease-in-out infinite alternate}.roulette-spin:hover{transform:translateY(-2px)}.roulette-spin:disabled{animation:none;opacity:.7;cursor:wait}@keyframes spinCta{to{box-shadow:0 13px 33px rgba(255,90,31,.48);transform:scale(1.018)}}
.roulette-legal{display:block;color:#9aa3a8;font-size:9px;margin-top:9px;position:relative;z-index:3}
.roulette-result{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.97),#fff);z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;opacity:0;pointer-events:none;transform:scale(.92);transition:.35s cubic-bezier(.18,.9,.24,1)}.roulette-result.show{opacity:1;pointer-events:auto;transform:scale(1)}
.roulette-result small{color:var(--accent);font-weight:900;letter-spacing:1.3px}.roulette-result>strong{font-size:28px;margin:8px 0;color:#15252e}.roulette-result p{color:#66757d;max-width:380px;line-height:1.5;margin:0 0 20px}.roulette-result button{border:0;border-radius:13px;background:#17262f;color:#fff;padding:14px 26px;font-size:13px;font-weight:900;cursor:pointer}
.roulette-prize-pop{width:118px;height:118px;border-radius:35px;display:grid;place-items:center;background:linear-gradient(135deg,#fff1e9,#ffe1d4);box-shadow:0 20px 50px rgba(255,90,31,.22);margin-bottom:22px;animation:prizePop .7s cubic-bezier(.18,1.4,.2,1),prizeFloat 1.7s .7s ease-in-out infinite alternate}.roulette-prize-pop span{font-size:58px}.roulette-prize-pop.plane span{animation:planeFly 1.1s .45s ease both}@keyframes prizePop{0%{transform:scale(.2) rotate(-18deg);opacity:0}70%{transform:scale(1.12) rotate(5deg)}}@keyframes prizeFloat{to{transform:translateY(-7px) rotate(2deg)}}@keyframes planeFly{0%{transform:translate(-160px,70px) rotate(-25deg);opacity:0}70%{transform:translate(10px,-8px) rotate(8deg);opacity:1}100%{transform:none}}
.roulette-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:14}.roulette-confetti i{position:absolute;left:var(--x);top:-20px;width:9px;height:15px;background:hsl(calc(var(--x) * 3.6),85%,58%);animation:confettiFall var(--d) var(--delay) ease-in forwards;transform:rotate(var(--r))}@keyframes confettiFall{to{transform:translateY(650px) rotate(calc(var(--r) + 900deg));opacity:.15}}
.roulette-prize-badge{position:fixed;left:18px;bottom:18px;z-index:65;border:0;border-radius:16px;background:#17262f;color:#fff;padding:10px 14px 10px 10px;display:grid;grid-template-columns:38px auto;grid-template-rows:auto auto;text-align:left;column-gap:8px;box-shadow:0 13px 34px rgba(0,0,0,.24);cursor:pointer;animation:badgeIn .45s cubic-bezier(.2,1.3,.3,1)}.roulette-prize-badge>span{grid-row:1/3;width:38px;height:38px;border-radius:12px;background:#ff5a26;display:grid;place-items:center;font-size:20px}.roulette-prize-badge b{font-size:11px;align-self:end}.roulette-prize-badge small{font-size:9px;color:#c7d2d7;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes badgeIn{from{transform:translateY(20px) scale(.85);opacity:0}}
@media(max-width:560px){.roulette-shell{padding:20px 14px 18px;border-radius:24px}.roulette-copy h2{font-size:27px}.roulette-copy p{padding:0 20px}.roulette-wheel-wrap{width:min(300px,76vw)}.roulette-labels span{transform:rotate(calc(var(--i) * 60deg)) translateY(-98px) rotate(calc(var(--i) * -60deg));width:84px;margin-left:-42px}.roulette-labels span em{font-size:8px}.roulette-center{width:78px;height:78px}.roulette-center b{font-size:17px}.roulette-result>strong{font-size:23px}.roulette-prize-badge{left:10px;bottom:10px}}

/* V17 - revelado de regalo sorpresa */
.surprise-reveal{padding:4px 10px 2px;animation:surpriseIn .45s cubic-bezier(.2,1.4,.3,1)}
.surprise-reveal>small{display:block;color:#ff5a26;font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:5px}
.surprise-reveal>strong{display:block;font-size:27px;line-height:1.05;color:#15252d;margin-bottom:7px}
.surprise-reveal>p{margin:0 0 12px;color:#68767e;font-size:14px}
.gift-box-button{position:relative;width:126px;height:112px;margin:2px auto 4px;border:0;background:transparent;cursor:pointer;display:block;filter:drop-shadow(0 15px 16px rgba(255,90,38,.25));animation:giftFloat 1.15s ease-in-out infinite}
.gift-box-body{font-size:90px;line-height:1;display:block;transition:transform .45s ease,opacity .4s ease}.gift-box-lid{position:absolute;z-index:2;top:-8px;left:50%;transform:translateX(-50%);font-size:43px;transition:transform .65s cubic-bezier(.2,1.5,.3,1),opacity .4s}
.gift-tap{font-size:10px;font-weight:900;letter-spacing:.1em;color:#ff5a26;animation:tapPulse .85s ease-in-out infinite alternate}
.surprise-reveal.opening .gift-box-button{animation:giftShake .12s linear infinite}.surprise-reveal.opening .gift-box-lid{transform:translateX(-50%) translateY(-42px) rotate(24deg) scale(1.15)}.surprise-reveal.opening .gift-box-body{transform:scale(1.08)}
.gift-reveal-burst{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;font-size:62px;background:radial-gradient(circle,#fff 20%,#fff4c7 55%,#ffcb43 100%);box-shadow:0 0 0 10px rgba(255,202,67,.14),0 0 45px rgba(255,177,40,.55);animation:giftBurst .65s cubic-bezier(.15,1.5,.3,1)}
@keyframes giftFloat{50%{transform:translateY(-8px) rotate(-2deg)}}@keyframes tapPulse{to{transform:scale(1.06);opacity:.72}}@keyframes giftShake{25%{transform:translateX(-5px) rotate(-3deg)}75%{transform:translateX(5px) rotate(3deg)}}@keyframes giftBurst{from{transform:scale(.15) rotate(-120deg);opacity:0}70%{transform:scale(1.18) rotate(8deg)}to{transform:scale(1) rotate(0)}}@keyframes surpriseIn{from{transform:scale(.88);opacity:0}}
/* V17 regalo sorpresa */
.surprise-reveal{padding:4px 10px 2px;animation:surpriseIn .45s cubic-bezier(.2,1.4,.3,1)}
.surprise-reveal>small{display:block;color:#ff5a26;font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:5px}.surprise-reveal>strong{display:block;font-size:27px;line-height:1.05;color:#15252d;margin-bottom:7px}.surprise-reveal>p{margin:0 0 12px;color:#68767e;font-size:14px}
.gift-box-button{position:relative;width:126px;height:112px;margin:2px auto 4px;border:0;background:transparent;cursor:pointer;display:block;filter:drop-shadow(0 15px 16px rgba(255,90,38,.25));animation:giftFloat 1.15s ease-in-out infinite}.gift-box-body{font-size:90px;line-height:1;display:block;transition:transform .45s ease}.gift-box-lid{position:absolute;z-index:2;top:-8px;left:50%;transform:translateX(-50%);font-size:43px;transition:transform .65s cubic-bezier(.2,1.5,.3,1)}.gift-tap{font-size:10px;font-weight:900;letter-spacing:.1em;color:#ff5a26;animation:tapPulse .85s ease-in-out infinite alternate}.surprise-reveal.opening .gift-box-button{animation:giftShake .12s linear infinite}.surprise-reveal.opening .gift-box-lid{transform:translateX(-50%) translateY(-42px) rotate(24deg) scale(1.15)}.surprise-reveal.opening .gift-box-body{transform:scale(1.08)}
.gift-reveal-burst{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;font-size:62px;background:radial-gradient(circle,#fff 20%,#fff4c7 55%,#ffcb43 100%);box-shadow:0 0 0 10px rgba(255,202,67,.14),0 0 45px rgba(255,177,40,.55);animation:giftBurst .65s cubic-bezier(.15,1.5,.3,1)}
@keyframes giftFloat{50%{transform:translateY(-8px) rotate(-2deg)}}@keyframes tapPulse{to{transform:scale(1.06);opacity:.72}}@keyframes giftShake{25%{transform:translateX(-5px) rotate(-3deg)}75%{transform:translateX(5px) rotate(3deg)}}@keyframes giftBurst{from{transform:scale(.15) rotate(-120deg);opacity:0}70%{transform:scale(1.18) rotate(8deg)}to{transform:scale(1)}}@keyframes surpriseIn{from{transform:scale(.88);opacity:0}}

/* ===== V18: premio de ruleta visible en precios ===== */
.off.off-prize{
  background:#fff4d8;
  color:#9a5b00;
  border-color:#ffd37a;
  box-shadow:0 3px 12px rgba(190,120,0,.14);
  animation:prizeDiscountPulse 1.8s ease-in-out infinite;
}
@keyframes prizeDiscountPulse{
  0%,100%{transform:scale(1);box-shadow:0 3px 12px rgba(190,120,0,.10)}
  50%{transform:scale(1.04);box-shadow:0 5px 18px rgba(190,120,0,.22)}
}

.cart-summary .cart-reward-row{
  margin-top:4px;
  padding:8px 10px;
  border-radius:10px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  color:#9a3412;
  font-size:13px;
  font-weight:800;
}
.cart-summary .cart-reward-row strong{
  color:#ea580c;
  text-align:right;
}


/* Mercado Pago QR dinámico */
.payment-choice-mp{margin-bottom:10px}
.mp-qr-payment-box{
  margin-top:6px;
  border:1px solid #dfe6ef;
  background:linear-gradient(180deg,#fff,#f8fafc);
  border-radius:18px;
  padding:18px;
  text-align:center;
}
.mp-qr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;text-align:left;margin-bottom:14px}
.mp-qr-head>div:first-child{display:flex;flex-direction:column;gap:4px}
.mp-qr-head span{font-size:11px;letter-spacing:.8px;font-weight:900;color:#3483fa}
.mp-qr-head strong{font-size:18px;color:#172033}
.mp-qr-order{font-size:11px;background:#eef4ff;color:#1d4ed8;border-radius:8px;padding:7px 9px;font-weight:800}
.mp-qr-code{width:254px;min-height:254px;margin:8px auto 12px;padding:12px;background:#fff;border:1px solid #e4e7ec;border-radius:16px;display:grid;place-items:center}
.mp-qr-code img,.mp-qr-code canvas{max-width:230px!important;width:230px!important;height:230px!important}
.mp-qr-help{max-width:390px;margin:8px auto 14px;color:#667085;font-size:13px;line-height:1.45}
.mp-qr-status{display:flex;align-items:center;justify-content:center;gap:9px;padding:11px 13px;border-radius:11px;background:#fff7e6;color:#8a5a00;font-weight:800;font-size:13px}
.mp-qr-status i{width:9px;height:9px;border-radius:50%;background:#f5a623;box-shadow:0 0 0 5px #f5a62322;animation:mpQrPulse 1.15s infinite}
.mp-qr-status.paid{background:#ecfdf3;color:#067647}
.mp-qr-status.expired{background:#fff1f1;color:#b42318}
.mp-qr-check-btn{margin-top:12px;border:1px solid #d0d5dd;background:#fff;color:#344054;border-radius:10px;padding:10px 14px;font-weight:850;cursor:pointer}
.mp-qr-check-btn:disabled{opacity:.55;cursor:wait}
.mp-qr-renew-btn{margin-top:12px;border:0;background:#c86489;color:#fff;border-radius:10px;padding:11px 16px;font-weight:900;cursor:pointer;box-shadow:0 6px 16px #c8648926}
.mp-qr-renew-btn:hover{filter:brightness(.97)}
.mp-qr-renew-btn:disabled{opacity:.55;cursor:wait}
.mp-qr-expire{display:block;margin-top:9px;color:#98a2b3;font-size:10px}
.mp-qr-error{font-size:12px;color:#b42318;line-height:1.4}
.mp-qr-body{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px;align-items:center;text-align:left}
.mp-qr-left{display:flex;justify-content:center;align-items:center}
.mp-qr-right{display:flex;flex-direction:column;gap:10px;min-width:0}
.mp-qr-right .mp-qr-help{max-width:none;margin:0;color:#667085;font-size:13px;line-height:1.5}
.mp-qr-right .mp-qr-status{justify-content:flex-start}
.mp-qr-right .mp-qr-check-btn{width:100%;margin-top:2px;background:#172033;color:#fff;border-color:#172033;padding:12px 14px}
.mp-qr-right .mp-qr-renew-btn{width:100%}
.mp-qr-right .mp-qr-expire{margin-top:0}
@keyframes mpQrPulse{50%{transform:scale(1.28);opacity:.55}}
@media(max-width:700px){
  .mp-qr-head{flex-direction:column}
  .mp-qr-body{grid-template-columns:1fr;gap:10px;text-align:center}
  .mp-qr-code{width:224px;min-height:224px}
  .mp-qr-code img,.mp-qr-code canvas{max-width:200px!important;width:200px!important;height:200px!important}
  .mp-qr-right .mp-qr-status{justify-content:center}
}

.mp-main-pay-card{
  border:1px solid #dbe6ff;
  background:linear-gradient(180deg,#f8fbff,#fff);
}
.mp-main-pay-card h5{font-size:17px}
.mp-or-divider{
  display:flex;
  align-items:center;
  gap:12px;
  margin:15px 0 10px;
  color:#98a2b3;
  font-size:11px;
  font-weight:900;
}
.mp-or-divider:before,.mp-or-divider:after{
  content:"";
  height:1px;
  background:#e4e7ec;
  flex:1;
}
.mp-auto-qr-title{
  text-align:center;
  font-size:15px;
  font-weight:900;
  color:#172033;
}
.mp-auto-qr-sub{
  text-align:center;
  color:#667085;
  font-size:12px;
  margin:4px 0 8px;
}
.mp-qr-loading{
  min-height:180px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#344054;
}
.mp-qr-loading small{color:#98a2b3}
.mp-qr-spinner{
  width:34px;height:34px;border-radius:50%;
  border:3px solid #e4e7ec;border-top-color:#3483fa;
  animation:mpQrSpin .8s linear infinite;
}
@keyframes mpQrSpin{to{transform:rotate(360deg)}}
.mp-qr-error-card{
  padding:14px;
  border:1px solid #fecaca;
  background:#fff7f7;
  border-radius:12px;
  display:flex;
  flex-direction:column;
  gap:7px;
  color:#991b1b;
}
.mp-qr-error-card button{
  align-self:center;
  border:0;background:#172033;color:#fff;
  border-radius:9px;padding:9px 12px;font-weight:850;cursor:pointer;
}


/* V37 - pago sin opción duplicada + QR visible */
.selected-payment-card{
  border-color:#ff5a2f!important;
  background:#fff8f4!important;
  box-shadow:0 0 0 1px #ff5a2f18 inset;
}
.mp-qr-not-configured{
  margin-top:8px;
  padding:12px 14px;
  border:1px dashed #f0a36f;
  border-radius:12px;
  background:#fffaf5;
  text-align:left;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.mp-qr-not-configured b{font-size:13px;color:#7c2d12}
.mp-qr-not-configured span{font-size:11px;line-height:1.4;color:#8a5a44}
#mpQrInlineAnchor .mp-qr-payment-box{margin-top:10px}




/* V42 - footer optimizado */
.site-footer{
  background:#0d1b24;
  color:#fff;
  margin-top:48px;
}
.footer-simple-v42{
  max-width:1180px;
  margin:0 auto;
  padding:38px 28px;
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(520px,1.4fr);
  gap:70px;
  align-items:center;
}
.footer-brand-v42{
  min-width:0;
}
.footer-brand-logo-v42{
  display:flex;
  align-items:center;
  gap:14px;
}
.footer-brand-logo-v42 .brand-mark{
  flex:0 0 auto;
}
.footer-brand-text-v42{
  display:flex;
  flex-direction:column;
  line-height:1;
}
.footer-brand-text-v42 .brand-name{
  font-size:21px;
  font-weight:900;
  letter-spacing:.4px;
}
.footer-brand-text-v42 .brand-sub{
  margin-top:6px;
  font-size:10px;
  letter-spacing:3px;
  color:#7fd8f5;
}
.footer-brand-caption-v42{
  margin-top:14px;
  max-width:310px;
  color:#9fb2bd;
  font-size:12px;
  line-height:1.45;
}
.footer-info-title-v42{
  font-size:17px;
  font-weight:900;
  margin-bottom:15px;
}
.footer-info-grid-v42{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 22px;
}
.footer-info-item-v42{
  display:flex;
  gap:10px;
  align-items:flex-start;
  min-width:0;
}
.footer-info-item-v42>span{
  font-size:17px;
  line-height:1.2;
  flex:0 0 auto;
}
.footer-info-item-v42 div{
  min-width:0;
}
.footer-info-item-v42 b{
  display:block;
  font-size:13px;
  line-height:1.25;
  margin-bottom:3px;
}
.footer-info-item-v42 small{
  display:block;
  color:#9fb2bd;
  font-size:11px;
  line-height:1.35;
}
@media(max-width:850px){
  .footer-simple-v42{
    grid-template-columns:1fr;
    gap:28px;
    padding:32px 22px;
  }
  .footer-info-grid-v42{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:540px){
  .footer-info-grid-v42{
    grid-template-columns:1fr;
  }
  .footer-simple-v42{
    padding:28px 18px;
  }
}

/* V504 - enlace visible al sitemap en el footer */
.footer-sitemap-link{display:inline-block;margin-top:14px;color:#a9c3cf;text-decoration:underline;font-size:12px;font-weight:700;align-self:flex-start}
.footer-sitemap-link:hover{color:#fff}
.footer-policy-links{display:flex;flex-wrap:wrap;gap:9px 15px;margin-top:18px}
.footer-policy-links a{color:#d3e0e6;font-size:12px;font-weight:750;text-decoration:none}
.footer-policy-links a:hover{text-decoration:underline;color:#fff}
.footer-policy-links .footer-regret-link{color:#fff;background:#d9480f;padding:8px 10px;border-radius:8px}
.nav-pill,.category-card{text-decoration:none;color:inherit}
.nav-pill{display:inline-flex;align-items:center}
.category-card{display:block}
.footer-seo-categories{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:16px;max-width:640px}
.footer-seo-categories[hidden]{display:none}
.footer-seo-categories a{color:#a9c3cf;font-size:12px;text-decoration:none}
.footer-seo-categories a:hover{color:#fff;text-decoration:underline}
.compex-seo-intro{margin-top:20px;padding:24px 28px;border:1px solid #e2e7ea;border-radius:20px;background:linear-gradient(135deg,#fff8f4,#fff);display:flex;align-items:center;justify-content:space-between;gap:30px}
.compex-seo-intro[hidden],.compex-seo-faq[hidden]{display:none}
.compex-seo-intro h1{font-size:30px;line-height:1.15;margin:7px 0 8px;letter-spacing:-.7px}
.compex-seo-intro p{margin:0;color:var(--muted);max-width:760px;line-height:1.55}
.compex-seo-intro nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:310px}
.compex-seo-intro nav a{padding:9px 12px;border:1px solid #e0e5e8;border-radius:999px;background:#fff;color:var(--ink);font-size:12px;font-weight:750;text-decoration:none;white-space:nowrap}
.compex-seo-intro nav a:hover{border-color:var(--accent);color:var(--accent)}
.compex-seo-faq{padding:48px 0 56px}
.compex-seo-faq h2{font-size:30px;margin:7px 0 20px}
.compex-seo-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.compex-seo-faq details{border:1px solid #e0e5e8;border-radius:15px;background:#fff;padding:17px 19px}
.compex-seo-faq summary{font-weight:800;cursor:pointer}
.compex-seo-faq details p{margin:12px 0 0;color:var(--muted);line-height:1.55;font-size:14px}
@media(max-width:850px){.compex-seo-intro{align-items:flex-start;flex-direction:column}.compex-seo-intro nav{justify-content:flex-start;min-width:0}.compex-seo-faq-grid{grid-template-columns:1fr}}
@media(max-width:520px){.compex-seo-intro{padding:20px}.compex-seo-intro h1{font-size:25px}.compex-seo-faq{padding-top:36px}}

/* V227 - footer simplificado */
.footer-info-v42{display:flex;flex-direction:column;justify-content:center}
.footer-info-v42 .footer-info-grid-v42{grid-template-columns:1fr 1fr;gap:28px}
.footer-info-v42 .footer-whatsapp{margin:20px 0 0;max-width:300px;align-self:flex-start}
@media(max-width:540px){
  .footer-info-v42 .footer-info-grid-v42{grid-template-columns:1fr;gap:16px}
  .footer-info-v42 .footer-whatsapp{width:100%;max-width:none}
}


/* V45 - catálogo paginado */
.load-more-wrap{
  display:flex;
  justify-content:center;
  padding:26px 0 4px;
}
.load-more-btn{
  border:1px solid #d9e1e7;
  background:#0d1b24;
  color:#fff;
  border-radius:12px;
  padding:13px 28px;
  font-weight:800;
  cursor:pointer;
  min-width:220px;
}
.load-more-btn:hover{filter:brightness(1.08)}
.load-more-btn:disabled{opacity:.6;cursor:wait}
.deals-empty{grid-column:1/-1;color:#d6e2e8;border-color:rgba(255,255,255,.2)}
.deals-empty span{color:#9fb2bd}

/* V46 - carrusel de más vendidos */
.deals-carousel{position:relative}
.deal-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:#16242d;font-size:34px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.24);transition:.18s}
.deal-arrow:hover:not(:disabled){transform:translateY(-50%) scale(1.08)}
.deal-arrow:disabled{opacity:.28;cursor:default}
.deal-arrow-left{left:-22px}
.deal-arrow-right{right:-22px}
.deal-carousel-status{text-align:center;margin-top:14px;color:#c8d4da;font-size:12px;font-weight:700}
@media(max-width:1250px){.deal-arrow-left{left:6px}.deal-arrow-right{right:6px}.deal-arrow{background:rgba(255,255,255,.95)}}
@media(max-width:560px){.deal-arrow{width:38px;height:38px;font-size:28px}.deal-arrow-left{left:2px}.deal-arrow-right{right:2px}}

/* V58 - enlaces reales por producto para SEO */
.product-title-link{color:inherit;text-decoration:none}
.product-title-link:hover{text-decoration:underline;text-underline-offset:2px}


/* V62 - beneficios más suaves + menos espacio antes de categorías */
.benefits{margin-bottom:8px}
.benefits article{background:#fff;border-color:#d0d5dd;box-shadow:none}
#categorias.section{padding-top:16px}
.product-title-link{color:inherit;text-decoration:none}
.product-title-link:hover{text-decoration:underline;text-underline-offset:2px}
.product-detail-site-link{display:inline-flex;margin-top:14px;font-weight:800;font-size:13px;color:#12344d;text-decoration:underline}

/* V64 - categorías en una sola línea con carrusel */
.category-carousel{position:relative}
.category-viewport{overflow:hidden;scroll-behavior:smooth}
.category-grid{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - 60px)/6);
  grid-template-columns:none;
  gap:12px;
  width:max-content;
  min-width:100%;
}
.category-card{min-width:0;height:146px}
.category-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:42px;height:42px;border-radius:50%;border:1px solid #dbe2e6;
  background:#fff;color:#14242d;font-size:31px;line-height:1;
  display:grid;place-items:center;cursor:pointer;
  box-shadow:0 8px 22px rgba(14,30,40,.16);transition:.18s;
}
.category-arrow:hover:not(:disabled){transform:translateY(-50%) scale(1.06)}
.category-arrow:disabled{opacity:.25;cursor:default}
.category-arrow-left{left:-18px}.category-arrow-right{right:-18px}
.category-arrow.is-hidden{display:none}
@media(max-width:1050px){
  .category-grid{grid-auto-columns:calc((100% - 36px)/4)}
  .category-arrow-left{left:4px}.category-arrow-right{right:4px}
}
@media(max-width:720px){
  .category-grid{grid-auto-columns:calc((100% - 12px)/2)}
  .category-card{height:138px}
}
@media(max-width:460px){
  .category-grid{grid-auto-columns:82%}
  .category-arrow{width:38px;height:38px;font-size:28px}
}
\n\n/* ===== V65: descuento junto al precio anterior ===== */\n.old-price-line{\n  display:flex;\n  align-items:center;\n  justify-content:space-between;\n  gap:10px;\n  min-height:20px;\n  margin-top:auto;\n}\n.old-price-line .old-price{\n  margin-top:0;\n  min-height:0;\n}\n.old-price-line .off{\n  background:#fff1f1;\n  color:#b85c5c;\n  border:1px solid #f1cccc;\n  padding:4px 8px;\n  font-size:11px;\n  box-shadow:none;\n}\n.old-price-line .off.off-prize{\n  color:#a85252;\n  border-color:#edc3c3;\n}\n.price-row{justify-content:flex-start;}\n

/* ===== V66: descuento rojo suave + tipografía de botones ===== */
.old-price-line{
  justify-content:flex-start;
  gap:10px;
}
.old-price-line .off,
.old-price-line .off.off-prize{
  background:#fff0f0;
  color:#b34f55;
  border-color:#f0c8cb;
  font-size:12px;
  font-weight:800;
  letter-spacing:.15px;
  padding:3px 7px;
}
.add-btn,
.load-more-btn{
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-weight:700;
  letter-spacing:.15px;
}
.add-btn{
  font-size:14px;
}
.load-more-btn{
  font-size:13px;
  text-transform:none;
}

/* ===== V67: descuento naranja alegre + microanimación al pasar por producto ===== */
.old-price-line .off,
.old-price-line .off.off-prize{
  background:#fff1e8;
  color:#f05a28;
  border-color:#ffcdb8;
  box-shadow:none;
}
/* Al pasar por una tarjeta con descuento, el badge hace un solo gesto de énfasis. */
.product-card:hover .old-price-line .off{
  animation:v67DiscountNudge .72s cubic-bezier(.22,.8,.32,1) 1;
}
@keyframes v67DiscountNudge{
  0%{transform:scale(1) translateX(0)}
  28%{transform:scale(1.13) translateX(2px) rotate(-1.5deg)}
  55%{transform:scale(1.06) translateX(-1px) rotate(1deg)}
  100%{transform:scale(1) translateX(0) rotate(0)}
}
@media (prefers-reduced-motion: reduce){
  .product-card:hover .old-price-line .off{animation:none}
}

/* ===== V68: animación visible de tarjeta al pasar el mouse ===== */
.product-card{
  transform-origin:center center;
  will-change:transform;
}
.product-card:hover{
  animation:v68ProductHover .78s cubic-bezier(.22,.82,.28,1) 1 both;
  box-shadow:0 18px 38px rgba(25,35,45,.14);
  border-color:#ffc9b2;
  z-index:2;
}
@keyframes v68ProductHover{
  0%{transform:translateY(0) scale(1) rotate(0deg)}
  30%{transform:translateY(-5px) scale(1.035) rotate(-.35deg)}
  58%{transform:translateY(-2px) scale(1.018) rotate(.22deg)}
  82%{transform:translateY(-4px) scale(1.027) rotate(-.12deg)}
  100%{transform:translateY(-3px) scale(1.02) rotate(0deg)}
}
.product-card:hover .old-price-line .off{
  animation:v68DiscountPop .78s cubic-bezier(.22,.82,.28,1) 1 both;
}
@keyframes v68DiscountPop{
  0%{transform:scale(1);box-shadow:none}
  34%{transform:scale(1.17) rotate(-2deg);box-shadow:0 5px 14px rgba(240,90,40,.20)}
  62%{transform:scale(1.06) rotate(1deg)}
  100%{transform:scale(1.08) rotate(0);box-shadow:0 3px 10px rgba(240,90,40,.13)}
}
@media (prefers-reduced-motion: reduce){
  .product-card:hover,.product-card:hover .old-price-line .off{animation:none!important}
}


/* ===== V71: titulo abre popup + precio SEO + descuento con animacion visible ===== */
.product-title{
  cursor:pointer;
}
.product-price-link,
.product-price-link:visited,
.product-price-link:hover,
.product-price-link:focus,
.product-price-link:active{
  color:inherit;
  text-decoration:none !important;
  outline:none;
}
.product-price-link strong{
  color:inherit;
  text-decoration:none !important;
}

/* Movimiento estable de la tarjeta mientras el puntero esta encima. */
.product-card{
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease !important;
}
.product-card:hover{
  animation:none !important;
  transform:translateY(-5px) scale(1.025) !important;
  box-shadow:0 18px 38px rgba(25,35,45,.16) !important;
  border-color:#ffc5aa !important;
  z-index:2;
}

/* El descuento palpita de forma evidente mientras se esta sobre la tarjeta. */
.product-card:hover .old-price-line .off,
.product-card:hover .old-price-line .off.off-prize{
  display:inline-block;
  transform-origin:center;
  animation:v71DiscountAttention .82s cubic-bezier(.2,.8,.25,1) infinite alternate !important;
  box-shadow:0 4px 13px rgba(240,90,40,.24) !important;
}
@keyframes v71DiscountAttention{
  0%{transform:scale(1) translateY(0) rotate(0deg)}
  45%{transform:scale(1.16) translateY(-1px) rotate(-1.5deg)}
  100%{transform:scale(1.08) translateY(0) rotate(1deg)}
}


/* ===== V72: interacciones corregidas + badge bien visible ===== */
.product-card{cursor:default!important;overflow:visible}
.product-media,.product-title{cursor:pointer!important}
.product-title:hover{color:var(--ink)!important;text-decoration:none!important}
.product-price-link,
.product-price-link:visited,
.product-price-link:hover,
.product-price-link:focus,
.product-price-link:active{
  color:var(--ink)!important;
  text-decoration:none!important;
  border:0!important;
  box-shadow:none!important;
}
.product-price-link strong{color:var(--ink)!important;text-decoration:none!important}

/* Animación intencionalmente marcada: al pasar por cualquier parte de la tarjeta
   el descuento hace zoom, se desplaza y vuelve de manera continua. */
.product-card:hover .old-price-line .off,
.product-card:hover .old-price-line .off.off-prize{
  position:relative!important;
  z-index:8!important;
  display:inline-flex!important;
  animation:v72DiscountPulse .72s ease-in-out infinite!important;
  transform-origin:center!important;
  background:#ff6a2f!important;
  color:#fff!important;
  border-color:#ff6a2f!important;
  box-shadow:0 6px 18px rgba(255,106,47,.38)!important;
}
@keyframes v72DiscountPulse{
  0%,100%{transform:translateX(0) translateY(0) scale(1) rotate(0deg)}
  35%{transform:translateX(7px) translateY(-2px) scale(1.24) rotate(-2deg)}
  68%{transform:translateX(2px) translateY(0) scale(1.10) rotate(1.2deg)}
}


/* ===== V74: descuento naranja + animacion garantizada al entrar a la tarjeta ===== */
.old-price-line .off,
.old-price-line .off.off-prize{
  background:#fff0e8 !important;
  color:#f05a24 !important;
  border:1px solid #ffc6ad !important;
  border-radius:6px !important;
  box-shadow:none !important;
  font-weight:900 !important;
}
.product-card{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
.product-card:hover{
  transform:translateY(-4px) scale(1.012) !important;
  box-shadow:0 14px 32px rgba(25,35,45,.13) !important;
  border-color:#ffc8af !important;
}
.product-card.discount-attention .old-price-line .off,
.product-card.discount-attention .old-price-line .off.off-prize{
  position:relative !important;
  z-index:12 !important;
  animation:v74DiscountAttention .68s cubic-bezier(.2,.85,.3,1) 1 both !important;
  transform-origin:center !important;
  background:#ff6b32 !important;
  color:#fff !important;
  border-color:#ff6b32 !important;
  box-shadow:0 6px 16px rgba(255,107,50,.28) !important;
}
@keyframes v74DiscountAttention{
  0%   {transform:translateX(0) translateY(0) scale(1) rotate(0deg)}
  28%  {transform:translateX(2px) translateY(-1px) scale(1.10) rotate(-.6deg)}
  55%  {transform:translateX(-1px) translateY(0) scale(1.04) rotate(.4deg)}
  78%  {transform:translateX(1px) translateY(0) scale(1.06) rotate(-.2deg)}
  100% {transform:translateX(0) translateY(0) scale(1) rotate(0deg)}
}


/* V81: categorías más compactas y prolijas */
#categorias.section{padding-top:12px;padding-bottom:28px}
#categorias .section-head{margin-bottom:14px}
#categorias .section-head h2{margin-top:3px}
.category-grid{gap:10px}
.category-card{height:116px;padding:14px 16px;border-radius:16px}
.category-card>span{min-width:38px;height:38px;padding:0 7px;border-radius:12px;font-size:23px}
.category-card strong{margin:8px 0 3px;font-size:13px}
.category-card small{font-size:11px;line-height:1.25}
@media(max-width:720px){.category-card{height:112px;padding:13px 14px}}

/* V80: iconos personalizados de categorías */
.nav-cat-icon{display:inline-block;margin-right:6px;font-size:15px;line-height:1;vertical-align:-1px}
.category-card>span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 8px;border-radius:14px;background:#fff7f1;border:1px solid #ffe0d2;font-size:26px;box-shadow:0 6px 16px rgba(255,90,31,.08)}
.category-card:hover>span{transform:translateY(-1px) scale(1.04)}

/* V84 checkout: QR primero y opciones debajo */
.payment-section-label{font-size:11px;font-weight:900;letter-spacing:1.2px;color:var(--accent);margin:4px 0 10px}
#mpQrInlineAnchor{margin-bottom:14px}
#mpQrInlineAnchor .mp-qr-payment-box{margin-top:10px}
.mp-or-divider span{font-size:10px;white-space:nowrap;padding:0 12px}

/* V85: selector de envío por código postal */
.shipping-step-help{margin:-4px 0 12px;color:#6f7b86;font-size:13px}
.postal-check-row{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:10px;align-items:stretch;margin-bottom:10px}
.postal-check-row input,.postal-check-row select{min-height:48px;border:1px solid #ccd7e2;border-radius:12px;padding:0 14px;font-size:16px;outline:none;background:#fff;color:inherit;font-family:inherit;box-sizing:border-box}.postal-check-row select{appearance:auto}.postal-check-row input:focus,.postal-check-row select:focus{border-color:var(--accent,#ff5a1f);box-shadow:0 0 0 3px rgba(255,90,31,.10)}
.postal-check-row input:focus{border-color:var(--accent,#ff5a1f);box-shadow:0 0 0 3px rgba(255,90,31,.10)}
#shippingChooser{gap:10px;margin-top:12px}
.shipping-option-card{margin:0}
/* V221: selector de envío seleccionado en verde */
.shipping-option-card:has(input:checked){
  border-color:#087443 !important;
  background:#eef9f3 !important;
  box-shadow:0 0 0 1px rgba(8,116,67,.05) inset;
}
.shipping-option-card input[type="radio"]{accent-color:#087443}

#cabifyAddressFields{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
#cabifyAddressFields input:first-child{grid-column:1/-1}
#cabifyAddressFields small{grid-column:1/-1;color:#74808a;margin-top:-3px}
.cabify-diag{display:block;margin-top:12px;padding:12px 14px;border:1px dashed #e49a31;border-radius:12px;background:#fff8e8;color:#5b4630;font-size:12px;line-height:1.4;white-space:pre-wrap;word-break:break-word}
.cabify-diag.show{display:block}
.cabify-diag b{display:block;margin-bottom:5px;color:#a45b00;font-size:12px}
@media(max-width:620px){.postal-check-row{grid-template-columns:1fr}.postal-check-row .quote-btn{width:100%}#cabifyAddressFields{grid-template-columns:1fr}#cabifyAddressFields input:first-child,#cabifyAddressFields small{grid-column:auto}}


/* V112: carga visual más limpia y rápida */
.catalog-loader{grid-column:1/-1;min-height:170px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px}
.catalog-loader-ring{width:42px;height:42px;border:4px solid rgba(201,107,141,.18);border-top-color:var(--primary,#c96b8d);border-radius:50%;animation:catalogSpin .72s linear infinite;box-shadow:0 4px 18px rgba(0,0,0,.05)}
.catalog-loader small{font-weight:800;color:#7a8490;letter-spacing:.02em}
@keyframes catalogSpin{to{transform:rotate(360deg)}}

/* V116 - categorías superiores sin scrollbar, con flechas */
.header-category-shell{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:4px}
.header-category-shell .nav{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:0 2px 13px;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}
.header-category-shell .nav::-webkit-scrollbar{display:none;width:0;height:0}
.header-category-shell .nav-pill{flex:0 0 auto}
.header-category-arrow{width:32px;height:32px;border:1px solid #dfe5e8;border-radius:50%;background:#fff;color:#23323a;display:grid;place-items:center;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(15,30,40,.10);transition:.18s;z-index:2;margin-top:-12px}
.header-category-arrow:hover:not(:disabled){transform:scale(1.07);box-shadow:0 6px 16px rgba(15,30,40,.16)}
.header-category-arrow:disabled{opacity:.22;cursor:default;box-shadow:none}
.header-category-arrow.is-hidden{visibility:hidden;pointer-events:none}
@media(max-width:560px){.header-category-shell{grid-template-columns:30px minmax(0,1fr) 30px;gap:2px}.header-category-arrow{width:29px;height:29px;font-size:22px}.header-category-shell .nav{padding-bottom:10px}}

/* V121: personalización opcional ENMANA/XOVYART */
.cart-personalization{margin:0 20px 12px;padding:14px 14px 12px;border:1px solid #ead8df;border-radius:14px;background:#fff8fb}
.cart-personalization-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:nowrap}.cart-personalization-head{display:flex;align-items:center;gap:6px;font-weight:900;font-size:14px;color:#202a31;white-space:nowrap}
.cart-personalization-help{width:22px;height:22px;border:0;border-radius:50%;background:#ca668b;color:#fff;font-weight:900;cursor:pointer;line-height:22px;padding:0}
.cart-personalization-info{display:none;margin-top:8px;padding:9px 10px;border-radius:9px;background:#fff;color:#66717a;font-size:11px;line-height:1.35;border:1px solid #eee}
.cart-personalization-info.show{display:block}
.cart-personalization-choice{display:flex;align-items:center;gap:12px;margin-top:0;font-size:13px;font-weight:800;white-space:nowrap}
.cart-personalization-choice label{display:flex;align-items:center;gap:5px;cursor:pointer}
.cart-personalization-fields{display:grid;grid-template-columns:1fr 100px;gap:8px;margin-top:10px}
.cart-personalization-fields input{width:100%;box-sizing:border-box;border:1px solid #d8dee3;border-radius:9px;padding:9px 10px;font:inherit;background:#fff}
.cart-personalization-note{display:block;margin-top:7px;color:#7a858e;font-size:10px;line-height:1.3}
@media(max-width:520px){.cart-personalization{margin-left:12px;margin-right:12px;padding:12px 12px 10px}.cart-personalization-top{gap:8px}.cart-personalization-head{font-size:13px}.cart-personalization-choice{gap:9px;font-size:12px}.cart-personalization-help{width:20px;height:20px;line-height:20px}.cart-personalization-fields{grid-template-columns:1fr 86px}}


/* V145 - confirmacion de cotizacion mas visible */
.contact-form-msg.quote-sent{margin:4px 0 2px;padding:18px 16px;border-radius:16px;text-align:center;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;animation:quoteSentIn .42s cubic-bezier(.2,.8,.2,1),quoteSentGlow 1.5s ease-in-out .45s 2;overflow:hidden}.quote-sent .sent-check{width:52px;height:52px;margin:0 auto 8px;border-radius:50%;display:grid;place-items:center;background:#10b981;color:white;font-size:30px;font-weight:1000;box-shadow:0 8px 24px rgba(16,185,129,.28);animation:sentCheckPop .55s cubic-bezier(.2,1.5,.4,1)}.quote-sent .sent-title{font-size:19px;font-weight:950;color:#065f46;margin-bottom:4px}.quote-sent .sent-copy{font-size:14px;font-weight:750;line-height:1.4;color:#28715a}@keyframes quoteSentIn{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}@keyframes sentCheckPop{0%{transform:scale(0) rotate(-18deg)}70%{transform:scale(1.12) rotate(4deg)}100%{transform:scale(1) rotate(0)}}@keyframes quoteSentGlow{0%,100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}50%{box-shadow:0 0 0 6px rgba(16,185,129,.10)}}

/* ===== V170: aviso unidades individuales ENMANA/XOVYART ===== */
.single-unit-note{position:relative;display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:5px 8px;border-radius:8px;background:#fff8eb;border:1px solid #f2d8a9;color:#765019;font-size:10px;font-weight:850;line-height:1.2;cursor:help;max-width:100%}
.single-unit-note .single-unit-info{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#765019;color:#fff;font-size:9px;font-weight:950;flex:0 0 15px}
.single-unit-note::after{content:attr(data-tip);position:absolute;left:0;bottom:calc(100% + 8px);width:260px;max-width:min(260px,calc(100vw - 36px));padding:10px 11px;border-radius:10px;background:#17262f;color:#fff;font-size:11px;font-weight:700;line-height:1.35;box-shadow:0 8px 24px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(4px);transition:.18s ease;z-index:30;pointer-events:none}
.single-unit-note::before{content:"";position:absolute;left:18px;bottom:calc(100% + 2px);border:6px solid transparent;border-top-color:#17262f;opacity:0;visibility:hidden;transition:.18s ease;z-index:31}
.single-unit-note:hover::after,.single-unit-note:hover::before,.single-unit-note:focus::after,.single-unit-note:focus::before{opacity:1;visibility:visible;transform:translateY(0)}
.cart-extra-units{margin-top:9px;padding:9px 10px;background:#fff8eb;border:1px solid #f2d8a9;border-radius:10px}
.cart-extra-units-label{font-size:11px;font-weight:900;color:#765019;margin-bottom:6px}
.cart-extra-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.cart-extra-row button{width:27px;height:27px;border:1px solid #d8c297;background:#fff;border-radius:8px;font-weight:900;cursor:pointer}
.cart-extra-row button:disabled{opacity:.45;cursor:not-allowed}
.cart-extra-count{min-width:22px;text-align:center;font-weight:900;color:#17262f}
.cart-extra-price{font-size:11px;color:#725b37;font-weight:700}
.order-extra-note{display:block;margin-top:3px;color:#9a6413;font-size:11px;font-weight:800}
.cart-extra-summary{margin-top:7px;padding-top:7px;border-top:1px dashed #e6c889;font-size:11px;color:#5d421b;display:flex;gap:5px;align-items:center;flex-wrap:wrap}.cart-extra-summary b{margin-left:auto;color:#17262f}.cart-extra-total-units{margin-top:6px;padding-top:6px;border-top:1px solid #f1dfbd;font-size:11px;color:#4f5962;display:flex;gap:5px;align-items:baseline;flex-wrap:wrap}.cart-extra-total-units b{font-size:13px;color:#17262f}.cart-extra-total-units small{color:#7c6c51}.order-extra-line{background:#fff8eb!important;border-left:3px solid #e8a72f;padding-left:9px!important}.order-extra-line small{color:#9a6413;font-weight:800}


/* v185: descuento web naranja + ahorro con signo negativo */
.cart-summary .cart-discount-row span,
.cart-summary .cart-discount-row strong{color:#d97706!important;}

/* V206: ayuda en encabezado + unidades individuales plegables */
.cart-head-actions{display:flex;align-items:center;gap:8px}
.cart-head .cart-head-help{margin:0;padding:6px 9px;border-radius:10px;font-size:12px;gap:6px;min-height:34px}
.cart-head .cart-head-help.show{display:flex}
.cart-head .cart-head-help .wa-icon{width:22px;height:22px;font-size:13px}
.cart-head .cart-head-actions>button{width:34px;height:34px;display:grid;place-items:center;border-radius:9px}
.cart-extra-units{padding:0!important;overflow:hidden}
.cart-extra-toggle{width:100%!important;height:auto!important;min-height:36px;border:0!important;background:#fff8eb!important;color:#765019!important;border-radius:9px!important;padding:8px 10px!important;display:flex!important;align-items:center;justify-content:space-between;font-size:11px;font-weight:900;text-align:left}
.cart-extra-toggle b{font-size:14px;color:#765019}
.cart-extra-body{display:none;padding:8px 10px 10px}
.cart-extra-units.open .cart-extra-body{display:block}
.cart-extra-units.open .cart-extra-toggle{border-bottom:1px solid #f0ddb7!important;border-radius:9px 9px 0 0!important}
@media(max-width:520px){.cart-head{padding:16px 18px}.cart-head .cart-head-help{padding:5px 8px}.cart-extra-toggle{min-height:34px!important}}
/* V207: Ayuda al lado de la X en el encabezado del carrito */
.cart-head .cart-head-actions{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important}
.cart-head .cart-head-actions .cart-head-help{order:1}
.cart-head .cart-head-actions>button{order:2}



/* ===== V225: precio final a la derecha del descuento ===== */
.price-discount-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:36px;
  margin-top:2px;
}
.price-discount-line .off{
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff1f1;color:#b85c5c;border:1px solid #f1cccc;
  border-radius:6px;padding:4px 8px;font-size:11px;font-weight:900;
  line-height:1;white-space:nowrap;box-shadow:none;
}
.price-discount-line .product-price-link{margin-left:auto;text-align:right}
.price-discount-line .product-price-link strong{font-size:23px}

/* ===== V230: precio anterior + descuento + precio final en una sola linea ===== */
.price-discount-line.price-all-inline{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap;
  min-height:36px;
}
.price-all-inline .old-price{
  flex:0 0 auto;
  margin:0!important;
  min-height:0!important;
  font-size:12px;
}
.price-all-inline .off{flex:0 0 auto}
.price-all-inline .product-price-link{
  flex:0 0 auto;
  margin-left:auto!important;
  text-align:right;
}
.price-all-inline .old-price-empty,
.price-all-inline .off-placeholder{display:none}
@media(max-width:430px){
  .price-discount-line.price-all-inline{gap:6px!important}
  .price-all-inline .old-price{font-size:11px}
  .price-all-inline .off{padding:4px 6px;font-size:10px}
  .price-all-inline .product-price-link strong{font-size:21px}
}

/* ===== V278: mobile - precio final debajo de precio anterior + descuento ===== */
@media(max-width:600px){
  .price-discount-line.price-all-inline{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px 7px!important;
    white-space:normal!important;
    min-width:0!important;
    min-height:0!important;
  }
  .price-all-inline .old-price,
  .price-all-inline .off{
    flex:0 0 auto!important;
  }
  .price-all-inline .product-price-link{
    flex:0 0 100%!important;
    width:100%!important;
    margin-left:0!important;
    text-align:left!important;
    min-width:0!important;
    display:block!important;
    line-height:1.1!important;
  }
  .price-all-inline .product-price-link strong{
    display:block!important;
    font-size:24px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
}


/* V285 - transferencia: total + comprobante, aislado dentro del paso de pago */
.transfer-pay-total{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 12px;border-radius:10px;background:#f6f8fa;border:1px solid #e3e8ec}.transfer-pay-total span{font-size:13px;font-weight:800;color:#53606a}.transfer-pay-total strong{font-size:20px;color:#17232b}.transfer-proof-contact{width:100%;display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border-radius:10px;border:1px solid #dce5e9;background:#fff;text-decoration:none;color:#17232b;text-align:left;font:inherit;cursor:pointer}.transfer-proof-contact.whatsapp{border-color:#bfe8cf;background:#f3fff8}.transfer-proof-contact.internal{border-color:#d8e0e6;background:#f8fafb}.transfer-proof-contact.disabled{cursor:default}.transfer-proof-icon{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;font-size:18px}.transfer-proof-contact.internal .transfer-proof-icon,.transfer-proof-contact.disabled .transfer-proof-icon{background:#17232b}.transfer-proof-contact span:last-child{display:grid;gap:2px}.transfer-proof-contact b{font-size:13px}.transfer-proof-contact small{font-size:12px;line-height:1.3;color:#66727a;font-weight:600}@media(max-width:620px){.transfer-pay-total strong{font-size:18px}.transfer-proof-contact{padding:10px}.transfer-proof-contact small{font-size:11px}}


.modal-gallery{width:100%;min-width:0}
.modal-gallery-main{position:relative;display:flex;align-items:center;justify-content:center}
.modal-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:42px;height:42px;border:1px solid #dfe4e7;border-radius:50%;background:rgba(255,255,255,.95);font-size:30px;line-height:1;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.10)}
.modal-prev{left:8px}.modal-next{right:8px}
.modal-gallery-thumbs{display:flex;gap:7px;overflow-x:auto;margin-top:10px;padding:2px}
.modal-gallery-thumb{flex:0 0 58px;width:58px;height:58px;padding:3px;border:2px solid transparent;border-radius:9px;background:#fff;cursor:pointer}
.modal-gallery-thumb.active{border-color:#ff5a1f}
.modal-gallery-thumb img{width:100%;height:100%;object-fit:contain}

.stock-check-overlay{position:fixed;inset:0;z-index:12000;background:rgba(9,20,28,.42);backdrop-filter:blur(2px);display:none;align-items:center;justify-content:center}
.stock-check-overlay.show{display:flex}
.stock-check-box{background:#fff;border-radius:18px;padding:22px 28px;box-shadow:0 22px 70px rgba(0,0,0,.25);display:flex;align-items:center;gap:15px;font-weight:800;color:#17262f}
.stock-check-spinner{width:30px;height:30px;border:4px solid #e6e9ec;border-top-color:var(--accent);border-radius:50%;animation:stockSpin .75s linear infinite}
.stock-check-box small{display:block;font-weight:500;color:#687780;margin-top:3px}
@keyframes stockSpin{to{transform:rotate(360deg)}}

/* Bloque original */
.postpay-shipping{margin-top:18px;padding:18px;border:2px solid #dce8e2;border-radius:16px;background:#f8fffb;text-align:left}
.postpay-shipping h4{margin:0 0 5px;font-size:18px}.postpay-shipping p{margin:0 0 14px;color:#5f6e68;font-size:13px}
.postpay-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.postpay-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:800;color:#43514b}
.postpay-grid label.full{grid-column:1/-1}.postpay-grid input,.postpay-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cfd9d5;border-radius:10px;padding:11px 12px;font:inherit;background:#fff}
.postpay-grid textarea{min-height:78px;resize:vertical}.postpay-save{margin-top:12px;width:100%;border:0;border-radius:11px;padding:13px 15px;background:#0f7b55;color:#fff;font-weight:900;cursor:pointer}
.postpay-msg{margin-top:10px;padding:10px 12px;border-radius:10px;font-size:13px;display:none}.postpay-msg.show{display:block}.postpay-msg.ok{background:#e9f9f0;color:#087443}.postpay-msg.err{background:#fff0f0;color:#b42318}
@media(max-width:620px){.postpay-grid{grid-template-columns:1fr}.postpay-grid label.full{grid-column:auto}}

/* Bloque original */
/* V126: aviso geolocalizado CABA + alrededores */
.same-day-geo-toast{position:fixed;right:22px;top:auto;bottom:70px;width:min(410px,calc(100vw - 28px));z-index:85;background:#fff;border:1px solid color-mix(in srgb,var(--accent) 35%,#e6e9ed);border-radius:17px;box-shadow:0 18px 48px rgba(11,24,32,.20);padding:14px 42px 14px 15px;opacity:0;transform:translateX(24px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.same-day-geo-toast.show{opacity:1;transform:translateX(0);pointer-events:auto}
.same-day-geo-toast .geo-toast-title{font-size:15px;font-weight:900;color:var(--ink);display:flex;align-items:center;gap:7px}
.same-day-geo-toast .geo-toast-copy{font-size:13px;color:#59636d;line-height:1.35;margin-top:4px}
.same-day-geo-toast .geo-toast-copy.geo-toast-copy-large{font-size:16px;line-height:1.42;margin-top:7px}
.same-day-geo-toast .geo-toast-copy b{color:var(--accent)}
.same-day-geo-toast .geo-toast-close{position:absolute;right:11px;top:10px;width:27px;height:27px;border:0;border-radius:8px;background:#f2f4f6;color:#4b5560;font-size:18px;cursor:pointer}
@media(max-width:600px){.same-day-geo-toast{right:14px;left:14px;top:auto;bottom:18px;width:auto}}

/* Bloque original */
.cart-price-breakdown{display:flex;flex-direction:column;gap:2px;margin-top:3px;font-size:11px;color:#68727b;line-height:1.25}
.cart-price-breakdown b{color:#27343b}.cart-price-breakdown .saving{color:#198754}
.cart-line-price{display:flex;flex-direction:column;align-items:flex-end;gap:1px;white-space:nowrap}
.cart-line-original{text-decoration:line-through;color:#98a1a7;font-size:10px}
.cart-promo-discount-row strong{color:#d97706!important}
.cart-savings-row{margin-top:7px!important;padding:9px 10px!important;border:1px solid #b7ead2;border-radius:10px;background:#effcf5;color:#087a49;font-weight:800}
.cart-savings-row strong{font-size:16px!important;color:#087a49!important}
@media(max-width:560px){.cart-price-breakdown{font-size:10.5px}.cart-line-price{align-self:start}}

/* Bloque original */
/* V184: carrito simplificado según referencia */
.cart-price-breakdown{display:none!important}
.cart-price-compact{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:4px;line-height:1.15}
.cart-price-original-inline{font-size:11px;color:#98a1a7;text-decoration:line-through}
.cart-discount-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:5px;border:1px solid #ffb39a;background:#fff5f0;color:#ff5a2f;font-size:11px;font-weight:900;line-height:1.1}
.cart-price-compact small{width:100%;font-size:10.5px;color:#78838a;margin-top:1px}
.cart-summary .cart-promo-discount-row,.cart-summary .cart-discount-row{font-size:11px!important;line-height:1.2!important;color:#4f5d65!important}
.cart-summary .cart-promo-discount-row strong,.cart-summary .cart-discount-row strong{font-size:11px!important;font-weight:800!important}
.cart-summary .cart-promo-discount-row strong{color:#d97706!important}
.cart-summary .cart-discount-row strong{color:#198754!important}
.cart-summary .cart-savings-row{margin-top:8px!important}
@media(max-width:560px){
 .cart-price-compact{gap:5px;margin-top:3px}
 .cart-price-original-inline,.cart-discount-badge{font-size:10.5px}
}

/* Bloque original id="v209-cart-summary-spacing" */
/* V209: resumen del carrito más compacto y con separaciones uniformes */
.cart-summary{padding-top:12px!important;padding-bottom:max(24px,calc(16px + env(safe-area-inset-bottom)))!important}
.cart-summary .cart-highlight-row{margin-top:0!important;margin-bottom:7px!important;min-height:40px!important;padding:8px 11px!important}
.cart-summary .cart-total-row{margin-top:0!important;padding-top:8px!important;margin-bottom:0!important}
.cart-summary .cart-total-row span{line-height:1.15!important}
.cart-summary .cart-total-row strong{line-height:1!important}
.cart-summary .checkout-btn{margin-top:9px!important;padding:13px 14px!important}
@media(max-width:560px){
  .cart-summary{padding-top:10px!important;padding-bottom:max(20px,calc(14px + env(safe-area-inset-bottom)))!important}
  .cart-summary .cart-highlight-row{margin-bottom:6px!important;padding:8px 10px!important;min-height:38px!important}
  .cart-summary .cart-total-row{padding-top:7px!important}
  .cart-summary .checkout-btn{margin-top:8px!important;padding:12px 14px!important}
}

/* Bloque original id="v279-cart-mobile-width-fix" */
/* V279: carrito móvil nunca puede ser más ancho que el viewport */
@media (max-width: 600px){
  html,body{
    max-width:100%;
    overflow-x:hidden;
  }

  .cart-panel{
    left:auto !important;
    right:-100vw !important;
    width:100vw !important;
    max-width:100vw !important;
    min-width:0 !important;
    height:100dvh !important;
    overflow:hidden !important;
  }
  .cart-panel.open{
    right:0 !important;
  }

  .cart-head{
    position:sticky;
    top:0;
    z-index:8;
    width:100%;
    min-width:0;
    padding:12px 14px !important;
    background:#fff;
  }
  .cart-head>div:first-child{
    min-width:0;
    flex:1 1 auto;
  }
  .cart-head strong{
    font-size:19px !important;
  }
  .cart-head-actions{
    flex:0 0 auto !important;
    min-width:max-content;
  }
  #closeCart{
    display:grid !important;
    place-items:center !important;
    width:38px !important;
    height:38px !important;
    flex:0 0 38px !important;
    padding:0 !important;
    font-size:22px !important;
    background:#f3f5f6 !important;
    color:#182026 !important;
    border-radius:10px !important;
    position:relative !important;
    right:auto !important;
  }

  .cart-progress,
  .cart-items,
  .cart-summary,
  #cartPersonalization{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .cart-progress{
    padding:12px 14px !important;
    overflow:hidden;
  }
  .cart-items{
    padding:8px 14px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
  }

  .cart-item{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    grid-template-columns:58px minmax(0,1fr) !important;
    gap:10px !important;
    align-items:start !important;
  }
  .cart-thumb{
    width:58px !important;
    max-width:58px !important;
    overflow:hidden;
  }
  .cart-thumb img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }
  .cart-item-info{
    min-width:0 !important;
    width:100% !important;
    overflow:hidden;
  }
  .cart-item-info strong{
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .cart-line-price{
    grid-column:2 !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    align-items:flex-start !important;
    margin-top:-2px;
    white-space:normal !important;
  }
  .cart-line-total{
    font-size:18px !important;
    max-width:100%;
    overflow-wrap:anywhere;
  }

  .qty-control{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:8px !important;
  }
  .qty-control .cart-qty-label{
    flex:0 0 auto;
  }
  .qty-control button{
    flex:0 0 auto;
  }
  .remove-cart{
    width:auto !important;
    min-width:58px !important;
    padding:0 9px !important;
  }

  .cart-summary{
    padding:10px 14px max(16px,env(safe-area-inset-bottom)) !important;
    overflow:hidden !important;
  }
  .cart-summary-row,
  .cart-total-row{
    min-width:0 !important;
    gap:10px !important;
  }
  .cart-summary-row span,
  .cart-summary-row strong,
  .cart-total-row span,
  .cart-total-row strong{
    min-width:0 !important;
  }
  .cart-total-row strong{
    font-size:clamp(24px,8vw,34px) !important;
    text-align:right;
    white-space:nowrap;
  }
  .checkout-btn{
    max-width:100% !important;
  }
}

/* Bloque original id="v288-autosave-transfer-order" */
.payment-autosave-status{
  padding:8px 10px;
  border-radius:9px;
  background:#f4f7f8;
}

/* Bloque original */
/* ===== V292: esquinas superiores redondeadas en tarjetas de productos (PC) ===== */
@media(min-width:601px){
  .product-card{
    border-radius:18px!important;
  }
  .product-card .product-media{
    border-radius:17px 17px 0 0!important;
    overflow:hidden!important;
  }
  .product-card .product-img{
    border-radius:17px 17px 0 0!important;
  }
}

/* Bloque original */
/* ===== V291: mobile - boton corto + mas aire antes del precio ===== */
@media(max-width:600px){
  .product-card .price-discount-line.price-all-inline{
    margin-top:10px!important;
  }
  .product-card .card-cart-actions .add-btn:not(:disabled){
    font-size:0!important;
  }
  .product-card .card-cart-actions .add-btn:not(:disabled)::after{
    content:'Agregar';
    font-size:13px;
    font-weight:800;
  }
}

/* Bloque original */
/* ===== V293: carrusel mobile 2 productos + controles compactos ===== */
@media(max-width:680px){
  .deals-feature-layout .deal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:start!important;
  }
  .deal-grid .product-card{
    height:auto!important;
    min-height:0!important;
    align-self:start!important;
  }
  .deal-grid .product-body{
    padding-bottom:10px!important;
  }
}
@media(max-width:600px){
  .product-card .card-cart-actions{
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:5px!important;
    margin-top:9px!important;
  }
  .product-card .card-qty-picker{
    grid-template-columns:22px 26px 22px!important;
    min-width:70px!important;
    min-height:36px!important;
    border-radius:9px!important;
  }
  .product-card .card-qty-picker button{
    min-height:36px!important;
    padding:0!important;
    font-size:15px!important;
  }
  .product-card .card-qty-picker span{
    min-width:26px!important;
    font-size:12px!important;
  }
  .product-card .card-cart-actions .add-btn{
    min-height:36px!important;
    padding:7px 3px!important;
    border-radius:9px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  .product-card .card-cart-actions .add-btn:not(:disabled)::after{
    font-size:12px!important;
  }
}

/* Bloque original id="v356-mobile-angosto-responsive" */
/* V356: celulares angostos. Mantiene 2 productos por fila sin alterar pantallas mas anchas. */
@media(max-width:380px){
  .container{width:calc(100% - 12px)!important;}
  .deal-grid,.product-grid,.deals-feature-layout .deal-grid{gap:6px!important;}
  .product-body{padding:8px!important;}
  .product-media{height:126px!important;}
  .product-title{font-size:11.5px!important;line-height:1.28!important;min-height:44px!important;margin:5px 0!important;}
  .stock-badge{right:6px!important;top:6px!important;padding:5px 6px!important;font-size:9px!important;}
  .single-unit-note{font-size:8.5px!important;gap:3px!important;padding:4px 5px!important;line-height:1.1!important;margin-top:5px!important;}
  .single-unit-note .single-unit-info{width:14px!important;height:14px!important;flex-basis:14px!important;font-size:8px!important;}
  .product-card .price-discount-line.price-all-inline{margin-top:7px!important;gap:4px!important;flex-wrap:wrap!important;}
  .old-price{font-size:10px!important;}
  .price-row strong,.product-card .price-now{font-size:17px!important;}
  .off{font-size:9px!important;padding:4px 5px!important;}
  .product-card .card-cart-actions{grid-template-columns:64px minmax(0,1fr)!important;gap:4px!important;margin-top:7px!important;}
  .product-card .card-qty-picker{grid-template-columns:20px 22px 20px!important;min-width:62px!important;min-height:34px!important;}
  .product-card .card-qty-picker button{min-height:34px!important;font-size:14px!important;}
  .product-card .card-qty-picker span{min-width:22px!important;font-size:11px!important;}
  .product-card .card-cart-actions .add-btn{min-height:34px!important;padding:5px 2px!important;font-size:0!important;}
  .product-card .card-cart-actions .add-btn:not(:disabled)::after{content:'Agregar'!important;font-size:10.5px!important;}
}
@media(max-width:340px){
  .container{width:calc(100% - 8px)!important;}
  .deal-grid,.product-grid,.deals-feature-layout .deal-grid{gap:4px!important;}
  .product-body{padding:7px!important;}
  .product-card .card-cart-actions{grid-template-columns:60px minmax(0,1fr)!important;gap:3px!important;}
  .product-card .card-qty-picker{grid-template-columns:19px 20px 19px!important;min-width:58px!important;}
  .product-card .card-cart-actions .add-btn:not(:disabled)::after{font-size:10px!important;}
}

/* Bloque original id="v357-mobile-titulos-y-tarjetas" */
/* V357: evita que titulos largos invadan el aviso y corrige el cierre superior de tarjetas en mobile. */
@media(max-width:680px){
  .product-card{
    border-radius:18px!important;
    background:#fff!important;
  }
  .product-card .product-media{
    border-radius:17px 17px 0 0!important;
    overflow:hidden!important;
  }
  .product-card .product-img{
    border-radius:17px 17px 0 0!important;
  }
  .product-card .product-title{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    line-clamp:2!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    height:auto!important;
    min-height:2.8em!important;
    max-height:2.8em!important;
    overflow-wrap:anywhere!important;
  }
  .product-card .single-unit-note{
    position:relative!important;
    z-index:2!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }
  .deals-feature-layout .product-card,
  .deal-grid .product-card{
    border-radius:18px!important;
    background-clip:padding-box!important;
  }
}
@media(max-width:380px){
  .product-card .product-title{
    -webkit-line-clamp:2!important;
    line-clamp:2!important;
    min-height:2.56em!important;
    max-height:2.56em!important;
  }
}

/* Bloque original id="v477-product-share" */
.product-card{position:relative}
.product-media{position:relative}
.product-share-btn{position:absolute;right:8px;bottom:8px;top:auto;transform:none;z-index:6;width:38px;height:38px;padding:0;border:1px solid #d9e0e5;border-radius:50%;background:#fff;color:#172a34;box-shadow:0 3px 12px #0002;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s transform,.15s box-shadow}
.product-share-btn svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.product-share-btn:hover{transform:scale(1.05);box-shadow:0 5px 15px #0003}
.product-share-btn:active{transform:scale(.96)}
.product-share-menu{position:fixed;inset:0;z-index:100000;background:#0006;display:flex;align-items:center;justify-content:center;padding:18px}
.product-share-box{width:min(360px,100%);background:#fff;border-radius:18px;padding:18px;box-shadow:0 24px 70px #0005}
.product-share-box h3{margin:0 0 6px;font-size:18px}.product-share-box p{margin:0 0 14px;color:#66757d;font-size:13px}
.product-share-actions{display:grid;gap:8px}.product-share-actions button,.product-share-actions a{border:0;border-radius:11px;padding:12px 14px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer;font:inherit}.share-wa{background:#e8f8ee;color:#087b38}.share-copy{background:#172a34;color:#fff}.share-close{background:#f1f3f5;color:#34454e}
@media(max-width:680px){.product-share-btn{right:6px;width:34px;height:34px}.product-share-btn svg{width:17px;height:17px}}

/* Bloque original id="v485-most-searched" */
.most-searched{display:none;padding-top:8px;padding-bottom:34px}.most-searched.show{display:block}.most-searched-box{border-top:1px solid #e7eaf0;padding-top:26px}.most-searched-head{text-align:center;margin-bottom:16px}.most-searched-head h2{margin:4px 0 0;font-size:24px}.most-searched-cloud{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:9px 14px}.most-searched-cloud a{color:#263246;text-decoration:none;font-weight:850;line-height:1.1;padding:4px 2px;transition:transform .15s ease,color .15s ease}.most-searched-cloud a:hover{color:#111827;transform:translateY(-1px);text-decoration:underline}.most-searched-cloud a:nth-child(-n+4){font-weight:950}@media(max-width:560px){.most-searched{padding-bottom:24px}.most-searched-head h2{font-size:21px}.most-searched-cloud{gap:8px 11px}}

/* Bloque original */
.billing-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.58);z-index:100000;display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(4px)}
.billing-modal{width:min(680px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:0 28px 80px rgba(15,23,42,.28);padding:26px;color:#172033}
.billing-modal-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.billing-modal-head h3{font-size:25px;margin:4px 0 7px}.billing-modal-head p{margin:0;color:#64748b}.billing-kicker{font-size:11px;font-weight:900;letter-spacing:.12em;color:#2563eb}.billing-lock{width:44px;height:44px;border-radius:14px;background:#eff6ff;display:grid;place-items:center;font-size:20px}
.billing-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.billing-type{border:2px solid #e2e8f0;border-radius:16px;padding:16px;cursor:pointer;display:grid;gap:4px;position:relative}.billing-type input{position:absolute;opacity:0}.billing-type b{font-size:18px}.billing-type span{font-size:12px;color:#64748b}.billing-type.selected{border-color:#2563eb;background:#eff6ff}
.billing-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.billing-form label{font-size:12px;font-weight:800;color:#334155;display:grid;gap:7px}.billing-form small{font-weight:500;color:#94a3b8}.billing-form input,.billing-form select{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:11px;padding:12px 13px;background:#fff;font:inherit;color:#0f172a}.billing-form input:focus,.billing-form select:focus{outline:3px solid #dbeafe;border-color:#2563eb}.billing-full{grid-column:1/-1}.billing-note{margin-top:15px;padding:11px 13px;border-radius:12px;background:#f8fafc;color:#64748b;font-size:12px}.billing-error{min-height:20px;color:#b91c1c;font-weight:700;font-size:13px;margin-top:10px}.billing-save{width:100%;border:0;border-radius:13px;padding:14px;background:#172554;color:#fff;font-weight:900;cursor:pointer}.billing-save:disabled{opacity:.6}
@media(max-width:620px){.billing-modal{padding:20px;border-radius:20px}.billing-type-grid,.billing-form{grid-template-columns:1fr}.billing-full{grid-column:auto}.billing-modal-head h3{font-size:21px}}
.billing-optional{margin:14px 0;border:1px solid #dbe3ee;border-radius:16px;background:#fff;overflow:hidden;text-align:left}.billing-optional summary{list-style:none;cursor:pointer;padding:15px 16px;font-weight:900;color:#172033;display:flex;align-items:center;justify-content:space-between;gap:12px}.billing-optional summary::-webkit-details-marker{display:none}.billing-optional summary:after{content:"＋";font-size:20px;color:#64748b}.billing-optional[open] summary:after{content:"−"}.billing-optional-sub{display:block;font-size:11px;font-weight:600;color:#64748b;margin-top:3px}.billing-optional-body{border-top:1px solid #edf1f5;padding:15px}.billing-optional .billing-type-grid{margin:0 0 14px}.billing-optional .billing-note{margin-top:12px}.billing-optional-skip{font-size:12px;color:#64748b;margin:0 0 13px}.billing-saved{padding:13px;border-radius:12px;background:#ecfdf3;color:#166534;font-weight:800;font-size:13px}

/* Bloque original id="v650-benefits-white-gray" */
/* V650: informational cards, visually neutral (not buttons). */
section.benefits.container > article {
  background: #ffffff !important;
  background-image: none !important;
  border: 1px solid #cfd4da !important;
  box-shadow: none !important;
  cursor: default !important;
  transform: none !important;
}
section.benefits.container > article:hover {
  background: #ffffff !important;
  background-image: none !important;
  border-color: #cfd4da !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Bloque original id="accessibility-foundations" */
.skip-link{position:fixed;left:16px;top:12px;z-index:20000;transform:translateY(-160%);background:#fff;color:#17262f;border:2px solid var(--accent);border-radius:10px;padding:10px 14px;font-weight:700;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 70%,#fff);outline-offset:3px}
.product-card{content-visibility:auto;contain-intrinsic-size:360px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Bloque original id="v455-busqueda-vacia-boton" */
/* V466 - estado sin resultados y botón volver al catálogo */
.catalog-state .search-empty-all{margin-top:16px;border:0;border-radius:999px;padding:12px 22px;background:linear-gradient(135deg,#5b385e,#d05f8a);color:#fff;font-weight:900;font-size:13px;letter-spacing:.2px;cursor:pointer;box-shadow:0 8px 20px rgba(91,56,94,.18);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
.catalog-state .search-empty-all:hover{transform:translateY(-2px);box-shadow:0 11px 24px rgba(91,56,94,.24);filter:brightness(1.03)}
.catalog-state .search-empty-all:active{transform:translateY(0)}
@media(max-width:680px){.catalog-state .search-empty-all{width:min(100%,290px);padding:13px 18px}}

/* Bloque original */
/* V105 - checkout compacto: entra completo en pantalla de escritorio sin scroll interno */
@media (min-width: 701px) and (min-height: 700px){
  .checkout-modal{padding:10px}
  .checkout-box.checkout-wizard{
    width:min(620px,calc(100vw - 24px));
    max-height:calc(100vh - 20px);
    overflow:hidden;
    padding:16px 22px 14px;
    border-radius:20px;
  }
  .checkout-title-row h3{font-size:24px;margin:0;line-height:1.05}
  .checkout-close{width:36px;height:36px}
  .wizard-step h4{font-size:16px;margin:0 0 7px}
  .mp-auto-qr-title{font-size:14px}
  .mp-auto-qr-sub{font-size:11px;margin:2px 0 5px}
  .mp-qr-payment-box{margin-top:3px;padding:11px 14px;border-radius:15px}
  .mp-qr-head{margin-bottom:7px}
  .mp-qr-head span{font-size:10px}
  .mp-qr-head strong{font-size:17px}
  .mp-qr-order{padding:5px 7px}
  .mp-qr-code{width:174px;min-height:174px;margin:4px auto 6px;padding:7px;border-radius:13px}
  .mp-qr-code img,.mp-qr-code canvas{max-width:158px!important;width:158px!important;height:158px!important}
  .mp-qr-help{max-width:410px;margin:4px auto 7px;font-size:11px;line-height:1.3}
  .mp-qr-status{padding:7px 10px;font-size:12px}
  .mp-qr-check-btn{margin-top:7px;padding:7px 12px;font-size:12px}
  .mp-qr-expire{margin-top:5px;font-size:9px}
  .mp-or-divider{margin:8px 0 6px}
  .payment-options{gap:7px}
  .payment-option{grid-template-columns:36px 1fr auto;gap:9px;padding:9px 11px;border-radius:12px}
  .payment-option .payment-icon{width:34px;height:34px;font-size:18px;border-radius:9px}
  .payment-option small{font-size:11px;line-height:1.25}
  .payment-option b{font-size:20px}
  .payment-dynamic-card{padding:10px 12px}
  .payment-dynamic-card h5{font-size:14px;margin-bottom:4px}
  .payment-dynamic-card p{font-size:11px;margin-bottom:7px}
  .checkout-summary{margin-top:8px;padding:8px 12px}
  .checkout-summary>div{padding:3px 0;font-size:12px}
  .checkout-summary .total{margin-top:3px;padding-top:7px;font-size:15px}
  .wizard-actions{margin-top:9px}
  .wizard-next,.wizard-back,.confirm-order-btn{padding:9px 14px!important;min-height:0!important;font-size:12px!important}
}

/* V117: checkout móvil sin QR + separador más visible */
.mp-or-divider{color:var(--accent)!important;font-size:14px!important;margin:18px 0 14px!important}
.mp-or-divider span{font-size:14px!important;font-weight:900!important;letter-spacing:.45px;padding:0 14px!important}
.mp-or-divider:before,.mp-or-divider:after{background:color-mix(in srgb,var(--accent) 38%,#e4e7ec)!important}

/* V123: pago obligatorio por Mercado Pago en pedidos personalizados */
.payment-personalized-only{margin:8px 0 12px;padding:10px 12px;border-radius:10px;background:#fff3f8;border:1px solid #efc5d5;color:#8d3659;font-size:12px;font-weight:800}


/* V148 - título centrado sobre el carrusel de productos + versión visible correcta */
.deals-feature-head{display:grid;grid-template-columns:minmax(250px,284px) minmax(0,1fr);gap:16px;align-items:end;margin-bottom:20px}
.deals-head-spacer{display:flex;align-items:flex-end;justify-content:center;text-align:center}
.deals-import-title{color:#fff;font-size:30px;line-height:1.1;margin:0;font-weight:800}

.deals-products-head{position:relative;min-width:0;text-align:center;padding:0 116px}
.deals-products-title{display:inline-block;text-align:center}
.deals-products-head h2{color:#fff;font-size:30px;margin:5px 0 0}
.deals-products-head .section-kicker{display:block}
.deals-products-head .deal-timer{position:absolute;right:0;bottom:4px}
.deals-feature-head.without-import{grid-template-columns:1fr}
.deals-feature-head.without-import .deals-head-spacer{display:none}
@media(max-width:900px){
  .deals-feature-head{grid-template-columns:220px minmax(0,1fr);gap:10px}
  .deals-import-title{font-size:26px}
  .deals-products-head{padding:0 92px 0 8px}
  .deals-products-head h2{font-size:26px}
}
@media(max-width:680px){
  .deals-feature-head{display:block}
  .deals-head-spacer{display:none}
  .deals-products-head{padding:0;text-align:left}
  .deals-products-title{text-align:left}
  .deals-products-head .deal-timer{position:static;margin-top:10px}
}

/* V144 - tarjeta de importación fija + carrusel independiente */
.deals-feature-layout{display:grid;grid-template-columns:minmax(250px,284px) minmax(0,1fr);gap:16px;align-items:stretch}
.deals-feature-layout.without-import{grid-template-columns:1fr}
.import-fixed-slot{min-width:0}
.import-fixed-slot .product-card{height:398px}
.deals-feature-layout .deals-carousel{min-width:0}
.deals-feature-layout .deal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.import-modal-answer{display:block;color:var(--accent);margin-top:2px}
@media(max-width:900px){
  .deals-feature-layout{grid-template-columns:220px minmax(0,1fr);gap:10px}
  .deals-feature-layout .deal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .deals-feature-layout{display:block}
  .import-fixed-slot{margin-bottom:12px}
  .import-fixed-slot .product-card{height:auto}
  .deals-feature-layout .deal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}

/* V143: importación a pedido + formularios internos */
.import-quote-card{cursor:pointer;border:1px solid rgba(255,255,255,.45);overflow:hidden;background:linear-gradient(180deg,#fff,#fbfdff)}
.import-quote-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(8,35,55,.22)}
.import-route-art{height:180px;position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:linear-gradient(145deg,#eaf8ff,#fff1e8);overflow:hidden}
.import-route-art:before{content:'';position:absolute;inset:15px;background-image:radial-gradient(#87b8d1 1px,transparent 1px);background-size:18px 18px;opacity:.22}
.china-pin,.arg-pin{position:relative;z-index:2;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:29px;box-shadow:0 8px 20px #315b7430;animation:importPulse 2s ease-in-out infinite}
.arg-pin{animation-delay:.5s}.route-line{position:absolute;left:74px;right:74px;top:85px;border-top:3px dashed #ff7a2f;z-index:1}.route-line span{position:absolute;top:-19px;left:5%;font-size:27px;animation:flyRoute 3.2s linear infinite}.import-box{position:absolute;right:50%;bottom:16px;transform:translateX(50%);font-size:30px;animation:boxBounce 1.8s ease-in-out infinite}
.import-quote-body{padding:15px}.import-question{font-weight:900;font-size:17px;line-height:1.2;margin-top:8px}.import-answer{font-weight:950;font-size:26px;line-height:1;color:var(--accent);margin:4px 0 9px}.import-copy{font-size:12px;color:var(--muted);line-height:1.4;min-height:34px}.import-quote-btn{pointer-events:none}
@keyframes flyRoute{0%{left:2%;transform:translateY(0) rotate(8deg)}50%{transform:translateY(-11px) rotate(8deg)}100%{left:88%;transform:translateY(0) rotate(8deg)}}@keyframes importPulse{50%{transform:scale(1.08)}}@keyframes boxBounce{50%{transform:translateX(50%) translateY(-5px)}}

/* V159: tarjeta y formulario de corte MDF para ENMANA / XOVYART */
.mdf-quote-card{border-color:#d9c5a1;background:linear-gradient(180deg,#fffdf9,#fffaf1)}
.mdf-cut-art{height:180px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#f5ead7,#e8d1ad 55%,#f8f1e5)}
.mdf-cut-art:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(117,76,36,.055) 0 2px,transparent 2px 11px);opacity:.75}
.mdf-board{position:relative;width:74%;height:68%;border-radius:12px;background:linear-gradient(145deg,#c9955c,#b77b42);box-shadow:0 16px 30px rgba(83,48,20,.25),inset 0 0 0 2px rgba(255,255,255,.25);transform:rotate(-3deg)}
.mdf-board:after{content:'';position:absolute;inset:10px;border:2px dashed rgba(80,43,18,.35);border-radius:8px}
.cut-line{position:absolute;height:2px;background:#613819;opacity:.5;z-index:2}.cut-a{left:18%;right:18%;top:34%;transform:rotate(11deg)}.cut-b{left:15%;right:26%;top:60%;transform:rotate(-8deg)}.cut-c{width:48%;left:28%;top:46%;transform:rotate(90deg)}
.mdf-shape{position:absolute;z-index:3;color:#5a3217;text-shadow:0 1px rgba(255,255,255,.25)}.mdf-shape.star{font-size:31px;left:18%;top:16%}.mdf-shape.heart{font-size:27px;right:19%;bottom:16%}.mdf-shape.circle{width:34px;height:34px;border:3px solid #5a3217;border-radius:50%;right:21%;top:18%}
.laser-head{position:absolute;z-index:4;top:17px;right:30px;width:40px;height:40px;border-radius:9px;background:#26313a;color:#ffcf5c;display:grid;place-items:center;font-size:22px;box-shadow:0 8px 20px rgba(0,0,0,.25);animation:laserMove 3.1s ease-in-out infinite}
.laser-beam{position:absolute;z-index:3;width:2px;height:93px;top:52px;right:49px;background:linear-gradient(#ff3b30,rgba(255,59,48,0));transform:rotate(13deg);transform-origin:top;filter:drop-shadow(0 0 5px #ff3b30);animation:laserBeam 3.1s ease-in-out infinite}
.wood-chips{position:absolute;left:17px;bottom:12px;color:#79502d;font-weight:900;letter-spacing:5px;opacity:.75}
.mdf-answer{color:#9a612d;font-size:22px;line-height:1.08}.mdf-kicker,.mdf-modal-answer{color:#9a612d!important}.mdf-submit{background:#8b5a2b}.mdf-submit:hover{background:#6f431f}.mdf-upload{background:#fffaf2;border-color:#d8bea0}
@keyframes laserMove{0%,100%{right:30px}50%{right:70%}}@keyframes laserBeam{0%,100%{right:49px}50%{right:calc(70% + 19px)}}

.contact-inbox-modal{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:18px}.contact-inbox-modal.open{display:flex}.contact-inbox-backdrop{position:absolute;inset:0;background:rgba(8,18,25,.64);backdrop-filter:blur(4px)}.contact-inbox-box{position:relative;width:min(620px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.28)}.contact-inbox-close{position:absolute;right:15px;top:13px;width:38px;height:38px;border:0;border-radius:50%;background:#f1f3f5;font-size:25px;cursor:pointer}.contact-inbox-kicker{font-size:12px;font-weight:900;letter-spacing:1px;color:var(--accent);margin-bottom:7px}.contact-inbox-box h3{font-size:27px;line-height:1.1;margin:0 42px 8px 0}.contact-inbox-box h3 span{color:var(--accent)}.contact-inbox-box>div>p{color:var(--muted);font-size:14px;line-height:1.5;margin:0 0 18px}.contact-inbox-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}.contact-inbox-form label{display:grid;gap:6px;font-size:12px;font-weight:850}.contact-inbox-form .full{grid-column:1/-1}.contact-inbox-form input,.contact-inbox-form textarea{width:100%;border:1px solid #d4dbe1;border-radius:10px;padding:11px 12px;font:inherit;outline:none}.contact-inbox-form textarea{min-height:105px;resize:vertical}.contact-inbox-form input:focus,.contact-inbox-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.photo-upload{border:1px dashed #cbd5dd;padding:11px;border-radius:11px;background:#f8fafb;cursor:pointer}.photo-upload input{border:0;padding:4px 0}.photo-upload span{color:var(--muted);font-weight:500}.contact-submit{border:0;border-radius:11px;background:var(--deep);color:#fff;padding:13px;font-weight:900;cursor:pointer}.contact-submit:hover{background:var(--accent)}.contact-submit:disabled{opacity:.65}.contact-form-msg{min-height:20px;font-size:13px;font-weight:800}.contact-form-msg.success{color:#087443}.contact-form-msg.error{color:#b42318}.support-online{display:inline-flex;align-items:center;gap:9px;margin:0 0 12px;padding:8px 12px;border:1px solid #b7efcf;border-radius:999px;background:#ecfdf3;color:#087443;font-size:12px;font-weight:800}.support-online span:last-child{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.support-online small{font-size:11px;font-weight:650;color:#39835f}.support-online-dot{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 0 rgba(34,197,94,.5);animation:supportOnlinePulse 1.45s ease-out infinite}@keyframes supportOnlinePulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.55)}70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
@media(max-width:620px){.contact-inbox-box{padding:23px 18px}.contact-inbox-form{grid-template-columns:1fr}.contact-inbox-form .full{grid-column:auto}.contact-inbox-box h3{font-size:23px}.import-route-art{height:150px}}

/* Bloque original */
/* V166: el comprobante post-pago puede crecer con el formulario de envío.
   El modal debe permitir desplazarse hasta los últimos campos y botones. */
.checkout-modal.open{
  overflow-y:auto;
  overscroll-behavior:contain;
}
.checkout-box.checkout-wizard.checkout-success-mode{
  max-height:calc(100vh - 20px)!important;
  max-height:calc(100dvh - 20px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch;
  padding:0!important;
  scrollbar-gutter:stable;
}
@media(max-width:700px){
  .checkout-modal{align-items:flex-start;padding:8px}
  .checkout-box.checkout-wizard.checkout-success-mode{
    width:100%!important;
    max-height:calc(100dvh - 16px)!important;
    border-radius:18px;
  }
}

/* Bloque original */
/* V175 - ajuste espaciado aviso unidades individuales */
.single-unit-note{
  margin-top:3px;
  margin-bottom:10px;
}

/* Bloque original id="v177-card-compact" */
/* V177: tarjetas más compactas: sin categoría y título más cerca de la foto */
.product-card .product-category{display:none!important}
.product-card .product-body{padding-top:9px!important}
.product-card .product-title{margin-top:0!important;margin-bottom:5px!important}

/* Bloque original id="v177-single-unit-copy" */
/* V177: aviso más claro y título más próximo a la imagen */
.product-card .product-body{padding-top:5px!important}
.product-card .product-title{margin-top:0!important;margin-bottom:3px!important}
.single-unit-note{margin-top:2px!important;margin-bottom:12px!important}
.single-unit-note .single-unit-info{font-size:10px!important}

/* Bloque original */
/* V180 - bloque de unidades individuales más ancho y respirado */
.cart-item-info:has(.cart-extra-units){overflow:visible}
.cart-extra-units{width:calc(100% + 62px);max-width:none;box-sizing:border-box;margin-top:10px;padding:11px 13px 10px}
.cart-extra-summary{line-height:1.35;column-gap:7px}
@media(max-width:520px){.cart-extra-units{width:calc(100% + 46px);padding:10px 11px}}

/* Bloque original */
/* v190: etiquetas naranja, importes de descuento verde */
.cart-summary .cart-promo-discount-row span,
.cart-summary .cart-discount-row span { color:#d97706 !important; }
.cart-summary .cart-promo-discount-row strong,
.cart-summary .cart-discount-row strong,
#cartPromoDiscount,
#cartDiscount { color:#198754 !important; }

/* ===== V193: selector de cantidad junto a Agregar al carrito ===== */
.card-cart-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:stretch;margin-top:12px}
.card-cart-actions .add-btn{margin-top:0;width:100%;min-width:0}
.card-qty-picker{display:grid;grid-template-columns:30px 32px 30px;align-items:center;justify-content:center;border:1px solid #dfe4e7;border-radius:10px;background:#fff;overflow:hidden;height:100%;min-height:40px}
.card-qty-picker button{border:0;background:#f3f5f6;color:#17262f;font-weight:900;font-size:17px;cursor:pointer;height:100%;min-height:40px}
.card-qty-picker button:hover{background:#e8ecef}
.card-qty-picker span{display:grid;place-items:center;font-weight:900;font-size:13px;min-width:32px;height:100%;background:#fff}
.card-qty-picker.disabled{opacity:.45}
.card-qty-picker button:disabled{cursor:not-allowed}
@media(max-width:560px){
  .card-cart-actions{grid-template-columns:92px minmax(0,1fr);gap:6px}
  .card-qty-picker{grid-template-columns:28px 30px 28px;min-height:38px}
  .card-qty-picker button{min-height:38px;font-size:16px}
  .card-cart-actions .add-btn{padding-left:7px;padding-right:7px;font-size:11px}
}

/* Bloque original id="v455-categorias-mas-grandes" */
/* V466 - categorías superiores un poco más grandes */
.nav{gap:10px;padding-bottom:15px}
.nav-pill{padding:10px 17px;font-size:15px;font-weight:700;min-height:38px}
@media(max-width:720px){.nav{gap:8px}.nav-pill{padding:9px 15px;font-size:14px;min-height:36px}}

/* Bloque original id="v455-beneficios-compactos" */
/* V466 - beneficios superiores más compactos para dar protagonismo a categorías */
.benefits{gap:12px!important;margin:10px auto 18px!important}
.benefits article{padding:12px 16px!important;min-height:76px!important;border-radius:14px!important;align-items:center!important}
.benefits article>span{font-size:21px!important;line-height:1!important}
.benefits strong{font-size:13px!important;line-height:1.2!important}
.benefits p{font-size:11px!important;line-height:1.3!important;margin-top:3px!important}
@media(max-width:560px){.benefits{gap:7px!important;margin:7px auto 14px!important}.benefits article{padding:9px 10px!important;min-height:58px!important}.benefits article>span{font-size:18px!important}.benefits strong{font-size:12px!important}}

/* V669: acceso permanente al creador gratuito desde la portada. */
.invite-creator-btn[hidden],.invite-creator-banner[hidden]{display:none!important}
.invite-creator-btn{height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 15px;border-radius:12px;background:linear-gradient(135deg,#ff643c,#ff7d43);color:#fff;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap;box-shadow:0 8px 18px rgba(255,90,31,.2)}
.invite-creator-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(255,90,31,.28)}
@media(max-width:900px){.invite-creator-btn{height:42px;padding:0 12px}}
@media(max-width:560px){.header-actions{gap:6px}.invite-creator-btn{padding:0 10px;font-size:12px}.invite-creator-btn span{font-size:0}.invite-creator-btn span::after{content:'Invitación';font-size:12px}}
.invite-creator-banner{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;width:min(1180px,calc(100% - 32px));margin:22px auto 8px;padding:18px 22px;border:1px solid #ffc5b5;border-radius:22px;background:linear-gradient(110deg,#fff1ea,#fff9e8 52%,#f5f0ff);box-shadow:0 15px 36px rgba(255,90,31,.13);color:#172033;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.invite-creator-banner:hover{transform:translateY(-2px);box-shadow:0 22px 44px rgba(255,90,31,.18)}.invite-creator-banner>*:not(.invite-banner-orb){position:relative;z-index:1}.invite-banner-orb{position:absolute;z-index:0;border-radius:50%;filter:blur(1px);opacity:.56}.invite-banner-orb.one{width:170px;height:170px;right:8%;top:-95px;background:#ffd248;animation:inviteBannerDrift 6s ease-in-out infinite}.invite-banner-orb.two{width:130px;height:130px;right:35%;bottom:-88px;background:#bca7ff;animation:inviteBannerDrift 7s ease-in-out -2s infinite}.invite-banner-ticket{display:grid;gap:6px;align-content:center;width:58px;height:72px;padding:10px;border-radius:16px;background:linear-gradient(145deg,#ff6947,#ff9a43);box-shadow:0 12px 22px #ed663457;transform:rotate(-5deg);animation:inviteBannerFloat 2.8s ease-in-out infinite}.invite-banner-ticket i{display:block;height:4px;border-radius:6px;background:#fff8}.invite-banner-ticket i:first-child{height:auto;background:transparent;color:#fff;font-style:normal;font-size:20px}.invite-banner-ticket i:last-child{width:62%}.invite-banner-copy small{display:block;color:#ae482f;font-size:10px;font-weight:950;letter-spacing:.13em}.invite-banner-copy strong{display:block;max-width:670px;margin:4px 0;color:#172033;font-size:20px;line-height:1.18}.invite-banner-copy em{display:block;color:#687087;font-size:13px;font-style:normal}.invite-banner-cta{display:inline-flex;align-items:center;gap:10px;justify-content:center;white-space:nowrap;padding:12px 15px;border-radius:13px;background:#18233d;color:#fff;font-size:13px;font-weight:900}.invite-banner-cta b{font-size:18px}@keyframes inviteBannerFloat{0%,100%{transform:translateY(2px) rotate(-5deg)}50%{transform:translateY(-5px) rotate(2deg)}}@keyframes inviteBannerDrift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-16px,9px) scale(1.08)}}@media(max-width:620px){.invite-creator-banner{width:calc(100% - 20px);grid-template-columns:auto minmax(0,1fr);gap:11px;margin:12px auto 4px;padding:14px;border-radius:18px}.invite-banner-ticket{width:44px;height:56px;padding:7px;border-radius:13px}.invite-banner-ticket i:first-child{font-size:16px}.invite-banner-copy strong{font-size:15px;line-height:1.2}.invite-banner-copy em{display:none}.invite-banner-cta{grid-column:1/-1;width:100%;padding:11px}.invite-banner-orb.one{right:-50px}.invite-banner-orb.two{right:30%;bottom:-105px}}

/* Bloque original */
.clear-search-preferences{margin-top:8px;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:700;text-decoration:underline;cursor:pointer;padding:0}
.clear-search-preferences:hover{color:var(--accent)}

/* Bloque original id="v618-benefits-neutral" */
/* V618: tarjetas informativas neutras; no deben parecer botones */
.benefits article{
  background:#fff!important;
  border:1px solid #d9dee3!important;
  box-shadow:none!important;
  cursor:default!important;
}
.benefits article:hover{
  background:#fff!important;
  border-color:#d9dee3!important;
  box-shadow:none!important;
  transform:none!important;
}

/* Bloque original id="v671-titulos-productos-completos" */
/* V671: mostrar siempre el título completo del producto en PC y móvil. */
.product-card .product-title{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

/* ===== Auditoría móvil: legibilidad, contraste y objetivos táctiles ===== */
.catalog-search-loader{min-height:190px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center}
.catalog-search-loader strong{font-size:16px;color:#24323b}
.catalog-search-loader small{font-size:13px;color:#526071}
.nav-pill-products{border:1px solid color-mix(in srgb,var(--accent) 35%,#d9e0e5);background:#fff;color:#24323b}

@media(max-width:700px){
  .topbar{display:none}
  .header-main{padding:9px 0 7px;gap:7px}
  .search-wrap{height:46px}
  .search-wrap input{font-size:16px;min-width:0}
  .search-wrap button{min-width:76px;padding:0 15px;font-size:14px;font-weight:700}
  .header-category-shell{grid-template-columns:44px minmax(0,1fr) 44px;gap:3px}
  .header-category-arrow{width:44px;height:44px;margin-top:-9px}
  .header-category-shell .nav{padding-bottom:8px}
  .nav-pill{min-height:44px;padding:10px 16px;font-size:14px}

  .section-kicker,.eyebrow{font-size:12px;letter-spacing:.8px;font-weight:700}
  .stock-badge{right:8px!important;top:8px!important;padding:7px 9px!important;font-size:12px!important;font-weight:700!important;color:#067647!important}
  .stock-badge.out-of-stock{color:#475467!important;background:#f2f4f7!important}
  .product-title{font-size:14px!important;line-height:1.42!important;font-weight:650!important}
  .old-price,.price-all-inline .old-price{font-size:12px!important;color:#526071!important}
  .old-price-line .off,.old-price-line .off.off-prize,.price-all-inline .off{font-size:12px!important;font-weight:700!important;color:#9b365f!important;border-color:#e7b8ca!important;background:#fff3f7!important}
  .product-share-btn{width:44px;height:44px;right:8px;bottom:8px}
  .product-share-btn svg{width:20px;height:20px}

  .card-cart-actions{grid-template-columns:132px minmax(0,1fr)!important;gap:8px!important}
  .product-card .card-qty-picker,.card-qty-picker{grid-template-columns:44px 44px 44px!important;min-width:132px!important;min-height:48px!important}
  .product-card .card-qty-picker button,.card-qty-picker button{min-height:48px!important;font-size:20px!important}
  .product-card .card-qty-picker span,.card-qty-picker span{min-width:44px!important;font-size:14px!important}
  .product-card .card-cart-actions .add-btn,.card-cart-actions .add-btn{min-height:48px!important;padding:8px 12px!important;font-size:14px!important;font-weight:700!important}
  .product-card .card-cart-actions .add-btn::after{content:none!important}

  .cart-head .cart-head-actions>button,#closeCart,.checkout-close,.product-modal-close,.checkout-success-close{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .cart-item strong{font-size:14px;line-height:1.35}
  .cart-item button{width:44px;height:44px;font-size:18px}
  .checkout-btn{min-height:48px;font-size:15px;font-weight:700}

  .discount-sticky-title strong{font-size:12px!important}
  .discount-sticky-title strong::after{content:none!important}
  .discount-levels span{font-size:12px!important;padding:7px 10px!important}
  .discount-levels b{font-size:12px!important}
}

@media(max-width:420px){
  .deal-grid,.product-grid,.deals-feature-layout .deal-grid,#productGrid,#dealGrid{grid-template-columns:1fr!important;gap:14px!important}
  .product-media{height:210px!important}
  .product-body{padding:14px!important}
  .price-all-inline strong,.price-row strong{font-size:23px!important}
  .product-card{border-radius:16px}
  .benefits{grid-template-columns:1fr 1fr}
}

/* ===== Auditoría móvil, segunda pasada: carrito, pedidos y formularios ===== */
@media(max-width:700px){
  .single-unit-note{font-size:12px!important;line-height:1.35!important;padding:7px 9px!important;min-height:36px}
  .single-unit-note .single-unit-info{width:20px!important;height:20px!important;flex-basis:20px!important;font-size:11px!important}
  .single-unit-note::after{font-size:12px;line-height:1.45}

  .qty-control button,.cart-extra-row button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .qty-control .remove-cart{width:auto!important;min-width:44px;padding:0 12px!important;font-size:12px!important}
  .cart-qty-label,.cart-extra-units-label,.cart-extra-price,.cart-extra-summary,.cart-extra-total-units,.order-extra-note{font-size:12px!important}
  .cart-price-breakdown,.cart-price-original-inline,.cart-discount-badge,.cart-price-compact small{font-size:12px!important;line-height:1.35}
  .cart-summary .cart-promo-discount-row,.cart-summary .cart-discount-row,.cart-summary .cart-promo-discount-row strong,.cart-summary .cart-discount-row strong{font-size:12px!important}
  .cart-summary>small,.cart-progress>small{font-size:12px!important;line-height:1.4}
  .cart-personalization-help{width:44px!important;height:44px!important;line-height:44px!important}
  .cart-extra-toggle,.order-detail-toggle{min-height:44px!important;font-size:13px!important}

  .deal-arrow,.category-arrow{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .same-day-geo-toast .geo-toast-close,.contact-inbox-close{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}

  .order-card-total-block small,.order-card-paid span,.orders-separator{font-size:12px!important}
  .order-progress-step{font-size:11px!important;line-height:1.3}
  .order-progress-step span{max-width:100px!important}
  .order-track-note{font-size:12px;line-height:1.45}
  .order-track-btn{min-height:46px;font-weight:700}

  .checkout-box input,.checkout-box select,.checkout-box textarea,.billing-form input,.billing-form select,.contact-inbox-form input,.contact-inbox-form textarea{font-size:16px!important}
  .checkout-box button:not(.checkout-close),.billing-save,.contact-submit{min-height:46px}
  .payment-option{min-height:58px}
  .payment-option small,.payment-dynamic-card p,.mp-auto-qr-sub,.mp-qr-help,.mp-qr-head span,.mp-qr-expire{font-size:12px!important;line-height:1.4}
  .contact-inbox-form label,.billing-form label{font-size:13px}
  .contact-inbox-box{padding:24px 18px;border-radius:18px}
}
/* Cupones web */
.cart-coupon-box{display:block!important;margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fafb}.cart-coupon-box summary{display:block;font-size:12px;font-weight:800;cursor:pointer;list-style:none}.cart-coupon-box summary::-webkit-details-marker{display:none}.cart-coupon-box[open] summary{margin-bottom:7px}.cart-coupon-box>div{display:grid!important;grid-template-columns:1fr auto;gap:7px}.cart-coupon-box input{min-width:0;border:1px solid #ccd5da;border-radius:9px;padding:10px;text-transform:uppercase}.cart-coupon-box button{border:0;border-radius:9px;padding:0 14px;background:var(--deep);color:#fff;font-weight:800;cursor:pointer}.cart-coupon-box p{min-height:16px;margin:7px 0 0;font-size:11px;color:var(--muted)}.cart-coupon-box p.ok{color:#087443}.cart-coupon-box p.error{color:#b42318}
@media(max-width:700px){.cart-coupon-box{padding:0;background:#fff;overflow:hidden}.cart-coupon-box summary{position:relative;padding:12px 42px 12px 14px;font-size:13px}.cart-coupon-box summary::after{content:'+';position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--muted)}.cart-coupon-box[open] summary{margin-bottom:0;border-bottom:1px solid var(--line)}.cart-coupon-box[open] summary::after{content:'−'}.cart-coupon-box:not([open])>div,.cart-coupon-box:not([open])>p{display:none!important}.cart-coupon-box>div{margin:12px 12px 0}.cart-coupon-box>p{margin:7px 12px 10px}}

/* ENMANA3D · acceso visible a ideas por edad y temática */
.enmana-ideas-banner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;margin-top:8px;margin-bottom:28px;padding:28px 30px;border:1px solid #f0dff5;border-radius:22px;background:linear-gradient(135deg,#fff5fc 0%,#f7f1ff 55%,#eef7ff 100%);box-shadow:0 14px 34px rgba(98,54,126,.08)}
.enmana-ideas-banner[hidden]{display:none!important}.enmana-ideas-copy h2{margin:6px 0 8px;font-size:27px;line-height:1.15}.enmana-ideas-copy p{margin:0;color:var(--muted);line-height:1.55}.enmana-ideas-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;max-width:460px}.enmana-ideas-links a{padding:10px 13px;border:1px solid #dfd2ea;border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}.enmana-ideas-links a:hover{transform:translateY(-1px);border-color:#b894d1}.enmana-ideas-links .enmana-ideas-all{color:#fff;background:#6f3fa0;border-color:#6f3fa0}
@media(max-width:800px){.enmana-ideas-banner{grid-template-columns:1fr;padding:23px 20px}.enmana-ideas-links{justify-content:flex-start;max-width:none}.enmana-ideas-copy h2{font-size:23px}}

/* Ajuste móvil: mantiene visibles los controles de compra y evita que el aviso tape el catálogo. */
@media(max-width:700px){
  .product-card .card-cart-actions .add-btn:not(:disabled){font-size:14px!important;color:#fff!important}
  .product-card .card-cart-actions .add-btn:not(:disabled)::after{content:none!important}
  .product-card .card-qty-picker{flex-shrink:0}
}
@media(max-width:600px){
  .same-day-geo-toast{left:10px;right:10px;bottom:10px;width:auto;padding:11px 50px 11px 12px;border-radius:14px}
  .same-day-geo-toast .geo-toast-title{font-size:13px;line-height:1.25}
  .same-day-geo-toast .geo-toast-copy,.same-day-geo-toast .geo-toast-copy.geo-toast-copy-large{font-size:12px;line-height:1.3;margin-top:3px}
  .same-day-geo-toast .geo-toast-copy span{display:none}
  .same-day-geo-toast .geo-toast-close{right:7px;top:50%;transform:translateY(-50%)}
}

/* Recupera el catálogo compacto de dos columnas en celulares. */
@media(max-width:420px){
  .deal-grid,.product-grid,.deals-feature-layout .deal-grid,#productGrid,#dealGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .product-card{min-width:0!important;border-radius:15px!important}
  .product-media{height:145px!important;min-height:145px!important;max-height:145px!important}
  .product-body{padding:10px!important}
  .product-title{font-size:12px!important;line-height:1.32!important;min-height:48px!important}
  .price-all-inline strong,.price-row strong,.product-card .price-now{font-size:19px!important}
  .product-card .card-cart-actions{grid-template-columns:70px minmax(0,1fr)!important;gap:5px!important}
  .product-card .card-qty-picker,.card-qty-picker{grid-template-columns:22px 26px 22px!important;min-width:70px!important;min-height:38px!important}
  .product-card .card-qty-picker button,.card-qty-picker button{min-height:38px!important;font-size:16px!important}
  .product-card .card-qty-picker span,.card-qty-picker span{min-width:26px!important;font-size:12px!important}
  .product-card .card-cart-actions .add-btn:not(:disabled){min-height:38px!important;padding:6px 3px!important;font-size:0!important}
  .product-card .card-cart-actions .add-btn:not(:disabled)::after{content:'Agregar'!important;font-size:11px!important;font-weight:800!important}
  .product-share-btn{width:38px;height:38px;right:6px;bottom:6px}
  .stock-badge{font-size:10px!important;padding:6px 7px!important}
}

/* Portada móvil más limpia: prioriza categorías y productos. */
@media(max-width:700px){
  .invite-creator-btn,
  .invite-creator-banner,
  .enmana-ideas-banner{display:none!important}
}

/* Iguala la altura de las tarjetas visibles del carrusel móvil. */
@media(max-width:680px){
  .deals-feature-layout .deal-grid{align-items:stretch!important}
  .deal-grid .product-card{height:100%!important;align-self:stretch!important}
  .deal-grid .product-body{height:100%!important}
  .deal-grid .card-cart-actions{margin-top:auto!important}
}

/* Simplifica la portada y los avisos de producto en celular. */
@media(max-width:700px){
  .import-fixed-slot{display:none!important}
  .single-unit-note .single-unit-copy{font-size:0}
  .single-unit-note .single-unit-copy::after{content:'Agregar de a 1';font-size:12px}
  section.benefits.container{margin-top:28px!important;margin-bottom:22px!important}
}

/* Encabezado móvil claro en todas las tiendas. */
@media(max-width:700px){
  .cart-btn span{display:inline!important;text-transform:uppercase;font-size:12px;letter-spacing:.02em}
  .cart-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 10px!important;white-space:nowrap}
}

/* COMPEX móvil: contacto compacto y catálogo como protagonista. */
@media(max-width:700px){
  .compex-contact-banner{grid-template-columns:48px minmax(0,1fr)!important;gap:12px!important;margin-top:10px!important;margin-bottom:14px!important;padding:12px 14px!important;border-radius:16px!important}
  .compex-contact-copy{display:none!important}
  .compex-contact-icon{width:46px!important;height:46px!important}
  .compex-contact-icon svg{width:29px!important;height:29px!important}
  .compex-contact-cta{grid-column:auto!important;width:100%!important;min-height:46px!important;padding:0 10px!important;background:transparent!important;box-shadow:none!important;justify-content:flex-start!important;text-align:left;font-size:0!important;line-height:1.2!important}
  .compex-contact-cta::before{content:'ESTAMOS ONLINE SI NECESITÁS AYUDA';font-size:13px;font-weight:900;color:#fff;letter-spacing:.02em}
  .compex-contact-cta span{display:none!important}
  .compex-seo-intro{display:none!important}
}
