/* ============================================================
   ROYAL WAGER X - Premium Dark Gold Theme
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;800;900&family=Rajdhani:wght@400;500;600;700&family=Poppins:wght@300;400;500;600;700;800&display=swap');

:root {
  --bg-0: #050508;
  --bg-1: #0b0b14;
  --bg-2: #111120;
  --bg-3: #18182e;
  --bg-card: #14142a;
  --bg-card-h: #1c1c38;

  --gold-0: #a0720a;
  --gold-1: #c8920e;
  --gold-2: #e8b42a;
  --gold-3: #f5d060;
  --gold-4: #fff8e1;
  --gold-glow: rgba(232,180,42,0.35);

  --purple-1: #5b1a96;
  --purple-2: #8b2be2;
  --purple-glow: rgba(139,43,226,0.3);

  --green: #00e676;
  --green-dim: rgba(0,230,118,0.15);
  --red: #ff3d57;
  --red-dim: rgba(255,61,87,0.15);
  --blue: #2979ff;
  --orange: #ff9100;

  --text-1: #ffffff;
  --text-2: #c8c8e0;
  --text-3: #7878a0;
  --text-gold: var(--gold-2);

  --border: rgba(255,255,255,0.07);
  --border-gold: rgba(232,180,42,0.3);

  --header-h: 68px;
  --bottom-h: 60px;
  --ticker-h: 34px;
  --sidebar-w: 270px;
  --sidebar-r: 260px;

  --r-sm: 6px;
  --r-md: 10px;
  --r-lg: 16px;
  --r-xl: 24px;
  --r-full: 999px;

  --ease: cubic-bezier(.4,0,.2,1);
  --spring: cubic-bezier(.34,1.56,.64,1);
}

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: 'Poppins', sans-serif;
  background: var(--bg-0);
  color: var(--text-1);
  min-height: 100vh;
  overflow-x: hidden;
  line-height: 1.5;
}

a { text-decoration: none; color: inherit; }
button { cursor: pointer; border: none; outline: none; font-family: inherit; }
img { max-width: 100%; }

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--bg-1); }
::-webkit-scrollbar-thumb { background: var(--gold-0); border-radius: 3px; }

/* ══════════════════════════════════════════════
   LOGO SVG STYLES
══════════════════════════════════════════════ */
.logo-wrap { display:flex; align-items:center; gap:10px; cursor:pointer; }
.logo-svg { height: 42px; width: auto; }
.logo-text-main {
  font-family: 'Cinzel', serif;
  font-weight: 800;
  font-size: 18px;
  background: linear-gradient(135deg, var(--gold-2), var(--gold-3), var(--gold-1));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  letter-spacing: 0.5px;
  line-height: 1.1;
}
.logo-sub { font-size: 9px; letter-spacing: 3px; color: var(--gold-1); text-transform:uppercase; }

/* ══════════════════════════════════════════════
   HEADER
══════════════════════════════════════════════ */
.header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  height: var(--header-h);
  background: rgba(5,5,8,0.95);
  border-bottom: 1px solid var(--border-gold);
  backdrop-filter: blur(16px);
  display: flex; align-items: center;
  padding: 0 16px; gap: 12px;
}

.header-left { display:flex; align-items:center; gap:10px; min-width:200px; }

.user-avatar-wrap {
  width: 40px; height: 40px; border-radius: var(--r-full);
  border: 2px solid var(--gold-2);
  background: linear-gradient(135deg,#5b1a96,#1a1a3e);
  display:flex; align-items:center; justify-content:center;
  font-weight: 700; font-size: 16px; color: var(--gold-3); cursor:pointer;
  box-shadow: 0 0 12px var(--gold-glow);
  flex-shrink:0;
}
.user-info-wrap { display:flex; flex-direction:column; }
.user-name {
  font-size: 13px; font-weight: 700; color: var(--text-1);
  display:flex; align-items:center; gap:6px;
}
.vip-tag {
  background: linear-gradient(90deg,var(--gold-1),var(--gold-3));
  color: var(--bg-0); font-size: 9px; font-weight: 700;
  padding: 1px 6px; border-radius: var(--r-full);
  display:flex; align-items:center; gap:3px;
}
.user-balance { font-size: 12px; color: var(--gold-3); font-weight:600; display:flex; align-items:center; gap:4px; }
.balance-add {
  width:16px; height:16px; border-radius:var(--r-full); background:var(--gold-2);
  color:var(--bg-0); font-size:10px; font-weight:900;
  display:inline-flex; align-items:center; justify-content:center; cursor:pointer;
}

.header-center { flex:1; display:flex; justify-content:center; }

.header-right { display:flex; align-items:center; gap:4px; min-width:200px; justify-content:flex-end; }
.h-nav-btn {
  display:flex; flex-direction:column; align-items:center; gap:2px;
  padding: 6px 10px; border-radius: var(--r-sm); cursor:pointer;
  transition: background .2s, color .2s;
  color: var(--text-3); font-size: 11px; position:relative;
}
.h-nav-btn i { font-size: 16px; }
.h-nav-btn:hover { background: var(--bg-3); color: var(--gold-2); }
.h-nav-badge {
  position:absolute; top:4px; right:4px;
  background: var(--red); color:#fff; font-size:8px; font-weight:700;
  width:14px; height:14px; border-radius:var(--r-full);
  display:flex; align-items:center; justify-content:center;
}

/* ══════════════════════════════════════════════
   LAYOUT WRAPPER
══════════════════════════════════════════════ */
.page-wrap {
  display: flex;
  padding-top: var(--header-h);
  padding-bottom: calc(var(--bottom-h) + var(--ticker-h));
  min-height: 100vh;
}

/* ── Sidebars ── */
.sidebar-l, .sidebar-r {
  width: var(--sidebar-w);
  flex-shrink: 0;
  position: sticky;
  top: var(--header-h);
  height: calc(100vh - var(--header-h));
  overflow-y: auto;
  padding: 12px;
  display: flex; flex-direction: column; gap: 10px;
}
.sidebar-r { width: var(--sidebar-r); }

.center-col { flex: 1; min-width: 0; padding: 12px; display:flex; flex-direction:column; gap:14px; }

/* ── Sidebar Card ── */
.s-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  padding: 14px;
  display: flex; flex-direction: column; gap: 8px;
}
.s-card-header { display:flex; align-items:center; justify-content:space-between; }
.s-card-title { font-weight: 700; font-size: 13px; color: var(--gold-2); }
.s-card-icon { font-size: 22px; }
.s-card p { font-size: 11px; color: var(--text-2); }

/* Buttons */
.btn-gold {
  background: linear-gradient(135deg,var(--gold-1),var(--gold-3));
  color: var(--bg-0); font-weight: 700; font-size: 12px;
  padding: 8px 16px; border-radius: var(--r-full);
  transition: transform .2s var(--spring), box-shadow .2s;
  box-shadow: 0 4px 14px var(--gold-glow);
}
.btn-gold:hover { transform: translateY(-2px); box-shadow: 0 8px 24px var(--gold-glow); }
.btn-outline {
  background: transparent; color: var(--gold-2);
  border: 1px solid var(--border-gold); font-weight: 600; font-size: 12px;
  padding: 7px 16px; border-radius: var(--r-full);
  transition: background .2s, transform .2s;
}
.btn-outline:hover { background: var(--bg-3); transform: translateY(-1px); }

