/* Ouraya Coffre : styles des écrans « fichiers » (public/app/ecrans/fichiers.js).
   Sur les jetons de /lumiere.css et les classes de /coffre/coffre.css.
   Aucune couleur en dur : le mode nuit suit seul, par les jetons.
   Toutes les classes portent le préfixe « fi- » : trois autres écrans écrivent
   leurs feuilles en parallèle, et un nom générique finirait par se heurter. */

/* ============================================================ LA PAGE == */
.fi-page{
  --fi-colonnes:40px minmax(0,1fr) 116px 190px;
  --fi-marge-ligne:12px;
  padding-bottom:96px;
}
.fi-tete{align-items:flex-end}
.fi-tete-texte{min-width:0;flex:1 1 320px}
.fi-titre{overflow-wrap:anywhere}
.fi-resume{margin:6px 0 0}
.fi-tete-actions{align-items:center}
.fi-fil-mobile{margin-bottom:10px}
.fi-fil-mobile:empty{display:none}
@media (min-width:900px){ .fi-fil-mobile{display:none} }

.fi-vues{
  display:inline-flex;
  padding:2px;
  border:1px solid var(--trait);border-radius:var(--r-bloc);
  background:var(--fond-creux);
}
.fi-vue{
  display:grid;place-items:center;
  width:36px;height:32px;
  border-radius:var(--r-net);
  color:var(--texte-faible);
  transition:background .2s, color .2s;
}
.fi-vue:hover{color:var(--texte)}
.fi-vue[aria-current="page"]{background:var(--surface);color:var(--texte);box-shadow:var(--ombre-courte)}
.fi-vue:focus-visible{outline:2px solid var(--accent);outline-offset:1px}

/* ============================================================ LA LISTE == */
.fi-zone{position:relative}
/* Le coffre vide, à la racine : l'illustration (ui.visuel) tient lieu
   d'icône, au-dessus du titre. */
.fi-vide-visuel{width:min(100%,340px);margin-bottom:8px}
.fi-vide-visuel img{aspect-ratio:16/10;object-fit:cover;object-position:50% 45%}
.fi-zone.fi-zone-depot{min-height:260px}

.fi-entete{
  position:sticky;top:0;z-index:3;
  display:grid;grid-template-columns:var(--fi-colonnes);align-items:center;gap:12px;
  min-height:40px;
  padding:0 var(--fi-marge-ligne);
  background:var(--fond);
  border-bottom:1px solid var(--trait);
}
.fi-entete[data-vue="vignettes"]{display:flex;flex-wrap:wrap;gap:6px;padding-block:6px}
.fi-tri{
  display:inline-flex;align-items:center;gap:4px;
  min-width:0;
  padding:6px 0;
  border:0;background:none;
  font:400 11.5px/1.3 var(--f-technique);letter-spacing:.12em;text-transform:uppercase;
  color:var(--texte-faible);
  cursor:pointer;
  white-space:nowrap;
}
.fi-tri:hover,.fi-tri[aria-pressed="true"]{color:var(--texte)}
.fi-tri:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-net)}
.fi-tri .icone{flex:none;transition:transform .2s var(--sortie)}
.fi-tri .fi-sens-haut{transform:rotate(180deg)}
.fi-col-taille{justify-self:end}
.fi-entete[data-vue="vignettes"] .fi-tri{
  padding:5px 10px;
  border:1px solid var(--trait);border-radius:var(--r-pastille);
  letter-spacing:.06em;
}
.fi-entete[data-vue="vignettes"] .fi-tri[aria-pressed="true"]{border-color:var(--accent-trait);background:var(--accent-voile)}

.fi-liste{position:relative;outline:none;border-radius:var(--r-bloc)}
.fi-corps{position:relative;contain:layout}

