.data-table { overflow-x:auto; max-width:100%; }
.data-table table { border-collapse:collapse; width:100%; }
.data-table th,.data-table td { border:1px solid var(--line,#ccc); padding:.5rem; text-align:left; white-space:pre-wrap; overflow-wrap:anywhere; max-width:30rem; }
#data-form textarea { width:100%; font-family:monospace; }
#data-preview { min-width:0; overflow-wrap:anywhere; }
.merge-document { white-space:pre-wrap; overflow-wrap:anywhere; border:1px solid var(--line,#ccc); padding:1rem; margin:1rem 0; }
.merge-docs.labels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
@media(max-width:600px) { .merge-docs.labels { grid-template-columns:1fr; } }
@media print {
  header,footer,.skip,.title-row,#help-sheet,.data-editor,#data-status,.data-downloads { display:none !important; }
  #data-preview { display:block; }
  #data-preview[hidden] { display:none !important; }
  .data-table { overflow:visible; }
  .data-table table { font-size:9pt; }
  .merge-docs.letters .merge-document { break-after:page; border:0; margin:0; }
  .merge-docs.letters .merge-document:last-child { break-after:auto; }
  .merge-docs.labels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .merge-document { break-inside:avoid; }
  #data-preview:has(.merge-docs) > h2, #data-preview:has(.merge-docs) > p { display:none; }
}
/* Long schema headers and exported secret text must wrap on narrow screens. */
.data-editor label, .data-editor p { overflow-wrap:anywhere; }
@media print {
  .data-table table { table-layout:fixed; }
  .data-table th, .data-table td { max-width:none; }
  .data-table thead { display:table-header-group; }
  .data-table tr { break-inside:avoid; }
}
