/* menu.css — Tâches 4.93 + 4.94 : menu en barre horizontale épurée + plein écran « Analyse & stats ».
   RÈGLE DE COULEURS : orange, bleu et jaune sont réservés aux usines (D85, S92, S89) : jamais pour autre chose.
   Principe d'ergonomie : bouton simple = texte seul ; bouton avec menu déroulant = pastille verte pleine + GROSSE flèche. */

.nav-cache{display:none !important;}              /* Saisie échantillon : plus dans le menu (déjà sur l'Accueil) */
.nav-group{position:relative;}

/* ── Bouton de menu déroulant (partout) : fond vert pâle, bord vert, grosse flèche ronde ── */
.nav-group-btn{display:inline-flex;align-items:center;gap:8px;}
.nav-group-caret{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#1e7a46;color:#fff;font-size:11px;line-height:1;transition:transform .22s ease;flex:0 0 auto;}
.nav-group.open>.nav-group-btn .nav-group-caret{transform:rotate(180deg);}

/* ── Plein écran : barre flottante (cachée tant qu'on n'y est pas) ── */
#pleinBarre{display:none;position:fixed;top:10px;right:14px;z-index:1200;gap:8px;align-items:center;}
body.plein-ecran #pleinBarre{display:flex;}
.plein-btn{display:inline-flex;align-items:center;gap:7px;border:2px solid #fff;border-radius:999px;background:#0f3d24;color:#fff;font-weight:800;font-size:14px;padding:9px 16px;min-height:42px;cursor:pointer;box-shadow:0 6px 20px rgba(15,61,36,.35);}
.plein-btn:hover{background:#1e7a46;}
.plein-btn.plein-sec{background:#fff;color:#0f3d24;border-color:#27995a;}
.plein-btn.plein-sec:hover{background:#e6f4ea;}
body.plein-ecran .sidebar,body.plein-ecran .mobile-mode-btn{display:none !important;}
body.plein-ecran .main{margin-left:0 !important;max-width:none !important;width:100%;padding:14px 20px;}
body.plein-ecran #sec-analyse .page-head{padding-right:330px;}
body.plein-ecran .an-layout{grid-template-columns:270px minmax(0,1fr);}
body.plein-ecran .queries-card{max-height:calc(100vh - 150px);}
@media (max-width:1100px){body.plein-ecran .an-layout{grid-template-columns:1fr;}}
/* bouton « Plein écran » dans l'en-tête de la page Analyse & stats */
#sec-analyse .page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.plein-entrer{display:inline-flex;align-items:center;gap:7px;font-weight:700;}
body.plein-ecran .plein-entrer{display:none;}
@media (max-width:640px){
  #pleinBarre{top:8px;right:8px;gap:6px;}
  .plein-btn{padding:8px 12px;font-size:13px;}
  .plein-btn.plein-sec{display:none;}
  body.plein-ecran #sec-analyse .page-head{padding-right:0;padding-top:48px;}
}
@media print{#pleinBarre,.plein-entrer{display:none !important;}}

/* ═════════ ORDINATEUR : UNE SEULE barre blanche, épurée ═════════ */
@media (min-width:961px){
  .app{display:block;min-height:100vh;}
  .sidebar,.mobile-mode .sidebar{position:sticky;top:0;bottom:auto;left:auto;right:auto;width:auto;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:9px 24px;overflow:visible;z-index:70;
    background:#fff;color:#2f4a3b;border-bottom:1px solid #dbe6df;box-shadow:0 2px 12px rgba(15,61,36,.08);}
  .sidebar .brand{border:0;margin:0;padding:0;flex:0 0 auto;white-space:nowrap;font-size:15px;color:#0f3d24;}
  .sidebar .brand .nav-toggle,.sidebar .brand .home-btn{display:none;}

  /* précédent / suivant : discrets mais bien visibles */
  .sidebar .hist-nav{flex:0 0 auto;display:flex;gap:6px;padding:0;margin-right:10px;}
  .sidebar .hist-nav button,.sidebar .hist-nav button:hover:not(:disabled){flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;padding:7px 11px;font-size:13px;font-weight:700;color:#166534;background:#fff;border:1.5px solid #b6d3c0;border-radius:10px;cursor:pointer;}
  .sidebar .hist-nav button:hover:not(:disabled){background:#e6f4ea;border-color:#27995a;}
  .sidebar .hist-nav button:disabled{opacity:.4;cursor:default;}

  .sidebar nav{display:contents;}                   /* les boutons deviennent directement les éléments de la barre */
  .sidebar .nav-group-right{order:4;margin-left:auto;}
  .nav-ico{display:none;}                           /* dans la barre : l'écriture seule (les dessins restent dans les listes) */

  /* bouton simple : texte seul, sans cadre */
  .sidebar nav>.nav-item{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;font-size:14.5px;font-weight:600;white-space:nowrap;border-radius:10px;background:transparent;color:#2f4a3b;border:0;}
  .sidebar nav>.nav-item:hover{background:#eef5f0;color:#0f3d24;}
  .sidebar nav>.nav-item.active{background:#1e7a46;color:#fff;}

  /* bouton à menu déroulant : pastille verte + grosse flèche ronde, nom TOUJOURS écrit */
  .sidebar .nav-group>.nav-group-btn{padding:6px 8px 6px 14px;font-size:14.5px;font-weight:700;white-space:nowrap;border-radius:12px;background:#dff1e6;border:1.5px solid #27995a;color:#14532d;cursor:pointer;}
  .sidebar .nav-group>.nav-group-btn:hover{background:#cdeadb;color:#0f3d24;}
  .sidebar .nav-group.open>.nav-group-btn{background:#cdeadb;box-shadow:0 0 0 3px rgba(39,153,90,.2);}
  .sidebar .nav-group.has-active>.nav-group-btn{background:#1e7a46;border-color:#1e7a46;color:#fff;}
  .sidebar .nav-group.has-active>.nav-group-btn .nav-group-caret{background:#fff;color:#1e7a46;}
  .sidebar .nav-group>.nav-group-btn::after,.sidebar .nav-group>.nav-group-btn::before{display:none !important;}   /* pas de bulle d'aide générique */

  /* liste qui s'ouvre */
  .nav-group>.nav-group-panel{display:flex;flex-direction:column;gap:2px;position:absolute;top:calc(100% + 8px);left:0;min-width:250px;padding:8px;background:#fff;border:1px solid #d6e4db;border-radius:14px;box-shadow:0 18px 44px rgba(15,61,36,.2);
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .18s ease,transform .2s ease,visibility .2s;z-index:80;}
  .nav-group.open>.nav-group-panel{opacity:1;visibility:visible;transform:none;}
  .nav-group-right>.nav-group-panel{left:auto;right:0;min-width:300px;}
  .nav-group-panel .nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:11px 13px;font-size:14px;font-weight:600;color:#2f4a3b;background:transparent;border-radius:10px;}
  .nav-group-panel .nav-item:hover{background:#eef5f0;color:#0f3d24;}
  .nav-group-panel .nav-item.active{background:#e3f1e8;color:#14532d;box-shadow:inset 4px 0 0 #1e7a46;}
  .nav-group-panel .nav-item.logout{color:#b91c1c;}
  .nav-group-panel .nav-item.logout:hover{background:#fdeaea;color:#991b1b;}
  .nav-group-panel .side-bottom{border:0;padding:2px;gap:6px;max-height:none;overflow:visible;}
  .nav-group-panel .user-chip{background:#f0f6f2;color:#14532d;}
  .nav-group-panel .user-chip em{color:#5b7a69;}
  .nav-group-panel .lang-select-label{color:#5b7a69;}
  .nav-group-panel .lang-select{background:#fff;color:#14532d;border:1px solid #b6d3c0;}
  .nav-group-panel .lang-select option{background:#fff;color:#14532d;}

  /* infobulles d'aide : sous les boutons de la barre, à gauche pour le menu Compte */
  .sidebar nav>.nav-item[data-help]:hover::after{left:0;top:calc(100% + 8px);transform:none;}
  .nav-group-right .nav-item[data-help]:hover::after{left:auto;right:calc(100% + 10px);}

  /* le contenu prend toute la largeur */
  .main,.mobile-mode .main{margin-left:0;max-width:none;width:100%;padding:22px 28px;}
  #navPad.gauche{left:14px;}
}
@media (min-width:961px) and (max-width:1620px){
  .sidebar .brand span{display:none;}                /* seul le logo reste (il ramène à l'Accueil) */
  .sidebar .hist-nav button span{display:none;}      /* flèches seules (le titre de chaque bouton explique) */
  .sidebar .hist-nav button{padding:7px 10px;font-size:14px;}
}
@media (min-width:961px) and (max-width:1400px){
  .sidebar,.mobile-mode .sidebar{padding-left:16px;padding-right:16px;gap:6px 4px;}
  .sidebar nav>.nav-item{padding:8px 10px;font-size:14px;}
  .sidebar .nav-group>.nav-group-btn{font-size:14px;padding:5px 7px 5px 11px;gap:6px;}
}
@media (min-width:961px) and (max-width:1180px){
  .sidebar,.mobile-mode .sidebar{position:relative;gap:6px 4px;padding-left:16px;padding-right:16px;}      /* tablette paysage : la barre défile avec la page */
  .sidebar nav>.nav-item{padding:8px 10px;font-size:14px;}
  .sidebar .nav-group>.nav-group-btn{font-size:14px;padding:5px 7px 5px 11px;gap:6px;}
  .sidebar .hist-nav button span{display:none;}      /* flèches seules quand la place manque */
}

/* ═════════ TÉLÉPHONE / TABLETTE : liste dépliable, menus en accordéon ═════════ */
@media (max-width:960px){
  .nav-group{display:block;}
  .nav-group>.nav-group-btn{display:flex;width:100%;justify-content:flex-start;gap:10px;min-height:50px;padding:10px 12px 10px 14px;margin:2px 0;
    background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.35);border-radius:12px;color:#fff;font-size:15.5px;font-weight:700;}
  .nav-group>.nav-group-btn .nav-group-t{flex:1;text-align:left;}
  .nav-group>.nav-group-btn .nav-group-caret{width:30px;height:30px;font-size:13px;background:#fff;color:#0f3d24;}
  .nav-group.has-active>.nav-group-btn{background:var(--g6);border-color:var(--g6);}
  .nav-group>.nav-group-panel{display:none;flex-direction:column;gap:2px;margin:2px 0 8px 14px;padding-left:10px;border-left:3px solid #27995a;}
  .nav-group.open>.nav-group-panel{display:flex;}
  .nav-group-panel .nav-item{display:flex;align-items:center;gap:10px;}
  .nav-group-panel .side-bottom{border:0;padding:6px 0 0;}
  .sidebar .hist-nav button{display:inline-flex;align-items:center;justify-content:center;gap:6px;}
}
