/* /Components/Layout/CompositionLayout.razor.rz.scp.css */
/* Lot 34 (retour de François, 4 novembre 2026 : « on a redoublement d'information sur le type et le titre ») : dans la
   visionneuse (classe orbite-dans-visionneuse posée par js/orbite.js), le bloc titre de la barre d'outils d'un document
   (CompositionBarre, gabarits, éditeur de champs PDF, évaluation interne) disparaît : le titre et le dossier sont dans la
   barre de la visionneuse, une seule fois. Une page ouverte par son adresse le garde en tête de sa barre. */
:root.orbite-dans-visionneuse .composition-page[b-vz3z1egebk]  .composition-titre { display: none; }
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/*
  Menu en haut (Réglages « Menu principal », témoin orbite-menu ; Suivi/Reponses-2026-10-29-Menu-Haut.md) : la barre de
  menus dans la barre supérieure, à la place de la navigation latérale, pour les petits écrans. Les règles communes de la
  coquille restent dans wwwroot/css/site.css ; ici, seulement ce que le menu en haut change (classe menu-haut sur .orbite-app).
  Sous 900 px, la barre disparaît et le tiroir de gauche de site.css reprend, dans les deux positions du menu.
*/

.orbite-app.menu-haut[b-3fuf59umh1] {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "barre" "contenu";
}

.menu-haut .orbite-barre-replier[b-3fuf59umh1], .menu-haut .orbite-organisme[b-3fuf59umh1] { display: none; }
/* La recherche prend ce qui reste (jusqu'à 220 px) et se serre avant de chevaucher le menu. */
.menu-haut .orbite-recherche[b-3fuf59umh1] { flex: 1 1 120px; min-width: 110px; max-width: 220px; margin-left: auto; }

@media (min-width: 900px) {
    .menu-haut .orbite-nav[b-3fuf59umh1], .menu-haut .orbite-nav-voile[b-3fuf59umh1] { display: none; }
}

/* ---------- La barre de menus ---------- */

.menu-haut-barre[b-3fuf59umh1] {
    position: relative;
    z-index: 1003; /* au-dessus du voile : survoler ou cliquer un autre groupe pendant qu'une liste est ouverte */
    display: flex;
    align-items: center;
    gap: 2px;
    flex: 0 0 auto;
    height: 100%;
    margin-left: 4px;
    padding-left: 8px;
    border-left: 1px solid var(--orbite-nav-actif-fond);
}

.menu-haut-groupe[b-3fuf59umh1] { position: relative; height: 100%; display: flex; align-items: center; }

.menu-haut-item[b-3fuf59umh1] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 34px;
    padding: 0 10px;
    box-sizing: border-box;
    border: 0;
    border-radius: var(--orbite-rayon);
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: 14px;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
}

.menu-haut-item[b-3fuf59umh1]  .orbite-ico { flex: none; opacity: .9; }
.menu-haut-item:hover[b-3fuf59umh1], .menu-haut-item[aria-expanded="true"][b-3fuf59umh1] { background: var(--orbite-nav-actif-fond); color: var(--orbite-sur-bleu); }
.menu-haut-item:focus-visible[b-3fuf59umh1] { outline-color: var(--orbite-sur-bleu); outline-offset: -2px; }

/* L'élément courant : le voile clair et la barre d'accent (en bas, puisqu'il n'y a plus de côté gauche). */
.menu-haut-item.actif[b-3fuf59umh1], .menu-haut-groupe.courant > .menu-haut-item[b-3fuf59umh1] {
    background: var(--orbite-nav-actif-fond);
    box-shadow: inset 0 -3px 0 var(--orbite-accent);
    font-weight: 600;
}

.menu-haut-item[b-3fuf59umh1]  .menu-haut-chevron { opacity: .7; transition: transform .15s ease-out; }
.menu-haut-groupe.ouvert > .menu-haut-item[b-3fuf59umh1]  .menu-haut-chevron { transform: rotate(180deg); }

/* La liste déroulante d'un groupe : l'allure du menu de l'utilisateur (site.css), ancrée à gauche du bouton. */
.menu-haut-liste[b-3fuf59umh1] {
    top: calc(100% - 4px);
    left: 0;
    right: auto;
    min-width: 250px;
}

.menu-haut-liste a.actif[b-3fuf59umh1] { background: var(--orbite-bleu-pale); color: var(--orbite-accent-texte); font-weight: 600; }
.menu-haut-liste a.actif[b-3fuf59umh1]  .orbite-ico { color: var(--orbite-accent-texte); }

/* Jusqu'à 1399 px (1366 × 768, 1280 × 720) : le nom de l'utilisateur part (sa photo et l'infobulle restent), la recherche
   se contente de 160 px. De 900 à 1199 px : les libellés restent (c'est le sens d'un menu), les icônes des entrées partent. */
@media (max-width: 1399px) {
    .menu-haut .orbite-utilisateur-nom[b-3fuf59umh1] { display: none; }
    .menu-haut .orbite-recherche[b-3fuf59umh1] { max-width: 180px; }
}

@media (max-width: 1199px) {
    .menu-haut-item[b-3fuf59umh1] { padding: 0 8px; gap: 6px; }
    .menu-haut-item[b-3fuf59umh1] >  .orbite-ico:not(.menu-haut-chevron) { display: none; }
    .menu-haut .orbite-recherche[b-3fuf59umh1] { max-width: 140px; }
}

@media (max-width: 899px) {
    .menu-haut-barre[b-3fuf59umh1] { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .menu-haut-item[b-3fuf59umh1]  .menu-haut-chevron { transition: none; }
}

@media print {
    .menu-haut-barre[b-3fuf59umh1] { display: none !important; }
}

/* ---------- Le choix du site (lot E4, Layout/SelecteurSite.razor) ----------
   Dans la barre du haut sur grand écran ; sous 900 px, la barre se serre et le choix passe en tête du tiroir. */
.orbite-site-barre[b-3fuf59umh1] { flex: none; min-width: 0; }
.orbite-site-tiroir[b-3fuf59umh1] { display: none; }

@media (max-width: 899px) {
    .orbite-site-barre[b-3fuf59umh1] { display: none; }
    .orbite-site-tiroir[b-3fuf59umh1] { display: block; }
}

/* Lot 32 : le panneau « Informations » ouvert sans document s'ancre à droite (Shared/Visionneuse, 440 px) ; la page se
   pousse pour rester entière à côté, mais seulement sur un grand écran (1400 px et plus : à 1280 px, la page poussée
   n'a plus que ~600 px et les cartes s'écrasent). Plus étroit, il couvre la page comme un tiroir. */
@media (min-width: 1400px) {
    .orbite-app.panneau-lateral-ouvert .orbite-contenu[b-3fuf59umh1] { padding-right: calc(440px + var(--orbite-marge)); }
}

/* Lot 34 : le panneau placé à gauche (Apparence.PanneauGauche) pousse la page de l'autre côté : il s'ancre entre la
   navigation et la page, qui garde sa marge à droite. */
@media (min-width: 1400px) {
    .orbite-app.panneau-lateral-ouvert.panneau-lateral-gauche .orbite-contenu[b-3fuf59umh1] {
        padding-right: var(--orbite-marge);
        padding-left: calc(440px + var(--orbite-marge));
    }
}
/* /Components/Layout/MobileLayout.razor.rz.scp.css */
/* La coquille mobile (Docs/Plan-Mobile.md § 2) : barre du haut, page, barre du bas fixe, feuille du menu.
   Les jetons sont ceux d'Orbite (orbite-couleurs.css) ; les classes orbite-app, orbite-barre-haut, orbite-contenu,
   orbite-utilisateur et orbite-menu-flottant viennent de site.css (la coquille bureau) : on ne redéfinit ici que ce qui
   change. Un seul point de rupture compte : la coquille mobile se choisit par le gabarit, pas par la largeur. */

.orbite-app.mode-mobile[b-ik4skrqta9] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
    --mobile-barre-bas: 56px;
}

/* ---------- Barre du haut ---------- */

.mobile-barre-haut[b-ik4skrqta9] { padding-left: 10px; }
.mobile-barre-haut .orbite-organisme[b-ik4skrqta9] { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 15px; font-weight: 600; }
.mobile-barre-haut .orbite-utilisateur-bouton img[b-ik4skrqta9] { width: 32px; height: 32px; }

/* ---------- La page ---------- */

.mobile-contenu[b-ik4skrqta9] {
    flex: 1 1 auto;
    padding-bottom: calc(var(--mobile-barre-bas) + env(safe-area-inset-bottom, 0px) + var(--orbite-marge));
}

/* ---------- Barre du bas ---------- */

.mobile-barre-bas[b-ik4skrqta9] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    display: flex;
    align-items: stretch;
    height: calc(var(--mobile-barre-bas) + env(safe-area-inset-bottom, 0px));
    padding-bottom: env(safe-area-inset-bottom, 0px);
    box-sizing: border-box;
    background: var(--orbite-fond-surface);
    border-top: 1px solid var(--orbite-bordure);
    box-shadow: 0 -2px 8px rgba(0, 0, 0, .06);
}

.mobile-onglet[b-ik4skrqta9] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 0 2px;
    border: 0;
    background: transparent;
    color: var(--orbite-texte-secondaire);
    font: inherit;
    font-size: 11px;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.mobile-onglet span[b-ik4skrqta9] { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mobile-onglet.actif[b-ik4skrqta9] { color: var(--orbite-accent); font-weight: 600; }
.mobile-onglet:active[b-ik4skrqta9] { background: var(--orbite-fond-discret); }
.mobile-onglet:focus-visible[b-ik4skrqta9] { outline: 2px solid var(--orbite-focus); outline-offset: -2px; }

/* ---------- Feuille du menu ---------- */

.mobile-feuille-voile[b-ik4skrqta9] {
    position: fixed;
    inset: 0;
    z-index: 1090;
    background: rgba(0, 0, 0, .35);
}

.mobile-feuille[b-ik4skrqta9] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: calc(var(--mobile-barre-bas) + env(safe-area-inset-bottom, 0px));
    z-index: 1100;
    max-height: calc(100vh - var(--orbite-entete-hauteur) - var(--mobile-barre-bas) - 24px);
    max-height: calc(100dvh - var(--orbite-entete-hauteur) - var(--mobile-barre-bas) - 24px);
    overflow-y: auto;
    padding: 6px 8px 12px 8px;
    box-sizing: border-box;
    background: var(--orbite-fond-surface);
    color: var(--orbite-texte);
    border-radius: 14px 14px 0 0;
    box-shadow: 0 -8px 24px rgba(0, 0, 0, .25);
    animation: mobile-feuille-monte-b-ik4skrqta9 .18s ease-out;
}

@keyframes mobile-feuille-monte-b-ik4skrqta9 {
    from { transform: translateY(24px); opacity: 0; }
    to { transform: none; opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-feuille[b-ik4skrqta9] { animation: none; }
}

.mobile-feuille-poignee[b-ik4skrqta9] { width: 36px; height: 4px; margin: 2px auto 8px auto; border-radius: 2px; background: var(--orbite-bordure); }
.mobile-feuille-site[b-ik4skrqta9] { margin: 0 4px 6px 4px; }
.mobile-feuille-groupe[b-ik4skrqta9] { padding: 4px 0 6px 0; border-top: 1px solid var(--orbite-bordure-discrete); }
.mobile-feuille-groupe-titre[b-ik4skrqta9] { display: flex; align-items: center; gap: 8px; padding: 8px 12px 4px 12px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--orbite-texte-secondaire); }

.mobile-feuille-item[b-ik4skrqta9] {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 44px;
    padding: 0 12px;
    border-radius: var(--orbite-rayon);
    color: var(--orbite-texte);
    text-decoration: none;
    font-size: 15px;
}

.mobile-feuille-item:active[b-ik4skrqta9] { background: var(--orbite-fond-discret); }
.mobile-feuille-item.actif[b-ik4skrqta9] { color: var(--orbite-accent); font-weight: 600; background: var(--orbite-nav-actif-fond); }
.mobile-feuille-pied[b-ik4skrqta9] { padding: 8px 12px 0 12px; font-size: 12px; color: var(--orbite-texte-attenue); }
.mobile-feuille-pied a[b-ik4skrqta9] { color: inherit; }

/* Sous 600 px, site.css cache le nom de l'organisme dans la barre du bureau (la recherche y prend la place) ; la barre
   mobile n'a pas de recherche : le nom reste, en ellipse, et la pastille de l'utilisateur se tient à droite. */
.mobile-barre-haut .orbite-organisme[b-ik4skrqta9] { display: block; }
.mobile-barre-haut .orbite-utilisateur[b-ik4skrqta9] { margin-left: auto; }
/* /Components/Layout/SelecteurSite.razor.rz.scp.css */
/* Le choix du site (lot E4) : le bouton de la barre du haut (texte clair sur la barre bleue), du tiroir du téléphone
   (pleine largeur dans la navigation) et de la barre des tuiles (texte de la page), puis la liste des sites, à l'allure
   du menu de l'utilisateur (.orbite-menu-flottant de site.css). */

.selecteur-site[b-7jxosurodm] { position: relative; flex: none; min-width: 0; }

.selecteur-site-bouton[b-7jxosurodm] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    max-width: 260px;
    height: 34px;
    padding: 0 10px;
    box-sizing: border-box;
    border: 1px solid var(--orbite-nav-actif-fond);
    border-radius: 999px;
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
}

.selecteur-site-bouton:hover[b-7jxosurodm], .selecteur-site-bouton[aria-expanded="true"][b-7jxosurodm] { background: var(--orbite-nav-actif-fond); }
.selecteur-site-bouton:focus-visible[b-7jxosurodm] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }

.selecteur-site-point[b-7jxosurodm] {
    flex: none;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--orbite-texte-attenue);
    box-shadow: 0 0 0 2px rgba(255, 255, 255, .85);
}

.selecteur-site-logo[b-7jxosurodm] {
    flex: none;
    width: 22px;
    height: 22px;
    border-radius: 4px;
    object-fit: contain;
    background: var(--orbite-sur-bleu);
}

.selecteur-site-nom[b-7jxosurodm] { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
.selecteur-site-bouton[b-7jxosurodm]  .selecteur-site-chevron { flex: none; opacity: .8; }

/* La liste : ancrée à droite du bouton dans la barre, à gauche dans le tiroir. */
.selecteur-site-liste[b-7jxosurodm] { min-width: 260px; }
.selecteur-site-liste button.courant[b-7jxosurodm] { font-weight: 600; }
.selecteur-site-liste .selecteur-site-point[b-7jxosurodm] { box-shadow: 0 0 0 1px var(--orbite-bordure); }
.selecteur-site-libelle[b-7jxosurodm] { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.selecteur-site-libelle small[b-7jxosurodm] { font-size: 12px; font-weight: 400; color: var(--orbite-texte-secondaire); }
.selecteur-site-liste[b-7jxosurodm]  .selecteur-site-coche { color: var(--orbite-accent-texte); }
/* Lot E7 : « Tous mes sites », icône neutre à la place de la pastille. */
[b-7jxosurodm] .selecteur-site-tous { flex: none; opacity: .9; }
.selecteur-site-liste[b-7jxosurodm]  .selecteur-site-tous { color: var(--orbite-texte-secondaire); }

/* Tiroir du téléphone : un bloc pleine largeur en tête de la navigation. */
.selecteur-site--tiroir[b-7jxosurodm] { padding: 4px 12px 8px 12px; }
.selecteur-site--tiroir .selecteur-site-bouton[b-7jxosurodm] { width: 100%; max-width: none; }
.selecteur-site--tiroir .selecteur-site-nom[b-7jxosurodm] { flex: 1; text-align: left; }
.selecteur-site--tiroir .selecteur-site-liste[b-7jxosurodm] { left: 12px; right: 12px; min-width: 0; }

/* Barre des tuiles : le texte de la page, pas celui de la barre bleue. */
.selecteur-site--tuiles .selecteur-site-bouton[b-7jxosurodm] { border-color: var(--orbite-bordure); }
.selecteur-site--tuiles .selecteur-site-bouton:hover[b-7jxosurodm], .selecteur-site--tuiles .selecteur-site-bouton[aria-expanded="true"][b-7jxosurodm] { background: var(--orbite-survol); }
.selecteur-site--tuiles .selecteur-site-point[b-7jxosurodm] { box-shadow: 0 0 0 1px var(--orbite-bordure); }

@media (max-width: 599px) {
    .selecteur-site--tuiles .selecteur-site-nom[b-7jxosurodm] { max-width: 90px; }
}
/* /Components/Pages/Admin/CalendrierOffice.razor.rz.scp.css */
.office-avis[b-mmiu03xojw] {
    max-width: 900px;
}
/* /Components/Pages/Admin/Commun/AdminTableau.razor.rz.scp.css */
/* Les cartes d'administration sont courtes : en grille de colonnes (Liste Colonnes="auto"), le détail déplié sous le corps. */
.admin-liste[b-0sfpir23x4]  .admin-liste-actifs { margin-right: 4px; }
.admin-liste[b-0sfpir23x4]  .admin-carte-detail { margin-top: 10px; padding-top: 8px; border-top: 1px solid var(--orbite-bordure-discrete); }
.admin-liste[b-0sfpir23x4]  .orbite-ligne-meta .orbite-pastille { font-size: 11px; }
[b-0sfpir23x4] .admin-fiche-historique { margin-right: auto; }
/* /Components/Pages/Admin/Commun/AideAdmin.razor.rz.scp.css */
/* Panneau « Aide » replié : mise en page ; les couleurs (l'autre marque) sont celles de .aide-croisee (site.css). */

.aide-admin[b-8i3vpkp4nj] {
    border-width: 1px;
    border-style: solid;
    border-radius: var(--orbite-rayon);
    margin: 12px 0;
    overflow: hidden;
}

.aide-admin-entete[b-8i3vpkp4nj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    cursor: pointer;
    user-select: none;
}

.aide-admin-titre[b-8i3vpkp4nj] {
    flex: 1;
    font-weight: 600;
}

.aide-admin-corps[b-8i3vpkp4nj] { padding: 8px 14px 12px; }

.aide-admin-corps[b-8i3vpkp4nj]  h1 { font-size: 1.4em; margin: 4px 0 8px 0; }
.aide-admin-corps[b-8i3vpkp4nj]  h2 { font-size: 1.15em; margin: 10px 0 4px 0; }
/* /Components/Pages/Admin/Commun/ChoixSites.razor.rz.scp.css */
/* Le champ « Sites » des fiches d'administration (lot E4 des sites) : une case « Tous les sites », puis une case par site
   avec sa pastille de couleur (une couleur de données : en point) ; le principal d'un utilisateur en bouton radio. */

.choix-sites[b-jg0bfv4h2n] { display: flex; flex-direction: column; gap: 4px; }
.choix-sites-ligne[b-jg0bfv4h2n] { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.choix-sites-ligne label[b-jg0bfv4h2n], label.choix-sites-ligne[b-jg0bfv4h2n] { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.choix-sites-site[b-jg0bfv4h2n] { padding-left: 24px; }
.choix-sites-point[b-jg0bfv4h2n] { flex: none; width: 10px; height: 10px; border-radius: 50%; }
.choix-sites-inactif[b-jg0bfv4h2n] { color: var(--orbite-texte-secondaire); font-style: italic; }
.choix-sites-principal[b-jg0bfv4h2n] { color: var(--orbite-texte-secondaire); font-size: 13px; }
.choix-sites-aide[b-jg0bfv4h2n] { color: var(--orbite-texte-secondaire); font-size: 13px; }
.choix-sites--compact[b-jg0bfv4h2n] { gap: 2px; font-size: 13px; }
.choix-sites--compact .choix-sites-site[b-jg0bfv4h2n] { padding-left: 12px; }
.choix-sites--compact .choix-sites-nom[b-jg0bfv4h2n] { max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* /Components/Pages/Admin/Commun/CouleurEdit.razor.rz.scp.css */
.couleur-edit[b-l6a8n6r9ib] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.couleur-edit input[type=color][b-l6a8n6r9ib] {
    width: 40px;
    height: 28px;
    padding: 0;
}

.couleur-edit[b-l6a8n6r9ib]  .couleur-edit-texte { width: 110px; }
/* /Components/Pages/Admin/ComposeTypePDF.razor.rz.scp.css */
/* Le tableau des contrôles (27 octobre 2026) : la page, le nom en gras et la sorte en petit, les réglages modifiables sur place. */
.pdf-page[b-qlj429qwzi] { display: inline-block; min-width: 36px; text-align: center; font-size: 12px; font-weight: 600; color: var(--orbite-texte-secondaire); border-radius: 999px; }
.pdf-page.pdf-choisi[b-qlj429qwzi] { background: var(--orbite-bleu-pale); color: var(--orbite-accent-texte); }
.pdf-controle[b-qlj429qwzi] { display: flex; flex-direction: column; min-width: 0; }
.pdf-nom[b-qlj429qwzi] { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pdf-sorte[b-qlj429qwzi] { font-size: 12px; color: var(--orbite-texte-secondaire); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* /Components/Pages/Admin/Corbeille.razor.rz.scp.css */
/* Corbeille : mise en page de l'écran de corbeille d'Orbite Pro (types à gauche, éléments à
   droite) ; thème DevExpress par défaut. */

.corbeille-barre[b-5sn7y2liu7] { flex-wrap: wrap; gap: 6px; }

.corbeille-filtres[b-5sn7y2liu7] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 8px 0;
}

.corbeille-aide[b-5sn7y2liu7] { margin: 4px 0 8px 0; opacity: .8; }

/* Question 63 : pourquoi les éléments du calendrier ne se restaurent pas. */
.corbeille-non-restaurable[b-5sn7y2liu7] { color: var(--bs-danger, #b00020); opacity: 1; }

.corbeille-cadre[b-5sn7y2liu7] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.corbeille-types[b-5sn7y2liu7] {
    flex: 0 0 280px;
    max-height: calc(100vh - 260px);
    overflow-y: auto;
}

.corbeille-groupe[b-5sn7y2liu7] { font-weight: bold; margin: 8px 0 2px 0; }

.corbeille-type[b-5sn7y2liu7] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 2px 6px;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}

.corbeille-type.actif[b-5sn7y2liu7] { font-weight: bold; text-decoration: underline; }

.corbeille-nombre[b-5sn7y2liu7] { opacity: .7; }

.corbeille-elements[b-5sn7y2liu7] { flex: 1; min-width: 0; }

/* Téléphone (WP7f) : les types au-dessus des éléments, sur toute la largeur. */
@media (max-width: 899px) {
    .corbeille-cadre[b-5sn7y2liu7] { flex-direction: column; }
    .corbeille-types[b-5sn7y2liu7] { flex: none; width: 100%; max-height: 240px; }
    .corbeille-elements[b-5sn7y2liu7] { width: 100%; }
}
/* /Components/Pages/Admin/EditeurChampsPdf.razor.rz.scp.css */
/* Éditeur de champs PDF (lot 30). Couleurs par les jetons d'Orbite (clair et sombre) ; la page du PDF reste blanche
   (c'est du papier) et les champs gardent un fond translucide de leur couleur pour se lire sur le papier. */

.epdf-barre[b-pv67mdlq3v] { row-gap: 4px; }
.epdf-icone[b-pv67mdlq3v] { min-width: 34px; padding: 5px; }
.epdf-actif[b-pv67mdlq3v] { background: color-mix(in srgb, var(--orbite-accent) 18%, transparent); border-color: var(--orbite-accent); }
.epdf-choix[b-pv67mdlq3v] { display: flex; align-items: center; padding: 0 4px; }

.epdf-racine[b-pv67mdlq3v] {
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr) 320px;
    background: var(--orbite-fond-page);
}

.epdf-gauche[b-pv67mdlq3v], .epdf-droite[b-pv67mdlq3v] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    background: var(--orbite-fond-surface);
}
.epdf-gauche[b-pv67mdlq3v] { border-right: 1px solid var(--orbite-bordure); }
.epdf-droite[b-pv67mdlq3v] { border-left: 1px solid var(--orbite-bordure); overflow-y: auto; }

.epdf-section-titre[b-pv67mdlq3v] {
    padding: 8px 12px 4px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--orbite-texte-secondaire);
}

/* Vignettes */
.epdf-pages[b-pv67mdlq3v] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 4px 12px 8px;
    max-height: 38%;
    overflow-y: auto;
    flex: none;
}
.epdf-vignette[b-pv67mdlq3v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 6px;
    border: 1px solid var(--orbite-bordure-discrete);
    border-radius: var(--orbite-rayon);
    background: transparent;
    color: var(--orbite-texte);
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}
.epdf-vignette:hover[b-pv67mdlq3v] { background: var(--orbite-survol); }
.epdf-vignette--active[b-pv67mdlq3v] { border-color: var(--orbite-accent); box-shadow: 0 0 0 1px var(--orbite-accent); }
.epdf-vignette img[b-pv67mdlq3v], .epdf-vignette-vide[b-pv67mdlq3v] {
    width: 120px;
    max-width: 100%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .25);
}
.epdf-vignette-vide[b-pv67mdlq3v] { display: block; }

.epdf-recherche[b-pv67mdlq3v] { padding: 0 12px 6px; }

.epdf-liste[b-pv67mdlq3v] { flex: 1; min-height: 0; overflow-y: auto; padding: 0 6px 8px; }
.epdf-ligne[b-pv67mdlq3v] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 6px;
    border-radius: var(--orbite-rayon);
    font-size: 13px;
    cursor: pointer;
    user-select: none;
}
.epdf-ligne:hover[b-pv67mdlq3v] { background: var(--orbite-survol); }
.epdf-ligne--choisie[b-pv67mdlq3v] { background: color-mix(in srgb, var(--orbite-accent) 18%, transparent); }
.epdf-ligne-rang[b-pv67mdlq3v] { min-width: 22px; text-align: right; color: var(--orbite-texte-attenue); font-variant-numeric: tabular-nums; font-size: 12px; }
.epdf-ligne-nom[b-pv67mdlq3v] { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.epdf-ligne-valeur[b-pv67mdlq3v] { color: var(--orbite-texte-secondaire); font-size: 12px; }
.epdf-vide[b-pv67mdlq3v], .epdf-aide[b-pv67mdlq3v] { padding: 8px 12px; font-size: 13px; color: var(--orbite-texte-secondaire); }
.epdf-aide p[b-pv67mdlq3v] { margin: 0 0 8px; }

/* Centre : canevas et validation */
.epdf-centre[b-pv67mdlq3v] { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.epdf-canevas[b-pv67mdlq3v] {
    flex: 1;
    min-height: 0;
    overflow: auto;
    padding: 24px;
    outline: none;
    background: var(--orbite-fond-discret);
}
.epdf-canevas:focus-visible[b-pv67mdlq3v] { box-shadow: inset 0 0 0 2px var(--orbite-focus); }
.epdf-message[b-pv67mdlq3v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin: 48px auto;
    max-width: 420px;
    text-align: center;
    color: var(--orbite-texte-secondaire);
}

.epdf-page[b-pv67mdlq3v] {
    position: relative;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .3);
    user-select: none;
    touch-action: none;
}
.epdf-image[b-pv67mdlq3v] { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.epdf-page:not(.epdf-outil-Selection)[b-pv67mdlq3v] { cursor: crosshair; }

/* Un champ : la couleur de sa sorte. */
.epdf-champ[b-pv67mdlq3v] {
    --epdf-k: var(--orbite-encre-bleue);
    --epdf-c: var(--epdf-k);
    position: absolute;
    box-sizing: border-box;
    border: 1px solid var(--epdf-c);
    background: color-mix(in srgb, var(--epdf-c) 14%, transparent);
    cursor: move;
}
.epdf-outil-Selection .epdf-champ:hover[b-pv67mdlq3v] { background: color-mix(in srgb, var(--epdf-c) 26%, transparent); }
.epdf-page:not(.epdf-outil-Selection) .epdf-champ[b-pv67mdlq3v] { cursor: crosshair; }
.epdf-champ--memo[b-pv67mdlq3v] { --epdf-k: var(--orbite-encre-bleue); }
.epdf-champ--peigne[b-pv67mdlq3v] { --epdf-k: var(--orbite-encre-bleue); }
.epdf-champ--case[b-pv67mdlq3v] { --epdf-k: var(--orbite-signe); }
.epdf-champ--radio[b-pv67mdlq3v] { --epdf-k: var(--orbite-encre-violette); border-radius: 50%; }
.epdf-champ--signature[b-pv67mdlq3v] { --epdf-k: var(--orbite-attente); border-style: dashed; }
.epdf-champ--deroulante[b-pv67mdlq3v], .epdf-champ--liste[b-pv67mdlq3v] { --epdf-k: var(--orbite-accent); }
.epdf-champ--image[b-pv67mdlq3v] { --epdf-k: var(--orbite-encre-rouge); border-style: dashed; }
/* Mode sombre : les jetons y sont pâles (faits pour un fond foncé) ; la page reste blanche, on les fonce à l'encre. */
html.orbite-sombre .epdf-champ[b-pv67mdlq3v] { --epdf-c: color-mix(in srgb, var(--epdf-k) 50%, var(--orbite-encre-papier)); }

.epdf-champ.epdf-sel[b-pv67mdlq3v] {
    border-width: 2px;
    border-color: var(--orbite-accent);
    background: color-mix(in srgb, var(--orbite-accent) 22%, transparent);
    z-index: 2;
}
.epdf-champ.epdf-marque[b-pv67mdlq3v] { outline: 2px solid var(--orbite-danger); outline-offset: 2px; z-index: 3; }
.epdf-champ.epdf-avec-apercu[b-pv67mdlq3v] { background: transparent; }

.epdf-peigne[b-pv67mdlq3v] {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: linear-gradient(to right, transparent calc(100% - 1px), color-mix(in srgb, var(--epdf-c) 60%, transparent) calc(100% - 1px));
    background-repeat: repeat-x;
}

.epdf-etiquette[b-pv67mdlq3v] {
    position: absolute;
    left: 2px;
    top: 50%;
    transform: translateY(-50%);
    max-width: calc(100% - 4px);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font: 11px/1.2 var(--orbite-police, sans-serif);
    color: var(--orbite-encre-papier);
    pointer-events: none;
    opacity: .8;
}
.epdf-etiquette--centre[b-pv67mdlq3v] { left: 50%; transform: translate(-50%, -50%); max-width: none; font-weight: 600; }
.epdf-etiquette--cote[b-pv67mdlq3v] { left: calc(100% + 3px); max-width: none; background: rgba(255, 255, 255, .85); padding: 0 2px; border-radius: 2px; }

.epdf-rang[b-pv67mdlq3v] {
    position: absolute;
    left: -6px;
    top: -9px;
    min-width: 16px;
    height: 16px;
    padding: 0 3px;
    border-radius: 8px;
    background: var(--orbite-accent);
    color: var(--orbite-sur-bleu);
    font: 600 10px/16px var(--orbite-police, sans-serif);
    text-align: center;
    pointer-events: none;
    z-index: 4;
}

/* Aperçu : décor (fond, bordure du PDF) et texte d'exemple, construits dans le code (hors portée du CSS isolé). */
.epdf-page[b-pv67mdlq3v]  .epdf-decor { position: absolute; inset: 0; pointer-events: none; }
.epdf-page[b-pv67mdlq3v]  .epdf-texte {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    overflow: hidden;
    white-space: nowrap;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.15;
    pointer-events: none;
}
.epdf-page[b-pv67mdlq3v]  .epdf-texte--paragraphe { display: block; white-space: pre-wrap; padding-top: 1px !important; }
.epdf-page[b-pv67mdlq3v]  .epdf-texte--peigne { display: grid; padding: 0 !important; }
.epdf-page[b-pv67mdlq3v]  .epdf-texte--peigne > span { text-align: center; align-self: center; }

/* Poignées : 0 HG, 1 H, 2 HD, 3 D, 4 BD, 5 B, 6 BG, 7 G. */
.epdf-poignee[b-pv67mdlq3v] {
    position: absolute;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-accent);
    z-index: 5;
}
.epdf-poignee-0[b-pv67mdlq3v] { left: 0; top: 0; cursor: nwse-resize; }
.epdf-poignee-1[b-pv67mdlq3v] { left: 50%; top: 0; cursor: ns-resize; }
.epdf-poignee-2[b-pv67mdlq3v] { left: 100%; top: 0; cursor: nesw-resize; }
.epdf-poignee-3[b-pv67mdlq3v] { left: 100%; top: 50%; cursor: ew-resize; }
.epdf-poignee-4[b-pv67mdlq3v] { left: 100%; top: 100%; cursor: nwse-resize; }
.epdf-poignee-5[b-pv67mdlq3v] { left: 50%; top: 100%; cursor: ns-resize; }
.epdf-poignee-6[b-pv67mdlq3v] { left: 0; top: 100%; cursor: nesw-resize; }
.epdf-poignee-7[b-pv67mdlq3v] { left: 0; top: 50%; cursor: ew-resize; }

/* Repères de magnétisme et bande de sélection : créés par js/editeur-pdf.js. */
.epdf-page[b-pv67mdlq3v]  .epdf-repere-x, .epdf-page[b-pv67mdlq3v]  .epdf-repere-y {
    position: absolute;
    pointer-events: none;
    z-index: 6;
    background: var(--orbite-danger);
}
.epdf-page[b-pv67mdlq3v]  .epdf-repere-x { top: 0; bottom: 0; width: 1px; }
.epdf-page[b-pv67mdlq3v]  .epdf-repere-y { left: 0; right: 0; height: 1px; }
.epdf-page[b-pv67mdlq3v]  .epdf-bande {
    position: absolute;
    pointer-events: none;
    z-index: 6;
    border: 1px dashed var(--orbite-accent);
    background: color-mix(in srgb, var(--orbite-accent) 10%, transparent);
}
.epdf-page[b-pv67mdlq3v]  .epdf-bande--creer { border-style: solid; background: color-mix(in srgb, var(--orbite-encre-bleue) 16%, transparent); }

/* Validation */
.epdf-problemes[b-pv67mdlq3v] {
    flex: none;
    max-height: 30%;
    overflow-y: auto;
    border-top: 1px solid var(--orbite-bordure);
    background: var(--orbite-fond-surface);
    padding: 4px 8px 8px;
}
.epdf-problemes-titre[b-pv67mdlq3v] { display: flex; align-items: center; gap: 6px; font-weight: 600; padding: 2px 0 6px; }
.epdf-problemes-titre > span[b-pv67mdlq3v] { flex: 1; }
.epdf-probleme[b-pv67mdlq3v] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 3px 6px;
    border: 0;
    border-radius: var(--orbite-rayon);
    background: transparent;
    color: var(--orbite-texte);
    font: inherit;
    font-size: 13px;
    text-align: left;
    cursor: pointer;
}
.epdf-probleme:hover[b-pv67mdlq3v] { background: var(--orbite-survol); }
.epdf-probleme-page[b-pv67mdlq3v] { color: var(--orbite-texte-secondaire); white-space: nowrap; }

/* Propriétés */
.epdf-proprietes[b-pv67mdlq3v] { padding: 0 8px 12px; }
.epdf-sorte[b-pv67mdlq3v] { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; }
.epdf-perdus[b-pv67mdlq3v] { margin: 8px 0 0; padding-left: 20px; font-size: 13px; max-height: 200px; overflow-y: auto; }

/* Barre d'état */
.epdf-etat[b-pv67mdlq3v] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 18px;
    padding: 3px 12px;
    font-size: 12px;
    color: var(--orbite-texte-secondaire);
    background: var(--orbite-fond-surface);
    border-top: 1px solid var(--orbite-bordure);
    font-variant-numeric: tabular-nums;
}
.epdf-etat-fichier[b-pv67mdlq3v] { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Écrans étroits : la page d'abord, les panneaux dessous. */
@media (max-width: 1100px) {
    .epdf-racine[b-pv67mdlq3v] { grid-template-columns: 190px minmax(0, 1fr) 280px; }
}
@media (max-width: 860px) {
    .epdf-racine[b-pv67mdlq3v] {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: minmax(320px, 1fr) auto auto;
        overflow-y: auto;
    }
    .epdf-centre[b-pv67mdlq3v] { order: 1; }
    .epdf-droite[b-pv67mdlq3v] { order: 2; border-left: 0; border-top: 1px solid var(--orbite-bordure); max-height: 50vh; }
    .epdf-gauche[b-pv67mdlq3v] { order: 3; border-right: 0; border-top: 1px solid var(--orbite-bordure); max-height: 50vh; }
    .epdf-pages[b-pv67mdlq3v] { flex-direction: row; max-height: none; overflow-x: auto; }
    .epdf-canevas[b-pv67mdlq3v] { padding: 12px; }
}
/* /Components/Pages/Admin/Epuration.razor.rz.scp.css */
.epuration-bloc[b-z4npan1yqa] { padding-top: 16px; }

.epuration-centre[b-z4npan1yqa] { text-align: center; }

/* Sites (lot E6) : l'épuration reste au site courant. */
.epuration-site[b-z4npan1yqa] { display: flex; align-items: center; gap: 6px; margin: 12px 0 0 0; color: var(--orbite-texte-attenue); }
/* /Components/Pages/Admin/Export.razor.rz.scp.css */
.export-entete[b-8ncuuqav5g] { padding: 12px; max-width: 900px; }

.export-table[b-8ncuuqav5g] { width: 100%; }

.export-boutons[b-8ncuuqav5g] { padding-top: 10px; display: flex; gap: 6px; flex-wrap: wrap; }

.export-onglet[b-8ncuuqav5g] { padding: 12px; }

/* Avertissement : l'exportation n'est pas offerte (couleur qui porte un sens). */
.export-refus[b-8ncuuqav5g] { color: firebrick; }
/* /Components/Pages/Admin/Niveaux.razor.rz.scp.css */
/* Grille verticale des niveaux : mise en page de Niveau.aspx (colonnes et en-têtes figés), allure
   d'Orbite 3 : une surface bordée comme les autres listes (27 octobre 2026), en-têtes sur le fond
   discret, catégories teintées, droits décalés sous leur catégorie. Les cellules figées ont un fond
   opaque pour que le contenu ne paraisse pas au travers au défilement. */

.niveaux-cadre[b-9a13xfpq4q] {
    overflow: auto;
    max-height: calc(100vh - 170px);
    margin-bottom: 60px;
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon);
}

