/* ── 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;
  /* Extended palette — used by section accents, badges, and colourful highlights */
  --indigo:      #6366f1;
  --sky:         #38bdf8;
  --mint:        #34d399;
  --amber:       #f59e0b;
  --rose:        #fb7185;
  --violet:      #a78bfa;
  --lime:        #a3e635;
  /* Gradient presets for section titles / badges / glows */
  --grad-fire:   linear-gradient(135deg,#ff3c5a,#ff7c2a,#ffd700);
  --grad-ocean:  linear-gradient(135deg,#c9a84c,#e8c96a,#a8873a);
  --grad-neon:   linear-gradient(135deg,#e8e8e8,#a0a0a0,#666);
  --grad-sunset: linear-gradient(135deg,#c9a84c,#e8c96a,#a8873a);
  --grad-royal:  linear-gradient(135deg,#c9a84c,#e8c96a,#a8873a);
  --bg0:         #050505;
  --bg1:         #080808;
  --bg2:         #0b0b0b;
  --bg3:         #101010;
  --bg4:         #141414;
  --card:        rgba(10,10,10,.94);
  --border:      rgba(255,255,255,.08);
  --border2:     rgba(201,168,76,.22);
  --text1:       #ececec;
  --text2:       #9a9a9a;
  --text3:       #666666;
  --font-display:'Oxanium',sans-serif;
  --font-body:   'Oxanium',sans-serif;
  --font-mono:   'Oxanium',sans-serif;
}

/* ── Section titles — gold liquid-glass (live look baked in) ─────── */
#page-home .section-title,
#page-home #latestGamesSection .section-title,
#page-home .casino-lobby-section .section-title,
#page-home .featured-section .section-title{
  background:linear-gradient(135deg,#c9a84c,#e8c96a,#a8873a);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.4));
}
/* Keep the leading icon colourful (it's a child <i> with its own color
   inline style, so this fixes the text-fill-color transparent edge-case) */
#page-home .section-title > i{
  -webkit-text-fill-color:initial;color:inherit;
}

/* Badge variants used in the section headers */
#page-home .section-title-badge{
  display:inline-block;margin-left:6px;
  padding:2px 8px;border-radius:999px;
  font-size:8.5px;font-weight:900;letter-spacing:.6px;
  font-family:var(--font-display);text-transform:uppercase;
  background:linear-gradient(135deg,var(--red-hot),var(--orange));
  color:#fff;
  box-shadow:0 2px 10px rgba(255,60,90,.35);
  vertical-align:middle;
}
#page-home .section-title-badge.new-badge{
  background:linear-gradient(135deg,var(--cyan),var(--sky));
  box-shadow:0 2px 10px rgba(0,207,255,.35);
}

/* Gold accent bars (matches live liquid-glass look) */
#page-home #grid-trending{
  position:relative;padding-top:2px;
}
#page-home #grid-trending::before{
  content:'';position:absolute;left:0;top:-8px;width:60px;height:3px;border-radius:999px;
  background:linear-gradient(90deg,rgba(201,168,76,.85),rgba(201,168,76,.15));
  box-shadow:0 0 14px rgba(201,168,76,.35);
}
#page-home #grid-latest{
  position:relative;
}
#page-home #grid-latest::before{
  content:'';position:absolute;left:0;top:-8px;width:60px;height:3px;border-radius:999px;
  background:linear-gradient(90deg,rgba(201,168,76,.85),rgba(201,168,76,.15));
  box-shadow:0 0 14px rgba(201,168,76,.35);
}
#page-home .casino-lobby-section::before{
  content:'';display:block;width:72px;height:3px;border-radius:999px;
  background:linear-gradient(90deg,rgba(201,168,76,.85),rgba(201,168,76,.15));
  box-shadow:0 0 14px rgba(201,168,76,.35);
  margin:0 0 10px 4px;
}

/* Colourful game-card hover glow — cycles through palette by position */
#page-home .game-card:nth-child(6n+1):hover{box-shadow:0 10px 28px rgba(255,60,90,.28),0 0 0 1px var(--red-hot);}
#page-home .game-card:nth-child(6n+2):hover{box-shadow:0 10px 28px rgba(0,207,255,.28),0 0 0 1px var(--cyan);}
#page-home .game-card:nth-child(6n+3):hover{box-shadow:0 10px 28px rgba(155,89,250,.28),0 0 0 1px var(--purple);}
#page-home .game-card:nth-child(6n+4):hover{box-shadow:0 10px 28px rgba(0,230,118,.28),0 0 0 1px var(--green-live);}
#page-home .game-card:nth-child(6n+5):hover{box-shadow:0 10px 28px rgba(255,124,42,.28),0 0 0 1px var(--orange);}
#page-home .game-card:nth-child(6n+6):hover{box-shadow:0 10px 28px rgba(255,77,172,.28),0 0 0 1px var(--pink);}
/* ── Performance: skip rendering off-screen sections until scrolled into view ── */
.featured-section,
.search-bar,
.search-results-panel,
#casinoSliders,
#latestGamesSection,
.providers-row{
    content-visibility:auto;
    contain-intrinsic-size:auto 400px;
}

/* ══════════════════════════════════════
   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:6px 12px;align-items:center;gap:10px;
  /* iter-151: banner moved to top:0 + dt-strip hidden when shown.
     Saves 22px vs the old "stack below dt-strip" layout. */
  position:fixed;top:0;left:0;right:0;z-index:1320;height:34px;
  box-shadow:0 2px 12px rgba(245,197,66,.1);backdrop-filter:blur(8px);
}
@media(max-width:768px){.install-banner{display:flex;}}
/* Hide the date/time strip when banner takes its slot — banner already
   shows the brand pill, redundant chrome saves 22px of vertical real estate. */
body.has-install-banner .dt-strip{display:none !important;}
/* Push navbar & layout down ONLY when banner is actually visible.
   34px (banner) instead of 22+40=62px stacked: -28px above slider.
   The dw-action-bar (logged-in /home) zeroes layout margin via its own
   higher-specificity rule (#dwActionBar selector) at app.blade.php. */
