/* Les fichiers dessinés · Azelize (validés par Taha le 6 octobre 2026). Refait par outils/fichiers.py.
   .az-dls : la liste à télécharger (en grille ; .az-dls--liste : une ligne par fichier).
   .az-dl : un fichier, un lien <a href download> : le dessin, le titre dessous, puis le format et le poids.
   .az-fx : le dessin (svg/fichier-<format>.svg), posé tel quel dans la page : au survol du lien, il bouge un peu
   à sa façon et son point s'allume en or. Couleurs de secours écrites en dur : poser ce fichier dans public/. */
.az-dls { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 160px), 1fr)); gap: 8px;
  margin: 0; padding: 0; list-style: none; }
.az-dl { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 14px 10px 16px; border-radius: 16px;
  color: var(--az-dl-texte, #0D1230); text-align: center; text-decoration: none; cursor: pointer;
  transition: background-color .25s ease; -webkit-tap-highlight-color: transparent; }
.az-dl:is(:hover, :focus-visible) { background: var(--az-dl-survol, #F3F3F6); }
.az-dl:focus-visible { outline: 2px solid var(--az-dl-anneau, #1E2A9E); outline-offset: 2px; }
.az-dl .az-fx { width: var(--az-dl-taille, 96px); height: auto; aspect-ratio: 1; flex: none; display: block; overflow: visible; }
.az-dl__texte { display: flex; flex-direction: column; gap: 3px; min-width: 0; max-width: 100%; }
.az-dl__nom { font-weight: 600; font-size: 15px; line-height: 1.3; text-wrap: balance; overflow-wrap: anywhere;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.az-dl__meta { font-size: 13px; line-height: 1.35; color: var(--az-dl-gris, #5E6372); }
.az-dl__meta svg { width: 15px; height: 15px; vertical-align: -3px; margin-right: 4px; }
.az-dls--liste { grid-template-columns: minmax(0, 1fr); gap: 2px; }
.az-dls--liste .az-dl { flex-direction: row; text-align: left; gap: 14px; padding: 8px 16px 8px 8px; --az-dl-taille: 56px; }
.az-dls--liste .az-dl__nom { text-wrap: pretty; }
@media (max-width: 520px) { .az-dls:not(.az-dls--liste) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* les mouvements : des déplacements courts, un seul à la fois, puis retour */
.az-fx * { transform-box: view-box; }
.az-fx :is(.az-f-tout, .az-f-soleil, .az-f-poignee, .az-f-lecture, .az-f-tirette, .az-f-rabat, .az-f-feuilles,
  .az-f-mont, .az-f-mont2, .az-f-texte, .az-f-selection, .az-f-aa) {
  transition: transform .5s cubic-bezier(.22, .8, .3, 1); }
.az-fx .p { transition: fill .3s ease; }
.az-dl:is(:hover, :focus-visible) .az-fx .p { fill: #C9A54C; }                     /* l'éclat, à l'écran seulement */
.az-dl:is(:hover, :focus-visible) .az-f-tout { transform: translateY(-2.5px); }
/* la pastille « télécharger » : elle apparaît en bas à droite du dessin */
.az-fx .az-f-dl { opacity: 0; transform: scale(.55); transform-origin: 71px 70px;
  transition: opacity .2s ease, transform .35s cubic-bezier(.3, 1.45, .5, 1); }
.az-fx .az-f-dl-anneau { fill: var(--az-dl-survol, #F3F3F6); }   /* le fond du lien survolé : l'anneau détache la pastille du bandeau */
.az-dl:is(:hover, :focus-visible) .az-f-dl { opacity: 1; transform: none; }
.az-dl:is(:hover, :focus-visible) .az-fx--pdf .az-f-mont { transform: translateY(-1.5px); }
.az-dl:is(:hover, :focus-visible) .az-f-curseur { animation: az-f-clignote 1.1s steps(1) 2; }   /* le curseur attend */
@keyframes az-f-clignote { 50% { opacity: 0; } }
.az-dl:is(:hover, :focus-visible) .az-f-selection { transform: translateY(7px); }         /* la case choisie descend d'une ligne */
.az-dl:is(:hover, :focus-visible) .az-fx--presentation .az-f-texte { transform: translateX(1.5px); }
.az-dl:is(:hover, :focus-visible) .az-fx--presentation .az-f-mont { transform: translateY(-1px); }
.az-dl:is(:hover, :focus-visible) .az-f-soleil { transform: translateY(-3.5px); }          /* le soleil se lève */
.az-dl:is(:hover, :focus-visible) .az-fx--image .az-f-mont2 { transform: translateX(-1.5px); }
.az-fx .az-f-poignee { transform-origin: 40px 29px; }
.az-dl:is(:hover, :focus-visible) .az-f-poignee { transform: rotate(-14deg); }             /* on tire la poignée */
.az-fx .az-f-clap { transform-origin: 57px 28.5px; transition: transform .32s cubic-bezier(.55, 0, .75, .4); }
.az-dl:is(:hover, :focus-visible) .az-f-clap { transform: rotate(-10deg); }                /* le clap claque */
.az-fx .az-f-lecture { transform-origin: 40.8px 40.5px; }
.az-dl:is(:hover, :focus-visible) .az-f-lecture { transform: scale(1.15); transition-delay: .3s; }
.az-fx .az-f-notes { transform-origin: 40px 46px; }
.az-dl:is(:hover, :focus-visible) .az-f-notes { animation: az-f-notes .9s ease-in-out; }   /* les notes dansent */
@keyframes az-f-notes { 25% { transform: translateY(-3px) rotate(-6deg); } 55% { transform: translateY(0) rotate(4deg); } 80% { transform: translateY(-1px) rotate(-2deg); } }
.az-fx .az-f-tirette { transform-origin: 61.4px 41.5px; }
.az-dl:is(:hover, :focus-visible) .az-f-tirette { animation: az-f-balance 1s ease-in-out; }    /* la tirette se balance */
@keyframes az-f-balance { 25% { transform: rotate(14deg); } 55% { transform: rotate(-8deg); } 80% { transform: rotate(3deg); } }
.az-dl:is(:hover, :focus-visible) .az-f-aa { transform: translateX(-1px); }
.az-fx .az-f-rabat { transform-origin: 40px 69px; }
.az-dl:is(:hover, :focus-visible) .az-f-rabat { transform: scaleY(.84); }                  /* le dossier s'entrouvre */
.az-dl:is(:hover, :focus-visible) .az-f-feuilles { transform: translateY(-3px); }
@media (prefers-reduced-motion: reduce) {
  .az-fx * { transition: none !important; animation: none !important; }
  .az-dl:is(:hover, :focus-visible) .az-fx * { transform: none !important; }
}
