/* © 2026 Yoann Crom — Vicious Studio. Logiciel propriétaire, tous droits réservés (LICENSE). Réf. VS-2026-8EFE48 */
/* 🧭 La nouvelle interface : fiches de téléphone épurées, barre d outils, états vides (2026-10-14). TOUTE règle
   commence par body.interface-simple : éteinte, rien ne change. Les classes is-… et les boutons data-is-… sont posés
   par page/agence-interface-fiches.js (et retirés quand l interface s éteint). Aucun texte ici : il ne serait pas traduit.
   Un sélecteur avec :has() vit dans SA règle (jamais dans une liste) : un navigateur qui ne le connaît pas jette la
   règle entière, et seulement elle. */

/* ---------- 📱 Flotte : la grille. Le menu de gauche prend 220 px : à 1280 px, trois colonnes tombaient à 330 px (noms
   coupés, comptes réduits à « @ », barre de défilement en bas). Des fiches de 370 px au moins : deux colonnes larges en
   1280 et en 1366, trois en 1440 (même avec une barre de défilement) ; sur un téléphone, une seule (min() : jamais plus
   large que l écran). La liste ☰ n a pas .grille. */
body.interface-simple #grille.grille { grid-template-columns: repeat(auto-fill, minmax(min(370px, 100%), 1fr)); }
/* les noms restent lisibles : celui du téléphone passe à la ligne plutôt que de se couper ; un compte garde son nom
   entier (jusqu aux 60 % de la ligne, puis il se coupe) ; son état (« ⛈️ Fonctions bloquées », le mot qui dit le
   problème) n est jamais coupé non plus : quand la place manque (trois colonnes en 1440), il passe sous le nom, calé
   à droite ; « à classer » ne se casse jamais en deux */
body.interface-simple #grille .nom-carte { flex-wrap: wrap; }
body.interface-simple #grille .nom-carte strong { flex-shrink: 0; max-width: 100%; }
body.interface-simple #grille .compte { flex-wrap: wrap; row-gap: 2px; }
body.interface-simple #grille .compte .nom { flex-shrink: 0; max-width: 60%; }
body.interface-simple #grille .compte .a-classer-tag { flex-shrink: 0; white-space: nowrap; }
body.interface-simple #grille .compte .etat { min-width: 0; }

/* ---------- 📱 Flotte : la fiche épurée. Fermée : la vignette, le nom, les modèles, les comptes et leur météo, les notes,
   « Piloter ▶ » et « ⋯ ». Le grand bouton « Hors ligne » du bas de la fiche reste TOUJOURS (2026-10-14). ---------- */
body.interface-simple #grille > .carte.is-epuree:not(.is-ouverte) .ajout-compte,
body.interface-simple #grille > .carte.is-epuree:not(.is-ouverte) .actions-carte [data-verifier],
body.interface-simple #grille > .carte.is-epuree:not(.is-ouverte) .actions-carte [data-lister] {
  display: none;
}
/* Fiche ouverte : ce que « ⋯ » montre se range AU-DESSUS de « Piloter ▶ ⋯ » (la rangée tient en bas de la fiche) :
   « ⋯ » reste sous la souris, un 2e clic referme. */
body.interface-simple #grille > .carte.is-ouverte .actions-carte > [data-verifier],
body.interface-simple #grille > .carte.is-ouverte .actions-carte > [data-lister] { order: -1; }
/* un saut de ligne vide (aucun texte) : « Piloter ▶ ⋯ » reste une rangée entière, quelle que soit la largeur */
body.interface-simple #grille > .carte.is-ouverte .actions-carte::after { content: ""; order: -1; flex-basis: 100%; height: 0; margin-top: -6px; }
/* « ⋯ » : à la hauteur de « Piloter ▶ » ; rose quand la fiche (ou la barre) est ouverte */
body.interface-simple #grille .is-plus { min-width: 34px; font-size: 15px; line-height: 18px; letter-spacing: 1px; color: var(--doux); }
body.interface-simple #vue-flotte .is-options { color: var(--doux); }
body.interface-simple #grille .is-plus:hover,
body.interface-simple #vue-flotte .is-options:hover { color: var(--texte); }
body.interface-simple #grille .is-plus[aria-expanded="true"],
body.interface-simple #vue-flotte .is-options[aria-expanded="true"] {
  color: var(--texte); border-color: var(--accent); background: rgba(220,60,128,.12);
}
body.interface-simple #grille .is-plus:focus-visible,
body.interface-simple #vue-flotte .is-options:focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }

