
/* ==========================================================
   CLIENT V6.2.6 — ÁREA DO USUÁRIO / CLIENTE PROFISSIONAL
   ========================================================== */

.customer-body{
  --client-card:#fff;
  --client-bg:#f5f6f8;
  --client-border:#e5e6eb;
  --client-muted:#7c7c85;
  --client-text:#19191e;
}
.raffle-account-page,.roulette-page,.raffle-campaign-page{
  background:linear-gradient(180deg,#f7f7fa 0,#f4f5f8 100%)!important;
}
.raffle-account-page,.roulette-page{padding-top:18px!important}

/* Shared user page hero */
.client-page-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:16px;
  margin:0 0 12px;
}
.client-page-hero>div{min-width:0}
.client-page-hero span:first-child{
  display:block;
  color:#777780;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.client-page-hero h1{
  margin:4px 0 4px;
  font-size:28px;
  line-height:1;
  letter-spacing:-.035em;
}
.client-page-hero p{
  margin:0;
  color:var(--client-muted);
  font-size:10px;
  line-height:1.45;
}
.client-hero-action,.client-account-link{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 11px;
  border:1px solid #dedee4;
  border-radius:9px;
  background:#fff;
  color:#33333a;
  font-size:9px;
  font-weight:900;
}
.client-result-count{
  flex:0 0 auto;
  padding:7px 9px;
  border-radius:999px;
  background:color-mix(in srgb,var(--brand) 8%,#fff);
  color:var(--brand)!important;
  font-size:8.5px!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Useful summary stats */
.client-stat-strip{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:7px;
  margin-bottom:12px;
}
.client-stat-strip-2{grid-template-columns:repeat(2,1fr);max-width:500px}
.client-stat-strip>div{
  border:1px solid var(--client-border);
  border-radius:12px;
  background:#fff;
  padding:11px 12px;
  box-shadow:0 3px 14px rgba(20,20,30,.025);
}
.client-stat-strip small{
  display:block;
  color:#85858e;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.client-stat-strip strong{
  display:block;
  margin-top:3px;
  font-size:18px;
  line-height:1;
}

/* Títulos */
.raffle-ticket-groups{gap:9px!important}
.raffle-ticket-card{
  padding:14px!important;
  border-radius:14px!important;
  border:1px solid var(--client-border)!important;
  box-shadow:0 5px 18px rgba(20,20,30,.035)!important;
}
.raffle-ticket-head{
  padding-bottom:10px;
  border-bottom:1px solid #efeff2;
}
.raffle-ticket-head h2{font-size:14px!important;line-height:1.2}
.raffle-ticket-head>span{
  padding:5px 7px;
  border-radius:999px;
  background:#f5f5f7;
  color:#676770!important;
  font-size:8px!important;
  font-weight:900;
}
.raffle-ticket-cloud{margin-top:10px!important}
.raffle-ticket-cloud b{
  border-radius:7px!important;
  padding:6px 8px!important;
  border:1px solid rgba(0,0,0,.035)!important;
}
.my-instant-prizes{margin-bottom:10px!important}

/* Empty state */
.client-empty-state{
  min-height:210px;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:30px 18px!important;
}
.client-empty-state>span{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:9px;
  border-radius:14px;
  background:color-mix(in srgb,var(--brand) 9%,#f4f4f6);
  color:var(--brand);
  font-size:22px;
}
.client-empty-state>b{font-size:13px}
.client-empty-state>p{
  max-width:360px;
  margin:5px auto 0;
  color:#82828b;
  font-size:9px;
  line-height:1.5;
}
.client-empty-state .raffle-primary-link{
  margin-top:12px;
  padding:9px 12px;
  border-radius:9px;
  background:var(--brand);
  color:#fff!important;
  font-size:9px;
  font-weight:900;
}

/* Roleta */
.roulette-play-card{
  border-radius:16px!important;
  padding:18px!important;
  background:#fff!important;
}
.roulette-play-info h2{letter-spacing:-.03em!important}
.roulette-play-info .raffle-primary-btn{max-width:250px}
.roulette-history>div{
  border:1px solid #ececf0;
  background:#fbfbfd!important;
  border-radius:10px!important;
  padding:10px 11px!important;
}
.roulette-history>div span{font-weight:800}

/* Ganhadores */
.raffle-public-winners{gap:9px!important}
.raffle-public-winners article{
  border-radius:14px!important;
  padding:9px!important;
  overflow:hidden;
}
.raffle-public-winner-img{border-radius:10px!important}
.raffle-public-winners h2{font-size:14px!important}
.raffle-public-winners p{margin-top:2px!important}
.raffle-public-winners b{
  display:inline-flex!important;
  padding:5px 7px;
  border-radius:7px;
  background:color-mix(in srgb,var(--brand) 8%,#fff);
}

/* Campaign page */
.client-campaign-top{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:8px;
  margin:0 0 9px;
}
.client-back-link{
  justify-self:start;
  color:#696971;
  font-size:9px;
  font-weight:900;
}
.client-campaign-top .raffle-status-chip{justify-self:center}
.client-campaign-top .client-account-link{justify-self:end}
.raffle-campaign-card{
  border-radius:16px!important;
  border:1px solid var(--client-border)!important;
  overflow:hidden;
}
.client-trust-strip{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  margin:8px 0 10px;
}
.client-trust-strip span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:7px;
  border:1px solid #e8e8ec;
  border-radius:9px;
  background:#fff;
  color:#65656e;
  font-size:8px;
  font-weight:800;
  text-align:center;
}
.campaign-extra-card{
  border-radius:14px!important;
  border:1px solid var(--client-border)!important;
  box-shadow:0 4px 17px rgba(20,20,30,.03)!important;
}
.raffle-accordion details{border-radius:13px!important}

/* Auth / cadastro refinement without changing login-specific viewport fixes */
.client-register-page .raffle-auth-card{
  box-shadow:0 18px 50px rgba(20,20,30,.10)!important;
}
.client-register-page .raffle-auth-form input{
  min-height:43px!important;
}

/* User bottom navigation */
.customer-body .bottom-nav a.is-active{
  font-weight:900!important;
}
.customer-body .bottom-nav a.is-active b{
  transform:scale(1.05);
}

/* Mobile */
@media(max-width:700px){
  .raffle-account-page,.roulette-page{padding-top:11px!important}
  .client-page-hero{
    align-items:flex-start;
    gap:10px;
    margin-bottom:10px;
  }
  .client-page-hero h1{font-size:22px}
  .client-page-hero p{font-size:9px;max-width:280px}
  .client-hero-action{min-height:34px;padding:0 10px}

  .client-stat-strip{gap:6px}
  .client-stat-strip>div{padding:9px 10px}
  .client-stat-strip strong{font-size:16px}

  .raffle-ticket-card{padding:11px!important}
  .raffle-ticket-head h2{font-size:12px!important}
  .raffle-ticket-cloud b{font-size:9px!important}

  .roulette-play-card{padding:13px!important}
  .roulette-play-info .raffle-primary-btn{max-width:none}

  .raffle-public-winners article{
    grid-template-columns:80px 1fr!important;
  }
  .raffle-public-winner-img{
    width:80px!important;
    height:74px!important;
  }

  .client-campaign-top{
    grid-template-columns:auto 1fr auto;
  }
  .client-campaign-top .raffle-status-chip{
    justify-self:center;
    max-width:170px;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
  }
  .client-trust-strip{
    grid-template-columns:1fr!important;
    gap:5px;
  }
  .client-trust-strip span{
    justify-content:flex-start;
    min-height:32px;
    padding:7px 9px;
  }
}

@media(max-width:420px){
  .client-page-hero h1{font-size:20px}
  .client-stat-strip>div{padding:8px}
  .client-stat-strip small{font-size:7px}
  .client-stat-strip strong{font-size:15px}
}
