.admin-shell{max-width:1240px}
.admin-intro,.admin-note{color:#91aab7;line-height:1.5;max-width:850px}
.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.admin-tabs a{color:#bdeff8;text-decoration:none;border:1px solid rgba(124,246,255,.28);border-radius:999px;padding:8px 11px;font-size:.78rem}
.admin-section{margin-top:28px;scroll-margin-top:16px}
.admin-section h2{font-size:1rem;letter-spacing:.04em;margin:0 0 10px}
.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}
.admin-card{border:1px solid rgba(70,220,250,.18);border-radius:10px;padding:14px;background:rgba(3,15,31,.68)}
.admin-card h3{color:#9cddea;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 9px}
.admin-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid rgba(70,220,250,.1);padding:8px 0;font-size:.76rem}
.admin-row span{color:#82b5c3;max-width:48%}
.admin-row b{font-weight:600;text-align:right;overflow-wrap:anywhere}
.admin-note{font-size:.78rem}

.login-shell{max-width:430px;padding-top:12vh}
.login-form{display:grid;gap:14px;margin-top:24px}
.login-form label{display:grid;gap:6px;color:#9cddea;font-size:.78rem}
.login-form input,.login-form button,.nav-button{background:#081a29;color:#eafcff;border:1px solid rgba(70,220,250,.28);border-radius:8px;padding:11px}
.login-form button{background:linear-gradient(135deg,#0d5b70,#087f94);font-weight:800;cursor:pointer}
.login-error{color:#ffaaaa}
.topbar-actions form{margin:0}
.nav-button{padding:7px 9px;cursor:pointer;font-size:.8rem}

.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px}
.pricing-card h2{font-size:2rem;margin:8px 0}
.pricing-card h2 small{font-size:.85rem;color:#82b5c3}
.pricing-card button,.pricing-button{display:block;width:100%;margin-top:10px;padding:10px;border:1px solid rgba(70,220,250,.28);border-radius:8px;background:#0d5b70;color:#eafcff;text-align:center;text-decoration:none;cursor:pointer}
.pricing-card .annual{background:#087f94}
.pricing-featured{border-color:#7cf6ff;box-shadow:0 0 28px rgba(124,246,255,.12)}
@media(max-width:850px){.pricing-grid{grid-template-columns:1fr}
}

.marketing{max-width:1200px}
.marketing-hero,.why-novi,.public-pricing{padding:clamp(28px,6vw,70px);border:1px solid rgba(70,220,250,.24);border-radius:16px;background:radial-gradient(circle at 80% 0,rgba(17,115,139,.3),rgba(3,15,31,.78) 54%);margin:22px 0}
.marketing{isolation:isolate}.marketing-hero,.why-novi,.public-pricing,.public-contact,.proof-strip,.dashboard-examples{position:relative}.marketing-hero{overflow:hidden}.marketing-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;background:linear-gradient(115deg,transparent 0 44%,rgba(96,238,255,.1) 50%,transparent 56%);transform:translateX(-130%);animation:noviMarketingSweep 10s ease-in-out infinite}.marketing-hero>*{position:relative;z-index:1}#noviMotion{overflow:hidden;background:radial-gradient(circle at 78% 8%,rgba(14,182,207,.16),transparent 30%),linear-gradient(155deg,#06111c,#071b2d 52%,#06111c)}#noviMotion:before,#noviMotion:after{content:"";position:absolute;inset:-30%;pointer-events:none}.novi-motion-grid{position:absolute;inset:0;opacity:.17;background:linear-gradient(rgba(72,225,246,.24) 1px,transparent 1px),linear-gradient(90deg,rgba(72,225,246,.24) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 72%);animation:noviGridDrift 18s linear infinite}.novi-motion-orb{position:absolute;width:34vw;height:34vw;min-width:260px;min-height:260px;border:1px solid rgba(87,232,247,.28);border-radius:50%;box-shadow:0 0 90px rgba(27,211,238,.17),inset 0 0 70px rgba(27,211,238,.08);filter:blur(.1px)}.novi-motion-orb:before,.novi-motion-orb:after{content:"";position:absolute;border:1px dashed rgba(232,186,106,.4);border-radius:50%;inset:12%;animation:noviSpin 20s linear infinite}.novi-motion-orb:after{inset:29%;border-color:rgba(87,232,247,.42);animation-direction:reverse;animation-duration:12s}.orb-one{top:-17vw;right:-9vw;animation:noviOrbFloat 12s ease-in-out infinite}.orb-two{width:22vw;height:22vw;min-width:180px;min-height:180px;bottom:-12vw;left:-7vw;opacity:.62;animation:noviOrbFloat 15s ease-in-out -5s infinite reverse}.novi-motion-stars{position:absolute;inset:0;opacity:.38;background-image:radial-gradient(circle,rgba(160,246,255,.9) 0 1px,transparent 1.6px),radial-gradient(circle,rgba(232,186,106,.85) 0 1px,transparent 1.8px);background-size:83px 97px,137px 149px;background-position:0 0,27px 43px;animation:noviStarDrift 28s linear infinite}@keyframes noviGridDrift{to{background-position:48px 48px,48px 48px}}@keyframes noviOrbFloat{50%{transform:translate3d(-2vw,3vw,0) scale(1.08);opacity:.82}}@keyframes noviStarDrift{to{background-position:83px 194px,164px 341px}}@keyframes noviMarketingSweep{20%,100%{transform:translateX(130%)}}
@media (prefers-reduced-motion:reduce){.novi-motion-grid,.novi-motion-orb,.novi-motion-orb:before,.novi-motion-orb:after,.novi-motion-stars,.marketing-hero:before{animation:none!important}}
.public-contact{padding:clamp(28px,6vw,48px);border:1px solid rgba(70,220,250,.24);border-radius:16px;background:rgba(3,15,31,.68);margin:22px 0}
.public-contact h2{font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.08;margin:8px 0}
.marketing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);align-items:center;gap:clamp(26px,5vw,64px)}
.marketing-hero h2,.why-novi h2,.public-pricing h2{font-size:clamp(1.8rem,4vw,3.3rem);line-height:1.04;letter-spacing:-.04em;max-width:850px;margin:10px 0 16px}
.marketing-hero>p:not(.eyebrow),.why-novi>p:not(.eyebrow){color:#b3ccd4;line-height:1.6;max-width:760px}
.hero-dashboard{display:block;width:100%;height:auto;border:1px solid rgba(124,246,255,.3);border-radius:12px;box-shadow:0 20px 48px rgba(0,0,0,.35)}
.hero-visual{position:relative}.visual-chip{position:absolute;padding:9px 11px;border:1px solid rgba(124,246,255,.45);border-radius:9px;background:rgba(3,15,31,.88);box-shadow:0 10px 24px rgba(0,0,0,.3);color:#91ddea;font-size:.58rem;font-weight:800;letter-spacing:.09em}.visual-chip b{color:#eaffff;font-size:.66rem}.chip-one{left:-18px;bottom:18%}.chip-two{right:-18px;top:12%}.trust-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.trust-pills span{padding:6px 8px;border:1px solid rgba(124,246,255,.22);border-radius:999px;color:#a7dce6;font-size:.58rem;font-weight:800;letter-spacing:.07em}.proof-strip,.novi-flow{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:22px 0;padding:14px;border:1px solid rgba(70,220,250,.2);border-radius:12px;background:rgba(3,15,31,.45)}.proof-strip div{display:flex;align-items:center;gap:8px;color:#bdeff8;font-size:.75rem}.proof-strip b{color:#7cf6ff;font-size:1.1rem}.novi-flow{justify-content:center}.novi-flow span{padding:8px 10px;border:1px solid rgba(124,246,255,.25);border-radius:7px;color:#dffcff;font-size:.64rem;font-weight:800;letter-spacing:.06em}.novi-flow i{color:#7cf6ff;font-style:normal}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.hero-actions .pricing-button{width:auto;padding:12px 18px}
.hero-actions .subtle{background:transparent}
.marketing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.public-price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:18px 0}
.marketing-grid .admin-card{padding:20px;background:linear-gradient(145deg,rgba(7,29,45,.9),rgba(3,15,31,.6))}.marketing-grid h3{margin:7px 0;font-size:1.1rem}
.marketing-grid p:not(.eyebrow){color:#a5bec7;line-height:1.5;font-size:.88rem}
.public-price-grid article{padding:18px;border:1px solid rgba(70,220,250,.2);border-radius:10px;background:rgba(3,15,31,.58)}
.public-price-grid .featured{border-color:#7cf6ff;box-shadow:0 0 22px rgba(124,246,255,.1)}
.public-price-grid h3{margin:0;color:#bdeff8}
.public-price-grid p{margin:12px 0 4px}
.public-price-grid strong{font-size:2rem}
.public-price-grid span{color:#91aab7;font-size:.82rem}
.public-pricing-button{width:max-content;padding:12px 18px}
@media(max-width:850px){.marketing-grid,.public-price-grid,.marketing-hero{grid-template-columns:1fr}
.marketing-hero,.why-novi,.public-pricing{padding:28px 20px}
.hero-dashboard{max-width:640px}
.chip-one{left:4px}.chip-two{right:4px}.novi-flow i{display:none}
.public-pricing-button{width:100%}
}

.dashboard-examples{margin:42px 0}
.dashboard-examples>div:first-child{max-width:760px}
.dashboard-examples h2{font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.08;margin:8px 0 12px}
.dashboard-examples>div:first-child>p{color:#a5bec7;line-height:1.55}
.example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}
.example-grid figure{margin:0;overflow:hidden;border:1px solid rgba(70,220,250,.25);border-radius:14px;background:#06111c}
.example-grid img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.example-grid figcaption{display:grid;gap:5px;padding:15px}
.example-grid figcaption strong{color:#dffcff}
.example-grid figcaption span{color:#91aab7;font-size:.85rem;line-height:1.4}
@media(max-width:850px){.example-grid{grid-template-columns:1fr}
}

.enrollment{max-width:760px;margin:28px auto}
.enrollment h2{margin:7px 0}
.enrollment>div:first-child>p{color:#a5bec7}
.tier-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 12px}
.tier-tabs button{border:1px solid rgba(124,246,255,.28);border-radius:999px;padding:9px 13px;background:#081a29;color:#bdeff8;cursor:pointer}
.tier-tabs button.active{background:#087f94;color:#fff;border-color:#7cf6ff}
.tier-panel{border:1px solid rgba(70,220,250,.25);border-radius:14px;padding:24px;background:rgba(3,15,31,.7)}
.tier-panel h3{margin:8px 0}
.tier-panel>p:not(.eyebrow),.tier-panel li{color:#a5bec7;line-height:1.5}
.tier-panel button{border:1px solid rgba(124,246,255,.3);border-radius:8px;padding:10px 14px;background:#087f94;color:#fff;font-weight:800;cursor:pointer}
.current-tier{display:inline-block;padding:9px 12px;border-radius:999px;background:rgba(92,230,159,.13);color:#9df2bd;font-size:.8rem;font-weight:800}


.locked-preview{position:relative;overflow:hidden;min-height:170px;background:linear-gradient(145deg,rgba(12,83,101,.32),rgba(3,15,31,.78))}
.locked-preview h3,.locked-preview p{filter:blur(4px);opacity:.55;user-select:none}
.locked-preview>b{display:block;margin-top:20px;padding:10px;border:1px solid rgba(124,246,255,.32);border-radius:8px;background:rgba(3,15,31,.55);color:#dffcff;font-size:.75rem;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.locked-preview:after{content:'PAID MEMBER FEATURE';position:absolute;right:-26px;top:18px;padding:5px 30px;background:#087f94;color:#eaffff;font-size:.6rem;font-weight:800;letter-spacing:.12em;transform:rotate(35deg)}

.dashboard-glimpse{margin:28px 0;padding:26px;border:1px solid rgba(113,221,255,.2);border-radius:16px;background:linear-gradient(145deg,rgba(4,24,42,.9),rgba(6,50,66,.56))}.dashboard-glimpse .section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-glimpse h2{margin:.25rem 0 0}.preview-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 14px}.preview-tabs span{padding:8px 12px;border:1px solid rgba(160,226,244,.16);border-radius:999px;color:#83aab9;font-size:.78rem}.preview-tabs .active{border-color:rgba(124,246,255,.55);background:rgba(64,190,213,.13);color:#e5fcff}.preview-dashboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.preview-live-card,.preview-locked-card{min-height:136px;padding:18px;border:1px solid rgba(137,225,244,.16);border-radius:12px;background:rgba(1,12,24,.62)}.preview-live-card{display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,rgba(15,101,117,.55),rgba(3,21,38,.88))}.preview-live-card span,.preview-locked-card span{display:block;margin-bottom:10px;color:#91cbd7;font-size:.68rem;font-weight:800;letter-spacing:.1em}.preview-live-card b{font-size:1.2rem;color:#f0ffff}.preview-live-card small,.preview-locked-card small{display:block;margin-top:9px;color:#91aab4}.preview-locked-card{position:relative;overflow:hidden;isolation:isolate}.preview-locked-card>div{filter:blur(4px);opacity:.55;user-select:none}.preview-locked-card:after{content:'LOCKED';position:absolute;inset:0;display:grid;place-items:center;background:rgba(2,16,29,.28);color:#dffcff;font-size:.72rem;font-weight:900;letter-spacing:.16em;z-index:1}.preview-locked-card.wide{grid-column:span 2}.preview-disclosure{margin:16px 0 0;color:#a9c5ce;font-size:.85rem}@media(max-width:760px){.dashboard-glimpse .section-heading{align-items:flex-start;flex-direction:column}.preview-dashboard{grid-template-columns:1fr}.preview-locked-card.wide{grid-column:auto}}

.free-dashboard-nav{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.free-dashboard-nav a,.free-dashboard-nav span{padding:9px 12px;border:1px solid rgba(160,226,244,.16);border-radius:8px;color:#9fc4ce;font-size:.78rem}.free-dashboard-nav .active{border-color:rgba(124,246,255,.55);background:rgba(64,190,213,.13);color:#e5fcff}.free-dashboard-nav b{margin-left:5px;color:#ffbf7a;font-size:.65rem;text-transform:uppercase}.free-dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border:1px solid rgba(124,246,255,.25);border-radius:14px;background:linear-gradient(120deg,rgba(6,75,94,.5),rgba(3,15,31,.82))}.free-dashboard-hero h2{margin:5px 0}.free-dashboard-hero .help{margin:0;color:#a5bec7}@media(max-width:760px){.free-dashboard-hero{align-items:flex-start;flex-direction:column}}