/* ---------- 📱 Flotte : la barre d outils. La recherche, les puces et « ▶ Tournée » restent ; « Tout sélectionner »,
   cartes/liste et la santé passent derrière « ⋯ Plus d options » (à leur place d avant quand on l ouvre). ---------- */
body.interface-simple #vue-flotte > .outils.is-epuree:not(.is-ouverte) > .bascule,
body.interface-simple #vue-flotte > .outils.is-epuree:not(.is-ouverte) > #tout-choisir,
body.interface-simple #vue-flotte > .outils.is-epuree:not(.is-ouverte) > .interrupteur,
body.interface-simple #vue-flotte > .outils.is-epuree:not(.is-ouverte) > #tout-verifier { display: none; }

/* Ce qui apparaît au clic arrive en fondu court (160 ms), une fois : jamais quand la Flotte se redessine (la classe
   is-vient-douvrir ne vit que 200 ms), jamais quand l écran préfère le calme. Aucun son. */
body.interface-simple #grille > .carte.is-vient-douvrir .ajout-compte,
body.interface-simple #grille > .carte.is-vient-douvrir .actions-carte [data-verifier],
body.interface-simple #grille > .carte.is-vient-douvrir .actions-carte [data-lister],
body.interface-simple #vue-flotte > .outils.is-vient-douvrir > .bascule,
body.interface-simple #vue-flotte > .outils.is-vient-douvrir > #tout-choisir,
body.interface-simple #vue-flotte > .outils.is-vient-douvrir > .interrupteur,
body.interface-simple #vue-flotte > .outils.is-vient-douvrir > #tout-verifier { animation: is-fiches-apparait .16s ease-out; }
@keyframes is-fiches-apparait { from { opacity: 0; transform: translateY(-2px); } }

/* ---------- Les pages vides et leur bouton : dans le message vide, centrés ---------- */
body.interface-simple .is-vide-boutons { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 16px; }
/* ✨ Retouche sans vidéo : une phrase et ses chemins, juste sous « Vidéo à retoucher » */
body.interface-simple .is-vide-indice {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 8px 0 4px; padding: 10px 12px;
  border: 1px dashed var(--bord); border-radius: 10px; background: rgba(220,60,128,.06);
}
body.interface-simple .is-vide-indice p { flex-basis: 100%; margin: 0; color: var(--doux); font-size: 13px; }
/* tant que la page vide porte SON bouton rose, celui du haut (« + Nouvelle modèle », « + Ajouter un assistant »,
   « + Nouvelle tâche ») devient gris : une seule action rose par page. Il redevient rose dès que la liste a un élément. */
body.interface-simple #vue-modeles:has([data-is-vide]) #nouvelle-modele {
  background: var(--surface-3); border-color: var(--bord); color: var(--texte); box-shadow: none;
}
body.interface-simple #vue-equipe:has([data-is-vide]) #nouvel-assistant {
  background: var(--surface-3); border-color: var(--bord); color: var(--texte); box-shadow: none;
}
body.interface-simple #vue-taches:has([data-is-vide]) #nouvelle-tache {
  background: var(--surface-3); border-color: var(--bord); color: var(--texte); box-shadow: none;
}
body.interface-simple #vue-modeles:has([data-is-vide]) #nouvelle-modele:hover { background: #2e2329; border-color: #4a3641; }
body.interface-simple #vue-equipe:has([data-is-vide]) #nouvel-assistant:hover { background: #2e2329; border-color: #4a3641; }
body.interface-simple #vue-taches:has([data-is-vide]) #nouvelle-tache:hover { background: #2e2329; border-color: #4a3641; }

@media (prefers-reduced-motion: reduce) {
  body.interface-simple #grille > .carte.is-vient-douvrir *,
  body.interface-simple #vue-flotte > .outils.is-vient-douvrir > * { animation: none !important; }
}

/* 📱 Flotte, vue en liste : avec le menu de gauche (220 px), le grand bouton « Hors ligne » de la dernière colonne (le
   rebranchement, branche en-ligne) passe sur une ligne de plus pour que le tableau tienne dans sa grille : à 1024 px, il
   en dépassait de 15 px (relecture du 2026-10-14). Sans effet tant que ce bouton n existe pas dans la page. */
body.interface-simple #grille .tableau .rebranchement { max-width: 200px; }
