:root{--bg-primary:#0b0f19;--bg-secondary:#161f30;--bg-card:#1d283c;--border-card:#2e3e56;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#576f8e;--color-accent:#f97316;--color-accent-hover:#ea580c;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-info:#3b82f6;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","Consolas",monospace;--shadow-premium:none;--glass-blur:none}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap");*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);min-height:100vh;overflow-x:hidden}.app-container{max-width:1600px;margin:0 auto;padding:1.5rem}.glass-card{background:var(--bg-secondary);border:1px solid var(--border-card);border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.15);transition:border-color .2s ease}.glass-card:hover{border-color:#435875}button{font-family:var(--font-sans);cursor:pointer;border:none;outline:none;transition:background .15s ease;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em;font-weight:600}button:disabled{opacity:.35;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:#0b0f19;padding:.65rem 1.25rem;border-radius:4px}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-secondary{background:#25334a;border:1px solid var(--border-card);color:var(--text-primary);padding:.65rem 1.25rem;border-radius:4px}.btn-secondary:hover:not(:disabled){background:#2e3e56;border-color:#435875}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-card);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.dashboard-container{display:flex;flex-direction:column;gap:1.25rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--bg-secondary);border-radius:4px}.logo-section{display:flex;align-items:center;gap:.75rem}.logo-icon{font-size:1.5rem;color:var(--color-accent);font-weight:800;-webkit-text-fill-color:initial;background:none}.logo-section h1{font-size:1.25rem;font-weight:700;letter-spacing:-.01em}.logo-section p{font-size:.8rem;color:var(--text-secondary)}.stats-strip{display:flex;gap:.75rem}.stat-box{background:rgba(0,0,0,.2);border:1px solid var(--border-card);border-radius:4px;padding:.4rem .8rem;display:flex;flex-direction:column;align-items:flex-start;min-width:90px}.stat-label{font-size:.65rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase}.stat-val{font-size:1.15rem;font-weight:700;font-family:var(--font-mono)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.text-success{color:var(--color-success)}.dashboard-grid{display:grid;grid-template-columns:440px 1fr;grid-gap:1.25rem;gap:1.25rem;align-items:start}.orders-sidebar{display:flex;flex-direction:column;height:850px;background:var(--bg-secondary)}.tabs-header{display:flex;border-bottom:1px solid var(--border-card);background:rgba(0,0,0,.15)}.tab-btn{flex:1 1;background:transparent;color:var(--text-secondary);padding:.85rem .5rem;font-size:.75rem;font-weight:700;text-align:center;border-bottom:2px solid transparent;border-radius:0;transition:all .15s}.tab-btn:hover{color:var(--text-primary);background:hsla(0,0%,100%,.02)}.tab-btn.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background:rgba(0,0,0,.2)}.tab-content{padding:1rem;overflow-y:auto;flex-grow:1}.action-row{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid var(--border-card);padding-bottom:1rem}.action-row.flex-gap{flex-direction:row}.flex-grow{flex-grow:1}.hint{font-size:.75rem;color:var(--text-muted)}.orders-list{gap:.65rem}.order-item,.orders-list{display:flex;flex-direction:column}.order-item{background:var(--bg-card);border:1px solid var(--border-card);border-radius:4px;padding:.75rem;gap:.5rem}.order-item.active{border-left:3px solid var(--color-info)}.order-item.completed{opacity:.55;flex-direction:row}.order-item.completed,.order-meta{justify-content:space-between;align-items:center}.order-meta{display:flex}.order-id{font-size:.85rem;font-weight:700;font-family:var(--font-mono);color:var(--color-info)}.order-customer{font-size:.75rem;color:var(--text-secondary)}.sku-chips{display:flex;flex-wrap:wrap;gap:.3rem}.sku-chip{font-size:.68rem;font-weight:500;font-family:var(--font-mono);background:#111a2e;color:var(--text-secondary);padding:.15rem .4rem;border-radius:2px;border:1px solid hsla(0,0%,100%,.03)}.sku-chip.active-chip{background:rgba(59,130,246,.15);color:#60a5fa;border-color:rgba(59,130,246,.3)}.completion-badge{font-size:.7rem;font-weight:700;color:var(--color-success);background:rgba(16,185,129,.1);padding:.2rem .4rem;border-radius:2px;text-transform:uppercase}.no-orders{text-align:center;color:var(--text-muted);font-size:.8rem;padding:2rem 0}.error-banner{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:#fca5a5;padding:.65rem;border-radius:4px;font-size:.75rem;margin-bottom:1rem}.viz-section{display:flex;flex-direction:column;gap:1.25rem}.warehouse-map-container{padding:1.25rem;display:flex;flex-direction:column;gap:1rem;background:var(--bg-secondary);border-radius:4px}.map-header{display:flex;justify-content:space-between;align-items:center}.map-header h3{font-size:1.15rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary)}.badge{font-size:.7rem;padding:.2rem .5rem;background:rgba(59,130,246,.1);color:#60a5fa;border:1px solid rgba(59,130,246,.2);border-radius:2px;font-family:var(--font-mono)}.svg-wrapper{border:1px solid var(--border-card);border-radius:4px;background:#090c15;padding:1rem;overflow:auto}.warehouse-svg{width:100%;height:auto;display:block;max-height:520px}.walkway-floor{fill:#121824;stroke:hsla(0,0%,100%,.02);stroke-width:1}.crosswalk-line{stroke:hsla(0,0%,100%,.05);stroke-width:1.5;stroke-dasharray:4 6}.aisle-label{fill:var(--text-secondary);font-size:12px;font-weight:600;font-family:var(--font-mono)}.rack-shelf{fill:#1c2538;stroke:#2e3e56;stroke-width:1;transition:all .2s ease}.picked-shelf{fill:rgba(16,185,129,.05);stroke:rgba(16,185,129,.3)}.active-shelf{fill:rgba(59,130,246,.1);stroke:var(--color-info);filter:none}.shelf-level{fill:hsla(0,0%,100%,.03);stroke:rgba(0,0,0,.15);stroke-width:.5;transition:all .2s ease}.picked-level{fill:rgba(16,185,129,.5);filter:none}.active-level{fill:var(--color-info);filter:none;animation:none}.rack-label{fill:var(--text-muted);font-size:9px;font-weight:600;font-family:var(--font-mono);pointer-events:none}.entrance-rect{fill:rgba(245,158,11,.05);stroke:var(--color-warning);stroke-width:1}.entrance-circle{fill:var(--color-warning);stroke:#090c15;stroke-width:1.5}.entrance-label{fill:var(--color-warning);font-size:10px;font-weight:700;font-family:var(--font-mono);letter-spacing:.5px}.route-path-bg{stroke:hsla(0,0%,100%,.03);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.route-path-animated{stroke:var(--color-accent);stroke-width:2.5;stroke-dasharray:8 8;stroke-linecap:round;stroke-linejoin:round;animation:routeFlow 25s linear infinite;filter:none}@keyframes routeFlow{to{stroke-dashoffset:-500}}.pick-node-group{cursor:pointer}.pick-node{fill:var(--color-info);stroke:#090c15;stroke-width:1.5;transition:all .15s}.pick-node.active{fill:var(--color-accent);stroke:#fff}.ping-circle{fill:none;stroke:var(--color-accent);stroke-width:1.5;opacity:0;transform-box:fill-box;transform-origin:center;animation:ping 2s cubic-bezier(0,0,.2,1) infinite}.pick-node-group.active .ping-circle{opacity:1}@keyframes ping{75%,to{transform:scale(2.2);opacity:0}}.node-number-label{fill:#fff;font-size:9px;font-weight:700;font-family:var(--font-mono);pointer-events:none}.operator-avatar{transition:transform .4s cubic-bezier(.25,1,.5,1);pointer-events:none}.operator-pulse{fill:rgba(59,130,246,.15);animation:ping 2s cubic-bezier(0,0,.2,1) infinite}.operator-label{fill:#60a5fa;font-size:9px;font-weight:700;font-family:var(--font-mono);letter-spacing:.2px}.instructions-container{padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem;background:var(--bg-secondary);border-radius:4px}.instructions-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--border-card);padding-bottom:.85rem}.instructions-header h3{font-size:1.15rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.summary-text{font-size:.8rem;color:var(--text-secondary);margin-top:.2rem}.text-highlight{color:var(--color-info);font-family:var(--font-mono)}.step-badge{background:var(--bg-card);color:var(--color-accent);border:1px solid var(--border-card);font-size:.7rem;font-family:var(--font-mono);font-weight:700;padding:.2rem .5rem;border-radius:2px}.active-step-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:4px;padding:1rem;display:flex;flex-direction:column;gap:1rem;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.active-step-meta{display:flex;justify-content:space-between;align-items:center}.order-tag{font-weight:600;font-family:var(--font-mono);background:hsla(0,0%,100%,.03);color:var(--text-secondary)}.level-badge,.order-tag{font-size:.7rem;padding:.2rem .4rem;border-radius:2px}.level-badge{font-weight:700;text-transform:uppercase}.level-1{background:rgba(16,185,129,.1);color:var(--color-success)}.level-2{background:rgba(59,130,246,.1);color:#60a5fa}.level-3{background:rgba(245,158,11,.1);color:var(--color-warning)}.level-4{background:rgba(239,68,68,.1);color:var(--color-danger)}.target-sku{display:flex;flex-direction:column;gap:.15rem}.sku-label{font-size:.7rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.sku-code{font-size:1.75rem;font-weight:700;color:var(--text-primary);font-family:var(--font-mono);letter-spacing:-.01em}.location-grid{display:grid;grid-template-columns:1fr 1fr 2fr;grid-gap:.65rem;gap:.65rem}.location-cell{background:rgba(0,0,0,.15);border:1px solid var(--border-card);border-radius:4px;padding:.6rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.cell-label{font-size:.6rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;margin-bottom:.2rem}.cell-value{font-size:1.35rem;font-weight:700;font-family:var(--font-mono);color:var(--color-info)}.cell-value-desc{font-size:.7rem;font-weight:500;color:var(--text-secondary)}.step-actions{display:flex;gap:.65rem;margin-top:.25rem}.step-actions button{flex:1 1}.start-prompt{padding:2rem;text-align:center;background:rgba(59,130,246,.05);border:1px dashed var(--border-card);border-radius:4px;gap:.85rem;align-items:center}.start-prompt,.step-checklist{display:flex;flex-direction:column}.step-checklist{gap:.65rem}.step-checklist h4{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.checklist-items{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:.45rem;padding-right:.2rem}.checklist-item{display:flex;align-items:center;padding:.5rem .65rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:4px;cursor:pointer;transition:all .15s}.checklist-item:hover{background:#25334a;border-color:#435875}.checklist-item.active{background:rgba(249,115,22,.08);border-color:var(--color-accent)}.checklist-item.completed{opacity:.45}.check-indicator{width:18px;height:18px;border-radius:2px;border:1px solid var(--border-card);background:rgba(0,0,0,.15);display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;color:var(--text-secondary);margin-right:.65rem}.checklist-item.active .check-indicator{background:var(--color-accent);color:#0b0f19;border-color:var(--color-accent)}.checklist-item.completed .check-indicator{background:var(--color-success);color:#fff;border-color:var(--color-success)}.checklist-details{display:flex;flex-direction:column;flex-grow:1}.checklist-sku{font-size:.8rem;font-weight:600;font-family:var(--font-mono)}.checklist-loc,.checklist-order{font-size:.7rem;color:var(--text-secondary)}.checklist-order{font-family:var(--font-mono);background:rgba(0,0,0,.15);padding:.1rem .35rem;border-radius:2px}.search-row{margin-bottom:.85rem}.search-input{width:100%;padding:.55rem .75rem;background:rgba(0,0,0,.15);border:1px solid var(--border-card);border-radius:4px;color:var(--text-primary);font-family:var(--font-sans);outline:none}.search-input:focus{border-color:var(--color-accent);background:rgba(0,0,0,.25)}.mapping-list{gap:.65rem;max-height:700px;overflow-y:auto;padding-right:.2rem}.mapping-card,.mapping-list{display:flex;flex-direction:column}.mapping-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:4px;padding:.65rem;gap:.5rem}.mapping-card-header{display:flex;flex-direction:column}.mapping-sku{font-size:.8rem;font-weight:700;font-family:var(--font-mono);color:var(--color-info)}.mapping-sku-name{font-size:.75rem;color:var(--text-secondary)}.selectors-row{display:grid;grid-template-columns:1fr 1fr 1.2fr;grid-gap:.45rem;gap:.45rem}.selector-group{display:flex;flex-direction:column;gap:.15rem}.selector-group label{font-size:.6rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase}.selector-group select{padding:.3rem;background:rgba(0,0,0,.15);border:1px solid var(--border-card);border-radius:2px;color:var(--text-primary);font-size:.7rem;outline:none;cursor:pointer}.selector-group select option{background:var(--bg-secondary);color:var(--text-primary)}.warning-banner{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.2);color:#fcd34d;padding:.65rem;border-radius:4px;font-size:.75rem;margin-bottom:1rem}.main-navbar{justify-content:space-between;padding:.65rem 1.25rem;margin-bottom:1.25rem;background:var(--bg-secondary);border:1px solid var(--border-card);border-radius:4px}.main-navbar,.nav-logo{display:flex;align-items:center}.nav-logo{gap:.45rem}.logo-symbol{font-size:1.25rem;color:var(--color-accent);font-weight:800;-webkit-text-fill-color:initial;background:none}.logo-text{font-weight:700;font-size:1rem;letter-spacing:-.01em}.nav-links{display:flex;gap:1.25rem}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;transition:all .15s ease;padding:.2rem 0;border-bottom:2px solid transparent}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--color-accent);border-color:var(--color-accent)}