/* S6 stock, returns, count and party book. Shared tokens come from design-tokens.css. */
body.stock-workspace { font-family:var(--font-sans); background:var(--bg); color:var(--text); font-size:var(--type-body); line-height:1.45; --nesayo-bottom-bar:calc(76px + env(safe-area-inset-bottom,0px)); }
.stock-workspace * { box-sizing:border-box; }
.stock-workspace .wrap { width:100%; max-width:960px; padding:12px 12px 170px; min-width:0; }
.stock-workspace h1 { font-size:var(--type-heading); line-height:1.4; overflow-wrap:anywhere; }
.stock-workspace h2 { font-size:var(--type-title); margin:0 0 8px; }
.stock-workspace h3 { font-size:var(--type-control); }
.stock-workspace p { line-height:1.5; }
.stock-workspace :is(button,.btn,.action-btn,summary,input:not([type=checkbox]):not([type=radio]),select) { min-height:44px; font-family:inherit; }
.stock-workspace :is(button,.btn,.action-btn) { font-size:var(--type-body); white-space:normal; }
.stock-workspace :is(input,select,textarea) { max-width:100%; min-width:0; font-size:var(--type-control); }
.stock-workspace :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible { outline:2px solid var(--brand); outline-offset:2px; }
.stock-workspace :is(.muted,.meta,.sub,.batch-row,.banner,.empty-state p) { font-size:var(--type-body); }
.stock-workspace :is(.chip,.pill,.hint,.count,.hist,label,.med-total) { font-size:var(--type-label); }
.stock-workspace .chip { display:inline-block; padding:3px 8px; border-radius:6px; background:var(--bg); color:var(--text); border:1px solid var(--border); }
.stock-workspace .chip.available { color:var(--brand); background:var(--brand-light); }
.stock-workspace :is(.chip.held,.chip.est,.banner.warn) { background:#FFF7ED; color:#92400E; }
.stock-workspace :is(.chip.expired,.chip.reconcile,.banner.bad,.row-error) { color:#991B1B; background:#FEF2F2; }
.stock-workspace .banner.ok { color:var(--brand); background:var(--brand-light); }
.stock-workspace .row-error { padding:10px; border-radius:6px; flex-basis:100%; margin-top:8px; white-space:normal; overflow-wrap:anywhere; }
.stock-workspace .row-error:empty { display:none; }
.stock-workspace :is(.card,.med-group,.modal,.flow-banner,.am-suggest) { box-shadow:none; border-color:var(--border); }
.stock-workspace .hdr { position:sticky; display:flex; flex-wrap:wrap; background:var(--card); color:var(--text); border-bottom:1px solid var(--border); padding:8px 12px; gap:4px 12px; }
.stock-workspace .hdr h1 { flex:1 1 100%; font-size:var(--type-control); }
.stock-workspace .hdr .shop-name { font-size:var(--type-label); font-weight:400; display:inline; }
.stock-workspace .hdr a { color:var(--brand); min-height:44px; display:inline-flex; align-items:center; font-size:var(--type-body); }
.stock-workspace .hdr .stock-search { flex:1 1 100%; }
.stock-workspace .searchbox { margin:0; min-height:44px; }
.stock-workspace .stock-search label { display:block; font-weight:600; margin-bottom:3px; }
.stock-workspace .action-row { gap:8px; margin-bottom:8px; }
.stock-workspace .action-btn { border-radius:8px; padding:8px; min-width:0; }
.stock-workspace .stock-tools { margin:8px 0; border:1px solid var(--border); border-radius:8px; padding:0 10px; background:var(--card); }
.stock-workspace summary { cursor:pointer; padding:10px 0; color:var(--brand); font-weight:600; }
.stock-workspace .med-head { padding:12px; align-items:flex-start; }
.stock-workspace .batch-row { gap:8px 12px; padding:12px; overflow-wrap:anywhere; }
.stock-workspace .lot-name { flex-basis:100%; font-size:var(--type-body); }
.stock-workspace .lot-status { display:flex; flex-wrap:wrap; gap:6px; flex-basis:100%; }
.stock-workspace .lot-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 12px; width:100%; }
.stock-workspace .lot-facts span { min-width:0; overflow-wrap:anywhere; }
.stock-workspace .lot-facts small { display:block; color:var(--text-2); font-size:var(--type-label); }
.stock-workspace .qty-wrap { flex-basis:100%; margin:4px 0 0; justify-content:flex-start; flex-wrap:wrap; }
.stock-workspace :is(.edit-btn,.qty-btn,.min-btn) { min-width:44px; min-height:44px; margin:0; }
.stock-workspace .expected-section { margin:12px 0; padding:12px; border:1px solid var(--border); border-radius:8px; background:var(--card); }
.stock-workspace .expected-section a { display:inline-flex; align-items:center; min-height:44px; color:var(--brand); }
.stock-workspace .topbar h1 { flex:1 1 100%; order:-1; }
.stock-workspace .topbar { gap:4px 16px; }
.stock-workspace .btn.danger { background:#B91C1C; }
.stock-workspace .return-lot { border-top:1px solid var(--border); padding:12px 0; overflow-wrap:anywhere; }
.stock-workspace .return-lot .row { display:flex; flex-wrap:wrap; gap:8px; }
.stock-workspace .act { flex-direction:column; align-items:stretch; background:var(--bg); }
.stock-workspace .act label { display:block; font-weight:600; }
.stock-workspace .act :is(input,select) { width:100%; }
.stock-workspace .review-dock { position:sticky; bottom:calc(76px + env(safe-area-inset-bottom,0px)); background:var(--card); border:1px solid var(--brand); border-radius:8px; padding:12px; z-index:30; margin-top:12px; }
.stock-workspace .review-dock p { margin:0 0 8px; }
.stock-workspace .review-dock .confirm { margin-bottom:8px; }
.stock-workspace .count-lines { display:grid; gap:12px; }
.stock-workspace .count-line { border:1px solid var(--border); border-radius:8px; padding:12px; min-width:0; }
.stock-workspace .count-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:8px; }
.stock-workspace .count-grid label { display:flex; flex-direction:column; gap:4px; }
.stock-workspace .count-grid input,.stock-workspace .count-grid select { width:100%; }
.stock-workspace .scroll { max-width:100%; overflow-x:auto; }
.stock-workspace table { font-size:var(--type-body); }
.stock-workspace .payment-dialog { border:1px solid var(--border); border-radius:12px; padding:16px; width:min(520px,calc(100% - 24px)); max-height:calc(100dvh - 24px); overflow:auto; color:var(--text); }
.stock-workspace .payment-dialog::backdrop { background:rgba(0,0,0,.35); }
.stock-workspace .payment-dialog select { width:100%; }
.stock-workspace .payment-dialog .dialog-actions { position:sticky; bottom:-16px; padding:10px 0; background:var(--card); display:flex; flex-wrap:wrap; gap:8px; }
.stock-workspace .payment-review { padding:10px; margin:12px 0; border:1px solid var(--border); border-radius:8px; }
.stock-workspace .payment-review dl { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:0; }
.stock-workspace .payment-review dd { margin:0; text-align:right; }
.stock-workspace .payment-review dt { margin:0; }
.stock-workspace .customer-form { margin:12px 0; }
.stock-workspace .customer-form > summary { border:1px solid var(--border); border-radius:8px; padding:10px; background:var(--card); }
.stock-workspace .js-card h3 { flex-wrap:wrap; }
.stock-workspace .top a { display:inline-flex; min-height:44px; align-items:center; }
@media(min-width:761px) { .stock-workspace .review-dock { bottom:12px; } .stock-workspace .lot-facts { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:520px) { .stock-workspace .wrap { padding-inline:10px; } .stock-workspace .hdr .shop-name { display:block; } .stock-workspace .modal { max-width:calc(100vw - 20px); } .stock-workspace .row2 { flex-wrap:wrap; } .stock-workspace .row2 > div { min-width:0; flex:1 1 120px; } }
@media(prefers-reduced-motion:reduce) { .stock-workspace *, .stock-workspace *::before,.stock-workspace *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
.stock-workspace .help-bubble-btn,.stock-workspace .help-panel { box-shadow:0 1px 2px rgba(0,0,0,.06); }
.count-workspace .review-dock { position:fixed; left:50%; transform:translateX(-50%); width:min(936px,calc(100% - 20px)); max-height:45dvh; overflow-y:auto; padding-right:72px; }
.count-workspace .wrap { padding-bottom:310px; }
.stock-workspace .flow-banner { background:var(--brand-dark); }
.stock-workspace .flow-banner.err { background:#7F1D1D; }
.stock-workspace .payment-dialog table { width:100%; border-collapse:collapse; }
.stock-workspace .payment-dialog td,.stock-workspace .payment-dialog th { padding:8px; text-align:left; border-bottom:1px solid var(--border); }
.stock-workspace #returnStart > div > input,.stock-workspace #returnStart select { width:100%; }
.stock-workspace .return-lot input { display:block; width:100%; margin-top:6px; }
.stock-workspace .note-money input,.stock-workspace .note-money select { display:block; width:100%; margin:6px 0; }

/* S8 Group 2: layouts use the shared product roles. No local palette or density. */
body.stock-workspace { margin:0; font-size:var(--type-body); line-height:var(--leading-body); }
.stock-workspace .wrap { padding:var(--space-3) var(--space-3) calc(100px + env(safe-area-inset-bottom,0px)); }
.stock-workspace :is(h1,h2,h3) { font-weight:var(--weight-strong); line-height:1.3; }
.stock-workspace h1 { font-size:var(--type-heading); min-width:0; margin:0 0 var(--space-2); }
.stock-workspace h2 { font-size:var(--type-title); }
.stock-workspace h3 { font-size:var(--type-control); }
.stock-workspace :is(p,.sub,.meta) { margin-block:var(--space-2); }
.stock-workspace :is(.wrap,.container,.card,.hdr,.stock-search,.action-row,.stock-tools,.med-head,.batch-row,.qty-wrap,.row,.topbar,.top,.upload-row,.am-name-row) { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.stock-workspace :is(.hdr,.med-head,.batch-row,.qty-wrap,.row,.upload-row,.am-name-row) > * { min-width:0; max-width:100%; }
.stock-workspace :is(button,.btn,.action-btn,summary) { min-height:var(--control-touch); max-width:100%; font-size:var(--type-body); line-height:var(--leading-label); white-space:normal; overflow-wrap:anywhere; }
.stock-workspace :is(button,.btn,.action-btn) { border-radius:var(--radius-control); font-weight:var(--weight-strong); }
.stock-workspace :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border:var(--control-line); border-radius:var(--radius-control); color:var(--text); background:var(--card); padding:var(--space-2); font-family:var(--font-sans); font-size:var(--type-control); }
.stock-workspace :is(input,select,textarea)::placeholder { color:var(--text-muted); opacity:1; }
.stock-workspace label { font-size:var(--type-label); line-height:var(--leading-label); }
.stock-workspace :is(.muted,.sub,.meta,.hint,.count,.hist,.b-no,.b-exp,.b-mrp) { color:var(--text-muted); }
.stock-workspace :is(.card,.modal,.payment-dialog) { padding:var(--density-panel); border-radius:var(--radius-panel); }
.stock-workspace .card { margin-block:0 var(--space-3); }
.stock-workspace :is(.empty,.empty-state) { text-align:left; padding:var(--space-4); font-size:var(--type-body); line-height:var(--leading-body); }
.stock-workspace :is(.empty,.empty-state) span { font-size:var(--type-body)!important; }
.stock-workspace :is(.empty-state p,.empty-state .empty-sub) { margin-inline:0; font-size:var(--type-body); opacity:1; }
.stock-workspace :is(.banner,.row-error,.err,.flow-banner) { font-size:var(--type-body); overflow-wrap:anywhere; }
.stock-workspace :is(.banner.warn,.chip.held,.chip.est,.chip.sample,.chip.ratechk) { background:var(--warning-bg); color:var(--warning-text); border-color:var(--orange); }
.stock-workspace :is(.banner.bad,.chip.expired,.chip.reconcile,.chip.noexp,.chip.belowmin,.row-error) { background:var(--danger-bg); color:var(--danger-text); }
.stock-workspace .banner.ok { background:var(--success-bg); color:var(--brand-dark); }
.stock-workspace .btn.danger { background:var(--danger-text); color:var(--card); }
.stock-workspace :is(.chip,.pill,.status-badge) { border-radius:var(--radius-badge); font-size:var(--type-label); font-weight:var(--weight-strong); }
.stock-workspace :is(.med-total,.lot-facts,.dues,.n,.payment-review dd,.qty,.row-qty,.row-mrp) { font-variant-numeric:tabular-nums; }
.stock-workspace :is(.modal-bg,.modal-overlay) { padding:var(--space-3); }
.stock-workspace .modal { max-width:min(480px,100%); max-height:calc(100dvh - 24px); }
.stock-workspace .modal :is(.row2,.am-name-row) { gap:var(--space-2); }
.stock-workspace .modal .row2 > div { flex:1 1 120px; min-width:0; }
.stock-workspace .bc-reader { width:min(300px,100%); }
.stock-workspace .bc-close { width:44px; height:44px; }
.stock-workspace :is(.scroll,.entry-scroll,.table-scroll) { min-width:0; max-width:100%; overflow-x:auto; }
.stock-workspace table { border-collapse:collapse; font-size:var(--type-body); }
.stock-workspace :is(th,td) { padding:var(--table-cell-y) var(--table-cell-x); border-bottom:var(--line); }
.stock-workspace th { font-size:var(--type-label); font-weight:var(--weight-strong); color:var(--text-muted); background:var(--surface-muted); }
.stock-workspace td.n,.stock-workspace th.n { text-align:right; }

/* Search first, then tools. Flex children may shrink at 320px without clipping. */
.stock-list-workspace .hdr { gap:var(--space-1) var(--space-3); padding:var(--space-2) var(--space-3); }
.stock-list-workspace .hdr h1 { margin:0; font-size:var(--type-title); }
.stock-list-workspace .hdr .shop-name { font-size:var(--type-body); color:var(--text-muted); }
.stock-list-workspace .hdr .stock-search { min-width:0; width:100%; }
.stock-list-workspace .hdr a { font-size:var(--type-body); opacity:1; }
.stock-list-workspace .hdr .pg-link { margin-left:0; }
.stock-list-workspace .stock-search label { font-size:var(--type-label); }
.stock-list-workspace .searchbox { border-radius:var(--radius-control); }
.stock-list-workspace .action-row { gap:var(--space-2); }
.stock-list-workspace .action-row > * { min-width:0; max-width:100%; }
.stock-list-workspace .action-btn { flex:1 1 120px; min-width:0; padding:var(--space-2) var(--space-3); }
.stock-list-workspace .stock-tools { border-radius:var(--radius-control); margin-block:var(--space-2); padding-inline:var(--space-3); }
.stock-list-workspace .review-strip { width:100%; text-align:left; font-family:inherit; border-radius:var(--radius-control); padding:var(--space-3); background:var(--warning-bg); color:var(--warning-text); border-color:var(--orange); }
.stock-list-workspace :is(.sold-strip,.filter-chip,.lot-status,.chip,.min-note) { min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.stock-list-workspace .sold-strip { margin-bottom:var(--space-2); padding:var(--space-2) var(--space-3); }
.stock-list-workspace .med-group { overflow:visible; border-radius:var(--radius-panel); margin-bottom:var(--space-3); }
.stock-list-workspace .med-head { padding:var(--space-2) var(--space-3); gap:var(--space-2); background:var(--surface-muted); border-radius:var(--radius-panel) var(--radius-panel) 0 0; }
.stock-list-workspace .med-identity { flex:1 1 160px; font-size:var(--type-control); overflow-wrap:anywhere; }
.stock-list-workspace .med-total { flex:1 1 100%; text-align:right; font-size:var(--type-label); color:var(--text-muted); }
.stock-list-workspace .min-btn { border-radius:var(--radius-control); padding:var(--space-2); font-size:var(--type-label); }
.stock-list-workspace .batch-row { border-top:var(--line); padding:var(--space-3); gap:var(--space-2); }
.stock-list-workspace .lot-name { font-weight:var(--weight-strong); }
.stock-list-workspace .lot-facts { gap:var(--space-2) var(--space-3); }
.stock-list-workspace .lot-facts :is(.b-exp,.b-mrp) { color:var(--text); }
.stock-list-workspace .lot-facts .expired { color:var(--danger-text); }
.stock-list-workspace .lot-facts .soon { color:var(--warning-text); }
.stock-list-workspace .lot-facts small { color:var(--text-muted); }
.stock-list-workspace .qty-wrap { gap:var(--space-2); margin:0; }
.stock-list-workspace .qty-btn { background:var(--surface-muted); font-weight:var(--weight-strong); }
.stock-list-workspace .edit-btn { color:var(--text); }
.stock-list-workspace .upload-row { border:0; border-bottom:var(--line); border-radius:0; margin:0; font-size:var(--type-body); }
.stock-list-workspace .upload-row b { font-size:var(--type-body); }
.stock-list-workspace .uploads-sec h3 { font-size:var(--type-label); }
.stock-list-workspace .row-flash { animation:none; }

/* Wide stock lists: one medicine heading, compact lots on shared tracks.
   Below 1366px the existing phone/tablet arrangement is unchanged. */
@media(min-width:1366px) {
  .stock-list-workspace .wrap { max-width:1280px; }
  .stock-list-workspace .med-group { margin-bottom:var(--space-2); }
  .stock-list-workspace .med-head { align-items:center; padding-block:var(--space-1); }
  .stock-list-workspace .batch-row { display:grid; grid-template-columns:180px minmax(0,1fr) 340px; gap:var(--space-1) var(--space-3); align-items:center; padding-block:var(--space-2); }
  .stock-list-workspace .batch-row > .lot-name { display:none; }
  .stock-list-workspace .lot-status { grid-column:1; grid-row:1; align-content:start; }
  .stock-list-workspace .lot-facts { grid-column:2; grid-row:1; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr); align-items:start; }
  .stock-list-workspace .lot-facts > :nth-child(n+3) { text-align:right; font-variant-numeric:tabular-nums; }
  .stock-list-workspace .qty-wrap { grid-column:3; grid-row:1; justify-content:flex-end; }
  .stock-list-workspace .batch-row > :is(.chip,.ns-margin) { grid-column:2 / -1; justify-self:start; }
  .stock-list-workspace .batch-row > .row-error { grid-column:1 / -1; }
}

/* Review: source and flagged facts remain visible; primary action is local. */
.review-workspace .container { padding:var(--space-3); padding-bottom:100px; }
.review-workspace .nav { gap:var(--space-2); padding:var(--space-1) var(--space-3); flex-wrap:wrap; }
.review-workspace .nav a { display:inline-flex; align-items:center; min-height:44px; margin:0; padding:var(--space-2); font-size:var(--type-body); }
.review-workspace .header { gap:var(--space-2); margin-bottom:var(--space-4); }
.review-workspace .page-subtitle { font-size:var(--type-body); }
.review-workspace .btn { padding:var(--space-2) var(--space-3); }
.review-workspace .btn-secondary { background:var(--card); border:var(--control-line); color:var(--brand); }
.review-workspace .summary-bar { padding:var(--space-3); gap:var(--space-4); border-radius:var(--radius-panel); }
.review-workspace :is(.summary-stat .lbl,.med-summary-label,.conf-badge,.row-num) { font-size:var(--type-label); }
.review-workspace .summary-stat .val { font-size:var(--type-title); font-weight:var(--weight-strong); }
.review-workspace .rows-head,.review-workspace .row-item { grid-template-columns:44px minmax(0,2fr) minmax(0,1fr) minmax(80px,1fr) minmax(70px,1fr) minmax(0,1fr) 160px; gap:var(--space-3); padding:var(--space-3); }
.review-workspace .rows-head { background:var(--surface-muted); font-size:var(--type-label); }
.review-workspace .row-item { align-items:start; }
.review-workspace :is(.row-sub,.row-learned,.row-why,.row-why .why-note,.row-raw,.raw-preview,.countdown .msg,.learned-card .lc-en) { font-size:var(--type-body); }
.review-workspace .row-name { font-size:var(--type-control); }
.review-workspace .row-raw { border-radius:0; border-left:3px solid var(--control-border); margin-top:0; background:var(--surface-muted); }
.review-workspace .countdown { flex-wrap:wrap; padding:var(--space-3); }
.review-workspace .modal-close { top:var(--space-2); right:var(--space-2); width:44px; height:44px; }
.review-workspace .modal h3 { padding-right:44px; }
/* The fields scroll; title, Close and Save stay in the bounded dialog frame. */
.review-workspace #editModal .modal { display:flex; flex-direction:column; overflow:hidden; max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); }
.review-workspace #editRowTitle { flex:none; margin:0 0 var(--space-3); min-height:44px; display:flex; align-items:center; }
.review-workspace .review-edit-scroll { flex:1 1 auto; min-height:0; min-width:0; overflow-y:auto; overscroll-behavior:contain; padding:var(--space-1); scroll-padding-block:var(--space-2); }
.review-workspace .review-edit-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-2); align-items:start; }
.review-workspace .review-edit-wide { grid-column:1 / -1; }
.review-workspace #editModal .field { margin-bottom:var(--space-2); gap:var(--space-1); }
.review-workspace #editModal .field label { margin:0; }
.review-workspace #editModal .raw-preview { margin-block:var(--space-2); }
.review-workspace .review-edit-actions { display:flex; flex:none; flex-wrap:wrap; gap:var(--space-2); background:var(--card); border-top:var(--line); padding-top:var(--space-2); margin-top:var(--space-2); }
.review-workspace .countdown > * { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.review-workspace .countdown > div:last-child { flex-wrap:wrap; }
.review-workspace #qtyAsk { padding:var(--space-3)!important; border-radius:var(--radius-panel)!important; background:var(--warning-bg); }
.review-workspace #qtyAsk > .btn { display:flex; width:100%; justify-content:center; }
.review-workspace #qtyAsk label { font-size:var(--type-label); }
.review-workspace #qtyAsk input { max-width:100%!important; }
.review-workspace [data-testid="numbers-hold"] { padding:var(--space-4); background:var(--warning-bg); }
.review-workspace .skeleton { background:var(--surface-muted); animation:none; }

/* Return sections retain their status boundaries; reviews stay inside each lot. */
.returns-workspace .topbar { gap:var(--space-2) var(--space-4); }
.returns-workspace .topbar h1 .muted { display:block; font-size:var(--type-body); font-weight:var(--weight-regular); margin-top:var(--space-1); }
.returns-workspace .card { margin-block:var(--space-3); }
.returns-workspace .card h2 { display:flex; flex-wrap:wrap; align-items:baseline; gap:var(--space-2); }
.returns-workspace .section-count { font-size:var(--type-label); color:var(--text-muted); }
.returns-workspace :is(.return-lot h3,.return-lot p) { margin-block:var(--space-2); }
.returns-workspace .customer-disposition .act { border-left:3px solid var(--orange); padding:var(--space-3); background:var(--warning-bg); }
.returns-workspace .customer-disposition fieldset { border:0; border-top:var(--line); border-radius:0; padding:var(--space-2) 0; }
.returns-workspace .note-money { border:0; border-top:var(--line); border-radius:0; padding:var(--space-3) 0; }
.returns-workspace .disposition-result { background:var(--success-bg); }

/* Count work retains its pinned review and blind-count permissions. */
.count-workspace #openCard .row { align-items:end; }
.count-workspace #openCard .ns-field { flex:1 1 180px; }
.count-workspace .count-line { border:0; border-top:var(--line); border-radius:0; padding:var(--space-3) 0; }
.count-workspace .count-lines { gap:var(--space-2); }
.count-workspace .review-dock { padding:var(--space-3); padding-right:72px; border-radius:var(--radius-panel); }
.count-workspace .wrap { padding-bottom:310px; }
.count-workspace .var-neg { color:var(--danger-text); }

/* Order is one sheet, with ruled receipt lines rather than nested cards. */
body.order-workspace { padding:var(--space-3); }
.order-workspace .order-sheet { max-width:960px; margin:auto; padding:var(--space-4); }
.order-workspace .logo { font-size:var(--type-title); text-align:left; font-weight:var(--weight-strong); }
.order-workspace .sub { text-align:left; margin-bottom:var(--space-3); }
.order-workspace .order-header { background:var(--surface-muted); border:0; border-radius:var(--radius-control); padding:var(--space-3); margin-bottom:var(--space-3); }
.order-workspace .order-header h2 { font-size:var(--type-control); }
.order-workspace :is(.expectation,.count-block) { border:0; border-top:var(--line); border-radius:0; padding:var(--space-3) 0; margin:var(--space-3) 0; }
.order-workspace .receipt-line { border:0; border-top:var(--line); border-radius:0; padding:var(--space-3) 0; margin:var(--space-3) 0; }
.order-workspace .receipt-line legend { padding:0 var(--space-2) 0 0; font-size:var(--type-control); }
.order-workspace :is(.count-fields,.count-fields > div) { min-width:0; }
.order-workspace .count-fields { gap:var(--space-3); }
.order-workspace .count-fields label { font-size:var(--type-label); }
.order-workspace .items-table { table-layout:fixed; }
.order-workspace .items-table :is(th:last-child,td:last-child) { text-align:right!important; width:80px; font-variant-numeric:tabular-nums; }
.order-workspace .count-exception textarea { width:100%; min-height:80px; }
.order-workspace .count-exception summary { color:var(--brand); }
.order-workspace .receipt-actions { position:sticky; bottom:0; background:var(--card); border-top:var(--line); padding:var(--space-2) 0; z-index:2; }
.order-workspace :is(.count-reason,.mrp-hint) { font-size:var(--type-body); color:var(--warning-text); }
.order-workspace #overReceiptReview { padding:var(--space-3); background:var(--warning-bg); border-left:3px solid var(--orange); }

/* Party book: compact identity, open customer form, aligned balance review. */
:is(.dealers-workspace,.customers-workspace) .wrap { max-width:960px; }
.dealers-workspace .supplier-identity { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 var(--space-3); margin:var(--space-2) 0; }
.dealers-workspace .supplier-identity > div { padding:var(--space-2) 0; }
.dealers-workspace .supplier-identity > div:last-child { grid-column:1 / -1; }
.dealers-workspace .supplier-entries { margin:var(--space-2) 0; }
.customers-workspace .customer-form { border:var(--line); border-radius:var(--radius-panel); background:var(--card); }
.customers-workspace .customer-form > summary { border:0; border-radius:0; background:transparent; padding:var(--space-3); }
.customers-workspace #formCard { border:0; border-top:var(--line); border-radius:0; margin:0; }
.customers-workspace .dues { font-size:var(--type-body); white-space:normal; text-align:right; }
.customers-workspace .payment-review { border:0; border-top:var(--line); border-radius:0; padding:var(--space-3) 0; }
.customers-workspace .payment-review dl { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.customers-workspace .payment-review dd { overflow-wrap:anywhere; }
.customers-workspace .payment-dialog td:nth-child(2),.customers-workspace .payment-dialog th:nth-child(2) { text-align:right; font-variant-numeric:tabular-nums; }

/* Light-touch recovery pages retain the full removal/reimport explanation. */
:is(.cleanup-workspace,.recheck-workspace) .wrap { max-width:720px; }
.recheck-workspace .brand { font-size:var(--type-title); margin-bottom:var(--space-4); min-height:44px; }
.recheck-workspace .file { border:0; border-left:3px solid var(--control-border); border-radius:0; padding:var(--space-3); }
.recheck-workspace .file > div { min-width:0; }
.recheck-workspace :is(.file-nm,.alt) { font-size:var(--type-body); }
.recheck-workspace .alt { min-height:44px; display:flex; align-items:center; justify-content:center; }
.cleanup-workspace .row > span { min-width:0; }
.cleanup-workspace .row .v { white-space:normal; text-align:right; }
@media (min-width:761px) {
  .stock-list-workspace .med-total { flex:0 1 auto; }
  .order-workspace .count-fields { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .review-workspace .rows-head { display:none; }
  .review-workspace .row-item { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-2) var(--space-3); }
  .review-workspace .row-item > :is(.row-num,.row-name,.row-actions,.row-why,.row-raw,.shelf-now) { grid-column:1 / -1; }
  .review-workspace .row-item > .row-num { display:block; }
  .review-workspace .row-item .row-qty,.review-workspace .row-item .row-mrp { text-align:left; }
  .review-workspace .row-item .row-mrp::before { content:'MRP: '; color:var(--text-muted); font-weight:var(--weight-regular); }
  .review-workspace .row-item > .row-sub::before { content:'Batch · Expiry: '; }
  .review-workspace .row-actions { justify-content:flex-start; }
}
@media (max-width:520px) {
  .stock-workspace .wrap { padding-inline:var(--space-3); }
  .stock-list-workspace .hdr .shop-name { display:block; }
  .stock-list-workspace .upload-row { flex-wrap:wrap; }
  .stock-list-workspace .upload-row .u-right { margin-left:0; text-align:left; }
  .review-workspace .action-bar { gap:var(--space-2); }
  .review-workspace .action-bar > .btn { flex:1 1 130px; }
  .order-workspace .order-sheet { padding:var(--space-3); }
  .dealers-workspace .entry-scroll :is(table,tbody,tr,td) { display:block; width:100%; }
  .dealers-workspace .entry-scroll thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .dealers-workspace .entry-scroll tr { border-top:var(--line); padding-block:var(--space-2); }
  .dealers-workspace .entry-scroll td { border:0; padding:var(--space-1) 0; }
  .dealers-workspace .entry-scroll td::before { content:attr(data-label); display:block; color:var(--text-muted); font-size:var(--type-label); }
}
/* Margin's injected nowrap can force a stock row wider than a phone. */
.stock-workspace .ns-margin { white-space:normal; max-width:100%; margin-left:0; overflow-wrap:anywhere; font-size:var(--type-body); border-radius:var(--radius-badge); }
.stock-workspace .ns-margin small { font-size:var(--type-label); opacity:1; }
.review-workspace :is(#fExpiryAsk,#fQtyErr,#fFreeErr,#fFreeTotal) { font-size:var(--type-body)!important; }
@media(max-width:900px) { .review-workspace .row-item > :nth-child(2) { grid-column:1 / -1; } }
.stock-workspace :is(.hint,.min-hint,.adv-note,.adv-own,.am-sug-hint,.am-sug .sug-m,.hist,.file-mt,.med-total) { font-size:var(--type-body); }

/* Medicine/quantity selection and held errors have no decorative delay. */
:is(#amName, #amSuggest, .am-sug, #amQty, .review-workspace .field input, [id^="qtyAsk"]),
:is(#amSuggest, .am-sug, [id^="qtyAsk"]) * { transition:none!important; animation:none!important; }
/* S9: keep the full count form clear of its Save row; no floating occlusion. */
.order-workspace .receipt-actions { position:static; }
.order-workspace .count-fields input { scroll-margin-block:80px; }
@media(min-width:761px) and (max-width:900px) { .order-workspace .count-fields { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.order-workspace .supplier-answer-actions { display:flex; gap:8px; position:sticky; top:0; z-index:3; background:var(--card); padding:8px 0; }
.order-workspace .supplier-answer-actions .btn { flex:1; margin:0; padding:8px; font-size:14px; }
.order-workspace #supplierAnswerStatus { font-size:14px; margin:8px 0; overflow-wrap:anywhere; }
.order-workspace .supplier-lines th:nth-child(3),.order-workspace .supplier-lines td:nth-child(3) { text-align:left!important; width:auto; }
.order-workspace .supplier-lines .qty { width:64px; text-align:right; font-variant-numeric:tabular-nums; }
.order-workspace .supplier-medicine { font-weight:600; }
.order-workspace .supplier-choice label,.order-workspace .supplier-note { display:flex; flex-direction:column; gap:4px; font-size:12px; text-align:left; }
.order-workspace #supplierAnswer :is(input,select,textarea) { width:100%; min-width:0; min-height:44px; padding:8px; font:16px/1.5 var(--font-sans); border:var(--control-line); border-radius:6px; background:var(--card); color:var(--text); }
.order-workspace #supplierAnswer [hidden] { display:none!important; }
.order-workspace .supplier-choice label + label { margin-top:8px; }
.order-workspace .supplier-note { margin-top:12px; }
@media(max-width:600px) {
  .order-workspace .supplier-lines thead { display:none; }
  .order-workspace .supplier-lines tbody,.order-workspace .supplier-lines tr { display:block; }
  .order-workspace .supplier-lines tr { border-bottom:var(--line); padding-block:8px; }
  .order-workspace .supplier-lines td { display:block; border:0; height:auto; padding:4px 0; width:auto!important; text-align:left!important; }
  .order-workspace .supplier-lines .qty::before { content:'Ordered: '; }
}
