/* AFIS Ops Manager - situations du poste (tuiles-lvp-0251) : LVP, urgence, entraînement. */
.afsit { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 10px 0 4px; padding: 10px 12px;
    border-radius: 8px; background: #eef1f4; border: 1px solid #d3dae1; }
.afsit.is-lvp { background: #fff8e1; border-color: #e0b13b; }
.afsit.is-urgence { background: #fdecec; border-color: #c62828; box-shadow: inset 4px 0 0 #c62828; }
.afsit-etats { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; min-width: 0; flex: 1 1 260px; }
.afsit-calme { color: #5b6670; font-size: 14px; }
.afsit-p { display: inline-flex; align-items: baseline; gap: 6px; padding: 6px 12px; border-radius: 999px; font-size: 14px; line-height: 1.3; }
.afsit-p b { letter-spacing: .04em; }
.afsit-p small { font-size: 12.5px; opacity: .85; }
.afsit-p-lvp { background: #f5b400; color: #1d1300; }
.afsit-p-urgence { background: #c62828; color: #fff; animation: afsit-pulse 2s ease-in-out infinite; }
.afsit-p-training { background: #1565c0; color: #fff; }
@keyframes afsit-pulse { 50% { box-shadow: 0 0 0 6px rgba(198, 40, 40, .25); } }
@media (prefers-reduced-motion: reduce) { .afsit-p-urgence { animation: none; } }
.afsit-cmd { display: flex; flex-wrap: wrap; gap: 8px; }
.afsit-b { min-height: 48px; padding: 0 16px; border-radius: 8px; font-family: inherit; font-weight: 700; font-size: 15px; line-height: 1.2; cursor: pointer; border: 2px solid; background: #fff; }
.afsit-b-lvp { border-color: #c79100; color: #5c4300; }
.afsit-b-lvp.on { background: #f5b400; color: #1d1300; }
.afsit-b-urg { border-color: #c62828; color: #8e1c1c; }
.afsit-b-urg.on { background: #c62828; color: #fff; }
.afsit-b:focus-visible { outline: 3px solid #1565c0; outline-offset: 2px; }
.afsit-dlg.is-urgence .afq-dialog-corps h3 { color: #b71c1c; }
.afsit-ch { display: grid; gap: 4px; margin: 10px 0; }
.afsit-ch > span { font-size: 14px; font-weight: 700; }
.afsit-ch small { font-weight: 400; color: #5b6670; }
.afsit-ch input { min-height: 46px; font-size: 16px; padding: 8px 10px; border-radius: 6px; border: 1px solid #9aa6af; width: 100%; box-sizing: border-box; }
.afsit-ch[hidden] { display: none; }
/* Lignes de main courante */
.afmc-lvp_debut, .afmc-lvp_fin { background: #fff8e1; }
.afmc-urgence_debut, .afmc-urgence_action, .afmc-urgence_fin { background: #fdecec; }
.afmc-lvp_debut .afmc-type, .afmc-lvp_fin .afmc-type { color: #7a5a00; font-weight: 700; }
.afmc-urgence_debut .afmc-type, .afmc-urgence_action .afmc-type, .afmc-urgence_fin .afmc-type { color: #b71c1c; font-weight: 700; }
.afsit-trace { display: block; margin-top: 3px; font-size: 12.5px; color: #5b6670; font-style: italic; }
.afmc-l:has(.afsit-corr) { grid-template-columns: 62px 48px 1fr auto auto; }
.afmc-x.afsit-corr { margin-right: 2px; }
@media (max-width: 600px) {
    .afmc-l:has(.afsit-corr) { grid-template-columns: 54px 44px 1fr; }
    .afmc-l:has(.afsit-corr) .afsit-corr { grid-column: 3; justify-self: start; }
    .afmc-l:has(.afsit-corr) .afsit-corr + .afmc-x { grid-column: 3; justify-self: start; margin-top: -10px; }
}
/* Entraînement */
.afsit-tr { border: 1px solid #c7d0d8; border-radius: 8px; padding: 8px 12px 10px; margin: 12px 0; display: grid; gap: 4px; }
.afsit-tr legend { font-weight: 700; padding: 0 4px; }
.afsit-tr legend small { font-weight: 400; color: #5b6670; }
.afsit-tr label { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; font-size: 15px; }
.afsit-tr input { width: 22px; height: 22px; flex: none; }
.afsit-roles { display: inline-flex; gap: 4px; flex-wrap: wrap; }
.afsit-role-b { min-height: 40px; padding: 0 10px; border-radius: 6px; border: 1px solid #8fa3b5; background: #fff; color: #1d2a36; font-size: 13px; cursor: pointer; }
.afsit-role-b.on { background: #1565c0; border-color: #1565c0; color: #fff; font-weight: 700; }
.afsit-role { display: inline-block; padding: 3px 8px; border-radius: 4px; background: #1565c0; color: #fff; font-size: 12.5px; }
.afsit-tr-etat { margin: 8px 0; padding: 8px 10px; border-radius: 6px; background: #eef3fb; color: #1d2a36; font-size: 14px; }
.afsit-tr-etat.on { background: #1565c0; color: #fff; }
.afsit-tr-etat.on a { color: #fff; }
.afsit-tr-etat small { opacity: .8; }
/* Mode nuit du cahier */
.afis-vigie.nuit .afsit, body.afis-nuit .afsit { background: #1d2328; border-color: #3b444c; color: #eef1f2; }
.afis-vigie.nuit .afsit-b, body.afis-nuit .afsit-b { background: #2a3238; }
@media (max-width: 600px) {
    .afsit { padding: 8px; }
    .afsit-cmd { width: 100%; }
    .afsit-b { flex: 1 1 140px; }
}