.niveaux-grille[b-9a13xfpq4q] {
    border-collapse: separate;
    border-spacing: 0;
    color: var(--orbite-texte);
}

.niveaux-grille td[b-9a13xfpq4q],
.niveaux-grille th[b-9a13xfpq4q] {
    border-right: 1px solid var(--orbite-bordure-discrete);
    border-bottom: 1px solid var(--orbite-bordure-discrete);
    padding: 3px 8px;
    vertical-align: middle;
    background-color: var(--orbite-fond-surface);
}

.niveaux-grille thead th[b-9a13xfpq4q] {
    position: sticky;
    top: 0;
    background-color: var(--orbite-fond-discret);
    z-index: 2;
    font-weight: 600;
}

.niveaux-grille thead tr:nth-child(2) th[b-9a13xfpq4q] { top: 41px; border-bottom: 1px solid var(--orbite-bordure); }

.niveaux-entete[b-9a13xfpq4q] {
    position: sticky;
    left: 0;
    z-index: 1;
    min-width: 260px;
    text-align: left;
    border-right: 1px solid var(--orbite-bordure) !important;
}

.niveaux-grille thead .niveaux-entete[b-9a13xfpq4q] { z-index: 3; }

.niveaux-entete-ajout[b-9a13xfpq4q] { padding: 4px 8px; }

.niveaux-actions[b-9a13xfpq4q] { white-space: nowrap; }

.niveaux-propriete[b-9a13xfpq4q] { font-weight: 600; color: var(--orbite-texte-secondaire); }

/* Un droit : décalé sous sa catégorie (comme une tabulation), son icône alignée. */
.niveaux-droit[b-9a13xfpq4q] { padding-left: 38px !important; }

.niveaux-droit[b-9a13xfpq4q]  .orbite-ico {
    width: 16px;
    height: 16px;
    vertical-align: middle;
    margin-right: 6px;
    color: var(--orbite-texte-secondaire);
}

.niveaux-colonne[b-9a13xfpq4q] { min-width: 140px; text-align: center; white-space: nowrap; }

/* Colonne modifiée, pas encore sauvegardée (signale un état). */
.niveaux-grille .niveaux-colonne.modifie[b-9a13xfpq4q] { background-color: color-mix(in srgb, var(--orbite-attente) 22%, var(--orbite-fond-discret)); }

/* La case remplit sa cellule : un clic n'importe où la coche. */
.niveaux-case[b-9a13xfpq4q] { text-align: center; padding: 0 !important; }

.niveaux-cible[b-9a13xfpq4q] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    width: 100%;
    margin: 0;
    cursor: pointer;
}

.niveaux-cible:hover[b-9a13xfpq4q] { background: color-mix(in srgb, var(--orbite-bleu-pale) 55%, transparent); }

.niveaux-texte[b-9a13xfpq4q] {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid var(--orbite-bordure);
    border-radius: 4px;
    padding: 3px 6px;
    background: var(--orbite-fond-surface);
    color: var(--orbite-texte);
    font: inherit;
}

.niveaux-nom[b-9a13xfpq4q] { font-weight: 600; text-align: center; }

.niveaux-categorie td[b-9a13xfpq4q] { background-color: var(--orbite-fond-discret); border-top: 1px solid var(--orbite-bordure); }

.niveaux-categorie .niveaux-entete[b-9a13xfpq4q] {
    cursor: pointer;
    font-weight: 600;
    user-select: none;
}

.niveaux-categorie[b-9a13xfpq4q]  .orbite-ico {
    vertical-align: middle;
    margin-right: 6px;
}

.niveaux-tout[b-9a13xfpq4q] { font-weight: normal; font-size: 12px; color: var(--orbite-texte-secondaire); margin-left: 4px; }

.niveaux-droit-rangee:hover td[b-9a13xfpq4q] { background-color: color-mix(in srgb, var(--orbite-bleu-pale) 35%, var(--orbite-fond-surface)); }

.niveaux-explication td[b-9a13xfpq4q] { white-space: normal; color: var(--orbite-texte-secondaire); font-size: 13px; padding: 8px 10px; }

.niveaux-flottant[b-9a13xfpq4q] {
    position: fixed;
    bottom: 20px;
    right: 20px;
    padding: 10px;
    display: flex;
    gap: 6px;
    z-index: 900;
}

.niveaux-collant[b-9a13xfpq4q] {
    position: sticky;
    left: 10px;
    display: inline-block;
    max-width: min(900px, 70vw);
}

[b-9a13xfpq4q] .niveaux-bouton { height: 16px; margin-right: 4px; }
/* /Components/Pages/Admin/Organisme.razor.rz.scp.css */
.organisme-logo[b-yosq55kqmf] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.organisme-logo img[b-yosq55kqmf] {
    width: 120px;
    height: 120px;
    object-fit: contain;
}

.organisme-flottant[b-yosq55kqmf] {
    position: fixed;
    bottom: 20px;
    right: 20px;
    padding: 10px;
    z-index: 900;
}

[b-yosq55kqmf] .organisme-bouton { height: 16px; margin-right: 4px; }

/* Forfait (lecture seule, réglé par Virtys) */
.organisme-forfait[b-yosq55kqmf] { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; padding-top: 4px; }
.organisme-forfait-note[b-yosq55kqmf] { color: var(--orbite-texte-secondaire, #666); font-size: 0.9em; }
.organisme-forfait-liste[b-yosq55kqmf] { margin: 4px 0 0 0; padding-left: 20px; }

/* Plusieurs cases sur une ligne de réglage (fonctions héritées). */
.organisme-cases[b-yosq55kqmf] { display: flex; gap: 16px; flex-wrap: wrap; }

/* Portail client (B1) : les valeurs de l'onglet (adresse, instance, empreinte), l'erreur du relais. */
.organisme-portail-valeur[b-yosq55kqmf] { overflow-wrap: anywhere; }
.organisme-portail-kid[b-yosq55kqmf] { display: inline-flex; align-items: center; gap: 6px; }
.organisme-portail-kid code[b-yosq55kqmf] { font-size: 12px; user-select: all; }
.organisme-portail-erreur[b-yosq55kqmf] { color: var(--orbite-danger); overflow-wrap: anywhere; }

/* Sites (lot E6) : le renvoi vers Administration › Sites, en tête de l'onglet Identité. */
.organisme-sites[b-yosq55kqmf] {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin: 12px 0 4px 0;
    padding: 10px 14px;
    border: 1px solid var(--orbite-bordure);
    border-left: 4px solid var(--orbite-accent-texte);
    border-radius: var(--orbite-rayon);
    background: var(--orbite-bleu-pale);
    color: var(--orbite-texte);
}
.organisme-sites p[b-yosq55kqmf] { margin: 2px 0 0 0; }
.organisme-sites-titre[b-yosq55kqmf] { font-weight: 600; }
/* /Components/Pages/Admin/PlanSoin.razor.rz.scp.css */
/* Les sous-listes d'un plan (phases, actions, requis) : en retrait sous la carte ou la rangée dépliée (WP7f). */
[b-hhmlw244rg] .plansoin-sous-liste { margin-top: 8px; }
[b-hhmlw244rg] .plansoin-sous-liste .orbite-liste-elements { gap: 4px; }
[b-hhmlw244rg] .plansoin-sous-liste .orbite-ligne-corps { padding-left: 16px; }
[b-hhmlw244rg] .plansoin-sous-liste .orbite-liste-vide { padding: 8px; text-align: left; font-size: 13px; }
[b-hhmlw244rg] .plansoin-carte .orbite-carte-corps { overflow: visible; }

/* Une action a parfois beaucoup de requis : la rangée enveloppe au lieu de déborder (règle WP7c, BS51). */
[b-hhmlw244rg] .plansoin-sous-liste .orbite-ligne-rangee { flex-wrap: wrap; row-gap: 2px; }
[b-hhmlw244rg] .plansoin-sous-liste .orbite-ligne-meta { flex-wrap: wrap; white-space: normal; margin-left: auto; justify-content: flex-end; }
/* /Components/Pages/Admin/Regles.razor.rz.scp.css */
.regles-intro[b-m5narx0cf9], .regles-vide[b-m5narx0cf9] { max-width: 900px; color: var(--orbite-texte); }
.regles-module[b-m5narx0cf9] { margin: 18px 0 4px; font-size: 1.15rem; }
.regles-sorte[b-m5narx0cf9] { margin: 10px 0 4px; font-size: 1rem; color: var(--orbite-accent-texte); }
.regles-compte[b-m5narx0cf9] { margin-left: 8px; font-size: 0.85rem; font-weight: normal; color: var(--orbite-texte-attenue); }
.regles-table[b-m5narx0cf9] { width: 100%; border-collapse: collapse; font-size: 0.92rem; margin-bottom: 8px; }
.regles-table th[b-m5narx0cf9], .regles-table td[b-m5narx0cf9] { padding: 6px 8px; border-bottom: 1px solid var(--orbite-bordure); text-align: left; vertical-align: top; }
.regles-table th[b-m5narx0cf9] { color: var(--orbite-texte-attenue); font-weight: 600; }
.regles-actif[b-m5narx0cf9] { width: 56px; }
.regles-actions[b-m5narx0cf9] { width: 120px; white-space: nowrap; text-align: right; }
.regles-code[b-m5narx0cf9] { color: var(--orbite-texte-attenue); font-size: 0.85rem; }
.regles-eteinte td[b-m5narx0cf9] { color: var(--orbite-texte-attenue); }
.regles-livree[b-m5narx0cf9] { display: inline-block; margin-left: 6px; padding: 0 6px; border-radius: 8px; font-size: 0.75rem; font-weight: normal; background: var(--orbite-accent-fond, #f1efe8); color: var(--orbite-accent-texte); vertical-align: middle; }
.regles-action[b-m5narx0cf9] { border: 1px solid var(--orbite-bordure); background: var(--orbite-fond-carte, transparent); color: var(--orbite-texte); border-radius: 6px; padding: 3px 8px; font-size: 0.85rem; cursor: pointer; margin-left: 4px; }
.regles-action:hover[b-m5narx0cf9] { border-color: var(--orbite-accent-texte); }
.regles-aide[b-m5narx0cf9] { color: var(--orbite-texte-attenue); font-size: 0.85rem; margin: 2px 0 4px; }
.regles-codes[b-m5narx0cf9] { width: 100%; border-collapse: collapse; font-size: 0.9rem; margin-bottom: 6px; }
.regles-codes th[b-m5narx0cf9], .regles-codes td[b-m5narx0cf9] { padding: 3px 6px; border-bottom: 1px solid var(--orbite-bordure); text-align: left; vertical-align: middle; }
.regles-codes th[b-m5narx0cf9] { color: var(--orbite-texte-attenue); font-weight: 600; }
.regles-codes td:first-child[b-m5narx0cf9] { width: 40%; }
.regles-codes td:last-child[b-m5narx0cf9] { width: 36px; }
/* /Components/Pages/Admin/Sites.razor.rz.scp.css */
/* Administration › Sites (lot E4) : la vignette des cartes (le logo d'écran du site, sinon un rond de sa couleur avec
   l'épingle) et les logos de la fiche, sur le modèle de ceux de l'organisme (Organisme.razor.css). */

[b-vtptg1nkg7] .site-vignette { width: 32px; height: 32px; border-radius: 6px; object-fit: contain; background: var(--orbite-fond-discret); }
[b-vtptg1nkg7] .site-vignette--couleur { display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; color: var(--orbite-sur-bleu); background: var(--orbite-texte-attenue); }

[b-vtptg1nkg7] .site-logo { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
[b-vtptg1nkg7] .site-logo img { width: 120px; height: 120px; object-fit: contain; border: 1px solid var(--orbite-bordure); border-radius: var(--orbite-rayon); background: var(--orbite-fond-discret); }
[b-vtptg1nkg7] .site-aide { color: var(--orbite-texte-secondaire); font-size: 13px; }
/* /Components/Pages/Admin/Utilisateurs.razor.rz.scp.css */
.utilisateur-vignette[b-m7hmg8fm9g] { width: 64px; height: 64px; object-fit: contain; }

.utilisateur-photo[b-m7hmg8fm9g] { display: flex; gap: 10px; align-items: flex-start; }

.utilisateur-photo img[b-m7hmg8fm9g] { width: 96px; height: 96px; object-fit: contain; }

.utilisateur-courriel[b-m7hmg8fm9g] { margin-inline: 16px; }

.utilisateur-courriel-ligne[b-m7hmg8fm9g] { display: flex; gap: 8px; align-items: center; }

.utilisateur-courriel-ligne[b-m7hmg8fm9g]  .utilisateur-courriel-texte { flex: 1; }

/* Résultat du test de courriel (couleurs qui portent un sens). */
.utilisateur-ok[b-m7hmg8fm9g] { color: darkgreen; }

.utilisateur-erreur[b-m7hmg8fm9g] { color: light-dark(darkred, #ff7a7a); }
/* /Components/Pages/Analyse/ChoixSitesAnalyse.razor.rz.scp.css */
/* Le choix « Ce site / Tous mes sites » des statistiques et des tableaux d'analyse (lot E5 des sites) : deux segments
   côte à côte, la pastille du site courant ou celles des sites (couleurs de données : en points), puis « Par site ». */

.choix-sites-analyse[b-vfy8w61nuh] { display: flex; gap: 2px 10px; }
.choix-sites-analyse--colonne[b-vfy8w61nuh] { flex-direction: column; align-items: flex-start; gap: 2px; }
.choix-sites-analyse--ligne[b-vfy8w61nuh] { flex-direction: row; align-items: center; flex-wrap: wrap; }
.choix-sites-analyse--colonne[b-vfy8w61nuh]  .dxbl-checkbox { margin-top: 4px; }

.choix-sites-analyse-segments[b-vfy8w61nuh] {
    display: inline-flex;
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon);
    overflow: hidden;
}

.choix-sites-analyse-segment[b-vfy8w61nuh] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    padding: 0 12px;
    border: 0;
    background: var(--orbite-fond-surface);
    color: var(--orbite-texte);
    font: inherit;
    font-size: 14px;
    white-space: nowrap;
    cursor: pointer;
}

.choix-sites-analyse-segment + .choix-sites-analyse-segment[b-vfy8w61nuh] { border-left: 1px solid var(--orbite-bordure); }
.choix-sites-analyse-segment:hover[b-vfy8w61nuh] { background: var(--orbite-survol); }
.choix-sites-analyse-segment[aria-pressed="true"][b-vfy8w61nuh] {
    background: var(--orbite-bleu-pale);
    color: var(--orbite-accent-texte);
    font-weight: 600;
}
.choix-sites-analyse-segment:focus-visible[b-vfy8w61nuh] { outline: 2px solid var(--orbite-focus); outline-offset: -2px; }

.choix-sites-analyse-points[b-vfy8w61nuh] { display: inline-flex; }
.choix-sites-analyse-points .choix-sites-analyse-point + .choix-sites-analyse-point[b-vfy8w61nuh] { margin-left: -3px; }

.choix-sites-analyse-point[b-vfy8w61nuh] {
    flex: none;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--orbite-texte-attenue);
    box-shadow: 0 0 0 1px var(--orbite-fond-surface);
}
/* /Components/Pages/Analyse/DirectiveGrid.razor.rz.scp.css */
/* Directives des dossiers en séjour (phase 2, Docs/Listes-Orbite.md) : une carte par dossier, ses directives en
   lignes dessous ; le texte d'une directive garde sa couleur et peut tenir sur plusieurs lignes (la rangée
   s'allonge). Jetons et cartes : site.css. */

.analyse-directives[b-64gha2vfed]  .analyse-directives-liste { margin-top: 4px; }
.analyse-directives[b-64gha2vfed]  .analyse-directive .orbite-ligne-rangee { min-height: 40px; height: auto; }
.analyse-directives[b-64gha2vfed]  .analyse-directive .orbite-ligne-titre { flex: 1 1 auto; max-width: none; white-space: pre-wrap; font-weight: 500; }
/* /Components/Pages/Analyse/MedicationGrid.razor.rz.scp.css */
/* Portrait de la médication (phase 2, Docs/Listes-Orbite.md) : une carte par dossier, ses médications en lignes
   dessous (la rangée enveloppe par site.css, BS51). */

.analyse-medication[b-npufaqix1q]  .analyse-medication-liste { margin-top: 4px; }
/* /Components/Pages/Analyse/OccupationGrid.razor.rz.scp.css */
/* Occupation actuelle (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes (une par place, en grille de
   colonnes) ; ne restent ici que le panneau de la date et les couleurs du web qui portent un sens, sur le
   titre de la carte (jetons lit-libre, lit-depart, lit-arrivee ; le liseré les reprend). */

.analyse-filtre[b-agtncjoems] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    padding: 8px 12px;
}

.analyse-liste[b-agtncjoems] { margin-top: 12px; }

.analyse-occupation[b-agtncjoems]  .analyse-libre .orbite-carte-titre, .analyse-occupation[b-agtncjoems]  .analyse-libre .orbite-ligne-titre { color: var(--orbite-lit-libre); }
.analyse-occupation[b-agtncjoems]  .analyse-depart .orbite-carte-titre, .analyse-occupation[b-agtncjoems]  .analyse-depart .orbite-ligne-titre { color: var(--orbite-lit-depart); }
.analyse-occupation[b-agtncjoems]  .analyse-arrivee .orbite-carte-titre, .analyse-occupation[b-agtncjoems]  .analyse-arrivee .orbite-ligne-titre { color: var(--orbite-lit-arrivee); }

/* Lot 27 : la ligne du temps des places (Shared/LigneTemps/LigneTempsPlaces) : la barre des raccourcis, de la période
   et de la recherche (la tenue de Séjours et sorties). */
.occ-barre[b-agtncjoems] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-bottom: 10px; }
.occ-periode[b-agtncjoems] { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.occ-periode > span[b-agtncjoems] { color: var(--orbite-texte-secondaire); }
.occ-date[b-agtncjoems] { width: 150px; flex: none; }
.occ-recherche[b-agtncjoems] { width: 240px; flex: none; }
.occ-message[b-agtncjoems] { color: var(--orbite-texte-secondaire); }
.analyse-occupation[b-agtncjoems]  .orbite-page-titre-droite, .analyse-occupation[b-agtncjoems]  .orbite-segments { font-size: 13px; }

@media (max-width: 700px) {
    .occ-barre > .orbite-segments[b-agtncjoems] { width: 100%; }
    .occ-barre > .orbite-segments button[b-agtncjoems] { flex: 1; }
    .occ-recherche[b-agtncjoems] { width: 100%; }
    .occ-date[b-agtncjoems] { width: 130px; }
}

/* Lot E7 des sites : en vue « Tous mes sites », une ligne du temps par site, sous le nom du site. */
.occ-site-titre[b-agtncjoems] { display: flex; align-items: center; gap: 8px; margin: 18px 0 6px; font-size: 16px; font-weight: 600; }
.occ-site-titre:first-of-type[b-agtncjoems] { margin-top: 4px; }
.occ-site-point[b-agtncjoems] { flex: none; width: 12px; height: 12px; border-radius: 50%; box-shadow: 0 0 0 1px var(--orbite-bordure); }
/* /Components/Pages/Analyse/PivotAnalyse.razor.rz.scp.css */
/* Le panneau « Montrez moi : » sur une ligne, comme la table du web. */
.pivot-filtre[b-wo5lkl5g7l] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
    padding: 8px 12px;
}

.pivot-compte[b-wo5lkl5g7l] {
    margin-left: auto;
}

.pivot-zone[b-wo5lkl5g7l] {
    margin-top: 8px;
}

/* La hauteur du tableau (le reste de la fenêtre) est dans site.css : elle touche la coquille (orbite-contenu). */
/* /Components/Pages/Analyse/StatistiqueVue.razor.rz.scp.css */
/* Statistiques (phase 2, Docs/Listes-Orbite.md) : le tableau des statistiques générales reste un tableau (des
   totaux) ; les listes (programmes, champs d'information, dossiers pris en compte) sont des Listes de Cartes
   ou de lignes. Ne restent ici que les paramètres, le tableau et le chiffre clé à droite des rangées. */

.stat-bloc[b-hh0e41bknr] {
    padding-top: 16px;
}

.stat-parametres[b-hh0e41bknr] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    align-items: flex-end;
    padding: 8px 12px;
}

.stat-champ[b-hh0e41bknr] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 150px;
}

