.ueah-album-wall, .ueah-gallery-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: 1.5rem; }
.ueah-gallery-grid figure, .ueah-gallery-full { margin: 0; }
.ueah-gallery-grid img, .ueah-album-wall img { display: block; width: 100%; max-width: 100%; height: auto; }
.ueah-gallery-grid a { display: block; }
.ueah-gallery-grid figcaption { margin-block: .6rem; }
.ueah-gallery-video-label { display: block; padding: 2rem 1rem; border: 1px solid currentColor; }
.ueah-gallery-dialog { box-sizing: border-box; width: min(96vw, 90rem); max-width: calc(100% - 1rem); max-height: calc(100dvh - 1rem); padding: 1rem; overflow: auto; color: var(--ueah-texte); background: var(--ueah-fond); border: 2px solid currentColor; }
.ueah-gallery-dialog::backdrop { background: rgb(0 0 0 / .85); }
.ueah-gallery-dialog h2 { font-size: clamp(1.5rem, 4vw, 2.3rem); margin-block: 0 .75rem; }
.ueah-gallery-dialog nav { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .75rem; margin-block: 1rem 0; }
.ueah-gallery-dialog button { min-height: 2.75rem; padding: .5rem .8rem; font: inherit; color: var(--ueah-texte); background: var(--ueah-fond); border: 1px solid currentColor; cursor: pointer; }
.ueah-gallery-dialog button:disabled { opacity: .65; cursor: default; }
.ueah-gallery-full > img, .ueah-gallery-full > video { display: block; width: 100%; max-width: 100%; height: auto; max-height: 70dvh; object-fit: contain; margin-inline: auto; }
.ueah-gallery-full > img { touch-action: pan-y; }
.ueah-gallery-full figcaption, .ueah-gallery-grid figcaption { font-size: .95rem; line-height: 1.5; }
.ueah-gallery-full figcaption { margin-block: .75rem; }
.ueah-gallery-full details { margin-block: 1rem; }
