/* 创建拣货单：全主题共用的全屏 Excel 页 — 高对比、密表 */
#modal-out.pick-create-page {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 2000 !important;
  background: #e8eaed !important;
  display: none !important;
  place-items: stretch !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#modal-out.pick-create-page:not(.hidden) {
  display: flex !important;
}
body.pick-create-open {
  overflow: hidden !important;
}
#modal-out.pick-create-page .pick-create-panel,
#modal-out.pick-create-page .modal-panel {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: #ffffff !important;
  color: #111111 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  animation: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#modal-out.pick-create-page .pick-create-panel::before,
#modal-out.pick-create-page .modal-panel::before {
  display: none !important;
}
#modal-out.pick-create-page .pick-create-head,
#modal-out.pick-create-page .modal-head {
  flex: 0 0 auto;
  background: #1f4e79 !important;
  color: #ffffff !important;
  border-bottom: 1px solid #163a5a !important;
  padding: 8px 12px !important;
  cursor: default !important;
}
#modal-out.pick-create-page .pick-create-head h3,
#modal-out.pick-create-page .modal-head h3 {
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}
#modal-out.pick-create-page .pick-create-head .muted,
#modal-out.pick-create-page #out-page-hint {
  color: #dbeafe !important;
}
#modal-out.pick-create-page .modal-head-actions button {
  min-height: 32px;
  font-size: 13px;
  color: #111 !important;
  background: #fff !important;
  border: 1px solid #cbd5e1 !important;
}
#modal-out.pick-create-page .modal-head-actions button.primary,
#modal-out.pick-create-page .modal-head-actions button.ok {
  background: #217346 !important;
  color: #fff !important;
  border-color: #1a5c38 !important;
}
#modal-out.pick-create-page .pick-create-body,
#modal-out.pick-create-page .modal-body {
  flex: 1 1 auto !important;
  overflow: auto !important;
  padding: 8px 10px 12px !important;
  max-height: none !important;
  background: #ffffff !important;
  color: #111111 !important;
}
#modal-out.pick-create-page label {
  color: #1e293b !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  margin-bottom: 2px !important;
}
#modal-out.pick-create-page input,
#modal-out.pick-create-page select {
  margin: 0 !important;
  padding: 4px 6px !important;
  font-size: 13px !important;
  border: 1px solid #64748b !important;
  border-radius: 2px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  min-height: 28px;
}
.pick-create-fields {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  gap: 6px 8px !important;
  margin-bottom: 8px !important;
  padding: 6px 8px !important;
  border: 1px solid #94a3b8 !important;
  background: #f1f5f9 !important;
}
.pick-create-fields .wms-field-doc {
  grid-column: span 2;
}
.pick-create-manual {
  margin-bottom: 8px !important;
  border: 1px solid #94a3b8 !important;
  border-radius: 2px !important;
  background: #f8fafc !important;
}
.pick-create-manual summary {
  padding: 4px 8px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1f4e79 !important;
}
.pick-create-table-wrap {
  border: 1px solid #475569 !important;
  border-radius: 0 !important;
  overflow: auto !important;
  max-height: none !important;
  min-height: calc(100vh - 160px) !important;
  background: #ffffff !important;
}
#modal-out.pick-create-page table.pick-create-table,
#modal-out.pick-create-page table.out-lines-sheet {
  width: 100% !important;
  min-width: 1100px !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  background: #ffffff !important;
  color: #0f172a !important;
}
#modal-out.pick-create-page table.pick-create-table thead th {
  position: sticky !important;
  top: 0 !important;
  z-index: 3 !important;
  background: #217346 !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 5px 4px !important;
  border: 1px solid #14532d !important;
  white-space: nowrap !important;
  text-align: center !important;
}
#modal-out.pick-create-page table.pick-create-table td {
  padding: 3px 4px !important;
  border: 1px solid #94a3b8 !important;
  vertical-align: middle !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  background: #ffffff !important;
  color: #0f172a !important;
  text-align: center !important;
}
#modal-out.pick-create-page table.pick-create-table tbody tr:nth-child(even) td {
  background: #f0fdf4 !important;
}
#modal-out.pick-create-page table.pick-create-table tbody tr:hover td {
  background: #dcfce7 !important;
}
#modal-out.pick-create-page .col-seq {
  width: 28px !important;
  max-width: 28px !important;
  min-width: 28px !important;
  text-align: center !important;
  padding: 2px 0 !important;
  color: #334155 !important;
  font-weight: 600 !important;
}
#modal-out.pick-create-page .col-model {
  width: 140px !important;
  text-align: center !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}
#modal-out.pick-create-page .col-qty,
#modal-out.pick-create-page .col-boxes {
  width: 48px !important;
  text-align: center !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
}
#modal-out.pick-create-page .col-pick {
  width: 26% !important;
}
#modal-out.pick-create-page .col-other {
  width: auto !important;
}
#modal-out.pick-create-page .col-del {
  width: 28px !important;
  padding: 0 !important;
}
#modal-out.pick-create-page .out-line-drop {
  min-height: 28px !important;
  border: 1px dashed #64748b !important;
  border-radius: 0 !important;
  padding: 2px !important;
  gap: 2px !important;
  background: #fffbeb !important;
  justify-content: center !important;
}
#modal-out.pick-create-page .out-line-drop.drag-over {
  border-color: #217346 !important;
  background: #bbf7d0 !important;
}
#modal-out.pick-create-page .out-drop-hint {
  color: #475569 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}
#modal-out.pick-create-page .out-pool-block {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 3px;
  margin-bottom: 3px;
}
#modal-out.pick-create-page .out-pool-lab {
  flex: 0 0 auto;
  font-size: 11px;
  font-weight: 800;
  color: #1e293b;
  background: #e2e8f0;
  border: 1px solid #64748b;
  padding: 0 4px;
  line-height: 1.5;
}
#modal-out.pick-create-page .out-pool-lab.sug {
  background: #fef3c7;
  border-color: #d97706;
  color: #92400e;
}
#modal-out.pick-create-page .out-line-chip,
#modal-out.pick-create-page .loc-pick-chip {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: baseline !important;
  flex-wrap: nowrap !important;
  gap: 4px !important;
  margin: 1px 4px 1px 0 !important;
  padding: 1px 6px !important;
  border: 1px solid #334155 !important;
  border-radius: 0 !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  cursor: grab !important;
  box-shadow: none !important;
  min-height: 0 !important;
  min-width: 0 !important;
  white-space: nowrap !important;
}
#modal-out.pick-create-page .out-line-chip.is-suggest {
  border: 2px solid #d97706 !important;
  background: #fff7ed !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}
#modal-out.pick-create-page .out-line-chip.pick-confirmed {
  border: 2px solid #166534 !important;
  background: #bbf7d0 !important;
  cursor: pointer !important;
  color: #14532d !important;
}
#modal-out.pick-create-page .out-line-chip .code {
  display: inline !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  color: inherit !important;
  white-space: nowrap !important;
}
#modal-out.pick-create-page .out-line-chip .qty {
  display: inline !important;
  font-size: 11px !important;
  color: #334155 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}