.stat-champ.etroit[b-hh0e41bknr] {
    min-width: 110px;
    width: 110px;
}

.stat-champ.bouton[b-hh0e41bknr] {
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

.stat-table[b-hh0e41bknr] {
    width: 100%;
    border-collapse: collapse;
}

.stat-table td[b-hh0e41bknr] {
    padding: 2px 6px;
    vertical-align: top;
}

.stat-table h2[b-hh0e41bknr] {
    margin: 0;
}

.stat-icone[b-hh0e41bknr] {
    width: 10%;
}

.stat-section[b-hh0e41bknr] {
    width: 20%;
}

.stat-libelle[b-hh0e41bknr] {
    width: 200px;
}

.stat-separateur td[b-hh0e41bknr] {
    height: 16px;
}

.stat-dictionnaire td[b-hh0e41bknr] {
    padding: 0 8px 0 0;
}

/* Le chiffre clé à droite d'une rangée (séjours d'un programme, d'un champ) : en gros, son unité en petit. */
.stat-page[b-hh0e41bknr]  .stat-chiffre { font-size: 15px; font-weight: 600; color: var(--orbite-texte); }
.stat-page[b-hh0e41bknr]  .orbite-ligne-meta small, .stat-page[b-hh0e41bknr]  .orbite-carte-meta small { font-size: 11px; font-weight: 400; color: var(--orbite-texte-secondaire); }
.stat-page[b-hh0e41bknr]  .stat-champs { margin-top: 4px; }

/* Les comptes des champs d'information (28 octobre 2026) : un bloc par champ, en colonnes qui s'adaptent. */
.stat-page[b-hh0e41bknr]  .stat-champs-blocs {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 10px;
    margin: 4px 0;
}

.stat-page[b-hh0e41bknr]  .stat-champ-bloc {
    border: 1px solid var(--orbite-bordure-discrete);
    border-radius: 6px;
    background: var(--orbite-fond-surface);
    padding: 8px 10px;
    min-width: 0;
}

.stat-page[b-hh0e41bknr]  .stat-champ-bloc header { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; margin-bottom: 6px; }
.stat-page[b-hh0e41bknr]  .stat-champ-bloc header small { color: var(--orbite-texte-secondaire); font-size: 11px; }

.stat-page[b-hh0e41bknr]  .stat-valeurs { width: 100%; border-collapse: collapse; font-size: 13px; }
.stat-page[b-hh0e41bknr]  .stat-valeurs th { text-align: right; font-weight: 600; font-size: 11px; color: var(--orbite-texte-secondaire); padding: 2px 4px; border-bottom: 1px solid var(--orbite-bordure-discrete); }
.stat-page[b-hh0e41bknr]  .stat-valeurs th:first-child { text-align: left; }
.stat-page[b-hh0e41bknr]  .stat-valeurs td { padding: 2px 4px; text-align: right; font-variant-numeric: tabular-nums; }
.stat-page[b-hh0e41bknr]  .stat-valeurs td:first-child { text-align: left; overflow-wrap: anywhere; }
.stat-page[b-hh0e41bknr]  .stat-valeurs .stat-sans td { color: var(--orbite-texte-secondaire); font-style: italic; }
.stat-page[b-hh0e41bknr]  .stat-valeurs .stat-calcul td { color: var(--orbite-texte-secondaire); }

/* La liste des clients pris en compte : la grille défile seule à l'horizontale. */
.stat-grille-barre[b-hh0e41bknr] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.stat-page[b-hh0e41bknr]  .stat-grille { max-width: 100%; }

/* Sur téléphone, le tableau général (trop large) défile seul à l'horizontale au lieu d'être coupé. */
.stat-defile[b-hh0e41bknr] { overflow-x: auto; max-width: 100%; }

/* Lot E5 des sites : la pastille d'un site (couleur de données : en point) dans la section « Sites » et le titre des
   tableaux par site. */
.stat-page[b-hh0e41bknr]  .stat-site-point {
    display: inline-block;
    flex: none;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--orbite-texte-attenue);
    box-shadow: 0 0 0 1px var(--orbite-bordure);
}
/* /Components/Pages/Analyse/VueEnsemble.razor.rz.scp.css */
/* Vue d'ensemble des dossiers actifs (phase 3, WP8b) : les tuiles de comptes en rangée (Shared/Tuile, basses,
   qui servent de filtre rapide), puis des sections de cartes ou de rangées (classes de
   site.css : orbite-liste, orbite-liste-elements, orbite-liste--colonnes). Ne restent ici que la rangée des
   tuiles et l'en-tête des sections. */

.vue-comptes[b-df294hw67l] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(124px, 1fr));
    gap: 8px;
    margin: 0 0 12px;
}

.vue-comptes .tuile-place[b-df294hw67l] {
    aspect-ratio: auto;
    height: 84px;
    min-height: 0;
}

/* La tuile dont le filtre est posé : un liseré clair à l'intérieur (comme le focus des tuiles). */
.vue-comptes .tuile-place.actif[b-df294hw67l]  .tuile { box-shadow: inset 0 0 0 3px var(--orbite-sur-bleu); }
.vue-comptes[b-df294hw67l]  .tuile-compte { font-size: 28px; }
.vue-comptes[b-df294hw67l]  .tuile-icone { width: 24px; height: 24px; }
.vue-comptes[b-df294hw67l]  .tuile-libelle { font-size: 13px; }
.vue-comptes[b-df294hw67l]  .tuile-info { font-size: 11px; }

.vue-sections[b-df294hw67l] { margin-top: 12px; }

.vue-section + .vue-section[b-df294hw67l] { margin-top: 20px; }

.vue-section-entete[b-df294hw67l] {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px 14px;
    margin: 0 0 8px;
}

.vue-section-titre[b-df294hw67l] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
}

.vue-section-point[b-df294hw67l] {
    flex: none;
    width: 12px;
    height: 12px;
    border-radius: 999px;
    border: 1px solid var(--orbite-bordure);
}

.vue-section-compte[b-df294hw67l] {
    display: inline-block;
    min-width: 22px;
    padding: 0 7px;
    border-radius: 999px;
    background: var(--orbite-fond-discret);
    color: var(--orbite-texte-secondaire);
    font-size: 12px;
    font-weight: 600;
    text-align: center;
    line-height: 20px;
}

.vue-section-info[b-df294hw67l] { display: inline-flex; align-items: center; gap: 4px; }

/* Les cartes : le nom en gros (c'est le seul objet de la page), le lieu en sous-titre. */
.vue-ensemble[b-df294hw67l]  .vue-carte .orbite-carte-titre { font-size: 17px; }

/* Les sections en grille de colonnes : la grille est sur les éléments de chaque section, pas sur la page. */
@media (max-width: 599px) {
    .vue-comptes[b-df294hw67l] { grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); }
    .vue-comptes .tuile-place[b-df294hw67l] { height: 72px; }
    .vue-comptes[b-df294hw67l]  .tuile-compte { font-size: 22px; }
}
/* /Components/Pages/CalendrierOffice.razor.rz.scp.css */
.calendrier-office-avis[b-yhgzb60ghv] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    max-width: 900px;
}

.calendrier-office-avis img[b-yhgzb60ghv], .calendrier-office-avis[b-yhgzb60ghv]  .orbite-ico {
    width: 32px;
    height: 32px;
}

.calendrier-office-details[b-yhgzb60ghv] {
    margin-top: 8px;
}
/* /Components/Pages/Demandes.razor.rz.scp.css */
/* Traitement des demandes (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que la
   période souhaitée (à venir en bleu, dépassée en rouge, comme la colonne État du web) et le bouton qui
   déplie l'occupation des places sous la carte. Jetons et cartes : site.css. */

.demandes-page[b-cq3r603f6l]  .demandes-futur { color: var(--orbite-lien); font-weight: 600; }
.demandes-page[b-cq3r603f6l]  .demandes-passe { color: var(--orbite-danger); font-weight: 600; }
.demandes-page[b-cq3r603f6l]  .orbite-carte-details i { margin-left: 4px; }
.demandes-page[b-cq3r603f6l]  .demandes-detail-bouton { padding: 2px 6px; font-size: 13px; }
.demandes-page[b-cq3r603f6l]  .demandes-detail { flex-basis: 100%; min-width: 0; margin-top: 4px; }

/* Lot 27 : une carte dont l'occupation est dépliée (la ligne du temps des places) prend toute la largeur de la grille. */
.demandes-page[b-cq3r603f6l]  .orbite-carte:has(.demandes-detail) { grid-column: 1 / -1; }
/* /Components/Pages/DernieresInterventions.razor.rz.scp.css */
/* Dernières interventions (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que le
   panneau du type (le paramètre de la page), le temps écoulé en gros à droite et la description en italique
   (comme la colonne « Par » du web). Jetons et cartes : site.css. */

.dernieres-choix[b-21aj5abedh] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    padding: 6px;
}

.dernieres-type[b-21aj5abedh] {
    flex: 1 1 300px;
}

.dernieres-liste[b-21aj5abedh] { padding-top: 12px; }

.dernieres-page[b-21aj5abedh]  .dernieres-depuis { font-size: 17px; font-weight: 600; color: var(--orbite-texte); }
.dernieres-page[b-21aj5abedh]  .dernieres-description { font-style: italic; }
/* /Components/Pages/Dossiers.razor.rz.scp.css */
/* Dossiers (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes de dossier (photo, nom en gros, numéro,
   âge, pastilles, ville) en grille de colonnes ; en ligne, une rangée. Cartes et barre : site.css. */

[b-wlt52spip8] .dossiers-carte .orbite-carte-titre { font-size: 17px; }
[b-wlt52spip8] .dossiers-age { font-size: 14px; font-weight: 600; color: var(--orbite-texte); }
[b-wlt52spip8] .dossiers-telephone { font-variant-numeric: tabular-nums; }

.dossiers-sexe-image[b-wlt52spip8] {
    height: 32px;
    vertical-align: middle;
}

/* L'alerte qui colore toute la bordure (François, 23 octobre 2026) est la règle commune des capsules de dossiers :
   Bordure="true" de Carte et LigneListe (site.css, orbite-carte--bordure), avec CouleursDossier. */
/* /Components/Pages/Dossier/ClientContenu.razor.rz.scp.css */
/* Fiche client (Pages/Dossier/ClientContenu, la page Client et le panneau latéral « Client ») : identification à gauche,
   photo à droite, comme le formulaire de Client.aspx (thème DevExpress par défaut, 7 octobre 2026). */

.client-identification[b-jpqjzt9y2h] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 6px;
}

.client-identification[b-jpqjzt9y2h]  .client-formulaire { flex: 1; }

.client-photo[b-jpqjzt9y2h] {
    width: 140px;
    text-align: center;
}

.client-photo > img[b-jpqjzt9y2h] {
    width: 128px;
    height: 128px;
    object-fit: contain;
    display: block;
    margin: 4px auto;
}

.client-photo-bouton[b-jpqjzt9y2h] { cursor: pointer; }

.client-photo-bouton img[b-jpqjzt9y2h] { width: 16px; height: 16px; vertical-align: middle; }

.client-numero[b-jpqjzt9y2h] {
    display: flex;
    gap: 6px;
    align-items: center;
    width: 100%;
}

.client-numero[b-jpqjzt9y2h]  > .dxbl-text-edit { flex: 1; }

.client-boutons[b-jpqjzt9y2h] {
    display: flex;
    justify-content: flex-end;
    margin-top: 6px;
}

.client-libelle[b-jpqjzt9y2h] {
    margin: 6px 0 2px 0;
}

/* Coordonnées et contacts (phase 2, Docs/Listes-Orbite.md) : des Listes de Cartes ; ne restent ici que les
   champs personnalisés sous les détails et le téléphone en chiffres alignés dans la vue en ligne. */

[b-jpqjzt9y2h] .client-champs-perso { margin-top: 4px; }
[b-jpqjzt9y2h] .client-telephone { font-variant-numeric: tabular-nums; }

/* Marques d'une coordonnée (28 octobre 2026) : une pastille libre, en pointillé, qu'un clic pose sur cette coordonnée. */
.client-marque[b-jpqjzt9y2h] {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font: inherit;
}

.client-marque[b-jpqjzt9y2h]  .orbite-pastille {
    background: transparent;
    outline: 1px dashed var(--orbite-bordure);
    outline-offset: -1px;
    opacity: .75;
}

.client-marque:hover[b-jpqjzt9y2h]  .orbite-pastille,
.client-marque:focus-visible[b-jpqjzt9y2h]  .orbite-pastille {
    opacity: 1;
    outline-style: solid;
}

/* Lot 35 : dans le panneau latéral (440 px environ) : la photo, plus petite, au-dessus du formulaire, avec ses boutons à
   côté ; le formulaire prend toute la largeur. La page Client ne change pas. */
.client-contenu--panneau .client-identification[b-jpqjzt9y2h] {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 8px;
}

.client-contenu--panneau .client-identification[b-jpqjzt9y2h]  .client-formulaire { width: 100%; }

.client-contenu--panneau .client-photo[b-jpqjzt9y2h] {
    width: auto;
    display: flex;
    align-items: center;
    gap: 8px;
    text-align: left;
}

.client-contenu--panneau .client-photo > img[b-jpqjzt9y2h] {
    width: 64px;
    height: 64px;
    margin: 0;
}

/* Mobile, lot M3 (Docs/Plan-Mobile.md) : la fiche en consultation. L'identification en lignes libellé / valeur (seulement ce
   qui est rempli), la photo à gauche ; substances et santé en blocs de texte. « Modifier » dans l'en-tête de la page
   ramène le formulaire. */
.client-lecture[b-jpqjzt9y2h] { display: flex; gap: 14px; align-items: flex-start; padding: 4px 2px; }
.client-lecture-photo[b-jpqjzt9y2h] { flex: none; width: 72px; height: 72px; border-radius: 50%; object-fit: cover; background: var(--orbite-fond-discret); }
.client-lecture-lignes[b-jpqjzt9y2h] { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.client-lecture-nom[b-jpqjzt9y2h] { font-size: 18px; font-weight: 600; line-height: 1.2; margin-bottom: 2px; }
.client-lecture-ligne[b-jpqjzt9y2h] { display: flex; flex-direction: column; }
.client-lecture-libelle[b-jpqjzt9y2h] { font-size: 12px; color: var(--orbite-texte-secondaire); }
.client-lecture-valeur[b-jpqjzt9y2h] { font-size: 15px; overflow-wrap: anywhere; }
.client-lecture-bloc + .client-lecture-bloc[b-jpqjzt9y2h] { margin-top: 8px; }
.client-lecture-texte[b-jpqjzt9y2h] { font-size: 15px; line-height: 1.4; white-space: pre-wrap; overflow-wrap: anywhere; }
/* /Components/Pages/Dossier/Demande.razor.rz.scp.css */
/* Demandes (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne reste ici que la période souhaitée,
   dont la date est en bleu si elle est à venir et en rouge si elle est passée (comme la colonne État du web). */

.demande-page[b-yfyyrlhes9]  .demande-futur { color: var(--orbite-lien); font-weight: 600; }
.demande-page[b-yfyyrlhes9]  .demande-passe { color: var(--orbite-danger); font-weight: 600; }
/* /Components/Pages/Dossier/Directive.razor.rz.scp.css */
/* Directives (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes dans l'ordre des directives ; le texte
   de la directive est le titre (il peut tenir sur plusieurs lignes) ; l'historique d'une directive se montre
   sous la carte en mode modification. Cartes et lignes : site.css. */

.directive-page[b-nxdfe5zgqb]  .directive-carte .orbite-carte-titre { white-space: pre-wrap; font-weight: 500; }
.directive-page[b-nxdfe5zgqb]  .directive-journal { margin-top: 8px; padding-top: 6px; border-top: 1px solid var(--orbite-bordure-discrete); }
.directive-page[b-nxdfe5zgqb]  .directive-journal-titre { font-size: 12px; margin-bottom: 4px; }
.directive-page[b-nxdfe5zgqb]  .directive-journal-titre .orbite-ico { vertical-align: -2px; }

/* Réponses du 28 octobre 2026 : la couleur de la directive borde la carte (et la ligne) ; le texte la garde,
   éclaircie en sombre pour rester lisible sur le fond foncé. */
.directive-teinte[style][b-nxdfe5zgqb] { color: var(--directive-teinte, inherit); }
html.orbite-sombre .directive-teinte[style][b-nxdfe5zgqb] { color: color-mix(in srgb, var(--directive-teinte, currentColor) 60%, white); }
/* /Components/Pages/Dossier/Documents.razor.rz.scp.css */
/* Gestion documentaire unifiée (Docs/Plan-Documents.md ; phase 2, Docs/Listes-Orbite.md) : la Liste de Cartes
   sur toute la largeur, le panneau « Propriétés » à droite quand un document est choisi. Cartes, lignes, barre
   et pastilles : site.css ; ne restent ici que la liste déroulante « Étiquette » (phase 3 : l'ancien arbre),
   le panneau et la disposition. */
/* La disposition suit la largeur de la zone de contenu (requête de conteneur), pas celle de l'écran : avec la
   navigation et le rail du dossier, un écran de 1 280 px ne laisse que 770 px à la page. */
.documents-cadre[b-i1icnm6sxj] {
    container-type: inline-size;
    container-name: documents;
}

.documents-page[b-i1icnm6sxj] {
    display: flex;
    gap: var(--orbite-marge);
    align-items: flex-start;
    clear: both;
}

/* La liste déroulante « Étiquette » (dans la barre de filtres, avant la recherche) : une entrée par étiquette,
   indentée selon sa profondeur, son point de couleur et son compte ; « Toutes » et « Sans étiquette ». */
.documents-choix[b-i1icnm6sxj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.documents-choix .compte[b-i1icnm6sxj] {
    font-size: 0.85em;
    color: var(--orbite-texte-attenue);
}

.pastille[b-i1icnm6sxj] {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.pastille.vide[b-i1icnm6sxj] {
    border: 1px solid var(--orbite-texte-attenue);
}

.documents-liste[b-i1icnm6sxj] {
    flex: 1;
    min-width: 0;
}

.documents-tronque[b-i1icnm6sxj] {
    margin-top: 8px;
    color: var(--orbite-texte-attenue);
}

/* Les actions d'une carte : l'enveloppe ne compte pas dans la mise en page des commandes. */
[b-i1icnm6sxj] .documents-actions {
    display: contents;
}

/* Panneau « Propriétés » du document choisi */
.documents-proprietes[b-i1icnm6sxj] {
    flex: 0 0 300px;
    max-width: 340px;
    border-left: 1px solid var(--orbite-bordure-discrete);
    padding-left: 12px;
    position: sticky;
    top: 8px;
}

.documents-proprietes-titre[b-i1icnm6sxj] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: bold;
    color: var(--orbite-accent-texte);
    margin-bottom: 8px;
}

.documents-fermer[b-i1icnm6sxj] {
    margin-left: auto;
    border: none;
    background: transparent;
    color: var(--orbite-texte-attenue);
    cursor: pointer;
    display: inline-flex;
}

.documents-fiche[b-i1icnm6sxj] {
    margin: 0;
}

.documents-fiche dt[b-i1icnm6sxj] {
    font-size: 0.85em;
    color: var(--orbite-texte-attenue);
    font-weight: normal;
    margin-top: 6px;
}

.documents-fiche dd[b-i1icnm6sxj] {
    margin: 0;
    overflow-wrap: anywhere;
}

.documents-signatures[b-i1icnm6sxj] {
    margin-top: 10px;
    overflow-x: auto;
}

.documents-proprietes-actions[b-i1icnm6sxj] {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
}

.documents-actions-texte[b-i1icnm6sxj]  .documents-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
}

.documents-actions-texte[b-i1icnm6sxj]  .orbite-bouton-image {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

/* Moins de 700 px pour la page et un document choisi : le panneau Propriétés passe au-dessus de la liste, sur
   toute la largeur (plutôt qu'à côté d'une liste trop étroite). */
@container documents (max-width: 699px) {
    .documents-page--proprietes[b-i1icnm6sxj] {
        flex-direction: column;
    }

    .documents-page--proprietes .documents-proprietes[b-i1icnm6sxj] {
        order: 0;
        position: static;
        flex: 1 1 auto;
        width: 100%;
        max-width: none;
        border-left: none;
        border-bottom: 1px solid var(--orbite-bordure-discrete);
        padding: 0 0 8px 0;
        box-sizing: border-box;
    }

    .documents-page--proprietes .documents-liste[b-i1icnm6sxj] {
        order: 1;
        width: 100%;
    }
}

/* Les objectifs d'un plan dans sa carte (2026-10-23 : les voir sans ouvrir la page) : liste numérotée compacte,
   l'échéancier en atténué à la suite. */
.documents-objectifs[b-i1icnm6sxj] {
    margin: 6px 0 0;
    padding-left: 22px;
    font-size: 13px;
}

.documents-objectifs li[b-i1icnm6sxj] {
    margin: 1px 0;
    overflow-wrap: anywhere;
}

.documents-objectif-echeance[b-i1icnm6sxj] {
    margin-left: 8px;
    white-space: nowrap;
    color: var(--orbite-texte-attenue);
    font-size: 12px;
}

.documents-objectifs-vide[b-i1icnm6sxj],
.documents-objectifs-suite[b-i1icnm6sxj] {
    margin-top: 4px;
    font-size: 13px;
}.documents-modeles-etiquette[b-i1icnm6sxj] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; font-size: 13px; }
/* /Components/Pages/Dossier/Entente.razor.rz.scp.css */
/* Ententes (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que les particularités :
   la période en gros dans le titre, le solde actuel en gros à droite, les versements dépliés. */

.entente-page[b-mptgk5cb70]  .entente-carte .orbite-carte-titre { font-size: 17px; }
.entente-page[b-mptgk5cb70]  .entente-solde { font-size: 18px; font-weight: 700; color: var(--orbite-texte); white-space: nowrap; }
.entente-page[b-mptgk5cb70]  .orbite-ligne-meta .entente-solde { font-size: 15px; }
.entente-page[b-mptgk5cb70]  .entente-solde-etat { font-size: 12px; }
.entente-page[b-mptgk5cb70]  .entente-detail-bouton { padding: 2px 6px; font-size: 13px; }
.entente-page[b-mptgk5cb70]  .entente-detail { flex-basis: 100%; margin-top: 4px; }
/* /Components/Pages/Dossier/Etape.razor.rz.scp.css */
/* Cheminements (refonte du 27 octobre 2026) : le bandeau des étapes en cours, la frise (css/info-temps.css,
   classes it-), puis une seule Liste : chaque cheminement (Carte ou LigneListe) avec ses étapes dessous, en
   retrait derrière un trait (la parenté se voit sans répéter le nom du cheminement). */

.etape-en-cours[b-klfysjttst] { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 4px 0 8px; }

/* Les étapes d'un cheminement : en retrait, un trait vertical les relie à leur parent. */
.etape-sous-liste[b-klfysjttst] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 4px 0 2px 10px;
    padding-left: 12px;
    border-left: 2px solid var(--orbite-bordure-discrete);
}
/* En ligne : le corps de la rangée du cheminement porte les étapes (moins de marge que pour un texte). */
[b-klfysjttst] .etape-cheminement > .orbite-ligne-corps { padding: 2px 8px 8px 8px; }
[b-klfysjttst] .etape-sous-liste .orbite-ligne-rangee { min-height: 34px; padding-top: 2px; padding-bottom: 2px; }
[b-klfysjttst] .etape-sous-liste .orbite-ligne-titre { font-weight: 500; }

