.gallery-enlarge{display:block;width:100%;padding:0;border:0;border-radius:0;background:transparent;cursor:zoom-in;line-height:0}
.gallery-enlarge:focus-visible{outline:3px solid #0f766e;outline-offset:3px}
.gallery-viewer{position:fixed;inset:0;box-sizing:border-box;width:min(900px,calc(100vw - 48px));max-width:none;height:min(700px,85vh);height:min(700px,85dvh);max-height:none;margin:auto;padding:65px 75px;border:1px solid rgba(255,255,255,.2);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.4);background:#10202f;color:white;overflow:hidden}
.gallery-viewer::backdrop{background:rgba(8,17,29,.65)}
.gallery-viewer[open]{display:grid;place-items:center}
.viewer-image{display:block;min-width:0;min-height:0;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.gallery-viewer button{position:absolute;z-index:1;display:grid;place-items:center;width:48px;height:48px;padding:0;background:rgba(255,255,255,.15);color:white;border:1px solid rgba(255,255,255,.4);border-radius:50%;font-size:24px;cursor:pointer}
.gallery-viewer button:hover{background:rgba(255,255,255,.3)}
.gallery-viewer button:focus-visible{outline:3px solid #2dd4bf;outline-offset:3px}
.gallery-viewer button[hidden]{display:none}
.viewer-close{top:12px;right:16px;font-size:36px!important}
.viewer-prev{top:calc(50% - 24px);left:14px}
.viewer-next{top:calc(50% - 24px);right:14px}
.viewer-count{position:absolute;bottom:12px;left:0;right:0;margin:0;text-align:center;color:white;font-size:14px}
@media(max-width:620px){.gallery-viewer{width:calc(100vw - 24px);height:80vh;height:80dvh;padding:65px 12px;border-radius:14px}.viewer-prev,.viewer-next{top:auto;bottom:12px}.viewer-prev{left:16px}.viewer-next{right:16px}.viewer-count{bottom:25px}}