#modal-out.pick-create-page .muted,
#modal-out.pick-create-page .muted.tiny {
  color: #475569 !important;
}
#modal-out.pick-create-page .out-batch-banner {
  position: relative !important;
  z-index: 1 !important;
  margin-bottom: 10px !important;
  border: 1px solid #b45309 !important;
  background: #fffbeb !important;
  color: #0f172a !important;
  border-radius: 4px !important;
  padding: 8px 10px !important;
  max-height: 280px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  contain: layout paint !important;
  box-sizing: border-box !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-title {
  font-size: 13px !important;
  color: #0f172a !important;
  margin: 0 0 4px !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec {
  margin-top: 6px !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec > b {
  display: block !important;
  margin-bottom: 4px !important;
  font-size: 13px !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec.err > b {
  color: #b91c1c !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-chip {
  display: inline-block !important;
  max-width: 100% !important;
  padding: 3px 8px !important;
  border: 1px solid #d97706 !important;
  background: #ffffff !important;
  color: #7c2d12 !important;
  border-radius: 3px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-chip.err {
  border-color: #dc2626 !important;
  color: #991b1b !important;
  background: #fef2f2 !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-chip.warn {
  border-color: #ca8a04 !important;
  color: #854d0e !important;
  background: #fefce8 !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-tip {
  margin-top: 6px !important;
  font-size: 12px !important;
  color: #64748b !important;
}
#toast {
  z-index: 12000 !important;
}
#modal-out.pick-create-page .out-submit-feedback {
  margin: 0 0 8px !important;
  padding: 8px 10px !important;
  border: 2px solid #dc2626 !important;
  background: #fef2f2 !important;
  color: #991b1b !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border-radius: 2px !important;
}
#modal-out.pick-create-page .out-submit-feedback.is-ok {
  border-color: #16a34a !important;
  background: #f0fdf4 !important;
  color: #14532d !important;
}
#modal-out.pick-create-page .out-submit-feedback.hidden {
  display: none !important;
}
#modal-out.pick-create-page .out-submit-feedback .obb-jumps {
  margin-top: 6px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  color: #7f1d1d !important;
}
#modal-out.pick-create-page .out-submit-feedback .obb-jump {
  color: #b91c1c !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  font-weight: 800 !important;
}
#modal-out.pick-create-page table.pick-create-table tbody tr.row-submit-err td {
  background: #fee2e2 !important;
  border-color: #f87171 !important;
}
#modal-out.pick-create-page table.pick-create-table tbody tr.row-submit-err td.col-model {
  color: #991b1b !important;
  font-weight: 800 !important;
}
#modal-out.pick-create-page .row-issue-badge {
  margin-top: 2px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #991b1b !important;
  background: #fecaca !important;
  border: 1px solid #dc2626 !important;
  padding: 1px 4px !important;
  display: inline-block !important;
  max-width: 100% !important;
  white-space: normal !important;
  line-height: 1.3 !important;
}
#modal-out.pick-create-page table.pick-create-table tbody tr.row-flash td {
  outline: 3px solid #dc2626 !important;
  background: #fecaca !important;
}
#modal-out.pick-create-page .out-batch-banner.has-ctns-alert {
  max-height: 220px !important;
  border-color: #dc2626 !important;
  background: #fff7ed !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec.alert-ctns {
  margin-top: 8px !important;
  padding: 8px !important;
  border: 2px solid #dc2626 !important;
  background: #fef2f2 !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec.alert-ctns > b {
  color: #991b1b !important;
  font-size: 14px !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec.alert-ctns .obb-tip {
  color: #9a3412 !important;
  margin: 4px 0 6px !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec.alert-fill {
  margin-top: 8px !important;
  padding: 8px !important;
  border: 1px solid #93c5fd !important;
  background: #eff6ff !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec.alert-fill > b {
  color: #1d4ed8 !important;
  font-size: 14px !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-sec.alert-fill .obb-tip {
  color: #1e40af !important;
  margin: 4px 0 6px !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-list {
  margin: 0 !important;
  padding: 0 0 0 18px !important;
  color: #7f1d1d !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
#modal-out.pick-create-page .out-batch-banner .obb-list li {
  margin: 3px 0 !important;
}
#modal-out.pick-create-page table.pick-create-table tbody tr.row-ctns-warn td {
  background: #fff7ed !important;
}
#modal-out.pick-create-page table.pick-create-table tbody tr.row-ctns-warn td.col-boxes {
  color: #b91c1c !important;
  font-weight: 800 !important;
}
#modal-out.pick-create-page .ctns-mismatch {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 1px;
  line-height: 1.2;
}
#modal-out.pick-create-page .ctns-mismatch-tag {
  display: inline-block;
  font-size: 10px !important;
  font-weight: 700 !important;
  color: #991b1b !important;
  background: #fecaca !important;
  border: 1px solid #dc2626 !important;
  padding: 0 3px !important;
  white-space: nowrap !important;
}

/* ========== 开始拣货：全屏 Excel 页（与创建拣货单统一） ========== */
#modal-pick-work.pick-work-page {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 2000 !important;
  background: #e8eaed !important;
  display: none !important;
  place-items: stretch !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#modal-pick-work.pick-work-page:not(.hidden) {
  display: flex !important;
}
body.pick-work-open {
  overflow: hidden !important;
}
#modal-pick-work.pick-work-page .pick-work-panel,
#modal-pick-work.pick-work-page .modal-panel {
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: #ffffff !important;
  color: #111111 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  animation: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#modal-pick-work.pick-work-page .pick-work-panel::before,
#modal-pick-work.pick-work-page .modal-panel::before {
  display: none !important;
}
#modal-pick-work.pick-work-page .pick-work-head,
#modal-pick-work.pick-work-page .modal-head {
  flex: 0 0 auto;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  background: #1f4e79 !important;
  color: #ffffff !important;
  border-bottom: 1px solid #163a5a !important;
  padding: 8px 12px !important;
  cursor: default !important;
}
#modal-pick-work.pick-work-page .pick-work-title-wrap {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
#modal-pick-work.pick-work-page .pick-work-head h3,
#modal-pick-work.pick-work-page .modal-head h3 {
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin: 0 !important;
}
#modal-pick-work.pick-work-page .pick-work-head .muted,
#modal-pick-work.pick-work-page #pick-work-hint {
  color: #dbeafe !important;
  font-size: 12px !important;
}
#modal-pick-work.pick-work-page .modal-head-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  flex: 0 0 auto;
}
#modal-pick-work.pick-work-page .modal-head-actions button {
  min-height: 32px;
  font-size: 13px;
  color: #111 !important;
  background: #fff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 2px !important;
}
#modal-pick-work.pick-work-page .modal-head-actions button.ok,
#modal-pick-work.pick-work-page .modal-head-actions button.primary {
  background: #217346 !important;
  color: #fff !important;
  border-color: #1a5c38 !important;
}
#modal-pick-work.pick-work-page .pick-work-body,
#modal-pick-work.pick-work-page .modal-body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  padding: 8px 10px 10px !important;
  max-height: none !important;
  min-height: 0 !important;
  background: #ffffff !important;
  color: #111111 !important;
}
#modal-pick-work.pick-work-page .pick-work-summary {
  flex: 0 0 auto !important;
  margin: 0 0 6px !important;
  padding: 6px 8px !important;
  border: 1px solid #94a3b8 !important;
  background: #f1f5f9 !important;
  color: #0f172a !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border-radius: 0 !important;
}
#modal-pick-work.pick-work-page .pick-work-summary .muted {
  color: #475569 !important;
  font-weight: 500 !important;
}
#modal-pick-work.pick-work-page .pw-tabs {
  flex: 0 0 auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 4px 8px !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  border-bottom: 2px solid #475569 !important;
}
#modal-pick-work.pick-work-page .pw-tabs-meta {
  flex: 1 1 auto;
  min-width: 0;
  text-align: right;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  padding: 4px 6px 6px !important;
  line-height: 1.35 !important;
  white-space: normal;
}
#modal-pick-work.pick-work-page .pw-tabs-meta .pw-sum-hint {
  color: #64748b !important;
  font-weight: 500 !important;
}
#modal-pick-work.pick-work-page .pw-check-all-btn {
  appearance: none;
  border: 1px solid #64748b;
  background: #f8fafc;
  color: #0f172a;
  font-size: 12px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  cursor: pointer;
  line-height: 1.3;
  white-space: nowrap;
}
#modal-pick-work.pick-work-page .pw-check-all-btn:hover {
  border-color: #217346;
  color: #14532d;
  background: #ecfdf5;
}
#modal-pick-work.pick-work-page .pw-tab-btn {
  appearance: none !important;
  border: 1px solid #94a3b8 !important;
  border-bottom: 0 !important;
  background: #e2e8f0 !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 7px 14px !important;
  margin-bottom: -2px !important;
  cursor: pointer !important;
  border-radius: 4px 4px 0 0 !important;
}
#modal-pick-work.pick-work-page .pw-tab-btn.active {
  background: #217346 !important;
  color: #ffffff !important;
  border-color: #14532d !important;
}
#modal-pick-work.pick-work-page .pw-tab-panels {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}
#modal-pick-work.pick-work-page .pw-tab-panel {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: auto !important;
  display: flex !important;
  flex-direction: column !important;
}
#modal-pick-work.pick-work-page .pw-tab-panel.hidden {
  display: none !important;
}
#modal-pick-work.pick-work-page .pick-work-table-wrap {
  flex: 1 1 auto !important;
  overflow: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  border: 1px solid #475569 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
}
#modal-pick-work.pick-work-page .pick-work-table {
  width: 100% !important;
  min-width: 980px !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  background: #ffffff !important;
  color: #0f172a !important;
}
#modal-pick-work.pick-work-page .pick-work-table thead th {
  position: sticky !important;
  top: 0 !important;
  z-index: 3 !important;
  background: #217346 !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 2px !important;
  border: 1px solid #14532d !important;
  white-space: nowrap !important;
  text-align: center !important;
}
#modal-pick-work.pick-work-page .pick-work-table td {
  padding: 2px 3px !important;
  border: 1px solid #94a3b8 !important;
  vertical-align: middle !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  background: #ffffff !important;
  color: #0f172a !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
