.activity-shell { max-width: 1160px; padding-top: 28px; padding-bottom: 40px; }
.activity-shell h1 { font-size: clamp(26px, 5vw, 40px); }
.activity-nav { margin-bottom: 24px; }
.activity-tabs { display: flex; flex-wrap: wrap; gap: 8px 18px; border-bottom: 1px solid var(--rule); padding-bottom: 12px; }
.activity-tabs [aria-current] { color: var(--qsl); border-bottom: 2px solid currentColor; }
.activity-filters { display: flex; align-items: end; flex-wrap: wrap; gap: 12px; padding-top: 16px; }
.activity-filters label { min-width: 90px; flex: 1; }
.activity-columns { display: grid; grid-template-columns: minmax(0, 760px) minmax(200px, 1fr); gap: 40px; }
.activity-today { border-left: 1px solid var(--rule); padding-left: 24px; font-family: var(--f-mono); font-size: 13px; }
.activity-today h2, .activity-onair h2 { font: 13px var(--f-mono); text-transform: uppercase; }
.activity-entry { border-top: 1px solid var(--rule); padding: 24px 0; display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 18px; overflow-wrap: anywhere; }
.activity-body { min-width: 0; }
.activity-call { width: 64px; height: 64px; background: var(--qsl); color: var(--paper); display: flex; align-items: center; justify-content: center; font: 12px var(--f-mono); text-decoration: none; }
.activity-call img { width: 100%; height: 100%; object-fit: cover; }
.activity-entry p { margin: 12px 0; }
.activity-text { font-size: 19px; line-height: 1.5; }
.activity-meta { font-family: var(--f-mono); font-size: 12px; color: var(--ink2); }
.activity-kind { text-transform: uppercase; letter-spacing: .04em; }
.activity-attachment { display: block; width: 100%; height: auto; border: 1px solid var(--rule); box-sizing: border-box; }
.activity-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; border-top: 1px solid var(--rule); padding-top: 10px; margin-top: 12px; font: 12px var(--f-mono); }
.activity-share { font: inherit; color: var(--ink2); background: none; border: 0; padding: 6px 0; cursor: pointer; text-decoration: underline; }
.activity-new { width: 100%; padding: 14px; border: 1px solid var(--qsl); color: var(--qsl); background: var(--paper); font: 14px var(--f-mono); cursor: pointer; margin-bottom: 16px; }
.activity-new[hidden] { display: none; }
.activity-onair { border-top: 1px solid var(--rule); padding: 10px 0 20px; display: flex; gap: 18px; align-items: center; flex-wrap: wrap; font: 12px var(--f-mono); }
.activity-onair a span { display: block; }
.activity-post img { display: block; max-width: 100%; max-height: 400px; }
.activity-shell form { margin-bottom: 24px; }
.activity-shell textarea, .activity-shell select { max-width: 100%; width: 100%; box-sizing: border-box; }
.activity-shell label { display: block; margin-bottom: 6px; }
.activity-running { display: block; font: 12px var(--f-mono); color: var(--qsl); margin-bottom: 10px; }
.activity-running::before { content: ""; display: inline-block; width: 6px; height: 6px; background: currentColor; margin-right: 8px; animation: activity-pulse 3s ease-in-out infinite; }
@keyframes activity-pulse { 50% { opacity: .35; } }
@media (prefers-reduced-motion: reduce) { .activity-running::before { animation: none; } }
@media (max-width: 800px) {
 .activity-columns { display: flex; flex-direction: column; gap: 16px; }
 .activity-today { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; order: -1; border: 0; padding: 10px 0; border-top: 1px solid var(--rule); }
 .activity-today h2, .activity-today p { display: inline; font-size: 11px; }
 .activity-today h2::after { content: ": "; }
 .activity-plans { display: none; }
 .activity-entry { grid-template-columns: 48px minmax(0, 1fr); gap: 12px; padding: 20px 0; }
 .activity-call { width: 48px; height: 48px; font-size: 10px; }
 .activity-text { font-size: 17px; }
 .activity-meta { font-size: 10px; }
 .activity-actions { gap: 14px; }
}

.activity-reactions, .activity-reaction-form .activity-actions { display:flex; flex-wrap:wrap; gap:.65rem; }
.activity-interactions { border-top:1px solid var(--rule); padding-top:.7rem; margin-top:.6rem; }
.activity-interactions details { max-width:100%; margin-bottom:.5rem; }
.activity-interactions details span { display:block; font-family:var(--f-mono); }
.activity-interactions label { display:block; margin:.4rem 0; }
.activity-interactions input, .activity-interactions select, .activity-interactions textarea { max-width:100%; box-sizing:border-box; }
.activity-interactions textarea { width:100%; }
.activity-comment { border-top:1px solid var(--rule); margin-top:.7rem; padding-top:.5rem; overflow-wrap:anywhere; }
.activity-comment p { white-space:pre-wrap; }
.activity-reply { margin-left:1rem; border-left:2px solid var(--rule); padding-left:.75rem; }
.activity-unread { font-size:.75em; }
.activity-inline-follow { margin-bottom:.5rem; }

.activity-reactions summary { cursor:pointer; padding:6px 0; font:12px var(--f-mono); }
.activity-reaction-form button, .activity-inline-follow button { border:1px solid var(--rule); background:var(--paper); color:var(--qsl); padding:7px 10px; font:12px var(--f-mono); cursor:pointer; }
.activity-interactions input, .activity-interactions select, .activity-interactions textarea { background:var(--paper); color:var(--ink); border:1px solid var(--rule); border-radius:0; padding:6px; font:inherit; }
.activity-interactions summary { cursor:pointer; }
.activity-interactions button:focus-visible, .activity-interactions summary:focus-visible { outline:2px solid var(--qsl); outline-offset:2px; }
