/* Design tokens — single source for color / spacing / type / elevation / motion */
@import url('./0-tokens/index.css');

.inbound-scan-page {
  font-family: var(--tx-font-body);
  font-size: var(--tx-text-md);
  line-height: var(--tx-leading-normal);
  color: var(--tx-color-text);
}

.inbound-scan-page .dashboard-container {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.inbound-scan-page .receiving-workflow-hero,
.inbound-scan-page .receiving-workflow-overview,
.inbound-scan-page .workflow-step-card,
.inbound-scan-page .workflow-awaiting-card {
  border-radius: var(--tx-radius-card, 24px);
  border: 1px solid rgba(255, 255, 255, 0.09);
  background:
    radial-gradient(circle at top right, rgba(56, 225, 255, 0.1), transparent 28%),
    linear-gradient(180deg, rgba(14, 23, 40, 0.98), rgba(6, 10, 20, 0.98));
  box-shadow: 0 24px 48px rgba(2, 6, 23, 0.28);
}

.inbound-scan-page .receiving-workflow-hero,
.inbound-scan-page .workflow-step-card,
.inbound-scan-page .workflow-awaiting-card {
  padding: 1.5rem;
}

.inbound-scan-page .receiving-workflow-overview {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.9rem;
  padding: 1rem;
}

.inbound-scan-page .workflow-overview-step,
.inbound-scan-page .workflow-inner-panel,
.inbound-scan-page .workflow-final-note {
  border-radius: 12px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.03) !important;
}

.inbound-scan-page .workflow-overview-step {
  display: flex;
  gap: 0.9rem;
  align-items: flex-start;
  padding: 1rem;
  min-height: 110px;
}

.inbound-scan-page .workflow-overview-number,
.inbound-scan-page .workflow-step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--tx-color-cyan-brand), var(--tx-color-blue-brand));
  box-shadow: 0 14px 24px rgba(79, 70, 229, 0.28);
}

.inbound-scan-page .workflow-overview-number {
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  font-size: 1.35rem;
  flex: 0 0 3rem;
}

.inbound-scan-page .workflow-step-number {
  width: 4.15rem;
  height: 4.15rem;
  border-radius: 1.35rem;
  font-size: 2rem;
  flex: 0 0 4.15rem;
}

.inbound-scan-page .workflow-overview-title {
  color: var(--tx-color-slate-150);
  font-size: 1rem;
  font-weight: 700;
}

.inbound-scan-page .workflow-overview-copy,
.inbound-scan-page .workflow-step-copy .section-subtitle,
.inbound-scan-page .receiving-empty-copy,
.inbound-scan-page .workflow-final-note .section-subtitle {
  color: rgba(226, 232, 240, 0.82);
}

.inbound-scan-page .workflow-step-card {
  display: flex;
  flex-direction: column;
  gap: 1.15rem;
}

.inbound-scan-page .workflow-step-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
}

.inbound-scan-page .workflow-step-state-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.5rem;
  padding: 0.5rem 0.95rem;
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tx-color-slate-150);
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.inbound-scan-page [data-step-state='current'] {
  border-color: rgba(138, 91, 255, 0.42);
  box-shadow: 0 0 0 1px rgba(138, 91, 255, 0.25), 0 26px 48px rgba(76, 29, 149, 0.24);
}

.inbound-scan-page [data-step-state='current'] .workflow-step-state-pill,
.inbound-scan-page [data-step-state='current'] .workflow-overview-number {
  background: linear-gradient(135deg, rgba(61, 123, 255, 0.98), rgba(138, 91, 255, 0.96));
}

.inbound-scan-page [data-step-state='complete'] .workflow-step-state-pill,
.inbound-scan-page [data-step-state='complete'] .workflow-overview-number {
  background: linear-gradient(135deg, rgba(5, 150, 105, 0.98), rgba(16, 185, 129, 0.96));
}

.inbound-scan-page [data-step-state='pending'] .workflow-step-state-pill,
.inbound-scan-page [data-step-state='pending'] .workflow-overview-number {
  background: linear-gradient(135deg, rgba(71, 85, 105, 0.98), rgba(100, 116, 139, 0.96));
}

.inbound-scan-page .workflow-step-body,
.inbound-scan-page .workflow-live-stack,
.inbound-scan-page .workflow-session-board,
.inbound-scan-page .workflow-finalize-side {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.inbound-scan-page .workflow-session-board {
  width: 100%;
}

.inbound-scan-page #session-controls {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.inbound-scan-page .workflow-primary-actions,
.inbound-scan-page .workflow-step-action-strip,
.inbound-scan-page .workflow-finalize-actions {
  display: grid;
  gap: 0.85rem;
}

.inbound-scan-page .workflow-primary-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.inbound-scan-page .workflow-step-action-strip,
.inbound-scan-page .workflow-finalize-actions {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.inbound-scan-page .btn,
.inbound-scan-page .btn-session,
.inbound-scan-page .blind-shipment-btn {
  min-height: 56px;
  font-size: 1rem;
  font-weight: 700;
}

.inbound-scan-page .btn-session,
.inbound-scan-page .btn,
.inbound-scan-page .btn-scan {
  border-radius: 12px;
}

.inbound-scan-page .filter-select,
.inbound-scan-page .inventory-filter-input,
.inbound-scan-page .form-input {
  min-height: 58px;
  font-size: 1rem;
  border-radius: 12px;
  background: rgba(7, 12, 24, 0.82);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: var(--tx-color-slate-150);
}

.inbound-scan-page .filter-select:focus,
.inbound-scan-page .inventory-filter-input:focus,
.inbound-scan-page .form-input:focus {
  border-color: rgba(138, 91, 255, 0.6);
  box-shadow: 0 0 0 4px rgba(138, 91, 255, 0.14);
}

.inbound-scan-page .filter-label,
.inbound-scan-page .form-label,
.inbound-scan-page .section-kicker {
  letter-spacing: 0.12em;
}

.inbound-scan-page .receiving-selector-input {
  font-size: 1.08rem;
}

.inbound-scan-page .workflow-step-grid-2,
.inbound-scan-page .workflow-finalize-grid {
  display: grid;
  gap: 1rem;
}

.inbound-scan-page .workflow-step-grid-2 {
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
}

.inbound-scan-page .workflow-finalize-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
}

.inbound-scan-page .workflow-operator-guide {
  padding: 1.25rem;
}

.inbound-scan-page .workflow-operator-guide-header {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
  margin-bottom: 1rem;
}

.inbound-scan-page .workflow-awaiting-card {
  text-align: center;
  align-items: center;
}

.inbound-scan-page .workflow-awaiting-card .empty-state-flow {
  justify-content: center;
}

.inbound-scan-page .receiving-panel,
.inbound-scan-page .receiving-selector-card,
.inbound-scan-page .recent-scans,
.inbound-scan-page .expected-inventory-section,
.inbound-scan-page .session-history,
.inbound-scan-page .ancillary-summary-card {
  background: transparent;
  border: none;
  box-shadow: none;
}

.inbound-scan-page .recent-scans-list,
.inbound-scan-page .table-container,
.inbound-scan-page .session-history-list,
.inbound-scan-page .ancillary-charge-list {
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.025);
}

.inbound-scan-page .workflow-final-note,
.inbound-scan-page .session-info,
.inbound-scan-page .progress-stats-panel,
.inbound-scan-page .workflow-step-action-panel,
.inbound-scan-page .receiving-scan-panel,
.inbound-scan-page .recent-scans,
.inbound-scan-page #expected-inventory-section,
.inbound-scan-page #session-history,
.inbound-scan-page #ancillary-charges-summary-card {
  padding: 1.15rem;
}

.inbound-scan-page .receiving-empty-title,
.inbound-scan-page .section-title,
.inbound-scan-page .recent-scans-title,
.inbound-scan-page .session-title {
  color: var(--tx-color-slate-150);
}



/* thead / tbody base colors are defined with !important in the layout block
   below (~line 1290+). Rules here have been removed to avoid specificity noise. */

.inbound-scan-page .workflow-final-note {
  min-height: 160px;
}

.inbound-scan-page .ancillary-workbench {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* ── Service Charge Quick-Add Form ──────────────────────────────────────────── */

.inbound-scan-page .service-charge-quick-add {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0.75rem;
  padding: 1rem 1.15rem;
  border-radius: 16px;
  border: 1px solid rgba(34, 211, 238, 0.18);
  background: rgba(15, 23, 42, 0.72);
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.22);
}

.inbound-scan-page .service-charge-field {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.inbound-scan-page .service-charge-field-select {
  flex: 1 1 220px;
}

.inbound-scan-page .service-charge-field-amount {
  flex: 0 0 130px;
}

.inbound-scan-page .service-charge-other-wrap {
  flex: 1 1 180px;
}

.inbound-scan-page .service-charge-label {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(103, 232, 249, 0.78);
}

/* Shared input / select base */
.inbound-scan-page .service-charge-select,
.inbound-scan-page .service-charge-input {
  min-height: 46px;
  padding: 0 0.85rem;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(7, 12, 24, 0.88);
  color: var(--tx-color-slate-100);
  font-size: 0.9rem;
  font-weight: 500;
  appearance: none;
  -webkit-appearance: none;
  outline: none;
  transition: border-color 0.18s, box-shadow 0.18s;
}

/* Custom dropdown arrow */
.inbound-scan-page .service-charge-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2367e8f9' stroke-width='2' stroke-linecap='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px;
  padding-right: 2.5rem;
  cursor: pointer;
}

.inbound-scan-page .service-charge-select option,
.inbound-scan-page .service-charge-select optgroup {
  background: var(--tx-color-navy-canvas);
  color: var(--tx-color-slate-200);
}

.inbound-scan-page .service-charge-select:focus,
.inbound-scan-page .service-charge-input:focus {
  border-color: rgba(34, 211, 238, 0.55);
  box-shadow: 0 0 0 3px rgba(34, 211, 238, 0.12);
}

.inbound-scan-page .service-charge-amount-input {
  font-family: 'Space Grotesk', 'DM Sans', monospace;
  letter-spacing: 0.02em;
  color: var(--tx-color-emerald-400);   /* emerald — signals currency value */
}

.inbound-scan-page .service-charge-amount-input:focus {
  border-color: rgba(52, 211, 153, 0.60);
  box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.14);
  color: var(--tx-color-emerald-300);
}

/* Modal "Captured Unit Rate" field — emerald to match workbench amount input */
.inbound-scan-page #ancillary-charge-unit-cost.form-input,
.inbound-scan-page #ancillary-charge-unit-cost {
  color: var(--tx-color-emerald-400);
  font-family: 'Space Grotesk', 'DM Sans', monospace;
  letter-spacing: 0.02em;
}

.inbound-scan-page #ancillary-charge-unit-cost.form-input:focus,
.inbound-scan-page #ancillary-charge-unit-cost:focus {
  border-color: rgba(52, 211, 153, 0.55) !important;
  box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.14) !important;
  color: var(--tx-color-emerald-300);
}

