/* One clipped frame; neither the contact sheet nor another photograph can spill into it. */
.adult-album { position:relative!important; isolation:isolate; overflow:hidden!important; background:#000!important; background-image:none!important; min-height:260px; }
.adult-album .adult-photo { position:absolute!important; inset:0!important; width:100%!important; height:100%!important; opacity:1; z-index:3; overflow:hidden!important; background:#000!important; transition:opacity .48s ease!important; transform:none; animation:adult-photo-zoom 6.5s ease-out both!important; }
.adult-album .adult-photo svg.adult-photo-image { display:block!important; width:100%!important; height:100%!important; overflow:hidden!important; opacity:1!important; position:relative!important; inset:auto!important; background:#000!important; transform:none!important; animation:none!important; }
.adult-photo-image image { opacity:1!important; animation:none!important; }
.adult-album .film-vignette { display:none!important; }
.adult-album .film-controls,.adult-album #photo-number { z-index:5!important; }
.adult-album-controls { display:flex;align-items:center;justify-content:center;gap:18px;padding:18px 10px; }
.adult-album-controls button { cursor:pointer;border:1px solid currentColor;background:transparent;color:inherit;padding:10px 14px;font:inherit;border-radius:30px; }
.adult-album-count,.adult-album-status { text-align:center;font-size:12px;letter-spacing:.05em; }
.adult-album-status[hidden] { display:none!important; }
@keyframes adult-photo-zoom { from { scale:1; } to { scale:1.035; } }
@media(prefers-reduced-motion:reduce) { .adult-album .adult-photo { animation:none!important; } }

/* Equal-sized controls keep the pause symbol separate from both arrows. */
.album-controls { align-items:center; gap:24px; }
.album-controls button { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; padding:0; line-height:1; }
.album-controls button svg { display:block; width:20px; height:20px; }
