.commercial-detail-page{
  padding:12px 0 84px;
}
.commercial-detail-page .commerce-shell{
  width:min(calc(100% - 24px),1240px);
  max-width:none;
  padding:0;
}
.commercial-detail-page .commercial-breadcrumb{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  margin:0 0 9px;
  color:var(--ui-muted);
  font-size:10px;
  white-space:nowrap;
  overflow:hidden;
}
.commercial-detail-page .commercial-breadcrumb a{
  color:var(--ui-primary);
  font-weight:760;
}
.commercial-detail-page .commercial-breadcrumb>*:last-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Cabecera comercial híbrida: galería ecommerce + contexto de red comercial */
.commerce-stage{
  display:grid;
  grid-template-columns:minmax(0,1fr) 420px;
  gap:12px;
  align-items:start;
}
.commerce-gallery{
  min-width:0;
  padding:9px;
  overflow:hidden;
}
.commerce-gallery-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.commerce-gallery-layout.has-thumbnails{
  grid-template-columns:68px minmax(0,1fr);
}
.commerce-gallery .commercial-thumbnails{
  display:flex;
  flex-direction:column;
  gap:7px;
  max-height:452px;
  padding:0;
  overflow-y:auto;
  scrollbar-width:thin;
}
.commerce-gallery .commercial-thumbnails button{
  width:68px;
  height:62px;
  flex:0 0 62px;
  padding:3px;
  border:1px solid var(--ui-border);
  border-radius:9px;
  background:#fff;
  overflow:hidden;
}
.commerce-gallery .commercial-thumbnails button:hover,
.commerce-gallery .commercial-thumbnails button.is-active{
  border-color:var(--ui-primary);
  box-shadow:0 0 0 2px rgba(20,72,151,.1);
}
.commerce-gallery .commercial-thumbnails img{
  width:100%;
  height:100%;
  display:block;
  border-radius:6px;
  object-fit:cover;
}
.commerce-gallery .commercial-main-image{
  position:relative;
  height:452px;
  margin:0;
  overflow:hidden;
  border:1px solid #e5eaf1;
  border-radius:12px;
  background:linear-gradient(145deg,#f5f7fa,#e8edf3);
}
.commerce-gallery .commercial-main-image>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#fff;
}
.commerce-gallery .commercial-main-image figcaption{
  position:absolute;
  right:9px;
  bottom:9px;
  left:9px;
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:5px 6px 5px 10px;
  color:#fff;
  background:rgba(18,31,49,.76);
  border:1px solid rgba(255,255,255,.16);
  border-radius:9px;
  backdrop-filter:blur(8px);
  font-size:10px;
  font-weight:760;
}
.commerce-gallery .commercial-main-image figcaption button{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  padding:0;
  color:#fff;
  background:rgba(255,255,255,.12);
  border:0;
  border-radius:7px;
}
.commerce-gallery .commercial-main-image figcaption .icon{
  width:14px;
  height:14px;
}
.commercial-image-empty{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:#8a98aa;
  background:linear-gradient(145deg,#edf2f7,#dfe7f1);
}
.commercial-image-empty .icon{
  width:64px;
  height:64px;
}

.commerce-offer{
  position:sticky;
  top:calc(var(--ui-header-h) + 12px);
  min-width:0;
  padding:17px;
}
.commerce-offer .commercial-business-chip{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 24px;
  align-items:center;
  gap:9px;
  min-width:0;
  margin:0 0 12px;
  padding-bottom:11px;
  color:var(--ui-text);
  border-bottom:1px solid var(--ui-border);
}
.commerce-offer .commercial-business-chip img,
.commerce-offer .commercial-business-chip>.avatar{
  width:38px;
  height:38px;
  border-radius:10px;
  object-fit:cover;
  border:1px solid var(--ui-border);
}
.commerce-offer .commercial-business-chip>span:nth-child(2){
  min-width:0;
}
.commerce-offer .commercial-business-chip strong,
.commerce-offer .commercial-business-chip small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.commerce-offer .commercial-business-chip strong{
  font-size:12px;
  font-weight:820;
}
.commerce-offer .commercial-business-chip small{
  margin-top:2px;
  color:var(--ui-muted);
  font-size:10px;
}
.commerce-business-arrow{
  width:16px;
  height:16px;
  color:var(--ui-muted);
}
.commerce-label-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:8px;
}
.commerce-type-pill,
.commerce-category-pill{
  min-height:23px;
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  font-size:10px;
  font-weight:850;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.commerce-type-pill{
  color:#fff;
  background:var(--ui-primary);
}
.commerce-type-pill.is-promotion{
  background:#d81e3f;
}
.commerce-category-pill{
  color:#546276;
  background:#f1f4f8;
  border:1px solid #e3e8ef;
}
.commerce-offer h1{
  margin:0 0 8px;
  font-size:clamp(23px,2.25vw,31px);
  line-height:1.12;
  letter-spacing:-.025em;
  font-weight:900;
}
.commerce-offer .commercial-short-copy{
  margin:0;
  color:#586579;
  font-size:12px;
  line-height:1.55;
}
.commerce-price-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin:14px 0 12px;
}
.commerce-price-row .commercial-price-block{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:7px;
  margin:0;
}
.commerce-price-row .commercial-price-block del{
  color:#909bab;
  font-size:11px;
}
.commerce-price-row .commercial-price-block strong{
  color:var(--ui-primary);
  font-size:25px;
  line-height:1;
  font-weight:900;
}
.commerce-sale-pill{
  min-height:27px;
  display:inline-flex;
  align-items:center;
  padding:5px 8px;
  color:#b01f37;
  background:#fff0f3;
  border:1px solid #f3ced6;
  border-radius:8px;
  font-size:10px;
  font-weight:900;
}
.commerce-quick-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  margin:0 0 12px;
}
.commerce-quick-facts>div{
  min-width:0;
  min-height:57px;
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  align-items:center;
  gap:6px;
  padding:8px;
  background:#f7f9fc;
  border:1px solid #e4e9f0;
  border-radius:9px;
}
.commerce-quick-facts .icon{
  width:17px;
  height:17px;
  color:var(--ui-primary);
}
.commerce-quick-facts span{
  min-width:0;
}
.commerce-quick-facts small,
.commerce-quick-facts strong{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.commerce-quick-facts small{
  color:var(--ui-muted);
  font-size:10px;
  font-weight:760;
  text-transform:uppercase;
}
.commerce-quick-facts strong{
  margin-top:2px;
  color:var(--ui-text);
  font-size:10px;
}
.commerce-primary-actions{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);
  gap:6px;
  margin:0;
}
.commerce-primary-actions .btn{
  min-width:0;
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:8px 9px;
  font-size:10px;
}
.commerce-primary-actions .icon{
  width:15px;
  height:15px;
}
.commerce-social-strip{
  margin-top:11px;
  padding-top:8px;
  border-top:1px solid var(--ui-border);
}
.commerce-social-strip .product-engagement{
  margin:0;
  border:0;
}
.commerce-social-strip .post-stats{
  padding:0 2px 7px;
  font-size:10px;
}
.commerce-social-strip .post-actions{
  border-top:1px solid var(--ui-border);
}
.commerce-offer .content-report{
  margin-top:8px;
}

