/* ── Homepage-specific vars (scoped to avoid conflicts with head_blade) ── */
#page-home {
  --gold:        #f5c542;
  --gold2:       #ffd700;
  --gold-dim:    rgba(245,197,66,.15);
  --red-hot:     #ff3c5a;
  --green-live:  #00e676;
  --cyan:        #00cfff;
  --purple:      #9b59fa;
  --orange:      #ff7c2a;
  --pink:        #ff4dac;
  --teal:        #00d4aa;
  --bg0:         #050710;
  --bg1:         #090c1a;
  --bg2:         #0d1124;
  --bg3:         #111830;
  --bg4:         #161f38;
  --card:        rgba(14,18,36,.95);
  --border:      rgba(255,255,255,.07);
  --border2:     rgba(245,197,66,.2);
  --text1:       #e8ecf8;
  --text2:       #8892b0;
  --text3:       #4a5578;
  --font-display:'Oxanium',sans-serif;
  --font-body:   'Nunito',sans-serif;
  --font-mono:   'Rajdhani',sans-serif;
}
#particleCanvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.3;}

/* ══════════════════════════════════════
   INSTALL BANNER (mobile only)
══════════════════════════════════════ */
.install-banner{
  display:none;background:linear-gradient(90deg,rgba(245,197,66,.15),rgba(255,153,0,.08),transparent);
  border-bottom:1px solid rgba(245,197,66,.25);border-top:1px solid rgba(245,197,66,.15);
  padding:8px 12px;align-items:center;gap:10px;
  position:fixed;top:22px;left:0;right:0;z-index:1010;height:40px;
  box-shadow:0 2px 12px rgba(245,197,66,.1);backdrop-filter:blur(8px);
}
@media(max-width:768px){.install-banner{display:flex;}}
/* Push navbar & layout down when install banner is visible on mobile */
@media(max-width:768px){
  .topnav{top:62px !important;}
  .layout{margin-top:calc(var(--nav-h) + 62px) !important;}
  body.install-banner-hidden .topnav{top:22px !important;}
  body.install-banner-hidden .layout{margin-top:calc(var(--nav-h) + 22px) !important;}
}
.install-banner-icon{font-size:18px;flex-shrink:0;}
.install-banner-text{flex:1;display:flex;align-items:center;gap:6px;}
.install-banner-text strong{font-size:11px;font-weight:800;color:var(--gold);font-family:var(--font-display);letter-spacing:.3px;white-space:nowrap;}
.install-banner-text small{font-size:8.5px;color:var(--text2);white-space:nowrap;}
.install-banner-btn{
  padding:5px 14px;border-radius:6px;font-size:10px;font-weight:900;
  background:linear-gradient(135deg,var(--gold),#ff9100);
  color:#000;border:none;cursor:pointer;white-space:nowrap;
  font-family:var(--font-display);letter-spacing:.5px;flex-shrink:0;
  transition:all .2s;box-shadow:0 4px 12px rgba(245,197,66,.2);
}
.install-banner-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(245,197,66,.35);}
.install-banner-close{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;font-size:14px;padding:0;flex-shrink:0;line-height:1;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;}
.install-banner-close:hover{background:rgba(255,60,90,.25);border-color:rgba(255,60,90,.4);color:#ff4d6d;}

/* ══════════════════════════════════════
   LIVE TICKER
══════════════════════════════════════ */
/* NEWS ANNOUNCEMENT BAR */
.news-announce{display:flex;align-items:center;background:linear-gradient(90deg,#130820,#0a1628);border-bottom:1px solid rgba(212,168,75,.15);height:30px;overflow:hidden;}
.news-announce-label{background:linear-gradient(135deg,#d4a84b,#c49530);color:#000;font-size:9px;font-weight:800;letter-spacing:.8px;padding:0 12px;height:100%;display:flex;align-items:center;gap:5px;flex-shrink:0;}
.news-announce-scroll{flex:1;overflow:hidden;height:100%;display:flex;align-items:center;}
.news-announce-text{color:#f5d778;font-size:11px;font-weight:600;white-space:nowrap;display:inline-block;animation:newsScroll 20s linear infinite;padding-left:100%;}
@keyframes newsScroll{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}


/* ══════════════════════════════════════
   HERO SLIDER
══════════════════════════════════════ */
/* Global responsive image safeguard for the homepage — every <img> in #page-home
   stays inside its parent column regardless of which section adds it later. */
#page-home img{max-width:100%;height:auto;}
#page-home .slider-wrap{position:relative;width:100%;overflow:hidden;aspect-ratio:16/5;max-height:360px;border-radius:0;margin-bottom:0;z-index:10;}
@media(max-width:480px){#page-home .slider-wrap{aspect-ratio:16/8;max-height:200px;}}
@media(max-width:768px) and (min-width:481px){#page-home .slider-wrap{aspect-ratio:16/7;max-height:240px;}}
@media(min-width:1200px){#page-home .slider-wrap{aspect-ratio:16/5;max-height:400px;}}
@media(min-width:1600px){#page-home .slider-wrap{aspect-ratio:16/5;max-height:440px;}}
#page-home .slider-track{display:flex;transition:transform .7s cubic-bezier(.4,0,.2,1);height:100%;}
#page-home .slider-slide{min-width:100%;height:100%;position:relative;}
#page-home .slider-slide img{width:100%;height:100%;object-fit:cover;display:block;}
#page-home .slider-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(5,7,16,.85) 100%);}
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(8px);color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:5;}
.slider-arrow:hover{background:var(--gold);color:#000;border-color:var(--gold);}
.slider-arrow-prev{left:14px;}.slider-arrow-next{right:14px;}
.slider-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:5;}
.slider-dot{width:6px;height:6px;border-radius:3px;background:rgba(255,255,255,.3);cursor:pointer;transition:all .3s;}
.slider-dot.active{width:22px;background:var(--gold);}
.slider-progress{position:absolute;bottom:0;left:0;height:2px;background:linear-gradient(90deg,var(--gold),var(--orange));width:0;z-index:6;}

/* ══════════════════════════════════════
   SPORT QUICK-NAV (12 sports → /sports/{slug})
══════════════════════════════════════ */
.sport-quicknav{
  display:flex;gap:8px;padding:12px 12px 14px;overflow-x:auto;scrollbar-width:none;
  background:linear-gradient(180deg,var(--bg1),var(--bg2));
  border-bottom:1px solid var(--border);
  -webkit-overflow-scrolling:touch;
}
.sport-quicknav::-webkit-scrollbar{display:none;}
.sport-quicknav-item{
  flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:10px 14px;border-radius:12px;
  background:var(--bg2);border:1px solid var(--border);
  text-decoration:none;color:var(--text1);min-width:78px;
  transition:transform .2s,border-color .2s,background .2s;
  position:relative;
}
.sport-quicknav-item::before{
  content:'';position:absolute;inset:0;border-radius:12px;
  background:radial-gradient(circle at top,rgba(245,197,66,.15),transparent 70%);
  opacity:0;transition:opacity .2s;pointer-events:none;
}
.sport-quicknav-item:hover{border-color:var(--gold);transform:translateY(-2px);}
.sport-quicknav-item:hover::before{opacity:1;}
.sport-quicknav-emoji{font-size:24px;line-height:1;}
.sport-quicknav-label{
  font-size:10px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;
  font-family:var(--font-display);color:var(--text2);
}
.sport-quicknav-item:hover .sport-quicknav-label{color:var(--gold);}
@media(min-width:1000px){
  .sport-quicknav{justify-content:center;flex-wrap:wrap;}
}

/* ══════════════════════════════════════
   LIVE WINNERS TICKER
══════════════════════════════════════ */
.winners-ticker{
  display:flex;align-items:center;gap:0;height:36px;
  background:linear-gradient(90deg,#0a1628,#130820,#0a1628);
  border-top:1px solid rgba(245,197,66,.18);
  border-bottom:1px solid rgba(245,197,66,.18);
  overflow:hidden;position:relative;
}
.winners-ticker-label{
  flex-shrink:0;display:flex;align-items:center;gap:6px;
  background:linear-gradient(135deg,var(--gold),#ff9100);
  color:#000;font-size:10px;font-weight:900;letter-spacing:.6px;
  padding:0 14px;height:100%;font-family:var(--font-display);
  text-transform:uppercase;
}
.winners-ticker-label i{font-size:11px;}
.winners-ticker-track{
  flex:1;display:flex;align-items:center;gap:30px;
  white-space:nowrap;overflow:hidden;height:100%;padding:0 18px;
  position:relative;
}
.winners-ticker-item{
  display:inline-flex;align-items:center;gap:8px;
  font-size:11px;font-weight:600;color:var(--text1);
  opacity:0;transform:translateX(20px);
  animation:tickerSlideIn .5s ease forwards;
  flex-shrink:0;
}
.winners-ticker-user{color:var(--cyan);font-weight:700;}
.winners-ticker-game{color:var(--text2);}
.winners-ticker-amount{
  color:var(--green-live);font-weight:800;font-family:var(--font-display);
  text-shadow:0 0 8px rgba(0,230,118,.4);
}
.winners-ticker-time{color:var(--text3);font-size:9px;}
@keyframes tickerSlideIn{
  to{opacity:1;transform:translateX(0);}
}
.daily-spin-btn{
  flex-shrink:0;background:linear-gradient(135deg,#9b59fa,#ff4dac);
  color:#fff;border:none;padding:0 14px;height:100%;cursor:pointer;
  font-size:10px;font-weight:900;letter-spacing:.5px;font-family:var(--font-display);
  text-transform:uppercase;transition:filter .2s;
  display:flex;align-items:center;gap:6px;
}
.daily-spin-btn:hover{filter:brightness(1.15);}
.daily-spin-btn .gift-emoji{font-size:14px;animation:giftWiggle 2s infinite;}
@keyframes giftWiggle{0%,100%{transform:rotate(-8deg);}50%{transform:rotate(8deg);}}

/* ══════════════════════════════════════
   LUCKY SPIN WHEEL MODAL
══════════════════════════════════════ */
.lucky-spin-overlay{
  position:fixed;inset:0;z-index:9998;
  background:radial-gradient(ellipse at center,rgba(15,5,30,.85),rgba(0,0,0,.95));
  backdrop-filter:blur(12px);
  display:none;align-items:center;justify-content:center;
  padding:20px;animation:spinFadeIn .35s ease;
}
.lucky-spin-overlay.show{display:flex;}
@keyframes spinFadeIn{from{opacity:0;}to{opacity:1;}}
.lucky-spin-modal{
  position:relative;width:100%;max-width:380px;
  background:linear-gradient(180deg,#1a1030,#0a0518);
  border:1px solid rgba(245,197,66,.35);border-radius:20px;
  padding:24px 20px 20px;text-align:center;
  box-shadow:0 20px 60px rgba(0,0,0,.6),0 0 40px rgba(245,197,66,.18);
  animation:spinPopIn .4s cubic-bezier(.34,1.56,.64,1);
}
@keyframes spinPopIn{from{transform:scale(.6);opacity:0;}to{transform:scale(1);opacity:1;}}
.lucky-spin-close{
  position:absolute;top:12px;right:12px;width:30px;height:30px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);
  color:#fff;border-radius:50%;cursor:pointer;font-size:14px;
  display:flex;align-items:center;justify-content:center;
  transition:all .2s;
}
.lucky-spin-close:hover{background:rgba(255,60,90,.25);border-color:#ff4d6d;}
.lucky-spin-title{
  font-family:var(--font-display);font-size:20px;font-weight:800;
  background:linear-gradient(135deg,var(--gold),#ff9100);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  letter-spacing:1px;margin-bottom:4px;
}
.lucky-spin-subtitle{font-size:11px;color:var(--text2);margin-bottom:18px;}
.lucky-spin-canvas-wrap{
  position:relative;width:280px;height:280px;margin:0 auto 18px;
}
.lucky-spin-canvas{width:100%;height:100%;display:block;}
.lucky-spin-pointer{
  position:absolute;top:-6px;left:50%;transform:translateX(-50%);
  width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;
  border-top:22px solid var(--gold);
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.6));
  z-index:2;
}
.lucky-spin-center{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:50px;height:50px;border-radius:50%;
  background:radial-gradient(circle,#fff,var(--gold));
  border:3px solid #000;display:flex;align-items:center;justify-content:center;
  font-size:18px;z-index:2;box-shadow:0 4px 12px rgba(0,0,0,.4);
}
.lucky-spin-button{
  width:100%;padding:14px;border:none;border-radius:12px;cursor:pointer;
  background:linear-gradient(135deg,var(--gold),#ff9100);
  color:#000;font-family:var(--font-display);font-size:14px;font-weight:900;
  letter-spacing:1.2px;text-transform:uppercase;
  box-shadow:0 6px 18px rgba(245,197,66,.35);
  transition:transform .15s,filter .2s;
}
.lucky-spin-button:hover{filter:brightness(1.1);transform:translateY(-1px);}
.lucky-spin-button:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.5);transform:none;}
.lucky-spin-result{
  display:none;margin-top:12px;padding:10px;border-radius:10px;
  background:rgba(0,230,118,.1);border:1px solid rgba(0,230,118,.3);
  color:var(--green-live);font-size:13px;font-weight:700;
  font-family:var(--font-display);
}
.lucky-spin-result.show{display:block;animation:resultPop .4s ease;}
@keyframes resultPop{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}

/* ══════════════════════════════════════
   FEATURED SECTION (MAC88 + EvoAsia)
══════════════════════════════════════ */
.featured-section{padding:14px 12px 6px;}
.featured-section .section-header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:12px;gap:8px;flex-wrap:wrap;
}
.featured-badge{
  background:linear-gradient(135deg,#ffd700,#ff7c2a);
  color:#000;font-size:9px;font-weight:900;
  padding:3px 8px;border-radius:4px;letter-spacing:.6px;
  font-family:var(--font-display);text-transform:uppercase;
  box-shadow:0 0 10px rgba(255,215,0,.3);
}
.featured-providers{display:flex;gap:6px;align-items:center;}
.featured-provider-pill{
  font-size:9px;font-weight:800;padding:4px 10px;border-radius:20px;
  font-family:var(--font-display);letter-spacing:.4px;text-transform:uppercase;
}
.featured-provider-pill.evoasia{
  background:rgba(0,207,255,.12);color:#00cfff;
  border:1px solid rgba(0,207,255,.35);
}
.featured-provider-pill.mac88{
  background:rgba(255,77,172,.12);color:#ff4dac;
  border:1px solid rgba(255,77,172,.35);
}

.featured-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
}
@media(min-width:520px){.featured-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:820px){.featured-grid{grid-template-columns:repeat(4,1fr);}}
@media(min-width:1100px){.featured-grid{grid-template-columns:repeat(5,1fr);}}
@media(min-width:1400px){.featured-grid{grid-template-columns:repeat(6,1fr);}}

.featured-card{
  background:var(--bg2);
  border:1px solid var(--border);
  border-radius:14px;overflow:hidden;
  cursor:pointer;position:relative;
  transition:transform .25s,border-color .25s,box-shadow .25s;
}
.featured-card:hover{
  transform:translateY(-4px);
  border-color:var(--gold);
  box-shadow:0 12px 28px rgba(0,0,0,.4),0 0 24px rgba(245,197,66,.18);
}
.featured-thumb{
  position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;
  background:linear-gradient(135deg,#1a1f3a,#0d1124);
}
@media(min-width:820px){.featured-thumb{aspect-ratio:1/1;}}
.featured-thumb img{
  width:100%;height:100%;object-fit:cover;object-position:center;display:block;
  transition:transform .35s;
  background:#0d1124;          /* prevents flash of white while loading */
}
.featured-card:hover .featured-thumb img{transform:scale(1.08);}
.featured-overlay{
  position:absolute;inset:0;
  background:radial-gradient(circle at center,transparent 30%,rgba(0,0,0,.65) 100%);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .25s;
}
.featured-card:hover .featured-overlay{opacity:1;}
.featured-overlay .play-btn-circle{
  width:48px;height:48px;border-radius:50%;
  background:linear-gradient(135deg,var(--gold),#ff9100);
  display:flex;align-items:center;justify-content:center;
  color:#000;font-size:16px;
  box-shadow:0 6px 18px rgba(245,197,66,.4);
  animation:playPulse 1.4s ease-in-out infinite;
}
@keyframes playPulse{0%,100%{transform:scale(1);}50%{transform:scale(1.08);}}
.featured-prov-tag{
  position:absolute;top:6px;left:6px;
  font-size:8px;font-weight:900;letter-spacing:.4px;
  padding:3px 7px;border-radius:4px;
  font-family:var(--font-display);text-transform:uppercase;
  backdrop-filter:blur(6px);
}
.featured-prov-tag.mac88{background:rgba(255,77,172,.85);color:#fff;}
.featured-prov-tag.evoasia{background:rgba(0,207,255,.85);color:#000;}
.featured-cat-tag{
  position:absolute;top:6px;right:6px;
  font-size:8px;font-weight:800;letter-spacing:.3px;
  padding:3px 7px;border-radius:4px;
  background:rgba(0,0,0,.65);color:#fff;backdrop-filter:blur(6px);
  font-family:var(--font-display);text-transform:uppercase;
}
.featured-info{padding:8px 10px 10px;}
.featured-name{
  font-size:11px;font-weight:700;color:var(--text1);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  margin-bottom:4px;
}
.featured-meta{
  display:flex;align-items:center;gap:5px;
  font-size:9px;color:var(--text3);font-weight:600;
  font-family:var(--font-display);text-transform:uppercase;letter-spacing:.3px;
}
.live-dot-mini{
  width:5px;height:5px;border-radius:50%;
  background:var(--green-live);
  box-shadow:0 0 6px rgba(0,230,118,.7);
  animation:pulseDot 1.5s infinite;
}
.featured-empty{
  grid-column:1/-1;
  text-align:center;padding:32px 12px;
  color:var(--text3);font-size:11px;font-family:var(--font-display);
}
.featured-empty i{font-size:18px;margin-bottom:8px;display:block;color:var(--gold);}

/* ══════════════════════════════════════
   RTAB LAYOUT
══════════════════════════════════════ */
.rtab-main-wrapper{display:flex;gap:8px;padding:10px 8px;margin-bottom:0;position:relative;}
.rtab-sidebar{
  width:62px;display:flex;flex-direction:column;
  background:linear-gradient(180deg,var(--bg2),var(--bg3));
  border:1px solid var(--border);border-radius:12px;
  overflow:hidden;flex-shrink:0;position:sticky;top:0;height:fit-content;
}
.rtab-btn{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:3px;padding:10px 4px;background:transparent;border:none;
  border-bottom:1px solid var(--border);color:var(--text3);cursor:pointer;transition:all .22s;
  position:relative;
}
.rtab-btn:last-child{border-bottom:none;}
.rtab-icon-wrap{
  width:36px;height:36px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.05);
  transition:all .22s;margin-bottom:1px;
}
.rtab-icon{font-size:16px;transition:all .22s;color:inherit;}
.rtab-btn span{font-size:7px;font-weight:800;text-align:center;line-height:1.2;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-display);}
.rtab-btn:hover{background:rgba(255,255,255,.04);color:var(--text1);}
.rtab-btn:hover .rtab-icon-wrap{background:rgba(255,255,255,.09);}
.rtab-btn.active{
  background:linear-gradient(135deg,rgba(245,197,66,.12),rgba(255,153,0,.06));
  color:var(--gold);border-left:2px solid var(--gold);
}
.rtab-btn.active .rtab-icon-wrap{background:rgba(245,197,66,.15);box-shadow:0 0 12px rgba(245,197,66,.2);}
.rtab-btn.active .rtab-icon{filter:drop-shadow(0 0 4px rgba(245,197,66,.6));transform:scale(1.08);}
.rtab-btn.active span{color:var(--gold);}
/* colored accent per tab */
.rtab-btn[data-accent="cyan"].active{color:var(--cyan);border-left-color:var(--cyan);background:linear-gradient(135deg,rgba(0,207,255,.08),rgba(0,207,255,.03));}
.rtab-btn[data-accent="cyan"].active .rtab-icon-wrap{background:rgba(0,207,255,.15);box-shadow:0 0 12px rgba(0,207,255,.2);}
.rtab-btn[data-accent="cyan"].active .rtab-icon{filter:drop-shadow(0 0 4px rgba(0,207,255,.7));}
.rtab-btn[data-accent="green"].active{color:var(--green-live);border-left-color:var(--green-live);background:linear-gradient(135deg,rgba(0,230,118,.08),rgba(0,230,118,.03));}
.rtab-btn[data-accent="green"].active .rtab-icon-wrap{background:rgba(0,230,118,.15);box-shadow:0 0 12px rgba(0,230,118,.2);}
.rtab-btn[data-accent="green"].active .rtab-icon{filter:drop-shadow(0 0 4px rgba(0,230,118,.7));}
.rtab-btn[data-accent="red"].active{color:var(--red-hot);border-left-color:var(--red-hot);background:linear-gradient(135deg,rgba(255,60,90,.08),rgba(255,60,90,.03));}
.rtab-btn[data-accent="red"].active .rtab-icon-wrap{background:rgba(255,60,90,.15);box-shadow:0 0 12px rgba(255,60,90,.2);}
.rtab-btn[data-accent="red"].active .rtab-icon{filter:drop-shadow(0 0 4px rgba(255,60,90,.7));}
.rtab-btn[data-accent="purple"].active{color:var(--purple);border-left-color:var(--purple);background:linear-gradient(135deg,rgba(155,89,250,.08),rgba(155,89,250,.03));}
.rtab-btn[data-accent="purple"].active .rtab-icon-wrap{background:rgba(155,89,250,.15);box-shadow:0 0 12px rgba(155,89,250,.2);}
.rtab-btn[data-accent="purple"].active .rtab-icon{filter:drop-shadow(0 0 4px rgba(155,89,250,.7));}

.rtab-main-content{flex:1;min-width:0;overflow:hidden;}
.rtab-content{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:8px;min-height:200px;overflow:hidden;}
.rtab-pane{display:none;animation:rtabFade .28s ease-out;}
.rtab-pane.active{display:block;}
@keyframes rtabFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* Game grid inside rtab */
.rtab-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;}
@media(max-width:900px){.rtab-grid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:600px){.rtab-grid{grid-template-columns:repeat(3,1fr);gap:5px;}}
@media(max-width:380px){.rtab-grid{grid-template-columns:repeat(3,1fr);gap:4px;}}
.rtab-game-card{position:relative;border-radius:8px;overflow:hidden;cursor:pointer;aspect-ratio:1/1;background:var(--bg3);transition:transform .2s,box-shadow .2s;border:1px solid var(--border);}
.rtab-game-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(0,0,0,.5),0 0 0 1px rgba(245,197,66,.2);}
.rtab-game-card img{width:100%;height:100%;object-fit:cover;}
.rtab-game-card .game-name-float{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.92));padding:10px 4px 4px;font-size:7.5px;color:rgba(255,255,255,.9);font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.2px;}
.rtab-game-card .game-overlay{position:absolute;inset:0;background:rgba(0,0,0,.45);opacity:0;transition:opacity .18s;display:flex;align-items:center;justify-content:center;}
.rtab-game-card:hover .game-overlay{opacity:1;}
.view-all-card{aspect-ratio:3/4;border-radius:9px;border:1px dashed rgba(255,255,255,.13)!important;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.02)!important;cursor:pointer;transition:all .2s;}
.view-all-card:hover{border-color:var(--gold)!important;background:rgba(245,197,66,.06)!important;}
.view-all-text{font-size:11px;font-weight:800;color:rgba(255,255,255,.4);font-family:var(--font-display);text-align:center;letter-spacing:1px;}
.view-all-card:hover .view-all-text{color:var(--gold);}
.rtab-empty{padding:30px;text-align:center;color:var(--text2);font-size:12px;}

/* ── RTAB LIVE GRID (2 col × 4 row) ── */
.rtab-live-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;}
.rtab-live-card{
  position:relative;border-radius:8px;overflow:hidden;cursor:pointer;
  background:var(--bg3);border:1px solid var(--border);
  transition:transform .2s,box-shadow .2s;
}
.rtab-live-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.4),0 0 0 1px rgba(0,230,118,.2);}
.rtab-live-card img{width:100%;aspect-ratio:4/3;height:auto;display:block;object-fit:cover;background:var(--bg3);}
@media(max-width:600px){.rtab-live-card img{aspect-ratio:5/4;}}
.rtab-live-badge-dot{
  position:absolute;top:5px;left:5px;
  font-size:7px;font-weight:900;color:#fff;
  background:rgba(255,0,0,.85);padding:2px 6px;border-radius:4px;
  letter-spacing:.5px;z-index:2;
  animation:pulse-green 1.5s infinite;
}
.rtab-live-card-name{
  padding:5px 4px;font-size:8px;font-weight:700;text-align:center;
  color:#fff;background:rgba(0,0,0,.7);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  text-transform:uppercase;letter-spacing:.3px;
}
.rtab-live-card .game-overlay{position:absolute;inset:0;bottom:24px;background:rgba(0,0,0,.4);opacity:0;transition:opacity .18s;display:flex;align-items:center;justify-content:center;}
.rtab-live-card:hover .game-overlay{opacity:1;}

/* ── RTAB SPORTS (sport tiles — original style restored) ── */
.rsb-sport-tabs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px;}
.rsb-tab-btn{
  display:inline-flex;align-items:center;gap:4px;
  padding:4px 10px;border-radius:5px;border:1px solid var(--border);
  background:var(--bg3);color:var(--text2);font-size:9px;font-weight:800;
  cursor:pointer;transition:all .18s;font-family:var(--font-display);
  white-space:nowrap;letter-spacing:.4px;text-transform:uppercase;
}
.rsb-tab-btn:hover{border-color:rgba(245,197,66,.3);color:var(--text1);}
.rsb-tab-btn.active{background:rgba(245,197,66,.1);border-color:rgba(245,197,66,.5);color:var(--gold);}
.rsb-tab-btn.live-rsb-tab{border-color:rgba(0,230,118,.22);color:var(--green-live);}
.rsb-tab-btn.live-rsb-tab.active{background:rgba(0,230,118,.08);border-color:rgba(0,230,118,.5);}
.rsb-tab-cnt{font-size:7px;background:rgba(255,255,255,.07);border-radius:3px;padding:1px 4px;font-weight:900;}
.rsb-tab-btn.active .rsb-tab-cnt{background:rgba(245,197,66,.15);}

/* Sport tiles grid */
.rsb-sport-tiles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px;}
@media(max-width:480px){.rsb-sport-tiles-grid{grid-template-columns:repeat(2,1fr);}}
.rsb-sport-tile{
  border-radius:10px;background:var(--bg3);border:1px solid var(--border);
  padding:10px 6px;cursor:pointer;transition:all .22s;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:5px;
  position:relative;overflow:hidden;min-height:78px;justify-content:center;
}
.rsb-sport-tile::before{content:'';position:absolute;inset:0;opacity:0;transition:opacity .2s;background:linear-gradient(135deg,rgba(245,197,66,.08),rgba(255,153,0,.04));}
.rsb-sport-tile:hover{border-color:rgba(245,197,66,.3);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.4);}
.rsb-sport-tile:hover::before{opacity:1;}
.rsb-sport-tile.live-tile{border-color:rgba(0,230,118,.2);}
.rsb-sport-tile.live-tile::before{background:linear-gradient(135deg,rgba(0,230,118,.06),rgba(0,230,118,.02));}
.rsb-sport-tile.live-tile:hover{border-color:rgba(0,230,118,.45);}
.rsb-tile-dot{position:absolute;top:7px;right:8px;width:5px;height:5px;border-radius:50%;background:var(--green-live);animation:pulse-red 1.2s infinite;}
.rsb-tile-emoji{font-size:24px;line-height:1;}
.rsb-tile-name{font-family:var(--font-display);font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--text1);}
.rsb-tile-count{font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text2);background:var(--bg4);border-radius:4px;padding:1px 7px;}
.rsb-sport-tile.live-tile .rsb-tile-count{color:var(--green-live);background:rgba(0,230,118,.1);}

