/* NexoPlay V4 visual + UX fixes */
:root{
  --nx-bg:#f6f8fc;
  --nx-surface:#ffffff;
  --nx-surface-2:#eef3f9;
  --nx-ink:#172844;
  --nx-ink-soft:#526783;
  --nx-line:rgba(36,65,104,.12);
  --nx-primary:#5d55f5;
  --nx-primary-2:#27b8e7;
  --nx-success:#1ea86d;
  --nx-shadow:0 18px 48px rgba(33,61,101,.10);
}

html,body{background:var(--nx-bg)!important;color:var(--nx-ink)!important}
body{background-image:radial-gradient(900px 520px at 0% 0%,rgba(93,85,245,.08),transparent 58%),radial-gradient(760px 460px at 100% 10%,rgba(39,184,231,.08),transparent 60%),linear-gradient(180deg,#f7f9fd 0%,#fff 46%,#f6f9fd 100%)!important}
body:before{display:none!important}

/* Navigation / search: remove dark remnants */
.nav{background:rgba(255,255,255,.94)!important;color:var(--nx-ink)!important;border-bottom:1px solid var(--nx-line)!important;box-shadow:0 8px 28px rgba(30,57,94,.06)!important}
.nav-links a{color:#516681!important}
.nav-links a:hover{color:#162b48!important}
.menu-btn,.cart-btn{background:#fff!important;color:#1d3555!important;border:1px solid var(--nx-line)!important;box-shadow:0 8px 22px rgba(31,58,96,.07)!important}
.side-menu{background:#fff!important;color:var(--nx-ink)!important;border:1px solid var(--nx-line)!important;box-shadow:0 22px 55px rgba(31,58,96,.14)!important}
.side-menu button{color:#243b5b!important}
.side-menu button:hover{background:#f1f5fb!important}
.menu-user{border-bottom-color:var(--nx-line)!important}
.menu-user strong{color:#18304f!important}.menu-user span{color:#71839c!important}
.search-wrap{background:#fff!important;border:1px solid var(--nx-line)!important;box-shadow:0 14px 34px rgba(31,58,96,.07)!important}
.search{background:#fff!important;color:#18304f!important;border:0!important;box-shadow:none!important}
.search::placeholder{color:#8b99ac!important}
.search-icon{color:#5d718d!important}

/* Global light content */
.section-title h2,.category-explorer h3,.info-panel h2,.combo-banner h2,.review-form h3,.reviews-list h3{color:#152d4b!important}
.section-title p,.info-text,.product-info p,.rule p,.review-card p{color:#667a96!important}
.category-explorer,.info-panel,.review-form,.reviews-list,.mini-card,.combo-card,.combo-side,.discover-card{background:rgba(255,255,255,.9)!important;border-color:var(--nx-line)!important;box-shadow:var(--nx-shadow)!important;color:var(--nx-ink)!important}
.category-chip{background:#fff!important;color:#1b3352!important;border-color:var(--nx-line)!important}
.category-chip strong{color:#17304f!important}.category-chip span{color:#6f829b!important}
.category-chip.active{background:linear-gradient(135deg,rgba(93,85,245,.10),rgba(39,184,231,.08))!important;border-color:rgba(93,85,245,.30)!important}
.catalog-tools select,.catalog-tools button{background:#fff!important;color:#233c5e!important;border-color:var(--nx-line)!important;box-shadow:0 7px 18px rgba(30,57,94,.05)!important}
.catalog-tools button.active{background:#eef0ff!important;color:#4e45dc!important;border-color:rgba(93,85,245,.28)!important}
.product{background:linear-gradient(180deg,#fff,#f9fbfe)!important;border-color:var(--nx-line)!important;box-shadow:0 14px 36px rgba(31,58,96,.08)!important}
.product-info h3,.product .price{color:#17304f!important}
.product:hover{border-color:rgba(93,85,245,.28)!important;box-shadow:0 20px 48px rgba(31,58,96,.13)!important}
.product .tag{background:rgba(255,255,255,.92)!important;color:#314866!important;border-color:rgba(36,65,104,.13)!important}
.product .fav-btn{background:#fff!important;color:#314866!important;border-color:var(--nx-line)!important}
.product .status-row .stock-status.ok{color:#1b8f61!important}.product .status-row .stock-status.low{color:#9c6b00!important}.product .status-row .stock-status.out{color:#b6344c!important}

/* Main modals remain light for legibility; admin stays dark below */
.modal,.payment-modal,.auth-modal,.wallet-modal,.distributor-modal,.nx-vip-modal{background:linear-gradient(145deg,#ffffff,#f3f7fc)!important;color:#17304f!important;border-color:var(--nx-line)!important;box-shadow:0 35px 100px rgba(25,50,91,.20)!important}
.modal-head,.payment-modal-head,.auth-head,.wallet-head,.distributor-topbar,.nx-vip-head{border-bottom-color:var(--nx-line)!important}
.modal-head strong,.payment-modal-head h2,.auth-head h2,.wallet-head h2,.nx-vip-head h2{color:#17304f!important}
.panel,.quick-order-card,.quick-modal-empty,.wallet-panel,.review-summary,.rule,.plan{background:#fff!important;color:#1c3554!important;border-color:var(--nx-line)!important}
.panel h3,.wallet-panel h3,.rule strong,.plan-name,.plan-price{color:#183353!important}
.panel .info-text,.quick-order-meta,.quick-order-items,.wallet-muted,.rule p,.plan-desc{color:#6a7e99!important}
.plan:hover,.plan.selected{background:#f1f0ff!important;border-color:rgba(93,85,245,.30)!important}
.plan-stock{background:#edf4fb!important;color:#47617f!important;border-color:#d8e3ef!important}

/* Tutorial: intentionally dark, but with high-contrast text */
#tutorialBg .tutorial-modal{background:linear-gradient(145deg,#111a2a,#0a101b)!important;color:#fff!important;border-color:rgba(255,255,255,.10)!important}
#tutorialBg .tutorial-modal-head{border-bottom-color:rgba(255,255,255,.10)!important}
#tutorialBg .tutorial-modal-head h2,#tutorialBg .tutorial-card h3{color:#fff!important}
#tutorialBg .tutorial-modal-body>.info-text,#tutorialBg .tutorial-card p{color:#dbe7f5!important}
#tutorialBg .tutorial-card{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.12)!important;color:#fff!important}
#tutorialBg .step-number{background:linear-gradient(135deg,#5d55f5,#27b8e7)!important;color:#fff!important}
#tutorialBg .close{background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important}

/* Checkout / cart clarity */
.cart-panel{background:rgba(250,252,255,.985)!important;color:#172e4d!important;border-left:1px solid var(--nx-line)!important}
.cart-extra{background:linear-gradient(145deg,rgba(93,85,245,.07),rgba(39,184,231,.055))!important;border-color:rgba(93,85,245,.14)!important}
.cart-extra-form input,.cart-extra-form textarea{background:#fff!important;color:#18304f!important;border-color:var(--nx-line)!important}
.payment-box-v2,.receipt-box-v2,.order-note-v2{background:#fff!important;border-color:var(--nx-line)!important}
.payment-option,.payment-card-v2{background:#fff!important;color:#29415f!important;border-color:var(--nx-line)!important}
.payment-option.selected{background:#eef0ff!important;border-color:rgba(93,85,245,.32)!important}
.receipt-box-v2 input[type=file]{color:#47617f!important;background:#f7f9fc!important;border:1px dashed var(--nx-line)!important;border-radius:12px!important;padding:8px!important;width:100%!important}
.cart-total-v2{background:linear-gradient(135deg,#fff,#f5f8fc)!important;border-color:var(--nx-line)!important}
.cart-total-v2 strong{color:#17304f!important}
.checkout-v2{min-height:48px!important}
.cart-feedback{position:sticky;top:6px;z-index:3}
.cart-items-v2{max-height:32vh!important}

/* Reviews: remove dark card and increase contrast */
.reviews-list .review-summary{background:linear-gradient(135deg,#f4f7ff,#fff)!important}
.review-summary .review-average,.review-summary .review-stars{color:#5b4ff0!important}
.review-input,.review-textarea{background:#fff!important;color:#18304f!important;border-color:var(--nx-line)!important}
.review-input::placeholder,.review-textarea::placeholder{color:#9a9faf!important}
.review-submit{background:linear-gradient(135deg,#5d55f5,#27b8e7)!important}

/* Public ranks: light; admin panel remains dark */
#nexoRanksBg .np-ranks-page{background:radial-gradient(900px 600px at 8% 0,rgba(93,85,245,.10),transparent 58%),radial-gradient(900px 580px at 100% 2%,rgba(39,184,231,.10),transparent 60%),linear-gradient(180deg,#f8faff,#eef4fb)!important;color:#17304f!important}
#nexoRanksBg .np-rank-card{background:linear-gradient(155deg,#fff,#f3f7fc)!important;color:#17304f!important;border-color:var(--nx-line)!important;box-shadow:0 20px 55px rgba(33,61,101,.10)!important}
#nexoRanksBg .np-rank-card h3,#nexoRanksBg .np-current-name,#nexoRanksBg .np-progress-big{color:#183353!important}
#nexoRanksBg .np-rank-card p,#nexoRanksBg .np-current-meta,#nexoRanksBg .np-rank-duration{color:#6a7e99!important}
#nexoRanksBg .np-benefits li{color:#48617f!important}
#nexoRanksBg .np-rank-progress,#nexoRanksBg .np-rank-current{background:rgba(255,255,255,.8)!important;border-color:var(--nx-line)!important}
#nexoRanksBg .np-current-kicker{color:#6c4dff!important}
#nexoRanksBg .np-rank-card.featured{background:linear-gradient(155deg,#fffdf3,#fff8df)!important;border-color:rgba(204,157,45,.28)!important}

/* Admin intentionally remains dark */
.admin-panel,.admin-modal,.admin-head,.admin-sidebar,.admin-main,.admin-card,.admin-stat,.inventory-table-wrap,.sales-kpi,.np-admin-shell,.np-admin-panel,.np-admin-rank,.nx-admin-extra-card{color:#f5f7fb!important}
.admin-panel{background:rgba(4,6,11,.92)!important}
.admin-modal{background:linear-gradient(145deg,#0b111c,#101927)!important}
.admin-head,.admin-sidebar{background:rgba(8,13,22,.94)!important}
.admin-card,.admin-stat,.inventory-table-wrap,.sales-kpi,.np-admin-panel,.np-admin-rank,.nx-admin-extra-card{background:linear-gradient(145deg,#101827,#0b111b)!important;border-color:rgba(255,255,255,.08)!important}
.admin-nav button{color:#cad5e4!important}.admin-nav button.active{color:#fff!important}

/* Nexo mascot: clearer, expressive, always visible */
.nexo-mascot{width:82px!important;height:82px!important;right:20px!important;bottom:24px!important;filter:drop-shadow(0 16px 28px rgba(49,76,136,.22))!important}
.nexo-mascot-face{inset:5px!important;border-radius:27px!important;background:linear-gradient(145deg,#5d55f5,#27b8e7)!important;border-color:#fff!important}
.nexo-mascot-name{font-size:10px!important;padding:4px 8px!important;color:#2b4567!important;background:#fff!important}
.nexo-mascot-tip{background:#fff!important;color:#526783!important;border-color:var(--nx-line)!important}
.nexo-eye{display:inline-block;transition:transform .12s ease}.nexo-mascot.blink .nexo-eye{transform:scaleY(.08)}
.nexo-mouth{transition:transform .18s ease}.nexo-mascot.happy .nexo-mouth{transform:scale(1.15)}.nexo-mascot.think .nexo-mouth{transform:translateY(-2px) rotate(8deg)}
@keyframes nxMascotWave{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(-3deg)}}
.nexo-mascot{animation:nxMascotWave 3.2s ease-in-out infinite!important}

/* Special pages: each gets real visual identity while reusing shared shell */
.page-body{min-height:100vh;background:linear-gradient(180deg,#f7f9fd,#fff 48%,#f3f7fc)!important;color:#172e4d!important}
.page-body .nav{position:sticky;top:0}
.special-page{max-width:1200px;margin:auto;padding:42px 20px 90px}
.special-hero{padding:36px 28px;border-radius:30px;background:linear-gradient(135deg,rgba(93,85,245,.10),rgba(39,184,231,.10),rgba(255,255,255,.78));border:1px solid var(--nx-line);box-shadow:var(--nx-shadow)}
.special-hero h1{font-size:clamp(38px,7vw,68px);margin:8px 0 12px;color:#17304f}.special-hero p{max-width:720px;color:#647a97;line-height:1.7}.special-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.special-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.special-card{padding:20px;border-radius:20px;background:#fff;border:1px solid var(--nx-line);box-shadow:var(--nx-shadow)}.special-card h3{margin:0 0 8px;color:#183353}.special-card p{margin:0;color:#6a7e99;line-height:1.6;font-size:13px}
@media(max-width:760px){.special-grid{grid-template-columns:1fr}.special-page{padding:20px 14px 70px}.special-hero{padding:24px 18px}.nexo-mascot{width:70px!important;height:70px!important;right:12px!important;bottom:74px!important}}
@media(prefers-reduced-motion:reduce){.nexo-mascot,.platform-track{animation:none!important}.nexo-mascot.blink,.nexo-mascot.happy,.nexo-mascot.think .nexo-eye{transform:none!important}}