/* Cuerpo de detalle */
.commerce-body-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:12px;
  margin-top:12px;
  align-items:start;
}
.commerce-main-column{
  min-width:0;
  display:grid;
  gap:12px;
}
.commerce-information-card,
.commercial-product-community,
.promotion-contact-request,
.commerce-conversion-card{
  min-width:0;
  padding:16px;
}
.commerce-section-heading,
.commerce-conversion-heading{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:11px;
}
.commerce-section-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  color:var(--ui-primary);
  background:var(--ui-soft-blue);
  border-radius:9px;
}
.commerce-section-icon .icon{
  width:17px;
  height:17px;
}
.commerce-section-heading>div,
.commerce-conversion-heading>div{
  min-width:0;
}
.commerce-section-heading span:not(.commerce-section-icon),
.commerce-conversion-heading span:not(.commerce-section-icon){
  display:block;
  color:var(--ui-primary);
  font-size:10px;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.commerce-section-heading h2,
.commerce-conversion-heading h2{
  margin:2px 0 0;
  font-size:17px;
  font-weight:880;
  letter-spacing:-.015em;
}
.commercial-rich-copy{
  color:#536075;
  font-size:12px;
  line-height:1.7;
}
.commercial-tags{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:12px;
}
.commercial-tags span{
  padding:5px 8px;
  color:#536075;
  background:#f1f5fa;
  border:1px solid #e3e8ef;
  border-radius:999px;
  font-size:10px;
  font-weight:760;
}
.commerce-conversion-card{
  position:sticky;
  top:calc(var(--ui-header-h) + 12px);
}
.commerce-conversion-card>p,
.promotion-contact-request>p{
  margin:0 0 10px;
  color:var(--ui-muted);
  font-size:10px;
  line-height:1.5;
}
.commerce-conversion-card form,
.promotion-contact-request form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.commerce-conversion-card form label,
.promotion-contact-request form label{
  min-width:0;
  display:grid;
  gap:4px;
  color:#536075;
  font-size:10px;
  font-weight:800;
}
.commerce-conversion-card form .full,
.promotion-contact-request form .full,
.commerce-conversion-card form label.full,
.promotion-contact-request form label.full{
  grid-column:1/-1;
}
.commerce-conversion-card .form-control,
.promotion-contact-request .form-control{
  min-height:37px;
  padding:7px 9px;
  font-size:10px;
}
.commerce-conversion-card textarea.form-control,
.promotion-contact-request textarea.form-control{
  min-height:72px;
  resize:vertical;
}
.commerce-conversion-card .btn,
.promotion-contact-request .btn{
  min-height:39px;
  font-size:10px;
}

/* Comunidad de producto */
.commercial-product-community{
  display:grid;
  gap:0;
  overflow:visible;
}
.commercial-product-community-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  padding:0 0 11px;
  border-bottom:1px solid var(--ui-border);
}
.commercial-product-community-heading h2{
  margin:2px 0 0;
  font-size:17px;
}
.commercial-product-community-heading>span{
  max-width:320px;
  color:var(--ui-muted);
  font-size:10px;
  text-align:right;
}
.commercial-product-community .product-comments-slot{
  padding:12px 0 0;
  border:0;
}
.commercial-product-community .product-comments-panel{
  padding:0;
}

/* Relacionados compactos */
.commercial-related{
  margin-top:15px;
}
.commercial-related .section-heading{
  margin-bottom:8px;
}
.commercial-related .section-heading h2{
  margin:2px 0 0;
  font-size:17px;
}
.product-detail-page .commercial-related .catalog-grid,
.service-detail-page .commercial-related .catalog-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,214px),214px));
  justify-content:flex-start;
  gap:9px;
}
.product-detail-page .commercial-related .catalog-card,
.service-detail-page .commercial-related .catalog-card{
  width:min(100%,214px);
  min-height:246px;
  overflow:hidden;
}
.product-detail-page .commercial-related .catalog-card>img,
.product-detail-page .commercial-related .catalog-image-placeholder,
.service-detail-page .commercial-related .catalog-card>img,
.service-detail-page .commercial-related .catalog-image-placeholder{
  width:100%;
  height:128px;
  object-fit:cover;
}
.product-detail-page .commercial-related .catalog-card-body,
.service-detail-page .commercial-related .catalog-card-body{
  padding:10px;
}
.product-detail-page .commercial-related .catalog-card h3,
.service-detail-page .commercial-related .catalog-card h3{
  font-size:12px;
}
.product-detail-page .commercial-related .catalog-card p,
.service-detail-page .commercial-related .catalog-card p{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font-size:10px;
}

