.nx{--bg:#0f1113;--panel:#15181b;--surface:#1a1e22;--card:#20262c;--raised:#262c33;--line:#ffffff12;--line-2:#ffffff1f;--line-3:#ffffff2e;--ink:#ece8e0;--muted:#9ca0a8;--dim:#686d76;--green:#6fbe71;--green-bright:#9be89c;--green-dim:#4e8a52;--amber:#e4b257;--amber-bright:#f4ce7e;--red:#eb6a6a;--red-bright:#ff9090;--blue:#5fa8e0;--violet:#9b8cf0;--accent:var(--green);--accent-bright:var(--green-bright);--accent-dim:var(--green-dim);--accent-rgb:111,190,113;--glow:0 0 24px rgba(var(--accent-rgb), .22);--chip-fill:.16;--r-xs:5px;--r-sm:8px;--r-md:11px;--r-lg:16px;--r-pill:999px;--pad-card:20px;--row-h:40px;--gap:16px;--font-display:"Space Grotesk", system-ui, sans-serif;--font-sans:"Hanken Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv01"}.nx .font-display{font-family:var(--font-display)}.nx .font-mono{font-family:var(--font-mono)}.nx .eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:10.5px;font-weight:500}.nx .num{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.nx .mono{font-family:var(--font-mono)}.nx .card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.nx .panel-surface{background:var(--surface)}.nx ::-webkit-scrollbar{width:9px;height:9px}.nx ::-webkit-scrollbar-thumb{background:var(--line-3);background-clip:padding-box;border:2px solid #0000;border-radius:6px}.nx ::-webkit-scrollbar-track{background:0 0}.nx .code-link{font-family:var(--font-mono);letter-spacing:.02em;color:var(--accent-bright);font-weight:600}.nx .code-link:hover{text-underline-offset:3px;text-decoration:underline}.nx .lot-code{font-family:var(--font-mono);color:var(--amber);font-weight:600}.nx .chip{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--r-pill);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:3px 9px 3px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.nx .chip .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.nx .chip[data-tone=green]{color:var(--green);border-color:color-mix(in srgb, var(--green) 38%, transparent);background:color-mix(in srgb, var(--green) calc(var(--chip-fill) * 100%), transparent)}.nx .chip[data-tone=amber]{color:var(--amber);border-color:color-mix(in srgb, var(--amber) 38%, transparent);background:color-mix(in srgb, var(--amber) calc(var(--chip-fill) * 100%), transparent)}.nx .chip[data-tone=red]{color:var(--red);border-color:color-mix(in srgb, var(--red) 42%, transparent);background:color-mix(in srgb, var(--red) calc(var(--chip-fill) * 100%), transparent)}.nx .chip[data-tone=blue]{color:var(--blue);border-color:color-mix(in srgb, var(--blue) 38%, transparent);background:color-mix(in srgb, var(--blue) calc(var(--chip-fill) * 100%), transparent)}.nx .chip[data-tone=violet]{color:var(--violet);border-color:color-mix(in srgb, var(--violet) 38%, transparent);background:color-mix(in srgb, var(--violet) calc(var(--chip-fill) * 100%), transparent)}.nx .chip[data-tone=muted]{color:var(--muted);border-color:var(--line-2);background:0 0}.nx .btn{font-family:var(--font-sans);border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);height:38px;min-height:36px;color:var(--muted);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.nx .btn:hover{border-color:var(--line-2);color:var(--ink);background:#ffffff08}.nx .btn:active{background:var(--line)}.nx .btn svg{width:16px;height:16px}.nx .btn-primary{background:var(--accent);color:#0b140b;border-color:var(--accent);box-shadow:var(--glow)}.nx .btn-primary:hover{background:var(--accent-bright);filter:brightness(1.15)}.nx .btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.nx .btn-danger{background:var(--red);color:#fff;border-color:var(--red)}.nx .btn-danger:hover{background:var(--red-bright);filter:brightness(1.15)}.nx .btn-ghost{color:var(--dim);background:0 0;border-color:#0000}.nx .btn-ghost:hover{color:var(--muted);background:#ffffff08}.nx .btn-sm{height:30px;min-height:34px;padding:0 10px;font-size:12px}.nx .btn-icon{width:38px;padding:0}.nx .tbl{border-collapse:collapse;width:100%}.nx .tbl thead th{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);text-align:left;white-space:nowrap;padding:0 14px 10px;font-size:10px;font-weight:600}.nx .tbl tbody td{height:var(--row-h);border-top:1px solid var(--line);vertical-align:middle;padding:0 14px;font-size:13.5px}.nx .tbl tbody tr{transition:background .12s}.nx .tbl tbody tr:hover{background:#ffffff06}.nx .tbl .right{text-align:right}.nx .gauge-track{stroke:var(--line-2)}.nx .gauge-fill{stroke:var(--accent);filter:drop-shadow(0 0 6px color-mix(in srgb, var(--accent) 40%, transparent));transition:stroke-dashoffset .9s cubic-bezier(.22,1,.36,1)}.nx .vbar{background:var(--line);border-radius:var(--r-pill);position:relative;overflow:hidden}.nx .vbar>span{border-radius:var(--r-pill);transition:height .8s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;left:0;right:0}.nx .pipe{border-radius:var(--r-pill);gap:3px;height:12px;display:flex;overflow:hidden}.nx .pipe>span{transition:flex .8s cubic-bezier(.22,1,.36,1)}.nx .hov-row:hover{background:#ffffff06}.nx .qa-tile:hover{background:var(--raised)!important}@keyframes nx-pulse-dot{0%,to{opacity:1}50%{opacity:.35}}.nx .live-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 8px var(--green);border-radius:50%;animation:2s ease-in-out infinite nx-pulse-dot}@keyframes nx-sweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.nx .nx-spin{animation:2.6s linear infinite nx-sweep}@keyframes nx-rise{0%{opacity:.6;transform:translateY(7px)}to{opacity:1;transform:none}}.nx .rise{animation:.42s cubic-bezier(.22,1,.36,1) both nx-rise}@keyframes nx-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.nx .skel{background:linear-gradient(90deg, var(--line) 25%, var(--line-2) 37%, var(--line) 63%);background-size:200% 100%;border-radius:4px;animation:1.4s infinite nx-shimmer}.nx .divider{background:var(--line);height:1px}.nx :focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.nx *,.nx :before,.nx :after{transition:none!important;animation:none!important}}.nx .nx-sidebar{z-index:60;background:var(--panel);border-right:1px solid var(--line);flex-direction:column;width:244px;transition:width .22s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.nx .nx-sidebar.nx-sidebar--collapsed{width:64px}.nx .nx-sidebar-brand{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:10px;min-height:52px;padding:14px 16px;display:flex}.nx .nx-sidebar--collapsed .nx-sidebar-brand{justify-content:center;padding:14px 0}.nx .nx-sidebar-brand .nx-brand-icon{flex-shrink:0;font-size:20px;line-height:1}.nx .nx-sidebar-brand .nx-brand-text{white-space:nowrap;overflow:hidden}.nx .nx-sidebar--collapsed .nx-sidebar-brand .nx-brand-text{display:none}.nx .nx-sidebar-brand .nx-brand-org{font-family:var(--font-mono);color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.nx .nx-sidebar-search{flex-shrink:0;padding:10px 12px}.nx .nx-sidebar--collapsed .nx-sidebar-search{padding:10px 8px}.nx .nx-sidebar-search-btn{border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface);width:100%;height:34px;color:var(--dim);cursor:pointer;font-family:var(--font-sans);text-align:left;align-items:center;gap:8px;padding:0 10px;font-size:12.5px;transition:border-color .15s,background .15s;display:flex}.nx .nx-sidebar-search-btn:hover{border-color:var(--line-3);background:var(--card)}.nx .nx-sidebar--collapsed .nx-sidebar-search-btn{justify-content:center;width:40px;margin:0 auto;padding:0}.nx .nx-sidebar-search-btn kbd{font-family:var(--font-mono);border:1px solid var(--line-2);background:var(--panel);color:var(--dim);border-radius:4px;margin-left:auto;padding:1px 5px;font-size:10px}.nx .nx-sidebar--collapsed .nx-sidebar-search-btn kbd,.nx .nx-sidebar--collapsed .nx-sidebar-search-btn span{display:none}.nx .nx-sidebar-nav{flex:1;padding:8px 0;overflow:hidden auto}.nx .nx-sidebar--collapsed .nx-sidebar-nav{padding:8px 0}.nx .nx-nav-group-label-btn{cursor:pointer;width:100%;height:28px;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:6px;margin:6px 0 2px;padding:0 16px;font-size:9.5px;font-weight:600;transition:color .12s;display:flex}.nx .nx-nav-group-label-btn:hover{color:var(--muted)}.nx .nx-nav-group-label-btn.active{color:var(--accent-bright)}.nx .nx-nav-group-chevron{flex-shrink:0;justify-content:center;align-items:center;width:10px;transition:transform .18s;display:flex}.nx .nx-nav-group-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nx .nx-sidebar--collapsed .nx-nav-group-label-btn{justify-content:center;height:30px;padding:0}.nx .nx-sidebar--collapsed .nx-nav-group-text{display:none}.nx .nx-nav-group-items{max-height:0;transition:max-height .25s cubic-bezier(.22,1,.36,1);overflow:hidden}.nx .nx-nav-group-items.open{max-height:600px}.nx .nx-sidebar--collapsed .nx-nav-group-items,.nx .nx-sidebar--collapsed .nx-nav-group-items.open{max-height:0;display:none}.nx .nx-nav-item{border-radius:var(--r-sm);height:36px;color:var(--muted);font-family:var(--font-sans);cursor:pointer;border-left:3px solid #0000;align-items:center;gap:10px;margin:1px 6px;padding:0 12px 0 16px;font-size:13px;text-decoration:none;transition:all .12s;display:flex;position:relative}.nx .nx-nav-item:hover{color:var(--ink);background:#ffffff08}.nx .nx-nav-item.active{background:rgba(var(--accent-rgb), .1);color:var(--accent-bright);border-left-color:var(--accent)}.nx .nx-sidebar--collapsed .nx-nav-item{border-radius:var(--r-sm);border-left:none;justify-content:center;margin:1px 10px;padding:0}.nx .nx-nav-item .nx-nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.nx .nx-nav-item .nx-nav-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.nx .nx-sidebar--collapsed .nx-nav-item .nx-nav-label{display:none}.nx .nx-nav-item .nx-nav-count{font-family:var(--font-mono);border-radius:var(--r-pill);background:rgba(var(--accent-rgb), var(--chip-fill));color:var(--accent);flex-shrink:0;padding:1px 7px;font-size:10.5px;font-weight:600}.nx .nx-sidebar--collapsed .nx-nav-item .nx-nav-count{display:none}.nx .nx-nav-item .nx-nav-classic-chip{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r-pill);border:1px solid var(--line-2);color:var(--dim);flex-shrink:0;padding:1px 6px;font-size:8.5px;font-weight:600}.nx .nx-sidebar--collapsed .nx-nav-item .nx-nav-classic-chip{display:none}.nx .nx-sidebar-footer{border-top:1px solid var(--line);flex-shrink:0;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:flex}.nx .nx-sidebar--collapsed .nx-sidebar-footer{justify-content:center;padding:10px 0}.nx .nx-sidebar-footer .nx-avatar{background:var(--accent);color:#0b140b;width:28px;height:28px;font-family:var(--font-sans);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.nx .nx-sidebar-footer .nx-user-info{flex:1;min-width:0;overflow:hidden}.nx .nx-sidebar--collapsed .nx-sidebar-footer .nx-user-info{display:none}.nx .nx-sidebar-footer .nx-user-name{font-family:var(--font-sans);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.nx .nx-sidebar-footer .nx-user-role{font-family:var(--font-mono);color:var(--dim);white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;overflow:hidden}.nx .nx-sidebar-footer .nx-signout-btn{width:28px;height:28px;color:var(--dim);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .12s,background .12s;display:flex}.nx .nx-sidebar-footer .nx-signout-btn:hover{color:var(--red);background:#ffffff0a}.nx .nx-sidebar--collapsed .nx-sidebar-footer .nx-signout-btn{display:none}.nx .nx-nav-collapse-btn{width:28px;height:28px;color:var(--dim);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .12s,background .12s;display:flex}.nx .nx-nav-collapse-btn:hover{color:var(--ink);background:#ffffff0d}.nx .nx-sidebar--collapsed .nx-nav-collapse-btn{margin-left:auto;margin-right:auto}@media (width<=1024px){.nx .nx-sidebar{width:244px;transition:transform .25s cubic-bezier(.22,1,.36,1),width .22s cubic-bezier(.22,1,.36,1);transform:translate(-100%)}.nx .nx-sidebar.nx-sidebar--open{transform:translate(0)}.nx .nx-sidebar.nx-sidebar--collapsed{width:244px}.nx .nx-sidebar-scrim{z-index:59;opacity:1;background:#0000008c;transition:opacity .22s;position:fixed;inset:0}}.nx .nx-content-area{margin-left:244px;transition:margin-left .22s cubic-bezier(.22,1,.36,1)}.nx .nx-content-area.nx-content-area--rail-collapsed{margin-left:64px}@media (width<=1024px){.nx .nx-content-area,.nx .nx-content-area.nx-content-area--rail-collapsed{margin-left:0}}.nx .nx-supplier-form{padding:var(--pad-card);border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);flex-direction:column;gap:12px;display:flex}.nx .nx-supplier-form-fields{flex-wrap:wrap;gap:10px;display:flex}.nx .nx-supplier-form-fields>*{flex:1;min-width:160px}.nx .nx-supplier-form-actions{align-items:center;gap:8px;padding-top:4px;display:flex}.nx .nx-input,.nx .nx-select,.nx .nx-textarea{border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);color:var(--ink);font-family:var(--font-sans);outline:none;min-height:40px;padding:8px 12px;font-size:13px;transition:border-color .15s}.nx .nx-input:focus,.nx .nx-select:focus,.nx .nx-textarea:focus{border-color:var(--line-3)}.nx .nx-input[data-invalid=true],.nx .nx-select[data-invalid=true],.nx .nx-textarea[data-invalid=true]{border-color:color-mix(in srgb, var(--red) 40%, var(--line))}.nx .nx-textarea{resize:vertical;min-height:80px}.nx select.nx-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23686D76' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}.nx .nx-field{flex-direction:column;gap:6px;display:flex}.nx .nx-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:10.5px;font-weight:500}.nx .nx-hint{font-family:var(--font-mono);color:var(--dim);font-size:10.5px}.nx .nx-error{color:var(--red);font-size:11px;font-family:var(--font-sans)}.nx .nx-error-banner{border-radius:var(--r-md);border:1px solid color-mix(in srgb, var(--red) 32%, transparent);background:color-mix(in srgb, var(--red) 8%, transparent);color:var(--red-bright);padding:10px 14px;font-size:12.5px}.nx .nx-option-card{border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;font-family:var(--font-sans);color:var(--ink);align-items:center;gap:10px;padding:9px 12px;transition:all .13s;display:flex}.nx .nx-option-card:hover{border-color:var(--line-2)}.nx .nx-option-card[data-selected=true]{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.nx .nx-option-card .nx-option-radio{border:1.5px solid var(--line-3);border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;display:grid}.nx .nx-option-card[data-selected=true] .nx-option-radio{border-color:var(--accent)}.nx .nx-option-card[data-selected=true] .nx-option-radio:after{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px}.nx .nx-stepper{align-items:center;gap:10px;display:flex}.nx .nx-step{align-items:center;gap:8px;display:flex}.nx .nx-step-num{width:22px;height:22px;font-family:var(--font-display);background:var(--surface);color:var(--dim);border:1px solid var(--line);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.nx .nx-step[data-active=true] .nx-step-num{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent-bright);border-color:var(--accent)}.nx .nx-step[data-done=true] .nx-step-num{background:var(--accent);color:#0b140b;border-color:#0000}.nx .nx-step-label{color:var(--dim);font-size:12.5px;font-weight:500}.nx .nx-step[data-active=true] .nx-step-label{color:var(--ink)}.nx .nx-step[data-done=true] .nx-step-label{color:var(--accent)}.nx .nx-step-connector{background:var(--line-2);width:22px;height:1px}.nx .nx-success-card{text-align:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);max-width:520px;margin:40px auto;padding:40px}.nx .nx-success-icon{background:color-mix(in srgb, var(--accent) 16%, transparent);width:64px;height:64px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.nx .nx-page{gap:var(--gap);flex-direction:column;margin:0 auto;display:flex}.nx .nx-page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.nx .nx-page-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:22px;font-weight:600}.nx .nx-page-sub{font-family:var(--font-mono);color:var(--dim);font-size:12px}.nx .nx-back-link{font-family:var(--font-mono);color:var(--dim);align-items:center;gap:6px;font-size:10.5px;text-decoration:none;transition:color .12s;display:inline-flex}.nx .nx-back-link:hover{color:var(--muted)}.nx .nx-panel-head{border-bottom:1px solid var(--line);align-items:center;gap:9px;padding:14px 16px;display:flex}.nx .nx-panel-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:14px;font-weight:600}.nx .nx-form-stack{flex-direction:column;gap:14px;display:flex}.nx .nx-form-row-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.nx .nx-kpi-grid{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.nx .nx-main-grid{gap:var(--gap);grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start;display:grid}.nx .nx-room-grid{grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:13px;padding:15px;display:grid}@media (width<=1080px){.nx .nx-main-grid{grid-template-columns:minmax(0,1fr)}}.nx .nx-card-grid{grid-template-columns:repeat(auto-fill, minmax(var(--card-min,280px), 1fr));gap:var(--gap);display:grid}.nx .nx-muted{color:var(--muted)}.nx .nx-text-xs{color:var(--dim);font-size:10.5px}.nx .nx-mt-2{margin-top:8px}.nx .nx-gantt-pills{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);gap:4px;padding:3px;display:inline-flex}.nx .nx-gantt-pill{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--r-pill);color:var(--dim);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;padding:4px 11px;font-size:10.5px;font-weight:600;transition:color .12s,background .12s}.nx .nx-gantt-pill:hover{color:var(--muted)}.nx .nx-gantt-pill[data-active=true]{color:var(--accent-bright);background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:color-mix(in srgb, var(--accent) 26%, transparent)}.nx .nx-gantt{overflow-x:auto}.nx .nx-gantt-inner{min-width:760px}.nx .nx-gantt-row{align-items:stretch;display:flex}.nx .nx-gantt-label{width:196px;padding:8px 12px 8px var(--pad-card);border-right:1px solid var(--line);flex-direction:column;flex:none;justify-content:center;gap:2px;min-width:0;display:flex}.nx .nx-gantt-track{flex:1;min-width:0;position:relative}.nx .nx-gantt-lane{border-top:1px solid var(--line);min-height:46px}.nx .nx-gantt-lane .nx-gantt-track{overflow:hidden}.nx .nx-gantt-head .nx-gantt-track{height:30px}.nx .nx-gantt-week-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--dim);white-space:nowrap;pointer-events:none;padding-left:6px;font-size:9.5px;font-weight:500;position:absolute;top:50%;transform:translateY(-50%)}.nx .nx-gantt-week-label[data-current=true]{color:var(--muted)}.nx .nx-gantt-hairline{background:var(--line);pointer-events:none;width:1px;position:absolute;top:0;bottom:0}.nx .nx-gantt-now{background:var(--red);pointer-events:none;z-index:2;width:1.5px;position:absolute;top:0;bottom:0}.nx .nx-gantt-now-tag{font-family:var(--font-mono);letter-spacing:.1em;color:var(--red);background:var(--card);pointer-events:none;z-index:3;padding:0 4px;font-size:8.5px;font-weight:700;position:absolute;top:2px;transform:translate(-50%)}.nx .nx-gantt-seg{border-radius:4px;align-items:center;min-width:3px;height:18px;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.nx .nx-gantt-seg[data-kind=staging]{background:var(--line-3)}.nx .nx-gantt-seg[data-kind=sterilisation]{background:var(--blue)}.nx .nx-gantt-seg[data-kind=run]{background:var(--amber)}.nx .nx-gantt-seg[data-kind=fruiting]{background:var(--green)}.nx .nx-gantt-seg[data-kind=lost]{background:var(--red)}.nx .nx-gantt-seg-label{font-family:var(--font-mono);letter-spacing:.1em;color:#0b140bd1;white-space:nowrap;pointer-events:none;padding:0 6px;font-size:8.5px;font-weight:700}.nx .nx-gantt-seg[data-kind=staging] .nx-gantt-seg-label{color:var(--ink)}.nx .nx-gantt-seg--projected{border:1.5px dashed;background:0 0!important}.nx .nx-gantt-seg--projected[data-kind=run]{border-color:var(--amber);color:var(--amber)}.nx .nx-gantt-seg--projected[data-kind=fruiting]{border-color:var(--green);color:var(--green)}.nx .nx-gantt-seg--projected .nx-gantt-seg-label{color:currentColor}.nx .nx-gantt-tick{background:var(--violet);z-index:1;border-radius:1px;width:2px;position:absolute;top:6px;bottom:6px}.nx .nx-gantt-tick--projected{border-left:2px dashed var(--violet);background:0 0;width:0}.nx .nx-gantt-tick--projected[data-marker=harvest]{border-left-color:var(--green)}.nx .nx-gantt-tick--projected[data-marker=pin]{border-left-color:var(--blue)}.nx .nx-gantt-lane-species{font-family:var(--font-sans);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.nx .nx-gantt-contam{font-family:var(--font-mono);color:var(--red);white-space:nowrap;font-size:10px;font-weight:700}.nx .nx-gantt-legend{padding:10px var(--pad-card);border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px;display:flex}.nx .nx-gantt-legend-chip{font-family:var(--font-mono);color:var(--dim);white-space:nowrap;align-items:center;gap:5px;font-size:10px;display:inline-flex}.nx .nx-gantt-swatch{border-radius:2px;flex:none;width:10px;height:10px}.nx .nx-gantt-swatch--dashed{border:1.5px dashed var(--dim);background:0 0}.nx .nx-gantt-swatch--tick{border-radius:1px;width:3px;height:12px}.nx .nx-gantt-density{font-family:var(--font-mono);color:var(--dim);white-space:nowrap;margin-left:auto;font-size:10px}.nx .nx-gantt-analytics{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;display:grid}.nx .nx-gantt-stat-row{padding:7px var(--pad-card);border-top:1px solid var(--line);align-items:center;gap:10px;display:flex}.nx .nx-gantt-stat-row:first-of-type{border-top:none}.nx .nx-gantt-meter{border-radius:var(--r-pill);background:var(--line);flex:1;min-width:40px;height:5px;overflow:hidden}.nx .nx-gantt-meter>span{border-radius:var(--r-pill);background:var(--accent);height:100%;display:block}.nx .nx-gantt-meter>span[data-over=true]{background:var(--red)}.nx[data-skin=v2] .nx-input,.nx[data-skin=v2] .nx-select,.nx[data-skin=v2] .nx-textarea{border-radius:var(--r-sm);border-color:var(--line-2);background:var(--surface);min-height:44px;padding:0 14px;font-size:15px}.nx[data-skin=v2] .nx-textarea{min-height:80px;padding:10px 14px}.nx[data-skin=v2] .nx-input:focus,.nx[data-skin=v2] .nx-select:focus,.nx[data-skin=v2] .nx-textarea:focus{border-color:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.nx[data-skin=v2] .nx-input::placeholder,.nx[data-skin=v2] .nx-select::placeholder,.nx[data-skin=v2] .nx-textarea::placeholder{color:var(--dim)}.nx[data-skin=v2] .nx-option-card{background:var(--surface)}.nx[data-skin=v2] .nx-option-card:hover{border-color:var(--line-3)}.nx[data-skin=v2] .nx-option-card[data-selected=true]{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 12%, var(--surface));box-shadow:0 0 12px rgba(var(--accent-rgb), .08)}.nx[data-skin=v2] .nx-step[data-active=true] .nx-step-num{background:var(--accent);color:#0b140b;border-color:var(--accent)}.nx[data-skin=v2] .nx-step[data-done=true] .nx-step-num{background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent-bright);border-color:var(--accent-dim)}.nx[data-skin=v2] .nx-step-connector{background:var(--line-2);height:1px}.nx[data-skin=v2] .nx-success-icon{background:color-mix(in srgb, var(--accent) 14%, transparent)}.nx[data-skin=v2] .nx-page-sub{font-size:13px}.nx[data-skin=v2] .btn{border-radius:var(--r-sm);border:1px solid var(--line-2);height:38px;min-height:0;color:var(--ink);background:0 0;gap:8px;padding:0 16px;font-size:13.5px;font-weight:600;transition:all .15s}.nx[data-skin=v2] .btn:hover{border-color:var(--line-3);color:var(--ink);background:#ffffff08}.nx[data-skin=v2] .btn:active{background:#ffffff08}.nx[data-skin=v2] .btn-primary{background:var(--accent);color:#0b140b;box-shadow:var(--glow);border-color:#0000}.nx[data-skin=v2] .btn-primary:hover{background:var(--accent-bright);filter:none}.nx[data-skin=v2] .btn-danger{background:var(--red);color:#1a0808;border-color:#0000}.nx[data-skin=v2] .btn-danger:hover{background:var(--red-bright);filter:none}.nx[data-skin=v2] .btn-ghost{color:var(--muted);border-color:#0000}.nx[data-skin=v2] .btn-ghost:hover{color:var(--ink);background:#ffffff0a}.nx[data-skin=v2] .btn-sm{height:30px;min-height:0;padding:0 11px;font-size:12.5px}.nx[data-skin=v2] .hov-row:hover{box-shadow:inset 3px 0 0 var(--accent);background:#ffffff09}.nx[data-skin=v2] .qa-tile:hover{border-color:var(--line-3);box-shadow:0 2px 12px rgba(var(--accent-rgb), .08);transform:translateY(-1px)}.nx[data-skin=v2] .card:hover{border-color:var(--line-2)}.nx[data-skin=v2] .nx-error-banner{box-shadow:0 0 12px #eb6a6a1a}.nx[data-skin=v2] .nx-gantt-now{box-shadow:0 0 8px var(--red)}.nx[data-skin=v2] .nx-gantt-now-tag{text-shadow:0 0 8px #eb6a6a73}.nx[data-skin=v2] .nx-gantt-lane:hover .nx-gantt-track{background:#ffffff06}.nx[data-skin=v2] .nx-gantt-lane:hover .nx-gantt-label{box-shadow:inset 3px 0 0 var(--accent);background:#ffffff06}.nx[data-skin=v2] .nx-gantt-seg{box-shadow:0 1px 6px #00000040}.nx[data-skin=v2] .nx-gantt-seg--projected{box-shadow:none}.nx[data-skin=v2] .nx-gantt-pill[data-active=true]{box-shadow:0 0 10px rgba(var(--accent-rgb), .14)}
