:root{--bg:#071016;--panel:#0d1820;--line:#1f3440;--text:#edf7f8;--muted:#8aa4ad;--accent:#8be8d0;--accent2:#90b8ff;--warn:#ffd27a}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 70% 5%,#102a2d 0,transparent 33%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.nf-nav,main,footer{width:min(1180px,calc(100% - 32px));margin:auto}.nf-nav{height:76px;display:flex;align-items:center;justify-content:space-between}.nf-brand{color:var(--text);text-decoration:none;font-weight:700;display:flex;align-items:center;gap:10px}.nf-brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #31525d;border-radius:10px;background:#0e2028}.nf-chip,.nf-status,.nf-kicker{letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.nf-chip,.nf-status{border:1px solid var(--line);padding:7px 10px;border-radius:999px;color:var(--accent);background:#0b171d}.nf-hero{min-height:520px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:56px}.nf-kicker{color:var(--accent);font-weight:800;margin:0 0 12px}.nf-hero h1{font-size:clamp(4.5rem,10vw,8rem);line-height:.82;margin:0;letter-spacing:-.07em}.nf-lead{font-size:1.25rem;line-height:1.6;color:#bad0d6;max-width:720px}.nf-warning{margin-top:26px;padding:14px 16px;border:1px solid #5c4b27;background:#1a1710;color:var(--warn);border-radius:12px;font-size:.92rem}.nf-brain{position:relative;min-height:340px;display:grid;place-items:center}.nf-core{width:128px;height:128px;border-radius:50%;display:grid;place-items:center;font-size:2.2rem;font-weight:900;border:1px solid #4d9188;box-shadow:0 0 70px #2ee6c633;background:radial-gradient(circle,#123f3c,#09151b)}.nf-orbit{position:absolute;border:1px solid #31525d;border-radius:50%}.nf-orbit-a{width:280px;height:190px;transform:rotate(22deg)}.nf-orbit-b{width:220px;height:300px;transform:rotate(-27deg)}.nf-node{position:absolute;width:11px;height:11px;background:var(--accent);border-radius:50%;box-shadow:0 0 18px #8be8d0}.n1{top:22%;left:31%}.n2{top:34%;right:21%}.n3{bottom:22%;left:33%}.n4{bottom:33%;right:26%}.n5{top:49%;left:14%}.n6{top:18%;right:38%}.nf-grid{display:grid;gap:16px}.nf-stats{grid-template-columns:repeat(4,1fr);margin:20px 0 90px}.nf-stats article,.nf-card,.nf-metrics article{background:linear-gradient(180deg,#0e1c24,#0b151b);border:1px solid var(--line);border-radius:18px;padding:22px}.nf-stats strong{font-size:2rem;display:block}.nf-stats span,.nf-metrics span{color:var(--muted);font-size:.86rem}.nf-section{padding:72px 0;border-top:1px solid #17303b}.nf-section-head h2{font-size:clamp(2rem,4vw,3.6rem);margin:0 0 30px;letter-spacing:-.045em}.nf-experiments{grid-template-columns:repeat(3,1fr)}.nf-card-top,.nf-result-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.nf-card code{color:var(--muted)}.nf-card h3{font-size:1.35rem}.nf-card p{color:#a9c0c7;line-height:1.55}.nf-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.nf-tags span{font-size:.72rem;color:#9cc6d2;padding:6px 8px;border:1px solid #223c47;border-radius:7px}.nf-console{padding-bottom:90px}.nf-controls{display:grid;grid-template-columns:2fr 1fr .7fr auto;gap:12px;align-items:end}.nf-controls label{font-size:.8rem;color:var(--muted)}.nf-controls input,.nf-controls select,.nf-controls button{width:100%;margin-top:7px;border:1px solid #2a4652;border-radius:10px;background:#0c171e;color:var(--text);padding:12px 13px}.nf-controls button{background:var(--accent);color:#04201c;font-weight:800;cursor:pointer;border-color:transparent}.nf-results{margin-top:26px;padding:22px;border:1px solid var(--line);border-radius:18px;background:#0b151b}.nf-result-head h3{margin:9px 0 0}.nf-result-head>span{color:var(--muted);font-family:ui-monospace,monospace}.nf-metrics{grid-template-columns:repeat(4,1fr);margin:22px 0}.nf-metrics article{padding:17px}.nf-metrics strong{display:block;font-size:1.75rem;margin-top:7px}.nf-chart-wrap{overflow:auto;border:1px solid #18313b;border-radius:13px;background:#071117;padding:12px}.nf-chart-wrap canvas{width:100%;min-width:700px;height:360px}pre{white-space:pre-wrap;max-height:360px;overflow:auto;background:#061016;border:1px solid #18313b;border-radius:12px;padding:16px;color:#9ed3c7;font-size:.78rem}.nf-roadmap ol{padding-left:24px;max-width:900px}.nf-roadmap li{padding:12px 0;color:#b3c9cf;line-height:1.6}footer{border-top:1px solid #17303b;padding:30px 0 60px;display:flex;justify-content:space-between;color:#6f8c95;font-size:.82rem}@media(max-width:850px){.nf-hero{grid-template-columns:1fr;min-height:auto;padding:70px 0}.nf-brain{min-height:280px}.nf-stats,.nf-experiments,.nf-metrics{grid-template-columns:1fr 1fr}.nf-controls{grid-template-columns:1fr 1fr}.nf-controls button{grid-column:1/-1}}@media(max-width:560px){.nf-stats,.nf-experiments,.nf-metrics,.nf-controls{grid-template-columns:1fr}.nf-hero h1{font-size:4.2rem}.nf-brain{transform:scale(.82)}footer{flex-direction:column;gap:10px}}
/* NeuroFly live chamber ---------------------------------------------------- */
.nf-terminal{border:1px solid #2d414b;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#090e12,#05090c);box-shadow:0 24px 70px rgba(0,0,0,.32);min-height:390px;align-self:center}
.nf-terminal-bar{height:46px;display:flex;align-items:center;gap:8px;padding:0 13px;border-bottom:1px solid #293740;background:#151719;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.nf-dot{width:11px;height:11px;border-radius:50%;display:block}.nf-dot-red{background:#ff5f57}.nf-dot-yellow{background:#febc2e}.nf-dot-green{background:#28c840}
.nf-terminal-title{margin-left:5px;color:#9aa8ad;font-size:.7rem;letter-spacing:.08em;white-space:nowrap}
.nf-terminal-badge{margin-left:auto;color:#7fe6cd;border:1px solid #31554f;border-radius:999px;padding:5px 8px;font-size:.58rem;letter-spacing:.1em;white-space:nowrap}
.nf-terminal-body{padding:14px}.nf-terminal-log{min-height:126px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;color:#b8c6ca}
.nf-terminal-log>div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nf-prompt{color:#74e0c4}.nf-log-ok{color:#5fe3ad}.nf-log-key{color:#81aeea}
.nf-fly-stage{position:relative;height:205px;border:1px solid #19313a;border-radius:11px;overflow:hidden;background:radial-gradient(circle at 50% 55%,rgba(49,115,111,.12),transparent 45%),#050b0f}
.nf-stage-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(95,142,153,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(95,142,153,.08) 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent)}
.nf-fly{position:absolute;left:50%;top:50%;width:86px;height:58px;color:#88ead3;transform:translate(-50%,-50%) translate(var(--fly-x,0px),var(--fly-y,0px)) rotate(var(--fly-r,0deg));transform-origin:50% 50%;transition:transform 1.35s cubic-bezier(.22,.8,.24,1),color .3s ease,filter .3s ease;filter:drop-shadow(0 0 9px rgba(72,224,191,.25));will-change:transform}
.nf-fly svg{display:block;width:100%;height:100%;overflow:visible}.nf-fly-wing{transform-origin:62% 48%;animation:nfWingBeat .11s infinite alternate ease-in-out}.nf-fly-wing-b{animation-delay:.055s}.nf-fly-neural{opacity:.9;stroke-dasharray:5 4;animation:nfNeuralPulse 1.15s linear infinite}.nf-fly-node{animation:nfNodePulse 1s infinite alternate}
.nf-fly-shadow{position:absolute;left:50%;top:72%;width:56px;height:10px;border-radius:50%;background:rgba(73,215,184,.12);filter:blur(7px);transform:translate(-50%,-50%) translate(var(--shadow-x,0px),var(--shadow-y,0px));transition:transform 1.35s cubic-bezier(.22,.8,.24,1),opacity .3s}
.nf-fly.is-alert{color:#ffb878;filter:drop-shadow(0 0 12px rgba(255,167,93,.35))}.nf-fly.is-assisted{color:#9bb8ff;filter:drop-shadow(0 0 13px rgba(130,164,255,.35))}.nf-fly.is-alert .nf-fly-wing{animation-duration:.075s}.nf-fly.is-assisted .nf-fly-neural{stroke-dasharray:2 3;animation-duration:.55s}
.nf-stage-label{position:absolute;font:9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;color:#42606b}.nf-stage-label-a{left:9px;bottom:9px}.nf-stage-label-b{right:9px;top:9px}
.nf-terminal-foot{display:flex;justify-content:space-between;gap:14px;padding-top:10px;font:10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;color:#72878e}.nf-led{display:inline-block;width:7px;height:7px;border-radius:50%;background:#5fe3ad;box-shadow:0 0 8px rgba(95,227,173,.55);margin-right:6px}
@keyframes nfWingBeat{from{transform:rotate(-4deg) scaleY(.92)}to{transform:rotate(6deg) scaleY(1.08)}}@keyframes nfNeuralPulse{to{stroke-dashoffset:-18}}@keyframes nfNodePulse{from{opacity:.35}to{opacity:1}}
@media(max-width:850px){.nf-terminal{min-height:360px}.nf-fly-stage{height:190px}}
@media(max-width:560px){.nf-terminal-title{display:none}.nf-terminal-badge{font-size:.52rem}.nf-terminal-log{font-size:10px}.nf-fly-stage{height:180px}.nf-fly{width:76px}}
@media(prefers-reduced-motion:reduce){.nf-fly,.nf-fly-shadow{transition:none}.nf-fly-wing,.nf-fly-neural,.nf-fly-node{animation:none}}
