/* Classes utilitaires générées lors du retrait des styles HTML intégrés. */

[hidden] { display:none !important; }

.csp-overlay {
  position:fixed;
  inset:0;
  z-index:10000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  overflow-y:auto;
  background:rgba(15,23,42,.55);
}
.csp-overlay-legere { background:rgba(0,0,0,.4); }
.veille-bandeau {
  position:sticky;
  bottom:0;
  z-index:9000;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  padding:12px 18px;
  border-top:2px solid #f59e0b;
  background:var(--warning-bg);
  color:var(--warning-fg);
  font-size:.9rem;
  font-weight:600;
}
.csp-texte-succes { color:var(--success-fg); }
.csp-texte-danger { color:var(--danger-fg); }
.csp-texte-attente { color:var(--warning-fg); }
.csp-texte-neutre { color:var(--slate-500); }
.csp-statut { font-weight:600; }
.csp-champ-invalide { border-color:var(--danger) !important; }
.csp-lien-indigo { color:var(--indigo-600); }
.csp-bouton-actif { background-color:var(--indigo-600) !important; }
.csp-demande-attention { background:var(--indigo-50); }
.csp-urgence-haute { background:var(--danger); }
.csp-urgence-normale { background:var(--warning); }
.csp-urgence-faible { background:var(--slate-500); }
.csp-logo-etablissement { height:44px; width:auto; }
.csp-pj {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 12px;
  border:1px solid var(--border);
  border-radius:0;
  background:var(--bg);
  color:var(--text-light);
  font-size:.8rem;
}
.csp-pj-lien {
  border-color:var(--warning-bd);
  background:#fff;
  color:var(--warning-fg);
  font-weight:600;
  text-decoration:none;
}
.csp-pj-valide {
  border-color:var(--success-bd);
  background:var(--success-bg);
  color:var(--success-fg);
  font-weight:600;
  text-decoration:none;
}
.csp-pj-indisponible { border-style:dashed; }
.csp-table-scroll { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.csp-affiche { display:block !important; }
.p-connexion #messageErreur:not([hidden]) { display:block; }
.p-connexion #messageErreur.message-succes {
  border-color:var(--success-bd);
  background:var(--success-bg);
  color:var(--success-fg);
}
.p-connexion .btn-admin:not([hidden]) { display:flex; }
body.p-heures .mdp-zone:not([hidden]) { display:block; }