#modal-pick-work.pick-work-page .pick-work-table tbody tr:nth-child(even) td {
  background: #f0fdf4 !important;
}
#modal-pick-work.pick-work-page .pick-work-table tbody tr:hover td {
  background: #dcfce7 !important;
}
#modal-pick-work.pick-work-page .pick-work-table tr.is-done td {
  background: #eaf7ea !important;
  opacity: 1 !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-chk {
  width: 28px !important;
  min-width: 28px !important;
  text-align: center !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-seq {
  width: 36px !important;
  min-width: 32px !important;
  text-align: center !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-m {
  width: 110px !important;
  min-width: 90px !important;
  text-align: left !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-qpc {
  width: 56px !important;
  min-width: 48px !important;
  text-align: center !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-n {
  width: 72px !important;
  min-width: 64px !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-pend {
  width: 88px !important;
  min-width: 76px !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-loc {
  width: 30% !important;
  min-width: 200px !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-src {
  width: 100px !important;
  min-width: 88px !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-in {
  width: 200px !important;
  min-width: 180px !important;
}
#modal-pick-work.pick-work-page .pick-work-table .col-act {
  width: 64px !important;
  min-width: 56px !important;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-seq {
  text-align: center !important;
  font-weight: 800 !important;
  font-variant-numeric: tabular-nums !important;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-check-cell {
  text-align: center !important;
  vertical-align: middle !important;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-row-check {
  width: 16px;
  height: 16px;
  cursor: pointer;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-model {
  text-align: left !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-model b {
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  line-height: 1.25 !important;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-qpc {
  text-align: center !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-unit-s {
  margin-left: 1px;
  font-size: 10px;
  font-weight: 600;
  color: #64748b;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-model .tiny,
#modal-pick-work.pick-work-page .pick-work-table .muted {
  color: #475569 !important;
}
#modal-pick-work.pick-work-page .pick-work-table .pw-num {
  text-align: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
}
#modal-pick-work.pick-work-page .pick-work-table td.remain {
  color: #b91c1c !important;
  text-shadow: none !important;
}
#modal-pick-work.pick-work-page .pick-work-table td.is-picked {
  color: #166534 !important;
}
#modal-pick-work.pick-work-page .pw-done-tag {
  margin-left: 2px;
  font-size: 10px;
  font-weight: 800;
  color: #15803d;
  white-space: nowrap;
}
#modal-pick-work.pick-work-page .pw-sugs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 2px !important;
  max-height: 3.6em !important;
  overflow: auto !important;
  align-content: flex-start !important;
}
#modal-pick-work.pick-work-page .pw-sug,
#modal-pick-work.pick-work-page button.pw-sug {
  display: inline-block !important;
  border: 1px solid #334155 !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  border-radius: 0 !important;
  padding: 0 4px !important;
  font-size: 10px !important;
  line-height: 1.3 !important;
  white-space: nowrap !important;
  box-shadow: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  cursor: grab !important;
  user-select: none !important;
}
#modal-pick-work.pick-work-page .pw-sug:active,
#modal-pick-work.pick-work-page button.pw-sug:active {
  cursor: grabbing !important;
}
#modal-pick-work.pick-work-page .pw-sug.is-dragging,
#modal-pick-work.pick-work-page button.pw-sug.is-dragging {
  opacity: 0.5 !important;
}
#modal-pick-work.pick-work-page .pw-sug:disabled,
#modal-pick-work.pick-work-page button.pw-sug:disabled {
  cursor: default !important;
}
#modal-pick-work.pick-work-page .pw-sug.is-sug,
#modal-pick-work.pick-work-page button.pw-sug.is-sug {
  border: 2px solid #d97706 !important;
  background: #fff7ed !important;
  font-weight: 800 !important;
}
#modal-pick-work.pick-work-page .pw-path-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
}
#modal-pick-work.pick-work-page .pw-path-item {
  display: inline-block;
  border: 1px solid #64748b;
  background: #e2e8f0;
  padding: 1px 5px;
  font-size: 11px;
  font-weight: 700;
  color: #0f172a;
}
#modal-pick-work.pick-work-page .pw-slots {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 32px;
  padding: 3px;
  border: 1px dashed transparent;
  border-radius: 2px;
  transition: border-color 0.12s, background 0.12s;
}
#modal-pick-work.pick-work-page .pw-slots.is-drop-hover,
#modal-pick-work.pick-work-page .pw-slots.pw-drop-flash,
#modal-pick-work.pick-work-page .pw-slot.is-drop-hover,
#modal-pick-work.pick-work-page .pw-slot.pw-drop-flash,
#modal-pick-work.pick-work-page .pw-drop-add.is-drop-hover {
  border-color: #2563eb;
  background: rgba(37, 99, 235, 0.08);
}
#modal-pick-work.pick-work-page .pw-slot {
  display: grid;
  grid-template-columns: minmax(70px, 1.2fr) minmax(48px, 0.55fr) minmax(48px, 0.55fr) 18px;
  gap: 2px;
  align-items: center;
  padding: 1px;
  border: 1px dashed transparent;
  border-radius: 2px;
}
#modal-pick-work.pick-work-page .pw-field {
  display: flex;
  align-items: center;
  gap: 2px;
  min-width: 0;
  margin: 0;
}
#modal-pick-work.pick-work-page .pw-field-loc .pw-lab {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 800;
  color: #9a3412;
  white-space: nowrap;
}
#modal-pick-work.pick-work-page .pw-unit {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 700;
  color: #334155;
  white-space: nowrap;
}
#modal-pick-work.pick-work-page .pw-loc,
#modal-pick-work.pick-work-page .pw-qty,
#modal-pick-work.pick-work-page .pw-boxes {
  flex: 1 1 auto;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 1px 3px !important;
  border: 1px solid #64748b !important;
  border-radius: 2px !important;
  font-size: 11px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  min-height: 22px !important;
  height: 22px !important;
  line-height: 1.2 !important;
  box-sizing: border-box !important;
}
#modal-pick-work.pick-work-page .pw-field-loc {
  padding: 1px 2px;
  border-radius: 2px;
  background: #fff7ed;
  border: 1px solid #fdba74;
}
#modal-pick-work.pick-work-page .pw-loc {
  border-color: #ea580c !important;
  background: #fffbeb !important;
  font-weight: 800 !important;
  color: #9a3412 !important;
  letter-spacing: 0.02em;
}
#modal-pick-work.pick-work-page .pw-drop-add {
  margin-top: 1px;
  padding: 2px 4px;
  border: 1px dashed #94a3b8;
  border-radius: 2px;
  font-size: 10px;
  color: #64748b;
  text-align: center;
  background: #f8fafc;
  user-select: none;
  line-height: 1.2;
}
#modal-pick-work.pick-work-page .pw-drop-add.is-drop-hover {
  color: #1d4ed8;
  font-weight: 700;
}
#modal-pick-work.pick-work-page .pw-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}
#modal-pick-work.pick-work-page .pw-actions button {
  margin: 0 !important;
  padding: 2px 4px !important;
  font-size: 11px !important;
  min-height: 24px !important;
  border-radius: 2px !important;
  width: 100%;
}
#modal-pick-work.pick-work-page .pw-actions button.primary {
  background: #217346 !important;
  color: #fff !important;
  border-color: #1a5c38 !important;
}
#modal-pick-work.pick-work-page .pick-done-banner {
  flex: 0 0 auto !important;
  margin-top: 6px !important;
  border-radius: 0 !important;
  background: #dcfce7 !important;
  color: #14532d !important;
  border: 1px solid #86efac !important;
  padding: 6px 8px !important;
  font-weight: 700 !important;
  text-align: center !important;
}
#modal-pick-work.pick-work-page .ok-text {
  color: #166534 !important;
  font-weight: 700 !important;
}

@media (max-width: 860px) {
  #modal-pick-work.pick-work-page .pick-work-table {
    min-width: 0 !important;
    table-layout: auto !important;
  }
  #modal-pick-work.pick-work-page .pick-work-table thead {
    display: none !important;
  }
  #modal-pick-work.pick-work-page .pick-work-table,
  #modal-pick-work.pick-work-page .pick-work-table tbody,
  #modal-pick-work.pick-work-page .pick-work-table tr,
  #modal-pick-work.pick-work-page .pick-work-table td {
    display: block !important;
    width: 100% !important;
  }
  #modal-pick-work.pick-work-page .pick-work-table tr {
    margin-bottom: 8px !important;
    border: 1px solid #64748b !important;
    padding: 6px !important;
    background: #f8fafc !important;
  }
  #modal-pick-work.pick-work-page .pick-work-table td {
    border: 0 !important;
    padding: 4px 0 !important;
    overflow: visible !important;
  }
  #modal-pick-work.pick-work-page .pick-work-table td::before {
    content: attr(data-label);
    display: block;
    font-size: 11px;
    font-weight: 700;
    color: #475569;
    margin-bottom: 2px;
  }
  #modal-pick-work.pick-work-page .modal-head-actions button {
    min-height: 44px !important;
    font-size: 14px !important;
  }
  #modal-pick-work.pick-work-page .pw-sugs {
    max-height: none !important;
    gap: 8px !important;
  }
  #modal-pick-work.pick-work-page .pw-sug,
  #modal-pick-work.pick-work-page button.pw-sug {
    min-height: 44px !important;
    padding: 8px 10px !important;
    font-size: 14px !important;
    white-space: normal !important;
  }
  #modal-pick-work.pick-work-page .pw-loc,
  #modal-pick-work.pick-work-page .pw-qty,
  #modal-pick-work.pick-work-page .pw-boxes {
    min-height: 44px !important;
    font-size: 16px !important;
  }
  #modal-pick-work.pick-work-page .pw-actions button {
    min-height: 44px !important;
  }
}

