/* =========================================================
   NEXORIA ONE — MASTER VISUAL SYSTEM
   Based on the approved NEXORIA Mission Hero reference.
   No legacy V12/V11 palettes are allowed to define the visual language.
   ========================================================= */
:root{
  --nx-navy:#0B1220;
  --nx-deep:#070C15;
  --nx-teal:#18B7A6;
  --nx-mint:#B8F3EA;
  --nx-pink:#F579A3;
  --nx-gold:#FAAD36;
  --nx-violet:#8269DB;
  --nx-blue:#5B6BEA;
  --nx-sky:#2F8FB8;
  --nx-white:#F8FAFF;
  --nx-offwhite:#F5F7F6;
  --nx-grey:#718083;
  --nx-grey-light:#9AA5A2;
  --nx-line:#E1E9E6;
  --nx-error:#D9534F;
  --nx-shadow:0 18px 48px rgba(7,12,21,.09);
  --nx-radius:18px;
}

html,body{background:var(--nx-offwhite);color:var(--nx-navy)}
body{font-family:'DM Sans',sans-serif}
body,button,input,textarea,select{accent-color:var(--nx-teal)}
a{color:var(--nx-teal)!important}
::selection{background:var(--nx-mint);color:var(--nx-deep)}
:focus-visible{outline:2px solid var(--nx-teal)!important;outline-offset:3px}

