/* MVP Deals Widget styles */
.mvpdeals {
  border-radius: 16px;
  padding: 14px;
  border: 1px solid rgba(0,0,0,.12);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.mvpdeals--dark {
  background: #0b0f14;
  color: #e8eef6;
  border-color: rgba(255,255,255,.10);
}

.mvpdeals--light {
  background: #ffffff;
  color: #101318;
}

.mvpdeals__header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}

.mvpdeals__title {
  font-weight: 800;
  font-size: 18px;
  line-height: 1.2;
}

.mvpdeals__meta {
  font-size: 12px;
  opacity: .75;
}

.mvpdeals__tabs {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 6px 4px 10px;
  margin-bottom: 12px;
  scrollbar-width: none; /* Firefox */
}

.mvpdeals__tabs::-webkit-scrollbar { display: none; }

.mvpdeals__tab {
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.80);
  border-radius: 999px;
  padding: 8px 12px;
  font-weight: 700;
  font-size: 13px;
  cursor: pointer;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(0,0,0,.06);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}

.mvpdeals__tab:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0,0,0,.10);
}

.mvpdeals__tab:active {
  transform: translateY(0);
  box-shadow: 0 6px 16px rgba(0,0,0,.08);
}

.mvpdeals__tab:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,0,0,.10), 0 10px 22px rgba(0,0,0,.10);
}

.mvpdeals--dark .mvpdeals__tab {
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: #e8eef6;
  box-shadow: 0 6px 16px rgba(0,0,0,.35);
}

.mvpdeals--dark .mvpdeals__tab:hover {
  box-shadow: 0 10px 22px rgba(0,0,0,.45);
}

.mvpdeals__tab.is-active {
  background: linear-gradient(135deg, #0b2f6f 0%, #0a3f9a 55%, #0b61d8 100%);
  color: #ffffff;
  border-color: rgba(0,0,0,0);
  box-shadow: 0 6px 18px rgba(11,47,111,.28), inset 0 1px 0 rgba(255,255,255,.22);
}

.mvpdeals__tab.is-active:hover {
  filter: brightness(1.05);
}

.mvpdeals__tab.is-active:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(79,163,255,.42), 0 6px 18px rgba(11,47,111,.28);
}

.mvpdeals--dark .mvpdeals__tab.is-active {
  background: linear-gradient(135deg, rgba(11,47,111,.92) 0%, rgba(10,63,154,.92) 55%, rgba(11,97,216,.92) 100%);
  color: #ffffff;
  border-color: rgba(255,255,255,.18);
  box-shadow: 0 0 0 3px rgba(79,163,255,.18), 0 12px 24px rgba(0,0,0,.45);
}

.mvpdeals--dark .mvpdeals__tab:focus-visible {
  box-shadow: 0 0 0 3px rgba(255,255,255,.14), 0 12px 24px rgba(0,0,0,.55);
}
.mvpdeals__pane { display: none; }
.mvpdeals__pane.is-active { display: block; }

.mvpdeals__card {
  border-radius: 14px;
  padding: 12px;
  border: 1px solid rgba(0,0,0,.12);
  background: rgba(0,0,0,.02);
}
  transition: opacity 0.22s ease;

.mvpdeals--dark .mvpdeals__card {
  border-color: rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}

/* Card background image support */
.mvpdeals__card.has-bg{
  position: relative;
  overflow: hidden;
  background-image: var(--mvp-bg);
  background-size: cover;
  background-position: center;
}
.mvpdeals__card.has-bg::before{
  content: "";
  position: absolute;
  inset: 0;
  /* Light overall lift so black text stays readable */
  background: rgba(255,255,255,0.28);
  pointer-events: none;
  z-index: 0;
}

/* “Reading panel” behind the text content area */
.mvpdeals__card.has-bg .mvpdeals__cardContent{
  background: rgba(255,255,255,0.88);
  border-radius: 14px;
  padding: 12px;
}

