/* =====================================================================
   La fiche d'entreprise (docs/31-la-fiche-dentreprise.md)
   ---------------------------------------------------------------------
   Dernier écran du service resté sur les feuilles de la charte POFFICIEL.
   Il y était resté pour une raison qui n'est pas une paresse : c'est le
   seul écran servi **aux deux publics à la même adresse** - l'abonné dans
   sa coque, le visiteur anonyme sur le site public - et le reprendre pour
   l'un seul aurait donné deux fiches à entretenir (décision F1).

   Cette feuille est donc chargée par les deux coques, et elle est
   **autoportante** : la page n'appelle plus « enTete() », donc plus
   journal.css, plus fiche.css, plus app.css. Tout ce qu'elle leur
   empruntait vraiment est repris ici, à l'échelle de la charte en
   vigueur - celle d'accueil.css.

   Aucune grammaire nouvelle n'est inventée : titres de section à filet
   supérieur, avis à filet gauche, notes de pied, cartes à un pixel et
   rangs séparés d'un filet clair. C'est celle de securite.css,
   donnees.css et releve.css, et c'est délibéré - la même matière (une
   société, ses publications, leurs sources) s'affiche déjà dans « Mon
   signal » et dans « Le Signal du jour ».

   **Une règle à ne pas défaire : il n'y a pas de règle « .fiche-ecran a »
   générale.** Le pavé « Sur le web » vit dans cette page, et le document
   14 (décision R9) réserve le rose à ce qui vient du Journal officiel :
   une règle de lien attrapant toute la page teindrait en rose les liens
   du web ouvert, c'est-à-dire l'inverse de ce qu'ils disent. Chaque bloc
   colore donc ses propres liens.
   ===================================================================== */

/* ---------------------------------------------------------------------
   1. Les deux coques

   Chez l'abonné, « .bo-page » pose déjà la carte blanche. Chez le
   visiteur, la vitrine pose la même, aux mêmes valeurs (décision F2) :
   sans quoi la même feuille rendrait deux pages d'aplomb différent.
   --------------------------------------------------------------------- */
.fiche-vitrine{padding:34px 0 60px}
.fiche-vitrine .fiche-ecran{
  max-width:1000px;margin:0 auto;padding:28px 32px;
  background:var(--surface);border:1px solid var(--bord);border-radius:var(--r-l);
}
@media (max-width:900px){
  .fiche-vitrine{padding:20px 0 40px}
  .fiche-vitrine .fiche-ecran{padding:22px 20px}
}

/* Le nom de l'entreprise prend la taille de titre des autres écrans, et
   non le « clamp(26px,3vw,36px) » d'app.css : il est le plus souvent en
   capitales, et une demi-fois plus gros qu'ailleurs il criait. */
.fiche-ecran h1{font-size:25px;line-height:1.2}
.fiche-ecran h2{font-size:17px}
.fiche-ecran h3{font-size:15px}

/* ---------------------------------------------------------------------
   2. Le fil et l'en-tête
   --------------------------------------------------------------------- */

/* Le fil est une navigation, pas une invitation : gris, il se colore au
   survol. En rose souligné, il tirait l'œil avant le nom de la fiche. */
.fic-fil{margin:0 0 18px;font-size:12.5px;color:var(--texte-doux)}
.fic-fil a{color:var(--texte-doux);font-weight:600}
.fic-fil a:hover{color:var(--rose)}

.fic-entete{
  display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;
  gap:12px 24px;
}
.fic-entete>div{min-width:min(100%,260px)}
.fic-sous{margin:7px 0 0;font-size:13.5px;color:var(--texte-doux)}

/* L'état de la société reprend trait pour trait le dessin de « Mon
   signal » (décision F3) : c'est le même fait, à deux écrans de
   distance, et il n'a aucune raison d'y porter deux costumes. Le vert
   de l'ancienne pastille quitte la page - dans cette charte, le vert
   dit qu'un geste a abouti, et une société en activité n'est pas un
   aboutissement, c'est l'état ordinaire. */
.fic-etat{
  flex:none;margin:0;padding:4px 11px;border-radius:999px;
  font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;
}
.fic-etat-active{background:var(--bord-clair);color:var(--texte-doux)}
.fic-etat-procedure{background:var(--rose-clair);color:var(--rose)}
.fic-etat-radiee{background:var(--bord-clair);color:var(--texte-doux);text-decoration:line-through}

