/* ============================================================================
   CabMaster — portail de gestion
   Habillage commun : bleu nuit, touches dorées, logo et boutons cohérents.
   Cette feuille porte l'identité reprise de la vitrine (mêmes variables), et
   redéfinit les anciennes classes des pages de gestion pour qu'elles prennent
   le nouvel aspect sans réécriture de leur logique.
   ========================================================================== */

:root{
  /* identité CabMaster — mêmes valeurs que la vitrine */
  --nuit:#0B132B; --nuit-2:#0d1833; --nuit-3:#111f42; --carte:rgba(255,255,255,.035);
  --or:#D4AF37; --or-clair:#e8c766; --bleu:#1B3A6B;
  --encre:#f1f5f9; --doux:#cbd5e1; --muted:#94a3b8; --ligne:rgba(212,175,55,.22);
  --ok:#4ade80; --attn:#fbbf24; --stop:#f87171;

  /* surfaces du portail */
  --fond:#080e20; --panneau:#0d1730; --panneau-2:#111d3b; --bordure:rgba(212,175,55,.18);
  --bordure-2:rgba(255,255,255,.09);
  --ok-fond:rgba(74,222,128,.13); --attn-fond:rgba(251,191,36,.13); --stop-fond:rgba(248,113,113,.13);
  --info:#7fb3ff; --info-fond:rgba(127,179,255,.13);
  --cote:292px; --r:14px;

  /* Noms des anciennes variables des pages de gestion. Elles pointent maintenant
     vers la palette du portail : les pages déjà en service gardent leurs règles,
     mais plus aucun texte ne se retrouve en encre sombre sur fond bleu nuit. */
  --bg:#0a1226; --card:#0d1730; --ink:#f1f5f9; --line:rgba(255,255,255,.09);
  --accent:var(--or); --accent-soft:rgba(212,175,55,.13);
  --ok-soft:rgba(74,222,128,.13); --warn:var(--attn); --warn-soft:rgba(251,191,36,.13);
  --stop-soft:rgba(248,113,113,.13); --info-soft:rgba(127,179,255,.13);
}

*{box-sizing:border-box}
html,body{margin:0}
body{
  background:var(--fond); color:var(--encre);
  font:15.5px/1.55 "Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:Cinzel,Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:.01em}
a{color:var(--or-clair)}
code{background:rgba(255,255,255,.06);padding:1px 6px;border-radius:5px;font-size:12.5px;
  color:var(--or-clair);word-break:break-all}

/* ---------------------------------------------------------------- structure */
.admin{display:grid;grid-template-columns:var(--cote) minmax(0,1fr);min-height:100vh}
.cote{
  grid-column:1;background:linear-gradient(180deg,var(--nuit-2),var(--fond) 62%);
  border-right:1px solid var(--bordure);position:sticky;top:0;height:100vh;
  overflow-y:auto;overflow-x:hidden;
  display:flex;flex-direction:column;z-index:40
}
.principal-admin{grid-column:2;min-width:0;display:flex;flex-direction:column}
.contenu{max-width:1420px;width:100%;padding:24px 30px 64px;margin:0 auto}

/* --------------------------------------------------------------- marque */
.marque-admin{display:flex;align-items:center;gap:12px;padding:18px 20px 16px;
  border-bottom:1px solid var(--bordure);text-decoration:none;color:inherit}
.marque-admin img{width:46px;height:46px;border-radius:11px;object-fit:cover;
  border:1px solid var(--bordure)}
.marque-admin b{display:block;font-family:Cinzel,Georgia,serif;font-size:17px;letter-spacing:.09em;
  color:#fff}
.marque-admin span{display:block;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--or)}

/* --------------------------------------------------------------- navigation */
.nav-admin{padding:14px 12px 22px;display:flex;flex-direction:column;gap:2px;flex:1}
.groupe-nav{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--muted);
  margin:16px 10px 6px;font-weight:700}