/* Match list inside sport tile view */
.rsb-matches-list{display:flex;flex-direction:column;gap:5px;max-height:260px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--bg4) transparent;}
.rsb-matches-list::-webkit-scrollbar{width:3px;}
.rsb-matches-list::-webkit-scrollbar-thumb{background:var(--bg4);border-radius:4px;}
@keyframes rsMatchIn{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}}
.rsb-match-row{
  display:flex;align-items:center;gap:6px;
  padding:6px 9px;background:var(--bg3);
  border-radius:7px;border:1px solid var(--border);
  border-left:2px solid transparent;
  cursor:pointer;transition:all .15s;
  animation:rsMatchIn .28s ease-out both;
}
.rsb-match-row:hover{border-color:rgba(245,197,66,.22);border-left-color:var(--gold);background:var(--bg4);}
.rsb-match-row.live-row{border-left-color:var(--green-live);border-color:rgba(0,230,118,.15);}
.rsb-match-row.live-row:hover{border-color:rgba(0,230,118,.35);}
.rsb-live-dot{width:5px;height:5px;border-radius:50%;background:var(--green-live);flex-shrink:0;animation:pulse-red 1.2s infinite;}
.rsb-sport-em{font-size:13px;flex-shrink:0;}
.rsb-match-name{flex:1;font-size:10px;font-weight:700;color:var(--text1);font-family:var(--font-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;}
.rsb-time{font-size:8px;color:var(--text3);font-family:var(--font-mono);flex-shrink:0;}
.rsb-time.live{color:var(--red-hot);font-weight:800;}
.rsb-odds-row{display:flex;gap:3px;flex-shrink:0;}
.rsb-odd-btn{
  width:34px;padding:3px 0;border-radius:4px;
  background:linear-gradient(160deg,#ecf0ff,#e2e8f8);
  border:1px solid rgba(30,40,80,.13);
  text-align:center;cursor:pointer;
  transition:background .14s,border-color .14s,transform .1s;
  display:flex;flex-direction:column;align-items:center;gap:1px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);flex-shrink:0;
}
.rsb-odd-btn:hover{background:linear-gradient(160deg,#fffbe6,#fff3c4);border-color:rgba(245,197,66,.5);transform:translateY(-1px);}
.rsb-odd-lbl{font-size:6px;color:#7080a8;font-weight:800;font-family:var(--font-display);letter-spacing:.3px;text-transform:uppercase;}
.rsb-odd-val{font-size:10px;font-weight:800;color:#18234a;font-family:var(--font-mono);line-height:1.1;}
.rsb-odd-val.loading{color:#b0b8d0;font-size:9px;}
@keyframes flashUp{0%{background:linear-gradient(160deg,#d8ffee,#c0f0da);border-color:rgba(0,230,118,.55);}100%{background:linear-gradient(160deg,#ecf0ff,#e2e8f8);border-color:rgba(30,40,80,.13);}}
@keyframes flashDown{0%{background:linear-gradient(160deg,#ffe4e6,#ffd0d4);border-color:rgba(255,60,90,.55);}100%{background:linear-gradient(160deg,#ecf0ff,#e2e8f8);border-color:rgba(30,40,80,.13);}}
.rsb-odd-btn.flash-up{animation:flashUp .45s ease-out forwards;}
.rsb-odd-btn.flash-down{animation:flashDown .45s ease-out forwards;}
.rsb-odd-btn.flash-up .rsb-odd-val{color:#008a40!important;}
.rsb-odd-btn.flash-down .rsb-odd-val{color:#cc1530!important;}

.rsb-view-all-btn{
  width:100%;margin-top:8px;padding:7px;border-radius:8px;
  background:linear-gradient(90deg,rgba(245,197,66,.1),rgba(255,153,0,.05));
  border:1px solid var(--border2);color:var(--gold);
  font-family:var(--font-display);font-size:10px;font-weight:800;
  letter-spacing:.5px;cursor:pointer;display:flex;align-items:center;
  justify-content:center;gap:5px;transition:all .18s;text-transform:uppercase;
}
.rsb-view-all-btn:hover{background:linear-gradient(90deg,rgba(245,197,66,.2),rgba(255,153,0,.1));}

/* ══════════════════════════════════════
   GAME CARDS
══════════════════════════════════════ */
#page-home .section{margin-bottom:24px;padding:0 12px;}
#page-home .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:0 2px;flex-direction:row;}
#page-home .section-title{font-family:var(--font-display);font-size:13px;font-weight:800;color:var(--text1);display:flex;align-items:center;gap:8px;letter-spacing:.6px;text-transform:uppercase;}
.section-title-badge{font-size:8px;font-weight:900;letter-spacing:.8px;padding:2px 7px;border-radius:3px;background:linear-gradient(90deg,var(--red-hot),#ff6b00);color:#fff;animation:badgePulse 2s ease infinite;text-transform:uppercase;}
@keyframes badgePulse{0%,100%{box-shadow:0 0 0 0 rgba(255,60,90,.4)}50%{box-shadow:0 0 0 5px rgba(255,60,90,0)}}
.section-title-badge.new-badge{background:linear-gradient(90deg,#7c3aed,#a855f7);animation:none;}
.section-title-badge.live-badge{background:linear-gradient(90deg,#00c853,#00e676);color:#000;animation:badgePulse2 1.5s infinite;}
@keyframes badgePulse2{0%,100%{box-shadow:0 0 0 0 rgba(0,200,83,.4)}50%{box-shadow:0 0 0 5px rgba(0,200,83,0)}}
.section-view-all{font-size:9px;color:var(--gold);font-weight:800;cursor:pointer;text-decoration:none;display:flex;align-items:center;gap:4px;transition:gap .18s;font-family:var(--font-display);letter-spacing:.7px;text-transform:uppercase;}
.section-view-all:hover{gap:7px;}
.scroll-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.scroll-row::-webkit-scrollbar{display:none;}
.game-card{position:relative;min-width:105px;max-width:130px;flex-shrink:0;border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s;border:1px solid var(--border);}
.game-card:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 10px 28px rgba(0,0,0,.5),0 0 0 1px rgba(245,197,66,.2);}
.game-thumb{position:relative;overflow:hidden;}
.game-thumb img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;border-radius:9px;transition:transform .35s ease;background:var(--bg3);}
.game-card:hover .game-thumb img{transform:scale(1.07);}
.game-title-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.9));padding:16px 5px 5px;border-radius:0 0 11px 11px;}
.game-name{font-size:8.5px;font-weight:700;color:rgba(255,255,255,.92);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-body);letter-spacing:.1px;}
.game-provider-name{font-size:7px;color:rgba(245,197,66,.7);font-weight:600;margin-top:1px;}
.game-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.42);opacity:0;transition:opacity .18s;border-radius:11px;}
.game-card:hover .game-overlay{opacity:1;}
.play-btn-circle{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--orange));display:flex;align-items:center;justify-content:center;color:#000;font-size:13px;box-shadow:0 4px 18px rgba(245,197,66,.5);transform:scale(.8);transition:transform .18s;}
.game-card:hover .play-btn-circle{transform:scale(1);}
.game-badge{position:absolute;top:7px;font-size:7.5px;font-weight:900;letter-spacing:.5px;padding:2px 6px;border-radius:3px;font-family:var(--font-display);text-transform:uppercase;z-index:3;}
.game-badge.hot{background:linear-gradient(90deg,#ff3c5a,#ff6b00);color:#fff;animation:hotBadgePulse 1.8s ease-in-out infinite;box-shadow:0 0 8px rgba(255,60,90,.5);}
@keyframes hotBadgePulse{0%,100%{box-shadow:0 0 6px rgba(255,60,90,.4);transform:scale(1);}50%{box-shadow:0 0 14px rgba(255,107,0,.6);transform:scale(1.08);}}
.game-badge.new{background:linear-gradient(90deg,#7c3aed,#a855f7);color:#fff;animation:newBadgeGlow 2s ease-in-out infinite;}
@keyframes newBadgeGlow{0%,100%{box-shadow:0 0 6px rgba(124,58,237,.4);}50%{box-shadow:0 0 14px rgba(168,85,247,.6);}}
.game-badge.jackpot{background:linear-gradient(90deg,var(--gold),var(--orange));color:#000;animation:hotBadgePulse 2s ease-in-out infinite;}

/* Aviator solo card */
.rtab-aviator-solo{
  position:relative;border-radius:12px;overflow:hidden;cursor:pointer;
  background:var(--bg3);border:1px solid rgba(0,207,255,.2);
  transition:transform .2s,box-shadow .2s;margin-top:8px;
}
.rtab-aviator-solo:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,207,255,.2),0 0 0 1px rgba(0,207,255,.3);}
.rtab-aviator-solo img{width:100%;aspect-ratio:16/9;display:block;object-fit:cover;}
.rtab-aviator-solo .game-overlay{position:absolute;inset:0;bottom:36px;background:rgba(0,0,0,.35);opacity:0;transition:opacity .2s;display:flex;align-items:center;justify-content:center;}
.rtab-aviator-solo:hover .game-overlay{opacity:1;}
.rtab-aviator-label{
  padding:8px;text-align:center;font-size:11px;font-weight:900;
  letter-spacing:1.5px;text-transform:uppercase;
  background:linear-gradient(90deg,rgba(0,207,255,.12),rgba(255,60,90,.08));
  color:var(--cyan);font-family:var(--font-display);
}
.game-players{position:absolute;bottom:44px;right:5px;font-size:8.5px;color:rgba(255,255,255,.75);display:flex;align-items:center;gap:3px;background:rgba(0,0,0,.6);padding:2px 5px;border-radius:8px;}
.game-players .dot{width:4px;height:4px;border-radius:50%;background:var(--green-live);animation:pulse-green 1.5s infinite;}
.game-players b{color:var(--green-live);}
.multiplier-badge{position:absolute;top:7px;right:7px;background:rgba(0,0,0,.7);border:1px solid rgba(245,197,66,.4);border-radius:5px;padding:2px 5px;font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--gold);}
.filter-chips{display:flex;gap:5px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none;}
.filter-chips::-webkit-scrollbar{display:none;}
.filter-chip{flex-shrink:0;padding:5px 12px;border-radius:20px;border:1px solid var(--border);background:var(--bg2);color:var(--text2);font-size:10px;font-weight:700;cursor:pointer;transition:all .18s;font-family:var(--font-display);white-space:nowrap;text-transform:uppercase;letter-spacing:.4px;}
.filter-chip.active{background:rgba(245,197,66,.14);border-color:rgba(245,197,66,.5);color:var(--gold);}
.filter-chip:hover{border-color:rgba(245,197,66,.3);color:var(--text1);}

/* ══════════════════════════════════════
   SEARCH
══════════════════════════════════════ */
.search-bar{margin:12px 12px 14px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;display:flex;align-items:center;overflow:visible;transition:border-color .2s,box-shadow .2s;position:relative;}
.search-bar:focus-within{border-color:rgba(245,197,66,.4);box-shadow:0 0 0 3px rgba(245,197,66,.08);}
.search-category{position:relative;cursor:pointer;padding:0 12px;display:flex;align-items:center;gap:5px;height:44px;border-right:1px solid var(--border);font-size:11px;font-weight:800;color:var(--text2);flex-shrink:0;font-family:var(--font-display);transition:color .18s;text-transform:uppercase;letter-spacing:.4px;}
.search-category:hover{color:var(--gold);}
.search-category-dropdown{display:none;position:absolute;top:calc(100% + 6px);left:0;background:var(--bg2);border:1px solid var(--border2);border-radius:10px;min-width:155px;z-index:500;overflow:hidden;box-shadow:0 12px 36px rgba(0,0,0,.6);}
.search-category-dropdown.open{display:block;animation:dropIn .18s ease;}
@keyframes dropIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.search-cat-option{padding:9px 14px;font-size:11px;cursor:pointer;color:var(--text2);transition:background .12s,color .12s;font-family:var(--font-display);display:flex;align-items:center;gap:7px;}
.search-cat-option:hover,.search-cat-option.active{background:linear-gradient(90deg,rgba(245,197,66,.12),transparent);color:var(--gold);}
.search-input-wrap{flex:1;display:flex;align-items:center;gap:9px;padding:0 12px;}
.search-input-wrap i{color:var(--text3);font-size:13px;}
.search-input-wrap input{flex:1;background:none;border:none;outline:none;color:var(--text1);font-size:13px;font-family:var(--font-body);height:44px;}
.search-input-wrap input::placeholder{color:var(--text3);}
.search-clear{cursor:pointer;color:var(--text3);padding:0 3px;transition:color .15s;}
.search-clear:hover{color:var(--gold);}
.search-results-panel{margin:0 12px 16px;background:var(--bg2);border-radius:12px;border:1px solid var(--border2);padding:14px;animation:fadeSlideIn .22s ease;}
@keyframes fadeSlideIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.search-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:11px;color:var(--text2);}
.search-results-close{background:none;border:none;color:var(--text2);cursor:pointer;font-size:14px;transition:color .15s;}
.search-results-close:hover{color:var(--gold);}

/* ══════════════════════════════════════
   SPORTSBOOK
══════════════════════════════════════ */
.sb-wrapper{margin:0 12px 24px;border-top:1px solid rgba(255,255,255,.04);padding-top:14px;}
.sb-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 2px;}
.sb-title{font-family:var(--font-display);font-size:13px;font-weight:800;color:var(--text1);display:flex;align-items:center;gap:8px;letter-spacing:.6px;text-transform:uppercase;}
.sb-sport-tabs{display:flex;gap:5px;margin-bottom:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:3px;}
.sb-sport-tabs::-webkit-scrollbar{display:none;}
.sb-sport-tab{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:5px;border:1px solid var(--border);background:var(--bg2);color:var(--text3);font-size:9px;font-weight:800;cursor:pointer;transition:all .16s;white-space:nowrap;font-family:var(--font-display);flex-shrink:0;letter-spacing:.5px;text-transform:uppercase;}
.sb-sport-tab:hover{border-color:rgba(245,197,66,.3);color:var(--text1);}
.sb-sport-tab.active{background:rgba(245,197,66,.1);border-color:rgba(245,197,66,.5);color:var(--gold);}
.sb-sport-tab .tab-count{font-size:7px;background:rgba(255,255,255,.07);border-radius:3px;padding:1px 4px;font-weight:900;}
.sb-sport-tab.active .tab-count{background:rgba(245,197,66,.15);color:var(--gold);}
.sb-sport-tab.live-tab{border-color:rgba(0,230,118,.22);color:var(--green-live);}
.sb-sport-tab.live-tab.active{background:rgba(0,230,118,.08);border-color:rgba(0,230,118,.5);}

/* Match grid */
.sb-matches-list{display:grid;grid-template-columns:1fr;gap:4px;}
.sb-hidden{display:none!important;}
@keyframes sbRowIn{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}}
.sb-match-row{
  display:flex;align-items:center;gap:7px;padding:8px 10px;
  background:var(--bg2);border-radius:7px;border:1px solid var(--border);
  border-left:3px solid transparent;cursor:pointer;
  transition:border-color .14s,background .14s,border-left-color .14s,box-shadow .14s;
  animation:sbRowIn .28s ease-out both;width:100%;min-width:0;
}
.sb-match-row:hover{background:var(--bg3);border-color:rgba(245,197,66,.22);border-left-color:var(--gold);box-shadow:0 2px 10px rgba(0,0,0,.2);}
.sb-match-row.sb-live-row{border-left-color:var(--green-live);border-color:rgba(0,230,118,.16);background:linear-gradient(90deg,rgba(0,230,118,.03) 0%,transparent 50%);}
.sb-match-row.sb-live-row:hover{border-color:rgba(0,230,118,.38);}
.sb-row-live-dot{width:5px;height:5px;border-radius:50%;background:var(--green-live);flex-shrink:0;animation:pulse-red 1.2s infinite;}
.sb-row-sport{font-size:14px;flex-shrink:0;line-height:1;}
.sb-row-info{flex:1;min-width:0;max-width:calc(100% - 125px);overflow:hidden;}
.sb-row-league{font-size:8px;color:var(--text3);font-family:var(--font-display);font-weight:700;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1;margin-bottom:2px;}
.sb-row-name{font-size:11px;font-weight:700;color:var(--text1);font-family:var(--font-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25;}
.sb-row-time{font-size:8px;color:var(--text3);font-family:var(--font-mono);font-weight:600;flex-shrink:0;min-width:28px;text-align:right;line-height:1;}
.sb-row-time.live{color:var(--red-hot);font-weight:800;}
.sb-row-odds{display:flex;gap:3px;flex-shrink:0;align-items:stretch;}
.sb-row-odd{
  width:42px;min-width:38px;padding:4px 2px;border-radius:5px;
  background:linear-gradient(160deg,#ecf0ff,#e2e8f8);
  border:1px solid rgba(30,40,80,.14);text-align:center;cursor:pointer;
  transition:background .13s,border-color .13s,transform .09s;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);flex-shrink:0;
}
.sb-row-odd:hover{background:linear-gradient(160deg,#fffbe6,#fff3c4);border-color:rgba(245,197,66,.55);transform:translateY(-1px);box-shadow:0 3px 10px rgba(245,197,66,.15),inset 0 1px 0 #fff;}
.sb-row-odd:active{transform:scale(.94);}
.sb-row-odd-lbl{font-size:6.5px;color:#7080a8;font-weight:800;font-family:var(--font-display);letter-spacing:.3px;text-transform:uppercase;line-height:1;}
.sb-row-odd-val{font-size:11px;font-weight:800;color:#18234a;font-family:var(--font-mono);line-height:1.15;}
.sb-row-odd-val.loading{color:#b0bcd8;font-size:10px;animation:oddShimmer 1.2s ease-in-out infinite;}
@keyframes oddShimmer{0%,100%{opacity:.35}50%{opacity:.7}}
@keyframes sbOddUp{0%{background:linear-gradient(160deg,#d8ffee,#c0f0da);border-color:rgba(0,230,118,.55);}100%{background:linear-gradient(160deg,#ecf0ff,#e2e8f8);border-color:rgba(30,40,80,.14);}}
@keyframes sbOddDown{0%{background:linear-gradient(160deg,#ffe4e6,#ffd0d4);border-color:rgba(255,60,90,.55);}100%{background:linear-gradient(160deg,#ecf0ff,#e2e8f8);border-color:rgba(30,40,80,.14);}}
.sb-row-odd.flash-up{animation:sbOddUp .45s ease-out forwards;}
.sb-row-odd.flash-down{animation:sbOddDown .45s ease-out forwards;}
.sb-row-odd.flash-up .sb-row-odd-val{color:#008a40!important;}
.sb-row-odd.flash-down .sb-row-odd-val{color:#cc1530!important;}
.sb-row-badges{display:none;}
.sb-row-badge{font-size:6px;font-weight:900;padding:1px 4px;border-radius:2px;font-family:var(--font-display);letter-spacing:.3px;white-space:nowrap;text-transform:uppercase;display:inline-flex;align-items:center;vertical-align:middle;margin-left:4px;}
.sb-row-badge.bm{background:rgba(0,207,255,.12);color:var(--cyan);}
.sb-row-badge.fc{background:rgba(155,89,250,.12);color:#b57dfa;}
.sb-show-more{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:9px;margin-top:6px;background:transparent;border:1px dashed rgba(255,255,255,.09);border-radius:7px;color:var(--text3);font-size:10px;font-weight:700;cursor:pointer;font-family:var(--font-display);letter-spacing:.5px;transition:all .16s;text-transform:uppercase;grid-column:1/-1;}
.sb-show-more:hover{border-color:rgba(245,197,66,.4);color:var(--gold);}
.sb-show-more i{font-size:9px;transition:transform .18s;}
.sb-show-more:hover i{transform:translateY(2px);}
.sb-skeleton{background:var(--bg2);border:1px solid var(--border);border-radius:7px;padding:10px;animation:shimmer 1.4s ease-in-out infinite;}
@keyframes shimmer{0%,100%{opacity:.4}50%{opacity:.85}}
.sb-skel-line{height:9px;border-radius:4px;background:var(--bg4);margin-bottom:7px;}
.sb-skel-line.short{width:38%;}.sb-skel-line.med{width:62%;}
/* Racing section removed */
.sb-empty{padding:36px 16px;text-align:center;color:var(--text2);grid-column:1/-1;}
.sb-empty i{font-size:24px;color:var(--text3);display:block;margin-bottom:10px;}
.sb-empty p{font-size:11px;}


/* Sportsbook responsive */
@media(min-width:1200px){.sb-wrapper{margin:0 24px 28px;}.sb-matches-list{grid-template-columns:repeat(3,1fr);gap:6px;}.sb-match-row{padding:9px 12px;}.sb-row-info{max-width:calc(100% - 125px);}.sb-row-odd{width:44px;}.sb-row-odd-val{font-size:12px;}.sb-title{font-size:14px;}}
@media(min-width:900px) and (max-width:1199px){.sb-wrapper{margin:0 18px 26px;}.sb-matches-list{grid-template-columns:repeat(2,1fr);gap:5px;}.sb-row-info{max-width:calc(100% - 122px);}.sb-row-odd{width:42px;}}
@media(min-width:640px) and (max-width:899px){.sb-matches-list{grid-template-columns:repeat(2,1fr);gap:5px;}.sb-row-info{max-width:calc(100% - 118px);}.sb-row-odd{width:38px;min-width:36px;}.sb-row-odd-val{font-size:10px;}.sb-row-odd-lbl{font-size:6px;}.sb-row-time{font-size:7.5px;}}
@media(max-width:639px){.sb-wrapper{margin:0 10px 20px;}.sb-match-row{padding:7px 9px;gap:6px;}.sb-row-name{font-size:10.5px;}.sb-row-info{max-width:calc(100% - 115px);}.sb-row-odd{width:36px;min-width:34px;padding:4px 1px;}.sb-row-odd-val{font-size:10px;}.sb-row-odd-lbl{font-size:5.5px;}.sb-row-odds{gap:2px;}.sb-sport-tab{font-size:8.5px;padding:4px 8px;}}
@media(max-width:400px){.sb-match-row{gap:5px;padding:6px 7px;border-left-width:2px;}.sb-row-sport{font-size:12px;}.sb-row-name{font-size:10px;}.sb-row-info{max-width:calc(100% - 106px);}.sb-row-odd{width:32px;min-width:30px;}.sb-row-odd-val{font-size:9.5px;}.sb-row-badges{display:none;}.sb-row-time{min-width:22px;font-size:7px;}}

/* ══════════════════════════════════════
   LIVE CASINO
══════════════════════════════════════ */
.live-casino-card{position:relative;min-width:190px;max-width:215px;border-radius:12px;overflow:hidden;cursor:pointer;flex-shrink:0;transition:transform .22s,box-shadow .22s;border:1px solid rgba(255,255,255,.07);}
@keyframes lcCardIn{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
.live-casino-card:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 14px 36px rgba(0,0,0,.6);}
.live-casino-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:var(--bg3);}
.live-casino-info{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.92));padding:26px 11px 11px;}
.live-casino-title{font-size:12px;font-weight:800;color:#fff;font-family:var(--font-display);}
.live-casino-players{font-size:9.5px;color:var(--green-live);display:flex;align-items:center;gap:3px;margin-top:2px;}
.live-casino-badge{position:absolute;top:7px;left:7px;background:rgba(0,230,118,.18);border:1px solid rgba(0,230,118,.4);color:var(--green-live);font-size:7.5px;font-weight:800;padding:2px 6px;border-radius:3px;font-family:var(--font-display);animation:fadeInOut 1.5s infinite;}
.casino-section-tabs{display:flex;gap:5px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none;}
.casino-section-tabs::-webkit-scrollbar{display:none;}
.casino-tab-btn{flex-shrink:0;padding:5px 12px;border-radius:5px;border:1px solid var(--border);background:var(--bg2);color:var(--text2);font-size:9px;font-weight:800;cursor:pointer;transition:all .16s;font-family:var(--font-display);letter-spacing:.4px;text-transform:uppercase;}
.casino-tab-btn.active{background:rgba(155,89,250,.14);border-color:rgba(155,89,250,.45);color:var(--purple);}
.casino-tab-btn:hover{border-color:rgba(155,89,250,.28);color:var(--text1);}

/* ══════════════════════════════════════
   CRASH PREVIEW
══════════════════════════════════════ */
.crash-preview{background:linear-gradient(135deg,#07091a,#0e1428);border:1px solid rgba(0,207,255,.15);border-radius:12px;padding:12px;position:relative;overflow:hidden;margin-bottom:10px;}
.crash-multiplier{font-family:var(--font-mono);font-size:32px;font-weight:800;color:var(--cyan);letter-spacing:2px;}

/* ══════════════════════════════════════
   PROVIDERS
══════════════════════════════════════ */
.providers-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;}
.providers-row::-webkit-scrollbar{display:none;}
.provider-badge{flex-shrink:0;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:10px 16px;display:flex;align-items:center;gap:6px;cursor:pointer;transition:all .18s;white-space:nowrap;text-decoration:none;}
.provider-badge:hover{border-color:rgba(245,197,66,.4);background:rgba(245,197,66,.05);transform:translateY(-2px);}
.provider-badge span{font-size:10px;font-weight:800;color:var(--text2);font-family:var(--font-display);transition:color .18s;letter-spacing:.5px;text-transform:uppercase;}
.provider-badge:hover span{color:var(--gold);}

/* ══════════════════════════════════════
   SUPPORT BUBBLE
══════════════════════════════════════ */
/* ── SUPPORT BUBBLE — see head_blade for styles ── */

/* ══════════════════════════════════════
   GLOBAL RESPONSIVE
══════════════════════════════════════ */
@media(min-width:900px){
  #page-home .section{padding:0 20px;margin-bottom:28px;}
  #page-home .section-header{margin-bottom:14px;}
  #page-home .section-title{font-size:16px;}
  #page-home .game-card{min-width:140px;max-width:165px;}
  #page-home .scroll-row{gap:12px;}
  #page-home .rtab-main-wrapper{padding:14px 20px;gap:14px;}
  #page-home .rtab-sidebar{width:82px;}
  #page-home .rtab-btn{padding:13px 4px;}
  #page-home .rtab-icon-wrap{width:34px;height:34px;border-radius:9px;}
  #page-home .rtab-btn span{font-size:8.5px;}
  #page-home .rtab-content{padding:14px;}
  #page-home .rtab-grid{grid-template-columns:repeat(5,1fr);gap:10px;}
  #page-home .search-bar{margin:12px 20px 14px;}
  #page-home .search-results-panel{margin:0 20px 16px;}
  #page-home .live-casino-card{min-width:215px;max-width:245px;}
}
@media(min-width:1200px){
  #page-home .section{padding:0 30px;margin-bottom:32px;}
  #page-home .rtab-main-wrapper{padding:16px 30px;gap:16px;}
  #page-home .rtab-sidebar{width:90px;}
  #page-home .rtab-icon-wrap{width:38px;height:38px;}
  #page-home .rtab-btn span{font-size:9px;}
  #page-home .rtab-content{padding:16px;}
  #page-home .rtab-grid{grid-template-columns:repeat(6,1fr);gap:12px;}
  #page-home .search-bar{margin:14px 30px 16px;}
  #page-home .search-results-panel{margin:0 30px 18px;}
  #page-home .game-card{min-width:155px;max-width:180px;}
  #page-home .scroll-row{gap:14px;}
  #page-home .section-title{font-size:18px;}
  #page-home .live-casino-card{min-width:230px;max-width:260px;}
  #page-home .rsb-sport-tiles-grid{grid-template-columns:repeat(3,1fr);gap:10px;}
}
@media(min-width:1600px){
  #page-home .section{padding:0 40px;}
  #page-home .rtab-main-wrapper{padding:18px 40px;}
  #page-home .rtab-grid{grid-template-columns:repeat(7,1fr);}
  #page-home .game-card{min-width:165px;max-width:195px;}
}
@media(max-width:600px){
  #page-home .section{margin-bottom:18px;padding:0 8px;}
  #page-home .rtab-main-wrapper{padding:6px 4px;gap:5px;}
  #page-home .rtab-content{padding:6px;}
  #page-home .rtab-sidebar{width:48px;}
  #page-home .rtab-btn{padding:8px 2px;}
  #page-home .rtab-icon-wrap{width:28px;height:28px;border-radius:7px;}
  #page-home .rtab-icon{font-size:13px;}
  #page-home .rtab-btn span{font-size:6px;letter-spacing:0;}
  #page-home .game-card{min-width:unset;max-width:unset;}
  #page-home .live-casino-card{min-width:unset;max-width:unset;}
  #page-home .filter-chip{font-size:8.5px;padding:4px 9px;}
  #page-home .casino-tab-btn{font-size:8px;padding:4px 9px;}
  #page-home .rsb-sport-tiles-grid{grid-template-columns:repeat(2,1fr);}
  #page-home .slider-wrap{margin-bottom:0;}
}
@media(max-width:380px){
  #page-home .rtab-sidebar{width:42px;}
  #page-home .rtab-btn span{display:none;}
  #page-home .rtab-icon-wrap{width:26px;height:26px;}
  #page-home .rtab-btn{padding:7px 2px;}
}

/* ══════════════════════════════════════
   MOBILE: 1:1 images + 3-col grid
══════════════════════════════════════ */
@media(max-width:768px){
  #page-home .scroll-row{
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:7px;
    overflow-x:visible !important;
    padding:0 8px;
  }
  #page-home .game-card{
    min-width:unset !important;
    max-width:unset !important;
    width:100%;
    border-radius:8px;
  }
  #page-home .game-thumb img{
    aspect-ratio:1/1 !important;
    border-radius:7px;
  }
  #page-home .game-title-overlay{
    padding:12px 4px 4px !important;
  }
  #page-home .game-name{
    font-size:8px !important;
  }
  #page-home .game-provider-name{
    font-size:7px !important;
  }
  #page-home .game-badge{
    font-size:6px !important;
    padding:1px 4px !important;
    top:3px !important;
    right:3px !important;
  }
  #page-home .game-players{
    font-size:7px !important;
    padding:2px 4px !important;
  }
  #page-home .rtab-game-card{
    aspect-ratio:1/1 !important;
  }
  #page-home .rtab-game-card img{
    aspect-ratio:1/1 !important;
    object-fit:cover;
  }
  #page-home .live-casino-card{
    min-width:unset !important;
    max-width:unset !important;
    width:100%;
    border-radius:8px;
  }
  #page-home .live-casino-card img{
    aspect-ratio:1/1 !important;
  }
  #page-home .live-casino-title{
    font-size:8px !important;
    font-weight:700;
  }
  #page-home .live-casino-players{
    font-size:7px !important;
    margin-top:1px;
  }
  #page-home .live-casino-info{
    padding:10px 5px 5px !important;
  }
  #page-home .live-casino-badge{
    font-size:7px !important;
    padding:1px 5px !important;
    top:3px !important;
    left:3px !important;
  }
  #page-home .casino-section-tabs{
    gap:3px;margin-bottom:8px;
  }
  #page-home .casino-tab-btn{
    font-size:7px !important;
    padding:3px 7px !important;
  }
  .rtab-grid{
    grid-template-columns:repeat(3,1fr) !important;
  }
  #page-home .view-all-card{
    aspect-ratio:1/1 !important;
  }
}

/* ══════════════════════════════════════
   NOTIFICATION POPUP (admin-controlled)
══════════════════════════════════════ */
.notif-overlay{
  display:none;position:fixed;inset:0;z-index:1100;
  background:rgba(2,4,16,.85);backdrop-filter:blur(12px);
  align-items:center;justify-content:center;padding:16px;
}
.notif-overlay.open{display:flex;}
@keyframes popupIn{from{opacity:0;transform:scale(.9) translateY(28px)}to{opacity:1;transform:scale(1) translateY(0)}}
.notif-popup{
  position:relative;width:100%;max-width:400px;
  border-radius:20px;overflow:hidden;
  background:linear-gradient(180deg,#0d1228,#090e1e);
  border:1px solid rgba(245,197,66,.2);
  animation:popupIn .38s cubic-bezier(.34,1.4,.64,1);
  box-shadow:0 40px 100px rgba(0,0,0,.8);
}
.notif-popup-ribbon{height:3px;background:linear-gradient(90deg,var(--gold),var(--orange),var(--gold));background-size:200%;animation:notifRibbon 3s linear infinite;}
@keyframes notifRibbon{0%{background-position:0%}100%{background-position:200%}}
.notif-popup-header{padding:24px 24px 12px;text-align:center;position:relative;}
.notif-popup-icon{font-size:36px;color:var(--gold);margin-bottom:8px;filter:drop-shadow(0 0 12px rgba(245,197,66,.4));}
.notif-popup-title{font-family:var(--font-display);font-size:20px;font-weight:800;color:var(--text1);letter-spacing:.3px;}
.notif-close{
  position:absolute;top:14px;right:14px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.7);width:30px;height:30px;border-radius:50%;
  cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;
  transition:all .18s;z-index:5;
}
.notif-close:hover{background:rgba(255,60,90,.25);border-color:rgba(255,60,90,.4);color:#fff;}
.notif-popup-body{padding:0 24px 20px;font-size:13px;color:var(--text2);line-height:1.7;text-align:center;}
.notif-popup-ok{
  display:block;width:calc(100% - 48px);margin:0 24px 20px;padding:12px;border-radius:12px;border:none;
  cursor:pointer;font-size:13px;font-weight:800;font-family:var(--font-display);letter-spacing:.5px;
  background:linear-gradient(135deg,var(--gold),var(--orange));color:#000;
  box-shadow:0 6px 20px rgba(245,197,66,.3);transition:all .2s;
}
.notif-popup-ok:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(245,197,66,.4);}
.notif-popup-ok:active{transform:scale(.98);}

/* ═════════════════════════════════════════════════════════
   SPORTS SECTION — LIGHT OVERRIDE (Sports tab only)
   Scoped to #rtab-sports so other tabs remain dark.
═════════════════════════════════════════════════════════ */
#rtab-sports{
  --rsb-bg:        #f8fafc;
  --rsb-card:      #ffffff;
  --rsb-card-2:    #f1f5f9;
  --rsb-border:    #e2e8f0;
  --rsb-border-2:  #cbd5e1;
  --rsb-text:      #0f172a;
  --rsb-text-2:    #475569;
  --rsb-text-3:    #94a3b8;
  --rsb-accent:    #d97706;
  --rsb-accent-bg: #fef3c7;
  --rsb-green:     #16a34a;
  --rsb-green-bg:  #dcfce7;
  --rsb-back-bg:   #dbeafe;
  --rsb-back-tx:   #1d4ed8;
  --rsb-lay-bg:    #fce7f3;
  --rsb-lay-tx:    #be185d;
  background:var(--rsb-bg);
  border:1px solid var(--rsb-border);
  border-radius:14px;
  padding:14px;
  box-shadow:0 2px 10px rgba(15,23,42,.04);
}

/* Sport-tab pills */
#rtab-sports .rsb-sport-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px;}
#rtab-sports .rsb-tab-btn{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--rsb-card);border:1px solid var(--rsb-border);color:var(--rsb-text-2);
  padding:7px 12px;border-radius:18px;font-size:11px;font-weight:800;
  cursor:pointer;transition:all .15s;font-family:var(--font-display,'Oxanium',sans-serif);
}
#rtab-sports .rsb-tab-btn:hover{border-color:var(--rsb-accent);color:var(--rsb-text);}
#rtab-sports .rsb-tab-btn.active{
  background:var(--rsb-accent-bg);border-color:var(--rsb-accent);color:var(--rsb-accent);
  box-shadow:0 2px 8px rgba(217,119,6,.18);
}
#rtab-sports .rsb-tab-btn.live-rsb-tab{border-color:var(--rsb-green);color:var(--rsb-green);}
#rtab-sports .rsb-tab-btn.live-rsb-tab.active{background:var(--rsb-green-bg);}
#rtab-sports .rsb-tab-cnt{
  background:rgba(15,23,42,.06);color:var(--rsb-text-2);
  border-radius:8px;padding:1px 6px;font-size:9px;font-weight:900;
}
#rtab-sports .rsb-tab-btn.active .rsb-tab-cnt{background:rgba(217,119,6,.18);color:var(--rsb-accent);}

/* Sport tile cards (homepage grid) */
#rtab-sports .rsb-sport-tiles-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;
}
@media(max-width:480px){#rtab-sports .rsb-sport-tiles-grid{grid-template-columns:repeat(2,1fr);}}
#rtab-sports .rsb-sport-tile{
  position:relative;background:var(--rsb-card);border:1px solid var(--rsb-border);
  border-radius:12px;padding:14px 10px;display:flex;flex-direction:column;
  align-items:center;gap:5px;cursor:pointer;transition:all .2s;
  box-shadow:0 1px 3px rgba(15,23,42,.04);
}
#rtab-sports .rsb-sport-tile::before{display:none;}
#rtab-sports .rsb-sport-tile:hover{
  border-color:var(--rsb-accent);transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(217,119,6,.15);
}
#rtab-sports .rsb-sport-tile.live-tile{border-color:var(--rsb-green);background:var(--rsb-green-bg);}
#rtab-sports .rsb-sport-tile.live-tile:hover{box-shadow:0 6px 18px rgba(22,163,74,.2);}
#rtab-sports .rsb-tile-dot{
  position:absolute;top:7px;right:8px;width:6px;height:6px;border-radius:50%;
  background:var(--rsb-green);box-shadow:0 0 6px var(--rsb-green);
}
#rtab-sports .rsb-tile-emoji{font-size:26px;line-height:1;}
#rtab-sports .rsb-tile-name{
  font-family:var(--font-display,'Oxanium',sans-serif);
  font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;
  color:var(--rsb-text);
}
#rtab-sports .rsb-tile-count{
  font-size:9.5px;font-weight:700;color:var(--rsb-text-2);
  background:var(--rsb-card-2);border:1px solid var(--rsb-border);
  border-radius:6px;padding:1px 7px;
}
#rtab-sports .rsb-sport-tile.live-tile .rsb-tile-count{
  color:var(--rsb-green);background:#fff;border-color:var(--rsb-green);
}

