body.theme-shell{
  position:relative;
  background-color:#050a12;
  color:var(--text, #eef5ff);
}

body.theme-shell::selection{
  background:rgba(66,223,255,.24);
  color:#ffffff;
}

body.theme-shell .panel,
body.theme-shell .sidebar,
body.theme-shell .content,
body.theme-shell .hero-card,
body.theme-shell .history-panel,
body.theme-shell .card,
body.theme-shell .stat-card,
body.theme-shell .game-item,
body.theme-shell .history-item,
body.theme-shell .status-bar,
body.theme-shell .menu-btn,
body.theme-shell .pill,
body.theme-shell .info-row,
body.theme-shell .hero-stage,
body.theme-shell .sidebar,
body.theme-shell .compact-info,
body.theme-shell .main,
body.theme-shell .panel {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

body.theme-shell.page-shop .sidebar,
body.theme-shell.page-shop .content,
body.theme-shell.page-season .panel,
body.theme-shell.page-minigames .panel{
  box-shadow:0 16px 40px rgba(0,0,0,.28);
}

@media (max-width: 1024px){
  body.theme-shell.page-minigames .browser{
    grid-template-columns:1fr !important;
  }

  body.theme-shell.page-minigames .sidebar,
  body.theme-shell.page-minigames .history-panel,
  body.theme-shell.page-minigames .main{
    min-height:auto;
  }

  body.theme-shell.page-season .season-shell{
    grid-template-columns:1fr !important;
  }
}

@media (max-width: 768px){
  body.theme-shell.page-shop .page,
  body.theme-shell.page-season .season-shell,
  body.theme-shell.page-minigames .app,
  body.theme-shell.page-index .container{
    width:min(100%, 1280px);
    padding-left:14px !important;
    padding-right:14px !important;
  }

  body.theme-shell.page-shop .top{
    flex-direction:column;
    align-items:flex-start;
  }

  body.theme-shell.page-shop .actions,
  body.theme-shell.page-shop .content-head{
    width:100%;
    flex-wrap:wrap;
  }

  body.theme-shell.page-shop .layout{
    grid-template-columns:1fr !important;
  }

  body.theme-shell.page-shop .grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }

  body.theme-shell.page-shop .card{
    min-height:unset !important;
    padding:14px !important;
  }

  body.theme-shell.page-shop .thumb{
    height:112px !important;
  }

  body.theme-shell.page-season .season-shell{
    padding:12px !important;
    gap:12px !important;
  }

  body.theme-shell.page-season .topbar{
    grid-template-columns:1fr !important;
  }

  body.theme-shell.page-season .track-head,
  body.theme-shell.page-season .reward-head,
  body.theme-shell.page-season .pass-actions,
  body.theme-shell.page-season .season-head{
    flex-wrap:wrap;
  }

  body.theme-shell.page-minigames .app{
    padding:12px !important;
    gap:12px !important;
    max-width:100% !important;
  }

  body.theme-shell.page-minigames .topbar,
  body.theme-shell.page-minigames .compact-info-head,
  body.theme-shell.page-minigames .detail-head,
  body.theme-shell.page-minigames .action-row{
    flex-wrap:wrap;
  }

  body.theme-shell.page-minigames .stats-grid,
  body.theme-shell.page-minigames .info-grid,
  body.theme-shell.page-minigames .burger-goals,
  body.theme-shell.page-minigames .burger-grid-ingredients{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }

  body.theme-shell.page-minigames .burger-grid{
    grid-template-columns:1fr !important;
    height:auto !important;
  }

  body.theme-shell.page-minigames .game-body{
    padding:10px 0 calc(10px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

@media (max-width: 520px){
  body.theme-shell.page-shop .grid{
    grid-template-columns:1fr !important;
  }

  body.theme-shell.page-shop .title,
  body.theme-shell.page-minigames .brand h1,
  body.theme-shell.page-season .season-title{
    font-size:24px !important;
  }

  body.theme-shell.page-minigames .stats-grid,
  body.theme-shell.page-minigames .info-grid,
  body.theme-shell.page-minigames .burger-goals,
  body.theme-shell.page-minigames .burger-grid-ingredients{
    grid-template-columns:1fr !important;
  }
}

body.theme-shell .rb-app-shell{
  position:relative;
  z-index:30;
}

body.theme-shell .rb-app-topbar{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  position:relative;
  background:
    linear-gradient(180deg,rgba(20,26,36,.82),rgba(10,15,23,.92)),
    linear-gradient(90deg,rgba(66,223,255,.03),transparent 35%,transparent 68%,rgba(255,207,71,.06));
  border-bottom:1px solid rgba(255,255,255,.06);
  box-shadow:0 10px 28px rgba(0,0,0,.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

body.theme-shell .rb-app-topbar::after{
  content:"";
  position:absolute;
  left:10px;
  right:10px;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(66,223,255,.42),rgba(255,207,71,.42),transparent);
  pointer-events:none;
}

body.theme-shell .rb-app-topbar-inner{
  width:min(1800px,100%);
  min-height:62px;
  display:grid;
  grid-template-columns:72px minmax(220px,1fr) minmax(180px,260px);
  gap:10px;
  align-items:center;
}

body.theme-shell .rb-app-brand{
  width:72px;
  height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.06);
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01)),
    linear-gradient(90deg,rgba(255,207,71,.04),transparent 55%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 12px 22px rgba(0,0,0,.22);
  text-decoration:none;
}

body.theme-shell .rb-app-brand-badge{
  width:40px;
  height:40px;
  clip-path:polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0 50%);
  display:grid;
  place-items:center;
  font-size:15px;
  font-weight:900;
  color:#1b1304;
  background:
    radial-gradient(circle at 50% 35%, #fff6cb, transparent 28%),
    linear-gradient(180deg,#ffdf7a,#ffcf47,#c88910);
  box-shadow:
    0 0 0 1px rgba(255,230,170,.18) inset,
    0 0 20px rgba(255,207,71,.26),
    0 8px 16px rgba(0,0,0,.22);
  position:relative;
}

body.theme-shell .rb-app-brand-badge::before{
  content:"";
  position:absolute;
  inset:5px;
  clip-path:polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0 50%);
  border:1px solid rgba(255,255,255,.22);
}

body.theme-shell .rb-app-brand-logo{
  width:40px;
  height:40px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.22));
}

body.theme-shell .rb-app-top-stats{
  min-width:0;
  display:flex;
  align-items:center;
}

body.theme-shell .rb-app-top-chip{
  width:min(420px,100%);
  min-width:0;
  height:46px;
  padding:0 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.06);
  background:
    linear-gradient(180deg,#171f2c,#0c131d),
    repeating-linear-gradient(
      120deg,
      transparent 0 16px,
      rgba(255,207,71,.015) 16px 17px,
      transparent 17px 32px
    );
  display:flex;
  align-items:center;
  gap:8px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 10px 20px rgba(0,0,0,.2);
  position:relative;
  overflow:hidden;
  cursor:pointer;
  color:#eef5ff;
}

body.theme-shell .rb-app-top-chip::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:48px;
  background:linear-gradient(180deg,rgba(255,207,71,.12),transparent);
  opacity:.8;
}