/* Podium */
.podium-wrap { display:flex; justify-content:center; align-items:flex-end; gap:6px; margin-top:4px; }
.podium-block {
  width: 32px; border-radius: var(--r-sm) var(--r-sm) 0 0;
  display:flex; align-items:center; justify-content:center;
  font-size: 12px; font-weight: 700; color: var(--bg-0);
}
.podium-block.p1 { height:44px; background:var(--gold-2); }
.podium-block.p2 { height:32px; background:#a8a8c0; }
.podium-block.p3 { height:24px; background:#c87533; }

/* ══════════════════════════════════════════════
   HERO SECTION
══════════════════════════════════════════════ */
.hero {
  position: relative; overflow: hidden;
  border-radius: var(--r-xl);
  min-height: 320px;
  display: flex; align-items: center; justify-content: center;
  background: radial-gradient(ellipse at center, #1a0a3e 0%, #080818 70%);
  border: 1px solid var(--border-gold);
}
.hero-bg {
  position:absolute; inset:0;
  background-size: cover; background-position:center;
  opacity: 0.35;
}
.hero-overlay {
  position:absolute; inset:0;
  background: radial-gradient(ellipse at 50% 100%, rgba(139,43,226,.4) 0%, transparent 70%),
              linear-gradient(to top, rgba(5,5,8,.9) 0%, transparent 60%);
}
/* Animated particles */
.hero-particles { position:absolute; inset:0; overflow:hidden; pointer-events:none; }
.hero-particles span {
  position:absolute; width:3px; height:3px; border-radius:50%;
  background:var(--gold-2); opacity:0;
  animation: particleFloat var(--dur,4s) var(--delay,0s) infinite ease-in-out;
}
@keyframes particleFloat {
  0%   { opacity:0; transform:translateY(100%) scale(0); }
  30%  { opacity:.8; }
  100% { opacity:0; transform:translateY(-120%) scale(1.5); }
}

.hero-content { position:relative; text-align:center; z-index:2; padding:30px 20px; }
.hero-crown { font-size: 36px; margin-bottom:6px; animation: crownBob 3s ease-in-out infinite; }
@keyframes crownBob { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
.hero-badge {
  width: 72px; height: 72px; border-radius: var(--r-full);
  background: linear-gradient(135deg,#1a0a3e,#0b0b20);
  border: 2px solid var(--gold-2);
  box-shadow: 0 0 30px var(--gold-glow), 0 0 60px var(--purple-glow);
  display:flex; align-items:center; justify-content:center;
  font-family:'Cinzel',serif; font-size:26px; font-weight:900;
  color: var(--gold-3); margin:0 auto 10px;
  animation: badgePulse 2s ease-in-out infinite;
}
@keyframes badgePulse {
  0%,100%{box-shadow:0 0 30px var(--gold-glow),0 0 60px var(--purple-glow)}
  50%{box-shadow:0 0 50px var(--gold-glow),0 0 100px var(--purple-glow)}
}
.hero-title {
  font-family: 'Cinzel',serif; font-weight: 900;
  font-size: clamp(32px,5vw,60px);
  background: linear-gradient(135deg,var(--gold-2),var(--gold-3),var(--gold-1));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  line-height:1; margin-bottom:8px; text-shadow:none;
}
.hero-sub {
  font-size: 13px; letter-spacing: 4px; text-transform:uppercase;
  color: var(--text-2); margin-bottom:18px;
}
.hero-admin-btn {
  position:absolute; top:12px; right:12px; z-index:3;
  background: rgba(255,255,255,0.08); border:1px solid var(--border);
  color:var(--text-3); font-size:11px; padding:5px 10px;
  border-radius:var(--r-sm); cursor:pointer; transition:.2s;
}
.hero-admin-btn:hover { color:var(--gold-2); border-color:var(--border-gold); }

/* ══════════════════════════════════════════════
   SECTION HEADERS
══════════════════════════════════════════════ */
.sec-header {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom: 12px;
}
.sec-title {
  font-family: 'Cinzel',serif; font-weight: 700;
  font-size: 16px; color: var(--gold-2);
  display:flex; align-items:center; gap:8px;
}
.sec-title::before {
  content:''; width:4px; height:20px; background:linear-gradient(to bottom,var(--gold-2),var(--gold-0));
  border-radius:2px;
}
.sec-badge {
  background:var(--red); color:#fff; font-size:8px; font-weight:700;
  padding:2px 6px; border-radius:var(--r-full); animation:badgePulse2 1.5s infinite;
}
@keyframes badgePulse2{0%,100%{opacity:1}50%{opacity:.6}}
.sec-see-all {
  font-size:11px; color:var(--gold-1); cursor:pointer; transition:.2s;
  border-bottom:1px dashed var(--border-gold);
}
.sec-see-all:hover{color:var(--gold-3);}

/* ══════════════════════════════════════════════
   HORIZONTAL SCROLL ROWS
══════════════════════════════════════════════ */
.h-scroll-row {
  display:flex; gap:10px; overflow-x:auto; padding-bottom:4px;
  scrollbar-width:none;
}
.h-scroll-row::-webkit-scrollbar{display:none;}

/* ══════════════════════════════════════════════
   GAME CARDS
══════════════════════════════════════════════ */
.game-card {
  flex-shrink:0;
  width: 130px;
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  overflow: hidden;
  cursor: pointer;
  transition: transform .25s var(--spring), box-shadow .25s, border-color .25s;
  position:relative;
}
.game-card:hover {
  transform: translateY(-5px) scale(1.02);
  border-color: var(--gold-1);
  box-shadow: 0 12px 32px rgba(0,0,0,.5), 0 0 20px var(--gold-glow);
}
.game-card.featured { border-color:var(--gold-2); box-shadow:0 0 20px var(--gold-glow); }
.game-card.featured::before {
  content:'HOT'; position:absolute; top:8px; right:8px; z-index:2;
  background:var(--red); color:#fff; font-size:8px; font-weight:800;
  padding:2px 6px; border-radius:var(--r-full);
}
.game-card.new-badge::after {
  content:'NEW'; position:absolute; top:8px; right:8px; z-index:2;
  background:var(--green); color:var(--bg-0); font-size:8px; font-weight:800;
  padding:2px 6px; border-radius:var(--r-full);
}

.game-thumb {
  width:100%; height:90px; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  position:relative; font-size:36px;
  background-size:cover; background-position:center;
}
.game-thumb-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to bottom,transparent 40%,rgba(20,20,42,.9));
}
.game-thumb-default {
  width:100%; height:100%; display:flex; align-items:center; justify-content:center;
  font-size:38px;
}

.game-info { padding:8px 10px; }
.game-name { font-weight:700; font-size:12px; color:var(--text-1); margin-bottom:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.game-players { font-size:10px; color:var(--text-3); }
.game-players span { color:var(--green); font-weight:600; }

/* ══════════════════════════════════════════════
   SLOTS ROW CARDS (wider)
══════════════════════════════════════════════ */
.slot-card {
  flex-shrink:0; width:160px;
  background:var(--bg-card); border:1px solid var(--border);
  border-radius:var(--r-lg); overflow:hidden; cursor:pointer;
  transition:transform .25s var(--spring), box-shadow .25s, border-color .25s;
  position:relative;
}
.slot-card:hover {
  transform:translateY(-5px) scale(1.02);
  border-color:var(--purple-2);
  box-shadow:0 12px 32px rgba(0,0,0,.5), 0 0 20px var(--purple-glow);
}
.slot-thumb {
  width:100%; height:100px;
  display:flex; align-items:center; justify-content:center; font-size:44px;
  background-size:cover; background-position:center; position:relative;
}
.slot-thumb-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to bottom,transparent 50%,var(--bg-card));
}
.slot-info { padding:8px 10px; }
.slot-name { font-weight:700; font-size:12px; color:var(--text-1); }
.slot-rtp { font-size:10px; color:var(--text-3); }
.slot-rtp span { color:var(--gold-2); font-weight:600; }
.jackpot-badge {
  position:absolute; top:8px; left:8px; z-index:2;
  background:linear-gradient(90deg,var(--gold-1),var(--gold-3));
  color:var(--bg-0); font-size:8px; font-weight:800;
  padding:2px 7px; border-radius:var(--r-full);
}

/* ══════════════════════════════════════════════
   AVIATOR CARDS (special)
══════════════════════════════════════════════ */
.aviator-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:12px;
}
.av-card {
  border-radius:var(--r-lg); overflow:hidden; cursor:pointer;
  border:1px solid var(--border); position:relative;
  transition:transform .25s var(--spring), box-shadow .25s;
  background:var(--bg-card);
  min-height:130px; display:flex; flex-direction:column;
}
.av-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px rgba(0,0,0,.6);}
.av-card-bg {
  position:absolute; inset:0; background-size:cover; background-position:center; opacity:.3;
}
.av-card-content { position:relative; z-index:1; padding:16px; flex:1; display:flex; flex-direction:column; }
.av-icon { font-size:36px; margin-bottom:8px; }
.av-name { font-family:'Cinzel',serif; font-weight:700; font-size:14px; margin-bottom:4px; }
.av-desc { font-size:10px; color:var(--text-2); flex:1; }
.av-multiplier {
  margin-top:10px; background:rgba(0,0,0,.4); border-radius:var(--r-sm);
  padding:4px 8px; font-size:10px; color:var(--gold-2); font-weight:700;
  display:inline-block;
}
.av-tag {
  position:absolute; top:10px; right:10px; z-index:2;
  font-size:8px; font-weight:800; padding:2px 7px; border-radius:var(--r-full);
}

/* ══════════════════════════════════════════════
   ONLINE PLAYERS RIGHT SIDEBAR
══════════════════════════════════════════════ */
.online-panel { background:var(--bg-card); border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; }
.online-header {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 14px; border-bottom:1px solid var(--border);
  background:var(--bg-3);
}
.online-title { font-weight:700; font-size:13px; color:var(--gold-2); display:flex; align-items:center; gap:6px; }
.online-dot { width:8px; height:8px; border-radius:50%; background:var(--green); display:inline-block; animation:dotPulse 1.5s infinite; }
@keyframes dotPulse{0%,100%{box-shadow:0 0 0 0 var(--green-dim)}50%{box-shadow:0 0 0 5px transparent}}
.online-count { font-size:13px; color:var(--green); font-weight:700; }

.player-row {
  display:flex; align-items:center; gap:10px;
  padding:8px 14px; border-bottom:1px solid var(--border); transition:.2s;
}
.player-row:hover{background:var(--bg-3);}
.player-row:last-child{border-bottom:none;}
.p-avatar {
  width:32px; height:32px; border-radius:var(--r-full); flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  font-weight:700; font-size:13px; color:#fff;
}
.p-name { font-size:12px; font-weight:600; }
.p-balance { font-size:10px; color:var(--gold-2); }
.p-level {
  margin-left:auto; width:28px; height:28px; border-radius:var(--r-full);
  border:2px solid; display:flex; align-items:center; justify-content:center;
  font-size:9px; font-weight:700; flex-shrink:0;
}
.p-status { font-size:8px; color:var(--green); text-align:center; }

.invite-earn-btn {
  width:100%; background:linear-gradient(135deg,var(--purple-1),var(--purple-2));
  color:#fff; font-weight:700; font-size:13px;
  padding:12px; border-radius:var(--r-lg); margin-top:8px;
  display:flex; align-items:center; justify-content:center; gap:8px;
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 4px 16px var(--purple-glow);
  transition:transform .2s var(--spring), box-shadow .2s;
}
.invite-earn-btn:hover{transform:translateY(-3px);box-shadow:0 8px 24px var(--purple-glow);}

/* ══════════════════════════════════════════════
   BOTTOM BAR
══════════════════════════════════════════════ */
.bottom-bar {
  position:fixed; bottom:var(--ticker-h); left:0; right:0; z-index:900;
  height:var(--bottom-h);
  background:rgba(5,5,8,.97);
  border-top:1px solid var(--border-gold);
  display:flex; align-items:center;
  backdrop-filter:blur(16px);
}
.bottom-nav-group { display:flex; align-items:center; padding:0 8px; gap:2px; }
.b-nav-btn {
  display:flex; flex-direction:column; align-items:center; gap:1px;
  padding:6px 12px; border-radius:var(--r-sm); cursor:pointer;
  color:var(--text-3); font-size:9px; transition:.2s;
}
.b-nav-btn i{font-size:16px;}
.b-nav-btn:hover{color:var(--gold-2);}
.b-nav-btn.active{color:var(--gold-2);}

.play-now-cta {
  flex:1; display:flex; align-items:center; justify-content:center;
}
.play-now-btn {
  background:linear-gradient(135deg,var(--gold-1),var(--gold-3));
  color:var(--bg-0); font-family:'Cinzel',serif; font-weight:800;
  font-size:14px; padding:0 32px; height:46px; border-radius:var(--r-full);
  display:flex; align-items:center; gap:10px;
  box-shadow:0 4px 20px var(--gold-glow);
  transition:transform .2s var(--spring), box-shadow .2s;
  letter-spacing:.5px;
}
.play-now-btn:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 8px 32px var(--gold-glow);}
.play-sub{font-size:9px;font-family:'Poppins',sans-serif;font-weight:500;opacity:.8;}

.bottom-refer {
  display:flex; align-items:center; gap:8px; padding:0 16px;
  border-left:1px solid var(--border);
}
.bottom-refer-text { font-size:10px; }
.bottom-refer-text .r-title{font-weight:700;color:var(--gold-2);}
.bottom-refer-text .r-sub{color:var(--text-3);}
.invite-sm-btn {
  background:var(--purple-2); color:#fff; font-size:9px; font-weight:700;
  padding:4px 10px; border-radius:var(--r-full); white-space:nowrap; cursor:pointer;
}

.bottom-safe { display:flex; align-items:center; gap:8px; padding:0 16px; border-left:1px solid var(--border); }
.safe-shield { width:32px; height:32px; background:var(--green-dim); border-radius:var(--r-full); display:flex; align-items:center; justify-content:center; color:var(--green); font-size:14px; }
.safe-text .s-title{font-size:10px;font-weight:700;color:var(--green);}
.safe-text .s-sub{font-size:9px;color:var(--text-3);}