/* Largeurs pilotées par JavaScript sans attribut style ni CSSOM. */
.csp-pct-0 { width:0%; }
.csp-pct-1 { width:1%; }
.csp-pct-2 { width:2%; }
.csp-pct-3 { width:3%; }
.csp-pct-4 { width:4%; }
.csp-pct-5 { width:5%; }
.csp-pct-6 { width:6%; }
.csp-pct-7 { width:7%; }
.csp-pct-8 { width:8%; }
.csp-pct-9 { width:9%; }
.csp-pct-10 { width:10%; }
.csp-pct-11 { width:11%; }
.csp-pct-12 { width:12%; }
.csp-pct-13 { width:13%; }
.csp-pct-14 { width:14%; }
.csp-pct-15 { width:15%; }
.csp-pct-16 { width:16%; }
.csp-pct-17 { width:17%; }
.csp-pct-18 { width:18%; }
.csp-pct-19 { width:19%; }
.csp-pct-20 { width:20%; }
.csp-pct-21 { width:21%; }
.csp-pct-22 { width:22%; }
.csp-pct-23 { width:23%; }
.csp-pct-24 { width:24%; }
.csp-pct-25 { width:25%; }
.csp-pct-26 { width:26%; }
.csp-pct-27 { width:27%; }
.csp-pct-28 { width:28%; }
.csp-pct-29 { width:29%; }
.csp-pct-30 { width:30%; }
.csp-pct-31 { width:31%; }
.csp-pct-32 { width:32%; }
.csp-pct-33 { width:33%; }
.csp-pct-34 { width:34%; }
.csp-pct-35 { width:35%; }
.csp-pct-36 { width:36%; }
.csp-pct-37 { width:37%; }
.csp-pct-38 { width:38%; }
.csp-pct-39 { width:39%; }
.csp-pct-40 { width:40%; }
.csp-pct-41 { width:41%; }
.csp-pct-42 { width:42%; }
.csp-pct-43 { width:43%; }
.csp-pct-44 { width:44%; }
.csp-pct-45 { width:45%; }
.csp-pct-46 { width:46%; }
.csp-pct-47 { width:47%; }
.csp-pct-48 { width:48%; }
.csp-pct-49 { width:49%; }
.csp-pct-50 { width:50%; }
.csp-pct-51 { width:51%; }
.csp-pct-52 { width:52%; }
.csp-pct-53 { width:53%; }
.csp-pct-54 { width:54%; }
.csp-pct-55 { width:55%; }
.csp-pct-56 { width:56%; }
.csp-pct-57 { width:57%; }
.csp-pct-58 { width:58%; }
.csp-pct-59 { width:59%; }
.csp-pct-60 { width:60%; }
.csp-pct-61 { width:61%; }
.csp-pct-62 { width:62%; }
.csp-pct-63 { width:63%; }
.csp-pct-64 { width:64%; }
.csp-pct-65 { width:65%; }
.csp-pct-66 { width:66%; }
.csp-pct-67 { width:67%; }
.csp-pct-68 { width:68%; }
.csp-pct-69 { width:69%; }
.csp-pct-70 { width:70%; }
.csp-pct-71 { width:71%; }
.csp-pct-72 { width:72%; }
.csp-pct-73 { width:73%; }
.csp-pct-74 { width:74%; }
.csp-pct-75 { width:75%; }
.csp-pct-76 { width:76%; }
.csp-pct-77 { width:77%; }
.csp-pct-78 { width:78%; }
.csp-pct-79 { width:79%; }
.csp-pct-80 { width:80%; }
.csp-pct-81 { width:81%; }
.csp-pct-82 { width:82%; }
.csp-pct-83 { width:83%; }
.csp-pct-84 { width:84%; }
.csp-pct-85 { width:85%; }
.csp-pct-86 { width:86%; }
.csp-pct-87 { width:87%; }
.csp-pct-88 { width:88%; }
.csp-pct-89 { width:89%; }
.csp-pct-90 { width:90%; }
.csp-pct-91 { width:91%; }
.csp-pct-92 { width:92%; }
.csp-pct-93 { width:93%; }
.csp-pct-94 { width:94%; }
.csp-pct-95 { width:95%; }
.csp-pct-96 { width:96%; }
.csp-pct-97 { width:97%; }
.csp-pct-98 { width:98%; }
.csp-pct-99 { width:99%; }
.csp-pct-100 { width:100%; }

