/* Gallery A: one opening for the rail, independent of its existing x movement. */
.gallery .gy-mask { clip-path:inset(-.25em); }
.gallery .gallery-view.gy-reveal { clip-path:inset(var(--gy-cut,100%) 0 0 0); }
.gallery .gallery-arrow:focus-visible { outline:2px solid var(--accent);outline-offset:3px; }
.gallery .gallery-frame:focus-visible { outline:2px solid var(--ground);outline-offset:-4px;box-shadow:inset 0 0 0 1px var(--ink); }
/* Both shafts are drawn from tail to tip. Trim only the tail; never scale the SVG. */
.gallery .gallery-arrow svg path:first-child { stroke-dasharray:45.5 45.5;stroke-dashoffset:0; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .gallery .gallery-arrow svg path:first-child { transition:stroke-dashoffset 220ms cubic-bezier(.22,1,.36,1); }
 .gallery .gallery-arrow:not(:disabled):hover svg path:first-child { stroke-dashoffset:-8;transition-duration:280ms; }
 .gallery .gallery-arrow:disabled svg path:first-child { transition:none; }
}
@media(hover:hover) and (pointer:fine) {
 .gallery .gallery-arrow { transition:color 160ms ease-out; }
 .gallery .gallery-arrow:not(:disabled):hover { color:var(--accent);transition-duration:180ms; }
 .gallery .gallery-arrow:disabled { color:inherit;transition:none; }
 .gallery .gallery-frame { cursor:zoom-in; }
 .gallery .gallery-frame img { transform:scale(1);transition:transform 500ms cubic-bezier(.22,1,.36,1); }
 .gallery .gallery-frame:hover img { transform:scale(1.045);transition-duration:650ms; }
 .gallery .gallery-frame.gy-promoted img { will-change:transform; }
 .gallery.gy-blocked .gallery-frame img { transform:scale(1);transition:none; }
}
@media(prefers-reduced-motion:reduce) {
 .gallery .gy-mask,.gallery .gallery-view.gy-reveal { clip-path:none; }
 .gallery .gallery-arrow,.gallery .gallery-frame img { transition:none; }
 .gallery .gallery-frame img,.gallery .gallery-frame:hover img,.gallery.gy-blocked .gallery-frame img { transform:none; }
}