/* Promociones */
.promotion-commerce-gallery{
  padding:9px;
}
.promotion-main-image{
  height:452px;
}
.promotion-main-image>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.promotion-benefit-callout{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 0 10px;
  padding:9px 11px;
  color:#a71933;
  background:linear-gradient(90deg,#fff1f4,#fff8fa);
  border:1px solid #f2d0d7;
  border-radius:10px;
}
.promotion-benefit-callout span{
  font-size:10px;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.promotion-benefit-callout strong{
  font-size:17px;
  line-height:1.1;
  text-align:right;
}
.promotion-body-grid{
  grid-template-columns:minmax(0,1fr) 350px;
}
.promotion-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin:13px 0 0;
}
.promotion-facts div{
  min-width:0;
  display:grid;
  gap:3px;
  padding:9px 10px;
  background:#f7f9fc;
  border:1px solid #e4e9f0;
  border-radius:9px;
}
.promotion-facts dt{
  color:var(--ui-muted);
  font-size:10px;
  font-weight:760;
}
.promotion-facts dd{
  min-width:0;
  margin:0;
  overflow-wrap:anywhere;
  color:var(--ui-text);
  font-size:10px;
  font-weight:820;
}
.promotion-contact-request{
  display:block;
  margin:0;
}
.promotion-contact-request form{
  margin-top:8px;
}
.promotion-claim-card{
  display:grid;
  gap:9px;
  background:linear-gradient(180deg,#f8fbff,#fff);
  border:1px solid #d7e3f6;
}
.promotion-claim-card>p{
  margin:0;
  color:var(--ui-muted);
  font-size:10px;
  line-height:1.5;
}
.claim-code-box{
  display:grid;
  gap:5px;
  padding:12px;
  text-align:center;
  background:#fff;
  border:1px dashed #9db7df;
  border-radius:10px;
}
.claim-code-box>span,
.claim-code-box>small{
  color:var(--ui-muted);
  font-size:10px;
}
.claim-code-box>strong{
  font-size:20px;
  letter-spacing:.07em;
}
.promotion-claim-note{
  display:flex;
  align-items:flex-start;
  gap:6px;
  padding-top:8px;
  color:var(--ui-muted);
  border-top:1px solid var(--ui-border);
  font-size:10px;
  line-height:1.45;
}
.promotion-claim-note .icon{
  width:14px;
  height:14px;
  flex:0 0 14px;
  color:var(--ui-primary);
}
.promotion-detail-page .commercial-related .promotion-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),230px));
  justify-content:flex-start;
  gap:9px;
}
.promotion-detail-page .commercial-related .promotion-card{
  width:min(100%,230px);
  min-height:244px;
  overflow:hidden;
}
.promotion-detail-page .commercial-related .promotion-card>img,
.promotion-detail-page .commercial-related .promotion-card>.catalog-image-placeholder{
  width:100%;
  height:128px;
  object-fit:cover;
}
.promotion-detail-page .commercial-related .promotion-card>div{
  padding:10px;
}
.promotion-detail-page .commercial-related .promotion-card h3{
  font-size:12px;
}
.promotion-detail-page .commercial-related .promotion-card p{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font-size:10px;
}

@media(max-width:1080px){
  .commerce-stage{
    grid-template-columns:minmax(0,1fr) 380px;
  }
  .commerce-gallery .commercial-main-image,
  .promotion-main-image{
    height:420px;
  }
  .commerce-gallery .commercial-thumbnails{
    max-height:420px;
  }
  .commerce-quick-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .commerce-quick-facts>div:last-child{
    grid-column:1/-1;
  }
}