/* ---------------------------------------------------------------------
   3. L'identité

   Une gouttière d'un pixel sur fond « --bord » plutôt qu'un filet sous
   chaque cellule : la grille dessine alors un quadrillage complet quel
   que soit le nombre de renseignements. L'ancienne posait un
   « border-bottom » par cellule, et une rangée incomplète laissait trois
   filets suspendus au milieu de la page, sous rien.
   --------------------------------------------------------------------- */
/* Le quadrillage est dessiné par des ombres portées, non par des filets
   de cellule ni par un fond de gouttière.

   Les deux autres voies échouent sur la même rangée : celle du bas, qui
   est presque toujours incomplète. Un « border-bottom » par cellule y
   laisse des filets suspendus sous rien - c'est le défaut qu'on répare.
   Un fond « --bord » sous une gouttière d'un pixel y laisse, lui, un pan
   de gris à la place des cellules manquantes.

   Une ombre, elle, ne prend pas de place et déborde de sa cellule : elle
   remplit la gouttière qui suit, et « overflow: clip » rogne celles qui
   tombent sur le bord du cadre. La dernière cellule perd son trait de
   droite, faute de quoi il avancerait seul dans le vide de la rangée
   incomplète. */
.fic-identite{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
  gap:1px;margin:22px 0 0;overflow:clip;
  background:var(--surface);border:1px solid var(--bord);border-radius:var(--r-m);
}
.fic-identite>div{
  padding:12px 16px;background:var(--surface);min-width:0;
  box-shadow:1px 0 0 var(--bord), 0 1px 0 var(--bord);
}
.fic-identite>div:last-child{box-shadow:0 1px 0 var(--bord)}
.fic-identite dt{
  margin:0 0 4px;font-size:11.5px;font-weight:600;letter-spacing:.03em;
  text-transform:uppercase;color:var(--texte-doux);
}
.fic-identite dd{
  margin:0;font-size:14px;font-weight:600;color:var(--nuit);overflow-wrap:anywhere;
}
.fic-identite dd .fic-appoint{font-weight:400;color:var(--texte-doux)}

/* La cellule pleine largeur ferme la rangée incomplète qui la précède :
   son trait du haut court sur toute la largeur, là où les traits du bas
   des cellules d'au-dessus s'arrêteraient au milieu. Et la cellule qui la
   précède rend son trait de droite, qui avancerait seul dans le vide. */
.fic-identite>div.fic-large{box-shadow:0 -1px 0 var(--bord), 0 1px 0 var(--bord)}
.fic-identite>div:has(+ .fic-large){box-shadow:0 1px 0 var(--bord)}

/* L'activité déclarée est une donnée publiée, non un avertissement : elle
   se range avec les autres données, sur une cellule pleine largeur
   (décision F4). En encadré rose, elle empruntait la forme de ce qui
   protège une personne nommée. */
.fic-large{grid-column:1 / -1}
.fic-large dd{font-weight:400;line-height:1.5;color:var(--texte)}
.fic-mono{font-family:var(--fixe,'SF Mono',ui-monospace,Menlo,Consolas,monospace)}

/* ---------------------------------------------------------------------
   4. Les avis

   Il n'en reste que deux, et ce sont les deux seuls textes de la page qui
   protègent quelqu'un : la fiche de personne physique avec ses voies de
   recours, et le décompte des publications non montrées. Eux gardent le
   filet rose. La portée de la fiche et l'activité déclarée, qui
   portaient le même pavé, l'ont quitté - à force de tout signaler, le
   rose ne signalait plus rien.
   --------------------------------------------------------------------- */
.fic-avis{
  margin:20px 0 0;padding:12px 0 12px 16px;
  border-left:2px solid var(--rose-pale);
  font-size:13px;line-height:1.6;color:var(--texte);max-width:var(--mesure);
}
.fic-avis p{margin:0}
.fic-avis p+p{margin-top:7px}
.fic-avis strong{color:var(--nuit)}
.fic-avis a{color:var(--rose);font-weight:600}

