/* Lot Administration (09/11/2026) : les pages de l'Administration, d'après les maquettes administration-2026-11-08 (validées par Mike
   le 09/11, 0 h 29). Valeurs des maquettes (couleurs, tailles, espacements) ; thème sombre tiré des jetons de la charte. */
:root{--a-fond:#eef3fb;--a-carte:#fff;--a-filet:#e3e7ed;--a-filet-doux:#eef1f5;--a-encre:#0f1726;--a-gris:#5d6778;--a-titre:#2349b8;--a-lien:#2f5bd8;
  --a-bleu-doux:#e8eefc;--a-champ:#8b94a3;--a-bouton:#c9d0db;--a-pied:#fafbfd;--a-tete:#f1f3f6;
  --a-ambre:#935600;--a-ambre-fond:#fdf1dc;--a-ambre-bord:#e8b35c;--a-vert:#12733f;--a-vert-fond:#e3f4ea;--a-rouge:#c42b1c;--a-rouge-bord:#e8b4ae;--a-rouge-fond:#f6cfcb;
  --a-ombre:0 1px 2px rgba(15,23,38,.06),0 4px 12px rgba(15,23,38,.05);--a-eo:cubic-bezier(.23,1,.32,1)}
:root[data-theme="sombre"]{--a-fond:var(--canvas);--a-carte:var(--surface);--a-filet:#262d38;--a-filet-doux:#20262f;--a-encre:var(--encre);--a-gris:var(--ink-3);--a-titre:var(--accent-text);
  --a-lien:var(--cobalt);--a-bleu-doux:#1a2542;--a-champ:#5b6577;--a-bouton:#3a4352;--a-pied:#181d26;--a-tete:#1b212b;
  --a-ambre:var(--warning);--a-ambre-fond:rgba(240,180,87,.14);--a-ambre-bord:rgba(240,180,87,.45);--a-vert:var(--success);--a-vert-fond:#13291d;--a-rouge:var(--danger);--a-rouge-bord:var(--danger-bord);--a-rouge-fond:rgba(255,138,128,.25);
  --a-ombre:0 0 0 1px #262d38}

/* la coque : la page de l'Administration occupe toute la largeur, sa colonne de navigation à gauche */
body.adm-page main.page{padding:0;max-width:none}
.adm [hidden]{display:none!important}
.adm{display:flex;gap:0;align-items:stretch;min-height:100vh;background:var(--a-fond);color:var(--a-encre);font-variant-numeric:normal}
.adm-sous-l{margin:-10px 0 0;font-size:14px;color:var(--a-gris)}
.adm a{color:var(--a-lien);text-decoration:none}
@media (hover:hover) and (pointer:fine){.adm a:hover{text-decoration:underline}}
.adm-nav{flex:0 0 236px;background:var(--a-carte);border-right:1px solid var(--a-filet);padding:20px 12px;box-sizing:border-box}
.adm-nav .sub-t{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--a-gris);padding:14px 12px 6px}
.adm-nav .sub-i{display:block;padding:7px 12px;border-radius:7px;color:var(--a-encre);font-size:14px;line-height:20px}
.adm-nav .sub-i[aria-current="page"]{background:var(--a-bleu-doux);color:var(--a-titre);font-weight:600}
.adm-nav .sub-arch{color:var(--a-gris)}
@media (hover:hover) and (pointer:fine){.adm .adm-nav .sub-i:not([aria-current="page"]):hover{background:var(--a-tete);text-decoration:none}}
.adm-main{flex:999 1 560px;min-width:0;padding:24px 32px 40px;box-sizing:border-box;display:flex;flex-direction:column;gap:18px}
.adm-main>.succes,.adm-main>.alerte{margin:0}

/* en-tête : « Administration · Réglages », le titre, à droite « Valeurs en vigueur le » */
.adm-entete{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.adm-fil{font-size:13px;color:var(--a-gris);margin-bottom:4px}
.adm-entete h1{margin:0;font-size:26px;line-height:32px;font-weight:700;letter-spacing:-.015em;color:var(--a-encre)}
.adm-droite{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--a-gris)}
.adm-vigueur{display:flex;align-items:center;gap:10px;margin:0}
.adm-vigueur label{font-size:13px;color:var(--a-gris)}
.adm-vigueur input[type=date]{width:auto}

/* boutons (maquettes : .btn-g, .btn-p) ; un appui répond tout de suite (scale .97, 160 ms) */
.adm .btn-g{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:1px solid var(--a-bouton);border-radius:7px;background:var(--a-carte);color:var(--a-encre);
  font:500 13px/1 var(--police,'Geist',sans-serif);cursor:pointer;white-space:nowrap;transition:transform 160ms var(--a-eo),background-color 150ms ease;text-decoration:none}