/* Add Charge button */
.inbound-scan-page .service-charge-add-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 46px;
  padding: 0 1.25rem;
  border-radius: 10px;
  border: 1px solid rgba(16, 185, 129, 0.36);
  background: rgba(16, 185, 129, 0.22);
  color: var(--tx-color-emerald-300);
  font-size: 0.88rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.18s, box-shadow 0.18s, transform 0.12s;
  white-space: nowrap;
  flex-shrink: 0;
  align-self: flex-end;
}

.inbound-scan-page .service-charge-add-btn:hover {
  background: rgba(16, 185, 129, 0.38);
  box-shadow: 0 0 14px rgba(16, 185, 129, 0.40);
  transform: translateY(-1px);
}

.inbound-scan-page .service-charge-add-btn:active {
  transform: translateY(0);
}

/* ── Inline Charge List ─────────────────────────────────────────────────────── */

.inbound-scan-page .service-charge-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.07);
}

.inbound-scan-page .service-charge-empty {
  padding: 0.9rem 1.1rem;
  font-size: 0.82rem;
  color: rgba(148, 163, 184, 0.7);
  text-align: center;
  font-style: italic;
}

.inbound-scan-page .service-charge-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.65rem 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  background: rgba(255, 255, 255, 0.025);
  transition: background 0.15s;
}

.inbound-scan-page .service-charge-row:last-child {
  border-bottom: none;
}

.inbound-scan-page .service-charge-row:hover {
  background: rgba(34, 211, 238, 0.05);
}

.inbound-scan-page .service-charge-row-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.inbound-scan-page .service-charge-row-label {
  font-size: 0.86rem;
  font-weight: 600;
  color: var(--tx-color-slate-100);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.inbound-scan-page .service-charge-row-desc {
  font-size: 0.74rem;
  color: rgba(148, 163, 184, 0.8);
}

.inbound-scan-page .service-charge-row-right {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-shrink: 0;
}

.inbound-scan-page .service-charge-row-total {
  font-size: 0.92rem;
  font-weight: 700;
  font-family: 'Space Grotesk', monospace;
  color: var(--tx-color-emerald-400);
}

.inbound-scan-page .service-charge-remove-btn {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  border: 1px solid rgba(248, 113, 113, 0.28);
  background: rgba(248, 113, 113, 0.10);
  color: var(--tx-color-red-400);
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s, box-shadow 0.15s;
}

.inbound-scan-page .service-charge-remove-btn:hover {
  background: rgba(248, 113, 113, 0.24);
  box-shadow: 0 0 8px rgba(248, 113, 113, 0.30);
}

/* ── Summary footer ─────────────────────────────────────────────────────────── */

.inbound-scan-page .service-charge-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding: 0.8rem 1rem;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.025);
}

.inbound-scan-page .service-charge-totals {
  display: flex;
  gap: 1.5rem;
  align-items: baseline;
}

.inbound-scan-page .service-charge-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.inbound-scan-page .service-charge-stat-value {
  font-size: 1.35rem;
  font-weight: 700;
  font-family: 'Space Grotesk', sans-serif;
  color: var(--tx-color-slate-100);
}

.inbound-scan-page .service-charge-stat-value.emerald {
  color: var(--tx-color-emerald-400);
}

.inbound-scan-page .service-charge-stat-label {
  font-size: 0.68rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: rgba(148, 163, 184, 0.7);
}

.inbound-scan-page .service-charge-full-editor-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 1.1rem;
  border-radius: 10px;
  border: 1px solid rgba(34, 211, 238, 0.28);
  background: rgba(34, 211, 238, 0.08);
  color: var(--tx-color-cyan-300);
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.18s, box-shadow 0.18s, transform 0.12s;
  white-space: nowrap;
}

.inbound-scan-page .service-charge-full-editor-btn:hover {
  background: rgba(34, 211, 238, 0.16);
  box-shadow: 0 0 12px rgba(34, 211, 238, 0.24);
  transform: translateY(-1px);
}

.inbound-scan-page .ancillary-selector-tab,
.inbound-scan-page .ancillary-selector-card {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(2, 6, 23, 0.56);
  box-shadow: 0 16px 32px rgba(2, 6, 23, 0.22);
}

.inbound-scan-page .ancillary-selector-tab:hover,
.inbound-scan-page .ancillary-selector-card:hover {
  border-color: rgba(125, 211, 252, 0.32);
  transform: translateY(-1px);
}

.inbound-scan-page .ancillary-selector-tab.is-active,
.inbound-scan-page .ancillary-selector-card.is-active {
  border-color: rgba(103, 232, 249, 0.52);
  background: linear-gradient(180deg, rgba(34, 211, 238, 0.12), rgba(138, 91, 255, 0.12));
  box-shadow: 0 0 0 3px rgba(103, 232, 249, 0.12), 0 18px 36px rgba(2, 6, 23, 0.24);
}

.inbound-scan-page .ancillary-selector-empty {
  border-style: dashed;
}

.inbound-scan-page .scroll-to-inventory-btn {
  bottom: 1.5rem;
  right: 1.5rem;
}

.inbound-scan-page .boxing-workflow-modal {
  background:
    radial-gradient(circle at top right, rgba(56, 225, 255, 0.12), transparent 28%),
    linear-gradient(180deg, rgba(10, 18, 34, 0.98), rgba(4, 9, 19, 0.98));
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 28px;
  box-shadow: 0 30px 80px rgba(2, 6, 23, 0.42);
}

.inbound-scan-page .boxing-modal-hero,
.inbound-scan-page .boxing-step-card,
.inbound-scan-page .boxing-current-plan,
.inbound-scan-page .boxing-import-card {
  padding: 1.35rem;
}

.inbound-scan-page .boxing-modal-hero {
  margin: 1rem 1rem 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.inbound-scan-page .boxing-modal-subtitle {
  margin: 0;
  color: rgba(226, 232, 240, 0.82);
}

.inbound-scan-page .boxing-modal-pills,
.inbound-scan-page .boxing-import-actions,
.inbound-scan-page .boxing-summary-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.inbound-scan-page .boxing-modal-pill,
.inbound-scan-page .boxing-summary-pill,
.inbound-scan-page .boxing-item-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: 0.55rem 0.9rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: var(--tx-color-slate-150);
  font-size: 0.88rem;
  font-weight: 700;
}

.inbound-scan-page .boxing-workflow-layout {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem;
}

.inbound-scan-page .boxing-step-card,
.inbound-scan-page .boxing-current-plan,
.inbound-scan-page .boxing-import-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.inbound-scan-page .boxing-step-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.inbound-scan-page .boxing-step-header-compact {
  align-items: center;
}

.inbound-scan-page .boxing-step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 4rem;
  height: 4rem;
  padding: 0 0.9rem;
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(56, 225, 255, 0.98), rgba(138, 91, 255, 0.96));
  color: #fff;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  box-shadow: 0 16px 28px rgba(76, 29, 149, 0.24);
}

.inbound-scan-page .boxing-search-shell,
.inbound-scan-page .boxing-form-grid {
  display: grid;
  gap: 1rem;
}

.inbound-scan-page .boxing-form-grid {
  grid-template-columns: minmax(260px, 0.8fr) minmax(0, 1.2fr);
}

.inbound-scan-page .boxing-search-input {
  min-height: 60px;
}

