/* Product attachments plugin — colours come from the active theme's tokens. */
.pa-box {
    --pa-primary: var(--color-theme-primary, var(--theme-primary, #4f46e5));
    --pa-muted: var(--color-theme-muted, var(--theme-text-muted, #71717a));
    --pa-border: var(--color-theme-border, var(--theme-border, #e4e4e7));
    margin-top: 2rem; color: var(--color-theme-text, var(--theme-text, inherit));
}
.pa-box h3 { margin: 0 0 .75rem; font-family: var(--font-title, inherit); font-size: 1.25rem; font-weight: 600; }
.pa-list { display: grid; gap: .5rem; margin: 0; padding: 0; list-style: none; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); }
.pa-item a, .pa-item span.pa-locked { display: flex; align-items: center; gap: .75rem; padding: .75rem .9rem; border: 1px solid var(--pa-border); border-radius: .75rem; color: inherit; text-decoration: none; }
.pa-item a:hover { border-color: var(--pa-primary); }
.pa-ext { flex: none; display: flex; align-items: center; justify-content: center; width: 2.6rem; height: 2.6rem; border-radius: .5rem; background: var(--pa-primary); color: var(--color-theme-on-primary, #fff); font-size: .7rem; font-weight: 700; }
.pa-meta { display: block; color: var(--pa-muted); font-size: .78rem; }
.pa-locked { opacity: .7; }