@media(max-width:900px){
  .commerce-stage,
  .commerce-body-grid,
  .promotion-body-grid{
    grid-template-columns:1fr;
  }
  .commerce-offer,
  .commerce-conversion-card{
    position:static;
  }
  .commerce-stage{
    gap:9px;
  }
  .commerce-offer{
    padding:15px;
  }
  .commerce-gallery .commercial-main-image,
  .promotion-main-image{
    height:390px;
  }
  .commerce-gallery .commercial-thumbnails{
    max-height:390px;
  }
  .commerce-quick-facts{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .commerce-quick-facts>div:last-child{
    grid-column:auto;
  }
}

@media(max-width:640px){
  .commercial-detail-page{
    padding:7px 0 82px;
  }
  .commercial-detail-page .commerce-shell{
    width:calc(100% - 12px);
  }
  .commercial-detail-page .commercial-breadcrumb{
    margin-bottom:6px;
    font-size:10px;
  }
  .commerce-stage,
  .commerce-body-grid,
  .commerce-main-column{
    gap:7px;
  }
  .commerce-gallery,
  .promotion-commerce-gallery{
    padding:5px;
  }
  .commerce-gallery-layout.has-thumbnails{
    grid-template-columns:1fr;
  }
  .commerce-gallery .commercial-thumbnails{
    order:2;
    max-height:none;
    flex-direction:row;
    overflow-x:auto;
    overflow-y:hidden;
  }
  .commerce-gallery .commercial-thumbnails button{
    width:52px;
    height:46px;
    flex:0 0 52px;
    border-radius:7px;
  }
  .commerce-gallery .commercial-main-image,
  .promotion-main-image{
    height:min(76vw,310px);
    border-radius:9px;
  }
  .commerce-gallery .commercial-main-image figcaption{
    right:6px;
    bottom:6px;
    left:6px;
    min-height:31px;
    font-size:10px;
  }
  .commerce-offer{
    padding:12px;
  }
  .commerce-offer .commercial-business-chip{
    grid-template-columns:34px minmax(0,1fr) 20px;
    margin-bottom:9px;
    padding-bottom:9px;
  }
  .commerce-offer .commercial-business-chip img,
  .commerce-offer .commercial-business-chip>.avatar{
    width:34px;
    height:34px;
    border-radius:9px;
  }
  .commerce-offer h1{
    margin-bottom:6px;
    font-size:21px;
  }
  .commerce-offer .commercial-short-copy{
    font-size:11px;
    line-height:1.48;
  }
  .commerce-price-row{
    margin:11px 0 9px;
  }
  .commerce-price-row .commercial-price-block strong{
    font-size:22px;
  }
  .commerce-quick-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px;
    margin-bottom:9px;
  }
  .commerce-quick-facts>div{
    min-height:51px;
    padding:7px;
  }
  .commerce-quick-facts>div:last-child{
    grid-column:1/-1;
  }
  .commerce-primary-actions{
    grid-template-columns:1fr 1fr;
    gap:5px;
  }
  .commerce-primary-actions .btn:first-child{
    grid-column:1/-1;
  }
  .commerce-primary-actions .btn{
    min-height:39px;
    font-size:10px;
  }
  .commerce-information-card,
  .commercial-product-community,
  .promotion-contact-request,
  .commerce-conversion-card{
    padding:12px;
  }
  .commerce-section-heading,
  .commerce-conversion-heading{
    margin-bottom:9px;
  }
  .commerce-section-heading h2,
  .commerce-conversion-heading h2,
  .commercial-product-community-heading h2{
    font-size:15px;
  }
  .commercial-rich-copy{
    font-size:11px;
    line-height:1.6;
  }
  .commerce-conversion-card form,
  .promotion-contact-request form{
    grid-template-columns:1fr;
  }
  .commerce-conversion-card form .full,
  .promotion-contact-request form .full,
  .commerce-conversion-card form label.full,
  .promotion-contact-request form label.full{
    grid-column:auto;
  }
  .commercial-product-community-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .commercial-product-community-heading>span{
    max-width:none;
    text-align:left;
    font-size:10px;
  }
  .promotion-benefit-callout{
    margin-bottom:8px;
  }
  .promotion-benefit-callout strong{
    font-size:15px;
  }
  .promotion-facts{
    grid-template-columns:1fr;
    gap:5px;
  }
  .product-detail-page .commercial-related .catalog-grid,
  .service-detail-page .commercial-related .catalog-grid,
  .promotion-detail-page .commercial-related .promotion-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }
  .product-detail-page .commercial-related .catalog-card,
  .service-detail-page .commercial-related .catalog-card,
  .promotion-detail-page .commercial-related .promotion-card{
    width:100%;
    min-height:0;
  }
  .product-detail-page .commercial-related .catalog-card>img,
  .product-detail-page .commercial-related .catalog-image-placeholder,
  .service-detail-page .commercial-related .catalog-card>img,
  .service-detail-page .commercial-related .catalog-image-placeholder,
  .promotion-detail-page .commercial-related .promotion-card>img,
  .promotion-detail-page .commercial-related .promotion-card>.catalog-image-placeholder{
    height:auto;
    aspect-ratio:4/3;
  }
}

@media(max-width:380px){
  .commerce-quick-facts{
    grid-template-columns:1fr;
  }
  .commerce-quick-facts>div:last-child{
    grid-column:auto;
  }
  .product-detail-page .commercial-related .catalog-grid,
  .service-detail-page .commercial-related .catalog-grid,
  .promotion-detail-page .commercial-related .promotion-grid{
    grid-template-columns:1fr;
  }
}

