/* ARCH 360 — document readability layer (TASK PDF-READABILITY 2026-10-09).
   Print / PDF only: quotations, agreements, invoices, construction brand list +
   package comparison. Type ~+1pt, near-black ink, table text no lighter than #333,
   light zebra rows. CSS-only: no text, prices, letterhead, logo, header/footer or
   page structure is touched. Header and footer blocks are excluded by structure,
   so only the document body is selected.

   Size map (inline px → px): 8→9.5 · 8.5→10 · 9→10.5 · 9.5→11 · 10→11.5 · 10.5→12
   · 11→12 · 11.5→12.5 · 12→13 · 12.5→13.5 · 13→14 · 13.5→14.5. Titles ≥14px untouched.
   Inline styles appear both hand-written ("font-size:9px") and CSSOM-serialised
   ("font-size: 9px", "color: rgb(…)"), so each selector lists both forms. */

/* ---------------------------------------------------------------------------
   1. ERP sales documents (#printMount preview + print):
      quotation / agreement / invoice (.printA4) and agreement + invoice (.docPage).
      Body wrapper only — the letterhead header, offices footer and authorities
      line are siblings of it and stay exactly as they are.
   --------------------------------------------------------------------------- */
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]){color:#1a1a1a}

#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:8.5px"]{font-size:10px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:9px"]{font-size:10.5px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:9.5px"]{font-size:11px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:10px"]{font-size:11.5px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:10.5px"]{font-size:12px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:11px"]{font-size:12px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:11.5px"]{font-size:12.5px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:12.5px"]{font-size:13.5px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="font-size:13px"]{font-size:14px!important}

/* Fit: the default quotation sits ~10px short of one A4 page (A4, 10mm margins), so the larger
   type is paid for with slightly tighter leading on the long pre-wrap blocks (scope, terms) and
   1px less row padding — net page height stays the same. */
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) p[style*="white-space:pre-wrap"][style*="font-size:9.5px"]{font-size:10.5px!important;line-height:1.3!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="white-space:pre-wrap"]:is([style*="line-height:1.45"],[style*="line-height:1.5"]){line-height:1.34!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="text-transform:uppercase"][style*="font-size:8.5px"]{font-size:8.5px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="text-transform:uppercase"][style*="font-size:9px"]{font-size:9px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="text-transform:uppercase"][style*="font-size:9.5px"]{font-size:9.5px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) [style*="text-transform:uppercase"][style*="font-size:10.5px"]{font-size:10.5px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) td[style^="padding:5px 0"]{padding-top:4px!important;padding-bottom:4px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) td[style^="padding:4px 0"]{padding-top:3px!important;padding-bottom:3px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) td[style^="padding:8px 0"]{padding-top:7px!important;padding-bottom:7px!important}