@media(max-width:768px){
  body.has-install-banner .topnav{top:34px !important;}
  body.has-install-banner .layout{margin-top:calc(var(--nav-h, 68px) + 34px) !important;}
}
/* All inner sizes shrunk to match 34px banner height (was 40px). */
.install-banner-icon{font-size:15px;flex-shrink:0;color:#f5c542;line-height:1;}
.install-banner-text{flex:1;min-width:0;display:flex;align-items:center;gap:6px;overflow:hidden;}
.install-banner-text strong{
  font-size:10.5px;font-weight:800;color:#f5c542;
  font-family:var(--font-display);letter-spacing:.3px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  min-width:0;
}
.install-banner-text small{font-size:8.5px;color:rgba(255,255,255,.65);white-space:nowrap;}
.install-banner-btn{
  padding:4px 12px;border-radius:5px;font-size:10px;font-weight:900;
  background:linear-gradient(135deg,#f5c542,#ff9100);
  color:#000;border:none;cursor:pointer;white-space:nowrap;
  font-family:var(--font-display);letter-spacing:.5px;flex-shrink:0;
  transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px rgba(245,197,66,.2);
  min-width:60px;text-align:center;line-height:1.1;
}
.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:11px;padding:0;flex-shrink:0;line-height:1;
  width:22px;height:22px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;transition:background .15s,border-color .15s,color .15s;
}
.install-banner-close:hover{background:rgba(255,60,90,.25);border-color:rgba(255,60,90,.4);color:#ff4d6d;}
@media(max-width:380px){
  .install-banner{padding:5px 8px;gap:7px;height:32px;}
  .install-banner-icon{font-size:14px;}
  .install-banner-text strong{font-size:10px;}
  .install-banner-btn{padding:4px 9px;font-size:9.5px;min-width:52px;}
  body.has-install-banner .topnav{top:32px !important;}
  body.has-install-banner .layout{margin-top:calc(var(--nav-h, 68px) + 32px) !important;}
}

/* ══════════════════════════════════════
   LIVE TICKER
══════════════════════════════════════ */
/* NEWS ANNOUNCEMENT BAR */
.news-announce{display:flex;align-items:center;background:linear-gradient(90deg,#0a0a0a,#080808,#0a0a0a);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;cursor:default;}
.news-announce-track{
  display:inline-flex;align-items:center;gap:48px;white-space:nowrap;
  animation:newsScroll 22s linear infinite;
}
.news-announce-scroll:hover .news-announce-track,
.news-announce-scroll:active .news-announce-track{animation-play-state:paused;}
.news-announce-text{color:#f5d778;font-size:11px;font-weight:600;white-space:nowrap;display:inline-block;padding:0 24px;}
@keyframes newsScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ══════════════════════════════════════
   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. */
/* clip (not hidden): hidden on X forces overflow-y to auto, which turns
   #page-home into a scrollport. That traps position:fixed overlays inside
   the panel and lets the inspector box sit under the sticky header. */
#page-home{overflow-x:clip;}
#page-home img{max-width:100%;height:auto;}
/* Hero banner — match art ratio (1024×460); pin to TOP so brand line never clips. */
#page-home .slider-wrap{position:relative;width:100%;overflow:hidden;aspect-ratio:1024/460;max-height:420px;border-radius:0;margin-bottom:0;z-index:10;}
@media(max-width:480px){#page-home .slider-wrap{aspect-ratio:1024/460;max-height:200px;}}
@media(max-width:768px) and (min-width:481px){#page-home .slider-wrap{aspect-ratio:1024/460;max-height:260px;}}
@media(min-width:1200px){#page-home .slider-wrap{aspect-ratio:1024/460;max-height:440px;}}
@media(min-width:1600px){#page-home .slider-wrap{aspect-ratio:1024/460;max-height:480px;}}
#page-home .slider-track{display:flex;transition:transform .45s ease;height:100%;}
#page-home .slider-slide{min-width:100%;height:100%;position:relative;overflow:hidden;}
/* Top-align cover so ALL-GAMES header in the art stays visible. */
#page-home .slider-slide img{
  position:absolute;inset:0;
  width:100%;height:100%;max-width:none;
  object-fit:cover;object-position:top center;
  display:block;background:var(--bg0,#050505);
}
#page-home .slider-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.88) 100%);pointer-events:none;}
.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;width:100%;z-index:6;
  background:linear-gradient(90deg,var(--gold),var(--orange));
  transform:scaleX(0);transform-origin:left center;pointer-events:none;
}

/* ══════════════════════════════════════
   HOME CREDIT LIMIT STRIP
══════════════════════════════════════ */
.home-credit-strip{
  padding:10px 12px 12px;
  background:linear-gradient(180deg,var(--bg1),var(--bg2));
  border-bottom:1px solid var(--border);
}
.home-credit-card{
  background:linear-gradient(135deg,rgba(155,89,250,.16),rgba(12,12,20,.92) 55%);
  border:1px solid rgba(155,89,250,.42);
  border-radius:8px;padding:10px 12px;position:relative;
  box-shadow:0 0 18px rgba(155,89,250,.12);
}
.home-credit-row{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.home-credit-info{display:flex;align-items:center;gap:10px;min-width:0;}
.home-credit-icon{
  width:34px;height:34px;flex-shrink:0;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;color:#c4a0ff;
  border:1px solid rgba(155,89,250,.55);background:rgba(155,89,250,.18);
  box-shadow:0 0 10px rgba(155,89,250,.28);
}
.home-credit-copy{display:flex;flex-direction:column;gap:1px;min-width:0;}
.home-credit-label{
  font-size:10px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;
  font-family:var(--font-display);color:#b8a4e8;
}
.home-credit-val{
  font-size:15px;font-weight:800;letter-spacing:.2px;
  font-family:var(--font-display);color:#efe6ff;
}
.home-credit-val.is-guest-msg{
  font-size:12px;font-weight:700;letter-spacing:.15px;line-height:1.25;
  color:#d4c4f5;text-transform:none;
}
.home-credit-btn{
  flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;
  height:34px;padding:0 14px;border-radius:6px;border:1px solid #9b59fa;
  background:linear-gradient(180deg,#b57aff,#9b59fa);color:#14081f;
  font-family:var(--font-display);font-size:11px;font-weight:800;
  letter-spacing:.4px;text-transform:uppercase;text-decoration:none;cursor:pointer;
}
.home-credit-btn:hover{filter:brightness(1.08);}
.home-credit-live{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:0;text-decoration:none;min-width:0;}
.home-credit-live-label{font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;font-family:var(--font-display);color:#b8a4e8;}
.home-credit-live-val{font-size:14px;font-weight:800;letter-spacing:.2px;font-family:var(--font-display);color:#d4b3ff;}
.home-credit-live-val.is-overdue{color:#f87171;}
.home-credit-live-sub{font-size:10px;font-weight:600;color:#b8a4e8;}
.home-credit-card.is-overdue{border-color:rgba(248,113,113,.35);box-shadow:none;}

/* ══════════════════════════════════════
   HOME BONUS / REFER TILES
══════════════════════════════════════ */
.home-promo-strip{
  padding:0 12px 12px;
  background:linear-gradient(180deg,var(--bg2),var(--bg1));
}
.home-promo-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.home-promo-row.is-one{grid-template-columns:1fr;}
.home-promo-tile{
  display:flex;align-items:center;gap:10px;min-width:0;
  padding:10px 12px;border-radius:8px;text-decoration:none;
  background:var(--surface,transparent);border:1px solid var(--border);
  position:relative;overflow:hidden;
  opacity:1;transform:none;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.home-promo-tile::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.07) 48%,transparent 66%);
  transform:translateX(-120%);
}
.home-promo-tile:hover{
  transform:translateY(-2px);
  border-color:rgba(216,177,74,.55);
  box-shadow:0 8px 20px rgba(216,177,74,.16);
  background:rgba(216,177,74,.06);
}
.home-promo-tile:hover::after{display:none;}
.home-promo-tile:active{transform:translateY(0);}
.home-promo-icon{
  width:34px;height:34px;flex-shrink:0;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;color:var(--gold);
  border:1px solid rgba(216,177,74,.45);background:rgba(216,177,74,.14);
}
.home-promo-tile:hover .home-promo-icon{
  transform:scale(1.08);
  box-shadow:0 0 14px rgba(216,177,74,.4);
  background:rgba(216,177,74,.22);
}
.home-promo-copy{display:flex;flex-direction:column;gap:1px;min-width:0;}
.home-promo-label{
  font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;
  font-family:var(--font-display);color:var(--text1);
  transition:color .2s ease;
}
.home-promo-tile:hover .home-promo-label{color:#ffe9a8;}
.home-promo-sub{font-size:10px;font-weight:600;color:var(--text2);}

@media (prefers-reduced-motion:reduce){
  .home-promo-tile,
  .home-promo-tile:nth-child(2),
  .home-promo-icon,
  .home-promo-tile:nth-child(2) .home-promo-icon{
    animation:none!important;opacity:1;transform:none;
  }
  .home-promo-tile::after{display:none;}
  .home-promo-tile,
  .home-promo-icon{transition:none;}
}

.spin-fab{
  position:fixed;left:24px;bottom:24px;z-index:1400;
  width:56px;height:56px;padding:0;border-radius:50%;
  border:2px solid #f5c542;background:#12081c;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;overflow:visible;
  box-shadow:0 4px 18px rgba(155,89,250,.45);
  -webkit-tap-highlight-color:transparent;
}
.spin-fab-glow{
  position:absolute;inset:-6px;border-radius:50%;pointer-events:none;
  border:1px solid rgba(245,197,66,.4);
}
.spin-fab-glow::before,
.spin-fab-glow::after{display:none;}
.spin-fab-wheel{
  position:absolute;inset:5px;border-radius:50%;
  background:conic-gradient(
    #9b59fa 0 45deg,#ff4dac 45deg 90deg,#f5c542 90deg 135deg,#ff6b35 135deg 180deg,
    #9b59fa 180deg 225deg,#ff4dac 225deg 270deg,#f5c542 270deg 315deg,#ff6b35 315deg 360deg
  );
  animation:spinFabWheel 6s linear infinite;
  will-change:transform;
}
.spin-fab-hub{
  position:relative;z-index:2;min-width:28px;height:28px;padding:0 3px;border-radius:50%;
  background:linear-gradient(180deg,#fff6d0,#f5c542);
  border:2px solid #fff;box-shadow:0 0 10px rgba(245,197,66,.7);
  color:#3b2a08;font-family:var(--font-display),'Oxanium',sans-serif;
  font-size:8px;font-weight:900;letter-spacing:-.2px;line-height:1;
  display:flex;align-items:center;justify-content:center;white-space:nowrap;
}
.spin-fab-pointer{
  position:absolute;top:0;left:50%;z-index:3;
  width:0;height:0;margin-left:-5px;
  border-left:5px solid transparent;border-right:5px solid transparent;
  border-top:8px solid #fff;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.45));
}
.spin-fab-spark{
  position:absolute;top:6px;right:6px;z-index:3;width:6px;height:6px;
  background:#fff;border-radius:50%;opacity:.8;
}
.spin-fab-coins{display:none;}
.spin-fab:hover{transform:scale(1.08);box-shadow:0 6px 24px rgba(255,77,172,.55);}
@keyframes spinFabWheel{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes spinFabPulse{0%{transform:scale(.92);opacity:.75}100%{transform:scale(1.45);opacity:0}}
@keyframes spinFabSpark{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.25;transform:scale(.65)}}

@media(max-width:900px){
  .spin-fab{
    left:12px;
    bottom:78px;
  }
}
@media (prefers-reduced-motion:reduce){
  .spin-fab,.spin-fab-wheel,.spin-fab-glow,.spin-fab-glow::before,.spin-fab-glow::after,.spin-fab-hub,.spin-fab-spark,.spin-fab-coins i,
  .lucky-spin-lights span,.lucky-spin-overlay.is-spinning .lucky-spin-lights span{animation:none;}
  .slider-progress{display:none;}
}

/* ══════════════════════════════════════
   LUCKY SPIN WHEEL MODAL
══════════════════════════════════════ */
.lucky-spin-overlay{
  position:fixed;inset:0;z-index:9998;
  background:radial-gradient(ellipse at center,rgba(28,10,48,.72),rgba(0,0,0,.94));
  backdrop-filter:blur(14px);
  display:none;align-items:center;justify-content:center;
  padding:16px;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:360px;
  background:
    radial-gradient(120% 80% at 50% -10%,rgba(245,197,66,.16),transparent 55%),
    linear-gradient(180deg,#24143c 0%,#12081c 42%,#0a0514 100%);
  border:1px solid rgba(245,197,66,.42);border-radius:22px;
  padding:22px 18px 18px;text-align:center;
  box-shadow:0 24px 70px rgba(0,0,0,.7),0 0 48px rgba(245,197,66,.16),inset 0 1px 0 rgba(255,255,255,.08);
  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:10px;right:10px;width:32px;height:32px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  color:#fff;border-radius:50%;cursor:pointer;font-size:14px;
  display:flex;align-items:center;justify-content:center;
  transition:all .2s;z-index:3;
}
.lucky-spin-close:hover{background:rgba(255,60,90,.25);border-color:#ff4d6d;}
.lucky-spin-kicker{
  font-family:var(--font-display);font-size:9px;font-weight:800;
  letter-spacing:1.6px;text-transform:uppercase;color:var(--gold);
  margin-bottom:4px;
}
.lucky-spin-title{
  font-family:var(--font-display);font-size:22px;font-weight:800;
  background:linear-gradient(135deg,#ffe9a0,var(--gold),#ff9100);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  letter-spacing:.6px;margin-bottom:4px;line-height:1.15;
}
.lucky-spin-subtitle{font-size:11px;color:var(--text2);margin:0 8px 16px;line-height:1.4;}
.lucky-spin-canvas-wrap{
  position:relative;width:268px;height:268px;margin:8px auto 18px;
}
.lucky-spin-canvas{width:100%;height:100%;display:block;position:relative;z-index:1;}
.lucky-spin-lights{
  position:absolute;inset:-16px;pointer-events:none;z-index:2;
}
.lucky-spin-lights span{
  position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px;
  border-radius:50%;background:#f5c542;
  box-shadow:0 0 8px #f5c542,0 0 14px rgba(245,197,66,.55);
  transform:rotate(var(--a)) translateY(-150px);
  animation:luckyLightPulse 1.2s ease-in-out infinite;
}
.lucky-spin-lights span:nth-child(odd){animation-delay:.6s;background:#fff6d0;}
.lucky-spin-overlay.is-spinning .lucky-spin-lights span{
  animation:luckyLightChase .45s linear infinite;
}
@keyframes luckyLightPulse{
  0%,100%{opacity:.35;transform:rotate(var(--a)) translateY(-150px) scale(.85);}
  50%{opacity:1;transform:rotate(var(--a)) translateY(-150px) scale(1.15);}
}
@keyframes luckyLightChase{
  0%,70%{opacity:.25;}
  85%,100%{opacity:1;}
}
.lucky-spin-pointer{
  position:absolute;top:-10px;left:50%;transform:translateX(-50%);
  width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;
  border-top:24px solid var(--gold);
  filter:drop-shadow(0 3px 6px rgba(0,0,0,.65));
  z-index:4;
}
.lucky-spin-pointer::after{
  content:'';position:absolute;top:-22px;left:-5px;width:10px;height:10px;
  background:radial-gradient(circle at 30% 30%,#fff,#f5c542 55%,#b8860b);
  border-radius:50%;box-shadow:0 0 8px rgba(245,197,66,.8);
}
.lucky-spin-center{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:58px;height:58px;border-radius:50%;
  background:radial-gradient(circle at 32% 28%,#fff8dc,#f5c542 52%,#c48a12);
  border:3px solid #fff;display:flex;align-items:center;justify-content:center;
  z-index:3;box-shadow:0 4px 14px rgba(0,0,0,.45),0 0 16px rgba(245,197,66,.45);
  color:#3b2a08;font-family:var(--font-display);font-size:11px;font-weight:900;
  letter-spacing:.4px;line-height:1;padding:4px;
}
.lucky-spin-center span{
  display:block;max-width:50px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.lucky-spin-button{
  width:100%;padding:14px;border:none;border-radius:14px;cursor:pointer;
  background:linear-gradient(135deg,#ffe08a,var(--gold) 40%,#ff9100);
  color:#1a1408;font-family:var(--font-display);font-size:14px;font-weight:900;
  letter-spacing:1.4px;text-transform:uppercase;
  box-shadow:0 8px 22px rgba(245,197,66,.4),inset 0 1px 0 rgba(255,255,255,.45);
  transition:transform .15s,filter .2s;
}
.lucky-spin-button:hover{filter:brightness(1.08);transform:translateY(-1px);}
.lucky-spin-button:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.45);transform:none;}
.lucky-spin-result{
  display:none;margin-top:12px;padding:10px 12px;border-radius:12px;
  font-size:13px;font-weight:700;font-family:var(--font-display);line-height:1.35;
}
.lucky-spin-result.show{display:block;animation:resultPop .4s ease;}
.lucky-spin-result.is-win{
  background:rgba(0,230,118,.12);border:1px solid rgba(0,230,118,.38);color:var(--green-live);
}
.lucky-spin-result.is-extra{
  background:rgba(245,197,66,.12);border:1px solid rgba(245,197,66,.4);color:var(--gold);
}
.lucky-spin-result.is-miss{
  background:rgba(255,77,109,.1);border:1px solid rgba(255,77,109,.32);color:#ff8aa0;
}
@keyframes resultPop{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}
@media (max-width:380px){
  .lucky-spin-canvas-wrap{width:240px;height:240px;}
  .lucky-spin-lights span{
    transform:rotate(var(--a)) translateY(-134px);
  }
  @keyframes luckyLightPulse{
    0%,100%{opacity:.35;transform:rotate(var(--a)) translateY(-134px) scale(.85);}
    50%{opacity:1;transform:rotate(var(--a)) translateY(-134px) scale(1.15);}
  }
}

/* ══════════════════════════════════════
   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,#141414,#0a0a0a);
}
@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:#101010;          /* 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);
}

.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 — fully responsive
   Desktop (≥768px): vertical sidebar left + content right
   Mobile (<768px):  horizontal scrollable tab strip + content below
══════════════════════════════════════ */

/* ── Wrapper ── */
.rtab-main-wrapper{
  display:flex;flex-direction:row;
  gap:10px;padding:10px 8px 14px;
  margin-bottom:0;position:relative;
  align-items:flex-start;
}

/* ── Vertical Sidebar (desktop) ── */
.rtab-sidebar{
  width:68px;flex-shrink:0;
  display:flex;flex-direction:column;
  background:var(--bg2);
  border:1px solid var(--border);
  border-radius:12px;
  position:sticky;top:70px;align-self:flex-start;
  max-height:calc(100vh - 84px);max-height:calc(100dvh - 84px);
  overflow-y:auto;overflow-x:hidden;
  scrollbar-width:none;
  overscroll-behavior:contain;
}
.rtab-sidebar::-webkit-scrollbar{display:none;}

/* ── Tab Buttons ── */
.rtab-btn{
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  gap:5px;padding:11px 6px 9px;
  background:transparent;border:none;
  border-bottom:1px solid var(--border);
  color:var(--text3);cursor:pointer;
  transition:background .2s,color .2s;
  position:relative;width:100%;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
}
.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:background .2s,box-shadow .2s;flex-shrink:0;
}
.rtab-icon{font-size:16px;transition:transform .2s,filter .2s;color:inherit;}
.rtab-btn span{
  font-size:7.5px;font-weight:800;line-height:1;
  text-transform:uppercase;letter-spacing:.4px;
  font-family:var(--font-display);text-align:center;
  white-space:nowrap;overflow:hidden;max-width:100%;
}
.rtab-btn:hover{background:rgba(255,255,255,.04);color:var(--text1);}
.rtab-btn:hover .rtab-icon-wrap{background:rgba(255,255,255,.09);}

/* Active state — left accent bar + gold tint */
.rtab-btn.active{
  background:linear-gradient(160deg,rgba(245,197,66,.10),rgba(255,153,0,.04));
  color:var(--gold);
}
.rtab-btn.active::after{
  content:'';position:absolute;left:0;top:20%;bottom:20%;width:3px;
  background:var(--gold);border-radius:0 2px 2px 0;
}
.rtab-btn.active .rtab-icon-wrap{
  background:rgba(245,197,66,.13);
  box-shadow:0 0 12px rgba(245,197,66,.18);
}
.rtab-btn.active .rtab-icon{
  filter:drop-shadow(0 0 4px rgba(245,197,66,.5));
  transform:scale(1.08);
}

/* Accent variants */
.rtab-btn[data-accent="cyan"].active{color:var(--cyan);}
.rtab-btn[data-accent="cyan"].active::after{background:var(--cyan);}
.rtab-btn[data-accent="cyan"].active .rtab-icon-wrap{background:rgba(0,207,255,.13);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,.6));}
.rtab-btn[data-accent="green"].active{color:var(--green-live);}
.rtab-btn[data-accent="green"].active::after{background:var(--green-live);}
.rtab-btn[data-accent="green"].active .rtab-icon-wrap{background:rgba(0,230,118,.13);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,.6));}
.rtab-btn[data-accent="red"].active{color:var(--red-hot);}
.rtab-btn[data-accent="red"].active::after{background:var(--red-hot);}
.rtab-btn[data-accent="red"].active .rtab-icon-wrap{background:rgba(255,60,90,.13);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,.6));}
.rtab-btn[data-accent="purple"].active{color:var(--purple);}
.rtab-btn[data-accent="purple"].active::after{background:var(--purple);}
.rtab-btn[data-accent="purple"].active .rtab-icon-wrap{background:rgba(155,89,250,.13);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,.6));}

/* ── Content area ── */
.rtab-main-content{flex:1;min-width:0;overflow:visible;}
.rtab-content{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:12px;padding:12px 10px 10px;
  min-height:220px;overflow:hidden;
}
.rtab-pane{display:none;}
.rtab-pane.active{display:block;}

/* ── MOBILE: horizontal tab strip ─────────────────── */
@media(max-width:767px){
  .rtab-main-wrapper{
    flex-direction:column;gap:0;
    padding:8px 6px 12px;
  }
  /* Tab strip becomes horizontal scrollable row */
  .rtab-sidebar{
    width:100%;position:static;top:auto;
    flex-direction:row;
    border-radius:12px 12px 0 0;border-bottom:none;
    max-height:none;height:auto;
    overflow-x:auto;overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    background:var(--bg2);
    padding:0;
    /* subtle separator between strip and content */
    border-bottom:2px solid var(--bg3);
  }
  .rtab-sidebar::-webkit-scrollbar{display:none;}

  /* Each button: equal width, vertical stack (icon + label) */
  .rtab-btn{
    flex:1;flex-direction:column;
    align-items:center;justify-content:center;
    gap:4px;padding:8px 4px 7px;
    border-bottom:none;border-right:1px solid var(--border);
    width:auto;min-width:0;
  }
  .rtab-btn:last-child{border-right:none;}
  /* Active indicator: bottom bar */
  .rtab-btn.active::after{
    left:15%;right:15%;bottom:0;top:auto;
    width:auto;height:3px;
    border-radius:2px 2px 0 0;
  }
  .rtab-icon-wrap{width:30px;height:30px;border-radius:9px;}
  .rtab-icon{font-size:14px;}
  .rtab-btn span{font-size:7px;letter-spacing:.3px;white-space:nowrap;}

  /* Content box: no top-rounded corners (strip sits above) */
  .rtab-content{
    border-radius:0 0 12px 12px;
    border-top:none;
    padding:10px 8px 8px;
  }
}
@media(max-width:400px){
  .rtab-btn{padding:7px 3px 6px;gap:3px;}
  .rtab-icon-wrap{width:26px;height:26px;border-radius:7px;}
  .rtab-icon{font-size:12px;}
  .rtab-btn span{font-size:6.5px;letter-spacing:.2px;}
}

/* ── Game grid — 4 col desktop, 3 mobile ── */
.rtab-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
@media(min-width:1100px){.rtab-grid{grid-template-columns:repeat(5,1fr);}}
@media(max-width:600px){.rtab-grid{grid-template-columns:repeat(3,1fr);gap:6px;}}
@media(max-width:380px){.rtab-grid{grid-template-columns:repeat(3,1fr);gap:5px;}}

/* ── Game card ── */
.rtab-game-card{
  position:relative;border-radius:9px;overflow:hidden;cursor:pointer;
  aspect-ratio:3/4;
  background:var(--bg3);border:1px solid var(--border);
  transition:transform .2s,box-shadow .2s,border-color .2s;
  display:flex;flex-direction:column;
  contain:layout style paint;
}
.rtab-game-card:hover{transform:translateY(-3px);border-color:rgba(245,197,66,.35);box-shadow:0 10px 24px rgba(0,0,0,.55),0 0 0 1px rgba(245,197,66,.25);}
.rtab-game-card img{width:100%;height:100%;object-fit:cover;display:block;}
.rtab-game-card .game-name-float{
  position:absolute;bottom:0;left:0;right:0;
  background:linear-gradient(transparent,rgba(0,0,0,.55) 35%,rgba(0,0,0,.92));
  padding:14px 6px 6px;
  font-size:10px;font-weight:800;color:#fff;
  text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  letter-spacing:.2px;font-family:var(--font-display);text-transform:uppercase;
  line-height:1.2;
}
.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;}
@media(max-width:480px){.rtab-game-card .game-name-float{font-size:9px;padding:11px 4px 5px;}}
@media(max-width:360px){.rtab-game-card .game-name-float{font-size:8px;padding:9px 3px 4px;}}

.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:28px;text-align:center;color:var(--text2);font-size:12px;}

/* ── Live Casino grid (2→3 col) ── */
.rtab-live-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
@media(min-width:600px){.rtab-live-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:380px){.rtab-live-grid{gap:6px;}}
.rtab-live-card{
  position:relative;border-radius:10px;overflow:hidden;cursor:pointer;
  background:var(--bg3);border:1px solid var(--border);
  transition:transform .2s,box-shadow .2s,border-color .2s;
  display:flex;flex-direction:column;
}
.rtab-live-card:hover{transform:translateY(-2px);border-color:rgba(0,230,118,.4);box-shadow:0 8px 24px rgba(0,0,0,.5),0 0 0 1px rgba(0,230,118,.3);}
.rtab-live-card img{width:100%;aspect-ratio:16/10;height:auto;display:block;object-fit:cover;background:var(--bg3);}
@media(max-width:600px){.rtab-live-card img{aspect-ratio:4/3;}}
.rtab-live-badge-dot{
  position:absolute;top:6px;left:6px;z-index:2;
  font-size:8px;font-weight:900;color:#fff;
  background:rgba(220,38,38,.9);padding:2.5px 7px;border-radius:4px;
  letter-spacing:.5px;animation:pulse-green 1.5s infinite;
  box-shadow:0 0 10px rgba(220,38,38,.5);
}
.rtab-live-card-name{
  padding:6px;font-size:10px;font-weight:800;text-align:center;
  color:#fff;background:linear-gradient(180deg,rgba(0,0,0,.85),rgba(0,0,0,.95));
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  text-transform:uppercase;letter-spacing:.4px;font-family:var(--font-display);line-height:1.2;
}
@media(max-width:480px){.rtab-live-card-name{font-size:9px;padding:5px;}.rtab-live-badge-dot{font-size:7px;padding:2px 6px;}}
.rtab-live-card .game-overlay{position:absolute;inset:0;bottom:28px;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 — 3 cols desktop, 2 mobile, fixed minmax for predictability */
.rsb-sport-tiles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px;}
@media(max-width:480px){.rsb-sport-tiles-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}}
.rsb-sport-tile{
  border-radius:10px;background:var(--bg3);border:1px solid var(--border);
  padding:12px 6px;cursor:pointer;transition:border-color .22s,transform .22s,box-shadow .22s;
  text-align:center;
  display:grid;grid-template-rows:28px 14px 16px;
  align-items:center;justify-items:center;gap:4px;
  position:relative;overflow:hidden;
}
.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));pointer-events:none;}
.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:6px;height:6px;border-radius:50%;background:var(--green-live);animation:pulse-red 1.2s infinite;box-shadow:0 0 6px rgba(0,230,118,.7);}
.rsb-tab-btn img,.rsb-tile-emoji img{width:14px;height:14px;object-fit:contain;flex-shrink:0;}
.rsb-tile-emoji{font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;}
.rsb-tile-emoji img{width:28px;height:28px;}
.rsb-tile-name{font-family:var(--font-display);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--text1);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
.rsb-tile-count{font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--text2);background:var(--bg4);border-radius:4px;padding:2px 7px;line-height:1;white-space:nowrap;}
.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;}

/* Grid layout: emoji | name | odds — odds always reserved space, name truncates */
.rsb-match-row,
a.rsb-match-row{
  display:grid;
  grid-template-columns:18px minmax(0,1fr) auto;
  align-items:center;gap:8px;
  padding:7px 10px;background:var(--bg3);
  border-radius:7px;border:1px solid var(--border);
  border-left:3px solid transparent;
  cursor:pointer;transition:border-color .15s,background .15s,transform .12s;
  min-height:42px;
  text-decoration:none;color:inherit;
}
.rsb-match-row:hover{border-color:rgba(245,197,66,.22);border-left-color:var(--gold);background:var(--bg4);transform:translateX(1px);}
.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-icon-col{display:flex;align-items:center;justify-content:center;width:18px;height:100%;flex-shrink:0;}
.rsb-name-col{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px;}
.rsb-live-dot{width:6px;height:6px;border-radius:50%;background:var(--green-live);flex-shrink:0;animation:pulse-red 1.2s infinite;box-shadow:0 0 6px rgba(0,230,118,.6);}
.rsb-sport-em{font-size:14px;flex-shrink:0;line-height:1;display:inline-flex;align-items:center;}
.rsb-sport-em img{width:16px;height:16px;object-fit:contain;}
/* Name column: 2-line stack — name on top, time below */
.rsb-match-name{
  font-size:10.5px;font-weight:800;color:var(--text1);font-family:var(--font-display);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
  letter-spacing:.2px;line-height:1.25;
}
.rsb-time{font-size:8.5px;color:var(--text3);font-family:var(--font-mono);font-weight:700;display:block;line-height:1.2;margin-top:1px;}
.rsb-time.live{color:var(--red-hot);font-weight:900;letter-spacing:.4px;}
/* Odds row: fixed reserved space — never wraps, never crowds the name */
.rsb-odds-row{display:flex;gap:4px;flex-shrink:0;align-items:center;}
.rsb-odds-row.rsb-odds-indian{gap:6px;align-items:flex-end;}
.rsb-odds-row .sb-odds-col{gap:2px;}
.rsb-odds-row .sb-odds-col-lbl{font-size:7px;color:#7080a8;font-weight:800;letter-spacing:.03em;text-align:center;max-width:4.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rsb-odds-row .sb-odds-pair{display:flex;gap:2px;}
.rsb-odds-row .sb-row-odd{width:34px!important;height:30px!important;min-width:34px!important;min-height:30px!important;max-width:34px!important;max-height:30px!important;border-radius:3px!important;padding:1px!important;}
.rsb-odds-row .sb-row-odd.back{background:#a0d8fb!important;border:1px solid rgba(60,120,180,.35)!important;}
.rsb-odds-row .sb-row-odd.lay{background:#fdc9d4!important;border:1px solid rgba(180,80,100,.35)!important;}
.rsb-odds-row .sb-row-odd-val{font-size:10px!important;color:#141414!important;inset:1px!important;}

.rsb-odd-btn{
  width:38px;height:34px;padding:3px 0;border-radius:5px;
  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;justify-content:center;gap:0;
  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:6.5px;color:#7080a8;font-weight:800;font-family:var(--font-display);letter-spacing:.3px;text-transform:uppercase;line-height:1.1;}
.rsb-odd-val{font-size:11px;font-weight:900;color:#18234a;font-family:var(--font-mono);line-height:1.1;margin-top:1px;}
.rsb-odd-val.loading{color:#b0b8d0;font-size:9px;}
/* Mobile: shrink the odds buttons so the name still has room */
@media(max-width:480px){
  .rsb-match-row{padding:6px 8px;gap:6px;grid-template-columns:16px minmax(0,1fr) auto;}
  .rsb-odd-btn{width:36px;height:34px;}
  .rsb-odd-val{font-size:10px;}
  .rsb-match-name{font-size:10px;}
}
@media(max-width:380px){
  .rsb-odds-row{gap:3px;}
  .rsb-odd-btn{width:34px;height:32px;}
  .rsb-odd-lbl{font-size:6px;}
  .rsb-odd-val{font-size:9px;}
}

@keyframes sbOddPulseUp {
  0% { box-shadow: inset 0 0 0 2px rgba(125,255,178,.9), 0 0 14px rgba(125,255,178,.35); transform: scale(1.08); }
  100% { transform: scale(1); }
}
@keyframes sbOddPulseDown {
  0% { box-shadow: inset 0 0 0 2px rgba(255,138,154,.9), 0 0 14px rgba(255,138,154,.35); transform: scale(1.08); }
  100% { transform: scale(1); }
}
.rsb-odd-btn.flash-up{animation:sbOddPulseUp .45s ease-out;}
.rsb-odd-btn.flash-down{animation:sbOddPulseDown .45s ease-out;}
.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;text-transform:uppercase;white-space:nowrap;vertical-align:middle;flex-shrink:0;max-width:60px;overflow:hidden;text-overflow:ellipsis;}
@media(max-width:480px){.section-title-badge{font-size:6px;padding:1px 4px;letter-spacing:.3px;max-width:45px;}#page-home .section-title{font-size:11px;gap:4px;}}

.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;}

.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:thin;scrollbar-color:rgba(245,197,66,.4) transparent;-webkit-overflow-scrolling:touch;cursor:grab;}
.scroll-row::-webkit-scrollbar{height:4px;}
.scroll-row::-webkit-scrollbar-thumb{background:rgba(245,197,66,.4);border-radius:2px;}
.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;box-shadow:0 0 8px rgba(255,60,90,.5);}

.game-badge.new{background:linear-gradient(90deg,#7c3aed,#a855f7);color:#fff;}

.game-badge.jackpot{background:linear-gradient(90deg,var(--gold),var(--orange));color:#000;}

/* 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);}

/* ── Category sliding-tabs (Latest Games section) ──
   Horizontal, snap-scroll rail with fade masks on both edges, larger
   touch targets, and a count pill per chip. Active chip auto-scrolls
   into view via JS. */
.filter-chips.filter-chips-slider{
  gap:7px;padding:4px 14px 10px;margin-bottom:14px;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 20px),transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 20px),transparent 100%);
}
.filter-chips.filter-chips-slider .filter-chip{
  padding:7px 14px;border-radius:999px;
  font-size:10.5px;letter-spacing:.4px;
  display:inline-flex;align-items:center;gap:6px;
  scroll-snap-align:center;
  box-shadow:0 1px 0 rgba(255,255,255,.02) inset;
}
.filter-chips.filter-chips-slider .filter-chip i{font-size:11px;opacity:.85;}
.filter-chips.filter-chips-slider .filter-chip .fc-count{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:18px;height:15px;padding:0 5px;
  background:rgba(255,255,255,.06);border-radius:999px;
  font-size:8.5px;font-weight:800;color:inherit;opacity:.85;
  font-family:'Space Mono',monospace;letter-spacing:0;
}
.filter-chips.filter-chips-slider .filter-chip.active{
  background:linear-gradient(95deg,var(--gold, #f5c542),#ffd166);
  color:#090b14;border-color:transparent;
  box-shadow:0 4px 14px rgba(245,197,66,.35);
}
.filter-chips.filter-chips-slider .filter-chip.active .fc-count{
  background:rgba(0,0,0,.2);color:#090b14;opacity:1;
}
.filter-chips.filter-chips-slider .filter-chip:hover:not(.active){
  transform:translateY(-1px);
}

/* ══════════════════════════════════════
   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;}

.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;}

.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;min-height:340px;}
.sb-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding:0 2px;}
.sb-title{display:flex;align-items:center;gap:8px;min-width:0;flex:1;}
/* Match .topnav-logo — Syne + gold metallic gradient */
.sb-title-text{
  font-family:'Oxanium',sans-serif;
  font-size:13px;font-weight:800;
  letter-spacing:.08em;text-transform:uppercase;
  background:linear-gradient(135deg,#c9a84c,#e8c96a,#a8873a);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
  filter:drop-shadow(0 0 14px rgba(201,168,76,.28));
  line-height:1.2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sb-title > i{color:#c9a84c;flex-shrink:0;filter:drop-shadow(0 0 8px rgba(201,168,76,.35));}
.sb-title-cup{
  width:18px;height:18px;flex-shrink:0;display:block;
  filter:drop-shadow(0 0 8px rgba(201,168,76,.4));
  object-fit:contain;
}
/* LIVE count sits where "All Sports" used to be (header right). */
.sb-header .sb-live-count{
  margin-left:auto;flex-shrink:0;
  max-width:none!important;overflow:visible;text-overflow:clip;
  font-size:9px!important;padding:3px 9px!important;letter-spacing:.5px;
  -webkit-text-fill-color:#000;background-clip:border-box;filter:none;
}
.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 img,.sb-sport-ico{width:14px;height:14px;object-fit:contain;flex-shrink:0;}
.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);}
.tab-live-pip{width:6px;height:6px;border-radius:50%;background:#ff3c5a;box-shadow:0 0 6px rgba(255,60,90,.85);flex-shrink:0;}
.rsb-tab-btn .tab-live-pip,.sb-sport-tab .tab-live-pip{display:inline-block;}
.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 TILES — 6 fixed-size boxes, one row
   Same size desktop + mobile (scroll if needed)
══════════════════════════════════════ */
:root{
  --sb-tile:280px;
  --sb-odd:36px;
}
.sb-hidden,
#sportsbookContainer .sb-match-row.sb-hidden,
#page-home .sb-match-row.sb-hidden{display:none!important;}

#sportsbookContainer .sb-matches-list,
.sb-matches-list{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch;
  gap:8px;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgba(201,168,76,.35) transparent;
  padding:2px 2px 6px;
  width:100%;
}
#sportsbookContainer .sb-matches-list::-webkit-scrollbar{height:4px;}
#sportsbookContainer .sb-matches-list::-webkit-scrollbar-thumb{background:rgba(201,168,76,.35);border-radius:4px;}

#sportsbookContainer .sb-match-row,
.sb-match-row,
a.sb-match-row{
  flex:0 0 var(--sb-tile)!important;
  width:var(--sb-tile)!important;
  height:auto!important;
  min-width:var(--sb-tile)!important;
  max-width:var(--sb-tile)!important;
  aspect-ratio:auto!important;
  min-height:0;
  box-sizing:border-box;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch;
  justify-content:flex-start;
  gap:4px;
  padding:8px 10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.1);
  background:
    linear-gradient(155deg,rgba(255,255,255,.09) 0%,rgba(255,255,255,.02) 38%,rgba(0,0,0,.55) 100%),
    radial-gradient(120% 80% at 10% 0%,rgba(201,168,76,.12),transparent 55%),
    #05070e;
  backdrop-filter:blur(14px) saturate(1.15);
  -webkit-backdrop-filter:blur(14px) saturate(1.15);
  cursor:pointer;position:relative;overflow:hidden;isolation:isolate;
  transition:border-color .16s,box-shadow .16s,transform .16s;
  text-decoration:none;color:inherit;
  box-shadow:
    0 8px 24px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -20px 40px rgba(0,0,0,.35);
}
@media (max-width:900px){
  #sportsbookContainer .sb-match-row,
  .sb-match-row,
  a.sb-match-row{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}
.sb-match-row .sb-glass{
  pointer-events:none;position:absolute;inset:0;z-index:0;overflow:hidden;border-radius:inherit;display:none;
}
.sb-feat-icons{display:flex;align-items:center;gap:4px;margin:0 0 0 auto;min-height:0;flex:0 0 auto;}
.sb-feat-icons:empty{display:none!important;}
.sb-feat:not(.is-on){display:none!important;}
@media (prefers-reduced-motion: reduce){
  .sb-match-row,.sb-row-live-dot,.sb-row-odd.flash-up,.sb-row-odd.flash-down{animation:none!important;}
}
.sb-match-row:hover{
  border-color:rgba(201,168,76,.4);
  box-shadow:0 12px 28px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.18),0 0 20px rgba(201,168,76,.12);
  transform:translateY(-2px);
}
.sb-match-row.sb-live-row{border-color:rgba(0,230,118,.28);}
.sb-match-row.sb-live-row:hover{border-color:rgba(0,230,118,.5);}
.sb-row-live-dot{position:absolute;top:8px;right:8px;z-index:2;width:6px;height:6px;border-radius:50%;background:var(--green-live);animation:pulse-red 1.2s infinite;box-shadow:0 0 8px rgba(0,230,118,.6);}
.sb-row-top{
  display:flex;align-items:center;gap:8px;
  min-width:0;width:100%;position:relative;z-index:1;
}
.sb-row-sport{position:relative;z-index:1;flex:0 0 auto;line-height:0;color:var(--gold);filter:none;}
.sb-row-sport .sb-sport-ico{width:16px;height:16px;display:block;object-fit:contain;}
.sb-row-info{
  position:relative;z-index:1;flex:0 1 auto;min-width:0;width:100%;
  display:flex;flex-direction:column;justify-content:flex-start;gap:0;
}
.sb-row-league{
  flex:1 1 auto;min-width:0;
  font-size:11px;color:rgba(200,210,230,.78);
  -webkit-text-fill-color:rgba(200,210,230,.78);
  font-family:var(--font-display);font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  line-height:1.3;background:none!important;
  -webkit-background-clip:border-box!important;background-clip:border-box!important;
  filter:none;
}
.sb-row-name{
  display:flex;flex-direction:column;align-items:flex-start;gap:0;
  font-family:'Oxanium',sans-serif;font-size:13px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;line-height:1.15;
}
.sb-row-name .sb-team,
.sb-row-name .sb-vs{
  background:none;
  -webkit-background-clip:border-box;background-clip:border-box;
  -webkit-text-fill-color:#e8c96a;color:#e8c96a;
  filter:none;
  max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.sb-row-name .sb-team{font-size:13px;}
.sb-row-name .sb-vs{font-size:10px;opacity:.85;letter-spacing:.18em;}
.sb-feat-icons{display:flex;align-items:center;gap:4px;margin:0 0 0 auto;min-height:0;flex:0 0 auto;}
.sb-feat{
  width:18px;height:18px;
  display:inline-flex;align-items:center;justify-content:center;
  flex-shrink:0;line-height:1;color:var(--gold);
  filter:drop-shadow(0 0 8px rgba(201,168,76,.35));
  background:transparent;border:none;
}
.sb-feat-svg{width:18px;height:18px;display:block;}
.sb-feat-letter{
  font-family:'Oxanium',sans-serif;font-size:16px;font-weight:800;line-height:1;
  background:linear-gradient(135deg,#c9a84c,#e8c96a,#a8873a);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.sb-feat-score{color:var(--gold);}
.sb-feat-tv.is-on{color:var(--gold);}
.sb-row-time{display:none!important;}

/* Odds — Indian exchange Back|Lay pairs (Diamond/Lotusbook lobby style) */
#sportsbookContainer .sb-row-odds,
.sb-row-odds{
  position:relative;z-index:1;
  display:flex!important;
  flex-direction:row;
  flex-wrap:nowrap;
  gap:8px;
  width:100%!important;
  max-width:100%!important;
  margin:6px 0 0!important;
  align-self:stretch;
  align-items:flex-end;
  justify-content:center;
  flex-shrink:0;
  box-sizing:border-box;
  overflow:hidden;
}
#sportsbookContainer .sb-row-odds.sb-odds-3,
.sb-row-odds.sb-odds-3{
  gap:6px;
}
.sb-odds-col{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:2px;
  min-width:0;
  flex:0 0 auto;
}
.sb-odds-col-lbl{
  display:block;
  font-style:normal;
  font-size:8px;
  font-weight:800;
  letter-spacing:.04em;
  color:rgba(200,210,230,.55);
  text-align:center;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  line-height:1.1;
}
.sb-odds-pair{
  display:flex;
  gap:3px;
}
#sportsbookContainer .sb-row-odd,
.sb-row-odd{
  position:relative!important;
  width:var(--sb-odd)!important;
  height:30px!important;
  min-width:var(--sb-odd)!important;
  min-height:30px!important;
  max-width:var(--sb-odd)!important;
  max-height:30px!important;
  aspect-ratio:auto!important;
  padding:2px!important;
  border-radius:4px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  cursor:pointer;
  transition:border-color .14s,box-shadow .14s,transform .12s;
}
.sb-row-odd.back{
  background:#a0d8fb!important;
  border:1px solid rgba(60,120,180,.35)!important;
  box-shadow:none;
}
.sb-row-odd.lay{
  background:#fdc9d4!important;
  border:1px solid rgba(180,80,100,.35)!important;
  box-shadow:none;
}
.sb-row-odd:hover{transform:translateY(-1px);filter:brightness(1.05);}
.sb-row-odd:active{transform:scale(.96);}
.sb-row-odd.is-empty{
  opacity:1;
  cursor:default;
  pointer-events:none;
  background:#2a2a2a!important;
  border-color:#333!important;
}
.sb-row-odd.is-empty:hover{transform:none;filter:none;}
.sb-row-odd-lbl{display:none!important;}
#sportsbookContainer .sb-row-odd-val,
.sb-row-odd-val{
  position:absolute!important;
  inset:2px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:auto!important;height:auto!important;margin:0!important;padding:0 1px!important;
  font-size:12px!important;font-weight:800!important;
  font-family:'Oxanium',sans-serif;
  letter-spacing:0!important;line-height:1!important;text-align:center!important;
  color:#141414!important;
  text-shadow:none!important;
  transform:none;
  overflow:hidden!important;
  white-space:nowrap!important;
  max-width:100%;
  box-sizing:border-box;
}
.sb-row-odd.back .sb-row-odd-val,
.sb-row-odd.lay .sb-row-odd-val{color:#141414!important;text-shadow:none!important;}
.sb-row-odd.is-empty .sb-row-odd-val{color:#666!important;}
.sb-row-odd-val.loading{color:rgba(20,20,20,.4)!important;text-shadow:none;}
.sb-row-odd.flash-up{animation:sbOddPulseUp .45s ease-out;}
.sb-row-odd.flash-down{animation:sbOddPulseDown .45s ease-out;}
.sb-row-odd.flash-up .sb-row-odd-val{color:#0a5c2a!important;}
.sb-row-odd.flash-down .sb-row-odd-val{color:#8a1020!important;}

.sb-show-more{
  display:flex;align-items:center;justify-content:center;gap:6px;
  width:100%;padding:9px;margin-top:8px;
  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;text-transform:uppercase;
  flex:0 0 auto;
}
.sb-show-more:hover{border-color:rgba(245,197,66,.4);color:var(--gold);}
.sb-skeleton{background:var(--bg2);border:1px solid var(--border);border-radius:7px;padding:10px;}

.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%;}
.sb-empty{padding:36px 16px;text-align:center;color:var(--text2);width:100%;}
.sb-empty i{font-size:24px;color:var(--text3);display:block;margin-bottom:10px;}
.sb-empty p{font-size:11px;}

.sb-wrapper{margin:0 12px 22px;}
@media(min-width:1100px){
  .sb-wrapper{margin:0 24px 28px;}
  #sportsbookContainer .sb-matches-list,
  .sb-matches-list{justify-content:flex-start;overflow-x:auto;}
}
/* Mobile — 2×2 square grid (4 cards); desktop shows the full list */
@media(max-width:639px){
  /* Stay in document flow so Login (topnav 1310) and the spin/WhatsApp
     FABs stay visible. Extra padding keeps the last odds above the FABs. */
  #sportsbookSection.sb-wrapper{
    position:relative;
    z-index:auto;
    isolation:auto;
    margin:0 8px 18px;
    padding-bottom:72px;
  }
  .sb-wrapper{margin:0 8px 18px;}
  .sb-sport-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:4px;padding:0 2px;}
  .sb-sport-tab{font-size:9px;padding:5px 9px;flex-shrink:0;min-height:28px;}
  .sb-title-text{font-size:13px;}

  #sportsbookContainer .sb-matches-list,
  .sb-matches-list{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    gap:8px;
    overflow:visible!important;
    padding:0;
  }
  #sportsbookContainer .sb-match-row,
  .sb-match-row,
  a.sb-match-row{
    flex:0 0 auto!important;
    width:100%!important;
    height:auto!important;
    min-width:0!important;
    max-width:none!important;
    aspect-ratio:auto!important;
    min-height:0!important;
    max-height:none;
    padding:8px 10px;
    gap:4px;
    border-radius:12px;
  }
  .sb-row-sport{font-size:16px;}
  .sb-row-name .sb-team{font-size:12px;}
  .sb-row-name .sb-vs{font-size:9px;}
  .sb-feat,.sb-feat-svg{width:16px;height:16px;}
  .sb-feat-letter{font-size:14px;}

  #sportsbookContainer .sb-row-odds,
  .sb-row-odds{
    margin:6px 0 0!important;
    gap:8px;
    justify-content:center;
  }
  #sportsbookContainer .sb-row-odds.sb-odds-3,
  .sb-row-odds.sb-odds-3{ gap:8px; }
  #sportsbookContainer .sb-row-odd,
  .sb-row-odd{
    width:36px!important;
    height:30px!important;
    min-width:36px!important;
    min-height:30px!important;
    max-width:36px!important;
    max-height:30px!important;
    padding:1px!important;
    overflow:hidden!important;
  }
  #sportsbookContainer .sb-row-odd-val,
  .sb-row-odd-val{font-size:11px!important;inset:1px!important;}
}
@media(max-width:380px){
  .sb-row-league{font-size:10px;}
  .sb-row-name .sb-team{font-size:12px;}
  .sb-sport-tab{font-size:9px;padding:4px 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);}

.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);}
.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:14px 5px 5px !important;
  }
  #page-home .game-name{
    font-size:9px !important;
  }
  #page-home .game-provider-name{
    font-size:7.5px !important;
  }
  #page-home .game-badge{
    font-size:6.5px !important;
    padding:2px 5px !important;
    top:4px !important;
    right:4px !important;
  }
  /* VIEW ALL card should fill grid cell like game cards */
  #page-home .view-all-card{
    width:100% !important;
    height:100% !important;
    min-height:unset !important;
    aspect-ratio:unset !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:10050;
  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,#c9a84c,#e8c96a);color:#111;
  -webkit-text-fill-color:#111;
  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;display:flex;align-items:center;justify-content:center;}
#rtab-sports .rsb-tile-emoji img,#rtab-sports .rsb-tab-btn img{object-fit:contain;flex-shrink:0;}
#rtab-sports .rsb-tile-emoji img{width:28px;height:28px;}
#rtab-sports .rsb-tab-btn img{width:14px;height:14px;}
#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 — light theme override; KEEP grid layout from base */
#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:grid;
  grid-template-columns:18px minmax(0,1fr) auto;
  align-items:center;gap:8px;padding:7px 10px;
  background:var(--rsb-card);border:1px solid var(--rsb-border);border-radius:8px;
  cursor:pointer;transition:border-color .15s,background .15s,transform .12s;
  border-left:3px solid var(--rsb-border);min-height:42px;
}
#rtab-sports .rsb-match-row:hover{
  border-color:var(--rsb-accent);border-left-color:var(--rsb-accent);
  transform:translateX(1px);
}
#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-icon-col{display:flex;align-items:center;justify-content:center;width:18px;height:100%;}
#rtab-sports .rsb-name-col{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px;}
#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:15px;flex-shrink:0;line-height:1;display:inline-flex;align-items:center;}
#rtab-sports .rsb-sport-em img{width:16px;height:16px;object-fit:contain;}
#rtab-sports .rsb-match-name{
  font-family:var(--font-display,'Oxanium',sans-serif);
  font-size:11px;font-weight:800;color:var(--rsb-text);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.2px;
}
#rtab-sports .rsb-time{
  font-size:9.5px;font-weight:700;color:var(--rsb-text-2);
  font-family:var(--font-mono,monospace);display:block;line-height:1.2;margin-top:1px;
}
#rtab-sports .rsb-time.live{color:var(--rsb-green);font-weight:900;}

/* Odds buttons in match rows */
#rtab-sports .rsb-odds-row{display:flex;gap:4px;flex-shrink:0;align-items:center;}
.rsb-odds-row.rsb-odds-indian{gap:6px;align-items:flex-end;}
.rsb-odds-row .sb-odds-col{gap:2px;}
.rsb-odds-row .sb-odds-col-lbl{font-size:7px;color:#7080a8;font-weight:800;letter-spacing:.03em;text-align:center;max-width:4.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rsb-odds-row .sb-odds-pair{display:flex;gap:2px;}
.rsb-odds-row .sb-row-odd{width:34px!important;height:30px!important;min-width:34px!important;min-height:30px!important;max-width:34px!important;max-height:30px!important;border-radius:3px!important;padding:1px!important;}
.rsb-odds-row .sb-row-odd.back{background:#a0d8fb!important;border:1px solid rgba(60,120,180,.35)!important;}
.rsb-odds-row .sb-row-odd.lay{background:#fdc9d4!important;border:1px solid rgba(180,80,100,.35)!important;}
.rsb-odds-row .sb-row-odd-val{font-size:10px!important;color:#141414!important;inset:1px!important;}

#rtab-sports .rsb-odd-btn{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:42px;height:36px;padding:3px 4px;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:7.5px;font-weight:800;color:var(--rsb-text-2);text-transform:uppercase;line-height:1.1;}
#rtab-sports .rsb-odd-val{
  font-size:12px;font-weight:900;color:var(--rsb-text);
  font-family:var(--font-mono,'Oxanium',sans-serif);line-height:1.1;
}
#rtab-sports .rsb-odd-val.loading{color:var(--rsb-text-3);}
@media(max-width:480px){
  #rtab-sports .rsb-match-row{padding:6px 8px;gap:6px;grid-template-columns:16px minmax(0,1fr) auto;}
  #rtab-sports .rsb-odd-btn{width:40px;height:36px;}
  #rtab-sports .rsb-odd-val{font-size:11px;}
  #rtab-sports .rsb-match-name{font-size:10.5px;}
}
@media(max-width:380px){
  #rtab-sports .rsb-odds-row{gap:3px;}
  #rtab-sports .rsb-odd-btn{width:36px;height:34px;}
  #rtab-sports .rsb-odd-lbl{font-size:6.5px;}
  #rtab-sports .rsb-odd-val{font-size:10px;}
}

/* "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;}

/* ═════════════════════════════════════════════════════════
   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;
}
/* Cards whose container enforces aspect-ratio via the card element: fill 100% */
#page-home .rtab-game-card img,
#page-home .game-thumb img,
#page-home .lc-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}
/* Live-card and aviator imgs use aspect-ratio on the img itself — keep height:auto */
#page-home .rtab-live-card img{
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  object-fit:cover;
}
#page-home .rtab-aviator-solo img{
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  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{
}

/* "Watch Live" pulse on live rows */
#rtab-sports .rsb-match-row.live-row .rsb-live-dot{
}

/* 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;}
}

/* Sportsbook sits in the page column — match cards carry the chrome. */
#page-home .sb-wrapper{
  background:transparent;
  border:none;
  border-radius:0;
  padding:4px 0 12px;
}
@media(max-width:639px){
  #page-home #sportsbookSection.sb-wrapper{
    padding:4px 0 72px;
  }
}

/* ── Performance: disable heavy animations for users who prefer reduced motion
   or on devices where GPU compositing is expensive (low-end Android) ── */
@media(prefers-reduced-motion:reduce){
  .lobby-slider,.rtab-marquee-track,.news-announce-track{animation:none!important;}
  .slider-track{transition:none!important;}
  .game-card,.rtab-game-card,.rtab-live-card,.hlc-card{transition:none!important;}
}
/* Pause marquee animations when page is not visible (saves battery) */
.rtab-marquee-track,.lobby-slider{animation:none!important;}

/* ══════════════════════════════════════
   PREMIUM POLISH (iter-150)
   Unifies card hover, adds gradient edge fade on scroll rows,
   refines section title accent line, smoother live-badge pulse.
══════════════════════════════════════ */

/* 1. Unified hover — every game/lobby/casino card lifts the same way.
   Uses transform-only + cheap box-shadow change; no layout cost. */
#page-home .hlc-card,
#page-home .rtab-game-card,
#page-home .rtab-live-card,
#page-home .lobby-card,
#page-home .game-card{
  transition:box-shadow .12s ease, border-color .12s ease;
}
#page-home .hlc-card:hover,
#page-home .rtab-live-card:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 28px rgba(0,0,0,.55), 0 0 0 1px rgba(245,197,66,.32);
  border-color:rgba(245,197,66,.32);
}

