#logisticsOrdersMode { margin-bottom:0; }
.sales-mode-tab { white-space:nowrap; }
.sales-mode { padding:20px; border:1px solid #34415a; border-radius:18px; background:#151c2a; color:#f8fafc; box-shadow:0 12px 28px rgba(0,0,0,.22); }
.sales-mode h2,.sales-mode h3,.sales-mode p { margin-top:0; }.sales-mode p { color:#b8c2d5; }
.sales-add { display:grid; grid-template-columns:1fr auto; gap:10px; margin:16px 0; }.sales-add .pns-fixed-input { min-height:54px; background:#101725; border-color:#53617b; color:#f8fafc; }
.sales-draft-list,.sales-progress { display:grid; gap:8px; margin:14px 0; }.sales-draft-list article,.sales-progress > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px; border:1px solid #34415a; border-radius:12px; background:#1d2636; }.sales-draft-list article div,.sales-progress > div { display:grid; gap:3px; }.sales-draft-list span,.sales-draft-list small,.sales-progress span { color:#b8c2d5; }.sales-progress > div.done { border-color:#4f9b79; background:#193227; }
.sales-current { padding:18px; border:2px solid #e9294f; border-radius:16px; background:#242f43; text-align:center; }.sales-current > span { display:block; color:#ffb4c1; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }.sales-current > strong { display:block; margin:6px 0; font-size:clamp(2rem,8vw,3.7rem); }.sales-current > b { font-size:1.55rem; color:#ffe0a1; }.sales-current input { margin-top:12px; }.sales-complete { text-align:center; padding:18px; border:2px solid #4f9b79; border-radius:16px; background:#193227; }.sales-complete > strong { font-size:2.4rem; }
.sales-management-card { margin-bottom:16px; }.sales-create-head h3 { margin:0 0 5px; }.sales-create-head p { margin:0; }.sales-draft-row { align-items:center; }.sales-quantity { display:flex; align-items:center; gap:8px; }.sales-quantity .icon-btn { min-width:34px; min-height:34px; padding:0; font-size:21px; line-height:1; }.sales-quantity > strong { min-width:24px; text-align:center; }.sales-quantity .shelf-remove { margin-left:4px; }.sales-summary-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; margin:14px 0; }.sales-summary-grid article { min-width:0; padding:12px; border:1px solid #34415a; border-radius:12px; background:#1d2636; }.sales-summary-grid span { display:block; color:#b8c2d5; font-size:.73rem; font-weight:800; line-height:1.25; }.sales-summary-grid strong { display:block; margin-top:5px; font-size:1.55rem; }.sales-header-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.sales-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(170px,.42fr) auto; align-items:end; gap:10px; margin:14px 0; }.sales-filters label { display:grid; gap:5px; min-width:0; }.sales-filters label > span,.sales-order-lines > span { color:#b8c2d5; font-size:.75rem; font-weight:850; }.sales-filters input,.sales-filters select { min-width:0; }.sales-order-list { display:grid; gap:10px; }.sales-order-row { padding:14px; border:1px solid #34415a; border-radius:13px; background:#1d2636; }.sales-order-head,.sales-order-foot { display:flex; justify-content:space-between; align-items:center; gap:10px; }.sales-order-head > div { display:grid; gap:3px; min-width:0; }.sales-order-head span,.sales-order-foot small { color:#b8c2d5; }.sales-status { flex:0 0 auto; border:1px solid #53617b; border-radius:999px; padding:5px 9px; color:#dbe5f7; font-size:.74rem; white-space:nowrap; }.sales-status-confirmed { border-color:#4f9b79; background:#193227; color:#b8ead1; }.sales-status-sold { border-color:#567cb2; background:#1b2d49; color:#c9dcff; }.sales-status-cancelled { border-color:#824358; color:#ffc0cf; }.sales-status-in_preparation { border-color:#a78546; background:#352b17; color:#ffe1a0; }.sales-order-lines { margin:11px 0; padding:10px 12px; border-radius:10px; background:#151c2a; }.sales-order-lines p { margin:5px 0 0; line-height:1.55; font-weight:700; }.sales-order-foot { border-top:1px solid #34415a; padding-top:10px; }.sales-legacy-note { color:#b8ead1 !important; }
.logistics-history-filters .history-search-primary { order:-2; grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:10px; }.logistics-history-filters .history-search-primary > span { grid-column:1 / -1; }.logistics-history-filters .history-search-primary input { min-width:0; }.history-advanced-filters { grid-column:1 / -1; border:1px solid #34415a; border-radius:12px; padding:0 12px 12px; background:#151c2a; }.history-advanced-filters summary { cursor:pointer; padding:12px 0; color:#c7d2e8; font-weight:850; }.history-advanced-filters[open] { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }.history-advanced-filters[open] summary { grid-column:1 / -1; }.history-advanced-filters label { display:grid; gap:5px; }.logistics-history-exports { margin:0 0 14px; justify-content:flex-start; }.logistics-history-exports .btn { white-space:nowrap; }
.audit-mode-tab { white-space:nowrap; }.logistics-audit { margin-bottom:0; }.audit-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:16px 0; }.audit-summary article { min-width:0; padding:13px; border:1px solid #34415a; border-radius:12px; background:#1d2636; }.audit-summary span { display:block; color:#b8c2d5; font-size:.78rem; font-weight:800; }.audit-summary strong { display:block; margin-top:5px; font-size:1.55rem; }.audit-issues { margin-top:18px; }.audit-issues h3 { margin-bottom:10px; }

/* FUL-002A_OPERATOR_BOARD: the colour is a step, not a decorative status. */
.fulfillment-board { max-width:1080px; margin-inline:auto; }.fulfillment-board-head { align-items:flex-start; }.fulfillment-board .eyebrow { margin:0 0 5px; color:#ff6d88; font-size:.73rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }.fulfillment-board h3,.fulfillment-board h4 { margin:0; }.fulfillment-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:18px 0; padding:0; list-style:none; }.fulfillment-steps li { display:flex; min-width:0; align-items:center; gap:10px; padding:12px; border:1px solid #34415a; border-radius:13px; background:#151c2a; opacity:.72; }.fulfillment-steps li span { display:grid; flex:0 0 28px; width:28px; height:28px; place-items:center; border-radius:999px; background:#2a3850; color:#c6d3eb; font-weight:900; }.fulfillment-steps li div { display:grid; gap:2px; min-width:0; }.fulfillment-steps li b { font-size:.84rem; }.fulfillment-steps li small { color:#aebbd0; font-size:.75rem; }.fulfillment-steps .is-ready { border-color:#b68b32; background:#332a17; opacity:1; }.fulfillment-steps .is-ready span { background:#d3a52f; color:#1d1a0d; }.fulfillment-steps .is-active { border-color:#4878b7; background:#192b46; opacity:1; }.fulfillment-steps .is-active span { background:#3f7dca; color:#fff; }.fulfillment-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:14px 0 18px; }.fulfillment-metric { min-width:0; padding:13px; border:1px solid #34415a; border-radius:13px; background:#1d2636; }.fulfillment-metric span { display:block; color:#c4cede; font-size:.75rem; font-weight:850; }.fulfillment-metric strong { display:block; margin-top:4px; font-size:1.75rem; }.fulfillment-metric.tone-ready { border-color:#b68b32; background:#332a17; }.fulfillment-metric.tone-ready strong { color:#ffd66d; }.fulfillment-metric.tone-working { border-color:#4878b7; background:#192b46; }.fulfillment-metric.tone-working strong { color:#b4d3ff; }.fulfillment-metric.tone-packing { border-color:#4f9b79; background:#193227; }.fulfillment-metric.tone-packing strong { color:#b8ead1; }.fulfillment-metric.tone-issue { border-color:#a84a62; background:#351c27; }.fulfillment-metric.tone-issue strong { color:#ffafbf; }.fulfillment-queue { border:1px solid #34415a; border-radius:16px; padding:14px; background:#151c2a; }.fulfillment-queue-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:12px; }.fulfillment-queue-head p { margin:4px 0 0; color:#b8c2d5; }.fulfillment-count { display:grid; min-width:34px; height:34px; place-items:center; border:1px solid #b68b32; border-radius:999px; background:#332a17; color:#ffd66d; font-weight:900; }.fulfillment-order { padding:14px; border:1px solid #34415a; border-radius:13px; background:#1d2636; }.fulfillment-order.is-next { border-color:#b68b32; box-shadow:0 0 0 1px rgba(211,165,47,.18); }.fulfillment-order header,.fulfillment-order footer { display:flex; align-items:center; justify-content:space-between; gap:10px; }.fulfillment-order header > div { display:grid; gap:4px; }.fulfillment-order header strong { font-size:1.08rem; }.fulfillment-order time,.fulfillment-order footer small { color:#b8c2d5; font-size:.79rem; }.fulfillment-order-state { color:#ffd66d; font-size:.69rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }.fulfillment-lines { margin-block:12px; }.fulfillment-pick-sheet { border:1px solid #4878b7; border-radius:16px; padding:16px; background:#151c2a; }.fulfillment-pick-sheet > div p { margin:5px 0 0; color:#b8c2d5; }.fulfillment-pick-sheet footer { display:flex; justify-content:space-between; gap:10px; border-top:1px solid #34415a; padding-top:12px; color:#cbd6e8; font-size:.84rem; }.fulfillment-pick-sheet footer span:last-child { color:#b8ead1; font-weight:800; }
@media (max-width:760px) { .sales-summary-grid,.fulfillment-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }.sales-summary-grid article:last-child { grid-column:span 2; }.sales-filters { grid-template-columns:1fr; }.sales-filters .btn { width:100%; }.sales-header-actions { justify-content:flex-start; }.fulfillment-steps { grid-template-columns:1fr; } }
@media (max-width:620px) { .sales-mode { padding:14px; }.sales-mode-tab,.audit-mode-tab { flex:1 1 100%; }.sales-add { grid-template-columns:1fr; }.sales-draft-row,.sales-order-head,.sales-order-foot,.fulfillment-order header,.fulfillment-order footer,.fulfillment-pick-sheet footer { align-items:flex-start; flex-direction:column; }.sales-quantity { width:100%; }.sales-quantity .shelf-remove { margin-left:auto; }.logistics-history-filters .history-search-primary { grid-template-columns:1fr; }.history-advanced-filters[open] { grid-template-columns:1fr; }.logistics-history-exports { display:grid; grid-template-columns:1fr; }.logistics-history-exports .btn { text-align:center; }.audit-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* AUDIT_POSITION_AND_PNS_CARDS_CSS_V2122 */
.fulfillment-metric { appearance:none; width:100%; text-align:left; cursor:pointer; font:inherit; color:inherit; }.fulfillment-metric:hover,.fulfillment-metric.is-filtered { transform:translateY(-1px); box-shadow:0 0 0 2px rgba(248,250,252,.22); }.fulfillment-metric.tone-ready.is-filtered { box-shadow:0 0 0 2px #ffd66d; }.fulfillment-metric.tone-working.is-filtered { box-shadow:0 0 0 2px #8fc3ff; }.fulfillment-metric.tone-packing.is-filtered { box-shadow:0 0 0 2px #9fe5bf; }.fulfillment-metric.tone-issue.is-filtered { box-shadow:0 0 0 2px #ff9bb0; }.collective-route { margin:0 0 16px; border-color:#4d6a99; }.collective-shelf { margin-top:12px; border:1px solid #34415a; border-radius:13px; overflow:hidden; }.collective-shelf h5 { margin:0; padding:10px 12px; background:#202c41; color:#dce9ff; font-size:.82rem; letter-spacing:.04em; }.collective-row { display:grid; grid-template-columns:minmax(210px,1.25fr) minmax(150px,.8fr) auto; gap:12px; align-items:center; padding:11px 12px; border-top:1px solid #34415a; background:#1b2535; }.collective-row > div { display:grid; gap:3px; }.collective-row b,.picking-line > div > b { font-size:1.2rem; letter-spacing:.015em; color:#fff; }.collective-row small { color:#b8c2d5; }.collective-row span { color:#cbd8ed; font-weight:800; }.collective-row.status-in_progress,.collective-row.status-partially_picked { border-left:4px solid #4f90e4; }.collective-row.status-waiting_pick { border-left:4px solid #d3a52f; }.fulfillment-orders-by-state { border-color:#34415a; }.fulfillment-pns-input { min-height:52px; border-color:#7b91bc !important; }.fulfillment-pns-input span { min-width:66px; font-size:1.05rem; }.fulfillment-pns-input input { min-width:0; font-size:1.15rem; font-weight:900; letter-spacing:.04em; }
.fulfillment-steps .is-packed { border-color:#4f9b79; background:#193227; }.fulfillment-steps .is-packed span { background:#4f9b79; color:#fff; }.fulfillment-actions { display:flex; flex-wrap:wrap; gap:8px; }.fulfillment-sheet-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }.pick-progress { flex:0 0 auto; padding:8px 10px; border:1px solid #4878b7; border-radius:999px; background:#192b46; color:#c8ddff; font-size:.82rem; }.picking-lines { display:grid; gap:9px; margin:14px 0; }.picking-line { display:grid; grid-template-columns:minmax(180px,1fr) minmax(210px,1.3fr) auto; align-items:center; gap:12px; padding:12px; border:1px solid #34415a; border-radius:12px; background:#1d2636; }.picking-line > div { display:grid; gap:3px; }.picking-line small { color:#b8c2d5; }.picking-route { padding-left:12px; border-left:2px solid #4878b7; font-size:.82rem; color:#c4cede; }.picking-route span { display:block; }.picking-route b { color:#f4f7fc; }.picking-line > strong { min-width:52px; padding:6px 8px; border-radius:999px; background:#192b46; color:#c8ddff; text-align:center; }.picking-line.is-done { border-color:#4f9b79; background:#193227; }.picking-line.is-done .picking-route { border-color:#4f9b79; }.picking-line.is-done > strong { background:#2e775b; color:#f1fff7; }.fulfillment-scan-panel { display:grid; gap:14px; margin-top:14px; padding:16px; border:1px solid #4878b7; border-radius:16px; background:#192b46; }.fulfillment-scan-panel.is-return { border-color:#a84a62; background:#351c27; }.fulfillment-scan-panel.is-packing { border-color:#4f9b79; background:#193227; }.fulfillment-scan-panel h4,.fulfillment-scan-panel p { margin:0; }.fulfillment-scan-panel p { margin-top:4px; color:#c8d4e8; }.fulfillment-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; }.fulfillment-form input { min-height:52px; border-color:#7084aa; background:#101725; color:#fff; font-size:1rem; font-weight:750; }.return-form { grid-template-columns:repeat(2,minmax(0,1fr)) auto; align-items:end; }.return-form label { display:grid; gap:5px; color:#e3b7c1; font-size:.75rem; font-weight:850; }.fulfillment-scan-panel .fulfillment-actions { justify-content:flex-end; }

/* FUL-003: one shelf-first collective run, with durable per-order slots. */
.collective-wave-launch,.collective-wave-active { border-color:#4d6a99; }.collective-order-selection { display:grid; gap:8px; }.collective-order-option { display:flex; align-items:center; gap:14px; padding:15px; border:1px solid #34415a; border-radius:11px; background:#1b2535; cursor:pointer; }.collective-order-option input { width:21px; height:21px; accent-color:#e42548; }.collective-order-option span { display:grid; width:100%; gap:8px; }.collective-selection-line { display:flex; align-items:baseline; justify-content:space-between; gap:16px; }.collective-selection-line b { color:#fff; font-size:clamp(1.15rem,2.4vw,1.65rem); letter-spacing:.02em; }.collective-selection-line strong { color:#b9d5ff; font-size:clamp(.95rem,2vw,1.2rem); }.collective-state-waiting { border-left:4px solid #d3a52f; }.collective-state-in_progress { border-left:4px solid #4f90e4; }.collective-state-done { border-left:4px solid #4f9b79; background:#193227; }.collective-state-done strong { color:#b8ead1; }.collective-scan-panel { margin-top:14px; }.collective-wave-active .collective-row { grid-template-columns:minmax(210px,1.25fr) minmax(190px,1fr); }

/* FUL-004_OPERATOR_BOARD_UI: a warehouse board, not a commercial order list.
   The operator sees PNS + shelf first; order identifiers stay out of the route. */
.fulfillment-board { max-width:1160px; }
.fulfillment-board-head { padding-bottom:16px; border-bottom:1px solid #34415a; }
.fulfillment-board-head h3 { font-size:clamp(1.7rem,3vw,2.25rem); letter-spacing:-.035em; }
.fulfillment-summary { position:relative; }
.fulfillment-metric { min-height:92px; transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.fulfillment-metric span { font-size:.8rem; }
.fulfillment-metric strong { font-size:2rem; }
.collective-route { padding:0; overflow:hidden; border-width:2px; background:#121b2b; }
.collective-route > .fulfillment-queue-head { margin:0; padding:18px 18px 15px; border-bottom:1px solid #34415a; background:linear-gradient(105deg,#172742,#151c2a 70%); }
.collective-route > .fulfillment-queue-head h4 { font-size:clamp(1.28rem,2.7vw,1.65rem); }
.collective-route > .fulfillment-queue-head p { max-width:58ch; line-height:1.45; }
.collective-launch-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(235px,.32fr); gap:16px; padding:16px; }
.collective-order-selection { min-width:0; }
.collective-order-option { position:relative; align-items:flex-start; gap:13px; padding:14px 15px; border-color:#40506d; transition:border-color .16s ease, background .16s ease; }
.collective-order-option:hover { border-color:#6c91c8; background:#213048; }
.collective-order-option:has(input:checked) { border-color:#5c88c5; background:#1c304c; box-shadow:inset 3px 0 #6eb0ff; }
.collective-order-option input { flex:0 0 auto; margin-top:6px; }
.collective-order-option > span { gap:9px; }
.collective-selection-line { align-items:center; gap:14px; padding:2px 0; }
.collective-selection-line > div { display:grid; gap:3px; min-width:0; }
.collective-selection-line b { font-size:clamp(1.2rem,2.8vw,1.65rem); line-height:1.05; }
.collective-selection-line small { overflow:hidden; color:#b9c8de; font-size:.78rem; text-overflow:ellipsis; white-space:nowrap; }
.collective-selection-line strong { display:grid; flex:0 0 auto; gap:2px; min-width:72px; color:#dce9ff; font-size:clamp(1.2rem,3.1vw,1.8rem); line-height:1; text-align:right; }
.collective-selection-line strong span { color:#94a9c6; font-size:.65rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.collective-launch-action { display:grid; align-content:start; gap:8px; padding:17px; border:1px solid #5273a6; border-radius:14px; background:linear-gradient(150deg,#1d3352,#152238); }
.collective-launch-action > span { color:#abc4e8; font-size:.75rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.collective-launch-action > strong { color:#fff; font-size:clamp(1.6rem,3vw,2.15rem); line-height:1; }
.collective-launch-action > p { margin:2px 0 8px; color:#c2d1e6; font-size:.88rem; line-height:1.4; }
.collective-launch-action .btn { min-height:52px; }
.collective-active-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(310px,.42fr); gap:16px; padding:16px; }
.collective-shelf-list { display:grid; align-content:start; gap:12px; }
.collective-shelf { margin:0; border-color:#40506d; border-radius:14px; }
.collective-shelf h5 { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 14px; background:#22314a; color:#dce9ff; }
.collective-shelf h5 span { color:#afc1dc; font-size:.7rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.collective-shelf h5 b { color:#fff; font-size:1.28rem; letter-spacing:.045em; }
.collective-shelf.is-next-shelf { border:2px solid #6da6eb; box-shadow:0 0 0 3px rgba(77,144,228,.15); }
.collective-shelf.is-next-shelf h5 { background:#285481; }
.collective-shelf.is-next-shelf h5 b { font-size:clamp(1.7rem,4.5vw,2.45rem); }
.collective-row { grid-template-columns:minmax(0,1fr) auto; gap:14px; padding:14px; }
.collective-row b { font-size:clamp(1.28rem,3.3vw,1.82rem); }
.collective-row > div:last-child { min-width:118px; text-align:right; }
.collective-row > div:last-child strong { color:#d9e8ff; font-size:.95rem; }
.collective-row > div:last-child small { display:block; margin-top:3px; }
.collective-state-done { opacity:.72; }
.collective-wave-active .collective-scan-panel { position:sticky; top:14px; align-self:start; margin:0; border-width:2px; background:linear-gradient(145deg,#1b3456,#192b46); }
.collective-wave-active .fulfillment-form { grid-template-columns:1fr; }
.collective-wave-active .fulfillment-form .btn { min-height:50px; }
.fulfillment-order { padding:16px; }
.fulfillment-order header { align-items:flex-start; }
.fulfillment-primary-pns { color:#fff; font-size:clamp(1.3rem,2.7vw,1.7rem)!important; letter-spacing:.02em; }
.fulfillment-slot { display:grid; justify-items:end; gap:3px; text-align:right; }
.fulfillment-slot span { color:#aebfd9; font-size:.66rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.fulfillment-slot b { color:#fff; font-size:1rem; }
.fulfillment-detail-head h3 { font-size:clamp(1.35rem,3vw,2rem); }

@media (max-width:860px) {
  .collective-launch-layout,.collective-active-layout { grid-template-columns:1fr; }
  .collective-launch-action { grid-template-columns:1fr auto; align-items:center; }
  .collective-launch-action > p { grid-column:1/-1; }
  .collective-launch-action .btn { grid-column:1/-1; }
  .collective-wave-active .collective-scan-panel { position:static; }
}
@media (max-width:620px) {
  #view-fulfillment > .panel-head { margin-bottom:15px; }
  .fulfillment-board { padding:0; border:0; background:transparent; }
  .fulfillment-board-head { padding:0 0 14px; }
  .fulfillment-board-head .fulfillment-actions { width:100%; }
  .fulfillment-board-head .fulfillment-actions .btn { flex:1 1 auto; }
  .fulfillment-steps { display:flex; gap:7px; overflow-x:auto; margin:13px 0; padding:0 0 4px; scrollbar-width:none; }
  .fulfillment-steps::-webkit-scrollbar { display:none; }
  .fulfillment-steps li { flex:0 0 138px; min-height:58px; padding:9px; }
  .fulfillment-steps li small { display:none; }
  .fulfillment-summary { gap:8px; margin:10px 0 14px; }
  .fulfillment-metric { min-height:76px; padding:10px; }
  .fulfillment-metric span { font-size:.68rem; }
  .fulfillment-metric strong { margin-top:2px; font-size:1.62rem; }
  .collective-route > .fulfillment-queue-head { padding:15px 14px 13px; }
  .collective-route > .fulfillment-queue-head p { font-size:.85rem; }
  .collective-launch-layout,.collective-active-layout { gap:12px; padding:12px; }
  .collective-order-option { padding:13px 12px; }
  .collective-selection-line { align-items:flex-start; }
  .collective-selection-line b { font-size:1.23rem; }
  .collective-selection-line small { max-width:22ch; }
  .collective-selection-line strong { min-width:59px; font-size:1.38rem; }
  .collective-launch-action { display:grid; gap:7px; padding:14px; }
  .collective-launch-action > strong { font-size:1.7rem; }
  .collective-shelf h5 { padding:10px 12px; }
  .collective-shelf.is-next-shelf h5 b { font-size:2rem; }
  .collective-row { gap:8px; padding:12px; }
  .collective-row b { font-size:1.32rem; }
  .collective-row > div:last-child { min-width:84px; }
  .collective-row > div:last-child strong { font-size:.8rem; }
  .collective-row > div:last-child small { font-size:.68rem; }
  .fulfillment-slot { justify-items:start; text-align:left; }
  .fulfillment-order .unified-order-lines li { padding:8px 10px; }
  .fulfillment-order footer .btn { width:100%; }
}

/* PACK-001: the packing desk makes each physical parcel independently clear. */
.fulfillment-steps-four { grid-template-columns:repeat(4,minmax(0,1fr)); }.fulfillment-steps .is-next-step { border-color:#745dc1; background:#262040; opacity:1; }.fulfillment-steps .is-next-step span { background:#735ac4; color:#fff; }.packing-package-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:12px; }.packing-package { display:grid; gap:11px; padding:14px; border:1px solid #5274a8; border-radius:14px; background:#152238; }.packing-package.is-verified { border-color:#5ba37e; background:#173427; }.packing-package header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }.packing-package header > div { display:grid; gap:3px; }.packing-package header span { color:#a9c8f3; font-size:.72rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }.packing-package header strong { color:#fff; font-size:1.45rem; line-height:1.1; }.packing-package header small,.packing-package-help,.packing-carrier-note { color:#bed0e6; font-size:.78rem; line-height:1.35; }.packing-package-state { flex:0 0 auto; padding:6px 8px; border:1px solid #5783ba; border-radius:999px; background:#1b3555; color:#d6e7ff; font-size:.73rem; text-align:center; }.is-verified .packing-package-state { border-color:#59a579; background:#22533a; color:#d5ffdf; }.packing-package-tools { display:flex; align-items:center; flex-wrap:wrap; gap:8px; border-top:1px solid #3e5578; padding-top:10px; }.packing-package-tools > span { color:#c1d4ec; font-size:.76rem; font-weight:800; }.packing-scan-form { margin-top:2px; }.packing-photo-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:end; border-top:1px solid #3e5578; padding-top:10px; }.packing-photo-form label { display:grid; gap:5px; color:#d3e2f4; font-size:.76rem; font-weight:850; }.packing-photo-form input { max-width:100%; }.packing-photo-form a { align-self:center; color:#d5ffdf; font-size:.78rem; font-weight:800; }.packing-photo-form small { color:#ffd2d9; font-weight:850; }.packing-carrier-note { margin:0; border-top:1px solid #3e5578; padding-top:10px; color:#e8d49d; }

/* Internal QR: readable on a phone, useful only after normal app authentication. */
.internal-package-card { max-width:760px; margin-inline:auto; }.internal-package-card .panel-head { align-items:flex-start; }.internal-package-status { flex:0 0 auto; padding:7px 10px; border:1px solid #5ba37e; border-radius:999px; background:#193227; color:#b8ead1; font-size:.78rem; font-weight:900; }.internal-package-pns { display:grid; gap:3px; margin:18px 0 12px; padding:18px; border:2px solid #5274a8; border-radius:16px; background:#152238; text-align:center; }.internal-package-pns span { color:#a9c8f3; font-size:.75rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }.internal-package-pns strong { color:#fff; font-size:clamp(2.35rem,10vw,4.2rem); line-height:1; letter-spacing:.03em; }.internal-package-pns small { color:#c5d5eb; font-weight:800; }.internal-package-data { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; }.internal-package-data div { min-width:0; padding:12px; border:1px solid #34415a; border-radius:12px; background:#151c2a; }.internal-package-data dt { color:#aebbd0; font-size:.72rem; font-weight:850; }.internal-package-data dd { overflow-wrap:anywhere; margin:4px 0 0; color:#f5f8fc; font-weight:850; }.internal-package-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:14px; }.internal-package-missing { color:#ffe0a1; font-size:.82rem; font-weight:800; }.internal-package-privacy { margin:16px 0 0; padding-top:12px; border-top:1px solid #34415a; color:#b8c2d5; font-size:.82rem; line-height:1.45; }
.audit-summary.audit-summary-pns { grid-template-columns:repeat(5,minmax(0,1fr)); }
.audit-summary-pns article small { display:block; margin-top:5px; color:#9ca9be; font-size:.68rem; line-height:1.25; }
@media (max-width:1050px) { .audit-summary.audit-summary-pns { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:620px) { .audit-summary.audit-summary-pns { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .picking-line,.collective-row { grid-template-columns:1fr; }.collective-selection-line { align-items:flex-start; flex-direction:column; gap:4px; }.picking-route { padding:9px 0 0; border-left:0; border-top:2px solid #4878b7; }.fulfillment-sheet-head { flex-direction:column; }.fulfillment-form,.return-form { grid-template-columns:1fr; }.fulfillment-form .btn,.collective-row .btn { width:100%; } }
/* PACK-002: a real compact evidence photo is selected before the parcel can
   be closed.  The native camera chooser remains available on warehouse phones. */
.packing-print-state { color:#c1d4ec; font-size:.76rem; font-weight:800; line-height:1.35; }
.packing-print-state.printed { color:#b8ead1; }.packing-print-state.print_failed { color:#ffd2d9; }
.packing-print-state.sent_to_printer { color:#b8ead1; }
.packing-print-state.failed_or_unknown,.packing-print-state.review_required { color:#ffd2d9; }
.packing-photo-saved summary,.packing-picking-detail summary { cursor:pointer; min-height:44px; display:flex; align-items:center; color:#c6dfd4; font-weight:700; }
.packing-package-list { grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr)); }
.packing-package { min-width:0; }
@media(max-width:520px) {
  .packing-package header { flex-wrap:wrap; }
  .packing-package .fulfillment-actions,.is-packing > .fulfillment-actions { display:grid; grid-template-columns:1fr; width:100%; }
  .packing-package .btn,.is-packing > .fulfillment-actions .btn { min-height:48px; white-space:normal; text-align:center; width:100%; }
}
.packing-photo-capture { display:grid; gap:7px; }.packing-photo-capture > input { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.packing-photo-capture > label { justify-content:center; min-height:48px; border-color:#6686b7; color:#e4efff; text-align:center; cursor:pointer; }
.packing-photo-capture small { color:#bed0e6; line-height:1.35; }.packing-photo-preview { min-height:0; }
.packing-photo-preview img { display:block; width:100%; max-height:190px; object-fit:cover; border:1px solid #5879a8; border-radius:10px; background:#101725; }
.packing-photo-preview a { display:block; color:#d5ffdf; font-size:.78rem; font-weight:800; }.packing-photo-form > small { color:#ffd2d9; font-weight:850; }
@media (max-width:760px) { .fulfillment-steps-four { grid-template-columns:1fr; }.packing-photo-form { grid-template-columns:1fr; }.packing-photo-form .btn { width:100%; } }
@media (max-width:520px) { .internal-package-data { grid-template-columns:1fr; }.internal-package-actions .btn { width:100%; }.internal-package-status { align-self:flex-start; } }

/* SAL-004: protected commercial facts never appear in Fulfillment or QR views. */
.sales-customer-record { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:11px 0; padding:11px; border:1px solid #5b4a88; border-radius:12px; background:#211b35; }.sales-customer-record > div { display:grid; gap:3px; min-width:0; }.sales-customer-record span,.sales-customer-record small { color:#d2c6f5; font-size:.72rem; font-weight:800; }.sales-customer-record b { overflow-wrap:anywhere; color:#f7f4ff; font-size:.82rem; }.sales-customer-record > small { grid-column:1 / -1; padding-top:4px; border-top:1px solid #51416e; }.sales-customer-record.is-empty { display:block; color:#d2c6f5; }.sales-customer-record.is-empty p { margin:0; }
@media (max-width:760px) { .sales-customer-record { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* SAL-005: one commercial task at a time, not three dense panels at once. */
.fulfillment-order.tone-working { border-color:#4878b7; background:#192b46; }
.fulfillment-order.tone-working .fulfillment-order-state { color:#b4d3ff; }
.fulfillment-order.tone-packing { border-color:#4f9b79; background:#193227; }
.fulfillment-order.tone-packing .fulfillment-order-state { color:#b8ead1; }
.fulfillment-order.tone-shipping { border-color:#745dc1; background:#262040; }
.fulfillment-order.tone-shipping .fulfillment-order-state { color:#d5c4ff; }

/* FUL-005: compact operator navigation. One colour always means one stage. */
.fulfillment-status-strip { grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.fulfillment-status-strip .fulfillment-metric { min-height:72px; padding:10px 12px; }
.fulfillment-metric.tone-shipping { border-color:#745dc1; background:#262040; }
.fulfillment-metric.tone-shipping strong { color:#d5c4ff; }
.fulfillment-metric.tone-shipping.is-filtered { box-shadow:0 0 0 2px #c7a9ff; }
.manual-customer-form { margin:16px 0; padding:16px; border:1px solid #465673; border-radius:14px; background:#111a29; }
.manual-customer-form legend { padding:0 8px; color:#fff; font-weight:900; }
.manual-customer-form > p { margin:0 0 12px; color:#aebbd0; font-size:.82rem; }
.manual-customer-form > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.manual-customer-form label { display:grid; gap:5px; min-width:0; }
.manual-customer-form label.wide { grid-column:1/-1; }
.manual-customer-form label span { color:#c5d0e2; font-size:.75rem; font-weight:850; }

@media (max-width:620px) {
  .manual-customer-form > div { grid-template-columns:1fr; }
  .manual-customer-form label.wide { grid-column:auto; }
  .fulfillment-status-strip { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:2px 1px 8px; }
  .fulfillment-status-strip .fulfillment-metric:last-child { grid-column:1/-1; }
}
.fulfillment-order.tone-issue { border-color:#a84a62; background:#351c27; }
.fulfillment-order.tone-issue .fulfillment-order-state { color:#ffafbf; }
.fulfillment-order-lock { display:block; margin-top:10px; padding-top:10px; border-top:1px solid rgba(196,214,238,.22); color:#c8d8ef; font-size:.74rem; font-weight:800; }
.history-area-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px; }.history-area-tabs .is-selected { border-color:#d05a73; background:#321a28; color:#ffd6df; }
.sales-package-history { display:grid; gap:14px; }.sales-package-history .package-history-filters { display:grid; grid-template-columns:minmax(180px,1fr) repeat(2,minmax(130px,.55fr)) auto; gap:10px; align-items:end; }.package-history-filters label { display:grid; gap:5px; color:#b8c2d5; font-size:.76rem; font-weight:850; }.package-history-filters input,.package-history-filters select { min-width:0; }.package-history-list { display:grid; gap:10px; }.package-history-row { display:grid; grid-template-columns:112px minmax(0,1fr) auto; gap:14px; align-items:center; padding:12px; border:1px solid #34415a; border-radius:14px; background:#1b2535; }.package-history-thumb { display:grid; width:112px; height:92px; place-items:center; overflow:hidden; border:1px solid #5274a8; border-radius:10px; background:#101725; color:#b8c2d5; font-size:.76rem; font-weight:800; }.package-history-thumb img { width:100%; height:100%; object-fit:cover; }.package-history-main { display:grid; gap:5px; min-width:0; }.package-history-main strong { font-size:1.22rem; }.package-history-main span,.package-history-main small { color:#c1cce0; }.package-history-state { display:inline-flex; width:max-content; border:1px solid #4f9b79; border-radius:999px; padding:4px 8px; background:#193227; color:#b8ead1; font-size:.72rem; font-weight:900; }.package-history-state.draft { border-color:#4878b7; background:#192b46; color:#b4d3ff; }.package-history-actions { display:flex; flex-direction:column; gap:7px; }.package-history-empty { padding:18px; border:1px dashed #4b5c78; border-radius:12px; color:#b8c2d5; }
@media (max-width:760px) { .sales-package-history .package-history-filters,.package-history-row { grid-template-columns:1fr; }.package-history-thumb { width:100%; height:180px; }.package-history-actions { flex-direction:row; flex-wrap:wrap; }.package-history-actions .btn { flex:1 1 auto; } }
.sales-section-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin:0 0 16px; }.sales-section-tab { display:grid; gap:4px; min-width:0; padding:13px 14px; border:1px solid #34415a; border-radius:14px; background:#151c2a; color:#c8d3e6; cursor:pointer; text-align:left; font:inherit; }.sales-section-tab b { color:#f6f8fc; font-size:.92rem; }.sales-section-tab small { color:#aebbd0; font-size:.75rem; line-height:1.35; }.sales-section-tab:hover { border-color:#647aa4; background:#1d2636; }.sales-section-tab.is-active { border-color:#d05a73; background:#321a28; box-shadow:0 0 0 1px rgba(229,37,79,.18); }.sales-section-tab.is-active b { color:#ffd6df; }.sales-section-tab.is-active small { color:#f0b1c0; }.sales-tab-hidden { display:none !important; }
@media (max-width:760px) { .sales-section-tabs { grid-template-columns:1fr; }.sales-section-tab { grid-template-columns:auto 1fr; align-items:center; }.sales-section-tab small { grid-column:2; } }