.adm .btn-p{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border:0;border-radius:7px;background:var(--a-lien);color:#fff;font:600 13px/1 var(--police,'Geist',sans-serif);cursor:pointer;white-space:nowrap;transition:transform 160ms var(--a-eo),filter 150ms ease}
:root[data-theme="sombre"] .adm .btn-p{color:var(--on-accent)}
.adm .btn-g:active,.adm .btn-p:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.adm .btn-g:hover{background:var(--a-tete);text-decoration:none}.adm .btn-p:hover{filter:brightness(1.08);text-decoration:none}}
.adm .btn-g.rouge{color:var(--a-rouge);border-color:var(--a-rouge-bord)}
.adm .c-boutons .btn-g{height:32px;padding:0 12px}
.adm button.lien{background:none;border:0;padding:0;color:var(--a-lien);font:inherit;font-size:13px;cursor:pointer}
.adm :focus-visible{outline:2px solid var(--a-lien);outline-offset:2px}

/* puces « Aller à une carte » */
.adm-puces{display:flex;gap:8px;flex-wrap:wrap}
.adm .chip{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:999px;background:var(--a-carte);border:1px solid var(--a-filet);color:var(--a-encre);font-size:13px}
.adm .chip.chip-a{border-color:var(--a-ambre-bord);background:var(--a-ambre-fond);color:var(--a-ambre)}
@media (hover:hover) and (pointer:fine){.adm .chip:hover{border-color:var(--a-lien);text-decoration:none}}

/* la grille des cartes : trois colonnes, une carte large en prend deux ou trois */
/* la hauteur suit le contenu (Mike, 20/10/2026 : « aucune carte étirée » sur l'Administration, 99-hauteurs-captures) ; les maquettes du 08/11
   étirent les cartes d'une rangée (align-items:stretch) : question posée à Mike au rapport du lot */
.adm-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.adm-grille>.span2{grid-column:span 2}
.adm-grille>.span3{grid-column:span 3}
.adm-grille>.card.large.en-modif{grid-column:1/-1}
.adm-plan{display:flex;gap:20px;align-items:flex-start}
.adm-plan>.adm-grille{flex:999 1 520px;min-width:0}
.adm-pied{margin:0;font-size:12px;color:var(--a-gris)}

