/* Reports (static/reports-page.js; docs/plans/mocks/mock-reports.html). Built on
   Usage Summary's pieces (static/usage.css: .us-card, .us-filters, .us-seg,
   .us-tiles, .us-btn, .us-pmenu) and app.css's page template (.pg-head);
   everything here is scoped to .rp- (screen) and .rpp (the print sheet). */
#tab-report .vi { max-width: 1240px; }
.rp-tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--line); margin: 0 0 14px; overflow-x: auto; }
.rp-tabs button { border: 0; background: none; font: inherit; font-size: 15px; padding: 10px 14px; color: var(--ink2); border-bottom: 3px solid transparent; cursor: pointer; white-space: nowrap; }
.rp-tabs button.on { color: #1f4a28; font-weight: 700; border-bottom-color: var(--gm, #2f6b3a); }
.rp-tabs button[data-tab="usage"]::after { content: " ›"; }
#tab-usage .rp-tabs { margin-top: 4px; }
#reports-root .us-filters select { max-width: 240px; }
.rp-range { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; text-align: right; }
.rp-chk { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; color: var(--ink); cursor: pointer; }
.rp-chk input, .rp-mchk input { accent-color: var(--gm, #2f6b3a); width: 16px; height: 16px; }
.us-pmenu .rp-mchk { display: flex; align-items: flex-start; gap: 8px; padding: 8px 10px; font-size: 14px; font-weight: 600; cursor: pointer; border-radius: 7px; }
.us-pmenu .rp-mchk:hover { background: #f4efe3; }
.us-pmenu .rp-mchk small { display: block; font-weight: 400; font-size: 12px; color: var(--ink2); margin-left: 4px; }
.rp-sep { border-top: 1px solid var(--line); margin: 4px 0; }
.rp-fmenu { min-width: 250px; }
.rp-always { font-size: 12px; color: var(--ink3); padding: 6px 10px 2px; }
.rp-tiles .rp-live .v { color: var(--warn, #b4552f); }
.rp-tiles .rp-att .v { color: #8a5a00; }
.rp-attn { background: #fdf1dc; border: 1px solid #f0d39a; border-radius: 14px; padding: 12px 16px; margin-bottom: 14px; }
.rp-attn h3 { margin: 0 0 6px; font-size: 15px; color: #8a5a00; }
.rp-attn ul { margin: 0; padding-left: 18px; }
.rp-attn li { margin: 4px 0; font-size: 14px; }
.rp-attn a { color: #1f5130; font-weight: 600; }
.rp-more { margin-top: 6px; border: 0; background: none; color: #1f5130; font: inherit; font-weight: 600; cursor: pointer; padding: 0; }
.rp-detailbar { display: flex; align-items: center; gap: 12px 16px; flex-wrap: wrap; margin-bottom: 10px; }
.rp-hint { color: var(--ink3); font-size: 13px; margin-left: auto; }
.rp-tblcard { overflow: hidden; }
.rp-foot { color: var(--ink3); font-size: 12.5px; margin-top: 10px; }
.rp-old { margin-top: 26px; font-size: 12.5px; }
.rp-old a { color: var(--ink3); }
.rp-dim { color: var(--ink2); font-size: 12.5px; font-weight: 400; }
.rp-var { color: #388e3c; font-style: italic; font-size: 12.5px; }
.rp-part { color: #c62828; font-style: italic; font-size: 12px; font-weight: 400; }
.rp-cost { color: #2f6b3a; font-weight: 600; font-size: 12.5px; }
.rp-miss { color: #c2410c; font-weight: 600; }
.rp-sect { font-size: 12px; color: var(--ink3); text-transform: uppercase; letter-spacing: .05em; margin: 10px 0 4px; font-weight: 700; }
.rp-pill { display: inline-block; font-size: 12px; font-weight: 700; border-radius: 999px; padding: 1px 8px; margin-bottom: 3px; }
.rp-pill.live { background: #fdeee6; color: #c2410c; }
.rp-pill.warn { background: #fdf1dc; color: #8a5a00; }
/* nothing in the range shown (reports-page.js emptySpray) */
.rp-nothing { padding: 18px 20px; font-size: 15px; }
.rp-nothing a { color: #1f5130; font-weight: 600; margin-left: 4px; white-space: nowrap; }
/* WPS posting: tick boxes, Printed / Not printed, Print selected with its ▾, the Undo toast */
.rp-tag { display: inline-block !important; font-size: 12px !important; font-weight: 700; border-radius: 999px; padding: 2px 9px; margin-top: 5px; }
.rp-tag.np { color: #1f5f99 !important; background: #e6f0fa; }
.rp-tag.pr { color: var(--ink2) !important; background: #eef0e9; }
.rp-mt .rp-tag { margin: 0 0 0 auto; }
.rp-mt .rp-tag + .rp-chev { margin-left: 4px; }
.rp-sel, #rp-selall { width: 18px; height: 18px; accent-color: var(--gm, #2f6b3a); cursor: pointer; }
.rp-wps col.rp-ck { width: 40px; }
.rp-wps td.rp-ck, .rp-wps th.rp-ck { padding-right: 0; }
.rp-wps tr.rp-rec.ck td { background: #f3f8f1; }
.rp-mrow { display: flex; align-items: flex-start; gap: 4px; }
.rp-mrow .rp-sel { margin: 14px 0 0 12px; flex: 0 0 auto; }
.rp-mrow .rp-mh { flex: 1; min-width: 0; }
.rp-mc.ck { background: #f3f8f1; border-color: #cfe3cc; }
.rp-selrow { margin: 0 0 8px 2px; }
.us-acts .us-btn[disabled] { background: #eeeae0; border-color: #e2dccd; color: var(--ink3); cursor: default; }
.rp-caret { padding-left: 11px; padding-right: 11px; }
.toast.rp-undo { pointer-events: auto; }
.rp-undo-btn { border: 0; background: none; color: #9fd3a8; font: inherit; font-weight: 700; cursor: pointer; padding: 0 2px; text-decoration: underline; }
/* an EPA reg #, an REI, a licence #, a date, the spray's times and the re-entry never break */
.rp-pe, .rp-pr, .rp-nw { white-space: nowrap; }
@media (max-width: 900px) {
  .rp-wpsacts #rp-acts { display: flex; gap: 6px; width: 100%; }
  .rp-wpsacts #rp-acts > .us-btn { flex: 1; padding: 10px 6px; }
  .toast.rp-undo { bottom: 96px; }
}

/* WPS posting: one row per spray; each product's EPA reg #, active ingredient,
   REI (and PHI) on its own line, a dash where the record has none */
.rp-wps { width: 100%; border-collapse: collapse; table-layout: fixed; }
.rp-wps th { font-size: 11.5px; letter-spacing: .05em; text-transform: uppercase; color: #1f4a28; text-align: left; padding: 9px 10px; background: var(--head); font-weight: 700; border-bottom: 1px solid var(--line); vertical-align: bottom; }
.rp-wps td { vertical-align: top; padding: 10px; border-bottom: 1px solid var(--line2); overflow-wrap: anywhere; }
.rp-wps tr.alt td { background: #fbf8f1; }
.rp-wps col.rp-cd { width: 15%; } .rp-wps col.rp-cb { width: 22%; } .rp-wps col.rp-cr { width: 14%; }
.rp-wps.phi col.rp-cd { width: 13%; } .rp-wps.phi col.rp-cb { width: 18%; } .rp-wps.phi col.rp-cr { width: 11%; } .rp-wps.phi col.rp-ch { width: 9%; }
.rp-cd b { display: block; }
.rp-cd span, .rp-cr span { display: block; color: var(--ink2); font-size: 13px; }
.rp-cd .rp-miss { color: #c2410c; }
/* "Lic #3367" runs on after the applicator's name ("Casey · Lic #3367"), and wraps whole */
.rp-cd > span .rp-nw { display: inline; }
.rp-cont { color: var(--ink2); font-size: 12.5px; font-style: italic; }
.rp-crop { font-size: 12.5px; color: var(--ink2); }
.rp-farm { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--ink3); padding-top: 4px; }
.rp-blk { font-weight: 600; font-size: 14px; padding: 1px 0; }
.rp-blk sup { color: #9a6a00; font-weight: 600; font-size: 10.5px; margin-left: 4px; }
.rp-strip { font-size: 12.5px; color: var(--ink2); padding-top: 4px; }
.rp-pl { display: grid; grid-template-columns: minmax(0, 3.6fr) minmax(0, 1.8fr) minmax(0, 3.2fr) minmax(0, 1.2fr); gap: 8px; padding: 3px 0; border-bottom: 1px dashed var(--line2); }
.rp-wps.phi .rp-pl { grid-template-columns: minmax(0, 3.2fr) minmax(0, 1.7fr) minmax(0, 2.8fr) minmax(0, 1.1fr) minmax(0, 1.9fr); }
.rp-cm .rp-pl:last-child { border-bottom: 0; }
.rp-plh { border: 0; padding: 0; }
.rp-pn { font-weight: 700; }
.rp-pe, .rp-pa, .rp-pr, .rp-pp { font-size: 13px; color: var(--ink2); font-variant-numeric: tabular-nums; }
.rp-pr { color: var(--ink); font-weight: 600; }
.rp-until.live { color: #c2410c; font-weight: 600; }
.rp-wps tr.live td { background: #fff8f4; }

/* Full audit: one card per spray */
.rp-card { display: grid; grid-template-columns: 210px minmax(0, 1fr); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; margin-bottom: 12px; background: var(--card); }
.rp-card.live { border-color: #f3c3a8; }
.rp-meta { background: #f6f2e9; padding: 14px 16px; font-size: 13.5px; }
.rp-meta h4 { margin: 0 0 2px; font-size: 16px; }
.rp-meta dl { margin: 6px 0 0; }
.rp-meta dt { color: var(--ink3); font-size: 12px; margin-top: 5px; }
.rp-meta dd { margin: 0; overflow-wrap: break-word; }
.rp-meta dd.live { color: #c2410c; }
/* its natural height (not stretched to the meta column): print measures it */
.rp-body { padding: 8px 14px 12px; min-width: 0; align-self: start; }
.rp-body table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.rp-body th { font-size: 11px; letter-spacing: .05em; text-transform: uppercase; color: var(--ink3); text-align: left; padding: 6px; border-bottom: 1px solid var(--line); }
.rp-body td { padding: 6px; border-bottom: 1px solid var(--line2); vertical-align: top; overflow-wrap: break-word; }
.rp-body td[data-l=REI] { white-space: nowrap; }
.rp-body .n { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.rp-body tr.rp-tot td, .rp-body tr.rp-sub td { font-weight: 700; }
.rp-body tr.rp-fh td { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--ink3); padding-top: 10px; }
.rp-notes { margin-top: 8px; font-size: 13.5px; }
.rp-body tr.rp-kid td { font-size: .92em; color: var(--ink2); border-bottom-style: dashed; }
.rp-body tr.rp-kid td:first-child { padding-left: 20px; }
.rp-body tr.rp-kid b { font-weight: 600; }

/* fertilizer, calibration */
.rp-plain { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.rp-plain th { font-size: 11.5px; letter-spacing: .05em; text-transform: uppercase; color: #1f4a28; text-align: left; padding: 9px 8px; background: var(--head); border-bottom: 1px solid var(--line); }
.rp-plain td { padding: 8px; border-bottom: 1px solid var(--line2); vertical-align: top; overflow-wrap: anywhere; }
.rp-plain tr.alt td { background: #fbf8f1; }

/* phones: collapsed record cards (reports-page.js mobileList) */
.rp-mlist { display: grid; gap: 8px; }
.rp-mc { background: var(--card); border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.rp-mc.live { border-color: #f3c3a8; }
.rp-mh { display: block; width: 100%; text-align: left; border: 0; background: none; font: inherit; color: var(--ink); padding: 11px 14px; cursor: pointer; }
.rp-mt { display: flex; align-items: center; gap: 8px; font-size: 15px; }
.rp-mt .rp-miss { font-size: 14px; }
.rp-chev { margin-left: auto; color: var(--ink3); font-size: 18px; transition: transform .15s; }
.rp-mc.open .rp-chev { transform: rotate(90deg); }
.rp-ms { display: block; font-size: 13px; color: var(--ink2); margin-top: 2px; }
.rp-mc.live .rp-mre { color: #c2410c; font-weight: 600; }
.rp-mb:empty { display: none; }
.rp-mb { border-top: 1px solid var(--line2); }
.rp-mb .rp-card { border: 0; border-radius: 0; margin: 0; }
.rp-showmore { display: block; width: 100%; margin-top: 10px; padding: 11px; }
@media (max-width: 900px) {
  .rp-range { align-items: flex-start; text-align: left; }
  .rp-hint { margin-left: 0; width: 100%; }
  #rp-body .rp-wps, #rp-body .rp-wps tbody, #rp-body .rp-wps tr, #rp-body .rp-wps td { display: block; width: 100% !important; }
  #rp-body .rp-wps thead { display: none; }
  #rp-body .rp-wps tr.rp-rec { border-bottom: 6px solid var(--bg, #f5efe3); }
  #rp-body .rp-wps td { border-bottom: 1px dashed var(--line2); }
  #rp-body .rp-wps td.rp-ch::before { content: "Harvest after "; color: var(--ink3); font-size: 12.5px; }
  #rp-body .rp-pl, #rp-body .rp-wps.phi .rp-pl { grid-template-columns: 1fr 1fr; gap: 0 10px; }
  #rp-body .rp-pn { grid-column: 1 / -1; }
  #rp-body .rp-pe::before { content: "EPA "; color: var(--ink3); }
  #rp-body .rp-pr::before { content: "REI "; color: var(--ink3); font-weight: 400; }
  #rp-body .rp-pp::before { content: "PHI "; color: var(--ink3); }
  #rp-body .rp-pa { grid-column: 1 / -1; }
  #rp-body .rp-pa::before { content: "AI "; color: var(--ink3); }
  .rp-mb .rp-cd b { display: none; }
  .rp-tabs button { padding: 9px 9px; font-size: 14px; }
  #rp-body .rp-pt thead { display: none; }
  #rp-body .rp-pt tr { display: grid; grid-template-columns: 1fr 1fr; gap: 0 10px; padding: 6px 0; border-bottom: 1px solid var(--line2); }
  #rp-body .rp-pt td { border: 0; padding: 1px 4px; text-align: left; white-space: normal; }
  #rp-body .rp-pt td:first-child { grid-column: 1 / -1; }
  #rp-body .rp-pt td[data-l]::before { content: attr(data-l) " "; color: var(--ink3); font-size: 12px; }
  .rp-card { grid-template-columns: 1fr; }
  #rp-body .rp-tblcard { overflow-x: auto; }
  #rp-body .rp-plain { min-width: 760px; }
}

/* phones (docs/plans/mocks/mock-reports-phone2.html; reports-page.js buildPhone):
   Export in the top bar, tabs across the width, range chips and a Filters sheet,
   a summary line for the tiles, Print in a bar above the bottom nav */
#rp-topx { display: none; }
.rp-sheet, .rp-shade, .rp-selbar { display: none; }
@media (max-width: 900px) {
  body:has(#tab-report.active) #rp-topx { display: inline-block; }
  #rp-topx .rp-topbtn { background: rgba(255,255,255,.14); color: #fff; border: 1px solid rgba(255,255,255,.3); border-radius: 999px; padding: 7px 13px; font: inherit; font-size: 13.5px; font-weight: 600; cursor: pointer; }
  #rp-topx .us-pmenu { z-index: 400; }
  .rp-phone .rp-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0 0 10px; overflow: visible; }
  .rp-phone .rp-tabs button { padding: 10px 2px; font-size: 14px; text-align: center; }
  .rp-phone .rp-tabs button[data-tab="usage"]::after { content: none; }
  .rp-fl { display: flex; gap: 5px; margin-bottom: 8px; }
  .rp-chip { white-space: nowrap; border: 1px solid var(--line); background: var(--card); color: var(--ink); border-radius: 999px; padding: 7px 8px; font: inherit; font-size: 13px; cursor: pointer; }
  .rp-chip.on { background: var(--gm, #2f6b3a); border-color: var(--gm, #2f6b3a); color: #fff; font-weight: 600; }
  .rp-chip.rp-fchip { margin-left: auto; }
  .rp-prange { font-size: 12.5px; color: var(--ink3); margin: -2px 2px 6px; }
  .rp-prange:empty { display: none; }
  .rp-pcustom { gap: 10px; margin-bottom: 8px; }
  .rp-pcustom label { flex: 1; display: flex; flex-direction: column; gap: 3px; font-size: 12px; font-weight: 700; color: var(--ink3); text-transform: uppercase; letter-spacing: .05em; }
  .rp-pcustom input { font: inherit; font-size: 15px; padding: 7px 8px; border: 1px solid var(--line); border-radius: 9px; background: var(--card); min-width: 0; }
  .rp-sum { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 2px 8px; font-size: 13px; color: var(--ink2); margin: 0 2px 8px; }
  .rp-sum > span { white-space: nowrap; }
  .rp-sum b { color: var(--ink); }
  .rp-sum b.rp-livec { color: #c2410c; }
  .rp-missbtn { border: 0; background: none; padding: 0; font: inherit; font-size: 13px; color: #c2410c; font-weight: 600; cursor: pointer; white-space: nowrap; }
  .rp-phone .rp-attn { padding: 10px 12px; margin-bottom: 10px; }
  .rp-phone .rp-detailbar { flex-wrap: nowrap; gap: 10px; margin-bottom: 8px; }
  .rp-phone .rp-detailbar .us-seg[data-seg="view"] { flex: 1; display: flex; border-radius: 10px; }
  .rp-phone .rp-detailbar .us-seg[data-seg="view"] button { flex: 1; font-weight: 600; }
  .rp-phone .rp-selrow { font-size: 13.5px; color: var(--ink2); }
  .rp-phone .rp-mlist { gap: 7px; }
  .rp-phone .rp-mh { padding: 9px 11px 9px 8px; }
  .rp-phone .rp-mrow .rp-sel { width: 20px; height: 20px; margin: 11px 0 0 11px; }
  .rp-phone .rp-mc.ck { background: #f1f7ef; }
  .rp-phone .rp-mt .rp-tag { margin: 0 0 0 auto; font-size: 11.5px !important; padding: 2px 8px; }
  .rp-phone .rp-tag.pr { color: #3f6b45 !important; background: #e3efe5; }
  .rp-phone.rp-hasbar { padding-bottom: 64px; }
  #reports-root.rp-sheeton .rp-shade { display: block; position: fixed; inset: 0; background: rgba(20,30,22,.35); z-index: 300; }
  #reports-root.rp-sheeton .rp-sheet { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 301; background: var(--card); border-radius: 18px 18px 0 0; box-shadow: 0 -8px 24px rgba(0,0,0,.25); padding: 14px 16px max(20px, env(safe-area-inset-bottom)); }
  .rp-sheet h4 { margin: 0 0 6px; font-size: 17px; }
  .rp-sheet .rp-lb { display: block; font-size: 11.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ink3); margin: 10px 0 5px; }
  .rp-sheet select { width: 100%; font: inherit; font-size: 16px; padding: 9px; border: 1px solid var(--line); border-radius: 10px; background: var(--card); color: var(--ink); }
  .rp-sheet .rp-slive { display: flex; margin-top: 14px; font-size: 15px; }
  .rp-sheet .rp-slive input { width: 20px; height: 20px; }
  .rp-go { display: block; width: 100%; margin-top: 16px; border: 0; background: var(--gm, #2f6b3a); color: #fff; border-radius: 12px; padding: 12px; font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; }
  .rp-selbar.on { display: flex; position: fixed; left: 0; right: 0; z-index: 150; align-items: center; gap: 6px; background: #1d2a1f; color: #fff; padding: 9px 12px; box-shadow: 0 -4px 14px rgba(0,0,0,.2); }
  .rp-selbar b { flex: 1; font-size: 15px; }
  .rp-selbar .rp-sbtn { border: 0; background: none; color: #cfe3cc; font: inherit; font-size: 14.5px; padding: 8px 8px; cursor: pointer; }
  .rp-selbar .rp-pbtn { border: 0; background: #7fd08a; color: #10301a; border-radius: 10px; padding: 9px 18px; font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; }
  .rp-selbar .us-pmenu { top: auto; bottom: calc(100% + 8px); right: -60px; min-width: 250px; color: var(--ink); }
  .rp-selbar .rp-mchk { flex-wrap: wrap; }
  .rp-selbar .rp-mchk small { flex-basis: 100%; margin: 0 0 0 24px; }
  body:has(.rp-selbar.on) .toast.rp-undo { bottom: 150px; }
}

/* The print sheet (#us-print, Usage Summary's; filled by ReportsPage.preparePrint).
   Sized outside @media print so it measures off screen as it prints. */
#us-print.rpp { color: #1d2b21; font-size: 9.5pt; line-height: 1.35; }
#us-print.rpp.rpp-large { font-size: 13pt; }
.rpp .rpp-head { margin-bottom: 8px; }
.rpp .rpp-t1 { font-size: 1.55em; font-weight: 700; }
.rpp .rpp-t2 { font-size: .95em; color: #5b6560; margin-top: 2px; }
.rpp .rpp-brand { margin-top: 8px; font-size: 8pt; color: #7c857f; }
.rpp .rp-foot { font-size: 8pt; color: #5b6560; }
.rpp .rp-wps th { font-size: .82em; padding: 4px 5px; background: #eef4ef; color: #1f4a28; border-bottom: 1.5px solid #999; }
.rpp .rp-wps td { padding: 4px 5px; border-bottom: 1px solid #d9d4c8; }
.rpp .rp-wps tr.alt td { background: #f7f5ef; }
.rpp .rp-cd span, .rpp .rp-cr span, .rpp .rp-pe, .rpp .rp-pa, .rpp .rp-pp, .rpp .rp-crop, .rpp .rp-strip, .rpp .rp-cont { font-size: .9em; }
.rpp .rp-pr { font-size: .9em; }
.rpp .rp-farm { font-size: .75em; }
.rpp .rp-blk { font-size: 1em; }
/* the posting sheet: the date and re-entry columns as wide as their unbreakable
   lines (reports-page.js fitColumns), the blocks a fifth, the products the rest.
   Each product line: the product with its active ingredient under it, the EPA
   reg # as wide as the longest on the sheet (--rp-epa), the REI 5.5ch. Tried on
   the 2026 seasons: Schweitzer 97% of product names on one line, ingredients
   broken mid-word 1%; Green Mountain 87% and 13% (single words longer than the
   column, e.g. "heptamethyltrisiloxane"). */
.rpp .rp-wps col.rp-cd { width: 15%; } .rpp .rp-wps col.rp-cb { width: 19%; } .rpp .rp-wps col.rp-cr { width: 14%; }
.rpp .rp-wps.phi col.rp-cd { width: 14%; } .rpp .rp-wps.phi col.rp-cb { width: 17%; } .rpp .rp-wps.phi col.rp-cr { width: 13%; } .rpp .rp-wps.phi col.rp-ch { width: 8%; }
.rpp .rp-pl { grid-template-columns: minmax(0, 1fr) var(--rp-epa, 14ch) 5.5ch; grid-template-areas: "n e r" "a e r"; row-gap: 0; }
.rpp .rp-wps.phi .rp-pl { grid-template-columns: minmax(0, 1fr) var(--rp-epa, 14ch) 5.5ch minmax(0, .5fr); grid-template-areas: "n e r p" "a e r p"; }
.rpp .rp-pn { grid-area: n; } .rpp .rp-pe { grid-area: e; } .rpp .rp-pa { grid-area: a; } .rpp .rp-pr { grid-area: r; } .rpp .rp-pp { grid-area: p; }
.rpp .rp-plh span { font-weight: inherit; font-size: inherit; color: inherit; }
.rpp .rp-pl > span { overflow-wrap: break-word; }
.rpp .rp-cd > span, .rpp .rp-cr > span { font-size: .86em; }
/* the posting sheet prints with no page margin: 0.5in each side here, and at the
   top and bottom of every page the header and footer rows' 0.5in */
#us-print.rpp-wps { box-sizing: border-box; padding: 0 0.5in; }
.rpp .rp-wps .rpp-space th, .rpp .rp-wps .rpp-space td { height: 0.5in; padding: 0; border: 0; background: none; }
.rpp .rp-wps .rpp-stamp th { background: none; text-transform: none; letter-spacing: 0; font-size: 1em; font-weight: 700; color: #1d2b21; text-align: left; padding: 0 0 4px; border-bottom: 1.5px solid #999; }
.rpp .rp-wps .rpp-stamp small { display: block; font-weight: 400; font-size: .9em; color: #5b6560; margin-top: 1px; }
.rpp .rp-wps .rpp-note td { font-size: 7.5pt; color: #5b6560; padding: 6px 0 0; border: 0; background: none; }
.rpp .rp-pl { gap: 5px; padding: 1px 0; border-bottom-color: #e5e0d4; }
.rpp .rp-card { border-radius: 4px; border-color: #ccc; margin-bottom: 8px; grid-template-columns: 1.7in minmax(0, 1fr); }
.rpp .rp-meta { padding: 6px 8px; font-size: .95em; background: #f6f2e9; }
.rpp .rp-meta dt { font-size: .85em; margin-top: 2px; }
.rpp .rp-meta h4 { font-size: 1.15em; }
.rpp .rp-body { padding: 4px 8px 6px; }
.rpp .rp-body table, .rpp .rp-plain { font-size: 1em; }
.rpp .rp-body th, .rpp .rp-plain th { font-size: .8em; padding: 3px 4px; }
.rpp .rp-body td, .rpp .rp-plain td { padding: 2px 4px; }
.rpp .rp-dim, .rpp .rp-var, .rpp .rp-part, .rpp .rp-cost { font-size: .88em; }
.rpp .rp-sect { font-size: .8em; margin: 4px 0 2px; }
.rpp .us-card { border: 0; border-radius: 0; background: none; }
@media print {
  #us-print.rpp .rp-wps thead, #us-print.rpp .rp-plain thead, #us-print.rpp .rp-body thead { display: table-header-group; }
  #us-print.rpp tr, #us-print.rpp .rp-card { break-inside: avoid; page-break-inside: avoid; }
  #us-print.rpp .rp-sect { break-after: avoid; page-break-after: avoid; }
}