/* 2. Inner premium sheen — adds a hairline highlight at top of every card,
   gives a subtle "lit-from-above" feel without changing layout. */
#page-home .hlc-card,
#page-home .rtab-game-card,
#page-home .rtab-live-card,
#page-home .lobby-card{
  position:relative;
  isolation:isolate;
}
#page-home .hlc-card::after,
#page-home .rtab-game-card::after,
#page-home .rtab-live-card::after{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.08), transparent 28%);
  pointer-events:none;mix-blend-mode:overlay;z-index:5;opacity:.7;
}

/* 3. Scroll-row — native overflow-x, no mask (mask + hidden scrollbar hid the rail). */
#page-home .scroll-row{
  -webkit-mask-image:none;
  mask-image:none;
}

/* 4. Section title accent — a 24px gold gradient hairline tucked
   under each title, gives the page a refined editorial rhythm. */
#page-home .section-header{
  position:relative;
}
#page-home .section-header::after{
  content:'';position:absolute;left:2px;bottom:-4px;
  width:32px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,#f5c542,#ff9100,transparent);
  box-shadow:0 0 8px rgba(245,197,66,.35);
  opacity:.85;
}

/* 5. Refined live-badge pulse — subtler, slower, feels intentional
   instead of frantic. Replaces the default badgePulse 2s. */