.inbound-scan-page .boxing-instructions-list,
.inbound-scan-page .boxing-selected-items-summary,
.inbound-scan-page .boxing-item-selector {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.inbound-scan-page .boxing-item-selector {
  max-height: 360px;
  overflow-y: auto;
  padding-right: 0.25rem;
}

.inbound-scan-page .boxing-empty-state,
.inbound-scan-page .boxing-ready-summary,
.inbound-scan-page .boxing-instruction-card,
.inbound-scan-page .boxing-selected-item,
.inbound-scan-page .boxing-item-card,
.inbound-scan-page .box-size-card {
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
}

.inbound-scan-page .boxing-empty-state,
.inbound-scan-page .boxing-ready-summary {
  padding: 1rem;
  color: rgba(226, 232, 240, 0.8);
  text-align: center;
}

.inbound-scan-page .boxing-instruction-card,
.inbound-scan-page .boxing-selected-item {
  padding: 1rem;
}

.inbound-scan-page .boxing-instruction-header,
.inbound-scan-page .boxing-selected-item {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
}

.inbound-scan-page .boxing-instruction-title,
.inbound-scan-page .boxing-selected-item-title,
.inbound-scan-page .boxing-item-name,
.inbound-scan-page .box-size-card-label {
  color: var(--tx-color-slate-150);
  font-weight: 700;
}

.inbound-scan-page .boxing-instruction-size,
.inbound-scan-page .boxing-instruction-meta,
.inbound-scan-page .boxing-selected-item-meta,
.inbound-scan-page .boxing-item-meta,
.inbound-scan-page .boxing-item-qty-help,
.inbound-scan-page .box-size-card-copy,
.inbound-scan-page .boxing-item-remaining {
  color: rgba(191, 219, 254, 0.72);
  font-size: 0.84rem;
}

.inbound-scan-page .boxing-instruction-items {
  margin-top: 0.85rem;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.inbound-scan-page .boxing-instruction-line {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding-top: 0.45rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(226, 232, 240, 0.9);
}

.inbound-scan-page .boxing-remove-button {
  min-height: 40px;
  padding-inline: 0.9rem;
}

.inbound-scan-page .box-size-header {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  margin-bottom: 0.7rem;
}

.inbound-scan-page .boxing-clear-size {
  background: transparent;
  color: rgba(125, 211, 252, 0.92);
  border: none;
  font-weight: 700;
  cursor: pointer;
}

.inbound-scan-page .box-size-selection-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
}

.inbound-scan-page .box-size-card {
  min-height: 108px;
  padding: 1rem;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.inbound-scan-page .box-size-card:hover,
.inbound-scan-page .boxing-item-card:hover {
  border-color: rgba(125, 211, 252, 0.32);
  transform: translateY(-1px);
}

.inbound-scan-page .box-size-card.is-active {
  border-color: rgba(138, 91, 255, 0.65);
  background: linear-gradient(180deg, rgba(56, 225, 255, 0.12), rgba(138, 91, 255, 0.14));
  box-shadow: 0 0 0 3px rgba(138, 91, 255, 0.12);
}

.inbound-scan-page .boxing-item-card {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr);
  gap: 1rem;
  padding: 1rem;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.inbound-scan-page .boxing-item-card.is-selected {
  border-color: rgba(138, 91, 255, 0.62);
  box-shadow: 0 0 0 3px rgba(138, 91, 255, 0.12);
  background: linear-gradient(180deg, rgba(56, 225, 255, 0.08), rgba(138, 91, 255, 0.1));
}

.inbound-scan-page .boxing-item-card.is-disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.inbound-scan-page .boxing-item-checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.inbound-scan-page .boxing-item-checkmark {
  width: 1.45rem;
  height: 1.45rem;
  margin-top: 0.2rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.04);
  position: relative;
}

.inbound-scan-page .boxing-item-card.is-selected .boxing-item-checkmark {
  background: linear-gradient(135deg, rgba(56, 225, 255, 1), rgba(138, 91, 255, 0.95));
  border-color: transparent;
}

.inbound-scan-page .boxing-item-card.is-selected .boxing-item-checkmark::after {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  background: var(--bg-2);
}

.inbound-scan-page .boxing-item-main {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.inbound-scan-page .boxing-item-topline,
.inbound-scan-page .boxing-item-controls {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
}

.inbound-scan-page .boxing-item-qty-label {
  color: var(--tx-color-slate-150);
  font-size: 0.84rem;
  font-weight: 700;
}

.inbound-scan-page .boxing-item-quantity-wrap {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.inbound-scan-page .boxing-item-quantity-input {
  width: 112px;
  min-height: 52px;
  text-align: center;
}

.inbound-scan-page .boxing-selected-item-values {
  text-align: right;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  color: rgba(226, 232, 240, 0.88);
}

.inbound-scan-page .boxing-confirm-button {
  width: 100%;
  min-height: 62px;
  font-size: 1.05rem;
}

.inbound-scan-page .boxing-modal-actions {
  padding: 0 1rem 1rem;
}

.inbound-scan-page .boxing-modal-actions .btn {
  flex: 1;
}

@media (max-width: 1100px) {
  .inbound-scan-page .receiving-workflow-overview,
  .inbound-scan-page .workflow-primary-actions,
  .inbound-scan-page .workflow-step-grid-2,
  .inbound-scan-page .workflow-finalize-grid,
  .inbound-scan-page .boxing-form-grid,
  .inbound-scan-page .box-size-selection-grid {
    grid-template-columns: 1fr;
  }

  .inbound-scan-page .workflow-step-header {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .inbound-scan-page .workflow-step-state-pill {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .inbound-scan-page .workflow-operator-guide {
    padding: 1rem;
  }
}

@media (max-width: 768px) {
  .inbound-scan-page {
    font-size: 16px;
  }

  .inbound-scan-page .receiving-workflow-hero,
  .inbound-scan-page .workflow-step-card,
  .inbound-scan-page .workflow-awaiting-card {
    padding: 1.1rem;
  }

  .inbound-scan-page .workflow-step-header {
    grid-template-columns: 1fr;
  }

  .inbound-scan-page .workflow-step-number {
    width: 3.5rem;
    height: 3.5rem;
    font-size: 1.75rem;
  }

  .inbound-scan-page .workflow-step-action-strip,
  .inbound-scan-page .workflow-finalize-actions,
  .inbound-scan-page .workflow-primary-actions,
  .inbound-scan-page .boxing-import-actions,
  .inbound-scan-page .boxing-summary-toolbar,
  .inbound-scan-page .boxing-item-controls,
  .inbound-scan-page .boxing-item-topline,
  .inbound-scan-page .boxing-instruction-header,
  .inbound-scan-page .boxing-selected-item,
  .inbound-scan-page .boxing-modal-actions {
    grid-template-columns: 1fr;
    flex-direction: column;
  }

  .inbound-scan-page .session-meta-grid,
  .inbound-scan-page .progress-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .inbound-scan-page .boxing-item-card {
    grid-template-columns: auto 1fr;
  }

  .inbound-scan-page .boxing-item-checkmark {
    margin-top: 0.35rem;
  }
}

/* ═══════════════════════════════════════════════════════════════
   DARK MODE OVERRIDES
   Kills every white / light background left behind by scanning.css
   and makes Step 1 (PO selection + Start button) stand out in amber.
   ═══════════════════════════════════════════════════════════════ */

/* ── 1. Step 1 shipment-selector: amber accent ─────────────────── */
.inbound-scan-page .receiving-selector-card {
  border: 1px solid rgba(245,158,11,.35) !important;
  background: linear-gradient(160deg, rgba(245,158,11,.07), rgba(251,191,36,.03)) !important;
  box-shadow: 0 0 0 1px rgba(245,158,11,.12), 0 18px 40px rgba(2,6,23,.28) !important;
}
.inbound-scan-page .receiving-selector-input {
  border-color: rgba(245,158,11,.40) !important;
}
.inbound-scan-page .receiving-selector-input:focus {
  border-color: rgba(245,158,11,.70) !important;
  box-shadow: 0 0 0 4px rgba(245,158,11,.18) !important;
}

/* ── 2. Start Receiving: bright amber — impossible to miss ──────── */
.inbound-scan-page .btn-start {
  background: linear-gradient(135deg,var(--tx-color-amber-500),var(--tx-color-amber-600)) !important;
  color: var(--tx-color-amber-950) !important;
  border: none !important;
  box-shadow: 0 0 30px rgba(245,158,11,.55), 0 8px 20px rgba(0,0,0,.28) !important;
  transition: box-shadow .2s, transform .2s !important;
}
.inbound-scan-page .btn-start:hover {
  background: linear-gradient(135deg,var(--tx-color-amber-400),var(--tx-color-amber-500)) !important;
  box-shadow: 0 0 48px rgba(245,158,11,.70), 0 10px 28px rgba(0,0,0,.30) !important;
  transform: translateY(-2px) !important;
}

/* ── Start button: authoritative amber glow ──────────────────────── */
.inbound-scan-page #start-session-btn {
  font-size: 1.2rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  min-height: 68px !important;
  box-shadow:
    0 0 40px rgba(245, 158, 11, 0.65),
    0 0 80px rgba(245, 158, 11, 0.25),
    0 10px 28px rgba(0, 0, 0, 0.35) !important;
}
.inbound-scan-page #start-session-btn:hover {
  box-shadow:
    0 0 56px rgba(245, 158, 11, 0.80),
    0 0 100px rgba(245, 158, 11, 0.35),
    0 12px 32px rgba(0, 0, 0, 0.40) !important;
  transform: translateY(-2px) !important;
}

/* ── Pause button: teal/cyan glow ────────────────────────────────── */
.inbound-scan-page .btn-pause {
  font-weight: 800 !important;
  box-shadow:
    0 0 24px rgba(56, 189, 248, 0.45),
    0 8px 20px rgba(0, 0, 0, 0.30) !important;
}
.inbound-scan-page .btn-pause:hover {
  box-shadow:
    0 0 36px rgba(56, 189, 248, 0.65),
    0 10px 28px rgba(0, 0, 0, 0.35) !important;
  transform: translateY(-2px) !important;
}

/* ── Save button: violet/indigo glow ─────────────────────────────── */
.inbound-scan-page .btn-save {
  font-weight: 800 !important;
  box-shadow:
    0 0 24px rgba(139, 92, 246, 0.45),
    0 8px 20px rgba(0, 0, 0, 0.30) !important;
}
.inbound-scan-page .btn-save:hover {
  box-shadow:
    0 0 36px rgba(139, 92, 246, 0.65),
    0 10px 28px rgba(0, 0, 0, 0.35) !important;
  transform: translateY(-2px) !important;
}

/* Remaining session panel buttons: consistent font weight */
.inbound-scan-page .workflow-step-action-panel .btn-session:not(#start-session-btn):not(.btn-pause):not(.btn-save) {
  font-size: 1.05rem !important;
  font-weight: 800 !important;
}

/* ── 3. scanning.css white-background classes → dark ───────────── */
.inbound-scan-page .mode-card,
.inbound-scan-page .scanning-section {
  background: rgba(7,12,24,.80) !important;
  border-color: rgba(255,255,255,.09) !important;
  color: var(--tx-color-slate-100) !important;
  box-shadow: 0 8px 24px rgba(2,6,23,.28) !important;
}
.inbound-scan-page .stat-card {
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(255,255,255,.08) !important;
  color: var(--tx-color-slate-100) !important;
}
.inbound-scan-page .stat-value { color: var(--tx-color-slate-50) !important; }
.inbound-scan-page .stat-label { color: var(--tx-color-slate-400) !important; }

.inbound-scan-page .scanned-items-list {
  background: rgba(255,255,255,.025) !important;
  border-color: rgba(255,255,255,.08) !important;
  color: var(--tx-color-slate-200) !important;
}
.inbound-scan-page .btn-back,
.inbound-scan-page .btn-upload {
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.12) !important;
  color: var(--tx-color-slate-200) !important;
}
/* barcode-input / form-input / form-textarea / form-select already dark from above;
   this catches any remaining scanning.css specificity wins */
.inbound-scan-page .barcode-input,
.inbound-scan-page .form-select {
  background: rgba(7,12,24,.82) !important;
  border-color: rgba(255,255,255,.12) !important;
  color: var(--tx-color-slate-100) !important;
}

/* ── 4. Modals: full dark glassmorphism ─────────────────────────── */
.modal-content {
  background: linear-gradient(180deg, rgba(10,18,34,.98), rgba(4,9,19,.98)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color: var(--tx-color-slate-100) !important;
  box-shadow: 0 32px 80px rgba(2,6,23,.55) !important;
}
.modal-title   { color: var(--tx-color-slate-50) !important; }
.modal-text    { color: var(--tx-color-slate-400) !important; }
.form-label    { color: var(--tx-color-blue-200) !important; }
#modal-product-name,
#modal-expected-qty  { color: var(--tx-color-slate-100) !important; }
#modal-product-sku   { color: var(--tx-color-slate-400) !important; }

/* Light-bg summary/info boxes inside modals (inline style overrides) */
#bin-items-summary,
#send-bin-item-info,
#send-inv-item-info {
  background: rgba(76,201,240,.07) !important;
  border-left-color: var(--tx-color-cyan-bright) !important;
  color: var(--tx-color-cyan-100) !important;
}
#inventory-items-summary {
  background: rgba(76,201,240,.07) !important;
  border-left-color: var(--tx-color-cyan-bright) !important;
  color: var(--tx-color-cyan-100) !important;
}
#bin-items-count,
#inventory-items-count,
#stock-items-count { color: var(--tx-color-sky-300) !important; }

/* ── Distribution sub-boxes (white .6 bg) ──────────────────────── */
#send-bin-distribution-info > div > div,
#send-inv-distribution-info > div > div {
  background: rgba(255,255,255,.05) !important;
}
#send-bin-distribution-info .text-[0\.78716c],
#send-inv-distribution-info .text-[0\.78716c],
#send-bin-distribution-info > div > div > div:first-child,
#send-inv-distribution-info > div > div > div:first-child { color: var(--tx-color-slate-400) !important; }
#send-bin-dist-warehouse,
#send-inv-dist-warehouse { color: var(--tx-color-blue-300) !important; }
#send-bin-dist-amazon,
#send-inv-dist-amazon    { color: var(--tx-color-violet-300) !important; }

/* ── Info / error feedback panels ──────────────────────────────── */
#bin-info-display,
#send-bin-info-display,
#send-inv-location-info,
#inventory-location-info {
  background: rgba(76,201,240,.09) !important;
  border-left-color: var(--tx-color-cyan-bright) !important;
  color: var(--tx-color-cyan-100) !important;
}
#inventory-location-code  { color: var(--tx-color-blue-300) !important; }
#inventory-location-details { color: var(--tx-color-slate-400) !important; }

#bin-error-display,
#send-bin-error-display,
#inventory-location-error,
#send-inv-location-error {
  background: rgba(239,68,68,.09) !important;
  border-left-color: var(--tx-color-red-400) !important;
  color: var(--tx-color-red-300) !important;
}

