/* Shared, full-window gallery. */
.reference-viewer{position:fixed;inset:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;margin:0;padding:64px 76px 24px;border:0;border-radius:0;box-sizing:border-box;background:rgba(8,11,14,.91);color:#fff;overflow:hidden}
.reference-viewer::backdrop{background:rgba(0,0,0,.25)}
.reference-viewer[open]{display:grid;place-items:center}
.viewer-figure{margin:0;width:100%;height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:18px;align-items:center;justify-items:center}
.viewer-image{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 8px 38px #0005;user-select:none}
.viewer-caption{text-align:center;font:600 15px/1.5 Arial,Helvetica,sans-serif;color:#fff;max-width:900px;overflow-wrap:anywhere;max-height:20dvh;overflow:auto}
.viewer-count{position:absolute;top:20px;left:24px;color:#ddd;font:400 14px/24px Arial,Helvetica,sans-serif;letter-spacing:.04em}
.reference-viewer button{position:absolute;display:grid;place-items:center;width:52px;height:52px;padding:0;border:0;border-radius:3px;color:#e8e8e8;background:transparent;cursor:pointer;font:300 46px/1 Arial,Helvetica,sans-serif}
.reference-viewer button:hover{color:white;background:#ffffff17}
.reference-viewer button:focus-visible{outline:2px solid #fff;outline-offset:2px;background:#ffffff17}
.reference-viewer .viewer-close{right:12px;top:8px;font-size:36px}
.reference-viewer .viewer-prev{left:12px;top:calc(50% - 26px)}
.reference-viewer .viewer-next{right:12px;top:calc(50% - 26px)}
.reference-viewer button[hidden]{display:none}
@media(max-width:600px){.reference-viewer{padding:64px 44px 24px}.reference-viewer button{width:44px;height:48px}.reference-viewer .viewer-prev{left:0}.reference-viewer .viewer-next{right:0}.reference-viewer .viewer-close{right:4px}.viewer-count{left:16px}.viewer-caption{font-size:13px}.viewer-figure{gap:16px}}
