/* life-file-checklist — on top of the guide kit (pages/_guide.css).
   The checklist table (group rows, an empty square to tick on paper — never a tick glyph — and column widths),
   the product panel, and the A4 print sheet: the checklist only, without site chrome. */

/* ---- group rows: a pale band with the mark's stroke (same block as how-long-to-keep-documents) */
html body .gd-table tr.gd-grp th {
  padding: 12px 24px 11px !important; border-top: 1px solid var(--gd-line); background: var(--gd-tint);
  color: #0b5cad; font: 650 12px/1.3 var(--font-sans); letter-spacing: .12em; text-transform: uppercase;
}
html body .gd-table tbody:first-of-type tr.gd-grp th { border-top: 0; }
html body .gd-table tr.gd-grp th::before {
  content: ""; display: inline-block; width: 3px; height: 12px; margin: 0 10px -1px 0; border-radius: 2px;
  background: var(--gd-blue); transform: var(--gd-stroke);
}
html body .gd-table tr.gd-grp + tr :is(th, td) { border-top: 0; }

/* ---- the checklist: a square per document, to tick with a pen */
html body .lf-table tbody tr:not(.gd-grp) th[scope="row"] { position: relative; padding-left: 54px; }
html body .lf-table tbody tr:not(.gd-grp) th[scope="row"]::before {
  content: ""; position: absolute; left: 24px; top: 20px; width: 15px; height: 15px; box-sizing: border-box;
  border: 1.5px solid #8fb6dc; border-radius: 4px; background: #fff;
}
html body .lf-table thead th { white-space: normal; }
html body .lf-table td:empty::after { content: "\2014"; color: #a3b1bf; }
html body .lf-table td { font-size: 15px; }

@media (min-width: 641px) {
  html body .lf-table table { table-layout: fixed; }
  html body .lf-table thead th:nth-child(1) { width: 26%; }
  html body .lf-table thead th:nth-child(2) { width: 24%; }
  html body .lf-table thead th:nth-child(3) { width: 18%; }
  html body .lf-table thead th:nth-child(4) { width: 15%; }
  html body .lf-table thead th:nth-child(5) { width: 17%; }
  html body .lf-table thead :is(th, td), html body .lf-table tbody :is(th, td) { padding-left: 14px; padding-right: 14px; }
  html body .lf-table thead th:first-child { padding-left: 54px; }
  html body .lf-table tbody tr.gd-grp th { padding-left: 24px !important; }
}

@media (max-width: 640px) {
  html body .gd-table:has(td[data-label]):not(.gd-table--scroll) tbody tr.gd-grp {
    margin: 26px 0 10px; padding: 0 2px; border-radius: 0; background: transparent; box-shadow: none;
  }
  html body .gd-table:has(td[data-label]):not(.gd-table--scroll) tbody:first-of-type tr.gd-grp { margin-top: 4px; }
  html body .gd-table:has(td[data-label]):not(.gd-table--scroll) tbody tr.gd-grp th {
    padding: 0 !important; border: 0; background: transparent; font-size: 12px;
  }
  html body .gd-table:has(td[data-label]):not(.gd-table--scroll) td[data-label]:empty { display: none; }
  html body .lf-table tbody tr:not(.gd-grp) th[scope="row"] { padding-left: 28px !important; }
  html body .lf-table tbody tr:not(.gd-grp) th[scope="row"]::before { left: 0; top: 4px; }
}

/* ---- the product panel */
html body .lf-note .gd-app-row > span:first-child { min-width: 0; }
html body .lf-note .gd-app-row .gd-app-meta { text-align: right; }
html body .gd-article .gd-app-label.lf-gap { margin-top: 16px !important; }

/* ---- print: the checklist on A4, with its group headings, and nothing else */
@page { size: A4; margin: 12mm 12mm 14mm; }
@media print {
  html, html body, html body .gd-open { background: #fff !important; }
  html body .gd-open::before, html body .gd-open::after { display: none !important; }
  html body :is(header, footer, .nav-scrim, .gd-crumbs, .gd-lead, .gd-lead-next, .gd-checked a) { display: none !important; }
  html body .gd-sec:not(#checklist) { display: none !important; }
  html body .gd-open { padding: 0 0 8px !important; }
  html body .gd-open h1 { max-width: none; margin: 0; font-size: 20pt; }
  html body .gd-open .gd-checked { margin: 6px 0 0; padding: 0; border: 0; font-size: 9pt; }
  html body .gd-body { padding: 0 !important; }
  html body .gd-wrap { padding: 0 !important; max-width: none; }
  html body #checklist h2 { display: none; }
  html body #checklist > p { margin-top: 10px; font-size: 9pt; }
  html body .lf-table { margin: 6px 0 0; border-radius: 0; box-shadow: none; overflow: visible; }
  html body .lf-table table { font-size: 9pt; line-height: 1.35; }
  html body .lf-table caption { padding: 0 0 6px; font-size: 11pt; }
  html body .lf-table td { font-size: 9pt; }
  html body .lf-table thead :is(th, td) { padding: 5px 6px; font-size: 7pt; border-top: 1px solid #bcd; }
  html body .lf-table tbody :is(th, td) { padding: 5px 6px; border-top: 1px solid #d6dee7; }
  html body .lf-table tbody th { font-size: 9pt; }
  html body .lf-table tbody th small { font-size: 7.5pt; }
  html body .lf-table thead th:first-child, html body .lf-table tbody tr:not(.gd-grp) th[scope="row"] { padding-left: 24px; }
  html body .lf-table tbody tr:not(.gd-grp) th[scope="row"]::before { left: 6px; top: 7px; width: 11px; height: 11px; border-color: #567; border-radius: 2px; }
  html body .lf-table tr.gd-grp th { padding: 10px 6px 4px !important; background: none; border-top: 1px solid #567 !important; border-bottom: 1px solid #d6dee7; font-size: 7.5pt; }
  html body .lf-table :is(tr, tbody) { break-inside: avoid; }
  html body .lf-table a, html body #checklist a { color: inherit !important; text-decoration: none !important; box-shadow: none !important; border: 0 !important; }
  html body .lf-table a::after { content: none !important; }
}