/* ── Progress / discrepancy indicators ─────────────────────────── */
#previous-progress-indicator {
  background: rgba(139,92,246,.12) !important;
  border-left-color: var(--tx-color-violet-500) !important;
  color: var(--tx-color-violet-50) !important;
}
#previous-progress-text { color: var(--tx-color-violet-300) !important; }
#modal-discrepancy-warning {
  background: rgba(139,92,246,.10) !important;
  border-left-color: var(--tx-color-violet-500) !important;
  color: var(--tx-color-violet-50) !important;
}

/* ── Send-to-stock dark grid fields ─────────────────────────────── */
#send-to-stock-modal .modal-body > div:first-child {
  background: rgba(76,201,240,.07) !important;
  border-left-color: var(--tx-color-cyan-bright) !important;
  color: var(--tx-color-cyan-100) !important;
}
#stock-items-count { color: var(--tx-color-sky-300) !important; }
#stock-items-list  { color: var(--tx-color-slate-300) !important; }

/* ── Ancillary modal sections ───────────────────────────────────── */
.ancillary-modal-content { color: var(--tx-color-slate-100) !important; }
.ancillary-section-title { color: var(--tx-color-slate-50) !important; }
.ancillary-section-kicker,
.ancillary-billing-hint,
.ancillary-form-hint { color: var(--tx-color-slate-400) !important; }

/* ── Scan rate / discrepancy stat boxes ─────────────────────────── */
.inbound-scan-page .discrepancy .stat-value { color: var(--tx-color-red-400) !important; }
.inbound-scan-page .stat-box-success .stat-value { color: var(--tx-color-emerald-300) !important; }

/* ── Boxing button — purple outline ─────────────────────────────── */
.inbound-scan-page #boxing-instructions-btn {
  background: transparent !important;
  border: 1.5px solid #a855f7 !important;
  color: #c084fc !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease !important;
}

.inbound-scan-page #boxing-instructions-btn:hover {
  background: transparent !important;
  border-color: #c084fc !important;
  color: #e9d5ff !important;
  box-shadow: 0 0 14px rgba(168, 85, 247, 0.45) !important;
  transform: translateY(-1px) !important;
}

.inbound-scan-page #boxing-instructions-btn:active {
  transform: scale(0.97) !important;
}

/* ── Charge Editor button — green outline (matches Send to Storage) ─ */
/* Overrides the bright gradient set by scanning.css (.btn-ancillary-charge) */
.inbound-scan-page .btn-ancillary-charge,
.inbound-scan-page .ancillary-summary-cta {
  background: transparent !important;
  border: 1.5px solid #4ade80 !important;
  color: #4ade80 !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease !important;
}

.inbound-scan-page .btn-ancillary-charge:hover,
.inbound-scan-page .ancillary-summary-cta:hover {
  background: transparent !important;
  border-color: #86efac !important;
  color: #86efac !important;
  box-shadow: 0 0 14px rgba(74, 222, 128, 0.3) !important;
  transform: translateY(-1px) !important;
}

.inbound-scan-page .btn-ancillary-charge:active,
.inbound-scan-page .ancillary-summary-cta:active {
  transform: scale(0.97) !important;
}

/* "Open full charge editor" button — same green outline */
.inbound-scan-page #open-ancillary-charge-editor-btn {
  color: #4ade80 !important;
  background: transparent !important;
  border: 1.5px solid #4ade80 !important;
  box-shadow: none !important;
}

.inbound-scan-page #open-ancillary-charge-editor-btn:hover {
  background: transparent !important;
  border-color: #86efac !important;
  color: #86efac !important;
  box-shadow: 0 0 14px rgba(74, 222, 128, 0.3) !important;
  transform: translateY(-1px) !important;
}

/* ══════════════════════════════════════════════════════════════════
   INVENTORY TABLE — VISUAL HIERARCHY & CONTRAST UPGRADE
   Overrides scanning.css muted gray-on-gray styles for warehouse use
   ══════════════════════════════════════════════════════════════════ */

/* ── Table header: rich gradient with vibrant emerald labels ─────── */
.inbound-scan-page .expected-inventory-table thead th {
  color: var(--tx-color-emerald-50) !important;
  background: linear-gradient(90deg,
    var(--tx-color-navy-800) 0%,
    var(--tx-color-navy-700) 50%,
    var(--tx-color-navy-900) 100%) !important;
  font-weight: var(--tx-weight-black) !important;
  font-size: var(--tx-text-sm) !important;
  letter-spacing: var(--tx-tracking-kicker) !important;
  text-transform: uppercase !important;
  border-bottom: 2px solid var(--tx-color-border-strong) !important;
  backdrop-filter: none !important;
  padding-top: var(--tx-space-5) !important;
  padding-bottom: var(--tx-space-5) !important;
  text-shadow: var(--tx-text-shadow-dark) !important;
}

/* ── SKU code (first column <strong>): bright luminous cyan ────── */
.inbound-scan-page .expected-inventory-table tbody td:first-child strong {
  color: var(--tx-color-cyan-300) !important;
  letter-spacing: var(--tx-tracking-wide);
  font-weight: var(--tx-weight-black);
  text-shadow: var(--tx-text-shadow-cyan);
}

/* ── Product name (second column): pure white, bold ──────────── */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(2) {
  color: var(--tx-color-text-strong) !important;
  font-weight: var(--tx-weight-bold);
}

/* ── Status badges — vibrant, glowing, unmistakable ─────────────── */
/* Pending: amber/yellow — "needs attention" */
.inbound-scan-page .status-badge.status-pending {
  background: rgba(234, 179, 8, 0.35) !important;
  border-color: rgba(250, 204, 21, 0.70) !important;
  color: var(--tx-color-yellow-200) !important;
  box-shadow: 0 0 14px rgba(250, 204, 21, 0.40) !important;
  text-shadow: 0 0 8px rgba(250, 204, 21, 0.55) !important;
}

/* Partial: pink/magenta — "in progress" */
.inbound-scan-page .status-badge.status-partial {
  background: rgba(236, 72, 153, 0.35) !important;
  border-color: rgba(244, 114, 182, 0.70) !important;
  color: var(--tx-color-pink-200) !important;
  box-shadow: 0 0 14px rgba(244, 114, 182, 0.40) !important;
  text-shadow: 0 0 8px rgba(244, 114, 182, 0.55) !important;
}

/* Complete: emerald green — "done" */
.inbound-scan-page .status-badge.status-complete {
  background: rgba(16, 185, 129, 0.38) !important;
  border-color: rgba(52, 211, 153, 0.75) !important;
  color: var(--tx-color-emerald-200) !important;
  box-shadow: 0 0 14px rgba(52, 211, 153, 0.45) !important;
  text-shadow: 0 0 8px rgba(52, 211, 153, 0.55) !important;
}

/* Processed: teal — "fully dispatched" */
.inbound-scan-page .status-badge.status-processed {
  background: rgba(20, 184, 166, 0.38) !important;
  border-color: rgba(45, 212, 191, 0.75) !important;
  color: var(--tx-color-teal-200) !important;
  box-shadow: 0 0 14px rgba(45, 212, 191, 0.42) !important;
  text-shadow: 0 0 8px rgba(45, 212, 191, 0.55) !important;
}

/* Overage: red — "too many received" */
.inbound-scan-page .status-badge.status-overage {
  background: rgba(239, 68, 68, 0.38) !important;
  border-color: rgba(248, 113, 113, 0.75) !important;
  color: var(--tx-color-red-300) !important;
  box-shadow: 0 0 14px rgba(248, 113, 113, 0.42) !important;
  text-shadow: 0 0 8px rgba(248, 113, 113, 0.55) !important;
}

/* ── Discrepancy values ──────────────────────────────────────────── */
.inbound-scan-page .expected-inventory-table .discrepancy-positive {
  color: var(--tx-color-rose-400) !important;
  font-weight: var(--tx-weight-black) !important;
  text-shadow: 0 0 8px rgba(251, 113, 133, 0.45) !important;
}
.inbound-scan-page .expected-inventory-table .discrepancy-negative {
  color: var(--tx-color-amber-300) !important;
  font-weight: var(--tx-weight-black) !important;
  text-shadow: 0 0 8px rgba(252, 211, 77, 0.45) !important;
}

/* ── Row cells: deep-navy with alternating zebra tint ─────────── */
.inbound-scan-page .expected-inventory-table tbody td {
  background: var(--tx-color-bg) !important;
  transition: var(--tx-transition-row) !important;
  backdrop-filter: none !important;
}
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(even) td {
  background: var(--tx-color-bg-alt) !important;
}

/* ── Hover: vivid indigo/violet lift — unmistakable in low light ─── */
.inbound-scan-page .expected-inventory-table tbody tr:hover td {
  background: var(--tx-color-surface-hover) !important;
  box-shadow: inset 0 1px 0 rgba(167,139,250,0.60), inset 0 -1px 0 rgba(139,92,246,0.45) !important;
}
.inbound-scan-page .expected-inventory-table tbody tr:hover td:first-child {
  background: var(--tx-color-surface-hover) !important;
  box-shadow: inset 5px 0 0 var(--tx-color-violet-300), inset 0 1px 0 rgba(167,139,250,0.60), inset 0 -1px 0 rgba(139,92,246,0.45) !important;
}

/* ── Fully-processed rows: dimmed with teal tint ─────────────── */
.inbound-scan-page .expected-inventory-table tbody tr.row-fully-processed td {
  background: var(--tx-color-navy-950) !important;
  opacity: 0.80;
}
.inbound-scan-page .expected-inventory-table tbody tr.row-fully-processed:nth-child(even) td {
  background: var(--tx-color-navy-deep) !important;
}

/* Processed rows: teal hover */
.inbound-scan-page .expected-inventory-table tbody tr.row-fully-processed:hover td {
  background: var(--tx-color-surface-hover-processed) !important;
  box-shadow: inset 0 1px 0 rgba(20,184,166,0.30), inset 0 -1px 0 rgba(20,184,166,0.15) !important;
  opacity: 1;
}
.inbound-scan-page .expected-inventory-table tbody tr.row-fully-processed:hover td:first-child {
  background: var(--tx-color-surface-hover-processed) !important;
  box-shadow: inset 4px 0 0 var(--tx-color-teal-300), inset 0 1px 0 rgba(20,184,166,0.30), inset 0 -1px 0 rgba(20,184,166,0.15) !important;
}

/* ══════════════════════════════════════════════════════════════════
   RESPONSIVE TABLE LAYOUT — eliminates horizontal scroll
   ══════════════════════════════════════════════════════════════════ */

/* Table container: modern rounded card with vibrant emerald glow */
.inbound-scan-page .table-container {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: var(--tx-color-bg) !important;
  border: 1px solid var(--tx-color-border-strong) !important;
  box-shadow:
    0 0 0 1px rgba(52, 211, 153, 0.25),
    0 0 28px rgba(52, 211, 153, 0.22),
    var(--tx-shadow-3) !important;
  border-radius: var(--tx-radius-table) !important;
  backdrop-filter: none !important;
  overflow: hidden !important;
}