/* legacy: 非全屏选择器兜底（桌面列宽） */
@media (min-width: 861px) {
  #modal-pick-work .pick-work-table-wrap {
    overflow: auto !important;
  }
  #modal-pick-work .pick-work-table {
    width: 100% !important;
    min-width: 980px !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
  }
  #modal-pick-work .pick-work-table th,
  #modal-pick-work .pick-work-table td {
    overflow: hidden !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
  }
  #modal-pick-work .pick-work-table .col-chk {
    width: 28px !important;
    min-width: 28px !important;
  }
  #modal-pick-work .pick-work-table .col-seq {
    width: 36px !important;
    min-width: 32px !important;
  }
  #modal-pick-work .pick-work-table .col-m {
    width: 110px !important;
    min-width: 90px !important;
  }
  #modal-pick-work .pick-work-table .col-qpc {
    width: 56px !important;
    min-width: 48px !important;
  }
  #modal-pick-work .pick-work-table .col-n {
    width: 72px !important;
    min-width: 64px !important;
  }
  #modal-pick-work .pick-work-table .col-pend {
    width: 88px !important;
    min-width: 76px !important;
  }
  #modal-pick-work .pick-work-table .col-loc {
    width: 30% !important;
    min-width: 200px !important;
  }
  #modal-pick-work .pick-work-table .col-src {
    width: 100px !important;
    min-width: 88px !important;
  }
  #modal-pick-work .pick-work-table .col-in {
    width: 200px !important;
    min-width: 180px !important;
  }
  #modal-pick-work .pick-work-table .col-act {
    width: 64px !important;
    min-width: 56px !important;
  }
  #modal-pick-work .pick-work-table .pw-num {
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    font-variant-numeric: tabular-nums !important;
  }
}
#modal-out.pick-create-page .card-lite {
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
@media (max-width: 900px) {
  .pick-create-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* 拣货单预览：整单路线紧凑多列（省纸） */
.print-doc .print-route-sheet {
  margin-top: 14px;
  text-align: left;
  border-top: 2px solid #1f4e79;
  padding-top: 8px;
}
.print-doc .print-route-h {
  margin: 0 0 2px !important;
  text-align: left !important;
  letter-spacing: 0.1em !important;
  font-size: 16px !important;
  color: #0f172a !important;
}
.print-doc .print-route-sub {
  font-size: 11px;
  color: #64748b;
  margin-bottom: 6px;
}
.print-doc .pick-route-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  align-items: stretch;
}
.print-doc .pick-route-card {
  border: 1px solid #64748b;
  padding: 4px 6px;
  background: #fff;
}
.print-doc .pick-route-card-h {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 5px;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 3px;
  border-bottom: 1px solid #e2e8f0;
  padding-bottom: 2px;
  color: #0f172a;
}
.print-doc .pick-route-card-h .tag,
.print-doc .pick-route-line .tag {
  font-size: 10px;
  font-weight: 700;
  color: #64748b;
  border: 1px solid #cbd5e1;
  padding: 0 3px;
  background: #f1f5f9;
}
.print-doc .pick-route-card-h .loc-tot {
  font-weight: 700;
  font-size: 11px;
  color: #1e293b;
}
.print-doc .pick-route-line .q b {
  color: #b45309;
}
.print-doc .pick-route-card-h .n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 3px;
  background: #1f4e79;
  color: #fff;
  font-size: 11px;
  border-radius: 2px;
}
.print-doc .pick-route-card-body {
  font-size: 11px;
  line-height: 1.35;
  color: #0f172a;
}
.print-doc .pick-route-line {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 6px;
  align-items: baseline;
  padding: 1px 0;
  border-bottom: 1px dotted #e2e8f0;
}
.print-doc .pick-route-line:last-child { border-bottom: 0; }
.print-doc .pick-route-line .m { font-weight: 700; }
.print-doc .pick-route-line .k {
  font-size: 10px;
  border: 1px solid #888;
  padding: 0 2px;
}
.print-doc .pick-route-line .k.whole { border-color: #166534; color: #166534; }
.print-doc .pick-route-line .k.loose { border-color: #b45309; color: #9a3412; }
.print-doc .print-remark-foot {
  margin-top: 10px;
  padding: 6px 8px;
  border: 1px solid #94a3b8;
  background: #f8fafc;
  text-align: left;
}
.print-doc .print-remark-h {
  font-size: 12px;
  font-weight: 800;
  margin: 0 0 4px;
  color: #0f172a;
}
.print-doc .print-remark-body {
  margin: 0;
  font-family: inherit;
  font-size: 11px;
  line-height: 1.35;
  white-space: pre-wrap;
  word-break: break-word;
  color: #334155;
  max-height: none;
}
.print-doc .print-sign { margin-top: 12px; }
@media (max-width: 900px) {
  .print-doc .pick-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 520px) {
  .print-doc .pick-route-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* ===== 开始拣货页：拣货路线（与表格同步） ===== */
#modal-pick-work.pick-work-page .pw-route-panel {
  flex: 1 1 auto;
  min-height: 0;
  margin-top: 0;
  padding: 8px;
  border: 1px solid #94a3b8;
  background: #f8fafc;
  overflow: auto;
}
#modal-pick-work.pick-work-page .pw-route-head {
  font-size: 13px;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 6px;
}
#modal-pick-work.pick-work-page .pw-route-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  align-items: stretch;
}
#modal-pick-work.pick-work-page .pw-route-card {
  border: 1px solid #475569;
  padding: 4px 6px;
  background: #fff;
  min-width: 0;
}
#modal-pick-work.pick-work-page .pw-route-card.is-done {
  background: #eaf7ea;
  border-color: #86efac;
}
#modal-pick-work.pick-work-page .pw-route-card-h {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3px 5px;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 3px;
  border-bottom: 1px solid #e2e8f0;
  padding-bottom: 3px;
}
#modal-pick-work.pick-work-page .pw-route-card-h .n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 3px;
  background: #1f4e79;
  color: #fff;
  font-size: 11px;
  border-radius: 2px;
}
#modal-pick-work.pick-work-page .pw-route-card-h .loc-tot {
  font-weight: 600;
  font-size: 11px;
  color: #334155;
}
#modal-pick-work.pick-work-page .pw-route-card-h .tag,
#modal-pick-work.pick-work-page .pw-route-line .tag {
  font-size: 10px;
  font-weight: 700;
  color: #555;
  border: 1px solid #bbb;
  padding: 0 3px;
  background: #f3f3f3;
}
#modal-pick-work.pick-work-page .pw-route-card-h .pw-route-station-submit {
  margin-left: auto;
  padding: 1px 6px !important;
  font-size: 11px !important;
  min-height: 22px !important;
}
#modal-pick-work.pick-work-page .pw-route-card-body {
  font-size: 11px;
  line-height: 1.35;
}
#modal-pick-work.pick-work-page .pw-route-line {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 5px;
  align-items: center;
  padding: 2px 0;
  border-bottom: 1px dotted #e5e5e5;
}
#modal-pick-work.pick-work-page .pw-route-line:last-child {
  border-bottom: 0;
}
#modal-pick-work.pick-work-page .pw-route-line.is-done {
  opacity: 0.85;
}
#modal-pick-work.pick-work-page .pw-route-line .m {
  font-weight: 700;
}
#modal-pick-work.pick-work-page .pw-route-line .q {
  font-weight: 700;
  color: #111;
}
#modal-pick-work.pick-work-page .pw-route-line .q b {
  color: #9a3412;
}
#modal-pick-work.pick-work-page .pw-route-line .k {
  font-size: 10px;
  border: 1px solid #888;
  padding: 0 2px;
  line-height: 1.2;
}
#modal-pick-work.pick-work-page .pw-route-line .k.whole {
  border-color: #166534;
  color: #166534;
}
#modal-pick-work.pick-work-page .pw-route-line .k.loose {
  border-color: #b45309;
  color: #9a3412;
}
#modal-pick-work.pick-work-page .pw-route-line .pw-route-item-submit {
  margin-left: auto;
  padding: 0 6px !important;
  font-size: 11px !important;
  min-height: 20px !important;
}
#modal-pick-work.pick-work-page .pw-route-path {
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.4;
  word-break: break-all;
}
@media (max-width: 1200px) {
  #modal-pick-work.pick-work-page .pw-route-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 900px) {
  #modal-pick-work.pick-work-page .pw-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 批量导入：备注列 + 底部核对记录 */
#modal-out.pick-create-page table.pick-create-table th.col-remark,
#modal-out.pick-create-page table.pick-create-table td.col-remark {
  min-width: 160px;
  max-width: 280px;
  font-size: 12px !important;
  vertical-align: top;
}
#modal-out.pick-create-page .match-remark {
  display: inline;
  line-height: 1.35;
  color: #9a3412;
  white-space: nowrap;
}
#modal-out.pick-create-page .match-remark.is-compat {
  color: #b45309;
  font-weight: 600;
}
#modal-out.pick-create-page table.pick-create-table tbody tr.row-compat td {
  background: #fffbeb !important;
}
#modal-out.pick-create-page .row-compat-badge {
  display: inline-block;
  margin-left: 6px;
  padding: 0 6px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  color: #92400e;
  background: #fde68a;
  vertical-align: middle;
}
#modal-out.pick-create-page .out-import-report {
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fafafa;
  font-size: 13px;
  line-height: 1.45;
}
#modal-out.pick-create-page .out-import-report.hidden {
  display: none !important;
}
#modal-out.pick-create-page .out-import-report .oir-title {
  margin-bottom: 8px;
}
#modal-out.pick-create-page .out-import-report .oir-sec {
  margin-top: 8px;
  padding: 8px 10px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #e5e7eb;
}
#modal-out.pick-create-page .out-import-report .oir-sec.ok {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
#modal-out.pick-create-page .out-import-report .oir-sec.compat {
  border-color: #fde68a;
  background: #fffbeb;
}
#modal-out.pick-create-page .out-import-report .oir-sec.err {
  border-color: #fecaca;
  background: #fef2f2;
}
#modal-out.pick-create-page .out-import-report .oir-list {
  margin: 6px 0 0;
  padding-left: 18px;
}
#modal-out.pick-create-page .out-import-report .oir-tip {
  margin-top: 4px;
  color: #6b7280;
  font-size: 12px;
}
#modal-out.pick-create-page .out-import-report .oir-archive {
  margin: 6px 0 0;
  padding: 8px;
  max-height: 180px;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
  font-size: 11px;
  line-height: 1.35;
  background: #fff;
  border: 1px solid #fecaca;
  border-radius: 6px;
  color: #7f1d1d;
}