/* ---------------------------------------------------------------------
   5. Les titres de section

   Un filet d'un pixel **au-dessus**, comme partout ailleurs dans le
   service, et non un trait de deux pixels roses en dessous - qui venait
   de journal.css, où il était bleu, et que le pont d'app.css avait
   repeint sans le repenser.
   --------------------------------------------------------------------- */
.fic-titre{
  display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;
  margin:34px 0 0;padding-top:24px;border-top:1px solid var(--bord);
  font-size:17px;
}
/* Le décompte est un renseignement, pas un titre : il suit le nom, en
   petit, et ne se lit qu'après lui. */
.fic-compte{
  padding:2px 9px;border-radius:999px;
  background:var(--bord-clair);color:var(--texte-doux);
  font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums;
}

/* ---------------------------------------------------------------------
   6. La chronologie des publications

   Une carte, un rang par publication, aucun fond alterné : l'alternance
   faisait lire une couleur là où il n'y a qu'un rang (document 26, déjà
   tranché pour le relevé).
   --------------------------------------------------------------------- */
.fic-liste{
  list-style:none;margin:14px 0 0;padding:0;overflow:clip;
  background:var(--surface);border:1px solid var(--bord);border-radius:var(--r-m);
}
.fic-rang{
  display:grid;grid-template-columns:128px minmax(0,1fr);gap:4px 22px;
  padding:14px 18px;border-top:1px solid var(--bord-clair);
}
.fic-rang:first-child{border-top:0}
.fic-jour{margin:0;padding-top:2px;font-size:12.5px;color:var(--texte-doux)}

/* Le fait reste en « --nuit » et non en rose (décision F5). Dans le
   relevé, le titre du rang est le nom de l'entreprise et le fait vient
   après, en rose, faute de quoi il se perdrait. Ici l'entreprise est
   nommée en haut de page : le fait **est** le titre du rang, et six
   lignes roses de suite ne distingueraient plus rien. Le rose reste au
   lien qui mène à l'annonce d'origine. */
.fic-fait{margin:0;font-size:14.5px;font-weight:700;line-height:1.35;color:var(--nuit)}
.fic-effet{margin-left:8px;font-size:12.5px;font-weight:400;color:var(--texte-doux)}
.fic-texte{
  margin:6px 0 0;font-size:12.5px;line-height:1.55;color:var(--texte-doux);max-width:70ch;
}

/* La source quitte la chasse fixe (décision F6) : elle n'aligne aucun
   chiffre sur la ligne du dessus, et en chasse fixe elle occupait deux
   fois la place de ce qu'elle disait. */
.fic-source{margin:6px 0 0;font-size:12.5px;line-height:1.55;color:var(--texte-doux)}
.fic-source a{color:var(--rose);font-weight:600}

/* Le renvoi à l'annonce d'origine ne se sépare pas de son tiret : sans
   cela, la ligne se coupait après le tiret et l'indice de structuration
   se lisait « 85 %- ». */
.fic-renvoi{white-space:nowrap}

/* L'indice de structuration garde la chasse fixe : c'est une mesure, et
   elle se compare d'un rang à l'autre. */
.fic-mesure{
  font-family:var(--fixe,'SF Mono',ui-monospace,Menlo,Consolas,monospace);
  font-size:11.5px;font-variant-numeric:tabular-nums;
}

@media (max-width:720px){
  .fic-rang{grid-template-columns:minmax(0,1fr);gap:2px}
}

/* ---------------------------------------------------------------------
   7. Les tableaux

   « .cadre-tableau » est conservée sur le tableau enrichi : c'est le
   crochet que composants.js reconnaît pour y poser sa barre d'outils.
   Les règles ci-dessous ne visent que « .fic-tableau », moins
   spécifiques que celles de « .tableau-cadre » : elles habillent le
   tableau court (le capital, qu'on n'enrichit pas) et servent de rendu
   de repli au tableau enrichi lorsque JavaScript manque.
   --------------------------------------------------------------------- */
/* Les sélecteurs sont préfixés par « .fiche-ecran », et ce n'est pas du
   zèle : dans l'espace abonné, le chargeur remplace le corps de la page
   sans recharger le document, et **les feuilles des écrans déjà visités
   restent en place**. Or recherche.css déclare « .cadre-tableau » et
   « .bo-page td a » - deux sélecteurs qui visent les mêmes éléments
   qu'ici, à égalité de spécificité. Sans préfixe, le rendu du tableau
   dépendrait de l'écran d'où l'on vient. */
