body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.order-selector-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#3a3f4780;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.order-selector-modal{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #3a3f4740;display:flex;flex-direction:column;max-height:80vh;max-width:500px;overflow:hidden;width:100%}.order-selector-header{align-items:center;background:#3a3f47;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.header-content{align-items:center;display:flex;gap:1rem}.location-icon{background:#fff3;border-radius:8px;padding:.5rem}.order-selector-header h2{font-size:1.125rem;font-weight:600;margin:0}.order-selector-header p{font-size:.875rem;margin:.25rem 0 0;opacity:.9}.close-btn{background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:.5rem;transition:background .2s}.close-btn:hover{background:#ffffff4d}.order-selector-search{align-items:center;background:#f0ede6;border-bottom:1px solid #d1d5db;display:flex;gap:.75rem;padding:1rem 1.5rem}.order-selector-search svg{color:#9ca3af;flex-shrink:0}.order-selector-search input{background:none;border:none;color:#4a4e54;flex:1 1;font-size:1rem;outline:none}.order-selector-search input::placeholder{color:#9ca3af}.order-selector-list{flex:1 1;overflow-y:auto;padding:.5rem}.no-orders{align-items:center;color:#9ca3af;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.no-orders svg{margin-bottom:1rem;opacity:.5}.order-item{background:#fff;border:1px solid #d1d5db;border-radius:12px;cursor:pointer;margin:.25rem 0;padding:1rem;text-align:left;transition:all .2s;width:100%}.order-item:hover{background:#f0ede6;border-color:#3a3f47;transform:translateY(-1px)}.order-main{align-items:center;display:flex;gap:1rem;margin-bottom:.25rem}.order-job{color:#3a3f47;font-size:1rem;font-weight:700}.order-part{color:#6b7280;font-family:monospace;font-size:.875rem}.order-description{color:#6b7280;font-size:.8rem;margin:.25rem 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-meta{display:flex;gap:1rem;margin-top:.5rem}.meta-item{align-items:center;color:#9ca3af;display:flex;font-size:.75rem;gap:.25rem}.meta-item svg{color:#d1d5db}.order-selector-footer{background:#f0ede6;border-top:1px solid #d1d5db;display:flex;justify-content:flex-end;padding:1rem 1.5rem}.order-selector-footer .btn{padding:.75rem 1.5rem}.btn-secondary:hover{background:#d1d5db}.scanner-page{margin:0 auto;max-width:1400px;padding:1.5rem}.scanner-header{margin-bottom:1.5rem}.scanner-header h2{align-items:center;color:#3a3f47;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin:0 0 .5rem}.scanner-header p{color:#6b7280;margin:0}.scanner-layout{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 400px}@media (max-width:1024px){.scanner-layout{grid-template-columns:1fr}}.scanner-camera-section{display:flex;flex-direction:column;gap:1rem}.scanner-viewport{align-items:center;background:#3a3f47;border-radius:12px;display:flex;justify-content:center;min-height:420px;overflow:hidden;position:relative}#qr-reader{height:100%;max-width:none;width:100%}#qr-reader>div{border:none!important}#qr-reader__scan_region{height:100%;padding:0!important;width:100%}#qr-reader canvas,#qr-reader video{height:100%!important;object-fit:cover;width:100%!important}#qr-reader video{border-radius:8px}.scanner-placeholder{align-items:center;color:#9ca3af;display:flex;flex-direction:column;gap:1rem;padding:2rem;text-align:center}.scanner-placeholder svg{opacity:.5}.scanner-processing{align-items:center;color:#fff;display:flex;flex-direction:column;gap:1rem}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.scanner-controls{display:flex;gap:1rem;justify-content:center}.scanner-result-section{display:flex;flex-direction:column;gap:1.5rem}.scan-result-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #3a3f471a;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;text-align:center}.scan-result-card.success{border-left:4px solid #10b981}.scan-result-card.error{border-left:4px solid #ef4444}.result-icon{align-items:center;border-radius:50%;display:flex;height:80px;justify-content:center;width:80px}.scan-result-card.success .result-icon{background:#d1fae5;color:#10b981}.scan-result-card.error .result-icon{background:#fee2e2;color:#ef4444}.result-content h3{color:#3a3f47;font-size:1.25rem;font-weight:600;margin:0}.result-content p{color:#6b7280;margin:.5rem 0 0}.result-detail{font-size:.875rem}.badge{border-radius:9999px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.025em;padding:.25rem .75rem;text-transform:uppercase}.badge-green{background:#d1fae5;color:#059669}.badge-blue{background:#dbeafe;color:#2563eb}.badge-purple{background:#ede9fe;color:#7c3aed}.recent-scans{background:#fff;border-radius:12px;box-shadow:0 1px 3px #3a3f471a;padding:1.5rem}.recent-scans h3{color:#4a4e54;font-size:1rem;font-weight:600;margin:0 0 1rem}.no-scans{color:#9ca3af;font-style:italic;padding:1rem;text-align:center}.scan-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.scan-item{align-items:center;background:#f0ede6;border-radius:8px;display:flex;font-size:.875rem;gap:.75rem;padding:.75rem}.scan-item.success .scan-icon{color:#10b981}.scan-item.error .scan-icon{color:#ef4444}.scan-message{color:#4a4e54;flex:1 1}.scan-time{color:#9ca3af;font-size:.75rem}.scanner-instructions{background:#f0ede6;border:1px solid #d1d5db;border-radius:12px;padding:1.5rem}.scanner-instructions h3{color:#3a3f47;font-size:1rem;font-weight:600;margin:0 0 1rem}.instruction-list{display:flex;flex-direction:column;gap:1rem}.instruction{align-items:flex-start;display:flex;gap:.75rem}.instruction-icon{font-size:1.25rem}.instruction strong{color:#3a3f47;display:block;font-size:.875rem}.instruction p{color:#6b7280;font-size:.8rem;margin:.25rem 0 0}.btn{font-weight:500;padding:.75rem 1.25rem}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#3a3f47}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-secondary{background:#ede9e2;border:1px solid #d1d5db;color:#4a4e54}.btn-secondary:hover:not(:disabled){background:#d1d5db}.btn-large{font-size:1rem;padding:1rem 2rem}@media (max-width:768px){.scanner-page{padding:1rem}.scanner-viewport{max-height:70vh;min-height:60vh}#qr-reader video{border-radius:0}}.djs-parent{--color-grey-225-10-15:#22242a;--color-grey-225-10-35:#505562;--color-grey-225-10-55:#818798;--color-grey-225-10-75:#b9bcc6;--color-grey-225-10-80:#c7c9d1;--color-grey-225-10-85:#d5d7dd;--color-grey-225-10-90:#e3e4e8;--color-grey-225-10-95:#f1f2f4;--color-grey-225-10-97:#f7f7f8;--color-blue-205-100-45:#0086e6;--color-blue-205-100-45-opacity-30:#0086e64d;--color-blue-205-100-50:#0095ff;--color-blue-205-100-50-opacity-15:#0095ff26;--color-blue-205-100-70:#80caff;--color-blue-205-100-95:#e6f4ff;--color-green-150-86-44:#10d170;--color-red-360-100-40:#c00;--color-red-360-100-45:#e60000;--color-red-360-100-92:#ffd6d6;--color-red-360-100-97:#fff0f0;--color-white:#fff;--color-black:#000;--color-black-opacity-10:#0000001a;--color-black-opacity-30:#0000004d;--canvas-fill-color:var(--color-white);--bendpoint-fill-color:var(--color-blue-205-100-45);--bendpoint-stroke-color:var(--canvas-fill-color);--context-pad-entry-background-color:var(--color-white);--context-pad-entry-hover-background-color:var(--color-grey-225-10-95);--element-dragger-color:var(--color-blue-205-100-50);--element-hover-outline-fill-color:var(--color-blue-205-100-45);--element-selected-outline-stroke-color:var(--color-blue-205-100-50);--element-selected-outline-secondary-stroke-color:var(--color-blue-205-100-70);--lasso-fill-color:var(--color-blue-205-100-50-opacity-15);--lasso-stroke-color:var(--element-selected-outline-stroke-color);--palette-entry-color:var(--color-grey-225-10-15);--palette-entry-hover-color:var(--color-blue-205-100-45);--palette-entry-selected-color:var(--color-blue-205-100-50);--palette-separator-color:var(--color-grey-225-10-75);--palette-toggle-hover-background-color:var(--color-grey-225-10-55);--palette-background-color:var(--color-grey-225-10-97);--palette-border-color:var(--color-grey-225-10-75);--popup-font-family:"IBM Plex Sans",sans-serif;--popup-font-size:14px;--popup-header-entry-selected-color:var(--color-blue-205-100-50);--popup-header-font-weight:bolder;--popup-header-group-divider-color:var(--color-grey-225-10-75);--popup-background-color:var(--color-white);--popup-border-color:#0000;--popup-shadow-color:var(--color-black-opacity-30);--popup-disabled-color:var(--color-grey-225-10-35);--popup-description-color:var(--color-grey-225-10-55);--popup-no-results-color:var(--color-grey-225-10-55);--popup-entry-title-color:var(--color-grey-225-10-55);--popup-entry-hover-color:var(--color-grey-225-10-95);--popup-search-border-color:var(--color-grey-225-10-75);--popup-search-focus-border-color:var(--color-blue-205-100-50);--popup-search-focus-background-color:var(--color-blue-205-100-95);--resizer-fill-color:var(--color-blue-205-100-45);--resizer-stroke-color:var(--canvas-fill-color);--search-font-family:"IBM Plex Sans",sans-serif;--search-font-size:14px;--search-container-background-color:var(--color-white);--search-shadow-color:var(--color-black-opacity-30);--search-input-border-color:var(--color-grey-225-10-75);--search-input-focus-border-color:var(--color-blue-205-100-50);--search-input-focus-background-color:var(--color-blue-205-100-95);--search-result-hover-background-color:var(--color-grey-225-10-95);--search-result-secondary-color:var(--color-grey-225-10-55);--search-preselected-background-color:var(--color-blue-205-100-50-opacity-15);--shape-attach-allowed-stroke-color:var(--color-blue-205-100-50);--shape-connect-allowed-fill-color:var(--color-grey-225-10-97);--shape-drop-allowed-fill-color:var(--color-grey-225-10-97);--shape-drop-not-allowed-fill-color:var(--color-red-360-100-97);--shape-resize-preview-stroke-color:var(--color-blue-205-100-50);--snap-line-stroke-color:var(--color-blue-205-100-45-opacity-30);--space-tool-crosshair-stroke-color:var(--color-black);--tooltip-error-background-color:var(--color-red-360-100-97);--tooltip-error-border-color:var(--color-red-360-100-45);--tooltip-error-color:var(--color-red-360-100-45)}.djs-container svg.drop-not-ok{background:var(--shape-drop-not-allowed-fill-color)!important}.djs-container svg.new-parent{background:var(--shape-drop-allowed-fill-color)!important}.djs-container svg:focus{outline-offset:-1px}.djs-outline,.djs-selection-outline{fill:none;shape-rendering:geometricPrecision;stroke-width:2px}.djs-outline{visibility:hidden}.djs-element.selected .djs-outline,.djs-selection-outline{stroke:var(--element-selected-outline-stroke-color)}.djs-element.selected .djs-outline{visibility:visible}.djs-connection.selected .djs-outline{display:none}.djs-dragging-active-lasso .djs-element.selected .djs-outline,.djs-multi-select .djs-element.selected .djs-outline{stroke:var(--element-selected-outline-secondary-stroke-color);display:block}.djs-shape.connect-ok .djs-visual>:first-child{fill:var(--shape-connect-allowed-fill-color)!important}.djs-shape.connect-not-ok .djs-visual>:first-child,.djs-shape.drop-not-ok .djs-visual>:first-child{fill:var(--shape-drop-not-allowed-fill-color)!important}.djs-shape.new-parent .djs-visual>:first-child{fill:var(--shape-drop-allowed-fill-color)!important}.connect-not-ok,.connect-not-ok *,.drop-not-ok,.drop-not-ok *{cursor:not-allowed!important}.connect-ok,.connect-ok *,.drop-ok,.drop-ok *{cursor:default!important}.djs-element.attach-ok .djs-visual>:first-child{stroke-width:5px!important;stroke:var(--shape-attach-allowed-stroke-color)!important}.djs-frame.connect-not-ok .djs-visual>:first-child,.djs-frame.drop-not-ok .djs-visual>:first-child{stroke-width:3px!important;stroke:var(--shape-drop-not-allowed-fill-color)!important;fill:none!important}.djs-lasso-overlay{fill:var(--lasso-fill-color);stroke:var(--lasso-stroke-color);stroke-width:2px;shape-rendering:geometricPrecision;pointer-events:none}.djs-resize-overlay{fill:none;stroke-dasharray:5 1 3 1;stroke:var(--shape-resize-preview-stroke-color);pointer-events:none}.djs-resizer-hit{fill:none;pointer-events:all}.djs-resizer-visual{fill:var(--resizer-fill-color);stroke-width:1px;stroke:var(--resizer-stroke-color);shape-rendering:geometricPrecision}.djs-resizer:hover .djs-resizer-visual{stroke:var(--resizer-stroke-color);stroke-opacity:1}.djs-cursor-resize-ns,.djs-resizer-n,.djs-resizer-s{cursor:ns-resize}.djs-cursor-resize-ew,.djs-resizer-e,.djs-resizer-w{cursor:ew-resize}.djs-cursor-resize-nwse,.djs-resizer-nw,.djs-resizer-se{cursor:nwse-resize}.djs-cursor-resize-nesw,.djs-resizer-ne,.djs-resizer-sw{cursor:nesw-resize}.djs-shape.djs-resizing>.djs-outline{visibility:hidden!important}.djs-dragger>.djs-resizer,.djs-shape.djs-resizing>.djs-resizer{visibility:hidden}.djs-dragger *{fill:none!important;stroke:var(--element-dragger-color)!important}.djs-dragger marker circle,.djs-dragger marker path,.djs-dragger marker polygon,.djs-dragger marker polyline,.djs-dragger marker rect,.djs-dragger text,.djs-dragger tspan{fill:var(--element-dragger-color)!important;stroke:none!important}.djs-dragger marker text,.djs-dragger marker tspan{fill:none!important;stroke:var(--element-dragger-color)!important}.djs-dragging,.djs-dragging>*{opacity:.3!important;pointer-events:none!important}.djs-outline,.djs-visual{pointer-events:none}.djs-element.attach-ok .djs-hit{stroke-width:60px!important}.djs-element>.djs-hit-all,.djs-element>.djs-hit-no-move{pointer-events:all}.djs-element>.djs-hit-click-stroke,.djs-element>.djs-hit-stroke{pointer-events:stroke}.djs-connection .djs-visual{stroke-width:2px;fill:none}.djs-cursor-grab{cursor:grab}.djs-cursor-grabbing{cursor:grabbing}.djs-cursor-crosshair{cursor:crosshair}.djs-cursor-move{cursor:move}.djs-cursor-resize-ns{cursor:ns-resize}.djs-cursor-resize-ew{cursor:ew-resize}.djs-snap-line{stroke:var(--snap-line-stroke-color);stroke-linecap:round;stroke-width:2px;pointer-events:none}.djs-crosshair{stroke:var(--space-tool-crosshair-stroke-color);stroke-linecap:round;stroke-width:1px;shape-rendering:geometricPrecision;stroke-dasharray:5,5;pointer-events:none}.djs-palette{box-sizing:border-box;left:20px;position:absolute;top:20px;width:48px}.djs-palette .separator{border:none;border-bottom:1px solid var(--palette-separator-color);clear:both;margin:5px;padding-top:5px}.djs-palette .entry:before{vertical-align:initial}.djs-palette .djs-palette-toggle{cursor:pointer}.djs-palette .djs-palette-toggle,.djs-palette .entry{color:var(--palette-entry-color);font-size:30px;text-align:center}.djs-palette .entry{float:left}.djs-palette .entry img{max-width:100%}.djs-palette .djs-palette-entries:after{clear:both;content:"";display:table}.djs-palette .djs-palette-toggle:hover{background:var(--palette-toggle-hover-background-color)}.djs-palette .entry:hover{color:var(--palette-entry-hover-color)}.djs-palette .highlighted-entry{color:var(--palette-entry-selected-color)!important}.djs-palette .djs-palette-toggle,.djs-palette .entry{cursor:default;height:46px;line-height:46px;width:46px}.djs-palette.two-column.open{width:94px}.djs-palette:not(.open) .djs-palette-entries{display:none}.djs-palette:not(.open){overflow:hidden}.djs-palette.open .djs-palette-toggle{display:none}.djs-context-pad{display:none;line-height:1;pointer-events:none;position:absolute;width:72px;z-index:100}.djs-context-pad .entry{background-color:var(--context-pad-entry-background-color);border-radius:3px;box-shadow:0 0 2px 1px var(--context-pad-entry-background-color);cursor:default;display:inline-block;font-size:22px;height:22px;margin:0 2px 2px 0;pointer-events:all;text-align:center;vertical-align:middle;width:22px}.djs-context-pad .entry:hover{background:var(--context-pad-entry-hover-background-color)}.djs-context-pad.open{display:block}.djs-popup{background:var(--popup-background-color);border:1px solid var(--popup-border-color);box-shadow:0 2px 6px var(--popup-shadow-color);font-family:var(--popup-font-family);line-height:1;min-width:120px;outline:none;overflow:hidden;position:fixed;width:-webkit-min-content;width:min-content;z-index:200}.djs-popup,.djs-popup-search input{box-sizing:border-box;font-size:var(--popup-font-size)}.djs-popup-search input{border:1px solid var(--popup-search-border-color);border-radius:2px;line-height:21px;padding:3px 6px 3px 28px;width:100%}.djs-popup-search input:focus{background-color:var(--popup-search-focus-background-color);border:1px solid var(--popup-search-focus-border-color);outline:none}.djs-popup-header{align-items:stretch;display:flex;line-height:20px;margin:10px 12px}.djs-popup-header .entry{border-radius:2px}.djs-popup button.entry{background:#0000;border:0;padding:0}.djs-popup-header .entry.active{color:var(--popup-header-entry-selected-color)}.djs-popup-header .entry.disabled{color:inherit}.djs-popup-header-group{list-style:none;margin:0;padding:0}.djs-popup-header-group,.djs-popup-header-group .entry{align-items:center;display:flex;flex-direction:row}.djs-popup-header-group+.djs-popup-header-group:before{background:var(--popup-header-group-divider-color);content:"";height:20px;margin:0 5px;width:1px}.djs-popup-search{margin:10px 12px;position:relative;width:auto}.djs-popup-title{flex:1 1;font-size:var(--popup-font-size);font-weight:var(--popup-header-font-weight);margin:0}.djs-popup-search-icon{left:8px;position:absolute;top:7px}.djs-popup-results{list-style:none;margin:7px 3px 7px 12px;max-height:280px;overflow:auto;padding-right:9px}.djs-popup-group{margin:0;padding:0;width:100%}.djs-popup-body .entry,.djs-popup-body .entry-header{border-radius:4px;cursor:default;padding:5px 7px}.djs-popup-body .entry-header{color:var(--popup-entry-title-color);font-weight:var(--popup-header-font-weight);padding-left:0}.djs-popup [class*=icon] .djs-popup-label,.djs-popup-label:not(:first-child){margin-left:.5em}.djs-popup [class*=icon]:before,.djs-popup-entry-icon{display:inline-block;font-size:1.4em;height:1em;vertical-align:middle;width:1em}.djs-popup-body .entry-header:not(:first-child){margin-bottom:2px;margin-top:8px}.djs-popup-body .entry{align-items:stretch;display:flex;flex-direction:row;height:-webkit-min-content;height:min-content}.djs-popup .entry.selected{background-color:var(--popup-entry-hover-color)}.djs-popup .entry.disabled{color:var(--popup-disabled-color);cursor:not-allowed}.djs-popup-body .entry:not(:first-child){margin-top:2px}.djs-popup-entry-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.djs-popup-entry-description{color:var(--popup-description-color)}.djs-popup-entry-description,.djs-popup-label{line-height:1.4em}.djs-popup .entry,.djs-popup .entry-header{margin:1px}.djs-popup .entry-header,.djs-popup-entry-description,.djs-popup-label,.djs-popup-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.djs-popup-entry-name{display:flex}.djs-popup-body{flex-direction:column;width:auto}.djs-popup ::-webkit-scrollbar{width:6px}.djs-popup ::-webkit-scrollbar-thumb{background-color:#0003;border-radius:3px}.djs-popup ::-webkit-scrollbar-track{background:#0000;box-shadow:none;margin:0;padding:5px}.djs-popup-no-results{color:var(--popup-no-results-color);padding:0 12px 12px}.djs-popup-entry-docs{align-items:center;display:none;flex:0 1;flex-direction:row;padding-left:5px}.djs-popup-body .entry:hover .djs-popup-entry-docs{display:flex}.djs-popup-entry-docs svg{margin:auto 2px auto 5px;vertical-align:middle}.djs-palette{background:var(--palette-background-color);border:1px solid var(--palette-border-color);border-radius:2px}.djs-bendpoint,.djs-segment-dragger{display:none}.djs-segment-dragger .djs-visual{fill:var(--bendpoint-fill-color);stroke:var(--bendpoint-stroke-color);stroke-width:1px;stroke-opacity:1;display:none}.djs-segment-dragger:hover .djs-visual{display:block}.djs-bendpoint .djs-visual{fill:var(--bendpoint-fill-color);stroke:var(--bendpoint-stroke-color);stroke-width:1px}.djs-bendpoint:hover,.djs-bendpoints.hover .djs-bendpoint,.djs-bendpoints.hover .djs-segment-dragger,.djs-bendpoints.selected .djs-bendpoint,.djs-bendpoints.selected .djs-segment-dragger,.djs-segment-dragger:hover{display:block}.djs-bendpoints:not(.hover) .floating,.djs-drag-active .djs-bendpoints *{display:none}.djs-bendpoint.floating .djs-visual,.djs-bendpoint:hover .djs-visual,.djs-segment-dragger.djs-dragging .djs-visual,.djs-segment-dragger:hover .djs-visual{fill:var(--bendpoint-fill-color);stroke:var(--bendpoint-stroke-color);stroke-opacity:1}.djs-bendpoint.floating .djs-hit{pointer-events:none}.djs-bendpoint .djs-hit,.djs-segment-dragger .djs-hit{fill:none;pointer-events:all}.djs-segment-dragger.horizontal .djs-hit{cursor:ns-resize}.djs-segment-dragger.vertical .djs-hit{cursor:ew-resize}.djs-segment-dragger.djs-dragging .djs-hit{pointer-events:none}.djs-updating,.djs-updating>*{pointer-events:none!important}.connect-not-ok .djs-bendpoint,.connect-ok .djs-bendpoint,.djs-multi-select .djs-bendpoint,.djs-multi-select .djs-segment-dragger,.djs-updating .djs-bendpoint,.djs-updating .djs-context-pad,.djs-updating .djs-outline,.drop-not-ok .djs-bendpoint,.drop-ok .djs-bendpoint{display:none!important}.djs-bendpoint.djs-dragging,.djs-segment-dragger.djs-dragging{display:block;opacity:1}.djs-tooltip-error{background:var(--tooltip-error-background-color);border:1px solid var(--tooltip-error-border-color);border-radius:2px;color:var(--tooltip-error-color);font-size:12px;line-height:16px;opacity:.75;padding:6px;width:160px}.djs-tooltip-error:hover{opacity:1}.djs-search-open .djs-context-pad{display:none}.djs-search-open .djs-connection.selected .djs-outline{display:block}.djs-search-container{border-radius:2px;box-shadow:0 2px 6px var(--search-shadow-color);font-family:var(--search-font-family);font-size:var(--search-font-size);left:0;margin-left:auto;margin-right:auto;max-width:400px;min-width:300px;position:absolute;right:0;top:20px;width:25%;z-index:10}.djs-search-container:not(.open){display:none}.djs-search-input{position:relative}.djs-search-input svg{left:8px;position:absolute;top:7px}.djs-search-input input{border:1px solid var(--search-input-border-color);border-radius:2px;box-sizing:border-box;font-size:var(--search-font-size);line-height:21px;padding:3px 6px 3px 28px;width:100%}.djs-search-input input:focus{background-color:var(--search-input-focus-background-color);border:1px solid var(--search-input-focus-border-color);outline:none}.djs-search-results{background:var(--search-container-background-color);max-height:200px;overflow-y:auto;position:relative}.djs-search-result{padding:6px 8px}.djs-search-result-primary{margin:0 0 3px}.djs-search-result-primary,.djs-search-result-secondary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.djs-search-result-secondary{color:var(--search-result-secondary-color);font-family:monospace;margin:0}.djs-search-result-selected,.djs-search-result-selected:hover,.djs-search-result:hover{background:var(--search-result-hover-background-color)}.djs-search-open .djs-element .djs-outline{fill:var(--search-preselected-background-color)!important}.djs-element-hidden,.djs-element-hidden .djs-hit,.djs-element-hidden .djs-outline,.djs-label-hidden .djs-label{display:none!important}.djs-element .djs-hit-all,.djs-element .djs-hit-click-stroke,.djs-element .djs-hit-stroke{cursor:move}@font-face{font-family:bpmn;font-style:normal;font-weight:400;src:url(/static/media/bpmn.1e08c7f04f4855050724.eot);src:url(/static/media/bpmn.1e08c7f04f4855050724.eot#iefix) format("embedded-opentype"),url(/static/media/bpmn.9c989372615cb2cfbaa6.woff2) format("woff2"),url(/static/media/bpmn.8809b45a3f0566911799.woff) format("woff"),url(/static/media/bpmn.2185c437d9db32386425.ttf) format("truetype"),url(/static/media/bpmn.cb4be0230caf509ac475.svg#bpmn) format("svg")}[class*=" bpmn-icon-"]:before,[class^=bpmn-icon-]:before{speak:never;font-feature-settings:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-family:bpmn;font-style:normal;font-variant:normal;font-weight:400;line-height:1em;text-align:center;text-decoration:inherit;text-transform:none;width:1em}.bpmn-icon-trash:before{content:"\e801"}.bpmn-icon-gateway-parallel:before{content:"\e804"}.bpmn-icon-intermediate-event-catch-cancel:before{content:"\e805"}.bpmn-icon-intermediate-event-catch-non-interrupting-message:before{content:"\e806"}.bpmn-icon-start-event-compensation:before{content:"\e807"}.bpmn-icon-start-event-non-interrupting-parallel-multiple:before{content:"\e808"}.bpmn-icon-loop-marker:before{content:"\e809"}.bpmn-icon-parallel-mi-marker:before{content:"\e80a"}.bpmn-icon-start-event-non-interrupting-signal:before{content:"\e80b"}.bpmn-icon-intermediate-event-catch-non-interrupting-timer:before{content:"\e80c"}.bpmn-icon-intermediate-event-catch-parallel-multiple:before{content:"\e80d"}.bpmn-icon-intermediate-event-catch-compensation:before{content:"\e80e"}.bpmn-icon-gateway-xor:before{content:"\e80f"}.bpmn-icon-end-event-cancel:before{content:"\e811"}.bpmn-icon-intermediate-event-catch-condition:before{content:"\e812"}.bpmn-icon-intermediate-event-catch-non-interrupting-parallel-multiple:before{content:"\e813"}.bpmn-icon-start-event-condition:before{content:"\e814"}.bpmn-icon-start-event-non-interrupting-timer:before{content:"\e815"}.bpmn-icon-sequential-mi-marker:before{content:"\e816"}.bpmn-icon-user-task:before{content:"\e817"}.bpmn-icon-business-rule:before{content:"\e818"}.bpmn-icon-sub-process-marker:before{content:"\e819"}.bpmn-icon-start-event-parallel-multiple:before{content:"\e81a"}.bpmn-icon-start-event-error:before{content:"\e81b"}.bpmn-icon-intermediate-event-catch-signal:before{content:"\e81c"}.bpmn-icon-intermediate-event-catch-error:before{content:"\e81d"}.bpmn-icon-end-event-compensation:before{content:"\e81e"}.bpmn-icon-subprocess-collapsed:before{content:"\e81f"}.bpmn-icon-subprocess-expanded:before{content:"\e820"}.bpmn-icon-task:before{content:"\e821"}.bpmn-icon-end-event-error:before{content:"\e822"}.bpmn-icon-intermediate-event-catch-escalation:before{content:"\e823"}.bpmn-icon-intermediate-event-catch-timer:before{content:"\e824"}.bpmn-icon-start-event-escalation:before{content:"\e825"}.bpmn-icon-start-event-signal:before{content:"\e826"}.bpmn-icon-business-rule-task:before{content:"\e827"}.bpmn-icon-manual:before{content:"\e828"}.bpmn-icon-receive:before{content:"\e829"}.bpmn-icon-call-activity:before{content:"\e82a"}.bpmn-icon-start-event-timer:before{content:"\e82b"}.bpmn-icon-start-event-message:before{content:"\e82c"}.bpmn-icon-intermediate-event-none:before{content:"\e82d"}.bpmn-icon-intermediate-event-catch-link:before{content:"\e82e"}.bpmn-icon-end-event-escalation:before{content:"\e82f"}.bpmn-icon-bpmn-io:before{content:"\e831"}.bpmn-icon-gateway-complex:before{content:"\e832"}.bpmn-icon-gateway-eventbased:before{content:"\e833"}.bpmn-icon-gateway-none:before{content:"\e834"}.bpmn-icon-gateway-or:before{content:"\e835"}.bpmn-icon-end-event-terminate:before{content:"\e836"}.bpmn-icon-end-event-signal:before{content:"\e837"}.bpmn-icon-end-event-none:before{content:"\e838"}.bpmn-icon-end-event-multiple:before{content:"\e839"}.bpmn-icon-end-event-message:before{content:"\e83a"}.bpmn-icon-end-event-link:before{content:"\e83b"}.bpmn-icon-intermediate-event-catch-message:before{content:"\e83c"}.bpmn-icon-intermediate-event-throw-compensation:before{content:"\e83d"}.bpmn-icon-start-event-multiple:before{content:"\e83e"}.bpmn-icon-script:before{content:"\e83f"}.bpmn-icon-manual-task:before{content:"\e840"}.bpmn-icon-send:before{content:"\e841"}.bpmn-icon-service:before{content:"\e842"}.bpmn-icon-receive-task:before{content:"\e843"}.bpmn-icon-user:before{content:"\e844"}.bpmn-icon-start-event-none:before{content:"\e845"}.bpmn-icon-intermediate-event-throw-escalation:before{content:"\e846"}.bpmn-icon-intermediate-event-catch-multiple:before{content:"\e847"}.bpmn-icon-intermediate-event-catch-non-interrupting-escalation:before{content:"\e848"}.bpmn-icon-intermediate-event-throw-link:before{content:"\e849"}.bpmn-icon-start-event-non-interrupting-condition:before{content:"\e84a"}.bpmn-icon-data-object:before{content:"\e84b"}.bpmn-icon-script-task:before{content:"\e84c"}.bpmn-icon-send-task:before{content:"\e84d"}.bpmn-icon-data-store:before{content:"\e84e"}.bpmn-icon-start-event-non-interrupting-escalation:before{content:"\e84f"}.bpmn-icon-intermediate-event-throw-message:before{content:"\e850"}.bpmn-icon-intermediate-event-catch-non-interrupting-multiple:before{content:"\e851"}.bpmn-icon-intermediate-event-catch-non-interrupting-signal:before{content:"\e852"}.bpmn-icon-intermediate-event-throw-multiple:before{content:"\e853"}.bpmn-icon-start-event-non-interrupting-message:before{content:"\e854"}.bpmn-icon-ad-hoc-marker:before{content:"\e855"}.bpmn-icon-service-task:before{content:"\e856"}.bpmn-icon-task-none:before{content:"\e857"}.bpmn-icon-compensation-marker:before{content:"\e858"}.bpmn-icon-start-event-non-interrupting-multiple:before{content:"\e859"}.bpmn-icon-intermediate-event-throw-signal:before{content:"\e85a"}.bpmn-icon-intermediate-event-catch-non-interrupting-condition:before{content:"\e85b"}.bpmn-icon-participant:before{content:"\e85c"}.bpmn-icon-event-subprocess-expanded:before{content:"\e85d"}.bpmn-icon-lane-insert-below:before{content:"\e85e"}.bpmn-icon-space-tool:before{content:"\e85f"}.bpmn-icon-connection-multi:before{content:"\e860"}.bpmn-icon-lane:before{content:"\e861"}.bpmn-icon-lasso-tool:before{content:"\e862"}.bpmn-icon-lane-insert-above:before{content:"\e863"}.bpmn-icon-lane-divide-three:before{content:"\e864"}.bpmn-icon-lane-divide-two:before{content:"\e865"}.bpmn-icon-data-input:before{content:"\e866"}.bpmn-icon-data-output:before{content:"\e867"}.bpmn-icon-hand-tool:before{content:"\e868"}.bpmn-icon-group:before{content:"\e869"}.bpmn-icon-text-annotation:before{content:"\e86b"}.bpmn-icon-transaction:before{content:"\e8c4"}.bpmn-icon-screw-wrench:before{content:"\e8db"}.bpmn-icon-connection:before{content:"\e8dc"}.bpmn-icon-conditional-flow:before{content:"\e8e0"}.bpmn-icon-default-flow:before{content:"\e8e1"}.connection-status{align-items:center;border-radius:20px;display:flex;font-size:.85rem;font-weight:500;gap:8px;padding:6px 12px;transition:all .3s ease}.status-indicator{animation:pulse 2s infinite;border-radius:50%;height:8px;position:relative;width:8px}.status-text{white-space:nowrap}.connection-status.connected{background:#10b9811a;border:1px solid #10b98133;color:#10b981}.connection-status.connected .status-indicator{background:#10b981;box-shadow:0 0 0 0 #10b981b3}.connection-status.reconnecting{background:#f59e0b1a;border:1px solid #f59e0b33;color:#f59e0b}.connection-status.reconnecting .status-indicator{animation:pulse 1s infinite;background:#f59e0b;box-shadow:0 0 0 0 #f59e0bb3}.connection-status.offline{background:#ea580c26;border:1px solid #ea580c4d;color:#ea580c}.connection-status.offline .status-indicator{animation:none;background:#ea580c;box-shadow:none}.connection-status.syncing{background:#3b82f61a;border:1px solid #3b82f633;color:#3b82f6}.connection-status.syncing .status-indicator{animation:pulse .8s infinite;background:#3b82f6}.connection-status.disconnected{background:#ef44441a;border:1px solid #ef444433;color:#ef4444}.connection-status.disconnected .status-indicator{animation:none;background:#ef4444;box-shadow:none}@media (max-width:768px){.connection-status{font-size:.75rem;padding:4px 10px}.status-indicator{height:6px;width:6px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9f7f2;color:#4a4e54;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.app{display:flex;flex-direction:column;min-height:100vh}.app-body{display:flex;flex:1 1;overflow:hidden}.app-header{background:#3a3f47;box-shadow:0 4px 6px -1px #3a3f4726,0 2px 4px -1px #3a3f4714;color:#fff;padding:1rem 2rem;z-index:10}.header-content{margin:0 auto;max-width:1400px}.header-top{align-items:center;display:flex;justify-content:space-between}.header-title-section{align-items:center;display:flex;gap:1rem}.header-icon{font-size:2.5rem}.header-title{font-size:2rem;font-weight:700;letter-spacing:-.025em;margin:0}.header-subtitle{font-size:1rem;font-weight:400;margin-top:.25rem;opacity:.9}.header-actions{gap:1rem}.header-actions,.header-status{align-items:center;display:flex}.header-status{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fff3;border-radius:9999px;font-size:.875rem;gap:.5rem;padding:.5rem 1rem}.status-dot{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background-color:#10b981;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.barcode-scanner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff26;border:2px dashed #ffffff4d;border-radius:12px;margin-top:1rem;padding:1.5rem}.scanner-label{align-items:center;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-bottom:.5rem;opacity:.95}.scanner-description{font-size:.75rem;margin-bottom:1rem;opacity:.75}.scanner-input-group{display:flex;gap:.75rem}.scanner-input{background-color:#fffffff2;border:1px solid #ffffff4d;border-radius:8px;flex:1 1;font-family:Courier New,monospace;font-size:.875rem;padding:.75rem 1rem;transition:all .2s}.scanner-input:focus{border-color:#fff;box-shadow:0 0 0 3px #fff3;outline:none}.scanner-input::placeholder{color:#9ca3af}.scanner-button{align-items:center;background-color:#fff;border:none;border-radius:8px;color:#3a3f47;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.scanner-button:hover{background-color:#ede9e2;box-shadow:0 4px 6px -1px #3a3f471a;transform:translateY(-1px)}.scanner-button:active{transform:translateY(0)}.sidebar{background-color:#3a3f47;border-right:1px solid #ffffff0f;display:flex;flex-direction:column;min-width:240px;overflow-y:auto;transition:width .2s ease,min-width .2s ease;width:240px}.sidebar.collapsed{min-width:56px;width:56px}.sidebar.collapsed .sidebar-chevron,.sidebar.collapsed .sidebar-label{display:none}.sidebar.collapsed .sidebar-group-header,.sidebar.collapsed .sidebar-item,.sidebar.collapsed .sidebar-item.top-level{justify-content:center;padding:.75rem}.sidebar.collapsed .sidebar-group-items .sidebar-item{padding-left:.75rem}.sidebar.collapsed .sidebar-group-items .sidebar-item.active,.sidebar.collapsed .sidebar-item.active,.sidebar.collapsed .sidebar-item.top-level.active{padding-left:calc(.75rem - 3px)}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:.75rem 0}.sidebar-group-header{align-items:center;background:#0000;border:none;color:#ffffff80;cursor:pointer;display:flex;font-size:.8125rem;font-weight:600;gap:.625rem;letter-spacing:.05em;padding:.625rem 1.25rem;text-transform:uppercase;transition:color .15s;width:100%}.sidebar-group-header:hover{color:#fffc}.sidebar-group-header.active-group{color:#ffffffb3}.sidebar-chevron{margin-left:auto;opacity:.5}.sidebar-group-items{display:flex;flex-direction:column;gap:1px}.sidebar-group-items .sidebar-item{padding-left:2.75rem}.sidebar-item{align-items:center;background:#0000;border:none;color:#fff9;cursor:pointer;display:flex;font-size:.8125rem;font-weight:500;gap:.625rem;padding:.5rem 1.25rem;text-align:left;transition:background-color .15s,color .15s;width:100%}.sidebar-item:hover{background-color:#ffffff0f;color:#ffffffe6}.sidebar-item.active{background-color:#ffffff1a;border-left:3px solid #ffb800;color:#fff;padding-left:calc(1.25rem - 3px)}.sidebar-group-items .sidebar-item.active{padding-left:calc(2.75rem - 3px)}.sidebar-item.top-level{font-weight:500;padding:.625rem 1.25rem}.sidebar-item.top-level.active{padding-left:calc(1.25rem - 3px)}.sidebar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-toggle{align-items:center;background:#0000;border:none;border-bottom:1px solid #ffffff14;color:#fff6;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:.625rem;padding:.75rem 1.25rem;transition:color .15s,background-color .15s;width:100%}.sidebar-toggle:hover{background-color:#ffffff0a;color:#fffc}.sidebar.collapsed .sidebar-toggle{justify-content:center;padding:.75rem}.app-content{flex:1 1;max-height:calc(100vh - 60px);overflow-y:auto;padding:2rem 2.5rem}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.625rem 1.25rem;transition:all .2s}.btn-primary{background-color:#3a3f47;color:#fff}.btn-primary:hover{background-color:#4a5060;box-shadow:0 4px 6px -1px #3a3f4726;transform:translateY(-1px)}.btn-outline{background-color:initial;border:1px solid #ffffff80;color:#fff}.btn-outline:hover{background-color:#ffffff1a;border-color:#fff}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover{background-color:#dc2626}@media (max-width:768px){.app-header{padding:.75rem 1rem}.header-title{font-size:1.5rem}.sidebar{min-width:56px;width:56px}.sidebar-chevron,.sidebar-label{display:none}.sidebar-group-header,.sidebar-item,.sidebar-item.top-level{justify-content:center;padding:.75rem}.sidebar-group-items .sidebar-item{padding-left:.75rem}.sidebar-group-items .sidebar-item.active,.sidebar-item.active,.sidebar-item.top-level.active{padding-left:calc(.75rem - 3px)}.app-content{max-height:calc(100vh - 52px);padding:1.5rem}.barcode-scanner{padding:1rem}.scanner-input-group{flex-direction:column}.modal-overlay{padding:0!important}.modal-container{border-radius:0!important;height:100vh!important;max-height:100vh!important;max-width:100%!important;width:100%!important}.sidebar{bottom:0;left:-260px;position:fixed;top:0;transition:left .3s ease;z-index:100}.sidebar:not(.collapsed){box-shadow:4px 0 20px #0000004d;left:0}.app-header{padding:.5rem 1rem}.header-top{flex-wrap:wrap;gap:.5rem}.header-actions{flex-wrap:wrap;gap:.5rem!important}.app-content{margin-left:0;padding:.75rem}button,input,select,textarea{font-size:16px;min-height:44px}.stats-grid,.stats-row{flex-direction:column!important;grid-template-columns:1fr!important}.page-header{padding:.75rem 0}.filter-controls,.search-filter-bar{flex-direction:column!important;gap:.5rem!important}.search-filter-bar input,.search-filter-bar select{width:100%!important}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1rem}}