.fi-ligne{
  position:absolute;left:0;right:0;top:0;
  display:grid;grid-template-columns:var(--fi-colonnes);align-items:center;gap:12px;
  padding:0 var(--fi-marge-ligne);
  border-bottom:1px solid var(--trait);
  color:var(--texte);
  cursor:default;
  user-select:none;-webkit-user-select:none;
  -webkit-touch-callout:none;
  transition:background .15s;
}
@media (hover:hover){
  .fi-ligne:hover{background:color-mix(in srgb,var(--fond-creux) 80%,transparent)}
}
.fi-ligne[aria-selected="true"]{background:var(--accent-voile)}
.fi-liste:focus-visible .fi-ligne.curseur{box-shadow:inset 0 0 0 2px var(--accent);border-radius:var(--r-net)}
.fi-ligne.coupe{opacity:.45}
.fi-ligne.fi-cible,.fi-arbre-ligne.fi-cible{
  background:color-mix(in srgb,var(--accent-aplat) 24%,transparent);
  box-shadow:inset 0 0 0 1px var(--accent-trait);
}

/* La case : sur l'icône, au survol ; et restée visible une fois cochée. */
.fi-case{
  position:absolute;left:calc(var(--fi-marge-ligne) + 10px);top:50%;
  display:grid;place-items:center;
  width:20px;height:20px;
  margin-top:-10px;
  border:1px solid var(--trait-net);border-radius:var(--r-net);
  background:var(--surface);
  box-shadow:var(--creux-ombre);
  opacity:0;
  cursor:pointer;
  transition:opacity .15s, background .15s, border-color .15s;
  z-index:1;
}
.fi-case::after{
  content:"";width:10px;height:5px;
  border-left:2px solid var(--sur-accent);border-bottom:2px solid var(--sur-accent);
  transform:translateY(-1px) rotate(-45deg) scale(0);
  transition:transform .15s var(--sortie);
}
.fi-ligne[aria-selected="true"] .fi-case{background:var(--accent-aplat);border-color:var(--accent-aplat)}
.fi-ligne[aria-selected="true"] .fi-case::after{transform:translateY(-1px) rotate(-45deg) scale(1)}
.fi-ligne[aria-selected="true"] .fi-case,
.fi-liste.en-selection .fi-case{opacity:1}
@media (hover:hover){
  .fi-ligne:hover .fi-case{opacity:1}
  .fi-ligne:not(.fi-carte):hover .fi-icone{opacity:0}
}
.fi-ligne:not(.fi-carte)[aria-selected="true"] .fi-icone,
.fi-liste.en-selection .fi-ligne:not(.fi-carte) .fi-icone{opacity:0}

