/* Visual Helix Jump baseado nas referencias mobile fornecidas. */
:root {
  --helix-ink: #070012;
  --helix-purple: #190631;
  --helix-pink: #ff0082;
  --helix-green: #00d98b;
}

.helix-brand-mark {
  width: 25px; height: 25px; flex: 0 0 25px;
  display: block !important;
  fill: none; stroke: var(--helix-pink); stroke-width: 1.9;
  stroke-linecap: round; stroke-linejoin: round;
}

.tower-copa-landing .lnd-nav-brand,
#page-painel .pnl-logo {
  display: flex !important; align-items: center !important;
  flex-wrap: nowrap !important; white-space: nowrap !important;
}

.tower-copa-landing .lnd-nav-brand .brand-name,
#page-painel .pnl-logo .brand-name {
  color: var(--helix-pink) !important; white-space: nowrap !important;
  line-height: 1 !important; letter-spacing: -1.1px !important;
}

.tower-copa-landing .lnd-nav {
  background: var(--helix-ink) !important;
  border-bottom-color: rgba(255, 0, 130, .09) !important;
}
.tower-copa-landing .lnd-cta-sm {
  background: var(--helix-pink) !important;
  box-shadow: 0 8px 24px rgba(255, 0, 130, .42) !important;
}
.tower-copa-landing .lnd-title em { color: var(--helix-pink) !important; }
.tower-copa-landing .lnd-live-dot,
.tower-copa-landing .lnd-cta-btn { background: var(--helix-green) !important; }

#page-painel .pnl-root {
  --pnl-pink: var(--helix-pink) !important;
  --pnl-green: var(--helix-green) !important;
  background-color: var(--helix-purple) !important;
  background-image: linear-gradient(rgba(18, 2, 36, .68), rgba(18, 2, 36, .72)), url('../images/game-bg.png') !important;
  background-position: center top !important; background-size: cover !important;
  background-attachment: fixed !important;
}
#page-painel .pnl-header,
#page-painel .pnl-bottom-nav {
  background: rgba(7, 0, 18, .96) !important;
  border-color: rgba(255, 255, 255, .08) !important;
}
#page-painel .helix-brand-mark--panel {
  width: 25px; height: 25px; flex-basis: 25px;
  stroke: #078cff; stroke-width: 2;
}
#page-painel .pnl-saldo-chip {
  background: linear-gradient(135deg, #03c880, #00a86c) !important;
  box-shadow: none !important;
}
#page-painel .pnl-avatar { background: var(--helix-pink) !important; }

/* Menu de perfil roxo-escuro conforme a referência. */
#page-painel .pnl-profile-drop {
  background: #1b0035 !important;
  border: 1px solid rgba(176, 105, 210, .24) !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, .52) !important;
  color: #fff !important;
}
#page-painel .ppd-arrow { border-bottom-color: #1b0035 !important; }
#page-painel .ppd-header,
#page-painel .ppd-divider { border-color: rgba(255, 255, 255, .09) !important; }
#page-painel .ppd-name { color: #fff !important; }
#page-painel .ppd-email { color: rgba(255, 255, 255, .42) !important; }
#page-painel .ppd-item { color: rgba(255, 255, 255, .82) !important; }
#page-painel .ppd-item:hover { background: rgba(255, 255, 255, .06) !important; }
#page-painel .ppd-item-danger { color: #d95a6c !important; }
#page-painel .ppd-badge {
  background: rgba(0, 217, 139, .08) !important;
  border-color: rgba(0, 217, 139, .42) !important;
  color: #00d98b !important;
}

/* O banner substitui o bloco visual de saldo e atalhos desta tela. */
#page-painel .pnl-hero { display: none !important; }
#page-painel #pnl-banner-wrap { max-width: 720px !important; }
#page-painel #pnl-banner-track { border-radius: 14px !important; }
#page-painel #pnl-banner-track img {
  width: 100% !important; aspect-ratio: 895 / 455 !important;
  object-fit: cover !important; object-position: center !important;
}

/* Exibe uma única marca: imagem configurada OU símbolo + nome de fallback. */
#page-painel .pnl-logo:has(.brand-logo-img[src]:not([src=""]), .brand-logo-img-mobile[src]:not([src=""])) .helix-brand-mark,
#page-painel .pnl-logo:has(.brand-logo-img[src]:not([src=""]), .brand-logo-img-mobile[src]:not([src=""])) .brand-name {
  display: none !important;
}

