/* procloud – tableau de bord compact (portail et deploy.procloud.ovh).
   Feuille maison, sans dépendance ni JavaScript (compatible CSP stricte). Mode sombre automatique.
   Menu mobile : <details class="menu-mobile">, tableaux .fiches en fiches sous 760 px. */

:root {
  --fond: #eef1f5; --carte: #ffffff; --texte: #1e293b; --doux: #64748b; --bord: #dde3ea; --bord-fort: #c5ced9;
  --accent: #2563eb; --accent-fonce: #1d4ed8; --accent-pale: #e8effe;
  --ok: #16a34a; --ok-pale: #e8f7ee; --alerte: #d97706; --alerte-pale: #fdf3e2; --erreur: #dc2626; --erreur-pale: #fdecec;
  --barre: #0f172a; --barre-texte: #cbd5e1; --barre-actif: #1e293b; --barre-bord: #1e293b; --logo-1: #3b82f6; --logo-2: #6366f1; --sur-accent: #ffffff;
  --rayon: 8px; --ombre: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 3px rgba(15, 23, 42, .04);
  --police: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --fond: #0b1120; --carte: #131c2e; --texte: #e2e8f0; --doux: #94a3b8; --bord: #243047; --bord-fort: #33415c;
    --accent: #60a5fa; --accent-fonce: #3b82f6; --accent-pale: #16233d;
    --ok: #4ade80; --ok-pale: #0f2a1c; --alerte: #fbbf24; --alerte-pale: #2d2410; --erreur: #f87171; --erreur-pale: #321417;
    --barre: #070b14; --barre-actif: #16203a; --ombre: none; --sur-accent: #0b1120;
  }
}

