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:400px;overflow:hidden;position:relative}#qr-reader{max-width:600px;width:100%}#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}.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}}