:root{
  color-scheme:light;
  --bg:#f3f6fa;
  --surface:#fff;
  --line:#d7e0ea;
  --text:#15283a;
  --muted:#63778b;
  --navy:#09243a;
  --blue:#087fa6;
  --blue-dark:#056486;
  --green:#147a52;
  --green-bg:#eaf7f0;
  --orange:#9a5b0a;
  --orange-bg:#fff4df;
  --red:#b13b34;
  --red-bg:#fff0ee;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;font-size:14px;letter-spacing:0}
button,select,input{font:inherit;letter-spacing:0}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.5}
.topbar{height:58px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:0 22px;gap:22px;border-bottom:3px solid #1ea0cb}
.brand{color:#fff;text-decoration:none;font-weight:800;font-size:16px}.brand span{color:#31b2df}
.environment{font-size:12px;padding:6px 9px;border:1px solid #476274;border-radius:4px;color:#d9e8f2}
.back-link{margin-left:auto;color:#fff;text-decoration:none;font-weight:700}
.page-shell{max-width:1600px;margin:0 auto;padding:22px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px}
.eyebrow{margin:0 0 6px;color:var(--blue);font-size:12px;font-weight:800;text-transform:uppercase}
h1{margin:0;font-size:28px}h2{margin:0;font-size:17px}.page-head p:not(.eyebrow){margin:7px 0 0;color:var(--muted)}
.head-controls{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:6px 8px;align-items:end}.head-controls label{grid-column:1/-1;color:var(--muted);font-size:12px;font-weight:700}
select{height:38px;border:1px solid #bdcad7;border-radius:5px;background:#fff;padding:0 10px;color:var(--text)}
.primary,.secondary,.danger{height:38px;border-radius:5px;padding:0 14px;font-weight:750;border:1px solid transparent}
.primary{background:var(--blue);color:#fff}.primary:hover{background:var(--blue-dark)}
.secondary{background:#fff;color:#24445e;border-color:#bdcad7}.danger{background:var(--red-bg);color:var(--red);border-color:#e9b8b3}
.notice{padding:11px 14px;background:var(--orange-bg);color:#7d4b0d;border:1px solid #edc981;border-radius:5px;margin-bottom:14px}
.notice.error{background:var(--red-bg);color:var(--red);border-color:#e9b8b3}
.wb-readonly-bar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(480px,1.3fr);gap:18px;align-items:end;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:5px;padding:13px 14px;margin-bottom:14px}.wb-readonly-title{display:grid;gap:4px}.wb-readonly-title small{color:var(--muted);line-height:1.4}.readonly-badge{width:max-content;padding:4px 7px;border-radius:4px;background:var(--green-bg);color:var(--green);font-size:11px;font-weight:800;text-transform:uppercase}.wb-readonly-controls{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:end}.locked-warehouse{display:grid;gap:3px;padding:9px 11px;border:1px solid var(--line);border-radius:5px;background:#f8fbfd}.locked-warehouse span,.locked-warehouse small{color:var(--muted);font-size:12px}.locked-warehouse strong{font-size:14px}.wb-readonly-status{grid-column:1/-1;color:var(--muted);font-size:12px}.wb-readonly-status.error{color:var(--red);font-weight:700}
.workstation-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:5px;padding:11px 14px;margin-bottom:14px}.workstation-bar>div:first-child{display:grid;grid-template-columns:auto auto;gap:2px 8px;align-items:baseline}.workstation-label{color:var(--muted);font-size:12px;font-weight:750}.workstation-bar strong{font-size:16px}.workstation-bar small{grid-column:1/-1;color:var(--muted)}.workstation-switch{display:flex;border:1px solid #bdcad7;border-radius:5px;overflow:hidden;background:#fff}.workstation-switch button{height:34px;border:0;border-right:1px solid #d7e0ea;background:#fff;color:#36536a;padding:0 12px;font-weight:750}.workstation-switch button:last-child{border-right:0}.workstation-switch button.active{background:var(--blue);color:#fff}
.metrics{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin-bottom:14px}
.metric{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--blue);padding:12px 14px;border-radius:5px}.metric small{display:block;color:var(--muted);margin-bottom:4px}.metric strong{font-size:24px}
.client-analytics-panel{background:var(--surface);border:1px solid var(--line);border-radius:6px;margin-bottom:14px;overflow:hidden}.client-analytics-summary{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.client-analytics-summary div{background:#fff;padding:12px 14px}.client-analytics-summary small,.client-analytics-summary strong{display:block}.client-analytics-summary small{color:var(--muted);margin-bottom:4px}.client-analytics-summary strong{font-size:22px}.client-analytics-list{max-height:calc(100vh - 300px);overflow:auto}.client-analytics-head,.client-analytics-row{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(88px,.55fr)) minmax(180px,.9fr) minmax(130px,.65fr);gap:10px;align-items:center}.client-analytics-head{position:sticky;top:0;z-index:1;padding:10px 16px;background:#eef3f7;color:#5e7183;font-size:11px;font-weight:800;text-transform:uppercase}.client-analytics-row{width:100%;border:0;border-top:1px solid #edf1f5;background:#fff;color:var(--text);padding:12px 16px;text-align:left}.client-analytics-row:hover{background:#f8fbfd}.client-analytics-row.active{box-shadow:inset 4px 0 var(--blue);background:#eef9fc}.client-analytics-row b,.client-analytics-row small{display:block}.client-analytics-row small{margin-top:3px;color:var(--muted);font-size:12px}.client-analytics-number{font-size:20px;font-weight:850}.client-analytics-number.ok{color:var(--green)}.client-analytics-number.warn{color:var(--orange)}.client-analytics-status{display:inline-flex;width:max-content;padding:4px 7px;border-radius:4px;background:#e9f0f6;color:#3b5871;font-size:11px;font-weight:800}.client-analytics-status.error{background:var(--red-bg);color:var(--red)}.client-analytics-status.active{background:var(--green-bg);color:var(--green)}
.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow:auto}.tabs button{border:0;background:transparent;padding:11px 14px;color:#52687c;font-weight:750;white-space:nowrap;border-bottom:3px solid transparent}.tabs button.active{color:var(--blue);border-bottom-color:var(--blue)}.tabs span{display:inline-block;min-width:22px;padding:2px 5px;background:#e7eef5;border-radius:10px;font-size:11px}
.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.75fr);gap:14px;align-items:start}
.orders-panel,.wave-panel{background:var(--surface);border:1px solid var(--line);border-radius:6px;min-width:0}
.panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border-bottom:1px solid var(--line)}.panel-toolbar p{margin:4px 0 0;color:var(--muted)}.toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}
.label-scan-workspace{padding:12px 16px;border-bottom:1px solid var(--line);background:#eef9fc}.label-scan-workspace.sgtin-print-workspace{background:#f5fbf8}.label-scan-workspace.stage-scan-workspace{background:#fff}.label-scan-workspace label{display:block;margin-bottom:6px;color:#36536a;font-size:12px;font-weight:800}.label-scan-workspace>div{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:7px}.label-scan-workspace input{height:42px;border:2px solid var(--blue);border-radius:5px;padding:0 11px;background:#fff;color:var(--text);font-size:16px}.sgtin-print-workspace input{border-color:var(--green)}.label-scan-workspace small{display:block;margin-top:6px;color:var(--muted)}
.group-list{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line);overflow:auto}.group-chip{min-width:235px;text-align:left;border:1px solid #c5d3df;background:#f8fbfd;border-radius:5px;padding:10px}.group-chip.active{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue)}.group-chip strong,.group-chip small{display:block}.group-chip small{color:var(--muted);margin-top:4px}
.order-list{max-height:calc(100vh - 340px);min-height:260px;overflow:auto;overscroll-behavior:contain}.order-head,.order-row{display:grid;grid-template-columns:34px minmax(210px,1.6fr) minmax(130px,.8fr) minmax(140px,.8fr) minmax(120px,.7fr);gap:10px;align-items:center}.order-head{position:sticky;top:0;z-index:1;padding:10px 16px;background:#eef3f7;color:#5e7183;font-size:11px;font-weight:800;text-transform:uppercase}.order-row{padding:11px 16px;border-top:1px solid #edf1f5}.order-row:hover{background:#f8fbfd}.order-row.selected{background:#eef9fc}.list-more{padding:12px 16px;border-top:1px solid #edf1f5;background:#f8fbfd;color:var(--muted);font-size:12px;text-align:center}.product{display:flex;align-items:center;gap:10px;min-width:0}.product img{width:40px;height:40px;border-radius:4px;object-fit:cover;background:#edf2f6}.product b,.product small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product small,.cell-note{color:var(--muted);font-size:12px}.badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:4px;font-size:11px;font-weight:800;background:#e9f0f6;color:#3b5871}.badge.green{background:var(--green-bg);color:var(--green)}.badge.orange{background:var(--orange-bg);color:var(--orange)}.badge.red{background:var(--red-bg);color:var(--red)}
.wave-panel{position:sticky;top:12px}.empty-wave{padding:32px 20px;text-align:center;color:var(--muted)}.empty-wave h2{color:var(--text);margin-bottom:7px}.wave-head{padding:15px 16px;border-bottom:1px solid var(--line)}.wave-head p{margin:5px 0 0;color:var(--muted)}.wave-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.wave-summary div{background:#fff;padding:11px}.wave-summary small,.wave-summary strong{display:block}.wave-summary small{color:var(--muted)}.wave-summary strong{font-size:18px;margin-top:3px}.route-list{padding:8px 16px 14px}.route-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.route-title{font-size:12px;color:var(--muted);font-weight:800;text-transform:uppercase;padding:8px 0}.route-row{display:grid;grid-template-columns:36px 1fr auto;gap:9px;align-items:center;padding:9px 0;border-top:1px solid #edf1f5}.route-step{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e7f3f8;color:var(--blue);font-weight:800}.route-row small{display:block;color:var(--muted);margin-top:2px}.route-row .route-shelves{color:var(--green);font-weight:800}.wave-actions{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--line);flex-wrap:wrap;align-items:center}.simulation-actions{display:flex;gap:5px;flex-wrap:wrap}.simulation-actions button{height:30px;padding:0 8px;border-radius:4px;border:1px solid #c2cfda;background:#fff;color:#345067;font-size:12px}.simulation-actions button.shortage{color:var(--red);border-color:#e9b8b3}
.dropoff-workspace{padding:12px 16px;border-top:1px solid var(--line);background:#f8fbfd}.dropoff-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.dropoff-options button{min-height:64px;border:1px solid #bdcad7;border-radius:5px;background:#fff;color:var(--text);padding:9px 10px;text-align:left}.dropoff-options button.active{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue);background:#eef9fc}.dropoff-options b,.dropoff-options small{display:block}.dropoff-options small{margin-top:4px;color:var(--muted);line-height:1.3}.dropoff-note,.dropoff-warning{margin-top:8px;font-size:12px}.dropoff-note{color:var(--green)}.dropoff-warning{color:var(--orange);font-weight:700}
.scan-action{display:grid;gap:5px}.scan-action input,.packing-scan input{height:32px;min-width:190px;border:1px solid #bdcad7;border-radius:4px;padding:0 8px}.scan-action button,.packing-scan button{height:32px;border:1px solid #bdcad7;border-radius:4px;background:#fff;color:#345067;padding:0 9px}.box-workspace{padding:12px 16px;border-top:1px solid var(--line);background:#f8fbfd}.box-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.box-head small{display:block;color:var(--muted);margin-top:3px}.box-list{display:grid;gap:6px;margin-top:10px}.box-line{display:grid;grid-template-columns:1fr auto;gap:6px}.box-row{display:flex;justify-content:space-between;gap:10px;width:100%;border:1px solid #c5d3df;border-radius:4px;background:#fff;padding:8px 10px;text-align:left;color:var(--text)}.box-row small{display:block;color:var(--muted);margin-top:2px}.box-row.active{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue)}.box-actions{display:flex;gap:6px}.box-state-button,.box-print-button{border:1px solid #bdcad7;border-radius:4px;background:#fff;color:#345067;padding:0 10px;font-weight:700;white-space:nowrap}.box-print-button{border-color:#91bfd3;color:var(--blue)}.packing-scan{margin-top:12px}.packing-scan label{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:5px}.packing-scan>div{display:grid;grid-template-columns:1fr auto;gap:6px}
.supply-readiness{padding:12px 16px;border-top:1px solid var(--line)}.readiness-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.readiness-grid>div{display:grid;grid-template-columns:22px 1fr;column-gap:5px;padding:8px;border:1px solid var(--line);border-radius:4px}.readiness-grid span{grid-row:1/3;font-weight:900}.readiness-grid small{color:var(--muted)}.readiness-grid .done{background:var(--green-bg);border-color:#b9dfca}.readiness-grid .done span{color:var(--green)}.readiness-grid .blocked{background:var(--orange-bg);border-color:#edc981}.readiness-grid .blocked span{color:var(--orange)}.readiness-blocker{margin:9px 0;color:var(--muted);font-size:12px}.supply-readiness>.primary{width:100%}.supply-ready{display:grid;gap:4px;padding:11px;border:1px solid #b9dfca;border-radius:4px;background:var(--green-bg)}.supply-ready small,.supply-ready span{color:var(--green)}
.loading-workspace{padding:12px 16px;border-top:1px solid var(--line);background:#f8fbfd}.loading-progress{display:grid;gap:3px;padding:10px;border:1px solid #edc981;border-radius:4px;background:var(--orange-bg)}.loading-progress.complete{border-color:#b9dfca;background:var(--green-bg)}.loading-progress small{color:var(--muted)}.loading-boxes{display:grid;gap:6px;margin-top:9px}.loading-box{display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:center;padding:8px 10px;border:1px solid #edc981;border-radius:4px;background:#fff}.loading-box>span{color:var(--orange);font-weight:900}.loading-box small{display:block;color:var(--muted);margin-top:2px}.loading-box.loaded{border-color:#b9dfca;background:var(--green-bg)}.loading-box.loaded>span{color:var(--green)}.loading-scan{margin-top:11px}.loading-scan label{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:5px}.loading-scan>div{display:grid;grid-template-columns:1fr auto;gap:6px}.loading-scan input{height:36px;border:1px solid #bdcad7;border-radius:4px;padding:0 9px}.loading-scan button{border:1px solid #bdcad7;border-radius:4px;background:#fff;color:#345067;padding:0 11px;font-weight:700}.loading-warning{margin:9px 0;color:var(--orange);font-size:12px;font-weight:700}.loading-workspace>.primary{width:100%}.loading-note{margin-top:9px;padding:9px;border-radius:4px;background:var(--green-bg);color:var(--green)}
.wb-supply-workspace{padding:12px 16px;border-top:1px solid var(--line);background:#f7f9ff}.wb-operation-plan{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.wb-operation-plan span{padding:8px;border:1px solid #cbd5ef;border-radius:4px;background:#fff;color:#3b5073;font-size:12px;font-weight:700}.wb-supply-workspace>.primary{width:100%}.wb-supply-status{display:grid;gap:4px;padding:10px;border:1px solid #edc981;border-radius:4px;background:var(--orange-bg)}.wb-supply-status small,.wb-supply-status span{color:var(--orange)}.wb-supply-status.complete{border-color:#b9dfca;background:var(--green-bg)}.wb-supply-status.complete small,.wb-supply-status.complete span{color:var(--green)}.wb-supply-status.failed{border-color:#e9b8b3;background:var(--red-bg)}.wb-supply-status.failed small,.wb-supply-status.failed span{color:var(--red)}.wb-command-list{display:grid;gap:6px;margin-top:8px}.wb-command{display:grid;grid-template-columns:26px 1fr;gap:8px;align-items:center;padding:8px 9px;border:1px solid var(--line);border-radius:4px;background:#fff}.wb-command>span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#e8eef5;color:#4b6175;font-weight:900}.wb-command small,.wb-command em{display:block;margin-top:2px;color:var(--muted);font-size:11px}.wb-command em{color:var(--red);font-style:normal}.wb-command.succeeded{border-color:#b9dfca}.wb-command.succeeded>span{background:var(--green-bg);color:var(--green)}.wb-command.failed{border-color:#e9b8b3}.wb-command.failed>span{background:var(--red-bg);color:var(--red)}.wb-retry{width:100%;margin-top:8px}
.wb-dispatch-workspace{padding:12px 16px;border-top:1px solid var(--line);background:#f5fbf8}.dispatch-plan{grid-template-columns:repeat(5,1fr)}.dispatch-actions{display:grid;grid-template-columns:1fr;gap:7px;margin-top:9px}.dispatch-actions button{width:100%}
.warehouse-sc-plan{grid-template-columns:repeat(3,1fr)}
.empty-list{padding:36px 20px;text-align:center;color:var(--muted)}
.toast{position:fixed;right:18px;bottom:18px;max-width:420px;padding:11px 14px;border-radius:5px;background:#143248;color:#fff;box-shadow:0 8px 24px rgba(9,36,58,.2);opacity:0;transform:translateY(8px);pointer-events:none;transition:.18s}.toast.show{opacity:1;transform:none}
@media(max-width:980px){.workspace{grid-template-columns:1fr}.wave-panel{position:static}.metrics,.client-analytics-summary{grid-template-columns:repeat(2,1fr)}.page-head{align-items:stretch;flex-direction:column}.head-controls{grid-template-columns:1fr auto auto}.wb-readonly-bar{grid-template-columns:1fr}.workstation-bar{align-items:stretch;flex-direction:column}.workstation-switch{align-self:flex-start}.order-head{display:none}.order-row{grid-template-columns:30px 1fr}.order-row>div:nth-child(n+3){grid-column:2}.client-analytics-head{display:none}.client-analytics-row{grid-template-columns:1fr 1fr}.client-analytics-row>div:first-child,.client-analytics-row>div:nth-child(6),.client-analytics-row>div:nth-child(7){grid-column:1/-1}.topbar{padding:0 12px}.environment{display:none}}
@media(max-width:560px){.page-shell{padding:12px}.metrics{grid-template-columns:1fr 1fr}.workstation-switch{display:grid;grid-template-columns:1fr 1fr;width:100%}.workstation-switch button{border-bottom:1px solid #d7e0ea}.panel-toolbar,.route-head{align-items:stretch;flex-direction:column}.route-head .secondary{width:100%}.toolbar-actions{display:grid;grid-template-columns:1fr 1fr}.label-scan-workspace>div{grid-template-columns:1fr}.head-controls{grid-template-columns:1fr}.head-controls .secondary{width:100%}.wb-readonly-controls{grid-template-columns:1fr}.wb-readonly-controls label{grid-column:1}.readiness-grid,.dispatch-plan,.dropoff-options{grid-template-columns:1fr}.box-line{grid-template-columns:1fr}.box-actions{display:grid;grid-template-columns:1fr 1fr}.box-state-button,.box-print-button{min-height:36px}}

.product .scan-critical{color:#000;font-weight:900;font-size:13px;line-height:1.25;white-space:normal;overflow:visible;text-overflow:clip}.product .scan-critical+small{margin-top:2px}
@media(max-width:720px){.page-shell{padding:8px}.page-head{gap:8px}.metrics{grid-template-columns:1fr 1fr;gap:6px}.metric{padding:8px 10px}.metric strong{font-size:19px}.workstation-bar{display:none}.tabs{margin-bottom:8px}.tabs button{padding:10px 11px}.workspace{display:block}.wave-panel{display:none}.orders-panel{display:flex;flex-direction:column;border-radius:4px;max-height:calc(100dvh - 74px);overflow:hidden}.panel-toolbar{padding:10px 12px;flex:0 0 auto}.panel-toolbar p{font-size:12px}.label-scan-workspace{padding:10px 12px;flex:0 0 auto}.label-scan-workspace input{height:48px;font-size:18px}.label-scan-workspace>div{grid-template-columns:1fr auto}.label-scan-workspace .secondary{min-width:76px}.group-list{flex:0 0 auto}.order-list{flex:1 1 auto;min-height:220px;max-height:none;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:auto;padding-bottom:18px}.order-row{grid-template-columns:1fr;gap:6px;padding:12px;border-top:6px solid #eef3f7}.order-row>div:first-child{display:none}.order-row>div:nth-child(n+3){grid-column:1}.product{align-items:flex-start}.product img,.product .route-step{width:34px;height:34px;flex:0 0 34px}.product b{font-size:14px;line-height:1.2;white-space:normal}.product small{white-space:normal}.product .scan-critical{font-size:16px;line-height:1.25;margin-top:4px}.order-row>div:nth-child(3),.order-row>div:nth-child(4){font-size:12px}.order-row>div:nth-child(3) b{font-size:13px}.simulation-actions{margin-top:4px}.simulation-actions .badge{font-size:13px;padding:6px 8px}.simulation-actions button{height:34px;font-size:13px}.toast{left:10px;right:10px;bottom:10px;max-width:none}}

