/* The paper on Review & send and on the practice signing page (field/_paper_style links it): the drawing above the face, the priced table folded to a sub-line on a phone. Scoped to .kf-field-paper, which both pages put on their paper (the .doc-body card), so the desk preview and the signing pages keep their own look. A stylesheet, not a <style> block: the Content-Security-Policy refuses inline styles. */
/* The site plan prints above the face on the customer's copy, so it prints
   above the face here. The figure is capped at half the screen so the rep can
   still see the priced table underneath it without a long scroll. */
.doc-body.kf-field-paper .kf-siteplan { margin: 0 0 1.25rem; }
.doc-body.kf-field-paper .kf-siteplan-figure { border: 1px solid var(--color-line); border-radius: var(--radius-ui); background: var(--color-page); padding: 0.5rem; }
.doc-body.kf-field-paper .kf-siteplan-figure svg { display: block; width: 100%; height: auto; max-height: 50vh; }
.doc-body.kf-field-paper .kf-siteplan-meta { margin: 0.5rem 0 0; font-size: 0.8125rem; line-height: 1.5; color: var(--color-muted); }
.doc-body.kf-field-paper .kf-siteplan-feet { font-weight: 700; color: var(--color-ink); }
.doc-body.kf-field-paper .kf-siteplan-runs { margin: 0.2rem 0 0; font-size: 0.8125rem; line-height: 1.5; color: var(--color-ink); }
.doc-body.kf-field-paper .kf-siteplan-features { margin: 0.4rem 0 0; padding-left: 1.1rem; font-size: 0.8125rem; line-height: 1.55; color: var(--color-ink); list-style: disc; }
.doc-body.kf-field-paper .kf-siteplan-feature-label { font-weight: 700; color: var(--color-ink); }
.doc-body.kf-field-paper [data-paper-title] { font-size: 1.25rem; line-height: 1.75rem; font-weight: 700; margin: 0 0 0.6rem; color: var(--color-ink); }
.doc-body.kf-field-paper h2 { font-size: 1rem; font-weight: 700; margin: 1.1rem 0 0.4rem; color: var(--color-ink); }
.doc-body.kf-field-paper h3 { font-size: 0.9375rem; font-weight: 600; margin: 0.8rem 0 0.25rem; color: var(--color-ink); }
.doc-body.kf-field-paper p, .doc-body.kf-field-paper li { font-size: 0.875rem; line-height: 1.6; color: #3f3831; margin: 0.4rem 0; }
.doc-body.kf-field-paper table.kf-items { width: 100%; border-collapse: collapse; font-size: 0.8125rem; margin: 0.5rem 0; }
.doc-body.kf-field-paper table.kf-items th, .doc-body.kf-field-paper table.kf-items td { border: 1px solid var(--color-line-strong); padding: 4px 6px; text-align: left; }
.doc-body.kf-field-paper table.kf-items th { background: var(--color-page); }
.doc-body.kf-field-paper table.kf-items .r { text-align: right; }
.doc-body.kf-field-paper table.kf-items .kf-line-note,
.doc-body.kf-field-paper table.kf-items .kf-line-qty,
.doc-body.kf-field-paper table.kf-items .kf-line-discount {
  margin-top: 2px; font-size: 0.75rem; color: var(--color-muted);
}
.doc-body.kf-field-paper table.kf-items .kf-line-note { padding-left: 5px; border-left: 2px solid var(--color-line); }
/* On a phone Qty, Unit and Unit price become one sub-line under the spec
   and the description gets the width back; from an upright iPad the five
   columns fit. A body frozen before that sub-line existed has no .kf-fold
   and keeps its five columns. */
@media (max-width: 47.9375rem) {
  .doc-body.kf-field-paper table.kf-items .kf-line-qty { display: none; }
  .doc-body.kf-field-paper table.kf-items.kf-fold thead th:nth-child(2),
  .doc-body.kf-field-paper table.kf-items.kf-fold thead th:nth-child(3),
  .doc-body.kf-field-paper table.kf-items.kf-fold thead th:nth-child(4),
  .doc-body.kf-field-paper table.kf-items.kf-fold tbody td:nth-child(2),
  .doc-body.kf-field-paper table.kf-items.kf-fold tbody td:nth-child(3),
  .doc-body.kf-field-paper table.kf-items.kf-fold tbody td:nth-child(4) { display: none; }
  .doc-body.kf-field-paper table.kf-items.kf-fold .kf-line-qty { display: block; }
}
@media (min-width: 48rem) {
  .doc-body.kf-field-paper table.kf-items .kf-line-qty { display: none; }
}
/* THE TOTAL ROW HAS TO STAY A TABLE CELL. It spans all five columns; laid
   out as a flex box it stops being a cell at all, the browser wraps it into
   one of its own in the FIRST column, and the row shrinks to the width of
   Description with the figure sitting in the middle of the sheet instead of
   under Amount. The floated label is the same row the print engrossment has
   always drawn. */
.doc-body.kf-field-paper table.kf-items tfoot tr.kf-total-row th {
  background: var(--color-page); text-align: right; vertical-align: baseline;
}
.doc-body.kf-field-paper table.kf-items tfoot tr.kf-total-row .kf-total-label {
  float: left; line-height: 1.9; font-weight: 700; color: var(--color-muted);
}
.doc-body.kf-field-paper table.kf-items tfoot tr.kf-total-row .kf-figure,
.doc-body.kf-field-paper table.kf-items tfoot tr.kf-total-row .kf-total-figure {
  font-weight: 700; color: var(--color-ink); letter-spacing: normal; text-transform: none;
  white-space: nowrap; font-variant-numeric: tabular-nums;
}
.doc-body.kf-field-paper table.kf-items tfoot tr.kf-total-row th.kf-total .kf-total-figure { font-size: 1rem; }