.etape-sous-liste-vide[b-klfysjttst] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 4px 0; color: var(--orbite-texte-secondaire); font-size: 13px; }
.etape-lien[b-klfysjttst] {
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--orbite-lien);
    font: inherit;
    cursor: pointer;
    text-decoration: underline;
}
.etape-lien:focus-visible[b-klfysjttst] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }

/* L'étape choisie dans la frise. */
.etape-sous-element[b-klfysjttst] { scroll-margin: 80px 0; border-radius: var(--orbite-rayon); }
[b-klfysjttst] .etape-evidence > .orbite-ligne { outline: 2px solid var(--orbite-accent); outline-offset: 1px; }
/* /Components/Pages/Dossier/Evaluation.razor.rz.scp.css */
/* Évaluations (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que les temps à
   droite de la carte et le bloc des signatures électroniques (déplié à la demande). La signée porte sa
   pastille ; la rayée est barrée (Rayee de la carte). Jetons et cartes : site.css. */

.evaluation-page[b-esyyejckj9]  .evaluation-temps { display: inline-flex; gap: 10px; font-size: 12px; }
.evaluation-page[b-esyyejckj9]  .evaluation-temps .orbite-ico { vertical-align: -2px; }
.evaluation-page[b-esyyejckj9]  .evaluation-signatures { margin-top: 8px; overflow-x: auto; }
.evaluation-page[b-esyyejckj9]  .evaluation-signatures .orbite-bouton-image { display: inline-flex; align-items: center; gap: 4px; }
.evaluation-types-etiquette[b-esyyejckj9] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; font-size: 13px; }
/* /Components/Pages/Dossier/EvaluationInterne.razor.rz.scp.css */
/* Évaluation interne (phase 2, Docs/Listes-Orbite.md) : une carte par question sous des titres de dimension
   et de catégorie ; la question sans réponse porte un liseré d'attente et sa pastille. Cartes et barre :
   site.css. */

.interne-page[b-ffkb8uhzqw] { max-width: 1100px; }
.interne-dimension[b-ffkb8uhzqw] { font-size: 17px; font-weight: 600; margin: 16px 0 4px 0; color: var(--orbite-accent-texte); }
.interne-dimension:first-of-type[b-ffkb8uhzqw] { margin-top: 4px; }
.interne-categorie[b-ffkb8uhzqw] { font-size: 14px; font-weight: 600; margin: 10px 0 6px 0; color: var(--orbite-texte-secondaire); }
.interne-page[b-ffkb8uhzqw]  .interne-aide { margin-bottom: 6px; }
.interne-page[b-ffkb8uhzqw]  .orbite-liste-elements { margin-bottom: 4px; }
/* /Components/Pages/Dossier/Fichier.razor.rz.scp.css */
/* Fichiers (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que la fenêtre de dépôt
   (Fichier.aspx, popup d'ajout) et le poids en chiffres alignés dans la vue en ligne. Le signé porte sa
   pastille ; le rayé est barré (Rayee de la carte). Jetons et cartes : site.css. */

.fichier-depot[b-216e9fi5pa] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.fichier-page[b-216e9fi5pa]  .fichier-poids { font-variant-numeric: tabular-nums; }
/* /Components/Pages/Dossier/Fil.razor.rz.scp.css */
/* Le fil du dossier (Fil.razor, sb6) : la barre de la v2 (Date, Nouveau, Hier, Semaine, Mois) et les cartes du fil. */

.fil-periode[b-45chmq7e6e] { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.fil-periode[b-45chmq7e6e]  .dxbl-date-edit { min-width: 170px; }

[b-45chmq7e6e] .fil-carte .orbite-carte-titre .orbite-ico { vertical-align: -3px; margin-left: 2px; }
[b-45chmq7e6e] .fil-par { display: flex; justify-content: flex-end; align-items: center; gap: 6px; margin-top: 6px; font-size: 13px; }
[b-45chmq7e6e] .fil-ligne-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 6px; font-weight: 500; }
/* /Components/Pages/Dossier/Formulaire.razor.rz.scp.css */
/* Formulaires (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que les temps à
   droite de la carte et le bloc des signatures électroniques (déplié à la demande). Le formulaire finalisé
   porte sa pastille ; le rayé est barré (Rayee de la carte). Jetons et cartes : site.css. */

.formulaire-page[b-iswra3oahe]  .formulaire-temps { display: inline-flex; gap: 10px; font-size: 12px; }
.formulaire-page[b-iswra3oahe]  .formulaire-temps .orbite-ico { vertical-align: -2px; }
.formulaire-page[b-iswra3oahe]  .formulaire-signatures { margin-top: 8px; overflow-x: auto; }
.formulaire-page[b-iswra3oahe]  .formulaire-signatures .orbite-bouton-image { display: inline-flex; align-items: center; gap: 4px; }
.formulaire-types-etiquette[b-iswra3oahe] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; font-size: 13px; }
/* /Components/Pages/Dossier/Historique.razor.rz.scp.css */
/* Historique du dossier (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que le
   diff champ par champ dans le corps et les pages de l'API sous la liste. */

.histo-dossier[b-rawym9w7gy]  .histo-dossier-version { opacity: .8; }
.histo-dossier[b-rawym9w7gy]  .histo-dossier-diff { display: grid; grid-template-columns: minmax(120px, max-content) 1fr; gap: 4px 12px; margin: 6px 0 0; font-size: 13px; }
.histo-dossier[b-rawym9w7gy]  .histo-dossier-diff dt { color: var(--orbite-texte-secondaire); overflow-wrap: anywhere; }
.histo-dossier[b-rawym9w7gy]  .histo-dossier-diff dd { margin: 0; min-width: 0; }
.histo-dossier[b-rawym9w7gy]  .histo-dossier-valeur { white-space: pre-wrap; overflow-wrap: anywhere; }
.histo-dossier[b-rawym9w7gy]  .histo-dossier-avant { text-decoration: line-through; color: var(--orbite-texte-attenue); }

.histo-dossier-pages[b-rawym9w7gy] { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 12px 0 8px; }

@media (max-width: 599px) {
    .histo-dossier[b-rawym9w7gy]  .histo-dossier-diff { grid-template-columns: 1fr; gap: 2px 0; }
    .histo-dossier[b-rawym9w7gy]  .histo-dossier-diff dd { margin-bottom: 4px; }
}
/* /Components/Pages/Dossier/Intervention.razor.rz.scp.css */
/* Interventions (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que les temps et
   la valeur à droite de la carte. L'intervention rapide porte son icône et sa pastille ; la rayée est barrée
   (Rayee de la carte). Jetons et cartes : site.css. */

.intervention-page[b-fpalnaz9g7]  .intervention-details { display: inline-flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; font-size: 12px; }
.intervention-page[b-fpalnaz9g7]  .intervention-details .orbite-ico { vertical-align: -2px; }
/* /Components/Pages/Dossier/Medication.razor.rz.scp.css */
/* Médications (phase 2, Docs/Listes-Orbite.md) : deux Listes de Cartes ; ne restent ici que les
   particularités : la case à cocher dans la vignette, la médication non disponible grisée (Medication.aspx),
   les doses en gros à droite, les initiales tracées. Jetons et cartes : site.css. */

.medication-page[b-nzoa3no0w6]  .medication-case { display: inline-flex; align-items: center; margin-top: 2px; }
.medication-page[b-nzoa3no0w6]  .medication-indisponible .orbite-carte-titres,
.medication-page[b-nzoa3no0w6]  .medication-indisponible .orbite-carte-corps,
.medication-page[b-nzoa3no0w6]  .medication-indisponible .orbite-ligne-titre,
.medication-page[b-nzoa3no0w6]  .medication-indisponible .orbite-ligne-sous-titre { opacity: .5; }
.medication-page[b-nzoa3no0w6]  .medication-doses { font-size: 17px; font-weight: 600; color: var(--orbite-texte); }
.medication-page[b-nzoa3no0w6]  .medication-doses small { font-size: 12px; font-weight: 400; color: var(--orbite-texte-secondaire); }
.medication-page[b-nzoa3no0w6]  .medication-note { margin-top: 4px; }
.medication-page[b-nzoa3no0w6]  .medication-detail-bouton { padding: 2px 6px; font-size: 13px; }
.medication-page[b-nzoa3no0w6]  .medication-detail { flex-basis: 100%; margin-top: 4px; }

/* Les initiales tracées (utilisateur, client, témoin) : l'image ou l'icône pour tracer, le nom dessous. */
.medication-page[b-nzoa3no0w6]  .medication-initiales { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 8px; }
.medication-page[b-nzoa3no0w6]  .medication-initiale { display: flex; flex-direction: column; align-items: center; gap: 2px; min-width: 96px; font-size: 12px; text-align: center; }
.medication-page[b-nzoa3no0w6]  .medication-initiale--signable { cursor: pointer; }
.medication-page[b-nzoa3no0w6]  .medication-initiale--signable:hover .orbite-ico { color: var(--orbite-accent-texte); opacity: 1; }
.medication-page[b-nzoa3no0w6]  .medication-initiale-trace { height: 48px; display: flex; align-items: center; justify-content: center; }
/* Fond blanc : le tracé noir reste lisible en thème sombre (lot S4). */
.medication-page[b-nzoa3no0w6]  .medication-initiale-trace img { height: 48px; max-width: 96px; object-fit: contain; background: #fff; border-radius: 4px; }
.medication-page[b-nzoa3no0w6]  .medication-initiale-nom .orbite-secondaire { display: block; font-size: 11px; }
/* /Components/Pages/Dossier/Note.razor.rz.scp.css */
/* Notes évolutives (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que les
   particularités des notes. La note importante : fond « nouvelle-hot » (Couleur de la carte) et texte
   semi-gras ; la note rayée : barrée (Rayee de la carte). Jetons et cartes : site.css. */

.note-page[b-y49r4tue7a]  .note-texte-importante { font-weight: 600; }
.note-page[b-y49r4tue7a]  .note-temps { display: inline-flex; gap: 10px; font-size: 12px; }
.note-page[b-y49r4tue7a]  .note-temps .orbite-ico { vertical-align: -2px; }
.note-page[b-y49r4tue7a]  .note-champs-perso { margin-top: 6px; }
/* /Components/Pages/Dossier/Plan.razor.rz.scp.css */
/* Plans d'intervention (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que les
   particularités : les temps à droite, les objectifs dépliés dans le pied. */

.plan-page[b-pxmlpvv9j0]  .plan-temps { display: inline-flex; gap: 10px; font-size: 12px; }
.plan-page[b-pxmlpvv9j0]  .plan-temps .orbite-ico { vertical-align: -2px; }
.plan-page[b-pxmlpvv9j0]  .plan-detail-bouton { padding: 2px 6px; font-size: 13px; }
.plan-page[b-pxmlpvv9j0]  .plan-detail { flex-basis: 100%; margin-top: 4px; }
/* /Components/Pages/Dossier/PlanFiche.razor.rz.scp.css */
/* La page d'un plan d'intervention (2026-10-23) : le lien de retour, les champs du plan en liste de
   définitions (comme le panneau « Propriétés » de Documents), puis les objectifs (PlanObjectifs). */

.plan-fiche[b-hw5ld3c9cj] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    clear: both;
}

.plan-fiche-retour[b-hw5ld3c9cj] {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    text-decoration: none;
}

.plan-fiche-champs[b-hw5ld3c9cj] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 4px 16px;
    margin: 0;
}

.plan-fiche-champs dt[b-hw5ld3c9cj] {
    color: var(--orbite-texte-attenue);
    font-weight: normal;
}

.plan-fiche-champs dd[b-hw5ld3c9cj] {
    margin: 0;
    overflow-wrap: anywhere;
}

.plan-fiche-titre[b-hw5ld3c9cj] {
    font-size: 1rem;
    font-weight: 600;
    margin: 12px 0 6px;
    color: var(--orbite-accent-texte);
}

@media (max-width: 599px) {
    .plan-fiche-champs[b-hw5ld3c9cj] { grid-template-columns: 1fr; gap: 0; }
    .plan-fiche-champs dd[b-hw5ld3c9cj] { margin-bottom: 6px; }
}
/* /Components/Pages/Dossier/PlanObjectifs.razor.rz.scp.css */
/* Objectifs d'un plan (phase 2, Docs/Listes-Orbite.md) : des Cartes dans la carte du plan ; les champs
   moyen, échéancier, indicateur en liste de définitions. */

.plan-objectifs-barre[b-avok99htds] { margin-bottom: 8px; }
.plan-objectifs[b-avok99htds]  .plan-objectif-champs { display: grid; grid-template-columns: max-content 1fr; gap: 2px 12px; margin: 6px 0 0; font-size: 13px; }
.plan-objectifs[b-avok99htds]  .plan-objectif-champs dd { margin: 0; }
@media (max-width: 599px) {
    .plan-objectifs[b-avok99htds]  .plan-objectif-champs { grid-template-columns: 1fr; }
}
/* /Components/Pages/Dossier/PlanSoin.razor.rz.scp.css */
/* Plans de soin, vue technique (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes de cheminements ;
   les plans de soin appliqués se déplient dans le pied (PlanSoinPlans). */

.plansoin-page[b-au4svisf3u]  .plansoin-detail-bouton { padding: 2px 6px; font-size: 13px; }
.plansoin-page[b-au4svisf3u]  .plansoin-detail { flex-basis: 100%; margin-top: 4px; }
/* /Components/Pages/Dossier/PlanSoinPlans.razor.rz.scp.css */
/* Plans de soin appliqués (phase 2, Docs/Listes-Orbite.md) : une Carte par plan, ses phases en lignes
   dépliables, leurs actions en lignes. Les anciennes pilules de PlanSoin.aspx sont des Pastilles. */

.plansoin-plans-barre[b-bgps2653jx] { margin-bottom: 8px; }
.plansoin-plans[b-bgps2653jx]  .plansoin-phases { display: flex; flex-direction: column; gap: 4px; margin-top: 8px; }
.plansoin-plans[b-bgps2653jx]  .plansoin-actions { display: flex; flex-direction: column; gap: 4px; }
.plansoin-plans[b-bgps2653jx]  .plansoin-action .orbite-ligne-titre { max-width: 60%; white-space: normal; }
.plansoin-plans[b-bgps2653jx]  .plansoin-action .orbite-pastille { margin-left: 4px; }
/* /Components/Pages/Dossier/Portail.razor.rz.scp.css */
/* Section « Portail » du dossier (lot B1) : les cartes des liens et des envois viennent de site.css (Carte, Pastille,
   bandeaux) ; ne restent ici que l'erreur du relais dans une carte, le commentaire de la personne, l'aide des fenêtres. */

.portail-vide[b-tnv9cmayai] {
    padding: 4px 0;
}

[b-tnv9cmayai] .portail-erreur {
    margin-top: 8px;
}

[b-tnv9cmayai] .portail-erreur-texte {
    color: var(--orbite-danger);
    margin-top: 4px;
}

[b-tnv9cmayai] .portail-details {
    margin-top: 6px;
}

/* Le commentaire laissé par la personne (changement demandé) : en retrait, en italique. */
[b-tnv9cmayai] .portail-commentaire {
    margin: 6px 0 0 0;
    padding-left: 10px;
    border-left: 3px solid var(--orbite-attente);
    font-style: italic;
    white-space: pre-wrap;
}

.portail-aide[b-tnv9cmayai] {
    line-height: 1.4;
}

.portail-non-invitables[b-tnv9cmayai] {
    margin: 6px 0 0 0;
    padding-left: 18px;
}

.portail-cases[b-tnv9cmayai] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-top: 6px;
}
/* /Components/Pages/Dossier/Rapport.razor.rz.scp.css */
.rapport-pdf[b-nc1dhc7eyd] {
    position: fixed;
    top: 8px;
    right: 8px;
    bottom: 8px;
    left: 8px;
    width: calc(100% - 16px);
    height: calc(100% - 16px);
    border: none;
}
/* /Components/Pages/Dossier/Securite.razor.rz.scp.css */
/* Page Sécurité du dossier (28 octobre 2026) : les sources en lignes, les deux colonnes « Qui voit ce dossier ». */

.securite-source[b-2c1x81mhaq] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 4px 0;
}

.securite-source[b-2c1x81mhaq]  .orbite-ico {
    margin-top: 2px;
    flex: none;
}

.securite-source.attenue[b-2c1x81mhaq] {
    color: var(--orbite-texte-attenue);
}

.securite-libelle[b-2c1x81mhaq] {
    margin: 8px 0 4px 0;
    font-size: 13px;
    color: var(--orbite-texte-secondaire);
}

.securite-groupe[b-2c1x81mhaq] {
    width: 360px;
    max-width: 100%;
}

.securite-note[b-2c1x81mhaq] {
    margin-bottom: 12px;
}

.securite-entete-droite[b-2c1x81mhaq] {
    margin-left: auto;
}

.securite-colonnes[b-2c1x81mhaq] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.securite-colonne-titre[b-2c1x81mhaq] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--orbite-bordure);
}

@media (max-width: 900px) {
    .securite-colonnes[b-2c1x81mhaq] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Dossier/SecuriteUtilisateur.razor.rz.scp.css */
.securite-utilisateur[b-lrdgs970it] {
    padding: 8px 0;
    border-bottom: 1px solid var(--orbite-bordure);
}

.securite-utilisateur:last-child[b-lrdgs970it] {
    border-bottom: none;
}

.securite-utilisateur-nom[b-lrdgs970it] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    font-weight: 600;
}

.securite-utilisateur-raison[b-lrdgs970it] {
    font-size: 13px;
    margin-top: 2px;
}
/* /Components/Pages/Dossier/Sejour.razor.rz.scp.css */
/* Séjours (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que les particularités
   du séjour : les dates en gros dans le titre, les événements dépliés dans le pied. Jetons et cartes : site.css. */

.sejour-page[b-yzrdw4wwja]  .sejour-carte .orbite-carte-titre { font-size: 17px; }
.sejour-page[b-yzrdw4wwja]  .sejour-evenements-bouton { padding: 2px 6px; font-size: 13px; }
.sejour-page[b-yzrdw4wwja]  .sejour-evenements { flex-basis: 100%; margin-top: 4px; }
/* /Components/Pages/Dossier/SejourEvenements.razor.rz.scp.css */
.sejour-agenda[b-cv7fc1uns3] {
    width: 100%;
    border-collapse: collapse;
}

.sejour-agenda td[b-cv7fc1uns3] {
    padding: 3px 6px;
    vertical-align: top;
}

/* Ligne d'en-tête d'un jour : en gras pour séparer les jours. */
.sejour-agenda-jour td[b-cv7fc1uns3] {
    font-weight: 600;
    padding-top: 8px;
}

/* Pastille de l'étiquette (couleur venue des données). */
.sejour-agenda-etiquette[b-cv7fc1uns3] {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-top: 4px;
}
/* /Components/Pages/Dossier/Sommaire.razor.rz.scp.css */
/* Le sommaire en tableau de bord (26 octobre 2026) : la ligne du temps, puis une grille de cartes (Panneau) de
   3 colonnes, 2, puis 1, selon la largeur de la page (requête de conteneur : le rail et la navigation comptent).
   Jetons d'Orbite seulement ; les couleurs de données (programme, médicament, directive) passent par des variables. */

.sommaire-page[b-nxrt6epnp2] {
    container-type: inline-size;
    container-name: sommaire;
}

.sommaire-page[b-nxrt6epnp2]  .sommaire-frise { margin-bottom: var(--orbite-marge); }
.sommaire-page[b-nxrt6epnp2]  .sommaire-frise .orbite-panneau-corps { padding: 10px 14px 12px; }

/* Des colonnes de journal plutôt qu'une grille à rangées : une carte haute (les notes) ne laisse pas de trou sous
   ses voisines. Les cartes se suivent de haut en bas, colonne par colonne ; une carte « large » (le fil)
   prend toute la largeur. Les alertes restent une carte normale : leur couleur suffit (François, 27 octobre 2026). */
.sommaire-grille[b-nxrt6epnp2] {
    column-count: 1;
    column-gap: var(--orbite-marge);
}

@container sommaire (min-width: 680px) {
    .sommaire-grille[b-nxrt6epnp2] { column-count: 2; }
}

@container sommaire (min-width: 1080px) {
    .sommaire-grille[b-nxrt6epnp2] { column-count: 3; }
}

/* Les cartes : un Panneau, plus serré qu'une page. */
.sommaire-grille[b-nxrt6epnp2]  .sommaire-carte {
    display: inline-block;
    width: 100%;
    margin: 0 0 var(--orbite-marge);
    break-inside: avoid;
    vertical-align: top;
}

.sommaire-grille[b-nxrt6epnp2]  .sommaire-carte--large { column-span: all; display: block; }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-carte .orbite-panneau-entete { min-height: 38px; padding: 4px 12px 4px 14px; font-size: 14px; }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-carte .orbite-panneau-corps { padding: 10px 14px 12px; }

.sommaire-compte[b-nxrt6epnp2] {
    font-size: 12px;
    font-weight: 600;
    color: var(--orbite-texte-secondaire);
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: 999px;
    padding: 0 8px;
}

.sommaire-ouvrir[b-nxrt6epnp2] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-size: 13px;
    font-weight: 400;
    text-decoration: none;
    white-space: nowrap;
}

.sommaire-ouvrir:hover[b-nxrt6epnp2] { text-decoration: underline; }

/* Tons : alerte critique (rouge), alerte ou retard (jaune d'attente), mon dossier (cyan), programme en bandes. */
.sommaire-grille[b-nxrt6epnp2]  .sommaire-ton--critique { border-color: var(--orbite-danger); box-shadow: 0 0 0 1px var(--orbite-danger); }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-ton--critique .orbite-panneau-entete { background: var(--orbite-alerte-critique); }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-ton--critique .orbite-panneau-entete > .orbite-ico { color: var(--orbite-danger); }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-ton--alerte { border-color: var(--orbite-attente); box-shadow: 0 0 0 1px var(--orbite-attente); }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-ton--alerte .orbite-panneau-entete { background: var(--orbite-alerte-normale); }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-ton--alerte .orbite-panneau-entete > .orbite-ico { color: var(--orbite-attente); }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-ton--mon-dossier .orbite-panneau-corps { background: var(--orbite-nouvelle-mon-dossier); }
.sommaire-grille[b-nxrt6epnp2]  .sommaire-carte--situation[style*="--sommaire-bande"] {
    border-left: 4px solid var(--sommaire-bande);
    border-right: 4px solid var(--sommaire-bande);
}

/* États vides : discrets, jamais « cassés ». */
.sommaire-vide[b-nxrt6epnp2] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--orbite-texte-secondaire);
    font-size: 13px;
    padding: 2px 0;
}

.sommaire-vide[b-nxrt6epnp2]  .orbite-ico { opacity: .7; }

/* Alertes : les bandeaux du dossier (site.css .dossier-alerte), en liste. */
.sommaire-alertes[b-nxrt6epnp2] { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 8px; }
.sommaire-alertes .sommaire-alerte[b-nxrt6epnp2] { margin: 0; align-items: flex-start; }
.sommaire-alerte-texte[b-nxrt6epnp2] { flex: 1; min-width: 0; }
.sommaire-alerte-note[b-nxrt6epnp2] { font-weight: 400; color: var(--orbite-texte); white-space: pre-wrap; overflow-wrap: anywhere; }
.sommaire-alerte-critique[b-nxrt6epnp2] { font-weight: 600; color: var(--orbite-danger); }
.sommaire-alerte-date[b-nxrt6epnp2] { flex: none; font-size: 12px; font-weight: 400; color: var(--orbite-texte); opacity: .8; white-space: nowrap; }

/* Situation. */
.sommaire-situation[b-nxrt6epnp2] { display: flex; flex-direction: column; gap: 10px; }
.sommaire-ligne[b-nxrt6epnp2] { display: flex; align-items: flex-start; gap: 10px; }
.sommaire-ligne[b-nxrt6epnp2] >  .orbite-ico { flex: none; margin-top: 2px; color: var(--orbite-accent-texte); }
.sommaire-gros[b-nxrt6epnp2] { font-size: 15px; font-weight: 600; }
.sommaire-programme-point[b-nxrt6epnp2] {
    flex: none;
    width: 12px;
    height: 12px;
    margin: 4px 2px 0;
    border-radius: 50%;
    background: var(--sommaire-programme, var(--orbite-accent));
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15);
}

/* Listes compactes (notes, documents, rendez-vous, directives, médication, fil). */
.sommaire-liste[b-nxrt6epnp2], .sommaire-fil[b-nxrt6epnp2] { display: flex; flex-direction: column; }
.sommaire-fil[b-nxrt6epnp2] { max-height: 460px; overflow-y: auto; }

.sommaire-element[b-nxrt6epnp2] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 7px 0;
    border-top: 1px solid var(--orbite-bordure-discrete);
    color: inherit;
    text-decoration: none;
}