/* ── Solid row borders — vivid dividers with emerald glow ────── */
.inbound-scan-page .expected-inventory-table tbody td {
  background: var(--tx-color-bg) !important;
  border-top: none !important;
  border-bottom: 1px solid var(--tx-color-border-soft) !important;
  border-left: none !important;
  border-right: none !important;
  border-radius: 0 !important;
  backdrop-filter: none !important;
}
.inbound-scan-page .expected-inventory-table tbody td:first-child {
  border-left: none !important;
  border-radius: 0 !important;
}
.inbound-scan-page .expected-inventory-table tbody td:last-child {
  border-right: none !important;
  border-radius: 0 !important;
}
.inbound-scan-page .expected-inventory-table tbody tr {
  border-bottom: none !important;
  background: var(--tx-color-bg) !important;
}
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(even) td {
  background: var(--tx-color-bg-alt) !important;
}
.inbound-scan-page .expected-inventory-table tbody tr:hover {
  background: var(--tx-color-surface-hover) !important;
}
.inbound-scan-page .expected-inventory-table tbody tr.row-fully-processed td {
  background: var(--tx-color-navy-950) !important;
}

/* Fixed layout: columns honour their widths, won't be pushed by content */
.inbound-scan-page .expected-inventory-table {
  table-layout: fixed !important;
  width: 100% !important;
  min-width: unset !important;
  border-collapse: collapse !important;
}

/* Column widths — 10 columns totalling 100% */
/* Col 1  SKU Code         */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(1),
.inbound-scan-page .expected-inventory-table thead th:nth-child(1),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(1) { width: 9% !important; }

/* Col 2  Product Name     */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(2),
.inbound-scan-page .expected-inventory-table thead th:nth-child(2),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(2) { width: 12% !important; }

/* Col 3  ASIN / FNSKU     */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(3),
.inbound-scan-page .expected-inventory-table thead th:nth-child(3),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(3) { width: 8% !important; }

/* Col 4  UPC              */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(4),
.inbound-scan-page .expected-inventory-table thead th:nth-child(4),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(4) { width: 8% !important; }

/* Col 5  Expected Qty     */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(5),
.inbound-scan-page .expected-inventory-table thead th:nth-child(5),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(5) { width: 9% !important; }

/* Col 6  Distribution     */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(6),
.inbound-scan-page .expected-inventory-table thead th:nth-child(6),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(6) { width: 10% !important; }

/* Col 7  Received Qty     */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(7),
.inbound-scan-page .expected-inventory-table thead th:nth-child(7),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(7) { width: 10% !important; }

/* Col 8  Discrepancy      */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(8),
.inbound-scan-page .expected-inventory-table thead th:nth-child(8),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(8) { width: 6% !important; }

/* Col 9  Status           */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(9),
.inbound-scan-page .expected-inventory-table thead th:nth-child(9),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(9) { width: 9% !important; }

/* Col 10 Actions          */ .inbound-scan-page .expected-inventory-table colgroup col:nth-child(10),
.inbound-scan-page .expected-inventory-table thead th:nth-child(10),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(10) { width: 19% !important; }

/* Product Name column: compact → ellipsis; expanded → wrap naturally */
.inbound-scan-page .expected-inventory-table.mode-compact tbody td:nth-child(2) {
  max-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}
.inbound-scan-page .expected-inventory-table.mode-expanded tbody td:nth-child(2) {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  word-break: break-word !important;
  vertical-align: top !important;
}

/* SKU column: also clip if needed */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(1) {
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

/* ASIN column: clip */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(3) {
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  font-size: 0.72rem !important;
}

/* UPC column: monospace, clip with ellipsis */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(4) {
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  font-size: 0.72rem !important;
  font-family: monospace !important;
  color: var(--tx-color-slate-50) !important;
}

/* ── Quantity columns (5, 7): tabular-nums, bright white ──────── */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(5),
.inbound-scan-page .expected-inventory-table tbody td:nth-child(7) {
  color: var(--tx-color-white) !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  width: auto;
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-input {
  box-sizing: border-box;
  width: 118px;
  max-width: 118px;
  min-height: 40px;
  padding: 9px 12px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.55);
  color: var(--tx-color-slate-50);
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.01em;
  font-variant-numeric: tabular-nums;
  box-shadow: none;
  appearance: textfield;
  -moz-appearance: textfield;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-input::placeholder {
  color: rgba(148, 163, 184, 0.6);
  font-weight: 600;
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-input::-webkit-outer-spin-button,
.inbound-scan-page .expected-inventory-table .expected-inventory-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-input:hover {
  border-color: rgba(192, 132, 252, 0.45);
  background: rgba(15, 23, 42, 0.7);
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-input:focus {
  outline: none;
  border-color: rgba(168, 85, 247, 0.8);
  background: rgba(15, 23, 42, 0.85);
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.18);
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-meta,
.inbound-scan-page .expected-inventory-table .expected-inventory-qty-readonly {
  display: block;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-meta {
  color: rgba(186, 230, 253, 0.82);
  font-size: 0.66rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-stack-readonly {
  justify-content: center;
  min-height: 38px;
  padding: 6px 8px;
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.7), rgba(30, 41, 59, 0.68));
  border: 1px solid rgba(51, 65, 85, 0.9);
}

.inbound-scan-page .expected-inventory-table .expected-inventory-qty-readonly {
  color: var(--tx-color-slate-50);
  font-size: 0.95rem;
  font-weight: 800;
}

/* All cells: consistent vertical alignment, vibrant emerald border */
.inbound-scan-page .expected-inventory-table thead th,
.inbound-scan-page .expected-inventory-table tbody td {
  vertical-align: middle !important;
  padding: var(--tx-space-4) var(--tx-space-3) !important;
  border-bottom: 1px solid var(--tx-color-border-soft) !important;
  color: var(--tx-color-slate-50) !important;
}

/* ── Action Buttons — shared base (both compact and expanded) ──────── */
.inbound-scan-page .expected-inventory-table .btn-manual-entry,
.inbound-scan-page .expected-inventory-table .btn-send-to-bin,
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: var(--tx-radius-control) !important;
  border: 1px solid transparent !important;
  cursor: pointer !important;
  font-size: var(--tx-text-xs) !important;
  font-weight: var(--tx-weight-bold) !important;
  letter-spacing: var(--tx-tracking-wide) !important;
  gap: var(--tx-space-2) !important;
  white-space: nowrap !important;
  transition: var(--tx-transition-control) !important;
}

/* ── Compact / icon-only mode ──────────────────────────────────────── */
.inbound-scan-page .expected-inventory-table .btn-manual-entry.btn-icon-only,
.inbound-scan-page .expected-inventory-table .btn-send-to-bin.btn-icon-only,
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory.btn-icon-only {
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  min-width: 30px !important;
  padding: 0 !important;
  font-size: 0 !important;
  overflow: hidden !important;
  border-radius: 8px !important;
}

/* ── Expanded (labeled) mode ───────────────────────────────────────── */
.inbound-scan-page .expected-inventory-table .btn-manual-entry:not(.btn-icon-only),
.inbound-scan-page .expected-inventory-table .btn-send-to-bin:not(.btn-icon-only),
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory:not(.btn-icon-only) {
  width: 100% !important;
  min-height: 34px !important;
  padding: 6px 10px !important;
  letter-spacing: 0.01em !important;
  border-radius: 8px !important;
}

/* ── Active (pressed) state for all action buttons ─────────────── */
.inbound-scan-page .expected-inventory-table .btn-manual-entry:active,
.inbound-scan-page .expected-inventory-table .btn-send-to-bin:active,
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory:active {
  transform: scale(0.95) !important;
  transition: transform var(--tx-duration-instant) !important;
}

/* ── Manual Entry: luminous amber — "needs attention" ────────────── */
.inbound-scan-page .expected-inventory-table .btn-manual-entry {
  background: linear-gradient(135deg, var(--tx-color-amber-400), var(--tx-color-amber-500)) !important;
  border-color: var(--tx-color-yellow-300) !important;
  color: var(--tx-color-amber-950) !important;
  box-shadow: var(--tx-glow-amber) !important;
  text-shadow: none !important;
}
.inbound-scan-page .expected-inventory-table .btn-manual-entry:hover {
  background: linear-gradient(135deg, var(--tx-color-yellow-300), var(--tx-color-amber-400)) !important;
  border-color: var(--tx-color-yellow-200) !important;
  box-shadow: var(--tx-glow-amber-hover) !important;
  transform: translateY(-1px) !important;
}

/* ── Send to Bin: cobalt glass accent ───────────────────────────────── */
.inbound-scan-page .expected-inventory-table .btn-send-to-bin {
  background: rgba(77, 123, 255, 0.10) !important;
  border: 1.5px solid rgba(77, 123, 255, 0.42) !important;
  color: #f1f5ff !important;
  box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.04) !important;
}
.inbound-scan-page .expected-inventory-table .btn-send-to-bin:hover {
  background: rgba(43, 229, 255, 0.14) !important;
  border-color: rgba(43, 229, 255, 0.48) !important;
  color: #f1f5ff !important;
  box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.08) !important;
  transform: translateY(-1px) !important;
}

/* ── Send to Storage: aqua glass positive accent ───────────────────── */
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory {
  background: rgba(87, 232, 200, 0.10) !important;
  border: 1.5px solid rgba(87, 232, 200, 0.40) !important;
  color: #f1f5ff !important;
  box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.04) !important;
}
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory:hover {
  background: rgba(87, 232, 200, 0.16) !important;
  border-color: rgba(159, 255, 168, 0.42) !important;
  color: #f1f5ff !important;
  box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.08) !important;
  transform: translateY(-1px) !important;
}

/* SVG icons inside action buttons: always 16×16 */
.inbound-scan-page .expected-inventory-table .btn-manual-entry svg,
.inbound-scan-page .expected-inventory-table .btn-send-to-bin svg,
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory svg {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
}
/* In icon-only mode the SVG is centred; in expanded mode give it a right gap */
.inbound-scan-page .expected-inventory-table .btn-manual-entry:not(.btn-icon-only) svg,
.inbound-scan-page .expected-inventory-table .btn-send-to-bin:not(.btn-icon-only) svg,
.inbound-scan-page .expected-inventory-table .btn-send-to-inventory:not(.btn-icon-only) svg {
  margin-right: 5px !important;
}

/* Actions cell: compact → row, expanded → column (full-width buttons) */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(10) > div {
  display: flex !important;
  gap: 5px !important;
  align-items: stretch !important;
}
/* Compact (icon-only row) */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(10) > div[style*="flex-direction: row"] {
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
}
/* Expanded (labeled column) */
.inbound-scan-page .expected-inventory-table tbody td:nth-child(10) > div[style*="flex-direction: column"] {
  flex-direction: column !important;
}

/* Status badges: vivid pill with stronger contrast */
.inbound-scan-page .expected-inventory-table .status-badge {
  font-size: var(--tx-text-2xs) !important;
  font-weight: var(--tx-weight-bold) !important;
  padding: 3px var(--tx-space-3) !important;
  white-space: nowrap !important;
  border-radius: var(--tx-radius-badge) !important;
  letter-spacing: var(--tx-tracking-wider) !important;
  text-transform: uppercase !important;
}

/* ══════════════════════════════════════════════════════════════════
   FILTER CONTROL BAR
   Manual-entry workflow: filter + item count + view toggle.
   ══════════════════════════════════════════════════════════════════ */