/* la carte */
.adm .card{background:var(--a-carte);border:1px solid var(--a-filet);border-radius:10px;display:flex;flex-direction:column;min-width:0;scroll-margin-top:16px}
.adm .card.card-a{border-color:var(--a-ambre-bord)}
.adm .card.en-modif{border-color:var(--a-lien);box-shadow:var(--a-ombre)}
.adm .c-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 10px}
.adm .c-t{margin:0;font-size:15px;line-height:20px;font-weight:700;color:var(--a-titre);letter-spacing:0}
.adm .c-lecture{display:flex;flex-direction:column;flex:1;min-width:0;overflow-x:auto}
.adm .kv{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:9px 18px;border-top:1px solid var(--a-filet-doux);font-size:14px;line-height:20px}
.adm .kv:first-child,.adm .c-note+.kv,.adm .sous+.kv,.adm .kv.kv-1{border-top:0}
.adm .sous+.kv{border-top:1px solid var(--a-filet-doux)}
.adm .kv-l{color:var(--a-gris)}
.adm .kv-v{font-weight:600;font-variant-numeric:tabular-nums;text-align:right;color:var(--a-encre)}
.adm .kv-v.m{font-weight:500}
.adm .kv-v.ph{color:var(--a-gris);font-weight:500}
.adm .kv-v.wa-t{color:var(--a-ambre);font-weight:500}
.adm .kv.kv-fort{border-top:1px solid var(--a-filet)}
.adm .kv.kv-texte{grid-template-columns:auto minmax(0,1fr)}
.adm .u{font-weight:400;color:var(--a-gris);font-size:13px}
.adm .sous{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--a-gris);padding:12px 18px 6px;border-top:1px solid var(--a-filet-doux)}
.adm .sous.sous-1{border-top:0}
.adm .sous .bas-casse{text-transform:none;letter-spacing:0}
.adm .c-note{padding:0 18px 8px;font-size:13px;line-height:18px;color:var(--a-gris)}
.adm .c-note.wa-t{color:var(--a-ambre)}
.adm .c-petit{padding:8px 18px 12px;font-size:12px;line-height:17px;color:var(--a-gris)}
.adm .deux{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.adm .deux>div:first-child{border-right:1px solid var(--a-filet-doux)}
.adm .deux .sous:first-child{border-top:0}
.adm .c-f{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;border-top:1px solid var(--a-filet);font-size:12px;line-height:16px;color:var(--a-gris);background:var(--a-pied);border-radius:0 0 10px 10px}
.adm .c-f a{font-size:12px}
.adm .marge{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-top:1px solid var(--a-filet);background:var(--a-bleu-doux)}
.adm .marge>span:first-child,.adm .marge>label{font-size:14px;color:var(--a-titre);font-weight:600}
.adm .marge b{font-size:22px;font-weight:700;color:var(--a-titre);font-variant-numeric:tabular-nums}
.adm .marge b small{font-size:13px;font-weight:500}
.adm .c-actions-l{display:flex;gap:8px;padding:8px 18px 14px;flex-wrap:wrap}

/* pastilles d'état (maquettes : .on, .off, .pill ok, wa, ne) */
.adm .pill{font-size:12px;line-height:16px;font-weight:600;padding:2px 8px;border-radius:5px;white-space:nowrap;display:inline-block}
.adm .pill.ok,.adm .on{color:var(--a-vert);background:var(--a-vert-fond)}
.adm .pill.wa{color:var(--a-ambre);background:var(--a-ambre-fond)}
.adm .pill.ne,.adm .off{color:var(--a-gris);background:var(--a-tete)}
.adm .on,.adm .off{font-size:12px;font-weight:600;padding:2px 8px;border-radius:5px}
.adm .pill.en-modif{color:var(--a-titre);background:var(--a-bleu-doux);padding:3px 8px}
.adm .tag{font-size:12px;font-weight:600;padding:2px 8px;border-radius:5px;background:var(--a-tete);color:var(--a-encre)}
.adm .tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.adm .tags-l{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 16px}
.adm .tags-l .tag{font-size:13px;font-weight:400;padding:4px 10px}
.adm .tags-l .tag.tag-d{background:var(--a-bleu-doux);color:var(--a-titre);font-weight:600}
.adm .ck{color:var(--a-lien);font-weight:700}

/* tableaux dans une carte (maquettes : .tb) */
.adm .tb{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.adm .tb th{background:var(--a-tete);color:var(--a-gris);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:8px 12px;text-align:right;white-space:nowrap}
.adm .tb th:first-child,.adm .tb td:first-child{text-align:left;padding-left:18px}
.adm .tb th:last-child,.adm .tb td:last-child{padding-right:18px}
.adm .tb td{padding:8px 12px;border-top:1px solid var(--a-filet-doux);text-align:right;font-weight:600;color:var(--a-encre)}
.adm .tb td:first-child{font-weight:400;color:var(--a-gris)}
.adm .tb td.m{font-weight:400;color:var(--a-gris)}
.adm .tb td.wa-t{color:var(--a-ambre);font-weight:500}
.adm .tb td.g,.adm .tb th.g{text-align:left}
.adm .seg button{white-space:nowrap}
.adm .tb input{width:100%;min-width:56px;height:30px;border:1px solid var(--a-champ);border-radius:6px;padding:0 6px;text-align:right;font:600 14px var(--police,'Geist',sans-serif);background:var(--a-carte);color:var(--a-encre);box-sizing:border-box}
.adm .tb input.g{text-align:left;font-weight:500}
.adm .tb select{height:30px;border:1px solid var(--a-champ);border-radius:6px;background:var(--a-carte);color:var(--a-encre);font:14px var(--police,'Geist',sans-serif)}
.adm .tb-scroll{overflow-x:auto}
.adm .seg{display:inline-flex;border:1px solid var(--a-bouton);border-radius:7px;overflow:hidden;font-size:13px}
.adm .seg button{padding:5px 10px;border:0;background:var(--a-carte);color:var(--a-encre);font:13px var(--police,'Geist',sans-serif);cursor:pointer}
.adm .seg button[aria-pressed="true"]{background:var(--a-bleu-doux);color:var(--a-titre);font-weight:600}
.adm .band{display:flex;height:10px;border-radius:5px;overflow:hidden;margin:4px 18px 6px}
.adm .band .band-moyen{background:#f6deb0}
.adm .band .band-bon{background:#bfe3cc}
.adm .prev{margin:0 18px 12px;height:96px;border:1px dashed var(--a-bouton);border-radius:8px;background:var(--a-tete);display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--a-gris);overflow:hidden}
.adm .prev img{max-height:84px;max-width:calc(100% - 24px);object-fit:contain}

/* la carte en modification (maquette PrixMargesModif) */
.adm .c-modif{display:flex;flex-direction:column;flex:1;margin:0;min-width:0;overflow-x:auto}
.adm .c-modif[hidden],.adm .c-lecture[hidden]{display:none}
.adm .c-champs{display:flex;flex-direction:column;padding-bottom:6px}
.adm .c-champs .deux>div{padding-bottom:6px}
.adm .ed{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:4px 12px;padding:6px 18px;border-top:1px solid var(--a-filet-doux);font-size:14px;line-height:19px}
.adm .ed.ed-l{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}
/* une adresse : le libellé au-dessus, le champ sur toute la largeur (l'adresse entière se lit, test 86-technicien) */
.adm .ed.ed-pleine,.adm .det-form .ed.ed-pleine{grid-template-columns:minmax(0,1fr)}
.adm .ed label,.adm .ed>span{color:var(--a-gris)}
.adm .ed-coche{cursor:pointer}
.adm .ed-coche input{justify-self:end;width:18px;height:18px;accent-color:var(--a-lien)}
.adm .fld{display:flex;align-items:center;height:32px;border:1px solid var(--a-champ);border-radius:7px;background:var(--a-carte);overflow:hidden;box-sizing:border-box}
.adm .fld input,.adm .fld select{flex:1;min-width:0;border:0;outline:0;height:100%;padding:0 8px;text-align:right;font:600 14px var(--police,'Geist',sans-serif);font-variant-numeric:tabular-nums;color:var(--a-encre);background:transparent;box-shadow:none}
.adm .fld select{text-align:left;font-weight:500}
.adm .ed.ed-l .fld input{text-align:left;font-weight:500}
.adm .fld>span{padding:0 8px;font-size:12px;color:var(--a-gris);background:var(--a-tete);height:100%;display:flex;align-items:center;border-left:1px solid var(--a-filet);white-space:nowrap}
.adm .fld:focus-within{border-color:var(--a-lien)}
.adm .fld.chg{border-color:var(--a-lien);box-shadow:0 0 0 2px var(--a-bleu-doux)}
.adm .was{font-size:12px;color:var(--a-gris);grid-column:2;text-align:right;margin-top:-2px}
.adm .fld-date{width:150px}
.adm .fld-date input{text-align:left}
.adm .c-zone{padding:6px 18px;border-top:1px solid var(--a-filet-doux)}
.adm .c-zone textarea{width:100%;box-sizing:border-box;min-height:120px;border:1px solid var(--a-champ);border-radius:7px;padding:8px;font:14px/1.45 var(--police,'Geist',sans-serif);color:var(--a-encre);background:var(--a-carte)}
.adm .c-zone label{display:block;font-size:13px;color:var(--a-gris);margin-bottom:4px}
.adm .c-zone input[type=file]{font-size:13px}
.adm .c-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--a-filet);margin-top:auto}
.adm .c-date{display:flex;align-items:center;gap:10px;font-size:14px;flex-wrap:wrap}
.adm .c-date label{color:var(--a-gris)}
.adm .c-mention{font-size:12px;color:var(--a-gris)}
.adm .c-boutons{display:flex;gap:8px}
.adm .card.en-modif .adm-modifier{display:none}

/* l'historique, à droite de la grille (maquette PrixMargesModif) */
.adm-histo{flex:1 1 340px;max-width:380px;position:sticky;top:16px}
.adm-histo[hidden]{display:none}
.adm-histo .c-note{padding-bottom:12px}
.adm .ver{padding:14px 18px;border-top:1px solid var(--a-filet);display:flex;flex-direction:column;gap:6px}
.adm .ver.ver-ok{background:var(--a-vert-fond)}
.adm .ver-t{display:flex;justify-content:space-between;align-items:center;gap:10px}
.adm .ver-t span:first-child{font-weight:600;font-size:14px}
.adm .ver-tag{font-size:12px;font-weight:600;color:var(--a-vert)}
.adm .ver-par{font-size:13px;color:var(--a-gris)}
.adm .ver-txt{font-size:13px;line-height:19px;overflow-wrap:anywhere}
.adm .ver.ver-fin{background:var(--a-pied);border-radius:0 0 10px 10px}
.adm .ver.ver-fin span{font-size:12px;color:var(--a-gris)}
.adm-histo{animation:adm-hist-entre 200ms var(--a-eo)}
@keyframes adm-hist-entre{from{opacity:0;transform:translateX(8px)}}
@media (prefers-reduced-motion:reduce){.adm-histo{animation:adm-hist-fondu 150ms ease}@keyframes adm-hist-fondu{from{opacity:0}}}

/* Accueil (maquette Main) */
.adm-accueil{gap:28px;padding-top:28px}
.adm-accueil .adm-entete{align-items:baseline;justify-content:flex-start;gap:14px}
.adm-accueil .adm-entete .adm-sous{font-size:14px;color:var(--a-gris)}
.adm .todo-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;flex-wrap:wrap}
.adm .todo-h>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.adm .todo-h h2{margin:0;font-size:16px;font-weight:700;color:var(--a-titre)}
.adm .todo-h .pill{padding:3px 8px}
.adm .todo-h>span{font-size:13px;color:var(--a-gris)}
.adm .todo{display:grid;grid-template-columns:minmax(0,1fr) 200px 96px;align-items:center;gap:12px;padding:11px 18px;border-top:1px solid var(--a-filet);font-size:14px}
.adm .todo small{font-size:12px;color:var(--a-gris)}
.adm .todo>span:nth-child(2){color:var(--a-gris);font-size:13px}
.adm .todo>a{font-weight:600;text-align:right}
.adm .todo-vide{padding:11px 18px;border-top:1px solid var(--a-filet);font-size:14px;color:var(--a-gris)}
.adm .grp{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--a-gris);margin:0 0 10px}
.adm .tuiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}
.adm .tuiles.t3{grid-template-columns:repeat(3,minmax(0,1fr))}
.adm .tuiles .span1{grid-column:span 1}.adm .tuiles .span3{grid-column:span 3}
.adm .tile{background:var(--a-carte);border:1px solid var(--a-filet);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;color:var(--a-encre)}
.adm .tile-t{font-size:15px;font-weight:600;color:var(--a-titre)}
.adm .tile-d{font-size:13px;line-height:18px;color:var(--a-gris)}
.adm .tile-m{font-size:12px;color:var(--a-gris);margin-top:4px}
@media (hover:hover) and (pointer:fine){.adm a.tile:hover{border-color:var(--a-lien);text-decoration:none}}