/* 批量导入：配货单完整列 + 推荐库位 + 下行其他库位/备注 */
#modal-out.pick-create-page table.packing-sheet {
  min-width: 1280px;
  table-layout: auto;
}
#modal-out.pick-create-page table.packing-sheet th,
#modal-out.pick-create-page table.packing-sheet td {
  font-size: 12px !important;
  padding: 6px 6px !important;
  vertical-align: middle;
  text-align: center !important;
}
#modal-out.pick-create-page table.packing-sheet .loc-cell {
  text-align: center !important;
}
#modal-out.pick-create-page table.packing-sheet .out-pool-block {
  justify-content: center;
}
#modal-out.pick-create-page table.packing-sheet .col-suggest {
  min-width: 140px;
  width: 16%;
}
#modal-out.pick-create-page table.packing-sheet .col-no { width: 44px; }
#modal-out.pick-create-page table.packing-sheet .col-model { min-width: 110px; }
#modal-out.pick-create-page table.packing-sheet .col-desc { min-width: 90px; }
#modal-out.pick-create-page table.packing-sheet .col-actual { min-width: 72px; white-space: nowrap; }
#modal-out.pick-create-page table.packing-sheet {
  table-layout: auto !important;
}
#modal-out.pick-create-page table.packing-sheet .col-qty {
  width: auto !important;
  min-width: 108px !important;
  padding: 6px 6px !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
}
/* SHIP QTY 编辑框：三位数以上完整可见；隐藏 number 步进箭头避免挤占宽度 */
#modal-out.pick-create-page table.packing-sheet .out-qty-input {
  width: 6em !important;
  min-width: 96px !important;
  max-width: none !important;
  box-sizing: border-box !important;
  padding: 2px 8px !important;
  text-align: center !important;
  font-variant-numeric: tabular-nums !important;
  appearance: textfield !important;
  -moz-appearance: textfield !important;
}
#modal-out.pick-create-page table.packing-sheet .out-qty-input::-webkit-outer-spin-button,
#modal-out.pick-create-page table.packing-sheet .out-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}
#modal-out.pick-create-page table.packing-sheet .col-unit {
  width: auto !important;
  min-width: 44px !important;
  padding: 6px 8px !important;
  overflow: visible !important;
  white-space: nowrap !important;
}
#modal-out.pick-create-page table.packing-sheet thead th.col-nw,
#modal-out.pick-create-page table.packing-sheet thead th.col-gw {
  white-space: normal !important;
  word-break: keep-all !important;
  line-height: 1.15 !important;
  font-size: 11px !important;
  padding: 6px 4px !important;
  vertical-align: middle !important;
}
#modal-out.pick-create-page table.packing-sheet .col-nw,
#modal-out.pick-create-page table.packing-sheet .col-gw {
  min-width: 52px !important;
}
#modal-out.pick-create-page table.packing-sheet .col-qpc,
#modal-out.pick-create-page table.packing-sheet .col-ctns {
  min-width: 64px !important;
  padding: 6px 8px !important;
}
#modal-out.pick-create-page table.packing-sheet thead th.col-qpc,
#modal-out.pick-create-page table.packing-sheet thead th.col-ctns {
  white-space: normal !important;
  word-break: break-all;
  line-height: 1.15;
  font-size: 11px !important;
  padding: 6px 4px !important;
}
#modal-out.pick-create-page table.packing-sheet tr.out-sub-row td {
  background: #f8fafc !important;
  border-top: none !important;
  font-size: 12px !important;
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
  vertical-align: top !important;
  line-height: 1.45;
}
#modal-out.pick-create-page table.packing-sheet tr.out-sub-row .out-sub-lab {
  display: inline;
  margin-right: 8px;
  font-weight: 700;
  color: #475569;
  white-space: nowrap;
}
#modal-out.pick-create-page table.packing-sheet tr.out-sub-row .col-remark-sub {
  white-space: normal !important;
  overflow: visible !important;
  min-width: 280px;
}
#modal-out.pick-create-page table.packing-sheet .match-remark {
  white-space: normal !important;
  display: inline;
  word-break: break-word;
}
#modal-out.pick-create-page .match-remark.is-ok { color: #15803d; font-weight: 600; }
#modal-out.pick-create-page .match-remark.is-abnormal { color: #b91c1c; font-weight: 600; }
#modal-out.pick-create-page table.pick-create-table tbody tr.row-abnormal td,
#modal-out.pick-create-page table.pick-create-table tbody tr.row-missing td {
  background: #fff7ed !important;
}
#modal-out.pick-create-page table.packing-sheet tbody tr.row-abnormal td,
#modal-out.pick-create-page table.packing-sheet tbody tr.row-missing td {
  background: #fff !important;
}
#modal-out.pick-create-page table.packing-sheet tbody tr.row-abnormal td.cell-err,
#modal-out.pick-create-page table.packing-sheet tbody tr.row-missing td.cell-err {
  background: #fee2e2 !important;
  color: #9f1239 !important;
}
#modal-out.pick-create-page .pick-create-table-wrap {
  overflow: auto;
}