/* Container: filter stretches, count and toggle auto-size */
.inbound-scan-page .inventory-control-bar {
  display: grid;
  grid-template-columns: minmax(200px, 1fr) auto auto;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.85rem;
  padding: 0.75rem 1rem;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.07);
}

/* Filter input wrapper takes full column */
.inbound-scan-page .inventory-control-bar .inventory-filter-input-wrap {
  flex: 1;
  min-width: 0;
}

/* Compact filter input */
.inbound-scan-page .inventory-control-bar .inventory-filter-input {
  min-height: 44px;
  font-size: 0.95rem;
  width: 100%;
}

/* Responsive: collapse to single column on narrow screens */
@media (max-width: 700px) {
  .inbound-scan-page .inventory-control-bar {
    grid-template-columns: 1fr;
  }
}

/* ══════════════════════════════════════════════════════════════════
   STEP 1 DARK-MODE OVERRIDES
   Root cause: inbound-shipments.css sets
     .session-controls { background: var(--white); }
   (unscoped, no !important).  We must beat it with a scoped rule
   that uses both the ID and class and carries !important.
   ══════════════════════════════════════════════════════════════════ */

/* ① Outer wrapper — inbound-shipments.css makes this solid white */
.inbound-scan-page #session-controls,
.inbound-scan-page .session-controls {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* ② session-title — inbound-shipments.css sets color: var(--blue-dark) */
.inbound-scan-page .session-title {
  color: var(--tx-color-white) !important;
  font-weight: 700 !important;
}

/* ── Deep navy glass shared by all three session inner panels ─────── */
.inbound-scan-page .session-info,
.inbound-scan-page .progress-stats-panel,
.inbound-scan-page .workflow-step-action-panel {
  background: rgba(15, 23, 42, 0.90) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  box-shadow:
    0 16px 48px rgba(0, 0, 0, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

/* session-info: cyan accent border */
.inbound-scan-page .session-info {
  border: 1px solid rgba(56, 189, 248, 0.22) !important;
  border-radius: 14px !important;
}

/* progress-stats-panel: slightly softer border */
.inbound-scan-page .progress-stats-panel {
  border: 1px solid rgba(56, 189, 248, 0.15) !important;
  border-radius: 14px !important;
}

/* workflow-step-action-panel: strongest cyan border — primary action card */
.inbound-scan-page .workflow-step-action-panel {
  border: 1px solid rgba(56, 189, 248, 0.35) !important;
  border-radius: 16px !important;
  padding: 1.5rem 1.4rem 1.6rem !important;
  margin-top: 0.25rem !important;
}

/* session-meta-card: nested dark tile */
.inbound-scan-page .session-meta-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: var(--tx-color-slate-50) !important;
  padding: 0.5rem 0.75rem !important;
  min-height: auto !important;
}

/* stat-box: nested dark tile */
.inbound-scan-page .stat-box {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: none !important;
  padding: 0.5rem 0.75rem !important;
  min-height: auto !important;
}

/* SVG icons within stat boxes and meta cards */
.inbound-scan-page .stat-box svg,
.inbound-scan-page .session-meta-card svg {
  width: 14px !important;
  height: 14px !important;
}

/* Tighten grid gaps for compactness */
.inbound-scan-page .progress-stats-compact {
  gap: 0.5rem !important;
}
.inbound-scan-page .session-meta-grid {
  gap: 0.5rem !important;
}

/* filter-section / filter-section-modern inside step 1 */
.inbound-scan-page .filter-section,
.inbound-scan-page .filter-section-modern {
  background: rgba(255, 255, 255, 0.035) !important;
  border: 1px solid rgba(255, 255, 255, 0.07) !important;
  box-shadow: none !important;
}

/* session-context-chip: subtle dark pill */
.inbound-scan-page .session-context-chip {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  color: rgba(226, 232, 240, 0.88) !important;
}

/* ── High-contrast text inside session-controls ─────────────────── */

/* Status badge: "Ready to Start / Active / Paused" */
.inbound-scan-page .session-status {
  color: var(--tx-color-cyan-300) !important;
  background: rgba(76, 201, 240, 0.14) !important;
  border: 1px solid rgba(76, 201, 240, 0.28) !important;
  font-weight: 700 !important;
}

/* "Tracking", "Client" meta labels — readable muted */
.inbound-scan-page .session-meta-label {
  color: rgba(186, 210, 235, 0.80) !important;
  font-size: 0.65rem !important;
  margin-bottom: 0.1rem !important;
}

/* TRK number, client name */
.inbound-scan-page .session-meta-card strong {
  color: var(--tx-color-slate-50) !important;
  font-size: 0.85rem !important;
}

/* ── Elapsed-time meta card ────────────────────────────────────── */

/* Cyan border accent on the elapsed card to distinguish it from plain
   Tracking / Client cards at a glance */
.inbound-scan-page .session-meta-card-elapsed {
  border-color: rgba(34, 211, 238, 0.30) !important;
  background: rgba(34, 211, 238, 0.06) !important;
}

/* Value text: bright cyan, monospaced so digits don't jump width */
.inbound-scan-page .session-elapsed-value {
  color: var(--tx-color-cyan-400) !important;
  font-size: 0.92rem !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: 0.02em !important;
  transition: color 0.3s ease !important;
}

/* Subtle opacity pulse while the session is active (added via JS class) */
@keyframes elapsed-pulse {
  0%   { opacity: 1;    }
  50%  { opacity: 0.72; }
  100% { opacity: 1;    }
}

.inbound-scan-page .session-elapsed-value.is-ticking {
  animation: elapsed-pulse 2s ease-in-out infinite !important;
}

/* When session is not yet started, dim the dash placeholder */
.inbound-scan-page .session-elapsed-value:not(.is-ticking) {
  color: rgba(34, 211, 238, 0.40) !important;
}

/* Stat numbers */
.inbound-scan-page .stat-value {
  color: var(--tx-color-white) !important;
  font-size: 1.1rem !important;
  line-height: 1.2 !important;
}

/* Stat labels */
.inbound-scan-page .stat-label {
  color: rgba(186, 210, 235, 0.80) !important;
  font-size: 0.65rem !important;
  margin-top: 0.15rem !important;
}

/* Kicker labels ("Operational snapshot", etc.) */
.inbound-scan-page #session-controls .section-kicker {
  color: var(--tx-color-cyan-300) !important;
  font-weight: 700 !important;
  font-size: 0.65rem !important;
  margin-bottom: 0.15rem !important;
}

/* Section titles */
.inbound-scan-page #session-controls .section-title {
  color: var(--tx-color-white) !important;
}

/* Section subtitles */
.inbound-scan-page #session-controls .section-subtitle {
  color: rgba(186, 210, 235, 0.80) !important;
}

/* Ancillary billing hint text */
.inbound-scan-page .ancillary-billing-hint {
  background: rgba(255, 255, 255, 0.035) !important;
  color: rgba(203, 213, 225, 0.80) !important;
  border: 1px solid rgba(255, 255, 255, 0.07) !important;
}

/* workflow-step-card: make sure the card itself is never white */
.inbound-scan-page .workflow-step-card {
  background: rgba(7, 12, 24, 0.72) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* ── Section-Specific Background Tints ────────────────────────── */
/* Step 1 — Selection: Deep Amber */
.inbound-scan-page #workflow-step-1 {
  background: linear-gradient(
    160deg,
    rgba(245, 158, 11, 0.09) 0%,
    rgba(217, 119, 6, 0.04) 100%
  ) !important;
  border: 1px solid rgba(245, 158, 11, 0.14) !important;
}

/* Step 2 — Scan to Receive: Deep Cyan / Emerald */
.inbound-scan-page #workflow-step-2 {
  background: linear-gradient(
    160deg,
    rgba(34, 211, 238, 0.08) 0%,
    rgba(52, 211, 153, 0.04) 100%
  ) !important;
  border: 1px solid rgba(34, 211, 238, 0.14) !important;
}

/* Step 3 — Route + Record: Deep Violet */
.inbound-scan-page #workflow-step-3 {
  background: linear-gradient(
    160deg,
    rgba(139, 92, 246, 0.09) 0%,
    rgba(167, 139, 250, 0.04) 100%
  ) !important;
  border: 1px solid rgba(139, 92, 246, 0.14) !important;
}

/* Step 4 — Finalize: Deep Indigo / Navy */
.inbound-scan-page #workflow-step-4 {
  background: linear-gradient(
    160deg,
    rgba(99, 102, 241, 0.09) 0%,
    rgba(129, 140, 248, 0.04) 100%
  ) !important;
  border: 1px solid rgba(99, 102, 241, 0.14) !important;
}

/* workflow-step-body: transparent passthrough */
.inbound-scan-page .workflow-step-body {
  background: transparent !important;
}

/* ══════════════════════════════════════════════════════════════════
   VISUAL HIERARCHY & SECTION ACCENTS
   ══════════════════════════════════════════════════════════════════ */

/* ── Container Definition, Border Radii & Section Tints ────────── */

/* Ancillary Workbench — Cyan identity
   Background: deep navy + a whisper of cyan (≈5% opacity) so the panel
   reads "cyan-zone" at a glance while text stays Slate-50-on-near-black. */
.inbound-scan-page #ancillary-charge-workbench,
.inbound-scan-page .ancillary-workbench {
  background: linear-gradient(
    160deg,
    rgba(34, 211, 238, 0.07) 0%,   /* cyan highlight corner */
    rgba(34, 211, 238, 0.04) 100%  /* even wash over the rest */
  ) !important;
  border-top: 2px solid var(--tx-color-cyan-400) !important;
  /* Top glow keeps its prominence; side/bottom whisper adds depth */
  box-shadow:
    inset 0 6px 18px -4px rgba(34, 211, 238, 0.18),
    inset 0 0 0 1px rgba(34, 211, 238, 0.08) !important;
  border-radius: 3px !important;
}

/* Scan to Receive — Emerald identity */
.inbound-scan-page #expected-inventory-section,
.inbound-scan-page .expected-inventory-section {
  background: linear-gradient(
    160deg,
    rgba(52, 211, 153, 0.16) 0%,
    rgba(52, 211, 153, 0.09) 100%
  ) !important;
  border-top: 3px solid var(--tx-color-emerald-400) !important;
  box-shadow:
    inset 0 6px 22px -4px rgba(52, 211, 153, 0.40),
    inset 0 0 0 1px rgba(52, 211, 153, 0.28) !important;
  border-radius: 12px !important;
}

/* Recent Scans — Amber identity */
.inbound-scan-page .recent-scans {
  background: linear-gradient(
    160deg,
    rgba(245, 158, 11, 0.14) 0%,
    rgba(245, 158, 11, 0.07) 100%
  ) !important;
  border-top: 3px solid var(--tx-color-amber-500) !important;
  box-shadow:
    inset 0 6px 22px -4px rgba(245, 158, 11, 0.36),
    inset 0 0 0 1px rgba(245, 158, 11, 0.25) !important;
  border-radius: 12px !important;
}

