html, body, #root {
  max-width: 100%;
  overflow-x: hidden;
}

.nx-site,
.az-root {
  --nx-primary: #c9adff !important;
  --nx-primary-soft: rgba(201, 173, 255, 0.1) !important;
  --accent: #c9adff !important;
}

.az-root {
  background-image: none !important;
  background-color: #090909 !important;
}

.grid-bg,
.nx-site > .grid-bg {
  display: none !important;
}

.nx-home {
  position: relative;
}

.nx-home::before,
.nx-home::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: min(92vh, 52rem);
  pointer-events: none;
  z-index: 0;
}

.nx-home::before {
  left: -10%;
  right: -10%;
  top: -280px;
  height: min(120vh, 70rem);
  background: url('/hero-black-hole.webp') center top / cover no-repeat;
  filter: blur(16px);
  -webkit-mask-image: linear-gradient(
    to bottom,
    #000 0%,
    #000 18%,
    rgba(0, 0, 0, 0.88) 34%,
    rgba(0, 0, 0, 0.58) 50%,
    rgba(0, 0, 0, 0.28) 66%,
    rgba(0, 0, 0, 0.1) 80%,
    rgba(0, 0, 0, 0.03) 90%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to bottom,
    #000 0%,
    #000 18%,
    rgba(0, 0, 0, 0.88) 34%,
    rgba(0, 0, 0, 0.58) 50%,
    rgba(0, 0, 0, 0.28) 66%,
    rgba(0, 0, 0, 0.1) 80%,
    rgba(0, 0, 0, 0.03) 90%,
    transparent 100%
  );
}

.nx-home::after {
  background: linear-gradient(
    180deg,
    rgba(9, 9, 9, 0.12) 0%,
    rgba(9, 9, 9, 0.18) 20%,
    rgba(9, 9, 9, 0.36) 42%,
    rgba(9, 9, 9, 0.62) 62%,
    rgba(9, 9, 9, 0.86) 80%,
    rgba(9, 9, 9, 0.97) 92%,
    #090909 100%
  );
}

.nx-hero {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: min(78vh, 44rem) !important;
  padding: 5.25rem 1rem 4rem !important;
  text-align: center;
  position: relative;
  z-index: 1;
  isolation: auto !important;
  overflow: hidden !important;
  background: transparent !important;
}

.nx-hero::before,
.nx-hero::after {
  display: none !important;
}

.nx-hero .nx-wrap,
.nx-hero-copy {
  position: relative;
  z-index: 3;
}

.nx-home > .nx-section,
.nx-home > .nx-split-section,
#products.nx-section {
  position: relative;
  z-index: 1;
}

.nx-hero-space {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.nx-hero-stars {
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(1px 1px at 8% 16%, rgba(255,255,255,.9), transparent),
    radial-gradient(1.5px 1.5px at 18% 38%, rgba(255,255,255,.7), transparent),
    radial-gradient(1px 1px at 27% 12%, rgba(157,126,209,.9), transparent),
    radial-gradient(1px 1px at 41% 28%, rgba(255,255,255,.55), transparent),
    radial-gradient(2px 2px at 52% 8%, rgba(255,255,255,.8), transparent),
    radial-gradient(1px 1px at 63% 22%, rgba(255,255,255,.45), transparent),
    radial-gradient(1.5px 1.5px at 74% 14%, rgba(157,126,209,.75), transparent),
    radial-gradient(1px 1px at 86% 31%, rgba(255,255,255,.7), transparent),
    radial-gradient(1px 1px at 12% 62%, rgba(255,255,255,.5), transparent),
    radial-gradient(1.5px 1.5px at 33% 71%, rgba(255,255,255,.65), transparent),
    radial-gradient(1px 1px at 48% 58%, rgba(157,126,209,.6), transparent),
    radial-gradient(2px 2px at 69% 66%, rgba(255,255,255,.55), transparent),
    radial-gradient(1px 1px at 81% 54%, rgba(255,255,255,.8), transparent),
    radial-gradient(1px 1px at 93% 72%, rgba(255,255,255,.4), transparent);
  opacity: 0.85;
}

.nx-hero-orbit,
.nx-hero-saturn,
.nx-hero-moon {
  display: none !important;
}

.nx-hero-orbit--a {
  width: min(46rem, 92vw);
  height: min(16rem, 34vw);
}

.nx-hero-orbit--b {
  width: min(58rem, 110vw);
  height: min(20rem, 42vw);
  border-color: rgba(255, 255, 255, 0.08);
  transform: translate(-50%, -50%) rotateX(66deg) rotateZ(-12deg);
}

.nx-hero-saturn {
  position: absolute;
  left: 50%;
  top: 46%;
  width: min(34rem, 86vw);
  height: min(18rem, 46vw);
  transform: translate(-50%, -50%);
}

.nx-hero-saturn__glow {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14rem;
  height: 14rem;
  margin: -7rem 0 0 -7rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(157, 126, 209, 0.28), transparent 68%);
  filter: blur(8px);
}

