/* TrendPret UI fixes (night-mode contrast, offer highlight, MVP lists)
   Safe to include after /assets/app.css */

/* Night mode: improve general text contrast inside light panels */
[data-theme="night"] .tp-card,
[data-theme="night"] .card,
[data-theme="night"] .tp-panel {
  color: rgba(255,255,255,0.92);
}

/* Offer highlight row: ensure text readable even if template adds text-white */
[data-theme="night"] .tp-offer-best,
[data-theme="night"] .tp-offer-bestrow,
[data-theme="night"] .tp-best-row,
[data-theme="night"] .bg-success-subtle {
  color: #0b1b11 !important;
}
[data-theme="night"] .tp-offer-best *,
[data-theme="night"] .tp-offer-bestrow *,
[data-theme="night"] .tp-best-row *,

/* Keep buttons readable */
[data-theme="night"] .tp-offer-best .btn,
[data-theme="night"] .tp-offer-bestrow .btn,
[data-theme="night"] .tp-best-row .btn,
[data-theme="night"] .bg-success-subtle .btn {
  color: #fff !important;
}
/* Slightly adjust background for night mode so the band doesn't glare */
[data-theme="night"] .tp-offer-best,
[data-theme="night"] .tp-offer-bestrow,
[data-theme="night"] .tp-best-row,
[data-theme="night"] .bg-success-subtle {
  background-color: rgba(25, 135, 84, 0.25) !important;
  border-color: rgba(25, 135, 84, 0.35) !important;
}

/* Explain "scor" chips a bit better when used on index cards */
.tp-score-help {
  font-size: 0.85rem;
  opacity: 0.85;
}

/* MVP lists: better spacing and readability */
.tp-mvp-list .list-group-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}
.tp-mvp-list .tp-mvp-title {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tp-mvp-list .tp-mvp-price {
  font-weight: 700;
  white-space: nowrap;
}


/* Night mode: keep best-offer row readable */
[data-theme="night"] .tp-offer-best,
[data-theme="night"] .tp-offer-bestrow,
[data-theme="night"] .tp-best-row,
[data-theme="night"] .bg-success-subtle {
  color: rgba(255,255,255,0.92) !important;
}
[data-theme="night"] .tp-offer-best *,
[data-theme="night"] .tp-offer-bestrow *,
[data-theme="night"] .tp-best-row *,
[data-theme="night"] .bg-success-subtle * {
  color: rgba(255,255,255,0.92) !important;
}


.tp-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:992px){.tp-account-grid{grid-template-columns:1fr;}}