/* ── Interactive Elements — modern 8px rounded corners ─────────── */
.inbound-scan-page .ancillary-workbench .btn,
.inbound-scan-page .ancillary-workbench .form-input,
.inbound-scan-page .ancillary-workbench .service-charge-select,
.inbound-scan-page .ancillary-workbench .service-charge-input,
.inbound-scan-page .ancillary-workbench .service-charge-add-btn,
.inbound-scan-page .expected-inventory-section .inventory-filter-input,
.inbound-scan-page .recent-scans .btn {
  border-radius: 8px !important;
}
/* Action buttons in the table use their own 8px radius defined above */

/* ── Typography & Hierarchy ────────────────────────────────────── */
.inbound-scan-page .ancillary-workbench .section-title,
.inbound-scan-page .expected-inventory-section .section-title,
.inbound-scan-page .recent-scans .recent-scans-title {
  color: var(--tx-color-slate-50) !important; /* Slate-50 */
}

/* Kicker Accents */
.inbound-scan-page .ancillary-workbench .section-kicker {
  color: var(--tx-color-cyan-400) !important; /* Cyan */
}
.inbound-scan-page .expected-inventory-section .section-kicker {
  color: var(--tx-color-emerald-400) !important; /* Emerald */
}
.inbound-scan-page .recent-scans .section-kicker {
  color: var(--tx-color-amber-500) !important; /* Amber */
}

/* ── Table Headers Accent ──────────────────────────────────────── */
.inbound-scan-page .expected-inventory-table thead th {
  color: var(--tx-color-emerald-400) !important; /* Emerald */
  border-bottom: 1px solid rgba(52, 211, 153, 0.3) !important;
}

/* ── Input Glows based on Section Accent ───────────────────────── */
/* Cyan */
.inbound-scan-page .ancillary-workbench .form-input:focus,
.inbound-scan-page .ancillary-workbench .service-charge-select:focus,
.inbound-scan-page .ancillary-workbench .service-charge-input:focus,
.inbound-scan-page .ancillary-workbench .btn:focus {
  border-color: rgba(34, 211, 238, 0.6) !important;
  box-shadow: 0 0 0 4px rgba(34, 211, 238, 0.14) !important;
}
.inbound-scan-page .ancillary-workbench .btn:hover {
  border-color: rgba(34, 211, 238, 0.8) !important;
  box-shadow: 0 0 0 4px rgba(34, 211, 238, 0.2) !important;
}

/* Emerald */
.inbound-scan-page .expected-inventory-section .inventory-filter-input:focus,
.inbound-scan-page .expected-inventory-section .btn:focus {
  border-color: rgba(52, 211, 153, 0.6) !important;
  box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.14) !important;
}
.inbound-scan-page .expected-inventory-section .btn:hover {
  border-color: rgba(52, 211, 153, 0.8) !important;
  box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.2) !important;
}

/* Amber */
.inbound-scan-page .recent-scans .btn:focus {
  border-color: rgba(245, 158, 11, 0.6) !important;
  box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.14) !important;
}
.inbound-scan-page .recent-scans .btn:hover {
  border-color: rgba(245, 158, 11, 0.8) !important;
  box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.2) !important;
}


/* ── Show More / Show Less Toggle ──────────────────────────────── */
.inbound-scan-page .btn-inventory-show-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(52, 211, 153, 0.16) !important;
  color: var(--tx-color-emerald-200) !important;
  border: 1px solid rgba(52, 211, 153, 0.50) !important;
  padding: var(--tx-space-3) var(--tx-space-8) !important;
  font-size: var(--tx-text-sm) !important;
  font-weight: var(--tx-weight-black) !important;
  letter-spacing: 0.05em !important;
  transition: all var(--tx-duration-slow) var(--tx-ease-out) !important;
  border-radius: var(--tx-radius-control) !important;
  box-shadow: 0 0 12px rgba(52, 211, 153, 0.22) !important;
}

.inbound-scan-page .btn-inventory-show-more:hover {
  background: rgba(52, 211, 153, 0.32) !important;
  color: var(--tx-color-emerald-50) !important;
  border-color: rgba(52, 211, 153, 0.85) !important;
  box-shadow: 0 0 24px rgba(52, 211, 153, 0.55), 0 0 0 1px rgba(52, 211, 153, 0.50) !important;
  transform: translateY(-1px) !important;
}

/* ── Table Headers final accent (overrides earlier rule) ─────── */
.inbound-scan-page .expected-inventory-table thead th {
  color: var(--tx-color-emerald-300) !important;
  border-bottom: 2px solid var(--tx-color-border-strong) !important;
  text-shadow: var(--tx-text-shadow-emerald) !important;
}

/* ══════════════════════════════════════════════════════════════════
   ROW ENTRY ANIMATION — subtle fade-slide for dynamism
   ══════════════════════════════════════════════════════════════════ */
@keyframes ptx-row-in {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.inbound-scan-page .expected-inventory-table tbody tr {
  animation: ptx-row-in var(--tx-duration-slow) var(--tx-ease-out) both !important;
}

/* Stagger the first 8 rows for a cascading entrance effect */
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(1) { animation-delay: 0.03s !important; }
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(2) { animation-delay: 0.07s !important; }
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(3) { animation-delay: 0.11s !important; }
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(4) { animation-delay: 0.15s !important; }
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(5) { animation-delay: 0.19s !important; }
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(6) { animation-delay: 0.22s !important; }
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(7) { animation-delay: 0.25s !important; }
.inbound-scan-page .expected-inventory-table tbody tr:nth-child(8) { animation-delay: 0.27s !important; }

/* ── Inventory Filter Input: emerald focus ring ─────────────── */
.inbound-scan-page .inventory-filter-input-wrap .inventory-filter-input {
  border-radius: var(--tx-radius-md) !important;
  border: 1px solid rgba(52, 211, 153, 0.50) !important;
  background: rgba(7, 20, 35, 0.95) !important;
  color: var(--tx-color-text-strong) !important;
}
.inbound-scan-page .inventory-filter-input-wrap .inventory-filter-input:focus {
  border-color: rgba(52, 211, 153, 0.95) !important;
  box-shadow: var(--tx-focus-ring) !important;
  outline: none !important;
}

/* ── Inventory control bar: stronger definition ─────────────── */
.inbound-scan-page .inventory-control-bar {
  background: rgba(11, 22, 40, 0.95) !important;
  border: 1px solid rgba(52, 211, 153, 0.45) !important;
  border-radius: var(--tx-radius-panel) !important;
  box-shadow: 0 0 16px rgba(52, 211, 153, 0.18) !important;
}

/* ── "Show More" container: align with new card border ───────── */
#inventory-show-more-container {
  border-top: 1px solid rgba(52, 211, 153, 0.45) !important;
  background: rgba(11, 22, 40, 0.92) !important;
  border-radius: 0 0 var(--tx-radius-table) var(--tx-radius-table) !important;
}

/* ==========================================================================
   HYBRID LIST REDESIGN (Premium Glass Blocks)
   ========================================================================== */

.inbound-scan-page .inventory-list-container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1rem 0;
}

.inbound-scan-page .inventory-item-block {
    display: flex;
    flex-direction: column;
    padding: 1.25rem;
    background: rgba(4, 10, 24, 0.82);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    box-shadow: 0 6px 28px rgba(0, 0, 0, 0.45);
}

.inbound-scan-page .inventory-item-block:hover {
    background: rgba(6, 14, 32, 0.92);
    border-color: rgba(6, 182, 212, 0.45);
    box-shadow: 0 0 30px rgba(6, 182, 212, 0.18);
    transform: translateY(-2px);
}

.inbound-scan-page .inventory-item-block::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: transparent;
    transition: background 0.3s ease, box-shadow 0.3s ease;
}

.inbound-scan-page .inventory-item-block:hover::before {
    background: #06b6d4;
    box-shadow: 0 0 10px #06b6d4;
}

.inbound-scan-page .item-main-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
}

.inbound-scan-page .item-info-group {
    flex: 1;
}

.inbound-scan-page .item-sku-hero {
    font-size: 1.35rem;
    font-weight: 850;
    color: #fff;
    letter-spacing: -0.02em;
    margin-bottom: 0.2rem;
    display: block;
    font-family: 'Space Grotesk', sans-serif;
}

.inbound-scan-page .item-name-sub {
    font-size: 0.95rem;
    color: rgba(226, 232, 240, 0.65);
    line-height: 1.4;
    display: block;
    max-width: 600px;
}

