/* Parent report: proofs (the questions of each activity) and the annexes for printing.
   The other report rules are in css/matieres.css (« parent report »). */
.rap-note { font-size: .88rem; color: var(--doux); background: #fff; border-radius: 12px; padding: 8px 12px; margin: 0 0 10px; }
.rap-outils-preuves { margin-top: -4px; gap: 12px; }
.rap-case { display: inline-flex; align-items: center; gap: 6px; font-size: .9rem; cursor: pointer; }
.rap-case input { width: 18px; height: 18px; }
.rap-avec-q > td { border-bottom: none; }
.rap-q-ligne > td { padding: 0 10px 6px 28px; }
.rap-q summary { cursor: pointer; color: var(--accent-2); font-size: .88rem; font-weight: 600; padding: 2px 0; width: max-content; }
.rap-q[open] summary { margin-bottom: 6px; }
.rap-q-table { width: 100%; border-collapse: collapse; font-size: .85rem; background: #faf8f4; border-radius: 8px; overflow: hidden; }
.rap-q-table th { text-align: left; font-weight: 600; color: var(--doux); padding: 4px 8px; font-size: .78rem; }
.rap-q-table td { padding: 4px 8px; border-top: 1px solid #eee8de; vertical-align: top; }
.rap-q-table small { color: var(--doux); }
.rap-q-marque { font-weight: 700; width: 1.4em; }
.rap-q-table tr.ok .rap-q-marque { color: var(--bon); }
.rap-q-table tr.non .rap-q-marque, .rap-q-table tr.non td:nth-child(3) { color: var(--mauvais); }
.rap-lien-direct { margin: 6px 0 0; font-size: .85rem; }
.rap-cible > td, details.rap-cible { background: #fff6d6; }
.rap-ref-annexe, .rap-annexes { display: none; }
@media (max-width: 700px) {
  .rap-q-ligne > td { padding-left: 4px; }
  .rap-q-table { font-size: .78rem; }
}
@media print {
  .rap-ref-annexe { display: inline; font-size: 8pt; color: #555; white-space: nowrap; }
  .rap-annexes { display: block; break-before: page; }
  .sans-annexes .rap-ref-annexe, .sans-annexes .rap-annexes { display: none; }
  .rap-note { padding: 0; font-size: 8.5pt; }
  .rap-annexes h2 { font-size: 12pt; margin: 0 0 2px; }
  .rap-annexes .legende { font-size: 7.5pt; margin: 0 0 4px; }
  .rap-ax-liste { columns: 2; column-gap: 12px; font-size: 7pt; line-height: 1.25; }
  .rap-ax { margin: 0 0 5px; }
  .rap-ax h4 { font-size: 7.5pt; margin: 0 0 1px; padding-top: 2px; border-top: 1px solid #bbb; break-after: avoid; break-inside: avoid; }
  .rap-ax-c { color: #555; font-style: italic; break-after: avoid; }
  .rap-ax-q { break-inside: avoid; padding-left: 8px; text-indent: -8px; }
  .rap-ax-q.non { color: #8a1c1c; }
  .rap-ax-q i { color: #333; }
  .rap-ax-q span { color: #777; }
}

/* backup on the parent's device */
.rap-sauvegarde { background: #fff; border-radius: 14px; padding: 12px 16px; margin-bottom: 12px; border-left: 6px solid #cfd8dc; }
.rap-sauvegarde p { margin: 0 0 8px; }
.rap-sauvegarde.rappel { border-left-color: var(--jaune); background: #fffaf0; }