/* ══════════════════════════════════════════════
   TICKER
══════════════════════════════════════════════ */
.ticker-bar {
  position:fixed; bottom:0; left:0; right:0; z-index:901;
  height:var(--ticker-h); background:var(--bg-3);
  border-top:1px solid var(--border); overflow:hidden;
  display:flex; align-items:center;
}
.ticker-track {
  display:flex; gap:40px; white-space:nowrap;
  animation:tickerScroll 30s linear infinite;
}
.ticker-track:hover{animation-play-state:paused;}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.ticker-item { font-size:11px; color:var(--text-2); display:flex; align-items:center; gap:6px; }
.ticker-item i{color:var(--gold-2);}

/* ══════════════════════════════════════════════
   MODAL
══════════════════════════════════════════════ */
.modal-overlay {
  position:fixed; inset:0; z-index:2000;
  background:rgba(0,0,0,.8); backdrop-filter:blur(8px);
  display:none; align-items:center; justify-content:center;
  animation:fadeIn .25s ease;
}
.modal-overlay.open{display:flex;}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.modal-box {
  background:var(--bg-2); border:1px solid var(--border-gold);
  border-radius:var(--r-xl); padding:28px;
  width:min(420px,95vw); position:relative;
  animation:slideUp .3s var(--spring);
}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.modal-close {
  position:absolute; top:12px; right:14px;
  font-size:20px; color:var(--text-3); cursor:pointer; transition:.2s;
}
.modal-close:hover{color:var(--text-1);}
.modal-logo { text-align:center; margin-bottom:16px; }
.modal-title { text-align:center; font-family:'Cinzel',serif; font-weight:700; font-size:20px; color:var(--gold-2); }
.modal-sub { text-align:center; font-size:12px; color:var(--text-3); margin-bottom:20px; }
.form-group { margin-bottom:14px; }
.form-label { font-size:12px; font-weight:600; color:var(--text-2); margin-bottom:5px; display:block; }
.form-input {
  width:100%; padding:10px 14px;
  background:var(--bg-3); border:1px solid var(--border);
  border-radius:var(--r-md); color:var(--text-1); font-size:13px;
  transition:border-color .2s;
}
.form-input:focus{outline:none;border-color:var(--gold-1);}
.btn-submit {
  width:100%; background:linear-gradient(135deg,var(--gold-1),var(--gold-3));
  color:var(--bg-0); font-weight:700; font-size:14px;
  padding:12px; border-radius:var(--r-full);
  box-shadow:0 4px 16px var(--gold-glow); transition:transform .2s, box-shadow .2s;
}
.btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--gold-glow);}
.modal-footer { text-align:center; font-size:12px; color:var(--text-3); margin-top:14px; }
.modal-footer a { color:var(--gold-2); cursor:pointer; border-bottom:1px solid var(--border-gold); }

/* ══════════════════════════════════════════════
   SECTION TRANSITION
══════════════════════════════════════════════ */
.section-transition {
  position:fixed; inset:0; z-index:9999;
  background:var(--bg-0); display:none;
  align-items:center; justify-content:center; flex-direction:column; gap:16px;
}
.section-transition.active{display:flex;}
.st-logo { font-family:'Cinzel',serif; font-size:48px; font-weight:900; color:var(--gold-2); }
.st-text { font-size:14px; color:var(--text-2); letter-spacing:3px; }
.st-dots{display:flex;gap:6px;}
.st-dot{width:8px;height:8px;border-radius:50%;background:var(--gold-2);animation:stDot 1.2s infinite;}
.st-dot:nth-child(2){animation-delay:.2s;}
.st-dot:nth-child(3){animation-delay:.4s;}
@keyframes stDot{0%,80%,100%{transform:scale(.5);opacity:.3}40%{transform:scale(1);opacity:1}}

/* ══════════════════════════════════════════════
   SPORTS PAGE
══════════════════════════════════════════════ */
.sports-nav {
  width:200px; flex-shrink:0; padding:12px;
  background:var(--bg-1); border-right:1px solid var(--border);
  overflow-y:auto; height:calc(100vh - var(--header-h));
  position:sticky; top:var(--header-h);
}
.sports-nav-item {
  display:flex; align-items:center; gap:10px;
  padding:10px 12px; border-radius:var(--r-md); cursor:pointer;
  font-size:13px; font-weight:500; color:var(--text-2);
  transition:.2s; margin-bottom:2px; position:relative;
}
.sports-nav-item:hover{background:var(--bg-3);color:var(--gold-2);}
.sports-nav-item.active{background:linear-gradient(90deg,rgba(232,180,42,.15),transparent);color:var(--gold-2);border-left:3px solid var(--gold-2);}
.sports-nav-item.live-item{color:var(--red);}
.live-count{background:var(--red);color:#fff;font-size:9px;font-weight:700;padding:1px 6px;border-radius:var(--r-full);}

.sports-main { flex:1; padding:12px; display:flex; flex-direction:column; gap:12px; overflow-y:auto; }

.bet-slip-panel {
  width:280px; flex-shrink:0; padding:12px;
  background:var(--bg-1); border-left:1px solid var(--border);
  overflow-y:auto; height:calc(100vh - var(--header-h));
  position:sticky; top:var(--header-h);
}
.bet-slip-header {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:14px;
}
.bet-slip-title{font-weight:700;font-size:14px;color:var(--gold-2);}
.my-bets-tab{font-size:12px;color:var(--text-3);cursor:pointer;transition:.2s;}
.my-bets-tab:hover{color:var(--gold-2);}

.bet-item {
  background:var(--bg-3); border:1px solid var(--border);
  border-radius:var(--r-md); padding:10px 12px; margin-bottom:8px;
  position:relative;
}
.bet-item-close { position:absolute; top:8px; right:8px; font-size:14px; color:var(--text-3); cursor:pointer; }
.bet-match { font-size:11px; color:var(--text-3); }
.bet-team { font-size:13px; font-weight:600; margin:2px 0; }
.bet-odd { font-size:16px; font-weight:700; color:var(--gold-2); }

.bet-total-row { display:flex; justify-content:space-between; font-size:12px; margin:8px 0 4px; }
.bet-total-row .label{color:var(--text-3);}
.bet-total-row .value{font-weight:700;color:var(--text-1);}
.max-win { color:var(--green); font-weight:700; font-size:14px; }

.place-bet-btn {
  width:100%; background:linear-gradient(135deg,var(--gold-1),var(--gold-3));
  color:var(--bg-0); font-weight:800; font-size:14px;
  padding:13px; border-radius:var(--r-lg);
  box-shadow:0 4px 16px var(--gold-glow); transition:transform .2s;
}
.place-bet-btn:hover{transform:translateY(-2px);}

.live-match-card {
  background:var(--bg-card); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:14px; cursor:pointer;
  transition:border-color .2s;
}
.live-match-card:hover{border-color:var(--border-gold);}
.lm-league { font-size:10px; color:var(--text-3); display:flex; align-items:center; gap:6px; margin-bottom:10px; }
.live-pill { background:var(--red); color:#fff; font-size:8px; font-weight:700; padding:1px 6px; border-radius:var(--r-full); animation:badgePulse2 1s infinite; }
.lm-teams { display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; }
.lm-team { display:flex; flex-direction:column; align-items:center; gap:4px; }
.lm-team-icon { font-size:24px; }
.lm-team-name { font-size:11px; font-weight:600; }
.lm-score { font-size:22px; font-weight:800; color:var(--gold-2); }
.lm-time { font-size:10px; color:var(--text-3); }
.lm-odds { display:flex; gap:6px; }
.odd-btn {
  flex:1; background:var(--bg-3); border:1px solid var(--border);
  border-radius:var(--r-sm); padding:6px; text-align:center;
  font-size:11px; font-weight:700; cursor:pointer; transition:.2s;
}
.odd-btn:hover{background:var(--border-gold);color:var(--gold-2);border-color:var(--gold-1);}
.odd-btn.selected{background:var(--gold-1);color:var(--bg-0);}
.odd-label{font-size:8px;font-weight:400;color:var(--text-3);display:block;}

.sports-hero {
  border-radius:var(--r-xl); overflow:hidden; position:relative;
  min-height:220px; display:flex; align-items:flex-end;
  background:linear-gradient(135deg,#0a1930,#0d0d1a);
  border:1px solid var(--border-gold);
}
.sports-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.4;}
.sports-hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(5,5,8,.9) 0%,transparent 60%),linear-gradient(to top,rgba(5,5,8,.7) 0%,transparent 60%);}
.sports-hero-content{position:relative;z-index:2;padding:28px;}
.sports-hero-tag{font-size:10px;color:var(--gold-2);letter-spacing:3px;text-transform:uppercase;margin-bottom:8px;}
.sports-hero-title{font-family:'Cinzel',serif;font-weight:900;font-size:clamp(22px,3vw,40px);color:#fff;line-height:1.1;margin-bottom:12px;}
.sports-hero-title span{color:var(--gold-3);}

/* ══════════════════════════════════════════════
   TOP EVENTS SIDEBAR
══════════════════════════════════════════════ */
.top-events-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin-top:8px;}
.tep-header{padding:10px 14px;background:var(--bg-3);border-bottom:1px solid var(--border);font-weight:700;font-size:13px;color:var(--gold-2);display:flex;justify-content:space-between;align-items:center;}
.tep-item{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;cursor:pointer;transition:.2s;}
.tep-item:hover{background:var(--bg-3);}
.tep-item:last-child{border-bottom:none;}
.tep-icon{font-size:16px;}
.tep-name{font-size:12px;font-weight:600;flex:1;}
.tep-count{font-size:11px;color:var(--green);font-weight:700;}

/* ══════════════════════════════════════════════
   ADMIN PANEL
══════════════════════════════════════════════ */
.admin-wrap{display:flex;min-height:100vh;}
.admin-sidebar{width:240px;background:var(--bg-1);border-right:1px solid var(--border);padding:20px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto;}
.admin-logo{padding:8px 12px;margin-bottom:16px;border-bottom:1px solid var(--border);padding-bottom:16px;}
.admin-nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--r-md);cursor:pointer;font-size:13px;color:var(--text-2);transition:.2s;}
.admin-nav-item:hover{background:var(--bg-3);color:var(--gold-2);}
.admin-nav-item.active{background:linear-gradient(90deg,rgba(232,180,42,.12),transparent);color:var(--gold-2);border-left:3px solid var(--gold-2);}
.admin-nav-section{font-size:9px;color:var(--text-3);letter-spacing:2px;text-transform:uppercase;padding:14px 14px 4px;margin-top:8px;}

.admin-main{flex:1;padding:24px;overflow-y:auto;}
.admin-header{margin-bottom:24px;}
.admin-title{font-family:'Cinzel',serif;font-size:24px;font-weight:800;color:var(--gold-2);}
.admin-sub{font-size:13px;color:var(--text-3);margin-top:4px;}

