/* Fiche mémo du bureau – écran (tableau de bord) et papier (A5) */

.fcpe78-memo { --bleu: #343A9A; --nuit: #1D2140; --vert: #6DBA4F; --vert-doux: #B3E09E; --lavande: #EEF0FA; --trait: #CDD1E6; color: var(--nuit); font-family: Poppins, Arial, sans-serif; padding: 28px; }
.fcpe78-memo a { color: var(--bleu); }
.fcpe78-memo__entete { display: flex; gap: 20px; align-items: center; padding-bottom: 16px; margin-bottom: 8px; border-bottom: 2px solid var(--vert-doux); }
.fcpe78-memo__entete img { width: 96px; height: auto; flex: none; }
.fcpe78-memo__entete h1, .fcpe78-memo__entete h2 { margin: 0; font-size: 28px; line-height: 1.15; font-weight: 700; color: var(--bleu); }
.fcpe78-memo__sous-titre { margin: 4px 0 0; font-size: 16px; color: var(--bleu); }
.fcpe78-memo__annee { margin: 4px 0 0; font-size: 14px; color: #555A78; }

.fcpe78-memo__bloc { margin-top: 22px; }
.fcpe78-memo__titre { display: flex; gap: 8px; align-items: baseline; margin: 0 0 10px; padding-bottom: 6px; border-bottom: 2px solid var(--vert-doux); font-size: 18px; font-weight: 700; color: var(--bleu); }
.fcpe78-memo__titre span { color: var(--vert); }

.fcpe78-memo__table { width: 100%; border-collapse: collapse; font-size: 15px; table-layout: fixed; }
.fcpe78-memo__table th, .fcpe78-memo__table td { border: 1px solid var(--trait); padding: 9px 12px; text-align: left; vertical-align: top; overflow-wrap: break-word; }
.fcpe78-memo__table tbody th { background: var(--lavande); font-weight: 600; color: var(--nuit); }
.fcpe78-memo__table tbody th span:not(.screen-reader-text):not(.fcpe78-case-fiche):not(.fcpe78-memo__choix) { display: block; font-size: 12px; font-weight: 400; color: #555A78; }
.fcpe78-memo__table--deux th { width: 34%; }
.fcpe78-memo__table thead th { background: var(--bleu); color: #FFFFFF; font-weight: 600; font-size: 14px; border-color: var(--bleu); }
.fcpe78-memo__table--bureau thead th:nth-child(1) { width: 19%; }
.fcpe78-memo__table--bureau thead th:nth-child(2) { width: 23%; }
.fcpe78-memo__table--bureau thead th:nth-child(3) { width: 36%; }
.fcpe78-memo__table--bureau thead th:nth-child(4) { width: 22%; }
.fcpe78-memo__table--bureau a[href^="tel:"] { white-space: nowrap; word-break: normal; }
.fcpe78-memo__table--bureau td a { word-break: break-all; }
.fcpe78-memo__table--outils tbody th { width: 42%; }
.fcpe78-memo__table--outils .fcpe78-memo__action { width: 96px; text-align: center; vertical-align: middle; }
.fcpe78-memo__table--outils thead th:last-child:not(:nth-child(2)) { width: 96px; }
.fcpe78-memo__table--outils tbody tr:not(.est-actif) th { background: #F7F8FC; }
.fcpe78-memo__table--outils tbody tr:not(.est-actif) th strong { color: #555A78; }
.fcpe78-memo__vide { color: #8A8FA8; font-style: italic; font-size: 14px; }
.fcpe78-memo__petit { font-size: 13px; color: #555A78; margin: 0 0 8px; }
.fcpe78-memo__suffixe { display: block; text-align: right; color: #555A78; }
.fcpe78-memo__cases { display: flex; flex-wrap: wrap; gap: 6px 20px; align-items: center; }
.fcpe78-memo p.fcpe78-memo__note { margin: 12px 0 0; font-size: 14px; }
.fcpe78-memo__note strong { color: var(--bleu); }

.fcpe78-case-fiche { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; margin-right: 8px; border: 1.5px solid var(--nuit); border-radius: 3px; font-size: 13px; line-height: 1; font-weight: 700; vertical-align: -3px; flex: none; background: #FFFFFF; }
.fcpe78-case-fiche.est-cochee { background: var(--vert); border-color: var(--vert); color: #FFFFFF; }
.fcpe78-memo__choix { display: inline-flex; align-items: flex-start; }
.fcpe78-memo__table tbody th .fcpe78-memo__choix { display: flex; }

.fcpe78-memo__formalites { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--trait); }
.fcpe78-memo__formalites li { display: flex; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--trait); margin: -1px 0 0 -1px; font-size: 15px; }
.fcpe78-memo p.fcpe78-memo__confidentiel { margin: 14px 0 0; padding: 10px 14px; background: #EAF7E4; border-left: 5px solid var(--vert); font-size: 13px; }
.fcpe78-memo__confidentiel strong { color: var(--bleu); }

/* Téléphone : les tableaux deviennent des listes lisibles */
@media screen and (max-width: 640px) {
	.fcpe78-memo { padding: 18px; }
	.fcpe78-memo__entete { gap: 12px; }
	.fcpe78-memo__entete img { width: 64px; }
	.fcpe78-memo__entete h2 { font-size: 22px; }
	.fcpe78-memo__table, .fcpe78-memo__table tbody, .fcpe78-memo__table tr, .fcpe78-memo__table th, .fcpe78-memo__table td { display: block; width: 100% !important; }
	.fcpe78-memo__table thead { position: absolute; left: -9999px; }
	.fcpe78-memo__table tr { margin-bottom: 10px; border: 1px solid var(--trait); border-radius: 10px; overflow: hidden; }
	.fcpe78-memo__table th, .fcpe78-memo__table td { border: 0; }
	.fcpe78-memo__table td[data-label]::before { content: attr(data-label); display: block; font-size: 12px; color: #555A78; }
	.fcpe78-memo__table--outils .fcpe78-memo__action { text-align: left; }
	.fcpe78-memo__formalites { grid-template-columns: 1fr; }
}

/* Version papier : A5 portrait, deux pages, comme la fiche du CDPE */
.fcpe78-memo--papier { box-sizing: border-box; width: 148mm; min-height: 210mm; margin: 0 auto 24px; padding: 8mm 10mm; background: #FFFFFF; box-shadow: 0 4px 24px rgba(29, 33, 64, .15); font-size: 9pt; }
.fcpe78-memo--papier .fcpe78-memo__entete { gap: 4mm; padding-bottom: 2.5mm; }
.fcpe78-memo--papier .fcpe78-memo__entete img { width: 16mm; }
.fcpe78-memo--papier .fcpe78-memo__entete h1 { font-size: 15pt; }
.fcpe78-memo--papier .fcpe78-memo__sous-titre { font-size: 9pt; margin-top: 0.5mm; }
.fcpe78-memo--papier .fcpe78-memo__annee { margin-top: 0.5mm; }
.fcpe78-memo--papier .fcpe78-memo__annee { font-size: 8.5pt; }
.fcpe78-memo--papier .fcpe78-memo__bloc { margin-top: 2.6mm; }
.fcpe78-memo--papier .fcpe78-memo__entete { margin-bottom: 0; }
.fcpe78-memo--papier .fcpe78-memo__table--outils tbody th { line-height: 1.2; }
.fcpe78-memo--papier .fcpe78-memo__titre { font-size: 10pt; margin-bottom: 1.5mm; padding-bottom: 0.8mm; }
.fcpe78-memo--papier .fcpe78-memo__table { font-size: 8pt; }
.fcpe78-memo--papier .fcpe78-memo__table th, .fcpe78-memo--papier .fcpe78-memo__table td { padding: 0.8mm 2mm; height: 4.6mm; line-height: 1.25; }
.fcpe78-memo--papier .fcpe78-memo__table thead th { font-size: 8pt; height: auto; }
.fcpe78-memo--papier .fcpe78-memo__haut { height: 8mm !important; }
.fcpe78-memo--papier .fcpe78-memo__table--bureau td { height: 5.6mm; }
.fcpe78-memo--papier .fcpe78-memo__table--bureau thead th:nth-child(1) { width: 22%; }
.fcpe78-memo--papier .fcpe78-memo__table--bureau thead th:nth-child(3) { width: 33%; }
.fcpe78-memo--papier .fcpe78-memo__table tbody th span:not(.screen-reader-text):not(.fcpe78-case-fiche):not(.fcpe78-memo__choix) { font-size: 6.5pt; }
.fcpe78-memo--papier .fcpe78-memo__formalites li { font-size: 8.5pt; padding: 2mm; }
.fcpe78-memo--papier p.fcpe78-memo__note, .fcpe78-memo--papier p.fcpe78-memo__petit { font-size: 8pt; margin: 1.5mm 0 0; }
.fcpe78-memo--papier p.fcpe78-memo__confidentiel { font-size: 7.5pt; margin: 3mm 0 0; padding: 2mm 3mm; }
.fcpe78-memo--papier .fcpe78-case-fiche { width: 3.2mm; height: 3.2mm; font-size: 7pt; margin-right: 1.5mm; vertical-align: -0.5mm; }
.fcpe78-memo--papier .fcpe78-case-fiche.est-cochee { background: #FFFFFF; color: var(--nuit); border-color: var(--nuit); }
.fcpe78-memo--papier a { color: var(--bleu); text-decoration: underline; }
.fcpe78-memo--papier .fcpe78-memo__saut { break-before: page; page-break-before: always; }

@media print {
	.fcpe78-memo--papier { width: auto; min-height: 0; margin: 0; padding: 8mm 10mm; box-shadow: none; }
	.fcpe78-memo--papier .fcpe78-memo__saut { padding-top: 0; }
	.fcpe78-memo--papier, .fcpe78-memo--papier * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
	.fcpe78-memo__table tr { break-inside: avoid; }
}
@media screen {
	.fcpe78-memo--papier .fcpe78-memo__saut { margin-top: 10mm; padding-top: 10mm; border-top: 1px dashed var(--trait); }
}
/* Papier : outils sur une ligne, marges d'impression sur chaque page */
.fcpe78-memo--papier .fcpe78-memo__table--outils tbody th .fcpe78-memo__choix { display: inline-flex; margin-right: 1.5mm; }
.fcpe78-memo--papier .fcpe78-memo__table--outils tbody th > span:not(.fcpe78-memo__choix) { display: inline !important; }
@media print {
	.fcpe78-memo--papier { padding: 0 !important; zoom: 0.94; }
}
.fcpe78-memo--papier span.fcpe78-memo__petit { font-size: 7pt; }