* { box-sizing: border-box; }
html { font-size: 14px; }
body { margin: 0; font-family: var(--police); font-size: 1rem; line-height: 1.5; color: var(--texte); background: var(--fond);
       -webkit-font-smoothing: antialiased; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
h1 { font-size: 1.45rem; font-weight: 650; margin: 0; letter-spacing: -.01em; }
h2 { font-size: 1.08rem; font-weight: 650; margin: 0 0 .75rem; }
h3 { font-size: .95rem; font-weight: 650; margin: 1.1rem 0 .4rem; }
h2.section { margin-top: 1.6rem; }
p { margin: .4rem 0 .8rem; }
ul { margin: .3rem 0 .8rem; padding-left: 1.2rem; }
code { font-family: var(--mono); font-size: .86em; background: var(--fond); border: 1px solid var(--bord); border-radius: 4px; padding: 0 .3em; }
pre { font-family: var(--mono); font-size: .8rem; background: var(--fond); border: 1px solid var(--bord); border-radius: var(--rayon);
      padding: .7rem .8rem; white-space: pre-wrap; overflow-wrap: anywhere; max-height: 26rem; overflow: auto; }
small, .aide { color: var(--doux); font-size: .88rem; }
hr { border: 0; border-top: 1px solid var(--bord); margin: 1.2rem 0; }

/* ---- Mise en page : barre latérale + contenu ---- */
.cadre { display: grid; grid-template-columns: 220px 1fr; min-height: 100vh; }
.barre { background: var(--barre); color: var(--barre-texte); display: flex; flex-direction: column; position: sticky; top: 0; height: 100vh;
         padding: 1rem .75rem; }
.marque { display: flex; align-items: center; gap: .55rem; color: #fff; font-weight: 700; font-size: 1.05rem; padding: .25rem .5rem 1.1rem;
          text-decoration: none !important; }
.marque .logo { width: 26px; height: 26px; border-radius: 7px; background: linear-gradient(135deg, var(--logo-1), var(--logo-2)); display: grid;
                place-items: center; color: #fff; font-size: .85rem; font-weight: 800; }
.marque small { display: block; color: var(--barre-texte); font-weight: 500; font-size: .72rem; opacity: .75; margin-top: -2px; }
.barre nav { display: flex; flex-direction: column; gap: 2px; }
.barre nav a { color: var(--barre-texte); padding: .5rem .65rem; border-radius: 6px; display: flex; align-items: center; gap: .6rem;
               text-decoration: none; font-weight: 500; }
.barre nav a:hover { background: var(--barre-actif); color: #fff; }
.barre nav a.actif { background: var(--barre-actif); color: #fff; box-shadow: inset 3px 0 0 var(--logo-1); }
.barre nav a .ico { width: 1.1rem; text-align: center; opacity: .8; }
.barre .pied { margin-top: auto; border-top: 1px solid var(--barre-bord); padding-top: .8rem; font-size: .88rem; }
.barre .pied .qui { display: block; color: #fff; font-weight: 600; padding: 0 .5rem .45rem; }
.barre .pied button, .barre .pied a.bouton { width: 100%; justify-content: center; background: transparent; color: var(--barre-texte);
                                               border-color: #334155; }
.barre .pied button:hover, .barre .pied a.bouton:hover { background: var(--barre-actif); color: #fff; }
.contenu { padding: 1.4rem 1.8rem 3rem; min-width: 0; max-width: 1280px; }
.entete-page { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.1rem; }
.entete-page .actions { display: flex; gap: .5rem; flex-wrap: wrap; }
.menu-mobile { display: none; }

/* Page publique (accueil) : même charte, barre du haut, pas de barre latérale */
.public .entete-public { background: var(--barre); color: #fff; }
.public .entete-public .interieur { max-width: 1100px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between;
                                     gap: 1rem; padding: .7rem 1.2rem; }
.public .entete-public .marque { padding: 0; }
.public .entete-public .interieur > nav { display: flex; gap: 1rem; align-items: center; }
.entete-public .qui { color: var(--barre-texte); font-size: .88rem; }
.public .entete-public nav a { color: var(--barre-texte); }
.public .entete-public nav a[role=button] { color: #fff; }
.public .contenu { margin: 0 auto; max-width: 1100px; }

@media (max-width: 900px) {
  .cadre { grid-template-columns: 1fr; }
  .barre { position: static; height: auto; flex-direction: row; align-items: center; justify-content: space-between; padding: .55rem .9rem; }
  .barre .marque { padding: 0; }
  .barre > nav, .barre > .pied { display: none; }
  .menu-mobile { display: block; position: relative; }
  .menu-mobile summary { list-style: none; cursor: pointer; color: #fff; border: 1px solid #334155; border-radius: 6px; padding: .35rem .7rem; }
  .menu-mobile summary::-webkit-details-marker { display: none; }
  .menu-mobile > div { position: absolute; right: 0; top: calc(100% + 6px); z-index: 10; background: var(--barre); border: 1px solid #1e293b;
                       border-radius: var(--rayon); padding: .5rem; min-width: 220px; box-shadow: 0 8px 24px rgba(0,0,0,.3); }
  .menu-mobile nav { display: flex; flex-direction: column; gap: 2px; }
  .menu-mobile .pied { margin-top: .5rem; padding-top: .5rem; border-top: 1px solid #1e293b; }
  .contenu { padding: 1rem .9rem 2.5rem; }
  .public .entete-public .interieur > nav { display: none; }
  .menu-mobile nav a, .menu-mobile .qui { color: var(--barre-texte); padding: .45rem .55rem; display: flex; align-items: center; gap: .6rem; }
}

/* ---- Indicateurs ---- */
.indicateurs { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .75rem; margin-bottom: 1.1rem; }
.indicateur { background: var(--carte); border: 1px solid var(--bord); border-radius: var(--rayon); padding: .8rem 1rem; box-shadow: var(--ombre); }
.indicateur .valeur { font-size: 1.6rem; font-weight: 700; line-height: 1.1; }
.indicateur .libelle { color: var(--doux); font-size: .82rem; text-transform: uppercase; letter-spacing: .03em; }
.indicateur.ok .valeur { color: var(--ok); } .indicateur.alerte .valeur { color: var(--alerte); } .indicateur.erreur .valeur { color: var(--erreur); }

/* ---- Cartes et boîtes ---- */
.boite, form.boite, .panneau { background: var(--carte); border: 1px solid var(--bord); border-radius: var(--rayon); padding: 1rem 1.15rem;
                               box-shadow: var(--ombre); margin-bottom: 1rem; }
.boite > h2:first-child, .panneau > h2:first-child { margin-top: 0; }
.entete { display: flex; align-items: center; justify-content: space-between; gap: .6rem; flex-wrap: wrap; margin-bottom: .6rem; }
.entete h2 { margin: 0; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: .5rem 1rem; align-items: end; }
.grille { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: .9rem; margin-bottom: 1.2rem; }
a.carte { display: block; background: var(--carte); border: 1px solid var(--bord); border-radius: var(--rayon); padding: .95rem 1.05rem;
          color: inherit; text-decoration: none; box-shadow: var(--ombre); transition: border-color .12s, transform .12s; }
a.carte:hover { border-color: var(--accent); transform: translateY(-1px); }
a.carte h2 { font-size: 1rem; margin: 0; }
a.carte p { color: var(--doux); margin: .4rem 0; min-height: 1.4em; font-size: .92rem; }
.domaine { font-size: .82rem; color: var(--doux); overflow-wrap: anywhere; font-family: var(--mono); }
/* Accueil du portail : éléments réorganisables.
   Cartes : titre en gras (2 lignes), description (2 lignes), site, puis mention à gauche et poignée à droite.
   Liste : titre | description | site | mention | poignée. Description complète en info-bulle. */
.element { position: relative; min-width: 0; }
.element > a.carte { height: 100%; display: flex; flex-direction: column; gap: .35rem; }
.element > a.carte h2, .element > a.carte .descriptif { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical;
                                                          -webkit-line-clamp: 2; overflow-wrap: anywhere; margin: 0; }
.element > a.carte h2 { font-weight: 700; line-height: 1.3; min-height: calc(2 * 1.3em); }
.element > a.carte .descriptif { color: var(--doux); font-size: .92rem; line-height: 1.4; min-height: calc(2 * 1.4em); }
.element > a.carte .mention { display: flex; align-items: center; min-height: 1.9rem; margin-top: auto; }
.poignee { position: absolute; right: .6rem; bottom: .95rem; width: 1.9rem; height: 1.9rem; padding: 0; display: inline-flex;
           align-items: center; justify-content: center; font-size: 1.05rem; line-height: 1; cursor: grab;
           background: transparent; color: var(--doux); border: 1px solid transparent; border-radius: 6px; touch-action: none; }
.poignee:hover, .poignee:focus-visible { color: var(--accent); border-color: var(--bord-fort); background: var(--carte); }
.tri-en-cours, .tri-en-cours .poignee { cursor: grabbing; user-select: none; }
.tri-en-cours a.carte:hover { transform: none; }
.element.deplace > a.carte { opacity: .55; border-style: dashed; border-color: var(--accent); }
.grille.liste { grid-template-columns: 1fr; gap: .45rem; }
.grille.liste .element > a.carte { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.6fr) minmax(0, 1fr) 9.5rem; align-items: center;
                                   gap: .3rem 1rem; padding: .55rem 3rem .55rem .95rem; }
.grille.liste .element > a.carte h2, .grille.liste .element > a.carte .descriptif { min-height: 0; }
.grille.liste .element > a.carte .mention { margin: 0; min-height: 0; }
.grille.liste .poignee { top: 50%; bottom: auto; transform: translateY(-50%); }
@media (max-width: 700px) {
  .grille.liste .element > a.carte { grid-template-columns: minmax(0, 1fr) auto; }
  .grille.liste .element > a.carte h2 { grid-column: 1; grid-row: 1; }
  .grille.liste .element > a.carte .descriptif { grid-column: 1; grid-row: 2; -webkit-line-clamp: 1; }
  .grille.liste .element > a.carte .domaine { grid-column: 1; grid-row: 3; }
  .grille.liste .element > a.carte .mention { grid-column: 2; grid-row: 1 / span 3; }
}
#ordre-etat.erreur { color: var(--erreur); }
.overflow-auto { overflow-x: auto; }

/* ---- Badges, pastilles ---- */
.badge { display: inline-flex; align-items: center; gap: .3rem; font-size: .74rem; font-weight: 600; padding: .08rem .5rem; border-radius: 999px;
         background: var(--fond); color: var(--doux); border: 1px solid var(--bord); white-space: nowrap; }
.badge.public, .badge.ok { background: var(--ok-pale); color: var(--ok); border-color: transparent; }
.badge.protege { background: var(--alerte-pale); color: var(--alerte); border-color: transparent; }
.badge.prive { background: var(--fond); color: var(--doux); }
.badge.erreur { background: var(--erreur-pale); color: var(--erreur); border-color: transparent; }
.pastille { display: inline-block; width: .6rem; height: .6rem; border-radius: 50%; background: var(--bord-fort); vertical-align: middle; }
.pastille.ok { background: var(--ok); box-shadow: 0 0 0 3px var(--ok-pale); }
.pastille.erreur { background: var(--erreur); box-shadow: 0 0 0 3px var(--erreur-pale); }

/* ---- Messages ---- */
.message { border-radius: var(--rayon); padding: .65rem .85rem; border: 1px solid var(--bord); border-left: 4px solid var(--accent);
           background: var(--accent-pale); margin: .5rem 0 1rem; overflow-wrap: anywhere; }
.message.ok { border-left-color: var(--ok); background: var(--ok-pale); }
.message.erreur { border-left-color: var(--erreur); background: var(--erreur-pale); }
ul.alertes li, .alertes { color: var(--alerte); }
ul.infos li { color: var(--doux); }

/* ---- Tableaux ---- */
table { width: 100%; border-collapse: collapse; background: var(--carte); font-size: .93rem; border: 1px solid var(--bord);
        border-radius: var(--rayon); overflow: hidden; box-shadow: var(--ombre); }
th { text-align: left; font-size: .76rem; font-weight: 650; text-transform: uppercase; letter-spacing: .04em; color: var(--doux);
     background: var(--fond); padding: .55rem .7rem; border-bottom: 1px solid var(--bord); }
td { padding: .5rem .7rem; border-bottom: 1px solid var(--bord); vertical-align: middle; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover td { background: var(--accent-pale); }
td.actions { display: flex; flex-wrap: wrap; gap: .35rem; justify-content: flex-end; }
td.date { white-space: nowrap; font-variant-numeric: tabular-nums; }
td.ok { color: var(--ok); font-weight: 600; } td.echec { color: var(--erreur); font-weight: 600; }
tr.inactif td { opacity: .5; }
tr.ev-refus td, tr.ev-echec_connexion td { color: var(--erreur); }
tr.ev-admin td { color: var(--alerte); }
.journal td { font-size: .86rem; }
@media (max-width: 760px) {
  table.fiches, table.fiches tbody, table.fiches tr, table.fiches td { display: block; width: 100%; }
  table.fiches { border: 0; background: none; box-shadow: none; }
  table.fiches thead { display: none; }
  table.fiches tr { background: var(--carte); border: 1px solid var(--bord); border-radius: var(--rayon); margin-bottom: .6rem; padding: .35rem .5rem;
                    box-shadow: var(--ombre); }
  table.fiches td { border: 0; padding: .2rem .25rem; overflow-wrap: anywhere; }
  table.fiches td[data-label]::before { content: attr(data-label) " : "; font-weight: 600; color: var(--doux); font-size: .82rem; }
  td.actions { justify-content: flex-start; padding-top: .45rem !important; }
}

/* ---- Formulaires ---- */
label { display: grid; gap: .25rem; font-size: .88rem; font-weight: 500; color: var(--texte); margin-bottom: .6rem; }
label.case { display: flex; align-items: flex-start; gap: .5rem; font-weight: 400; }
label.case input { margin-top: .2rem; }
input, select, textarea { font: inherit; font-size: .95rem; height: 2.3rem; line-height: 1.3; color: var(--texte); background: var(--carte); border: 1px solid var(--bord-fort);
                          border-radius: 6px; padding: .45rem .6rem; width: 100%; min-width: 0; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--accent-pale); border-color: var(--accent); }
textarea { height: auto; }
input[type=file] { height: auto; }
input[type=checkbox], input[type=radio] { width: 1rem; height: 1rem; padding: 0; accent-color: var(--accent); flex: none; }
input[type=file].depot { padding: 2.2rem 1rem; border: 2px dashed var(--accent); background: var(--accent-pale); cursor: pointer; text-align: center; }
fieldset { border: 1px solid var(--bord); border-radius: var(--rayon); padding: .6rem .9rem; margin: 0 0 .8rem; }
legend { font-size: .85rem; font-weight: 600; color: var(--doux); padding: 0 .3rem; }
.avec-suffixe { display: flex; align-items: center; gap: .4rem; }
.avec-suffixe span { color: var(--doux); white-space: nowrap; font-family: var(--mono); font-size: .88rem; }
.filtres { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .5rem .8rem; align-items: end;
           background: var(--carte); border: 1px solid var(--bord); border-radius: var(--rayon); padding: .8rem .9rem; margin: 1rem 0; }
.filtres label { margin: 0; font-size: .8rem; color: var(--doux); }

/* ---- Boutons ---- */
button, a[role=button], a.bouton { display: inline-flex; align-items: center; gap: .35rem; font: inherit; font-size: .9rem; font-weight: 600;
  padding: .45rem .9rem; border-radius: 6px; border: 1px solid var(--accent); background: var(--accent); color: var(--sur-accent); cursor: pointer;
  text-decoration: none !important; line-height: 1.3; white-space: nowrap; }
button:hover, a[role=button]:hover, a.bouton:hover { background: var(--accent-fonce); border-color: var(--accent-fonce); }
button.secondary, a[role=button].secondary { background: var(--carte); color: var(--texte); border-color: var(--bord-fort); }
button.secondary:hover, a[role=button].secondary:hover { background: var(--fond); }
button.outline, a[role=button].outline { background: transparent; color: var(--accent); border-color: var(--accent); }
button.secondary.outline, a[role=button].secondary.outline { color: var(--texte); border-color: var(--bord-fort); }
button.danger { background: var(--erreur); border-color: var(--erreur); }
button.danger.outline, a[role=button].danger.outline { background: transparent; color: var(--erreur); border-color: var(--erreur); }
button.petit, a[role=button].petit, .petit { font-size: .8rem; padding: .25rem .6rem; }
button:disabled { opacity: .45; cursor: not-allowed; }
form.enligne { display: inline; margin: 0; }

/* ---- Divers ---- */
details { background: var(--carte); border: 1px solid var(--bord); border-radius: var(--rayon); padding: .5rem .8rem; margin: .6rem 0; }
details > summary { cursor: pointer; font-weight: 600; font-size: .9rem; }
details[open] > summary { margin-bottom: .5rem; }
.menu-mobile, .menu-mobile[open] { background: none; border: 0; padding: 0; margin: 0; }
.csp { font-family: var(--mono); font-size: .8rem; overflow-wrap: anywhere; background: var(--fond); border: 1px solid var(--bord);
       border-radius: 6px; padding: .5rem .7rem; }
pre.readme { border-left: 4px solid var(--alerte); }
.changements { list-style: none; padding: 0; font-family: var(--mono); font-size: .85rem; }
.changements li.A { color: var(--ok); } .changements li.D { color: var(--erreur); } .changements li.M { color: var(--alerte); }
.pagination { display: flex; gap: 1rem; justify-content: center; align-items: center; margin: 1rem 0; }
.versions button.secondary { margin: .25rem 0 .5rem; }
.contenu.etroit { max-width: 460px; margin: 0 auto; }

/* ---- Thèmes (choisis dans le menu, cookie procloud_theme sur .procloud.ovh) ---- */
[data-theme=clair] { color-scheme: light; }
[data-theme=sombre] { color-scheme: dark;
  --fond: #0b1120; --carte: #131c2e; --texte: #e2e8f0; --doux: #94a3b8; --bord: #243047; --bord-fort: #33415c;
  --accent: #60a5fa; --accent-fonce: #3b82f6; --accent-pale: #16233d;
  --ok: #4ade80; --ok-pale: #0f2a1c; --alerte: #fbbf24; --alerte-pale: #2d2410; --erreur: #f87171; --erreur-pale: #321417;
  --barre: #070b14; --barre-actif: #16203a; --ombre: none; --sur-accent: #0b1120; }
[data-theme=foret] { color-scheme: light;
  --fond: #edf3ef; --carte: #ffffff; --texte: #18291f; --doux: #587062; --bord: #d3e1d7; --bord-fort: #b7cbbd;
  --accent: #15803d; --accent-fonce: #166534; --accent-pale: #e1f2e6;
  --barre: #0e2a1c; --barre-texte: #c5dccd; --barre-actif: #1a3f2b; --barre-bord: #1a3f2b; --logo-1: #22c55e; --logo-2: #0d9488; }
[data-theme=ocean] { color-scheme: dark;
  --fond: #06141d; --carte: #0c202d; --texte: #d9e9f1; --doux: #8cadbf; --bord: #163446; --bord-fort: #21475d;
  --accent: #22d3ee; --accent-fonce: #06b6d4; --accent-pale: #0a2c3a;
  --ok: #34d399; --ok-pale: #0b2a22; --alerte: #fbbf24; --alerte-pale: #2d2410; --erreur: #fb7185; --erreur-pale: #33131b;
  --barre: #030e15; --barre-texte: #a9c7d6; --barre-actif: #0b2331; --barre-bord: #0b2331; --logo-1: #22d3ee; --logo-2: #0ea5e9; --ombre: none; --sur-accent: #04141c; }
[data-theme=prune] { color-scheme: light;
  --fond: #f4f1f8; --carte: #ffffff; --texte: #291e39; --doux: #6b6080; --bord: #e1d9ea; --bord-fort: #c9bed7;
  --accent: #7c3aed; --accent-fonce: #6d28d9; --accent-pale: #efe7fd;
  --barre: #1d1230; --barre-texte: #d5cbe6; --barre-actif: #2d1f47; --barre-bord: #2d1f47; --logo-1: #8b5cf6; --logo-2: #ec4899; }
[data-theme=sable] { color-scheme: light;
  --fond: #f6f1e8; --carte: #fffdf8; --texte: #3a2e21; --doux: #7a6955; --bord: #e6dbc8; --bord-fort: #d1c2a7;
  --accent: #b45309; --accent-fonce: #92400e; --accent-pale: #fbeeda;
  --barre: #2a2017; --barre-texte: #e2d4c0; --barre-actif: #3c2e20; --barre-bord: #3c2e20; --logo-1: #f59e0b; --logo-2: #ea580c; }
[data-theme=contraste] { color-scheme: light;
  --fond: #ffffff; --carte: #ffffff; --texte: #000000; --doux: #262626; --bord: #000000; --bord-fort: #000000;
  --accent: #0000c8; --accent-fonce: #00008a; --accent-pale: #fff4a3;
  --ok: #006b00; --ok-pale: #e6ffe6; --alerte: #7a3e00; --alerte-pale: #fff0d6; --erreur: #b00000; --erreur-pale: #ffe3e3;
  --barre: #000000; --barre-texte: #ffffff; --barre-actif: #333333; --barre-bord: #555555; --logo-1: #000000; --logo-2: #0000c8; --ombre: none; }
[data-theme=contraste] a { text-decoration: underline; }
[data-theme=contraste] .barre nav a.actif { box-shadow: inset 4px 0 0 #ffdd00; }
[data-theme=contraste] :focus-visible { outline: 3px solid #ffdd00; outline-offset: 2px; }

/* Menu du thème (barre latérale, menu mobile, barre du haut) */
form.theme { display: flex; gap: .35rem; align-items: center; margin: 0 0 .55rem; }
form.theme label { margin: 0; color: var(--barre-texte); font-size: .78rem; font-weight: 500; display: block; }
form.theme select { height: 1.95rem; font-size: .82rem; padding: .15rem .4rem; background: var(--barre-actif); color: var(--barre-texte);
                    border-color: var(--barre-bord); flex: 1; }
form.theme button, .barre .pied form.theme button { padding: .2rem .55rem; font-size: .78rem; width: auto; flex: none; }
form.theme select { min-width: 0; }
.entete-public form.theme { margin: 0; }
.entete-public form.theme select { width: auto; }
