/* =========================
   PREMIUM APOSTAS MOBILE
   ========================= */

:root{
  --premium-bg:#0b1020;
  --premium-bg-2:#121a2f;
  --premium-card:#ffffff;
  --premium-text:#0f172a;
  --premium-text-soft:#64748b;
  --premium-line:#e5e7eb;
  --premium-red-1:#ff2156;
  --premium-red-2:#c90f43;
  --premium-blue:#2563eb;
  --premium-green:#22c55e;
  --premium-green-bg:#e9f9ef;
  --premium-shadow:0 12px 30px rgba(0,0,0,.18);
  --premium-shadow-soft:0 8px 20px rgba(15,23,42,.08);
  --premium-radius:22px;
}

body{
  background:
    radial-gradient(circle at top, rgba(255,33,86,.12), transparent 28%),
    linear-gradient(180deg,#09101f 0%, #0a1324 35%, #0c1425 100%) !important;
}

/* topo */
header,
[data-testid="header"],
.top-header,
.main-header{
  backdrop-filter: blur(14px);
  background: rgba(8,12,24,.88) !important;
  border-bottom: 1px solid rgba(255,255,255,.06);
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
}

header img,
[data-testid="header-logo"] img{
  max-height: 36px !important;
}

header button,
header a,
.top-header button,
.top-header a{
  border-radius: 18px !important;
}

/* abas principais do topo */
.premium-apostas-tabs,
.tabs-apostas,
.apostas-tabs,
[data-apostas-tabs]{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding: 8px 14px 2px;
  scrollbar-width:none;
}
.premium-apostas-tabs::-webkit-scrollbar,
.tabs-apostas::-webkit-scrollbar,
.apostas-tabs::-webkit-scrollbar{
  display:none;
}

.premium-apostas-tab,
.tabs-apostas a,
.tabs-apostas button,
.apostas-tabs a,
.apostas-tabs button,
[data-apostas-tabs] a,
[data-apostas-tabs] button{
  border:none;
  background: rgba(255,255,255,.06);
  color:#dbe3f0 !important;
  border-radius: 14px;
  padding: 10px 14px;
  font-weight: 700;
  font-size: 14px;
  white-space: nowrap;
  transition: all .18s ease;
}

.premium-apostas-tab.active,
.tabs-apostas .active,
.apostas-tabs .active,
[data-apostas-tabs] .active{
  background: linear-gradient(135deg,var(--premium-red-1),var(--premium-red-2)) !important;
  color:#fff !important;
  box-shadow: 0 10px 24px rgba(255,33,86,.26);
}

/* subabas: pendentes, resolvidas etc */
.premium-subtabs,
.subtabs-apostas,
[data-apostas-subtabs]{
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding: 4px 14px 12px;
  scrollbar-width:none;
}
.premium-subtabs::-webkit-scrollbar,
.subtabs-apostas::-webkit-scrollbar{
  display:none;
}

.premium-subtabs a,
.premium-subtabs button,
.subtabs-apostas a,
.subtabs-apostas button,
[data-apostas-subtabs] a,
[data-apostas-subtabs] button{
  position:relative;
  background: transparent;
  border:none;
  color:#d6deea !important;
  font-weight:700;
  padding: 10px 2px;
  white-space: nowrap;
  opacity:.88;
}

.premium-subtabs .active,
.subtabs-apostas .active,
[data-apostas-subtabs] .active{
  color:#fff !important;
  opacity:1;
}
.premium-subtabs .active::after,
.subtabs-apostas .active::after,
[data-apostas-subtabs] .active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  border-radius:999px;
  background: linear-gradient(90deg,#3b82f6,#60a5fa);
}

/* lista */
.premium-bets-list,
.bets-list,
.lista-apostas,
[data-bets-list]{
  padding: 12px 14px 110px !important;
  display:flex;
  flex-direction:column;
  gap:16px;
}

/* card da aposta */
.premium-bet-card,
.bet-card,
.aposta-card,
[data-bet-card]{
  background: var(--premium-card) !important;
  border-radius: 26px !important;
  box-shadow: var(--premium-shadow-soft) !important;
  border: 1px solid rgba(15,23,42,.05) !important;
  padding: 18px !important;
  overflow:hidden;
  position:relative;
}

.premium-bet-card::before,
.bet-card::before,
.aposta-card::before,
[data-bet-card]::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  height:6px;
  background: linear-gradient(90deg,var(--premium-red-1),#ff5d82);
}

/* título */
.premium-bet-card h2,
.premium-bet-card h3,
.bet-card h2,
.bet-card h3,
.aposta-card h2,
.aposta-card h3,
[data-bet-card] h2,
[data-bet-card] h3{
  color:#0f172a !important;
  font-size: 18px !important;
  line-height:1.25 !important;
  font-weight: 900 !important;
  margin: 0 0 10px !important;
}

/* subtítulo */
.premium-bet-card p,
.bet-card p,
.aposta-card p,
[data-bet-card] p{
  color:#475569 !important;
}

/* badge ganha */
.status-win,
.badge-win,
.ganha,
[data-status="ganha"]{
  background: linear-gradient(135deg,#dcfce7,#ecfdf5) !important;
  color:#15803d !important;
  border:1px solid rgba(34,197,94,.16) !important;
  border-radius:999px !important;
  padding: 10px 14px !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  letter-spacing:.2px;
}

/* bloco odd/aposta/retorno */
.premium-bet-stats,
.bet-stats,
.aposta-stats,
[data-bet-stats]{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:12px;
  margin-top:16px;
}

.premium-bet-stat,
.bet-stat,
.aposta-stat,
[data-bet-stat]{
  background: linear-gradient(180deg,#f8fafc,#f1f5f9) !important;
  border-radius: 18px !important;
  padding: 14px 14px 16px !important;
  border: 1px solid #e9edf4 !important;
  min-height: 84px;
}

.premium-bet-stat .label,
.bet-stat .label,
.aposta-stat .label,
[data-bet-stat] .label{
  display:block;
  color:#64748b !important;
  font-size:14px !important;
  margin-bottom:8px;
}

.premium-bet-stat .value,
.bet-stat .value,
.aposta-stat .value,
[data-bet-stat] .value{
  display:block;
  color:#0f172a !important;
  font-weight:900 !important;
  font-size:16px !important;
}

/* info importante */
.premium-final-score,
.final-score,
.placar-final{
  margin-top: 12px;
  font-weight:800 !important;
  color:#334155 !important;
}

/* nav inferior */
[data-testid="webtabbar-wrapper"],
.bottom-nav,
.tabbar{
  background: rgba(8,12,24,.95) !important;
  backdrop-filter: blur(16px);
  border-top: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: 0 -8px 30px rgba(0,0,0,.22) !important;
}

[data-testid="webtabbar-wrapper"] *{
  color:#cbd5e1 !important;
}

[data-testid="webtabbar-wrapper"] .active,
[data-testid="webtabbar-wrapper"] [aria-current="page"]{
  color:#ff2d62 !important;
}

/* badge saldo */
.balance-badge,
.saldo-badge,
[data-balance-badge]{
  background: linear-gradient(135deg,#16a34a,#22c55e) !important;
  color:#fff !important;
  box-shadow: 0 10px 20px rgba(34,197,94,.28);
  border-radius:999px !important;
  padding: 6px 12px !important;
  font-weight:900 !important;
}

/* animação ao abrir */
.premium-bet-card,
.bet-card,
.aposta-card,
[data-bet-card]{
  animation: premiumCardIn .28s ease both;
}

@keyframes premiumCardIn{
  from{opacity:0; transform:translateY(8px) scale(.985)}
  to{opacity:1; transform:translateY(0) scale(1)}
}

/* ajuste mobile */
@media (max-width: 420px){
  .premium-bet-card,
  .bet-card,
  .aposta-card,
  [data-bet-card]{
    border-radius: 22px !important;
    padding: 16px !important;
  }

  .premium-bet-stats,
  .bet-stats,
  .aposta-stats,
  [data-bet-stats]{
    gap:10px;
  }

  .premium-bet-stat,
  .bet-stat,
  .aposta-stat,
  [data-bet-stat]{
    padding: 12px !important;
  }
}
