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

body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.12), transparent 35%),
    linear-gradient(180deg,#0b0b0f,#111118);
  color:#fff;
  min-height:100vh;
  padding:34px 20px;
}

/* LOBBY */

.shell{
  max-width:1280px;
  margin:0 auto;
  padding:0 30px;
}

.hero-logo-wrap{
  display:flex;
  justify-content:center;
  margin-bottom:10px;
  padding-top:0;
}

.hero-logo{
  width:110px;
  max-width:30vw;
  height:auto;
  display:block;
  margin:0 auto 20px;
  filter:
    drop-shadow(0 0 12px rgba(202,162,74,.16))
    drop-shadow(0 0 28px rgba(202,162,74,.08));
}

.kicker{
  color:#caa24a;
  text-transform:uppercase;
  font-size:14px;
  font-weight:900;
  letter-spacing:1px;
  margin-bottom:8px;
}

h1{
  font-size:52px;
  line-height:1;
  font-weight:950;
  margin-bottom:10px;
}

.sub{
  color:#d7d9df;
  font-size:18px;
  margin-bottom:34px;
}

.games-grid{
  display:flex;
  flex-direction:column;
  gap:34px;
  max-width:980px;
  margin:0 auto;
}

.game-card{
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.12), transparent 45%),
    linear-gradient(180deg,#171721,#101014);
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:28px;
  width:100%;
  box-shadow:0 20px 50px rgba(0,0,0,.45);
}

.room-view .game-card{
  min-height:720px;
}

.room-view .game-card{
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.12), transparent 45%),
    linear-gradient(180deg,#171721,#101014);
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:28px;
  width:100%;
  min-height:720px;
  box-shadow:0 20px 50px rgba(0,0,0,.45);
}

.game-description{
  display:block;
  width:100%;
  margin:14px 0 28px;
  padding:16px 18px;
  border-radius:18px;
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.14), transparent 45%),
    rgba(255,255,255,.035);
  border:1px solid rgba(202,162,74,.22);
  box-shadow:0 12px 30px rgba(0,0,0,.22);
}

.game-description-label{
  color:#caa24a;
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.09em;
  margin-bottom:6px;
}

.game-description-text{
  color:rgba(255,255,255,.88);
  font-size:18px;
  font-weight:750;
  line-height:1.35;
  max-width:920px;
}

.live-pill,
.status-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(202,162,74,.16);
  border:1px solid rgba(202,162,74,.30);
  color:#ffd76a;
  border-radius:999px;
  padding:8px 15px;
  font-size:14px;
  font-weight:900;
  margin-bottom:18px;
  text-transform:uppercase;
}

.game-title{
  font-size:38px;
  line-height:1.05;
  font-weight:950;
  margin:4px 0 12px;
}

.grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  margin-top:18px;
  width:100%;
}

.stat{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:16px;
  min-height:92px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.stat-label{
  font-size:12px;
  text-transform:uppercase;
  color:#b9bcc6;
  margin-bottom:8px;
  font-weight:800;
  letter-spacing:.4px;
}

.stat-value{
  font-size:24px;
  line-height:1.05;
  font-weight:950;
  overflow-wrap:anywhere;
}

.stat-value small{
  display:block;
  margin-top:6px;
  font-size:14px;
  line-height:1.1;
  color:#d7d9df;
  font-weight:700;
}

.stat-value .status-main{
  display:block;
  font-size:22px;
  line-height:1;
}

.stat-value .status-sub{
  display:block;
  margin-top:6px;
  font-size:13px;
  line-height:1.15;
  color:#d7d9df;
  font-weight:800;
}

.button{
  display:inline-block;
  margin-top:24px;
  background:linear-gradient(180deg,#f0c84d,#c79519);
  color:#111;
  text-decoration:none;
  font-weight:950;
  padding:14px 22px;
  border-radius:16px;
  box-shadow:0 10px 24px rgba(202,162,74,.20);
}

.button:hover{
  transform:translateY(-1px);
}

/* ROOM PAGE */

.room-page{
  max-width:1100px;
  margin:0 auto;
  padding:20px 20px 70px;
}

.back-button{
  display:inline-block;
  color:#caa24a;
  font-weight:900;
  text-decoration:none;
  margin-bottom:24px;
}

.full-room-card{
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.14), transparent 42%),
    linear-gradient(180deg,#101018,#0b0b0f);
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:28px;
  box-shadow:0 20px 55px rgba(0,0,0,.45);
}

.full-room-card h1{
  font-size:46px;
  line-height:1.05;
  margin:10px 0 22px;
}

.clock-card{
  border:1px solid rgba(202,162,74,.28);
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.20), transparent 55%),
    rgba(255,255,255,.04);
  border-radius:22px;
  padding:24px;
  margin:24px 0;
}

