/* L'encart « Affinités » de l'éditeur de fiche de poste, natif Le Fil : js/affinites/section-offre.js (kit du budget : fb-bouton, fb-case, fb-saisie, fb-puce ; spec 2026-09-23 affinités § 2.4).
   Crochets aff-* de l'encart ; jetons --f-* de css/fil.css seulement. Remplace les règles classiques `.aff-offre` de css/affinites.css (retirées). */
[data-interface="fil"] .aff-offre { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
[data-interface="fil"] .aff-offre-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px 16px; flex-wrap: wrap; }
[data-interface="fil"] .aff-offre-head .frc-carte-titre { margin: 0; }
[data-interface="fil"] .aff-compteur { color: var(--f-encre-2); font: 500 14px/1.3 Inter, system-ui, sans-serif; font-variant-numeric: tabular-nums; }
[data-interface="fil"] .aff-compteur b { color: var(--f-encre); font-weight: 600; }
[data-interface="fil"] .aff-sous, [data-interface="fil"] .aff-note { margin: 0; color: var(--f-encre-2); font: 400 14px/1.5 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-note[hidden], [data-interface="fil"] .aff-alerte[hidden], [data-interface="fil"] .aff-avert[hidden], [data-interface="fil"] .aff-refus[hidden], [data-interface="fil"] .aff-apercu[hidden], [data-interface="fil"] .aff-reglages[hidden], [data-interface="fil"] .aff-liste-barre[hidden] { display: none; }
[data-interface="fil"] .aff-lien-texte { color: var(--f-encre); text-decoration: underline; text-decoration-color: var(--f-encre-3); text-underline-offset: 3px; }
[data-interface="fil"] .aff-defaut { padding: 10px 14px; border: 1px solid var(--f-filet); border-radius: 14px; background: var(--f-surface-2); }
[data-interface="fil"] .aff-alerte, [data-interface="fil"] .aff-refus { margin: 0; padding: 12px 14px; border: 1px solid var(--f-urgent); border-radius: 14px; color: var(--f-encre); font: 400 14px/1.5 Inter, system-ui, sans-serif; white-space: pre-line; }
[data-interface="fil"] .aff-alerte { color: var(--f-urgent); }
[data-interface="fil"] .aff-avert { margin: 0; padding: 12px 14px; border: 1px solid var(--f-attention); border-radius: 14px; color: var(--f-encre); font: 400 14px/1.5 Inter, system-ui, sans-serif; white-space: pre-line; }
[data-interface="fil"] .aff-refus strong { display: block; margin-bottom: 2px; color: var(--f-urgent); }
[data-interface="fil"] .aff-refus[data-code="justification_requise"] { border-color: var(--f-attention); }
[data-interface="fil"] .aff-refus[data-code="justification_requise"] strong { color: var(--f-attention); }
[data-interface="fil"] .aff-liste-barre { display: flex; justify-content: flex-end; }
[data-interface="fil"] .aff-deplier::before { content: "▸"; margin-right: 6px; display: inline-block; transition: transform 160ms ease; }
[data-interface="fil"] .aff-deplier[aria-expanded="true"]::before { transform: rotate(90deg); }
[data-interface="fil"] .aff-liste { display: flex; flex-direction: column; gap: 8px; }
/* Les thèmes : repliés, « n cochées sur m » à droite du nom */
[data-interface="fil"] .aff-theme-choix { border: 1px solid var(--f-filet); border-radius: 18px; padding: 0 16px; background: var(--f-surface); }
[data-interface="fil"] .aff-theme-choix > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; cursor: pointer; list-style: none; font: 600 16px/1.3 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-theme-choix > summary::-webkit-details-marker { display: none; }
[data-interface="fil"] .aff-theme-choix > summary::before { content: "▸"; margin-right: 8px; display: inline-block; transition: transform 160ms ease; color: var(--f-encre-3); }
[data-interface="fil"] .aff-theme-choix[open] > summary::before { transform: rotate(90deg); }
[data-interface="fil"] .aff-theme-choix > summary > span:first-child { flex: 1; min-width: 0; }
[data-interface="fil"] .aff-theme-choix .aff-theme-n { color: var(--f-encre-2); font: 500 13px/1 Inter, system-ui, sans-serif; white-space: nowrap; }
[data-interface="fil"] .aff-choix { display: flex; flex-direction: column; gap: 4px; padding: 6px 0 12px; border-top: 1px solid var(--f-filet); }
[data-interface="fil"] .aff-choix-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; color: var(--f-encre-2); font: 400 13px/1.4 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-choix .fb-case { min-height: 48px; align-items: flex-start; }
[data-interface="fil"] .aff-choix .fb-case-lib { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
[data-interface="fil"] .aff-reglages { display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); gap: 12px 24px; padding: 4px 0 4px 34px; }
[data-interface="fil"] .aff-fs { border: 0; margin: 0; padding: 0; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
[data-interface="fil"] .aff-fs > legend { padding: 0; margin-bottom: 4px; color: var(--f-encre-2); font: 500 13px/1.3 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-fs .fb-case { min-height: 44px; }
/* Mes questions, ajout, aperçu */
[data-interface="fil"] .aff-libres { display: flex; flex-direction: column; gap: 8px; }
[data-interface="fil"] .aff-libres-h, [data-interface="fil"] .aff-apercu-h { margin: 0; font: 600 16px/1.3 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-libre { display: flex; align-items: center; gap: 12px; padding: 8px 0; border-top: 1px solid var(--f-filet); font: 400 15px/1.4 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-libre-txt { flex: 1; min-width: 0; overflow-wrap: anywhere; }
[data-interface="fil"] .aff-libre-txt small { display: block; color: var(--f-encre-2); font-size: 13px; }
[data-interface="fil"] .aff-libre-justif { font-style: italic; }
[data-interface="fil"] .aff-ajout { border: 1px dashed var(--f-encre-3); border-radius: 18px; padding: 0 16px; }
[data-interface="fil"] .aff-ajout > summary { min-height: 52px; display: flex; align-items: center; cursor: pointer; list-style: none; font: 600 14px/1.3 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-ajout > summary::-webkit-details-marker { display: none; }
[data-interface="fil"] .aff-ajout-form { display: flex; flex-direction: column; gap: 12px; padding: 0 0 16px; }
[data-interface="fil"] .aff-ajout-options { display: flex; flex-direction: column; gap: 8px; }
[data-interface="fil"] .aff-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
[data-interface="fil"] .aff-espace { flex: 1 1 0; }
[data-interface="fil"] .aff-apercu { display: flex; flex-direction: column; gap: 12px; padding: 14px 16px; border: 1px solid var(--f-filet); border-radius: 18px; background: var(--f-surface-2); }
[data-interface="fil"] .aff-apercu-theme { margin: 0; color: var(--f-encre-2); font: 600 13px/1.3 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-apercu ol { margin: 0; padding-left: 1.3em; display: flex; flex-direction: column; gap: 8px; font: 400 15px/1.5 Inter, system-ui, sans-serif; }
[data-interface="fil"] .aff-apercu ul { margin: 4px 0 0; padding-left: 1.1em; display: flex; flex-direction: column; gap: 2px; color: var(--f-encre-2); font-size: 14px; }
@media (max-width: 640px) {
  [data-interface="fil"] .aff-reglages { grid-template-columns: minmax(0, 1fr); padding-left: 0; }
}
