/* FROZEN: contract pages (.paper), print geometry and the PDF stage, copied from 1.9.1 unchanged.
   App styles never target elements inside .paper. A change here must pass tests/golden
   (computed styles, chosen font size per page, printed pages pixel by pixel). */
*{box-sizing:border-box}
.paper{width:210mm;min-height:297mm;margin:0 auto;background:white;padding:10mm 11mm;box-shadow:0 12px 38px #26362c20;color:#111;font-family:Arial,sans-serif;border:3px double #111}.paper h2{text-align:center;font-size:24px;margin:2px 0 14px;letter-spacing:.05em}.contract{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10.5px}.contract th,.contract td{border:1px solid #111;padding:5px 7px;vertical-align:middle;min-height:24px;overflow-wrap:anywhere}.contract th{width:26%;text-align:left;font-weight:700}.contract td{height:26px}.split{display:grid;grid-template-columns:1fr 1fr}.split span{padding-right:6px}.split span+span{border-left:1px solid #111;padding-left:7px}.bank{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;font-size:10.5px;margin:9px 0 6px}.line{border-bottom:1px dotted #111;display:inline-block;min-width:63%}.inventory-title{font-size:10.5px;font-weight:700;margin:4px 0}.inventory{border:1px solid #111;height:58px;padding:6px;font-size:10px;white-space:pre-wrap}.tax{font-size:8.4px;margin-top:9px}.tax strong{font-size:10.5px}.placeholder{color:#9aa09b}
@media print{html,body{width:100%;height:auto;margin:0!important;padding:0!important;background:#fff}.app{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.doc-wrap,.doc-wrap.show{display:block!important;position:static!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;background:#fff!important}.paper,.doc-wrap.show .paper{display:block!important;box-sizing:border-box!important;transform:none!important;zoom:1!important;width:100%!important;height:297mm!important;min-height:297mm!important;margin:0!important;padding:10mm 11mm!important;box-shadow:none!important;page-break-inside:avoid!important;break-inside:avoid-page!important;page-break-after:avoid!important}@page{size:210mm 297mm;margin:0}}
/* Contract-only typography: exactly 25% larger than the original. */
    .paper h2{font-size:30px}
    .contract{font-size:13.125px}
    .bank,.inventory-title{font-size:13.125px}
    .inventory{font-size:12.5px}
    .tax{font-size:10.5px}
    .tax strong{font-size:13.125px}
.terms-paper{margin-top:22px;font-size:13.125px;line-height:1.22;overflow-wrap:anywhere}
.terms-paper ol{padding-left:23px;margin:0 0 12px}.terms-paper li{padding-left:3px;margin-bottom:4px;white-space:pre-wrap}
.special-heading{font-weight:bold;margin-top:12px}.special-output{min-height:58px;white-space:pre-wrap;border-bottom:1px dotted #333;padding:6px 0}
.execution-note{font-size:12px;margin:12px 0}.signatures{table-layout:fixed;width:100%;border-collapse:collapse;font-size:12px}.signatures th,.signatures td{border:0;text-align:center;vertical-align:top;padding:4px;overflow-wrap:anywhere}.signatures tr:last-child{height:44px}
@media print{.paper,.doc-wrap.show .paper{height:auto!important;min-height:296mm!important;break-inside:auto!important;page-break-inside:auto!important}.terms-paper{break-before:page!important;page-break-before:always!important;margin-top:0!important}.terms-paper li,.signatures{break-inside:avoid}}
/* Shared A4 composition: 6mm printer margins and 5mm inner padding. */
.paper{--body-size:18.05px;width:198mm;min-height:284mm;padding:5mm;border:1.5px solid #111;font-size:var(--body-size);line-height:1.16}
.paper h2{font-size:25px;margin:2px 0 10px;letter-spacing:.03em}
.paper .contract,.paper .bank,.paper .inventory-title,.paper .inventory,.paper .tax strong{font-size:var(--body-size)}
.paper .contract th,.paper .contract td{padding:4px 6px}.paper .contract th{width:28%}
.paper .inventory{height:auto;min-height:48px}.paper .tax{font-size:11.5px}
.paper .bank{gap:4px 12px;overflow-wrap:anywhere}.paper .line{min-width:0}
.paper .execution-note,.paper .signatures{font-size:13px}.paper .execution-note{margin:8px 0}
.paper .special-output{min-height:40px}.paper .special-heading{margin-top:8px}
.paper li{margin-bottom:3px}.paper ol{margin-bottom:8px}.paper .signatures tr:last-child{height:40px}
@media print{@page{size:A4;margin:6mm}.paper,.doc-wrap.show .paper{width:198mm!important;min-height:284mm!important;height:auto!important;padding:5mm!important;border:1.5px solid #111!important;break-after:auto!important;page-break-after:auto!important}.paper+.paper{break-before:page!important}.paper-content{break-inside:avoid}}
/* Ctrl+P while pages overflow: a warning page is printed instead of a broken contract. */
.print-block{display:none}
@media print{
  body.pages-overflow .paper{display:none!important}
  body.pages-overflow .print-block{display:block!important;font:16px/1.6 Arial,sans-serif;padding:20mm;color:#111}
}
/* Direct PDF: off-screen copies of the pages with print geometry. */
.pdf-stage{position:absolute;left:-10000px;top:0;width:198mm;background:#fff}
.pdf-stage .pdf-page{display:block;margin:0!important;box-shadow:none!important;transform:none!important;zoom:1!important;width:198mm!important;min-height:284mm!important;height:auto!important}
/* html2canvas paints both cells' borders in a collapsed table (double lines). Same collapsed widths, so layout is unchanged; only the painting is single. */
.pdf-stage .contract{border-top:1px solid #111;border-left:1px solid #111}.pdf-stage .contract th,.pdf-stage .contract td{border-width:0 1px 1px 0}
@media print{.pdf-stage{display:none!important}}