.clock-status,
.clock-label{
  color:#f2d27a;
  font-size:14px;
  text-transform:uppercase;
  font-weight:900;
  margin-bottom:10px;
  letter-spacing:.7px;
}

.clock-time{
  font-size:72px;
  line-height:1;
  font-weight:950;
}

.stats-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px;
}

.stat-box{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:18px;
  min-height:112px;
}

.stat-box .label,
.stat-box .stat-label{
  color:#b9bcc6;
  text-transform:uppercase;
  font-size:12px;
  margin-bottom:8px;
  font-weight:800;
  letter-spacing:.4px;
}

.stat-box .value,
.stat-box .stat-value{
  font-size:26px !important;
  line-height:1.05 !important;
  font-weight:950;
  overflow-wrap:anywhere;
}

.stat-box:nth-child(5) .value,
.stat-box:nth-child(6) .value{
  font-size:22px !important;
}

/* MOBILE */

@media(max-width:900px){
  .grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .stats-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:600px){
  body{
    padding:24px 14px;
  }

  .shell{
    padding:0;
  }

  h1{
    font-size:42px;
  }

  .sub{
    font-size:16px;
  }

  .game-card,
  .full-room-card{
    padding:22px;
    border-radius:22px;
  }

  .game-title{
    font-size:32px;
  }

  .grid,
  .stats-grid{
    grid-template-columns:1fr !important;
  }

  .clock-time{
    font-size:54px;
  }

  .hero-logo{
    width:95px;
  }
.room-stats-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.room-stats-grid .stat-box:nth-child(1),
.room-stats-grid .stat-box:nth-child(2){
  min-height:150px;
}

.room-stats-grid .stat-box:nth-child(1) .value,
.room-stats-grid .stat-box:nth-child(2) .value{
  font-size:52px !important;
  line-height:1 !important;
}

.room-stats-grid .stat-box:nth-child(1){
  grid-column:span 2;
}

.room-stats-grid .stat-box:nth-child(2){
  grid-column:span 2;
}

.stat-box .value small{
  display:block;
  margin-top:6px;
  font-size:14px;
  line-height:1.1;
  color:#d7d9df;
  font-weight:800;
}

@media(max-width:900px){
  .room-stats-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .room-stats-grid .stat-box:nth-child(1),
  .room-stats-grid .stat-box:nth-child(2){
    grid-column:span 1;
  }
  
.payout-card{
  margin-top:28px;
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.10), transparent 45%),
    rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  padding:22px;
}

.payout-header{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-end;
  margin-bottom:18px;
}

.payout-kicker{
  color:#caa24a;
  text-transform:uppercase;
  font-size:12px;
  font-weight:900;
  letter-spacing:.8px;
  margin-bottom:4px;
}

.payout-card h2{
  font-size:28px;
  line-height:1;
  margin:0;
}

.payout-meta{
  color:#d7d9df;
  font-size:14px;
  font-weight:800;
}

.payout-list{
  display:grid;
  gap:10px;
}

.payout-row{
  display:grid;
  grid-template-columns:80px 80px 1fr;
  align-items:center;
  gap:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  border-radius:16px;
  padding:12px 14px;
}

.payout-place{
  color:#f2d27a;
  font-weight:950;
}

.payout-percent{
  color:#b9bcc6;
  font-size:14px;
  font-weight:800;
}

.payout-amount{
  text-align:right;
  font-size:22px;
  font-weight:950;
}

@media(max-width:600px){
  .payout-header{
    display:block;
  }

  .payout-meta{
    margin-top:8px;
  }

  .payout-row{
    grid-template-columns:60px 60px 1fr;
  }
  /* ===== PAYOUTS ===== */

.payouts-card{
  margin-top:28px;
  padding:24px;
  border-radius:22px;
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.08), transparent 50%),
    linear-gradient(180deg,#171721,#101014);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 14px 40px rgba(0,0,0,.28);
}

