
/* Product card */
.sap-card{
  /* Safety: never let the card (or anything after it) wrap around floats */
  float:none !important;
  clear:both;
  width:100%;
  box-sizing:border-box;
  display:flex;
  gap:18px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:14px;
  padding:18px;
  max-width: 860px;
  background:#fff;
}

/* Ensure any legacy theme float rules can't collapse the layout */
.sap-card::after{
  content:"";
  display:block;
  clear:both;
}


.sap-left{ width:220px; flex:0 0 220px; }
.sap-mainImg{
  width:100%;
  height:auto;
  border-radius:12px;
  display:block;
  border:1px solid rgba(0,0,0,.10);
}

.sap-thumbs{
  margin-top:10px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.sap-thumbBtn{
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  border-radius:10px;
  padding:4px;
  cursor:pointer;
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.sap-thumbBtn.is-active{
  border-color: rgba(0,0,0,.35);
}
.sap-thumbImg{
  width:44px;
  height:44px;
  object-fit:cover;
  border-radius:8px;
  display:block;
}

.sap-right{ flex:1; min-width:0; }

.sap-title{
  font-size:22px;
  font-weight:800;
  margin:2px 0 10px;
  line-height:1.15;
}

.sap-line{
  font-size:14px;
  margin:6px 0;
  color:#111;
}

.sap-label{ font-weight:700; margin-right:6px; }
.sap-asof{ color: rgba(0,0,0,.65); margin-left:8px; font-size:13px; }

.sap-actions{ margin-top:12px; }

.sap-btn{
  display:inline-block;
  padding:10px 16px;
  border-radius:12px;
  background:#111827;
  color:#fff;
  text-decoration:none;
  font-weight:700;
}
.sap-btn:hover{ opacity:.92; }

.sap-disclaimer{
  margin-top:10px;
  font-size:12px;
  color: rgba(0,0,0,.60);
}

/* Details tooltip */
.sap-details{
  position:relative;
  display:inline-flex;
  align-items:center;
  margin-left:10px;
  font-size:13px;
  color:#2563eb;
  cursor:help;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.sap-details:focus{ outline: none; }
.sap-tip{
  position:absolute;
  left:0;
  top: 22px;
  width: 360px;
  max-width: 75vw;
  background:#111827;
  color:#fff;
  padding:10px 12px;
  border-radius:12px;
  font-size:12px;
  line-height:1.35;
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
  display:none;
  z-index: 9999;
}
.sap-details:hover .sap-tip,
.sap-details:focus .sap-tip{
  display:block;
}

/* Mobile */
@media (max-width: 640px){
  .sap-card{ flex-direction:column; }
  .sap-left{ width:100%; flex:0 0 auto; }
  .sap-tip{ width: 92vw; }
}


/* Comparison Posts */
.sap-compare{
  max-width: 900px;
  margin: 0 auto;
}
.sap-compare-text{
  margin: 0 0 18px 0;
}
.sap-card--compare{
  margin: 18px 0;
}
.sap-stars{
  display:inline-flex;
  gap:2px;
  font-size: 16px;
  line-height: 1;
  vertical-align: middle;
}
.sap-ratingLine{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.sap-desc{
  margin-top: 10px;
}
.sap-star{
  display:inline-block;
}


/* ===========================
   Comparison Posts (multi-product)
   =========================== */
.sap-compare{max-width:900px;margin:0 auto;padding:16px 12px;}
.sap-compare-text{margin:16px 0;font-size:16px;line-height:1.6;}
.sap-card--compare{margin:16px 0;}

.sap-compare-summary{margin:18px 0 22px 0;padding:14px;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:rgba(0,0,0,.02);}
.sap-compare-summaryTitle{font-weight:700;font-size:16px;margin:0 0 10px 0;}
.sap-compare-summaryWrap{overflow:auto;}
.sap-compare-table{width:100%;border-collapse:collapse;min-width:640px;}
.sap-compare-table th,.sap-compare-table td{padding:10px 10px;border-bottom:1px solid rgba(0,0,0,.08);text-align:left;vertical-align:middle;}
.sap-compare-table th{font-size:13px;opacity:.85;}
.sap-ct-colRating{width:160px;}
.sap-ct-colPrice{width:120px;}
.sap-ct-colLink{width:160px;text-align:right;}
.sap-ct-link{text-align:right;}
.sap-ct-rating .sap-stars{white-space:nowrap;margin-right:8px;display:inline-block;}
.sap-ct-ratingNum{font-size:13px;opacity:.8;}
.sap-btn--small{padding:8px 12px;font-size:13px;border-radius:999px;}
.sap-muted{opacity:.6;}

@media (max-width:700px){
  .sap-compare{padding:12px 10px;}
}

/* =========================================================
   ClickBank Offer Card (same base as .sap-card)
   ========================================================= */
.sap-card--cb{}

/* ClickBank card uses an inner wrapper so image + body align nicely */
.sap-card--cb .sap-card__inner{
  display:flex;
  gap:18px;
  width:100%;
  align-items:flex-start;
}

.sap-card--cb .sap-img{
  width:220px;
  max-width:220px;
  height:auto;
  border-radius:12px;
  display:block;
  border:1px solid rgba(0,0,0,.10);
}

.sap-card--cb .sap-body{ flex:1 1 auto; min-width:0; }
.sap-card--cb .sap-title{ font-size:18px; font-weight:700; margin:0 0 8px; }
.sap-card--cb .sap-desc{ font-size:14px; line-height:1.5; margin:0 0 14px; opacity:.92; }
.sap-card--cb .sap-actions{ display:flex; gap:10px; align-items:center; }

/* Disclosure text (optional) */
.sap-card--cb .sap-disclosure{
  margin-top:10px;
  font-size:12px;
  opacity:.85;
}

/* =========================================================
   ClickBank CTA (auto-appended to bottom of post content)
   ========================================================= */
.mp-cb-cta{
  /* Safety: prevent theme floats from pushing next sections beside the CTA */
  float:none !important;
  clear:both;
  width:100%;
  box-sizing:border-box;
  margin:28px 0 0;
  padding:0;
}

.mp-cb-cta__inner{
  border:1px solid rgba(0,0,0,.12);
  border-radius:14px;
  padding:22px;
  background:#fff;
  max-width: 860px;
}

.mp-cb-cta__headline{
  margin:0 0 10px;
  font-size:20px;
  font-weight:800;
}

.mp-cb-cta__text{
  margin:0 0 16px;
  font-size:15px;
  line-height:1.6;
}

.mp-cb-cta__btn{ margin:0; }
.mp-cb-cta__button{
  display:inline-block;
  text-decoration:none;
  padding:12px 18px;
  border-radius:999px;
  font-weight:700;
}

/* If your theme already styles .button.button-primary, this is a safe fallback */
.mp-cb-cta__button.button.button-primary{
  background:#2563eb;
  color:#fff;
}

/* Mobile */
@media (max-width: 600px){
  .sap-card--cb .sap-card__inner{ flex-direction:column; }
  .sap-card--cb .sap-img{ width:100%; max-width:100%; }
}


/* Affiliate disclosure (shared) */
.mp-aff-disclosure{
  clear: both;
  width: 100%;
  margin: 12px 0;
  font-size: 13px;
  line-height: 1.4;
  opacity: .85;
}


/* ClickBank linked content image (auto-inserted) */
.mp-cb-content-img{
  clear: both;
  width: 100%;
  margin: 16px 0;
}
.mp-cb-content-img img{
  max-width: 100%;
  height: auto;
  display: block;
}
