.tg-gallery-main{position:relative}
.tg-gallery-main .tg-zoom-open{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:zoom-in;display:flex;align-items:flex-end;justify-content:flex-end;padding:16px}
.tg-zoom-open span{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;box-sizing:border-box;background:rgba(255,255,255,.95);border:1px solid #dedfd7;border-radius:50%;padding:0;color:#46572b;box-shadow:0 2px 8px rgba(36,38,34,.08)}
.tg-zoom-open span svg{display:block;width:20px;height:20px}
.tg-zoom-open:hover span{background:#f6f4ed;border-color:#a7ad9b}
.tg-zoom-open:focus-visible{outline:2px solid #46572b;outline-offset:-4px}
.tg-image-dialog{position:fixed;inset:0;width:96vw;max-width:1600px;height:94dvh;max-height:94dvh;margin:auto;padding:0;border:0;border-radius:6px;background:#fff;color:#242622;box-shadow:0 20px 80px #0005;font-family:"Instrument Sans",sans-serif}
.tg-image-dialog::backdrop{background:rgba(20,24,17,.82)}
.tg-image-dialog[open]{display:flex;flex-direction:column}
.tg-zoom-toolbar,.tg-zoom-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;flex-shrink:0}
.tg-zoom-toolbar{border-bottom:1px solid #eee}
.tg-zoom-toolbar>div{display:flex;gap:6px}
.tg-image-dialog button{min-width:44px;height:44px;background:#f6f4ed;border:1px solid #e4e5dc;border-radius:4px;color:#354322;font:500 20px "Instrument Sans",sans-serif;cursor:pointer}
.tg-image-dialog button:disabled{opacity:.4;cursor:default}
.tg-image-dialog button:focus-visible{outline:2px solid #46572b;outline-offset:2px}
.tg-image-dialog [data-z=reset]{font-size:12px;min-width:60px}
.tg-zoom-counter,.tg-zoom-bottom span{font-size:12px}
.tg-zoom-stage{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:#fff;touch-action:pan-x pan-y pinch-zoom}
.tg-zoom-canvas{display:grid;place-items:center;width:max-content;height:max-content}
.tg-zoom-canvas img{display:block;max-width:none!important;max-height:none!important;object-fit:contain;user-select:none}
.tg-zoom-stage.is-zoomed{cursor:grab}
.tg-zoom-stage.is-zoomed:active{cursor:grabbing}
.tg-zoom-error{text-align:center;font-size:14px}
.tg-image-dialog [hidden]{display:none!important}
@media(max-width:640px){.tg-image-dialog{width:100vw;height:100dvh;max-height:100dvh;max-width:100vw;border-radius:0}.tg-zoom-toolbar,.tg-zoom-bottom{padding:8px}.tg-zoom-bottom span{font-size:11px;text-align:center}}