.sommaire-element:first-child[b-nxrt6epnp2] { border-top: 0; padding-top: 0; }
a.sommaire-element:hover[b-nxrt6epnp2] { color: inherit; background: var(--orbite-survol); border-radius: var(--orbite-rayon); }
.sommaire-element[b-nxrt6epnp2] >  .orbite-ico { flex: none; margin-top: 2px; color: var(--orbite-accent-texte); }
.sommaire-element-texte[b-nxrt6epnp2] { flex: 1; min-width: 0; }
.sommaire-element-entete[b-nxrt6epnp2] { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.sommaire-element-titre[b-nxrt6epnp2] { font-weight: 600; overflow-wrap: anywhere; }
.sommaire-element-entete[b-nxrt6epnp2]  .orbite-carte-date { font-size: 12px; white-space: nowrap; }
.sommaire-element .orbite-secondaire[b-nxrt6epnp2] { font-size: 13px; }

.sommaire-point[b-nxrt6epnp2] {
    flex: none;
    width: 10px;
    height: 10px;
    margin-top: 5px;
    border-radius: 50%;
    background: var(--sommaire-programme, var(--orbite-texte-attenue));
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15);
}

/* Une note importante : le fond d'importance des nouvelles, en pâle. */
.sommaire-note--importante[b-nxrt6epnp2] { background: color-mix(in srgb, var(--orbite-nouvelle-hot) 45%, transparent); border-radius: var(--orbite-rayon); padding-left: 6px; padding-right: 6px; }
.sommaire-raye .sommaire-element-titre[b-nxrt6epnp2] { text-decoration: line-through; color: var(--orbite-texte-attenue); }

/* Un extrait : trois lignes (la note générale : huit). */
.sommaire-extrait[b-nxrt6epnp2] {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
    margin-top: 2px;
    font-size: 13px;
    overflow-wrap: anywhere;
}

.sommaire-extrait--court[b-nxrt6epnp2] { -webkit-line-clamp: 2; line-clamp: 2; }
.sommaire-extrait--long[b-nxrt6epnp2] { -webkit-line-clamp: 8; line-clamp: 8; font-size: 14px; }

.sommaire-directive[b-nxrt6epnp2] { border-left: 3px solid var(--sommaire-programme, var(--orbite-bordure)); padding-left: 8px; }
.sommaire-directive:first-child[b-nxrt6epnp2] { padding-top: 4px; }
.sommaire-directive-texte[b-nxrt6epnp2] { white-space: pre-wrap; overflow-wrap: anywhere; }

/* Groupes d'information : libellé : valeur. */
.sommaire-info[b-nxrt6epnp2] {
    display: grid;
    grid-template-columns: minmax(90px, max-content) minmax(0, 1fr);
    gap: 4px 12px;
    margin: 0;
    font-size: 13px;
}

.sommaire-info dt[b-nxrt6epnp2] { color: var(--orbite-texte-secondaire); }
.sommaire-info dd[b-nxrt6epnp2] { margin: 0; overflow-wrap: anywhere; white-space: pre-wrap; }

/* Le dossier en chiffres. */
.sommaire-chiffres[b-nxrt6epnp2] { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }

.sommaire-chiffre[b-nxrt6epnp2] {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 8px;
    align-items: baseline;
    padding: 8px 10px;
    border: 1px solid var(--orbite-bordure-discrete);
    border-radius: var(--orbite-rayon);
    background: var(--orbite-fond-discret);
}

.sommaire-chiffre[b-nxrt6epnp2] >  .orbite-ico { grid-row: span 2; align-self: center; color: var(--orbite-accent-texte); }
.sommaire-chiffre-valeur[b-nxrt6epnp2] { font-size: 18px; font-weight: 600; }
.sommaire-chiffre-libelle[b-nxrt6epnp2] { grid-column: 2; font-size: 12px; color: var(--orbite-texte-secondaire); }
.sommaire-chiffre-detail[b-nxrt6epnp2] { grid-column: 1 / -1; font-size: 12px; color: var(--orbite-texte-secondaire); }

.sommaire-plus[b-nxrt6epnp2] { display: flex; justify-content: center; margin-top: 4px; }

@container sommaire (max-width: 480px) {
    .sommaire-info[b-nxrt6epnp2] { grid-template-columns: minmax(0, 1fr); gap: 0 0; }
    .sommaire-info dd[b-nxrt6epnp2] { margin-bottom: 6px; }
}

/* sb3 (27 octobre 2026) : le choix des sections, sous le bouton « Sections » ; des cases en rangées qui enveloppent. */
.sommaire-choix[b-nxrt6epnp2] {
    margin-bottom: 16px;
    padding: 10px 14px;
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon-carte);
    background: var(--orbite-fond-surface);
}
.sommaire-choix-cases[b-nxrt6epnp2] { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.sommaire-choix-pied[b-nxrt6epnp2] { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin-top: 8px; }
/* /Components/Pages/EnvoisPortail.razor.rz.scp.css */
/* Envois au portail (lot B1) : la rangée des tuiles de comptes (comme la Vue d'ensemble : basses, filtre rapide), puis
   la Liste de site.css. Ne restent ici que les tuiles, le bandeau du relais, l'erreur et le commentaire dans une carte. */

.envois-comptes[b-vuely1d9mk] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 8px;
    margin: 0 0 12px;
}

.envois-comptes .tuile-place[b-vuely1d9mk] {
    aspect-ratio: auto;
    height: 84px;
    min-height: 0;
}

.envois-comptes .tuile-place.actif[b-vuely1d9mk]  .tuile { box-shadow: inset 0 0 0 3px var(--orbite-sur-bleu); }
.envois-comptes[b-vuely1d9mk]  .tuile-compte { font-size: 28px; }
.envois-comptes[b-vuely1d9mk]  .tuile-icone { width: 24px; height: 24px; }
.envois-comptes[b-vuely1d9mk]  .tuile-libelle { font-size: 13px; }
.envois-comptes[b-vuely1d9mk]  .tuile-info { font-size: 11px; }

.envois-bandeau[b-vuely1d9mk] {
    margin: 0 0 12px;
}

[b-vuely1d9mk] .envois-details {
    margin-top: 6px;
}

[b-vuely1d9mk] .envois-erreur {
    margin-top: 6px;
    color: var(--orbite-danger);
    font-size: 13px;
}

[b-vuely1d9mk] .envois-commentaire {
    margin: 6px 0 0 0;
    padding-left: 10px;
    border-left: 3px solid var(--orbite-attente);
    font-style: italic;
    white-space: pre-wrap;
}

.envois-tronque[b-vuely1d9mk] {
    margin-top: 8px;
}
/* /Components/Pages/Espace/Note.razor.rz.scp.css */
/* Mon espace › Notes (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes, comme les notes du dossier ;
   ne restent ici que les particularités des notes. Jetons et cartes : site.css. */

.note-page[b-0tvbikmbmj]  .note-texte-importante { font-weight: 600; }
.note-page[b-0tvbikmbmj]  .note-temps { display: inline-flex; gap: 10px; font-size: 12px; }
.note-page[b-0tvbikmbmj]  .note-temps .orbite-ico { vertical-align: -2px; }
.note-page[b-0tvbikmbmj]  .note-champs-perso { margin-top: 6px; }
.note-page[b-0tvbikmbmj]  .note-carte .orbite-carte-titre a { color: inherit; text-decoration: none; }
.note-page[b-0tvbikmbmj]  .note-carte .orbite-carte-titre a:hover { text-decoration: underline; }

.note-pied[b-0tvbikmbmj] { text-align: right; width: 100%; }
/* /Components/Pages/Espace/Profil.razor.rz.scp.css */
.profil-photo[b-hkhwcpvx1w] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.profil-photo img[b-hkhwcpvx1w] {
    width: 128px;
    height: 128px;
    object-fit: contain;
}

.profil-droite[b-hkhwcpvx1w] { text-align: right; }

.profil-mot-passe[b-hkhwcpvx1w] { padding: 15px; }

/* Résultat du changement de mot de passe (couleurs qui portent un sens). */
.profil-ok[b-hkhwcpvx1w] { color: light-dark(green, #5fd35f); }

.profil-erreur[b-hkhwcpvx1w] { color: light-dark(red, #ff7070); }

/* Lot 21 : NIP de signature et dessins. */
.profil-bandeau[b-hkhwcpvx1w] { margin-bottom: 12px; }

.profil-dessins[b-hkhwcpvx1w] {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.profil-dessin[b-hkhwcpvx1w] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 220px;
}

.profil-dessin-titre[b-hkhwcpvx1w] { font-weight: 600; }

/* Le cadre reproduit une page : l'encre est transparente (PNG d'ImageSignature), le fond reste visible. */
.profil-dessin-cadre[b-hkhwcpvx1w] {
    width: 320px;
    max-width: 100%;
    height: 120px;
    border: 1px dashed var(--orbite-bordure);
    border-radius: 8px;
    background: var(--orbite-fond-discret);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.profil-dessin-cadre--initiales[b-hkhwcpvx1w] { width: 160px; }

.profil-dessin-cadre img[b-hkhwcpvx1w] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.profil-dessin-boutons[b-hkhwcpvx1w] {
    display: flex;
    gap: 8px;
}
/* /Components/Pages/Espace/Sommaire.razor.rz.scp.css */
/* Sommaire de l'utilisateur : mise en page de Pages/Interv/Sommaire.aspx ; thème DevExpress par
   défaut (7 octobre 2026). Seule la nouvelle importante (.Hot) garde un fond, parce qu'il porte un sens. */

.sommaire-liste[b-ze5qbh1ich] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: 8px;
    max-height: calc(100vh - 250px);
    overflow-y: auto;
}

.sommaire-nouvelle[b-ze5qbh1ich] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.sommaire-dossier[b-ze5qbh1ich] { height: 32px; max-width: 40px; object-fit: contain; }

.sommaire-par[b-ze5qbh1ich] { height: 18px; max-width: 24px; object-fit: contain; }

.sommaire-pour[b-ze5qbh1ich] { font-weight: bold; }

.Nouvelle[b-ze5qbh1ich] {
    border: 1px solid rgba(128, 128, 128, 0.35);
    padding: 4px;
}

/* Nouvelle importante : le fond saumon signale l'importance. */
.Hot[b-ze5qbh1ich] {
    background-color: peachpuff;
    border: 1px solid lightsalmon;
    color: #000;
    padding: 4px;
}
/* /Components/Pages/Interventions.razor.rz.scp.css */
/* Interventions rapides (phase 2, Docs/Listes-Orbite.md) : la liste est une Liste de Cartes ; ne restent ici
   que les onglets et le tableau du sommaire des derniers jours (des totaux, pas une liste d'objets). */

.interventions-onglets[b-hhl472rhnr] { padding-top: 4px; }
.interventions-onglet[b-hhl472rhnr] { padding-top: 8px; }

.interventions-page[b-hhl472rhnr]  .orbite-carte-auteur .orbite-ico { vertical-align: -1px; }

.interventions-sommaire[b-hhl472rhnr] {
    border-collapse: collapse;
}

.interventions-sommaire th[b-hhl472rhnr],
.interventions-sommaire td[b-hhl472rhnr] {
    border: 1px solid var(--orbite-bordure);
    padding: 4px 10px;
}

.interventions-sommaire td.nombre[b-hhl472rhnr] {
    text-align: right;
    min-width: 70px;
}

.interventions-sommaire tr.total td[b-hhl472rhnr],
.interventions-sommaire td.total[b-hhl472rhnr] {
    font-weight: bold;
}

/* Phase 3 : le bouton d'ajout, à droite sous la description. */
.interventions-pied[b-hhl472rhnr] { display: flex; justify-content: flex-end; }
/* /Components/Pages/Journal.razor.rz.scp.css */
/* Journal de bord (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; la rature est portée par la
   carte (Rayee). Ne restent ici que l'aide de la fiche et l'icône du bouton de signature. */

.journal-aide[b-o5qg9b7r6r] { margin-top: 2px; }

[b-o5qg9b7r6r] .journal-bouton-image {
    width: 16px;
    height: 16px;
    vertical-align: middle;
}
/* /Components/Pages/Memos.razor.rz.scp.css */
/* Mémos (phase 2, Docs/Listes-Orbite.md) : une Liste de Cartes ; ne restent ici que la case à cocher de
   l'épuration dans la vignette, les couleurs « Moi » / « à tous » de la v2 (jetons memo-moi et memo-tous) et
   le mémo caché atténué en italique. Jetons et cartes : site.css. */

.memos-page[b-z3nq0m9kar]  .orbite-carte-vignette, .memos-page[b-z3nq0m9kar]  .orbite-ligne-vignette { display: inline-flex; align-items: center; gap: 6px; }
.memos-page[b-z3nq0m9kar]  .memo-case { display: inline-flex; align-items: center; }
.memos-page[b-z3nq0m9kar]  .memo-moi { color: var(--orbite-memo-moi); }
.memos-page[b-z3nq0m9kar]  .memo-tous { color: var(--orbite-memo-tous); }
.memos-page[b-z3nq0m9kar]  .memo-fleche { vertical-align: -2px; margin: 0 4px; color: var(--orbite-texte-attenue); }
.memos-page[b-z3nq0m9kar]  .memo-cache .orbite-carte-titres, .memos-page[b-z3nq0m9kar]  .memo-cache .orbite-carte-corps,
.memos-page[b-z3nq0m9kar]  .memo-cache .orbite-ligne-titre, .memos-page[b-z3nq0m9kar]  .memo-cache .orbite-ligne-sous-titre { opacity: .6; font-style: italic; }
/* /Components/Pages/Mobile/AccueilMobile.razor.rz.scp.css */
/* L'accueil mobile provisoire (Docs/Plan-Mobile.md § 6) : salut, recherche, rangées par groupe du menu. */

.accueil-mobile[b-d9ezve2spr] { display: flex; flex-direction: column; gap: 14px; max-width: 640px; margin: 0 auto; }

.accueil-mobile-salut[b-d9ezve2spr] { padding: 4px 4px 0 4px; }
.accueil-mobile-bonjour[b-d9ezve2spr] { font-size: 24px; font-weight: 300; letter-spacing: -.01em; color: var(--orbite-texte); }
.accueil-mobile-date[b-d9ezve2spr] { font-size: 13px; color: var(--orbite-texte-secondaire); }
.accueil-mobile-date[b-d9ezve2spr]::first-letter { text-transform: uppercase; }

.accueil-mobile-recherche[b-d9ezve2spr] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid var(--orbite-bordure);
    border-radius: 22px;
    background: var(--orbite-fond-surface);
    color: var(--orbite-texte-secondaire);
}

.accueil-mobile-recherche input[b-d9ezve2spr] {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent;
    color: var(--orbite-texte);
    font: inherit;
    font-size: 16px; /* sous 16 px, iOS zoome le champ au focus */
    outline: none;
}

.accueil-mobile-groupe[b-d9ezve2spr] {
    display: flex;
    flex-direction: column;
    padding: 4px 0;
    border: 1px solid var(--orbite-bordure-discrete);
    border-radius: var(--orbite-rayon);
    background: var(--orbite-fond-surface);
}

.accueil-mobile-groupe-titre[b-d9ezve2spr] { padding: 8px 14px 2px 14px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--orbite-texte-secondaire); }

.accueil-mobile-item[b-d9ezve2spr] {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 48px;
    padding: 0 12px 0 10px;
    color: var(--orbite-texte);
    text-decoration: none;
    font-size: 15px;
}

.accueil-mobile-item + .accueil-mobile-item[b-d9ezve2spr] { border-top: 1px solid var(--orbite-bordure-discrete); }
.accueil-mobile-item:active[b-d9ezve2spr] { background: var(--orbite-fond-discret); }
.accueil-mobile-item-icone[b-d9ezve2spr] { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 10px; background: var(--orbite-bleu-pale); color: var(--orbite-accent); flex: none; }
.accueil-mobile-item-texte[b-d9ezve2spr] { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.accueil-mobile-item[b-d9ezve2spr]  .accueil-mobile-item-chevron { color: var(--orbite-texte-attenue); }

.accueil-mobile-aide[b-d9ezve2spr] { margin: 0 4px; font-size: 13px; color: var(--orbite-texte-secondaire); }
/* /Components/Pages/NoteGroupe.razor.rz.scp.css */
/* Note de groupe (phase 3) : la disposition en colonnes vient de ColonneChoix ; ne reste ici que le pied du
   formulaire (l'avertissement sur la signature et le bouton, sur une ligne qui enveloppe). */

.note-groupe-pied[b-e49tdrthbg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 16px;
}
/* /Components/Pages/Nouvelles.razor.rz.scp.css */
/* Nouvelles (Docs/Design-Orbite3.md § 6 et § 9, Docs/Listes-Orbite.md) : les dossiers actifs à gauche en
   cartes (Carte, règle de CouleursDossier : cyan pour mes dossiers, programme en bandes, alerte sur la bordure), le fil au
   centre en Liste de Cartes ou de Lignes (barre de filtres standard), les mémos à droite. Gardées : la
   disposition de Nouvelle3.aspx et les couleurs qui portent un sens (alerte, important, couleur du
   programme venue des données). Cartes, lignes, barre et jetons : site.css. */

.nouvelles-page[b-2dmege877z] {
    display: flex;
    align-items: flex-start;
    gap: var(--orbite-marge);
}

.nouvelles-centre[b-2dmege877z] {
    overflow-x: auto;
    flex: 1 1 auto;
    min-width: 0;
}

.nouvelles-cote[b-2dmege877z] {
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon-carte);
    position: sticky;
    top: calc(var(--orbite-entete-hauteur) + var(--orbite-marge-haut));
    max-height: calc(100vh - var(--orbite-entete-hauteur) - 2 * var(--orbite-marge-haut));
    overflow-y: auto;
    flex: 0 0 auto;
    padding: 8px;
    box-sizing: border-box;
    scrollbar-width: thin;
}

.nouvelles-cote.gauche[b-2dmege877z] { width: 250px; }
.nouvelles-cote.droite[b-2dmege877z] { width: 320px; }
.nouvelles-cote.ferme[b-2dmege877z] { width: 40px; padding: 4px; }

.nouvelles-deplier[b-2dmege877z] {
    border: none;
    background: transparent;
    color: var(--orbite-texte-secondaire);
    cursor: pointer;
    padding: 6px;
    border-radius: 4px;
}
.nouvelles-deplier:hover[b-2dmege877z] { background: var(--orbite-survol); color: var(--orbite-texte); }

@media (max-width: 1100px) {
    .nouvelles-cote.droite[b-2dmege877z] { display: none; }
}

@media (max-width: 900px) {
    .nouvelles-cote.gauche[b-2dmege877z] { display: none; }
}

/* ---------- Le panneau des filtres du fil ---------- */

.nouvelles-depuis[b-2dmege877z] { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.nouvelles-depuis[b-2dmege877z]  .dxbl-date-edit { min-width: 170px; }
.nouvelles-periodes[b-2dmege877z] { display: flex; gap: 6px; flex-wrap: wrap; }

/* ---------- Les cartes et les lignes du fil ---------- */

[b-2dmege877z] .nouvelle-carte .orbite-carte-titre { font-size: 16px; }
[b-2dmege877z] .nouvelle-carte .orbite-carte-sous-titre .orbite-ico { vertical-align: -3px; margin-left: 2px; }
[b-2dmege877z] .nouvelle-alerte-marque { display: inline-flex; align-items: center; gap: 4px; font-weight: 600; color: var(--orbite-danger); }
[b-2dmege877z] .nouvelle-par { display: flex; justify-content: flex-end; align-items: center; gap: 6px; margin-top: 6px; font-size: 13px; }
[b-2dmege877z] .nouvelle-ligne .nouvelle-par { margin: 0; }
[b-2dmege877z] .nouvelle-par-nom { max-width: 160px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
[b-2dmege877z] .nouvelle-ligne-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 6px; }
[b-2dmege877z] .nouvelle-action-link { font-weight: 500; }

/* ---------- Mémos : alerte, important, ordinaire ---------- */

.Nouvelle[b-2dmege877z] { background-color: var(--orbite-fond-surface); border: 1px solid var(--orbite-bordure); }

/* Mémo important : le fond orangé signale l'importance. */
.Hot[b-2dmege877z] {
    background-color: var(--orbite-nouvelle-hot);
    border: 1px solid color-mix(in srgb, var(--orbite-nouvelle-hot) 70%, var(--orbite-texte));
}

.nouvelle-table[b-2dmege877z] { width: 100%; border-collapse: collapse; }
.nouvelle-table td[b-2dmege877z] { padding: 1px 2px; }

.nouvelle-memo[b-2dmege877z] {
    padding: 10px 12px;
    margin-bottom: 8px;
    border-radius: var(--orbite-rayon-carte);
    cursor: pointer;
}
.nouvelle-memo:hover[b-2dmege877z] { box-shadow: var(--orbite-ombre), 0 2px 8px rgba(16, 24, 40, .08); }

.memo-avatar[b-2dmege877z] { width: 32px; }
.memo-de[b-2dmege877z] { text-align: left; padding-left: 8px; }
.memo-pour[b-2dmege877z] { text-align: right; padding-right: 8px; color: var(--orbite-texte-secondaire); }
.memo-date[b-2dmege877z] { text-align: right; font-size: 12px; color: var(--orbite-texte-secondaire); }

/* ---------- Séjours (dossiers actifs) : cartes et lignes dans un côté de 250 px ---------- */

.sejour-groupe[b-2dmege877z] { margin-top: 14px; }
.sejour-groupe.premier[b-2dmege877z] { margin-top: 36px; }
.sejour-cartes[b-2dmege877z] { display: flex; flex-direction: column; gap: 6px; }

/* Compactes dans le côté : padding réduit, titre 14 px, liseré fin. */
[b-2dmege877z] .sejour-cartes .orbite-carte { padding: 6px 8px 6px 8px; }
[b-2dmege877z] .sejour-cartes .orbite-carte-titre { font-size: 14px; }
[b-2dmege877z] .sejour-cartes .orbite-carte-corps { margin-top: 4px; }
[b-2dmege877z] .sejour-cartes .orbite-carte-entete { gap: 8px; }
[b-2dmege877z] .sejour-cartes .orbite-ligne-rangee { min-height: 32px; padding: 2px 8px 2px 6px; }

/* Hauteur fixe dans le côté (François, 29 octobre 2026) : la carte de la Vue d'ensemble (bs113) s'étirait en hauteur dans
   250 px (nom sur trois lignes, détails et pastilles qui s'enroulent). Ici, chaque texte tient sur une ligne et se coupe
   (« … », le texte entier en infobulle là où la carte en a une) ; les détails et les pastilles restent sur une rangée. */
[b-2dmege877z] .sejour-cartes .sejour-carte { height: 104px; box-sizing: border-box; overflow: hidden; }
[b-2dmege877z] .sejour-cartes .sejour-carte .orbite-carte-titre,
[b-2dmege877z] .sejour-cartes .sejour-carte .orbite-carte-sous-titre {
    overflow: hidden;
    overflow-wrap: normal;
    white-space: nowrap;
    text-overflow: ellipsis;
}
[b-2dmege877z] .sejour-cartes .sejour-carte .orbite-carte-date { font-size: 12px; }
[b-2dmege877z] .sejour-cartes .sejour-carte .orbite-carte-details,
[b-2dmege877z] .sejour-cartes .sejour-carte .orbite-pastilles { flex-wrap: nowrap; overflow: hidden; gap: 4px 10px; }
[b-2dmege877z] .sejour-cartes .sejour-carte .orbite-carte-details > span {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
[b-2dmege877z] .sejour-cartes .sejour-carte .orbite-pastilles > * { flex: none; }
/* Mon dossier : le fond cyan seul (CouleursDossier, 23 octobre 2026) ; la bordure d'accent d'avant est retirée, la
   bordure colorée est réservée à l'alerte. */

/* Album : la vignette seule (gardé). */
.sejour-card[b-2dmege877z] {
    background-color: var(--orbite-fond-surface);
    display: block;
    color: inherit;
    text-decoration: none;
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon);
    cursor: pointer;
    position: relative;
    overflow: hidden;
}
.sejour-card:hover[b-2dmege877z] { border-color: var(--orbite-accent); color: inherit; }
/* La règle des capsules de dossiers (CouleursDossier, 23 octobre 2026) : mon dossier en fond cyan ; en sortie, plus de
   fond gris bleuté mais une petite icône en bas à gauche ; la bordure colorée est réservée à l'alerte. */
.sejour-card.my-dossier[b-2dmege877z] { background-color: var(--orbite-nouvelle-mon-dossier); }
.sejour-album-sortie[b-2dmege877z] {
    position: absolute;
    left: 1px;
    bottom: 1px;
    display: inline-flex;
    padding: 2px;
    border-radius: 999px;
    /* cd1 (27 octobre 2026) : la pastille pleine de la sortie (violette), plus visible que l'icône sur la surface. */
    background: var(--orbite-sortie-fond);
    color: var(--orbite-sortie-texte);
    line-height: 0;
}
.sejour-card.alerte-critique[b-2dmege877z] { border-color: var(--orbite-dossier-alerte); border-left-width: 4px; }
.sejour-card.alerte[b-2dmege877z] { border-color: var(--orbite-attente); border-left-width: 4px; }

.sejour-album-grid[b-2dmege877z] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;
    margin-bottom: 8px;
}

.sejour-card-album[b-2dmege877z] {
    width: 42px;
    height: 42px;
    padding: 0;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.section-header[b-2dmege877z] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
    padding-bottom: 4px;
    border-bottom: 1px solid var(--orbite-bordure-discrete);
    color: var(--orbite-texte-secondaire);
}

.section-header img[b-2dmege877z], .section-header[b-2dmege877z]  .orbite-ico { width: 16px; height: 16px; }
.section-header .title[b-2dmege877z] { font-weight: 600; font-size: 13px; letter-spacing: .3px; text-transform: uppercase; }

/* Barre des côtés (modes, tri, réduire) : collée en haut du côté. */
.nouvelles-cote > .sejour-mode-buttons[b-2dmege877z] {
    position: sticky;
    float: right;
    top: 0;
    right: 0;
    z-index: 100;
    display: flex;
    gap: 2px;
    padding: 2px;
    border-radius: var(--orbite-rayon);
    background-color: var(--orbite-fond-surface);
}

.sejour-mode-btn[b-2dmege877z] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    padding: 0;
    cursor: pointer;
    color: var(--orbite-texte-secondaire);
    text-decoration: none;
    font-weight: bold;
    line-height: 1;
    border: 1px solid transparent;
    border-radius: 4px;
}

.sejour-mode-btn:hover[b-2dmege877z] { background: var(--orbite-survol); color: var(--orbite-texte); }
.sejour-mode-btn.actif[b-2dmege877z] { border-color: var(--orbite-accent); color: var(--orbite-accent-texte); background: var(--orbite-bleu-pale); }
.sejour-mode-btn img[b-2dmege877z], .sejour-mode-btn[b-2dmege877z]  .orbite-ico { display: block; width: 14px; height: 14px; }

.sejour-sort-dropdown[b-2dmege877z] { position: relative; display: flex; align-items: center; }

.sejour-sort-menu[b-2dmege877z] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    position: absolute;
    top: 100%;
    right: 0;
    background-color: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon);
    box-shadow: var(--orbite-ombre);
    padding: 2px;
    margin-top: 2px;
    z-index: 200;
}