.csp-u-0114bf2ffc { margin-left:0; }
.csp-u-024733f7d4 { display:flex;gap:10px;align-items:flex-start;background:var(--indigo-50);border:1px solid var(--indigo-100);border-radius:var(--radius);padding:12px 14px;font-size:0.9rem;color:var(--slate-700); }
.csp-u-03726368b9 { color:var(--slate-500);margin:0 0 22px; }
.csp-u-051e3d4bb5 { background:white;padding:24px 32px;border-radius: 0;max-width:360px;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.2); }
.csp-u-0869e5ef73 { justify-content:space-between; }
.csp-u-090fefb637 { color:#c0392b; }
.csp-u-0a908e46c7 { width:100%;padding:8px;border:1px solid #ddd;border-radius: 0;box-sizing:border-box;margin-bottom:15px; }
.csp-u-0bf32d8e41 { display:flex;gap:8px;padding:4px 0;border-bottom:1px solid var(--slate-100); }
.csp-u-0cc23a4631 { background:#fff;border-radius: 0;max-width:600px;width:100%;box-shadow:0 20px 40px rgba(0,0,0,.2);max-height:90vh;display:flex;flex-direction:column; }
.csp-u-0d5e0bab06 { margin-top:10px;background:var(--warning-bg);border:1px solid var(--warning-bd);border-left:4px solid #f59e0b;border-radius: 0;padding:10px 12px; }
.csp-u-0d63ffc28e { display:block;margin-top:5px;line-height:1.4; }
.csp-u-0d8e8d76b7 { width:15%; }
.csp-u-0db2e5507d { width:64px; }
.csp-u-0f90a3be7f { display:inline-block;padding:4px 10px;background:var(--primary);color:#fff;border-radius: 0;font-size:0.78rem;font-weight:600;text-decoration:none; }
.csp-u-101dd69564 { width:30%; }
.csp-u-120bc26cb0 { color:var(--texte-faible);font-size:0.78rem; }
.csp-u-144a6ee7de { display:none;color:var(--danger-fg); }
.csp-u-152edfe130 { font-size:0.78rem;color:var(--success-fg);margin-bottom:8px; }
.csp-u-158926d81e { border:1px solid var(--border);border-radius: 0;margin-bottom:16px;overflow:hidden; }
.csp-u-17a35b5934 { text-align:right;white-space:nowrap; }
.csp-u-18028c464c { max-width:320px;margin:8px auto 0; }
.csp-u-1c7ac9074b { width:6%; }
.csp-u-1d9ebf8788 { font-size:0.8rem;color:var(--slate-500);margin:10px 0 0; }
.csp-u-1da9facb4d { margin:0; }
.csp-u-1eb750355c { font-size:0.85rem;color:var(--texte-faible);margin-top:10px; }
.csp-u-1fac461a25 { font-family:Spectral,sans-serif;font-size:1.05rem; }
.csp-u-203b603b77 { border:1px solid var(--slate-200);border-radius: 0;padding:11px 13px;margin-bottom:9px; }
.csp-u-20445e3437 { height:46px;border:1px solid var(--slate-300);border-radius:var(--radius-sm);background:#fff; }
.csp-u-21e9b395f9 { color:var(--slate-500);text-decoration:line-through; }
.csp-u-226a9d6195 { width:14%; }
.csp-u-22d055cd63 { font-size:0.85rem; }
.csp-u-234b578d25 { width:190px; }
.csp-u-258b6e3f74 { max-width:800px;margin:20px auto 0; }
.csp-u-26270e8b63 { height:56px; }
.csp-u-275868de3b { font-size:12.5px;color:var(--slate-500);margin:0 0 10px; }
.csp-u-27f0dfc81c { font-size:0.72rem;color:var(--danger-fg);font-style:italic;margin-top:2px; }
.csp-u-28118a5b04 { margin-top:16px;padding:12px 14px;border:1px solid var(--slate-200); background:var(--slate-50);font-size:0.86rem;line-height:1.6; }
.csp-u-291b7bbb01 { margin-top:0; }
.csp-u-2b12d8628e { width:60px; }
.csp-u-2d1176ea79 { text-align:right;font-size:1.15rem; }
.csp-u-2f20ce6a71 { color:var(--indigo-600);flex-shrink:0;display:inline-flex; }
.csp-u-2f5e11e6a5 { width:34px; }
.csp-u-2fd7789b39 { margin-top:6px; }
.csp-u-335bce506e { margin-top:20px;padding-top:18px;border-top:1px dashed var(--slate-200); }
.csp-u-340a8846b2 { margin:12px 0 0; }
.csp-u-34761b9e80 { padding:18px 22px;overflow-y:auto; }
.csp-u-37a293183f { background:var(--indigo-600);color:white;border:none;padding:8px 20px;border-radius: 0;font-weight:bold;cursor:pointer;margin-right:10px; }
.csp-u-37a5fdf2fd { border-color:var(--danger-bd); }
.csp-u-37f83849bd { width:13%; }
.csp-u-387d9318a9 { font-size:0.88rem;color:var(--slate-600);line-height:1.6;margin:0 0 12px; }
.csp-u-39b435b2b3 { max-width:1100px;padding-bottom:0; }
.csp-u-3b0ad3b980 { color:var(--indigo-600); }
.csp-u-3b30d0389e { width:10%; }
.csp-u-3d850d6065 { font-size:0.85rem;text-transform:uppercase;letter-spacing:.03em; color:var(--slate-500);margin:0 0 10px; }
.csp-u-3ef1fa1aa1 { margin-bottom:12px; }
.csp-u-46944bb758 { border:0;border-top:1px solid var(--slate-200);margin:22px 0 18px; }
.csp-u-46a548d4f3 { width:0; }
.csp-u-4d249895af { width:55%; }
.csp-u-4edeb9e71d { text-decoration:none; }
.csp-u-4f8bba75f5 { font-size:0.8rem;font-weight:600;color:var(--slate-500); }
.csp-u-4fed75ff95 { width:76px; }
.csp-u-5035d5ca81 { text-align:center;color:var(--texte-faible);padding:24px; }
.csp-u-5469769625 { text-decoration:none;line-height:1.6; }
.csp-u-5492c38d46 { background:var(--indigo-600); }
.csp-u-54da60b55e { max-width:1100px;padding-top:0; }
.csp-u-55cf527121 { width:90px;text-align:right; }
.csp-u-58cd17bf8d { margin:4px 0 0;font-size:0.85rem;color:var(--slate-500); }
.csp-u-5b22b07aba { background:var(--slate-50);border:1px solid var(--slate-200); padding:12px 14px;font-size:0.78rem;line-height:1.5; max-height:300px;overflow:auto;margin:0; }
.csp-u-5b6aad9a3f { margin-bottom:18px; }
.csp-u-5e7c95ad98 { color:var(--texte-faible); }
.csp-u-60a030a4ba { color:var(--slate-900);font-size:0.85rem;white-space:pre-wrap; }
.csp-u-60c99835f2 { margin-top:6px;font-size:0.8rem;color:var(--slate-500); }
.csp-u-64307aca8d { color:var(--slate-500); }
.csp-u-6660798e89 { margin-top:0;align-items:flex-end; }
.csp-u-6b00e75351 { display:flex;gap:10px; }
.csp-u-6c002e2180 { margin-bottom:6px; }
.csp-u-6ef15f2333 { background:var(--slate-50);border:1px solid var(--slate-200); padding:12px 14px;font-size:0.78rem;line-height:1.5; max-height:260px;overflow:auto;margin:0; }
.csp-u-6f19f3b050 { margin:10px 0 0;font-size:0.82rem;line-height:1.5; }
.csp-u-733763a2f2 { background:var(--trait); }
.csp-u-73a4c1f652 { font-size:0.8rem;font-weight:700;color:var(--warning-fg);margin-bottom:8px; }
.csp-u-745ab36395 { width:16%; }
.csp-u-76084ee4e5 { margin-bottom:0; }
.csp-u-7681a0d71e { vertical-align:-2px; }
.csp-u-78e06eead1 { min-width:180px;color:var(--slate-500);font-size:0.8rem; }
.csp-u-792bffc3b3 { background:var(--warning-fg);color:#fff;border:0;border-radius: 0;padding:9px 16px; font:inherit;font-weight:700;cursor:pointer;min-height:40px; }
.csp-u-7bc5020165 { margin:0 0 10px;color:var(--warning-fg); }
.csp-u-7f93b287e1 { display:flex; gap:10px; flex-wrap:wrap; }
.csp-u-801001df0e { width:100%;padding:10px;font-size:0.95em; }
.csp-u-81298d7f18 { color:var(--texte-faible);font-size:0.8rem;margin-left:8px; }
.csp-u-8192b5ab79 { display:flex;justify-content:flex-end;padding:10px 16px;background:#fafafa;border-top:1px solid var(--border); }
.csp-u-885657fa7c { background:white;padding:24px 32px;border-radius: 0;max-width:360px;width:90%;box-shadow:0 8px 24px rgba(0,0,0,.2); }
.csp-u-88b9d5c614 { margin-top:14px; }
.csp-u-8994800ea6 { background:var(--slate-400);color:white;border:none;padding:8px 20px;border-radius: 0;font-weight:bold;cursor:pointer; }
.csp-u-8a359a76eb { margin-top:16px; }
.csp-u-8cac6f8d4a { font-size:0.78rem;color:var(--warning-fg);margin-bottom:8px; }
.csp-u-8f39f1884b { color:var(--slate-500);font-size:14.5px;margin:0 0 26px; }
.csp-u-902e26e992 { color:var(--success-fg); }
.csp-u-9079b47e6a { background:var(--indigo-600);color:white;border:none;padding:8px 20px;border-radius: 0;font-weight:bold;cursor:pointer;margin-right:8px; }
.csp-u-91ad39dcd4 { margin:0 0 15px;font-size:1em;color:var(--slate-900); }
.csp-u-9374e84210 { margin-top:12px; }
.csp-u-95c952a4e5 { width:210px; }
.csp-u-97294b207c { grid-column:1/-1; }
.csp-u-97e2bb0597 { background:var(--danger-bg);border:1px solid var(--danger-bd); padding:12px 14px;margin-bottom:14px;font-size:0.85rem; color:var(--slate-800);line-height:1.6; }
.csp-u-97ed2d075e { max-width:340px; }
.csp-u-9ba7de5698 { padding:6px 12px;background:var(--warning-fg);color:#fff;border:none;border-radius: 0;font-size:0.78rem;font-weight:600;cursor:pointer; }
.csp-u-9f7cb1fbb6 { margin-top:40px; }
.csp-u-9fe45cd88c { width:120px; }
.csp-u-a0612bbb59 { margin:0 0 12px; }
.csp-u-a356dbeffc { border-bottom:1px solid var(--slate-300);flex:1;min-height:28px; }
.csp-u-a3a0419ea5 { width:20%; }
.csp-u-a3a5568692 { margin-top:4px; }
.csp-u-a527bac1ee { text-align:right; }
.csp-u-a6c29abd90 { background:var(--indigo-600);color:#fff;padding:16px 22px;border-radius: 0 0 0;display:flex;justify-content:space-between;align-items:center; }
.csp-u-a82d7062cc { margin-bottom:14px; }
.csp-u-a86a53db25 { flex:1;min-width:260px; }
.csp-u-a946991609 { background:var(--warning-fg); }
.csp-u-a9efa5449f { white-space:nowrap; }
.csp-u-aa202faa54 { display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;background:var(--slate-50);border-bottom:1px solid var(--border); }
.csp-u-ad54e396fa { margin:0 0 8px; }
.csp-u-aec82229b6 { font-size:11.5px;color:var(--warning-fg);font-weight:600; }
.csp-u-b05fd1db7f { width:0%; }
.csp-u-b1ecc496e0 { margin-top:8px; }
.csp-u-b384a753f7 { font-size:0.82rem;color:var(--slate-500); }
.csp-u-b4f90720fe { grid-template-columns:1fr 1fr;gap:14px; }
.csp-u-b6309ddb07 { background:#FFFFFF;border:none;color:#fff;width:30px;height:30px;border-radius: 0;cursor:pointer; }
.csp-u-b69b3bdde2 { text-align:center;color:var(--texte-faible);margin-top:60px; }
.csp-u-b796e77d11 { width:100%;padding:8px 0; }
.csp-u-b863900158 { margin:5px 0;font-size:0.9rem;color:var(--slate-800); }
.csp-u-baeb1750a7 { color:var(--warning-fg); }
.csp-u-bc1989dcad { width:12%; }
.csp-u-bd9269db28 { font-size:0.88rem;color:var(--slate-600);line-height:1.6;margin:0 0 14px; }
.csp-u-c09af241be { font-size:0.8rem;color:var(--slate-500);margin:12px 0 0;line-height:1.55; }
.csp-u-c28bd948da { text-align:left; }
.csp-u-c69f12b4fd { font-weight:400;margin:0; }
.csp-u-c8be1ccba6 { display:none; }
.csp-u-c8d67009fe { display:flex;gap:6px;flex-wrap:wrap; }
.csp-u-c8da3d02c6 { margin-bottom:22px; }
.csp-u-cd03d67899 { font-size:0.78rem;color:var(--danger-fg);margin-bottom:8px; }
.csp-u-ce04072381 { background:var(--danger-fg); }
.csp-u-cfb91d4293 { max-width:1040px; }
.csp-u-d079789e53 { color:var(--indigo-600);font-weight:600; }
.csp-u-d139a3f669 { margin-top:6px;display:flex;gap:6px; }
.csp-u-d26d79f4c2 { width:70px; }
.csp-u-d41936879b { padding:12px 16px; }
.csp-u-d8a81eac84 { margin-top:10px; }
.csp-u-d982937dda { margin-bottom:4px; }
.csp-u-d9e79e916f { font-size:12.5px;color:var(--slate-500);margin-top:14px;text-align:right; }
.csp-u-da497c1f12 { font-size:.78rem;color:var(--slate-500); }
.csp-u-dbafcc0b50 { display:flex;align-items:center;gap:16px;margin-bottom:14px;flex-wrap:wrap; }
.csp-u-dd8ef92034 { display:none;margin-top:8px; }
.csp-u-e01e16e650 { vertical-align:-3px; }
.csp-u-e092beeaac { font-size:0.75rem;color:var(--text-light);margin-top:8px; }
.csp-u-e1671eccc5 { background:#fff;color:var(--slate-500);border-color:var(--texte-faible); }
.csp-u-e1a5ac1c83 { font-weight:700;color:var(--slate-900); }
.csp-u-e32c788d10 { font-size:0.82rem;color:var(--slate-500);word-break:break-all; }
.csp-u-e4ad4a163b { margin-bottom:8px; }
.csp-u-e4b2fd696f { background:var(--indigo-600);color:#fff;padding:16px 22px;border-radius: 0 0 0; }
.csp-u-e574ba1931 { color:var(--texte-faible);font-size:0.85rem; }
.csp-u-e667272ae3 { padding:14px 22px;border-top:1px solid var(--slate-200);text-align:right; }
.csp-u-e6b3185d71 { width:66px; }
.csp-u-e80b83ab37 { font-size:0.84rem;color:var(--slate-500); }
.csp-u-e8d0e19912 { color:var(--slate-900); }
.csp-u-e904c17de5 { background:#fff;border:1px solid var(--slate-300); }
.csp-u-eb8462b12d { font-size:13px;color:var(--slate-500);margin:14px 0 0; }
.csp-u-eee7876950 { display:flex;flex-wrap:wrap;gap:8px; }
.csp-u-f2ccd6459a { background:var(--slate-50); }
.csp-u-f306fc89ae { margin:14px 0 22px; }
.csp-u-f7eb6c9388 { font-size:13px;color:var(--slate-500);margin:0 0 12px; }
.csp-u-fbf6071364 { color:inherit;text-decoration:none; }
.csp-u-fdb1d239ff { background:#fff;border-radius: 0;max-width:680px;width:100%;box-shadow:0 20px 40px rgba(0,0,0,.2);max-height:90vh;display:flex;flex-direction:column; }
.csp-u-fead2c719e { margin:0 0 20px;font-size:1em;color:var(--slate-900); }