.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-bottom:24px;}
.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:18px;position:relative;overflow:hidden;}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;}
.stat-card.gold::before{background:linear-gradient(90deg,var(--gold-1),var(--gold-3));}
.stat-card.green::before{background:var(--green);}
.stat-card.red::before{background:var(--red);}
.stat-card.blue::before{background:var(--blue);}
.stat-icon{font-size:28px;margin-bottom:8px;}
.stat-value{font-size:24px;font-weight:800;color:var(--text-1);}
.stat-label{font-size:11px;color:var(--text-3);margin-top:2px;}

.admin-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-xl);padding:20px;margin-bottom:20px;}
.admin-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.admin-section-title{font-weight:700;font-size:15px;color:var(--gold-2);display:flex;align-items:center;gap:8px;}

.image-upload-zone {
  border:2px dashed var(--border-gold); border-radius:var(--r-lg);
  padding:28px; text-align:center; cursor:pointer; transition:.2s;
  background:var(--bg-3);
}
.image-upload-zone:hover{border-color:var(--gold-2);background:rgba(232,180,42,.05);}
.image-upload-zone i{font-size:36px;color:var(--gold-1);margin-bottom:10px;}
.image-upload-zone p{font-size:13px;color:var(--text-2);}
.image-upload-zone small{font-size:10px;color:var(--text-3);}

.admin-table{width:100%;border-collapse:collapse;}
.admin-table th{text-align:left;padding:10px 14px;font-size:11px;color:var(--text-3);letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid var(--border);}
.admin-table td{padding:12px 14px;border-bottom:1px solid var(--border);font-size:13px;vertical-align:middle;}
.admin-table tr:hover td{background:var(--bg-3);}
.admin-table tr:last-child td{border-bottom:none;}

.game-thumb-admin{width:48px;height:36px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--border);}
.game-thumb-img{width:100%;height:100%;object-fit:cover;background:var(--bg-3);display:flex;align-items:center;justify-content:center;font-size:20px;}
.status-badge{font-size:9px;font-weight:700;padding:2px 8px;border-radius:var(--r-full);}
.status-active{background:var(--green-dim);color:var(--green);}
.status-inactive{background:var(--red-dim);color:var(--red);}

.action-btn{font-size:11px;padding:4px 10px;border-radius:var(--r-sm);cursor:pointer;transition:.2s;border:1px solid var(--border);}
.action-btn.edit{color:var(--gold-2);border-color:var(--border-gold);}
.action-btn.edit:hover{background:rgba(232,180,42,.1);}
.action-btn.del{color:var(--red);border-color:rgba(255,61,87,.3);}
.action-btn.del:hover{background:var(--red-dim);}

.tab-bar{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:16px;}
.tab-btn{padding:8px 16px;font-size:12px;font-weight:600;color:var(--text-3);cursor:pointer;border-bottom:2px solid transparent;transition:.2s;}
.tab-btn.active{color:var(--gold-2);border-bottom-color:var(--gold-2);}
.tab-btn:hover{color:var(--gold-1);}

/* Mobile nav tabs */
.mobile-tabs{display:none;position:fixed;bottom:var(--ticker-h);left:0;right:0;z-index:900;background:var(--bg-1);border-top:1px solid var(--border-gold);height:56px;}

@media (max-width:1100px){
  .sidebar-l,.sidebar-r{display:none;}
  .sports-nav{display:none;}
  .bet-slip-panel{display:none;}
}
@media (max-width:768px){
  .bottom-refer,.bottom-safe{display:none;}
  .h-nav-btn span{display:none;}
  .user-info-wrap{display:none;}
}

/* ============================================================
   ROYAL WAGER READY PROJECT ADDITIONS
   ============================================================ */
