/* REDE Cotizador 1.0.2-lab-cierre-compacto: capa externa conservadora. No altera cálculos. */
.rede-cotizador-plugin,
.rede-cotizador-plugin * { box-sizing: border-box; }
.rede-cotizador-plugin { width: 100%; max-width: 100%; overflow-x: clip; }
.rede-cotizador-plugin img,
.rede-cotizador-plugin canvas { max-width: 100%; }
.rede-cotizador-error { padding: 18px; border: 1px solid #dc2626; background: #fff1f2; color: #991b1b; }

@media (max-width: 760px) {
  .rede-cotizador-plugin { overflow-x: hidden; }
  .rede-cotizador-plugin #re-cotizador-v38 { width: 100%; max-width: 100%; margin: 0; padding-left: 8px; padding-right: 8px; }
  .rede-cotizador-plugin #re-cotizador-v38 .step,
  .rede-cotizador-plugin #re-cotizador-v38 .hero,
  .rede-cotizador-plugin #re-cotizador-v38 #quoteCard { width: 100%; max-width: 100%; }
  .rede-cotizador-plugin #re-cotizador-v38 input,
  .rede-cotizador-plugin #re-cotizador-v38 select,
  .rede-cotizador-plugin #re-cotizador-v38 textarea,
  .rede-cotizador-plugin #re-cotizador-v38 button { max-width: 100%; }
  .rede-cotizador-plugin #re-cotizador-v38 .materialsWrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .rede-cotizador-plugin #re-cotizador-v38 .quoteTabs { display: grid; grid-template-columns: 1fr; }
  .rede-cotizador-plugin #re-cotizador-v38 .quoteTabs button { width: 100%; }
}


/* Cierre 1.0.2: Vista Cliente compacta en móvil y exportación aislada. */
@media (max-width: 760px) {
  .rede-cotizador-plugin #re-cotizador-v38 #quoteCard.clientQuote {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqHeaderFull {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1080 / 320;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqHeaderFull img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqPlanRibbon {
    right: 10px !important;
    bottom: 8px !important;
    padding: 7px 10px !important;
    border-left-width: 5px !important;
    font-size: 13px !important;
    max-width: calc(100% - 20px) !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqData {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto !important;
    align-items: start !important;
    width: 100% !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqDataItem,
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqDataItemEmail,
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqDataItemCity {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 9px 12px !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    grid-template-columns: 30px minmax(0,1fr) !important;
    gap: 8px !important;
    align-items: center !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqIcon {
    width: 28px !important;
    height: 28px !important;
    font-size: 14px !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqLabel {
    font-size: 10px !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqValue {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqMainTable {
    width: calc(100% - 12px) !important;
    margin: 8px 6px !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqMainTable th {
    font-size: 10px !important;
    padding: 8px 4px !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqMainTable td {
    height: auto !important;
    min-height: 0 !important;
    padding: 9px 6px !important;
    font-size: 12px !important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqPriceMain {
    font-size: 26px !important;
  }
}

/* Esta clase se usa solo en el clon invisible que genera el PNG. */
.rede-cotizador-export-clone {
  position: fixed !important;
  left: -20000px !important;
  top: 0 !important;
  width: 1080px !important;
  max-width: none !important;
  min-width: 1080px !important;
  margin: 0 !important;
  transform: none !important;
  overflow: visible !important;
  background: #fff !important;
  z-index: -99999 !important;
}
.rede-cotizador-export-clone .cqData {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  grid-auto-rows: auto !important;
  align-items: stretch !important;
}
.rede-cotizador-export-clone .cqDataItem {
  min-height: 62px !important;
  height: auto !important;
}
.rede-cotizador-export-clone .cqDataItemEmail { grid-column: 1 / 3 !important; }
.rede-cotizador-export-clone .cqDataItemCity { grid-column: 3 / 5 !important; }

/* REDE Cotizador 1.0.3: plantilla comercial exclusiva para Descargar PNG. */
.rede-cotizador-export-clone{
  width:1080px!important;
  min-width:1080px!important;
  max-width:1080px!important;
  padding:0!important;
  background:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
.redePngQuote{width:1080px;background:#fff;color:#111;overflow:hidden;border-radius:24px}
.rpqHero{position:relative;height:360px;background:#111;overflow:hidden}
.rpqHero img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;display:block!important;max-width:none!important}
.rpqPlan{position:absolute;left:0;bottom:0;background:#111;color:#fff;padding:18px 46px;font-size:29px;font-weight:900;letter-spacing:.4px;min-width:420px;border-right:12px solid #ffd400}
.rpqPlan span{color:#ffd400}
.rpqData{display:grid;grid-template-columns:repeat(3,1fr);padding:20px 24px;border:1px solid #ddd;border-radius:22px;margin:20px 20px 16px;gap:0;background:#fff}
.rpqDatum{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;min-height:86px;padding:12px 18px;border-right:1px solid #ddd;border-bottom:1px solid #eee}
.rpqDatum:nth-child(3n){border-right:0}.rpqDatum:nth-child(n+4){border-bottom:0}
.rpqIcon{width:42px;height:42px;border-radius:50%;background:#ffd400;display:flex;align-items:center;justify-content:center;font-size:21px;font-weight:900}
.rpqDatum small{display:block;font-size:16px;letter-spacing:.4px;color:#333;margin-bottom:5px}.rpqDatum strong{display:block;font-size:22px;line-height:1.15;overflow-wrap:anywhere}
.rpqMain{margin:0 20px 16px;border:1px solid #d2d2d2;border-radius:18px;overflow:hidden}
.rpqHead,.rpqBody{display:grid;grid-template-columns:16% 50% 34%;align-items:stretch}
.rpqHead{background:#111;color:#fff;font-size:20px;font-weight:900;text-align:center}.rpqHead span{padding:16px 10px;border-right:1px solid #fff}.rpqHead span:last-child{border-right:0}
.rpqBody{min-height:126px}.rpqBody>strong{display:flex;align-items:center;justify-content:center;padding:22px 18px;border-right:1px solid #ddd;font-size:24px;line-height:1.25}.rpqBody>strong:nth-child(2){justify-content:flex-start;text-transform:uppercase;font-size:25px}.rpqBody>strong:last-child{border-right:0;font-size:48px}
.rpqColumns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 20px 16px;align-items:stretch}
.rpqIncludes,.rpqTotals{border:2px solid #111;border-radius:18px;overflow:hidden;background:#fff}
.rpqIncludes h3{margin:0;background:#ffd400;padding:14px;text-align:center;font-size:27px;letter-spacing:.5px}.rpqIncludes>div{padding:10px 20px}
.rpqIncludeRow{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;border-bottom:1px dotted #aaa;padding:10px 0;font-size:19px}.rpqIncludeRow:last-child{border-bottom:0}.rpqIncludeRow span{width:22px;height:22px;border-radius:50%;background:#ffd400;display:flex;align-items:center;justify-content:center;font-size:13px}
.rpqTotals>div{display:grid;grid-template-columns:1fr auto;align-items:center;padding:18px 24px;border-bottom:1px solid #ddd;font-size:22px}.rpqTotals>div:last-child{border-bottom:0}.rpqTotals span{font-size:23px}
.rpqGrand{background:#ffd400!important;padding:24px!important}.rpqGrand b{font-size:27px}.rpqGrand strong{font-size:43px}
.rpqObs{margin:0 20px 16px;border:1px solid #ddd;border-radius:18px;padding:18px 24px}.rpqObs h3{font-size:23px;margin:0 0 9px}.rpqObs ul{margin:0;padding-left:24px}.rpqObs li{font-size:18px;line-height:1.4;margin:4px 0}.rpqObs li::marker{color:#ffd400}
.rpqFooter{display:grid;grid-template-columns:1.35fr .75fr .9fr;gap:18px;align-items:center;background:#111;color:#fff;padding:24px 38px;border-top:6px solid #ffd400}
.rpqFooter>div:first-child strong{display:block;font-size:30px}.rpqFooter>div:first-child span{display:block;font-size:19px;margin-top:6px}.rpqFooter small{display:block;color:#ffd400;font-size:15px;margin-top:4px}
.rpqGuarantee,.rpqWhatsapp{display:flex;gap:12px;align-items:center;border-left:1px solid #666;padding-left:22px}.rpqGuarantee b{width:48px;height:48px;border-radius:50%;background:#ffd400;color:#111;display:flex;align-items:center;justify-content:center;font-size:26px}.rpqGuarantee span,.rpqWhatsapp span{font-size:17px;line-height:1.25}.rpqWhatsapp{display:block}.rpqWhatsapp b{display:block;color:#ffd400;font-size:22px;margin-bottom:5px}
.rpqThanks{background:#ffd400;text-align:center;padding:11px;font-size:15px;font-weight:900;letter-spacing:.5px}

/* REDE Cotizador 1.0.4: cierre PNG aprobado y vista cliente compacta. */
@media (max-width:760px){
  .rede-cotizador-plugin #re-cotizador-v38 #quoteCard.clientQuote{
    margin-left:-8px!important;
    margin-right:-8px!important;
    width:calc(100% + 16px)!important;
    max-width:none!important;
    border-radius:0!important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqBottom{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqIncludeRow{
    font-size:15px!important;
    padding:10px 8px!important;
  }
  .rede-cotizador-plugin #re-cotizador-v38 .clientQuote .cqNotes{
    padding:0 6px 10px!important;
  }
}

/* PNG 1.0.4: menos blanco, letra mayor y composición vertical compacta. */
.rpqHero{height:340px}
.rpqData{margin:16px 20px 14px;padding:14px 20px}
.rpqDatum{min-height:74px;padding:9px 15px}
.rpqDatum small{font-size:15px}.rpqDatum strong{font-size:21px}
.rpqMain{margin-bottom:14px}.rpqBody{min-height:112px}
.rpqColumns{margin-bottom:14px}.rpqIncludes>div{padding:8px 18px}
.rpqIncludeRow{padding:8px 0;font-size:19px}
.rpqTotals>div{padding:18px 24px}.rpqGrand{min-height:118px}
.rpqObs{padding:14px 22px;margin-bottom:14px}.rpqObs li{font-size:17px;line-height:1.32}
.rpqFooter{padding:20px 34px}.rpqThanks{padding:9px}