/* Brand */
.brand,.home-nav .brand{color:var(--nx-white)!important}
.brand b,.home-nav .brand b{color:var(--nx-teal)!important}
.mark,.home-nav .mark{border-color:var(--nx-teal)!important;color:var(--nx-teal)!important;background:transparent!important}
.primary,.btn-teal,.btn-yellow{background:var(--nx-teal)!important;color:var(--nx-deep)!important;border:0!important;box-shadow:0 10px 28px rgba(24,183,166,.22)!important}
.primary:hover,.btn-teal:hover,.btn-yellow:hover{background:#0FA493!important;color:var(--nx-deep)!important;transform:translateY(-2px)}
.btn-outline,.outline-btn,.ghost,.secondary{background:transparent!important;color:var(--nx-teal)!important;border:1px solid var(--nx-teal)!important}
.btn-outline:hover,.outline-btn:hover,.ghost:hover,.secondary:hover{background:var(--nx-mint)!important;color:var(--nx-deep)!important}

/* Home navigation */
body.home .home-nav{background:rgba(7,12,21,.92)!important;border-bottom:1px solid rgba(184,243,234,.12)!important;backdrop-filter:blur(16px)}
body.home .home-nav .navlinks a,body.home .home-nav .login-link{color:rgba(248,250,255,.76)!important}
body.home .home-nav .navlinks a:hover,body.home .home-nav .navlinks a.active{color:var(--nx-white)!important}
body.home .home-nav .navlinks a.active{border-bottom-color:var(--nx-teal)!important}
body.home .nav-burger span{background:var(--nx-white)!important}

/* Approved mission hero: use the supplied reference image as the visual source. */
body.home .v12-hero{background:var(--nx-deep)!important;color:var(--nx-white)!important;padding:0!important;min-height:0!important;border:0!important}
body.home .v12-hero:before,body.home .v12-hero:after,body.home .v12-hero-glow,.v12-hero .hero-particles{display:none!important}
body.home .v12-hero-wrap{display:block!important;max-width:none!important;min-height:0!important;padding:0!important;margin:0!important}
body.home .v12-copy,body.home .v12-path-label,body.home .v12-benefits{display:none!important}
body.home .v12-visual{display:block!important;min-height:0!important;margin:0!important;padding:0!important}
body.home .v12-visual-image{width:100%!important;height:auto!important;max-width:none!important;border-radius:0!important;box-shadow:none!important;background:var(--nx-deep)!important;overflow:hidden!important}
body.home .v12-visual-image img{display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;object-position:center!important}
body.home .v12-visual-image:after{display:none!important}
/* Invisible functional CTA zones over the embedded artwork. */
body.home .v12-visual:after{content:'';position:absolute;z-index:5;left:39.5%;top:29%;width:21%;height:8%;cursor:pointer}

/* Homepage sections */
body.home .strip,body.home .section{background:var(--nx-offwhite)!important;color:var(--nx-navy)!important;border-color:var(--nx-line)!important}
body.home .strip{background:var(--nx-white)!important;border-top:1px solid var(--nx-line)!important;border-bottom:1px solid var(--nx-line)!important}
body.home .strip p,body.home .strip .items span{color:var(--nx-grey)!important}
body.home .section-head h2,body.home .section h2,body.home .trio-card h3,body.home .tool-card h3{color:var(--nx-navy)!important}
body.home .section-head>p:last-child,body.home .tool-card p,body.home .trio-card p,body.home .faq-item p{color:var(--nx-grey)!important}
body.home .eyebrow{color:var(--nx-teal)!important}
body.home .eyebrow:before{background:var(--nx-teal)!important}
body.home .tool-grid{background:transparent!important;border-color:var(--nx-line)!important}
body.home .tool-card,body.home .trio-card,body.home .price-card,body.home .chat-card{background:var(--nx-white)!important;border:1px solid var(--nx-line)!important;box-shadow:var(--nx-shadow)!important}
body.home .tool-card:hover,body.home .trio-card:hover,body.home .price-card:hover{border-color:var(--nx-teal)!important}
body.home .tool-card .ic{background:var(--nx-mint)!important;color:var(--nx-teal)!important}
body.home .tool-card:nth-child(2) .ic{background:#FDE9EF!important;color:var(--nx-pink)!important}
body.home .tool-card:nth-child(3) .ic{background:#EEF0FD!important;color:var(--nx-violet)!important}
body.home .tool-card:nth-child(4) .ic{background:#FFF2DF!important;color:var(--nx-gold)!important}
body.home .tool-card:nth-child(5) .ic{background:#EEE9FB!important;color:var(--nx-violet)!important}
body.home .tool-card:nth-child(6) .ic{background:var(--nx-mint)!important;color:var(--nx-teal)!important}
body.home .split-checks li .tick{background:var(--nx-mint)!important;color:var(--nx-teal)!important}
body.home .bubble.left{background:var(--nx-offwhite)!important;color:var(--nx-navy)!important}
body.home .bubble.right{background:var(--nx-navy)!important;color:var(--nx-white)!important}
body.home .chat-card .who .dot{border-color:var(--nx-teal)!important;color:var(--nx-teal)!important}
body.home .ring-big{background:conic-gradient(var(--nx-teal) 0 75%,var(--nx-mint) 75% 100%)!important}
body.home .step-legend b{background:var(--nx-teal)!important}
body.home .step-legend li:nth-child(2) b{background:var(--nx-violet)!important}
body.home .step-legend li:nth-child(3) b{background:var(--nx-pink)!important}
body.home .step-legend li:nth-child(4) b{background:var(--nx-gold)!important}
body.home .mini-bar{background:var(--nx-offwhite)!important}
body.home .mini-bar .track i{background:var(--nx-teal)!important}
body.home .mini-bar:nth-child(2) .track i{background:var(--nx-violet)!important}
body.home .mini-bar:nth-child(3) .track i{background:var(--nx-gold)!important}
body.home .progress-steps .node.done,body.home .progress-steps .line.done{background:var(--nx-teal)!important;color:var(--nx-deep)!important}
body.home .pricing-section{background:#EAF8F5!important}
body.home .price-card.featured{border-color:var(--nx-teal)!important;box-shadow:0 22px 50px rgba(24,183,166,.15)!important}
body.home .badge-pop{background:var(--nx-teal)!important;color:var(--nx-deep)!important}
body.home .faq-item summary .plus{background:var(--nx-mint)!important;color:var(--nx-teal)!important}
body.home .faq-item[open] summary .plus{background:var(--nx-teal)!important;color:var(--nx-deep)!important}
body.home .home-footer,body.home .footer{background:var(--nx-deep)!important;color:var(--nx-offwhite)!important}

/* Global app shell */
body:not(.home){background:var(--nx-offwhite)!important;color:var(--nx-navy)!important}
.side,.ac-sidebar,.na-sidebar{background:linear-gradient(180deg,var(--nx-deep),var(--nx-navy))!important;color:var(--nx-white)!important;border-right:1px solid rgba(184,243,234,.12)!important}
.navbtn{color:#D4E4E1!important}
.navbtn:hover,.navbtn.active{background:rgba(24,183,166,.18)!important;color:var(--nx-white)!important}
.navbtn span{color:var(--nx-mint)!important}
.side-level{background:rgba(24,183,166,.08)!important;border-color:rgba(184,243,234,.22)!important}
.track{background:rgba(184,243,234,.18)!important}.track i{background:linear-gradient(90deg,var(--nx-teal),var(--nx-mint))!important}
.logout-btn{border-color:rgba(184,243,234,.22)!important;color:#9FBBB7!important}
.top,.topbar,.ac-topbar{background:rgba(248,250,255,.96)!important;border-color:var(--nx-line)!important}
.top h1,.topbar h1,.topbar-left h1{color:var(--nx-navy)!important}
.top p,.topbar p{color:var(--nx-grey)!important}
.avatar,.avatar-top{background:var(--nx-teal)!important;color:var(--nx-deep)!important}

.card,.panel,.stat,.chat-card,.verify-pending,.ac-library-card,.ac-training-card,.ac-exercise-workspace,.ac-empty,.ac-admin-panel,.recommendation-card,.quick-card,.journey-card,.goal-card,.metric-card,.nova-card,.state-card,.state-btn,.routine,.right-card,.price-card{background:var(--nx-white)!important;border-color:var(--nx-line)!important;box-shadow:var(--nx-shadow)!important;color:var(--nx-navy)!important}
.card h1,.card h2,.card h3,.panel h1,.panel h2,.panel h3,.stat b,.ac-library-card h4,.ac-training-card b,.recommendation-card h3,.journey-card h3,.goal-card h3,.metric-card b{color:var(--nx-navy)!important}
.card p,.panel p,.stat span,.ac-library-card p,.ac-training-card small,.ac-exercise-workspace p,.ac-admin-note,.legend,.empty{color:var(--nx-grey)!important}

.banner,.welcome-hero,.bz-hero,.cm-hero,.ct-hero,.pr-hero,.af .hero,.nova-shell .hero{background:linear-gradient(135deg,var(--nx-deep),#103A46 55%,var(--nx-teal))!important;color:var(--nx-white)!important;border:1px solid rgba(184,243,234,.12)!important;box-shadow:0 20px 55px rgba(7,12,21,.18)!important}
.banner h2,.banner p,.bz-hero h1,.bz-hero h2,.cm-hero h1,.cm-hero h2,.ct-hero h1,.ct-hero h2,.pr-hero h1,.pr-hero h2,.af .hero h1,.nova-shell .hero h1{color:var(--nx-white)!important}
.hero-chip,.pill,.hero-eyebrow,.ac-kicker,.pr-hero-top,.bz-hero-top{color:var(--nx-mint)!important}

/* Discovery */
.disco-shell{background:var(--nx-offwhite)!important}
.disco-card{background:var(--nx-white)!important;border-color:var(--nx-line)!important;box-shadow:var(--nx-shadow)!important}
.expedition-bar{background:var(--nx-navy)!important;color:var(--nx-white)!important}
.expedition-id,.expedition-title{color:var(--nx-white)!important}
.waypoint-dot{background:var(--nx-teal)!important;box-shadow:0 0 0 6px rgba(24,183,166,.14)!important}
.levels-track{background:var(--nx-line)!important}.levels-track i{background:var(--nx-teal)!important}

/* Academy */
.ac-page,.ac-main,.ac-wrap{background:var(--nx-offwhite)!important}
.ac-smart-pill,.ac-library-meta span{background:var(--nx-mint)!important;color:var(--nx-teal)!important;border-color:#C9EEE8!important}
.ac-library-card .type,.ac-training-card strong,.ac-admin-status{color:var(--nx-teal)!important}
.ac-filter.active{background:var(--nx-teal)!important;color:var(--nx-deep)!important;border-color:var(--nx-teal)!important}
.ac-exercise-workspace{background:#EFFAF7!important}.ac-exercise-word{background:linear-gradient(135deg,var(--nx-navy),#103A46)!important;color:var(--nx-white)!important}
.ac-exercise-actions button{background:var(--nx-teal)!important;color:var(--nx-deep)!important}

/* Business / community / certification */
.bz-main,.cm-main,.ct-main,.pr-main,.af .main{background:var(--nx-offwhite)!important}
.tab-btn.active,.live-tag,.challenge-banner,.dir-banner{background:var(--nx-mint)!important;color:var(--nx-teal)!important;border-color:#C9EEE8!important}
.live-dot{background:var(--nx-teal)!important}

/* Assistant / NOVA */
.na-main,.na-right,.nova-shell .main,.nova-shell .page{background:var(--nx-offwhite)!important}
.na-main .welcome,.na-main .bubble,.na-right .action,.state-card,.routine{background:var(--nx-white)!important;border-color:var(--nx-line)!important;color:var(--nx-navy)!important}
.na-main .msg.user .bubble{background:var(--nx-navy)!important;color:var(--nx-white)!important}
.na-main .welcome p,.na-main .typing,.na-right .empty-mini{color:var(--nx-grey)!important}
.nova-state.active,.state-btn.active{background:var(--nx-mint)!important;color:var(--nx-teal)!important;border-color:var(--nx-teal)!important}

/* Auth / confirmation */
.auth,.confirm-card{background:linear-gradient(135deg,var(--nx-deep),#103A46 55%,var(--nx-teal))!important}
.auth-card,.confirm-card{background:var(--nx-white)!important;border-color:var(--nx-line)!important;box-shadow:0 25px 70px rgba(7,12,21,.22)!important}
.auth-card h1,.auth-card h2,.confirm-card h1{color:var(--nx-navy)!important}
.auth-card p,.confirm-card p{color:var(--nx-grey)!important}
.auth-card input,.auth-card textarea,.auth-card select{border-color:var(--nx-line)!important;background:#fff!important;color:var(--nx-navy)!important}
.auth-card input:focus{border-color:var(--nx-teal)!important;box-shadow:0 0 0 3px rgba(24,183,166,.15)!important}
.tabs{background:var(--nx-offwhite)!important}.tab{color:var(--nx-grey)!important}.tab.active{background:var(--nx-white)!important;color:var(--nx-navy)!important}
.auth-switch{color:var(--nx-teal)!important}

/* Inline legacy color cleanup on common homepage elements */
body.home [style*="#5b6bea"],body.home [style*="#5B6BEA"]{color:var(--nx-violet)!important;background-color:transparent!important}
body.home [style*="#e08a3a"],body.home [style*="#E08A3A"]{color:var(--nx-gold)!important;background-color:transparent!important}
body.home [style*="#8269db"],body.home [style*="#8269DB"]{color:var(--nx-violet)!important}
body.home [style*="#2fae7c"],body.home [style*="#2FAE7C"]{color:var(--nx-teal)!important}

/* Responsive */
@media(max-width:820px){
  body.home .v12-visual-image img{min-height:0!important;height:auto!important}
  body.home .v12-visual:after{left:36%;top:29%;width:28%;height:9%}
}
body.home .hero-cta-overlay{position:absolute;z-index:6;left:39.5%;top:29%;width:21%;height:8%;display:block;background:transparent;border-radius:999px;text-decoration:none}
@media(max-width:820px){body.home .hero-cta-overlay{left:36%;top:29%;width:28%;height:9%}}