.nx-hero-saturn__planet {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 9.5rem;
  height: 9.5rem;
  margin: -4.75rem 0 0 -4.75rem;
  border-radius: 50%;
  z-index: 1;
  background: radial-gradient(circle at 32% 28%, #f4ead4 0%, #d4b07a 24%, #a57b3a 48%, #6b4a1e 70%, #1c1108 100%);
  box-shadow: inset -22px -14px 28px rgba(0, 0, 0, 0.55), 0 0 48px rgba(157, 126, 209, 0.22);
}

.nx-hero-saturn__ring {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 22rem;
  height: 6.4rem;
  margin: -3.2rem 0 0 -11rem;
  border-radius: 50%;
  border: 9px solid rgba(214, 196, 158, 0.28);
  border-left-color: rgba(157, 126, 209, 0.45);
  border-right-color: rgba(255, 240, 210, 0.35);
  transform: rotateX(74deg) rotateZ(-16deg);
}

.nx-hero-saturn__ring--back { z-index: 0; opacity: 0.55; }
.nx-hero-saturn__ring--front { z-index: 2; clip-path: inset(50% 0 0 0); border-width: 10px; }

.nx-hero-moon {
  position: absolute;
  top: 18%;
  right: 12%;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #fff, #b9a48a 60%, #5c4c38);
  box-shadow: 0 0 12px rgba(255, 255, 255, 0.35);
  animation: nx-moon 14s linear infinite;
}

@keyframes nx-moon {
  0% { transform: translate(0, 0); opacity: 0.35; }
  40% { opacity: 1; }
  100% { transform: translate(-7rem, 3.5rem); opacity: 0.2; }
}

.nx-hero .nx-badge,
.nx-hero-actions,
.nx-hero-meta {
  display: none !important;
}

.nx-hero h1,
.nx-hero h1 span,
.nx-hero-title {
  margin-top: 0 !important;
  font-family: 'Outfit', 'Inter', system-ui, sans-serif !important;
  font-size: clamp(3.2rem, 9vw, 6.25rem) !important;
  font-weight: 800 !important;
  line-height: 1.02 !important;
  letter-spacing: -0.04em !important;
  color: #ffffff !important;
  background: none !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 8px 40px rgba(9, 9, 9, 0.85) !important;
}

.nx-hero p {
  margin-top: 1.15rem !important;
  max-width: 46rem !important;
  font-size: clamp(1.2rem, 2.6vw, 1.6rem) !important;
  line-height: 1.5 !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  text-shadow: 0 4px 24px rgba(9, 9, 9, 0.9) !important;
}

.nx-section { padding: 2.75rem 0 !important; }
#products.nx-section { padding-top: 1.5rem !important; }
.nx-split-section { padding: 2.5rem 0 !important; }
.nx-footer-grid { padding: 2.25rem 0 !important; gap: 1.5rem !important; }

.nx-faq-section.nx-faq-fab-mode {
  display: none !important;
}

.nx-faq-fab {
  position: fixed;
  right: 1.25rem;
  bottom: 1.25rem;
  z-index: 80;
  width: 3.35rem;
  height: 3.35rem;
  border: 0;
  border-radius: 50%;
  background: #c9adff;
  color: #090909;
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 0 0 4px rgba(201, 173, 255, 0.16), 0 0 28px rgba(201, 173, 255, 0.55);
  display: grid;
  place-items: center;
}

.nx-faq-fab:hover {
  transform: scale(1.04);
  background: #d8c6ff;
  box-shadow: 0 0 0 5px rgba(201, 173, 255, 0.22), 0 0 36px rgba(201, 173, 255, 0.7);
}

.nx-faq-fab.is-open {
  background: #1a1a1a;
  border: 1px solid #c9adff66;
}

.nx-faq-dock {
  position: fixed;
  right: 1.25rem;
  bottom: 5.1rem;
  z-index: 80;
  width: min(22.5rem, calc(100vw - 1.5rem));
  max-height: min(72vh, 34rem);
  overflow: auto;
  padding: 1rem;
  border-radius: 1.05rem;
  border: 1px solid #c9adff55;
  background: #101010;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.5);
  text-align: left;
}

.nx-faq-dock .nx-faq-badge { margin-bottom: 0.65rem; }
.nx-faq-dock .nx-faq-title { font-size: 1.15rem !important; margin-bottom: 0.35rem !important; }
.nx-faq-dock .nx-faq-lead { margin-bottom: 0.85rem !important; font-size: 0.8rem !important; }

#products .nx-section-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  margin-bottom: 2.25rem !important;
}

