.nx-legal-modal{
  position:fixed;inset:0;z-index:750;display:none;align-items:center;justify-content:center;
  padding:24px;background:rgba(2,7,14,.78);backdrop-filter:blur(12px)
}
.nx-legal-modal.open{display:flex}
.nx-legal-card{
  width:min(760px,96vw);max-height:84vh;overflow:auto;border:1px solid #3b4e69;
  border-radius:20px;background:#0d1728;box-shadow:0 30px 90px #000b
}
.nx-legal-head{
  position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:17px 18px;border-bottom:1px solid #24344d;background:#0d1728
}
.nx-legal-head h3{margin:0;font-size:17px}
.nx-legal-head button{
  width:36px;height:36px;border:1px solid #344862;border-radius:9px;background:#101a2b;color:#fff;cursor:pointer
}
.nx-legal-body{padding:20px;color:#b4c0cf;font-size:12px;line-height:1.75}
.nx-legal-body h1,.nx-legal-body h2,.nx-legal-body h3{color:#fff}
.nx-member-route{
  display:none;
  min-height:calc(100vh - var(--header));
  padding:34px 2.3vw 48px;
}
.page.nx-route-mode > .hero,
.page.nx-route-mode > .news-strip,
.page.nx-route-mode > .section,
.page.nx-route-mode > .standard-game-section,
.page.nx-route-mode > .cms-photo-showcase{
  display:none !important;
}
.page.nx-route-mode .nx-member-route{display:block}
.nx-route-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:18px;
  margin-bottom:18px
}
.nx-route-head h1{margin:0;font-size:34px;letter-spacing:-1px}
.nx-route-head p{margin:6px 0 0;color:#8293aa;font-size:11px}
.nx-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.nx-route-card{
  min-height:112px;border:1px solid #2f425d;border-radius:15px;
  background:linear-gradient(145deg,#111d31,#0c1525);padding:14px
}
.nx-route-card b{display:block;font-size:12px;margin-bottom:7px}
.nx-route-card span{display:block;color:#8d9db3;font-size:10px;line-height:1.55}
.nx-route-empty{
  border:1px dashed #31445f;border-radius:15px;padding:34px;text-align:center;
  color:#8293aa;font-size:11px
}
.nx-route-actions{display:flex;gap:8px;flex-wrap:wrap}
.nx-route-actions button{
  border:1px solid #425572;border-radius:10px;background:#15233a;color:#fff;
  padding:10px 14px;font-size:10px;font-weight:900;cursor:pointer
}
.nx-route-actions button.primary{background:#f3f6fa;color:#101522;border-color:#f3f6fa}
@media(max-width:1280px){.nx-route-grid{grid-template-columns:1fr 1fr}}


/* R12 — MEMBER CASINO PAGE */
.nx-casino-page{display:none}
.page.nx-route-mode .nx-casino-page{display:none}
.page.nx-route-mode.nx-casino-mode .nx-casino-page{display:block}
.page.nx-route-mode.nx-casino-mode .nx-route-head,
.page.nx-route-mode.nx-casino-mode #nxRouteContent{display:none!important}

.nx-casino-hero{
  width:100%;
  height:310px;
  border:1px solid rgba(57,76,104,.78);
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(145deg,#172941,#0b1423);
  margin-bottom:14px;
  position:relative;
}
.nx-casino-hero img{
  width:100%;height:100%;display:block;object-fit:cover;
}
.nx-casino-filter{
  display:flex;
  align-items:center;
  gap:9px;
  padding:11px;
  margin-bottom:14px;
  border:1px solid rgba(50,69,96,.8);
  border-radius:15px;
  background:linear-gradient(180deg,#101b2e,#0c1525);
}
.nx-casino-filter select{
  min-width:180px;
  height:42px;
  border:1px solid #354a66;
  border-radius:10px;
  background:#0a1423;
  color:#e7edf5;
  padding:0 12px;
  outline:none;
  font-size:10px;
  font-weight:800;
}
.nx-casino-filter select:focus{border-color:#5b7394}
.nx-casino-count{
  margin-left:auto;
  color:#8496ad;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}
.nx-slot-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:11px;
}
.nx-slot-card{
  min-width:0;
  border:1px solid #2f425d;
  border-radius:15px;
  overflow:hidden;
  background:#0e1829;
  transition:transform .18s ease,border-color .18s ease;
}
.nx-slot-card:hover{
  transform:translateY(-2px);
  border-color:#4c6485;
}
.nx-slot-image{
  aspect-ratio:1/1.18;
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,#20334f,#101a2c);
}
.nx-slot-image img{
  width:100%;height:100%;display:block;object-fit:cover;
}
.nx-slot-body{padding:10px}
.nx-slot-title{
  min-height:30px;
  margin:0 0 9px;
  color:#f1f4f8;
  font-size:11px;
  line-height:1.35;
  font-weight:900;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.nx-slot-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}
.nx-slot-actions button{
  height:36px;
  border-radius:9px;
  font-size:9px;
  font-weight:950;
  cursor:pointer;
}
.nx-play-btn{
  border:1px solid #edf2f7;
  background:#edf2f7;
  color:#101522;
}
.nx-demo-btn{
  border:1px solid #405571;
  background:#142239;
  color:#d9e2ed;
}
.nx-casino-empty{
  grid-column:1/-1;
  min-height:180px;
  border:1px dashed #31445f;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#8293aa;
  font-size:11px;
}
@media(max-width:1500px){
  .nx-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1200px){
  .nx-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nx-casino-filter{flex-wrap:wrap}
  .nx-casino-count{width:100%;margin-left:0}
}


/* R13 — LIVE CASINO PAGE */
.nx-live-page{display:none}
.page.nx-route-mode.nx-live-mode .nx-live-page{display:block}
.page.nx-route-mode.nx-live-mode .nx-route-head,
.page.nx-route-mode.nx-live-mode #nxRouteContent{display:none!important}


/* R14 — 20/page pagination + Sportsbook/Racing full middle iframe */
.nx-pager{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex-wrap:wrap;
  padding:18px 0 2px;
}
.nx-pager button{
  min-width:34px;
  height:34px;
  padding:0 10px;
  border:1px solid #344a66;
  border-radius:9px;
  background:#101b2e;
  color:#aebbd0;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.nx-pager button:hover:not(:disabled){
  border-color:#536d92;
  color:#fff;
}
.nx-pager button.active{
  background:#edf2f7;
  border-color:#edf2f7;
  color:#101522;
}
.nx-pager button:disabled{
  opacity:.35;
  cursor:default;
}
.nx-pager .dots{
  color:#71829a;
  font-size:10px;
  padding:0 2px;
}

.nx-iframe-page{
  display:none;
  width:100%;
  background:#050b14;
}
.page.nx-route-mode.nx-iframe-mode #nxMemberRoute{
  padding:0 0 24px !important;
}
.page.nx-route-mode.nx-iframe-mode .nx-route-head,
.page.nx-route-mode.nx-iframe-mode #nxRouteContent,
.page.nx-route-mode.nx-iframe-mode .nx-casino-page,
.page.nx-route-mode.nx-iframe-mode .nx-live-page{
  display:none !important;
}
.page.nx-route-mode.nx-iframe-mode .nx-iframe-page{
  display:block;
}
.nx-product-frame-wrap{
  position:relative;
  width:100%;
  height:calc(100vh - var(--header));
  min-height:720px;
  background:#050b14;
  overflow:hidden;
}
.nx-product-frame{
  width:100%;
  height:100%;
  border:0;
  display:block;
  background:#050b14;
}
.nx-frame-loading{
  position:absolute;
  inset:0;
  z-index:2;
  display:grid;
  place-items:center;
  background:#07101bcc;
  color:#8799b1;
  font-size:11px;
  font-weight:800;
}
.nx-frame-loading.hidden{display:none}
@media(max-width:1280px){
  .nx-product-frame-wrap{min-height:650px}
}


/* R15 — TOURNAMENT + ARENA native middle-area pages */
.nx-competition-page{
  display:none;
  width:100%;
}
.page.nx-route-mode.nx-tournament-mode .nx-tournament-page,
.page.nx-route-mode.nx-arena-mode .nx-arena-page{
  display:block;
}
.page.nx-route-mode.nx-tournament-mode .nx-route-head,
.page.nx-route-mode.nx-tournament-mode #nxRouteContent,
.page.nx-route-mode.nx-arena-mode .nx-route-head,
.page.nx-route-mode.nx-arena-mode #nxRouteContent{
  display:none!important;
}
.nx-comp-hero{
  height:285px;
  border:1px solid #334863;
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(145deg,#1b2e49,#0b1423);
  margin-bottom:14px;
  position:relative;
}
.nx-comp-hero img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.nx-comp-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px;
  border:1px solid #2e425d;
  border-radius:14px;
  background:#0d1728;
  margin-bottom:14px;
}
.nx-comp-tabs{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.nx-comp-tabs button{
  height:38px;
  padding:0 14px;
  border:1px solid #344862;
  border-radius:10px;
  background:#111d31;
  color:#97a8bc;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.nx-comp-tabs button.active{
  background:#eef3f8;
  border-color:#eef3f8;
  color:#101522;
}
.nx-comp-meta{
  margin-left:auto;
  color:#7f91a8;
  font-size:10px;
  font-weight:800;
}
.nx-comp-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}
.nx-comp-card{
  min-height:175px;
  border:1px solid #30445f;
  border-radius:16px;
  background:
    radial-gradient(circle at 85% 15%,rgba(66,91,128,.16),transparent 34%),
    linear-gradient(145deg,#111d31,#0b1423);
  padding:15px;
  display:flex;
  flex-direction:column;
  gap:10px;
  transition:transform .18s ease,border-color .18s ease;
}
.nx-comp-card:hover{
  transform:translateY(-2px);
  border-color:#4b6383;
}
.nx-comp-card h3{
  margin:0;
  font-size:15px;
  line-height:1.35;
}
.nx-comp-card .sub{
  color:#8192aa;
  font-size:10px;
  line-height:1.45;
  min-height:28px;
}
.nx-comp-stats{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}
.nx-comp-stat{
  border:1px solid #293b54;
  border-radius:10px;
  padding:9px 10px;
  background:#0c1627;
}
.nx-comp-stat span{
  display:block;
  color:#70839c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.6px;
  margin-bottom:3px;
}
.nx-comp-stat strong{
  display:block;
  font-size:11px;
  color:#e6edf5;
}
.nx-comp-actions{
  margin-top:auto;
  display:flex;
  gap:7px;
}
.nx-comp-actions button{
  flex:1;
  height:36px;
  border-radius:9px;
  font-size:9px;
  font-weight:950;
  cursor:pointer;
}
.nx-comp-actions .primary{
  background:#edf2f7;
  color:#101522;
  border:1px solid #edf2f7;
}
.nx-comp-actions .secondary{
  background:#142239;
  color:#d7e0eb;
  border:1px solid #3b506c;
}
.nx-comp-empty{
  grid-column:1/-1;
  min-height:170px;
  border:1px dashed #31445f;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#7f91a8;
  font-size:11px;
}
.nx-comp-detail{
  margin-top:14px;
  border:1px solid #2f425d;
  border-radius:16px;
  background:#0c1627;
  overflow:hidden;
}
.nx-comp-detail-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 15px;
  border-bottom:1px solid #23334b;
}
.nx-comp-detail-head h3{margin:0;font-size:15px}
.nx-comp-detail-head button{
  border:1px solid #3a4f6b;
  border-radius:9px;
  background:#121f34;
  color:#d8e1ec;
  height:34px;
  padding:0 11px;
  font-size:9px;
  font-weight:900;
  cursor:pointer;
}
.nx-comp-detail-body{padding:15px}
.nx-comp-list{
  display:grid;
  gap:8px;
}
.nx-comp-row{
  border:1px solid #2c3e58;
  border-radius:11px;
  background:#0e1829;
  padding:11px 12px;
  display:flex;
  align-items:center;
  gap:12px;
}
.nx-comp-row .rank{
  width:34px;height:34px;border-radius:10px;
  border:1px solid #425773;
  display:grid;place-items:center;
  font-size:10px;font-weight:950;
  flex:none;
}
.nx-comp-row .body{min-width:0;flex:1}
.nx-comp-row .body b{display:block;font-size:11px}
.nx-comp-row .body span{display:block;color:#8091a8;font-size:9px;margin-top:3px}
.nx-comp-row .value{font-size:10px;font-weight:900;color:#dce4ee}
.nx-arena-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-bottom:14px;
}
.nx-arena-summary .box{
  border:1px solid #31445f;
  border-radius:14px;
  background:#0e1829;
  padding:13px;
}
.nx-arena-summary .box span{
  display:block;
  color:#70839c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.6px;
  margin-bottom:4px;
}
.nx-arena-summary .box strong{
  display:block;
  font-size:16px;
}
.nx-arena-main-action{
  min-width:150px;
  height:40px;
  border-radius:11px;
  border:1px solid #edf2f7;
  background:#edf2f7;
  color:#101522;
  font-size:10px;
  font-weight:950;
  cursor:pointer;
}
.nx-arena-main-action.leave{
  background:#18263e;
  color:#e2e9f2;
  border-color:#425873;
}
@media(max-width:1450px){
  .nx-comp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1100px){
  .nx-comp-grid{grid-template-columns:1fr}
  .nx-arena-summary{grid-template-columns:1fr 1fr}
  .nx-comp-meta{width:100%;margin-left:0}
}


/* R16 — WHEEL native member page */
.nx-wheel-page{
  display:none;
  width:100%;
}
.page.nx-route-mode.nx-wheel-mode .nx-wheel-page{display:block}
.page.nx-route-mode.nx-wheel-mode .nx-route-head,
.page.nx-route-mode.nx-wheel-mode #nxRouteContent{
  display:none!important;
}
.nx-wheel-hero{
  height:270px;
  border:1px solid #334863;
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(145deg,#1a2d48,#0b1423);
  margin-bottom:14px;
}
.nx-wheel-hero img{
  width:100%;height:100%;display:block;object-fit:cover;
}
.nx-wheel-layout{
  display:grid;
  grid-template-columns:minmax(360px,.95fr) minmax(330px,1.05fr);
  gap:14px;
  align-items:stretch;
}
.nx-wheel-panel{
  border:1px solid #30445f;
  border-radius:18px;
  background:
    radial-gradient(circle at 80% 12%,rgba(77,104,144,.15),transparent 34%),
    linear-gradient(145deg,#101c2f,#0b1423);
  padding:16px;
}
.nx-wheel-rights{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-bottom:14px;
}
.nx-wheel-right-box{
  border:1px solid #2d415b;
  border-radius:13px;
  background:#0b1627;
  padding:11px;
}
.nx-wheel-right-box span{
  display:block;
  color:#71839b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.65px;
  margin-bottom:4px;
}
.nx-wheel-right-box strong{
  display:block;
  font-size:16px;
  line-height:1.2;
}
.nx-wheel-stage{
  min-height:430px;
  display:grid;
  place-items:center;
  position:relative;
}
.nx-wheel-pointer{
  position:absolute;
  top:15px;
  left:50%;
  transform:translateX(-50%);
  width:0;height:0;
  border-left:16px solid transparent;
  border-right:16px solid transparent;
  border-top:28px solid #edf2f7;
  z-index:5;
  filter:drop-shadow(0 6px 12px rgba(0,0,0,.5));
}
.nx-wheel-disc{
  --wheel-rotate:0deg;
  width:min(360px,80vw);
  aspect-ratio:1;
  border-radius:50%;
  position:relative;
  display:grid;
  place-items:center;
  border:10px solid #d9e2ec;
  box-shadow:
    0 0 0 8px #1a2a43,
    0 24px 65px rgba(0,0,0,.5),
    inset 0 0 45px rgba(0,0,0,.25);
  background:
    conic-gradient(
      #263b59 0deg 45deg,
      #15243a 45deg 90deg,
      #314967 90deg 135deg,
      #192a43 135deg 180deg,
      #3a516e 180deg 225deg,
      #182840 225deg 270deg,
      #2a405e 270deg 315deg,
      #111f34 315deg 360deg
    );
  transform:rotate(var(--wheel-rotate));
}
.nx-wheel-disc.spinning{
  transition:transform 2.9s cubic-bezier(.11,.73,.16,1);
}
.nx-wheel-center{
  width:108px;
  height:108px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:8px solid #1b2c46;
  background:#edf2f7;
  color:#111827;
  text-align:center;
  font-size:10px;
  font-weight:950;
  line-height:1.15;
  letter-spacing:.45px;
  box-shadow:0 10px 30px rgba(0,0,0,.42);
}
.nx-wheel-spin{
  width:100%;
  height:46px;
  margin-top:10px;
  border:1px solid #eef3f8;
  border-radius:12px;
  background:#eef3f8;
  color:#101522;
  font-size:11px;
  font-weight:950;
  cursor:pointer;
}
.nx-wheel-spin:disabled{
  opacity:.42;
  cursor:default;
}
.nx-wheel-selected{
  text-align:center;
  margin-top:9px;
  color:#8597ae;
  font-size:10px;
}
.nx-wheel-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.nx-wheel-section-title h3{
  margin:0;
  font-size:14px;
}
.nx-wheel-section-title span{
  color:#7588a0;
  font-size:9px;
}
.nx-wheel-campaigns{
  display:grid;
  gap:8px;
  margin-bottom:16px;
  max-height:240px;
  overflow:auto;
  scrollbar-width:none;
}
.nx-wheel-campaign{
  display:flex;
  align-items:center;
  gap:11px;
  border:1px solid #2d4059;
  border-radius:12px;
  padding:11px;
  background:#0d1829;
  cursor:pointer;
}
.nx-wheel-campaign:hover,
.nx-wheel-campaign.active{
  border-color:#536d90;
  background:#12213a;
}
.nx-wheel-campaign .icon{
  width:38px;height:38px;
  border-radius:50%;
  border:1px solid #465c79;
  background:conic-gradient(#304766 0 25%,#182942 25% 50%,#3d5573 50% 75%,#14243b 75%);
  flex:none;
}
.nx-wheel-campaign .body{
  min-width:0;
  flex:1;
}
.nx-wheel-campaign .body b{
  display:block;
  font-size:11px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.nx-wheel-campaign .body span{
  display:block;
  margin-top:3px;
  color:#7d8fa6;
  font-size:9px;
}
.nx-wheel-history{
  display:grid;
  gap:7px;
}
.nx-wheel-history-row{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(90px,.7fr) minmax(90px,.7fr);
  gap:10px;
  align-items:center;
  border:1px solid #293c55;
  border-radius:11px;
  background:#0c1728;
  padding:10px 11px;
}
.nx-wheel-history-row b{
  font-size:10px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nx-wheel-history-row span{
  color:#8294ab;
  font-size:9px;
}
.nx-wheel-history-row .reward{
  text-align:right;
  color:#e6edf5;
  font-weight:900;
}
.nx-wheel-empty{
  min-height:130px;
  border:1px dashed #31445f;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#8091a8;
  font-size:10px;
}
.nx-wheel-result{
  display:none;
  margin-top:11px;
  padding:12px;
  border:1px solid #405775;
  border-radius:12px;
  background:#122039;
  text-align:center;
}
.nx-wheel-result.show{display:block}
.nx-wheel-result span{
  display:block;
  color:#8294aa;
  font-size:9px;
  margin-bottom:4px;
}
.nx-wheel-result strong{
  display:block;
  font-size:15px;
}
@media(max-width:1300px){
  .nx-wheel-layout{grid-template-columns:1fr}
  .nx-wheel-stage{min-height:390px}
}


/* R17 — CRASH PAGE + CATEGORY ROUTE ALIASES */
.nx-crash-page{display:none}
.page.nx-route-mode.nx-crash-mode .nx-crash-page{display:block}
.page.nx-route-mode.nx-crash-mode .nx-route-head,
.page.nx-route-mode.nx-crash-mode #nxRouteContent{display:none!important}


/* R18 — category aliases never keep active highlight; parent menu shows the active page */
.nx-category-menu a.active{
  background:transparent !important;
  color:#e2e9f2 !important;
}
.nx-category-menu a:hover{
  background:#18263d !important;
}


/* R20 — compact promo code / bonus engine box */
.promo-box{
  padding:10px !important;
  border-radius:12px !important;
  background:linear-gradient(145deg,#101c2f,#0c1626) !important;
  border-color:#30445f !important;
}
.promo-box .nx-promo-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:7px;
}
.promo-box .nx-promo-title b{
  font-size:10px;
  letter-spacing:.2px;
}
.promo-box .nx-promo-title span{
  color:#71839b;
  font-size:8px;
  font-weight:800;
}
.promo-box .nx-promo-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:7px;
}
.promo-box input{
  width:100% !important;
  height:36px !important;
  margin:0 !important;
  padding:0 10px !important;
  border-radius:9px !important;
  font-size:9px !important;
  font-weight:800 !important;
  text-transform:uppercase;
}
.promo-box .nx-promo-apply{
  height:36px;
  min-width:72px;
  padding:0 11px !important;
  border-radius:9px !important;
  font-size:9px !important;
}
.promo-box .nx-promo-status{
  min-height:14px;
  margin-top:6px;
  color:#7f91a8;
  font-size:8px;
  line-height:1.4;
}
.promo-box .nx-promo-status.success{color:#a8c3a2}
.promo-box .nx-promo-status.error{color:#d7a8a8}
.promo-actions{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:6px !important;
  margin-top:7px !important;
}
.promo-actions .bonus{
  height:34px !important;
  border-radius:9px !important;
  font-size:9px !important;
}
.bonus-engine{
  padding:10px !important;
  border-radius:12px !important;
}
.bonus-engine h4{
  font-size:11px !important;
  margin-bottom:3px !important;
}
.bonus-engine p{
  font-size:8px !important;
  line-height:1.4 !important;
  margin-bottom:8px !important;
}
.bonus-engine .btn{
  height:34px !important;
  padding:0 10px !important;
  border-radius:9px !important;
  font-size:9px !important;
}


/* R21 — BONUS ENGINE / MEMBER BONUSES */
.nx-bonus-page{display:none;width:100%}
.page.nx-route-mode.nx-bonus-mode .nx-bonus-page{display:block}
.page.nx-route-mode.nx-bonus-mode .nx-route-head,
.page.nx-route-mode.nx-bonus-mode #nxRouteContent{display:none!important}

.nx-bonus-hero{
  height:270px;
  border:1px solid #334863;
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(145deg,#1c2d49,#0b1423);
  margin-bottom:14px;
}
.nx-bonus-hero img{width:100%;height:100%;display:block;object-fit:cover}

.nx-bonus-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px;
  border:1px solid #2f425d;
  border-radius:14px;
  background:#0d1728;
  margin-bottom:14px;
}
.nx-bonus-tabs{display:flex;gap:6px;flex-wrap:wrap}
.nx-bonus-tabs button{
  height:38px;padding:0 14px;
  border:1px solid #344862;border-radius:10px;
  background:#111d31;color:#96a8bd;
  font-size:10px;font-weight:900;cursor:pointer
}
.nx-bonus-tabs button.active{
  background:#eef3f8;border-color:#eef3f8;color:#101522
}
.nx-bonus-meta{
  margin-left:auto;
  color:#7f91a8;font-size:10px;font-weight:800
}

.nx-bonus-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.nx-bonus-card{
  border:1px solid #30445f;
  border-radius:17px;
  overflow:hidden;
  background:linear-gradient(145deg,#101d31,#0b1423);
  min-width:0;
  transition:transform .18s ease,border-color .18s ease;
}
.nx-bonus-card:hover{transform:translateY(-2px);border-color:#506987}
.nx-bonus-image{
  aspect-ratio:16/8.2;
  background:linear-gradient(145deg,#223956,#111d31);
  overflow:hidden
}
.nx-bonus-image img{width:100%;height:100%;display:block;object-fit:cover}
.nx-bonus-card-body{padding:14px}
.nx-bonus-badge{
  display:inline-flex;
  margin-bottom:8px;
  border:1px solid #405571;
  border-radius:999px;
  padding:5px 8px;
  color:#8fa1b8;
  font-size:8px;
  font-weight:900;
}
.nx-bonus-card h3{
  margin:0 0 7px;
  font-size:15px;
  line-height:1.35
}
.nx-bonus-desc{
  color:#8192aa;
  font-size:10px;
  line-height:1.55;
  min-height:31px;
  margin-bottom:11px
}
.nx-bonus-stats{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-bottom:10px
}
.nx-bonus-stat{
  border:1px solid #293c55;
  border-radius:10px;
  background:#0c1728;
  padding:9px
}
.nx-bonus-stat span{
  display:block;
  color:#70839b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.5px;
  margin-bottom:3px
}
.nx-bonus-stat strong{
  display:block;
  font-size:10px;
  color:#e3eaf3;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.nx-bonus-progress-wrap{
  margin:10px 0 12px
}
.nx-bonus-progress-head{
  display:flex;justify-content:space-between;gap:10px;
  margin-bottom:6px;color:#8294aa;font-size:8px;font-weight:850
}
.nx-bonus-progress{
  height:7px;border-radius:999px;background:#17263d;overflow:hidden
}
.nx-bonus-progress i{
  display:block;height:100%;border-radius:999px;background:#dce6ef;width:0%
}
.nx-bonus-actions{
  display:flex;gap:7px
}
.nx-bonus-actions button{
  flex:1;height:37px;border-radius:9px;
  font-size:9px;font-weight:950;cursor:pointer
}
.nx-bonus-primary{
  border:1px solid #eef3f8;background:#eef3f8;color:#101522
}
.nx-bonus-secondary{
  border:1px solid #405571;background:#142239;color:#dbe4ef
}
.nx-bonus-empty{
  grid-column:1/-1;
  min-height:170px;
  border:1px dashed #31445f;
  border-radius:15px;
  display:grid;place-items:center;
  color:#7f91a8;font-size:11px
}
.nx-bonus-detail{
  display:none;
  margin-top:14px;
  border:1px solid #30445f;
  border-radius:16px;
  background:#0c1728;
  overflow:hidden
}
.nx-bonus-detail.open{display:block}
.nx-bonus-detail-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:14px 15px;border-bottom:1px solid #23334b
}
.nx-bonus-detail-head h3{margin:0;font-size:14px}
.nx-bonus-detail-head button{
  height:34px;padding:0 11px;border-radius:9px;
  border:1px solid #3b506c;background:#111e32;color:#dce4ee;
  font-size:9px;font-weight:900;cursor:pointer
}
.nx-bonus-detail-body{padding:15px}
.nx-bonus-detail-row{
  display:flex;justify-content:space-between;gap:16px;
  border-bottom:1px solid #213149;
  padding:10px 0;
  font-size:10px
}
.nx-bonus-detail-row:last-child{border-bottom:0}
.nx-bonus-detail-row span{color:#7f91a8}
.nx-bonus-detail-row strong{text-align:right;color:#e4ebf3}
@media(max-width:1450px){.nx-bonus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.nx-bonus-grid{grid-template-columns:1fr}.nx-bonus-meta{width:100%;margin-left:0}}


/* R22 — promo box only redeems codes; Bonus Merkezi is the single bonus entry */
.promo-box .nx-promo-status{
  margin-bottom:0 !important;
}
.promo-actions{
  display:none !important;
}
.bonus-engine{
  margin-top:10px;
}
.bonus-engine .btn.primary{
  height:36px !important;
  font-size:9px !important;
}


/* R23 — PROMOTIONS native page */
.nx-promotions-page{display:none;width:100%}
.page.nx-route-mode.nx-promotions-mode .nx-promotions-page{display:block}
.page.nx-route-mode.nx-promotions-mode .nx-route-head,
.page.nx-route-mode.nx-promotions-mode #nxRouteContent{display:none!important}

.nx-promotions-hero{
  height:285px;
  border:1px solid #334863;
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(145deg,#1b2e49,#0b1423);
  margin-bottom:14px;
}
.nx-promotions-hero img{
  width:100%;height:100%;display:block;object-fit:cover;
}

.nx-promotions-filter{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px;
  border:1px solid #2f425d;
  border-radius:14px;
  background:#0d1728;
  margin-bottom:14px;
}
.nx-promotions-chips{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.nx-promotions-chips button{
  height:36px;
  padding:0 13px;
  border:1px solid #344862;
  border-radius:10px;
  background:#111d31;
  color:#96a8bd;
  font-size:9px;
  font-weight:900;
  cursor:pointer;
}
.nx-promotions-chips button.active{
  background:#eef3f8;
  border-color:#eef3f8;
  color:#101522;
}
.nx-promotions-count{
  margin-left:auto;
  color:#7f91a8;
  font-size:10px;
  font-weight:800;
}

.nx-promotions-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.nx-promo-card{
  border:1px solid #30445f;
  border-radius:17px;
  overflow:hidden;
  background:linear-gradient(145deg,#101d31,#0b1423);
  min-width:0;
  transition:transform .18s ease,border-color .18s ease;
}
.nx-promo-card:hover{
  transform:translateY(-2px);
  border-color:#506987;
}
.nx-promo-card-image{
  aspect-ratio:16/9;
  overflow:hidden;
  background:linear-gradient(145deg,#223956,#111d31);
}
.nx-promo-card-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.nx-promo-card-body{
  padding:14px;
  display:flex;
  flex-direction:column;
  min-height:180px;
}
.nx-promo-card-type{
  display:inline-flex;
  align-self:flex-start;
  margin-bottom:8px;
  padding:5px 8px;
  border:1px solid #405571;
  border-radius:999px;
  color:#8fa1b8;
  font-size:8px;
  font-weight:900;
}
.nx-promo-card h3{
  margin:0 0 7px;
  font-size:15px;
  line-height:1.35;
}
.nx-promo-card-desc{
  color:#8192aa;
  font-size:10px;
  line-height:1.55;
  margin-bottom:13px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.nx-promo-card-actions{
  margin-top:auto;
}
.nx-promo-card-actions button{
  width:100%;
  height:39px;
  border:1px solid #eef3f8;
  border-radius:10px;
  background:#eef3f8;
  color:#101522;
  font-size:9px;
  font-weight:950;
  cursor:pointer;
}
.nx-promotions-empty{
  grid-column:1/-1;
  min-height:180px;
  border:1px dashed #31445f;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#7f91a8;
  font-size:11px;
}
.nx-promotions-pager{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex-wrap:wrap;
  padding:18px 0 2px;
}
.nx-promotions-pager button{
  min-width:34px;
  height:34px;
  padding:0 10px;
  border:1px solid #344a66;
  border-radius:9px;
  background:#101b2e;
  color:#aebbd0;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.nx-promotions-pager button:hover:not(:disabled){
  border-color:#536d92;
  color:#fff;
}
.nx-promotions-pager button.active{
  background:#edf2f7;
  border-color:#edf2f7;
  color:#101522;
}
.nx-promotions-pager button:disabled{
  opacity:.35;
  cursor:default;
}
.nx-promotions-pager .dots{
  color:#71829a;
  font-size:10px;
  padding:0 2px;
}

@media(max-width:1450px){
  .nx-promotions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1050px){
  .nx-promotions-grid{grid-template-columns:1fr}
  .nx-promotions-count{width:100%;margin-left:0}
}


/* R24 — VIP CLUB unified public workspace */
.nx-vipclub-page{display:none;width:100%}
.page.nx-route-mode.nx-vipclub-mode .nx-vipclub-page{display:block}
.page.nx-route-mode.nx-vipclub-mode .nx-route-head,
.page.nx-route-mode.nx-vipclub-mode #nxRouteContent{display:none!important}

.nx-vipclub-hero{
  height:285px;
  border:1px solid #354b67;
  border-radius:20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 18%,rgba(205,219,236,.12),transparent 33%),
    linear-gradient(145deg,#1c2d48,#0a1423);
  margin-bottom:14px;
}
.nx-vipclub-hero img{
  width:100%;height:100%;display:block;object-fit:cover;
}

.nx-vipclub-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-bottom:14px;
}
.nx-vipclub-summary-card{
  border:1px solid #30445f;
  border-radius:14px;
  background:linear-gradient(145deg,#101d31,#0b1525);
  padding:13px;
  min-height:80px;
}
.nx-vipclub-summary-card span{
  display:block;
  color:#71849c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.6px;
  margin-bottom:5px;
}
.nx-vipclub-summary-card strong{
  display:block;
  color:#e7edf5;
  font-size:16px;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nx-vipclub-summary-card small{
  display:block;
  color:#7f91a8;
  font-size:8px;
  margin-top:5px;
}

.nx-vipclub-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px;
  border:1px solid #2f425d;
  border-radius:14px;
  background:#0d1728;
  margin-bottom:14px;
}
.nx-vipclub-tabs{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.nx-vipclub-tabs button{
  height:38px;
  padding:0 13px;
  border:1px solid #344862;
  border-radius:10px;
  background:#111d31;
  color:#96a8bd;
  font-size:9px;
  font-weight:900;
  cursor:pointer;
}
.nx-vipclub-tabs button.active{
  background:#eef3f8;
  border-color:#eef3f8;
  color:#101522;
}
.nx-vipclub-meta{
  margin-left:auto;
  color:#7f91a8;
  font-size:9px;
  font-weight:800;
}

.nx-vipclub-overview{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.nx-vipclub-panel{
  border:1px solid #30445f;
  border-radius:17px;
  background:
    radial-gradient(circle at 85% 10%,rgba(93,119,155,.13),transparent 35%),
    linear-gradient(145deg,#101d31,#0b1423);
  padding:15px;
}
.nx-vipclub-panel-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:11px;
}
.nx-vipclub-panel-head h3{
  margin:0;
  font-size:14px;
}
.nx-vipclub-panel-head span{
  color:#7d90a8;
  font-size:8px;
  font-weight:850;
}
.nx-vipclub-progress-info{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin:13px 0 8px;
}
.nx-vipclub-progress-info strong{
  font-size:21px;
}
.nx-vipclub-progress-info span{
  color:#7f91a8;
  font-size:9px;
}
.nx-vipclub-progress{
  height:8px;
  border-radius:999px;
  background:#17263d;
  overflow:hidden;
}
.nx-vipclub-progress i{
  display:block;
  height:100%;
  border-radius:999px;
  background:#e0e8f0;
  width:0%;
}
.nx-vipclub-kv{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:11px;
}
.nx-vipclub-kv div{
  border:1px solid #293c55;
  border-radius:10px;
  background:#0c1728;
  padding:9px;
  min-width:0;
}
.nx-vipclub-kv span{
  display:block;
  color:#70839b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.45px;
  margin-bottom:3px;
}
.nx-vipclub-kv strong{
  display:block;
  color:#e4ebf3;
  font-size:10px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.nx-vipclub-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.nx-vipclub-card{
  border:1px solid #30445f;
  border-radius:16px;
  overflow:hidden;
  background:linear-gradient(145deg,#101d31,#0b1423);
  min-width:0;
}
.nx-vipclub-card-image{
  aspect-ratio:16/8.5;
  background:linear-gradient(145deg,#213753,#111d31);
  overflow:hidden;
}
.nx-vipclub-card-image img{
  width:100%;height:100%;display:block;object-fit:cover;
}
.nx-vipclub-card-body{
  padding:13px;
}
.nx-vipclub-badge{
  display:inline-flex;
  border:1px solid #405571;
  border-radius:999px;
  padding:5px 8px;
  color:#8fa1b8;
  font-size:8px;
  font-weight:900;
  margin-bottom:7px;
}
.nx-vipclub-card h3{
  margin:0 0 6px;
  font-size:14px;
}
.nx-vipclub-card-desc{
  color:#8192aa;
  font-size:9px;
  line-height:1.5;
  min-height:28px;
  margin-bottom:10px;
}
.nx-vipclub-mini-progress{
  margin:9px 0 11px;
}
.nx-vipclub-mini-progress .head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:#7f91a8;
  font-size:8px;
  margin-bottom:5px;
}
.nx-vipclub-mini-progress .bar{
  height:6px;
  border-radius:999px;
  background:#17263d;
  overflow:hidden;
}
.nx-vipclub-mini-progress .bar i{
  display:block;height:100%;background:#dfe8f0;border-radius:999px;
}
.nx-vipclub-actions{
  display:flex;
  gap:7px;
}
.nx-vipclub-actions button{
  flex:1;
  height:36px;
  border-radius:9px;
  font-size:9px;
  font-weight:950;
  cursor:pointer;
}
.nx-vipclub-actions .primary{
  border:1px solid #eef3f8;
  background:#eef3f8;
  color:#101522;
}
.nx-vipclub-actions .primary:disabled{
  opacity:.4;
  cursor:default;
}
.nx-vipclub-empty{
  grid-column:1/-1;
  min-height:170px;
  border:1px dashed #31445f;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#7f91a8;
  font-size:10px;
}
.nx-vipclub-history{
  display:grid;
  gap:8px;
}
.nx-vipclub-history-row{
  display:grid;
  grid-template-columns:80px minmax(0,1fr) minmax(130px,.45fr);
  gap:12px;
  align-items:center;
  border:1px solid #2b3e58;
  border-radius:11px;
  background:#0d1829;
  padding:11px 12px;
}
.nx-vipclub-history-row .source{
  display:inline-flex;
  justify-content:center;
  padding:5px 7px;
  border:1px solid #405571;
  border-radius:999px;
  color:#91a2b8;
  font-size:8px;
  font-weight:900;
}
.nx-vipclub-history-row b{
  display:block;
  font-size:10px;
}
.nx-vipclub-history-row span{
  display:block;
  color:#7e90a7;
  font-size:8px;
  margin-top:3px;
}
.nx-vipclub-history-row time{
  color:#899bb0;
  font-size:8px;
  text-align:right;
}
@media(max-width:1450px){
  .nx-vipclub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1150px){
  .nx-vipclub-summary{grid-template-columns:1fr 1fr}
  .nx-vipclub-overview{grid-template-columns:1fr}
  .nx-vipclub-grid{grid-template-columns:1fr}
}


/* R25 — AFFILIATE end-user workspace */
.nx-affiliate-page{display:none;width:100%}
.page.nx-route-mode.nx-affiliate-mode .nx-affiliate-page{display:block}
.page.nx-route-mode.nx-affiliate-mode .nx-route-head,
.page.nx-route-mode.nx-affiliate-mode #nxRouteContent{display:none!important}

.nx-affiliate-hero{
  height:285px;
  border:1px solid #354b67;
  border-radius:20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 75% 20%,rgba(221,231,242,.12),transparent 32%),
    linear-gradient(145deg,#1a2d49,#0a1423);
  margin-bottom:14px;
}
.nx-affiliate-hero img{
  width:100%;height:100%;display:block;object-fit:cover
}

.nx-affiliate-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-bottom:14px;
}
.nx-affiliate-summary-card{
  border:1px solid #30445f;
  border-radius:14px;
  background:linear-gradient(145deg,#101d31,#0b1525);
  padding:13px;
  min-height:82px;
}
.nx-affiliate-summary-card span{
  display:block;
  color:#71849c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.6px;
  margin-bottom:5px;
}
.nx-affiliate-summary-card strong{
  display:block;
  color:#e7edf5;
  font-size:16px;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.nx-affiliate-summary-card small{
  display:block;
  margin-top:5px;
  color:#7f91a8;
  font-size:8px;
}

.nx-affiliate-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px;
  border:1px solid #2f425d;
  border-radius:14px;
  background:#0d1728;
  margin-bottom:14px;
}
.nx-affiliate-tabs{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.nx-affiliate-tabs button{
  height:38px;
  padding:0 13px;
  border:1px solid #344862;
  border-radius:10px;
  background:#111d31;
  color:#96a8bd;
  font-size:9px;
  font-weight:900;
  cursor:pointer;
}
.nx-affiliate-tabs button.active{
  background:#eef3f8;
  border-color:#eef3f8;
  color:#101522;
}
.nx-affiliate-meta{
  margin-left:auto;
  color:#7f91a8;
  font-size:9px;
  font-weight:800;
}

.nx-affiliate-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:12px;
}
.nx-affiliate-panel{
  border:1px solid #30445f;
  border-radius:17px;
  background:
    radial-gradient(circle at 86% 12%,rgba(92,117,151,.13),transparent 34%),
    linear-gradient(145deg,#101d31,#0b1423);
  padding:15px;
}
.nx-affiliate-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.nx-affiliate-panel-head h3{
  margin:0;
  font-size:14px;
}
.nx-affiliate-panel-head span{
  color:#7f91a8;
  font-size:8px;
  font-weight:850;
}
.nx-affiliate-kv{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}
.nx-affiliate-kv div{
  border:1px solid #293c55;
  border-radius:10px;
  background:#0c1728;
  padding:10px;
  min-width:0;
}
.nx-affiliate-kv span{
  display:block;
  color:#70839b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.45px;
  margin-bottom:4px;
}
.nx-affiliate-kv strong{
  display:block;
  color:#e4ebf3;
  font-size:10px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nx-affiliate-copy{
  display:grid;
  grid-template-columns:1fr auto;
  gap:7px;
  margin-top:10px;
}
.nx-affiliate-copy input{
  width:100%;
  height:38px;
  border:1px solid #344862;
  border-radius:10px;
  background:#0b1627;
  color:#dce4ee;
  padding:0 10px;
  font-size:9px;
}
.nx-affiliate-copy button,
.nx-affiliate-action{
  height:38px;
  border-radius:10px;
  border:1px solid #eef3f8;
  background:#eef3f8;
  color:#101522;
  padding:0 13px;
  font-size:9px;
  font-weight:950;
  cursor:pointer;
}
.nx-affiliate-action.secondary{
  border-color:#405571;
  background:#142239;
  color:#dbe4ef;
}
.nx-affiliate-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:12px;
}
.nx-affiliate-actions .nx-affiliate-action{flex:1;min-width:150px}

.nx-affiliate-apply{
  min-height:300px;
  display:grid;
  place-items:center;
  text-align:center;
  border:1px solid #30445f;
  border-radius:18px;
  background:
    radial-gradient(circle at 50% 15%,rgba(121,146,179,.12),transparent 34%),
    linear-gradient(145deg,#101d31,#0b1423);
  padding:28px;
}
.nx-affiliate-apply-inner{max-width:520px}
.nx-affiliate-apply-icon{
  width:68px;height:68px;border-radius:50%;
  display:grid;place-items:center;
  margin:0 auto 14px;
  border:1px solid #4a617f;
  background:#132239;
  font-size:24px
}
.nx-affiliate-apply h2{margin:0 0 8px;font-size:20px}
.nx-affiliate-apply p{
  margin:0 auto 16px;
  color:#8395ac;
  font-size:10px;
  line-height:1.65;
  max-width:430px
}
.nx-affiliate-status{
  display:inline-flex;
  margin-bottom:14px;
  padding:6px 9px;
  border:1px solid #405571;
  border-radius:999px;
  color:#94a6bc;
  font-size:8px;
  font-weight:900;
}

.nx-affiliate-payout{
  max-width:560px;
  border:1px solid #30445f;
  border-radius:17px;
  background:linear-gradient(145deg,#101d31,#0b1423);
  padding:16px;
}
.nx-affiliate-payout h3{margin:0 0 5px;font-size:15px}
.nx-affiliate-payout p{
  margin:0 0 13px;color:#8192aa;font-size:9px;line-height:1.5
}
.nx-affiliate-form-row{
  display:grid;
  grid-template-columns:1fr 120px;
  gap:8px;
}
.nx-affiliate-form-row input{
  width:100%;
  height:42px;
  border:1px solid #344862;
  border-radius:10px;
  background:#0b1627;
  color:#e3eaf3;
  padding:0 11px;
  font-size:10px;
}
.nx-affiliate-form-row button{
  height:42px;
  border:1px solid #eef3f8;
  border-radius:10px;
  background:#eef3f8;
  color:#101522;
  font-size:9px;
  font-weight:950;
  cursor:pointer;
}
.nx-affiliate-note{
  margin-top:8px;
  color:#70839b;
  font-size:8px;
  line-height:1.45;
}
.nx-affiliate-empty{
  min-height:180px;
  border:1px dashed #31445f;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#7f91a8;
  font-size:10px;
}
@media(max-width:1200px){
  .nx-affiliate-summary{grid-template-columns:1fr 1fr}
  .nx-affiliate-grid{grid-template-columns:1fr}
}


/* R26 — Header balance quick dropdown */
.balance-wrap{position:relative}
button.balance-card{
  appearance:none;
  font:inherit;
  color:inherit;
  cursor:pointer;
  text-align:left;
}
button.balance-card:hover{
  border-color:#536b8b !important;
  background:linear-gradient(145deg,#172740,#0f1b2e) !important;
}
button.balance-card[aria-expanded="true"]{
  border-color:#627b9d !important;
  box-shadow:0 0 0 1px rgba(125,150,184,.10),inset 0 1px 0 rgba(255,255,255,.04);
}
.nx-balance-panel{
  display:none;
  position:absolute;
  top:56px;
  right:0;
  width:292px;
  border:1px solid #3a4f6b;
  border-radius:15px;
  background:#0d1728;
  box-shadow:0 22px 50px rgba(0,0,0,.42);
  overflow:hidden;
  z-index:170;
}
.nx-balance-panel.open{display:block}
.nx-balance-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 13px 10px;
  border-bottom:1px solid #223149;
}
.nx-balance-panel-head b{
  font-size:11px;
  letter-spacing:.15px;
}
.nx-balance-refresh{
  width:30px;
  height:30px;
  border:1px solid #334862;
  border-radius:9px;
  background:#121f34;
  color:#9cafc5;
  cursor:pointer;
  font-size:12px;
}
.nx-balance-refresh:hover{color:#fff;border-color:#526b8b}
.nx-balance-list{
  display:grid;
  gap:7px;
  padding:10px;
}
.nx-balance-item{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #2b3e58;
  border-radius:11px;
  background:#0b1627;
  padding:10px;
}
.nx-balance-item-icon{
  width:36px;
  height:36px;
  border-radius:10px;
  border:1px solid #405571;
  background:#14243a;
  display:grid;
  place-items:center;
  flex:none;
  font-size:13px;
  font-weight:900;
}
.nx-balance-item-copy{
  min-width:0;
  flex:1;
}
.nx-balance-item-copy span{
  display:block;
  color:#7588a0;
  font-size:8px;
  font-weight:900;
  letter-spacing:.55px;
  margin-bottom:3px;
}
.nx-balance-item-copy strong{
  display:block;
  color:#e7edf5;
  font-size:14px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nx-balance-panel-foot{
  padding:0 10px 10px;
  color:#667b95;
  font-size:8px;
  line-height:1.4;
}


/* R27 — CASHIER / DEPOSIT / WITHDRAW */
.nx-cashier-page{display:none;width:100%}
.page.nx-route-mode.nx-cashier-mode .nx-cashier-page{display:block}
.page.nx-route-mode.nx-cashier-mode .nx-route-head,
.page.nx-route-mode.nx-cashier-mode #nxRouteContent{display:none!important}

.nx-cashier-hero{
  height:235px;
  border:1px solid #354b67;
  border-radius:20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 77% 22%,rgba(216,228,242,.12),transparent 34%),
    linear-gradient(145deg,#1a2d49,#0a1423);
  margin-bottom:14px;
}
.nx-cashier-hero img{width:100%;height:100%;display:block;object-fit:cover}

.nx-cashier-top{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-bottom:14px;
}
.nx-cashier-stat{
  border:1px solid #30445f;
  border-radius:14px;
  background:linear-gradient(145deg,#101d31,#0b1525);
  padding:13px;
}
.nx-cashier-stat span{
  display:block;color:#71849c;font-size:8px;font-weight:900;letter-spacing:.55px;margin-bottom:5px
}
.nx-cashier-stat strong{
  display:block;font-size:17px;color:#e7edf5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}

.nx-cashier-toolbar{
  display:flex;align-items:center;justify-content:space-between;
  gap:10px;flex-wrap:wrap;
  padding:10px;
  border:1px solid #2f425d;
  border-radius:14px;
  background:#0d1728;
  margin-bottom:14px;
}
.nx-cashier-tabs{display:flex;gap:6px;flex-wrap:wrap}
.nx-cashier-tabs button{
  height:39px;padding:0 15px;
  border:1px solid #344862;border-radius:10px;
  background:#111d31;color:#96a8bd;
  font-size:9px;font-weight:950;cursor:pointer
}
.nx-cashier-tabs button.active{
  background:#eef3f8;border-color:#eef3f8;color:#101522
}
.nx-cashier-meta{color:#7f91a8;font-size:9px;font-weight:800}

.nx-cashier-layout{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
  gap:12px;
}
.nx-cashier-panel{
  border:1px solid #30445f;
  border-radius:17px;
  background:
    radial-gradient(circle at 86% 12%,rgba(92,117,151,.13),transparent 34%),
    linear-gradient(145deg,#101d31,#0b1423);
  padding:15px;
}
.nx-cashier-panel h3{margin:0 0 6px;font-size:14px}
.nx-cashier-panel p{margin:0 0 12px;color:#8192aa;font-size:9px;line-height:1.5}

.nx-cashier-methods{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px;
}
.nx-cashier-method{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:64px;
  border:1px solid #2d415b;
  border-radius:12px;
  background:#0c1728;
  padding:10px;
  cursor:pointer;
  text-align:left;
}
.nx-cashier-method:hover{border-color:#4f6788}
.nx-cashier-method.active{
  border-color:#dce6ef;
  box-shadow:inset 0 0 0 1px rgba(220,230,239,.15);
}
.nx-cashier-method-icon{
  width:40px;height:40px;border-radius:11px;flex:none;
  display:grid;place-items:center;
  border:1px solid #405571;
  background:#14243a;
  overflow:hidden;
}
.nx-cashier-method-icon img{width:100%;height:100%;object-fit:contain}
.nx-cashier-method-copy{min-width:0}
.nx-cashier-method-copy b{
  display:block;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.nx-cashier-method-copy span{
  display:block;color:#7e90a7;font-size:8px;margin-top:3px
}

.nx-cashier-field{margin-top:10px}
.nx-cashier-field label{
  display:block;color:#788ba3;font-size:8px;font-weight:900;letter-spacing:.55px;margin-bottom:5px
}
.nx-cashier-field input,
.nx-cashier-field select{
  width:100%;height:42px;
  border:1px solid #344862;border-radius:10px;
  background:#0b1627;color:#e3eaf3;
  padding:0 11px;font-size:10px
}
.nx-cashier-submit{
  width:100%;height:44px;margin-top:12px;
  border:1px solid #eef3f8;border-radius:11px;
  background:#eef3f8;color:#101522;
  font-size:10px;font-weight:950;cursor:pointer
}
.nx-cashier-submit:disabled{opacity:.45;cursor:default}

.nx-cashier-side-list{display:grid;gap:8px}
.nx-cashier-side-row{
  border:1px solid #293c55;border-radius:11px;background:#0c1728;padding:10px
}
.nx-cashier-side-row span{
  display:block;color:#70839b;font-size:8px;font-weight:900;letter-spacing:.45px;margin-bottom:4px
}
.nx-cashier-side-row strong{
  display:block;color:#e4ebf3;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}

.nx-cashier-history{display:grid;gap:8px}
.nx-cashier-history-row{
  display:grid;
  grid-template-columns:minmax(100px,.8fr) minmax(100px,.7fr) minmax(100px,.65fr) minmax(130px,.8fr) auto;
  gap:10px;align-items:center;
  border:1px solid #2b3e58;border-radius:11px;background:#0d1829;padding:11px 12px
}
.nx-cashier-history-row b{font-size:10px}
.nx-cashier-history-row span{font-size:8px;color:#8192aa}
.nx-cashier-history-row button{
  height:31px;padding:0 9px;border:1px solid #3b506b;border-radius:8px;
  background:#121f34;color:#dce4ee;font-size:8px;font-weight:900;cursor:pointer
}
.nx-cashier-history-row button.cancel{
  border-color:#604452;background:#221923;color:#e0bbc5
}
.nx-cashier-empty{
  min-height:160px;border:1px dashed #31445f;border-radius:15px;
  display:grid;place-items:center;color:#7f91a8;font-size:10px
}
.nx-cashier-detail{
  margin-top:12px;border:1px solid #30445f;border-radius:14px;background:#0c1728;padding:13px
}
.nx-cashier-detail-row{
  display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #213149
}
.nx-cashier-detail-row:last-child{border-bottom:0}
.nx-cashier-detail-row span{color:#7f91a8;font-size:9px}
.nx-cashier-detail-row strong{font-size:9px;text-align:right;color:#e3eaf3}
@media(max-width:1250px){
  .nx-cashier-layout{grid-template-columns:1fr}
}
@media(max-width:900px){
  .nx-cashier-top{grid-template-columns:1fr}
  .nx-cashier-methods{grid-template-columns:1fr}
  .nx-cashier-history-row{grid-template-columns:1fr 1fr}
}



.nx-affiliate-application-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px auto;max-width:620px;text-align:left}.nx-affiliate-application-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700}.nx-affiliate-application-form input,.nx-affiliate-application-form select,.nx-affiliate-application-form textarea{width:100%;box-sizing:border-box;border:1px solid #334b69;background:#08182b;color:#eef5ff;border-radius:9px;padding:10px 11px}.nx-affiliate-application-form label:last-child{grid-column:1/-1}@media(max-width:700px){.nx-affiliate-application-form{grid-template-columns:1fr}}