.fi-icone{display:grid;place-items:center;color:var(--texte-faible);transition:opacity .15s}
.fi-icone[data-genre="dossier"]{color:var(--accent)}
.fi-nom{display:flex;flex-direction:column;min-width:0;gap:2px}
.fi-nom-texte{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-meta{display:none;font-size:.82rem;color:var(--texte-faible);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-taille{
  justify-self:end;
  font:400 13px/1.3 var(--f-technique);
  font-variant-numeric:tabular-nums;
  color:var(--texte-doux);
  white-space:nowrap;
}
.fi-date{min-width:0;font-size:.9rem;color:var(--texte-doux);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Un téléchargement en cours : la taille laisse place à une barre fine. */
.fi-taille-progres{display:inline-flex;align-items:center;gap:8px}
.fi-taille-progres[hidden]{display:none}
.fi-mini-rail{display:block;width:64px;height:4px;border-radius:var(--r-pastille);background:var(--trait);overflow:hidden}
.fi-mini-rail i{display:block;height:100%;width:0;background:var(--accent-aplat);transition:width .3s linear}
.fi-mini-pourcent{font:400 12px/1 var(--f-technique);color:var(--texte);font-variant-numeric:tabular-nums}

/* ======================================================== LES VIGNETTES == */
.fi-corps[data-vue="vignettes"] .fi-ligne{
  right:auto;
  display:flex;flex-direction:column;align-items:stretch;gap:6px;
  padding:10px;
  border:1px solid var(--trait);border-radius:var(--r-bloc);
  background:var(--surface);
  box-shadow:inset 0 1px 0 var(--arete-lumiere),var(--ombre-courte);
}
.fi-corps[data-vue="vignettes"] .fi-ligne[aria-selected="true"]{
  background:var(--accent-voile);border-color:var(--accent-trait);
}
.fi-corps[data-vue="vignettes"] .fi-case{left:16px;top:16px;margin-top:0}
.fi-vignette{
  position:relative;
  flex:1 1 auto;min-height:0;
  display:grid;place-items:center;
  border-radius:var(--r-net);
  background:var(--fond-creux);
  color:color-mix(in srgb,var(--texte-faible) 60%,transparent);
  overflow:hidden;
}
.fi-vignette[data-genre="dossier"]{color:var(--accent)}
.fi-vignette img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fi-carte-nom{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.93rem}
.fi-carte-meta{
  display:flex;align-items:center;gap:8px;min-width:0;
  font:400 12px/1.3 var(--f-technique);color:var(--texte-faible);
  white-space:nowrap;overflow:hidden;
}

/* ============================================================ LE DÉPÔT == */
.fi-depot{
  position:absolute;inset:0;z-index:5;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  min-height:220px;
  border:2px dashed var(--accent-aplat);border-radius:var(--r-bloc);
  background:color-mix(in srgb,var(--fond) 84%,transparent);
  -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);
  color:var(--accent);
  pointer-events:none;
}
.fi-depot[hidden]{display:none}
.fi-depot-texte{margin:0;font-size:1.05rem;font-weight:500;text-align:center;padding:0 16px;overflow-wrap:anywhere}

.fi-etiquette-glisser{
  position:fixed;left:-1000px;top:-1000px;
  padding:6px 12px;
  border-radius:var(--r-pastille);
  background:var(--accent-aplat);color:var(--sur-accent);
  font-size:14px;font-weight:500;white-space:nowrap;
}

/* ============================================== LA BARRE DE SÉLECTION == */
.fi-barre-selection{
  position:sticky;bottom:16px;z-index:4;
  display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;
  margin-top:16px;
  padding:8px 8px 8px 16px;
  background:var(--surface-haute);
  border:1px solid var(--trait);border-radius:var(--r-bloc);
  box-shadow:inset 0 1px 0 var(--arete-lumiere),var(--ombre-profonde);
  animation:fi-monte .2s var(--sortie);
}
.fi-barre-selection[hidden]{display:none}
@keyframes fi-monte{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.fi-selection-texte{margin:0;font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}
.fi-selection-actions{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}
/* Sur ordinateur, la barre flotte au bas de la vue, quelle que soit la longueur
   de la liste ; la file d'envoi et les messages remontent au-dessus d'elle. */
@media (min-width:720px){
  .fi-barre-selection{position:fixed;left:calc(var(--colonne) + 24px);right:24px;bottom:16px;margin:0;z-index:40}
  body.fi-selection-active .cartouche-hote,
  body.fi-selection-active .toasts{bottom:88px}
}
@media (min-width:720px) and (max-width:899px){
  .fi-barre-selection{left:24px}
}

/* ============================================================ L'ARBRE == */
.fi-arbre{list-style:none;margin:0;padding:0}
.fi-arbre-ligne{
  display:flex;align-items:center;gap:0;
  padding-left:calc(var(--niveau,0) * 14px);
  border-radius:var(--r-bloc);
}
.fi-arbre-bascule{
  flex:none;display:grid;place-items:center;
  width:26px;height:30px;
  padding:0;border:0;border-radius:var(--r-net);
  background:none;color:var(--texte-faible);
  cursor:pointer;
}
.fi-arbre-bascule.vide{visibility:hidden;cursor:default}
.fi-arbre-bascule:hover{color:var(--texte)}
.fi-arbre-bascule .icone{transition:transform .18s var(--sortie)}
.fi-arbre-bascule[aria-expanded="true"] .icone{transform:rotate(90deg)}
.fi-arbre-bascule:focus-visible,.fi-arbre-lien:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.fi-arbre-lien{
  flex:1 1 auto;min-width:0;
  display:flex;align-items:center;gap:8px;
  padding:6px 10px 6px 4px;
  border-radius:var(--r-net);
  color:var(--texte-doux);
  font-size:.92rem;line-height:1.3;
  text-decoration:none;
}
.fi-arbre-lien:hover{color:var(--texte);background:color-mix(in srgb,var(--surface) 70%,transparent)}
.fi-arbre-lien[aria-current="page"]{color:var(--texte);background:var(--surface);font-weight:500}
.fi-arbre-nom{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-arbre-compte{
  margin-left:auto;flex:none;
  font:400 11.5px/1 var(--f-technique);
  color:var(--texte-faible);
  font-variant-numeric:tabular-nums;
}

/* ======================================================== LE CARTOUCHE == */
.fi-cartouche{
  display:grid;gap:8px;
  padding:8px 8px 12px 12px;
  background:var(--surface-haute);
  border:1px solid var(--trait);border-radius:var(--r-bloc);
  box-shadow:inset 0 1px 0 var(--arete-lumiere),var(--ombre-profonde);
  color:var(--texte);
}
.fi-cartouche-tete{display:flex;align-items:center;gap:2px;min-width:0}
.fi-cartouche-bascule{
  flex:1 1 auto;min-width:0;
  display:flex;align-items:center;gap:8px;
  padding:6px 4px;
  border:0;border-radius:var(--r-net);
  background:none;color:var(--texte);
  font:inherit;font-size:.88rem;line-height:1.35;text-align:left;
  cursor:pointer;
}
.fi-cartouche-bascule:hover{background:var(--fond-creux)}
.fi-cartouche-bascule:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.fi-cartouche-bascule .icone{flex:none;color:var(--texte-faible);transition:transform .18s var(--sortie)}
.fi-cartouche-bascule[aria-expanded="true"] .icone{transform:rotate(90deg)}
.fi-cartouche-textes{display:flex;flex-direction:column;gap:1px;min-width:0}
.fi-cartouche-resume,.fi-cartouche-volume{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
.fi-cartouche-volume{font:400 11.5px/1.3 var(--f-technique);color:var(--texte-faible)}
.fi-cartouche-pause{display:flex}
.fi-cartouche-progres{padding-right:4px}
.fi-cartouche-note{margin:0;padding-right:4px;font-size:.84rem;line-height:1.45;color:var(--texte-doux)}
.fi-cartouche-note[hidden]{display:none}
.fi-cartouche-liste{
  display:grid;gap:2px;
  max-height:min(42vh,360px);overflow:auto;overscroll-behavior:contain;
  margin:0;padding:8px 4px 0 0;list-style:none;
  border-top:1px solid var(--trait);
}
.fi-cartouche-liste[hidden]{display:none}

/* Une tâche : nom, pourcentage, état, action ; la barre fine dessous. */
.fi-tache{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto auto;
  grid-template-areas:"nom pourcent etat actions" "rail rail rail rail";
  align-items:center;column-gap:10px;row-gap:5px;
  padding:5px 0;
  font-size:.86rem;
}
.fi-tache-nom{grid-area:nom;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-tache-pourcent{grid-area:pourcent;font:400 12px/1 var(--f-technique);font-variant-numeric:tabular-nums;color:var(--texte)}
.fi-tache-etat{grid-area:etat;font:400 12px/1.2 var(--f-technique);color:var(--texte-faible);white-space:nowrap}
.fi-tache-actions{grid-area:actions;display:flex;min-width:28px;justify-content:flex-end}
.fi-tache-actions .bouton-nu.seule-icone{width:28px;height:28px}
.fi-tache-rail{grid-area:rail;display:block;height:3px;border-radius:var(--r-pastille);background:var(--trait);overflow:hidden}
.fi-tache-rail i{display:block;height:100%;width:0;background:var(--accent-aplat);transition:width .3s linear}
.fi-tache[data-phase="chiffrement"] .fi-tache-rail i{background:var(--c-info)}
.fi-tache[data-etat="pause"] .fi-tache-rail i{background:var(--texte-faible)}
.fi-tache[data-etat="termine"] .fi-tache-rail i{background:var(--c-succes)}
.fi-tache[data-etat="termine"] .fi-tache-etat{color:var(--c-succes)}
.fi-tache[data-etat="echec"] .fi-tache-rail i{background:var(--c-danger)}
.fi-tache[data-etat="echec"] .fi-tache-etat{color:var(--c-danger)}
.fi-tache[data-etat="annule"]{color:var(--texte-faible)}
.fi-tache[data-etat="annule"] .fi-tache-rail i{background:var(--trait-net)}
.fi-tache[data-etat="attente"] .fi-tache-rail{opacity:.6}

.fi-descente .progression{padding-right:4px}
.fi-descente-actions{display:flex;justify-content:flex-end}

/* ======================================================== LE PANNEAU == */
.fi-apercu{
  display:grid;place-items:center;align-content:center;gap:12px;
  min-height:220px;
  margin-bottom:22px;
  padding:24px;
  border:1px solid var(--trait);border-radius:var(--r-bloc);
  background:var(--fond-creux);
  text-align:center;
}
.fi-apercu-icone{color:var(--texte-faible)}
.fi-apercu img{max-width:100%;max-height:320px;border-radius:var(--r-net);object-fit:contain}
.fi-apercu .mention{margin:0;max-width:40ch}
.fi-details{
  display:grid;grid-template-columns:max-content minmax(0,1fr);gap:10px 20px;
  margin:0 0 20px;
}
.fi-details dt{
  padding-top:3px;
  font:400 11.5px/1.3 var(--f-technique);letter-spacing:.1em;text-transform:uppercase;
  color:var(--texte-faible);
}
.fi-details dd{margin:0;overflow-wrap:anywhere;color:var(--texte)}
.fi-panneau-lieu{margin:0 0 18px;color:var(--texte-doux);overflow-wrap:anywhere}
.fi-actions-secondaires{display:flex;gap:8px;margin-right:auto}
.fi-deplacer .mention{margin-top:4px}

/* ======================================================= LA RECHERCHE == */
.fi-limite{max-width:62ch}
.fi-index-progres{margin:-6px 0 16px;font-variant-numeric:tabular-nums}
.fi-index-progres[hidden]{display:none}
.fi-resultats-compte{
  margin:0 0 14px;
  font:400 12.5px/1.4 var(--f-technique);
  color:var(--texte-faible);
  font-variant-numeric:tabular-nums;
}
.fi-groupe{margin-bottom:24px}
.fi-groupe-titre{margin:0 0 6px;font:500 .95rem/1.3 var(--f-texte);letter-spacing:0}
.fi-groupe-titre a{display:inline-flex;align-items:center;gap:8px;color:var(--texte-doux);text-decoration:none}
.fi-groupe-titre a .icone{color:var(--accent)}
.fi-groupe-titre a:hover{color:var(--texte)}
.fi-groupe-liste{list-style:none;margin:0;padding:0;border-top:1px solid var(--trait)}
.fi-resultat{
  display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;
  padding:10px 12px;
  border-bottom:1px solid var(--trait);
  color:var(--texte);text-decoration:none;
  transition:background .15s;
}
.fi-resultat:hover{background:var(--fond-creux)}
.fi-resultat:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.fi-resultat-texte{display:flex;flex-direction:column;gap:2px;min-width:0}
.fi-resultat-nom,.fi-resultat-texte .mention{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-resultat-texte .mention{margin:0;font-size:.82rem}
.fi-resultat-taille{font:400 13px/1.3 var(--f-technique);color:var(--texte-doux);white-space:nowrap}

/* ============================================= CORBEILLE ET ENVOIS == */
.fi-rangees{list-style:none;margin:0;padding:0;border-top:1px solid var(--trait)}
.fi-rangee{
  /* Dernière colonne fixe : chaque rangée est sa propre grille, et une colonne
     « auto » vide dans l'en-tête décalait tous les intitulés vers la droite. */
  display:grid;grid-template-columns:minmax(0,1fr) 110px 170px 130px 9.5rem;align-items:center;gap:12px;
  padding:12px;
  border-bottom:1px solid var(--trait);
}
.fi-rangee-tete{
  padding-block:8px;
  font:400 11.5px/1.3 var(--f-technique);letter-spacing:.12em;text-transform:uppercase;
  color:var(--texte-faible);
}
.fi-rangee-simple{grid-template-columns:minmax(0,1fr) auto auto}
.fi-rangee-tete .fi-num{font:inherit;color:inherit}
.fi-num{text-align:right;font:400 13px/1.3 var(--f-technique);font-variant-numeric:tabular-nums;color:var(--texte-doux);white-space:nowrap}
.fi-rangee-nom{display:flex;align-items:center;gap:12px;min-width:0}
.fi-rangee-texte{display:flex;flex-direction:column;gap:2px;min-width:0}
.fi-rangee-texte .mention{margin:0;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-rangee-date,.fi-rangee-purge{font-size:.9rem;color:var(--texte-doux);white-space:nowrap}
.fi-rangee-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.fi-etiquette-mobile{display:none}

.fi-section{margin-top:clamp(22px,3vw,34px)}
.fi-section[hidden]{display:none}
.fi-section-titre{margin:0 0 12px;font:400 1.15rem/1.3 var(--f-titre);letter-spacing:-.015em}
.fi-section > .mention{margin:0 0 14px;max-width:70ch}
.fi-envois-resume{margin-bottom:12px}
.fi-envois-resume:empty{display:none}
.fi-envois-note{margin:8px 0 0;font-size:.9rem;color:var(--texte-doux)}
.fi-taches{list-style:none;margin:0;padding:0;border-top:1px solid var(--trait)}
.fi-page-envois .fi-tache{padding:10px 4px;border-bottom:1px solid var(--trait);font-size:.93rem}
.fi-page-envois .etat-vide{padding-block:40px}

/* ========================================================= TÉLÉPHONE == */
@media (max-width:719px){
  .fi-page{--fi-colonnes:36px minmax(0,1fr) auto;--fi-marge-ligne:8px}
  .fi-tete{align-items:stretch}
  .fi-tete-actions{justify-content:space-between;width:100%}
  .fi-entete{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0;border-bottom:0}
  .fi-entete .fi-tri{
    padding:5px 10px;
    border:1px solid var(--trait);border-radius:var(--r-pastille);
    letter-spacing:.06em;
  }
  .fi-entete .fi-tri[aria-pressed="true"]{border-color:var(--accent-trait);background:var(--accent-voile)}
  .fi-col-taille{justify-self:auto}
  .fi-meta{display:block}
  .fi-date{display:none}
  .fi-taille{display:none}
  .fi-ligne[data-descente] .fi-taille{display:block}
  .fi-case{left:calc(var(--fi-marge-ligne) + 8px)}

  /* La barre de sélection se colle au bas de l'écran ; icônes seules, nommées. */
  .fi-barre-selection{
    position:fixed;left:0;right:0;bottom:0;z-index:60;
    margin:0;
    padding:8px 8px calc(8px + env(safe-area-inset-bottom)) 14px;
    border-radius:0;border-left:0;border-right:0;border-bottom:0;
    flex-wrap:nowrap;gap:6px;
  }
  .fi-selection-texte{font-size:.88rem;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .fi-selection-actions{flex-wrap:nowrap;gap:4px;margin-left:0}
  .fi-selection-actions .btn{padding:8px}
  .fi-selection-actions .btn > span{display:none}
  body.fi-selection-active .cartouche-hote{bottom:calc(68px + env(safe-area-inset-bottom))}

  .fi-rangee{display:flex;flex-wrap:wrap;gap:6px 14px;padding:12px 4px}
  .fi-rangee-tete{display:none}
  .fi-rangee-nom{flex:1 1 100%}
  .fi-rangee .fi-num{text-align:left}
  .fi-rangee-actions{margin-left:auto}
  .fi-etiquette-mobile{display:inline}
  .fi-rangee-simple{flex-wrap:wrap}
  .fi-rangee-simple .fi-rangee-texte{flex:1 1 100%}

  .fi-details{grid-template-columns:minmax(0,1fr);gap:2px 0}
  .panneau-actions .fi-actions-secondaires{flex:1 1 100%;margin-right:0}
  .panneau-actions .fi-action-principale{flex:1 1 100%}
  .fi-details dd{margin-bottom:10px}
  .fi-resultat{grid-template-columns:28px minmax(0,1fr);padding-inline:6px}
  .fi-resultat-taille{display:none}
}

/* ================================================== MOINS DE MOUVEMENT == */
@media (prefers-reduced-motion:reduce){
  .fi-barre-selection{animation:none}
  .fi-ligne,.fi-case,.fi-case::after,.fi-icone,.fi-arbre-bascule .icone,
  .fi-cartouche-bascule .icone,.fi-tri .icone,.fi-tache-rail i,.fi-mini-rail i{transition:none}
}