/* V8: detalle de promoción alineado con detalle comercial de producto */
.commercial-detail-page .form-trap{
  position:fixed!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
.promotion-detail-page .promotion-main-image>img{
  object-fit:contain;
  background:#fff;
}
.promotion-detail-page .promotion-value-row{
  align-items:center;
  margin:14px 0 10px;
  padding:0;
}
.promotion-detail-page .promotion-value-block{
  display:grid;
  gap:2px;
}
.promotion-detail-page .promotion-value-block small{
  color:var(--ui-muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.promotion-detail-page .promotion-value-block strong{
  color:#ad1015;
  font-size:25px;
  line-height:1.08;
  font-weight:900;
}
.promotion-detail-page .promotion-validity-pill{
  max-width:150px;
  color:#33445c;
  background:#f5f7fa;
  border-color:#e1e6ed;
  text-align:center;
  white-space:normal;
}
.promotion-detail-page .promotion-availability-line{
  width:100%;
}
.promotion-detail-page .promotion-summary-strip{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px 12px;
  margin-top:10px;
  padding-top:9px;
  color:var(--ui-muted);
  border-top:1px solid var(--ui-border);
  font-size:10px;
  font-weight:720;
}
.promotion-detail-page .promotion-summary-strip span{
  min-width:0;
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.promotion-detail-page .promotion-summary-strip .icon{
  width:14px;
  height:14px;
  flex:0 0 14px;
  color:var(--ui-primary);
}
.promotion-detail-page .promotion-information-card .promotion-facts{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.promotion-detail-page .promotion-information-card .promotion-facts>div{
  min-height:58px;
}
.promotion-detail-page .promotion-claim-card{
  gap:10px;
  background:#fff;
  border-color:var(--ui-border);
}
.promotion-detail-page .promotion-conversion-summary{
  display:grid;
  gap:2px;
  padding:10px 11px;
  background:#f6f8fb;
  border:1px solid var(--ui-border);
  border-radius:10px;
}
.promotion-detail-page .promotion-conversion-summary small{
  color:var(--ui-muted);
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.promotion-detail-page .promotion-conversion-summary strong{
  color:#ad1015;
  font-size:17px;
  line-height:1.15;
  font-weight:900;
}
.promotion-detail-page .promotion-conversion-summary span{
  color:var(--ui-muted);
  font-size:10px;
}
.promotion-detail-page .promotion-contact-request{
  scroll-margin-top:86px;
  transition:box-shadow .22s ease,border-color .22s ease,transform .22s ease;
}
.promotion-detail-page .promotion-contact-request:target{
  border-color:#8db3ef;
  box-shadow:0 0 0 4px rgba(15,63,147,.12),0 14px 34px rgba(15,63,147,.13);
  animation:promotion-request-focus 1.15s ease-out;
}
@keyframes promotion-request-focus{
  0%{transform:translateY(0)}
  32%{transform:translateY(-3px)}
  100%{transform:translateY(0)}
}

@media(max-width:1080px){
  .promotion-detail-page .promotion-information-card .promotion-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:640px){
  .promotion-detail-page .promotion-value-row{
    align-items:flex-end;
    gap:8px;
  }
  .promotion-detail-page .promotion-value-block strong{
    font-size:21px;
  }
  .promotion-detail-page .promotion-validity-pill{
    max-width:128px;
    font-size:10px;
  }
  .promotion-detail-page .promotion-summary-strip{
    gap:6px 10px;
    font-size:10px;
  }
  .promotion-detail-page .promotion-information-card .promotion-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .promotion-detail-page .promotion-information-card .promotion-facts>div{
    min-height:54px;
  }
  .promotion-detail-page .promotion-contact-request form{
    grid-template-columns:1fr;
  }
}
@media(max-width:380px){
  .promotion-detail-page .promotion-information-card .promotion-facts{
    grid-template-columns:1fr;
  }
  .promotion-detail-page .promotion-value-row{
    align-items:flex-start;
    flex-direction:column;
  }
  .promotion-detail-page .promotion-validity-pill{
    max-width:none;
  }
}

/* V9: promoción como referencia comercial y conversación */
.promotion-detail-page .promotion-primary-actions{
  grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,.82fr));
}
.promotion-detail-page .promotion-community{
  display:grid;
  gap:10px;
  padding:14px;
}
.promotion-detail-page .promotion-comments-panel{
  display:grid;
  gap:10px;
}
.promotion-detail-page .promotion-comments-reference{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding:9px 10px;
  background:#f6f8fb;
  border:1px solid var(--ui-border);
  border-radius:10px;
}
.promotion-detail-page .promotion-comments-reference>span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  color:var(--ui-primary);
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:9px;
}
.promotion-detail-page .promotion-comments-reference .icon{
  width:16px;
  height:16px;
}
.promotion-detail-page .promotion-comments-reference>div{
  min-width:0;
  display:grid;
  gap:1px;
}
.promotion-detail-page .promotion-comments-reference small,
.promotion-detail-page .promotion-comments-reference em{
  color:var(--ui-muted);
  font-size:10px;
  font-style:normal;
}
.promotion-detail-page .promotion-comments-reference strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--ui-text);
  font-size:10px;
}
.promotion-detail-page .promotion-comments-reference>b{
  min-width:24px;
  text-align:center;
  color:var(--ui-primary);
  font-size:10px;
}
.promotion-detail-page .promotion-comment-list{
  display:grid;
  gap:8px;
}
.promotion-detail-page .promotion-comment-item{
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:8px;
  align-items:start;
}
.promotion-detail-page .promotion-comment-item>.avatar{
  width:32px;
  height:32px;
}
.promotion-detail-page .promotion-comment-item>div{
  min-width:0;
  padding:8px 10px;
  background:#f8fafc;
  border:1px solid #e6ebf1;
  border-radius:10px;
}
.promotion-detail-page .promotion-comment-item header{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  margin-bottom:3px;
}
.promotion-detail-page .promotion-comment-item header strong{
  font-size:10px;
}
.promotion-detail-page .promotion-comment-item header span{
  padding:2px 5px;
  color:var(--ui-primary);
  background:#edf4ff;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
}
.promotion-detail-page .promotion-comment-item header small{
  margin-left:auto;
  color:var(--ui-muted);
  font-size:10px;
}
.promotion-detail-page .promotion-comment-item p{
  margin:0;
  color:#475568;
  font-size:10px;
  line-height:1.5;
  overflow-wrap:anywhere;
}
.promotion-detail-page .promotion-comments-empty{
  min-height:74px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:5px;
  color:var(--ui-muted);
  border:1px dashed #d8e0ea;
  border-radius:10px;
}
.promotion-detail-page .promotion-comments-empty .icon{
  width:18px;
  height:18px;
  color:var(--ui-primary);
}
.promotion-detail-page .promotion-comments-empty p{
  margin:0;
  font-size:10px;
}
.promotion-detail-page .promotion-comment-form{
  display:grid;
  gap:7px;
  padding-top:9px;
  border-top:1px solid var(--ui-border);
}
.promotion-detail-page .promotion-comment-form textarea{
  width:100%;
  min-height:72px;
  resize:vertical;
  padding:9px 10px;
  color:var(--ui-text);
  background:#fff;
  border:1px solid #dce3ec;
  border-radius:10px;
  outline:0;
  font:inherit;
  font-size:10px;
}
.promotion-detail-page .promotion-comment-form textarea:focus{
  border-color:#94b4e7;
  box-shadow:0 0 0 3px rgba(15,63,147,.08);
}
.promotion-detail-page .promotion-comment-form>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.promotion-detail-page .promotion-comment-form small{
  color:var(--ui-muted);
  font-size:10px;
}
.promotion-detail-page .promotion-comments-login{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:8px;
  border-top:1px solid var(--ui-border);
  color:var(--ui-muted);
  font-size:10px;
}

@media(max-width:760px){
  .promotion-detail-page .promotion-primary-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .promotion-detail-page .promotion-primary-actions .btn:first-child{
    grid-column:auto;
  }
}
@media(max-width:440px){
  .promotion-detail-page .promotion-primary-actions .btn{
    min-height:38px;
    padding-inline:7px;
  }
  .promotion-detail-page .promotion-comments-reference{
    grid-template-columns:30px minmax(0,1fr) auto;
    padding:8px;
  }
  .promotion-detail-page .promotion-comments-reference>span{
    width:30px;
    height:30px;
  }
  .promotion-detail-page .promotion-comment-form>div,
  .promotion-detail-page .promotion-comments-login{
    align-items:stretch;
    flex-direction:column;
  }
  .promotion-detail-page .promotion-comment-form .btn,
  .promotion-detail-page .promotion-comments-login .btn{
    width:100%;
  }
}

/* V10: columna de conversión y reacciones en comentarios de promociones */
.promotion-detail-page .promotion-side-column{
  min-width:0;
  display:grid;
  align-content:start;
  gap:12px;
}
.promotion-detail-page .promotion-side-column .promotion-claim-card,
.promotion-detail-page .promotion-side-column .promotion-contact-request{
  width:100%;
  margin:0;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request{
  display:grid;
  gap:9px;
  padding:14px;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request>p{
  margin:0;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request form{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin:0;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request form .full,
.promotion-detail-page .promotion-side-column .promotion-contact-request form label.full{
  grid-column:auto;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request textarea.form-control{
  min-height:86px;
}
.promotion-detail-page .promotion-comment-actions{
  display:flex;
  align-items:center;
  min-height:29px;
  margin-top:6px;
  padding-top:5px;
  border-top:1px solid #e8edf3;
}
.promotion-detail-page .promotion-comment-actions .comment-reactions{
  max-width:100%;
}
.promotion-detail-page .promotion-comment-actions .comment-reaction-button{
  min-width:28px;
  height:28px;
}
.promotion-detail-page .promotion-comment-actions .comment-reaction-button .reaction-icon{
  width:20px;
  height:20px;
}
@media(max-width:900px){
  .promotion-detail-page .promotion-side-column{
    order:-1;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:start;
  }
}
@media(max-width:700px){
  .promotion-detail-page .promotion-side-column{
    grid-template-columns:1fr;
  }
  .promotion-detail-page .promotion-side-column .promotion-contact-request,
  .promotion-detail-page .promotion-side-column .promotion-claim-card{
    padding:12px;
  }
}
@media(max-width:440px){
  .promotion-detail-page .promotion-comment-actions{
    overflow-x:auto;
    scrollbar-width:none;
  }
  .promotion-detail-page .promotion-comment-actions::-webkit-scrollbar{
    display:none;
  }
}

/* V11: alinear consulta lateral y mantener una sola reacción dominante en comentarios */
.promotion-detail-page .promotion-side-column .promotion-contact-request{
  grid-template-columns:minmax(0,1fr);
  grid-auto-flow:row;
  align-items:start;
  align-content:start;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request>.commerce-section-heading,
.promotion-detail-page .promotion-side-column .promotion-contact-request>p,
.promotion-detail-page .promotion-side-column .promotion-contact-request>form,
.promotion-detail-page .promotion-side-column .promotion-contact-request>.form-alert{
  width:100%;
  grid-column:1/-1;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request>.commerce-section-heading{
  margin:0;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request>p{
  margin:0;
}
.promotion-detail-page .promotion-side-column .promotion-contact-request>form{
  margin:0;
}
.promotion-detail-page .promotion-comment-actions{
  position:relative;
  overflow:visible;
}
.promotion-detail-page .comment-reactions--dominant{
  position:relative;
  display:inline-flex;
  overflow:visible;
}
.promotion-detail-page .comment-reaction-picker{
  position:relative;
}
.promotion-detail-page .comment-reaction-picker>summary{
  list-style:none;
  cursor:pointer;
}
.promotion-detail-page .comment-reaction-picker>summary::-webkit-details-marker{
  display:none;
}
.promotion-detail-page .comment-reaction-picker>summary.comment-reaction-button{
  min-width:32px;
  height:30px;
  padding:0 6px;
  background:transparent;
  border-color:transparent;
}
.promotion-detail-page .comment-reaction-picker>summary.comment-reaction-button:hover,
.promotion-detail-page .comment-reaction-picker>summary.comment-reaction-button:focus-visible,
.promotion-detail-page .comment-reaction-picker[open]>summary.comment-reaction-button{
  color:var(--ui-primary);
  background:#eef4fd;
  border-color:#d5e1f2;
}
.promotion-detail-page .comment-reaction-picker>summary .reaction-icon{
  width:21px;
  height:21px;
}
.promotion-detail-page .comment-reaction-picker>summary .icon{
  width:16px;
  height:16px;
  color:#6a7688;
}
.promotion-detail-page .comment-reaction-menu{
  position:absolute;
  left:0;
  bottom:calc(100% + 6px);
  z-index:45;
  display:flex;
  align-items:center;
  gap:3px;
  padding:5px;
  background:#fff;
  border:1px solid #dce3eb;
  border-radius:10px;
  box-shadow:0 10px 28px rgba(24,39,75,.16);
}
.promotion-detail-page .comment-reaction-picker:not([open]) .comment-reaction-menu{
  display:none;
}
.promotion-detail-page .comment-reaction-menu form{
  margin:0;
}
.promotion-detail-page .comment-reaction-menu .comment-reaction-button{
  min-width:32px;
  height:32px;
  padding:0 5px;
}
.promotion-detail-page .comment-reaction-menu .reaction-icon{
  width:22px;
  height:22px;
}
@media(max-width:440px){
  .promotion-detail-page .promotion-comment-actions{
    overflow:visible;
  }
  .promotion-detail-page .comment-reaction-menu{
    left:0;
    max-width:calc(100vw - 54px);
  }
}

/* ===== Integrated readable detail refinements ===== */
.commercial-detail-page .commercial-breadcrumb{font-size:11px}
.commerce-offer .commercial-business-chip strong{font-size:13px}
.commerce-offer .commercial-business-chip small{font-size:10px}
.commerce-type-pill,.commerce-category-pill{font-size:10px}
.commerce-offer .commercial-short-copy{font-size:14px;line-height:1.62}
.commerce-quick-facts small{font-size:10px}
.commerce-quick-facts strong{font-size:11px}
.commerce-primary-actions .btn{font-size:11px}
.commerce-social-strip .post-stats{font-size:10px}
.commerce-section-heading span:not(.commerce-section-icon),
.commerce-conversion-heading span:not(.commerce-section-icon){font-size:10px}
.commerce-section-heading h2,
.commerce-conversion-heading h2,
.commercial-product-community-heading h2,
.commercial-related .section-heading h2{font-size:18px}
.commercial-rich-copy{font-size:14px;line-height:1.72}
.commercial-tags span{font-size:10px}
.commerce-conversion-card>p,
.promotion-contact-request>p,
.promotion-claim-card>p{font-size:12px;line-height:1.58}
.commerce-conversion-card form label,
.promotion-contact-request form label{font-size:10px}
.commerce-conversion-card .form-control,
.promotion-contact-request .form-control{font-size:12px}
.commerce-conversion-card .btn,
.promotion-contact-request .btn{font-size:11px}
.commercial-product-community-heading>span{font-size:11px}
.product-detail-page .commercial-related .catalog-card h3,
.service-detail-page .commercial-related .catalog-card h3,
.promotion-detail-page .commercial-related .promotion-card h3{font-size:13px}
.product-detail-page .commercial-related .catalog-card p,
.service-detail-page .commercial-related .catalog-card p,
.promotion-detail-page .commercial-related .promotion-card p{font-size:11px;line-height:1.45}
.promotion-benefit-callout span{font-size:10px}
.promotion-facts dt{font-size:10px}
.promotion-facts dd{font-size:11px}
.claim-code-box>span,.claim-code-box>small{font-size:10px}
.promotion-claim-note{font-size:10px}
@media(max-width:640px){
  .commercial-detail-page .commercial-breadcrumb{font-size:10px}
  .commerce-offer .commercial-business-chip strong{font-size:12px}
  .commerce-offer .commercial-business-chip small{font-size:10px}
  .commerce-offer .commercial-short-copy{font-size:13px;line-height:1.58}
  .commerce-quick-facts small{font-size:10px}
  .commerce-quick-facts strong{font-size:10px}
  .commerce-primary-actions .btn{font-size:10px}
  .commerce-section-heading h2,
  .commerce-conversion-heading h2,
  .commercial-product-community-heading h2{font-size:16px}
  .commercial-rich-copy{font-size:13px;line-height:1.66}
  .commerce-conversion-card>p,
  .promotion-contact-request>p,
  .promotion-claim-card>p{font-size:11px}
  .commerce-conversion-card form label,
  .promotion-contact-request form label{font-size:10px}
  .commerce-conversion-card .form-control,
  .promotion-contact-request .form-control{font-size:12px}
  .commercial-product-community-heading>span{font-size:10px}
}

/* V4: detalle comercial más limpio, sin redundancias */
.commerce-gallery .commercial-main-image{box-shadow:none}
.commerce-gallery .commercial-main-image>img{object-fit:contain}
.commerce-availability-line{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  margin:0 0 12px;
  padding:7px 10px;
  color:var(--ui-text);
  background:#f6f8fb;
  border:1px solid var(--ui-border);
  border-radius:9px;
}
.commerce-availability-line .icon{width:17px;height:17px;color:var(--ui-primary)}
.commerce-availability-line span{display:grid;gap:1px}
.commerce-availability-line small{color:var(--ui-muted);font-size:10px;font-weight:760;text-transform:uppercase;letter-spacing:.025em}
.commerce-availability-line strong{font-size:11px;font-weight:850}
.commerce-primary-actions{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr) minmax(0,1fr)}
.commerce-primary-actions .btn{font-size:11px}
.commerce-social-strip{
  display:grid;
  grid-template-columns:minmax(0,1fr) 42px;
  align-items:stretch;
  gap:7px;
  margin-top:11px;
  padding-top:9px;
  border-top:1px solid var(--ui-border);
}
.commerce-social-strip.is-report-only{grid-template-columns:42px;justify-content:end}
.commerce-social-strip .product-engagement{min-width:0;margin:0;border:0}
.commerce-social-strip .product-engagement .post-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  height:100%;
  border:0;
}
.commerce-social-strip .product-engagement .post-actions>button,
.commerce-social-strip .product-engagement .post-actions>a,
.commerce-social-strip .product-engagement .reaction-picker>summary{
  min-height:42px;
  height:100%;
  border:1px solid var(--ui-border);
  border-radius:9px;
  background:#fff;
}
.commerce-social-strip .post-stats{display:none}
.commerce-report-action{
  width:42px;
  min-height:42px;
  display:grid;
  place-items:center;
  padding:0;
  color:#7a4650;
  background:#fff;
  border:1px solid #ead5d9;
  border-radius:9px;
  cursor:pointer;
}
.commerce-report-action:hover{color:#b1263d;background:#fff5f6;border-color:#e7b9c1}
.commerce-report-action .icon{width:17px;height:17px}
.commerce-report-modal .modal-dialog{max-width:520px}
.commerce-report-modal .modal-content{border:0;border-radius:16px;box-shadow:0 24px 70px rgba(16,35,62,.22);overflow:hidden}
.commerce-report-modal .modal-header{align-items:flex-start;padding:18px 20px;border-bottom:1px solid var(--ui-border)}
.commerce-report-modal-heading{display:flex;align-items:center;gap:10px;min-width:0}
.commerce-report-modal-heading .commerce-section-icon.is-danger{color:#b1263d;background:#fff0f2}
.commerce-report-modal-heading h2{margin:0;font-size:18px;font-weight:900}
.commerce-report-modal-heading p{margin:3px 0 0;color:var(--ui-muted);font-size:11px;line-height:1.45}
.commerce-report-modal .modal-body{padding:18px 20px 20px}
.commerce-report-modal .bp-form{display:grid;grid-template-columns:1fr;gap:11px}
.commerce-report-modal .bp-form label{display:grid;gap:5px;font-size:11px;font-weight:800;color:#536075}
.commerce-report-modal .bp-form .form-control,
.commerce-report-modal .bp-form .form-select{min-height:42px;font-size:12px}
.commerce-report-modal .bp-form textarea.form-control{min-height:96px}
.commerce-report-modal .bp-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:2px}

@media(min-width:1100px){
  .commerce-stage{grid-template-columns:minmax(0,1fr) 390px;gap:14px}
  .commerce-gallery .commercial-main-image{height:438px}
  .commerce-offer{padding:18px}
  .commerce-body-grid{grid-template-columns:minmax(0,1fr) 340px;gap:14px}
}
@media(max-width:900px){
  .commerce-stage{grid-template-columns:1fr}
  .commerce-offer{position:relative;top:auto}
  .commerce-gallery .commercial-main-image{height:min(64vw,500px)}
  .commerce-body-grid{grid-template-columns:1fr}
  .commerce-conversion-card{position:relative;top:auto}
}
@media(max-width:640px){
  .commercial-detail-page .commerce-shell{width:calc(100% - 10px)}
  .commercial-detail-page .commercial-breadcrumb{display:none}
  .commerce-stage{gap:6px}
  .commerce-gallery{padding:4px}
  .commerce-gallery .commercial-main-image{height:min(88vw,390px);border-radius:10px}
  .commerce-offer{padding:13px}
  .commerce-offer .commercial-business-chip{margin-bottom:10px}
  .commerce-offer .commercial-business-chip strong{font-size:13px}
  .commerce-offer .commercial-business-chip small{font-size:10px}
  .commerce-offer h1{font-size:23px;line-height:1.13}
  .commerce-offer .commercial-short-copy{font-size:12px}
  .commerce-availability-line{width:auto;margin-bottom:10px}
  .commerce-primary-actions{grid-template-columns:1fr 1fr;gap:6px}
  .commerce-primary-actions .btn:first-child{grid-column:1/-1}
  .commerce-primary-actions .btn{min-height:42px;font-size:11px}
  .commerce-social-strip{grid-template-columns:minmax(0,1fr) 42px;gap:6px}
  .commerce-social-strip .product-engagement .post-actions{gap:6px}
  .commerce-social-strip .product-engagement .post-actions>button,
  .commerce-social-strip .product-engagement .post-actions>a,
  .commerce-social-strip .product-engagement .reaction-picker>summary,
  .commerce-report-action{min-height:42px}
  .commerce-social-strip .action-label{font-size:10px}
  .commerce-social-strip .feed-action-count{font-size:10px}
  .commerce-body-grid{margin-top:7px;gap:7px}
  .commerce-report-modal .modal-dialog{max-width:none;margin:10px;align-items:flex-end;min-height:calc(100% - 20px)}
  .commerce-report-modal .modal-content{max-height:calc(100dvh - 20px);border-radius:16px}
  .commerce-report-modal .modal-body{overflow-y:auto;padding:16px}
  .commerce-report-modal .modal-header{padding:15px 16px}
  .commerce-report-modal .bp-form-actions{position:sticky;bottom:-16px;margin:4px -16px -16px;padding:10px 16px 14px;background:#fff;border-top:1px solid var(--ui-border)}
}

/* Acciones comerciales sin columnas vacías cuando WhatsApp no está disponible */
.commerce-primary-actions{display:flex;align-items:stretch;gap:6px}
.commerce-primary-actions .btn{flex:1 1 0}
.commerce-primary-actions .btn-brand{flex-grow:1.45}
@media(max-width:640px){
  .commerce-primary-actions{display:grid;grid-template-columns:1fr 1fr}
  .commerce-primary-actions .btn:first-child{grid-column:1/-1}
}

/* ===== Detalle comercial: legibilidad y objetivos táctiles canónicos ===== */
.commercial-detail-page :is(.btn,.commercial-action,.product-action,.promotion-action){min-height:42px}
.commercial-detail-page :is(.commercial-meta,.detail-meta,.product-meta,.promotion-meta,small){font-size:max(11px,1em)}
.commercial-detail-page :is(.commercial-description,.detail-description,.product-description,.promotion-description){font-size:13px;line-height:1.6}
@media(hover:hover) and (pointer:fine){.commercial-detail-page :is(.related-card,.commercial-related-card):hover{transform:translateY(-1px);box-shadow:0 9px 24px rgba(18,31,52,.07)}}
@media(max-width:767.98px){.commercial-detail-page :is(.btn,.commercial-action,.product-action,.promotion-action){min-height:44px}.commercial-detail-page :is(.commercial-description,.detail-description,.product-description,.promotion-description){font-size:13px}.commercial-detail-page :is(.commercial-meta,.detail-meta,.product-meta,.promotion-meta){font-size:11.5px}}

/* QA v1.8: controles comerciales legibles y táctiles. */
.commerce-primary-actions .btn,
.commerce-social-strip .product-engagement .post-actions>button,
.commerce-social-strip .product-engagement .post-actions>a,
.commerce-social-strip .product-engagement .reaction-picker>summary,
.commerce-report-action,
.promotion-detail-page .comment-reaction-picker>summary.comment-reaction-button,
.promotion-detail-page .comment-reaction-menu .comment-reaction-button,
.commerce-conversion-card .btn,.promotion-contact-request .btn,
.commerce-conversion-card :is(.form-control,.form-select),
.promotion-contact-request :is(.form-control,.form-select){min-height:44px}
.promotion-detail-page .comment-reaction-picker>summary.comment-reaction-button,
.promotion-detail-page .comment-reaction-menu .comment-reaction-button{min-width:44px;height:44px}
@media(hover:none){.commerce-report-action,.promotion-detail-page .comment-reaction-button{transform:none}}
