.ui-gallery{display:grid!important;grid-template-columns:repeat(var(--gallery-columns,4),minmax(0,1fr))!important;gap:18px!important;align-items:start}.ui-gallery figure{margin:0;min-width:0;overflow:hidden;border:1px solid var(--line,#ddd);border-radius:10px;background:var(--card,#fff)}.ui-gallery figure>img{width:100%;height:auto;aspect-ratio:1;max-height:none;object-fit:cover;background:var(--soft,var(--panel-soft,#e9e9e2));display:block;cursor:zoom-in;margin:0}.ui-gallery[data-thumbnail=original] figure>img{aspect-ratio:1;object-fit:contain}.ui-gallery details{padding:8px 10px;font-size:11px;overflow-wrap:anywhere}.ui-gallery details p,.ui-gallery figcaption{font-size:11px}.gallery-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:18px 0 12px}.gallery-tools>span{font-size:11px;color:var(--muted,#666);margin-right:auto}.gallery-tools button,.gallery-open{border:1px solid var(--line,#ccc);border-radius:7px;padding:7px 10px;min-height:36px;color:inherit;background:var(--card,#fff);cursor:pointer}.gallery-tools button[aria-pressed=true]{background:var(--ink,#333);color:var(--paper,#fff)}.gallery-open{font-size:11px;margin:8px 10px}.iv-overlay{position:fixed;inset:0;z-index:1000;background:rgba(5,7,10,.96);color:#fff;isolation:isolate}.iv-stage{position:absolute;inset:65px 24px 55px;display:flex;align-items:center;justify-content:center;overflow:hidden}.iv-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform-origin:center;touch-action:none;cursor:grab;user-select:none}.iv-stage img:active{cursor:grabbing}.iv-tools{position:absolute;inset:12px 16px auto;display:flex;gap:8px;align-items:center;justify-content:center;z-index:2}.iv-tools button{border:1px solid #707782;background:#252a32;color:#fff;min-height:40px;min-width:40px;border-radius:9px;padding:7px 12px;cursor:pointer}.iv-tools button:focus-visible{outline:3px solid #ffbd55;outline-offset:3px}.iv-scale{min-width:45px;font-size:12px;text-align:center}.iv-hint{position:absolute;bottom:12px;left:12px;right:12px;text-align:center;color:#ccd0d8;font-size:12px;margin:0}@media(max-width:700px){.ui-gallery{grid-template-columns:repeat(var(--gallery-columns,2),minmax(0,1fr))!important;gap:12px!important}.iv-stage{inset:66px 10px 56px}.iv-tools{gap:5px;inset:10px 6px auto}.iv-tools button{padding:6px 9px}}@media(max-width:350px){.ui-gallery{grid-template-columns:repeat(var(--gallery-columns,1),minmax(0,1fr))!important}}

/* Thumbnail fit motion: the frame stays square; only image pixels scale. */
.ui-gallery .gallery-thumbnail{position:relative;width:100%;aspect-ratio:1;overflow:hidden;background:var(--soft,var(--panel-soft,#e9e9e2))}
.ui-gallery .gallery-thumbnail>img{display:block;width:100%;height:100%;max-height:none;margin:0;object-fit:contain;transform-origin:50% 50%;transform:scale(var(--gallery-image-scale,1));transition:transform 420ms cubic-bezier(.2,.7,.2,1);cursor:zoom-in}
.ui-gallery .gallery-thumbnail>img:not([data-thumbnail-ready=true]){visibility:hidden}
@media(prefers-reduced-motion:reduce){.ui-gallery .gallery-thumbnail>img{transition:none}}
