/* LightTide — états de l'image agrandie (R2505).
   À charger APRÈS carousel-motion.css et gallery-image-state.css.
   Aucune animation, aucune transition, aucune image touchée, aucun scroll capturé. */

/* hidden prime toujours : pas d'icône cassée ni de grand cadre vide */
[data-gdis-img][hidden],
.gdis-retry[hidden]{
  display:none !important;
}

/* Proportions préservées une fois chargée (width/height du HTML conservés) */
:is(.art-dialog,.bw-dialog) [data-gdis-img]:not([hidden]){
  max-width:100%;
  object-fit:contain;
}

/* Bloc d'état en flux normal ; sans état, il n'occupe aucune place */
.gdis{
  box-sizing:border-box;
  min-width:0;
  margin:0;
  padding:0;
}
.gdis:is([data-state="loading"],[data-state="retrying"],[data-state="failed"]){
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.75rem;
  padding:.75rem 0;
}
.gdis-message{
  margin:0;
  font-size:max(.9375rem,.95em);
  line-height:1.5;
  color:inherit;
  overflow-wrap:anywhere;
}

/* Langue : même mécanisme que .t-fr / .t-en, redéclaré par sécurité dans le bloc */
html[lang="en"] .gdis .t-fr{display:none}
html:not([lang="en"]) .gdis .t-en{display:none}

/* Bouton inline 44px, crème/marine, sans animation */
.gdis-retry{
  box-sizing:border-box;
  min-width:44px;
  min-height:44px;
  padding:.5rem 1.1rem;
  font:inherit;
  font-weight:600;
  color:#153b51;
  background:#fbf8f0;
  border:1px solid #153b51;
  border-radius:999px;
  cursor:pointer;
}
.gdis-retry:hover{background:#fff}
.gdis-retry[aria-disabled="true"]{cursor:progress}
.gdis-retry:focus-visible{
  outline:3px solid #fbf8f0;
  outline-offset:2px;
  box-shadow:0 0 0 6px #153b51;
}

@media (forced-colors:active){
  .gdis-retry{border-color:ButtonText}
  .gdis-retry:focus-visible{outline-color:Highlight;box-shadow:none}
}

/* Keep the empty live region present without adding layout space. */
.gdis .gdis-message{margin:0!important}
