/* ch.753 — Paramètres › Maintenance : onglets « Outils » / « Interrupteurs », interrupteurs groupés par chantier (accordéon), fenêtre de détail.
   Charte du CRM : actif = #34D399 / texte #0F172A (R119) ; état vide neutre #64748B ; ambre = avertissement ; ⛔ rouge pour un état normal.
   Responsive par @media seulement ; la grille des cartes « Outils » (maintenance-c590.css) n'est PAS touchée. Zones tactiles ≥ 44 px. */
.mt753-onglets { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 14px; }
.mt753-onglet { min-height: 44px; padding: 0 18px; border-radius: 12px; border: 1px solid #CBD5E1; background: #FFFFFF; color: #334155; font-size: 14px; font-weight: 700; cursor: pointer;
  box-shadow: 0 1px 2px rgba(15,23,42,.06), inset 0 1px 0 #FFFFFF; transition: transform .12s, box-shadow .12s; }
.mt753-onglet:hover { transform: translateY(-1px); box-shadow: 0 6px 14px rgba(15,23,42,.08); }
.mt753-onglet-actif { background: #34D399; border-color: #10B981; color: #0F172A; }
.mt753-onglet:focus-visible, .mt753-compteur:focus-visible, .mt753-bascule:focus-visible, .mt753-ligne-texte:focus-visible { outline: 2px solid #22D3EE; outline-offset: 2px; }

.mt753-tete { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; justify-content: space-between; margin-bottom: 8px; }
.mt753-compteurs { display: flex; flex-wrap: wrap; gap: 6px; }
.mt753-compteur { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; padding: 0 14px; border-radius: 999px; border: 1px solid #CBD5E1; background: #FFFFFF; color: #334155; font-size: 13px; font-weight: 600; cursor: pointer; }
.mt753-compteur b { min-width: 24px; padding: 2px 8px; border-radius: 999px; background: #F1F5F9; color: #0F172A; font-size: 12px; text-align: center; }
.mt753-compteur-actif { background: #34D399; border-color: #10B981; color: #0F172A; }
.mt753-compteur-actif b { background: #FFFFFF; }
.mt753-recherche { flex: 1 1 260px; max-width: 420px; min-height: 44px; border: 1px solid #CBD5E1; border-radius: 12px; padding: 0 12px; font-size: 14px; box-sizing: border-box; background: #FFFFFF; }
.mt753-aide { font-size: 12.5px; color: #64748B; margin: 0 0 10px; }
.mt753-discret { font-size: 12px; color: #64748B; }

.mt753-groupes { display: flex; flex-direction: column; gap: 8px; }
.mt753-groupe { background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 12px; overflow: hidden; }
.mt753-groupe-tete { list-style: none; cursor: pointer; min-height: 44px; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; padding: 10px 14px; }
.mt753-groupe-tete::-webkit-details-marker { display: none; }
.mt753-groupe-tete::before { content: '▸'; color: #64748B; font-size: 13px; transition: transform .15s; }
.mt753-groupe[open] > .mt753-groupe-tete::before { transform: rotate(90deg); }
.mt753-groupe[open] > .mt753-groupe-tete { border-bottom: 1px solid #F1F5F9; background: #F8FAFC; }
.mt753-groupe-titre { flex: 1 1 260px; min-width: 0; font-size: 14px; color: #0F172A; overflow-wrap: anywhere; }
.mt753-pastilles { display: flex; flex-wrap: wrap; gap: 4px; }
.mt753-p { font-size: 11.5px; font-weight: 700; padding: 2px 8px; border-radius: 999px; white-space: nowrap; }
.mt753-p-on { background: #D1FAE5; color: #065F46; }
.mt753-p-off { background: #F1F5F9; color: #475569; }
.mt753-p-nc { background: #FEF3C7; color: #92400E; }
.mt753-groupe-date { font-size: 11.5px; color: #64748B; white-space: nowrap; }

.mt753-lignes { padding: 2px 14px 6px; }
.mt753-ligne { display: flex; align-items: center; gap: 10px; padding: 6px 0; border-bottom: 1px solid #F1F5F9; }
.mt753-ligne:last-child { border-bottom: 0; }
.mt753-ligne-texte { flex: 1 1 auto; min-width: 0; min-height: 44px; text-align: left; background: none; border: 0; padding: 4px 0; cursor: pointer; display: flex; flex-direction: column; justify-content: center; gap: 2px; font-family: inherit; }
.mt753-lib { font-size: 13px; font-weight: 600; color: #0F172A; overflow-wrap: anywhere; }
.mt753-ligne-texte:hover .mt753-lib { text-decoration: underline; }
.mt753-cle { font-size: 11px; color: #64748B; overflow-wrap: anywhere; }
.mt753-ligne-verrou .mt753-lib { color: #64748B; }
.mt753-verrou-note { font-size: 11px; color: #92400E; }
.mt753-bascule { flex: 0 0 auto; min-height: 44px; min-width: 124px; padding: 0 14px; border-radius: 10px; font-size: 13px; font-weight: 700; cursor: pointer; border: 1px solid #CBD5E1; }
.mt753-bascule-on { background: #34D399; border-color: #10B981; color: #0F172A; }
.mt753-bascule-off { background: #FFFFFF; color: #334155; }
.mt753-bascule-verrou { background: #F1F5F9; color: #94A3B8; cursor: not-allowed; border-style: dashed; }
.mt753-bascule:disabled { opacity: .85; }

.mt753-candidats { margin-top: 14px; background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 12px; padding: 0 14px; }
.mt753-candidats > summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; gap: 8px; font-weight: 700; font-size: 14px; color: #0F172A; }
.mt753-cat { margin: 8px 0 12px; }
.mt753-cand { padding: 8px 0; border-bottom: 1px solid #F1F5F9; font-size: 13px; color: #334155; overflow-wrap: anywhere; }

/* fenêtre de détail (Fenetre732) */
.mt753-fiche { display: flex; flex-direction: column; gap: 10px; }
.mt753-bloc { background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 10px; padding: 10px 12px; font-size: 13px; color: #0F172A; overflow-wrap: anywhere; }
.mt753-etiquette { font-size: 11.5px; font-weight: 700; color: #64748B; text-transform: none; margin-bottom: 4px; }
.mt753-grille2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.mt753-alerte { background: #FFFBEB; border-color: #FCD34D; color: #92400E; }
.mt753-histo { display: flex; flex-direction: column; }
.mt753-histo-l { display: grid; grid-template-columns: 170px 90px minmax(0, 1fr) minmax(0, 1.4fr); gap: 8px; padding: 5px 0; border-bottom: 1px solid #F1F5F9; font-size: 12px; }
.mt753-histo-m { color: #475569; }

@media (max-width: 768px) {
  .mt753-recherche { max-width: none; flex-basis: 100%; }
  .mt753-histo-l { grid-template-columns: minmax(0, 1fr) auto; }
  .mt753-histo-l > span:nth-child(3), .mt753-histo-l > span:nth-child(4) { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
  .mt753-onglet { flex: 1 1 0; padding: 0 10px; }
  .mt753-compteur { flex: 1 1 calc(50% - 6px); justify-content: space-between; }
  .mt753-ligne { flex-wrap: wrap; }
  .mt753-bascule { flex: 1 1 100%; }
  .mt753-grille2 { grid-template-columns: minmax(0, 1fr); }
  .mt753-groupe-date { white-space: normal; }
}
