.activity-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr)); gap:1.5rem; }
.activity-card { overflow:hidden; border:1px solid var(--club-line); border-radius:var(--club-radius); background:var(--club-surface); }
.activity-image { width:100%; height:auto; aspect-ratio:16/9; display:block; background:var(--club-soft); }
.activity-copy { padding:1.25rem; }
.activity-copy h3 { margin:0 0 .65rem; }
.activity-copy p { white-space:pre-line; overflow-wrap:anywhere; }
.activity-fallback { display:flex;align-items:center;justify-content:center;color:var(--club-teal);font-family:var(--club-display);font-size:1.5rem; }
.publishing-image-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-block:1rem; }
.publishing-image-grid img { display:block;width:100%;height:100px;object-fit:contain;background:var(--club-soft); }
.publishing-image-grid figure { margin:0;border:1px solid var(--club-line);padding:.6rem;border-radius:var(--club-radius); }
.activity-editor-preview { max-width:36rem; margin-block:1rem; }

.club-account .publishing-sections { display:flex; flex-wrap:wrap; gap:.75rem; padding:0; margin:1.25rem 0 1.5rem; border:0; background:transparent; }
.club-account .publishing-sections button { flex:1 1 13rem; display:flex; flex-direction:column; align-items:flex-start; gap:.2rem; min-height:72px; margin:0; padding:.8rem 1rem; border:2px solid var(--club-line); border-radius:var(--club-radius); background:var(--club-surface); color:var(--club-ink); font:700 1rem/1.4 system-ui,sans-serif; text-align:left; cursor:pointer; }
.club-account .publishing-sections button span { font-size:.8rem; font-weight:400; }
.club-account .publishing-sections button[aria-pressed="true"] { border-color:var(--club-teal); color:var(--club-teal); }
.club-account .publishing-sections button:hover { border-color:var(--club-teal); }
.club-account .publishing-sections button:focus-visible { outline:3px solid var(--club-teal); outline-offset:3px; }

.publishing-upload { margin-block:1.25rem; padding:1rem; border:1px solid var(--club-line); border-radius:var(--club-radius); background:var(--club-soft); }
.publishing-upload-status:not(:empty) { padding:.75rem; border-left:3px solid var(--club-teal); background:var(--club-surface); font-weight:600; }
.publishing-upload-status.is-error { border-left-color:#b42318; }
.publishing-upload [aria-invalid="true"] { outline:2px solid #b42318; outline-offset:2px; }

.activity-editor-status:not(:empty) { padding:.85rem; border:1px solid var(--club-line); border-left:3px solid var(--club-teal); border-radius:var(--club-radius); background:var(--club-soft); font-weight:600; }
.publishing-editor [aria-invalid="true"] { outline:2px solid #b42318; outline-offset:2px; }

.activity-actions, .activity-trail { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; }
.activity-trail { max-width:52rem; margin:1.5rem auto; }
.club-activities #activities-main { padding-inline:clamp(1rem,3vw,2rem); }
.activity-image-link { display:block; }
.activity-copy a, .activity-detail a, .activity-trail a { overflow-wrap:anywhere; }
.activity-copy h3 a { color:inherit; }
.activity-detail { max-width:52rem; margin:0 auto 3rem; }
.activity-detail h1 { overflow-wrap:anywhere; }
.activity-flyer { display:block; max-width:100%; max-height:80vh; width:auto; height:auto; margin-block:1.5rem .5rem; object-fit:contain; }
.activity-paragraph { white-space:pre-line; overflow-wrap:anywhere; }
.activity-ended { padding:1rem; border-left:4px solid var(--club-teal); background:var(--club-soft); }
.activity-summary-count { display:block; font-size:.875rem; }
.activity-detail button { margin-top:1rem; }
.activity-card a:focus-visible, .activity-detail a:focus-visible, .activity-detail button:focus-visible { outline:3px solid var(--club-teal); outline-offset:3px; }

.club-activities #activities-retry { padding:.5rem .9rem; min-height:44px; border:1px solid var(--club-control-line); border-radius:var(--club-radius); color:var(--club-ink); background:var(--club-soft); font:600 .9rem/1.5 var(--club-body,system-ui); cursor:pointer; }
.publishing-editor select { box-sizing:border-box; max-width:100%; padding:.65rem; font:inherit; }
.publishing-editor #activity-body { min-height:6rem; }

/* Compact editor-only display-order indicators; wider values remain readable. */
.activity-order-badge { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; min-width:1.75rem; min-height:1.75rem; padding:.1rem .4rem; margin-inline-end:.5rem; border:1px solid var(--club-line); border-radius:.4rem; background:var(--club-surface); color:var(--club-ink); font:600 .875rem/1.4 var(--club-body,system-ui); font-variant-numeric:tabular-nums; vertical-align:middle; }
.activity-order-badge.activity-order-zero { border-color:var(--club-teal); background:var(--club-soft); color:var(--club-teal); }
.activity-order-hint { display:block; margin-top:.35rem; font-size:.875rem; font-weight:400; }
