/* Module entrepôt : zone de scan, lignes de réception / préparation */
.wms-scan{display:flex;flex-direction:column;gap:8px;border-radius:12px;padding:2px}
.wms-scan-row{display:flex;gap:8px;flex-wrap:wrap}
.wms-scan-in{flex:1;min-width:220px;min-height:52px;font-size:18px;font-family:var(--mono);border:2px solid var(--accent);border-radius:10px;padding:10px 14px;background:var(--bg)}
.wms-scan-msg{min-height:20px;font-weight:600;color:var(--muted)}
.wms-cam{position:relative;max-width:520px;width:100%;border-radius:12px;overflow:hidden;background:#000}
.wms-cam video{width:100%;display:block}
.wms-aim{position:absolute;left:10%;right:10%;top:38%;height:24%;border:2px solid rgb(255 255 255 / .85);border-radius:8px;box-shadow:0 0 0 999px rgb(0 0 0 / .25)}
.wms-ok{animation:wmsok .6s ease-out}
.wms-bad{animation:wmsbad .8s ease-out}
@keyframes wmsok{0%{box-shadow:0 0 0 4px var(--good)}100%{box-shadow:0 0 0 0 transparent}}
@keyframes wmsbad{0%,40%{box-shadow:0 0 0 5px var(--bad);background:color-mix(in srgb,var(--bad) 12%,transparent)}100%{box-shadow:0 0 0 0 transparent}}
.wms-lines{display:flex;flex-direction:column;gap:8px}
.wms-line{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto auto;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.wms-line img,.wms-noimg{width:56px;height:56px;border-radius:8px;object-fit:cover;background:var(--sunk);display:block}
.wms-line.last{border-color:var(--mint);box-shadow:0 0 0 2px var(--mint-soft)}
.wms-line.done{background:color-mix(in srgb,var(--good) 7%,var(--surface));border-color:color-mix(in srgb,var(--good) 40%,var(--line))}
.wms-line.over{background:color-mix(in srgb,var(--bad) 8%,var(--surface));border-color:color-mix(in srgb,var(--bad) 50%,var(--line))}
.wms-li{min-width:0;display:flex;flex-direction:column;gap:2px}
.wms-qbox{display:flex;flex-direction:column;gap:4px;align-items:flex-end}
.wms-q{width:80px;text-align:center;font-family:var(--mono);border:1px solid var(--line);border-radius:8px;min-height:34px;background:var(--bg)}
.wms-c{width:96px;text-align:right;font-family:var(--mono);border:1px solid var(--line);border-radius:8px;min-height:34px;padding:0 8px;background:var(--bg)}
.wms-cbox{display:flex;flex-direction:column;gap:4px;align-items:flex-end}
.wms-pick{font-size:20px}
.wms-pick b{font-size:24px}
.wms-check{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;background:transparent}
.wms-line.done .wms-check{background:var(--good)}
.wms-line.over .wms-check{background:var(--bad)}
.wms-foot{position:sticky;bottom:0;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(8px);padding:12px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;z-index:5}
.wms-pay{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:10px}
.wms-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:720px){
  .wms-g3{grid-template-columns:1fr}
  .wms-line{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"i t x" "q q q" "c c c"}
  .wms-line img,.wms-noimg{width:44px;height:44px;grid-area:i}
  .wms-li{grid-area:t}
  .wms-line>.btn,.wms-check{grid-area:x}
  .wms-qbox{grid-area:q;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center}
  .wms-cbox{grid-area:c;flex-direction:row;justify-content:space-between;align-items:center}
}
/* Nouveau produit depuis un code inconnu */
.wms-tab{display:flex;flex-direction:column;gap:12px}
.wms-photorow{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}
.wms-photo{width:120px;height:120px;border-radius:12px;border:1px dashed var(--line);background:var(--sunk);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;overflow:hidden;text-align:center;padding:4px}
.wms-photo img{width:100%;height:92px;object-fit:contain;background:#fff;border-radius:8px}
.wms-photobtns{display:flex;flex-direction:column;gap:8px;flex:1;min-width:170px}
.wms-results{display:flex;flex-direction:column;gap:6px;max-height:330px;overflow-y:auto}
.wms-hit{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:8px;cursor:pointer;min-height:54px;width:100%}
.wms-hit img,.wms-hit .wms-noimg{width:40px;height:40px;border-radius:6px;object-fit:cover;flex:none}
.wms-hit>span:last-child{display:flex;flex-direction:column;min-width:0}
.wms-hit.on{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}
.wms-ph{display:flex;flex-direction:column;gap:8px}
.wms-phw{max-height:320px;overflow-y:auto}
