@charset "UTF-8";:root{--bg: #f3f4f6;--surface: #ffffff;--surface-2: #f1f3f6;--surface-3: #e9ebef;--text: #15181d;--text-2: #5d6470;--text-3: #9097a3;--border: #e4e6eb;--border-2: #d6d9df;--accent: #e8590c;--accent-weak: #fdeee3;--accent-text: #c4490a;--on-accent: #ffffff;--green: #1f8a5b;--green-weak: #e4f4ec;--blue: #2a6fdb;--blue-weak: #e7eefb;--amber: #c98300;--amber-weak: #fbf0d8;--red: #cf3a2f;--red-weak: #fbe7e5;--gcode-bg: #0c0e12;--gcode-text: #c5cdd9;--gcode-surface-2: #161a21;--gcode-border: #252b35;--gcode-text-dim: #6b7382;--backdrop: rgba(8, 10, 14, .5);--r-chip: 7px;--r-input: 12px;--r-button: 14px;--r-card: 14px;--r-card-lg: 16px;--r-modal: 18px;--r-icon-btn: 10px;--s-xs: 4px;--s-sm: 8px;--s-md: 12px;--s-lg: 18px;--s-xl: 24px;--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--fs-label: 11px;--fs-body: 13px;--fs-card-title: 15px;--fs-header-title: 17px;--fs-page-title: 22px;--fs-kpi: 27px;--m-pulse: 1.6s;--m-toast: .25s;--m-progress: .4s;--m-toggle: .2s;--shadow-pop: 0 12px 32px rgba(8, 10, 14, .16)}[data-theme=dark]{--bg: #0a0c10;--surface: #15191f;--surface-2: #1c212a;--surface-3: #252b35;--text: #f3f5f8;--text-2: #9aa3b1;--text-3: #6b7382;--border: #272d36;--border-2: #333a45;--accent: #ff7a33;--accent-weak: #2a1810;--accent-text: #ff8b4a;--green: #3ec487;--green-weak: #122a1f;--blue: #5b9bff;--blue-weak: #121e30;--amber: #e0a52a;--amber-weak: #2a2210;--red: #f0635a;--red-weak: #2c1513;--shadow-pop: 0 12px 32px rgba(0, 0, 0, .5)}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}*,*:before,*:after{box-sizing:border-box}:root{--shell-sidebar-w: 252px;--shell-topbar-h: 66px}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}*::-webkit-scrollbar{width:11px;height:11px}*::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:6px;border:3px solid var(--bg)}*::-webkit-scrollbar-track{background:transparent}.ax-dialog-backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--m-toast) ease}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-sm);padding:var(--s-sm) var(--s-md);border-radius:var(--r-input);border:1px solid var(--border-2);background:var(--surface);color:var(--text);font-size:var(--fs-body);font-weight:600;cursor:pointer;transition:background var(--m-toggle),opacity var(--m-toggle)}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.65;cursor:default}.btn--primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.btn--primary:hover:not(:disabled){background:var(--accent);opacity:.9}.btn--danger{border-color:var(--red);background:transparent;color:var(--red)}.btn--danger:hover:not(:disabled){background:var(--red-weak)}.spinner{width:15px;height:15px;border-radius:50%;border:2px solid color-mix(in srgb,var(--on-accent) 40%,transparent);border-top-color:var(--on-accent);animation:spin .7s linear infinite}.spinner--dark{border-color:color-mix(in srgb,var(--text-2) 40%,transparent);border-top-color:var(--text-2)}.spinner--danger{border-color:color-mix(in srgb,var(--red) 40%,transparent);border-top-color:var(--red)}.pill{display:inline-flex;align-items:center;gap:var(--s-sm);padding:2px var(--s-sm);border-radius:var(--r-chip);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.pill__dot{width:7px;height:7px;border-radius:50%;background:currentColor}.pill--blue{background:var(--blue-weak);color:var(--blue)}.pill--amber{background:var(--amber-weak);color:var(--amber)}.pill--green{background:var(--green-weak);color:var(--green)}.pill--red{background:var(--red-weak);color:var(--red)}.pill--grey{background:var(--surface-3);color:var(--text-2)}.pill--accent{background:var(--accent-weak);color:var(--accent-text)}.pill--accent .pill__dot{background:var(--accent);animation:pulse var(--m-pulse) ease-in-out infinite}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rework{display:inline-block;padding:1px var(--s-sm);border-radius:var(--r-chip);background:var(--red-weak);color:var(--red);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.04em}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}