/* Match list rows */
#rtab-sports .rsb-matches-list{
  display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto;
  scrollbar-width:thin;background:var(--rsb-card-2);border-radius:10px;padding:6px;
}
#rtab-sports .rsb-match-row{
  display:flex;align-items:center;gap:8px;padding:9px 11px;
  background:var(--rsb-card);border:1px solid var(--rsb-border);border-radius:8px;
  cursor:pointer;transition:all .15s;border-left:3px solid var(--rsb-border);
}
#rtab-sports .rsb-match-row:hover{
  border-color:var(--rsb-accent);border-left-color:var(--rsb-accent);
  transform:translateX(2px);
}
#rtab-sports .rsb-match-row.live-row{border-left-color:var(--rsb-green);}
#rtab-sports .rsb-match-row.live-row:hover{border-color:var(--rsb-green);}
#rtab-sports .rsb-live-dot{
  width:7px;height:7px;border-radius:50%;background:var(--rsb-green);
  box-shadow:0 0 6px var(--rsb-green);flex-shrink:0;
}
#rtab-sports .rsb-sport-em{font-size:16px;flex-shrink:0;}
#rtab-sports .rsb-match-name{
  flex:1;font-family:var(--font-display,'Oxanium',sans-serif);
  font-size:11px;font-weight:700;color:var(--rsb-text);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