/* Merchants grid (home) */
.tp-merchant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
@media(max-width:992px){.tp-merchant-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.tp-merchant-grid{grid-template-columns:1fr;}}
.tp-merchant{border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:6px;min-height:92px;}
[data-theme="day"] .tp-merchant{border-color:rgba(0,0,0,0.08);}
.tp-merchant-logo{width:56px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.10);}
[data-theme="day"] .tp-merchant-logo{background:rgba(0,0,0,0.04);border-color:rgba(0,0,0,0.06);}
.tp-merchant-logo img{max-width:100%;max-height:100%;display:block;}
.tp-merchant-logo span{font-weight:800;opacity:.85;}
.tp-merchant-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tp-merchant-domain{font-size:.85rem;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* Unified product card */
.tp-pcard{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid rgba(0,0,0,0.08);border-radius:18px;text-decoration:none;color:inherit;background:rgba(255,255,255,0.03);}
[data-theme="day"] .tp-pcard{background:#fff;border-color:rgba(0,0,0,0.08);}
[data-theme="night"] .tp-pcard{border-color:rgba(255,255,255,0.08);}
.tp-pcard:hover{transform:translateY(-1px);transition:transform .15s ease;}
.tp-pcard-thumb{width:72px;height:72px;border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.03);flex:0 0 auto;}
[data-theme="night"] .tp-pcard-thumb{background:rgba(255,255,255,0.06);} 
.tp-pcard-thumb img{width:100%;height:100%;object-fit:contain;display:block;}
.tp-pcard-body{flex:1;min-width:0;}
.tp-pcard-title{font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none;}
.tp-pcard-title{font-weight:550;letter-spacing:.1px;}
.tp-pcard-meta{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:.9rem;opacity:.85;}
.tp-mlogo{width:18px;height:18px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:rgba(0,0,0,0.06);}
[data-theme="night"] .tp-mlogo{background:rgba(255,255,255,0.08);} 
.tp-mlogo img{width:100%;height:100%;object-fit:contain;}
.tp-pcard-merchant{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tp-pcard-side{white-space:nowrap;}
.tp-bestprice{padding:6px 10px;border-radius:999px;background:rgba(25,135,84,0.12);border:1px solid rgba(25,135,84,0.18);font-weight:700;}
.tp-product-head{display:grid;grid-template-columns:160px 1fr;gap:24px;align-items:start;}
@media (max-width: 768px){.tp-product-head{grid-template-columns:1fr;}}
.tp-product-thumb{width:160px;height:160px;border-radius:22px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.03);}
[data-theme="night"] .tp-product-thumb{background:rgba(255,255,255,0.06);}
.tp-product-thumb img{width:100%;height:100%;object-fit:contain;display:block;}
.tp-product-main{min-width:0;}
.tp-mlogo-lg{width:40px;height:40px;border-radius:14px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:rgba(0,0,0,0.03);}
[data-theme="night"] .tp-mlogo-lg{background:rgba(255,255,255,0.06);} 
.tp-mlogo-lg img{width:100%;height:100%;object-fit:contain;display:block;}

.tp-price-big{font-weight:800;letter-spacing:.2px;}
.tp-price-best{font-weight:900;padding:6px 10px;border-radius:999px;background:rgba(25,135,84,0.14);border:1px solid rgba(25,135,84,0.22);display:inline-block;}

.tp-merchant-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid rgba(0,0,0,0.08);border-radius:18px;background:linear-gradient(135deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));color:inherit;}
[data-theme="day"] .tp-merchant-card{background:linear-gradient(135deg,#fff,#f6f8ff);}
[data-theme="night"] .tp-merchant-card{border-color:rgba(255,255,255,0.10);} 
.tp-merchant-logo{width:56px;height:56px;border-radius:16px;}
.tp-pill{padding:4px 8px;border-radius:999px;font-size:.8rem;border:1px solid rgba(255,255,255,0.10);background:rgba(255,255,255,0.06);}
[data-theme="day"] .tp-pill{border-color:rgba(0,0,0,0.08);background:rgba(0,0,0,0.03);}
.tp-rating i{color:#f5c542;}
[data-theme="night"] .tp-bestprice{background:rgba(25,135,84,0.20);border-color:rgba(25,135,84,0.28);} 

/* Marquee / carousel */
.tp-marquee{overflow:hidden;}
.tp-marquee-track{display:flex;gap:12px;align-items:stretch;animation:tpMarquee 30s linear infinite;}
.tp-marquee:hover .tp-marquee-track{animation-play-state:paused;}
.tp-marquee-item{min-width:320px;}

/* Live indicator dot */
.tp-live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;background:rgba(25,135,84,0.95);box-shadow:0 0 0 0 rgba(25,135,84,0.55);animation:tpPulse 2.2s ease-in-out infinite;vertical-align:middle;}
@keyframes tpPulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(25,135,84,0.55);}70%{transform:scale(1.05);box-shadow:0 0 0 8px rgba(25,135,84,0);}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(25,135,84,0);}}

/* Home: Statistici offer mini-carousel */
.tp-stats-carousel{position:relative;overflow:hidden;border-radius:16px;;overflow-anchor:none;}
.tp-stats-carousel-track{display:flex;gap:12px;align-items:stretch;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.tp-stats-carousel-item{min-width:100%;scroll-snap-align:start;}
@media (min-width: 992px){
  .tp-stats-carousel-item{min-width:calc(100% - 0px);} /* one card per slide inside the stats box */
}
.tp-offercard{display:flex;align-items:stretch;gap:10px;padding:10px;border-radius:16px;border:1px solid rgba(0,0,0,0.08);background:rgba(255,255,255,0.02);}
[data-theme="day"] .tp-offercard{background:#fff;border-color:rgba(0,0,0,0.08);}
[data-theme="night"] .tp-offercard{border-color:rgba(255,255,255,0.10);background:rgba(255,255,255,0.03);}
.tp-offercard-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1;text-decoration:none;color:inherit;}
.tp-offercard-thumb{width:46px;height:46px;border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.03);flex:0 0 auto;}
[data-theme="night"] .tp-offercard-thumb{background:rgba(255,255,255,0.06);} 
.tp-offercard-thumb img{width:100%;height:100%;object-fit:contain;display:block;}
.tp-offercard-body{display:flex;flex-direction:column;gap:4px;min-width:0;}
.tp-offercard-title{font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.tp-offercard-price{font-weight:800;letter-spacing:.1px;white-space:nowrap;}
.tp-offercard-cta{border-radius:12px;font-weight:800;padding:.45rem .7rem;align-self:center;}
@keyframes tpMarquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* Product page: alert icon under heart */
.tp-alert-icon{border:1px solid rgba(0,0,0,0.10);background:transparent;border-radius:14px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;}
[data-theme="night"] .tp-alert-icon{border-color:rgba(255,255,255,0.12);} 
.tp-alert-icon:hover{transform:translateY(-1px);}

/* Offers table spacing & highlight */
.tp-best-row{background:rgba(25,135,84,0.08);} 
[data-theme="night"] .tp-best-row{background:rgba(25,135,84,0.18);} 
.tp-mlogo-lg{width:34px;height:34px;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.05);border:1px solid rgba(0,0,0,0.08);} 
[data-theme="night"] .tp-mlogo-lg{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.10);} 
.tp-mlogo-lg img{width:100%;height:100%;object-fit:contain;}
.tp-price-big{font-weight:800;font-size:1.05rem;}
.tp-offer-cta{padding:.5rem .8rem;border-radius:12px;font-weight:700;}
.tp-stock{padding:4px 10px;border-radius:999px;font-size:.85rem;font-weight:700;}
.tp-stock.in{background:rgba(13,110,253,0.10);border:1px solid rgba(13,110,253,0.18);} 
.tp-stock.out{background:rgba(220,53,69,0.10);border:1px solid rgba(220,53,69,0.18);} 