#page-home .section-title-badge.live-badge,
#page-home .hlc-live-chip,
#page-home .rsc-live{
}

/* 6. Lobby card depth — refined inner glow that suggests velvet/lacquer
   instead of flat plastic. Layered on top of the existing color gradient. */
#page-home .lobby-card{
  box-shadow:
    0 8px 28px rgba(0,0,0,.5),
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -42px 64px -42px rgba(0,0,0,.7);
}
#page-home .lobby-card-bg{object-position:center 20%;}
#page-home .lobby-card-scrim{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,
    rgba(0,0,0,.12) 0%,
    rgba(0,0,0,.08) 40%,
    rgba(0,0,0,.78) 80%,
    rgba(0,0,0,.9) 100%);
}
#page-home .lobby-card-inner{z-index:3;}
#page-home .lobby-card-meta{
  display:flex;flex-direction:column;align-items:flex-start;gap:5px;
  max-width:calc(100% - 28px);
}
#page-home .lobby-card-name{
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;
}
#page-home .lobby-card:hover{
  transform:translateY(-3px) scale(1.012);
  box-shadow:
    0 14px 36px rgba(0,0,0,.6),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -42px 64px -42px rgba(0,0,0,.65),
    0 0 0 1px rgba(255,215,140,.25);
}

/* 7. Sportsbook header refined — gold underline matches section style */
#page-home .sb-header{
  position:relative;padding-bottom:10px;
  border-bottom:1px solid rgba(245,197,66,.08);
  margin-bottom:8px;
}