.rw-mini-logo{display:flex;align-items:center;gap:10px;white-space:nowrap;}
.rw-mini-badge{width:42px;height:42px;border-radius:12px;border:1.5px solid var(--gold-2);display:flex;align-items:center;justify-content:center;font-family:'Cinzel',serif;font-weight:900;color:var(--gold-3);background:linear-gradient(135deg,#17101d,#07070c);box-shadow:0 0 16px rgba(232,180,42,.25);}
.rw-mini-logo strong{display:block;font-family:'Cinzel',serif;font-weight:900;font-size:20px;letter-spacing:1px;background:linear-gradient(135deg,var(--gold-1),var(--gold-4),var(--gold-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1;}
.rw-mini-logo small{display:block;color:var(--gold-1);font-size:9px;letter-spacing:3px;margin-top:4px;}
.rw-page{padding-bottom:92px;}
.rw-center{gap:18px;}
.rw-brand-card{text-align:center;}
.rw-brand-img{width:100%;border-radius:16px;border:1px solid var(--border-gold);margin-bottom:10px;}
.rw-side-btn{display:flex;align-items:center;gap:10px;padding:13px 15px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.025);color:var(--text-2);font-weight:700;text-transform:uppercase;font-size:13px;cursor:pointer;transition:.2s;margin-bottom:8px;}
.rw-side-btn:hover,.rw-side-btn.active{background:linear-gradient(90deg,rgba(232,180,42,.18),rgba(139,43,226,.08));border-color:var(--border-gold);color:var(--gold-3);transform:translateX(3px);}
.rw-hero-shell{position:relative;overflow:hidden;border-radius:24px;border:1px solid var(--border-gold);min-height:300px;background:radial-gradient(ellipse at 25% 30%,rgba(139,43,226,.55),transparent 55%),radial-gradient(ellipse at 70% 45%,rgba(232,180,42,.25),transparent 55%),linear-gradient(135deg,#090912,#15051f);box-shadow:0 18px 50px rgba(0,0,0,.35);}
.rw-hero-shell:before{content:'';position:absolute;inset:0;background:url('../assets/logo/royal-wager-logo.jpg') center/cover no-repeat;opacity:.18;filter:blur(1px);}
.rw-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.35;}
.rw-hero-content{position:relative;z-index:2;padding:44px;max-width:650px;}
.rw-overline{color:var(--gold-2);font-weight:900;letter-spacing:4px;font-size:12px;margin-bottom:10px;}
.rw-hero-content h1{font-family:'Cinzel',serif;font-size:clamp(34px,5vw,70px);line-height:.95;background:linear-gradient(135deg,var(--gold-1),var(--gold-4),var(--gold-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;text-shadow:0 0 35px rgba(232,180,42,.25);}
.rw-hero-content p{max-width:560px;color:var(--text-2);font-size:14px;margin:14px 0 20px;}
.rw-hero-actions{display:flex;gap:10px;flex-wrap:wrap;}
.rw-special-strip{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:14px;}
.rw-special-card{position:relative;height:190px;border-radius:20px;overflow:hidden;border:1px solid var(--border-gold);background:#0c0911;box-shadow:0 8px 30px rgba(0,0,0,.35);transition:.22s;}
.rw-special-card:hover{transform:translateY(-5px);box-shadow:0 16px 50px rgba(232,180,42,.18);border-color:var(--gold-2);}
.rw-special-card img{width:100%;height:100%;object-fit:cover;display:block;}
.rw-special-card:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85),transparent 65%);}
.rw-special-card span{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;font-family:'Cinzel',serif;font-weight:900;font-size:18px;color:var(--gold-3);text-shadow:0 2px 8px #000;text-transform:uppercase;}
.rw-special-card b{position:absolute;top:10px;right:10px;z-index:2;background:linear-gradient(135deg,var(--gold-1),var(--gold-3));color:#090909;border-radius:999px;padding:3px 9px;font-size:9px;font-weight:900;}
.rw-game-section{background:rgba(20,20,42,.45);border:1px solid var(--border);border-radius:22px;padding:16px;}
.rw-game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;}
.rw-game-tile{border-radius:16px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid var(--border);transition:.2s;display:block;}
.rw-game-tile:hover{transform:translateY(-4px);border-color:var(--gold-2);box-shadow:0 12px 32px rgba(0,0,0,.38),0 0 22px rgba(232,180,42,.13);}
.rw-game-thumb{position:relative;height:118px;background:#0a0a12;overflow:hidden;}
.rw-game-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:.25s;}
.rw-game-tile:hover img{transform:scale(1.08);}
.rw-game-tag{position:absolute;top:8px;left:8px;background:var(--red);color:#fff;border-radius:999px;padding:2px 8px;font-size:9px;font-weight:900;}
.rw-game-meta{padding:10px 12px;}
.rw-game-meta strong{display:block;color:var(--text-1);font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rw-game-meta small{display:block;color:var(--text-3);font-size:11px;margin-top:2px;}
.rw-safe-card{display:flex;gap:12px;align-items:center;}
.rw-bottom{justify-content:center;}
.rw-bottom .bottom-nav-group{width:min(720px,94vw);}

/* game play page */
.game-play-body{padding-top:var(--header-h);padding-bottom:30px;background:radial-gradient(ellipse at 25% 10%,rgba(139,43,226,.18),transparent 40%),radial-gradient(ellipse at 80% 20%,rgba(232,180,42,.12),transparent 45%),var(--bg-0);}
.play-wrap{max-width:1180px;margin:0 auto;padding:20px;display:grid;grid-template-columns:1fr 330px;gap:18px;}
.play-card{background:linear-gradient(180deg,rgba(20,20,42,.94),rgba(8,8,16,.96));border:1px solid var(--border-gold);border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.35);overflow:hidden;}
.play-top{display:flex;align-items:center;gap:14px;padding:16px;border-bottom:1px solid var(--border);}
.play-top img{width:70px;height:70px;border-radius:16px;object-fit:cover;border:1px solid var(--border-gold);}
.play-title h1{font-family:'Cinzel',serif;font-size:30px;color:var(--gold-3);line-height:1;}
.play-title p{font-size:12px;color:var(--text-3);margin-top:5px;}
.play-stage{min-height:430px;position:relative;padding:22px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 20%,rgba(232,180,42,.13),transparent 55%),radial-gradient(ellipse at 50% 80%,rgba(139,43,226,.16),transparent 55%);}
.game-arena{width:100%;max-width:760px;text-align:center;}
.arena-screen{min-height:260px;border-radius:24px;border:1px solid rgba(232,180,42,.25);background:rgba(0,0,0,.22);padding:22px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.arena-screen:before{content:'';position:absolute;inset:-30%;background:conic-gradient(from 0deg,transparent,rgba(232,180,42,.08),transparent,rgba(139,43,226,.08),transparent);animation:rwSpin 8s linear infinite;}
@keyframes rwSpin{to{transform:rotate(360deg)}}
.arena-content{position:relative;z-index:2;width:100%;}
.big-result{font-family:'Cinzel',serif;font-weight:900;font-size:clamp(44px,8vw,88px);color:var(--gold-3);text-shadow:0 0 24px rgba(232,180,42,.35);}
.sub-result{color:var(--text-2);font-size:14px;margin-top:10px;min-height:24px;}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;}
.choice-btn{background:rgba(255,255,255,.05);border:1px solid var(--border);border-radius:14px;color:var(--text-1);padding:12px;font-weight:800;transition:.2s;text-align:center;}
.choice-btn:hover,.choice-btn.active{border-color:var(--gold-2);background:rgba(232,180,42,.12);color:var(--gold-3);}
.bet-panel{padding:16px;}
.balance-box{background:linear-gradient(135deg,rgba(232,180,42,.15),rgba(139,43,226,.12));border:1px solid var(--border-gold);border-radius:18px;padding:14px;margin-bottom:14px;}
.balance-label{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:2px;}
.balance-value{font-size:26px;color:var(--gold-3);font-weight:900;}
.quick-bets{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;}
.quick-bets button{background:transparent;border:1px solid var(--border-gold);color:var(--gold-3);border-radius:999px;padding:8px;font-weight:800;}
.play-action{width:100%;margin-top:10px;}
.cashout-btn{display:none;background:linear-gradient(135deg,var(--green),#b6ff9b);color:#041008;}
.game-log{max-height:170px;overflow:auto;border-top:1px solid var(--border);padding-top:10px;margin-top:12px;}
.game-log div{font-size:11px;color:var(--text-2);padding:6px 0;border-bottom:1px solid rgba(255,255,255,.04);}
.dice-row,.reel-row,.coin-row{display:flex;gap:14px;justify-content:center;align-items:center;flex-wrap:wrap;}
.die,.reel,.coin-face{width:82px;height:82px;border-radius:18px;background:#fff;color:#08080c;display:flex;align-items:center;justify-content:center;font-size:44px;font-weight:900;box-shadow:0 0 30px rgba(232,180,42,.25);border:4px solid var(--gold-2);}
.reel{background:linear-gradient(180deg,#fff,#ffd36d);font-size:42px;}
.coin-face{border-radius:50%;background:linear-gradient(135deg,var(--gold-1),var(--gold-4),var(--gold-2));font-size:28px;font-family:'Cinzel',serif;}
.mines-grid{display:grid;grid-template-columns:repeat(5,56px);gap:8px;justify-content:center;}
.mine-cell{width:56px;height:56px;border-radius:12px;border:1px solid var(--border-gold);background:rgba(232,180,42,.08);display:flex;align-items:center;justify-content:center;font-size:24px;cursor:pointer;}
.mine-cell.open{background:rgba(0,230,118,.15);}
.mine-cell.boom{background:rgba(255,61,87,.25);}
.plinko-board{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;max-width:560px;margin:0 auto;}
.plinko-slot{padding:12px 6px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid var(--border);font-weight:900;color:var(--gold-3);}
.race-lanes{display:flex;flex-direction:column;gap:12px;text-align:left;}
.race-lane{height:38px;background:rgba(255,255,255,.05);border-radius:999px;border:1px solid var(--border);position:relative;overflow:hidden;}
.racer{position:absolute;top:4px;left:4px;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--gold-2);transition:left 1s ease;}
.notice-box{padding:10px 12px;border-radius:12px;background:rgba(232,180,42,.08);color:var(--text-2);font-size:12px;border:1px solid rgba(232,180,42,.18);margin-top:12px;}
@media (max-width:1100px){.rw-special-strip{grid-template-columns:repeat(3,1fr)}.play-wrap{grid-template-columns:1fr}.sidebar-l.rw-left-menu{display:none}}
@media (max-width:700px){.rw-special-strip{grid-template-columns:repeat(2,1fr)}.rw-special-card{height:155px}.rw-game-grid{grid-template-columns:repeat(2,1fr)}.rw-hero-content{padding:28px}.play-wrap{padding:12px}.choice-grid{grid-template-columns:1fr}.mines-grid{grid-template-columns:repeat(5,46px)}.mine-cell{width:46px;height:46px}.play-title h1{font-size:24px}.header-center .rw-mini-logo strong{font-size:14px}}

/* ============================================================
   ROYAL WAGER — 10 REAL GAME FILES ADDON
   Keeps original interface; adds professional individual games.
   ============================================================ */
.rw-real-game-body{overflow-x:hidden;background:radial-gradient(circle at 18% 10%,rgba(136,43,226,.23),transparent 36%),radial-gradient(circle at 78% 2%,rgba(232,180,42,.15),transparent 32%),#050508;}
.rw-casino-game-shell{max-width:1320px;margin:0 auto;padding:18px;display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;min-height:calc(100vh - var(--header-h));}
.rw-live-game-card,.rw-bet-console{background:linear-gradient(180deg,rgba(16,16,31,.96),rgba(6,6,11,.98));border:1px solid rgba(232,180,42,.35);box-shadow:0 18px 55px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.035);border-radius:24px;overflow:hidden;}
.rw-game-headline{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(90deg,rgba(232,180,42,.08),rgba(139,43,226,.07));}
.rw-thumb-mark{width:74px;height:74px;border-radius:18px;overflow:hidden;border:1px solid var(--border-gold);box-shadow:0 0 22px rgba(232,180,42,.18);flex:0 0 auto;}
.rw-thumb-mark img{width:100%;height:100%;object-fit:cover;display:block;}
.rw-game-kicker{font-size:10px;letter-spacing:3px;color:var(--gold-2);font-weight:900;text-transform:uppercase;}
.rw-game-headline h1{font-family:'Cinzel',serif;font-size:clamp(26px,4vw,42px);line-height:1;background:linear-gradient(135deg,var(--gold-1),var(--gold-4),var(--gold-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;}
.rw-game-headline p{font-size:12px;color:var(--text-3);margin-top:4px;}
.rw-round-pill{margin-left:auto;border:1px solid rgba(0,230,118,.45);background:rgba(0,230,118,.08);color:#8dffbe;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;display:flex;align-items:center;gap:7px;}
.pulse-dot{width:8px;height:8px;border-radius:50%;background:#00e676;box-shadow:0 0 16px #00e676;animation:pulseDot 1s infinite alternate}@keyframes pulseDot{to{transform:scale(1.35);opacity:.55}}
.rw-live-stage{min-height:560px;padding:18px;position:relative;background:radial-gradient(circle at 50% 35%,rgba(232,180,42,.11),transparent 52%),radial-gradient(circle at 70% 80%,rgba(139,43,226,.12),transparent 45%);}
.rw-bet-console{padding:16px;height:max-content;position:sticky;top:calc(var(--header-h) + 14px);}
.rw-wallet-card{border:1px solid var(--border-gold);background:linear-gradient(135deg,rgba(232,180,42,.17),rgba(139,43,226,.12));border-radius:18px;padding:14px;margin-bottom:14px;}
.rw-wallet-card span{display:block;color:var(--text-3);font-size:10px;letter-spacing:2px;font-weight:800;}
.rw-wallet-card strong{display:block;color:var(--gold-3);font-size:29px;line-height:1.1;margin:4px 0;font-weight:900;}
.rw-wallet-card small{font-size:10px;color:var(--text-3);}
.rw-chip-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;}
.rw-chip{border:1px solid rgba(232,180,42,.45);background:radial-gradient(circle at 35% 30%,#fff3b0,#d79c15 42%,#6c4700 100%);color:#120d03;border-radius:999px;padding:9px 6px;font-weight:900;cursor:pointer;box-shadow:0 5px 12px rgba(0,0,0,.28);}
.rw-choice-panel{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:12px 0;}
.rw-choice-btn{border:1px solid rgba(232,180,42,.25);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));color:var(--text-1);border-radius:13px;padding:10px 9px;text-align:center;cursor:pointer;transition:.18s;}
.rw-choice-btn strong{display:block;font-weight:900;font-size:13px;color:var(--gold-3);}
.rw-choice-btn small{display:block;color:var(--text-3);font-size:10px;margin-top:2px;}
.rw-choice-btn.active,.rw-choice-btn:hover{border-color:var(--gold-2);box-shadow:0 0 18px rgba(232,180,42,.14);background:linear-gradient(180deg,rgba(232,180,42,.16),rgba(139,43,226,.08));transform:translateY(-1px);}
.rw-main-action,.rw-cashout-action,.rw-rebet-action{width:100%;margin-top:10px;}
.rw-cashout-action{display:none;background:linear-gradient(135deg,#00e676,#bcff6a);color:#041207!important;}
.rw-rebet-action{height:42px;}
.rw-message{margin-top:12px;border:1px solid var(--border);background:rgba(255,255,255,.04);border-radius:13px;padding:10px;color:var(--text-2);font-size:12px;min-height:40px;}
.rw-message.success{border-color:rgba(0,230,118,.38);background:rgba(0,230,118,.08);color:#a9ffd0}.rw-message.error{border-color:rgba(255,61,87,.5);background:rgba(255,61,87,.08);color:#ffb2bc}
.rw-history-box{margin-top:14px;border-top:1px solid var(--border);padding-top:12px;}
.rw-history-title{font-weight:900;color:var(--gold-3);font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;}
#betHistory{max-height:190px;overflow:auto;}#betHistory div{display:flex;gap:8px;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.045);padding:7px 0;font-size:11px;color:var(--text-2);}#betHistory div.win b{color:#8dffbe}#betHistory span{color:var(--text-3);}
/* Aviator */
.aviator-wrap{height:100%;min-height:520px;display:flex;flex-direction:column;gap:14px;}.aviator-sky{position:relative;min-height:470px;border-radius:24px;overflow:hidden;border:1px solid rgba(232,180,42,.25);background:linear-gradient(180deg,#101735 0%,#110a19 55%,#06070a 100%);}
.aviator-sky:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,217,88,.22),transparent 13%),radial-gradient(circle at 84% 18%,rgba(139,43,226,.24),transparent 22%),linear-gradient(transparent 62%,rgba(232,180,42,.15));}
.aviator-grid{position:absolute;inset:auto 0 0 0;height:50%;background:linear-gradient(rgba(232,180,42,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(232,180,42,.06) 1px,transparent 1px);background-size:44px 34px;transform:skewY(-8deg);opacity:.65;}
.aviator-plane{position:absolute;left:6%;bottom:16%;width:min(330px,34vw);filter:drop-shadow(0 12px 25px rgba(255,40,55,.45));transform:rotate(-9deg);transition:transform .42s linear;z-index:4}.aviator-plane .propeller{transform-origin:316px 56px;animation:propSpin .12s linear infinite}@keyframes propSpin{to{transform:rotate(360deg)}}.aviator-plane.crashed{animation:crashShake .5s linear 2}@keyframes crashShake{25%{transform:translate(20px,-20px) rotate(14deg)}50%{transform:translate(-8px,10px) rotate(-21deg)}75%{transform:translate(10px,6px) rotate(30deg)}}
.aviator-trail{position:absolute;left:5%;bottom:16%;width:40%;height:4px;background:linear-gradient(90deg,rgba(255,46,62,.8),rgba(255,213,90,.1),transparent);filter:blur(2px);transform:rotate(-14deg);}
.aviator-mult{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Cinzel',serif;font-size:clamp(62px,10vw,130px);font-weight:900;color:var(--gold-3);text-shadow:0 0 35px rgba(232,180,42,.45);z-index:2}.aviator-status{position:absolute;left:22px;bottom:22px;color:var(--text-2);font-weight:800;letter-spacing:1px;z-index:5}.aviator-prev{display:flex;gap:8px;flex-wrap:wrap}.aviator-prev span{border:1px solid rgba(232,180,42,.25);background:rgba(232,180,42,.08);color:var(--gold-3);border-radius:999px;padding:6px 12px;font-weight:900;font-size:12px;}
/* Royal table games */
.royal-table{position:relative;min-height:520px;border-radius:26px;border:1px solid rgba(232,180,42,.32);overflow:hidden;background:radial-gradient(ellipse at 50% 55%,#265440 0,#10251d 48%,#0b0a12 78%);box-shadow:inset 0 0 80px rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;}
.royal-table:before{content:'';position:absolute;inset:16% 7%;border-radius:50%;background:radial-gradient(ellipse,#2e805b,#1b4d3b 48%,#101016 49%,#0a0a10 61%,transparent 62%);border:10px solid #c99218;box-shadow:0 0 0 12px #30190c,inset 0 0 40px rgba(0,0,0,.35);}
.rw-dealer-host{position:absolute;top:18px;left:50%;transform:translateX(-50%);z-index:4;text-align:center}.dealer-glow{position:absolute;inset:20px -20px -8px;border-radius:50%;background:radial-gradient(circle,rgba(232,180,42,.25),transparent 65%);filter:blur(12px);}.dealer-avatar{position:relative;width:86px;height:86px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:52px;background:linear-gradient(180deg,#f5d060,#6e3d00);border:3px solid #ffd96d;box-shadow:0 0 28px rgba(232,180,42,.32);}.dealer-name{margin-top:5px;color:var(--gold-3);font-weight:900;font-size:12px;text-shadow:0 2px 8px #000;}
.coin-game-table{gap:18px}.table-zone{z-index:3;width:29%;max-width:260px;min-height:178px;border-radius:26px;border:2px solid rgba(232,180,42,.5);background:linear-gradient(145deg,rgba(232,180,42,.14),rgba(139,43,226,.13));display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:.2s;text-align:center;}.table-zone:hover{transform:scale(1.04);box-shadow:0 0 30px rgba(232,180,42,.22)}.table-zone b{font-family:'Cinzel',serif;font-size:38px;color:var(--gold-3)}.table-zone span{color:var(--text-2);font-weight:900}.coin-flip-area{z-index:3;text-align:center;min-width:230px}.coin-3d{width:140px;height:140px;margin:0 auto 14px;border-radius:50%;background:linear-gradient(135deg,#8e5c05,#fff3a6 35%,#d39a13 55%,#6a4200);display:flex;align-items:center;justify-content:center;border:6px solid #ffdc71;box-shadow:0 0 45px rgba(232,180,42,.35);transform-style:preserve-3d;}.coin-3d span{font-family:'Cinzel',serif;font-size:28px;color:#211100;font-weight:900}.coin-3d.spinning{animation:coinFlip .22s linear infinite}@keyframes coinFlip{to{transform:rotateY(360deg) rotateX(20deg)}}.countdown{font-family:'Cinzel',serif;font-size:44px;color:#fff;}.coin-flip-area p{color:var(--text-2);font-size:12px}.avatar-ring{position:absolute;bottom:18px;display:flex;gap:10px;z-index:4}.avatar-ring i{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#23233b,#050508);border:1px solid rgba(232,180,42,.45);display:flex;align-items:center;justify-content:center;font-style:normal;color:var(--gold-3);font-size:11px;font-weight:900;}
/* dice/cards */
.dice-table{flex-direction:column;gap:18px}.dice-cup{z-index:3;width:110px;height:110px;border-radius:30px;background:linear-gradient(135deg,#7b4d05,#ffe290,#935a00);display:flex;align-items:center;justify-content:center;font-size:70px;color:#231201;box-shadow:0 0 45px rgba(232,180,42,.25);transform:rotate(-12deg);}.dice-result{z-index:3;display:flex;gap:18px}.dice-result.rolling .die{animation:diceRoll .12s linear infinite}@keyframes diceRoll{50%{transform:rotate(18deg) translateY(-8px)}}.dice-sum{position:relative;z-index:3;color:var(--gold-3);font-weight:900;font-size:20px;text-shadow:0 2px 8px #000;}.die{width:92px;height:92px;border-radius:18px;background:#fff;color:#141414;border:5px solid #f0bd39;box-shadow:0 0 22px rgba(232,180,42,.25);display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:900;}
.wingo-stage{min-height:520px;border-radius:26px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:22px;background:radial-gradient(circle at 50% 48%,rgba(232,180,42,.12),transparent 44%),linear-gradient(135deg,#110c1d,#050508);border:1px solid rgba(232,180,42,.3)}.wingo-machine{width:min(520px,82vw);min-height:260px;border-radius:999px;background:radial-gradient(circle,#ffffff,#c9d4ff 38%,#6d2595 70%,#15081d);border:10px solid #dba72a;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:30px;box-shadow:0 0 55px rgba(232,180,42,.24)}.wingo-machine span{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,#fff,#ffc943);color:#130a00;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:24px;border:3px solid #7b4d05}.wingo-machine.shake{animation:shake .08s linear infinite}@keyframes shake{50%{transform:translateX(6px)}}.wingo-result{font-size:22px;color:var(--gold-3);font-weight:900}.wingo-result b{font-size:48px;margin-right:10px}.wingo-result span{font-size:20px;}
.premium-mines-grid{display:grid;grid-template-columns:repeat(5,76px);gap:12px;justify-content:center}.mines-stage{min-height:520px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;border-radius:26px;background:radial-gradient(circle,rgba(139,43,226,.14),transparent 48%),#080811;border:1px solid rgba(232,180,42,.3)}.mines-title{color:var(--gold-3);font-weight:900}.premium-mines-grid button{width:76px;height:76px;border-radius:17px;border:1px solid rgba(232,180,42,.38);background:linear-gradient(180deg,rgba(232,180,42,.13),rgba(139,43,226,.08));color:var(--gold-3);font-size:27px;font-weight:900;cursor:pointer}.premium-mines-grid button.open{background:rgba(0,230,118,.18)}.premium-mines-grid button.boom{background:rgba(255,61,87,.28)}#minesCashInfo{color:var(--text-2)}
.plinko-stage{min-height:520px;border-radius:26px;background:linear-gradient(180deg,#10102b,#050508);border:1px solid rgba(232,180,42,.3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.plinko-pins{width:min(620px,90%);height:360px;display:grid;grid-template-columns:repeat(9,1fr);gap:16px;position:relative}.plinko-pins i{width:10px;height:10px;border-radius:50%;background:var(--gold-3);box-shadow:0 0 12px rgba(232,180,42,.5);place-self:center}.plinko-pins b{position:absolute;top:0;left:50%;width:26px;height:26px;border-radius:50%;background:#ff3450;box-shadow:0 0 20px rgba(255,52,80,.8);}.plinko-pins b.drop{animation:plinkoDrop 1.15s ease-in-out}@keyframes plinkoDrop{25%{top:25%;left:42%}50%{top:50%;left:57%}75%{top:72%;left:46%}100%{top:92%;left:52%}}.plinko-slots{display:grid;grid-template-columns:repeat(11,1fr);gap:4px;width:min(680px,95%)}.plinko-slots span{background:linear-gradient(180deg,#ffcf3a,#8a5200);color:#130b00;font-weight:900;padding:8px 2px;border-radius:9px;text-align:center;font-size:12px;}
.card-stage,.dragon-stage,.car-stage{flex-direction:column;gap:18px}.card-choice-preview{z-index:3;display:flex;gap:20px}.red-card,.black-card{width:150px;height:205px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-family:'Cinzel',serif;font-size:28px;font-weight:900;border:4px solid #f5d060;box-shadow:0 0 30px rgba(0,0,0,.4)}.red-card{background:linear-gradient(135deg,#ff2443,#7a0010);color:#fff}.black-card{background:linear-gradient(135deg,#050508,#343449);color:#fff}.card-result{z-index:3;color:var(--gold-3);font-size:24px;font-weight:900}.dragon-vs{z-index:3;display:flex;align-items:center;gap:24px}.dragon-vs>div{width:175px;height:220px;border-radius:18px;background:linear-gradient(180deg,#fff,#f1d488);border:5px solid var(--gold-2);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#110b00}.dragon-vs b{font-family:'Cinzel',serif;font-size:17px}.dragon-vs span{font-size:70px;font-weight:900}.dragon-vs strong{font-family:'Cinzel',serif;font-size:42px;color:var(--gold-3)}.car-wheel{z-index:3;width:min(420px,88vw);height:min(420px,88vw);border-radius:50%;border:12px solid #dba72a;background:conic-gradient(#b80014 0 60deg,#034be6 60deg 120deg,#e8b42a 120deg 180deg,#118c41 180deg 240deg,#f4f4f4 240deg 300deg,#111 300deg 360deg);display:grid;place-items:center;position:relative;box-shadow:0 0 45px rgba(232,180,42,.28)}.car-wheel.spin{animation:wheelSpin 1.4s cubic-bezier(.2,.7,.1,1)}@keyframes wheelSpin{to{transform:rotate(1100deg)}}.car-wheel span{position:absolute;font-size:34px;filter:drop-shadow(0 2px 8px #000)}.car-wheel span:nth-child(1){top:18%;left:44%}.car-wheel span:nth-child(2){right:14%;top:42%}.car-wheel span:nth-child(3){right:28%;bottom:15%}.car-wheel span:nth-child(4){left:28%;bottom:15%}.car-wheel span:nth-child(5){left:14%;top:42%}.car-wheel span:nth-child(6){left:42%;top:6%}.car-wheel:after{content:'RW';width:92px;height:92px;border-radius:50%;background:linear-gradient(135deg,#231200,#f5d060,#6b4300);display:flex;align-items:center;justify-content:center;font-family:'Cinzel',serif;font-size:26px;font-weight:900;color:#1a0d00;border:4px solid #fff1ab;}
.rw-result-popup{position:fixed;inset:0;background:rgba(0,0,0,.68);display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(3px);}.rp-card{width:min(360px,92vw);border-radius:22px;border:1px solid rgba(232,180,42,.55);background:linear-gradient(180deg,#17172d,#06060c);padding:26px;text-align:center;box-shadow:0 25px 80px rgba(0,0,0,.55);position:relative}.rp-card button{position:absolute;right:12px;top:10px;background:transparent;border:0;color:var(--text-2);font-size:24px;cursor:pointer}.rp-card h2{font-family:'Cinzel',serif;font-size:28px;color:var(--gold-3)}.rw-result-popup.lose .rp-card h2{color:#ff7082}.rp-card p{color:var(--text-2);margin:8px 0}.rp-card strong{display:block;color:#8dffbe;font-size:32px;margin-top:8px;}
@media(max-width:1080px){.rw-casino-game-shell{grid-template-columns:1fr}.rw-bet-console{position:relative;top:auto}.rw-live-stage{min-height:480px}.rw-choice-panel{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.rw-casino-game-shell{padding:10px}.rw-game-headline{align-items:flex-start}.rw-thumb-mark{width:58px;height:58px}.rw-round-pill{display:none}.rw-live-stage{padding:10px;min-height:420px}.aviator-sky,.royal-table,.wingo-stage,.mines-stage,.plinko-stage{min-height:420px}.aviator-plane{width:180px}.table-zone{width:34%;min-height:120px}.table-zone b{font-size:24px}.coin-3d{width:95px;height:95px}.dealer-avatar{width:58px;height:58px;font-size:36px}.premium-mines-grid{grid-template-columns:repeat(5,52px);gap:8px}.premium-mines-grid button{width:52px;height:52px}.rw-choice-panel{grid-template-columns:repeat(2,1fr)}.die{width:62px;height:62px}.red-card,.black-card{width:110px;height:150px}.dragon-vs{gap:10px}.dragon-vs>div{width:110px;height:160px}.dragon-vs span{font-size:48px}.rw-bet-console{padding:12px}}

/* Royal Wager game-engine patch: tighter live-game interactions */
.rw-info-panel{grid-column:1/-1;border:1px solid rgba(232,180,42,.22);border-radius:14px;padding:10px;background:rgba(232,180,42,.07);color:var(--text-2)}
.rw-info-panel b{display:block;color:var(--gold-3);font-size:13px}.rw-info-panel small{font-size:11px;color:var(--text-3)}
.rw-chip.active{border-color:var(--gold-2);background:linear-gradient(180deg,rgba(232,180,42,.22),rgba(232,180,42,.06));color:var(--gold-3)}
.table-zone.active,.red-card.active,.black-card.active,.dragon-vs [data-pick].active{box-shadow:0 0 0 3px rgba(255,216,93,.25),0 0 34px rgba(232,180,42,.24);transform:translateY(-2px) scale(1.02)}
.aviator-path-line{position:absolute;left:6%;bottom:17%;height:3px;width:0;background:linear-gradient(90deg,#ff3349,#ffd35e,transparent);filter:drop-shadow(0 0 8px rgba(255,211,94,.7));transform:rotate(-18deg);transform-origin:left center;z-index:2;transition:width .25s linear}
.wingo-machine span.hot{transform:scale(1.12);box-shadow:0 0 20px rgba(255,216,93,.8)}
.wingo-machine span.winner{background:linear-gradient(135deg,#9dffbe,#00d66f);box-shadow:0 0 24px rgba(0,230,118,.65);transform:scale(1.18)}
.premium-mines-grid button.checking{animation:minePulse .45s linear infinite}@keyframes minePulse{50%{transform:scale(.95);filter:brightness(1.45)}}
.plinko-slots span.active{box-shadow:0 0 0 3px rgba(255,216,93,.35),0 0 25px rgba(232,180,42,.55);transform:translateY(-4px)}
.car-pointer{position:relative;z-index:4;color:var(--gold-3);font-size:36px;text-shadow:0 0 12px rgba(232,180,42,.6);margin-bottom:-20px}
.btn-submit[disabled],.rw-choice-btn[disabled],.premium-mines-grid button[disabled]{opacity:.72;cursor:not-allowed}

/* ============================================================
   ROYAL WAGER X — SPORTSBOOK API MODULE V2
   ============================================================ */
.rw-sportsbook-page{background:radial-gradient(ellipse at 20% 0%,rgba(139,43,226,.18),transparent 38%),radial-gradient(ellipse at 80% 10%,rgba(232,180,42,.12),transparent 38%),var(--bg-0);}
.header-right .h-nav-btn.active{border-color:var(--border-gold);color:var(--gold-3);background:rgba(232,180,42,.08)}
.rw-sports-layout{display:flex;min-height:100vh;padding-top:var(--header-h);padding-bottom:calc(var(--bottom-h) + var(--ticker-h));}
.rw-sports-nav-pro{width:220px;display:flex;flex-direction:column;gap:4px;}
.rw-sports-nav-pro a{display:flex;}
.rw-sports-nav-pro button{width:100%;text-align:left;background:transparent;border:0;}
.rw-sport-menu-btn.active-soft{background:linear-gradient(90deg,rgba(232,180,42,.13),rgba(139,43,226,.07));border-left:3px solid var(--gold-2);color:var(--gold-3)}
.rw-sports-menu-title{font-size:10px;color:var(--text-3);letter-spacing:2px;text-transform:uppercase;margin:14px 8px 4px;font-weight:800;}
.rw-provider-card{margin:10px 0;padding:14px;border-radius:16px;background:linear-gradient(135deg,rgba(232,180,42,.12),rgba(139,43,226,.08));border:1px solid var(--border-gold);}
.rw-provider-card strong{display:block;color:var(--gold-3);font-size:13px;line-height:1.2;margin:3px 0;}
.rw-provider-card small{display:block;color:var(--text-3);font-size:10px;line-height:1.45;}
.rw-provider-kicker{color:var(--gold-2);font-size:9px;font-weight:900;letter-spacing:2px;}
.rw-sports-main-pro{gap:16px;}
.rw-book-hero{min-height:280px;box-shadow:0 20px 60px rgba(0,0,0,.38);}
.rw-book-hero-bg{background:radial-gradient(circle at 70% 20%,rgba(232,180,42,.25),transparent 30%),radial-gradient(circle at 85% 70%,rgba(41,121,255,.26),transparent 35%),linear-gradient(135deg,#07142d,#17051f 55%,#07070d);opacity:1;}
.rw-stream-hero-bg{background:radial-gradient(circle at 75% 30%,rgba(255,61,87,.18),transparent 28%),radial-gradient(circle at 82% 75%,rgba(232,180,42,.20),transparent 35%),linear-gradient(135deg,#07142d,#0b101d 55%,#07070d);opacity:1;}
.rw-bets-hero-bg{background:radial-gradient(circle at 78% 25%,rgba(0,230,118,.14),transparent 28%),radial-gradient(circle at 80% 76%,rgba(232,180,42,.20),transparent 35%),linear-gradient(135deg,#051b14,#13051f 55%,#07070d);opacity:1;}
.rw-hero-copy{color:var(--text-2);font-size:13px;max-width:620px;margin:-4px 0 16px;}
.rw-hero-score-card{position:absolute;right:24px;bottom:24px;z-index:3;min-width:170px;padding:16px;border-radius:18px;background:rgba(5,5,8,.72);border:1px solid var(--border-gold);backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(0,0,0,.35);}
.rw-hero-score-card span{display:block;color:var(--text-3);font-size:11px;text-transform:uppercase;letter-spacing:2px;}
.rw-hero-score-card strong{display:block;font-family:'Cinzel',serif;color:var(--gold-3);font-size:28px;line-height:1;margin:7px 0;}
.rw-hero-score-card small{color:var(--text-2);font-size:11px;}
.rw-feed-status{display:flex;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--border);background:rgba(20,20,42,.78);border-radius:16px;}
.rw-feed-status i{width:38px;height:38px;border-radius:14px;background:rgba(232,180,42,.12);color:var(--gold-3);display:flex;align-items:center;justify-content:center;}
.rw-feed-status strong{display:block;font-size:13px;color:var(--text-1);}
.rw-feed-status small{display:block;font-size:11px;color:var(--text-3);}
.rw-feed-status.ok{border-color:rgba(0,230,118,.28);}.rw-feed-status.ok i{background:rgba(0,230,118,.12);color:var(--green);}
.rw-feed-status.warn{border-color:rgba(232,180,42,.28);}.rw-feed-status.warn i{background:rgba(232,180,42,.12);color:var(--gold-3);}
.rw-feed-status.error{border-color:rgba(255,61,87,.35);}.rw-feed-status.error i{background:rgba(255,61,87,.12);color:var(--red);}
.rw-sport-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;}
.rw-sport-tab{padding:14px;border-radius:16px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-1);display:flex;flex-direction:column;gap:3px;align-items:flex-start;transition:.2s;}
.rw-sport-tab:hover,.rw-sport-tab.active{border-color:var(--gold-2);background:linear-gradient(135deg,rgba(232,180,42,.16),rgba(139,43,226,.08));transform:translateY(-2px);}
.rw-sport-tab b{font-size:22px;}.rw-sport-tab span{font-weight:900;font-size:13px;}.rw-sport-tab small{color:var(--text-3);font-size:9px;}
.rw-sports-section{background:rgba(20,20,42,.52);border:1px solid var(--border);border-radius:22px;padding:16px;}
.rw-link-btn{background:transparent;color:var(--gold-2);font-size:11px;font-weight:900;}
.rw-live-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;}
.rw-event-card.is-live{border-color:rgba(255,61,87,.35);box-shadow:0 0 0 1px rgba(255,61,87,.04),0 12px 30px rgba(0,0,0,.23);}
.rw-bookmaker{margin-left:auto;color:var(--gold-2);font-size:9px;text-transform:uppercase;letter-spacing:1px;}
.rw-mini-pill{background:rgba(232,180,42,.13);color:var(--gold-3);font-size:8px;font-weight:900;padding:1px 6px;border-radius:999px;}
.rw-more-markets{flex:none;min-width:48px;background:rgba(41,121,255,.1)!important;color:#8ab4ff!important;border-color:rgba(41,121,255,.25)!important;}
.rw-upcoming-list{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;border:1px solid var(--border);}
.rw-upcoming-row{display:grid;grid-template-columns:210px 1fr minmax(190px,310px);gap:14px;align-items:center;padding:13px 14px;background:rgba(255,255,255,.025);border-bottom:1px solid var(--border);}
.rw-upcoming-row:last-child{border-bottom:0;}
.rw-upcoming-meta span{display:block;font-size:11px;color:var(--text-2);font-weight:800;}.rw-upcoming-meta small{color:var(--text-3);font-size:10px;}
.rw-upcoming-match{display:flex;gap:10px;align-items:center;justify-content:center;text-align:center;}.rw-upcoming-match strong{font-size:12px;}.rw-upcoming-match em{color:var(--text-3);font-style:normal;font-size:10px;}
.rw-loading-card{padding:28px;border:1px dashed var(--border-gold);border-radius:16px;background:rgba(232,180,42,.04);color:var(--text-2);text-align:center;font-size:13px;}
.rw-error-card{border-color:rgba(255,61,87,.35);background:rgba(255,61,87,.06);color:#ff9aaa;}
.rw-slip-pro{width:310px;}
.rw-count-pill{background:var(--gold-2);color:var(--bg-0);font-size:10px;font-weight:900;padding:1px 7px;border-radius:999px;margin-left:4px;}
.rw-empty-slip{padding:18px;border:1px dashed var(--border);border-radius:14px;color:var(--text-3);text-align:center;font-size:12px;background:rgba(255,255,255,.02);}
.rw-slip-total-box{border-top:1px solid var(--border);padding-top:12px;margin-top:12px;}
.rw-clear-slip{width:100%;margin-top:8px;padding:10px;}
.rw-sel-item .bet-item-close{background:transparent;color:var(--text-3);font-size:18px;line-height:1;}
.rw-sel-sub{font-size:10px;color:var(--text-3);margin-bottom:3px;}
.rw-slip-message{min-height:24px;font-size:11px;margin-top:10px;color:var(--text-3);line-height:1.4;}
.rw-slip-message.ok{color:var(--green);}.rw-slip-message.warn{color:var(--gold-3);}.rw-slip-message.error{color:var(--red);}
.rw-compliance-card{margin-top:14px;}
.rw-streams-layout .rw-sports-main-pro{max-width:1180px;margin:0 auto;width:100%;}
.rw-stream-main{padding-right:18px;}
.rw-stream-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:14px;}
.rw-stream-card{border:1px solid var(--border);background:var(--bg-card);border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(0,0,0,.24);}
.rw-stream-frame{aspect-ratio:16/9;background:#07070d;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.rw-stream-frame iframe{width:100%;height:100%;border:0;display:block;}
.rw-stream-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;background:radial-gradient(circle at 50% 30%,rgba(232,180,42,.13),transparent 45%),#07070d;color:var(--text-2);font-size:13px;}
.rw-stream-info{padding:13px 14px;}.rw-stream-info strong{display:block;color:var(--text-1);font-size:14px;}.rw-stream-info small{display:block;color:var(--text-3);font-size:11px;margin-top:4px;}
.rw-my-bets-list{display:flex;flex-direction:column;gap:12px;}
.rw-my-bet-card{padding:14px;border-radius:18px;background:var(--bg-card);border:1px solid var(--border);}
.rw-my-bet-top{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:10px;}
.rw-my-bet-top strong{color:var(--gold-3);font-size:13px;}.rw-status{border-radius:999px;padding:3px 9px;font-size:10px;font-weight:900;text-transform:uppercase;background:rgba(232,180,42,.12);color:var(--gold-3);}.rw-status-won{background:rgba(0,230,118,.12);color:var(--green);}.rw-status-lost{background:rgba(255,61,87,.12);color:var(--red);}
.rw-my-bet-money{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;}.rw-my-bet-money span{font-size:11px;color:var(--text-3);background:rgba(255,255,255,.025);border:1px solid var(--border);border-radius:10px;padding:8px;}.rw-my-bet-money b{display:block;color:var(--text-1);font-size:13px;margin-top:2px;}
.rw-my-bet-selections{display:flex;flex-direction:column;gap:6px;margin-bottom:8px;}.rw-my-bet-selections div{font-size:12px;color:var(--text-2);}.rw-my-bet-selections small{display:block;color:var(--text-3);font-size:10px;}
.rw-my-bet-date{display:block;color:var(--text-3);font-size:10px;}
.rw-home-sports-card{position:relative;overflow:hidden;border-radius:22px;border:1px solid var(--border-gold);background:radial-gradient(circle at 75% 30%,rgba(232,180,42,.18),transparent 35%),linear-gradient(135deg,#07142d,#16051f);padding:20px;display:flex;justify-content:space-between;gap:16px;align-items:center;box-shadow:0 16px 42px rgba(0,0,0,.28);}
.rw-home-sports-card h3{font-family:'Cinzel',serif;color:var(--gold-3);font-size:24px;line-height:1.1;margin-bottom:6px;}.rw-home-sports-card p{color:var(--text-2);font-size:13px;max-width:520px;}.rw-home-sports-card .rw-home-sports-icons{font-size:46px;opacity:.85;white-space:nowrap;}
@media (max-width:1180px){.rw-slip-pro{display:none}.rw-upcoming-row{grid-template-columns:1fr}.rw-upcoming-match{justify-content:flex-start}.rw-sports-nav-pro{display:none}.rw-sports-layout{display:block}.rw-stream-main{padding-right:12px}.rw-hero-score-card{display:none}}
@media (max-width:720px){.rw-sport-tabs{grid-template-columns:repeat(2,1fr)}.rw-live-grid,.rw-stream-grid{grid-template-columns:1fr}.rw-book-hero{min-height:250px}.rw-my-bet-money{grid-template-columns:1fr}.rw-home-sports-card{align-items:flex-start;flex-direction:column}.rw-home-sports-card .rw-home-sports-icons{font-size:34px}}

/* ============================================================
   V4 PREMIUM VISUAL SETUP — logo-matched hero/card backgrounds
   ============================================================ */
.rw-hero-shell{
  min-height:320px;
  background:#050508;
  border-color:rgba(245,196,69,.36);
}
.rw-hero-shell:before{
  opacity:0;
}
.rw-hero-shell:after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(3,3,7,.91) 23%,rgba(9,4,10,.70) 45%,rgba(0,0,0,.20) 72%,rgba(0,0,0,.42) 100%),
    radial-gradient(circle at 18% 35%,rgba(139,43,226,.18),transparent 42%),
    radial-gradient(circle at 68% 55%,rgba(232,180,42,.10),transparent 38%);
  pointer-events:none;
}
.rw-hero-bg{
  opacity:1;
  background-size:cover;
  background-position:center right;
  filter:saturate(1.05) contrast(1.06);
}
.rw-hero-content{
  z-index:3;
  max-width:600px;
}
.rw-hero-content h1{
  background:linear-gradient(135deg,#fff6c0 0%,#f5c445 35%,#fff 62%,#b064ff 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
.rw-hero-content p{
  color:#e8e3f2;
  text-shadow:0 2px 14px rgba(0,0,0,.75);
}
.rw-side-btn{
  background:#050507;
  border-color:rgba(255,255,255,.08);
}
.rw-side-btn:hover,.rw-side-btn.active{
  background:linear-gradient(90deg,#050507 0%,rgba(232,180,42,.17) 100%);
}
.rw-home-sports-card{
  min-height:190px;
  padding:28px 24px;
  background:#050507;
  border-color:rgba(245,196,69,.36);
}
.rw-home-sports-card:before{
  content:'';
  position:absolute;
  inset:0;
  background:url('../assets/banners/home-sports-feature-bg.png') center right/cover no-repeat;
  opacity:1;
  filter:saturate(1.08) contrast(1.08);
}
.rw-home-sports-card:after{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.85) 34%,rgba(0,0,0,.44) 62%,rgba(0,0,0,.22) 100%),
    radial-gradient(circle at 18% 28%,rgba(139,43,226,.16),transparent 38%);
}
.rw-home-sports-card > *{
  position:relative;
  z-index:2;
}
.rw-home-sports-card h3{
  font-size:28px;
  color:#f5c445;
  text-shadow:0 2px 18px rgba(0,0,0,.9);
}
.rw-home-sports-card p{
  max-width:560px;
  color:#eeeaf8;
  text-shadow:0 2px 12px rgba(0,0,0,.85);
}
.rw-home-sports-visual{
  width:34%;
  min-width:220px;
  min-height:120px;
}
.rw-book-hero-bg{
  opacity:1;
  background-size:cover!important;
  background-position:center right!important;
  filter:saturate(1.05) contrast(1.06);
}
.sports-hero-overlay{
  background:
    linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.88) 30%,rgba(2,4,15,.56) 56%,rgba(0,0,0,.18) 100%),
    linear-gradient(0deg,rgba(0,0,0,.70) 0%,transparent 68%);
}
.rw-stream-hero-bg,.rw-bets-hero-bg{
  background-image:url('../assets/banners/sportsbook-hero-bg.png')!important;
  background-size:cover!important;
  background-position:center right!important;
  opacity:1;
  filter:saturate(1.05) contrast(1.06);
}
@media (max-width:720px){
  .rw-hero-shell{min-height:280px;}
  .rw-hero-content{padding:30px 24px;}
  .rw-home-sports-card{min-height:250px;}
  .rw-home-sports-visual{display:none;}
}


/* ============================================================
   V5 HERO IMAGE FIX — force visible artwork in home + sportsbook hero
   ============================================================ */
.rw-hero-shell{display:flex;align-items:center;min-height:360px;isolation:isolate;}
.rw-hero-bg{display:none;}
.rw-hero-art{position:absolute;inset:0 0 0 auto;width:64%;z-index:0;pointer-events:none;display:flex;align-items:stretch;justify-content:flex-end;}
.rw-hero-art img{width:100%;height:100%;object-fit:cover;object-position:right center;opacity:.98;filter:saturate(1.08) contrast(1.08) brightness(1.02);}
.rw-hero-fade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.92) 28%,rgba(11,7,14,.72) 48%,rgba(0,0,0,.28) 72%,rgba(0,0,0,.16) 100%),radial-gradient(circle at 18% 36%,rgba(139,43,226,.16),transparent 40%);} 
.rw-hero-content{position:relative;z-index:2;}

.sports-hero{min-height:340px;align-items:stretch;isolation:isolate;}
.rw-book-hero-bg{display:none;}
.sports-hero-art{position:absolute;inset:0 0 0 auto;width:58%;z-index:0;pointer-events:none;display:flex;align-items:stretch;justify-content:flex-end;}
.sports-hero-art img{width:100%;height:100%;object-fit:cover;object-position:right center;opacity:.98;filter:saturate(1.08) contrast(1.06) brightness(1.02);} 
.sports-hero-overlay{z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.92) 30%,rgba(3,4,14,.76) 50%,rgba(0,0,0,.34) 72%,rgba(0,0,0,.18) 100%),linear-gradient(0deg,rgba(0,0,0,.76) 0%,transparent 70%),radial-gradient(circle at 18% 35%,rgba(139,43,226,.15),transparent 40%);} 
.sports-hero-content{max-width:630px;z-index:2;}

@media (max-width: 900px){
  .rw-hero-art,.sports-hero-art{width:100%;}
  .rw-hero-fade,.sports-hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.80) 45%,rgba(0,0,0,.92) 100%);} 
}