.fiche-ecran .fic-tableau{
  margin:14px 0 0;overflow-x:auto;
  background:var(--surface);border:1px solid var(--bord);border-radius:var(--r-m);
}
.fiche-ecran .fic-tableau table{width:100%;border-collapse:collapse;font-size:13.5px}
.fiche-ecran .fic-tableau th{
  padding:11px 16px;text-align:left;white-space:nowrap;
  border-bottom:1px solid var(--bord);
  font-size:11.5px;font-weight:600;letter-spacing:.03em;
  text-transform:uppercase;color:var(--texte-doux);
}
.fiche-ecran .fic-tableau td{
  padding:11px 16px;border-top:1px solid var(--bord-clair);
  vertical-align:top;line-height:1.5;color:var(--texte);
}
.fiche-ecran .fic-tableau tbody tr:first-child td{border-top:0}
/* La colonne de date ne se coupe pas en deux lignes : « 21 août 2026 »
   n'est pas une phrase, et coupé il se lit deux fois. */
.fiche-ecran .fic-tableau td:first-child{white-space:nowrap}
.fiche-ecran .fic-tableau strong{color:var(--nuit)}
.fiche-ecran .fic-tableau td a{color:var(--rose);font-weight:600}
.fic-gris{color:var(--texte-doux)}
.fic-hausse{color:var(--vert);font-weight:600}
.fic-baisse{color:var(--rouge);font-weight:600}

/* ---------------------------------------------------------------------
   8. Les notes, les états vides, les écrans d'échec
   --------------------------------------------------------------------- */

/* La portée de la fiche ferme la page : c'est une note de pied, sous un
   filet, et non un pavé rose qui pèserait autant que l'avertissement
   protégeant une personne nommée. */
.fic-note{
  margin:34px 0 0;padding-top:20px;border-top:1px solid var(--bord);
  font-size:12.5px;line-height:1.6;color:var(--texte-doux);max-width:var(--mesure);
}
.fic-note strong{color:var(--texte)}
.fic-note a{color:var(--rose);font-weight:600}
.fic-note p{margin:0}
.fic-note p+p{margin-top:7px}

/* Une légende suit ce qu'elle explique : elle n'a ni filet ni écart de
   section. */
.fic-legende{
  margin:10px 0 0;font-size:12.5px;line-height:1.6;
  color:var(--texte-doux);max-width:var(--mesure);
}

.fic-rien{
  margin:14px 0 0;padding:22px;
  border:1px dashed var(--bord);border-radius:var(--r-m);
  font-size:13.5px;color:var(--texte-doux);text-align:center;
}

/* Les trois sorties d'erreur - numéro invalide, fiche retirée, entreprise
   inconnue - prennent la coque du public qui les rencontre (décision
   F7) : un abonné qui se trompe de numéro reste dans son espace. */
.fic-chapo{margin:12px 0 0;font-size:15px;line-height:1.6;color:var(--texte);max-width:62ch}
.fic-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

/* ---------------------------------------------------------------------
   9. Le pavé « Sur le web »

   radar.css garde la main sur son dessin - son gris est une décision du
   document 14 (R9) et ce chantier ne la rouvre pas. Seul son écart au
   bloc précédent est réglé ici, faute de quoi il se collerait à la
   chronologie.
   --------------------------------------------------------------------- */
.fiche-ecran .radar{margin:34px 0 0}

/* ---------------------------------------------------------------------------
   Les fiches voisines (document 38, décision R19).

   Deux colonnes de dix liens, en pied de fiche. Ce n'est pas un bloc de
   résultats et cela ne doit pas y ressembler : ni tri, ni filtre, ni
   situation - un chemin, pas une capacité. D'où des liens nus, sans
   encadré ni pastille, et un titre de section qui reste discret.
   --------------------------------------------------------------------------- */
.fic-voisines{
  display:grid;gap:26px 48px;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  margin-top:38px;padding-top:26px;border-top:1px solid var(--bord);
}
.fic-voisines h2{font-size:16px;font-weight:600;color:var(--texte)}
.fic-voisines ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:7px}
.fic-voisines a{color:var(--nuit);text-decoration:none}
.fic-voisines a:hover{color:var(--rose)}
.fic-voisines p{margin-top:14px}