.mvpdeals__card.has-bg > *{
  position: relative;
  z-index: 1;
}


.mvpdeals__cardTop {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start; /* lets multi-line brand name align nicely */
}

.mvpdeals__brand {
  display: flex;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.mvpdeals__logo {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  object-fit: cover;
}

.mvpdeals__brandName {
  font-weight: 800;
  font-size: 14px;
  line-height: 1.15;
  /* Allow 2-line wrap on smaller screens instead of ugly truncation */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
}

.mvpdeals__badge {
  font-size: 11px;
  font-weight: 800;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.12);
  opacity: .9;

  /* Responsive: don't wrap; shrink gracefully */
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 52%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mvpdeals__badge--overlay{
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  max-width: calc(100% - 20px);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  backdrop-filter: blur(6px);
}

/* Badge overlay: match active tab styling for strong contrast on images */
.mvpdeals__badge--overlay{
  background: linear-gradient(135deg, #0b2f6f 0%, #0a3f9a 55%, #0b61d8 100%);
  color: #ffffff;
  border: 0;
  opacity: .98;
  box-shadow: 0 8px 18px rgba(11,47,111,.28), inset 0 1px 0 rgba(255,255,255,.22);
}

.mvpdeals--dark .mvpdeals__badge--overlay{
  border-color: rgba(255,255,255,.18);
}

.mvpdeals--dark .mvpdeals__badge {
  border-color: rgba(255,255,255,.12);
}

.mvpdeals__headline {
  margin-top: 8px;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.15;

  /* Allow headline to use the dedicated space (avoid theme nowrap/ellipsis)
     Clamp to keep CTA visible and cards tidy. */
  white-space: normal;
  overflow: hidden;
  text-overflow: clip;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.mvpdeals__subheadline {
  margin-top: 4px;
  font-size: 13px;
  opacity: .85;

  /* Responsive wrapping within available space */
  white-space: normal;
  overflow: hidden;
  text-overflow: clip;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.mvpdeals__bullets {
  margin: 6px 0 0 18px;
  padding: 0;
  font-size: 13px;
  line-height: 1.35;
  opacity: .95;

  /* Prevent theme rules from forcing single-line truncation */
  white-space: normal;
  overflow: hidden;
  text-overflow: clip;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

/* =====================================================
   THEME-SAFE TEXT CLAMP HARD FIX
   Some partner themes apply aggressive `white-space:nowrap`
   and ellipsis rules. Force our intended responsive behavior.
   ===================================================== */
.mvpdeals .mvpdeals__brandName,
.mvpdeals .mvpdeals__headline,
.mvpdeals .mvpdeals__subheadline,
.mvpdeals .mvpdeals__bullets{
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: clip !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
}

.mvpdeals .mvpdeals__brandName{ -webkit-line-clamp: 2 !important; }
.mvpdeals .mvpdeals__headline{ -webkit-line-clamp: 2 !important; }
.mvpdeals .mvpdeals__subheadline{ -webkit-line-clamp: 2 !important; }
.mvpdeals .mvpdeals__bullets{ -webkit-line-clamp: 3 !important; }

/* Mobile: most traffic is mobile, so allow more text before truncating
   while keeping the card height controlled. */
@media (max-width: 520px){
  .mvpdeals__brandName{ -webkit-line-clamp: 2 !important; font-size: 13px; }
  .mvpdeals__headline{ -webkit-line-clamp: 3 !important; font-size: 14px; }
  .mvpdeals__subheadline{ -webkit-line-clamp: 3 !important; font-size: 12.5px; }
  .mvpdeals__bullets{ -webkit-line-clamp: 4 !important; font-size: 12.5px; }
  .mvpdeals__cta{ font-size: 13px; padding: 10px 12px; }
}

.mvpdeals__actions {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 8px;
}

.mvpdeals__cta {
  display: inline-block;
  text-decoration: none;
  font-weight: 900;
  font-size: 13px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.12);
}

.mvpdeals--dark .mvpdeals__cta {
  border-color: rgba(255,255,255,.12);
}

.mvpdeals__terms {
  font-size: 12px;
  text-decoration: none;
  opacity: .8;
}

.mvpdeals__disclaimer {
  margin-top: 8px;
  font-size: 11px;
  opacity: .75;
}


/* Panes can show a swipe/scroll hint when the cards overflow */
.mvpdeals__pane{ position: relative; }

/* Hidden by default; JS will enable when overflow is detected */
.mvpdeals__swipeHint{ display: none; }

.mvpdeals__pane.mvpdeals--hasOverflow .mvpdeals__swipeHint{
  position: absolute;
  right: 10px;
  bottom: 14px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .2px;
  opacity: .86;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.12);
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(6px);
  box-shadow: 0 8px 18px rgba(0,0,0,.10);
  pointer-events: none;
}

.mvpdeals__swipeHint::after{
  content: "››";
  display: inline-block;
  font-weight: 900;
  line-height: 1;
  transform: translateX(0);
  animation: mvpdealsSwipeNudge 1.1s ease-in-out infinite;
}

@keyframes mvpdealsSwipeNudge{
  0%{ transform: translateX(0); opacity: .65; }
  50%{ transform: translateX(4px); opacity: 1; }
  100%{ transform: translateX(0); opacity: .65; }
}

.mvpdeals--dark .mvpdeals__pane.mvpdeals--hasOverflow .mvpdeals__swipeHint{
  border-color: rgba(255,255,255,.12);
  background: rgba(11,15,20,.70);
  box-shadow: 0 10px 22px rgba(0,0,0,.35);
}

/* Subtle right-edge fade to suggest horizontal scroll */
.mvpdeals__pane.mvpdeals--hasOverflow::after{
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 46px;
  pointer-events: none;
  z-index: 2;
}
.mvpdeals--light .mvpdeals__pane.mvpdeals--hasOverflow::after{
  background: linear-gradient(to left, rgba(255,255,255,0.95), rgba(255,255,255,0));
}
.mvpdeals--dark .mvpdeals__pane.mvpdeals--hasOverflow::after{
  background: linear-gradient(to left, rgba(11,15,20,0.95), rgba(11,15,20,0));
}


/* Cards: horizontal scroll (desktop + mobile) */
.mvpdeals__cards{
  display: flex;
  gap: 12px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  padding-bottom: 6px;
}

.mvpdeals__card{
  flex: 0 0 auto;
  min-width: clamp(260px, 86vw, 360px);
  scroll-snap-align: start;
}


/* optional: keep scrollbars subtle */
.mvpdeals__cards::-webkit-scrollbar{ height: 10px; }
.mvpdeals__cards::-webkit-scrollbar-thumb{
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: content-box;
  background: rgba(0,0,0,.18);
}
.mvpdeals--dark .mvpdeals__cards::-webkit-scrollbar-thumb{ background: rgba(255,255,255,.18); }


/* Header brand logo */
.mvpdeals__header{ background: var(--mvp-header-bg); padding: 10px 16px; border-radius: 14px 14px 0 0; display:flex; align-items:center; justify-content:flex-start; gap:10px; }
.mvpdeals__brandLogo{ height:46px; max-height:46px; width:auto; object-fit:contain; display:block; }
.mvpdeals__brandText{
  display:none;
}


/* ===== MVP Deals: Brand header theming (v3.7.5) ===== */
.mvpdeals{ --mvp-header-bg:#072B75; }
.mvpdeals__header{ background: var(--mvp-header-bg); padding: 10px 16px; border-radius: 14px 14px 0 0; display:flex; align-items:center; justify-content:flex-start; gap:10px; }
.mvpdeals__brandLogo{ height:46px; max-height:46px; width:auto; object-fit:contain; display:block; }
.mvpdeals__brandText{ color:#fff; font-weight:800; letter-spacing:0.2px; display:none; }


/* Lead modal (API Lead deals) */
.mvpdeals__modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.65);z-index:2147483647;}
.mvpdeals__modalPanel{width:min(720px,96vw);height:min(680px,92vh);background:#fff;border-radius:18px;box-shadow:0 18px 60px rgba(0,0,0,.35);overflow:hidden;position:relative;}
.mvpdeals__modalClose{position:absolute;top:10px;right:10px;width:42px;height:42px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#fff;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.10);}
.mvpdeals__modalFrame{width:100%;height:100%;border:0;}

.mvpdeals__cta.is-lead{cursor:pointer;}

/* =====================================================
   MVP DEALS – TAB TEXT VISIBILITY HARD FIX (THEME SAFE)
   Prevents theme CSS from hiding inactive tab text
   ===================================================== */

.mvpdeals .mvpdeals__tabs .mvpdeals__tab {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.mvpdeals .mvpdeals__tabs .mvpdeals__tab.is-active {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.mvpdeals .mvpdeals__tabs .mvpdeals__tab * {
  color: inherit !important;
}


/* ===== Card style variants (test) ===== */

.mvpdeals__card.mvpdeals__card--hero{
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  background: transparent;
}
.mvpdeals__card.mvpdeals__card--hero.has-bg{
  min-height: 220px;
}
.mvpdeals__card.mvpdeals__card--hero.has-bg::before{
  background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.18) 55%, rgba(255,255,255,0.05) 100%);
}
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__cardContent{
  background: transparent !important;
  padding: 12px;
  border-radius: 0;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  color: #fff;
}
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__brandName,
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__headline,
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__subheadline{
  color: #fff;
}
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__subheadline{ opacity: .9; }
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__bullets{ display:none; }
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__badge{
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.22);
  color: #fff;
}
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__logo{
  border: 1px solid rgba(255,255,255,.25);
}
.mvpdeals__card.mvpdeals__card--hero .mvpdeals__cta{
  width: 100%;
  justify-content: center;
  font-weight: 800;
  border-radius: 14px;
}

.mvpdeals__card.mvpdeals__card--split{
  display: flex;
  gap: 12px;
  padding: 12px;
  border-radius: 16px;
  background: #fff;
}
.mvpdeals--dark .mvpdeals__card.mvpdeals__card--split{
  background: rgba(255,255,255,.06);
}
.mvpdeals__card.mvpdeals__card--split .mvpdeals__media{
  cursor: pointer;
  width: 50%;
  min-width: 170px;
  border-radius: 14px;
  position: relative;
  overflow: hidden;

  /* 300x250 (6:5) creative shape */
  aspect-ratio: 6 / 5;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: rgba(0,0,0,.04);
}
.mvpdeals__card.mvpdeals__card--split .mvpdeals__cardContent{
  background: transparent;
  padding: 0;
  border-radius: 0;
  flex: 1;
  min-width: 0;
}

.mvpdeals__card.mvpdeals__card--split .mvpdeals__headline{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}


/* Split style typography + responsive wrapping
   Goal: only the deal headline is single-line; other text adapts naturally. */
.mvpdeals__card.mvpdeals__card--split .mvpdeals__brandName{
  font-size: 13px;
  line-height: 1.15;
  -webkit-line-clamp: 2;
}

.mvpdeals__card.mvpdeals__card--split .mvpdeals__headline{
  font-size: 15px;
  line-height: 1.15;
}

.mvpdeals__card.mvpdeals__card--split .mvpdeals__subheadline{
  font-size: 12.5px;
  line-height: 1.25;
  opacity: .86;
  /* Allow up to 2 lines; keeps CTA visible without forcing one-line truncation */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mvpdeals__card.mvpdeals__card--split .mvpdeals__bullets{
  margin: 8px 0 0;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 12.5px;
  line-height: 1.32;
}

.mvpdeals__card.mvpdeals__card--split .mvpdeals__bullets li{
  white-space: normal;
  overflow-wrap: anywhere;
}

.mvpdeals__card.mvpdeals__card--split .mvpdeals__cta{
  width: 100%;
  justify-content: center;
  font-weight: 800;
  border-radius: 14px;
}

/* Split layout: make content column so text can use available space and CTA stays visible */
.mvpdeals__card.mvpdeals__card--split .mvpdeals__cardContent{
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.mvpdeals__card.mvpdeals__card--split .mvpdeals__actions{
  margin-top: auto;
  padding-top: 10px;
}



.mvpdeals--dark .mvpdeals__card.mvpdeals__card--split .mvpdeals__media{
  background-color: rgba(255,255,255,.06);
}



@media (max-width: 520px){
  .mvpdeals__card.mvpdeals__card--split{
    gap: 10px;
  }
  .mvpdeals__card.mvpdeals__card--split .mvpdeals__media{
    width: 46%;
    min-width: 140px;
  }
  .mvpdeals__badge{
    max-width: 60%;
    font-size: 10.5px;
    padding: 5px 9px;
  }
  .mvpdeals__headline{
    font-size: 15px;
  }
}



/* UX hint above tabs */
.mvpdeals__hint{
  font-weight:800;
  font-size:16px;
  letter-spacing:0.4px;
  color:#0d3b66;
  margin:6px 0 12px 0;
  line-height:1.2;
}
@media (max-width: 480px){
  .mvpdeals__hint{font-size:14px;margin-bottom:10px;}
}

/* Tab nudge animation */
@keyframes mvpTabNudge{0%{transform:translateY(0)}25%{transform:translateY(-1px)}50%{transform:translateY(0)}75%{transform:translateY(-1px)}100%{transform:translateY(0)}}
.mvpdeals__tabs.mvpdeals__tabs--nudge .mvpdeals__tab{
  animation:mvpTabNudge .9s ease-in-out 0s 3;
}


/* Badge overlay: match active tab style (blue + white) */
.mvpdeals__card .mvpdeals__badge{
  background:#0b4ea2;
  color:#fff;
  border:0;
  box-shadow:0 2px 10px rgba(0,0,0,.18);
}


/* Subtle pulse to hint Top Deals tab is interactive */
.mvpdeals__tab--pulse{
  animation: mvpPulse 1.4s ease-out 2;
}
@keyframes mvpPulse{
  0%{ box-shadow: 0 0 0 0 rgba(13,59,102,0.45); }
  70%{ box-shadow: 0 0 0 6px rgba(13,59,102,0); }
  100%{ box-shadow: 0 0 0 0 rgba(13,59,102,0); }
}


/* Mobile micro-copy under tabs */
.mvpdeals__tapHint{
  display:none;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2px;
  opacity: .85;
  margin: 6px 2px 10px 2px;
}
@media (max-width: 767px){
  .mvpdeals__tapHint{ display:block; }
}

/* ==== Anti-degradation shell (hide placeholders until loaded) ==== */
.mvpdeals-shell{
  margin: 16px 0;
  min-height: 360px;
}
@media (max-width: 768px){
  .mvpdeals-shell{ min-height: 320px; }
}

/* While pending, hide any visible scaffolding inside widget */
.mvpdeals--pending .mvpdeals__header,
.mvpdeals--pending .mvpdeals__tabs,
.mvpdeals--pending .mvpdeals__panes,
.mvpdeals--pending .mvpdeals__disclaimer,
.mvpdeals--pending .mvpdeals__loading{
  display:none !important;
}


/* Placement safety wrapper (for inline ad slot injection) */
.mvp-widget-zone{ display:block; width:100%; max-width:100%; margin:24px 0; clear:both; }

.mvpdeals__headerTitle{font-weight:700;font-size:14px;line-height:1.2;}
