/* Shared interaction layer for both galleries; keep the existing visual layouts. */
:is(.launch-page,.starter-site-page) .example-slide:not(.is-active){cursor:pointer}
:is(.launch-page,.starter-site-page) .example-shot img{user-select:none;-webkit-user-drag:none}
:is(.launch-page,.starter-site-page) .slider-progress{margin-top:26px}
:is(.launch-page,.starter-site-page) .slider-progress button{position:relative;display:block;width:100%;min-width:0;height:28px;margin:0;padding:0;border:0;border-radius:4px;background:transparent;cursor:pointer;touch-action:manipulation}
:is(.launch-page,.starter-site-page) .slider-progress button::before{position:absolute;inset:12px 0 auto;content:"";height:3px;border-radius:4px;background:#ffffff33;transition:background .2s}
:is(.launch-page,.starter-site-page) .slider-progress button:hover::before{background:#b2e7c8}
:is(.launch-page,.starter-site-page) .slider-progress button.is-active::before{background:#78dda3}
:is(.launch-page,.starter-site-page) .slider-progress button:focus-visible,:is(.launch-page,.starter-site-page) .example-slider:focus-visible{outline:2px solid #78dda3;outline-offset:3px}
:is(.launch-page,.starter-site-page) .example-slider{touch-action:pan-y}
@media(max-width:760px){:is(.launch-page,.starter-site-page) .slider-progress{margin-top:16px}}
@media(prefers-reduced-motion:reduce){:is(.launch-page,.starter-site-page) .example-track,:is(.launch-page,.starter-site-page) .example-slide{transition:none}}