/* 批量导入：状态列 + 表格下方备注/其他库位 */
#modal-out.pick-create-page table.packing-sheet .col-status,
#modal-out.pick-create-page table.out-lines-sheet .col-status {
  min-width: 72px;
  width: 72px;
  white-space: nowrap;
}
#modal-out.pick-create-page .out-line-status {
  display: inline-block;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.02em;
}
#modal-out.pick-create-page .out-line-status.is-ok {
  color: #15803d;
}
#modal-out.pick-create-page .out-line-status.is-abnormal {
  color: #b91c1c;
  background: #fde8e8;
  border: 1px solid #e8a0a0;
  border-radius: 3px;
  padding: 1px 6px;
  cursor: context-menu;
}
#modal-out.pick-create-page .out-line-status.is-tailbox {
  color: #b45309;
  background: #fff7ed;
  border: 1px solid #fdba74;
  border-radius: 3px;
  padding: 1px 6px;
  cursor: context-menu;
  font-weight: 800;
}
#modal-out.pick-create-page .out-line-status.is-spec {
  color: #1d4ed8;
  background: #eff6ff;
  border: 1px solid #93c5fd;
  border-radius: 3px;
  padding: 1px 6px;
  cursor: context-menu;
  font-weight: 800;
}
#modal-out.pick-create-page .out-line-status.is-recovered {
  color: #0f766e;
  background: #ecfdf5;
  border: 1px dashed #14b8a6;
  border-radius: 3px;
  padding: 1px 6px;
  font-weight: 800;
}
#modal-out.pick-create-page table.packing-sheet td.col-status:has(.is-abnormal),
#modal-out.pick-create-page table.out-lines-sheet td.col-status:has(.is-abnormal) {
  background: #fde8e8;
}
#modal-out.pick-create-page table.packing-sheet td.col-status:has(.is-tailbox),
#modal-out.pick-create-page table.out-lines-sheet td.col-status:has(.is-tailbox) {
  background: #fff7ed;
}
#modal-out.pick-create-page table.packing-sheet td.col-status:has(.is-spec),
#modal-out.pick-create-page table.out-lines-sheet td.col-status:has(.is-spec) {
  background: #eff6ff;
}
#modal-out.pick-create-page table.packing-sheet td.col-status:has(.is-recovered),
#modal-out.pick-create-page table.out-lines-sheet td.col-status:has(.is-recovered) {
  background: #ecfdf5;
}
#modal-out.pick-create-page table.packing-sheet .col-qpc,
#modal-out.pick-create-page table.packing-sheet .col-ctns {
  text-align: center;
}
#modal-out.pick-create-page table.packing-sheet th.col-qpc .pack-th-stack {
  display: inline-block;
  line-height: 1.15;
  white-space: normal;
  word-break: keep-all;
}
#modal-out.pick-create-page table.packing-sheet th.col-ctns {
  border-left: 1px solid #64748b;
}
#modal-out.pick-create-page table.packing-sheet td.col-ctns {
  border-left: 1px solid #cbd5e1;
  background: #ececec;
}
#modal-out.pick-create-page .out-lines-detail-panel {
  margin: 10px 0 0;
  padding: 0;
  border: none;
  background: transparent;
  clear: both;
  width: 100%;
  box-sizing: border-box;
}
#modal-out.pick-create-page .out-lines-detail-panel.hidden {
  display: none !important;
}
#modal-out.pick-create-page .out-detail-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding: 8px 12px;
  border: 1px solid #64748b;
  border-bottom: none;
  background: #f1f5f9;
  border-radius: 4px 4px 0 0;
}
#modal-out.pick-create-page .out-detail-head {
  font-size: 12px;
  font-weight: 700;
  color: #334155;
}
#modal-out.pick-create-page .out-detail-print-area {
  overflow-x: auto;
  border: 1px solid #64748b;
  border-radius: 0 0 4px 4px;
  background: #fff;
}
#modal-out.pick-create-page table.out-detail-table {
  width: 100%;
  min-width: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse;
  font-size: 12px;
  background: #fff;
  border: none;
}
#modal-out.pick-create-page table.out-detail-table col.out-detail-col-no { width: 4%; }
#modal-out.pick-create-page table.out-detail-table col.out-detail-col-other { width: 20%; }
#modal-out.pick-create-page table.out-detail-table col.out-detail-col-remark { width: 76%; }
#modal-out.pick-create-page table.out-detail-table thead th {
  position: static !important;
  background: #217346 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 6px 8px !important;
  border: 1px solid #14532d !important;
  text-align: center !important;
  white-space: nowrap !important;
}
#modal-out.pick-create-page table.out-detail-table tbody td {
  padding: 6px 8px !important;
  border: 1px solid #cbd5e1 !important;
  vertical-align: top !important;
  text-align: left !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  background: #fff !important;
  color: #0f172a !important;
  white-space: normal !important;
  overflow: visible !important;
  height: auto !important;
  word-break: break-word;
}
#modal-out.pick-create-page table.out-detail-table tbody tr:nth-child(even) td {
  background: #f8fafc !important;
}
#modal-out.pick-create-page table.out-detail-table tbody tr.is-abnormal td {
  background: #fff7ed !important;
}
#modal-out.pick-create-page table.out-detail-table tbody tr.is-tailbox td {
  background: #fffbeb !important;
}
#modal-out.pick-create-page table.out-detail-table tbody tr.is-spec td {
  background: #eff6ff !important;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-no {
  width: 40px;
  min-width: 40px;
  max-width: 48px;
  text-align: center !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
  font-weight: 700;
  padding: 6px 4px !important;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-other-h {
  width: 20%;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark-h {
  width: 76%;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-other-cell {
  min-width: 0;
  max-width: none;
  line-height: 1.45;
  word-break: break-all;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark-cell {
  min-width: 0;
  max-width: none;
  width: auto;
  vertical-align: top !important;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-jump {
  color: #2563eb;
  text-decoration: none;
  font-weight: 700;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-jump:hover {
  text-decoration: underline;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-loc-chip {
  display: inline;
  white-space: nowrap;
  cursor: grab;
  color: #0f172a;
  font-size: 12px;
  line-height: 1.45;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-loc-chip .pl-loc-id {
  font-weight: 800;
  background: none !important;
  color: #0f172a !important;
  padding: 0 !important;
  border: 0 !important;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-loc-sep {
  color: #94a3b8;
  white-space: pre;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark {
  display: inline;
  line-height: 1.45;
  font-size: 12px;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark.is-ok {
  color: #15803d;
  font-weight: 600;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark.is-abnormal {
  color: #b91c1c;
  font-weight: 700;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark.is-tailbox {
  color: #b45309;
  font-weight: 700;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark.is-spec {
  color: #1d4ed8;
  font-weight: 700;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-remark.is-short {
  white-space: nowrap;
}
#modal-out.pick-create-page table.out-detail-table .out-detail-empty {
  color: #94a3b8;
  font-size: 12px;
}

/* 批量导入进度遮罩：慢时显示正在做什么，快时一下走完 */
#modal-out.pick-create-page .out-import-progress {
  position: absolute !important;
  inset: 0 !important;
  z-index: 40 !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.88) !important;
  backdrop-filter: blur(2px);
}
#modal-out.pick-create-page .out-import-progress.hidden {
  display: none !important;
}
#modal-out.pick-create-page .out-import-progress-card {
  width: min(520px, calc(100% - 32px));
  background: #fff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px;
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.18);
  padding: 22px 24px 18px;
  color: #0f172a !important;
}
#modal-out.pick-create-page .out-ip-kicker {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #1f4e79;
  margin-bottom: 4px;
}
#modal-out.pick-create-page .out-ip-title {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 14px;
  color: #0f172a !important;
}
#modal-out.pick-create-page .out-ip-bar {
  height: 12px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
}
#modal-out.pick-create-page .out-ip-bar-fill {
  height: 100%;
  width: 0%;
  border-radius: inherit;
  background: linear-gradient(90deg, #217346, #34a853);
  transition: width 0.22s ease-out;
}
#modal-out.pick-create-page .out-import-progress.is-failed .out-ip-bar-fill {
  background: #dc2626;
  width: 100% !important;
}
#modal-out.pick-create-page .out-ip-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
  font-size: 13px;
  font-weight: 700;
  color: #334155;
}
#modal-out.pick-create-page .out-ip-msg {
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.45;
  color: #1e293b !important;
  min-height: 2.6em;
}
#modal-out.pick-create-page .out-ip-actions {
  display: flex;
  gap: 8px;
  margin-top: 14px;
}
#modal-out.pick-create-page .out-ip-actions.hidden {
  display: none !important;
}
#modal-out.pick-create-page .out-ip-actions button {
  min-height: 34px;
}

/* 装箱单抬头：按 Excel 原样，不要灰框；INVOICE DATE 行保留上下横线 */
#modal-out.pick-create-page .packing-letterhead {
  background: #fff !important;
  border: 0;
  padding: 4px 0 6px;
  margin-bottom: 6px;
}
#modal-out.pick-create-page .packing-letterhead.hidden,
#modal-out.pick-create-page .packing-letterhead-footer.hidden {
  display: none !important;
}
#modal-out.pick-create-page .packing-letterhead-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: #000 !important;
  font-family: Arial, "Calibri", "Microsoft YaHei", sans-serif;
}
#modal-out.pick-create-page .packing-letterhead-table col {
  width: calc(100% / var(--pl-cols, 13));
}
#modal-out.pick-create-page .packing-letterhead-table td {
  font-size: 12px;
  padding: 2px 6px;
  border: none;
  background: transparent !important;
  color: #000 !important;
  white-space: pre-wrap;
  vertical-align: middle;
  text-align: left !important;
}
#modal-out.pick-create-page .packing-letterhead-table td.pl-center {
  text-align: center !important;
  font-weight: inherit;
}
#modal-out.pick-create-page .packing-letterhead-table td.pl-left {
  text-align: left !important;
}
#modal-out.pick-create-page .packing-letterhead-table td.pl-bold {
  font-weight: 700;
}
#modal-out.pick-create-page .packing-letterhead-table td.pl-spacer {
  height: 14px;
  line-height: 14px;
  padding: 0 !important;
}
#modal-out.pick-create-page .packing-letterhead-table td.pl-gap {
  padding: 0 !important;
  border: none !important;
}
#modal-out.pick-create-page .packing-letterhead-table td.pl-bt-thin { border-top: 1px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bb-thin { border-bottom: 1px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bl-thin { border-left: 1px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-br-thin { border-right: 1px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bt-medium { border-top: 2px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bb-medium { border-bottom: 2px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bl-medium { border-left: 2px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-br-medium { border-right: 2px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bt-thick { border-top: 3px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bb-thick { border-bottom: 3px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-bl-thick { border-left: 3px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-table td.pl-br-thick { border-right: 3px solid #000 !important; }
#modal-out.pick-create-page .packing-letterhead-footer {
  padding: 8px 4px 4px;
  font-size: 13px;
  font-weight: 700;
  color: #0f172a;
}
#modal-out.pick-create-page .packing-letterhead-footer .pl-note {
  margin: 2px 0;
}
#modal-out.pick-create-page #out-wms-header.packing-wms-only .wms-field-date,
#modal-out.pick-create-page #out-wms-header.packing-wms-only .wms-field-ship {
  display: none !important;
}
#modal-out.pick-create-page #out-wms-header.packing-wms-only .pick-create-fields {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}
#modal-out.pick-create-page #out-wms-header.packing-wms-only .wms-field-doc {
  grid-column: span 2;
}
#modal-out.pick-create-page table.packing-sheet .col-unit,
#modal-out.pick-create-page table.packing-sheet .col-size,
#modal-out.pick-create-page table.packing-sheet .col-size-l,
#modal-out.pick-create-page table.packing-sheet .col-size-w,
#modal-out.pick-create-page table.packing-sheet .col-size-h {
  min-width: 48px;
  white-space: nowrap;
  text-align: center !important;
}
#modal-out.pick-create-page table.packing-sheet tr.packing-total-row td {
  font-weight: 800 !important;
  background: #f1f5f9 !important;
  border-top: 2px solid #0f172a !important;
}

