/*
 * AFIS Ops Manager - Derogations DSAC (2.38.0)
 * S'appuie sur les classes du portail (afis-hub, afis-dsac, afis-puce) et
 * leurs variables : le mode nuit est herite.
 */

.afis-derog .afis-dsac-outils > details > summary.afis-hub-btn { list-style: none; }
.afis-derog .afis-dsac-outils > details > summary::-webkit-details-marker { display: none; }
.afis-derog-saisie[open] { flex: 1 1 100%; }
.afis-derog-reglages[open] { flex: 1 1 100%; }
.afis-derog-saisie form, .afis-derog-reglages form {
    margin: 10px 0 0; padding: 14px; border: 1px solid var(--h-bord); border-radius: 10px; background: var(--h-fond2);
}
.afis-derog-form input[type="file"] { min-height: 38px; font-size: 14px; max-width: 100%; }
.afis-derog-form textarea, .afis-derog-form select, .afis-derog-form input[type="text"], .afis-derog-form input[type="date"] { width: 100%; box-sizing: border-box; }
.afis-derog-facultatif { font-weight: 400; font-size: 12px; color: var(--h-doux); }
.afis-derog-sans { align-self: end; min-height: 38px; align-items: center !important; flex-direction: row !important; color: var(--h-texte) !important; }
.afis-derog-concernes { border: 1px solid var(--h-bord); border-radius: 8px; padding: 8px 12px 10px; margin: 0; min-width: 0; }
.afis-derog-concernes legend { font-size: 13px; color: var(--h-doux); padding: 0 4px; }
.afis-derog-cases { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 4px 14px; max-height: 220px; overflow-y: auto; }
.afis-derog-cases label { color: var(--h-texte) !important; flex-direction: row !important; align-items: center !important; min-height: 32px; }
.afis-derog-pdf-actuel { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; font-size: 13px; color: var(--h-doux); }

.afis-derog-types { display: flex; flex-direction: column; gap: 8px; margin: 10px 0; }
.afis-derog-type {
    display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 2fr) auto auto; gap: 8px 12px; align-items: end;
    padding: 8px 10px; border: 1px solid var(--h-bord); border-radius: 8px; background: var(--h-fond);
}
.afis-derog-type.nouveau { border-style: dashed; }
.afis-derog-type label { display: flex; flex-direction: column; gap: 3px; font-size: 12px; color: var(--h-doux); min-width: 0; }
.afis-derog-type label.afis-dsac-case { flex-direction: row; align-items: center; min-height: 38px; color: var(--h-texte); font-size: 13px; }
.afis-derog-type input[type="text"], .afis-derog-type select { width: 100%; box-sizing: border-box; }
.afis-derog-paliers { display: flex; flex-direction: column; gap: 3px; font-size: 13px; color: var(--h-doux); max-width: 420px; margin-top: 6px; }

.afis-derog-filtre-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.afis-derog-ok { color: var(--h-vert) !important; }
.afis-derog-table td[data-lib="Validité"] { white-space: normal; }
.afis-derog-table .afis-dsac-actions form { margin: 0; }

/* Fiche agent : cartes */
.afis-derog-sous { font-size: 15px; margin: 16px 0 8px; }
.afis-derog-cartes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 10px; }
.afis-derog-carte {
    display: flex; flex-direction: column; gap: 6px; padding: 12px 14px; background: var(--h-fond);
    border: 1px solid var(--h-bord); border-left: 4px solid var(--h-vert); border-radius: 10px; min-width: 0;
}
.afis-derog-carte.st-bientot { border-left-color: var(--h-ambre); }
.afis-derog-carte.st-expiree { border-left-color: var(--h-rouge); }
.afis-derog-carte.st-a_venir { border-left-color: var(--h-accent); }
.afis-derog-carte-tete { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; }
.afis-derog-carte-tete .mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; color: var(--h-doux); }
.afis-derog-precision { font-size: 14px; color: var(--h-doux); }
.afis-derog-dl { margin: 0; display: grid; gap: 2px; font-size: 13px; }
.afis-derog-dl div { display: flex; flex-wrap: wrap; gap: 0 8px; }
.afis-derog-dl dt { color: var(--h-doux); min-width: 110px; }
.afis-derog-dl dd { margin: 0; }
.afis-derog-liees { display: flex; flex-wrap: wrap; gap: 4px 6px; align-items: center; font-size: 12px; }
.afis-derog-notes { margin: 0; font-size: 13px; color: var(--h-doux); white-space: pre-line; }
.afis-derog-carte-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
.afis-derog-carte-actions .afis-hub-btn, .afis-derog .afis-dsac-actions .afis-hub-btn { min-height: 38px; padding: 0 12px; font-size: 13px; }

/* Dossiers DSAC : pieces proposees */
.afis-derog-propositions { margin-top: 16px; padding: 12px 14px; border: 1px dashed var(--h-accent); border-radius: 10px; background: var(--h-accent-doux); }
.afis-derog-propositions h4 { margin: 0 0 8px; font-size: 14px; }
.afis-derog-propositions ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.afis-derog-propositions li { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; justify-content: space-between; font-size: 14px; }
.afis-derog-propositions form { margin: 0; }

/* Formations a verifier et detail du registre des formations */
.afis-derog-verif { margin: 6px 0 14px; padding: 12px 14px; border: 1px solid var(--h-rouge); border-radius: 10px; background: var(--h-rouge-doux); }
.afis-derog-verif h4 { margin: 0 0 4px; font-size: 15px; }
.afis-derog-verif ul { margin: 8px 0 0; padding-left: 18px; display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
.afis-derog-verif .afis-puce { white-space: normal; }
.afis-derog-formation { margin-top: 12px; padding: 8px 12px; border-radius: 8px; font-size: 13px; display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; }
.afis-derog-formation.ok { background: var(--h-accent-doux); }
.afis-derog-formation.alerte { background: var(--h-rouge-doux); color: var(--h-rouge); }

@media (max-width: 640px) {
    .afis-derog .afis-dsac-outils > details { flex: 1 1 100%; }
    .afis-derog .afis-dsac-outils > details > summary.afis-hub-btn { width: 100%; justify-content: center; box-sizing: border-box; }
    .afis-derog-type { grid-template-columns: 1fr 1fr; }
    .afis-derog-type label:first-child, .afis-derog-type label:nth-child(2) { grid-column: 1 / -1; }
    .afis-derog-filtre-actions { width: 100%; }
    .afis-derog-filtre-actions .afis-hub-btn { flex: 1 1 auto; justify-content: center; }
    .afis-derog-table td[data-lib="Validité"] { white-space: normal; }
}
