/* Les thèmes de Pivotis (chargés après pivotis.css) : six habillages des mêmes pages, choisis par la
   société (page Apparence) ou par chaque personne (Mon compte). « Standard » est pivotis.css tel quel.
   Seules les pages de l'application changent (body.app) : les documents imprimés restent sur papier blanc. */

/* ================================================================ NUIT : sombre, menu en icônes */
html[data-theme="nuit"] body.app{
  --fond:#0f1115;--papier:#171b22;--champ:#1d222a;--encre:#e7e9ee;--encre-2:#b9c0ca;--gris:#8b94a1;--gris-2:#687180;
  --ligne:#2a313b;--ligne-2:#1f252e;--accent:#5b9bf0;--accent-fonce:#8ab8f5;--accent-doux:#1a2a42;
  --ok:#3ecf8e;--ok-doux:#132b24;--alerte:#e3a53c;--alerte-doux:#33291a;--danger:#f07272;--danger-doux:#3a1f22;
  --ombre:0 1px 2px rgba(0,0,0,.5),0 8px 22px rgba(0,0,0,.4);--bord-champ:#3a424e;--barre-fond:rgba(18,21,27,.95);
  --onglet-fond:#1b2028;--alerte-texte:#f0c26b;--bord-survol:#465061;--bord-alerte:#6b5320;--objectif:#343c48;
  --objectif-fond:#1d222a;--objectif-bord:#4a5464;--violet-doux:#2a2245;--violet-texte:#c9b8ff;color-scheme:dark}
html[data-theme="nuit"] .c-bleu{--c-doux:#18264a}html[data-theme="nuit"] .c-violet{--c-doux:#281f45}
html[data-theme="nuit"] .c-teal{--c-doux:#11302d}html[data-theme="nuit"] .c-ambre{--c-doux:#33260f}
html[data-theme="nuit"] .c-indigo{--c-doux:#1f1f45}html[data-theme="nuit"] .c-vert{--c-doux:#132d1d}
html[data-theme="nuit"] .c-rose{--c-doux:#3a1628}html[data-theme="nuit"] .c-ardoise{--c-doux:#232a35}
html[data-theme="nuit"] .tuile,html[data-theme="nuit"] .carte{box-shadow:none}
html[data-theme="nuit"] .carte-pdp-photo,html[data-theme="nuit"] .photo-article{background:#232933}
html[data-theme="nuit"] .carte-pdp-photo img,html[data-theme="nuit"] .carte-of-tete img{background:#e9ebee;border-radius:6px}
html[data-theme="nuit"] .pastille.expedie{background:#243040;color:#a9bdd6}
html[data-theme="nuit"] .pastille.prevision{background:#35291c;color:#e0b88a}
html[data-theme="nuit"] .carte-pdp.prevision{background:#1f1a13;border-color:#5a4630}
html[data-theme="nuit"] .carte-pdp.retard,html[data-theme="nuit"] .carte-of.retard,html[data-theme="nuit"] .of-trace.retard{border-color:#6b2c2c}
html[data-theme="nuit"] .colonne-atelier.en_cours{background:#211b33}
html[data-theme="nuit"] tr.op-courante td{background:#211b33}
html[data-theme="nuit"] .tableau th{color:var(--gris)}
html[data-theme="nuit"] svg.courbe-pilotage polygon{fill:#232a33}
html[data-theme="nuit"] svg.courbe-pilotage polyline{stroke:var(--accent)}
html[data-theme="nuit"] svg.courbe-pilotage circle{fill:var(--accent)}
html[data-theme="nuit"] svg.courbe-pilotage text{fill:var(--encre-2)}
html[data-theme="nuit"] .anneau svg circle:first-child,html[data-theme="nuit"] .jauge .fond{stroke:#262d37}
html[data-theme="nuit"] .jauge .trait{stroke:var(--encre)}
html[data-theme="nuit"] .ch-1{background:#15302a;color:#7ee0b0}html[data-theme="nuit"] .ch-2{background:#1d4a35;color:#a6f0c8}
html[data-theme="nuit"] .ch-3{background:#3a2f16;color:#f0c26b}html[data-theme="nuit"] .ch-4{background:#4a2c16;color:#f5b27a}
html[data-theme="nuit"] .ch-5{background:#4f1f22;color:#ff9b9b}
@media (min-width:861px){
  html[data-theme="nuit"] .corps.avec-menu{grid-template-columns:64px minmax(0,1fr)}
  html[data-theme="nuit"] .menu-gauche{width:64px;overflow-x:hidden;padding:12px 9px;z-index:30;transition:width .15s ease}
  html[data-theme="nuit"] .menu-gauche:hover,html[data-theme="nuit"] .menu-gauche:focus-within{width:290px;box-shadow:var(--ombre);padding:12px 10px}
  html[data-theme="nuit"] .menu-gauche:not(:hover):not(:focus-within) :is(.menu-groupe-titre,.menu-astuce,.menu-ecrans,.menu-module-nom,.menu-lien>span,.menu-lien>em){display:none}
  html[data-theme="nuit"] .menu-gauche:not(:hover):not(:focus-within) .menu-module summary::after{display:none}
  html[data-theme="nuit"] .menu-gauche:not(:hover):not(:focus-within) :is(.menu-lien,.menu-module summary){justify-content:center;padding:7px 0}
  html[data-theme="nuit"] .menu-gauche:not(:hover):not(:focus-within) .menu-groupe{margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--ligne-2)}
}

/* ================================================================ COMPACT : style ERP classique, serré, coins droits */
html[data-theme="compact"] body.app{
  --fond:#eef0f3;--papier:#ffffff;--accent:#0a6ebd;--accent-fonce:#085a9a;--accent-doux:#e3eefa;--ligne:#c9d0d8;--ligne-2:#e1e5ea;
  --rayon:3px;--ombre:0 2px 8px rgba(16,24,40,.12);--bord-champ:#b9c2cd;--barre-fond:#1f2a37;font-size:13px}
html[data-theme="compact"] h1{font-size:20px;margin-bottom:2px}
html[data-theme="compact"] h2{font-size:14.5px;margin-bottom:8px}
html[data-theme="compact"] h3{font-size:12.5px;margin:12px 0 6px}
html[data-theme="compact"] .barre{background:#1f2a37;backdrop-filter:none;border-bottom:0;min-height:44px;padding:4px 14px;gap:10px}
html[data-theme="compact"] .barre-marque{color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:.1em}
html[data-theme="compact"] .barre-marque b{color:#fff;font-weight:700}
html[data-theme="compact"] .barre .logo{color:#7fb6e8;width:22px;height:22px}
html[data-theme="compact"] .barre .logo-pivot{fill:#fff}
html[data-theme="compact"] .barre .fil,html[data-theme="compact"] .barre .fil a,html[data-theme="compact"] .barre .fil span{color:#c9d3de;font-size:12.5px}
html[data-theme="compact"] .barre :is(.bouton-menu,.barre-lien,.menu-nom){color:#c9d3de}
html[data-theme="compact"] .barre :is(.bouton-menu,.barre-lien,.menu-compte summary):hover{background:rgba(255,255,255,.1)}
html[data-theme="compact"] .avatar{width:26px;height:26px;font-size:10.5px}
html[data-theme="compact"] .corps.avec-menu{grid-template-columns:210px minmax(0,1fr)}
html[data-theme="compact"] .menu-gauche{background:#273444;border-right:0;top:44px;height:calc(100vh - 44px);padding:4px 0 16px}
html[data-theme="compact"] .menu-groupe-titre{color:#7f91a6;margin:10px 12px 3px;font-size:10px}
html[data-theme="compact"] .menu-lien{color:#c4cfdb;border-radius:0;padding:4px 12px;font-size:12.5px}
html[data-theme="compact"] .menu-lien:hover{background:#314155;color:#fff}
html[data-theme="compact"] .menu-lien.actif{background:var(--accent);color:#fff;font-weight:600}
html[data-theme="compact"] .menu-lien>.ico{color:#8ea0b4;width:15px;height:15px}
html[data-theme="compact"] .menu-module summary{color:#e8edf3;border-radius:0;padding:4px 12px;font-size:12.5px;font-weight:600}
html[data-theme="compact"] .menu-module summary:hover{background:#314155}
html[data-theme="compact"] .menu-ico{width:18px;height:18px;border-radius:3px}
html[data-theme="compact"] .menu-ico .ico{width:12px;height:12px}
html[data-theme="compact"] .menu-ecrans{margin:0 0 4px 21px;padding-left:4px;border-left-color:#3b4b5f}
html[data-theme="compact"] .menu-astuce{color:#7f91a6;margin:12px}
html[data-theme="compact"] .page,html[data-theme="compact"] .corps.avec-menu .page{max-width:none;padding:12px 16px 24px}
html[data-theme="compact"] .entete{margin-bottom:10px}
html[data-theme="compact"] .sous-titre{font-size:12.5px;margin-bottom:8px}
html[data-theme="compact"] .surtitre,html[data-theme="compact"] .section{font-size:10px;margin-bottom:2px}
html[data-theme="compact"] .carte{padding:10px 12px;margin-bottom:10px;box-shadow:none}
html[data-theme="compact"] .chiffres{gap:6px;margin-bottom:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
html[data-theme="compact"] .chiffre{padding:5px 10px}
html[data-theme="compact"] .chiffre span,html[data-theme="compact"] .chiffre em{font-size:11px}
html[data-theme="compact"] .chiffre b{font-size:17px;margin-top:0}
html[data-theme="compact"] .tableau{font-size:12.5px}
html[data-theme="compact"] .tableau th{background:#e8ecf1;padding:4px 8px;border:1px solid var(--ligne);font-size:10.5px;color:#4a5566}
html[data-theme="compact"] .tableau td{padding:3px 8px;border:1px solid var(--ligne-2)}
html[data-theme="compact"] .btn,html[data-theme="compact"] button.btn{padding:5px 11px;border-radius:2px;font-size:12.5px}
html[data-theme="compact"] .btn-petit{padding:3px 8px;font-size:11.5px}
html[data-theme="compact"] :is(input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input:not([type]),select,textarea){padding:5px 8px;border-radius:2px;font-size:13px}
html[data-theme="compact"] .tuiles{gap:8px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
html[data-theme="compact"] .tuile{padding:10px 12px;box-shadow:none}
html[data-theme="compact"] .tuile:hover{transform:none}
html[data-theme="compact"] .tuile::before{border-radius:0}
html[data-theme="compact"] .tuile-ico{width:30px;height:30px;border-radius:3px;margin-bottom:4px}
html[data-theme="compact"] .tuile-ico .ico{width:17px;height:17px}
html[data-theme="compact"] .tuile-nom{font-size:13.5px}
html[data-theme="compact"] .tuile-desc{font-size:11.5px}
html[data-theme="compact"] .badge,html[data-theme="compact"] .pastille{border-radius:2px}
html[data-theme="compact"] :is(.onglet,.barre-exercice a,.barre-mois a){border-radius:2px}
html[data-theme="compact"] .onglets-page{gap:0;padding-bottom:0}
html[data-theme="compact"] .onglets-page a{border:1px solid var(--ligne);border-bottom:0;border-radius:0;margin-right:-1px;padding:4px 11px;font-size:12px;background:#e8ecf1}
html[data-theme="compact"] .onglets-page a.actif{background:var(--papier);color:var(--encre);position:relative;top:1px}
html[data-theme="compact"] .onglets-page a.actif em{background:var(--ligne-2);color:var(--gris)}
html[data-theme="compact"] .onglet-bouton{border-radius:0}
html[data-theme="compact"] .onglet-nom{padding:5px 4px 5px 10px;font-size:12px}
html[data-theme="compact"] .onglets-barre{padding:4px 8px 0}
html[data-theme="compact"] .bureau{height:calc(100vh - 44px)}
html[data-theme="compact"] .sommaire{top:44px}
html[data-theme="compact"] .cartes-pdp{gap:8px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
html[data-theme="compact"] .carte-pdp-texte{padding:7px 9px}
html[data-theme="compact"] .barre-mois a{padding:4px 2px}
html[data-theme="compact"] .barre-mois a b{font-size:15px}
@media (max-width:860px){
  html[data-theme="compact"] .menu-gauche{top:44px}
}

/* ================================================================ ATELIER : tactile, très gros, menu caché */
html[data-theme="atelier"] body.app{--accent:#0d7d74;--accent-fonce:#0a5f58;--accent-doux:#dcf3f0;--rayon:18px;font-size:17px}
html[data-theme="atelier"] h1{font-size:32px}
html[data-theme="atelier"] h2{font-size:21px}
html[data-theme="atelier"] .barre{background:#0d7d74;backdrop-filter:none;border-bottom:0;min-height:72px;padding:10px 20px}
html[data-theme="atelier"] .barre-marque{color:#fff;font-size:22px}
html[data-theme="atelier"] .barre-marque b{color:#fff}
html[data-theme="atelier"] .barre .logo{color:#fff;width:38px;height:38px}
html[data-theme="atelier"] .barre .logo-pivot{fill:#fff}
html[data-theme="atelier"] .barre .fil,html[data-theme="atelier"] .barre .fil a,html[data-theme="atelier"] .barre .fil span{color:#e6fbf8;font-size:17px}
html[data-theme="atelier"] .barre :is(.bouton-menu,.barre-lien,.menu-nom){color:#fff}
html[data-theme="atelier"] .barre :is(.bouton-menu,.barre-lien,.menu-compte summary):hover{background:rgba(255,255,255,.15)}
html[data-theme="atelier"] .bouton-menu{padding:12px;border:2px solid rgba(255,255,255,.6);border-radius:14px;margin-left:0}
html[data-theme="atelier"] .bouton-menu .ico{width:30px;height:30px}
html[data-theme="atelier"] .avatar{width:44px;height:44px;font-size:15px;background:#fff;color:#0d7d74}
html[data-theme="atelier"] .corps.avec-menu{display:block}
html[data-theme="atelier"] .menu-gauche{display:none;position:fixed;top:72px;left:0;bottom:0;height:auto;width:min(380px,92vw);z-index:40;
  box-shadow:0 12px 40px rgba(0,0,0,.25);padding:14px}
html[data-theme="atelier"].menu-ouvert .menu-gauche{display:block}
html[data-theme="atelier"] .menu-lien,html[data-theme="atelier"] .menu-module summary{font-size:18px;padding:13px 14px;border-radius:12px}
html[data-theme="atelier"] .menu-ecrans .menu-lien{font-size:17px;padding:11px 12px}
html[data-theme="atelier"] .menu-ico{width:36px;height:36px;border-radius:10px}
html[data-theme="atelier"] .menu-ico .ico{width:21px;height:21px}
html[data-theme="atelier"] .page,html[data-theme="atelier"] .corps.avec-menu .page{max-width:1280px;padding:26px 24px 48px}
html[data-theme="atelier"] .btn,html[data-theme="atelier"] button.btn{padding:15px 24px;font-size:17px;border-radius:14px;min-height:56px}
html[data-theme="atelier"] .btn-petit{padding:10px 16px;font-size:15px;min-height:46px;border-radius:12px}
html[data-theme="atelier"] :is(input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input:not([type]),select,textarea){padding:14px 16px;font-size:17px;border-radius:14px}
html[data-theme="atelier"] .tuiles{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
html[data-theme="atelier"] .tuile{padding:26px}
html[data-theme="atelier"] .tuile-ico{width:66px;height:66px;border-radius:18px}
html[data-theme="atelier"] .tuile-ico .ico{width:38px;height:38px}
html[data-theme="atelier"] .tuile-nom{font-size:22px}
html[data-theme="atelier"] .tuile-desc{font-size:15.5px}
html[data-theme="atelier"] .chiffres{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
html[data-theme="atelier"] .chiffre{padding:20px 22px}
html[data-theme="atelier"] .chiffre span{font-size:15px}
html[data-theme="atelier"] .chiffre b{font-size:36px}
html[data-theme="atelier"] .tableau{font-size:16px}
html[data-theme="atelier"] .tableau td{padding:14px 12px}
html[data-theme="atelier"] .tableau th{font-size:13px}
html[data-theme="atelier"] :is(.onglets-page a,.barre-exercice a){padding:12px 18px;font-size:16px}
html[data-theme="atelier"] .barre-mois a{padding:12px 6px}
html[data-theme="atelier"] .barre-mois a b{font-size:24px}
html[data-theme="atelier"] .onglet-nom{padding:12px 6px 12px 16px;font-size:15px;max-width:240px}
html[data-theme="atelier"] .onglet-bouton button.onglet-fermer{font-size:22px;padding:6px 10px}
html[data-theme="atelier"] .bureau{height:calc(100vh - 72px)}
html[data-theme="atelier"] .sommaire{top:72px}
html[data-theme="atelier"] .carte-of{padding:16px}
html[data-theme="atelier"] .carte-of-tete img,html[data-theme="atelier"] .carte-of-vignette{width:74px;height:56px}
html[data-theme="atelier"] .carte-of-qte{font-size:20px;padding:4px 14px}
html[data-theme="atelier"] .carte-pdp-qte{font-size:20px}
html[data-theme="atelier"] .menu-astuce{font-size:14px}

/* ================================================================ TOUS : menu masqué par le bouton ☰ (Nuit, Compact)
   la page reprend toute la largeur (sinon elle tombait dans la colonne du menu) */
html.menu-cache[data-theme] .corps.avec-menu{grid-template-columns:minmax(0,1fr)}

/* ================================================================ PRESTIGE : éditorial, noir et bronze, menu en haut */
html[data-theme="prestige"] body.app{
  --fond:#fbfaf7;--papier:#fffdf9;--champ:#fffdf9;--encre:#1a1a1a;--encre-2:#3b3630;--gris:#7a6a58;--gris-2:#a89886;
  --ligne:#e4ddd1;--ligne-2:#efe9df;--accent:#8c6239;--accent-fonce:#6e4b2a;--accent-doux:#f4ece2;--rayon:2px;--ombre:none;
  --bord-champ:#d9d0c1;--barre-fond:#fbfaf7;--onglet-fond:#f1ece3;--bord-survol:#1a1a1a;--objectif-bord:#cfc4b3;
  --objectif-fond:#f7f3ec;--objectif:#e2d9ca;
  --titres:Georgia,"Iowan Old Style","Palatino Linotype","Book Antiqua",serif;--chiffres:var(--titres)}
html[data-theme="prestige"] h1{font-weight:400;font-size:36px;letter-spacing:.005em}
html[data-theme="prestige"] h2{font-weight:400;font-size:19px}
html[data-theme="prestige"] :is(.surtitre,.section,.tableau th){letter-spacing:.18em;color:var(--gris);font-weight:600}
html[data-theme="prestige"] .barre{background:var(--fond);backdrop-filter:none;border-bottom:1px solid var(--encre);min-height:64px;padding:10px 28px}
html[data-theme="prestige"] .barre-marque{font-family:var(--titres);font-size:22px;letter-spacing:.16em;color:var(--encre)}
html[data-theme="prestige"] .barre-marque b{color:var(--encre);font-weight:400}
html[data-theme="prestige"] .avatar{background:var(--encre);color:var(--fond)}
html[data-theme="prestige"] :is(.carte,.chiffre,.tuile,.carte-pdp,.carte-of,.bandeau-statut){box-shadow:none}
html[data-theme="prestige"] .tuile::before{display:none}
html[data-theme="prestige"] .tuile:hover{transform:none;border-color:var(--encre)}
html[data-theme="prestige"] .tuile-ico,html[data-theme="prestige"] .menu-ico{background:none;border:1px solid var(--ligne)}
html[data-theme="prestige"] .tuile-ico .ico,html[data-theme="prestige"] .menu-ico .ico{color:var(--accent)}
html[data-theme="prestige"] .tuile-nom{font-family:var(--titres);font-weight:400;font-size:20px}
html[data-theme="prestige"] .chiffre{border-width:0 0 0 1px;border-radius:0;background:none;padding:6px 18px}
html[data-theme="prestige"] .chiffre b{font-weight:400;font-size:34px}
html[data-theme="prestige"] .chiffre.a-voir b{color:var(--accent)}
html[data-theme="prestige"] .btn{border-radius:1px;letter-spacing:.05em;font-weight:500}
html[data-theme="prestige"] .btn-primaire{background:var(--encre);color:var(--fond)}
html[data-theme="prestige"] .btn-primaire:hover{background:var(--accent)}
html[data-theme="prestige"] .badge,html[data-theme="prestige"] .pastille{border-radius:1px}
html[data-theme="prestige"] :is(.onglets-page a.actif,.barre-exercice a.actif,.barre-mois a.actif,.onglet.actif){background:var(--encre);border-color:var(--encre);color:var(--fond)}
html[data-theme="prestige"] :is(.carte-pdp-qte,.carte-of-qte){background:var(--encre)}
html[data-theme="prestige"] .colonne-pilotage .rempli,html[data-theme="prestige"] .rang-barre{background:var(--accent)}
@media (min-width:861px){
  html[data-theme="prestige"] .corps.avec-menu{display:block}
  /* le menu en haut ; le bouton ☰ l'ouvre en entier à gauche, par-dessus la page (voir plus bas) */
  html[data-theme="prestige"]:not(.dans-onglet):not(.menu-ouvert) .menu-gauche{position:sticky;top:64px;z-index:18;height:auto;overflow:visible;display:flex;align-items:stretch;
    gap:0 4px;padding:0 20px;background:var(--fond);border-right:0;border-bottom:1px solid var(--ligne)}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe{margin:0}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe-titre{margin:0;padding:12px 14px;font-size:11px;color:var(--encre);cursor:default}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe-titre::after{content:"  ▾";color:var(--gris-2)}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe-corps{display:none;position:absolute;top:100%;left:20px;right:20px;z-index:40;max-width:1140px;max-height:72vh;
    overflow:auto;background:var(--papier);border:1px solid var(--encre);padding:18px 22px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
    gap:6px 24px;align-items:start}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe:hover .menu-groupe-corps,html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe:focus-within .menu-groupe-corps{display:grid}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe:first-child .menu-groupe-corps{display:flex;position:static;width:auto;border:0;padding:0;background:none}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe:first-child .menu-lien{padding:12px 14px}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-astuce{display:none}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-module summary{cursor:default;font-family:var(--titres);font-weight:400;font-size:16px;padding:4px 0;background:none}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-module summary::after,html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe-corps .menu-ico{display:none}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-ecrans{margin:0 0 12px;padding:0;border:0}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-ecrans .menu-lien,html[data-theme="prestige"]:not(.menu-ouvert) .menu-groupe-corps>.menu-lien{padding:3px 0;font-size:13.5px;border-radius:0}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-lien:hover{background:none;color:var(--accent)}
  html[data-theme="prestige"]:not(.menu-ouvert) .menu-lien.actif{background:none;color:var(--accent);text-decoration:underline;text-underline-offset:3px}
  html[data-theme="prestige"] .page,html[data-theme="prestige"] .corps.avec-menu .page{max-width:1180px;padding-top:36px}
  html[data-theme="prestige"] .bureau{height:calc(100vh - 107px)}
  html[data-theme="prestige"] .sommaire{top:107px}
  html[data-theme="prestige"].menu-ouvert:not(.dans-onglet) .menu-gauche{display:block;position:fixed;top:64px;left:0;bottom:0;height:auto;
    width:min(320px,86vw);z-index:40;border-right:1px solid var(--encre)}
  html[data-theme="prestige"].menu-ouvert .corps.avec-menu{padding-top:43px}
}

/* ================================================================ SUISSE : logiciel industriel sobre (0.5.0)
   Navigation graphite, contenu clair, UN seul bleu pour les actions, couleurs réservées aux états, coins de
   4 à 6 px, pas d'ombre forte, typographie avant la couleur. Espacements sur 4 / 8 / 12 / 16 / 24 / 32. */
html[data-theme="suisse"] body.app{
  --fond:#f5f6f8;--papier:#ffffff;--champ:#ffffff;--encre:#17202a;--encre-2:#334155;--gris:#64748b;--gris-2:#94a3b8;
  --ligne:#d9dee5;--ligne-2:#e9ecf1;--accent:#1f58a8;--accent-fonce:#18467f;--accent-doux:#eaf1fa;
  --ok:#2e7d4f;--ok-doux:#e8f3ec;--alerte:#b26b00;--alerte-doux:#fbf2e2;--alerte-texte:#7a4b05;--danger:#b42318;--danger-doux:#fbeae8;
  --rayon:6px;--ombre:0 1px 2px rgba(16,24,40,.06),0 4px 12px rgba(16,24,40,.08);--bord-champ:#cfd6df;--barre-fond:#111a26;
  --onglet-fond:#e9edf2;--bord-survol:#aebccd;--bord-alerte:#e8c27a;--violet-doux:#eceff7;--violet-texte:#3b4a73;
  --nav:#111a26;--nav-2:#162131;--nav-texte:#c3ccd8;--nav-gris:#7c889a;--nav-trait:#6fa1e8;--nav-filet:rgba(255,255,255,.07);
  font-size:14px}
/* une couleur par module : non, les modules restent neutres (la couleur dit un état, pas un module) */
html[data-theme="suisse"] :is(.tuile,.menu-module,.menu-lien,.bientot-carte,.puce){--c:#475569;--c-doux:#eef1f5}

/* typographie et page */
html[data-theme="suisse"] h1{font-size:26px;font-weight:650;letter-spacing:-.015em;margin-bottom:4px}
html[data-theme="suisse"] h2{font-size:17px;font-weight:650}
html[data-theme="suisse"] h3{font-size:14.5px;font-weight:650}
html[data-theme="suisse"] .page{padding:24px 32px 40px}
html[data-theme="suisse"] .entete{margin:0 0 24px;padding:0 0 16px;border-bottom:1px solid var(--ligne)}
html[data-theme="suisse"] .surtitre{font-size:11px;letter-spacing:.1em;font-weight:600;color:var(--gris)}
html[data-theme="suisse"] .sous-titre{font-size:14px;color:var(--gris);margin-bottom:0}
html[data-theme="suisse"] .section{display:flex;align-items:center;gap:12px;font-size:11.5px;letter-spacing:.1em;font-weight:650;
  color:var(--encre-2);margin:32px 0 12px}
html[data-theme="suisse"] .section::after{content:"";flex:1;border-top:1px solid var(--ligne)}
html[data-theme="suisse"] .titre-section .section{flex:1}
html[data-theme="suisse"] .pied{color:var(--gris-2);font-size:11.5px}

/* barre du haut : graphite, le nom de la société bien à part du nom du logiciel */
html[data-theme="suisse"] .barre{background:var(--nav);backdrop-filter:none;border-bottom:1px solid #0a111b;min-height:52px;height:52px;
  padding:0 20px;gap:12px}
html[data-theme="suisse"] .barre-marque{color:#fff;font-size:15px;letter-spacing:.02em}
html[data-theme="suisse"] .barre-marque b{color:#fff;font-weight:650}
html[data-theme="suisse"] .barre .logo{width:24px;height:24px;color:var(--nav-trait)}
html[data-theme="suisse"] .barre .logo-pivot{fill:#fff}
html[data-theme="suisse"] .barre .fil{font-size:13.5px;gap:10px}
html[data-theme="suisse"] .barre .fil a{color:#fff;font-weight:600}
html[data-theme="suisse"] .barre .fil a:hover{color:#dbe6f5}
html[data-theme="suisse"] .barre .fil span,html[data-theme="suisse"] .barre .fil-sep{color:var(--nav-gris)!important}
html[data-theme="suisse"] .barre .badge.essai{background:rgba(226,160,60,.16);color:#f0c36e}
html[data-theme="suisse"] .barre :is(.bouton-menu,.barre-lien,.menu-nom){color:var(--nav-texte)}
html[data-theme="suisse"] .barre :is(.bouton-menu,.barre-lien,.menu-compte summary){border-radius:5px}
html[data-theme="suisse"] .barre :is(.bouton-menu,.barre-lien,.menu-compte summary):hover{background:rgba(255,255,255,.08);color:#fff}
html[data-theme="suisse"] .barre-lien{font-weight:500;font-size:13px}
html[data-theme="suisse"] .avatar{width:28px;height:28px;font-size:11.5px;background:#2b3b52}
html[data-theme="suisse"] .menu-liste{border-radius:6px;padding:4px}
html[data-theme="suisse"] .menu-liste :is(a,button){border-radius:4px;font-size:13.5px;padding:8px 10px}

/* menu de gauche : graphite, état actif = un trait et un fond à peine plus clair */
html[data-theme="suisse"] .corps.avec-menu{grid-template-columns:248px minmax(0,1fr)}
html[data-theme="suisse"] .menu-gauche{top:53px;height:calc(100vh - 53px);background:var(--nav-2);border-right:1px solid #0a111b;
  padding:8px 10px 24px;scrollbar-width:thin;scrollbar-color:#2c3a4d transparent}
html[data-theme="suisse"] .menu-groupe{margin:0 0 4px}
html[data-theme="suisse"] .menu-groupe+.menu-groupe{border-top:1px solid var(--nav-filet);padding-top:4px}
html[data-theme="suisse"] .menu-groupe-titre{margin:16px 10px 6px;font-size:10.5px;letter-spacing:.12em;font-weight:600;color:var(--nav-gris)}
html[data-theme="suisse"] .menu-lien{color:var(--nav-texte);border-radius:4px;padding:6px 10px;font-size:13.5px;font-weight:500;
  transition:background .15s,color .15s}
html[data-theme="suisse"] .menu-lien:hover{background:rgba(255,255,255,.05);color:#fff}
html[data-theme="suisse"] .menu-lien.actif{background:rgba(255,255,255,.08);color:#fff;font-weight:600;box-shadow:inset 2px 0 0 var(--nav-trait)}
html[data-theme="suisse"] .menu-lien>.ico{width:16px;height:16px;color:var(--nav-gris)}
html[data-theme="suisse"] .menu-lien.actif>.ico{color:#fff}
html[data-theme="suisse"] .menu-module summary{color:#e3e8ef;font-weight:500;font-size:13.5px;border-radius:4px;padding:6px 10px;
  transition:background .15s}
html[data-theme="suisse"] .menu-module summary:hover{background:rgba(255,255,255,.05)}
html[data-theme="suisse"] .menu-module summary::after{border-color:var(--nav-gris);width:5px;height:5px;border-width:0 1.5px 1.5px 0}
html[data-theme="suisse"] .menu-ico{width:18px;height:18px;background:none;border-radius:0}
html[data-theme="suisse"] .menu-ico .ico{width:16px;height:16px;color:var(--nav-gris)}
html[data-theme="suisse"] .menu-module[open]>summary .menu-ico .ico{color:var(--nav-texte)}
html[data-theme="suisse"] .menu-ecrans{margin:2px 0 6px 18px;padding-left:8px;border-left:1px solid rgba(255,255,255,.1)}
html[data-theme="suisse"] .menu-ecrans .menu-lien{font-size:13px;padding:5px 10px}
html[data-theme="suisse"] :is(.menu-bientot,.menu-bientot em,.menu-astuce){color:#5d6a7d}
html[data-theme="suisse"] .menu-astuce{font-size:11px;line-height:1.5}

/* onglets du bureau : de vrais onglets de logiciel */
html[data-theme="suisse"] .bureau{height:calc(100vh - 53px)}
html[data-theme="suisse"] .onglets-barre{background:var(--onglet-fond);padding:6px 10px 0;gap:2px}
html[data-theme="suisse"] .onglets-liste{gap:2px}
html[data-theme="suisse"] .onglet-bouton{border-radius:5px 5px 0 0;border-color:transparent;background:transparent;transition:background .15s}
html[data-theme="suisse"] .onglet-bouton:hover{background:#dde3ea}
html[data-theme="suisse"] .onglet-bouton.actif{background:var(--papier);border-color:var(--ligne)}
html[data-theme="suisse"] .onglet-nom{font-size:12.5px;color:var(--gris);padding:7px 4px 7px 12px}
html[data-theme="suisse"] .onglet-bouton.actif .onglet-nom{color:var(--encre);font-weight:600}
html[data-theme="suisse"] .onglet-bouton button.onglet-fermer{font-size:14px;color:var(--gris-2);border-radius:4px;padding:2px 6px}
html[data-theme="suisse"] .onglet-plus{border-radius:4px}

/* boutons : un seul système, rectangulaires, coins de 5 px */
html[data-theme="suisse"] .btn{border-radius:5px;padding:7px 14px;min-height:34px;font-size:13.5px;font-weight:600;line-height:1.25;
  transition:background .15s,border-color .15s,color .15s,box-shadow .15s}
html[data-theme="suisse"] .btn .ico{width:16px;height:16px}
html[data-theme="suisse"] .btn-primaire{background:var(--accent);color:#fff;border-color:var(--accent)}
html[data-theme="suisse"] .btn-primaire:hover{background:var(--accent-fonce);border-color:var(--accent-fonce)}
html[data-theme="suisse"] .btn-primaire:active{background:#133a69}
html[data-theme="suisse"] .btn-second{background:var(--papier);color:var(--encre);border-color:var(--bord-champ)}
html[data-theme="suisse"] .btn-second:hover{background:#f6f8fa;border-color:var(--bord-survol)}
html[data-theme="suisse"] .btn-second:active{background:#eef1f5}
html[data-theme="suisse"] .btn-contour{background:transparent;color:var(--accent);border-color:var(--accent)}
html[data-theme="suisse"] .btn-contour:hover{background:var(--accent-doux)}
html[data-theme="suisse"] .btn-discret{background:transparent;color:var(--encre-2);border-color:transparent}
html[data-theme="suisse"] .btn-discret:hover{background:#eef1f5;color:var(--encre)}
html[data-theme="suisse"] .btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}
html[data-theme="suisse"] .btn-danger:hover{background:#9a1c13;border-color:#9a1c13}
html[data-theme="suisse"] .btn-icone{width:32px;min-height:32px;height:32px;padding:0}
html[data-theme="suisse"] .btn-petit{padding:4px 10px;min-height:28px;font-size:12.5px;border-radius:4px}
html[data-theme="suisse"] .btn.large{padding:9px 16px;min-height:40px}
html[data-theme="suisse"] :is(.btn,button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
html[data-theme="suisse"] :is(.btn:disabled,.btn[aria-disabled="true"],button:disabled){opacity:.45;cursor:not-allowed}
html[data-theme="suisse"] body.app button:not([class]){border-radius:5px}

/* champs */
html[data-theme="suisse"] :where(input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=tel],
  input[type=search],input[type=date],input:not([type]),select,textarea){border-radius:5px;padding:7px 10px;border-color:var(--bord-champ)}
html[data-theme="suisse"] :where(input,select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,88,168,.14)}
html[data-theme="suisse"] :where(form p label,.champ>label,.champ-titre){font-size:12.5px;font-weight:600;color:var(--encre-2);margin-bottom:4px}
html[data-theme="suisse"] :where(.champ,form p){margin-bottom:12px}
html[data-theme="suisse"] .choix label{border-radius:5px;padding:6px 10px;font-size:13.5px}
html[data-theme="suisse"] input[type=file]{border-radius:5px}

/* accueil et tuiles : des cartes sobres, l'icône discrète, « Ouvrir → » */
html[data-theme="suisse"] .tuiles{gap:12px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
html[data-theme="suisse"] .tuiles.petites{grid-template-columns:repeat(auto-fill,minmax(240px,300px))}
html[data-theme="suisse"] .tuile{border-radius:6px;box-shadow:none;padding:16px 18px 14px;gap:3px;transition:border-color .15s,box-shadow .15s}
html[data-theme="suisse"] .tuile::before{display:none}
html[data-theme="suisse"] .tuile:hover{transform:none;border-color:var(--bord-survol);box-shadow:0 2px 8px rgba(16,24,40,.07)}
html[data-theme="suisse"] .tuile-ico{width:auto;height:auto;background:none;border-radius:0;margin:0 0 10px;color:var(--gris);align-self:flex-start;display:block}
html[data-theme="suisse"] .tuile-ico .ico{width:20px;height:20px}
html[data-theme="suisse"] .tuile:hover .tuile-ico{color:var(--accent)}
html[data-theme="suisse"] .tuile-nom{font-size:15px;font-weight:650}
html[data-theme="suisse"] .tuile-desc{font-size:13px;line-height:1.45}
html[data-theme="suisse"] a.tuile::after{content:"Ouvrir →";margin-top:auto;padding-top:12px;font-size:12.5px;font-weight:600;color:var(--accent)}
html[data-theme="suisse"] a.tuile:has(.bientot)::after{content:none}
html[data-theme="suisse"] a.tuile:hover::after{text-decoration:underline;text-underline-offset:3px}
html[data-theme="suisse"] .bientot-carte{border-radius:6px}

/* cartes : sobres, sans ombre */
html[data-theme="suisse"] .carte{border-radius:6px;box-shadow:none;padding:20px 22px}
html[data-theme="suisse"] .carte h2{font-size:15.5px}
html[data-theme="suisse"] .carte h2 .ico{color:var(--gris);width:18px;height:18px}
html[data-theme="suisse"] .app .page>form{border-radius:6px}

/* tableaux : en-tête gris très clair, filets fins, survol discret */
html[data-theme="suisse"] .tableau{font-size:13.5px}
html[data-theme="suisse"] .tableau th{background:#f3f5f8;color:#475569;font-size:11px;font-weight:600;letter-spacing:.05em;padding:9px 12px;
  border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
html[data-theme="suisse"] .tableau td{padding:9px 12px;border-bottom:1px solid #e8ebf0}
html[data-theme="suisse"] .tableau tbody tr:hover>td{background:#f8fafc}
html[data-theme="suisse"] .tableau th.triable:hover{color:var(--encre)}
html[data-theme="suisse"] .tableau td:first-child>a{white-space:nowrap}   /* un n° de document ne se coupe pas */

/* badges et statuts : petits, fond léger, texte foncé */
html[data-theme="suisse"] :is(.badge,.pastille,.compte,.puce){border-radius:4px}
html[data-theme="suisse"] .badge{font-size:11.5px;font-weight:600;padding:2px 7px}
html[data-theme="suisse"] :is(.carte-pdp-qte,.carte-of-qte){border-radius:4px}

/* onglets d'une page, messages, sommaire */
html[data-theme="suisse"] .onglets{gap:2px;border-bottom:1px solid var(--ligne);margin-bottom:18px}
html[data-theme="suisse"] .entete .onglets{margin:12px 0 -17px;border-bottom:0}
html[data-theme="suisse"] .onglet{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;padding:8px 12px;color:var(--gris);
  font-size:13.5px;margin-bottom:-1px}
html[data-theme="suisse"] .onglet:hover{color:var(--encre);border-bottom-color:var(--bord-survol)}
html[data-theme="suisse"] .onglet.actif{background:none;color:var(--encre);border-bottom-color:var(--accent)}
html[data-theme="suisse"] .onglet.actif .a-venir{color:var(--gris)}
html[data-theme="suisse"] .message{border-radius:5px;border-left:3px solid currentColor;font-size:13.5px}
html[data-theme="suisse"] .sommaire{top:52px}
html[data-theme="suisse"] .sommaire a{border-radius:4px;font-size:13px;padding:5px 10px}
html[data-theme="suisse"] :is(.liste-liens li a,.confirmer[open] form){border-radius:6px}

@media (max-width:860px){
  html[data-theme="suisse"] .menu-gauche{top:53px;width:min(280px,86vw)}
  html[data-theme="suisse"] .page{padding:20px 16px 32px}
  html[data-theme="suisse"] .barre{height:auto;padding:6px 12px}
  html[data-theme="suisse"] :is(.tableau th,.tableau td){padding:8px}
}
