/* Contact sheets show the actual four examples using each surface's own tokens. */
.photoset-contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:3px;aspect-ratio:3/4;overflow:hidden}
.ps-cover.photoset-contact > img,.studio-card-thumb.photoset-contact > img,.cat-card .photoset-contact > img{position:static;inset:auto;display:block;width:100%;height:100%;min-height:0;object-fit:cover}
.photoset-price{font-size:14px;font-weight:800;color:var(--text-strong,var(--obsidian))}
.photoset-frames{font-size:12px;line-height:1.5;color:var(--muted,var(--steel));margin:0}
.ps-body .photoset-start{margin-top:auto;padding-top:12px}
.photoset-note{font-size:13px;line-height:1.5;color:var(--muted,var(--steel));margin:0 0 16px}
.photoset-contact:focus-visible,.photoset-start:focus-visible,.studio-style-card[data-photoset-id]:focus-visible{outline:3px solid var(--accent,var(--orchid));outline-offset:3px}
.studio-card-body .photoset-frames{margin-top:6px}
.studio-card-action{display:block;margin-top:8px;font-size:12px;font-weight:700;color:var(--orchid)}
.studio-style-card.is-selected .studio-card-action::after{content:' ✓'}
.cat-card.ps-card{aspect-ratio:auto;background:var(--card)}
.cat-card.ps-card::after{display:none}
.cat-card.ps-card .photoset-contact{position:relative;width:100%}
.cat-card.ps-card .nm{position:static;display:flex;flex-direction:column;gap:7px;padding:12px 45px 14px 12px;color:var(--text);text-shadow:none}
.cat-card.ps-card .ps-sub{color:var(--muted);opacity:1;line-height:1.4}
.cat-card.ps-card .add{background:var(--btn);color:var(--on-accent);border-color:var(--line)}
.cat-card.ps-card.in .add{background:var(--accent-2);color:#fff}
@media(prefers-reduced-motion:reduce){.ps-card,.studio-style-card[data-photoset-id]{transition:none;transform:none}}