#rtab-sports .rsb-time{
  font-size:10px;font-weight:700;color:var(--rsb-text-2);
  font-family:var(--font-mono,monospace);flex-shrink:0;
}
#rtab-sports .rsb-time.live{color:var(--rsb-green);}

/* Odds buttons in match rows */
#rtab-sports .rsb-odds-row{display:flex;gap:4px;flex-shrink:0;}
#rtab-sports .rsb-odd-btn{
  display:flex;flex-direction:column;align-items:center;
  min-width:42px;padding:4px 6px;border-radius:6px;
  background:var(--rsb-back-bg);border:1px solid #93c5fd;
}
#rtab-sports .rsb-odd-btn:nth-child(2){background:var(--rsb-card-2);border-color:var(--rsb-border);}
#rtab-sports .rsb-odd-btn:nth-child(3){background:var(--rsb-lay-bg);border-color:#f9a8d4;}
#rtab-sports .rsb-odd-lbl{font-size:8px;font-weight:800;color:var(--rsb-text-2);text-transform:uppercase;}
#rtab-sports .rsb-odd-val{
  font-size:12px;font-weight:800;color:var(--rsb-text);
  font-family:var(--font-mono,'Rajdhani',sans-serif);
}
#rtab-sports .rsb-odd-val.loading{color:var(--rsb-text-3);}