/* 8. Skeleton shimmer — premium gold tint replaces grey */

.sb-skeleton, .sb-skel-line{
  background:rgba(245,197,66,.08);
}

/* 9. News announce — black liquid bar + gold border-tip */
.news-announce{
  background:linear-gradient(90deg,#0a0a0a,#080808 50%,#0a0a0a);
  border-bottom:1px solid rgba(245,197,66,.18);
  position:sticky;
  top:calc(var(--nav-h, 64px) + 22px);
  z-index:1200;
}
body.has-install-banner .news-announce{
  top:calc(var(--nav-h, 64px) + 34px);
}
.news-announce::after{
  content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(245,197,66,.35),transparent);
}

/* 10. Reduce-motion friendliness for the polish layer too */
@media(prefers-reduced-motion:reduce){
  #page-home .section-title-badge.live-badge,
  #page-home .hlc-live-chip,
  #page-home .rsc-live{ animation:none; }
  .sb-skeleton, .sb-skel-line{ animation:none; }
  #page-home .hlc-card:hover,
  #page-home .lobby-card:hover{ transform:none; }
}

/* ══════════════════════════════════════════════════════════════════════
   MOBILE — ONE GUTTER FOR EVERY TOP-LEVEL BLOCK              2026-08-18
   Every block on the home page carried its own horizontal inset, so on a
   phone the left edge of the page stepped in and out down the scroll:
     hero 4 · sportsbook 4 · ticker 4 · strips 4 · quicknav 8 ·
     rtab bar 8 · sections 12 · footer 14 · search 16 · divider 18
   All of them now read one variable, so the column lines up.
   Blocks that paint a background/border take the gutter as a MARGIN —
   their box edge is what the eye follows. Transparent wrappers take it
   as PADDING, since only their contents need to move. !important is
   needed on both: several of these blocks set their inset from an inline
   style attribute, and the rest from `#page-home .x` rules that outrank
   a `#page-home > *` selector.
   ────────────────────────────────────────────────────────────────────── */