.sejour-sort-menu a[b-2dmege877z] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3px;
    width: 22px;
    height: 22px;
    cursor: pointer;
    border: 1px solid transparent;
    border-radius: 4px;
    color: var(--orbite-texte-secondaire);
}

.sejour-sort-menu a:hover[b-2dmege877z] { background: var(--orbite-survol); }
.sejour-sort-menu a.active[b-2dmege877z] { border-color: var(--orbite-accent); color: var(--orbite-accent-texte); }
.sejour-sort-menu a img[b-2dmege877z], .sejour-sort-menu a[b-2dmege877z]  .orbite-ico { display: block; width: 14px; height: 14px; }

/* La couleur du programme (donnée) : un liseré à droite (album). */
.programme-indicator[b-2dmege877z] {
    width: 6px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
}

/* Sites (lot E4) : un mémo pour tous les sites (fond memo-global de site.css) et sa mention à côté de la date. */
.memo-global[b-2dmege877z] { border: 1px solid color-mix(in srgb, var(--orbite-memo-tous) 35%, transparent); }
.memo-tous-sites[b-2dmege877z] { margin-left: 4px; font-size: 12px; font-weight: 600; color: var(--orbite-texte); }
/* /Components/Pages/OutilsAvatar.razor.rz.scp.css */
.outils-avatar[b-l914q52u7t] {
    position: relative;
    display: inline-block;
    overflow: hidden;
    text-align: center;
    font-weight: bold;
    vertical-align: middle;
    flex-shrink: 0;
}

.outils-avatar.rond[b-l914q52u7t] {
    border-radius: 50%;
}

.outils-avatar img[b-l914q52u7t] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.outils-avatar-icone[b-l914q52u7t] {
    vertical-align: middle;
}
/* /Components/Pages/OutilsChoixDossiers.razor.rz.scp.css */
/* Choix de dossiers (phase 2, Docs/Listes-Orbite.md) : l'onglet multiple est une Liste de Cartes cochables ;
   ne restent ici que la case dans la vignette, la hauteur bornée de la liste (le formulaire reste à portée,
   comme la grille de 340 px d'avant) et les icônes des onglets. Jetons et cartes : site.css. */

.choix-onglet[b-tywkrsxo22] {
    padding: 8px 0;
}

.choix-liste[b-tywkrsxo22]  .orbite-liste-elements,
.choix-liste[b-tywkrsxo22]  .orbite-liste-plus {
    max-height: clamp(320px, 60vh, 640px);
    overflow: auto;
}

.choix-liste[b-tywkrsxo22]  .orbite-carte-vignette,
.choix-liste[b-tywkrsxo22]  .orbite-ligne-vignette { display: inline-flex; align-items: center; gap: 6px; }

.choix-liste[b-tywkrsxo22]  .choix-case { display: inline-flex; align-items: center; }

/* En ligne dans la colonne de 360 px : une seule rangée (case, photo, nom, programme, date). La règle des
   lignes étroites (site.css, @container < 600 px) mettait le programme et la date sur deux rangées de plus,
   et la ligne devenait presque aussi haute qu'une carte. */
.choix-liste[b-tywkrsxo22]  .orbite-ligne-rangee { flex-wrap: nowrap; }
.choix-liste[b-tywkrsxo22]  .orbite-ligne-titre { flex: 0 1 auto; max-width: 60%; }
.choix-liste[b-tywkrsxo22]  .orbite-ligne-sous-titre { flex: 1 1 0; flex-basis: 0; order: 0; min-width: 0; }
.choix-liste[b-tywkrsxo22]  .orbite-ligne-meta { flex: none; flex-basis: auto; order: 0; margin-left: auto; justify-content: flex-end; }

.choix-liste[b-tywkrsxo22]  .choix-carte .orbite-carte-sous-titre .orbite-ico { vertical-align: -2px; margin-right: 3px; }

.choix-dossiers[b-tywkrsxo22]  .dxbl-tabs-item img,
.choix-dossiers[b-tywkrsxo22]  .dxbl-tabs .dxbl-image {
    width: 24px;
    height: 24px;
}
/* /Components/Pages/OutilsOccupationDemande.razor.rz.scp.css */
/* Occupation des places d'une demande (phase 2, Docs/Listes-Orbite.md) : une Liste en lignes ; une place libre
   a son titre en vert et en gras (jeton lit-libre, le sens du web). Lot 27 : la barre de la bascule
   (ligne du temps / liste) et de la fenêtre ; la ligne du temps est dans Shared/LigneTemps. */

.occupation-demande[b-c6uz44ss3g]  .occupation-libre .orbite-ligne-titre { color: var(--orbite-lit-libre); }

.occupation-demande-barre[b-c6uz44ss3g] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-size: 13px;
}

.occupation-demande-echec[b-c6uz44ss3g] { color: var(--orbite-texte-secondaire); }

/* Dans le pied d'une carte, la ligne du temps n'a pas besoin de toute la hauteur de l'écran. */
.occupation-demande[b-c6uz44ss3g]  .lt { --lt-vue: max(260px, calc(70vh - 160px)); }
/* /Components/Pages/OutilsPageSimpleLayout.razor.rz.scp.css */
.outils-page-simple[b-y376zjimsn] {
    min-height: 100vh;
    padding: 16px;
    box-sizing: border-box;
}
/* /Components/Pages/PivotDossier.razor.rz.scp.css */
.pivotdossier-champ[b-c1flfj5tdn] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 120px;
}
/* /Components/Pages/QuoiDeNeuf.razor.rz.scp.css */
/* Orbite.css d'Orbite.Web: police et liens de la page des nouveautés. */
.quoi-de-neuf[b-flqtuc6tcl] {
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

.quoi-de-neuf a[b-flqtuc6tcl] {
    color: darkblue;
}

.quoi-de-neuf img[b-flqtuc6tcl] {
    margin: 4px 0;
}
/* /Components/Pages/SejoursSorties.razor.rz.scp.css */
/* Séjours et sorties (SejoursSorties.razor) : la barre de période au-dessus de la ligne du temps. */

.ss-barre[b-40l6lwopgi] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
    margin-bottom: 10px;
}

.ss-raccourcis[b-40l6lwopgi] {
    display: inline-flex;
    border: 1px solid var(--orbite-bordure);
    border-radius: 6px;
    overflow: hidden;
    background: var(--orbite-fond-surface);
}

.ss-raccourcis button[b-40l6lwopgi] {
    border: 0;
    background: transparent;
    color: var(--orbite-texte-secondaire);
    font: inherit;
    padding: 4px 12px;
    cursor: pointer;
}

.ss-raccourcis button + button[b-40l6lwopgi] { border-left: 1px solid var(--orbite-bordure); }
.ss-raccourcis button:hover[b-40l6lwopgi] { background: var(--orbite-survol); }
.ss-raccourcis button.actif[b-40l6lwopgi] { background: var(--orbite-bleu-pale); color: var(--orbite-accent-texte); font-weight: 600; }

.ss-periode[b-40l6lwopgi] { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }

.ss-resume[b-40l6lwopgi] { margin-bottom: 8px; color: var(--orbite-texte-secondaire); font-size: 13px; }

@media (max-width: 700px) {
    .ss-raccourcis[b-40l6lwopgi] { width: 100%; }
    .ss-raccourcis button[b-40l6lwopgi] { flex: 1; padding: 4px 6px; }
}

.ss-date[b-40l6lwopgi] { width: 150px; flex: none; }
.ss-recherche[b-40l6lwopgi] { width: 240px; flex: none; }
.ss-periode > span[b-40l6lwopgi] { color: var(--orbite-texte-secondaire); }

@media (max-width: 700px) {
    .ss-recherche[b-40l6lwopgi] { width: 100%; }
    .ss-date[b-40l6lwopgi] { width: 130px; }
}
/* /Components/Shared/Calendriers/CalendrierVue.razor.rz.scp.css */
.calendrier-infobulle[b-ojk5s89ch0] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-width: 360px;
}

.calendrier-pastille[b-ojk5s89ch0] {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 2px;
    vertical-align: middle;
}

.calendrier-ressources[b-ojk5s89ch0] {
    white-space: pre-line;
}

.calendrier-barre[b-ojk5s89ch0] {
    padding: 0 0 6px 0;
}
/* /Components/Shared/ChoixCouleurEditeur.razor.rz.scp.css */
.choix-couleur[b-dpyy6nkfy5] { display: flex; align-items: center; gap: 8px; min-height: 32px; flex-wrap: wrap; }
.choix-couleur input[type=color][b-dpyy6nkfy5] {
    width: 40px; height: 28px; padding: 2px; border: 1px solid var(--orbite-bordure); border-radius: var(--orbite-rayon);
    background: var(--orbite-fond-surface); cursor: pointer;
}
/* Aucune couleur : un damier discret, pour ne pas faire croire à du noir. */
.choix-couleur input.choix-couleur-vide[b-dpyy6nkfy5] { opacity: .35; }
.choix-couleur-texte[b-dpyy6nkfy5] { font-size: 13px; color: var(--orbite-texte-secondaire); font-variant-numeric: tabular-nums; }
/* /Components/Shared/ChoixFichier.razor.rz.scp.css */
/* Le bouton garde l'allure de BoutonImage (site.css, .orbite-bouton-image), avec un cadre de bouton secondaire. */
.choix-fichier[b-yz31cpcc0f] {
    position: relative;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon);
    background: var(--orbite-fond-surface);
}

.choix-fichier.inactif[b-yz31cpcc0f] { opacity: .45; cursor: default; pointer-events: none; }

/* Le champ natif : invisible mais focusable (pas de display:none, qui le sortirait du clavier). */
.choix-fichier[b-yz31cpcc0f]  input[type=file] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
}

.choix-fichier:focus-within[b-yz31cpcc0f] { outline: 2px solid var(--orbite-accent); outline-offset: 2px; }
/* /Components/Shared/ChoixSignataireDialogue.razor.rz.scp.css */
/* « Autre signataire… » : une rangée par personne (contact ou témoin), cochable ; une personne qui a déjà signé est grisée. */

.choix-signataire[b-88d9w8h1oa] { display: flex; flex-direction: column; gap: 4px; margin-bottom: 12px; }
.choix-signataire-option[b-88d9w8h1oa] { display: flex; align-items: center; gap: 8px; padding: 6px 8px; border-radius: 6px; cursor: pointer; }
.choix-signataire-option:hover[b-88d9w8h1oa] { background: var(--orbite-fond-discret); }
.choix-signataire-option--signe[b-88d9w8h1oa] { cursor: default; opacity: .55; }
.choix-signataire-option--signe:hover[b-88d9w8h1oa] { background: none; }
.choix-signataire-texte[b-88d9w8h1oa] { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.choix-signataire-prevu[b-88d9w8h1oa] { margin-top: 8px; }
/* /Components/Shared/ColonneChoix.razor.rz.scp.css */
/* Deux colonnes (phase 3) : le choix à gauche (360 px, repliable à une bande de 44 px), la saisie à droite ;
   sous 768 px, l'une sous l'autre. Jetons, cartes et listes : site.css. */

.orbite-colonnes[b-45y8cjmcc1] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.orbite-colonnes-gauche[b-45y8cjmcc1] {
    flex: 0 0 360px;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon-carte);
    position: sticky;
    top: 8px;
}

.orbite-colonnes-droite[b-45y8cjmcc1] {
    flex: 1 1 0;
    min-width: 0;
}

.orbite-colonnes-entete[b-45y8cjmcc1] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 6px 12px 6px 8px;
    box-sizing: border-box;
    border-bottom: 1px solid var(--orbite-bordure-discrete);
    background: var(--orbite-fond-discret);
    border-radius: var(--orbite-rayon-carte) var(--orbite-rayon-carte) 0 0;
    font-size: 15px;
    font-weight: 600;
    user-select: none;
}

.orbite-colonnes-entete[b-45y8cjmcc1]  .orbite-colonnes-icone { color: var(--orbite-accent-texte); }
.orbite-colonnes-titre[b-45y8cjmcc1] { flex: 1; }
.orbite-colonnes-resume[b-45y8cjmcc1] { font-size: 13px; font-weight: 500; color: var(--orbite-texte-secondaire); white-space: nowrap; }

.orbite-colonnes-bouton[b-45y8cjmcc1] {
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: var(--orbite-rayon);
    background: transparent;
    color: var(--orbite-texte-secondaire);
    cursor: pointer;
}

.orbite-colonnes-bouton:hover[b-45y8cjmcc1] { background: var(--orbite-survol); color: var(--orbite-texte); }
.orbite-colonnes-bouton:focus-visible[b-45y8cjmcc1] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }

.orbite-colonnes-corps[b-45y8cjmcc1] { padding: 8px 12px 12px 12px; }

/* Repliée : une bande verticale qui garde le bouton, l'icône, le titre (vertical) et le résumé. */
.orbite-colonnes--repliee .orbite-colonnes-gauche[b-45y8cjmcc1] { flex-basis: 44px; }

.orbite-colonnes--repliee .orbite-colonnes-entete[b-45y8cjmcc1] {
    flex-direction: column;
    align-items: center;
    padding: 8px 0;
    gap: 10px;
    border-bottom: 0;
    border-radius: var(--orbite-rayon-carte);
}

.orbite-colonnes--repliee .orbite-colonnes-titre[b-45y8cjmcc1],
.orbite-colonnes--repliee .orbite-colonnes-resume[b-45y8cjmcc1] {
    writing-mode: vertical-rl;
    flex: none;
}

/* Téléphone et tablette en portrait : l'une sous l'autre, la colonne de gauche sur toute la largeur. */
@media (max-width: 767px) {
    .orbite-colonnes[b-45y8cjmcc1] { flex-direction: column; }

    .orbite-colonnes-gauche[b-45y8cjmcc1],
    .orbite-colonnes--repliee .orbite-colonnes-gauche[b-45y8cjmcc1] {
        flex: 0 0 auto;
        width: 100%;
        position: static;
    }

    .orbite-colonnes-droite[b-45y8cjmcc1] { width: 100%; }

    .orbite-colonnes--repliee .orbite-colonnes-entete[b-45y8cjmcc1] {
        flex-direction: row;
        align-items: center;
        padding: 6px 12px 6px 8px;
        gap: 8px;
    }

    .orbite-colonnes--repliee .orbite-colonnes-titre[b-45y8cjmcc1],
    .orbite-colonnes--repliee .orbite-colonnes-resume[b-45y8cjmcc1] {
        writing-mode: horizontal-tb;
    }

    .orbite-colonnes--repliee .orbite-colonnes-titre[b-45y8cjmcc1] { flex: 1; }
}
/* /Components/Shared/Composition/CompositionBarre.razor.rz.scp.css */
/* Lot 34 (retour de François, 4 novembre 2026) : « Modifié le … par … » et les versions ont quitté la barre d'outils
   (elle passait sur deux lignes). La date et l'auteur sont au bout de la ligne d'état, en petit et en gris, séparés par
   un filet (les versions dans l'infobulle) ; sous 900 px de large (document à côté du panneau Informations, petite
   fenêtre) ils disparaissent pour ne pas faire passer la ligne d'état sur plusieurs lignes : l'infobulle du bouton
   Historique les garde. */
.composition-modifie[b-5e4i12poz9] {
    margin-left: 12px;
    padding-left: 12px;
    border-left: 1px solid var(--orbite-bordure);
    font-size: 12px;
    color: var(--orbite-texte-secondaire);
    white-space: nowrap;
}

@media (max-width: 899px) {
    .composition-modifie[b-5e4i12poz9] { display: none; }
}
/* /Components/Shared/DossierCadre.razor.rz.scp.css */
/*
  Le rail des sections d'un dossier : l'indicateur « nouveau » des sections
  (api/dossiers/{id}/nouveautes), réduit au nombre, en petite pastille vive à droite de l'entrée. Option peu coûteuse
  ajoutée avec les indicateurs des tuiles (23 octobre 2026, tuiles retirées le 30 octobre 2026).
*/
.dossier-nav-nouveau[b-8groy5ig49] {
    margin-left: auto;
    flex: none;
    min-width: 18px;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--orbite-nouveau-fond);
    color: var(--orbite-nouveau-texte);
    font-size: 11px;
    font-weight: 600;
    line-height: 18px;
    text-align: center;
}

/*
  Sections du dossier en bandeau sous l'en-tête (bouton du dossier, 29 octobre 2026 ; Suivi/Reponses-2026-10-29-Menu-Haut.md),
  à la place du rail de gauche (site.css). Jamais sur deux lignes : js/orbite.js (orbite.bandeau) mesure la zone des
  sections et pose data-niveau sur le bandeau, du plus complet au plus compact :
    0  titres de groupe en petites capitales, sections avec leur nom ;
    1  une ligne de séparation entre les groupes au lieu des titres ;
    2  icônes seules (le nom en infobulle) ;
    3  une liste déroulante par groupe (le groupe courant montre la section courante) ;
    4  une seule liste déroulante, la section courante sur le bouton.
  Le groupe Contrôle (Sécurité, Historique) et le retour au rail restent en icônes à droite. Sous 900 px, la liste
  déroulante des sections de site.css prend le relais.
*/
.dossier-cadre.bandeau[b-8groy5ig49] { flex-direction: column; gap: var(--orbite-marge); }
.dossier-cadre.bandeau .dossier-droite[b-8groy5ig49] { width: 100%; }

.dossier-bandeau[b-8groy5ig49] {
    position: sticky;
    top: var(--orbite-entete-hauteur);
    z-index: 20;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 4px 8px;
    box-sizing: border-box;
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon-carte);
}

/* La zone mesurée : elle prend la place restante ; chaque palier garde sa largeur naturelle (flex: none) pour que le débordement se voie. */
.dossier-bandeau-sections[b-8groy5ig49] { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; }
.dossier-bandeau-complet[b-8groy5ig49] { flex: none; display: flex; flex-wrap: nowrap; align-items: center; gap: 12px; }
.dossier-bandeau-par-groupe[b-8groy5ig49], .dossier-bandeau-unique[b-8groy5ig49] { flex: none; display: none; flex-wrap: nowrap; align-items: center; gap: 4px; }
.dossier-bandeau-controle[b-8groy5ig49] { flex: none; display: flex; align-items: center; gap: 2px; }
.dossier-bandeau-controle .dossier-bandeau-item[b-8groy5ig49] { width: 32px; padding: 0; justify-content: center; }

.dossier-bandeau-groupe[b-8groy5ig49] { display: flex; flex-wrap: nowrap; align-items: center; gap: 2px; }

.dossier-bandeau-titre[b-8groy5ig49] {
    padding: 0 6px 0 4px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--orbite-texte-secondaire);
    white-space: nowrap;
}

.dossier-bandeau-item[b-8groy5ig49] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    padding: 0 9px;
    box-sizing: border-box;
    border: 0;
    border-radius: var(--orbite-rayon);
    background: transparent;
    color: var(--orbite-texte);
    font: inherit;
    font-size: 13.5px;
    line-height: 1.2;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
}

.dossier-bandeau-item[b-8groy5ig49]  .orbite-ico { flex: none; color: var(--orbite-texte-secondaire); }
.dossier-bandeau-item:hover[b-8groy5ig49], .dossier-bandeau-item[aria-expanded="true"][b-8groy5ig49] { background: var(--orbite-survol); color: var(--orbite-texte); }
.dossier-bandeau-item:focus-visible[b-8groy5ig49] { outline-color: var(--orbite-focus); outline-offset: -2px; }

/* La section courante : comme dans le rail (voile bleu pâle, accent), la barre d'accent en bas. */
.dossier-bandeau-item.actif[b-8groy5ig49] {
    background: var(--orbite-bleu-pale);
    box-shadow: inset 0 -3px 0 var(--orbite-accent);
    color: var(--orbite-accent-texte);
    font-weight: 600;
}
.dossier-bandeau-item.actif[b-8groy5ig49]  .orbite-ico { color: var(--orbite-accent-texte); }

.dossier-bandeau-item .dossier-nav-nouveau[b-8groy5ig49] { margin-left: 2px; }
.dossier-bandeau-item[b-8groy5ig49]  .dossier-bandeau-chevron { opacity: .7; transition: transform .15s ease-out; }
.dossier-bandeau-liste-groupe[b-8groy5ig49] { position: relative; }
.dossier-bandeau-liste-groupe.ouvert[b-8groy5ig49]  .dossier-bandeau-chevron { transform: rotate(180deg); }

/* Palier 1 et 2 : une ligne de séparation remplace les titres de groupe. */
.dossier-bandeau[data-niveau="1"] .dossier-bandeau-titre[b-8groy5ig49],
.dossier-bandeau[data-niveau="2"] .dossier-bandeau-titre[b-8groy5ig49] { display: none; }
.dossier-bandeau[data-niveau="1"] .dossier-bandeau-complet[b-8groy5ig49],
.dossier-bandeau[data-niveau="2"] .dossier-bandeau-complet[b-8groy5ig49] { gap: 6px; }
.dossier-bandeau[data-niveau="1"] .dossier-bandeau-groupe + .dossier-bandeau-groupe[b-8groy5ig49],
.dossier-bandeau[data-niveau="2"] .dossier-bandeau-groupe + .dossier-bandeau-groupe[b-8groy5ig49] { padding-left: 6px; border-left: 1px solid var(--orbite-bordure); }

/* Palier 2 : icônes seules. */
.dossier-bandeau[data-niveau="2"] .dossier-bandeau-texte[b-8groy5ig49],
.dossier-bandeau[data-niveau="2"] .dossier-bandeau-complet[b-8groy5ig49]  .dossier-bandeau-chevron { display: none; }
.dossier-bandeau[data-niveau="2"] .dossier-bandeau-complet .dossier-bandeau-item[b-8groy5ig49] { padding: 0 7px; }

/* Paliers 3 et 4 : les listes déroulantes. */
.dossier-bandeau[data-niveau="3"] .dossier-bandeau-complet[b-8groy5ig49],
.dossier-bandeau[data-niveau="4"] .dossier-bandeau-complet[b-8groy5ig49],
.dossier-bandeau[data-niveau="4"] .dossier-bandeau-par-groupe[b-8groy5ig49] { display: none; }
.dossier-bandeau[data-niveau="3"] .dossier-bandeau-par-groupe[b-8groy5ig49],
.dossier-bandeau[data-niveau="4"] .dossier-bandeau-unique[b-8groy5ig49] { display: flex; }

/* Les listes : l'allure du menu de l'utilisateur (site.css), ancrées à gauche ; les pages d'information en retrait. */
.dossier-bandeau-liste[b-8groy5ig49] { top: calc(100% + 2px); left: 0; right: auto; min-width: 230px; max-height: min(70vh, 560px); overflow-y: auto; }
.dossier-bandeau-liste a.actif[b-8groy5ig49] { background: var(--orbite-bleu-pale); color: var(--orbite-accent-texte); font-weight: 600; }
.dossier-bandeau-liste a.sous[b-8groy5ig49] { padding-left: 34px; }
.dossier-bandeau-liste .dossier-nav-nouveau[b-8groy5ig49] { margin-left: auto; }
.dossier-bandeau-liste-titre[b-8groy5ig49] {
    padding: 8px 14px 2px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--orbite-texte-secondaire);
}

/* Rail : « En haut » et « Replier » sur une même ligne, discrets. */
.dossier-nav-outils[b-8groy5ig49] { display: flex; align-items: center; justify-content: space-between; gap: 4px; padding: 0 0 4px; }
.dossier-nav-outils .dossier-nav-reduire[b-8groy5ig49] { margin-left: auto; padding: 2px 10px; font-size: 12px; }
.dossier-nav-bascule[b-8groy5ig49] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 6px 2px 14px;
    border: 0;
    background: none;
    color: var(--orbite-texte-secondaire);
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}
.dossier-nav-bascule:hover[b-8groy5ig49] { color: var(--orbite-texte); }
.dossier-nav-bascule:focus-visible[b-8groy5ig49] { outline: 2px solid var(--orbite-focus); outline-offset: -2px; }

@media (max-width: 899px) {
    .dossier-bandeau[b-8groy5ig49] { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .dossier-bandeau-item[b-8groy5ig49]  .dossier-bandeau-chevron { transition: none; }
}

@media print {
    .dossier-bandeau[b-8groy5ig49] { display: none !important; }
}

/* Lot E7 des sites : « Transférer vers un autre site… », une action (bouton) dans le groupe Contrôle du rail. */
.dossier-nav-action[b-8groy5ig49] { width: 100%; border-top: 0; border-right: 0; border-bottom: 0; background: transparent; font: inherit; text-align: left; cursor: pointer; }

/* Lot 34 (pi3) : les bascules de l'en-tête du dossier (« Informations », « Trier par badges » de la page Information),
   des DxButton secondaires en contour ; enfoncées (aria-pressed), la teinte de l'accent, comme les bascules de la
   visionneuse (le « Contained » secondaire de Fluent reste blanc : l'état ne se voyait pas). Une seule règle pour les deux. */
.dossier-entete-actions[b-8groy5ig49]  .dxbl-btn.orbite-bascule[aria-pressed="true"],
.dossier-entete-actions[b-8groy5ig49]  .dxbl-btn.orbite-bascule[aria-pressed="true"]:hover {
    background: var(--orbite-bleu-pale);
    color: var(--orbite-accent-texte);
    border-color: color-mix(in srgb, var(--orbite-accent) 35%, transparent);
}

/*
  Barre de sections à icônes (Docs/Plan-Mobile.md, lot M2, 5 novembre 2026) : téléphone et tablette (sous 900 px) et
  toujours dans la coquille mobile (.dossier-cadre.mobile). Remplace la liste déroulante native. Une puce par section de
  premier niveau, défilement horizontal au doigt (barre de défilement cachée), la courante en accent et ramenée au centre
  par js/orbite.js (orbite.barre.centrer) ; « Toutes » ouvre une feuille avec tout le rail. Sur grand écran en coquille
  bureau : cachée (le rail ou le bandeau font le travail).
*/
.dossier-barre[b-8groy5ig49] {
    display: none;
    align-items: stretch;
    gap: 4px;
    margin: 0 0 12px 0;
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon-carte);
    overflow: hidden;
}

