Composants

Modals

Modal standard

Pour les formulaires courts, confirmations non-destructives, informations contextuelles.

Modifier le statut

<!-- Backdrop -->
<div class="fixed inset-0 bg-black/40 flex items-center justify-center p-4 z-50">
  <!-- Modal -->
  <div class="bg-white rounded-lg shadow-xl w-full max-w-md">
    <!-- Header -->
    <div class="flex items-center justify-between px-6 pt-5 pb-4 border-b border-gray-100">
      <h2 class="font-accent font-bold text-mc-navy text-lg">Titre du modal</h2>
      <button class="btn btn-ghost p-1.5 rounded" aria-label="Fermer">✕</button>
    </div>
    <!-- Body -->
    <div class="px-6 py-4">...</div>
    <!-- Footer -->
    <div class="flex justify-end gap-2 px-6 py-4 bg-gray-50 rounded-b-lg">
      <button class="btn btn-ghost">Annuler</button>
      <button class="btn btn-primary">Confirmer</button>
    </div>
  </div>
</div>

Modal de confirmation destructive

Obligatoire pour toute action irréversible : suppression, annulation, archivage. Jamais de browser confirm(). Le bouton de confirmation est toujours rouge et explicitement nommé.

Supprimer la commande CMD-0241 ?

Cette action est irréversible. Les données de cette commande et ses fichiers associés seront définitivement supprimés.

Toujours nommer l'objet dans le titre ("Supprimer CMD-0241", pas juste "Supprimer")
Toujours décrire la conséquence irréversible dans le corps
Bouton de confirmation rouge (btn-danger) avec label explicite
Bouton Annuler à gauche du bouton de confirmation
Jamais utiliser window.confirm() ou alert()
Ne pas pré-sélectionner le bouton destructif (évite les clics accidentels)

Tailles de modal

TailleClasseQuand l'utiliser
Smallmax-w-smConfirmation simple, alerte
Mediummax-w-mdFormulaire court (2-4 champs)
Largemax-w-lgFormulaire plus long, prévisualisation
XLmax-w-2xlException — préférer une page dédiée