/* Ink: section labels and signature captions → dark slate; secondary and table text → #333 / #1a1a1a. */
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) :is([style*=";color:#8a919c"],[style^="color:#8a919c"]){color:#3d424a!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) :is([style*=";color:#565c66"],[style^="color:#565c66"]){color:#333!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) :is([style*=";color:#3b4048"],[style^="color:#3b4048"]){color:#1a1a1a!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) :is([style*=";color:#b0b6bd"],[style^="color:#b0b6bd"]){color:#333!important}

/* Tables: firmer row rules; light zebra on schedules/stages (4+ rows). The band bleeds 6px into the
   page gutter so the text stays on the same column as the section labels. */
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) td[style*="solid #eee"]{border-color:#dcdcdf!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) table:has(tr:nth-child(4)){width:calc(100% + 12px)!important;margin-left:-6px!important;margin-right:-6px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) table:has(tr:nth-child(4)) td{padding-left:6px!important;padding-right:6px!important}
#printMount :is(.printA4,.docPage)>div:is([style^="padding:12px 28px 0"],[style^="padding:16px 40px 0"]) table:has(tr:nth-child(4)) tr:nth-child(even)>td{background:#f5f5f6}

/* ---------------------------------------------------------------------------
   2. Construction client pack (#printMount .brandSpec / .suiteA4, class-styled).
      Letterhead (.cerpLetterhead*) is not selected.
   --------------------------------------------------------------------------- */
.brandSpec .doc-sub{font-size:10.5px}
.brandSpec .client-box{font-size:11px}
.brandSpec .client-box :is(.prepared,.k){font-size:9px}
.brandSpec .client-box .v{font-size:12px}
.brandSpec .pkg :is(.grade,.blurb){font-size:9px}
.brandSpec .pkg .split{font-size:10px}
.brandSpec table.grid,.brandSpec .grid{font-size:10px}
.brandSpec table.grid th{font-weight:700}
.brandSpec table.grid :is(.unit,.spec){font-size:9px}
.brandSpec table.grid tbody tr:nth-child(even)>td{background:#f6f5f3}
.brandSpec table.grid td{border-bottom-color:#dcdad6}
.brandSpec .note-box{font-size:9px;color:#1a1a1a}
.brandSpec .signs .t{font-size:10px}
#printMount.suitePrintOpen .suiteA4 table:is(.grid,.suiteGrid) tbody tr:nth-child(even)>td{background:#f6f5f3}

/* ---------------------------------------------------------------------------
   3. Construction document templates (iframe sheets) — print only, so the
      on-screen editors are unchanged. Body regions:
        brand list / quotation  .ceoDoc > everything except .beDocHeader
        grey/finishing scopes   980px sheet > everything except its first (header) block
        agreements              1080px x-dc sheet > everything except its first (header) block
        invoice                 [data-doc-kind=invoice] > everything except header (319) and footer (417)
   --------------------------------------------------------------------------- */
@media print{
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:8px"],[style*="font-size: 8px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:8px"],[style*="font-size: 8px"]){font-size:9.5px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:8.5px"],[style*="font-size: 8.5px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:8.5px"],[style*="font-size: 8.5px"]){font-size:10px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:9px"],[style*="font-size: 9px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:9px"],[style*="font-size: 9px"]){font-size:10.5px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:9.5px"],[style*="font-size: 9.5px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:9.5px"],[style*="font-size: 9.5px"]){font-size:11px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:10px"],[style*="font-size: 10px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:10px"],[style*="font-size: 10px"]){font-size:11.5px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:10.5px"],[style*="font-size: 10.5px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:10.5px"],[style*="font-size: 10.5px"]){font-size:12px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:11px"],[style*="font-size: 11px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:11px"],[style*="font-size: 11px"]){font-size:12px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:11.5px"],[style*="font-size: 11.5px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:11.5px"],[style*="font-size: 11.5px"]){font-size:12.5px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:12px"],[style*="font-size: 12px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:12px"],[style*="font-size: 12px"]){font-size:13px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:12.5px"],[style*="font-size: 12.5px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:12.5px"],[style*="font-size: 12.5px"]){font-size:13.5px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:13px"],[style*="font-size: 13px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:13px"],[style*="font-size: 13px"]){font-size:14px!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*="font-size:13.5px"],[style*="font-size: 13.5px"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*="font-size:13.5px"],[style*="font-size: 13.5px"]){font-size:14.5px!important}

  /* Ink: body copy greys → #1a1a1a; secondary / table greys → #333 (red, white, pink numerals untouched). */
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*=";color:#3a3a3a" i],[style^="color:#3a3a3a" i],[style*=";color:#4a4a4a" i],[style^="color:#4a4a4a" i],[style*="; color: rgb(58, 58, 58)"],[style*="; color: rgb(74, 74, 74)"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*=";color:#3a3a3a" i],[style^="color:#3a3a3a" i],[style*=";color:#4a4a4a" i],[style^="color:#4a4a4a" i],[style*="; color: rgb(58, 58, 58)"],[style*="; color: rgb(74, 74, 74)"]){color:#1a1a1a!important}
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])) :is([style*=";color:#555" i],[style^="color:#555" i],[style*=";color:#5a5a5a" i],[style^="color:#5a5a5a" i],[style*=";color:#666" i],[style^="color:#666" i],[style*=";color:#6b6b6b" i],[style^="color:#6b6b6b" i],[style*=";color:#777" i],[style^="color:#777" i],[style*=";color:#7a7a7a" i],[style^="color:#7a7a7a" i],[style*=";color:#8a8a8a" i],[style^="color:#8a8a8a" i],[style*=";color:#999" i],[style^="color:#999" i],[style*=";color:#9a9a9a" i],[style^="color:#9a9a9a" i],[style*=";color:#a8a8a8" i],[style^="color:#a8a8a8" i],[style*=";color:#c4c4c4" i],[style^="color:#c4c4c4" i],[style*="; color: rgb(85, 85, 85)"],[style*="; color: rgb(119, 119, 119)"],[style^="color: rgb(119, 119, 119)"],[style*="; color: rgb(154, 154, 154)"],[style^="color: rgb(154, 154, 154)"],[style*="; color: rgb(168, 168, 168)"]),
  :is(.ceoDoc>:not(.beDocHeader),body>div[style*="max-width:980px"]>div:not(:first-child),x-dc>div[style*="width:1080px"]>div:not(:first-child),[data-doc-kind="invoice"]>:not([data-dc-tpl="319"],[data-dc-tpl="417"])):is([style*=";color:#555" i],[style^="color:#555" i],[style*=";color:#5a5a5a" i],[style^="color:#5a5a5a" i],[style*=";color:#666" i],[style^="color:#666" i],[style*=";color:#6b6b6b" i],[style^="color:#6b6b6b" i],[style*=";color:#777" i],[style^="color:#777" i],[style*=";color:#7a7a7a" i],[style^="color:#7a7a7a" i],[style*=";color:#8a8a8a" i],[style^="color:#8a8a8a" i],[style*=";color:#999" i],[style^="color:#999" i],[style*=";color:#9a9a9a" i],[style^="color:#9a9a9a" i],[style*=";color:#a8a8a8" i],[style^="color:#a8a8a8" i],[style*=";color:#c4c4c4" i],[style^="color:#c4c4c4" i],[style*="; color: rgb(85, 85, 85)"],[style*="; color: rgb(119, 119, 119)"],[style^="color: rgb(119, 119, 119)"],[style*="; color: rgb(154, 154, 154)"],[style^="color: rgb(154, 154, 154)"],[style*="; color: rgb(168, 168, 168)"]){color:#333!important}

  /* Package comparison rows (.ceoRow grids): light zebra on unpicked cells; picked column keeps its tint. Firmer row rule. */
  .ceoRow{border-bottom-color:#dedbd6!important}
  .ceoRow:nth-child(even of .ceoRow)>:not(.picked){background:#f7f6f4!important}
  /* Invoice tables: light zebra under the existing black header row. */
  [data-doc-kind="invoice"] table tbody tr:nth-child(even)>td{background:#f6f6f6}
}


/* ---------------------------------------------------------------------------
   CEO ADDENDUM: first-page header readability (letterhead was previously excluded).
   Keep logo/layout/letterhead content; darken washed-out header ink for PDF.
   Company name stays near-black; doc title keeps brand red; secondary meta → graphite.
   Never force white (#fff) heading ink on light paper.
   --------------------------------------------------------------------------- */
#printMount :is(.printA4,.docPage)>div[style*="padding:14px 28px 10px"] :is([style*="color:#8a919c"],[style^="color:#8a919c"],[style*=";color:#8a919c"]){color:#3d424a!important}
#printMount :is(.printA4,.docPage)>div[style*="padding:14px 28px 10px"] :is([style*="color:#1a1c1f"],[style^="color:#1a1c1f"]){color:#1a1a1a!important}
#printMount :is(.printA4,.docPage)>div[style*="padding:14px 28px 10px"] :is([style*="color:#24262b"],[style^="color:#24262b"]){color:#1a1a1a!important}
@media print{
  .beDocHeader{color:#1a1a1a}
  .beDocHeader [style*="color:#0d0d0d"],.beDocHeader [style*="color: #0d0d0d"]{color:#1a1a1a!important}
  .beDocHeader [style*="color:#fff" i],
  .beDocHeader [style*="color:#ffffff" i],
  .beDocHeader [style*="color:white" i]{color:#1a1a1a!important}
  /* Secondary header line ("Brand Schedule · Grades 01–03", #9a9a9a) → graphite, same as ERP letterhead meta. */
  .beDocHeader :is([style*=";color:#999" i],[style*=";color:#9a9a9a" i],[style*=";color:#8a8a8a" i],[style*=";color:#777" i],[style*=";color:#666" i],[style*="; color: rgb(154, 154, 154)"],[style*="; color: rgb(153, 153, 153)"]){color:#3d424a!important}
  .beScopePill{color:#fff!important}
}
