.cp-poster-slides { position:relative; isolation:isolate; }
.cp-gig-open { position:absolute;inset:0;z-index:2;border:0;background:transparent;cursor:pointer;border-radius:8px; }
.cp-gig-open:focus-visible { outline:2px solid #ff6076;outline-offset:-4px; }
.cp-poster-slides .cp-poster-image { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; opacity:0; transition:opacity 250ms cubic-bezier(.23,1,.32,1),transform 500ms cubic-bezier(.23,1,.32,1),filter 500ms cubic-bezier(.23,1,.32,1); }
.cp-poster-slides .cp-poster-image.is-current { opacity:1; }
.cp-poster-slides.cp-poster-detail { aspect-ratio:4/5; background:#000; border-radius:8px; margin-bottom:20px; overflow:hidden; }
.cp-poster-meta { display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0;margin-bottom:2px; }
.cp-poster-meta .gig-date { margin-bottom:0;white-space:nowrap; }
#gigModal .cp-poster-meta { margin-bottom:15px; }
.cp-poster-meta #gigModalDate { margin-bottom:0!important; }
.cp-poster-controls { position:static;display:flex;align-items:center;flex-shrink:0;gap:0;padding:0;border:0;background:transparent;color:#aaa; }
.cp-poster-controls button { display:grid;place-items:center;min-width:24px;min-height:24px;padding:0;border:0;background:transparent;color:inherit;border-radius:3px;cursor:pointer;font:500 15px/1 sans-serif; }
.cp-poster-controls button:nth-child(2) { min-width:32px;font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.03em; }
.cp-poster-controls .is-paused { color:#eee;text-decoration:underline;text-underline-offset:3px; }
@media (hover:hover) and (pointer:fine) { .cp-poster-controls button:hover { color:#fff; } }
.cp-poster-controls button:focus-visible { outline:2px solid #ff6076; outline-offset:1px; }
.cp-poster-detail .cp-poster-image { filter:none; }
.cp-gig-detail { color:inherit;text-decoration:none; }
.cp-gig-detail:hover { text-decoration:underline;text-underline-offset:3px; }
.cp-gig-detail:focus-visible,.cp-event-page-link:focus-visible { outline:2px solid #ff6076;outline-offset:3px; }
.cp-event-page-link { display:inline-flex;align-items:center;min-height:32px;margin-top:12px;color:#ccc;font-size:15px;text-underline-offset:4px; }
@media (prefers-reduced-motion:reduce) { .cp-poster-slides .cp-poster-image { transition:none; } .gig-card:hover .cp-poster-image { transform:none; } }