.payouts-title{
  font-size:1rem;
  font-weight:700;
  color:#caa24a;
  margin-bottom:8px;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.payouts-subtitle{
  font-size:2rem;
  font-weight:800;
  margin-bottom:6px;
  color:#fff;
}

.payouts-meta{
  font-size:1rem;
  color:rgba(255,255,255,.7);
  margin-bottom:20px;
}

.payouts-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap:12px;
}

.payout-row{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  border-radius:16px;
  padding:14px;
  transition:.2s ease;
}

.payout-row:hover{
  background:rgba(255,255,255,.06);
}

.payout-place{
  font-size:.95rem;
  font-weight:700;
  color:#caa24a;
  margin-bottom:6px;
}

.payout-percent{
  font-size:.9rem;
  color:rgba(255,255,255,.6);
  margin-bottom:4px;
}

.payout-amount{
  font-size:1.4rem;
  font-weight:800;
  color:#fff;
}  
/* ===== PAYOUTS FIX - matches current JS ===== */

.payout-card{
  margin-top:28px;
  padding:24px;
  border-radius:22px;
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.08), transparent 50%),
    linear-gradient(180deg,#171721,#101014);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 14px 40px rgba(0,0,0,.28);
}

.payout-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin-bottom:18px;
}

.payout-kicker{
  font-size:12px;
  font-weight:900;
  color:#caa24a;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:5px;
}

.payout-card h2{
  font-size:30px;
  line-height:1;
  margin:0;
  color:#fff;
}

.payout-meta{
  font-size:14px;
  color:rgba(255,255,255,.72);
  font-weight:800;
}

.payout-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:12px;
}

.payout-row{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  border-radius:16px;
  padding:14px;
}

.payout-place{
  color:#caa24a;
  font-size:15px;
  font-weight:950;
  margin-bottom:6px;
}

.payout-percent{
  color:rgba(255,255,255,.62);
  font-size:13px;
  font-weight:800;
  margin-bottom:4px;
}

.payout-amount{
  color:#fff;
  font-size:22px;
  font-weight:950;
}
/* ===== PAYOUTS HARD FIX ===== */

.payout-card,
.payouts-card{
  display:block !important;
  margin-top:32px !important;
  padding:24px !important;
  border-radius:22px !important;
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.12), transparent 50%),
    linear-gradient(180deg,#171721,#101014) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 14px 40px rgba(0,0,0,.35) !important;
}

.payout-header,
.payouts-header{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-end !important;
  gap:18px !important;
  margin-bottom:18px !important;
}

.payout-kicker,
.payouts-title{
  color:#caa24a !important;
  font-size:12px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  margin-bottom:6px !important;
}

.payout-card h2,
.payouts-subtitle{
  color:#fff !important;
  font-size:30px !important;
  line-height:1 !important;
  margin:0 !important;
  font-weight:950 !important;
}

