/* Espace client — la charte Synqo, en plus calme.
   Tout est porte par .mp-espace : cet ecran recouvre l application, il
   ne doit rien deteindre sur elle si un jour les deux coexistent. */
/* AU-DESSUS de l ecran d exploitation (99995), volontairement. Les deux ne
   doivent jamais coexister ; si cela arrivait malgre tout, la bonne panne est
   que le client voie SON espace, pas notre atelier. */
.mp-espace{position:fixed;inset:0;z-index:99997;
  background:#f5fbfd;color:#1f3350;font-family:MPManrope,'Segoe UI',system-ui,sans-serif;
  display:flex;align-items:stretch}

/* ── Colonne de navigation, commune aux trois espaces ──────────
   Même contrat visuel que le tableau de bord (.ad-navcol) : une identité
   en tête, ses propres pages au milieu, son compte et sa sortie en pied.
   Remplace l'ancien bandeau (.ec-tete) + les onglets horizontaux
   (.ec-onglets) : même information, agencée comme sur les autres profils. */
.mp-espace .ec-sidebar{width:236px;flex:0 0 236px;background:#143e6d;color:#fff;
  display:flex;flex-direction:column;padding:22px 0 16px;overflow-y:auto}
.mp-espace .ec-sidebar-brand{padding:0 20px 18px;margin-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.14)}
.mp-espace .ec-sidebar-brand .ec-eyebrow{color:#8fd4de}
.mp-espace .ec-logo{display:block;font-size:19px;line-height:1;color:#fff;
  margin-bottom:12px;--msq-acc:#4fd7e8;--msq-cog:#4fd7e8}
.mp-espace .ec-logo svg{width:1.05em;height:1.05em;margin-left:.15em}

/* ── Barre du haut : recherche et notifications ────────────────
   Même contrat que .ad-topbar côté admin, adapté à une colonne de contenu
   sans grille de page dédiée. */
.mp-espace .ec-topbar{display:flex;align-items:center;gap:16px;
  padding:18px 32px 0}
/* Pas de max-width : elle doit prendre tout ce que "Signaler une panne" et
   la cloche ne prennent pas, pour les pousser dans le coin plutôt que de
   laisser un vide entre les deux. */
.mp-espace .ec-search{height:44px;flex:1;border:1px solid #d7e3ee;
  border-radius:9px;display:flex;align-items:center;gap:9px;padding:0 13px;
  color:#8b98aa;background:#fff}
.mp-espace .ec-search input{border:0;outline:0;background:transparent;width:100%;
  font:500 13.5px MPManrope;color:#1f3350}
.mp-espace .ec-signaler{flex:none;height:44px;padding:0 18px;border:0;display:inline-flex;
  align-items:center;gap:8px;background:linear-gradient(135deg,#e0821a,#c8650d);color:#fff;
  border-radius:10px;font:700 12.5px MPManrope;cursor:pointer;white-space:nowrap;
  box-shadow:0 4px 12px rgba(200,101,13,.28)}
.mp-espace .ec-signaler span{font-size:15px;line-height:1;display:inline-flex}
.mp-espace .ec-signaler:hover{filter:brightness(1.06)}
.mp-espace .ec-bell{position:relative;width:44px;height:44px;flex:none;border:1px solid #d7e3ee;
  background:#fff;border-radius:50%;font-size:18px;cursor:pointer;display:grid;place-items:center}
.mp-espace .ec-bell:hover{border-color:#17b5c8}
.mp-espace .ec-bell em{position:absolute;right:-2px;top:-2px;background:#db3d4b;color:#fff;
  border:2px solid #f5fbfd;border-radius:99px;min-width:17px;height:17px;padding:0 4px;
  font:700 10px/1 MPManrope;font-style:normal;display:grid;place-items:center}

/* ── Verrou de validation : un mot obligatoire avant de fermer ─── */
.mp-espace .ep-confirm{padding:16px 20px;border-top:1px solid #e6eef6;background:#fbfdfe}
.mp-espace .ep-confirm label{display:block;margin-bottom:12px}
.mp-espace .ep-confirm label>span{display:block;margin-bottom:6px;font:700 11px MPManrope;
  color:#5d7590;text-transform:uppercase;letter-spacing:.05em}
.mp-espace .ep-confirm textarea{width:100%;box-sizing:border-box;border:1px solid #d7e3ee;
  border-radius:10px;padding:11px 13px;font:500 13.5px MPManrope;color:#1f3350;resize:vertical}
.mp-espace .ep-confirm textarea:focus{outline:0;border-color:#17b5c8;
  box-shadow:0 0 0 3px rgba(23,181,200,.18)}
.mp-espace .ec-sidebar-brand b{display:block;margin-top:4px;font-size:17px;line-height:1.25}
.mp-espace .ec-eyebrow{font:700 11px MPManrope;text-transform:uppercase;letter-spacing:.08em}

.mp-espace .ec-menu{display:flex;flex-direction:column;gap:2px;padding:0 12px;flex:1}
.mp-espace .ec-menu button{display:flex;align-items:center;justify-content:space-between;gap:8px;
  border:0;background:transparent;color:rgba(255,255,255,.78);text-align:left;width:100%;
  padding:11px 12px;border-radius:10px;font:700 13px MPManrope;cursor:pointer;
  transition:background .16s,color .16s}
.mp-espace .ec-menu button:hover{background:rgba(255,255,255,.09);color:#fff}
.mp-espace .ec-menu button.actif{background:#fff;color:#143e6d}
.mp-espace .ec-menu button em{font-style:normal;font-size:11px;background:rgba(255,255,255,.2);
  border-radius:999px;padding:1px 7px;color:inherit}
.mp-espace .ec-menu button.actif em{background:rgba(20,62,109,.12)}

.mp-espace .ec-sidebar-foot{display:flex;flex-direction:column;gap:8px;padding:14px 18px 0;
  margin-top:10px;border-top:1px solid rgba(255,255,255,.14)}
.mp-espace .ec-sidebar-compte{display:flex;align-items:center;gap:10px;cursor:pointer;
  border-radius:10px;padding:6px 6px;margin:0 0 10px -6px;transition:background .16s}
.mp-espace .ec-sidebar-compte:hover{background:rgba(255,255,255,.09)}
.mp-espace .ec-sidebar-compte b{font:700 12.5px MPManrope;color:rgba(255,255,255,.88);
  word-break:break-word}
.mp-espace .ec-sidebar-compte .rond{position:relative;width:32px;height:32px;flex:none;
  border-radius:50%;background:#17b5c8;color:#08313a;display:flex;align-items:center;
  justify-content:center;font:800 13px MPManrope;overflow:hidden}
.mp-espace .ec-sidebar-compte .rond img{width:100%;height:100%;object-fit:cover;display:block}
.mp-espace .ec-sidebar-compte .rond::after{content:'📷';position:absolute;right:-3px;bottom:-3px;
  font-size:10px;background:#143e6d;border-radius:50%;padding:1px 2px;line-height:1}
.mp-espace .ec-logout{width:100%;border:1px solid rgba(255,255,255,.3);background:transparent;
  color:#fff;border-radius:10px;padding:9px 12px;font:700 12.5px MPManrope;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:8px}
.mp-espace .ec-logout:hover{background:rgba(255,255,255,.12)}

.mp-espace .ec-content{flex:1;min-width:0;overflow-y:auto;padding:0 0 40px}

@media (max-width:780px){
  /* Le technicien la lit souvent d'une main, sur le terrain : la colonne
     devient une barre horizontale plutôt que de manger la largeur utile. */
  .mp-espace{flex-direction:column}
  .mp-espace .ec-sidebar{width:100%;flex:0 0 auto;flex-direction:row;align-items:center;
    gap:14px;padding:10px 12px;overflow-x:auto}
  .mp-espace .ec-sidebar-brand{padding:0 14px 0 0;margin:0;flex:0 0 auto;
    border-bottom:0;border-right:1px solid rgba(255,255,255,.16)}
  .mp-espace .ec-sidebar-brand b{font-size:14px}
  .mp-espace .ec-menu{flex-direction:row;padding:0;flex:1;overflow-x:auto}
  .mp-espace .ec-menu button{white-space:nowrap}
  .mp-espace .ec-sidebar-foot{padding:0;margin:0;border-top:0;flex:0 0 auto;
    display:flex;align-items:center;gap:10px}
  .mp-espace .ec-sidebar-compte{margin:0;font-size:11.5px}
  .mp-espace .ec-logout{width:auto;padding:8px 12px;white-space:nowrap}
}

.mp-espace .ec-erreur{margin:18px 32px 0;padding:13px 16px;border-radius:11px;
  background:#fdeceb;border:1px solid #f0b6b3;color:#a03731;font:700 13px MPManrope}

.mp-espace .ec-kpis{display:grid;gap:14px;padding:22px 32px 6px;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.mp-espace .ec-kpi{background:#fff;border:1px solid #d7e3ee;border-radius:14px;padding:18px 20px}
.mp-espace .ec-kpi strong{display:block;font-size:34px;line-height:1;color:#143e6d}
.mp-espace .ec-kpi label{display:block;margin-top:6px;font:700 13px MPManrope}
.mp-espace .ec-kpi small{display:block;margin-top:3px;color:#7a899d;font-size:11.5px}
.mp-espace .ec-kpi.warn strong{color:#d9534f}
.mp-espace .ec-kpi.ok strong{color:#1d6b52}

.mp-espace .ec-carte{margin:16px 32px 0;background:#fff;border:1px solid #d7e3ee;
  border-radius:14px;overflow:hidden}
.mp-espace .ec-table-wrap{overflow-x:auto}
.mp-espace .ec-table{width:100%;border-collapse:collapse;font-size:13.5px}
.mp-espace .ec-table th{text-align:left;background:#f7fbfd;color:#5d7590;
  font:700 12px MPManrope;padding:13px 16px;white-space:nowrap;border-bottom:1px solid #e6eef6}
/* `text-align:left` explicite : sans lui, une règle globale non-scopée dans
   index.html (`td:last-child,td:nth-last-child(2),td:nth-last-child(3)`,
   pensée pour un tout autre tableau) passait à droite les trois dernières
   colonnes de CHAQUE tableau ici — station, objet et état compris. */
.mp-espace .ec-table td{padding:13px 16px;border-bottom:1px solid #eef4f9;vertical-align:top;text-align:left}
.mp-espace .ec-table tr:last-child td{border-bottom:0}
.mp-espace .ec-table tr:hover td{background:#f8fcfe}
.mp-espace .ec-table small{display:block;color:#7a899d;font-size:11px;margin-top:2px}

.mp-espace .ec-tag{display:inline-block;border-radius:6px;padding:3px 9px;
  font:700 11.5px MPManrope;background:#eaf4fb;color:#143e6d;white-space:nowrap}
.mp-espace .ec-tag.ok{background:#e8f7f1;color:#1d6b52}
.mp-espace .ec-tag.warn{background:#fff3e4;color:#a4630f}
.mp-espace .ec-tag.off{background:#f0f3f7;color:#7a899d}

.mp-espace .ec-table th.ec-etat,.mp-espace .ec-table td.ec-etat{text-align:center}

.mp-espace .ec-vide{padding:44px 24px;text-align:center;color:#7a899d;font-size:13.5px}
.mp-espace .ec-chargement{padding:64px;text-align:center;color:#5d7590;font-size:14px}
.mp-espace .ec-pied{margin:18px 32px 0;color:#8595a8;font-size:11.5px}

/* Fiche d une mission : lecture d un seul tenant, sur le terrain, souvent sur
   un telephone tenu d une main. */
.mp-espace .ep-ligne{cursor:pointer}
.mp-espace .ep-fiche{margin-top:14px}
.mp-espace .ep-fiche-tete{display:flex;align-items:flex-start;justify-content:space-between;
  gap:14px;padding:18px 20px;border-bottom:1px solid #e6eef6;background:#f7fbfd}
.mp-espace .ep-fiche-tete h2{margin:4px 0 0;font-size:20px;color:#143e6d}
.mp-espace .ep-fiche-tete p{margin:3px 0 0;color:#5d7590;font-size:13px}
.mp-espace .ep-champs{display:grid;gap:1px;background:#eef4f9;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.mp-espace .ep-champ{background:#fff;padding:13px 18px}
.mp-espace .ep-champ span{display:block;font:700 11px MPManrope;color:#7a899d;
  text-transform:uppercase;letter-spacing:.05em}
.mp-espace .ep-champ b{display:block;margin-top:3px;font-size:14px;color:#1f3350;
  font-weight:600;word-break:break-word}
.mp-espace .ep-actions{display:flex;gap:10px;flex-wrap:wrap;padding:16px 20px;
  border-top:1px solid #e6eef6}
.mp-espace .ep-actions button,.mp-espace .ep-lien{border:1px solid #d7e3ee;background:#fff;
  border-radius:10px;padding:10px 16px;font:700 13px MPManrope;color:#5d7590;
  cursor:pointer;text-decoration:none}
.mp-espace .ep-lien{background:#143e6d;border-color:#143e6d;color:#fff}
.mp-espace .ep-actions button:hover{border-color:#17b5c8;color:#143e6d}

/* ── Tableau de bord : le récapitulatif toutes demandes/interventions ── */
.mp-espace .ec-recap{display:flex;flex-direction:column;gap:16px;margin:16px 32px 0}
.mp-espace .ec-recap .ec-carte{margin:0}
.mp-espace .ec-recap-tete{display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;border-bottom:1px solid #e6eef6;background:#f7fbfd}
.mp-espace .ec-recap-tete b{font:800 14px MPManrope;color:#143e6d}
.mp-espace .ec-recap-tete span{font:700 12px MPManrope;color:#5d7590;background:#eaf4fb;
  padding:2px 10px;border-radius:999px}
.mp-espace .ec-recap-tris{display:flex;flex-wrap:wrap;gap:8px}
.mp-espace .ec-a-noter{margin:16px 32px 0;border-color:#f3d489}
.mp-espace .ec-a-noter-ligne{display:flex;align-items:center;justify-content:space-between;
  gap:14px;padding:12px 20px;border-bottom:1px solid #f3f0e6}
.mp-espace .ec-a-noter-ligne:last-child{border-bottom:none}
.mp-espace .ec-a-noter-ligne b{font:700 13.5px MPManrope;color:#143e6d}
.mp-espace .ec-a-noter-ligne small{display:block;color:#8891a8;font-size:12px;margin-top:1px}
/* Ordre visuel inversé (row-reverse) : le DOM garde 1→5, mais affiché
   5→1. `:hover ~` ne peut viser que les éléments SUIVANTS dans le DOM --
   inverser l'affichage fait que « suivant dans le DOM » veut dire
   « à gauche à l'écran », ce qu'il faut pour qu'un survol sur la 3e étoile
   allume aussi les 2 précédentes. */
.mp-espace .ec-etoiles{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:2px;white-space:nowrap}
.mp-espace .ec-etoile{border:none;background:none;padding:0;font-size:20px;line-height:1;
  color:#d7e3ee;cursor:pointer}
.mp-espace .ec-etoile:hover,.mp-espace .ec-etoile:hover ~ .ec-etoile{color:#f3b13c}
.mp-espace .ec-etoiles-lues{font-size:20px;color:#f3b13c;letter-spacing:1px}
.mp-espace .ep-satisfaction{display:flex;align-items:center;justify-content:space-between}
.mp-espace .ec-chip{border:1px solid #d7e3ee;background:#fff;color:#5d7590;padding:8px 15px;
  border-radius:999px;font:700 12.5px MPManrope;cursor:pointer;white-space:nowrap}
.mp-espace .ec-chip:hover{border-color:#17b5c8;color:#143e6d}
.mp-espace .ec-chip.actif{background:#143e6d;border-color:#143e6d;color:#fff}
.mp-espace .ec-chip em{font-style:normal;margin-left:3px;opacity:.8}

/* ── Signaler une panne : une modale claire, dans la charte de l'écran,
   pas un bloc sombre qui jure avec le reste. Posée sur <body>, PAS sous
   `.mp-espace` (voir espace-client.js : hors du re-rendu de `racine`) —
   ces règles ne doivent donc pas être préfixées par `.mp-espace`. */
.ec-modal-voile{position:fixed;inset:0;z-index:2147483000;
  background:rgba(20,62,109,.35);display:flex;align-items:center;justify-content:center;padding:18px}
.ec-modal{background:#fff;border-radius:16px;max-width:440px;width:100%;
  box-shadow:0 24px 60px rgba(20,62,109,.28);overflow:hidden;font-family:MPManrope,'Segoe UI',system-ui,sans-serif}
.ec-modal-tete{display:flex;align-items:center;gap:12px;padding:18px 22px;
  border-bottom:1px solid #eef4f9}
.ec-modal-icone{width:38px;height:38px;border-radius:11px;background:#fff3e4;
  color:#c8650d;display:grid;place-items:center;font-size:18px;flex:none}
.ec-modal-tete b{font:800 15px MPManrope;color:#143e6d}
.ec-modal-tete small{display:block;margin-top:2px;color:#7a899d;font-size:11.5px;font-weight:600}
.ec-modal-corps{padding:20px 22px}
.ec-modal label{display:block;margin-bottom:14px}
.ec-modal label>span{display:block;font:700 11px MPManrope;text-transform:uppercase;
  letter-spacing:.05em;color:#5d7590;margin-bottom:6px}
.ec-modal select,.ec-modal textarea{width:100%;box-sizing:border-box;
  border:1px solid #d7e3ee;border-radius:10px;padding:10px 12px;font:600 13.5px MPManrope;
  color:#1f3350;background:#fff;outline:0}
.ec-modal select:focus,.ec-modal textarea:focus{border-color:#17b5c8;
  box-shadow:0 0 0 3px rgba(23,181,200,.18)}
.ec-modal textarea{resize:vertical}
.ec-modal-msg{min-height:18px;font-size:.76rem;font-weight:700;margin:0 0 10px}
.ec-modal-actions{display:flex;flex-direction:column;gap:8px}
.ec-modal-primaire{width:100%;padding:11px;border-radius:10px;border:0;
  background:linear-gradient(135deg,#e0821a,#c8650d);color:#fff;font:800 13.5px MPManrope;cursor:pointer}
.ec-modal-primaire:disabled{opacity:.6;cursor:default}
.ec-modal-primaire:hover:not(:disabled){filter:brightness(1.05)}
.ec-modal-secondaire{width:100%;padding:10px;border-radius:10px;border:1px solid #d7e3ee;
  background:#fff;color:#5d7590;font:700 13px MPManrope;cursor:pointer}
.ec-modal-secondaire:hover{border-color:#17b5c8;color:#143e6d}

@media (max-width:640px){
  .mp-espace .ec-kpis{padding-left:16px;padding-right:16px}
  .mp-espace .ec-carte,.mp-espace .ec-pied,
  .mp-espace .ec-erreur{margin-left:16px;margin-right:16px}
}

/* ── Espace technicien : ses absences ──────────────────────────
   Le seul écran des trois espaces qui ÉCRIT. Le reste se contente de lire,
   d'où ces quelques règles en plus. */
.mp-espace .ec-erreur.ok{background:#e8f7f1;border-color:#a2cf9e;color:#1d6b52}
.mp-espace .et-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:14px 16px;align-items:end;padding:18px 20px;border-bottom:1px solid var(--ec-line,#dde5ef)}
.mp-espace .et-form label{display:flex;flex-direction:column;gap:6px}
.mp-espace .et-form label.large{grid-column:1/-1}
.mp-espace .et-form label>span{font:700 11px MPManrope;text-transform:uppercase;
  letter-spacing:.05em;color:#5d7590}
.mp-espace .et-form input,.mp-espace .et-form select{height:42px;border:1px solid #dde5ef;
  border-radius:10px;background:#fff;color:#1f3350;padding:0 13px;font:600 13px MPManrope;outline:0}
.mp-espace .et-form input:focus,.mp-espace .et-form select:focus{border-color:#17b5c8;
  box-shadow:0 0 0 3px rgba(23,181,200,.18)}
.mp-espace .et-form>button{height:42px;padding:0 18px;border:0;border-radius:10px;
  background:#1469df;color:#fff;font:700 13px MPManrope;cursor:pointer}
.mp-espace .et-form>button:hover{background:#1057ba}
.mp-espace .et-form>button:disabled{opacity:.6;cursor:wait}
/* Nouvelle intervention (2026-09-29) : la seule zone de texte long du formulaire */
.mp-espace .et-form textarea{min-height:96px;border:1px solid #dde5ef;border-radius:10px;background:#fff;
  color:#1f3350;padding:10px 13px;font:600 13px/1.45 MPManrope;outline:0;resize:vertical}
.mp-espace .et-form textarea:focus{border-color:#17b5c8;box-shadow:0 0 0 3px rgba(23,181,200,.18)}
.mp-espace .et-nv-actions{padding:12px 20px 16px}
.mp-espace .et-retirer{border:1px solid #f0b6b3;background:#fdeceb;color:#a03731;
  border-radius:8px;padding:6px 11px;font:700 12px MPManrope;cursor:pointer}
.mp-espace .et-retirer:hover{background:#fbdedc}

/* ── Espace technicien : son camion ────────────────────────────
   Une ligne « sous le seuil » se voit de loin : c'est la seule information
   qui doit sauter aux yeux dans cette liste. */
.mp-espace .et-camion-tete{display:flex;align-items:flex-start;justify-content:space-between;
  gap:16px;padding:16px 20px;border-bottom:1px solid #dde5ef}
.mp-espace .et-camion-tete b{display:block;font:700 15px MPManrope;color:#143e6d}
.mp-espace .et-camion-tete span{display:block;margin-top:3px;font:500 12px/1.5 MPManrope;color:#5d7590}
.mp-espace .et-camion-tete i{font-style:normal;font-weight:700;color:#c8650d}
.mp-espace .et-camion-tete>button,.mp-espace .et-pied>button{height:38px;padding:0 16px;border:0;
  border-radius:9px;background:#1469df;color:#fff;font:700 12px MPManrope;cursor:pointer;white-space:nowrap}
.mp-espace .et-camion-tete>button:hover,.mp-espace .et-pied>button:hover{background:#1057ba}
.mp-espace .et-lignes{padding:14px 20px}
.mp-espace .et-entete,.mp-espace .et-ligne{display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) 82px 82px 40px;gap:8px;align-items:center}
.mp-espace .et-entete{margin-bottom:7px}
.mp-espace .et-entete span{font:700 10px MPManrope;text-transform:uppercase;
  letter-spacing:.05em;color:#758399}
.mp-espace .et-ligne{margin-bottom:7px;padding:4px 6px;border-radius:9px}
.mp-espace .et-ligne.bas{background:#fff4e8;outline:1px solid #f0cba0}
.mp-espace .et-ligne input{height:38px;min-width:0;border:1px solid #dde5ef;border-radius:9px;
  background:#fff;color:#1f3350;padding:0 11px;font:600 13px MPManrope;outline:0}
.mp-espace .et-ligne input:focus{border-color:#17b5c8;box-shadow:0 0 0 3px rgba(23,181,200,.18)}
.mp-espace .et-pied{padding:0 20px 18px}
@media(max-width:700px){
  .mp-espace .et-entete{display:none}
  .mp-espace .et-ligne{grid-template-columns:1fr 1fr 40px;gap:6px}
}

/* -- Espace technicien : Ma journee -----------------------------
   Le premier ecran qu il voit. Trois regles s y appliquent :
   - ce qui APPELLE UNE ACTION se voit sans lire (le bloc chaud) ;
   - la prochaine intervention se lit a bout de bras, moteur tournant ;
   - rien ne bouge tout seul : cet ecran s ouvre vingt fois par jour, une
     animation y devient un tic avant la fin de la matinee. */
.mp-espace .et-prochaine{border-color:#bcdff0}
.mp-espace .et-prochaine-tete{display:flex;align-items:flex-start;justify-content:space-between;
  gap:14px;flex-wrap:wrap;padding:18px 20px 14px;background:#f2fafd}
.mp-espace .et-prochaine-tete h2{margin:4px 0 0;font-size:23px;line-height:1.15;color:#143e6d}
.mp-espace .et-prochaine-tete p{margin:4px 0 0;color:#5d7590;font-size:13px}
.mp-espace .et-quand{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.mp-espace .et-quand b{font:800 17px MPManrope;color:#143e6d;white-space:nowrap}
.mp-espace .et-quoi{margin:0;padding:14px 20px;color:#1f3350;font-size:14px;
  border-top:1px solid #e6eef6}

.mp-espace .et-bloc{margin-top:14px}
.mp-espace .et-bloc-tete{display:flex;align-items:baseline;justify-content:space-between;
  gap:12px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid #e6eef6;background:#f7fbfd}
.mp-espace .et-bloc-tete b{font:800 15px MPManrope;color:#143e6d}
.mp-espace .et-bloc-tete span{font:600 12px MPManrope;color:#7a899d}
/* Le seul accent chaud de l ecran : il ne sert qu au retard et au stock bas. */
.mp-espace .et-bloc-tete.chaud{background:#fff4e8;border-bottom-color:#f0cba0}
.mp-espace .et-bloc-tete.chaud b{color:#a4630f}
.mp-espace .et-bloc-ligne{display:flex;align-items:center;justify-content:space-between;
  gap:14px;padding:13px 20px;border-bottom:1px solid #eef4f9}
.mp-espace .et-bloc-ligne:last-child{border-bottom:0}
.mp-espace .et-bloc-ligne[data-et-mission]{cursor:pointer}
.mp-espace .et-bloc-ligne[data-et-mission]:hover{background:#f8fcfe}
.mp-espace .et-bloc-ligne b{display:block;font:700 14px MPManrope;color:#1f3350}
.mp-espace .et-bloc-ligne small{display:block;margin-top:2px;color:#7a899d;font-size:11.5px}
.mp-espace .et-bloc-ligne>div:last-child{text-align:right;white-space:nowrap}
.mp-espace .et-bloc-plus{padding:11px 20px;color:#7a899d;font-size:12px}
@media(max-width:640px){
  .mp-espace .et-quand{text-align:left;align-items:flex-start}
}
/* Fenetre du scanner : posee sur <body>, hors du re-rendu de l'espace --
   donc SANS le prefixe #mp-espace-technicien. Claire, comme .ec-modal-voile :
   le garde du theme n'a rien a repeindre. */
.et-scan-voile{position:fixed;inset:0;z-index:2147483000;background:rgba(20,62,109,.35);
  display:flex;align-items:center;justify-content:center;padding:16px;font-family:MPManrope,'Segoe UI',system-ui,sans-serif}
.et-scan-boite{background:#fff;border-radius:16px;width:100%;max-width:420px;padding:18px 18px 16px;
  box-shadow:0 24px 60px rgba(20,62,109,.28);color:#1f3350}
.et-scan-tete{display:flex;align-items:center;gap:10px;color:#1469df;margin-bottom:12px}
.et-scan-tete b{font:800 16px MPManrope;color:#143e6d}
.et-scan-video{position:relative;border-radius:12px;overflow:hidden;background:#eaf4fb;aspect-ratio:1/1}
.et-scan-video video{width:100%;height:100%;object-fit:cover;display:block}
.et-scan-video i{position:absolute;inset:18%;border:3px solid #fff;border-radius:14px;
  box-shadow:0 0 0 999px rgba(20,62,109,.25)}
.et-scan-msg{margin:12px 0 10px;font:500 13px/1.5 MPManrope;color:#5d7590}
.et-scan-msg b{color:#143e6d}
.et-scan-saisie{display:block}
.et-scan-saisie span{display:block;margin-bottom:6px;font:700 11px MPManrope;text-transform:uppercase;letter-spacing:.05em;color:#5d7590}
.et-scan-saisie input{width:100%;box-sizing:border-box;height:42px;border:1px solid #d7e3ee;border-radius:10px;
  padding:0 12px;font:600 14px MPManrope;color:#1f3350;outline:0}
.et-scan-saisie input:focus{border-color:#17b5c8;box-shadow:0 0 0 3px rgba(23,181,200,.18)}
.et-scan-erreur{min-height:18px;margin:6px 0 8px;font:700 12px MPManrope;color:#b8323f}
.et-scan-actions{display:flex;gap:8px}
.et-scan-actions .et-btn{flex:1;justify-content:center;display:inline-flex;align-items:center;height:40px;
  border:1px solid #d7e3ee;background:#fff;color:#143e6d;border-radius:9px;font:700 13px MPManrope;cursor:pointer}
.et-scan-actions .et-btn.plein{background:#143e6d;border-color:#143e6d;color:#fff}

/* Documents (rapports préventifs envoyés par Mesure Process) */
.ec-lien{background:none;border:0;padding:0;color:#17b5c8;font:700 12.5px MPManrope,inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.ec-lien:hover{color:#0f8b9a}

/* ── Espace technicien, version 2026-09-28 ─────────────────────────
   Reprise de la maquette « Ma journée » dans notre charte. Tout est
   prefixe par #mp-espace-technicien : les espaces client et prestataire
   partagent cette feuille et ne doivent pas bouger d'un pixel. */
#mp-espace-technicien .et-ico{flex:none;display:inline-block;vertical-align:middle}

/* Menu : titres de section, icones, compteur rouge pour ce qui presse */
#mp-espace-technicien .ec-sidebar-brand{padding-bottom:16px}
#mp-espace-technicien .ec-logo{font-size:22px;margin-bottom:8px}
#mp-espace-technicien .et-menu-titre{display:block;padding:14px 12px 6px;font:800 10.5px MPManrope;
  letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55)}
#mp-espace-technicien .et-menu-titre:first-child{padding-top:2px}
#mp-espace-technicien .et-onglet{display:inline-flex;align-items:center;gap:11px}
#mp-espace-technicien .ec-menu button em.chaud{background:#db3d4b;color:#fff}
#mp-espace-technicien .ec-logout .et-ico{opacity:.85}

/* Barre du haut */
#mp-espace-technicien .ec-search .et-ico{color:#5d7590}
#mp-espace-technicien .ec-bell{color:#143e6d}
#mp-espace-technicien .ec-bell:hover{color:#17b5c8}

/* Bonjour */
#mp-espace-technicien .et-bonjour{padding:22px 32px 0}
#mp-espace-technicien .et-bonjour h1{margin:0;font:800 27px/1.15 MPManrope;color:#143e6d}
#mp-espace-technicien .et-bonjour p{margin:5px 0 0;font:500 14px MPManrope;color:#5d7590}

/* Cartes chiffrees : icone ronde pleine, fond teinte de la meme couleur */
#mp-espace-technicien .et-kpis{padding-top:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
#mp-espace-technicien .et-kpi{--c:#1469df;--t:#eef5fe;--b:#cfe0f7;
  display:flex;align-items:center;gap:14px;padding:18px 16px;border-radius:14px;
  background:var(--t);border:1px solid var(--b);transition:box-shadow .16s,transform .16s}
#mp-espace-technicien .et-kpi.bleu{--c:#1469df;--t:#eef5fe;--b:#cfe0f7}
#mp-espace-technicien .et-kpi.rouge{--c:#db3d4b;--t:#fdf0f1;--b:#f5c9cd}
#mp-espace-technicien .et-kpi.cyan{--c:#17a2b8;--t:#ecf9fb;--b:#bfe7ee}
#mp-espace-technicien .et-kpi.orange{--c:#e0821a;--t:#fff5ea;--b:#f6d6b0}
#mp-espace-technicien .et-kpi.vert{--c:#1f8a66;--t:#edf8f3;--b:#c3e6d6}
#mp-espace-technicien .et-kpi-rond{width:50px;height:50px;flex:none;border-radius:50%;
  background:var(--c);color:#fff;display:grid;place-items:center;
  box-shadow:0 6px 14px rgba(20,62,109,.16)}
#mp-espace-technicien .et-kpi>div{flex:1;min-width:0}
#mp-espace-technicien .et-kpi strong{display:block;font:800 30px/1 MPManrope;color:#143e6d}
#mp-espace-technicien .et-kpi label{display:block;margin-top:6px;font:800 13.5px MPManrope;color:#143e6d}
#mp-espace-technicien .et-kpi small{display:block;margin-top:2px;font:500 12px MPManrope;color:#5d7590}
#mp-espace-technicien .et-kpi>i{width:32px;height:32px;flex:none;border-radius:50%;display:grid;place-items:center;
  background:#fff;color:var(--c);border:1px solid var(--b)}
#mp-espace-technicien .et-kpi.lien{cursor:pointer}
#mp-espace-technicien .et-kpi.lien:hover{box-shadow:0 8px 20px rgba(20,62,109,.1);transform:translateY(-1px)}
#mp-espace-technicien .et-kpi.lien:focus-visible{outline:2px solid #17b5c8;outline-offset:2px}

/* Deux colonnes : la journee a gauche, le prochain / le camion a droite */
#mp-espace-technicien .et-grille{display:grid;grid-template-columns:minmax(0,1fr) 390px;
  gap:16px;margin:16px 32px 0;align-items:start}
#mp-espace-technicien .et-col{display:flex;flex-direction:column;gap:16px;min-width:0}
#mp-espace-technicien .et-grille .ec-carte{margin:0}
#mp-espace-technicien .et-carte-tete{display:flex;align-items:center;gap:11px;
  padding:16px 20px;border-bottom:1px solid #eef4f9}
#mp-espace-technicien .et-carte-tete>b{flex:1;min-width:0;font:800 17px MPManrope;color:#143e6d}
#mp-espace-technicien .et-carte-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;
  background:#eaf4fb;color:#143e6d;flex:none}
#mp-espace-technicien .et-carte.chaud .et-carte-ico{background:#fdeceb;color:#db3d4b}
#mp-espace-technicien .et-carte.chaud .et-carte-tete{background:#fffafa}
#mp-espace-technicien .et-pastille{padding:4px 11px;border-radius:999px;background:#eaf4fb;
  color:#143e6d;font:700 12px MPManrope;white-space:nowrap}
#mp-espace-technicien .et-pastille.vert{background:#e8f7f1;color:#1d6b52}
#mp-espace-technicien .et-lien-pastille{display:inline-flex;align-items:center;gap:4px;border:1px solid #d7e3ee;
  background:#fff;color:#1469df;border-radius:999px;padding:5px 12px;font:700 12px MPManrope;cursor:pointer}
#mp-espace-technicien .et-lien-pastille:hover{border-color:#17b5c8;color:#143e6d}

/* La frise de la journee */
#mp-espace-technicien .et-frise{padding:6px 20px 8px}
#mp-espace-technicien .et-frise-ligne{position:relative;display:flex;align-items:center;gap:14px;
  padding:14px 0 14px 26px;border-bottom:1px solid #eef4f9}
#mp-espace-technicien .et-frise-ligne:last-child{border-bottom:0}
#mp-espace-technicien .et-frise-ligne::before{content:'';position:absolute;left:5px;top:0;bottom:0;
  width:2px;background:#e3ecf4}
#mp-espace-technicien .et-frise-ligne:first-child::before{top:50%}
#mp-espace-technicien .et-frise-ligne:last-child::before{bottom:50%}
#mp-espace-technicien .et-frise-ligne:only-child::before{display:none}
#mp-espace-technicien .et-frise-point{position:absolute;left:0;top:50%;margin-top:-6px;width:12px;height:12px;
  border-radius:50%;background:#9fb3c8;box-shadow:0 0 0 3px #fff}
#mp-espace-technicien .et-frise-ligne.prevue .et-frise-point{background:#1469df}
#mp-espace-technicien .et-frise-ligne.attente .et-frise-point{background:#e0821a}
#mp-espace-technicien .et-frise-ligne.encours .et-frise-point{background:#17a2b8}
#mp-espace-technicien .et-frise-ligne.retard .et-frise-point{background:#db3d4b}
/* L'heure prevue, a gauche du point : c'est elle qu'on lit en premier */
#mp-espace-technicien .et-frise-heure{position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:58px;text-align:left}
#mp-espace-technicien .et-frise-heure b{display:block;font:800 16px/1.1 MPManrope;color:#143e6d}
#mp-espace-technicien .et-frise-heure small{display:block;margin-top:3px;font:600 11.5px MPManrope;color:#7a899d}
#mp-espace-technicien .et-frise{--et-h:66px}
#mp-espace-technicien .et-frise-ligne{padding-left:calc(var(--et-h) + 26px)}
#mp-espace-technicien .et-frise-ligne::before{left:calc(var(--et-h) + 5px)}
#mp-espace-technicien .et-frise-point{left:var(--et-h)}
#mp-espace-technicien .et-frise-corps{flex:1;min-width:0;cursor:pointer}
#mp-espace-technicien .et-frise-corps>b{display:block;margin-top:6px;font:800 15px MPManrope;color:#143e6d}
#mp-espace-technicien .et-frise-corps:hover>b{color:#1469df}
#mp-espace-technicien .et-frise-lieu{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:5px}
#mp-espace-technicien .et-frise-lieu span{display:inline-flex;align-items:center;gap:6px;
  font:600 12.5px MPManrope;color:#5d7590}
#mp-espace-technicien .et-frise-lieu span:first-child .et-ico{color:#7a899d}
#mp-espace-technicien .et-frise-lieu span + span .et-ico{color:#e0821a}
#mp-espace-technicien .et-frise-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}

/* Etat d'une mission : un mot court, une couleur */
#mp-espace-technicien .et-etat{display:inline-block;padding:3px 9px;border-radius:6px;
  font:800 10.5px MPManrope;letter-spacing:.05em;text-transform:uppercase;background:#eef2f6;color:#5d7590}
#mp-espace-technicien .et-etat.prevue{background:#eaf4fb;color:#1469df}
#mp-espace-technicien .et-etat.attente{background:#fff3e4;color:#a4630f}
#mp-espace-technicien .et-etat.encours{background:#e3f6f9;color:#0f7f91}
#mp-espace-technicien .et-etat.retard{background:#fdeceb;color:#b8323f}
#mp-espace-technicien .et-etat.ok{background:#e8f7f1;color:#1d6b52;text-transform:none;letter-spacing:0;font-size:12px}

#mp-espace-technicien .et-prio{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:999px;
  background:#eef5fe;color:#1f4f86;font:700 12px MPManrope;white-space:nowrap}
#mp-espace-technicien .et-prio i{width:8px;height:8px;border-radius:50%;background:#1469df}
#mp-espace-technicien .et-prio.haute{background:#fff3e4;color:#a4630f}
#mp-espace-technicien .et-prio.haute i{background:#e0821a}
#mp-espace-technicien .et-prio.faible{background:#f0f3f7;color:#5d7590}
#mp-espace-technicien .et-prio.faible i{background:#9fb3c8}

#mp-espace-technicien .et-btn{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 13px;
  border:1px solid #d7e3ee;background:#fff;color:#143e6d;border-radius:9px;font:700 12.5px MPManrope;
  cursor:pointer;text-decoration:none;white-space:nowrap}
#mp-espace-technicien .et-btn:hover{border-color:#17b5c8}
#mp-espace-technicien .et-btn.plein{background:#143e6d;border-color:#143e6d;color:#fff}
#mp-espace-technicien .et-btn.plein:hover{background:#0f3258}
#mp-espace-technicien .ep-lien,#mp-espace-technicien .ep-actions button{display:inline-flex;align-items:center;gap:7px}

/* Prochaine intervention */
#mp-espace-technicien .et-prochaine-ligne{display:flex;align-items:center;gap:12px;padding:16px 20px;cursor:pointer}
#mp-espace-technicien .et-prochaine-ligne:hover{background:#f8fcfe}
#mp-espace-technicien .et-prochaine-heure{flex:none;font:800 24px/1 MPManrope;color:#143e6d}
#mp-espace-technicien .et-prochaine-ligne>div{flex:1;min-width:0;border-left:2px solid #17b5c8;padding-left:13px}
#mp-espace-technicien .et-prochaine-ligne b{display:block;font:800 15px MPManrope;color:#143e6d;margin-bottom:5px}
#mp-espace-technicien .et-prochaine-ligne span{display:flex;align-items:center;gap:6px;margin-top:3px;
  font:600 12.5px MPManrope;color:#5d7590}
#mp-espace-technicien .et-prochaine-ligne span + span .et-ico{color:#e0821a}
#mp-espace-technicien .et-prochaine-ligne>i{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;
  background:#eaf4fb;color:#143e6d;flex:none}

/* Stock camion */
#mp-espace-technicien .et-alerte{display:flex;align-items:center;gap:12px;margin:14px 20px 4px;padding:12px 14px;
  border-radius:11px;background:#fdf0f1;border:1px solid #f5c9cd;color:#db3d4b}
#mp-espace-technicien .et-alerte b{display:block;font:800 13.5px MPManrope;color:#b8323f}
#mp-espace-technicien .et-alerte span{display:block;margin-top:2px;font:500 12px MPManrope;color:#5d7590}
#mp-espace-technicien .et-stock{padding:8px 20px 12px}
#mp-espace-technicien .et-stock-tete,#mp-espace-technicien .et-stock-ligne{display:grid;
  grid-template-columns:minmax(0,1fr) 58px 58px;gap:8px;align-items:center}
#mp-espace-technicien .et-stock-tete{padding:8px 0;font:700 12px MPManrope;color:#5d7590}
#mp-espace-technicien .et-stock-tete span:not(:first-child),#mp-espace-technicien .et-stock-ligne em{text-align:center}
#mp-espace-technicien .et-stock-ligne{padding:9px 0;border-top:1px solid #eef4f9;cursor:pointer}
#mp-espace-technicien .et-stock-ligne span{font:700 13px MPManrope;color:#1f3350;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#mp-espace-technicien .et-stock-ligne em{font-style:normal;justify-self:center;min-width:36px;padding:4px 8px;border-radius:7px;
  background:#f0f3f7;color:#1f3350;font:800 12.5px MPManrope}
#mp-espace-technicien .et-stock-ligne em.bas{background:#fdeceb;color:#b8323f}

/* « A finaliser » et « Dernieres interventions », cote a cote */
#mp-espace-technicien .et-duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
#mp-espace-technicien .et-duo .ec-carte{margin:0}
#mp-espace-technicien .et-pastille.orange{background:#fff3e4;color:#a4630f}
#mp-espace-technicien .et-finaliser .et-carte-ico{background:#fff3e4;color:#c8650d}
#mp-espace-technicien .et-carte-note{margin:0;padding:10px 20px 4px;font:500 12.5px MPManrope;color:#5d7590}
#mp-espace-technicien .et-finaliser-ligne{display:flex;align-items:center;gap:12px;padding:11px 20px;
  border-bottom:1px solid #eef4f9;cursor:pointer}
#mp-espace-technicien .et-finaliser-ligne:last-child{border-bottom:0}
#mp-espace-technicien .et-finaliser-ligne:hover{background:#fffaf4}
#mp-espace-technicien .et-finaliser-ico{width:32px;height:32px;flex:none;border-radius:9px;display:grid;place-items:center;
  background:#fff3e4;color:#c8650d}
#mp-espace-technicien .et-finaliser-ligne>div{flex:1;min-width:0}
#mp-espace-technicien .et-finaliser-ligne b{display:block;font:700 13.5px MPManrope;color:#1f3350}
#mp-espace-technicien .et-finaliser-ligne>div span{display:block;margin-top:2px;font:500 12px MPManrope;color:#7a899d;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#mp-espace-technicien .et-finaliser-ok{display:flex;align-items:center;gap:10px;padding:18px 20px;
  font:600 13px MPManrope;color:#1d6b52}

/* Scanner une station : la carte de « Ma journee » */
#mp-espace-technicien .et-scan-carte{background:#f2fafd;border-color:#bcdff0;padding:16px 18px}
#mp-espace-technicien .et-scan-corps{display:flex;align-items:flex-start;gap:14px}
#mp-espace-technicien .et-scan-ico{width:52px;height:52px;flex:none;border-radius:13px;display:grid;place-items:center;
  background:#fff;color:#1469df;border:1px solid #cfe0f7}
#mp-espace-technicien .et-scan-corps b{display:block;font:800 15px MPManrope;color:#143e6d}
#mp-espace-technicien .et-scan-corps span{display:block;margin-top:4px;font:500 12.5px/1.45 MPManrope;color:#5d7590}
#mp-espace-technicien .et-scan-go{width:100%;justify-content:center;height:42px;margin-top:14px}
#mp-espace-technicien .et-station-note{display:flex;align-items:center;gap:8px;padding:12px 20px;border-top:1px solid #eef4f9}
#mp-espace-technicien .et-derniere>i.vide{border:0}

/* Mes documents : ses rapports */
#mp-espace-technicien .et-docs{margin:16px 32px 0}
#mp-espace-technicien .et-docs-filtres{display:flex;gap:8px;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid #eef4f9}
#mp-espace-technicien .et-doc-ligne{display:flex;align-items:center;gap:12px;padding:12px 20px;
  border-bottom:1px solid #eef4f9;cursor:pointer}
#mp-espace-technicien .et-doc-ligne:last-child{border-bottom:0}
#mp-espace-technicien .et-doc-ligne:hover{background:#f8fcfe}
#mp-espace-technicien a.et-doc-ligne{text-decoration:none;color:inherit}
#mp-espace-technicien .et-doc-ligne>div{flex:1;min-width:0}
#mp-espace-technicien .et-doc-ligne b{display:block;font:700 13.5px MPManrope;color:#1f3350}
#mp-espace-technicien .et-doc-ligne>div span{display:block;margin-top:2px;font:500 12px MPManrope;color:#7a899d;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:640px){
  #mp-espace-technicien .et-docs{margin:14px 16px 0}
  #mp-espace-technicien .et-doc-ligne{flex-wrap:wrap}
  #mp-espace-technicien .et-doc-ligne>div{flex-basis:calc(100% - 44px)}
}

/* Dernieres interventions */
#mp-espace-technicien .et-derniere{display:grid;grid-template-columns:78px minmax(0,1fr) auto 34px;gap:12px;
  align-items:center;padding:12px 20px;border-bottom:1px solid #eef4f9;cursor:pointer}
#mp-espace-technicien .et-derniere:last-child{border-bottom:0}
#mp-espace-technicien .et-derniere:hover{background:#f8fcfe}
#mp-espace-technicien .et-derniere>small{font:700 12.5px MPManrope;color:#143e6d}
#mp-espace-technicien .et-derniere b{display:block;font:700 13.5px MPManrope;color:#1f3350}
#mp-espace-technicien .et-derniere>div span{display:block;margin-top:2px;font:500 12px MPManrope;color:#7a899d}
#mp-espace-technicien .et-derniere>i{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;
  border:1px solid #d7e3ee;color:#143e6d}

#mp-espace-technicien .et-camion-tete>button{display:inline-flex;align-items:center;gap:6px}
#mp-espace-technicien .et-retirer{display:inline-grid;place-items:center}

@media (max-width:1100px){
  #mp-espace-technicien .et-grille{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:780px){
  #mp-espace-technicien .et-menu-titre{display:none}
  #mp-espace-technicien .ec-menu button em{margin-left:8px}
  /* Le menu prend sa propre ligne, defilable au doigt : a cote du compte,
     il n'en restait qu'une lettre. */
  #mp-espace-technicien .ec-sidebar{flex-wrap:wrap;row-gap:10px;overflow:visible}
  #mp-espace-technicien .ec-sidebar-brand{border-right:0;margin-right:auto}
  #mp-espace-technicien .ec-menu{order:3;flex:1 0 100%;gap:6px;padding-bottom:2px;scrollbar-width:none}
  #mp-espace-technicien .ec-menu button{flex:none;width:auto;padding:9px 12px;background:rgba(255,255,255,.08)}
  #mp-espace-technicien .ec-sidebar-foot{flex-direction:row}
  #mp-espace-technicien .ec-menu button.actif{background:#fff}
  #mp-espace-technicien .ec-sidebar-compte b{display:none}
  #mp-espace-technicien .ec-logout{padding:8px 10px}
}
@media (max-width:640px){
  #mp-espace-technicien .et-bonjour{padding:18px 16px 0}
  #mp-espace-technicien .et-bonjour h1{font-size:23px}
  #mp-espace-technicien .et-grille{margin:14px 16px 0}
  #mp-espace-technicien .et-kpis{grid-template-columns:1fr 1fr;gap:10px}
  #mp-espace-technicien .et-kpi{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}
  #mp-espace-technicien .et-kpi-rond{width:42px;height:42px}
  #mp-espace-technicien .et-kpi>i{display:none}
  #mp-espace-technicien .et-kpi strong{font-size:26px}
  #mp-espace-technicien .et-frise{padding:4px 14px 6px}
  #mp-espace-technicien .et-frise-ligne{flex-direction:column;align-items:stretch;gap:10px}
  /* Sur telephone, l'heure passe au-dessus de la mission, sur une ligne */
  #mp-espace-technicien .et-frise{--et-h:0px}
  #mp-espace-technicien .et-frise-heure{position:static;transform:none;width:auto;
    display:flex;align-items:baseline;gap:8px}
  #mp-espace-technicien .et-frise-heure small{margin-top:0}
  #mp-espace-technicien .et-frise-point{top:24px;margin-top:0}
  #mp-espace-technicien .et-frise-actions{justify-content:flex-start}
  /* La priorite sur sa ligne, puis les boutons cote a cote, a parts egales */
  #mp-espace-technicien .et-frise-actions .et-prio{order:-2}
  #mp-espace-technicien .et-frise-actions::before{content:'';order:-1;flex-basis:100%;height:0}
  #mp-espace-technicien .et-frise-actions .et-btn{flex:1;justify-content:center;padding:0 8px}
  #mp-espace-technicien .et-derniere{grid-template-columns:60px minmax(0,1fr) 30px;padding:12px 14px}
  #mp-espace-technicien .et-derniere>.et-etat{display:none}
  #mp-espace-technicien .et-carte-tete .et-pastille{display:none}
  #mp-espace-technicien .et-carte-tete .et-pastille.vert{display:inline-block}
  #mp-espace-technicien .ec-logout{font-size:0;gap:0}
  #mp-espace-technicien .ec-logout .et-ico{width:18px;height:18px}
}

/* « Mon planning » des espaces (2026-10-01, ecran/planning-espace.js) */
.mp-espace .mpe{padding:0 0 16px}
.mp-espace .mpe-tete{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid #e6edf4}
.mp-espace .mpe-mois{display:flex;align-items:center;gap:8px}
.mp-espace .mpe-mois button{width:32px;height:32px;border-radius:8px;border:1px solid #d7e3ee;background:#fff;color:#31435c;font-size:17px;cursor:pointer}
.mp-espace .mpe-mois b{min-width:150px;text-align:center;font-size:15px;color:#142033}
.mp-espace .mpe-nb{color:#6b7c93;font-size:12px}
.mp-espace .mpe-onglets{display:inline-flex;gap:3px;margin-left:auto;background:#f1f5fb;border:1px solid #d7e3ee;border-radius:10px;padding:3px}
.mp-espace .mpe-onglets button{border:0;background:transparent;color:#31435c;font-family:inherit;font-weight:600;font-size:13px;padding:6px 12px;border-radius:7px;cursor:pointer}
.mp-espace .mpe-onglets button.actif{background:#fff;color:#1469df;box-shadow:0 1px 3px rgba(26,52,88,.12)}
.mp-espace .mpe-semaine,.mp-espace .mpe-grille{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:0 18px}
.mp-espace .mpe-semaine{padding-top:12px;padding-bottom:6px}
.mp-espace .mpe-semaine span{text-align:center;font-size:11px;font-weight:800;color:#6b7c93;text-transform:uppercase}
.mp-espace .mpe-case{min-height:86px;background:#fff;border:1px solid #e3eaf2;border-radius:9px;padding:5px;overflow:hidden}
.mp-espace .mpe-case.vide{background:transparent;border:0}
.mp-espace .mpe-case.we{background:#f4f7fb}
.mp-espace .mpe-case.absent{background:#fff1f3;border-color:#f6c9d2}
.mp-espace .mpe-case.auj{border:2px solid #1469df}
.mp-espace .mpe-case em{display:block;font-style:normal;font-size:12px;font-weight:800;color:#31435c;margin-bottom:3px}
.mp-espace .mpe-case em small{font-weight:700;color:#b4233f}
.mp-espace .mpe-pastille{border-left:3px solid #1469df;background:#f5f8fc;border-radius:5px;padding:3px 5px;margin-top:3px;font-size:11px;line-height:1.25}
.mp-espace .mpe-pastille b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#142033}
.mp-espace .mpe-pastille span{color:#6b7c93}
.mp-espace .mpe-pastille.faite{opacity:.55}
.mp-espace .mpe-pastille[data-mpe-mission],.mp-espace .mpe-ouvrable{cursor:pointer}
.mp-espace .mpe-rempl{display:block;color:#1e5aa8;font-weight:700}
.mp-espace .mpe-type{border-left:3px solid #1469df;padding:1px 8px;font-weight:600}
.mp-espace .mpe-vide{padding:22px 18px;text-align:center;color:#6b7c93}
@media (max-width:760px){
  .mp-espace .mpe-semaine,.mp-espace .mpe-grille{gap:3px;padding:0 8px}
  .mp-espace .mpe-case{min-height:64px;padding:3px}
  .mp-espace .mpe-pastille span,.mp-espace .mpe-rempl{display:none}
  .mp-espace .mpe-onglets{margin-left:0}
}
