.publication-controls{margin:18px 0 4px;padding-top:16px;border-top:1px solid var(--line)}
.publication-controls .field-caption{font-size:11px;color:var(--muted)}
.publication-chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.publication-chip,.publication-access{min-height:44px;padding:9px 12px;font-size:12px;line-height:1.35;border:1px solid var(--line);border-radius:22px;background:transparent;color:var(--ink)}
.publication-chip[aria-pressed=true],.publication-access[aria-pressed=true]{background:var(--tone-11);border-color:var(--gold);color:var(--gold)}
.publication-chip.waiting{border-style:dashed}
.publication-chip:focus-visible,.publication-access:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.publication-access{border-radius:8px;margin:4px 0;font-weight:600}
.publication-controls p,.publication-waiting{font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.publication-waiting{color:var(--muted);border-left:2px solid var(--gold);padding-left:10px}
.publication-status{min-height:1.6em;margin:10px 0 0;color:var(--gold)}
.story-destinations{min-width:0;margin:16px 0}.story-destinations legend{font-size:14px;font-weight:600}
.story-membership{margin-top:18px}.story-destinations .visibility-choice{margin-bottom:10px}
.story-locked{position:relative;width:100%;min-height:300px;background:var(--deep);border-radius:14px;overflow:hidden;display:grid;place-items:center;text-align:center}
.story-locked>img{width:100%;max-height:50vh;object-fit:cover;opacity:.55}.story-locked>div{position:relative;padding:24px}.story-locked>img+div{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#111e);color:white}
.story-lock-mark{font-size:80px;color:var(--gold)}.story-locked .primary{display:inline-flex}

/* Owner cards need space for touch controls and complete publication notices. */
.set-card-copy .publication-controls p{display:block;-webkit-line-clamp:unset;overflow:visible;margin:8px 0;font-size:12px;line-height:1.6}
.set-card-copy .publication-controls .publication-status{margin-bottom:0}
.publication-status:empty{display:none!important}
@media(max-width:600px){.sets-owner-grid{grid-template-columns:minmax(0,1fr)}.sets-owner-grid .set-card-copy{padding:18px}.sets-owner-grid .set-cover{aspect-ratio:4/3}}