/* 异常格：浅粉底 + 深红字 + 红框。禁止白字，避免被行底色盖成「白框看不见数字」 */
#modal-out.pick-create-page table.packing-sheet tbody td.cell-err,
#modal-out.pick-create-page table.packing-sheet tbody tr.row-abnormal td.cell-err,
#modal-out.pick-create-page table.packing-sheet tbody tr.row-missing td.cell-err,
#modal-out.pick-create-page table.pick-create-table tbody td.cell-err {
  background: #fee2e2 !important;
  color: #9f1239 !important;
  font-weight: 800 !important;
  border: 2px solid #dc2626 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

/* 装箱单库位：纯文本。盖掉主题 .loc-code 橙红渐变色块 */
#modal-out.pick-create-page .loc-code,
#modal-out.pick-create-page .loc-qty,
#modal-out.pick-create-page .loc-plain-btn,
#modal-out.pick-create-page .loc-plain-btn .loc-code,
#modal-out.pick-create-page .loc-plain-btn .pl-loc-id,
#modal-out.pick-create-page .pl-loc-id,
#modal-out.pick-create-page .loc-print .pl-loc-id,
#modal-out.pick-create-page .loc-print .loc-code {
  background: none !important;
  background-image: none !important;
  color: #111827 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
#modal-out.pick-create-page .pl-loc-id {
  font-weight: 800 !important;
  font-size: 13px !important;
}

/* 推荐/其他库位：纯文本加粗，无色块（黑白打印友好） */
#modal-out.pick-create-page .out-line-drop.is-plain {
  border: 0 !important;
  background: transparent !important;
  min-height: 22px !important;
  padding: 0 !important;
}
#modal-out.pick-create-page .loc-plain-btn {
  display: inline !important;
  margin: 0 10px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111827 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  cursor: grab !important;
  box-shadow: none !important;
  white-space: nowrap !important;
}
#modal-out.pick-create-page .out-loc-hit {
  display: inline;
  margin: 0;
  white-space: nowrap;
}
#modal-out.pick-create-page .out-loc-gap {
  display: inline;
  white-space: pre;
  letter-spacing: 0.12em;
}
#modal-out.pick-create-page .loc-plain-btn.is-picked {
  cursor: pointer !important;
  text-decoration: none;
}

#modal-print td.cell-err,
#modal-print table.packing-sheet td.cell-err {
  background: #fee2e2 !important;
  color: #9f1239 !important;
  font-weight: 800 !important;
  border: 2px solid #dc2626 !important;
}
#modal-print .loc-code,
#modal-print .pl-loc-id {
  background: none !important;
  background-image: none !important;
  color: #111827 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-weight: 800;
}

/* 打印预览标签页 */
#modal-print .print-tabs {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 0 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid #cbd5e1;
}
#modal-print .print-tab-btn {
  min-height: 40px;
  padding: 8px 18px;
  border: 1px solid #64748b;
  background: #f8fafc;
  color: #0f172a;
  font-weight: 800;
  font-size: 14px;
  cursor: pointer;
}
#modal-print .print-tab-btn.active {
  background: #1e40af;
  border-color: #1e40af;
  color: #fff;
}
#modal-print .print-tab-hint {
  font-size: 12px;
  color: #334155;
}
#modal-print .print-panel.hidden {
  display: none !important;
}
#modal-print .packing-letterhead {
  border: 0;
  padding: 0;
  margin-bottom: 8px;
}
#modal-print .packing-letterhead-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-family: Arial, "Microsoft YaHei", sans-serif;
}
#modal-print .packing-letterhead-table td {
  border: none;
  padding: 2px 6px;
  text-align: left;
  white-space: pre-wrap;
}
#modal-print .packing-letterhead-table td.pl-center { text-align: center; font-weight: inherit; }
#modal-print .packing-letterhead-table td.pl-bold { font-weight: 700; }
#modal-print .packing-letterhead-table td.pl-bt-thin { border-top: 1px solid #000; }
#modal-print .packing-letterhead-table td.pl-bb-thin { border-bottom: 1px solid #000; }
#modal-print .packing-letterhead-table td.pl-bl-thin { border-left: 1px solid #000; }
#modal-print .packing-letterhead-table td.pl-br-thin { border-right: 1px solid #000; }
#modal-print .packing-letterhead-table td.pl-bt-medium { border-top: 2px solid #000; }
#modal-print .packing-letterhead-table td.pl-bb-medium { border-bottom: 2px solid #000; }
#modal-print .packing-letterhead-table td.pl-bl-medium { border-left: 2px solid #000; }
#modal-print .packing-letterhead-table td.pl-br-medium { border-right: 2px solid #000; }
#modal-print .packing-letterhead-table td.pl-bt-thick { border-top: 3px solid #000; }
#modal-print .packing-letterhead-table td.pl-bb-thick { border-bottom: 3px solid #000; }
#modal-print .packing-letterhead-table td.pl-bl-thick { border-left: 3px solid #000; }
#modal-print .packing-letterhead-table td.pl-br-thick { border-right: 3px solid #000; }

/* 打印预览：全宽显示装箱单，避免左右滚动条；创建页打开时须盖在全屏创建页之上 */
body.print-preview-open #modal-print:not(.hidden),
body.pick-create-open #modal-print:not(.hidden) {
  z-index: 2100 !important;
}
#modal-print {
  padding: 8px !important;
  align-items: stretch !important;
}
#modal-print .modal-panel.wide {
  width: min(calc(100vw - 16px), 100%) !important;
  max-width: none !important;
  max-height: calc(100vh - 16px) !important;
  display: flex !important;
  flex-direction: column !important;
}
#modal-print .modal-body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
#modal-print .print-panel {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}
#modal-print .print-packing-sheet {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
#modal-print .print-packing-table,
#modal-print table.packing-sheet.print-packing-table {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  font-size: 9px !important;
}
#modal-print .print-packing-table col.col-no { width: 2.5%; }
#modal-print .print-packing-table col.col-loc { width: 24.5%; }
#modal-print .print-packing-table col.col-model { width: 8.5%; }
#modal-print .print-packing-table col.col-pick-boxes { width: 4.5%; }
#modal-print .print-packing-table col.col-desc { width: 5.5%; }
#modal-print .print-packing-table col.col-ship-qty { width: 4.5%; }
#modal-print .print-packing-table col.col-unit { width: 4%; }
#modal-print .print-packing-table col.col-qpc { width: 4.8%; }
#modal-print .print-packing-table col.col-ctns { width: 5.2%; }
#modal-print .print-packing-table col.col-size { width: 3.9%; }
#modal-print .print-packing-table col.col-vol { width: 7%; }
#modal-print .print-packing-table col.col-nw { width: 5%; }
#modal-print .print-packing-table col.col-gw { width: 5%; }
#modal-print .print-packing-table col.col-status { width: 4.5%; }
#modal-print .print-packing-table th.col-ctns,
#modal-print .print-packing-table td.col-ctns {
  background: #e6e6e6 !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