/* "View Full Sportsbook" button */
#rtab-sports .rsb-view-all-btn{
  display:flex;align-items:center;justify-content:center;gap:6px;
  width:100%;margin-top:12px;padding:10px;border-radius:10px;
  background:linear-gradient(135deg,var(--rsb-accent),#f59e0b);
  border:none;color:#fff;font-size:12px;font-weight:800;cursor:pointer;
  font-family:var(--font-display,'Oxanium',sans-serif);letter-spacing:.5px;
  box-shadow:0 4px 12px rgba(217,119,6,.25);transition:all .2s;
}
#rtab-sports .rsb-view-all-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(217,119,6,.35);}
#rtab-sports .rsb-view-all-btn i{font-size:14px;}

@keyframes rtabFade{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}

/* ═════════════════════════════════════════════════════════
   GLOBAL RESPONSIVE IMAGE GUARDS
   Defensive rules so any homepage <img> stays inside its
   container and never overflows on small screens.
═════════════════════════════════════════════════════════ */
#page-home img{
  max-width:100%;
  height:auto;
  display:block;
}
#page-home .rtab-game-card img,
#page-home .rtab-live-card img,
#page-home .game-thumb img,
#page-home .lc-card img,
#page-home .rtab-aviator-solo img{
  width:100%;
  height:100%;
  object-fit:cover;
}
#page-home .rtab-game-card,
#page-home .rtab-live-card,
#page-home .lc-card{
  contain:layout style;
}
@media(max-width:480px){
  #page-home .rtab-grid{gap:4px;}
  #page-home .rtab-live-grid{gap:5px;}
}
@media(max-width:360px){
  #page-home .rtab-game-card .game-name-float{font-size:7px;padding:8px 3px 3px;}
}