body.theme-shell .rb-app-top-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  flex:0 0 auto;
  background:#ffcf47;
  box-shadow:0 0 12px currentColor;
  position:relative;
  z-index:1;
}

body.theme-shell .rb-app-top-chip-copy{
  min-width:0;
  position:relative;
  z-index:1;
}

body.theme-shell .rb-app-top-chip-copy small{
  display:block;
  font-size:7px;
  color:#8ea0bb;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.5px;
  line-height:1;
}

body.theme-shell .rb-app-top-chip-copy b{
  display:block;
  margin-top:4px;
  font-size:12px;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.theme-shell .rb-app-user-card{
  min-width:0;
  height:46px;
  padding:0 12px 0 8px;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.06);
  background:
    linear-gradient(180deg,rgba(16,25,38,.88),rgba(10,15,24,.94)),
    linear-gradient(90deg,rgba(144,192,255,.03),transparent 62%);
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:#eef5ff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 10px 18px rgba(0,0,0,.2);
}

body.theme-shell .rb-app-user-avatar{
  width:30px;
  height:30px;
  border-radius:10px;
  display:grid;
  place-items:center;
  font-size:12px;
  font-weight:900;
  color:#f8fbff;
  background:
    radial-gradient(circle at 30% 30%,rgba(255,255,255,.18),transparent 34%),
    linear-gradient(180deg,#21334b,#101a27);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 14px rgba(0,0,0,.2);
  flex:0 0 auto;
}

body.theme-shell .rb-app-user-copy{
  min-width:0;
}

body.theme-shell .rb-app-user-copy small{
  display:block;
  font-size:7px;
  color:#8ea0bb;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.5px;
  line-height:1;
}

body.theme-shell .rb-app-user-copy b{
  display:block;
  margin-top:4px;
  font-size:12px;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.theme-shell .rb-app-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  background:linear-gradient(180deg,rgba(12,18,27,.8),rgba(8,12,18,.9));
  border-bottom:1px solid rgba(255,255,255,.05);
  box-shadow:0 10px 22px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

body.theme-shell .rb-app-nav-inner{
  width:min(1800px,100%);
  min-height:48px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:center;
  min-width:0;
}

body.theme-shell .rb-app-rooms,
body.theme-shell .rb-app-menu{
  display:flex;
  gap:7px;
  align-items:center;
  min-width:0;
  overflow:auto;
  scrollbar-width:none;
}

body.theme-shell .rb-app-rooms::-webkit-scrollbar,
body.theme-shell .rb-app-menu::-webkit-scrollbar{
  display:none;
}

body.theme-shell .rb-app-rooms-label{
  flex:0 0 auto;
  margin-right:2px;
  font-size:9px;
  color:#8ea0bb;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.5px;
}

body.theme-shell .rb-app-room-btn{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:35px;
  height:32px;
  padding:0 11px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,#1e2938,#101723);
  color:#eef5ff;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 18px rgba(0,0,0,.16);
  transition:.18s ease;
  cursor:pointer;
  font:inherit;
}

body.theme-shell .rb-app-room-btn:hover,
body.theme-shell .rb-app-menu-item:hover{
  transform:translateY(-1px);
  border-color:rgba(255,207,71,.18);
}

body.theme-shell .rb-app-room-btn.is-active{
  background:linear-gradient(180deg,#4f3e19,#2a2314);
  border-color:rgba(255,207,71,.24);
  box-shadow:0 0 0 1px rgba(255,207,71,.08) inset,0 10px 18px rgba(0,0,0,.16);
}

body.theme-shell .rb-app-room-btn.is-locked{
  color:#211802;
  background:linear-gradient(180deg,#ffdf7a,#ffcf47,#c88910);
  border-color:transparent;
}

body.theme-shell .rb-app-room-btn.is-placeholder{
  opacity:.55;
}

body.theme-shell .rb-app-menu{
  justify-content:flex-end;
}

body.theme-shell .rb-app-menu-item{
  --menu-accent:255,255,255;
  --menu-fill-start:#203040;
  --menu-fill-end:#0f1824;
  flex:0 0 auto;
  min-width:86px;
  min-height:36px;
  padding:8px 16px;
  border-radius:14px;
  border:1px solid rgba(var(--menu-accent),.22);
  background:
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01)),
    linear-gradient(180deg,var(--menu-fill-start),var(--menu-fill-end));
  color:#eef5ff;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 18px rgba(0,0,0,.16);
  transition:.18s ease;
}

body.theme-shell .rb-app-menu-item-label{
  display:block;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
  line-height:1.05;
  text-transform:uppercase;
}

body.theme-shell .rb-app-menu-item-note{
  display:block;
  margin-top:3px;
  font-size:7px;
  line-height:1;
  letter-spacing:.08em;
  color:rgba(238,245,255,.66);
}

body.theme-shell .rb-app-menu-item.is-active{
  background:linear-gradient(180deg,#4f3e19,#2a2314);
  border-color:rgba(255,207,71,.24);
  box-shadow:0 0 0 1px rgba(255,207,71,.08) inset,0 10px 18px rgba(0,0,0,.16);
}

body.theme-shell .rb-app-menu-item--room{
  --menu-accent:255,207,71;
  --menu-fill-start:#473418;
  --menu-fill-end:#1a140d;
}

body.theme-shell .rb-app-menu-item--shop{
  --menu-accent:66,223,255;
  --menu-fill-start:#18384a;
  --menu-fill-end:#0c1621;
}

body.theme-shell .rb-app-menu-item--topup{
  --menu-accent:108,240,160;
  --menu-fill-start:#1a3a29;
  --menu-fill-end:#0b1a13;
}

body.theme-shell .rb-app-menu-item--withdraw{
  --menu-accent:255,207,71;
  --menu-fill-start:#4a331a;
  --menu-fill-end:#181109;
}

body.theme-shell .rb-app-menu-item--games{
  --menu-accent:255,120,147;
  --menu-fill-start:#402130;
  --menu-fill-end:#170d14;
}

body.theme-shell .rb-app-menu-item--leaderboard{
  --menu-accent:72,215,255;
  --menu-fill-start:#173649;
  --menu-fill-end:#0b1822;
}

body.theme-shell .rb-app-menu-item--season{
  --menu-accent:255,167,87;
  --menu-fill-start:#47301d;
  --menu-fill-end:#1b120b;
}

body.theme-shell .rb-app-menu-item--marketplace-coming{
  --menu-accent:160,130,255;
  --menu-fill-start:#2a2348;
  --menu-fill-end:#121022;
}

body.theme-shell .rb-app-menu-item--theme{
  --menu-accent:144,192,255;
  --menu-fill-start:#20384e;
  --menu-fill-end:#101723;
}

body.rb-hide-app-header .rb-app-shell{
  display:none !important;
}

body.theme-shell.page-minigames:not(.rb-hide-app-header) .app{
  min-height:calc(100dvh - 118px);
}

body.theme-shell.page-minigame-result:not(.rb-hide-app-header) .result-app{
  min-height:calc(100dvh - 118px);
}

@media (max-width: 1180px){
  body.theme-shell .rb-app-topbar-inner{
    grid-template-columns:54px minmax(0,1fr) minmax(130px,180px);
    gap:8px;
  }

  body.theme-shell .rb-app-brand{
    width:54px;
  }

  body.theme-shell .rb-app-top-chip{
    width:100%;
    padding:0 12px;
    border-radius:16px;
  }

  body.theme-shell .rb-app-user-card{
    padding:0 10px 0 7px;
    gap:8px;
  }

  body.theme-shell .rb-app-user-avatar{
    width:28px;
    height:28px;
    font-size:11px;
    border-radius:9px;
  }

  body.theme-shell .rb-app-nav-inner{
    grid-template-columns:1fr;
    gap:10px;
    padding:10px 0;
  }

  body.theme-shell .rb-app-menu{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(92px,1fr));
    gap:10px;
    width:100%;
    overflow:visible;
    justify-content:stretch;
  }

  body.theme-shell .rb-app-menu-item{
    min-width:0;
    min-height:46px;
    padding:8px 10px;
  }
}

@media (max-width: 720px){
  body.theme-shell .rb-app-topbar,
  body.theme-shell .rb-app-nav{
    padding:8px;
  }

  body.theme-shell .rb-app-topbar-inner{
    grid-template-columns:48px minmax(0,1fr) minmax(116px,138px);
    gap:6px;
    min-height:0;
  }

  body.theme-shell .rb-app-brand{
    width:48px;
    height:42px;
    border-radius:14px;
  }

  body.theme-shell .rb-app-brand-badge{
    width:34px;
    height:34px;
    font-size:13px;
  }

  body.theme-shell .rb-app-brand-logo{
    width:34px;
    height:34px;
  }

  body.theme-shell .rb-app-top-chip{
    height:42px;
  }

  body.theme-shell .rb-app-top-chip-copy small,
  body.theme-shell .rb-app-user-copy small{
    font-size:6px;
  }

  body.theme-shell .rb-app-top-chip-copy b,
  body.theme-shell .rb-app-user-copy b{
    font-size:10px;
  }

  body.theme-shell .rb-app-menu{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
  }

  body.theme-shell .rb-app-menu-item{
    min-height:38px;
    padding:6px 5px;
  }

  body.theme-shell .rb-app-menu-item-label{
    font-size:8px;
    letter-spacing:.12em;
  }
}
