/* ══════════════════════════════════════════════════════════════════════
   APERÇU DU DOCUMENT (devis / facture)
   ----------------------------------------------------------------------
   Décalque des maquettes fournies (`Template_DEVIS.pdf`,
   `Template_FACTURE.pdf`), dessinées dans une page de 850 × 1202 unités
   dont 730 de largeur utile entre les marges.
   Le document est posé DANS `.fof-ed-page` plutôt que confondu avec elle :
   la feuille devient ainsi un conteneur de requête, et tout ce qui est
   dedans se mesure à SA largeur. Sans cette séparation, un pourcentage de
   remplissage se serait calculé sur la colonne d'à côté (le bloc parent),
   et un corps de texte figé en pixels aurait mangé le tiers de la page une
   fois réduit au téléphone.
   Trois unités, et trois seulement :
     • `%` pour les marges de page et les largeurs de colonnes, rapportées
       aux 850 unités de la page ou aux 730 de sa largeur utile ;
     • `cqw` pour le corps de texte : 1 % de la largeur de la feuille. Le
       texte courant fait 16 unités sur 850, soit 1,88 % — il suit donc la
       page, et 1 em vaut TOUJOURS 16 unités de maquette ;
     • `em` pour tous les écarts, qui deviennent alors eux aussi
       proportionnels : « 24 unités » s'écrit « 1.5em ». Les chiffres du
       modèle restent lisibles dans le code.
   Les maquettes n'ont qu'une graisse, mais Etienne en a demandé une seconde
   (2026-08-20) : sont en GRAS, et eux seuls, le nom de la société, « Votre
   contact FOF », « DEVIS » / « FACTURE », « Destinataire », la ligne
   « Objet : … » en entier, l'en-tête du tableau, le titre de chaque
   prestation (jamais son détail) et la ligne « Net à … ». Partout
   ailleurs la hiérarchie tient au corps et à la
   couleur. Les trois surfaces doivent rester d'accord : ces règles, les
   styles en ligne de `buildDocHtml` et les `bold:true` de `_renderPdfDoc`.
   Le papier reste blanc en thème sombre — c'est une feuille, pas une
   surface de l'application.
   ══════════════════════════════════════════════════════════════════════ */
.fof-ed-page.fof-doc-sheet{padding:0;container-type:inline-size;}
.fof-doc{--fof-doc-ink:#000;--fof-doc-paper:#F7F4EE;--fof-doc-accent:#56011E;
  /* Le document garde Instrument Sans, quelle que soit la police de
     l'application : un devis et une facture sont des pièces FORMELLES, leurs
     maquettes font foi, et elles ont été composées avec elle (décision
     d'Etienne du 2026-08-26). C'est écrit en clair et non avec --police :
     tout l'intérêt est justement de NE PAS suivre le jeton, ni la police que
     l'utilisateur choisit dans le menu Apparence.
     Second effet, voulu : Instrument Sans grave ses dix chiffres à la même
     largeur. Les colonnes de montants du document s'alignent donc sans avoir
     à passer par --police-mono, contrairement à celles de l'application. */
  font-family:'Instrument Sans', system-ui, -apple-system, sans-serif;
  padding:6.66% 7.06% 7.06%;                  /* 56,6 / 60 unités sur 850 */
  /* 1,88 cqw = les 16 unités du texte courant sur les 850 de la page. Le
     plancher de 9 px est le seul écart assumé à la maquette : sur un
     téléphone la feuille ne fait plus que 300 px de large, et l'échelle
     exacte donnerait un corps de 5,7 px — un aperçu qu'on ne peut plus
     lire n'est plus un aperçu. Repli en pixels d'abord, pour les
     navigateurs sans unité de conteneur. */
  font-size:13px;font-size:clamp(9px, 1.88cqw, 13px);line-height:1.35;}
