@import url('./nexacam-layered.css');
/* Shared layout corrections; wide data tables scroll within their container. */
/* Navigation follows the selected theme, including the dashboard hero. */
#nx-topbar { --nav-bg:#11130f; --nav-fg:#f1f3eb; --nav-muted:#b9beb0; --nav-hover:#292e22; --nav-border:#454c3c; --nav-focus:#ceff38; background:var(--nav-bg); }
html[data-theme="light"] #nx-topbar { --nav-bg:#f3f3ef; --nav-fg:#20251a; --nav-muted:#505847; --nav-hover:#e2e7d8; --nav-border:#bcc4b2; --nav-focus:#506916; }
#nx-topbar .nx-nav > a,
#nx-topbar .nx-nav-trigger { color:var(--nav-fg); background:transparent; }
#nx-topbar .nx-nav > a:hover,
#nx-topbar .nx-nav > a:focus-visible,
#nx-topbar .nx-nav > a.active,
#nx-topbar .nx-nav-group:is(:hover,:focus-within,.is-open,.active) > .nx-nav-trigger { color:var(--nav-fg); background:var(--nav-hover); }
#nx-topbar .nx-nav-simulation > .nx-nav-trigger { color:#182200; background:#ceff38; }
#nx-topbar .nx-nav-simulation:is(:hover,:focus-within,.is-open) > .nx-nav-trigger { color:#182200; background:#bce933; }
#nx-topbar .nx-nav-menu { background:var(--nav-bg); border-color:var(--nav-border); max-width:calc(100vw - 24px); }
#nx-topbar .nx-nav-group:not(.is-open) .nx-nav-menu { visibility:hidden; opacity:0; pointer-events:none; }
#nx-topbar .nx-nav-group.is-open .nx-nav-menu { visibility:visible; opacity:1; pointer-events:auto; }
#nx-topbar .nx-nav-menu a { color:var(--nav-fg); background:transparent; white-space:normal; overflow-wrap:anywhere; align-items:flex-start; min-height:44px; }
#nx-topbar .nx-nav-menu a small { color:var(--nav-muted); line-height:1.5; }
#nx-topbar .nx-nav-menu a:is(:hover,:focus-visible) { color:var(--nav-fg); background:var(--nav-hover); }
#nx-topbar .nx-nav-menu a:is(:hover,:focus-visible) small { color:var(--nav-fg); }
#nx-topbar :is(.nx-nav-trigger,.nx-nav a,.nx-menu-toggle):focus-visible { outline:2px solid var(--nav-focus); outline-offset:-4px; }
#nx-topbar .nx-menu-toggle { color:var(--nav-fg); border-color:var(--nav-border); }
@media(max-width:1180px) {
 #nx-topbar .nx-nav { background:var(--nav-bg); top:100%; max-height:calc(100dvh - 130px); }
 #nx-topbar .nx-nav-trigger { min-height:44px; }
}
.nx-nav > a,.nx-nav .nx-nav-trigger { font-size:13px; font-weight:700; line-height:1.4; }
.nx-bell-panel { width:min(480px,calc(100vw - 24px)); max-height:min(640px,calc(100dvh - 110px)); white-space:normal; }
.nx-bell-panel-body { min-height:0; overflow-x:hidden; overscroll-behavior:contain; }
.nx-bell-item,.nx-bell-item .t,.nx-bell-item .d { white-space:normal; overflow-wrap:anywhere; word-break:normal; max-height:none; text-overflow:clip; }
.nx-bell-item .t { font-size:14px; line-height:1.5; }
.nx-bell-item .d { font-size:13px; line-height:1.65; }
html[data-theme="light"] { --text-low:#5c6055; }
html[data-theme="light"] .nx-kicker,
html[data-theme="light"] .nx-nav .nx-nav-simulation > .nx-nav-trigger { color:#354b0e; }
html[data-theme="light"] .nx-tour-launch { color:#17200e; }
@media(min-width:1181px) {
 .nx-topbar { grid-template-columns:auto minmax(0,1fr) auto auto; gap:14px; }
 .nx-nav-trigger { padding-inline:10px; }
 .nx-tour-launch { align-self:center; }
}
.nx-document-form { display:flex; flex-direction:column; gap:18px; max-width:640px; }
.nx-document-form label { display:flex; flex-direction:column; gap:6px; }
.nx-document-form fieldset { border:1px solid var(--glass-border); padding:16px; }
.nx-document-form fieldset label { margin:12px 0; }
.nx-document-print dd { margin:0 0 16px; }
.nx-document-actions { display:flex; flex-wrap:wrap; gap:12px; }
@media print {
 body:has(.nx-document-print) { background:white !important; color:black !important; }
 body:has(.nx-document-print) > :not(main) { display:none !important; }
 body:has(.nx-document-print) main > :not(.nx-document-print), .nx-document-actions { display:none !important; }
 .nx-document-print { background:white !important; border:0 !important; padding:0 !important; box-shadow:none !important; opacity:1 !important; visibility:visible !important; transform:none !important; }
 .nx-document-print * { color:black !important; background:transparent !important; }
 .nx-document-print table { min-width:0 !important; width:100%; }
}
.nx-app, .glass-panel, .nx-grid > *, .nx-machine-grid > *, .nx-kpi-grid > * { min-width:0; }
.nx-app img { max-width:100%; }
.nx-table-wrap { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; }
.nx-app input, .nx-app select, .nx-app textarea { max-width:100%; box-sizing:border-box; }
.nx-app h1, .nx-app h2, .nx-app h3, .nx-ai-msg { overflow-wrap:anywhere; }
.nx-nav .nx-nav-simulation > .nx-nav-trigger { color:var(--accent-teal); border-bottom:3px solid var(--accent-teal); font-weight:800; }
.is-dashboard:not(.dashboard-data-active) .nx-nav .nx-nav-simulation > .nx-nav-trigger { color:#263716; background:#ceff38; }
.nx-machine-tools { position:relative; }
.nx-machine-tools summary { cursor:pointer; list-style:none; }
.nx-machine-tools > div { display:flex; flex-wrap:wrap; gap:8px; padding:14px; margin-top:8px; max-width:680px; border:1px solid var(--glass-border); border-radius:12px; background:var(--surface); }
.nx-simulation-invite { position:absolute; z-index:5; left:clamp(24px,4vw,64px); top:26%; width:clamp(200px,23vw,330px); padding:20px; border-left:3px solid #8cae19; color:#17200e; background:rgba(243,243,239,.96); }
.nx-simulation-invite > span { font-size:10px; letter-spacing:1.5px; font-weight:800; }
.nx-simulation-invite h2 { font:700 clamp(26px,3vw,44px)/1.1 'Chakra Petch',sans-serif; margin:14px 0; }
.nx-simulation-invite p { color:#424c37; font:500 14px/1.6 Manrope,sans-serif; margin:0 0 18px; }
.nx-simulation-invite .nx-btn { background:#ceff38; color:#142000; }
@media (hover:none) { .nx-nav-group:hover .nx-nav-menu { visibility:hidden; opacity:0; pointer-events:none; } .nx-nav-group.is-open .nx-nav-menu { visibility:visible; opacity:1; pointer-events:auto; } }
@media(max-width:1180px) {
 .nx-simulation-invite { top:auto; bottom:72px; left:20px; width:calc(100% - 40px); box-sizing:border-box; display:grid; grid-template-columns:1fr auto; gap:5px 15px; padding:14px; }
 .nx-simulation-invite > span,.nx-simulation-invite p { grid-column:1; }
 .nx-simulation-invite h2 { grid-column:1; font-size:27px; margin:2px 0; }
 .nx-simulation-invite h2 br { display:none; }
 .nx-simulation-invite .nx-btn { grid-column:2; grid-row:1 / 4; align-self:center; }
 .nx-simulation-invite p { font-size:12px; margin:0; }
 .nx-nav { max-height:calc(100vh - 85px); max-height:calc(100dvh - 85px); overflow-y:auto; overscroll-behavior:contain; }
}
@media(max-width:700px) {
 .nx-app { padding-left:14px; padding-right:14px; }
 .nx-twin-stage,.nx-sim-layout { margin-inline:-14px; }
 .nx-twin-topbar { flex-wrap:wrap; gap:12px; }
 .nx-twin-id { min-width:0; max-width:100%; }
 .nx-twin-actions { flex-wrap:wrap; }
 .nx-page-head { gap:12px; }
 .nx-page-head h1 { font-size:clamp(26px,7vw,40px); }
 .nx-app .nx-grid,.nx-app .nx-dashboard-grid,.nx-app .nx-machine-grid { grid-template-columns:minmax(0,1fr); }
 .nx-app .nx-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .nx-app form { flex-wrap:wrap; max-width:100%; }
 .nx-app input,.nx-app select,.nx-app textarea { font-size:16px; }
 .nx-app .nx-btn { white-space:normal; text-align:center; min-height:40px; }
 .nx-sim-head { display:flex; flex-direction:column; gap:14px; }
 .nx-sim-head h1 { font-size:clamp(28px,8vw,42px); }
 .nx-simulation-invite { bottom:64px; grid-template-columns:1fr; }
 .nx-simulation-invite .nx-btn { grid-column:1; grid-row:auto; justify-self:start; }
 .nx-simulation-invite p { display:none; }
 .nx-machine-tools > div { max-width:100%; }
}
@media(prefers-reduced-motion:reduce) { .nx-simulation-invite, .nx-ai-panel { transition:none; } }

/* Dashboard editorial surfaces: retain the original palette in light mode. */
html[data-theme="dark"] .is-dashboard,
html[data-theme="dark"] .is-dashboard .nx-app {
 background:var(--bg-0);
}
html[data-theme="dark"] .is-dashboard .nx-topbar {
 color:var(--text-hi);
 background:var(--nav-bg);
 border-color:var(--glass-border);
}
html[data-theme="dark"] .is-dashboard .nx-topbar :is(.nx-brand-copy,.nx-user-status,.logout,.nx-user-link) {
 color:var(--text-hi);
}
html[data-theme="dark"] .is-dashboard .nx-topbar :is(.nx-brand-copy small,.nx-nav a span) {
 color:var(--text-mid);
}
html[data-theme="dark"] .is-dashboard .nx-dashboard-hero {
 color:var(--text-hi);
 background:radial-gradient(ellipse at 25% 40%,rgba(206,255,56,.035),transparent 60%),var(--bg-0);
}
html[data-theme="dark"] .is-dashboard .nx-dashboard-hero .nx-hero-title {
 color:#fff;
 mix-blend-mode:normal;
 text-shadow:0 2px 18px rgba(0,0,0,.55);
}
html[data-theme="dark"] .is-dashboard :is(.nx-hero-meta,.nx-hero-meta strong,.nx-hero-scroll) {
 color:var(--text-hi);
}
html[data-theme="dark"] .is-dashboard :is(.nx-hero-meta > span,.nx-hero-index,.nx-hero-scroll span) {
 color:var(--text-mid);
}
html[data-theme="dark"] .is-dashboard .nx-hero-meta--right i {
 background:var(--accent-teal);
 box-shadow:0 0 0 4px rgba(206,255,56,.12);
}
html[data-theme="dark"] .is-dashboard .nx-dashboard-intro {
 background:var(--bg-1);
 border-color:var(--glass-border);
}
html[data-theme="dark"] .is-dashboard :is(.nx-dashboard-intro,.nx-dashboard-intro p,.nx-intro-foot strong) {
 color:var(--text-hi);
}
html[data-theme="dark"] .is-dashboard :is(.nx-intro-copy p em,.nx-intro-foot) {
 color:var(--text-mid);
}
html[data-theme="dark"] .is-dashboard .nx-intro-foot {
 border-color:var(--glass-border);
}
html[data-theme="dark"] .is-dashboard .nx-intro-label i {
 background:var(--text-low);
}
html[data-theme="dark"] body.is-dashboard .nx-simulation-invite {
 color:var(--text-hi);
 background:radial-gradient(ellipse at 0 0,rgba(206,255,56,.08),transparent 75%),var(--surface);
 border-color:rgba(206,255,56,.28);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 3px 0 #252c1b,0 6px 0 #11150d,0 20px 35px rgba(0,0,0,.28);
}
html[data-theme="dark"] .is-dashboard .nx-simulation-invite > span {
 color:var(--accent-teal);
}
html[data-theme="dark"] .is-dashboard .nx-simulation-invite p {
 color:var(--text-mid);
}