/* ═════════════════════════════════════════════════════════
   SPORTSBOOK SECTION POLISH (#rtab-sports + sb-wrapper)
   Adds: stronger borders, smoother hover, mobile-first sizing,
   live indicators that don't break alignment.
═════════════════════════════════════════════════════════ */
#rtab-sports{
  /* Slight inner glow so the section pops on the dark page */
  box-shadow:0 2px 14px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.6);
}
#rtab-sports .rsb-sport-tile{
  position:relative;
  overflow:hidden;
}
#rtab-sports .rsb-sport-tile::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(135deg,transparent 60%,rgba(217,119,6,.06));
  opacity:0;transition:opacity .25s;
  pointer-events:none;
}
#rtab-sports .rsb-sport-tile:hover::after{opacity:1;}
#rtab-sports .rsb-sport-tile.live-tile::before{
  content:'';
  position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--rsb-green),transparent);
}

/* Match list rows: smoother scroll + fade-in */
#rtab-sports .rsb-matches-list{
  scrollbar-width:thin;
  scrollbar-color:var(--rsb-border-2) transparent;
}
#rtab-sports .rsb-matches-list::-webkit-scrollbar{width:6px;}
#rtab-sports .rsb-matches-list::-webkit-scrollbar-thumb{
  background:var(--rsb-border-2);border-radius:3px;
}
#rtab-sports .rsb-match-row{
  animation:rsbRowIn .3s ease-out both;
}
@keyframes rsbRowIn{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}}

