.stock-receipts { margin-top: 1.25rem; }
/* Stock-only shared layout: do not change the other report pages. */
body #app .stock-page { min-width: 0; }
body #app .stock-page :is(.inventory-chart-panel, .stock-list-panel) {
  box-sizing: border-box; width: 100%; min-width: 0; margin: 0 0 1rem;
  border: 1px solid #d9d5c9; border-radius: 8px; background: #fff; box-shadow: none;
}
body #app .stock-page .inventory-chart-panel { padding: 0; }
body #app .stock-page :is(.inventory-chart-heading, .receipts-heading) {
  padding: .7rem .9rem; gap: .65rem 1rem; border-bottom: 1px solid #dfd3be;
}
body #app .stock-page :is(.inventory-chart-heading, .receipts-heading) h2 { font-size: 1.05rem; margin: 0; }
body #app .stock-page :is(.stock-list-heading, .receipts-toolbar) { background: var(--subtab-strip); }
body #app .stock-page :is(.inventory-chart-tabs, .stock-tabs, .receipts-groups) {
  margin: 0; padding: 6px .9rem 0;
}
body #app .stock-page :is(.inventory-chart-tabs, .stock-tabs, .receipts-groups) > :is(button, a) {
  flex-direction: column;
}
body #app .stock-page .stock-tabs { align-self: stretch; }
body #app .stock-page .inventory-chart-heading { background: var(--subtab-strip); border-radius: 8px 8px 0 0; }
body #app .stock-page .stock-heading-controls {
  display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .6rem 1rem; margin-left: auto;
}
body #app .stock-page .stock-heading-controls .inventory-chart-tabs { padding: 0; }
body #app .stock-page .stock-list-heading {
  grid-template-columns: minmax(180px, 1fr) auto auto; align-items: center;
  gap: 0 .8rem; border-bottom: 1px solid #dfd3be;
}
body #app .stock-page .stock-list-heading h2 { grid-column: 1; grid-row: 1; margin: 0; padding: .7rem .9rem; font-size: 1.05rem; }
body #app .stock-page .stock-list-heading .stock-tabs {
  grid-column: 2; grid-row: 1; justify-content: flex-end; align-items: flex-end; padding: 0;
}
body #app .stock-page .stock-list-heading .stock-tabs:last-child { padding-right: .9rem; }
body #app .stock-page .stock-list-heading .stock-date-actions { grid-column: 3; grid-row: 1; border: 0; }
body #app .stock-page .stock-list-heading .stock-date-status { grid-column: 1 / -1; grid-row: 2; }
@media (max-width: 900px) {
  body #app .stock-page .stock-list-heading { grid-template-columns: minmax(0, 1fr) auto; }
  body #app .stock-page .stock-list-heading .stock-tabs { padding-right: .9rem; }
  body #app .stock-page .stock-list-heading .stock-date-actions { grid-column: 1 / -1; grid-row: 2; }
  body #app .stock-page .stock-list-heading .stock-date-status { grid-row: 3; }
}
@media (max-width: 560px) {
  body #app .stock-page .stock-list-heading { display: flex; flex-wrap: wrap; gap: 0; }
  body #app .stock-page .stock-list-heading .stock-tabs { margin-left: auto; padding-left: .9rem; }
  body #app .stock-page .stock-list-heading .stock-date-status { width: 100%; }
}
body #app .stock-page .stock-date-actions { padding: .65rem .9rem; border-color: #dfd3be; }
body #app .stock-page .stock-date-status { font-size: .73rem; padding: .35rem .9rem; color: #716b60; }
body #app .stock-page :is(.stock-table-actions, .receipts-toolbar) { background: #fffaf0; padding: .65rem .9rem; }
body #app .stock-page :is(.receipts-groups, .receipts-scopes) { padding: 0; }
body #app .stock-page .receipts-heading { justify-content: flex-start; }
body #app .stock-page .receipts-controls { margin-left: auto; }
body #app .stock-page .receipts-scopes { align-self: center; }
body #app .stock-page .receipts-scopes small { font-size: .62rem; font-weight: 400; }
body #app .stock-page .inventory-chart { box-sizing: border-box; width: auto; margin: .65rem .9rem .9rem; }
body #app .stock-page .inventory-chart > svg { display: block; width: 100%; min-width: 680px; height: 325px; max-width: none; }
body #app .stock-page :is(#inventory-chart-caption, #inventory-chart-error) { margin: .5rem .9rem; font-size: .73rem; }
body #app .stock-page :is(.stock-table-search, .receipts-search) { font-size: .75rem; font-weight: 600; }
body #app .stock-page .stock-list-placeholder { border: 0; border-radius: 0 0 8px 8px; }
.receipts-heading, .receipts-controls, .receipts-toolbar { display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; }
.receipts-heading { justify-content: space-between; padding: .7rem .9rem; }
body #app .receipts-heading h2 { margin: 0; font-size: 1.15rem; }
.receipts-controls label { display: flex; align-items: center; gap: .5rem; font-size: .8rem; }
.receipts-scopes button { text-align: left; }
.receipts-scopes button span, .receipts-scopes button small { display: block; }
.receipts-scopes button small { font-size: .65rem; font-weight: 400; margin-top: .18rem; }
.receipts-toolbar { justify-content: space-between; padding: .65rem .9rem; background: #fffaf0; border-bottom: 1px solid #dfd3be; }
.receipts-groups { display: flex; gap: 0; flex-wrap: wrap; }
.receipts-search { display: flex; align-items: center; gap: .5rem; font-size: .75rem; }
.receipts-search input { max-width: 220px; min-width: 100px; width: 100%; }
.receipts-status, .receipts-note, .receipts-snapshot { margin: .5rem .9rem; font-size: .73rem; line-height: 1.5; color: #716b60; }
.receipts-status:empty { display: none; }
.receipts-note { padding-top: .5rem; border-top: 1px solid #e4dccd; }
.stock-receipts .pages { padding: .65rem .9rem; }
.stock-receipts table td:not(:first-child) { font-variant-numeric: tabular-nums; }
.stock-receipts tbody th { overflow-wrap: anywhere; }
@media(max-width:650px) {
  .receipts-controls, .receipts-search { width: 100%; }
  .receipts-controls label { flex: 1; }
  .receipts-controls select { min-width: 0; width: 100%; }
  .receipts-search input { max-width: none; }
  body #app .receipts-scopes { flex-wrap: wrap; }
}