.groupe-nav:first-child{margin-top:2px}
.lien-nav{
  display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;
  color:var(--doux);text-decoration:none;font-size:14px;font-weight:500;position:relative;
  transition:background .16s,color .16s;border:1px solid transparent;flex-wrap:wrap
}
.lien-nav svg{width:19px;height:19px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;opacity:.85}
/* L'intitulé garde des mots entiers : il se replie sur deux lignes au lieu de se couper
   au milieu d'un mot. Si l'intitulé et le badge ne tiennent pas côte à côte, le badge
   passe à la ligne suivante. */
.lien-nav span:first-of-type{min-width:0}
.lien-nav:hover{background:rgba(255,255,255,.05);color:#fff}
.lien-nav.actif{background:rgba(212,175,55,.13);color:#fff;border-color:var(--bordure)}
.lien-nav.actif:before{content:'';position:absolute;left:-12px;top:9px;bottom:9px;width:3px;
  border-radius:0 3px 3px 0;background:var(--or)}
.lien-nav .etat{font-size:9px;letter-spacing:.07em;text-transform:uppercase;padding:2px 6px;
  border-radius:20px;margin-left:auto;flex:none;white-space:nowrap}
.etat-dev{background:rgba(255,255,255,.07);color:var(--muted);border:1px solid var(--bordure-2)}
.etat-ia{background:rgba(127,179,255,.14);color:var(--info);border:1px solid rgba(127,179,255,.32)}

.pied-nav{padding:14px 20px 20px;border-top:1px solid var(--bordure);font-size:12.5px;
  color:var(--muted);display:flex;flex-direction:column;gap:8px}
.pied-nav a{color:var(--muted);text-decoration:none;display:flex;align-items:center;gap:8px}
.pied-nav a:hover{color:var(--or-clair)}

/* --------------------------------------------------------------- barre haute */
.barre-haut{
  position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;
  padding:13px 30px;background:rgba(8,14,32,.92);backdrop-filter:blur(9px);
  border-bottom:1px solid var(--bordure)
}
.barre-haut .titre-page{font-family:Cinzel,Georgia,serif;font-size:19px;color:#fff;margin:0;
  flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.barre-haut .fil{font-size:12.5px;color:var(--muted);margin:0}
.burger{display:none;background:transparent;border:1px solid var(--bordure);color:var(--or);
  border-radius:10px;padding:8px 11px;font-size:16px;line-height:1;cursor:pointer}
.compte{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}
.compte b{color:var(--encre);font-weight:600}
.rond-compte{width:32px;height:32px;border-radius:50%;background:rgba(212,175,55,.16);
  border:1px solid var(--bordure);display:grid;place-items:center;color:var(--or);
  font-weight:700;font-size:13px;font-family:Cinzel,serif}
.voile{display:none;position:fixed;inset:0;background:rgba(4,8,18,.62);z-index:35}

/* --------------------------------------------------------------- composants */
.carte{
  background:var(--panneau);border:1px solid var(--bordure);border-radius:var(--r);
  padding:19px 20px;min-width:0
}
.carte+.carte{margin-top:18px}
.titre-bloc{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:11.5px;font-weight:700;
  letter-spacing:.15em;text-transform:uppercase;color:var(--or);margin:0 0 13px;
  display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.titre-bloc .compte{color:var(--muted);font-size:11.5px;letter-spacing:.04em;text-transform:none;
  font-weight:500}
.hint{font-size:12.5px;color:var(--muted);margin-top:6px;line-height:1.5}
.hint strong{color:var(--doux)}
.vide{color:var(--muted);font-size:14px;font-style:normal;padding:8px 0}

/* indicateurs */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:14px}
.kpi{background:var(--panneau);border:1px solid var(--bordure);border-radius:var(--r);
  padding:16px 17px;position:relative;overflow:hidden;text-decoration:none;color:inherit;
  display:block;transition:transform .18s,border-color .18s}
a.kpi:hover{transform:translateY(-2px);border-color:rgba(212,175,55,.45)}
.kpi .etiquette{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  font-weight:600}
.kpi .valeur{font-family:Cinzel,Georgia,serif;font-size:31px;line-height:1.15;color:#fff;
  margin-top:7px;font-variant-numeric:tabular-nums}
.kpi .detail{font-size:12.5px;color:var(--muted);margin-top:6px}
.kpi.or{background:linear-gradient(140deg,rgba(212,175,55,.15),var(--panneau) 68%);
  border-color:rgba(212,175,55,.42)}
.kpi.or .valeur{color:var(--or-clair)}
.kpi.attn{border-color:rgba(251,191,36,.42)}
.kpi.attn .valeur{color:var(--attn)}
.kpi.ok{border-color:rgba(74,222,128,.34)}
.kpi.ok .valeur{color:var(--ok)}

/* pastilles d'état */
.pastille{
  display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;
  padding:3px 9px;border-radius:20px;white-space:nowrap;line-height:1.5;
  background:rgba(255,255,255,.07);color:var(--doux);border:1px solid var(--bordure-2)
}
.p-ok{background:var(--ok-fond);color:var(--ok);border-color:rgba(74,222,128,.34)}
.p-non{background:var(--attn-fond);color:var(--attn);border-color:rgba(251,191,36,.34)}
.p-stop{background:var(--stop-fond);color:var(--stop);border-color:rgba(248,113,113,.34)}
.p-etape{background:var(--info-fond);color:var(--info);border-color:rgba(127,179,255,.32)}

/* boutons */
button,.btn{
  font:inherit;font-size:14px;font-weight:600;border-radius:10px;cursor:pointer;
  padding:10px 16px;border:1px solid var(--bordure);background:rgba(255,255,255,.045);
  color:var(--encre);transition:background .16s,border-color .16s,color .16s;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;
  line-height:1.3
}
button:hover,.btn:hover{background:rgba(255,255,255,.09);border-color:rgba(212,175,55,.45)}
button:disabled{opacity:.5;cursor:not-allowed}
button.primary,button.valider,.btn.or{
  background:linear-gradient(135deg,var(--or),var(--or-clair));border-color:var(--or);
  color:#14183a;font-weight:700
}
button.primary:hover,button.valider:hover,.btn.or:hover{filter:brightness(1.08);
  border-color:var(--or-clair)}
.btn.discret{background:transparent;color:var(--doux)}
.btn.danger{color:var(--stop);border-color:rgba(248,113,113,.34)}
.btn.danger:hover{background:var(--stop-fond)}
.btn.petit,button.petit{font-size:12.5px;padding:7px 12px;border-radius:9px}

.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;align-items:center}
.actions.tasse{margin-top:10px}

/* listes d'éléments (ancienne présentation reprise) */
.liste{display:flex;flex-direction:column;gap:8px;max-height:74vh;overflow:auto;padding-right:2px}
.item{border:1px solid var(--bordure-2);border-radius:11px;padding:11px 13px;cursor:pointer;
  background:rgba(255,255,255,.03);text-align:left;font:inherit;color:inherit;width:100%;
  display:block}
.item:hover{border-color:rgba(212,175,55,.5);background:rgba(212,175,55,.08)}
.item.actif{border-color:var(--or);background:rgba(212,175,55,.12)}
.item .id{font-weight:700;font-size:13.5px}
.item .ligne{font-size:12.5px;color:var(--muted);margin-top:3px}

/* tableaux */
.tab{width:100%;border-collapse:collapse;font-size:14px}
.tab thead th{
  text-align:left;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);
  font-weight:700;padding:0 12px 10px;border-bottom:1px solid var(--bordure);white-space:nowrap
}
.tab tbody td{padding:12px;border-bottom:1px solid var(--bordure-2);vertical-align:top}
.tab tbody tr:hover{background:rgba(255,255,255,.028)}
.tab tbody tr.actif{background:rgba(212,175,55,.1)}
.tab tbody tr:last-child td{border-bottom:0}
.tab .fort{font-weight:600;color:#fff}
.tab .prix{font-variant-numeric:tabular-nums;font-weight:700;color:var(--or-clair);white-space:nowrap}
.tab .date{font-variant-numeric:tabular-nums;white-space:nowrap}
.tab .statuts{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.tabau{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tabau .tab{min-width:940px}

/* ancienne table de détail (.det) */
table.det{width:100%;border-collapse:collapse;font-size:14px}
table.det td{padding:8px 0;border-top:1px solid var(--bordure-2);vertical-align:top}
table.det tr:first-child td{border-top:0}
table.det td:first-child{color:var(--muted);width:42%;padding-right:14px}
table.det td:last-child{color:var(--encre)}

/* blocs du détail */
.bloc{margin-top:20px}
.bloc:first-child{margin-top:0}
.bloc>.titre-bloc{margin-bottom:12px}
.grille-blocs{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;
  align-items:start}
.bloc-carte{background:var(--panneau-2);border:1px solid var(--bordure-2);border-radius:12px;
  padding:15px 16px;min-width:0}
.bloc-carte .titre-bloc{margin-bottom:11px}
.paire{display:flex;justify-content:space-between;gap:14px;padding:7px 0;
  border-top:1px solid var(--bordure-2);font-size:13.5px}
.paire:first-of-type{border-top:0}
.paire .cle{color:var(--muted);flex:none}
.paire .val{text-align:right;color:var(--encre);font-weight:500;min-width:0;word-break:break-word}
.paire .val.fort{font-weight:700;color:#fff}

/* zone repliable (détails techniques) */
details.repli{margin-top:18px;border:1px solid var(--bordure-2);border-radius:12px;
  background:rgba(255,255,255,.022);overflow:hidden}
details.repli>summary{padding:12px 16px;cursor:pointer;font-size:12.5px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;color:var(--muted);list-style:none;
  display:flex;align-items:center;gap:9px}
details.repli>summary::-webkit-details-marker{display:none}
details.repli>summary:before{content:'▸';color:var(--or);font-size:13px;transition:transform .2s}
details.repli[open]>summary:before{transform:rotate(90deg)}
details.repli>summary:hover{color:var(--doux)}
details.repli .interieur{padding:2px 16px 16px}

/* encarts d'information */
.banner,.retour-ok,.retour-ko,.retour-attn{
  border-radius:11px;padding:11px 14px;font-size:13.5px;margin-top:14px;line-height:1.5
}
.banner{background:var(--info-fond);border:1px solid rgba(127,179,255,.3);color:#cfe0ff}
.retour-ok{background:var(--ok-fond);border:1px solid rgba(74,222,128,.3);color:#c8f3d8}
.retour-ko{background:var(--stop-fond);border:1px solid rgba(248,113,113,.32);color:#ffd5d5}
.retour-attn{background:var(--attn-fond);border:1px solid rgba(251,191,36,.32);color:#ffe9b8}
.retour-ok a,.retour-ko a,.retour-attn a,.banner a{color:inherit;text-decoration:underline}
.acces{margin-top:12px;padding:10px 13px;border-radius:10px;background: var(--info-fond);
  border:1px solid rgba(127,179,255,.3);font-size:13px}

/* formulaires */
label{display:block;font-size:12.5px;font-weight:600;margin-bottom:6px;color:var(--doux)}
input,select,textarea{
  width:100%;padding:10px 12px;border:1px solid var(--bordure-2);border-radius:10px;
  font:inherit;font-size:14px;background:rgba(4,9,22,.6);color:var(--encre)
}
input::placeholder,textarea::placeholder{color:#64708c}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--or);
  box-shadow:0 0 0 3px rgba(212,175,55,.16)}
select option{background:var(--panneau);color:var(--encre)}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.champ{margin-top:12px}
.barre-outils{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-bottom:16px}
.barre-outils .champ{margin-top:0;flex:1 1 190px;min-width:150px}
.barre-outils .champ.recherche{flex:2 1 300px}

.etapes-onglets{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px}
.etapes-onglets a,.etapes-onglets button{font-size:13px;padding:8px 14px;border-radius:20px}

/* suivi des étapes de la course (repris des pages existantes) */
.frise{display:flex;flex-wrap:wrap;margin-top:8px;border:1px solid var(--bordure-2);
  border-radius:11px;overflow:hidden}
.pas{flex:1 1 0;min-width:118px;padding:10px 12px;border-right:1px solid var(--bordure-2);
  background:rgba(255,255,255,.02)}
.pas:last-child{border-right:0}
.pas .n{font-size:12.5px;font-weight:600;color:var(--doux)}
.pas .d{font-size:11.5px;color:var(--muted);margin-top:3px}
.pas.fait{background:var(--ok-fond)}
.pas.fait .n{color:var(--ok)}
.pas.courante{box-shadow:inset 0 -3px 0 var(--or)}
.pas .etat{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.boutons-etapes{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.boutons-etapes button{font-size:12.5px;padding:8px 13px}
.hist{margin-top:10px;border:1px solid var(--bordure-2);border-radius:11px;overflow:hidden}
.hist .l{display:flex;gap:14px;padding:9px 14px;border-bottom:1px solid var(--bordure-2);
  font-size:13px;align-items:baseline}
.hist .l:last-child{border-bottom:0}
.hist .l:nth-child(odd){background:rgba(255,255,255,.02)}
.hist .q{width:190px;color:var(--muted);flex:none;font-variant-numeric:tabular-nums}
.hist .e{font-weight:600}
.hist .s{color:var(--muted);font-size:12px}

.colonnes{display:grid;grid-template-columns:400px minmax(0,1fr);gap:18px;margin-top:18px;
  align-items:start}
.colonnes>.carte{margin-top:0}
.sous-titre{font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  color:var(--or);margin:20px 0 10px}
.sous-titre:first-child{margin-top:0}

/* page en préparation */
.preparation{max-width:820px}
.preparation .marque-dev{display:inline-flex;align-items:center;gap:9px;font-size:11px;
  letter-spacing:.17em;text-transform:uppercase;color:var(--attn);border:1px solid
  rgba(251,191,36,.36);background:var(--attn-fond);padding:6px 13px;border-radius:20px;
  font-weight:700}
.preparation h1{font-size:28px;margin:20px 0 10px;color:#fff}
.preparation .role{font-size:16px;color:var(--doux);margin:0 0 20px;line-height:1.6}
.preparation ul{margin:0;padding-left:0;list-style:none;display:grid;gap:9px}
.preparation li{position:relative;padding-left:24px;font-size:14px;color:var(--doux)}
.preparation li:before{content:'◆';position:absolute;left:2px;top:0;color:var(--or);font-size:10px}

/* Dossier signalé « à vérifier » : ni erreur, ni action bloquée — une décision à prendre. */
.champ select,.champ input{max-width:100%;box-sizing:border-box}
/* Un tableau technique large défile dans sa carte au lieu d'élargir la page. */
.bloc-carte table{max-width:100%}
.det{display:block;overflow-x:auto;max-width:100%}

/* Onglets de la liste des réservations : le compteur compte les RÉSERVATIONS, le
   détail annonce les courses à part — deux unités, deux affichages. */
.onglets{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 6px}
.onglet{display:flex;align-items:baseline;gap:8px;padding:9px 14px;border-radius:12px;
  background:var(--panneau);border:1px solid var(--bordure);color:var(--doux);
  font:inherit;font-size:13.5px;cursor:pointer;text-align:left;
  transition:border-color .2s,color .2s,background .2s}
.onglet:hover{border-color:var(--or);color:var(--clair)}
.onglet.actif{background:var(--or);border-color:var(--or);color:#0B132B;font-weight:700}
/* Sur l'onglet actif (fond doré), le compteur passe en encre sombre : sinon le gris
   « muted » devient illisible sur l'or (rapport mesuré 1,2 pour 3,0 exigé). */
.onglet.actif .compte,.onglet.actif .compteur{color:rgba(11,19,43,.78)}
.onglet .compteur{font-weight:700;font-size:15px}
.onglet .detail{font-size:11px;opacity:.85}
.onglet.actif .detail{opacity:.95}
@media (max-width:640px){
  .onglets{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}
  .onglet{flex:0 0 auto;flex-direction:column;align-items:flex-start;gap:2px;min-width:132px}
}

/* Choix de courses à annuler */
.choix-course{display:flex;gap:9px;align-items:center;margin-top:8px;padding:9px 11px;
  border:1px solid var(--bordure);border-radius:10px;font-size:13.5px;cursor:pointer}
.choix-course:hover{border-color:var(--or)}
.choix-course input{accent-color:var(--or)}
.rangee{display:flex;gap:8px;flex-wrap:wrap}
.ligne-demande{cursor:default;opacity:.94}

/* Pastille d'attente : un état qui demande une action, ni réussite ni refus. */
.pastille.p-attn{color:var(--attn);background:var(--attn-fond);
  border-color:rgba(251,191,36,.36)}
.dossier-a-verifier{display:inline-block;margin-top:12px;padding:6px 13px;border-radius:20px;
  font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;
  color:var(--attn);background:var(--attn-fond);border:1px solid rgba(251,191,36,.36)}

/* Une course annulée reste visible dans le planning, barrée et détachée des actions. */
.course.annulee{border-left-color:var(--stop);opacity:.78}
.course.annulee .heure,.course.annulee .client{text-decoration:line-through}

/* ------------------------------------------------- anciennes classes reprises */
/* Les pages de gestion déjà en service gardent leurs noms de classes : elles
   prennent simplement les couleurs et les formes du portail. */
.card{background:var(--panneau);border:1px solid var(--bordure);border-radius:var(--r);
  padding:19px 20px;min-width:0}
.lien{color:var(--or-clair);text-decoration:none}
.lien:hover{text-decoration:underline}
.carte h2,.carte .titre-bloc,.contenu h2{
  font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:11.5px;font-weight:700;
  letter-spacing:.15em;text-transform:uppercase;color:var(--or);margin:0 0 13px}
.contenu h2 .vide{color:var(--muted);font-size:11.5px;letter-spacing:.03em;text-transform:none;
  font-weight:500}

/* ---------------------------------------------------------------- téléphone */
@media(max-width:1040px){
  .colonnes{grid-template-columns:1fr}
}
@media(max-width:900px){
  .admin{grid-template-columns:1fr}
  .cote{
    position:fixed;left:0;top:0;width:290px;height:100vh;transform:translateX(-100%);
    transition:transform .26s ease;box-shadow:0 0 40px rgba(0,0,0,.6)
  }
  .admin.ouvert .cote{transform:none}
  .admin.ouvert .voile{display:block}
  .principal-admin{grid-column:1}
  .burger{display:inline-flex}
  .contenu{padding:18px 16px 56px}
  .barre-haut{padding:11px 16px;gap:11px}
  .barre-haut .titre-page{font-size:16px}
  .compte .nom-compte{display:none}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .grille-blocs{grid-template-columns:1fr}
  .kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:11px}
  .kpi .valeur{font-size:25px}
  .preparation h1{font-size:22px}
  .tabau .tab{min-width:820px}
  .barre-outils .champ{flex:1 1 100%}
}
@media(max-width:560px){
  .contenu{padding:14px 12px 48px}
  .carte{padding:15px 14px}
  .kpis{grid-template-columns:1fr 1fr}
  .kpi{padding:13px}
  .kpi .valeur{font-size:22px}
  .kpi .etiquette{font-size:10.5px}
  .barre-haut .fil{display:none}
}
@media print{.cote,.barre-haut,.actions,.boutons-etapes{display:none!important}
  .admin{grid-template-columns:1fr}}
