/* Framed sheet — business modules. Load after admin-workspace.css.
   Screen-only: existing print layouts and business visibility states are preserved.
   No !important overrides; explicit module ancestry wins over legacy rules. */
@media screen {
  .admin-body :is(.supply-design, .vendor-design, .finance-dashboard, .inv-root,
    .contacts-workspace, .staff-workspace, .st-layout, .st-web) {
    min-width: 0;
    max-width: 100%;
    color: var(--ui-text, #23332b);
    font-family: var(--ui-font, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif);
    font-size: 14px;
    line-height: 1.6;
  }

  /* Keep min-content table widths inside their local scrolling viewport. */
  .admin-body :is(.calendar-table-wrap, .finance-table-wrap, .inv-table-wrap,
    .contacts-table-wrap, .staff-table-wrap, .ct-import-table, .gongxiao-document-table),
  .admin-body .vendor-design .admin-table-wrap,
  .admin-body .admin-table-wrap:has(.catalog-admin-table) {
    min-width: 0;
    max-width: 100%;
    overflow: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    scrollbar-color: var(--ui-control, #aab6ae) transparent;
  }
  .admin-body :is(.calendar-board, .calendar-day-detail, .finance-workspace,
    .vendor-procurement, .contacts-workspace, .staff-workspace, .st-card,
    .st-rules, .st-code-card, .inv-workspace, .inv-cart-workspace, .inv-checkout) {
    min-width: 0;
    max-width: 100%;
    border-color: var(--ui-line, #e4e9e5);
    border-radius: var(--ui-radius, 8px);
    background: var(--ui-surface, #fff);
    box-shadow: none;
  }
  .admin-body :is(.finance-workspace, .st-card, .st-rules, .st-code-card,
    .inv-workspace, .inv-cart-workspace, .inv-checkout) { padding: var(--ui-gap, 16px); }
  .admin-body :is(.finance-table, .catalog-admin-table, .inv-table, .contacts-table, .staff-table) {
    font-size: 14px;
    line-height: 1.55;
    font-variant-numeric: tabular-nums;
  }
  .admin-body :is(.finance-table, .catalog-admin-table, .inv-table, .contacts-table, .staff-table) th {
    padding: 10px 12px;
    font-size: 12px;
    color: var(--ui-muted, #58655e);
    background: var(--ui-raised, #f5f7f5);
    border-color: var(--ui-line, #e4e9e5);
  }
  .admin-body :is(.finance-table, .catalog-admin-table, .inv-table, .contacts-table, .staff-table) td {
    padding: 12px;
    border-color: var(--ui-line, #e4e9e5);
  }
  .admin-body :is(.finance-table, .catalog-admin-table, .inv-table, .contacts-table, .staff-table) small {
    font-size: 12px;
    line-height: 1.6;
  }
  .admin-body :is(.finance-table-wrap, .inv-table-wrap) { border-radius: 8px; }
  .admin-body :is(.finance-tabs, .staff-tabs, .inv-tabs) {
    flex-wrap: wrap;
    gap: 0 20px;
    margin-bottom: 16px;
    border-color: var(--ui-line, #e4e9e5);
  }
  .admin-body :is(.finance-tabs, .staff-tabs, .inv-tabs) button { font-size: 14px; }
  .admin-body :is(.finance-heading, .contacts-heading, .staff-heading) { flex-wrap: wrap; gap: 12px; }
  .admin-body :is(.finance-form-grid, .inv-form-grid, .st-grid) { gap: 16px; }
  .admin-body :is(.finance-form-grid, .inv-form-grid, .st-grid) > label { min-width: 0; }
  .admin-body :is(.finance-filter, .finance-form-grid, .vendor-settings, .st-card,
    .contacts-toolbar, .staff-toolbar, .inv-toolbar, .inv-field) :is(input:not([type=checkbox]):not([type=radio]), select, textarea) {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
    border-radius: 6px;
    font-size: 14px;
  }

  /* Supply calendar retains seven real day columns rather than hiding events. */
  .supply-design .calendar-layout { gap: 16px; }
  .supply-design .calendar-overview { border-radius: 8px; border-color: var(--ui-line); }
  .supply-design .calendar-overview > div { padding: 16px; }
  .supply-design .calendar-overview :is(span, small) { font-size: 12px; }
  .supply-design .calendar-overview strong { font-size: 24px; }
  .supply-design .calendar-toolbar { padding: 12px 16px; }
  .supply-design .calendar-legend { padding: 12px 16px; font-size: 12px; }
  .supply-design .calendar-tools label { font-size: 12px; }
  .supply-design .supply-calendar-table { min-width: 770px; }
  .supply-design .supply-calendar-table th { background: var(--ui-raised); font-size: 12px; }
  .supply-design .supply-calendar-table td { height: 120px; }
  .supply-design .calendar-event { font-size: 12px; min-height: 30px; }
  .supply-design :is(.calendar-day-total, .calendar-day-heading .calendar-pending,
    .calendar-holiday-name, .calendar-day-type, .calendar-day-number > span,
    .calendar-workday-detail, .calendar-day-counts, .calendar-detail-group h3,
    .calendar-event-card p, .calendar-products, .supply-design-detail-note) { font-size: 12px; }
  .supply-design .calendar-day-detail { padding: 16px; }
  .supply-design .calendar-day-counts { background: var(--ui-raised); }
  .supply-design .calendar-event-card-heading strong { font-size: 14px; overflow-wrap: anywhere; }
  .supply-design .calendar-detail-heading { flex-wrap: wrap; }
  .supply-design .calendar-day-number { min-height: 32px; }

  /* Supplier rail and procurement. */
  .vendor-design .vendor-design-layout { gap: 16px; }
  .vendor-design .vendor-switcher { flex-basis: 220px; max-width: 256px; }
  .vendor-design .vendor-switcher button { padding: 12px; border-radius: 6px; background: var(--ui-raised); }
  .vendor-design .vendor-switcher button[aria-pressed="true"] { background: #eaf0ec; border-color: var(--ui-accent); }
  .vendor-design .vendor-switcher :is(small, .vendor-design-bound, .vendor-design-name > span) { font-size: 12px; }
  .vendor-design .vendor-design-name { flex-wrap: wrap; overflow-wrap: anywhere; }
  .vendor-design .vendor-design-content { flex-basis: 480px; gap: 16px; }
  .vendor-design .vendor-settings { gap: 16px; }
  .vendor-design .finance-workspace { padding: 16px; }
  .vendor-design .supplier-schedule { gap: 16px; }
  .vendor-design :is(.supplier-window-note, #vendor-schedule-form > .admin-note, .procurement-packing-help) { font-size: 12px; }
  .vendor-design .vendor-design-procurement-head { padding: 16px; }
  .vendor-design .vendor-procurement .vendor-design-result-head { padding: 0 16px 16px; }
  .vendor-design .procurement-packing-help { padding: 12px 16px; }
  .vendor-design .vendor-design-form-actions { margin-top: 16px; padding-top: 16px; flex-wrap: wrap; }
  .vendor-design .vendor-design-mode-switch { border-radius: 6px; }
  .vendor-design .supplier-date-row { min-width: 0; }
  .vendor-design .vendor-procurement .admin-table { min-width: 760px; font-size: 14px; }
  .vendor-design .vendor-procurement .money-cell { text-align: right; font-variant-numeric: tabular-nums; }

  /* Finance overview, period detail and settlement. */
  .finance-dashboard .finance-filter { padding: 16px; border-radius: 8px; }
  .finance-dashboard .finance-filter label,
  .finance-date-field legend, .finance-settle-range > label { font-size: 12px; }
  .finance-dashboard .finance-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); border-radius: 8px; }
  .finance-dashboard .finance-metrics > div { padding: 16px; }
  .finance-dashboard .finance-metrics :is(dt, p) { font-size: 12px; }
  .finance-dashboard .finance-metrics dd { font-size: 24px; white-space: normal; }
  .finance-dashboard .wb-finance-todo { grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); }
  .finance-dashboard .wb-todo { min-width: 0; padding: 14px 16px; border-radius: 8px; }
  .finance-dashboard .wb-todo :is(.wb-todo-head, small) { font-size: 12px; overflow-wrap: anywhere; }
  .finance-dashboard .finance-section-heading > span, .finance-muted { font-size: 12px; }
  .finance-dashboard .finance-table { min-width: 760px; }
  .finance-dashboard .finance-table :is(th, td) { padding: 10px 12px; }
  .finance-dashboard:has([data-view="orders"][aria-pressed="true"]) #finance-content .finance-table :is(th, td):nth-child(n+3):nth-child(-n+5),
  .finance-dashboard:has([data-view="products"][aria-pressed="true"]) #finance-content .finance-table :is(th, td):nth-child(n+3),
  .finance-dashboard:has([data-view="periods"][aria-pressed="true"]) #finance-content .finance-table :is(th, td):nth-child(n+4):nth-child(-n+6) { text-align: right; }
  .admin-body .wb-chain { flex-wrap: wrap; }
  .admin-body .wb-chain-cell { flex: 1 1 150px; border-radius: 8px; }
  .admin-body .wb-chain-cell strong { white-space: normal; overflow-wrap: anywhere; }
  .admin-body .wb-chain-cell small { font-size: 12px; }
  .admin-body .wb-inline-pay { padding: 16px; border-radius: 8px; }
  .finance-settle-modal .finance-settle-section-heading { flex-wrap: wrap; }
  .finance-settle-modal .finance-settle-adjustments { gap: 16px; }
  .finance-settle-modal .finance-settle-preview .finance-table :is(th, td) { font-size: 14px; }
  .finance-settle-modal :is(.finance-preview-scope, .finance-settle-preview .field-help) { font-size: 12px; }
  .finance-settle-modal .modal-footer { background: var(--ui-surface); padding: 16px; }

  /* Catalog list and product drawer. */
  .admin-body .catalog-toolbar { flex-wrap: wrap; }
  .admin-body .catalog-toolbar .wb-filter { font-size: 12px; border-radius: 6px; }
  .admin-body .catalog-admin-table { min-width: 1080px; }
  .admin-body .catalog-admin-table .money-cell { text-align: right; }
  .admin-body .catalog-admin-table th:nth-child(n+6):nth-child(-n+8) { text-align: right; }
  .admin-body .catalog-bulk-actions { flex-wrap: wrap; gap: 8px; }
  .pe-modal .pe-layout { grid-template-columns: minmax(0, 1fr) 280px; }
  .pe-modal .pe-main { padding: 16px; background: var(--ui-surface); }
  .pe-modal .pe-section, .pe-modal .pe-section:first-child { padding: 16px; border-radius: 8px; }
  .pe-modal .pe-side { min-width: 0; padding: 16px; background: var(--ui-raised); }
  .pe-modal .pe-price-grid { gap: 16px; }
  .pe-modal .pe-section :is(.admin-field, .check-label), .pe-modal .pe-side h3 { font-size: 14px; }
  .pe-modal .pe-section .field-help, .pe-modal .pe-card-body small,
  .pe-modal .pe-tags span, .pe-modal .pe-heading-number { font-size: 12px; }
  .pe-modal .pe-card { border-radius: 8px; }
  .pe-modal .pe-heading-title { min-width: 0; }
  .pe-modal .month-picker { min-width: 0; }
  .pe-modal .month-picker label { font-size: 12px; }
  .admin-body .catalog-admin-table .month-cell { font-size: 12px; }
  .admin-body .catalog-admin-table .supplier-note { max-width: 180px; }
  .pe-modal .month-picker legend { flex-wrap: wrap; }
  .pe-modal .pe-footer { gap: 8px 12px; padding: 12px 16px; background: var(--ui-surface); }

  /* Module dialogs retain header/close controls and their own scrollable body. */
  .admin-body .modal:is(.supply-design-modal, .finance-settle-modal, .manual-order-modal,
    .weigh-modal, .staff-modal, .inv-modal, .ct-import-modal, .gongxiao-document-modal) {
    box-sizing: border-box;
    max-height: calc(100dvh - 32px);
    border-radius: 8px;
    background: var(--ui-surface, #fff);
    font-family: var(--ui-font, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif);
    font-size: 14px;
  }
  .admin-body .modal.manual-order-modal.mo-modal { border-radius: 8px; }
  .admin-body .modal.is-drawer.pe-modal { background: var(--ui-surface); }
  .admin-body .finance-period-header ~ .finance-table-wrap .finance-table { min-width: 700px; }
  .admin-body .modal:is(.weigh-modal, .staff-modal, .inv-modal, .supply-design-modal) { padding: 20px; }
  .admin-body .modal:is(.supply-design-modal, .finance-settle-modal, .mo-modal, .pe-modal,
    .weigh-modal, .staff-modal, .inv-modal, .ct-import-modal, .gongxiao-document-modal) :is(input:not([type=checkbox]):not([type=radio]), select, textarea) {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
    font-family: inherit;
    font-size: 14px;
    border-radius: 6px;
  }
  .admin-body .modal:is(.supply-design-modal, .finance-settle-modal, .mo-modal, .pe-modal,
    .weigh-modal, .staff-modal, .inv-modal, .ct-import-modal, .gongxiao-document-modal) .admin-field { min-width: 0; }
  .admin-body .modal:is(.supply-design-modal, .finance-settle-modal, .mo-modal, .pe-modal,
    .weigh-modal, .staff-modal, .inv-modal, .ct-import-modal, .gongxiao-document-modal) :is(.field-help, .admin-field small) { font-size: 12px; line-height: 1.65; }
  .admin-body :is(.supply-design-modal-actions, .weigh-actions, .staff-dialog-actions,
    .inv-modal-actions, .manual-confirm-actions, .gongxiao-document-actions) { flex-wrap: wrap; gap: 8px 12px; }
  .supply-design-form .calendar-arrival-items { min-width: 0; border-radius: 8px; }
  .supply-design-form .calendar-arrival-items .calendar-arrival-row { min-width: 0; }
  .supply-design-form .calendar-arrival-items .calendar-arrival-row > span { overflow-wrap: anywhere; }
  .supply-design-form .supplier-schedule { min-width: 0; }
  .mo-modal .mo-description, .mo-modal .mo-days, .mo-modal .mo-name small,
  .mo-modal .mo-submit .field-help { font-size: 12px; }
  .mo-modal .mo-table { min-width: 540px; font-size: 14px; }
  .mo-modal .mo-row { font-size: 14px; }
  .mo-modal .mo-table th { font-size: 12px; background: var(--ui-raised); }
  .mo-modal .mo-side { min-width: 0; background: var(--ui-raised); }
  .mo-modal .mo-cart p { font-size: 14px; overflow-wrap: anywhere; }
  .mo-modal .mo-cart p > span { min-width: 0; }
  .mo-modal .mo-cart b { flex-shrink: 0; }
  .mo-modal .mo-total { flex-wrap: wrap; }
  .mo-modal .mo-total strong { margin-left: auto; }
  .mo-modal .mo-submit .primary { white-space: normal; }
  .weigh-modal .weight-preview { border-radius: 8px; }
  .weigh-modal .wb-weigh-table { min-width: 480px; width: 100%; font-variant-numeric: tabular-nums; }
  .weigh-modal .wb-weigh-table th, .weigh-modal .weigh-pending { font-size: 12px; }
  .weigh-modal .wb-weigh-table td { font-size: 14px; }
  .weigh-modal .weigh-actions { margin-top: 16px; }

  /* User/staff directories and settings/share sheets. */
  .contacts-workspace :is(.contacts-toolbar, .contacts-summary, .contacts-pagination),
  .staff-workspace .staff-toolbar { padding: 16px; }
  .contacts-workspace .ct-tabs { flex-wrap: wrap; }
  .contacts-workspace .ct-tabs button, .staff-workspace .staff-filters button { border-radius: 6px; }
  .contacts-workspace .ct-toolbar-end { flex-wrap: wrap; min-width: 0; }
  .contacts-workspace .contacts-pagination { gap: 8px 12px; }
  .contacts-workspace .contacts-pagination > div { flex-wrap: wrap; margin-left: 0; }
  .admin-body :is(.contact-status, .ct-chip, .staff-chip, .staff-note, .staff-time,
    .staff-roles small, .staff-bind-expiry, .ct-wallet-row small) { font-size: 12px; }
  .staff-workspace .staff-name { font-size: 14px; }
  .staff-workspace .staff-table { min-width: 760px; }
  .staff-workspace .staff-search { min-width: 0; }
  .staff-workspace .staff-search input { max-width: 100%; }
  .admin-body .ct-import > div { min-width: 0; }
  .admin-body .ct-import-table .contacts-table { min-width: 480px; }
  .admin-body .ct-wallet-row { grid-template-columns: minmax(0, 1fr) auto; overflow-wrap: anywhere; }
  .admin-body .st-layout { gap: 16px; }
  .admin-body .st-card { flex-basis: 460px; max-width: none; }
  .admin-body .st-rules { background: var(--ui-raised); }
  .admin-body :is(.st-sub, .st-grid .admin-field small, .st-switch-note,
    .st-step-detail, .st-rules p) { font-size: 12px; }
  .admin-body :is(.st-switch-title, .st-step-title) { font-size: 14px; }
  .admin-body .st-card .st-section { margin-top: 24px; padding-top: 16px; }
  .admin-body .st-actions { flex-wrap: wrap; margin-top: 16px; padding-top: 16px; }
  .admin-body .st-code-card { min-width: 0; flex-basis: 300px; }
  .admin-body .st-code-card .st-code-name { font-family: inherit; font-size: 20px; letter-spacing: 0; }
  .admin-body .st-code { height: auto; aspect-ratio: 1; border-radius: 8px; }
  .admin-body .st-web > div:first-child, .admin-body .st-web form .admin-field { flex-basis: 260px; min-width: 0; }
  .admin-body .st-web-qr { max-width: 100%; overflow-wrap: anywhere; }

  /* Inventory products, receipt entry, checkout, document list/detail. */
  .admin-body :is(.inv-root, .inv-modal) {
    --inv-paper: var(--ui-surface, #fff);
    --inv-surface: var(--ui-surface, #fff);
    --inv-ink: var(--ui-text, #23332b);
    --inv-muted: var(--ui-muted, #58655e);
    --inv-line: var(--ui-line, #e4e9e5);
    --inv-border: var(--ui-control, #aab6ae);
    --inv-brand: var(--ui-accent, #214f3d);
  }
  .admin-body .inv-root small, .admin-body .inv-modal small { font-size: 12px; }
  .admin-body .inv-toolbar { padding: 12px 16px; border-radius: 8px 8px 0 0; }
  .admin-body .inv-table td > strong { font-size: 14px; }
  .admin-body .inv-code, .admin-body .inv-chip { font-size: 12px; }
  .admin-body .inv-root .inv-table { min-width: 740px; }
  .admin-body .inv-root .inv-entry-table { min-width: 1160px; }
  .admin-body .inv-root .inv-cart-table { min-width: 540px; }
  .admin-body .inv-entry-table :is(th, td) { padding: 8px; }
  .admin-body .inv-sale-layout { grid-template-columns: minmax(0, 1fr) 300px; gap: 16px; }
  .admin-body .inv-field { min-width: 0; }
  .admin-body .inv-row-footer, .admin-body .inv-pagination { flex-wrap: wrap; }
  .admin-body .inv-section-title { flex-wrap: wrap; }
  .admin-body .inv-recovery, .admin-body .inv-result { flex-wrap: wrap; gap: 12px; border-radius: 8px; }
  .admin-body .inv-recovery > div, .admin-body .inv-result > div { min-width: 0; overflow-wrap: anywhere; }
  .admin-body .inv-detail-heading { flex-wrap: wrap; gap: 12px; }
  .admin-body .inv-detail-heading > div { min-width: 0; overflow-wrap: anywhere; }
  .admin-body .inv-detail-amount > strong, .admin-body .inv-total-due dd { white-space: normal; overflow-wrap: anywhere; }
  .admin-body .inv-modal-actions { padding-bottom: env(safe-area-inset-bottom, 0px); }
}

@media screen and (max-width: 1000px) {
  .supply-design .calendar-layout,
  .admin-body .inv-sale-layout { grid-template-columns: minmax(0, 1fr); }
  .admin-body .inv-checkout { position: static; }
  .vendor-design .vendor-design-layout { flex-direction: column; flex-wrap: nowrap; align-items: stretch; }
  .vendor-design .vendor-design-layout > * { width: 100%; max-width: 100%; }
  .vendor-design .vendor-switcher { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); flex-basis: auto; max-width: none; }
  .vendor-design .vendor-design-content { flex-basis: auto; }
  .finance-dashboard .finance-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .finance-dashboard .finance-metrics > div:nth-child(3) { grid-column: 1 / -1; border-left: 0; }
  .finance-dashboard .finance-metrics > div:nth-child(n+3) { border-top: 1px solid var(--ui-line); }
}

@media screen and (max-width: 800px) {
  .vendor-design .supplier-schedule,
  .vendor-design .supplier-cutoff-controls,
  .admin-body .finance-form-grid,
  .admin-body .inv-form-grid,
  .admin-body .st-grid,
  .supply-design-add-fields, .supply-design-arrival-fields,
  .supply-design-form .supplier-cutoff-controls,
  .admin-body .modal.pe-modal .pe-section .form-grid,
  .admin-body .modal.weigh-modal .form-grid,
  .admin-body .modal.weigh-modal .weight-input-grid { grid-template-columns: minmax(0, 1fr); }
  /* One scroll owner on narrow drawers: neither the preview nor footer is lost. */
  .admin-body .modal.manual-order-modal.mo-modal {
    width: calc(100vw - 24px);
    height: auto;
    max-height: calc(100dvh - 24px);
  }
  .mo-modal .modal-content { display: block; overflow: auto; }
  .mo-modal .mo-form { display: block; }
  .mo-modal .mo-head { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 16px; }
  .mo-modal .mo-head .mo-who { grid-column: 1 / -1; }
  .mo-modal .mo-layout { display: block; }
  .mo-modal .mo-main { display: block; padding: 16px; }
  .mo-modal .mo-list { max-height: 360px; overflow: auto; }
  .mo-modal .mo-side { display: block; padding: 16px; border-left: 0; border-top: 1px solid var(--ui-line); }
  .mo-modal .mo-selection-scroll { overflow: visible; }
  .mo-modal .modal-heading { padding: 16px 16px 8px; }
  .mo-modal .mo-description, .mo-modal .mo-days { padding-inline: 16px; }
  .mo-modal .manual-catalog-tools { flex-wrap: wrap; }
  .mo-modal .manual-catalog-tools label:first-child { flex-basis: 100%; }
  .mo-modal .manual-catalog-tools label:nth-child(2) { flex: 1; max-width: none; }
  .pe-modal .pe-layout { display: block; overflow: auto; }
  .pe-modal .pe-main, .pe-modal .pe-side { overflow: visible; }
  .pe-modal .pe-side { border-left: 0; border-top: 1px solid var(--ui-line); }
  .pe-modal .modal-heading { flex-wrap: wrap; padding: 12px 16px; }
  .pe-modal .pe-price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pe-modal .pe-price-grid .pe-cost-note { grid-column: 1 / -1; }
  .finance-settle-modal .finance-settle-adjustments { grid-template-columns: minmax(0, 1fr); }
  .finance-settle-modal .finance-settle-totals { min-width: 0; }
  .admin-body .ct-import { grid-template-columns: minmax(0, 1fr); }
  .admin-body .st-layout { flex-direction: column; align-items: stretch; }
  .admin-body .st-layout > :is(.st-card, .st-rules, .st-code-card) { flex-basis: auto; max-width: none; width: 100%; }
}

@media screen and (max-width: 600px) {
  .supply-design .calendar-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .supply-design .calendar-overview > div:nth-child(3) { border-left: 0; }
  .supply-design .calendar-overview > div:nth-child(n+3) { border-top: 1px solid var(--ui-line); }
  .supply-design .calendar-overview > div { padding: 12px; }
  .supply-design .calendar-month-controls { gap: 6px; }
  .supply-design .calendar-month-controls h2 { margin-inline: 0; font-size: 16px; }
  .supply-design .calendar-toolbar, .supply-design .calendar-legend { padding: 12px; }
  .supply-design .calendar-detail-events { display: flex; }
  .supply-design .calendar-day-counts { grid-template-columns: minmax(0, 1fr); }
  .supply-design .calendar-day-counts strong { display: inline; margin-left: 6px; }
  .vendor-design .vendor-switcher { grid-template-columns: minmax(0, 1fr); }
  .admin-body .finance-heading > div, .admin-body .finance-filter > label { min-width: 0; }
  .finance-dashboard .finance-filter > label, .finance-dashboard .finance-date-field { width: 100%; }
  .finance-dashboard .finance-filter select { width: 100%; }
  .finance-date-range { min-width: 0; gap: 4px; padding-inline: 8px; border-radius: 6px; }
  .finance-dashboard .finance-date-range input, .finance-settle-modal .finance-date-range input { flex: 1 1 0; width: 0; font-size: 13px; }
  .finance-dashboard .finance-metrics > div { padding: 12px; }
  .finance-dashboard .finance-metrics dd { font-size: 20px; }
  .admin-body .finance-audit li { grid-template-columns: minmax(0, 1fr); }
  .admin-body .finance-audit li > p { grid-column: 1; }
  .finance-settle-modal .finance-settle-range { padding: 0 16px 16px; }
  .finance-settle-modal .finance-settle-range > label, .finance-settle-modal .finance-date-field { width: 100%; min-width: 0; }
  .finance-settle-modal .finance-settle-preview { padding: 16px; }
  .finance-settle-modal .finance-settle-description { padding-inline: 16px; }
  .finance-settle-modal .modal-heading { padding: 16px 16px 0; }
  .finance-settle-modal .finance-settle-footer { align-items: stretch; }
  .finance-settle-modal .finance-settle-footer .primary { width: 100%; }
  .admin-body .catalog-toolbar > label { display: flex; flex-wrap: wrap; min-width: 0; width: 100%; gap: 8px; }
  .admin-body .catalog-toolbar select { min-width: 0; max-width: 100%; flex: 1; }
  .admin-body .catalog-toolbar input[type=search] { flex-basis: 100%; width: 100%; min-width: 0; }
  .admin-body .modal:is(.supply-design-modal, .finance-settle-modal, .weigh-modal,
    .staff-modal, .inv-modal, .ct-import-modal, .gongxiao-document-modal) { max-width: calc(100vw - 24px); width: calc(100vw - 24px); max-height: calc(100dvh - 24px); }
  .admin-body .modal:is(.supply-design-modal, .weigh-modal, .staff-modal, .inv-modal, .ct-import-modal, .gongxiao-document-modal) { padding: 16px; }
  .admin-body .modal.pe-modal .pe-section .form-grid,
  .admin-body .modal.pe-modal .pe-price-grid,
  .admin-body .modal.weigh-modal .form-grid,
  .admin-body .modal.weigh-modal .weight-input-grid,
  .mo-modal .mo-head { grid-template-columns: minmax(0, 1fr); }
  .pe-modal .pe-price-grid .pe-cost-note { grid-column: auto; }
  .pe-modal .pe-section, .pe-modal .pe-section:first-child { padding: 12px; }
  .pe-modal .month-picker { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pe-modal .pe-heading-title { flex: 1 1 100%; }
  .pe-modal .modal-heading-actions { width: 100%; justify-content: flex-end; }
  .pe-modal .pe-nav { flex-wrap: wrap; }
  .supply-design-form .calendar-arrival-items legend { flex-wrap: wrap; gap: 8px; }
  .vendor-design .supplier-date-row { flex-wrap: wrap; }
  .admin-body .vendor-design .supplier-date-row input { flex: 1 1 140px; width: auto; max-width: 100%; }
  .pe-modal .pe-footer #pe-dirty { flex-basis: 100%; }
  .pe-modal .pe-footer .primary { flex: 1; min-width: 0; }
  .supply-design-form .calendar-date-change { grid-template-columns: minmax(0, 1fr); }
  .supply-design-form .calendar-date-change > span { padding: 0; }
  .supply-design-form .calendar-arrival-items .calendar-arrival-row { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
  .supply-design-form .calendar-arrival-items .calendar-arrival-row > .wb-chip { grid-column: 1 / -1; justify-self: start; }
  .admin-body .contacts-heading-actions { flex-shrink: 1; }
  .contacts-workspace .contacts-search { min-width: 0; flex-basis: 100%; max-width: none; }
  .contacts-workspace .contacts-search input { width: 100%; }
  .contacts-workspace .ct-toolbar-end { width: 100%; margin-left: 0; }
  .contacts-workspace .contacts-pagination > label { margin-left: 0; }
  .staff-workspace .staff-search { flex-wrap: wrap; width: 100%; }
  .staff-workspace .staff-search input { flex: 1; min-width: 0; }
  .staff-workspace .staff-refresh { margin-left: 0; }
  .admin-body .staff-dialog-person { flex-wrap: wrap; }
  .admin-body .staff-bind-code { overflow-wrap: anywhere; font-size: 28px; letter-spacing: 2px; }
  .admin-body .st-switch { flex-wrap: wrap; gap: 8px; }
  .admin-body .st-switch-side { margin-left: auto; }
  .admin-body .st-steps li { gap: 12px; }
  .admin-body .st-steps li > span:last-child { min-width: 0; overflow-wrap: anywhere; }
  .admin-body .st-web { gap: 16px; }
  .admin-body .inv-toolbar > .inv-inline-field { flex: 1 1 100%; min-width: 0; }
  .admin-body .inv-search { max-width: none; min-width: 0; margin-left: 0; }
  .admin-body .inv-toolbar :is(input, select) { width: 100%; }
  .admin-body .inv-submit-bar { flex-direction: column; gap: 12px; }
  .admin-body .inv-submit-bar .primary { width: 100%; min-width: 0; }
  .admin-body .inv-scan-form { flex-wrap: wrap; }
  .admin-body .inv-scan-form .inv-field { flex-basis: 100%; }
  .admin-body .inv-search-results > div { flex-wrap: wrap; gap: 8px; }
  .admin-body .inv-search-results > div > div { min-width: 0; overflow-wrap: anywhere; }
  .admin-body .inv-import-source { grid-template-columns: minmax(0, 1fr); }
  .admin-body .inv-modal-actions > button { flex: 1 1 120px; white-space: normal; }
  .admin-body .gongxiao-document-meta { grid-template-columns: minmax(0, 1fr); }
}

@media screen {
  .admin-body :is(.wb-log-row small, .wb-log p, .calendar-products small, .admin-no-photo, .pe-new, .pe-badge, .pe-modal .pe-card-number, .pe-footer kbd, .wb-today) { font-size: 12px; }
  .admin-body .wb-dialog-actions { flex-wrap: wrap; }
}
@media screen {
  .admin-body .modal-backdrop.is-drawer { padding: 0; }
  .admin-body .modal.is-drawer.pe-modal { width: min(1000px,100vw); height: 100dvh; max-height: 100dvh; animation: none; }
}

@media screen {
  .admin-body #catalog-archive-panel { margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--line); }
  .admin-body #catalog-archive-panel > summary { cursor: pointer; padding: 12px 0; font-weight: 600; }
  .admin-body .catalog-bulk-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 12px 0; }
  .admin-body .catalog-bulk-actions[hidden] { display: none; }
  .admin-body .catalog-admin-table td:last-child button + button { margin-left: 8px; }
}