.nx-products-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.35rem;
  padding: 0.28rem 1rem;
  border-radius: 999px;
  background: #1f1f1f;
  color: #e8e8e8;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.35;
}

#products .nx-section-head h2 {
  display: block !important;
  margin: 0 !important;
  font-size: clamp(2.35rem, 6.5vw, 3.35rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
  line-height: 1.08 !important;
  color: #ffffff !important;
  text-shadow: 0 1px 0 #111, 0 8px 28px rgba(0, 0, 0, 0.55) !important;
}

#products .nx-section-head .nx-section-head__icon {
  display: none !important;
}

#products .nx-section-head p {
  margin: 0.3rem 0 0 !important;
  max-width: none !important;
  color: #9ca3af !important;
  font-size: clamp(1rem, 2.2vw, 1.15rem) !important;
  font-weight: 400 !important;
}

.nx-faq-dock .nx-faq-card__trigger { padding: 0.8rem 0.85rem; }
.nx-faq-dock .nx-faq-help { margin-top: 0.85rem; font-size: 0.78rem; }

.nx-site a:hover {
  color: #fff !important;
}

.nx-site a.nx-btn-primary:hover,
.nx-site a.nx-nav-auth-btn--primary:hover,
.nx-site a.az-btn-primary:hover {
  color: #090909 !important;
}

.nx-split__cta:hover {
  color: #fff !important;
  border-color: #fff !important;
}


.nx-site a.nx-product-card:hover,
.nx-site a.nx-product-card:hover h3,
.nx-site a.nx-product-card:hover p,
.nx-site a.nx-product-card:hover strong,
.nx-site a.nx-product-card:hover small {
  color: inherit;
}

.nx-site a.nx-product-card:hover .nx-product-card__cta {
  color: #090909 !important;
}

.nx-product-card {
  height: auto !important;
  padding: 0.75rem 0.75rem 0.85rem !important;
  overflow: hidden !important;
  border-radius: 0.85rem !important;
  background: #141414 !important;
  border: 1px solid #2a2a2a !important;
  box-shadow: none !important;
}

.nx-product-thumb,
.nx-product-thumb-image {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
  border-radius: 0.75rem !important;
  overflow: hidden !important;
}

.nx-product-thumb img,
.nx-product-card img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.nx-product-body {
  padding: 0.85rem 0.2rem 0.1rem !important;
}

.nx-product-identity {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  min-width: 0;
}

.nx-product-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0;
  color: #c9adff;
  background:
    radial-gradient(circle at 50% 20%, rgba(201, 173, 255, 0.28), transparent 62%),
    #1a1a1a;
  border: 1px solid rgba(201, 173, 255, 0.28);
  line-height: 0;
}
.nx-product-icon svg {
  display: block;
  width: 18px;
  height: 18px;
  margin: 0;
}

.nx-product-top h3 {
  margin: 0 !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  color: #fff !important;
  line-height: 1.25 !important;
}

.nx-product-top h3 span {
  background: none !important;
  color: #c9adff !important;
  -webkit-text-fill-color: #c9adff !important;
}

.nx-site a.nx-product-card:hover .nx-product-top h3 span {
  color: #c9adff !important;
  -webkit-text-fill-color: #c9adff !important;
}