.helix-default-banner {
  position: relative; min-width: 100%; aspect-ratio: 1.82 / 1;
  overflow: hidden; border-radius: 14px;
  background:
    radial-gradient(circle at 74% 48%, rgba(255,255,255,.24), transparent 22%),
    linear-gradient(115deg, #050012 0 48%, #ff4fa3 48% 100%);
  color: #fff;
}
.helix-default-banner::before {
  content: ''; position: absolute; inset: 0;
  background: repeating-linear-gradient(90deg, transparent 0 5px, rgba(255,255,255,.025) 5px 6px);
  pointer-events: none;
}
.helix-default-banner-copy {
  position: absolute; z-index: 3; left: 4%; top: 8%; width: 57%;
  display: flex; flex-direction: column; align-items: flex-start;
  font-family: 'Poppins', sans-serif; text-transform: uppercase;
}
.helix-default-banner-tag {
  margin-bottom: 8%; padding: 3px 9px; border-radius: 50px;
  background: var(--helix-pink); font-size: clamp(7px, 2vw, 11px); font-weight: 900;
}
.helix-default-banner-copy strong,
.helix-default-banner-copy b {
  font-size: clamp(15px, 5.1vw, 31px); line-height: 1.04;
  letter-spacing: -1.2px; font-weight: 900;
}
.helix-default-banner-copy b { color: var(--helix-pink); }
.helix-default-banner-copy small {
  margin-top: 9%; padding: 3px 6px; border: 1px solid rgba(255,255,255,.8);
  font-size: clamp(5px, 1.45vw, 9px); font-weight: 700;
}
.helix-default-banner-game {
  position: absolute; right: -4%; top: -3%; width: 50%; height: 112%;
  transform: rotate(-8deg);
}
.helix-default-banner-ring {
  position: absolute; left: 4%; width: 92%; height: 27%;
  border-radius: 50%; background: #ff68a6;
  border: 13px solid #11101a; box-shadow: inset 0 0 0 8px #ff8abc;
}
.helix-default-banner-ring--one { top: 14%; }
.helix-default-banner-ring--two { top: 39%; transform: rotate(7deg); }
.helix-default-banner-ring--three { top: 65%; transform: rotate(-5deg); }
.helix-default-banner-ball {
  position: absolute; z-index: 4; left: 35%; top: 32%; width: 29%; aspect-ratio: 1;
  border-radius: 50%; background: radial-gradient(circle at 35% 28%, #fff, #ff5b62 24%, #dc0b18 68%);
  box-shadow: 0 7px 16px rgba(0,0,0,.46);
}
#page-painel .pnl-game,
#page-painel .pnl-game-card,
#page-painel .pnl-play-card {
  background: linear-gradient(155deg, rgba(96, 0, 49, .96), rgba(58, 0, 55, .96)) !important;
  border-color: rgba(255, 255, 255, .13) !important;
  box-shadow: 0 14px 36px rgba(0, 0, 0, .32) !important;
}
#page-painel .pnl-bottom-item.active,
#page-painel .pnl-nav-item.active { color: var(--helix-pink) !important; }
#page-painel .pnl-modal-bg { backdrop-filter: blur(7px) !important; }
#page-painel .pnl-modal {
  border-radius: 24px 24px 0 0 !important; background: #fff !important;
  color: #310045 !important;
}
#page-painel #ind-saldo-box {
  background: linear-gradient(135deg, #5614a1, #320077) !important;
  border-radius: 15px !important;
}
#page-painel .pnl-info-pink { background: #ffe8f1 !important; color: #bd0a58 !important; }
#page-painel .pnl-link-box {
  background: linear-gradient(135deg, #ff6ba5, #fa609a) !important; color: #fff !important;
}
#page-painel .pnl-mini-stat { background: #f4effc !important; }

@media (max-width: 520px) {
  .tower-copa-landing .lnd-nav {
    min-height: 64px !important; padding: 12px 18px !important; gap: 10px !important;
  }
  .tower-copa-landing .lnd-nav-brand { gap: 9px !important; min-width: 0 !important; }
  .tower-copa-landing .lnd-nav-brand .brand-name { font-size: 23px !important; }
  .tower-copa-landing .lnd-nav-menu { gap: 8px !important; }
  .tower-copa-landing .lnd-nav-link { padding: 9px 7px !important; font-size: 13px !important; }
  .tower-copa-landing .lnd-cta-sm { padding: 11px 17px !important; font-size: 13px !important; }
  .tower-copa-landing .lnd-hero { min-height: calc(100svh - 64px) !important; }
  .tower-copa-landing .lnd-hero-inner { padding: 64px 18px 36px !important; }
  .tower-copa-landing .lnd-hero-left { width: 100% !important; max-width: 100% !important; }
  .tower-copa-landing .lnd-live-badge { margin: 0 auto 28px !important; font-size: 12px !important; }
  .tower-copa-landing .lnd-title { font-size: clamp(44px, 13vw, 57px) !important; line-height: .92 !important; }
  .tower-copa-landing .lnd-sub { font-size: 16px !important; line-height: 1.55 !important; max-width: 340px !important; }
  .tower-copa-landing .lnd-actions { width: 100% !important; align-items: center !important; }
  .tower-copa-landing .lnd-cta-btn { width: min(100%, 280px) !important; min-height: 58px !important; }
  .tower-copa-landing .lnd-trust {
    display: flex !important; flex-flow: row wrap !important;
    justify-content: center !important; gap: 8px !important; width: 100% !important;
  }
  .tower-copa-landing .lnd-trust-item { width: auto !important; padding: 8px 10px !important; font-size: 11px !important; }
  #page-painel .pnl-header-inner { padding-left: 16px !important; padding-right: 16px !important; }
  #page-painel .pnl-logo { gap: 8px !important; min-width: 0 !important; }
  #page-painel .pnl-logo .brand-name { font-size: 20px !important; }
  #page-painel .pnl-header-right { gap: 8px !important; }
  #page-painel #pnl-banner-wrap { margin-top: 14px !important; padding: 0 12px !important; }
  #page-painel .pnl-modal {
    max-height: calc(100svh - 54px) !important; overflow-y: auto !important;
    padding-bottom: max(24px, env(safe-area-inset-bottom)) !important;
  }
}