.payout-meta,
.payouts-meta{
  color:rgba(255,255,255,.72) !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.payout-list,
.payouts-grid{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:12px !important;
}

.payout-row{
  display:block !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:16px !important;
  padding:14px !important;
}

.payout-place{
  display:block !important;
  color:#caa24a !important;
  font-size:15px !important;
  font-weight:950 !important;
  margin-bottom:6px !important;
}

.payout-percent{
  display:block !important;
  color:rgba(255,255,255,.62) !important;
  font-size:13px !important;
  font-weight:800 !important;
  margin-bottom:5px !important;
}

.payout-amount{
  display:block !important;
  color:#fff !important;
  font-size:22px !important;
  font-weight:950 !important;
}

@media(max-width:900px){
  .payout-list,
  .payouts-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:600px){
  .payout-list,
  .payouts-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
/* ===== CLEAN ROOM PAYOUTS ===== */

.payout-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:18px;
}

.payout-row{
  display:grid;
  grid-template-columns:80px 1fr auto;
  align-items:center;
  gap:18px;

  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:16px 18px;
}

.payout-place{
  color:#caa24a;
  font-size:1.15rem;
  font-weight:900;
}

.payout-player{
  color:rgba(255,255,255,.65);
  font-size:1rem;
  font-weight:700;
}

.payout-amount{
  color:#fff;
  font-size:1.45rem;
  font-weight:900;
  text-align:right;
}
/* ===== MGA PAYOUTS ===== */

.payout-card{
  margin-top:34px;
  padding:22px;
  border-radius:24px;
  background:
    radial-gradient(circle at top left, rgba(202,162,74,.10), transparent 45%),
    linear-gradient(180deg,#171721,#101014);
  border:1px solid rgba(255,255,255,.08);
}

.payout-kicker{
  font-size:.8rem;
  font-weight:900;
  color:#caa24a;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.payout-title{
  margin:4px 0;
  font-size:2rem;
  color:#fff;
}

.payout-meta{
  color:rgba(255,255,255,.7);
  font-size:.95rem;
  margin-bottom:18px;
}

.payout-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.payout-row{
  display:grid;
  grid-template-columns:80px 1fr auto;
  align-items:center;
  gap:16px;

  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:16px 18px;
}

.payout-place{
  color:#caa24a;
  font-size:1.15rem;
  font-weight:900;
}

.payout-player{
  color:rgba(255,255,255,.45);
  font-weight:700;
}

.payout-amount{
  color:#fff;
  font-size:1.35rem;
  font-weight:900;
}
.payout-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  margin-top:18px !important;
}

.payout-row{
  display:grid !important;
  grid-template-columns:80px 1fr 150px !important;
  align-items:center !important;
  gap:16px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:14px !important;
  padding:12px 16px !important;
}

.payout-place{
  color:#caa24a !important;
  font-weight:950 !important;
}

.payout-player{
  color:rgba(255,255,255,.45) !important;
  font-weight:800 !important;
}

.payout-amount{
  text-align:right !important;
  font-size:22px !important;
  font-weight:950 !important;
}
@media (max-width: 640px){
  .shell{
    padding: 22px 14px 36px;
  }

  .hero-logo-wrap{
    margin-bottom: 14px;
  }

  .hero-logo{
    max-width: 120px;
  }

  .kicker{
    font-size: 12px;
    letter-spacing: .14em;
    margin-bottom: 8px;
  }

  h1{
    font-size: 46px;
    line-height: .95;
    margin-bottom: 10px;
  }

  .sub{
    font-size: 18px;
    line-height: 1.25;
    margin-bottom: 18px;
  }

  .game-card{
    padding: 22px;
    border-radius: 24px;
  }

  .live-pill{
    font-size: 14px;
    padding: 10px 16px;
    margin-bottom: 20px;
  }

  .game-title{
    font-size: 34px;
    line-height: 1.02;
    margin-bottom: 10px;
  }

  .grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  .stat{
    padding: 14px;
    border-radius: 16px;
    min-height: 86px;
  }

  .stat-label{
    font-size: 11px;
    letter-spacing: .12em;
    margin-bottom: 8px;
  }

  .stat-value{
    font-size: 28px;
    line-height: 1.05;
  }

  .value-sub{
    font-size: 13px;
    line-height: 1.15;
    margin-top: 4px;
  }

  .button{
    width: 100%;
    text-align: center;
    margin-top: 18px;
    padding: 16px 18px;
    font-size: 18px;
    border-radius: 18px;
  }
}
/* MOBILE LOBBY FIX */
@media screen and (max-width: 768px){

  body{
    overflow-x:hidden;
  }

  /* tighten page */
  .container,
  .page-container,
  main{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  /* shrink hero section */
  h1{
    font-size:56px !important;
    line-height:0.95 !important;
    margin-bottom:8px !important;
  }

  .subtitle,
  p{
    font-size:18px !important;
  }

  /* event card tighter */
  .event-card,
  .live-card,
  .card{
    padding:18px !important;
    border-radius:24px !important;
  }

  /* THIS is the important part */
  .stats-grid,
  .details-grid,
  .info-grid{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  /* stat tiles */
  .stat-card,
  .stat-box,
  .detail-card{
    min-height:95px !important;
    padding:14px !important;
    border-radius:18px !important;
  }

  .stat-value{
    font-size:30px !important;
    line-height:1 !important;
  }

  .stat-label{
    font-size:11px !important;
  }

  /* button tighter */
  button,
  .btn{
    padding:14px 18px !important;
    font-size:18px !important;
    border-radius:18px !important;
  }
}
@media screen and (max-width: 768px){
  .lobby-stat-grid{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  .lobby-stat-grid .stat{
    padding:14px !important;
    border-radius:18px !important;
    min-height:92px !important;
  }

  .lobby-stat-grid .stat-value{
    font-size:26px !important;
    line-height:1.05 !important;
    word-break:keep-all !important;
  }

  .lobby-stat-grid .stat-label{
    font-size:11px !important;
  }
}
