.elementor-384 .elementor-element.elementor-element-c56d328{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-4152b4d */:root{
  --bg1: rgba(9,12,10,.92);
  --bg2: rgba(6,8,7,.96);

  --text:#EAF2EC;
  --muted: rgba(234,242,236,.70);

  --accent:#19ff9a;
  --accent2:#00d27a;

  --radius: 20px;
}

/* list wrapper */
.betRowList, .betRowList *{ box-sizing: border-box; }
.betRowList{
  direction: rtl;
  max-width: 1150px;
  margin: 24px auto;
  padding: 0 14px;
  display: grid;
  gap: 14px;
  font-family: inherit;
  overflow: visible;
}

/* ---- Card ---- */
.betRow{
  position: relative;
  border-radius: var(--radius);
  background: linear-gradient(180deg, var(--bg1), var(--bg2));
  border: 1px solid rgba(25,255,154,.22);

  /* shadow ثابت (برای جلوگیری از repaint هنگام hover) */
  box-shadow: 0 14px 40px rgba(0,0,0,.45);

  /* فقط transform و border-color رو transition بده (نه shadow) */
  transition: transform .18s ease, border-color .18s ease;
  isolation: isolate;

  /* performance */
  content-visibility: auto;
  contain-intrinsic-size: 130px;
  contain: layout paint;
  overflow: hidden;
}

/* glow overlay: به جای تغییر shadow سنگین */
.betRow::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity: 0;
  transition: opacity .18s ease;
  background: radial-gradient(circle at 85% 20%,
    rgba(25,255,154,.14),
    rgba(25,255,154,0) 60%
  );
}

@media (hover:hover){
  .betRow:hover{
    transform: translateY(-2px);
    border-color: rgba(25,255,154,.34);
  }
  .betRow:hover::after{ opacity: 1; }
}

/* ---- Tag (INSIDE CARD - no clipping) ---- */
.betRowTag{
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 6;

  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 12px;

  border-radius: 999px;
  color: #02120a;
  font-weight: 950;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;

  background: linear-gradient(135deg, var(--accent), var(--accent2));
  border: 1px solid rgba(255,255,255,.20);
  box-shadow: 0 10px 22px rgba(0,0,0,.40);

  transform-origin: right center;
  transition: transform .18s ease;
}

/* flag */
.betRowFlag{
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(255,255,255,.45);
  box-shadow: 0 6px 14px rgba(0,0,0,.30);
  transition: transform .2s ease, filter .2s ease;
}

/* flag images */
.tag-ir   { background-image: url('https://upload.wikimedia.org/wikipedia/commons/c/ca/Flag_of_Iran.svg'); }
.tag-intl { background-image: url('https://upload.wikimedia.org/wikipedia/commons/b/b7/Flag_of_Europe.svg'); }

/* hover tag (NO ROTATE) */
@media (hover:hover){
  .betRow:hover .betRowTag,
  .betRowTag:hover{ transform: translateY(-1px) scale(1.04); }

  .betRow:hover .betRowFlag,
  .betRowTag:hover .betRowFlag{
    transform: scale(1.10);
    filter: brightness(1.12) contrast(1.04);
  }
}

/* ---- Inner layout ---- */
.betRowInner{
  position: relative;
  z-index: 2;

  display: grid;
  grid-template-columns: 1.35fr 2.25fr .55fr;
  gap: 14px;
  align-items: center;

  padding: 18px 18px;
  min-height: 116px;
}

/* ---- Brand ---- */
.betBrand{
  display:flex;
  align-items:center;
  gap: 14px;
  min-width: 0;
  text-decoration: none !important;
  color: inherit;
}

.betLogo{
  width: 168px;
  height: 86px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;

  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border: 1px solid rgba(25,255,154,.26);
  box-shadow: 0 12px 24px rgba(0,0,0,.30);
}

.betLogo img{
  max-width: 92%;
  max-height: 82%;
  width:auto;
  height:auto;
  display:block;
  border: 0 !important;
}

.betBrandText{
  min-width: 0;
  max-width: 360px;
  display:flex;
  flex-direction: column;
  gap: 6px;
}

.betName{
  font-size: 18px;
  font-weight: 980;
  color: var(--text);
  white-space: nowrap;
  overflow:hidden;
  text-overflow: ellipsis;
}