.fof-doc-row{display:flex;justify-content:space-between;align-items:flex-start;}
.fof-doc-logo{width:41.2%;height:auto;display:block;}   /* 301 / 730 */
.fof-doc-title{font-size:2em;line-height:1;letter-spacing:.5px;font-weight:700;}
.fof-doc-num{font-size:1.13em;margin-top:.6em;}
.fof-doc-dates{margin-top:1em;line-height:1.5;}
.fof-doc-mid{margin-top:1.5em;}
.fof-doc-id{width:50.4%;}                               /* 368 / 730 */
.fof-doc-co{font-size:1.19em;color:var(--fof-doc-accent);font-weight:700;}
.fof-doc-colines{margin-top:.75em;line-height:1.5;}
/* Scopé sous `.fof-doc` À DESSEIN : la page « Documents » a sa PROPRE
   `.fof-doc-label` (16,5 px, 600, `--fof-ink`), déclarée plus bas dans la
   feuille, qui gagnait ici à égalité de spécificité — « Objet : » et
   « Votre contact FOF : » sortaient donc surdimensionnés et à la couleur du
   texte de l'application, illisibles sur le papier en thème sombre. */
.fof-doc .fof-doc-label{font-size:1em;font-weight:400;line-height:inherit;
  color:var(--fof-doc-accent);}
.fof-doc-id .fof-doc-label{margin-top:1.25em;font-weight:700;}
.fof-doc-tight{line-height:1.25;}
.fof-doc-to{width:49.6%;box-sizing:border-box;          /* 362 / 730 */
  background:var(--fof-doc-paper);padding:1.25em 1em;line-height:1.5;}
.fof-doc-to > div:first-child{font-weight:700;}         /* « Destinataire : » */
/* Toute la ligne « Objet : … » est en gras, libellé ET énoncé. La seconde
   règle est nécessaire : `.fof-doc .fof-doc-label` ci-dessus remet 400, à
   spécificité égale — c'est l'ordre qui tranche. */
.fof-doc-objet{margin-top:3.5em;font-weight:700;}
.fof-doc-objet .fof-doc-label{font-weight:700;}
.fof-doc-table{width:100%;border-collapse:collapse;margin-top:1.5em;
  table-layout:fixed;}
.fof-doc-table th{background:var(--fof-doc-accent);color:#fff;font-size:1.19em;
  font-weight:700;padding:.7em 0;}
.fof-doc-table th:first-child{padding-left:.625em;}
.fof-doc-table th:last-child,.fof-doc-table td:last-child{padding-right:1.375em;}
.fof-doc-table td{vertical-align:top;padding:.875em 0 0;
  overflow-wrap:anywhere;}
/* Le titre de la prestation est en gras, son détail non. */
.fof-doc-table td:first-child{padding-left:.625em;font-weight:700;}
.fof-doc-desc{margin:.5em 0 0 .625em;white-space:pre-line;font-weight:400;}
.fof-doc-rule{border-top:1px solid var(--fof-doc-ink);margin-top:1.5em;}
.fof-doc-rule-2{margin:1em 0 0 55.5%;}                   /* filet 465 → 790 */
.fof-doc-totals{width:100%;border-collapse:collapse;table-layout:fixed;}
.fof-doc-totals td:first-child{text-align:right;font-size:1.19em;padding:.7em 0 0;}
.fof-doc-totals td:last-child{width:19.7%;text-align:right;
  padding:.7em 1.375em 0 0;}
.fof-doc-net td{color:var(--fof-doc-accent);font-weight:700;}
/* Le pied est à 14 unités de maquette (.875em du corps du document), son
   titre au corps du texte (16) et en gras. Les marges sont exprimées sur
   CETTE base : 6.43em = 90 unités, 1.571em = 22, les mêmes chiffres que
   `buildDocHtml` — les trois surfaces doivent rester superposables. */
.fof-doc-foot{margin:6.43em 1.571em 0;font-size:.875em;line-height:1.143;}
.fof-doc-foot-t{font-size:1.143em;font-weight:700;margin-bottom:.3em;}
.fof-doc-foot-gap{height:1.143em;}
/* Le remerciement ferme le document, à droite. */
.fof-doc-foot-note{text-align:right;font-weight:700;}