/* le gabarit de liste (maquettes Comptes et Journal) : filtres, tableau, détail de la ligne choisie à droite */
/* une liste et son détail (maquettes Comptes et Journal) : deux colonnes de grille, la hauteur suit le contenu (règle du 20/10) */
.adm-liste{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:20px;align-items:start}
.adm-liste>.card{min-width:0;overflow-x:auto}
.adm-liste>.adm-detail{position:sticky;top:16px}
.adm-liste>:only-child{grid-column:1/-1}
.adm .lt{width:100%;border-collapse:collapse}
.adm .lt th{text-align:left;padding:9px 14px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--a-gris);background:var(--a-tete);white-space:nowrap}
.adm .lt td{padding:0 14px;height:48px;border-top:1px solid var(--a-filet-doux);font-size:14px;color:var(--a-encre)}
.adm .lt.serre td{height:44px}
.adm .lt td.ph,.adm .lt .gris{color:var(--a-gris)}
.adm .lt tr.choisi{background:var(--a-bleu-doux)}
.adm .lt tr[data-href]{cursor:pointer}
@media (hover:hover) and (pointer:fine){.adm .lt tr[data-href]:not(.choisi):hover{background:var(--a-pied)}}
.adm .lt td.coupe{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:0}
.adm .lt .mono{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;font-weight:500}
.adm .lt .pill{background:var(--a-tete);color:var(--a-encre)}
.adm .lt .pill.ok{color:var(--a-vert);background:var(--a-vert-fond)}.adm .lt .pill.wa{color:var(--a-ambre);background:var(--a-ambre-fond)}.adm .lt .pill.ne{color:var(--a-gris);background:var(--a-tete)}
.adm .av{width:30px;height:30px;border-radius:999px;background:var(--a-bleu-doux);color:var(--a-titre);font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px}
.adm .av.av-n{background:var(--a-tete);color:var(--a-gris);border:1px dashed var(--a-champ);box-sizing:border-box}
.adm .av.av-g{width:40px;height:40px;flex-basis:40px;font-size:14px}
.adm .nom{display:flex;align-items:center;gap:10px}
.adm .nom b{font-weight:600}
.adm .lt-pied{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-top:1px solid var(--a-filet);font-size:13px;color:var(--a-gris)}
.adm .filtres{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0}
.adm .sel{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 10px;border:1px solid var(--a-champ);border-radius:7px;background:var(--a-carte);font-size:13px;color:var(--a-encre);box-sizing:border-box}
.adm .sel input,.adm .sel select{border:0;outline:0;font:13px var(--police,'Geist',sans-serif);background:transparent;color:var(--a-encre);height:100%}
.adm .sel input{width:180px}
.adm .filtres .compte-l{font-size:13px;color:var(--a-gris);margin-left:auto}
.adm .det-h{display:flex;align-items:center;gap:12px;padding:16px 18px}
.adm .det-h .c-t+div{font-size:13px;color:var(--a-gris)}
.adm .det-t{padding:16px 18px 10px}
.adm .det-t div{font-size:13px;color:var(--a-gris);margin-top:2px}
.adm .kv2{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:10px 18px;border-top:1px solid var(--a-filet-doux);font-size:14px;line-height:20px}
.adm .kv2>span:first-child{color:var(--a-gris)}
.adm .kv2>span:last-child{overflow-wrap:anywhere}
.adm .det-pied{padding:14px 18px;border-top:1px solid var(--a-filet);display:flex;gap:8px;flex-wrap:wrap}
.adm .sw{width:34px;height:20px;border-radius:999px;background:var(--a-bouton);position:relative;flex:0 0 34px;appearance:none;-webkit-appearance:none;margin:0;cursor:pointer;border:0;transition:background-color 150ms ease}
.adm .sw::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:999px;background:#fff;transition:left 160ms var(--a-eo)}
.adm .sw:checked{background:var(--a-lien)}.adm .sw:checked::after{left:16px}
@media (prefers-reduced-motion:reduce){.adm .sw::after{transition:none}}
.adm .det-form{display:flex;flex-direction:column}
.adm .det-form .ed{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.adm .det-form .ed .fld input{text-align:left;font-weight:500}
.adm .det-form .c-boutons{padding:10px 18px 14px;justify-content:flex-end}
.adm .det-plus summary{cursor:pointer;padding:10px 18px;font-size:13px;font-weight:600;color:var(--a-lien);border-top:1px solid var(--a-filet-doux);list-style:none}
.adm .det-plus summary::-webkit-details-marker{display:none}
.adm .det-note{padding:4px 18px 10px;font-size:12px;color:var(--a-gris)}

/* les pages de contrôle qui gardent leur contenu : leurs tableaux et leurs blocs dans le cadre de l'Administration */
.adm-main>.bloc,.adm-main>.tab-scroll,.adm-main>section,.adm-main>form{margin:0}
.adm-main>.entete{display:none}

/* 1366 de large : trois colonnes gardées ; 390 : les colonnes s'empilent, rien ne déborde (prompt du lot, section 2) */
@media (max-width:1100px){
  .adm-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adm-grille>.span3{grid-column:span 2}
  .adm .tuiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adm .tuiles .span3,.adm .tuiles .span1{grid-column:span 2}
}
@media (max-width:760px){
  .adm{flex-direction:column}
  .adm-nav{flex:none;border-right:0;border-bottom:1px solid var(--a-filet);padding:10px 12px;display:flex;gap:4px;overflow-x:auto;white-space:nowrap}
  .adm-nav .sub-t{display:none}
  .adm-nav .sub-i{display:inline-block;flex:none}
  .adm-main{padding:16px 16px 32px;gap:14px}
  .adm-grille,.adm .tuiles,.adm .tuiles.t3{grid-template-columns:minmax(0,1fr)}
  .adm-grille>.span2,.adm-grille>.span3,.adm .tuiles .span3,.adm .tuiles .span1{grid-column:auto}
  .adm .deux{grid-template-columns:minmax(0,1fr)}
  .adm .deux>div:first-child{border-right:0}
  .adm-plan{flex-direction:column}
  .adm-histo,.adm-liste>.adm-detail{max-width:none;position:static;width:100%}
  .adm-liste{grid-template-columns:minmax(0,1fr)}
  .adm .todo{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"a c" "b c"}
  .adm .todo>span:first-child{grid-area:a}.adm .todo>span:nth-child(2){grid-area:b}.adm .todo>a{grid-area:c}
  .adm .ed{grid-template-columns:minmax(0,1fr) 130px}
  .adm .kv{grid-template-columns:minmax(0,1fr) minmax(0,auto)}
  .adm .kv-v{overflow-wrap:anywhere}
  .adm .c-actions{flex-direction:column;align-items:stretch}
  .adm .c-boutons{justify-content:flex-end}
  .adm .adm-entete h1{font-size:22px;line-height:28px}
}

/* le menu principal (toutes les pages) : les sous-entrées de « Gestion », plus petites et en retrait (maquettes : .rail-s) ; le compteur
   « N à saisir » de l'Administration, en rouge sur l'entrée allumée (maquette Main) */
.rail .nv.rail-s{height:28px;min-height:28px;padding-left:33px;font-size:13px;line-height:17px;font-weight:500}
.rail .nv.rail-s svg{display:none}
/* le menu fait 216 px (lot Fidélité) avec ses icônes : « N à saisir » passe sous « Administration », dans la même entrée, plutôt que coupé */
.rail .nv.nv-saisir{height:auto;min-height:32px;flex-wrap:wrap;row-gap:0;padding-top:5px;padding-bottom:5px}
.rail .nv em.compte.a-saisir{white-space:nowrap;flex-basis:100%;margin-left:25px;font-size:12px;line-height:15px}
.rail .nv[aria-current="page"] em.compte.a-saisir{color:#c42b1c}
:root[data-theme="sombre"] .rail .nv[aria-current="page"] em.compte.a-saisir{color:#c42b1c}
.adm .ed-radios{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;font-size:13px;color:var(--a-encre)}
.adm .ed-radios label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.adm .ed-radios input{accent-color:var(--a-lien)}

/* ---------- correctif du 09/11/2026 (PROMPT-CORRECTIF-ADMINISTRATION-2026-11-09.md) ---------- */
/* e : une valeur vide, en gris (le badge « À saisir » ne vient que de adm_a_saisir()) */
.adm .vide{color:var(--a-gris);font-weight:500}
/* a : la carte en modification, ou une carte dont l'historique est ouvert (maquette PrixMargesModif) : elle prend la largeur du contenu moins le
   panneau Historique (340 px, à droite, à la hauteur du titre de la page) ; les autres cartes tiennent sur une ligne qui cite leurs noms ;
   les puces et « Valeurs en vigueur le » s'effacent le temps de la modification. À 760 px et moins : la carte, puis l'Historique dessous. */
.adm-main.adm-focus{display:grid;grid-template-columns:minmax(0,1fr) 340px;column-gap:22px;row-gap:0;align-content:start;align-items:start}
.adm-main.adm-focus>*{grid-column:1;margin-bottom:18px}
.adm-main.adm-focus>.adm-plan{display:contents}
.adm-main.adm-focus .adm-grille{grid-column:1;display:flex;flex-direction:column;gap:18px;margin-bottom:18px}
.adm-main.adm-focus .adm-grille>.card:not(.adm-choisie):not(.adm-autres){display:none}
.adm-main.adm-focus .adm-histo{grid-column:2;grid-row:1/span 30;max-width:none;width:100%;margin:0;position:sticky;top:16px}
.adm-main.adm-focus .adm-puces,.adm-main.adm-focus .adm-vigueur{display:none}
.adm .card.adm-autres{opacity:.55}
.adm .card.adm-autres .c-t{font-size:15px;line-height:20px}
.adm .card.adm-autres .c-note{padding-bottom:14px}
/* b : l'historique, ce qui a changé ; la première version, « Valeur d'origine du CRM », en gris */
.adm .ver-orig{font-size:13px;line-height:19px;color:var(--a-gris)}
.adm a.ver-voir{font-size:13px}
/* c : la carte CEE, le tableau sur toute la largeur, les autres réglages en deux colonnes dessous */
.adm .deux.deux-filet{border-top:1px solid var(--a-filet-doux)}
.adm .deux.deux-filet>div>.kv:first-child{border-top:0}
/* d : le Journal (maquette) : date, dossier et « Par » sur une ligne, le détail sur la largeur qui reste, deux lignes au plus */
.adm .lt.journal{table-layout:fixed;min-width:640px}
.adm .lt.journal th.j-date{width:92px}.adm .lt.journal th.j-dos{width:136px}.adm .lt.journal th.j-act{width:150px}.adm .lt.journal th.j-par{width:132px}
.adm .lt.journal td{height:auto;padding:9px 14px;vertical-align:middle}
.adm .lt.journal td.j-date{white-space:nowrap}
.adm .lt.journal td.j-dos .mono{white-space:nowrap}
.adm .lt.journal td.j-act .pill{white-space:normal}
.adm .lt.journal td.j-par{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm .lt.journal td.j-det span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:19px}
@media (max-width:760px){
  .adm-main.adm-focus{grid-template-columns:minmax(0,1fr)}
  .adm-main.adm-focus .adm-histo{grid-column:1;grid-row:auto;position:static}
}
/* « rien ne déborde » (essai du correctif) : une ligne libellé et valeur garde au moins 40 % pour son libellé, la valeur se replie ; l'en-tête
   d'une carte passe à la ligne s'il le faut ; dans une carte choisie plus étroite que la maquette (sous 1440), les deux colonnes de champs
   s'empilent ; le tableau des prix minimums se resserre */
.adm .kv{grid-template-columns:minmax(40%,1fr) minmax(0,auto)}
.adm .kv>.kv-v{min-width:0;overflow-wrap:anywhere}
.adm .c-h{flex-wrap:wrap}
.adm .tb.tb-serre th{white-space:normal}
.adm .tb.tb-serre th,.adm .tb.tb-serre td{padding-left:8px;padding-right:8px}
.adm .tb.tb-serre th:first-child,.adm .tb.tb-serre td:first-child{padding-left:18px}
.adm .tb.tb-serre th:last-child,.adm .tb.tb-serre td:last-child{padding-right:18px}
@media (max-width:1439px){.adm-main.adm-focus .c-modif .deux{grid-template-columns:minmax(0,1fr)}.adm-main.adm-focus .c-modif .deux>div:first-child{border-right:0}}
/* la carte en modification n'a pas de pied (maquette PrixMargesModif) ; un titre de carte long passe à la ligne avant son bouton */
.adm .card.en-modif>.c-f{display:none}
.adm .c-h>.c-t{flex:1 1 0;min-width:min(10em,100%)}
/* un champ dont l'unité est longue (« jours avant chaque prélèvement ») s'élargit au lieu de cacher sa valeur ; 150 px au moins, comme la maquette */
.adm .ed{grid-template-columns:minmax(0,1fr) minmax(150px,auto)}
.adm .ed .fld input{width:0;flex:1 1 64px}
.adm .ed .fld>span{flex:none}

@media (max-width:760px){.adm .ed{grid-template-columns:minmax(0,1fr) minmax(130px,auto)}}

/* menu repliable (09/11/2026, demande de Mike de 17 h 31) : « Gestion » et, sur une page de l'Administration, « Administration » sont des
   boutons de même aspect que les autres entrées ; un petit chevron à droite du libellé, de sa couleur, vers la droite replié, vers le bas
   déplié ; les sous-entrées de Gestion et la colonne de l'Administration apparaissent en 150 ms (fondu court), sans mouvement sous
   prefers-reduced-motion (assets/menu.js ; état retenu posé avant l'affichage, MENU_ETAT_JS dans app/lib.php) */
.rail button.nv{border:0;margin:0;font-family:inherit;text-align:left;-webkit-appearance:none;appearance:none}
.rail .nv svg.chev{width:12px;height:12px;margin-left:-5px;stroke-width:2.4;transition:transform 150ms cubic-bezier(.23,1,.32,1)}
.rail .nv[aria-expanded="true"] svg.chev{transform:rotate(90deg)}
.rail .rail-sous{display:flex;flex-direction:column;gap:2px}
.rail .rail-sous[hidden]{display:none}
.rail .rail-sous.anime,.adm-nav.anime{animation:menu-plier-entree 150ms cubic-bezier(.23,1,.32,1)}
@keyframes menu-plier-entree{from{opacity:0}}
html.adm-nav-repliee .adm-nav{display:none}
@media (max-width:800px){.rail .rail-sous{display:contents}.rail .rail-sous[hidden]{display:none}}
@media (prefers-reduced-motion:reduce){.rail .nv svg.chev{transition:none}.rail .rail-sous.anime,.adm-nav.anime{animation:none}}
/* menu repliable (2 c) : au-dessus de 760 px, le Journal tient dans sa carte (plus de largeur minimale qui coupait « Par » au bord) ; les colonnes
   courtes prennent la largeur de leur texte (assets/admin.js), le Détail le reste */
@media (min-width:761px){.adm .lt.journal{min-width:0}}
.adm .lt.journal td,.adm .lt.journal th{padding-left:10px;padding-right:10px}.adm .lt.journal th{box-sizing:border-box}
/* de 761 à 1439 px, le détail du Journal fait 250 px au lieu de 340 : à 1366 avec la colonne de navigation, les colonnes courtes ne tenaient
   pas dans la carte (488 px pour 545 mesurés) et le titre « Détail » chevauchait « Par » à 280 px ; la maquette Journal met le détail dessous
   à 1366, gardé à droite : la liste fait jusqu'à 500 lignes */
@media (min-width:761px) and (max-width:1439px){.adm-liste.adm-liste-journal{grid-template-columns:minmax(0,1fr) minmax(0,250px)}}
/* à partir de 1440 px, 320 px comme la maquette Journal (planche maquette-journal-1440 : détail de 1087 à 1407 px), au lieu de 340 */
@media (min-width:1440px){.adm-liste.adm-liste-journal{grid-template-columns:minmax(0,1fr) minmax(0,320px)}}
