/* NexaLabs standalone shell. The experiment styles remain in labs.css/labs-advanced.css so the
   existing nine simulations keep their proven visual system while this page gains its own shell. */
:root {
  --nexa-green: #00c96a;
  --nexa-green-soft: rgba(0,201,106,.08);
  --nexa-bg: #080f0a;
  --nexa-border: #1a3022;
  --nexa-text: #e6f0e9;
  --nexa-muted: #779486;
}
.nexalabs-app { min-height:100vh; }
.nexalabs-app .labs-nav { border-bottom-color:rgba(0,201,106,.12); }
.nexalabs-app .labs-nav .labs-logo::after { content:'LABS'; margin-left:7px; color:var(--nexa-green); font-family:'DM Sans',sans-serif; font-size:.58rem; letter-spacing:1.8px; vertical-align:middle; }
.nexalabs-app .nexalabs-nav-status { display:inline-flex; align-items:center; gap:7px; color:var(--nexa-muted); font-size:.63rem; font-weight:800; letter-spacing:1px; text-transform:uppercase; }
.nexalabs-app .nexalabs-nav-status::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--nexa-green); box-shadow:0 0 14px rgba(0,201,106,.7); }
.nexalabs-app .nexalabs-shell-strip { width:min(1220px,calc(100% - 32px)); margin:0 auto; padding:16px 0 0; display:flex; align-items:center; justify-content:space-between; gap:14px; color:var(--nexa-muted); font-size:.7rem; }
.nexalabs-app .nexalabs-shell-strip strong { color:var(--nexa-text); }
.nexalabs-app .nexalabs-shell-strip a { color:var(--nexa-green); text-decoration:none; font-weight:800; }
.nexalabs-app .nexalabs-shell-strip a:hover { text-decoration:underline; }
.nexalabs-app .nexalabs-loader,.nexalabs-app .nexalabs-error { min-height:640px; display:grid; place-content:center; justify-items:center; gap:8px; padding:40px; text-align:center; background:radial-gradient(circle at 50% 40%,rgba(0,201,106,.06),transparent 35%),#08100b; }
.nexalabs-app .nexalabs-loader strong,.nexalabs-app .nexalabs-error h3 { color:var(--nexa-text); }
.nexalabs-app .nexalabs-loader span,.nexalabs-app .nexalabs-error p { color:var(--nexa-muted); font-size:.76rem; max-width:460px; line-height:1.65; }
.nexalabs-app .nexalabs-spinner { width:42px; height:42px; border:3px solid rgba(0,201,106,.14); border-top-color:var(--nexa-green); border-radius:50%; animation:nexalabs-spin .8s linear infinite; }
@keyframes nexalabs-spin { to { transform:rotate(360deg); } }
.nexalabs-app #nexalabs-status[data-tone="accent"] { color:var(--nexa-green); }
.nexalabs-app #nexalabs-status[data-tone="danger"] { color:#ff5f73; }
.nexalabs-app .nexalabs-error-code { color:#ff5f73; font-size:.62rem; font-weight:900; letter-spacing:1.4px; }
@media (max-width:700px) {
  .nexalabs-app .nexalabs-shell-strip { width:calc(100% - 20px); align-items:flex-start; flex-direction:column; }
  .nexalabs-app .nexalabs-shell-strip span { display:none; }
  .nexalabs-app .nexalabs-loader,.nexalabs-app .nexalabs-error { min-height:460px; padding:24px; }
}
