/* NexaIoT 2026 UI refresh — light theme only */
:root{
 --nx-blue:#2f6bff;--nx-blue2:#6c5cff;--nx-ink:#111827;--nx-muted:#667085;--nx-line:#e7eaf0;--nx-soft:#f7f8fb;--nx-green:#16a36a;--nx-red:#e5484d;--nx-amber:#f59e0b;--nx-card:#fff;--nx-shadow:0 18px 55px rgba(20,32,56,.08);--nx-shadow-sm:0 8px 28px rgba(20,32,56,.06)
}
html{scroll-behavior:smooth} body{background:#fff;color:var(--nx-ink);font-family:'DM Sans',system-ui,sans-serif} a{text-decoration:none}.public-page{background:#fff}.site-main{min-height:calc(100vh - 70px);overflow:hidden}.public-shell{width:min(1180px,calc(100% - 48px));margin:0 auto}
/* public nav */
.site-nav{height:70px;position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.86);backdrop-filter:blur(22px);border-bottom:1px solid rgba(231,234,240,.8)}.site-nav-inner{height:100%;width:min(1220px,calc(100% - 36px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-brand,.app-brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:700;letter-spacing:-.6px;color:#182230}.site-brand b,.app-brand b,.footer-brand span{color:var(--nx-blue);font-weight:700}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--nx-blue),var(--nx-blue2));box-shadow:0 7px 18px rgba(47,107,255,.25)}.site-links{display:flex;align-items:center;gap:30px}.site-links a,.text-link{color:#344054;font-size:14px;font-weight:600;transition:.2s}.site-links a:hover,.text-link:hover{color:var(--nx-blue)}.site-actions{display:flex;align-items:center;gap:16px}.mobile-menu-toggle{display:none}
.btn{border-radius:12px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--nx-blue),var(--nx-blue2));border:none;color:#fff;box-shadow:0 8px 22px rgba(47,107,255,.22)}.btn-primary:hover{box-shadow:0 12px 30px rgba(47,107,255,.3)}.btn-secondary{background:#fff;color:#273142;border:1px solid var(--nx-line);box-shadow:var(--nx-shadow-sm)}.btn-lg{padding:14px 20px;font-size:15px}.btn-sm{padding:9px 14px}
/* public hero */
.public-hero{position:relative;padding:92px 0 70px;background:radial-gradient(circle at 72% 10%,rgba(93,105,255,.08),transparent 35%),linear-gradient(#fff,#fbfcff)}.home-hero{min-height:690px;display:flex;align-items:center}.compact-hero{padding:100px 0 72px}.ambient{position:absolute;border-radius:999px;filter:blur(1px);opacity:.6;pointer-events:none}.ambient-a{width:340px;height:340px;right:-120px;top:10%;background:radial-gradient(circle,rgba(47,107,255,.10),transparent 70%)}.ambient-b{width:260px;height:260px;left:-130px;bottom:0;background:radial-gradient(circle,rgba(108,92,255,.08),transparent 70%)}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:66px}.single-focus{grid-template-columns:minmax(0,780px);justify-content:center;text-align:center}.single-focus .hero-actions{justify-content:center}.hero-copy{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#52606f;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--nx-green);box-shadow:0 0 0 5px rgba(22,163,106,.10)}.hero-copy h1{font-size:clamp(46px,5.2vw,74px);line-height:1.02;letter-spacing:-.055em;margin:0 0 24px;color:#0d1424}.compact-hero .hero-copy h1{font-size:clamp(42px,4.5vw,64px)}.hero-copy h1 span{background:linear-gradient(120deg,var(--nx-blue),var(--nx-blue2));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-copy>p{font-size:18px;line-height:1.75;color:var(--nx-muted);max-width:650px;margin:0 0 30px}.single-focus .hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hero-proof{margin-top:40px;padding-top:24px;border-top:1px solid var(--nx-line);display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.hero-proof span{display:flex;flex-direction:column;gap:4px}.hero-proof b{font-size:13px;color:#263043}.hero-proof small{font-size:11px;color:#8a94a3;line-height:1.4}
/* preview */
.hero-visual{position:relative;z-index:1}.preview-frame{overflow:hidden;background:#fff;border:1px solid rgba(218,223,232,.9);border-radius:24px;box-shadow:0 34px 80px rgba(22,34,60,.14);transform:perspective(1200px) rotateY(-2deg) rotateX(1deg);transition:.5s ease}.preview-frame:hover{transform:perspective(1200px) rotateY(0) rotateX(0) translateY(-4px)}.preview-toolbar{height:38px;display:flex;align-items:center;gap:6px;padding:0 14px;background:#fbfcfe;border-bottom:1px solid var(--nx-line)}.preview-toolbar>span{width:8px;height:8px;border-radius:50%;background:#d9dde5}.preview-toolbar>span:first-child{background:#ff6b6b}.preview-toolbar>span:nth-child(2){background:#ffc857}.preview-toolbar>span:nth-child(3){background:#5bd6a2}.preview-toolbar em{margin-left:auto;font-style:normal;font-size:10px;color:#98a2b3}.preview-frame img{display:block;width:100%;height:auto}.float-chip{position:absolute;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border:1px solid rgba(225,229,236,.9);box-shadow:0 15px 35px rgba(28,38,64,.12);border-radius:13px;padding:10px 13px;display:flex;flex-direction:column;min-width:120px;animation:nxFloat 5s ease-in-out infinite}.float-chip span{font-size:10px;color:#8992a2}.float-chip b{font-size:12px;color:#1f2937;margin-top:2px}.chip-a{right:-28px;top:12%;padding-left:28px}.chip-a i{position:absolute;left:12px;top:17px;width:8px;height:8px;border-radius:50%}.chip-a i.green{background:var(--nx-green);box-shadow:0 0 0 4px rgba(22,163,106,.1)}.chip-b{left:-38px;top:48%;animation-delay:-1.7s}.chip-c{right:4%;bottom:-28px;animation-delay:-3s}@keyframes nxFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
/* benefit strip */
.benefit-strip{padding:0 0 34px;background:#fff}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--nx-line);border-radius:18px;background:#fff;box-shadow:var(--nx-shadow-sm);overflow:hidden}.benefit{padding:22px;display:flex;gap:13px;align-items:flex-start;border-right:1px solid var(--nx-line)}.benefit:last-child{border-right:0}.benefit i{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#eef3ff;color:var(--nx-blue);font-size:11px;font-weight:800;font-style:normal}.benefit div{display:flex;flex-direction:column;gap:5px}.benefit b{font-size:13px}.benefit span{font-size:11px;color:#7b8595;line-height:1.45}
/* sections */
.public-section{padding:104px 0}.soft-section{background:#f7f9fc;border-top:1px solid #f0f2f6;border-bottom:1px solid #f0f2f6}.section-heading{max-width:760px;margin:0 auto 54px;text-align:center}.section-heading h2,.split-feature h2,.two-col-story h2,.cta-panel h2{font-size:clamp(32px,3.5vw,48px);line-height:1.08;letter-spacing:-.04em;margin:0 0 16px;color:#111827}.section-heading p,.split-feature p,.two-col-story p,.cta-panel p{font-size:16px;line-height:1.75;color:var(--nx-muted)}
.capability-stage{display:grid;grid-template-columns:1.35fr .85fr;gap:20px}.cap-card{padding:30px;border:1px solid var(--nx-line);border-radius:22px;background:#fff;box-shadow:var(--nx-shadow-sm);min-height:330px;position:relative;overflow:hidden}.cap-card.large{grid-row:span 2;min-height:680px;background:linear-gradient(160deg,#fff 40%,#f3f7ff)}.cap-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:var(--nx-blue)}.cap-card h3{font-size:28px;line-height:1.15;letter-spacing:-.03em;margin:12px 0}.cap-card p{font-size:14px;line-height:1.7;color:var(--nx-muted)}.metric-demo{margin-top:70px;display:grid;gap:18px}.metric-demo>div{background:rgba(255,255,255,.85);border:1px solid #e5e9f2;border-radius:18px;padding:20px;display:grid;grid-template-columns:1fr auto;align-items:center}.metric-demo small{color:#7d8796}.metric-demo strong{grid-row:2;font-size:26px;margin-top:5px}.metric-demo strong em{font-size:11px;color:#87909e;font-style:normal}.metric-demo svg{grid-column:2;grid-row:1/3;width:180px;height:50px}.metric-demo polyline{fill:none;stroke:var(--nx-blue);stroke-width:2}.interval-demo{display:flex;flex-direction:column;gap:9px;margin-top:24px}.interval-demo span{padding:12px 14px;border-radius:12px;background:#f6f9ff;border:1px solid #e6edff;display:flex;justify-content:space-between;align-items:center}.interval-demo span.offline{background:#fff7f7;border-color:#ffe2e2}.interval-demo span.offline b{color:var(--nx-red)}.interval-demo small{color:#8a94a3}.bars-demo{height:100px;margin-top:28px;display:flex;align-items:flex-end;gap:9px;border-bottom:1px solid var(--nx-line);padding:0 6px}.bars-demo i{flex:1;border-radius:7px 7px 2px 2px;background:linear-gradient(#6c8dff,#496dff);opacity:.8}
.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.workflow-step{position:relative;padding:28px;border-radius:18px;background:#fff;border:1px solid var(--nx-line);min-height:240px}.workflow-step i{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#eef3ff;color:var(--nx-blue);font-size:12px;font-weight:800;font-style:normal}.workflow-step h3{margin:34px 0 10px;font-size:18px}.workflow-step p{color:var(--nx-muted);font-size:13px;line-height:1.7}.split-feature,.two-col-story{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.tag-row span{font-size:11px;font-weight:700;padding:8px 10px;border-radius:999px;background:#f1f5ff;color:#4868c9;border:1px solid #e1e9ff}.template-card,.flow-card{background:#fff;border:1px solid var(--nx-line);border-radius:22px;box-shadow:var(--nx-shadow);padding:24px}.template-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--nx-line)}.template-head span{font-size:10px;color:var(--nx-green);background:#eaf9f2;padding:6px 9px;border-radius:999px}.stream-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #f0f2f5;font-size:13px}.stream-row em{font-style:normal;font-size:10px;color:#687385;background:#f2f4f7;padding:5px 7px;border-radius:7px}.stream-row em.rw{color:#1f7b55;background:#eaf8f1}.template-foot{padding-top:16px;color:#8a94a3;font-size:11px}.feature-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-card{padding:30px;background:#fff;border:1px solid var(--nx-line);border-radius:20px;box-shadow:var(--nx-shadow-sm);transition:.25s}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--nx-shadow)}.feature-card h3{font-size:19px;margin:18px 0 10px}.feature-card p{font-size:13px;line-height:1.7;color:var(--nx-muted)}.feature-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#edf2ff,#f2efff);position:relative}.feature-icon:after{content:"";position:absolute;inset:12px;border:2px solid var(--nx-blue);border-radius:5px}.feature-icon.shield:after{border-radius:12px 12px 15px 15px}.feature-icon.command:after{border-radius:50%;border-right-color:transparent}.feature-icon.insight:after{border-radius:3px;border-top-color:transparent;transform:rotate(-10deg)}
/* platform orbit */
.platform-orbit{height:440px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(78,105,255,.09),transparent 55%)}.orbit-core{width:150px;height:150px;border-radius:42px;background:linear-gradient(135deg,#264ff0,#7b61ff);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:22px;font-weight:800;box-shadow:0 25px 60px rgba(60,77,220,.28)}.orbit-core span{font-size:10px;font-weight:500;opacity:.8;margin-top:6px}.orbit-pill{position:absolute;padding:11px 14px;background:#fff;border:1px solid var(--nx-line);border-radius:12px;box-shadow:var(--nx-shadow-sm);font-size:12px;font-weight:700;animation:nxFloat 5s ease-in-out infinite}.o1{top:9%;left:20%}.o2{top:13%;right:12%;animation-delay:-1s}.o3{top:48%;right:2%;animation-delay:-2s}.o4{bottom:10%;right:18%;animation-delay:-3s}.o5{bottom:9%;left:18%;animation-delay:-4s}.o6{top:47%;left:2%;animation-delay:-2.5s}.flow-card{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}.flow-card div{padding:14px 15px;border-radius:12px;background:#f6f8fc;border:1px solid var(--nx-line);font-size:12px;font-weight:700}.flow-card i{font-style:normal;color:#8c96a5}
/* solutions / pricing / docs / contact */
.solution-grid-new{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.solution-card-new{padding:30px;border:1px solid var(--nx-line);border-radius:20px;background:#fff;min-height:260px;box-shadow:var(--nx-shadow-sm);position:relative;overflow:hidden}.solution-topline{position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--nx-blue),var(--nx-blue2))}.solution-card-new h2{font-size:22px;letter-spacing:-.025em}.solution-card-new p{font-size:14px;line-height:1.7;color:var(--nx-muted)}.solution-card-new span{display:inline-block;margin-top:20px;font-size:11px;color:#52606f;background:#f5f7fa;padding:7px 9px;border-radius:8px}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,460px));justify-content:center;gap:22px}.price-card{padding:36px;border:1px solid var(--nx-line);border-radius:22px;background:#fff;box-shadow:var(--nx-shadow-sm)}.price-card.featured{border-color:#d7e1ff;background:linear-gradient(160deg,#fff,#f6f8ff);box-shadow:var(--nx-shadow)}.price-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--nx-blue);background:#edf2ff;padding:6px 9px;border-radius:999px}.price-badge.muted{color:#6c7480;background:#f2f4f7}.price-card h2{font-size:26px;margin:20px 0 8px}.price-value{font-size:38px;font-weight:800;letter-spacing:-.04em}.price-card>p{color:var(--nx-muted);line-height:1.7}.price-card ul{list-style:none;margin:24px 0;padding:0;display:grid;gap:12px}.price-card li{font-size:13px;color:#4c5665}.price-card li:before{content:"✓";color:var(--nx-green);font-weight:800;margin-right:9px}.docs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.docs-card{padding:28px;border:1px solid var(--nx-line);border-radius:18px;color:var(--nx-ink);background:#fff;display:flex;flex-direction:column;gap:10px;min-height:160px;box-shadow:var(--nx-shadow-sm);transition:.2s}.docs-card:hover{transform:translateY(-3px);border-color:#ced9ff}.docs-card b{font-size:17px}.docs-card span{font-size:13px;color:var(--nx-muted);line-height:1.65}.contact-panel{max-width:900px;margin:auto;padding:44px;border:1px solid var(--nx-line);border-radius:24px;display:grid;grid-template-columns:1.1fr .9fr;gap:50px;box-shadow:var(--nx-shadow)}.contact-panel h2{font-size:32px;margin-top:0}.contact-panel p{color:var(--nx-muted);line-height:1.75}.contact-points{display:grid;gap:10px}.contact-points span{padding:14px 16px;border:1px solid var(--nx-line);border-radius:12px;font-size:13px;background:#fafbfc}
/* CTA/footer */
.public-cta{padding:60px 0 90px}.cta-panel{padding:42px 48px;border-radius:26px;background:linear-gradient(120deg,#f2f5ff,#f8f5ff);border:1px solid #e3e8fa;display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-panel h2{font-size:34px;margin-bottom:6px}.cta-panel p{margin:0}.public-footer{padding:70px 0 24px;border-top:1px solid var(--nx-line);background:#fbfcfe}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:50px}.footer-brand{font-size:22px;font-weight:800;color:#172033}.footer-grid p{max-width:330px;color:#798391;font-size:13px;line-height:1.7}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:11px}.footer-grid b{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:#4e5968;margin-bottom:5px}.footer-grid a:not(.footer-brand){font-size:13px;color:#7b8492}.footer-grid a:hover{color:var(--nx-blue)}.footer-bottom{margin-top:46px;padding-top:20px;border-top:1px solid var(--nx-line);display:flex;justify-content:space-between;color:#98a1ae;font-size:11px}
/* app shell */
.app-page{background:#f6f8fb}.app-shell{min-height:100vh;display:grid;grid-template-columns:224px minmax(0,1fr)}.app-sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--nx-line);padding:18px 14px;display:flex;flex-direction:column;z-index:100}.app-brand{padding:4px 8px 20px;font-size:20px}.app-brand .brand-mark{width:32px;height:32px;border-radius:10px}.app-menu{display:flex;flex-direction:column;gap:4px}.app-menu-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:11px;color:#667085;font-size:13px;font-weight:600;transition:.18s}.app-menu-item svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.app-menu-item:hover{color:#2e4a98;background:#f6f8ff}.app-menu-item.active{color:var(--nx-blue);background:#edf3ff}.sidebar-foot{margin-top:auto;border-top:1px solid var(--nx-line);padding:16px 8px 4px;display:flex;flex-direction:column;gap:5px}.sidebar-foot a{font-size:12px;font-weight:700;color:var(--nx-blue)}.sidebar-foot small{font-size:10px;color:#a0a7b2}.app-main{min-width:0}.app-topbar{height:68px;position:sticky;top:0;z-index:90;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--nx-line);display:flex;align-items:center;padding:0 26px;justify-content:space-between}.sidebar-toggle{display:none;border:0;background:transparent;font-size:20px}.app-context{display:grid;grid-template-columns:auto auto;column-gap:9px;align-items:center}.app-context .live-shell-dot{grid-row:1/3;width:8px;height:8px;background:var(--nx-green);border-radius:50%;box-shadow:0 0 0 5px rgba(22,163,106,.08)}.app-context b{font-size:13px}.app-context small{font-size:10px;color:#8d96a3}.app-user{display:flex;gap:10px;align-items:center}.top-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#f6f7f9;color:#697386}.user-pill{display:flex;align-items:center;gap:10px;color:var(--nx-ink);padding:5px 8px;border-radius:12px}.user-pill>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#dfe7ff,#ede8ff);color:#5369b7;font-weight:800}.user-pill div{display:flex;flex-direction:column}.user-pill b{font-size:12px}.user-pill small{font-size:10px;color:#8a94a3;text-transform:capitalize}.app-content{padding:26px;max-width:1600px;width:100%;margin:0 auto}.app-content .rp-header{margin-bottom:20px}.app-content .rp-header h1{font-size:28px;letter-spacing:-.03em;color:#172033}.app-content .breadcrumb{color:#7a8494}.app-content .component-block,.app-content .stat-card,.app-content .card,.app-content .table-wrapper{border-color:#e7eaf0!important;box-shadow:0 5px 20px rgba(24,36,58,.04)}.app-content .component-block{border-radius:16px!important;background:#fff}.app-content .stat-card{border-radius:15px!important;background:#fff}.app-content .data-table th{background:#fafbfc;color:#697386;font-size:11px}.app-content .data-table td{border-color:#eef0f4}.app-content .quick-action-card{border-radius:13px!important;border-color:#e7eaf0!important;background:#fff!important;box-shadow:none!important}.app-content .quick-action-card:hover{border-color:#ccd8ff!important;background:#f8faff!important}.app-page-head{display:flex;justify-content:space-between;align-items:flex-end}.settings-hub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:22px;background:#fff;border:1px solid var(--nx-line);border-radius:16px;color:var(--nx-ink);box-shadow:var(--nx-shadow-sm);transition:.2s}.settings-card:hover{transform:translateY(-2px);border-color:#ccd8ff}.settings-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eef3ff;color:var(--nx-blue);font-weight:800}.settings-card h3{margin:0 0 5px;font-size:15px}.settings-card p{margin:0;color:#7c8594;font-size:12px}.settings-card>span{color:#98a1ae}
/* old public docs/pages polish */
.public-page .right-panel,.public-page .full-content{width:100%}.public-page .rp-header,.auth-page .rp-header{max-width:1050px;margin:60px auto 24px;padding:0 24px}.public-page .component-block,.auth-page .component-block{max-width:1050px;margin-left:auto;margin-right:auto;background:#fff;border:1px solid var(--nx-line);border-radius:18px;box-shadow:var(--nx-shadow-sm)}
/* responsive */
@media(max-width:1050px){.hero-grid{grid-template-columns:1fr;gap:48px}.home-hero{padding-top:70px}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-proof{max-width:620px;margin-left:auto;margin-right:auto}.hero-visual{max-width:820px;margin:auto}.benefit-grid{grid-template-columns:repeat(2,1fr)}.benefit:nth-child(2){border-right:0}.benefit:nth-child(-n+2){border-bottom:1px solid var(--nx-line)}.capability-stage{grid-template-columns:1fr 1fr}.cap-card.large{grid-column:1/-1;grid-row:auto;min-height:560px}.workflow-grid{grid-template-columns:repeat(2,1fr)}.feature-grid-3,.solution-grid-new,.docs-grid{grid-template-columns:repeat(2,1fr)}.split-feature,.two-col-story{gap:35px}.app-shell{grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:760px){.public-shell{width:min(100% - 28px,1180px)}.site-nav{height:64px}.site-links{position:absolute;top:64px;left:14px;right:14px;background:#fff;border:1px solid var(--nx-line);border-radius:16px;box-shadow:var(--nx-shadow);padding:12px;display:none;flex-direction:column;align-items:stretch;gap:2px}.site-links.open{display:flex}.site-links a{padding:11px 12px;border-radius:9px}.site-links a:hover{background:#f5f7fb}.site-actions .text-link{display:none}.mobile-menu-toggle{display:flex;width:36px;height:36px;border:0;background:#f5f7fa;border-radius:10px;flex-direction:column;align-items:center;justify-content:center;gap:4px}.mobile-menu-toggle span{width:16px;height:1.5px;background:#53606f}.public-hero{padding:70px 0 52px}.hero-copy h1{font-size:44px}.hero-copy>p{font-size:16px}.hero-proof{grid-template-columns:1fr;gap:10px}.hero-proof span{align-items:center}.float-chip{display:none}.benefit-grid{grid-template-columns:1fr}.benefit{border-right:0!important;border-bottom:1px solid var(--nx-line)!important}.benefit:last-child{border-bottom:0!important}.public-section{padding:72px 0}.capability-stage,.feature-grid-3,.solution-grid-new,.docs-grid,.pricing-grid,.split-feature,.two-col-story,.contact-panel{grid-template-columns:1fr}.cap-card.large{min-height:auto}.metric-demo{margin-top:30px}.metric-demo>div{grid-template-columns:1fr}.metric-demo svg{grid-column:1;grid-row:auto;width:100%}.workflow-grid{grid-template-columns:1fr}.cta-panel{padding:30px;flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.app-shell{display:block}.app-sidebar{position:fixed;left:0;top:0;width:230px;transform:translateX(-105%);transition:.25s;box-shadow:0 20px 60px rgba(0,0,0,.12)}.app-page.sidebar-collapsed .app-sidebar{transform:translateX(0)}.sidebar-toggle{display:block}.app-content{padding:16px}.app-context small{display:none}.user-pill div{display:none}.settings-hub{grid-template-columns:1fr}}
@media(max-width:520px){.site-nav-inner{width:calc(100% - 20px)}.site-brand{font-size:19px}.site-actions{gap:8px}.site-actions .btn{font-size:11px;padding:8px 10px}.hero-copy h1{font-size:38px}.hero-actions .btn{width:100%;justify-content:center}.preview-frame{border-radius:15px}.preview-toolbar em{display:none}.section-heading h2,.split-feature h2,.two-col-story h2{font-size:32px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}.contact-panel{padding:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.float-chip,.orbit-pill{animation:none!important}.scroll-reveal{transition:none!important}}
/* authentication and documentation polish */
.auth-page .site-main{min-height:calc(100vh - 70px);padding:48px 16px 80px;background:radial-gradient(circle at 50% 0,rgba(47,107,255,.08),transparent 34%),#f8f9fc}.auth-page .rp-header{max-width:460px;text-align:center;margin:10px auto 22px}.auth-page .rp-header h1{font-size:38px;letter-spacing:-.04em}.auth-page .form-card{background:#fff;border:1px solid var(--nx-line);border-radius:20px;padding:30px;box-shadow:var(--nx-shadow)}.form-control{border-radius:11px!important;border-color:#dfe3ea!important;background:#fff!important;min-height:42px}.form-control:focus{border-color:#9cb5ff!important;box-shadow:0 0 0 4px rgba(47,107,255,.08)!important}.public-page .rp-cta-row,.public-page .rp-metrics-strip,.public-page .rp-main-block,.public-page .rp-api-note,.public-page .rp-scenario-block,.public-page .rp-related-links{max-width:1050px;margin-left:auto;margin-right:auto}.public-page .rp-main-block,.public-page .rp-api-note,.public-page .rp-scenario-block,.public-page .rp-related-links{background:#fff;border:1px solid var(--nx-line);border-radius:18px;padding:26px;box-shadow:var(--nx-shadow-sm);margin-bottom:18px}.public-page .rp-cta-row{margin-bottom:18px}.public-page .rp-metrics-strip{margin-bottom:18px}.public-page .metric-card{border-color:var(--nx-line)!important;border-radius:14px!important;background:#fff!important}.public-page .table-wrap{overflow:auto;border:1px solid var(--nx-line);border-radius:13px}.public-page .table-wrap table{width:100%;border-collapse:collapse}.public-page .table-wrap th{background:#fafbfc;color:#657080;font-size:11px}.public-page .table-wrap td,.public-page .table-wrap th{padding:12px 14px;border-bottom:1px solid #eef0f3;text-align:left}.public-page code{font-family:'JetBrains Mono',monospace;font-size:.9em;background:#f5f7fa;padding:2px 5px;border-radius:5px}.public-page .rp-api-note code{display:block;white-space:pre-wrap;padding:18px;background:#f6f8fb;border-radius:12px;color:#334155}.public-page .feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.public-page .feature-item{padding:18px;border:1px solid var(--nx-line);border-radius:14px;background:#fbfcfe}.public-page .feature-item h4{margin:0 0 6px}.public-page .feature-item p{margin:0;color:var(--nx-muted);font-size:13px;line-height:1.65}@media(max-width:760px){.public-page .feature-grid{grid-template-columns:1fr}.auth-page .site-main{padding-top:30px}}

/* =========================================================
   NexaIoT Final Testing Homepage — stable animated product story
   ========================================================= */
.nx-home-hero{position:relative;overflow:hidden;padding:92px 0 74px;background:linear-gradient(180deg,#fff 0%,#fbfcff 62%,#f7f9ff 100%);border-bottom:1px solid var(--nx-line)}
.nx-home-glow{position:absolute;border-radius:999px;filter:blur(10px);pointer-events:none;opacity:.7}.nx-home-glow-a{width:520px;height:520px;right:-150px;top:-170px;background:radial-gradient(circle,rgba(72,89,255,.12),transparent 66%)}.nx-home-glow-b{width:420px;height:420px;left:-220px;bottom:-220px;background:radial-gradient(circle,rgba(47,107,255,.08),transparent 68%)}
.nx-home-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);gap:62px;align-items:center;position:relative;z-index:1}.nx-home-copy h1{font-family:'Exo 2','DM Sans',sans-serif;font-size:clamp(52px,5.3vw,78px);line-height:.98;letter-spacing:-.055em;margin:18px 0 24px;color:#111827;max-width:760px}.nx-home-copy h1 span{background:linear-gradient(135deg,#2f6bff,#6d55ff);-webkit-background-clip:text;background-clip:text;color:transparent}.nx-home-copy>p{font-size:18px;line-height:1.72;color:#667085;max-width:700px}.nx-trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:30px}.nx-trust-row>span{padding:15px 16px;border:1px solid #e7eaf0;border-radius:15px;background:rgba(255,255,255,.78);box-shadow:0 10px 28px rgba(17,24,39,.045);backdrop-filter:blur(12px)}.nx-trust-row b{display:block;font-size:13px;color:#202939;margin-bottom:5px}.nx-trust-row small{display:block;color:#8490a3;font-size:11px;line-height:1.45}
.nx-signal-stage{position:relative;height:520px;border:1px solid #e5e8f0;border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(247,249,255,.88));box-shadow:0 32px 80px rgba(36,51,89,.12);overflow:hidden;isolation:isolate}.nx-signal-stage:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(97,111,154,.12) 1px,transparent 0);background-size:24px 24px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.52),transparent 90%);z-index:-1}.nx-stage-label{position:absolute;top:24px;left:27px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7e889c}.nx-signal-lines{position:absolute;inset:56px 22px 18px;width:calc(100% - 44px);height:calc(100% - 74px);overflow:visible}.nx-path{fill:none;stroke:#cfd7f3;stroke-width:2;stroke-linecap:round;stroke-dasharray:7 9;animation:nxDash 8s linear infinite}.nx-path.p2,.nx-path.p5{stroke:#a8b8ff}.nx-path.p3,.nx-path.p6{animation-delay:-3s}@keyframes nxDash{to{stroke-dashoffset:-128}}
.nx-device-node,.nx-output-node{position:absolute;display:flex;align-items:center;gap:11px;padding:12px 13px;background:#fff;border:1px solid #e7eaf2;border-radius:16px;box-shadow:0 12px 28px rgba(25,37,72,.08);min-width:180px;z-index:3}.nx-device-node{left:24px}.nx-device-node.node-a{top:86px}.nx-device-node.node-b{top:216px}.nx-device-node.node-c{top:346px}.nx-output-node{right:24px}.nx-output-node.out-a{top:86px}.nx-output-node.out-b{top:216px}.nx-output-node.out-c{top:346px}.nx-device-node .nx-node-icon,.nx-output-node>i{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#f0f4ff;color:#4157ff;font-style:normal;font-weight:800;flex:none}.nx-device-node div,.nx-output-node div{min-width:0}.nx-device-node b,.nx-output-node b{display:block;font-size:12px;color:#202939}.nx-device-node small,.nx-output-node small{display:block;font-size:10px;color:#8a94a6;margin-top:2px}.nx-device-node>span{margin-left:auto;font-size:9px;font-weight:800;color:#5368ff;background:#eef1ff;border-radius:999px;padding:4px 6px}
.nx-core-orb{position:absolute;left:50%;top:50%;transform:translate(-50%,-46%);width:150px;height:150px;border-radius:44px;background:linear-gradient(145deg,#315cf4,#704ff7);box-shadow:0 24px 55px rgba(65,75,239,.3);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;z-index:4}.nx-core-orb strong{font-size:23px;letter-spacing:-.04em}.nx-core-orb strong span{color:#d7dcff}.nx-core-orb small{font-size:10px;line-height:1.5;opacity:.82;margin-top:6px}.nx-core-pulse{position:absolute;inset:-18px;border:1px solid rgba(82,99,255,.28);border-radius:54px;animation:nxPulse 2.8s ease-out infinite;z-index:-1}@keyframes nxPulse{0%{transform:scale(.92);opacity:.8}70%,100%{transform:scale(1.22);opacity:0}}
.nx-packet{position:absolute;z-index:5;font-size:8px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:#fff;color:#5368ff;border:1px solid #dce2ff;border-radius:999px;padding:4px 7px;box-shadow:0 7px 16px rgba(40,58,112,.09)}.packet-1{top:146px;left:30%;animation:nxPacket1 4.7s ease-in-out infinite}.packet-2{top:277px;left:22%;animation:nxPacket2 5.2s ease-in-out infinite -1.4s}.packet-3{top:405px;right:27%;animation:nxPacket3 5.5s ease-in-out infinite -2.2s}@keyframes nxPacket1{0%,15%{transform:translateX(-30px);opacity:0}30%,72%{opacity:1}88%,100%{transform:translateX(120px);opacity:0}}@keyframes nxPacket2{0%,15%{transform:translateX(-22px);opacity:0}30%,72%{opacity:1}88%,100%{transform:translateX(150px);opacity:0}}@keyframes nxPacket3{0%,15%{transform:translateX(42px);opacity:0}30%,72%{opacity:1}88%,100%{transform:translateX(-125px);opacity:0}}
.nx-home-proof{background:#fff;border-bottom:1px solid var(--nx-line)}.nx-proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.nx-proof-item{display:flex;gap:13px;padding:24px 20px;border-right:1px solid #edf0f4}.nx-proof-item:last-child{border-right:0}.nx-proof-item>span{font-size:11px;font-weight:800;color:#6072ff;background:#f0f3ff;width:31px;height:31px;border-radius:10px;display:grid;place-items:center;flex:none}.nx-proof-item b{font-size:13px;display:block;color:#252d3d}.nx-proof-item small{font-size:11px;color:#8a94a6;display:block;line-height:1.45;margin-top:3px}
.nx-usecase-switcher{border:1px solid #e5e8ef;border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(37,48,82,.08);overflow:hidden}.nx-usecase-tabs{display:flex;gap:7px;padding:10px;border-bottom:1px solid #edf0f5;background:#fafbfe;overflow:auto}.nx-usecase-tabs button{appearance:none;border:0;background:transparent;padding:10px 14px;border-radius:11px;font:600 12px 'DM Sans',sans-serif;color:#778195;cursor:pointer;white-space:nowrap}.nx-usecase-tabs button.active{background:#fff;color:#345cff;box-shadow:0 4px 15px rgba(43,58,107,.1)}.nx-usecase-panel{display:none;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:center;padding:34px}.nx-usecase-panel.active{display:grid;animation:nxFadeUp .35s ease both}@keyframes nxFadeUp{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.nx-usecase-copy>span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#6c7b94}.nx-usecase-copy h3{font-size:27px;margin:7px 0 10px;letter-spacing:-.035em;color:#171f2d}.nx-usecase-copy p{color:#6d788a;line-height:1.7;font-size:14px}.nx-metric-samples{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.nx-metric-samples>div{padding:20px 15px;border:1px solid #e9ecf2;border-radius:17px;background:linear-gradient(180deg,#fff,#fafbff);min-height:120px;display:flex;flex-direction:column;justify-content:center}.nx-metric-samples i{font-style:normal;font-size:22px;color:#5267ff;margin-bottom:13px}.nx-metric-samples b{font-size:13px;color:#253047}.nx-metric-samples small{font-size:10px;color:#96a0b1;margin-top:4px}
.nx-integrity-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.nx-integrity-card{padding:28px;border:1px solid #e7eaf0;border-radius:22px;background:#fff;box-shadow:0 14px 42px rgba(31,44,78,.055)}.nx-integrity-card h3{font-size:20px;margin:21px 0 8px;color:#1d2636}.nx-integrity-card p{font-size:13px;line-height:1.7;color:#748095}.nx-time-line{display:flex;gap:7px;align-items:stretch}.nx-time-line span{flex:1;padding:13px;border-radius:13px;background:#f6f8fb;border:1px solid #edf0f5;font-size:12px;font-weight:800}.nx-time-line span.good{color:#158357;background:#effbf5;border-color:#d8f3e6}.nx-time-line span.off{color:#b54a4a;background:#fff4f4;border-color:#f5dddd}.nx-time-line strong{display:block;font-size:9px;font-weight:600;opacity:.68;margin-top:5px}.nx-status-orbit{position:relative;height:92px;display:flex;align-items:center;justify-content:center;gap:10px}.nx-status-orbit span{padding:8px 11px;border-radius:999px;font-size:10px;font-weight:800;background:#f5f7fa;border:1px solid #e9edf2;z-index:2}.nx-status-orbit .online{color:#12875a;background:#eefbf5}.nx-status-orbit .waiting{color:#a66b10;background:#fff8e7}.nx-status-orbit .offline{color:#ba4a4a;background:#fff1f1}.nx-status-orbit i{position:absolute;width:240px;height:64px;border:1px dashed #d7def1;border-radius:50%;animation:nxSpin 14s linear infinite}@keyframes nxSpin{to{transform:rotate(360deg)}}
.nx-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.nx-feature-card{padding:24px;border:1px solid #e5e9f0;border-radius:20px;background:#fff;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.nx-feature-card:hover{transform:translateY(-4px);border-color:#cfd7ff;box-shadow:0 18px 42px rgba(45,61,109,.09)}.nx-feature-card>i{width:39px;height:39px;border-radius:12px;background:#eff3ff;color:#4963ff;display:grid;place-items:center;font-style:normal;font-weight:800}.nx-feature-card h3{font-size:17px;margin:17px 0 7px;color:#202a3a}.nx-feature-card p{font-size:13px;line-height:1.65;color:#788397}.nx-home-cta{padding:14px 0 76px;background:#fff}.nx-cta-card{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px 38px;border-radius:25px;background:linear-gradient(135deg,#f4f6ff,#fbfbff);border:1px solid #e1e6ff;box-shadow:0 15px 45px rgba(49,70,140,.08)}.nx-cta-card h2{font-size:31px;letter-spacing:-.04em;margin:7px 0 8px;color:#182133}.nx-cta-card p{font-size:13px;color:#768197}.top-home-link{font-size:20px!important;line-height:1;text-decoration:none}.top-home-link:hover{color:var(--color-accent)}
@media(max-width:1100px){.nx-home-grid{grid-template-columns:1fr;gap:42px}.nx-signal-stage{max-width:760px;width:100%;margin:auto}.nx-trust-row{max-width:760px}.nx-proof-grid{grid-template-columns:repeat(2,1fr)}.nx-proof-item:nth-child(2){border-right:0}.nx-proof-item:nth-child(-n+2){border-bottom:1px solid #edf0f4}}
@media(max-width:760px){.nx-home-hero{padding:58px 0 48px}.nx-home-copy h1{font-size:44px}.nx-trust-row{grid-template-columns:1fr}.nx-signal-stage{height:auto;padding:62px 16px 20px;display:grid;grid-template-columns:1fr;gap:10px}.nx-signal-lines,.nx-packet{display:none}.nx-device-node,.nx-output-node,.nx-core-orb{position:relative;left:auto!important;right:auto!important;top:auto!important;transform:none!important;width:100%;min-width:0}.nx-core-orb{height:120px;border-radius:24px}.nx-proof-grid{grid-template-columns:1fr}.nx-proof-item{border-right:0;border-bottom:1px solid #edf0f4}.nx-usecase-panel{grid-template-columns:1fr;padding:22px}.nx-metric-samples{grid-template-columns:1fr}.nx-integrity-grid,.nx-feature-grid{grid-template-columns:1fr}.nx-time-line{flex-direction:column}.nx-cta-card{flex-direction:column;align-items:flex-start;padding:28px}.nx-cta-card .hero-actions{width:100%}}
@media(prefers-reduced-motion:reduce){.nx-path,.nx-core-pulse,.nx-packet,.nx-status-orbit i{animation:none!important}}
