#ivs-main { min-width: 0; }
.ivs-bar { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.ivs-scroll { max-width: 100%; overflow-x: auto; margin: 12px 0; }
.ivs-table { width: 100%; min-width: 880px; border-collapse: collapse; }
.ivs-table th, .ivs-table td { padding: 8px; border: 1px solid var(--line); vertical-align: top; white-space: pre-wrap; overflow-wrap: anywhere; max-width: 220px; }
.ivs-table th { background: #f0f4f1; }
.ivs-table .ivs-low { background: #fff2d0; }
.ivs-table .ivs-negative { color: #9b2020; font-weight: 700; }
#ivs-storage { padding: 8px; background: #f0f4f1; }
#ivs-main [hidden] { display: none !important; }
#ivs-main input, #ivs-main select, #ivs-main textarea { min-width: 0; max-width: 100%; }
@page { size: A4 portrait; margin: 12mm; }
@media print {
  body > :not(main), main > :not(#ivs-main), #ivs-main > :not(#ivs-print-area) { display: none !important; }
  body, main, #ivs-main, #ivs-print-area { display: block !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: white !important; }
  #ivs-print-area .ivs-scroll { overflow: visible !important; margin: 0; }
  #ivs-stock-table { min-width: 0; width: 100%; table-layout: fixed; font-size: 8pt; }
  #ivs-stock-table th, #ivs-stock-table td { padding: 4px; max-width: none; }
  #ivs-stock-table thead { display: table-header-group; }
  #ivs-stock-table tr { break-inside: avoid; }
  #ivs-print-area h2 { margin: 0 0 6px; }
}