#modal-print .print-packing-table th,
#modal-print .print-packing-table td,
#modal-print table.packing-sheet.print-packing-table th,
#modal-print table.packing-sheet.print-packing-table td {
  padding: 5px 4px !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
  vertical-align: middle !important;
  line-height: 1.5 !important;
}
#modal-print .print-packing-table .col-pick-boxes,
#modal-print .print-packing-table .col-ship-qty,
#modal-print .print-packing-table .col-unit,
#modal-print .print-packing-table .col-size,
#modal-print .print-packing-table .col-vol,
#modal-print .print-packing-table .col-nw,
#modal-print .print-packing-table .col-gw,
#modal-print .print-packing-table .col-num {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  text-align: center !important;
  font-size: 9px !important;
  line-height: 1.5 !important;
  padding: 5px 4px !important;
}
#modal-print .print-packing-table td.col-unit {
  padding: 5px 3px !important;
  min-width: 28px;
}
#modal-print .print-packing-table td.col-qpc,
#modal-print .print-packing-table td.col-ctns {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  text-align: center !important;
  font-size: 9px !important;
  line-height: 1.5 !important;
  padding: 5px 2px !important;
}
#modal-print .print-packing-table th.col-qpc,
#modal-print .print-packing-table th.col-ctns,
#modal-print .print-packing-table th.col-nw,
#modal-print .print-packing-table th.col-gw {
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  overflow: hidden !important;
  text-align: center !important;
  font-size: 7px !important;
  line-height: 1.1 !important;
  padding: 3px 2px !important;
  vertical-align: middle !important;
}
#modal-print .print-packing-table th.col-ctns {
  white-space: nowrap !important;
  border-left: 1px solid #222 !important;
}
#modal-print .print-packing-table td.col-ctns {
  border-left: 1px solid #222 !important;
}
#modal-print .pack-th-stack {
  display: inline-block;
  line-height: 1.1;
  white-space: normal;
  word-break: keep-all;
}
#modal-print .print-packing-table .col-desc {
  font-size: 7px !important;
  line-height: 1.45 !important;
  text-align: left !important;
  padding: 5px 2px !important;
}
#modal-print .print-packing-table .col-model {
  font-size: 8.5px !important;
  text-align: left !important;
  word-break: break-all !important;
  line-height: 1.45 !important;
  padding: 5px 3px !important;
}
#modal-print .print-packing-table .loc-cell,
#modal-print .print-packing-table .col-loc,
#modal-print table.packing-sheet .loc-cell {
  font-size: 8.5px !important;
  line-height: 1.5 !important;
  padding: 5px 4px !important;
}
#modal-print .print-packing-table .col-status,
#modal-print .print-packing-table .print-line-status {
  white-space: nowrap !important;
  text-align: center !important;
  font-size: 8.5px !important;
  font-weight: 700 !important;
  padding: 5px 2px !important;
}
#modal-print .print-packing-table .print-line-status.is-ok { color: #15803d !important; }
#modal-print .print-packing-table .print-line-status.is-recovered {
  color: #0f766e !important;
  border: 1px dashed #14b8a6;
  border-radius: 2px;
  padding: 0 4px;
}
#modal-print .print-packing-table .print-line-status.is-abnormal {
  color: #b91c1c !important;
  background: #fde8e8 !important;
  border: 1px solid #e8a0a0 !important;
  border-radius: 2px !important;
  padding: 1px 4px !important;
  display: inline-block !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
#modal-print .print-packing-table .print-line-status.is-tailbox {
  color: #b45309 !important;
  background: #fff7ed !important;
  border: 1px solid #fdba74 !important;
  border-radius: 2px !important;
  padding: 1px 4px !important;
  display: inline-block !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
#modal-print .print-packing-table .print-line-status.is-spec {
  color: #1d4ed8 !important;
  background: #eff6ff !important;
  border: 1px solid #93c5fd !important;
  border-radius: 2px !important;
  padding: 1px 4px !important;
  display: inline-block !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
#modal-print .print-packing-table td.col-status-abnormal,
#modal-print .print-packing-table tr.print-row-abnormal td.col-status {
  background: #fde8e8 !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
#modal-print .print-packing-table td.col-status-tailbox,
#modal-print .print-packing-table tr.print-row-tailbox td.col-status {
  background: #fff7ed !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
#modal-print .print-packing-table td.col-status-spec,
#modal-print .print-packing-table tr.print-row-spec td.col-status {
  background: #eff6ff !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
#modal-print .loc-print,
#modal-print .loc-plain,
#modal-print .pl-loc-id {
  white-space: normal !important;
}
#modal-print .print-sub-row td {
  font-size: 9px !important;
  white-space: normal !important;
}
#modal-print [data-print-panel="route"] .print-remark-foot {
  display: none !important;
}
#modal-print [data-print-panel="route"] .print-route-sheet {
  margin-top: 0;
  text-align: left;
}
#modal-print [data-print-panel="route"] .print-route-h {
  margin: 0 0 4px !important;
  text-align: center !important;
  letter-spacing: 0.12em !important;
  font-size: 17px !important;
}
#modal-print [data-print-panel="route"] .print-route-meta,
#modal-print [data-print-panel="route"] .print-route-sub {
  text-align: center;
  font-size: 11px;
  color: #475569;
  margin-bottom: 4px;
}
#modal-print .print-route-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 11px;
  margin-top: 4px;
}
#modal-print .print-route-table th,
#modal-print .print-route-table td {
  border: 1px solid #334155;
  padding: 5px 6px;
  vertical-align: middle;
  line-height: 1.35;
  word-break: break-word;
}
#modal-print .print-route-table th {
  background: #e2e8f0;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}
#modal-print .print-route-table .pr-st { width: 5%; text-align: center; font-weight: 700; }
#modal-print .print-route-table .pr-loc { width: 10%; text-align: center; font-weight: 800; white-space: nowrap; }
#modal-print .print-route-table .pr-walk { width: 8%; text-align: center; white-space: nowrap; }
#modal-print .print-route-table .pr-seq { width: 6%; text-align: center; font-weight: 700; }
#modal-print .print-route-table .pr-model { width: 22%; text-align: left; font-weight: 700; word-break: break-all; }
#modal-print .print-route-table .pr-qty { width: 14%; text-align: center; white-space: nowrap; font-weight: 700; }
#modal-print .print-route-table .pr-kind { width: 8%; text-align: center; white-space: nowrap; }
#modal-print [data-print-panel="route"] .print-sign {
  margin-top: 12px;
  font-size: 13px;
  text-align: left;
}

/* 打印预览：横向 A4 比例示意 */
#modal-print .print-packing-sheet {
  max-width: 100%;
}
body.print-preview-open #modal-print .modal-panel.wide {
  width: min(calc(100vw - 16px), 1280px) !important;
}
#modal-print .print-detail-section {
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px solid #cbd5e1;
}
#modal-print .print-detail-head {
  font-size: 12px;
  font-weight: 700;
  color: #334155;
  margin-bottom: 6px;
}
#modal-print .print-detail-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 11px;
}
#modal-print .print-detail-table col.out-detail-col-no { width: 4%; }
#modal-print .print-detail-table col.out-detail-col-other { width: 20%; }
#modal-print .print-detail-table col.out-detail-col-remark { width: 76%; }
#modal-print .print-detail-table th,
#modal-print .print-detail-table td {
  border: 1px solid #cbd5e1;
  padding: 4px 6px;
  text-align: left;
  vertical-align: top;
  line-height: 1.35;
}
#modal-print .print-detail-table th {
  background: #f1f5f9;
  text-align: center;
  font-weight: 700;
}
#modal-print .print-detail-table .out-detail-no {
  text-align: center;
  white-space: nowrap;
}
#modal-print .print-detail-table .out-detail-other-cell {
  word-break: break-all;
}
#modal-print .print-detail-table .out-detail-remark-cell {
  word-break: break-word;
}

/* 推荐拣货库位：右键编辑 */
.out-loc-ctx {
  position: fixed;
  z-index: 14000;
  min-width: 72px;
  padding: 4px;
  background: #fff;
  border: 1px solid #334155;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18);
}
.out-loc-ctx button {
  display: block;
  width: 100%;
  padding: 6px 12px;
  border: 0;
  background: #fff;
  color: #0f172a;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.out-loc-ctx button:hover {
  background: #e2e8f0;
}
.out-status-ctx {
  position: fixed;
  z-index: 14000;
  min-width: 88px;
  padding: 4px;
  background: #fff;
  border: 1px solid #334155;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18);
}
.out-status-ctx button {
  display: block;
  width: 100%;
  padding: 6px 12px;
  border: 0;
  background: #fff;
  color: #0f172a;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.out-status-ctx button:hover {
  background: #e2e8f0;
}
.out-loc-edit-pop {
  position: fixed;
  z-index: 14001;
  width: 240px;
  padding: 12px;
  background: #fff;
  border: 1px solid #334155;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.2);
}
.out-loc-edit-title {
  font-weight: 800;
  font-size: 14px;
  margin-bottom: 6px;
  color: #0f172a;
}
.out-loc-edit-pop input {
  width: 100%;
  box-sizing: border-box;
  margin: 6px 0;
  padding: 6px 8px;
  border: 1px solid #64748b;
  font-size: 14px;
  font-weight: 700;
}
.out-loc-edit-actions {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}
.out-loc-edit-actions button {
  flex: 1;
  min-height: 32px;
}