@media(max-width:900px){
  :root{ --m-gut:12px; }

  /* .main adds 8px of its own (4px ≤640). Drop it on the home page so
     --m-gut is the single source of the inset. Engines without :has()
     just keep that padding — the column still lines up, only wider. */
  .main:has(> #page-home){ padding-top:0; padding-left:0; padding-right:0; }

  /* transparent wrappers — move the contents.
     :where() keeps the exclusion list at zero specificity. */
  #page-home > *:not(:where(script,style,.support-bubble,.spin-fab,.search-results-panel,.news-announce,
                            #heroSlider,#sportsbookContainer,
                            #casinoSliders,.rtab-main-wrapper,.search-bar)){
    padding-left:var(--m-gut) !important;
    padding-right:var(--m-gut) !important;
  }

  /* painted boxes — move the box, not what sits inside it.
     width:auto matters: these are width:100% blocks, and a margin on a
     width:100% box overflows to the right instead of insetting. */
  #page-home > #heroSlider,
  #page-home > #sportsbookContainer,
  #page-home > #casinoSliders,
  #page-home > .rtab-main-wrapper,
  #page-home > .search-bar{
    margin-left:var(--m-gut) !important;
    margin-right:var(--m-gut) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    width:auto !important;
    max-width:none !important;
  }

  /* the footer is a sibling of #page-home under .main, so it takes the
     gutter at its own level */
  .main > .site-end{
    padding-left:var(--m-gut) !important;
    padding-right:var(--m-gut) !important;
  }

  /* Two blocks still stepped in past their own container: the section
     headers (titles landed 4px right of the card row underneath them) and
     the sportsbook card (its painted box sat 8px right of every other
     card). Both now sit on the gutter. Padding INSIDE a painted card is
     left alone — that is the card's own inner spacing, not the gutter. */
  #page-home .section-header{
    padding-left:0 !important;
    padding-right:0 !important;
  }
  #sportsbookContainer > .sb-wrapper{
    margin-left:0 !important;
    margin-right:0 !important;
  }

  /* Rows inside a section carried their own inset as well, so the cards
     and filter chips sat 8-14px to the right of the section title above
     them. The section is the container now; the row just fills it. */
  #page-home .scroll-row,
  #page-home .filter-chips{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  /* .hlc-card has min-width:auto, which inflates each `1fr` track to the
     card's intrinsic width — three 125px tracks in 350px of room, so the
     third card hung 19px past the right edge (the mobile overflow the
     site audit flagged). minmax(0,1fr) lets the tracks actually shrink. */
  #page-home .scroll-row{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