/* subtitle can be 2 lines */
.betSub{
  font-size: 13.2px;
  color: var(--muted);
  line-height: 1.35;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ---- Info (center) ---- */
.betInfo{
  min-width: 0;
  display:flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
}

.betStarsRow{
  width: 100%;
  display:flex;
  justify-content: center;
}

.betStars{
  position: relative;
  display:inline-block;
  font-size: 24px;
  letter-spacing: 3px;
  line-height: 1;
  white-space: nowrap;
}
.betStars::before{
  content:"★★★★★";
  color: rgba(255,255,255,.18);
}
.betStars::after{
  content:"★★★★★";
  position:absolute;
  inset:0;
  width: calc(var(--rating) / 5 * 100%);
  overflow:hidden;
  color: var(--accent);
  text-shadow: 0 0 14px rgba(25,255,154,.18);
}

/* chips */
.betChips{
  width: 100%;
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style:none;
  margin:0;
  padding:0;
  justify-content: center;
}

.betChips li{
  font-size: 12.5px;
  font-weight: 950;
  color: rgba(234,242,236,.96);

  padding: 7px 12px;
  border-radius: 999px;

  background: rgba(25,255,154,.10);
  border: 1px solid rgba(25,255,154,.28);
  box-shadow: 0 8px 16px rgba(0,0,0,.18);

  transition: transform .15s ease;
}

@media (hover:hover){
  .betChips li:hover{ transform: translateY(-1px); }
}

/* ---- Action / Button ---- */
.betAction{
  display:flex;
  justify-content: flex-end;
  align-items: center;
}

.betBtn{
  position: relative;

  width: min(130px, 100%);
  padding: 12px 12px;
  border-radius: 16px;

  display:flex;
  align-items:center;
  justify-content:center;

  text-decoration:none !important;
  font-weight: 990;
  font-size: 14px;
  color: #02120a !important;

  background: linear-gradient(135deg, var(--accent), var(--accent2));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 14px 26px rgba(0,0,0,.42);

  /* filter رو حذف کردیم چون paint سنگین میده */
  transition: transform .16s ease, background .16s ease;
}

/* wave layers: سبک‌تر و فقط 1 بار اجرا */
.betBtn::before,
.betBtn::after{
  content:"";
  position:absolute;
  pointer-events:none;
  opacity: 0;
}

.betBtn::before{
  inset: -10px;
  border-radius: 20px;
  border: 2px solid rgba(25,255,154,.30);
  transform: scale(.90);
}
.betBtn::after{
  inset: -18px;
  border-radius: 24px;
  border: 2px solid rgba(25,255,154,.16);
  transform: scale(.90);
}

@keyframes btnWaveOnce{
  0%   { opacity: 0; transform: scale(.90); }
  20%  { opacity: .55; }
  100% { opacity: 0; transform: scale(1.18); }
}

@media (hover:hover){
  .betBtn:hover{
    transform: translateY(-1px);
    /* روشن‌تر مثل نمونه‌ای که گفتی (بدون filter) */
    background: linear-gradient(135deg, #62ffbf, #17ff9a);
  }

  /* فقط یک‌بار اجرا (نه infinite) => اسکرول دیگه هنگ نمی‌کنه */
  .betBtn:hover::before,
  .betBtn:focus-visible::before{
    animation: btnWaveOnce 1.0s ease-out 1;
  }
  .betBtn:hover::after,
  .betBtn:focus-visible::after{
    animation: btnWaveOnce 1.0s ease-out 1;
    animation-delay: .18s;
  }
}

/* ---- Responsive ---- */
@media (max-width: 980px){
  .betRowInner{
    grid-template-columns: 1fr;
    gap: 14px;
    min-height: unset;
    padding-top: 46px;
  }
  .betAction{ justify-content: stretch; }
  .betBtn{ width: 100%; }
  .betBrandText{ max-width: none; }
}

/* Mobile extra boost */
@media (max-width: 680px){
  .betRow{ box-shadow: none; }
  .betLogo{ box-shadow: none; }
  .betChips li{ box-shadow: none; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .betRow, .betRowTag, .betRowFlag, .betChips li, .betBtn{ transition:none !important; }
  .betBtn::before, .betBtn::after{ animation:none !important; }
}/* End custom CSS */