/* NEXORIA ONE V6 — contrast & readability layer
   Keeps the existing visual identity while preventing low-contrast text. */
:root{
  --muted:#5f6d6a;
  --ink:#142426;
  --line:#d9e4e1;
}

/* Shared controls */
input,textarea,select{color:#17292b;background:#fff}
input::placeholder,textarea::placeholder{color:#687774;opacity:1}
button:disabled{color:#56615f}

/* Forms / feedback */
.form-msg.info{background:#e7f7f3!important;color:#075e57!important;border:1px solid #b7e5dc!important}
.form-msg.error{background:#fff1f0!important;color:#8f1d18!important;border:1px solid #f0c9c5!important}
.field-error{color:#a11d17!important}

/* Dashboard and generic feedback cards */
.empty{color:#5f6d6a}

/* Academy: small text must remain readable on white cards */
.ac-library-card p,.ac-exercise-workspace p,.ac-empty,.ac-training-card small,
.ac-admin-note,.ac-check,.ac-stat span,.ac-panel-head p,.level-body p,.level-count,
.mission-row span,.quick small,.profile-source,.profile-source p{color:#53635f!important}
.ac-filter{color:#53635f!important}
.ac-library-meta span{color:#53635f!important}
.ac-admin-form input,.ac-admin-form select,.ac-admin-form textarea{color:#17292b!important}

/* Assistant chat */
.na-main .welcome p{color:#53645f!important}
.na-main .bubble{color:#1d2a28!important;background:#fff!important}
.na-main .msg.user .bubble{color:#fff!important;background:#062d2b!important}
.na-main .error{color:#8f1d18!important;background:#fff1f0!important;border-color:#efc8c4!important}
.na-main .typing{color:#465653!important}
.na-right .empty-mini,.na-right .mini span{color:#5d6d69!important}
.na-right .action{color:#172927!important}

/* Prevent accidental low-contrast links/buttons in light cards */
.card a:not(.primary),.ac-panel a:not(.next-mission a),.right-card a{color:#08756e}

/* Mobile: preserve readable text sizing */
@media(max-width:680px){
  .na-main .bubble{font-size:13.5px}
  .na-main .welcome p{font-size:13px}
}

/* NEXORIA ONE V7 — final home contrast safeguards */
body.home .tool-card h3,
body.home .trio-card h3,
body.home .price-card h3,
body.home .section-head h2,
body.home .split h2,
body.home .chat-card b { color:#17212b !important; }
body.home .tool-card p,
body.home .trio-card p,
body.home .section-head p,
body.home .split > div > p { color:#59666f !important; }
body.home .split-checks li { color:#25313a !important; }
body.home .hero h1 { color:#f8f7f2 !important; }
body.home .hero h1 .accent { color:#f3c866 !important; }
body.home .hero .lead,
body.home .hero .meta-list { color:#c8d2df !important; }
body.home .hero-float b { color:#f8f7f2 !important; }

/* =========================================================
   NEXORIA ONE V11 — Responsive + Calm Signature Palette
   Palette intentionally restricted to:
   sky blue, rose/pink, yellow, and soothing light neutrals.
   Deep sky-blue is used only for readable text and contrast.
   ========================================================= */
:root{
  --nx-v11-sky:#9EDCF2;
  --nx-v11-sky-deep:#2E6578;
  --nx-v11-sky-soft:#EAF7FC;
  --nx-v11-rose:#F3B7CC;
  --nx-v11-rose-deep:#9B4F6D;
  --nx-v11-rose-soft:#FDF0F5;
  --nx-v11-yellow:#F5D76E;
  --nx-v11-yellow-deep:#8A7016;
  --nx-v11-yellow-soft:#FFF8D9;
  --nx-v11-calm:#F5FAFC;
  --nx-v11-calm-2:#EEF6F8;
  --nx-v11-white:#FFFFFF;
  --nx-v11-ink:#214451;
  --nx-v11-muted:#58707A;
  --nx-v11-line:#D7E8EE;
  --nx-v11-shadow:0 18px 50px rgba(46,101,120,.10);
}

html{overflow-x:hidden;scroll-behavior:smooth}
body{overflow-x:hidden;max-width:100%;color:var(--nx-v11-ink)}
img,video,svg,canvas{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}

/* ---------- Global readable controls ---------- */
button,.btn,.primary,.btn-teal,.next-mission,.ac-library-actions button,.ac-library-actions a{
  background:var(--nx-v11-sky)!important;
  color:var(--nx-v11-ink)!important;
  border-color:var(--nx-v11-sky)!important;
  box-shadow:none!important;
}
button:hover,.btn:hover,.primary:hover,.btn-teal:hover,.next-mission:hover{
  background:var(--nx-v11-yellow)!important;
  color:var(--nx-v11-ink)!important;
  border-color:var(--nx-v11-yellow)!important;
}
.btn-outline,.ghost,.secondary,.ac-library-actions .secondary{
  background:var(--nx-v11-white)!important;
  color:var(--nx-v11-sky-deep)!important;
  border:1px solid var(--nx-v11-line)!important;
}
.btn-outline:hover,.ghost:hover,.secondary:hover{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-sky-deep)!important}
input,textarea,select{border-color:var(--nx-v11-line)!important;color:var(--nx-v11-ink)!important;background:var(--nx-v11-white)!important}
input:focus,textarea:focus,select:focus{border-color:var(--nx-v11-sky)!important;box-shadow:0 0 0 3px rgba(158,220,242,.25)!important;outline:none}
input::placeholder,textarea::placeholder{color:#76909A!important}

/* ---------- Home: single calm palette ---------- */
body.home{background:var(--nx-v11-calm)!important;color:var(--nx-v11-ink)!important}
body.home .home-nav{
  background:rgba(255,255,255,.94)!important;
  border-bottom:1px solid var(--nx-v11-line)!important;
  backdrop-filter:blur(18px);
}
body.home .home-nav .brand{color:var(--nx-v11-ink)!important}
body.home .home-nav .mark{border-color:var(--nx-v11-sky)!important;color:var(--nx-v11-sky-deep)!important;box-shadow:none!important}
body.home .home-nav .navlinks a,
body.home .home-nav .login-link{color:var(--nx-v11-muted)!important}
body.home .home-nav .navlinks a:hover,
body.home .home-nav .navlinks a.active{color:var(--nx-v11-ink)!important}
body.home .home-nav .navlinks a.active{border-bottom-color:var(--nx-v11-rose)!important}
body.home .nav-burger span{background:var(--nx-v11-ink)!important}
body.home .home-nav .btn-teal{background:var(--nx-v11-sky)!important;color:var(--nx-v11-ink)!important}

body.home .hero{
  background:
    radial-gradient(circle at 82% 18%,rgba(243,183,204,.55),transparent 26%),
    radial-gradient(circle at 18% 80%,rgba(158,220,242,.60),transparent 31%),
    radial-gradient(circle at 70% 88%,rgba(245,215,110,.26),transparent 20%),
    var(--nx-v11-calm)!important;
  color:var(--nx-v11-ink)!important;
  border-bottom:1px solid var(--nx-v11-line)!important;
}
body.home .hero:before{
  background:
    linear-gradient(rgba(46,101,120,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(46,101,120,.07) 1px,transparent 1px)!important;
  background-size:72px 72px!important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.6),transparent 92%);
}
body.home .hero:after{background:radial-gradient(circle,rgba(243,183,204,.25),transparent 66%)!important}
body.home .hero-pill{border-color:var(--nx-v11-sky)!important;background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-sky-deep)!important}
body.home .hero h1{color:var(--nx-v11-ink)!important}
body.home .hero h1 .accent{color:var(--nx-v11-rose-deep)!important}
body.home .hero .lead,body.home .hero .meta-list{color:var(--nx-v11-muted)!important}
body.home .hero .btn-teal{background:var(--nx-v11-sky)!important;color:var(--nx-v11-ink)!important}
body.home .hero .btn-teal:hover{background:var(--nx-v11-yellow)!important}

/* Signature visual becomes a light, calm object instead of a dark sci-fi block. */
.signature-visual{min-height:clamp(360px,48vw,600px)}
.signature-frame{
  border-color:var(--nx-v11-line)!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:var(--nx-v11-shadow)!important;
  backdrop-filter:blur(18px);
}
.signature-frame:before{
  background:
    radial-gradient(circle at 50% 45%,rgba(158,220,242,.55),transparent 34%),
    radial-gradient(circle at 82% 15%,rgba(243,183,204,.45),transparent 30%)!important;
}
.signature-topline,.signature-caption{color:var(--nx-v11-muted)!important}
.signature-orbit{border-color:rgba(46,101,120,.18)!important}
.orbit-b{border-color:rgba(243,183,204,.42)!important}
.orbit-c{border-color:rgba(245,215,110,.55)!important}
.signature-n{
  color:var(--nx-v11-ink)!important;
  border-color:rgba(255,255,255,.85)!important;
  background:linear-gradient(145deg,var(--nx-v11-sky),var(--nx-v11-rose))!important;
  box-shadow:0 0 70px rgba(158,220,242,.30),inset 0 0 35px rgba(255,255,255,.40)!important;
}
.signature-core-copy span{color:var(--nx-v11-rose-deep)!important}
.signature-core-copy strong{color:var(--nx-v11-ink)!important}
.signature-data{border-color:var(--nx-v11-line)!important}
.signature-data div+div{border-left-color:var(--nx-v11-line)!important}
.signature-data small{color:var(--nx-v11-muted)!important}
.signature-data b{color:var(--nx-v11-ink)!important}
.signature-chip{background:rgba(255,255,255,.92)!important;border-color:var(--nx-v11-line)!important;color:var(--nx-v11-muted)!important;box-shadow:var(--nx-v11-shadow)!important}
.signature-chip b{color:var(--nx-v11-ink)!important}
.chip-two{border-color:var(--nx-v11-sky)!important}

body.home .strip{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-ink)!important;border-color:var(--nx-v11-line)!important}
body.home .strip p,body.home .strip .items span{color:var(--nx-v11-sky-deep)!important}
body.home .section{background:var(--nx-v11-calm)!important;color:var(--nx-v11-ink)!important}
body.home .section-head .eyebrow,.body.home .eyebrow,.eyebrow{color:var(--nx-v11-sky-deep)!important}
body.home .section-head .eyebrow:before,.body.home .eyebrow:before{background:var(--nx-v11-sky)!important}
body.home .section-head h2,body.home .split h2{color:var(--nx-v11-ink)!important}
body.home .section-head>p:last-child,body.home .split>div>p{color:var(--nx-v11-muted)!important}
body.home .tool-grid,body.home .trio{background:var(--nx-v11-line)!important;border-color:var(--nx-v11-line)!important}
body.home .tool-card,body.home .trio-card{background:var(--nx-v11-white)!important;color:var(--nx-v11-ink)!important}
body.home .tool-card h3,body.home .trio-card h3{color:var(--nx-v11-ink)!important}
body.home .tool-card p,body.home .trio-card p{color:var(--nx-v11-muted)!important}
body.home .tool-card .ic{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-sky-deep)!important}
body.home .tool-card:nth-child(2) .ic{background:var(--nx-v11-rose-soft)!important;color:var(--nx-v11-rose-deep)!important}
body.home .tool-card:nth-child(3) .ic{background:var(--nx-v11-yellow-soft)!important;color:var(--nx-v11-yellow-deep)!important}
body.home .tool-card:after{color:var(--nx-v11-sky-deep)!important}
body.home .tool-card:hover,body.home .trio-card:hover{border-color:var(--nx-v11-sky)!important;background:var(--nx-v11-white)!important}

body.home .section[style*="background:var(--soft)"]{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-ink)!important}
body.home .section[style*="background:var(--soft)"] .split h2{color:var(--nx-v11-ink)!important}
body.home .section[style*="background:var(--soft)"] .split>div>p{color:var(--nx-v11-muted)!important}
body.home .section[style*="background:var(--soft)"] .eyebrow{color:var(--nx-v11-sky-deep)!important}
body.home .section[style*="background:var(--soft)"] .split-checks li{color:var(--nx-v11-ink)!important}
body.home .split-checks li .tick{background:var(--nx-v11-rose-soft)!important;color:var(--nx-v11-rose-deep)!important}

body.home .pricing-section{background:var(--nx-v11-yellow-soft)!important;color:var(--nx-v11-ink)!important}
body.home .pricing-section .section-head h2,body.home .pricing-section .section-head p{color:var(--nx-v11-ink)!important}
body.home .price-card{background:var(--nx-v11-white)!important;border-color:var(--nx-v11-line)!important;color:var(--nx-v11-ink)!important}
body.home .price-card h3,body.home .price-card .amount,body.home .price-card ul li{color:var(--nx-v11-ink)!important}
body.home .price-card .plan-name,body.home .price-card .amount span{color:var(--nx-v11-muted)!important}
body.home .price-card.featured{border-color:var(--nx-v11-yellow)!important;box-shadow:0 18px 40px rgba(138,112,22,.12)!important}
body.home .badge-pop{background:var(--nx-v11-yellow)!important;color:var(--nx-v11-ink)!important}
body.home .faq-item{border-color:var(--nx-v11-line)!important}
body.home .faq-item summary{color:var(--nx-v11-ink)!important}
body.home .faq-item summary .plus{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-sky-deep)!important}
body.home .faq-item[open] summary .plus{background:var(--nx-v11-rose)!important;color:var(--nx-v11-ink)!important}
body.home .faq-item p{color:var(--nx-v11-muted)!important}

/* ---------- Global application surfaces ---------- */
.card,.panel,.stat,.price-card,.chat-card,.verify-pending,.ac-library-card,.ac-training-card,.ac-exercise-workspace,.ac-empty,.ac-admin-panel{
  border-color:var(--nx-v11-line)!important;
  box-shadow:0 10px 30px rgba(46,101,120,.06)!important;
}
.card,.panel,.stat,.chat-card,.verify-pending,.ac-library-card,.ac-training-card,.ac-empty{background:var(--nx-v11-white)!important}
.card h1,.card h2,.card h3,.panel h1,.panel h2,.panel h3,.stat b,.ac-library-card h4,.ac-training-card b,.ac-exercise-workspace h4{color:var(--nx-v11-ink)!important}
.card p,.panel p,.stat span,.ac-library-card p,.ac-training-card small,.ac-exercise-workspace p,.ac-admin-note{color:var(--nx-v11-muted)!important}

/* Dashboard / app shell */
.side{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-ink)!important;border-right:1px solid var(--nx-v11-line)!important}
.side a{color:var(--nx-v11-sky-deep)!important}
.side a.active,.side a:hover{background:var(--nx-v11-rose-soft)!important;color:var(--nx-v11-rose-deep)!important}
.top{background:rgba(255,255,255,.96)!important;border-bottom-color:var(--nx-v11-line)!important}
.top h1{color:var(--nx-v11-ink)!important}.top p{color:var(--nx-v11-muted)!important}
.avatar{background:var(--nx-v11-yellow)!important;color:var(--nx-v11-ink)!important}
.banner{background:linear-gradient(135deg,var(--nx-v11-sky),var(--nx-v11-rose))!important;color:var(--nx-v11-ink)!important}
.banner h2,.banner p{color:var(--nx-v11-ink)!important}

/* Assistant */
.na-main .welcome,.na-main .bubble{background:var(--nx-v11-white)!important;color:var(--nx-v11-ink)!important;border-color:var(--nx-v11-line)!important}
.na-main .msg.user .bubble{background:var(--nx-v11-sky)!important;color:var(--nx-v11-ink)!important}
.na-main .welcome h1,.na-main .welcome h2{color:var(--nx-v11-ink)!important}
.na-main .welcome p,.na-main .typing{color:var(--nx-v11-muted)!important}
.na-right .action{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-ink)!important;border-color:var(--nx-v11-line)!important}

/* Academy */
.ac-smart-pill{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-sky-deep)!important;border-color:var(--nx-v11-line)!important}
.ac-library-card .type{color:var(--nx-v11-sky-deep)!important}
.ac-library-meta span{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-sky-deep)!important}
.ac-filter{background:var(--nx-v11-white)!important;color:var(--nx-v11-muted)!important;border-color:var(--nx-v11-line)!important}
.ac-filter.active{background:var(--nx-v11-rose)!important;color:var(--nx-v11-ink)!important;border-color:var(--nx-v11-rose)!important}
.ac-exercise-workspace{background:var(--nx-v11-sky-soft)!important}
.ac-exercise-word{background:linear-gradient(135deg,var(--nx-v11-sky),var(--nx-v11-rose))!important;color:var(--nx-v11-ink)!important}
.ac-exercise-result,.ac-admin-status{color:var(--nx-v11-sky-deep)!important}

/* NOVA */
.nova-state,.state-btn,.nova-card{border-color:var(--nx-v11-line)!important}
.nova-state.active,.state-btn.active{background:var(--nx-v11-sky-soft)!important;color:var(--nx-v11-sky-deep)!important;border-color:var(--nx-v11-sky)!important}

/* Authentication / confirmation */
.auth-card,.confirm-card{background:var(--nx-v11-white)!important;border-color:var(--nx-v11-line)!important}
.confirm-icon{background:var(--nx-v11-rose-soft)!important;color:var(--nx-v11-rose-deep)!important}
.auth-card h1,.auth-card h2,.confirm-card h1{color:var(--nx-v11-ink)!important}
.auth-card p,.confirm-card p{color:var(--nx-v11-muted)!important}

/* ---------- Responsive rules: phone first, then tablet ---------- */
.wrap{width:100%;box-sizing:border-box}
@media(max-width:1200px){
  .wrap{padding-left:28px!important;padding-right:28px!important}
  body.home .hero .wrap{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:38px}
  body.home .hero h1{font-size:clamp(42px,5.7vw,72px)}
  .signature-frame{max-width:500px}
}
@media(max-width:900px){
  .wrap{padding-left:22px!important;padding-right:22px!important}
  body.home .hero{padding:55px 0 65px}
  body.home .hero .wrap{grid-template-columns:1fr;gap:30px}
  body.home .hero h1{font-size:clamp(42px,9vw,66px);max-width:760px}
  .signature-visual{min-height:420px}
  .signature-frame{width:min(100%,500px);transform:none}
  .signature-chip{display:none}
  .strip .wrap{grid-template-columns:1fr;gap:18px}
  .strip .items{grid-template-columns:repeat(2,1fr)}
  .section{padding:68px 0!important}
  .faq-wrap{grid-template-columns:1fr!important;gap:35px!important}
}
@media(max-width:680px){
  .wrap{padding-left:17px!important;padding-right:17px!important}
  body.home .home-nav .wrap{min-height:64px!important;gap:10px}
  body.home .home-nav .brand{font-size:16px}
  body.home .home-nav .right{gap:8px}
  body.home .home-nav .btn-teal{padding:10px 13px!important;font-size:12px!important}
  body.home .hero{min-height:auto!important;padding:42px 0 52px}
  body.home .hero h1{font-size:clamp(34px,10.5vw,52px)!important;line-height:1.01!important;letter-spacing:-.045em!important;margin:18px 0 18px!important}
  body.home .hero .lead{font-size:14px!important;line-height:1.68!important}
  body.home .hero .meta-list{font-size:10px!important;gap:10px!important}
  .hero-visual{padding-top:8px!important}
  .hero-mock{margin-right:0!important}
  .signature-visual{min-height:330px}
  .signature-frame{padding:14px!important;border-radius:24px!important}
  .signature-core{height:230px!important}
  .signature-n{width:105px!important;height:105px!important;font-size:58px!important}
  .orbit-a{width:190px!important;height:105px!important}.orbit-b{width:235px!important;height:145px!important}.orbit-c{width:135px!important;height:210px!important}
  .signature-core-copy strong{font-size:20px!important}
  .signature-data{padding:10px 0!important}
  .signature-data small{font-size:7px!important}.signature-data b{font-size:9px!important}
  .signature-caption{font-size:9.5px!important}
  .strip{padding:30px 0!important}.strip .items{grid-template-columns:1fr!important;gap:12px!important}
  body.home .section-head{margin-bottom:30px!important}
  body.home .section-head h2,body.home .split h2{font-size:clamp(31px,9vw,44px)!important;line-height:1.04!important}
  body.home .section-head p,body.home .split>div>p{font-size:14px!important}
  body.home .tool-grid,body.home .trio{grid-template-columns:1fr!important}
  body.home .tool-card,.body.home .trio-card{min-height:210px!important;padding:24px!important}
  .price-grid{grid-template-columns:1fr!important}
  .price-card{padding:22px!important}
  .faq-item summary{font-size:14px!important;gap:14px}
  .faq-item p{font-size:13px!important}
  .page{padding:20px 16px 70px!important}
  .top{padding:0 16px!important;height:68px!important}
  .top h1{font-size:19px!important}
  .stat-grid{grid-template-columns:1fr!important}
  .ac-library-grid,.ac-training-grid,.ac-admin-form{grid-template-columns:1fr!important}
  .ac-library-card{min-height:0!important}
  .ac-library-filters{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:4px}
  .ac-filter{white-space:nowrap}
}
@media(max-width:420px){
  body.home .home-nav .brand span{display:none}
  body.home .home-nav .btn-teal{padding:9px 11px!important;font-size:11px!important}
  body.home .hero h1{font-size:33px!important}
  body.home .hero .btn{width:100%;justify-content:center;box-sizing:border-box}
  .signature-core-copy{right:4px;bottom:0}
  .signature-core-copy strong{font-size:17px!important}
  .signature-core-copy span{font-size:7px!important}
}

/* Avoid animation-induced overflow and respect accessibility preferences. */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