.dossier-barre-defile[b-8groy5ig49] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: stretch;
    gap: 2px;
    padding: 4px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.dossier-barre-defile[b-8groy5ig49]::-webkit-scrollbar { display: none; }

.dossier-barre-item[b-8groy5ig49], .dossier-barre-toutes[b-8groy5ig49] {
    flex: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    min-width: 64px;
    min-height: 52px;
    padding: 4px 8px;
    border: 0;
    border-radius: var(--orbite-rayon);
    background: transparent;
    color: var(--orbite-texte-secondaire);
    font: inherit;
    font-size: 11px;
    line-height: 1.1;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    scroll-snap-align: center;
    position: relative;
    -webkit-tap-highlight-color: transparent;
}

.dossier-barre-item.actif[b-8groy5ig49] { color: var(--orbite-accent-texte); background: var(--orbite-bleu-pale); font-weight: 600; }
.dossier-barre-item:active[b-8groy5ig49], .dossier-barre-toutes:active[b-8groy5ig49] { background: var(--orbite-fond-discret); }
.dossier-barre-item:focus-visible[b-8groy5ig49], .dossier-barre-toutes:focus-visible[b-8groy5ig49] { outline: 2px solid var(--orbite-focus); outline-offset: -2px; }
.dossier-barre-item .dossier-nav-nouveau[b-8groy5ig49] { position: absolute; top: 2px; right: 4px; margin: 0; min-width: 16px; line-height: 16px; font-size: 10px; }

.dossier-barre-separateur[b-8groy5ig49] { flex: none; width: 1px; margin: 10px 2px; background: var(--orbite-bordure-discrete); }

.dossier-barre-toutes[b-8groy5ig49] { border-left: 1px solid var(--orbite-bordure-discrete); border-radius: 0; margin: 4px 0; }

/* La feuille « Toutes » : tout le rail par groupes, au-dessus de la barre du bas de la coquille mobile (sa hauteur est
   dans --mobile-barre-bas ; 0 en coquille bureau). */
.dossier-feuille-voile[b-8groy5ig49] { position: fixed; inset: 0; z-index: 1090; background: rgba(0, 0, 0, .35); }

.dossier-feuille[b-8groy5ig49] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: calc(var(--mobile-barre-bas, 0px) + env(safe-area-inset-bottom, 0px));
    z-index: 1100;
    max-height: calc(100vh - var(--orbite-entete-hauteur) - var(--mobile-barre-bas, 0px) - 24px);
    max-height: calc(100dvh - var(--orbite-entete-hauteur) - var(--mobile-barre-bas, 0px) - 24px);
    overflow-y: auto;
    padding: 6px 8px 12px 8px;
    box-sizing: border-box;
    background: var(--orbite-fond-surface);
    color: var(--orbite-texte);
    border-radius: 14px 14px 0 0;
    box-shadow: 0 -8px 24px rgba(0, 0, 0, .25);
    animation: dossier-feuille-monte-b-8groy5ig49 .18s ease-out;
}

@keyframes dossier-feuille-monte-b-8groy5ig49 {
    from { transform: translateY(24px); opacity: 0; }
    to { transform: none; opacity: 1; }
}

.dossier-feuille-poignee[b-8groy5ig49] { width: 36px; height: 4px; margin: 2px auto 8px auto; border-radius: 2px; background: var(--orbite-bordure); }
.dossier-feuille-groupe[b-8groy5ig49] { padding: 4px 0 6px 0; border-top: 1px solid var(--orbite-bordure-discrete); }
.dossier-feuille-groupe:first-of-type[b-8groy5ig49] { border-top: 0; }
.dossier-feuille-titre[b-8groy5ig49] { padding: 8px 12px 4px 12px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--orbite-texte-secondaire); }

.dossier-feuille-item[b-8groy5ig49] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 44px;
    padding: 0 12px;
    border: 0;
    border-radius: var(--orbite-rayon);
    background: transparent;
    color: var(--orbite-texte);
    font: inherit;
    font-size: 15px;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
}

.dossier-feuille-item.sous[b-8groy5ig49] { padding-left: 36px; font-size: 14px; }
.dossier-feuille-item:active[b-8groy5ig49] { background: var(--orbite-fond-discret); }
.dossier-feuille-item.actif[b-8groy5ig49] { color: var(--orbite-accent-texte); background: var(--orbite-bleu-pale); font-weight: 600; }
.dossier-feuille-item .dossier-nav-nouveau[b-8groy5ig49] { margin-left: auto; }

/* Quand la barre sert : sous 900 px, ou toujours en coquille mobile (même sur une fenêtre large). */
@media (max-width: 899px) {
    .dossier-barre[b-8groy5ig49] { display: flex; }
}
.dossier-cadre.mobile .dossier-barre[b-8groy5ig49] { display: flex; }
.dossier-cadre.mobile .dossier-gauche[b-8groy5ig49], .dossier-cadre.mobile .dossier-bandeau[b-8groy5ig49] { display: none; }
.dossier-cadre.mobile[b-8groy5ig49] { flex-direction: column; gap: 0; }
.dossier-cadre.mobile .dossier-droite[b-8groy5ig49] { width: 100%; }

/* L'en-tête compact (coquille mobile, et sous 900 px en coquille bureau) : les boutons des panneaux latéraux disparaissent
   (Informations et Client sont des sections de la barre) ; les actions de la page passent sous le nom, sur toute la
   largeur. Les boutons DevExpress ne portent pas l'attribut de portée : ::deep. */
.dossier-entete.compact[b-8groy5ig49]  .dossier-bouton-informations, .dossier-entete.compact[b-8groy5ig49]  .dossier-bouton-client { display: none; }
.dossier-entete.compact .dossier-entete-actions[b-8groy5ig49] { flex-basis: 100%; }
@media (max-width: 899px) {
    .dossier-entete[b-8groy5ig49]  .dossier-bouton-informations, .dossier-entete[b-8groy5ig49]  .dossier-bouton-client { display: none; }
    .dossier-entete .dossier-entete-actions[b-8groy5ig49] { flex-basis: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .dossier-feuille[b-8groy5ig49] { animation: none; }
}
/* /Components/Shared/EtiquettesDocument.razor.rz.scp.css */
/* Fenêtre « Étiquettes » d'un document : la liste plate à cocher, indentée selon l'arbre. */
.etiquettes-liste[b-ngcjhxhtj9] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-height: 60vh;
    overflow-y: auto;
}

.etiquettes-choix[b-ngcjhxhtj9] {
    display: flex;
    align-items: center;
}
/* /Components/Shared/EtiquettesFiltre.razor.rz.scp.css */
/* Le filtre des étiquettes : une rangée de badges pleins (comme les badges de l'Information), qui enveloppe. */
.etiquettes-filtre[b-jchpk4bmbw] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 8px;
    margin: 0 0 12px;
}

.etiquettes-filtre-titre[b-jchpk4bmbw] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: var(--orbite-texte-secondaire);
    margin-right: 4px;
}

.etiquette-puce[b-jchpk4bmbw] {
    --puce: var(--orbite-fond-discret);
    --puce-texte: var(--orbite-texte);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 10px;
    border: 0;
    border-radius: 999px;
    background: var(--puce);
    color: var(--puce-texte);
    font: inherit;
    font-size: 13px;
    font-weight: 600;
    line-height: 20px;
    cursor: pointer;
    white-space: nowrap;
}

.etiquette-puce--neutre[b-jchpk4bmbw] { box-shadow: inset 0 0 0 1px var(--orbite-bordure); }
.etiquette-puce:hover[b-jchpk4bmbw] { filter: brightness(1.08); }
.etiquette-puce:focus-visible[b-jchpk4bmbw] { outline: 2px solid var(--orbite-accent-texte); outline-offset: 2px; }

/* La puce choisie : un anneau de la couleur du texte de la page, bien visible sur toutes les couleurs. */
.etiquette-puce--choisie[b-jchpk4bmbw] { box-shadow: 0 0 0 2px var(--orbite-fond-surface), 0 0 0 4px var(--orbite-texte); }
.etiquette-puce--neutre.etiquette-puce--choisie[b-jchpk4bmbw] { box-shadow: inset 0 0 0 1px var(--orbite-bordure), 0 0 0 2px var(--orbite-fond-surface), 0 0 0 4px var(--orbite-texte); }

/* Les autres quand un filtre est actif : atténuées, encore cliquables. */
.etiquette-puce--eteinte[b-jchpk4bmbw] { opacity: .45; }
.etiquette-puce--eteinte:hover[b-jchpk4bmbw] { opacity: .8; }

.etiquette-puce--sans[b-jchpk4bmbw] { font-style: italic; }

.etiquette-puce-compte[b-jchpk4bmbw] {
    min-width: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--puce-texte) 18%, transparent);
    font-size: 11px;
    text-align: center;
}

.etiquettes-filtre-grouper[b-jchpk4bmbw] { margin-left: auto; font-size: 13px; }
/* /Components/Shared/EtiquettesLigne.razor.rz.scp.css */
/* Badges des étiquettes : pleins, de la couleur de l'étiquette (comme les badges de l'Information, info.css .badge). */
.etiquette-badge[b-1gp58azki9] {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 1px 8px;
    border: 0;
    border-radius: 999px;
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    line-height: 18px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.etiquette-badge--neutre[b-1gp58azki9] {
    background: var(--orbite-fond-discret);
    color: var(--orbite-texte-secondaire);
    box-shadow: inset 0 0 0 1px var(--orbite-bordure);
}

.etiquette-badge--bouton[b-1gp58azki9] { cursor: pointer; }
.etiquette-badge--bouton:hover[b-1gp58azki9] { filter: brightness(1.08); box-shadow: 0 0 0 2px var(--orbite-bordure); }
.etiquette-badge--bouton:focus-visible[b-1gp58azki9] { outline: 2px solid var(--orbite-accent-texte); outline-offset: 1px; }
/* /Components/Shared/FriseDossier.razor.rz.scp.css */
/* La ligne du temps du dossier (FriseDossier.razor, 26 octobre 2026) : une grille de rangées fines (graduation,
   séjours, étapes), une colonne d'icônes de 22 px à gauche, et un fond commun (activité, traits, repères).
   Jetons seulement ; les seules couleurs propres sont celles des données (programmes). */

.frise-dossier[b-lhqky7l4ex] {
    container-type: inline-size;
    container-name: frise;
    font-size: 12px;
}

.frise-entete[b-lhqky7l4ex] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 4px 12px;
    margin-bottom: 6px;
}

.frise-legende[b-lhqky7l4ex] {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 14px;
    color: var(--orbite-texte-secondaire);
}

.frise-legende > span[b-lhqky7l4ex] { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }

.frise-cle[b-lhqky7l4ex] { display: inline-block; width: 14px; height: 8px; border-radius: 3px; }
.frise-cle--sejour[b-lhqky7l4ex] { background: var(--orbite-bleu-pale); border: 1px solid var(--orbite-accent); }
.frise-cle--etape[b-lhqky7l4ex] { background: var(--orbite-fond-discret); border: 1px solid var(--orbite-bordure); }
.frise-cle--activite[b-lhqky7l4ex] { background: color-mix(in srgb, var(--orbite-accent) 22%, transparent); }
.frise-cle--creation[b-lhqky7l4ex] { width: 8px; height: 8px; border-radius: 1px; transform: rotate(45deg); background: var(--orbite-texte-secondaire); margin: 0 3px; }

.frise-portee[b-lhqky7l4ex] {
    display: inline-flex;
    border: 1px solid var(--orbite-bordure);
    border-radius: var(--orbite-rayon);
    overflow: hidden;
}

.frise-portee button[b-lhqky7l4ex] {
    border: 0;
    background: transparent;
    color: var(--orbite-texte-secondaire);
    font: inherit;
    padding: 2px 10px;
    cursor: pointer;
}

.frise-portee button + button[b-lhqky7l4ex] { border-left: 1px solid var(--orbite-bordure); }
.frise-portee button:hover[b-lhqky7l4ex] { background: var(--orbite-survol); }
.frise-portee button.actif[b-lhqky7l4ex] { background: var(--orbite-bleu-pale); color: var(--orbite-accent-texte); font-weight: 600; }

.frise-grille[b-lhqky7l4ex] {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    row-gap: 3px;
    position: relative;
}

.frise-etiquette[b-lhqky7l4ex] {
    grid-column: 1;
    display: flex;
    align-items: center;
    color: var(--orbite-texte-secondaire);
}

.frise-piste[b-lhqky7l4ex] {
    grid-column: 2;
    position: relative;
    min-width: 0;
}

.frise-fond[b-lhqky7l4ex] {
    grid-column: 2;
    grid-row: 1 / -1;
    position: relative;
    pointer-events: none;
}

.frise-fond > span[b-lhqky7l4ex] { position: absolute; }

.frise-activite[b-lhqky7l4ex] {
    bottom: 0;
    background: color-mix(in srgb, var(--orbite-accent) 16%, transparent);
    border-top: 1px solid color-mix(in srgb, var(--orbite-accent) 35%, transparent);
    pointer-events: auto;
}

.frise-trait[b-lhqky7l4ex] { top: 16px; bottom: 0; width: 0; border-left: 1px solid var(--orbite-bordure-discrete); }
.frise-trait.annee[b-lhqky7l4ex] { border-left-color: var(--orbite-bordure); }
.frise-creation[b-lhqky7l4ex] { top: 10px; bottom: 0; width: 0; border-left: 1px dotted var(--orbite-texte-secondaire); }
.frise-aujourdhui[b-lhqky7l4ex] { top: 0; bottom: 0; width: 0; border-left: 2px dashed var(--orbite-accent); }

/* La graduation (rangée 1). */
.frise-axe[b-lhqky7l4ex] { white-space: nowrap; }

.frise-graduation[b-lhqky7l4ex] {
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    font-size: 11px;
    color: var(--orbite-texte-secondaire);
}

.frise-graduation.annee[b-lhqky7l4ex] { color: var(--orbite-texte); font-weight: 600; }

.frise-losange[b-lhqky7l4ex] {
    position: absolute;
    top: 10px;
    width: 8px;
    height: 8px;
    margin-left: -4px;
    transform: rotate(45deg);
    background: var(--orbite-texte-secondaire);
    border-radius: 1px;
    cursor: help;
}

.frise-aujourdhui-texte[b-lhqky7l4ex] {
    position: absolute;
    top: 0;
    padding: 0 4px;
    margin-left: 4px;
    font-size: 11px;
    font-weight: 600;
    color: var(--orbite-accent-texte);
    background: var(--orbite-fond-surface);
    border-radius: 3px;
}

.frise-aujourdhui-texte.a-gauche[b-lhqky7l4ex] { transform: translateX(-100%); margin-left: -4px; }

/* Les barres (séjours, étapes). */
.frise-barre[b-lhqky7l4ex] {
    position: absolute;
    top: 1px;
    bottom: 1px;
    min-width: 4px;
    padding: 0 5px;
    box-sizing: border-box;
    border-radius: 4px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 11px;
    line-height: 16px;
    text-decoration: none;
}

a.frise-barre:hover[b-lhqky7l4ex] { filter: brightness(1.06); box-shadow: 0 0 0 1px var(--orbite-accent); }

.frise-barre--sejour[b-lhqky7l4ex] {
    background: var(--orbite-bleu-pale);
    border: 1px solid color-mix(in srgb, var(--orbite-accent) 55%, transparent);
    color: var(--orbite-texte);
}

.frise-barre--etape[b-lhqky7l4ex] {
    background: var(--orbite-fond-discret);
    border: 1px solid var(--orbite-bordure);
    color: var(--orbite-texte);
}

.frise-barre--couleur[b-lhqky7l4ex] {
    background: var(--frise-couleur);
    border-color: color-mix(in srgb, var(--frise-couleur) 70%, black);
    color: var(--frise-texte);
}

/* En cours : le bout droit s'efface (la barre continue). */
.frise-barre--en-cours[b-lhqky7l4ex] { border-top-right-radius: 0; border-bottom-right-radius: 0; border-right-style: dashed; }

.frise-vide[b-lhqky7l4ex] { margin-top: 6px; color: var(--orbite-texte-secondaire); }

/* Étroit (téléphone, colonne) : une date sur deux, légende plus courte. */
@container frise (max-width: 560px) {
    .frise-graduation.impaire[b-lhqky7l4ex], .frise-graduation.pres[b-lhqky7l4ex] { display: none; }
    .frise-barre[b-lhqky7l4ex] { font-size: 10px; padding: 0 3px; }
}
/* /Components/Shared/Historique/DiffAffichage.razor.rz.scp.css */
.histo-diff[b-xqb78n6wpb] {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    line-height: 1.5;
}