/* "Watch Live" pulse on live rows */
#rtab-sports .rsb-match-row.live-row .rsb-live-dot{
  animation:rsbLiveDot 1.2s infinite;
}
@keyframes rsbLiveDot{
  0%,100%{box-shadow:0 0 0 0 rgba(22,163,74,.6);transform:scale(1);}
  50%{box-shadow:0 0 0 6px rgba(22,163,74,0);transform:scale(1.08);}
}

/* Make the match list fully responsive */
@media(max-width:480px){
  #rtab-sports{padding:10px;}
  #rtab-sports .rsb-tab-btn{padding:6px 10px;font-size:10px;}
  #rtab-sports .rsb-sport-tile{padding:11px 8px;}
  #rtab-sports .rsb-tile-emoji{font-size:22px;}
  #rtab-sports .rsb-match-row{padding:8px 9px;gap:6px;}
  #rtab-sports .rsb-match-name{font-size:10px;}
  #rtab-sports .rsb-odd-btn{min-width:36px;padding:3px 4px;}
  #rtab-sports .rsb-odd-val{font-size:11px;}
}

/* Legacy .sb-wrapper sportsbook section — make rows breathe */
#page-home .sb-wrapper{
  background:linear-gradient(180deg,rgba(10,13,28,.4),transparent);
  border-radius:12px;padding:14px 12px 18px;
  border:1px solid rgba(245,197,66,.08);
}
#page-home .sb-row{
  transition:transform .15s,border-color .15s;
}
#page-home .sb-row:hover{
  transform:translateX(2px);
  border-color:rgba(245,197,66,.25)!important;
}
