.speed-image-trigger{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:zoom-in;text-align:inherit}
.speed-image-trigger:focus-visible{outline:3px solid var(--green);outline-offset:5px}
.speed-gallery{width:min(1200px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:0 18px 60px #0008}
.speed-gallery::backdrop{background:#070c0ae8}
.speed-gallery[open]{display:flex;flex-direction:column;gap:16px}
.speed-gallery header,.speed-gallery footer{display:flex;align-items:center;gap:16px;flex-shrink:0}
.speed-gallery footer{padding:0;margin:0;border:0}
.speed-gallery header h2{flex:1;min-width:0;font-size:22px;margin:0;line-height:1.5}
.speed-gallery button{min-height:44px;padding:8px 16px;background:transparent;color:inherit;border:1px solid var(--line);border-radius:6px;font:inherit;cursor:pointer}
.speed-gallery button:hover{border-color:var(--green)}
.speed-gallery button:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.speed-gallery-stage{min-height:0;overflow:auto;text-align:center;background:#111414}
.speed-gallery-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:68dvh;object-fit:contain;margin:auto}
.speed-gallery.is-zoomed .speed-gallery-stage img{max-width:none;max-height:none;margin:0 auto}
.speed-gallery footer p{flex:1;text-align:center;margin:0;font-variant-numeric:tabular-nums}
body.speed-gallery-open{overflow:hidden}
@media(max-width:600px){.speed-gallery{padding:12px;gap:12px}.speed-gallery header h2{font-size:17px}.speed-gallery header,.speed-gallery footer{gap:8px}.speed-gallery footer{flex-wrap:wrap}.speed-gallery button{padding:8px 12px}.speed-gallery footer [data-gallery-zoom]{width:100%}.speed-gallery-stage img{max-height:58dvh}}

/* Masonry: natural image proportions, with each figure kept in one column. */
.speed-examples .speed-evidence-grid{display:block;column-count:2;column-gap:32px}
.speed-examples .speed-evidence{display:block;width:100%;break-inside:avoid;margin:0 0 32px}
.speed-examples .speed-evidence img{width:100%;height:auto;max-height:none;object-fit:contain;margin-bottom:0}
@media(max-width:600px){.speed-examples .speed-evidence-grid{column-count:1}}