/* Social buttons */
.tp-social{width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,0.10);text-decoration:none;color:inherit;}
[data-theme="night"] .tp-social{border-color:rgba(255,255,255,0.12);} 

.tp-stars button{background:transparent;border:0;padding:0 2px;font-size:18px;line-height:1;color:#f5c542;}
.tp-stars .tp-star{cursor:pointer;}



/* Home dedicated carousel sizing */
#tpHomeOfferCarousel{overflow:hidden;}
#tpHomeOfferCarousel .tp-stats-carousel-track{gap:14px;transition:transform .45s ease;}
#tpHomeOfferCarousel .tp-stats-carousel-item{min-width:320px;max-width:360px;flex:0 0 auto;}
@media (max-width: 575.98px){
  #tpHomeOfferCarousel .tp-stats-carousel-item{min-width:260px;max-width:300px;}
}

/* Enforce merchants grid on home */
.tp-grid{ display:grid; gap:14px; }
.tp-grid.cols-4{ grid-template-columns: repeat(4, minmax(0,1fr)); }
@media (max-width: 1200px){ .tp-grid.cols-4{ grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 992px){ .tp-grid.cols-4{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 576px){ .tp-grid.cols-4{ grid-template-columns: 1fr; } }

.tp-rating{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
.tp-rating .bi{ font-size: 14px; color: rgba(255,255,255,.35); }
.tp-rating .bi-star-fill{ color:#fbbf24; }
.tp-rating .bi-star-half{ color: rgba(251,191,36,.75); }
.tp-rating .tp-muted{ opacity:.8; }

.tp-merchant-rating-box{ display:flex; flex-direction:column; align-items:flex-end; gap:4px; }
.tp-merchant-rating-line{ display:flex; align-items:center; gap:8px; }
.tp-merchant-avg-pill{ padding:4px 8px; border-radius:999px; background: rgba(251,191,36,.12); border: 1px solid rgba(251,191,36,.22); font-weight:600; font-size:12px; }

/* Slider: hide scrollbar */
#tpStatsOfferCarousel .tp-stats-carousel-track{ scrollbar-width:none; }
#tpStatsOfferCarousel .tp-stats-carousel-track::-webkit-scrollbar{ display:none; }

/* Merchant rating: interactive stars */
.tp-rate-stars{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:nowrap;}
.tp-rate-star{border:1px solid rgba(255,255,255,0.14);background:rgba(255,255,255,0.03);border-radius:10px;
  width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,0.35);cursor:pointer;transition:transform .12s ease, background .12s ease, color .12s ease, border-color .12s ease;
}
[data-theme="day"] .tp-rate-star{border-color:rgba(0,0,0,0.12);background:#fff;color:rgba(0,0,0,0.28);}
.tp-rate-star:hover{transform:translateY(-1px);border-color:rgba(255,193,7,0.55);background:rgba(255,193,7,0.10);color:rgba(255,193,7,0.95);}
.tp-rate-star.is-on{border-color:rgba(255,193,7,0.55);background:rgba(255,193,7,0.10);color:rgba(255,193,7,0.95);}