.nx-product-top small {
  display: inline-flex !important;
  margin-top: 0.28rem !important;
  padding: 0.12rem 0.45rem !important;
  border-radius: 999px !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase;
  color: #8d8d92 !important;
  background: #1a1a1a !important;
  border: 1px solid #2a2a2a;
}

.nx-product-desc {
  margin-top: 0.6rem !important;
  font-size: 0.78rem !important;
  line-height: 1.45 !important;
  color: #8d8d92 !important;
}

.nx-product-foot strong {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #fff !important;
}

.nx-product-card__cta,
.nx-product-card .nx-btn-primary {
  background: #c9adff !important;
  color: #090909 !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 0.5rem 1rem !important;
  min-height: 0;
  font-weight: 600 !important;
  box-shadow: none;
}

.nx-status-pill:not(.offline),
.nx-status-pill--ok {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
  border: 1px solid rgba(74, 222, 128, 0.42) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #4ade80 !important;
  font-weight: 600 !important;
  padding: 0.28rem 0.7rem 0.28rem 0.55rem !important;
}

.nx-status-pill:not(.offline)::before,
.nx-status-pill--ok::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 8px #4ade80;
}

.ua-app[data-ua-hash] .ua-side-link.active:not(#ua-nav-settings):not(#ua-nav-gameplays) {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: #b8b8b8 !important;
}
.ua-app[data-ua-hash] .ua-side-link.active:not(#ua-nav-settings):not(#ua-nav-gameplays) .ua-side-link__icon {
  background: #ffffff06 !important;
  color: #888 !important;
  box-shadow: none !important;
}
.ua-app[data-ua-hash="configuracoes"] #ua-nav-settings,
.ua-app[data-ua-hash="gameplays"] #ua-nav-gameplays {
  background: rgba(201, 173, 255, 0.12) !important;
  color: #fff !important;
  border-color: rgba(201, 173, 255, 0.2) !important;
  box-shadow: inset 3px 0 0 var(--nx-primary) !important;
}
.ua-app[data-ua-hash="configuracoes"] #ua-nav-settings .ua-side-link__icon,
.ua-app[data-ua-hash="gameplays"] #ua-nav-gameplays .ua-side-link__icon {
  background: rgba(201, 173, 255, 0.2) !important;
  color: var(--nx-primary) !important;
}
.ua-extra-head span {
  display: block;
  font-size: 11px;
  letter-spacing: 0.12em;
  color: #8d8d92;
  margin-bottom: 6px;
}
.ua-extra-head h1 {
  margin: 0 0 6px;
  font-size: 1.35rem;
  color: #fff;
}
.ua-extra-head p,
.ua-muted {
  color: #8d8d92;
}
.ua-gameplays-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 16px;
}
@media (min-width: 860px) {
  .ua-gameplays-grid { grid-template-columns: 1fr 1fr; }
}
.ua-gameplay-card { padding: 12px; }
.ua-gameplay-card h3 { margin: 10px 4px 2px; font-size: 0.95rem; color: #fff; }
.ua-gameplay-card__frame {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 12px;
  background: #0a0a0a;
}
.ua-gameplay-card__frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.ua-loyalty-progress__fill {
  background: linear-gradient(90deg, #b08aff, #c9adff) !important;
}

.nx-demo-hint {
  margin: 0 0 14px !important;
  padding: 10px 12px !important;
  border-radius: 8px !important;
  border: 1px solid #ffffff18 !important;
  background: #ffffff08 !important;
  font-size: 11px !important;
  color: #8d8d92 !important;
  line-height: 1.5 !important;
  display: block !important;
}
.nx-demo-hint strong { color: #fff !important; font-weight: 600 !important; }

.az-login .nx-auth-split,
.az-login .az-auth-wide {
  width: min(860px, 100%) !important;
  max-width: 860px !important;
  margin: 0 auto;
}
.az-login-card.nx-auth-split__panel {
  max-width: none !important;
  width: 100% !important;
}

@media (max-width: 860px) {
  .ua-main { order: -1; }
  .ua-shell {
    display: flex !important;
    flex-direction: column;
  }
  .ua-side {
    min-height: 0 !important;
  }
  .az-login {
    padding: 5.5rem 12px 2rem !important;
  }
  .az-login-card {
    max-width: 100% !important;
  }
}