.histo-diff ins[b-xqb78n6wpb] {
    text-decoration: none;
    background-color: light-dark(#c9f2c9, #1f5a2e);
    color: inherit;
    border-radius: 2px;
}

.histo-diff del[b-xqb78n6wpb] {
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    background-color: light-dark(#fbd5d5, #5c2424);
    color: inherit;
    border-radius: 2px;
}
/* /Components/Shared/Historique/HistoriqueFenetre.razor.rz.scp.css */
/* Fenêtre « Historique » : couleurs du thème (variables de site.css), lisible en clair et en sombre. */

.histo-cadre[b-cktv6ja3du] {
    display: flex;
    gap: 12px;
    height: 100%;
    min-height: 0;
}

.histo-liste[b-cktv6ja3du] {
    flex: 0 0 280px;
    overflow-y: auto;
    border: 1px solid var(--orbite-bordure);
    display: flex;
    flex-direction: column;
}

.histo-version[b-cktv6ja3du] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1px;
    text-align: left;
    padding: 6px 8px;
    border: 0;
    border-bottom: 1px solid var(--orbite-bordure);
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.histo-version:hover[b-cktv6ja3du] { background: var(--orbite-survol); }

.histo-version.choisie[b-cktv6ja3du] {
    background: var(--orbite-courant);
    box-shadow: inset 3px 0 0 currentColor;
}

.histo-version-tete[b-cktv6ja3du] { display: flex; gap: 6px; align-items: baseline; flex-wrap: wrap; }
.histo-numero[b-cktv6ja3du] { font-weight: 600; }
.histo-date[b-cktv6ja3du], .histo-qui[b-cktv6ja3du] { font-size: 0.88em; opacity: 0.85; }

.histo-marque[b-cktv6ja3du] {
    font-size: 0.78em;
    padding: 0 5px;
    border: 1px solid var(--orbite-bordure);
    border-radius: 8px;
    opacity: 0.9;
}

.histo-marque.actuelle[b-cktv6ja3du] { font-weight: 600; }

.histo-detail[b-cktv6ja3du] {
    flex: 1 1 auto;
    min-width: 0;
    overflow-y: auto;
}

.histo-detail-tete[b-cktv6ja3du] { margin-bottom: 2px; }
.histo-detail-sous[b-cktv6ja3du] { opacity: 0.85; margin-bottom: 6px; }

.histo-note[b-cktv6ja3du] {
    background: var(--orbite-fond-discret);
    border-left: 3px solid var(--orbite-bordure);
    padding: 4px 8px;
    margin: 4px 0 8px 0;
    font-size: 0.92em;
}

.histo-vide[b-cktv6ja3du] { opacity: 0.8; font-style: italic; }

.histo-table[b-cktv6ja3du] {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.histo-table th[b-cktv6ja3du], .histo-table td[b-cktv6ja3du] {
    border: 1px solid var(--orbite-bordure);
    padding: 4px 6px;
    vertical-align: top;
    text-align: left;
}

.histo-table th[b-cktv6ja3du] { background: var(--orbite-fond-discret); font-weight: 600; }
.histo-colonne[b-cktv6ja3du] { font-weight: 600; overflow-wrap: anywhere; }
.histo-valeur[b-cktv6ja3du] { white-space: pre-wrap; overflow-wrap: anywhere; }
.histo-valeur-diff[b-cktv6ja3du] { overflow-wrap: anywhere; }

.histo-erreur[b-cktv6ja3du] {
    border: 1px solid light-dark(#cc3300, #ff7a5c);
    color: light-dark(#a32900, #ff9c85);
    background: color-mix(in srgb, light-dark(#cc3300, #ff7a5c) 10%, transparent);
    padding: 6px 10px;
    margin: 0 0 8px 0;
}
.histo-avant[b-cktv6ja3du] { opacity: 0.85; }

@media (max-width: 700px) {
    .histo-cadre[b-cktv6ja3du] { flex-direction: column; }
    .histo-liste[b-cktv6ja3du] { flex: 0 0 auto; max-height: 35vh; }
}

.histo-diff-legende[b-cktv6ja3du] { font-size: 0.8em; opacity: 0.8; margin-bottom: 2px; white-space: normal; }
.histo-diff-legende ins[b-cktv6ja3du] { text-decoration: none; background-color: light-dark(#c9f2c9, #1f5a2e); padding: 0 2px; }
.histo-diff-legende del[b-cktv6ja3du] { background-color: light-dark(#fbd5d5, #5c2424); padding: 0 2px; }
/* /Components/Shared/IconeTriBadges.razor.rz.scp.css */
/* Lot 34 : flèche de tri + étiquette, serrées (1 px) pour se lire comme une seule icône. */
.icone-tri-badges[b-2jhqhvfqui] {
    display: inline-flex;
    align-items: center;
    gap: 1px;
    line-height: 0;
}
/* /Components/Shared/LigneTemps/LigneTemps.razor.rz.scp.css */
/* La ligne du temps générique (LigneTemps.razor, 28 octobre 2026). Une zone qui défile dans les deux sens : en-tête
   (graduation) collé en haut, libellés collés à gauche, rangées de 28 px virtualisées, et un fond collé (comptes
   empilés, traits, aujourd'hui) à la hauteur de la zone visible. Jetons seulement ; les seules couleurs propres sont
   celles des données (programmes). */

.lt[b-h2rzg1bjdw] {
    --lt-gauche: 220px;
    --lt-min-temps: 640px;
    --lt-entete: 30px;
    --lt-rangee: 28px;
    --lt-vue: max(320px, calc(100vh - 300px));
    font-size: 12px;
}

.lt-legende[b-h2rzg1bjdw] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    margin-bottom: 8px;
    color: var(--orbite-texte-secondaire);
}

.lt-legende > span[b-h2rzg1bjdw], .lt-legende[b-h2rzg1bjdw]  > span { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }

.lt-cle[b-h2rzg1bjdw], .lt-legende[b-h2rzg1bjdw]  .lt-cle { display: inline-block; flex: none; width: 14px; height: 9px; border-radius: 3px; border: 1px solid color-mix(in srgb, var(--orbite-texte) 20%, transparent); }
.lt-cle--colonnes[b-h2rzg1bjdw] { background: color-mix(in srgb, var(--orbite-texte-secondaire) 30%, transparent); height: 12px; width: 8px; border-radius: 1px; }
.lt-legende[b-h2rzg1bjdw]  .lt-cle--marque { background: var(--orbite-sortie-fond); height: 5px; border: 0; }

/* Lot 27 (les places) : la période surlignée, les places et plages libres, les places libres en partie. */
.lt-cle--periode[b-h2rzg1bjdw] { background: color-mix(in srgb, var(--orbite-accent) 22%, transparent); border: 1px dashed var(--orbite-accent); height: 12px; }
.lt-cle--libre[b-h2rzg1bjdw], .lt-legende[b-h2rzg1bjdw]  .lt-cle--libre { background: color-mix(in srgb, var(--orbite-lit-libre) 22%, transparent); border: 1px dashed var(--orbite-lit-libre); }
.lt-cle--partiel[b-h2rzg1bjdw], .lt-legende[b-h2rzg1bjdw]  .lt-cle--partiel { background: color-mix(in srgb, var(--orbite-lit-depart) 22%, transparent); border: 1px solid var(--orbite-lit-depart); }
.lt-legende[b-h2rzg1bjdw]  .lt-cle--confidentiel { background: var(--orbite-fond-discret); border: 1px dashed var(--orbite-texte-secondaire); }

.lt-vide[b-h2rzg1bjdw] { padding: 16px 4px; color: var(--orbite-texte-secondaire); }

.lt-vue[b-h2rzg1bjdw] {
    position: relative;
    max-height: var(--lt-vue);
    overflow: auto;
    border: 1px solid var(--orbite-bordure);
    border-radius: 8px;
    background: var(--orbite-fond-surface);
    overscroll-behavior: contain;
}

.lt-vue:focus-visible[b-h2rzg1bjdw] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }

.lt-contenu[b-h2rzg1bjdw] {
    position: relative;
    min-width: calc(var(--lt-gauche) + var(--lt-min-temps));
}

/* L'en-tête collé. */
.lt-entete[b-h2rzg1bjdw] {
    position: sticky;
    top: 0;
    z-index: 4;
    display: grid;
    grid-template-columns: var(--lt-gauche) minmax(0, 1fr);
    height: var(--lt-entete);
    background: var(--orbite-fond-discret);
    border-bottom: 1px solid var(--orbite-bordure);
}

.lt-coin[b-h2rzg1bjdw] {
    position: sticky;
    left: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    padding: 0 10px;
    font-weight: 600;
    color: var(--orbite-texte-secondaire);
    background: var(--orbite-fond-discret);
    border-right: 1px solid var(--orbite-bordure);
}

.lt-axe[b-h2rzg1bjdw] { position: relative; white-space: nowrap; overflow: hidden; }

.lt-graduation[b-h2rzg1bjdw] {
    position: absolute;
    top: 8px;
    transform: translateX(-50%);
    font-size: 11px;
    color: var(--orbite-texte-secondaire);
}

.lt-graduation.annee[b-h2rzg1bjdw] { color: var(--orbite-texte); font-weight: 600; }

.lt-aujourdhui-texte[b-h2rzg1bjdw] {
    position: absolute;
    top: 7px;
    margin-left: 4px;
    padding: 0 4px;
    font-size: 11px;
    font-weight: 600;
    color: var(--orbite-accent-texte);
    background: var(--orbite-fond-surface);
    border-radius: 3px;
}

.lt-aujourdhui-texte.a-gauche[b-h2rzg1bjdw] { transform: translateX(-100%); margin-left: -4px; }

/* Le fond collé : il occupe la zone visible sans prendre de place (marge négative égale à sa hauteur). */
.lt-fond[b-h2rzg1bjdw] {
    position: sticky;
    top: var(--lt-entete);
    z-index: 0;
    display: grid;
    grid-template-columns: var(--lt-gauche) minmax(0, 1fr);
    height: min(calc(var(--lt-vue) - var(--lt-entete) - 2px), var(--lt-contenu));
    margin-bottom: calc(-1 * min(calc(var(--lt-vue) - var(--lt-entete) - 2px), var(--lt-contenu)));
}

.lt-fond-temps[b-h2rzg1bjdw] { grid-column: 2; position: relative; }
.lt-fond-temps > span[b-h2rzg1bjdw] { position: absolute; top: 0; bottom: 0; width: 0; }

.lt-trait[b-h2rzg1bjdw] { border-left: 1px solid var(--orbite-bordure-discrete); }
.lt-trait.annee[b-h2rzg1bjdw] { border-left-color: var(--orbite-bordure); }
.lt-aujourdhui[b-h2rzg1bjdw] { z-index: 1; border-left: 2px dashed var(--orbite-accent); }

.lt-colonnes[b-h2rzg1bjdw] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .24; }
.lt-colonne-cible[b-h2rzg1bjdw] { fill: transparent; }
.lt-colonnes g:hover .lt-colonne-cible[b-h2rzg1bjdw] { fill: var(--orbite-texte); fill-opacity: .12; }

/* Les rangées : seules les barres, les marques et les libellés reçoivent la souris ; le reste laisse passer vers
   le fond (l'infobulle des colonnes). */
.lt-rangee[b-h2rzg1bjdw] {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: var(--lt-gauche) minmax(0, 1fr);
    height: var(--lt-rangee);
    box-sizing: border-box;
    border-bottom: 1px solid color-mix(in srgb, var(--orbite-bordure-discrete) 70%, transparent);
    pointer-events: none;
}

.lt-libelle[b-h2rzg1bjdw] {
    position: sticky;
    left: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    padding: 0 10px;
    background: var(--orbite-fond-surface);
    border-right: 1px solid var(--orbite-bordure);
    pointer-events: auto;
}

.lt-rangee:hover .lt-libelle[b-h2rzg1bjdw] { background: var(--orbite-survol); }

.lt-libelle-texte[b-h2rzg1bjdw] { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: var(--orbite-texte); text-decoration: none; }
a.lt-libelle-texte:hover[b-h2rzg1bjdw] { color: var(--orbite-lien); text-decoration: underline; }

.lt-rangee--groupe .lt-libelle[b-h2rzg1bjdw] { background: var(--orbite-fond-discret); font-weight: 600; }
.lt-rangee--groupe[b-h2rzg1bjdw] { background: color-mix(in srgb, var(--orbite-fond-discret) 55%, transparent); }
.lt-compte[b-h2rzg1bjdw] { margin-left: auto; color: var(--orbite-texte-secondaire); font-weight: 400; }

.lt-temps[b-h2rzg1bjdw] { position: relative; min-width: 0; }

.lt-barre[b-h2rzg1bjdw] {
    position: absolute;
    top: 5px;
    bottom: 5px;
    min-width: 4px;
    padding: 0 5px;
    box-sizing: border-box;
    border-radius: 4px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 11px;
    line-height: 16px;
    text-decoration: none;
    background: var(--orbite-bleu-pale);
    border: 1px solid color-mix(in srgb, var(--orbite-accent) 55%, transparent);
    color: var(--orbite-texte);
    pointer-events: auto;
}

.lt-barre--couleur[b-h2rzg1bjdw] {
    background: var(--lt-couleur);
    border-color: color-mix(in srgb, var(--lt-couleur) 70%, black);
    color: var(--lt-texte);
}

a.lt-barre:hover[b-h2rzg1bjdw] { filter: brightness(1.06); box-shadow: 0 0 0 1px var(--orbite-accent); }

/* Fin ouverte : le bout droit s'efface ; commencé avant la période : le bout gauche aussi. */
.lt-barre--ouverte[b-h2rzg1bjdw] { border-top-right-radius: 0; border-bottom-right-radius: 0; border-right-style: dashed; }
.lt-barre--avant[b-h2rzg1bjdw] { border-top-left-radius: 0; border-bottom-left-radius: 0; border-left-style: dashed; }
.lt-barre--apres[b-h2rzg1bjdw] { border-top-right-radius: 0; border-bottom-right-radius: 0; border-right-style: dashed; }

/* Lot 27 : une plage libre (une place sans séjour) : vert pâle, bord pointillé, sous les barres de données. */
.lt-barre--libre[b-h2rzg1bjdw] {
    z-index: 0;
    top: 7px;
    bottom: 7px;
    line-height: 12px;
    font-size: 10px;
    font-weight: 600;
    background: color-mix(in srgb, var(--orbite-lit-libre) 16%, transparent);
    border: 1px dashed var(--orbite-lit-libre);
    color: var(--orbite-lit-libre);
}

/* Lot 27 : la période surlignée (bande pâle sous les rangées et dans l'en-tête). */
.lt-fond-temps > .lt-periode[b-h2rzg1bjdw] {
    background: color-mix(in srgb, var(--orbite-accent) 10%, transparent);
    border-left: 1px dashed color-mix(in srgb, var(--orbite-accent) 70%, transparent);
    border-right: 1px dashed color-mix(in srgb, var(--orbite-accent) 70%, transparent);
    box-sizing: border-box;
}

.lt-periode-entete[b-h2rzg1bjdw] {
    position: absolute;
    top: 0;
    bottom: 0;
    background: color-mix(in srgb, var(--orbite-accent) 16%, transparent);
    border-bottom: 3px solid var(--orbite-accent);
    box-sizing: border-box;
}

/* Lot 27 : l'état d'une ligne (une place libre en vert gras, comme la liste ; libre en partie en orange). */
.lt-rangee--libre .lt-libelle-texte[b-h2rzg1bjdw] { color: var(--orbite-lit-libre); font-weight: 600; }
.lt-rangee--libre .lt-libelle[b-h2rzg1bjdw] { box-shadow: inset 3px 0 0 var(--orbite-lit-libre); }
.lt-rangee--partiel .lt-libelle[b-h2rzg1bjdw] { box-shadow: inset 3px 0 0 var(--orbite-lit-depart); }

/* Les marques secondaires (sorties) : un trait plus mince, par-dessus la barre. */
.lt-marque[b-h2rzg1bjdw] {
    position: absolute;
    z-index: 2;
    top: 10px;
    bottom: 10px;
    min-width: 5px;
    border-radius: 3px;
    background: var(--orbite-sortie-fond);
    box-shadow: 0 0 0 1px var(--orbite-fond-surface);
    pointer-events: auto;
}

.lt-marque--ouverte[b-h2rzg1bjdw] { border-top-right-radius: 0; border-bottom-right-radius: 0; }
a.lt-marque:hover[b-h2rzg1bjdw] { box-shadow: 0 0 0 2px var(--orbite-accent); }

/* Téléphone : libellés plus étroits ; la zone du temps garde sa largeur minimale et défile. */
@media (max-width: 700px) {
    .lt[b-h2rzg1bjdw] { --lt-gauche: 128px; --lt-min-temps: 560px; --lt-vue: max(300px, calc(100vh - 260px)); }
    .lt-libelle[b-h2rzg1bjdw] { padding: 0 6px; }
}

@media (prefers-reduced-motion: reduce) {
    a.lt-barre:hover[b-h2rzg1bjdw] { filter: none; }
}
/* /Components/Shared/LigneTemps/LigneTempsPlaces.razor.rz.scp.css */
/* La ligne du temps des places (LigneTempsPlaces.razor, lot 27) : seulement le résumé au-dessus ; le reste est
   celui de LigneTemps. */

.ltp-resume[b-3oyp22h2t4] {
    margin: 0 0 8px;
    font-size: 13px;
    color: var(--orbite-texte-secondaire);
}

.ltp-libre[b-3oyp22h2t4] { color: var(--orbite-lit-libre); }
/* /Components/Shared/Rapports/RapportVisionneuse.razor.rz.scp.css */
/* Plein écran à 8 px des bords, comme Pages/Dossier/Rapport.aspx. */
.rapport-visionneuse[b-toexa71uc9] {
    position: fixed;
    top: 8px;
    right: 8px;
    bottom: 8px;
    left: 8px;
}

.rapport-visionneuse[b-toexa71uc9]  .dxbrv-report-viewer,
.rapport-visionneuse[b-toexa71uc9]  > * {
    height: 100%;
    width: 100%;
}

.rapport-message[b-toexa71uc9] {
    margin: 24px;
}
/* /Components/Shared/Regles/RegleDialogue.razor.rz.scp.css */
.regle-intro[b-urfj7mmwgo] { margin: 0 0 10px; color: var(--orbite-texte); }

.regle-table[b-urfj7mmwgo] { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.regle-table th[b-urfj7mmwgo], .regle-table td[b-urfj7mmwgo] { padding: 5px 8px; border-bottom: 1px solid var(--orbite-bordure); text-align: left; vertical-align: top; }
.regle-table th[b-urfj7mmwgo] { color: var(--orbite-texte-attenue); font-weight: 600; }
.regle-case[b-urfj7mmwgo] { width: 28px; text-align: center; }
.regle-chemin[b-urfj7mmwgo] { color: var(--orbite-texte-attenue); margin-right: 4px; }
.regle-valeur[b-urfj7mmwgo] { max-width: 260px; overflow-wrap: anywhere; }
.regle-note[b-urfj7mmwgo] { color: var(--orbite-texte-attenue); font-style: italic; }
.regle-note--refus[b-urfj7mmwgo] { color: var(--orbite-danger, #b3261e); }
.regle-ligne--inerte td[b-urfj7mmwgo] { color: var(--orbite-texte-attenue); }
.regle-ligne--differente td.regle-valeur b[b-urfj7mmwgo] { color: var(--orbite-accent-texte); }
/* /Components/Shared/SaisieMedicament.razor.rz.scp.css */
/* Suggestions de la banque de médicaments, sous le champ (au-dessus du reste de la fiche). */
.saisie-medicament[b-hl7rnmqoa9] {
    position: relative;
}

.saisie-medicament-liste[b-hl7rnmqoa9] {
    position: absolute;
    z-index: 1100;
    left: 0;
    right: 0;
    min-width: 280px;
    max-height: 300px;
    overflow-y: auto;
    margin: 2px 0 0;
    padding: 2px 0;
    list-style: none;
    background: var(--orbite-fond-page, #fff);
    border: 1px solid var(--orbite-bordure-discrete, #ccc);
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
}

.saisie-medicament-liste li[b-hl7rnmqoa9] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 4px 8px;
    cursor: pointer;
}

.saisie-medicament-liste li:hover[b-hl7rnmqoa9],
.saisie-medicament-liste li.choisi[b-hl7rnmqoa9] {
    background: var(--orbite-bleu-pale, #e7f3fe);
}

.saisie-medicament-nombre[b-hl7rnmqoa9] {
    color: var(--orbite-texte-attenue, #888);
    font-size: 0.85em;
}
/* /Components/Shared/Visionneuse/RegleReprise.razor.rz.scp.css */
.regle-reprise[b-324a6rq1at] {
    padding: 6px 12px 6px 16px;
    border-bottom: 1px solid var(--orbite-bordure);
}

.regle-reprise-bouton[b-324a6rq1at] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    height: 34px;
    padding: 0 12px;
    border: 1px solid color-mix(in srgb, var(--orbite-accent) 45%, transparent);
    border-radius: 6px;
    background: var(--orbite-bleu-pale);
    color: var(--orbite-accent-texte);
    font: inherit;
    font-weight: 600;
    cursor: pointer;
}

.regle-reprise-bouton:hover[b-324a6rq1at] { background: color-mix(in srgb, var(--orbite-accent) 18%, var(--orbite-bleu-pale)); }
.regle-reprise-bouton:disabled[b-324a6rq1at] { opacity: 0.6; cursor: default; }
.regle-reprise-bouton:focus-visible[b-324a6rq1at] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }
/* /Components/Shared/Visionneuse/Visionneuse.razor.rz.scp.css */
/* La visionneuse de documents (lot 32). Hors de la coquille (CompositionLayout, cadre) : toute la fenêtre ; dans la
   coquille (.orbite-app) : la zone de travail seulement, la barre supérieure et la navigation restent visibles. */

.visionneuse[b-yugv31yx4d] {
    --visionneuse-panneau-largeur: 440px;
    position: fixed;
    inset: 0;
    z-index: 950;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: var(--orbite-fond-page);
    color: var(--orbite-texte);
    container: visionneuse / inline-size;
    outline: none;
}

.orbite-app .visionneuse[b-yugv31yx4d] {
    top: var(--orbite-entete-hauteur);
    left: var(--orbite-nav-largeur);
    border-left: 1px solid var(--orbite-bordure);
}

.orbite-app.nav-repliee .visionneuse[b-yugv31yx4d] { left: var(--orbite-nav-largeur-repliee); }
.orbite-app.menu-haut .visionneuse[b-yugv31yx4d] { left: 0; border-left: 0; }

/* Plein écran : la couche couvre toute la fenêtre (et l'API Fullscreen du navigateur, si elle est accordée, tout l'écran). */
.orbite-app .visionneuse.visionneuse--plein[b-yugv31yx4d],
.visionneuse.visionneuse--plein[b-yugv31yx4d] {
    inset: 0;
    z-index: 1040;
    border-left: 0;
}

.visionneuse:fullscreen[b-yugv31yx4d] { background: var(--orbite-fond-page); }

/* Panneau seul (sans document) : ancré à droite de la page, qui se pousse (MainLayout : panneau-lateral-ouvert). */
.visionneuse.visionneuse--panneau-seul[b-yugv31yx4d],
.orbite-app .visionneuse.visionneuse--panneau-seul[b-yugv31yx4d] {
    left: auto;
    right: 0;
    width: var(--visionneuse-panneau-largeur);
    max-width: 100%;
    background: var(--orbite-fond-surface);
    border-left: 1px solid var(--orbite-bordure);
    box-shadow: -2px 0 8px rgba(16, 24, 40, .08);
}

/* Lot 34 : le panneau à gauche (Apparence.PanneauGauche, témoin orbite-panneau-cote). Grand écran seulement : sur téléphone,
   la bascule Document / Informations remplace le côte à côte et le panneau seul prend toute la largeur.
   - À côté d'un document et en plein écran : le corps s'inverse (panneau, poignée, document).
   - Panneau seul : ancré à gauche de la zone de travail, entre la navigation et la page (pas par-dessus le menu) ; la
     page se pousse à 1400 px et plus (MainLayout.razor.css), il la couvre en tiroir en dessous. */
@media (min-width: 900px) {
    .visionneuse--gauche .visionneuse-corps[b-yugv31yx4d] { flex-direction: row-reverse; }

    .visionneuse.visionneuse--panneau-seul.visionneuse--gauche[b-yugv31yx4d] { left: 0; right: auto; }
    .orbite-app .visionneuse.visionneuse--panneau-seul.visionneuse--gauche[b-yugv31yx4d] { left: var(--orbite-nav-largeur); right: auto; }
    .orbite-app.nav-repliee .visionneuse.visionneuse--panneau-seul.visionneuse--gauche[b-yugv31yx4d] { left: var(--orbite-nav-largeur-repliee); }
    .orbite-app.menu-haut .visionneuse.visionneuse--panneau-seul.visionneuse--gauche[b-yugv31yx4d] { left: 0; }
    .visionneuse.visionneuse--panneau-seul.visionneuse--gauche[b-yugv31yx4d] {
        border-left: 1px solid var(--orbite-bordure);
        border-right: 1px solid var(--orbite-bordure);
        box-shadow: 2px 0 8px rgba(16, 24, 40, .08);
    }
    .orbite-app.menu-haut .visionneuse.visionneuse--panneau-seul.visionneuse--gauche[b-yugv31yx4d] { border-left: 0; }
}

/* Le côté ne se choisit pas sur téléphone. */
@media (max-width: 899px) {
    .visionneuse-bouton.visionneuse-cote[b-yugv31yx4d] { display: none; }
}

/* ---------- Barre ---------- */

.visionneuse-barre[b-yugv31yx4d] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 4px 8px 4px 16px;
    background: var(--orbite-fond-surface);
    border-bottom: 1px solid var(--orbite-bordure);
    box-sizing: border-box;
}

[b-yugv31yx4d] .visionneuse-icone { color: var(--orbite-accent-texte); flex: 0 0 auto; }

.visionneuse-titre[b-yugv31yx4d] {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 15px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Lot 34 : le dossier après le titre du document, plus discret. */
.visionneuse-titre-dossier[b-yugv31yx4d] { font-weight: 400; color: var(--orbite-texte-secondaire); }

.visionneuse-outils[b-yugv31yx4d] { display: flex; align-items: center; gap: 4px; flex: 0 0 auto; }

.visionneuse-bouton[b-yugv31yx4d] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    min-width: 32px;
    padding: 0 10px;
    justify-content: center;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    color: var(--orbite-texte);
    font: inherit;
    font-size: 13px;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
}

.visionneuse-bouton:hover[b-yugv31yx4d] { background: var(--orbite-survol); color: var(--orbite-texte); }
.visionneuse-bouton:focus-visible[b-yugv31yx4d], .visionneuse-bascule button:focus-visible[b-yugv31yx4d], .visionneuse-poignee:focus-visible[b-yugv31yx4d] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }
.visionneuse-bouton.actif[b-yugv31yx4d], .visionneuse-bouton[aria-pressed="true"][b-yugv31yx4d] { background: var(--orbite-bleu-pale); color: var(--orbite-accent-texte); border-color: color-mix(in srgb, var(--orbite-accent) 35%, transparent); }
.visionneuse-fermer[b-yugv31yx4d] { padding: 0; width: 36px; }

/* Bascule Document / Informations : seulement en étroit. */
.visionneuse-bascule[b-yugv31yx4d] {
    display: none;
    gap: 4px;
    padding: 6px 8px;
    background: var(--orbite-fond-surface);
    border-bottom: 1px solid var(--orbite-bordure);
}

.visionneuse-bascule button[b-yugv31yx4d] {
    flex: 1 1 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 36px;
    border: 1px solid var(--orbite-bordure);
    border-radius: 6px;
    background: transparent;
    color: var(--orbite-texte);
    font: inherit;
    cursor: pointer;
}

.visionneuse-bascule button.actif[b-yugv31yx4d] { background: var(--orbite-bleu-pale); color: var(--orbite-accent-texte); border-color: var(--orbite-accent); font-weight: 600; }

/* ---------- Corps : document, poignée, panneau ---------- */

.visionneuse-corps[b-yugv31yx4d] { flex: 1 1 auto; min-height: 0; display: flex; }

.visionneuse-document[b-yugv31yx4d] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    position: relative;
    background: var(--orbite-fond-discret);
}

.visionneuse-cadre[b-yugv31yx4d] { flex: 1 1 auto; width: 100%; height: 100%; border: 0; display: block; background: #fff; }
.visionneuse-cadre--page[b-yugv31yx4d] { background: var(--orbite-fond-page); }

.visionneuse--glisse .visionneuse-cadre[b-yugv31yx4d] { pointer-events: none; }
.visionneuse--glisse[b-yugv31yx4d] { user-select: none; cursor: col-resize; }

.visionneuse-image[b-yugv31yx4d] {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: auto;
    padding: 16px;
}

.visionneuse-image img[b-yugv31yx4d] { max-width: 100%; max-height: 100%; object-fit: contain; box-shadow: var(--orbite-ombre); background: #fff; }

.visionneuse-traitement[b-yugv31yx4d] { flex: 1 1 auto; min-width: 0; display: flex; }
[b-yugv31yx4d] .visionneuse-richedit, [b-yugv31yx4d] .visionneuse-pdf-dx { width: 100%; height: 100%; flex: 1 1 auto; }

.visionneuse-attente[b-yugv31yx4d] { flex: 1 1 auto; display: flex; align-items: center; justify-content: center; }

.visionneuse-carte[b-yugv31yx4d] {
    margin: auto;
    max-width: 440px;
    padding: 32px 24px;
    text-align: center;
    background: var(--orbite-fond-surface);
    border: 1px solid var(--orbite-bordure);
    border-radius: 8px;
    box-shadow: var(--orbite-ombre);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.visionneuse-carte-titre[b-yugv31yx4d] { font-size: 15px; font-weight: 600; word-break: break-word; }
.visionneuse-carte p[b-yugv31yx4d] { margin: 0; }

.visionneuse-poignee[b-yugv31yx4d] {
    flex: 0 0 6px;
    cursor: col-resize;
    background: var(--orbite-bordure);
    touch-action: none;
}

.visionneuse-poignee:hover[b-yugv31yx4d], .visionneuse--glisse .visionneuse-poignee[b-yugv31yx4d] { background: var(--orbite-accent); }

.visionneuse-panneau[b-yugv31yx4d] {
    flex: 0 0 auto;
    width: var(--visionneuse-panneau-largeur);
    max-width: 70%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    background: var(--orbite-fond-surface);
}

.visionneuse--panneau-seul .visionneuse-panneau[b-yugv31yx4d] { width: 100%; max-width: none; }

.visionneuse-panneau-titre[b-yugv31yx4d] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 4px 8px 4px 16px;
    border-bottom: 1px solid var(--orbite-bordure);
    color: var(--orbite-accent-texte);
    box-sizing: border-box;
}

.visionneuse-panneau-nom[b-yugv31yx4d] { font-weight: 600; font-size: 15px; }
.visionneuse-panneau-dossier[b-yugv31yx4d] { flex: 1 1 auto; min-width: 0; color: var(--orbite-texte-secondaire); font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.visionneuse-panneau-outils[b-yugv31yx4d] { margin-left: auto; display: flex; align-items: center; gap: 2px; flex: 0 0 auto; }

/* Lot 33 : le choix de la page d'information (principale, puis les groupes marqués « Page »), une ligne compacte. */
.visionneuse-panneau-pages[b-yugv31yx4d] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px 6px 16px;
    border-bottom: 1px solid var(--orbite-bordure);
}

.visionneuse-panneau-choix[b-yugv31yx4d] {
    flex: 1 1 auto;
    min-width: 0;
    height: 32px;
    padding: 0 8px;
    border: 1px solid var(--orbite-bordure);
    border-radius: 6px;
    background: var(--orbite-fond-surface);
    color: var(--orbite-texte);
    font: inherit;
    font-size: 13px;
    color-scheme: inherit;
    cursor: pointer;
}

.visionneuse-panneau-choix:focus-visible[b-yugv31yx4d] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }

/* Le corps défile : l'en-tête collant d'un groupe (info.css, vue étroite) se colle à son haut, pas sous la barre
   supérieure de la page (lot 33, retour de François : il se collait 48 px trop bas, le champ précédent visible au-dessus).
   Le navigateur colle sous la marge intérieure du conteneur qui défile : le décalage la retranche, sinon une bande de
   8 px du champ précédent resterait visible au-dessus de l'en-tête. */
.visionneuse-panneau-corps[b-yugv31yx4d] {
    --visionneuse-corps-haut: 8px;
    --info-sticky-top: calc(-1 * var(--visionneuse-corps-haut));
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: var(--visionneuse-corps-haut) 12px 16px;
}

/* ---------- Étroit (largeur de la visionneuse) ---------- */

@container visionneuse (max-width: 760px) {
    .visionneuse-libelle[b-yugv31yx4d] { display: none; }
    .visionneuse-barre[b-yugv31yx4d] { padding-left: 12px; }
}

@container visionneuse (max-width: 899px) {
    .visionneuse-bascule[b-yugv31yx4d] { display: flex; }
    .visionneuse-panneau[b-yugv31yx4d] { width: 100%; max-width: none; flex: 1 1 auto; }
    .visionneuse-poignee[b-yugv31yx4d] { display: none; }
    .visionneuse--vue-document .visionneuse-panneau[b-yugv31yx4d] { display: none; }
    .visionneuse--vue-info .visionneuse-document[b-yugv31yx4d] { display: none; }
}

/* Téléphone : la visionneuse prend tout l'écran ; le panneau seul aussi (sous la barre). */
@media (max-width: 899px) {
    .orbite-app .visionneuse[b-yugv31yx4d], .visionneuse[b-yugv31yx4d] { inset: 0; z-index: 1040; border-left: 0; }
    .orbite-app .visionneuse.visionneuse--panneau-seul[b-yugv31yx4d], .visionneuse.visionneuse--panneau-seul[b-yugv31yx4d] {
        inset: var(--orbite-entete-hauteur) 0 0 0;
        width: auto;
        z-index: 990;
        box-shadow: none;
    }
    .visionneuse-bouton[b-yugv31yx4d] { height: 40px; min-width: 40px; }
    .visionneuse-panneau-choix[b-yugv31yx4d] { height: 40px; font-size: 15px; }
}

@media print {
    .visionneuse[b-yugv31yx4d] { display: none !important; }
}

.visionneuse-texte[b-yugv31yx4d] {
    flex: 1 1 auto;
    margin: 0;
    padding: 16px 20px;
    overflow: auto;
    background: var(--orbite-fond-surface);
    color: var(--orbite-texte);
    font: 13px/1.5 Consolas, "Cascadia Mono", ui-monospace, monospace;
    white-space: pre-wrap;
    word-break: break-word;
    tab-size: 4;
}

/* ---------- Lot 35 : Informations ou Client ---------- */

/* Les onglets de l'en-tête du panneau (avec le droit Info) : changent ce qu'il montre sans le fermer. Sans le droit, le
   seul nom (Client). Sur téléphone à côté d'un document, la bascule Document / Informations / Client les remplace. */
.visionneuse-panneau-onglets[b-yugv31yx4d] {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 2px;
    padding: 2px;
    border: 1px solid var(--orbite-bordure);
    border-radius: 8px;
    background: var(--orbite-fond-discret);
}

.visionneuse-panneau-onglets button[b-yugv31yx4d] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 10px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--orbite-texte-secondaire);
    font: inherit;
    font-size: 13px;
    cursor: pointer;
    white-space: nowrap;
}

.visionneuse-panneau-onglets button:hover[b-yugv31yx4d] { color: var(--orbite-texte); background: var(--orbite-survol); }
.visionneuse-panneau-onglets button.actif[b-yugv31yx4d] { background: var(--orbite-fond-surface); color: var(--orbite-accent-texte); font-weight: 600; box-shadow: var(--orbite-ombre); }
.visionneuse-panneau-onglets button:focus-visible[b-yugv31yx4d] { outline: 2px solid var(--orbite-focus); outline-offset: 1px; }

.visionneuse-panneau-nom-seul[b-yugv31yx4d] { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.visionneuse-panneau-onglets + .visionneuse-panneau-nom-seul[b-yugv31yx4d] { display: none; }

@container visionneuse (max-width: 899px) {
    .visionneuse--avec-panneau .visionneuse-panneau-onglets[b-yugv31yx4d] { display: none; }
    .visionneuse--avec-panneau .visionneuse-panneau-onglets + .visionneuse-panneau-nom-seul[b-yugv31yx4d] { display: inline-flex; }
}

@media (max-width: 899px) {
    .visionneuse-panneau-onglets button[b-yugv31yx4d] { height: 36px; }
}

/* Le panneau Client : les cartes de la page (Panneau) se touchent moins dans la largeur étroite. */
.visionneuse-panneau-corps--client[b-yugv31yx4d] { padding-left: 8px; padding-right: 8px; }
