/* NOVA-inspired visual system. Loaded last so application markup and APIs stay intact. */
@font-face{font-family:Oxanium;src:url('../fonts/oxanium-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Oxanium;src:url('../fonts/oxanium-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Oxanium;src:url('../fonts/oxanium-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Oxanium;src:url('../fonts/oxanium-700.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Oxanium;src:url('../fonts/oxanium-800.ttf') format('truetype');font-weight:800;font-display:swap}
:root{--bg-primary:#000;--bg-secondary:#111;--bg-card:#292929;--text-primary:#fff;--text-secondary:#aaa;--accent-purple:#a9ffcf;--accent-blue:#63f5ef;--accent-gradient:linear-gradient(110deg,#bbffd0,#63f5ef);--glow-purple:0 0 24px #63f5ef12;--glow-blue:0 0 24px #63f5ef16;--border-glow:#b6ffdc66;--nova-font:Oxanium,Arial,sans-serif;color-scheme:dark}
html{scroll-padding-top:100px}
body.nova-site,body.nova-telegram{background:#000!important;color:#fff;font-family:var(--nova-font)!important}
.nova-site :is(h1,h2,h3,h4,h5,h6,button,input,select,textarea),.nova-telegram :is(h1,h2,h3,h4,button,input,select,textarea){font-family:var(--nova-font)!important}
.nova-site h1,.nova-site h2,.nova-site h3{font-weight:700;letter-spacing:-.025em}
.nova-site :is(button,.btn,.btn__transparent,.nft-action,.admin-btn){transition:background .2s,color .2s,transform .2s,border-color .2s;cursor:pointer}
.nova-site .btn,.nova-site .nft-action,.nova-site .admin-btn{background:var(--accent-gradient)!important;color:#071511!important;border:0;border-radius:3px!important;box-shadow:none!important;font-weight:700}
.nova-site .btn:hover,.nova-site .nft-action:hover,.nova-site .admin-btn:hover{filter:brightness(1.07);transform:translateY(-2px)}
.nova-site .btn__transparent{background:transparent!important;color:#fff!important;border:1px solid #b6ffdc!important;border-radius:3px!important;box-shadow:none!important}
.nova-site .btn__transparent:hover{background:#b6ffdc12!important}
.nova-site :is(input,select,textarea){background:#222;color:#fff;border:1px solid #555;border-radius:6px!important;max-width:100%}
.nova-site :is(input,select,textarea):focus{outline:2px solid #63f5ef;outline-offset:2px}
.nova-site :is(button,a,input,select,textarea):focus-visible{outline:2px solid #63f5ef;outline-offset:4px}
.nova-site .header{position:sticky!important;top:0;z-index:100;min-height:80px;display:flex;gap:26px;padding:20px 32px!important;background:#000e!important;backdrop-filter:blur(14px);width:100%;border-bottom:1px solid #ffffff0a}
.nova-site .header__image{width:174px!important;height:auto!important;flex-shrink:0}
.nova-site .header__nav{gap:24px;margin-right:auto}
.nova-site .header__nav a{font-family:var(--nova-font)!important;font-weight:700;padding:4px 0;font-size:16px;color:#fff;white-space:nowrap}
.nova-site .header__nav a:hover{color:#b6ffdc}
.nova-site .header__nav a:hover:before{display:none}
.nova-site .header__cta{gap:16px}
.nova-site .header__cta>input{width:160px;padding:9px 12px!important;background:#1b1b1b}
.nova-site .header__cta>input+img{display:none}
.nova-site .header__cta a{padding:9px 16px;font-size:13px}
.nova-site .header__balance{padding:8px 12px;background:#1b1b1b;border:1px solid #333;border-radius:5px;flex-wrap:wrap}
.nova-site .balance-amount{color:#b6ffdc!important}
.nova-site .header__hamburger{display:flex!important;flex-direction:column;justify-content:space-between;width:24px;height:18px;cursor:pointer;z-index:102;flex-shrink:0}
.nova-site .header__hamburger span{height:2px;width:24px;background:#fff;transform-origin:2px 1px;transition:transform .2s}
.nova-site .header__overlay{position:absolute!important;top:80px;bottom:auto;left:auto!important;right:24px;width:260px;padding:18px!important;display:none;flex-direction:column;gap:9px;background:#1a1a1a;border:1px solid #333;box-shadow:0 16px 50px #0008;max-height:calc(100dvh - 110px);overflow-y:auto;z-index:101;text-align:left}
.nova-site .header.open .header__overlay{display:flex!important}
.nova-site .header__overlay>a{width:100%;padding:10px;font-size:15px}
.nova-site .header__overlay a:hover{background:#b6ffdc15;color:#b6ffdc}
.nova-site .header__cta__auth--mobile,.nova-site .header__cta__logged-in--mobile{width:100%;align-items:stretch;margin-top:8px}
.nova-site .header__cta__auth--mobile a,.nova-site .header__cta__logged-in--mobile a{width:100%}
.nova-site .page-hero{padding-top:100px;padding-bottom:65px;background:radial-gradient(ellipse at 80% 0,#63f5ef15,transparent 55%)}
.nova-site .page-hero h1{font-size:clamp(36px,5vw,64px);background:var(--accent-gradient);background-clip:text;color:transparent;line-height:1.2}
.nova-site .page-hero p{max-width:720px;line-height:1.7;color:#b8b8b8}
.nova-site .badge-pill,.nova-site .tag-chip{background:#b6ffdc0c;border-color:#b6ffdc55;color:#b6ffdc;border-radius:4px}
.nova-site :is(.glass-card,.faq-item){background:#181818;border:1px solid #444;box-shadow:none;border-radius:8px}
.nova-site .glass-card:hover{border-color:#b6ffdc}
.nova-site .glass-card h3,.nova-site .glass-card h4{color:#fff}
.nova-site .stat-box h3{background:var(--accent-gradient);background-clip:text;color:transparent}
.nova-site .footer{background:#000!important;display:grid;grid-template-columns:minmax(280px,1fr) 1fr;gap:65px;padding-top:90px;padding-bottom:30px;border-top:1px solid #2b2b2b;margin-top:70px}
.nova-site .footer__main{width:auto;max-width:380px}
.nova-site .footer__main>img{width:174px;height:auto}
.nova-site .footer__main p{color:#d0d0d0;font-size:15px;line-height:1.7;margin-top:20px}
.nova-site .footer__main__social{gap:15px;margin-top:24px}
.nova-site .footer__main__social img{width:26px;height:26px;filter:grayscale(1) brightness(2)}
.nova-site .footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.nova-site .footer__links__link{gap:14px}
.nova-site .footer__links__link h4{color:#b6ffdc;font-family:var(--nova-font);font-size:16px;margin-bottom:6px}
.nova-site .footer__links__link a{font-size:14px;color:#eee}
.nova-site .footer__credit{grid-column:1/-1;width:100%;border-top:1px solid #444;padding-top:22px;margin:0;display:flex;justify-content:center;gap:25px;color:#999;font-size:12px}
.nova-site .footer__credit p{font-size:12px}
.nova-site .footer__credit__extra{gap:18px}
.nova-site .sticky-bottom-nav{background:#111f;border-top:1px solid #b6ffdc40;backdrop-filter:blur(12px);box-shadow:none;z-index:110;padding-bottom:env(safe-area-inset-bottom)}
.nova-site .sticky-bottom-nav__item{color:#aaa}
.nova-site .sticky-bottom-nav__item.active,.nova-site .sticky-bottom-nav__item:hover,.nova-site .sticky-bottom-nav__item i{color:#b6ffdc}
/* Existing dashboard and admin controls retain their IDs, events and visibility rules. */
.nova-site :is(.dashboard-header,.explore-header,.admin-header){background:#000!important;border-color:#333!important;box-shadow:none}
.nova-site .dashboard-header,.nova-site .explore-header{backdrop-filter:blur(12px)}
.nova-site :is(.sidebar,.admin-sidebar){background:#141414!important;border-color:#333!important}
.nova-site :is(.card,.stat-card,.transaction-item,.my-balance-box,.my-income-list,.my-team-actions a,.history-box,.balance-card){background:#202020!important;border:1px solid #444!important;border-radius:10px;box-shadow:none!important}
.nova-site .card:hover{border-color:#b6ffdc!important}
.nova-site :is(.nav-link.active,.sidebar-nav a.active,.admin-nav a.active,.stake-subnav__btn.active){background:#b6ffdc!important;color:#071511!important;border-radius:4px;box-shadow:none!important}
.nova-site :is(.card-value.primary,.stat-value,.price-value,.my-income-row strong){color:#b6ffdc!important}
.nova-site :is(.filter-btn,.stake-subnav__btn){border:0!important;border-bottom:2px solid transparent!important;background:transparent!important;color:#aaa!important;border-radius:0!important;padding:12px 18px}
.nova-site :is(.filter-btn.active,.filter-btn:hover){color:#b6ffdc!important;border-bottom-color:#b6ffdc!important;background:transparent!important}
.nova-site :is(.nft-card,.zone-card,.level-card){background:#2a2a2a!important;border:1px solid #444!important;border-radius:14px;box-shadow:none!important;overflow:hidden}
.nova-site .nft-card:hover{border-color:#b6ffdc!important;transform:translateY(-4px)}
.nova-site .nft-image{background:#1b1b1b!important;aspect-ratio:1;min-height:200px;height:auto;border-radius:10px;overflow:hidden;margin:14px 14px 0;width:calc(100% - 28px)}
.nova-site .nft-image img{height:100%!important;aspect-ratio:1;object-fit:cover}
.nova-site .nft-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.nova-site .nft-content{padding:20px 16px}
.nova-site .nft-name{font-size:20px;font-weight:700}
.nova-site .nft-price{color:#b6ffdc}
.nova-site .explore-container{max-width:1280px;padding:75px 40px}
.nova-site .explore-title{font-size:48px}
.nova-site .empty-state{padding:70px 20px;border:1px solid #333;border-radius:12px;background:#161616}
.nova-site :is(.modal-card,.modal-content){background:#202020!important;color:#fff;border-color:#b6ffdc55!important}
.nova-site table{background:#161616;color:#fff}
.nova-site th{background:#202020;color:#b6ffdc;border-color:#444}
.nova-site td{border-color:#333}
.nova-site .dashboard-sticky-nav{background:#111!important;border-color:#b6ffdc55!important}
.nova-site .btn-approve{background:var(--accent-gradient);color:#071511}
.nova-site .admin-main{min-width:0}
@media(max-width:900px){.nova-site .admin-header{padding:20px;gap:20px}.nova-site .admin-header h2{font-size:20px}.nova-site .admin-container{flex-direction:column}.nova-site .admin-sidebar{width:100%;padding:10px 12px;border-right:0;border-bottom:1px solid #333}.nova-site .admin-nav{display:flex;overflow-x:auto;gap:8px}.nova-site .admin-nav a{padding:12px 16px;white-space:nowrap;border-left:0}.nova-site .admin-main{width:100%;padding:28px 20px}.nova-site .stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}
/* Public authentication echoes the reference's light form panel. */
.nova-site .auth-container{background:radial-gradient(ellipse at 20% 0,#63f5ef15,transparent 45%),#000!important;padding-top:65px;padding-bottom:65px}
.nova-site .auth-card{background:#fff!important;border:0!important;color:#111;border-radius:24px;padding:45px 40px;box-shadow:0 24px 90px #0008!important;max-width:520px;overflow:hidden;color-scheme:light}
.nova-site .auth-card .auth-header{background:linear-gradient(120deg,#ceffd7,#7afff0);margin:-45px -40px 32px;padding:38px 30px 30px}
.nova-site .auth-card :is(h1,h2,h3,label){color:#111!important}
.nova-site .auth-card :is(p,.auth-footer,.auth-links,.form-group small){color:#666!important}
.nova-site .auth-card a{color:#1b5952!important}
.nova-site .auth-card input{background:#fff!important;color:#111!important;border:1px solid #dedede!important;border-radius:8px!important}
.nova-site .auth-card :is(.auth-btn,.submit-btn,button[type=submit]){background:#111!important;color:#fff!important;border:0;border-radius:4px;box-shadow:none}
.nova-site .auth-card .auth-header img{width:180px;height:auto;margin-bottom:20px}
.nova-site .auth-card .back-link{color:#285c51!important}
.nova-site .auth-card :is(.auth-link,.remember-me,.form-options,small){color:#666!important}
.nova-site .auth-card .auth-header img{filter:brightness(.12)}
.nova-site .auth-card .success-message{color:#17673e!important;background:#e8f8ef}
.nova-site .auth-card .error-message{color:#9b2138!important;background:#fff0f2}
.nova-site .admin-auth-card{background:#171717!important;border:1px solid #b6ffdc66!important;box-shadow:none!important}
/* Telegram clients keep their original layout and events. */
.nova-telegram{--bg:#000;--card:#202020;--card2:#292929;--line:#444;--text:#fff;--muted:#aaa;--accent:#b6ffdc;--accent-dark:#63f5ef;--gold:#b6ffdc;--gold2:#63f5ef;--green:#a9ffcf}
.nova-telegram :is(.balance-card,.card,.panel,.box,.section-card){background:#202020!important;border-color:#b6ffdc55!important;box-shadow:none!important}
.nova-telegram :is(.bottom-nav,.bottom-bar){background:#111!important;border-top:1px solid #b6ffdc55}
.nova-telegram :is(.btn-primary,.primary-btn){background:var(--accent-gradient)!important;color:#071511!important}
@media(min-width:901px){.nova-home .sticky-bottom-nav{display:none}.nova-home.has-bottom-nav{padding-bottom:0}}
@media(max-width:1100px){.nova-site .header{gap:18px;padding-inline:22px!important}.nova-site .header__cta>input{display:none}.nova-site .header__nav{gap:18px}.nova-site .header__image{width:150px!important}.nova-site .header__cta__logged-in{gap:8px}}
@media(max-width:900px){.nova-site .header__nav{display:none}.nova-site .header__cta{margin-left:auto}.nova-site .header__cta__logged-in .header__balance{display:none}.nova-site .footer{grid-template-columns:1fr;gap:40px}.nova-site .nft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nova-site .explore-header{gap:16px;flex-wrap:wrap}.nova-site .explore-container{padding:50px 24px}.nova-site .header__overlay{right:20px}}
@media(max-width:600px){html{scroll-padding-top:80px}.nova-site .header{min-height:68px;padding:16px!important;gap:14px}.nova-site .header__image{width:145px!important}.nova-site .header__cta{display:flex}.nova-site .header__cta__auth .btn__transparent{display:none}.nova-site .header__cta a{padding:8px 12px}.nova-site .header__overlay{top:68px;right:12px;width:min(300px,calc(100vw - 24px))}.nova-site .page-hero{padding-top:65px;padding-bottom:40px}.nova-site .footer{padding-top:50px;margin-top:40px}.nova-site .footer__links{grid-template-columns:repeat(2,1fr)}.nova-site .footer__credit{flex-direction:column;gap:12px;align-items:center;text-align:center}.nova-site .auth-card{padding:32px 24px;border-radius:18px}.nova-site .auth-card .auth-header{margin:-32px -24px 26px;padding:28px 20px}.nova-site .nft-grid{gap:14px}.nova-site .nft-name{font-size:16px}.nova-site .nft-content{padding:14px 12px}.nova-site .nft-image{min-height:0;margin:10px 10px 0;width:calc(100% - 20px)}.nova-site .explore-title{font-size:36px}.nova-site .filter-section{gap:6px}.nova-site .filter-btn{font-size:13px;padding:10px}.nova-site .header__cta__logged-in .btn__transparent{display:none}.nova-site .explore-header>div{max-width:100%}.nova-site .explore-header h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

[hidden]{display:none!important}
.nova-site .header__hamburger{border:0;background:transparent;padding:0;box-shadow:none}

.nova-site :is(.card,.nft-card,.glass-card,.stat-card,.transaction-item,.auth-card){backdrop-filter:none!important}
.nova-legacy-home .hero{display:block;text-align:center;padding-top:90px;overflow:hidden}
.nova-legacy-home .hero__details{align-items:center;max-width:900px;margin:auto}
.nova-legacy-home .hero__details h1{background:var(--accent-gradient);background-clip:text;color:transparent}
.nova-legacy-home .hero__details p{padding-right:0;max-width:720px}
.nova-legacy-home .hero__image{display:none}
.nova-legacy-home .hero__details__mobile__image{display:flex;justify-content:center;gap:20px}
.nova-legacy-home .hero__details__mobile__image img{width:min(35vw,200px);height:200px;object-fit:cover;border-radius:12px}
.nova-legacy-home .hero__details__mobile__image img:first-child{transform:rotate(-9deg)}
.nova-legacy-home .hero__details__mobile__image img:last-child{transform:rotate(9deg)}
.nova-legacy-home :is(.collections__content__card,.explore__assets){min-width:0;max-width:100%}
.nova-legacy-home .collections__content__card>img{width:100%;object-fit:cover}
