/* NEBULA: CSS/SVG, no rendering loop or third party GPU engine. */
.nx-scene{--nx-data:#8296ad;position:relative;isolation:isolate;overflow:hidden;border:1px solid #7aa7d33b;border-radius:24px;background:radial-gradient(ellipse at 50% 43%,#174b6850,transparent 48%),radial-gradient(ellipse at 85% 0%,#6556c321,transparent 45%),linear-gradient(150deg,#0e192beb,#080f1deb);box-shadow:inset 0 1px #d3ecff15,0 25px 70px #0004;color:#ecf5ff;margin-bottom:28px;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.nx-top,.nx-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 28px;position:relative;z-index:3}.nx-kicker{font-size:10px;letter-spacing:.2em;color:#93bbd2;font-weight:650}.nx-motion{border:1px solid #aac5e42b;background:#a8d7ff0a;color:#a9c3da;border-radius:30px;font:11px system-ui;padding:8px 13px;cursor:pointer}.nx-stage{position:relative;height:550px;perspective:1000px}.nx-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.nx-wire{fill:none;stroke:#587fa4;stroke-width:1.6;vector-effect:non-scaling-stroke;stroke-dasharray:4 5}.nx-floor{position:absolute;left:18%;right:18%;height:230px;bottom:40px;background:linear-gradient(#8daff315 1px,transparent 1px),linear-gradient(90deg,#8daff315 1px,transparent 1px);background-size:32px 32px;transform:rotateX(68deg);mask-image:radial-gradient(ellipse,#000,transparent 70%);pointer-events:none}.nx-core{position:absolute;left:50%;top:46%;width:225px;height:240px;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:2}.nx-core strong{font-size:30px;letter-spacing:.22em;margin:25px 0 5px;padding-left:.22em;text-shadow:0 0 24px #7feaff55}.nx-core small{color:#88acbc;font-size:8px;letter-spacing:.22em}.nx-globe{width:115px;height:115px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;border:1px solid #acecff7a;background:radial-gradient(circle at 34% 25%,#b9f6ff5c,#45799638 45%,#102c4277 65%);box-shadow:inset -18px -15px 40px #03091899,inset 0 0 26px #9eefff35,0 0 48px #56c9fe24;position:relative}.nx-globe:before,.nx-globe:after{content:'';position:absolute;inset:13px -4px;border:1px solid #b3f6ff45;border-radius:50%;transform:rotate(-35deg) scaleY(.42)}.nx-globe:after{transform:rotate(45deg) scaleY(.42)}.nx-globe span{font-size:60px;font-family:Georgia,serif;color:#bef4fa;text-shadow:0 0 20px #7bfcffa0}.nx-core-orbits{position:absolute;top:-8px;left:8px;width:210px;height:210px;transform-style:preserve-3d}.nx-core-orbits i{position:absolute;inset:0;border:1px solid #7bd9ff80;border-radius:50%;box-shadow:0 0 12px #5cc7ff12;animation:nx-orbit 26s linear infinite;transform:rotateX(68deg) rotateY(20deg)}.nx-core-orbits i:nth-child(2){inset:-15px;border-color:#b5a5f970;animation:nx-orbit-b 34s linear infinite}.nx-core-orbits i:nth-child(3){inset:16px;border-style:dashed;border-color:#97f9e757;animation:nx-orbit 43s linear infinite reverse}.nx-core-orbits i:after{content:'';position:absolute;top:24px;left:21px;width:6px;height:6px;border-radius:50%;background:#baf2ff;box-shadow:0 0 16px #93eaff}.nx-node{position:absolute;width:24%;min-height:146px;padding:20px;text-align:left;display:flex;flex-direction:column;gap:9px;z-index:2;color:#eaf6ff;border:1px solid #89b7e240;border-radius:15px;background:linear-gradient(130deg,#9ccaf214,#4d799711 55%,#142136dd);box-shadow:inset 0 1px #b6dcff17,0 12px 30px #0003;font-family:inherit;transition:transform .3s,border-color .3s}.nx-node:hover,.nx-node:focus-visible{transform:translateY(-5px);border-color:#9adfff90;outline:2px solid #83dfff40;outline-offset:4px}.nx-node-0{left:4%;top:9%;transform:rotateY(8deg)}.nx-node-1{right:4%;top:9%;transform:rotateY(-8deg)}.nx-node-2{right:4%;bottom:10%;transform:rotateY(-8deg)}.nx-node-index{font-size:8px;letter-spacing:.2em;color:#86afc9}.nx-node strong{font-size:18px;letter-spacing:.02em}.nx-status{font-size:8px;color:var(--nx-data);letter-spacing:.08em}.nx-status:before{content:'';display:inline-block;width:5px;height:5px;margin-right:7px;border-radius:50%;background:currentColor}.nx-metric{font-size:15px;font-weight:500}.nx-detail{font-size:10px;line-height:1.5;color:#98aec6}.nx-note{position:absolute;bottom:14%;left:5%;width:24%;font-size:12px;line-height:1.65;color:#98b3ca}.nx-footer{border-top:1px solid #7995b424;font-size:10px;color:#90aac0;line-height:1.7}.nx-scale{max-width:440px}.nx-fresh{color:#aecadf}.nx-fog{position:absolute;inset:0;z-index:4;pointer-events:none;background:radial-gradient(ellipse at 10% 85%,#101b2ac9,transparent 55%),radial-gradient(ellipse at 90% 5%,#101b2ab8,transparent 50%),linear-gradient(0deg,#0e192b88,transparent 48%);backdrop-filter:blur(.7px)}.nx-scene[data-preview=true] .nx-status{color:#8dadc9}.nx-scene[data-preview=true] .nx-wire{stroke:#94c5ef60}.nx-scene[data-paused=true] *,html[data-sc-power=eco] .nx-scene *,html[data-sc-power=eco] .jx-presence *{animation-play-state:paused!important}.nx-scene[data-preview=true] .nx-core{opacity:.85}.nx-preview-caption{max-width:760px;line-height:1.8;color:#a7bad0}.nx-public{max-width:1250px;margin:auto;padding:30px}.nx-public h1{font:500 clamp(32px,5vw,60px)/1.12 system-ui;letter-spacing:-.04em;color:#f2f7ff}.nx-public-body{margin:0;background:#080f1c;color:#dcecff;font-family:system-ui}.nx-public nav{display:flex;gap:26px;padding:20px 0}.nx-public a{color:#abeef1;text-decoration:none}.nx-public .nx-scene{margin-top:36px}.nx-advanced{margin:25px 0}.nx-advanced>summary{padding:18px;border:1px solid #86b7d32b;border-radius:12px;cursor:pointer;color:#a6bdd3;background:#a2c2ef08}.nx-advanced[open]>summary{margin-bottom:18px}
/* Keep glass and depth visible in Eco; only motion is reduced. */
body:has(#app){background:radial-gradient(ellipse at 75% 0%,#16274977,transparent 55%),#080e18}.app .sidebar{background:#0a1320e8;border-color:#6b9fcc26}.app .panel,.app .stat,.app .project-card{background:linear-gradient(140deg,#aacfff0c,#17233450);border-color:#7da7ce2a;box-shadow:inset 0 1px #e4f7ff09}.app .topbar{background:#0d1623b3}.app .page-heading h1{font-weight:550;letter-spacing:-.045em}.app .nav.active{background:linear-gradient(100deg,#6aaee921,#8ff2ec08);border-color:#95ddea45;color:#bef3fc}.app .gold{color:#83d9ef}.app .primary{background:linear-gradient(110deg,#a6e8ea,#9baded);border:0;color:#092335}.app .stats{margin-bottom:24px}.login-shell{background:radial-gradient(ellipse at 23% 50%,#17608233,transparent 42%),radial-gradient(ellipse at 85% 5%,#8665d722,transparent 46%);perspective:1200px}.login-card{border:1px solid #9ccee64d!important;background:linear-gradient(140deg,#a2d8fd12,#16243880)!important;box-shadow:inset 0 1px #e3faff22,0 45px 100px #0005!important;border-radius:25px!important;transform:rotateY(-3deg)}.jx-presence-hero{filter:drop-shadow(0 0 30px #63caff40)}.jx-intro{background:radial-gradient(ellipse at 20% 50%,#12577950,transparent),#0b1626f5!important;border-color:#a0d4fa55!important;box-shadow:0 30px 100px #0008}.jx-intro:not([hidden]){animation:nx-enter .8s ease-out}.jx-core-ring{stroke:#9aedff}html[data-jx-auth=authenticated] .jx-presence{color:#a5f7dd}
@keyframes nx-orbit{from{transform:rotateX(68deg) rotateY(20deg) rotateZ(0)}to{transform:rotateX(68deg) rotateY(20deg) rotateZ(360deg)}}@keyframes nx-orbit-b{from{transform:rotateX(25deg) rotateY(67deg) rotateZ(0)}to{transform:rotateX(25deg) rotateY(67deg) rotateZ(-360deg)}}@keyframes nx-enter{from{opacity:0;transform:translateY(22px) scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.nx-scene *,.jx-intro{animation:none!important;transition:none!important}}@media(max-width:800px){.nx-stage{height:600px}.nx-node{width:35%;min-height:120px;padding:13px}.nx-node-0{left:3%;top:3%}.nx-node-1{right:3%;top:3%}.nx-node-2{right:3%;bottom:3%}.nx-core{top:50%;transform:translate(-50%,-50%) scale(.85)}.nx-note{left:4%;bottom:6%;width:37%;font-size:11px}.nx-connections{opacity:.3}.nx-top,.nx-footer{padding:15px;flex-wrap:wrap}.nx-kicker{font-size:8px}.nx-node strong{font-size:14px}.nx-detail{font-size:9px}.nx-public{padding:18px}.login-card{transform:none}}
.sf-heading{display:flex;flex-wrap:wrap;align-items:center;gap:20px;justify-content:space-between;font-size:22px;font-weight:550}.sf-tabs{display:flex;flex-wrap:wrap;gap:7px}.sf-tabs button{font-size:11px;padding:10px 14px;border-radius:30px;color:#a7bfd8;background:#87b9e20a;border:1px solid #84a9d133;cursor:pointer}.sf-tabs button.active{color:#c5f4fa;border-color:#91dffb70;background:#88d7e51b}.sf-caption{color:#8fa8c0;font-size:11px;line-height:1.8;max-width:900px;margin:15px 0 24px}.sf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.sf-service{padding:20px;border:1px solid #769ec534;border-radius:18px;background:linear-gradient(140deg,#a2d2ff0b,#121d2b6b);box-shadow:inset 0 1px #baddff0a}.sf-service>strong{display:block;font-size:15px}.sf-service-state{display:block;font-size:9px;margin-top:9px;color:#97acc2}.sf-work{font-size:11px;line-height:1.7;color:#97acbd}.sf-branches{padding:0 0 0 12px;list-style:none;border-left:1px solid #67899c4d;margin-top:20px}.sf-branches li{position:relative;padding:10px 0 10px 12px;font-size:11px}.sf-branches li:before{content:'';position:absolute;top:18px;left:-12px;width:16px;border-top:1px solid #96c9e557}.sf-branches small{display:block;font-size:9px;line-height:1.7;color:#87a1b8;margin-top:3px}.sf-branches .sf-running{color:#a6f1ef}.sf-branches .sf-running:after{content:'';position:absolute;width:4px;height:4px;left:-14px;top:16px;background:#bbf5ff;border-radius:50%;box-shadow:0 0 10px #abf2ff;animation:sf-charge 2s ease infinite}.sf-log{margin:24px 0 35px;border:1px solid #6b95b72f;border-radius:16px;background:#22314a15;padding:18px}.sf-log summary{font-size:13px;cursor:pointer;color:#b1d0e5}.sf-log ol{list-style:none;padding:0;max-height:270px;overflow:auto}.sf-log li{padding:12px 7px;border-bottom:1px solid #86acc41c;display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:11px}.sf-log li small{grid-column:1/-1;color:#8ca4ba}.sf-log li span{color:#b2c2d4}.sf-arrived{animation:nx-enter .7s ease-out}@keyframes sf-charge{0%{transform:translateX(0);opacity:0}35%{opacity:1}100%{transform:translateX(25px);opacity:0}}html[data-sc-power=eco] .sf-running:after{animation:none}@media(prefers-reduced-motion:reduce){.sf-running:after,.sf-arrived{animation:none}}@media(max-width:650px){.sf-grid{grid-template-columns:1fr}.sf-log li{grid-template-columns:1fr}}
.nx-stage{transform-style:preserve-3d;transition:transform .3s ease-out}.nx-globe{transform:translateY(var(--nx-jump,0px)) scale(var(--nx-scale,1));transition:transform .065s linear}.nx-scene:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(1px 1px at 14% 26%,#cceaffaa,transparent),radial-gradient(1px 1px at 42% 73%,#accfff88,transparent),radial-gradient(1px 1px at 81% 45%,#acebff66,transparent);background-size:229px 271px,317px 347px,173px 227px;opacity:.4}.nx-voice-help{padding:20px;margin:20px 0;border:1px solid #7796d336;border-radius:18px;background:linear-gradient(135deg,#67548814,#3c92940b)}.nx-voice-help p{font-size:12px;line-height:1.8;color:#9aafc5}.nx-voice-help a{color:#afe3ef;font-size:12px}

.sf-error{color:#ffb0a7;font-size:11px;padding:10px;border:1px solid #e0746a40;background:#e8756510;border-radius:8px;line-height:1.7}.sf-service[data-error=true]{border-color:#e69e754b}html[data-nx-hidden=true] .sf-running:after,#nx-service-flow[data-paused=true] .sf-running:after{animation-play-state:paused}
@media(max-width:800px){.sc-workspace-bar{min-width:0;max-width:100%;box-sizing:border-box}.sc-workspace-bar .sc-workspace-nav{min-width:0;width:100%;max-width:calc(100vw - 24px);overflow-x:auto}.app,.app .workspace,.app main{min-width:0;max-width:100%;box-sizing:border-box}.app .table-wrap{max-width:100%;overflow:auto}.app .sidebar nav{max-width:100%;min-width:0;overflow-x:auto}}

/* R7: per-node readiness, components and concrete job receipts. */
.sf-readiness{margin:0 0 28px;padding:22px;border:1px solid #415a7255;border-radius:20px;background:linear-gradient(125deg,#12314a77,#10192f88);backdrop-filter:blur(18px)}
.sf-readiness h2{font-size:20px;margin:0 0 18px}.sf-readiness-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.sf-readiness article{background:#07121ca8;border:1px solid #6681a744;border-radius:14px;padding:16px;min-width:0}.sf-readiness strong{font-size:18px;color:#d9f6ff}.sf-readiness p{font-size:12px;color:#ffcb78}.sf-readiness article[data-ready=true] p{color:#72f3d3}.sf-readiness ul{padding-left:16px;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.sf-readiness span,.sf-readiness small{font-size:11px;color:#a6bed4}.sf-components{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.sf-components span{font-size:10px;border:1px solid #7da8ca33;border-radius:6px;padding:6px;overflow-wrap:anywhere}.sf-component-ok{color:#66dfc7}.sf-component-wait{color:#ffd18a}.sf-history-plan{padding:14px;border:1px solid #83b8ce33;border-radius:12px;background:#121e2d66}.sf-history-plan small{display:block;line-height:1.6}.sf-runtime-history{margin:12px 0;font-size:11px}.sf-runtime-history p{border-bottom:1px solid #71849b22;padding:7px 0;overflow-wrap:anywhere}.jx-mic-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.jx-mic-controls span{font-size:12px;color:#9fb9ce}.jx-mic-controls [aria-pressed=true]{box-shadow:0 0 30px #42dcff44;border-color:#52dfff}
@media(max-width:1150px){.sf-readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.sf-readiness-grid{grid-template-columns:1fr}}