/* Below 768px .scroll-row is a static grid, not a horizontal scroller, so
   the edge-fade mask has nothing left to hint at — it just washes out the
   first and last card now that they start on the gutter. */
@media(max-width:768px){
  #page-home .scroll-row{
    -webkit-mask-image:none !important;
    mask-image:none !important;
  }
}

/* Hero slide optional link wrapper (admin-managed banners) */
#heroSlider .slider-slide-link{display:block;width:100%;height:100%;position:absolute;inset:0;}
#page-home .slider-slide-link img{
  position:absolute;inset:0;
  width:100%;height:100%;max-width:none;
  object-fit:cover;object-position:top center;
  display:block;
}

/* Hold sportsbook height so seed/poll never collapses the page. */
#sportsbookContainer{min-height:360px;}
#page-home .slider-wrap{contain:layout paint;}

/* Below-fold casino strips: skip layout/paint until near viewport. */
#page-home #latestGamesSection,
#page-home .casino-lobby-section,
#page-home .featured-section{
  content-visibility:auto;
  contain-intrinsic-size:auto 520px;
}

#page-home .slider-track{will-change:auto;}
#page-home .lobby-slider-wrap,
#page-home .rtab-marquee,
#page-home .scroll-row,
#page-home .filter-chips{
  scroll-behavior:auto;
  -webkit-mask-image:none;
  mask-image:none;
}
#page-home .news-announce-scroll{
  overflow:hidden;
  cursor:default;
  -webkit-mask-image:none;
  mask-image:none;
}
body.home-anim-paused .news-announce-track,
body.home-anim-paused .spin-fab-wheel,
body.home-anim-paused .spin-fab-glow,
body.home-anim-paused .spin-fab-glow::before,
body.home-anim-paused .spin-fab-glow::after,
body.home-anim-paused .spin-fab-spark{
  animation-play-state:paused !important;
}