.inbound-scan-page .item-meta-row {
    margin-top: 1.15rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.inbound-scan-page .item-codes {
    display: flex;
    gap: 0.65rem;
    align-items: center;
}

.inbound-scan-page .item-code-tag {
    font-family: var(--tx-font-mono, monospace);
    font-size: 0.7rem;
    background: rgba(255, 255, 255, 0.07);
    color: rgba(186, 230, 253, 0.9);
    padding: 3px 10px;
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    letter-spacing: 0.02em;
}

.inbound-scan-page .item-metrics-pills {
    display: flex;
    gap: 0.65rem;
    align-items: center;
}

.inbound-scan-page .metric-pill {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 4px 12px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    font-size: 0.8rem;
}

.inbound-scan-page .metric-label {
    color: rgba(226, 232, 240, 0.45);
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.inbound-scan-page .metric-value {
    color: #fff;
    font-weight: 700;
}

.inbound-scan-page .metric-pill.discrepancy-positive {
    background: rgba(16, 185, 129, 0.12);
    border-color: rgba(16, 185, 129, 0.25);
}
.inbound-scan-page .metric-pill.discrepancy-positive .metric-value { color: #34d399; }

.inbound-scan-page .metric-pill.discrepancy-negative {
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.25);
}
.inbound-scan-page .metric-pill.discrepancy-negative .metric-value { color: #f87171; }

.inbound-scan-page .item-right-group {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1rem;
    min-width: 220px;
}

.inbound-scan-page .item-status-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
}

/* Qty input then action buttons — left to right workflow order */
.inbound-scan-page .item-actions-inline {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.inbound-scan-page .item-distribution-hint {
    margin-top: 0.75rem;
}

.inbound-scan-page .inventory-item-block.item-fully-processed {
    opacity: 1;
    background: rgba(4, 10, 24, 0.82);
}

.inbound-scan-page .inventory-item-block.item-fully-processed:hover {
    opacity: 1;
    background: rgba(6, 14, 32, 0.92);
    border-color: rgba(6, 182, 212, 0.45);
    box-shadow: 0 0 30px rgba(6, 182, 212, 0.18);
}

.inbound-scan-page .item-bin-assignments {
    margin-top: 0.5rem;
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.inbound-scan-page .bin-tag {
    font-size: 0.7rem;
    color: #93c5fd;
    display: flex;
    align-items: center;
    gap: 4px;
}

/* ---------- Action Buttons — transparent center, colored outline ---------- */

.inbound-scan-page .item-action-buttons {
    display: flex;
    gap: 0.7rem;
    flex-wrap: wrap;
}

.inbound-scan-page .item-action-buttons .btn-send-to-bin,
.inbound-scan-page .item-action-buttons .btn-send-to-inventory {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.55rem 1.15rem;
    border-radius: 12px;
    font-size: 0.82rem;
    font-weight: 700;
    cursor: pointer;
    letter-spacing: 0.02em;
    white-space: nowrap;
    background: transparent;
    transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

.inbound-scan-page .item-action-buttons .btn-send-to-bin svg,
.inbound-scan-page .item-action-buttons .btn-send-to-inventory svg {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
}

/* ---- Send to Bin — cobalt glass accent ---- */

.inbound-scan-page .item-action-buttons .btn-send-to-bin {
    background: rgba(77, 123, 255, 0.10);
    border: 1.5px solid rgba(77, 123, 255, 0.42);
    color: #f1f5ff;
    box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.04);
}
.inbound-scan-page .item-action-buttons .btn-send-to-bin:hover {
    background: rgba(43, 229, 255, 0.14);
    border-color: rgba(43, 229, 255, 0.48);
    color: #f1f5ff;
    box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.08);
}
.inbound-scan-page .item-action-buttons .btn-send-to-bin:active {
    transform: scale(0.97);
}

/* ---- Send to Storage — aqua glass positive accent ---- */

.inbound-scan-page .item-action-buttons .btn-send-to-inventory {
    background: rgba(87, 232, 200, 0.10);
    border: 1.5px solid rgba(87, 232, 200, 0.40);
    color: #f1f5ff;
    box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.04);
}
.inbound-scan-page .item-action-buttons .btn-send-to-inventory:hover {
    background: rgba(87, 232, 200, 0.16);
    border-color: rgba(159, 255, 168, 0.42);
    color: #f1f5ff;
    box-shadow: inset 0 1px 0 rgba(241, 245, 255, 0.08);
}
.inbound-scan-page .item-action-buttons .btn-send-to-inventory:active {
    transform: scale(0.97);
}

/* ---------- Grid View — compact horizontal rows ---------- */

.inbound-scan-page .inventory-list-container.view-simple {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.inbound-scan-page .inventory-list-container.view-simple .inventory-item-block {
    padding: 0.65rem 1rem;
    border-radius: 12px;
}

/* Single horizontal row: [info] [pills] [qty + buttons] */
.inbound-scan-page .inventory-list-container.view-simple .item-main-row {
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex-wrap: nowrap;
}

/* Left: SKU + product name — fixed width, no overflow */
.inbound-scan-page .inventory-list-container.view-simple .item-info-group {
    flex: 0 0 210px;
    min-width: 0;
    overflow: hidden;
}

.inbound-scan-page .inventory-list-container.view-simple .item-sku-hero {
    font-size: 0.92rem;
    margin-bottom: 0.1rem;
}

.inbound-scan-page .inventory-list-container.view-simple .item-name-sub {
    font-size: 0.72rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

/* Qty pills inline in the center */
.inbound-scan-page .inventory-list-container.view-simple .item-meta-row {
    flex: 1;
    margin-top: 0;
    flex-wrap: nowrap;
    gap: 0.5rem;
}

/* Hide ASIN/UPC codes and extra details */
.inbound-scan-page .inventory-list-container.view-simple .item-codes,
.inbound-scan-page .inventory-list-container.view-simple .item-distribution-hint,
.inbound-scan-page .inventory-list-container.view-simple .item-bin-assignments {
    display: none;
}

/* Right: status + qty input + buttons — all inline */
.inbound-scan-page .inventory-list-container.view-simple .item-right-group {
    flex-direction: row;
    align-items: center;
    min-width: unset;
    flex-shrink: 0;
    gap: 0.65rem;
}

.inbound-scan-page .inventory-list-container.view-simple .item-status-actions {
    flex-direction: row;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.5rem;
}

.inbound-scan-page .inventory-list-container.view-simple .item-action-buttons {
    flex-wrap: nowrap;
}

/* Compact qty input */
.inbound-scan-page .inventory-list-container.view-simple .expected-inventory-qty-stack {
    width: auto;
}

.inbound-scan-page .inventory-list-container.view-simple .expected-inventory-qty-input {
    width: 118px;
    max-width: 118px;
}

/* ── Grid View: brighter text + larger icons ──────────────────────────── */

/* SKU: slightly bigger, full cyan brightness */
.inbound-scan-page .inventory-list-container.view-simple .item-sku-hero {
    font-size: 1.05rem;
    color: var(--tx-color-cyan-300, #67e8f9);
    text-shadow: 0 0 10px rgba(56, 189, 248, 0.35);
}

/* Product name: brighter and a touch larger */
.inbound-scan-page .inventory-list-container.view-simple .item-name-sub {
    font-size: 0.82rem;
    color: rgba(226, 232, 240, 0.88);
}

/* Metric label: up from dim 45% to readable 75% */
.inbound-scan-page .inventory-list-container.view-simple .metric-label {
    font-size: 0.7rem;
    color: rgba(186, 230, 253, 0.75);
}

/* Metric value: a hair larger + full white */
.inbound-scan-page .inventory-list-container.view-simple .metric-value {
    font-size: 0.9rem;
    color: #fff;
}

/* Status badge: slightly larger text */
.inbound-scan-page .inventory-list-container.view-simple .status-badge {
    font-size: 0.82rem;
}

/* Action button text: up from 0.82rem */
.inbound-scan-page .inventory-list-container.view-simple .item-action-buttons .btn-send-to-bin,
.inbound-scan-page .inventory-list-container.view-simple .item-action-buttons .btn-send-to-inventory {
    font-size: 0.88rem;
}

/* Icons: up from 15px to 19px */
.inbound-scan-page .inventory-list-container.view-simple .item-action-buttons .btn-send-to-bin svg,
.inbound-scan-page .inventory-list-container.view-simple .item-action-buttons .btn-send-to-inventory svg {
    width: 19px;
    height: 19px;
}

/* ---------- Card View — full glass blocks with all detail ---------- */

.inbound-scan-page .inventory-list-container.view-expanded {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ════════════════════════════════════════════════════════════════════
   CARD VIEW — large, vibrant, full-space layout
   Bigger fonts, larger icons, glanceable metrics. Grid view untouched.
   ════════════════════════════════════════════════════════════════════ */

.inbound-scan-page .view-expanded .inventory-item-block {
    padding: 2rem 2.25rem;
    border-radius: 24px;
}

.inbound-scan-page .view-expanded .inventory-item-block::before {
    width: 5px;
}

.inbound-scan-page .view-expanded .item-main-row {
    gap: 2.5rem;
}

/* ── Identity: big SKU + readable product name ──────────────────── */
.inbound-scan-page .view-expanded .item-sku-hero {
    font-size: 2rem;
    line-height: 1.1;
    margin-bottom: 0.5rem;
    text-shadow: 0 0 18px rgba(56, 189, 248, 0.25);
}

.inbound-scan-page .view-expanded .item-name-sub {
    font-size: 1.2rem;
    line-height: 1.5;
    color: rgba(226, 232, 240, 0.82);
    max-width: 720px;
}

/* ── Meta row: more air ─────────────────────────────────────────── */
.inbound-scan-page .view-expanded .item-meta-row {
    margin-top: 1.6rem;
    gap: 2rem;
}

/* ── Code chips: legible, not tiny ──────────────────────────────── */
.inbound-scan-page .view-expanded .item-codes {
    gap: 0.85rem;
}

.inbound-scan-page .view-expanded .item-code-tag {
    font-size: 0.92rem;
    padding: 7px 16px;
    border-radius: 10px;
}

/* ── Metric pills: large, glanceable stacked numbers ────────────── */
.inbound-scan-page .view-expanded .item-metrics-pills {
    gap: 1rem;
}

.inbound-scan-page .view-expanded .metric-pill {
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.7rem 1.4rem;
    border-radius: 18px;
    min-width: 88px;
}

.inbound-scan-page .view-expanded .metric-label {
    font-size: 0.82rem;
    letter-spacing: 0.08em;
}

.inbound-scan-page .view-expanded .metric-value {
    font-size: 1.85rem;
    font-weight: 800;
    line-height: 1;
    font-family: 'Space Grotesk', sans-serif;
}

/* ── Distribution + bin hints ───────────────────────────────────── */
.inbound-scan-page .view-expanded .item-distribution-hint .item-code-tag {
    font-size: 0.95rem;
    padding: 7px 16px;
}

.inbound-scan-page .view-expanded .item-bin-assignments {
    margin-top: 0.85rem;
    gap: 0.75rem;
}

.inbound-scan-page .view-expanded .bin-tag {
    font-size: 0.95rem;
    gap: 7px;
}

.inbound-scan-page .view-expanded .bin-tag svg {
    width: 18px !important;
    height: 18px !important;
}

/* ── Right column: status, actions, qty ─────────────────────────── */
.inbound-scan-page .view-expanded .item-right-group {
    gap: 1.4rem;
    min-width: 280px;
}

.inbound-scan-page .view-expanded .item-status-actions {
    gap: 1.25rem;
}

.inbound-scan-page .view-expanded .status-badge {
    font-size: 1rem;
    padding: 0.55rem 1.4rem;
    letter-spacing: 0.02em;
}

/* ── Action buttons: large + bold icons ─────────────────────────── */
.inbound-scan-page .view-expanded .item-action-buttons {
    gap: 0.9rem;
}

.inbound-scan-page .view-expanded .item-action-buttons .btn-send-to-bin,
.inbound-scan-page .view-expanded .item-action-buttons .btn-send-to-inventory {
    font-size: 1rem;
    padding: 0.8rem 1.6rem;
    border-radius: 14px;
    border-width: 2px;
    gap: 0.6rem;
}

.inbound-scan-page .view-expanded .item-action-buttons .btn-send-to-bin svg,
.inbound-scan-page .view-expanded .item-action-buttons .btn-send-to-inventory svg {
    width: 24px;
    height: 24px;
}

/* ── Quantity input: large, easy target ─────────────────────────── */
.inbound-scan-page .view-expanded .expected-inventory-qty-stack {
    width: auto;
}

.inbound-scan-page .view-expanded .expected-inventory-qty-input {
    box-sizing: border-box;
    width: 150px;
    max-width: 150px;
    min-height: 54px;
    padding: 12px 16px;
    border-radius: 14px;
    border: 1px solid rgba(148, 163, 184, 0.28);
    background: rgba(15, 23, 42, 0.55);
    color: var(--tx-color-slate-50);
    font-size: 1.35rem;
    font-weight: 800;
    text-align: center;
    font-variant-numeric: tabular-nums;
    appearance: textfield;
    -moz-appearance: textfield;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.inbound-scan-page .view-expanded .expected-inventory-qty-input::-webkit-outer-spin-button,
.inbound-scan-page .view-expanded .expected-inventory-qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.inbound-scan-page .view-expanded .expected-inventory-qty-input::placeholder {
    color: rgba(148, 163, 184, 0.6);
    font-weight: 600;
}

.inbound-scan-page .view-expanded .expected-inventory-qty-input:hover {
    border-color: rgba(192, 132, 252, 0.45);
    background: rgba(15, 23, 42, 0.7);
}

.inbound-scan-page .view-expanded .expected-inventory-qty-input:focus {
    outline: none;
    border-color: rgba(168, 85, 247, 0.8);
    background: rgba(15, 23, 42, 0.85);
    box-shadow: 0 0 0 4px rgba(168, 85, 247, 0.18);
}
