.community-wall-intro { margin-bottom: 22px; color: var(--dd-muted-strong); line-height: 1.6; }
/* A chronological stream prevents empty grid cells below shorter text posts. */
.community-wall-intro, .community-wall-composer, .community-wall-list { width: 100%; max-width: 820px; margin-inline: auto; box-sizing: border-box; }
.community-wall-list { display: flex; flex-direction: column; gap: 22px; }
.community-wall-card { min-width: 0; margin: 0; overflow: hidden; padding: 20px; border: 1px solid var(--dd-line); border-radius: 16px; background: var(--dd-surface); }
.community-wall-card header { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-bottom: 14px; }
.community-wall-card header time { margin-left: auto; color: var(--dd-muted); font-size: 12px; }
.community-wall-card p { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.65; }
.community-wall-photo { display: block; width: 100%; max-height: 680px; object-fit: contain; border-radius: 10px; background: var(--dd-input); }
.community-wall-footer { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 20px; margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--dd-line); }
.community-wall-footer .post-visibility { display: block; margin: 0; font-size: 12px; color: var(--dd-muted-strong); }
.community-wall-profile { display: inline-flex; align-items: center; min-height: 44px; color: var(--dd-nav-active); font-size: 14px; font-weight: 650; }
.community-wall-more { display: block; margin: 22px auto 0; min-height: 44px; }
.community-wall-composer { margin-bottom: 22px; }
@media(max-width:720px) { .community-wall-card { padding: 16px; } }
.community-social { margin-top: 18px; border-top: 1px solid var(--dd-line); padding-top: 14px; }
.community-social-bar { display: flex; gap: 10px; flex-wrap: wrap; }
.community-social :is(button,textarea) { font: inherit; }
.community-social button { min-height: 44px; padding: 10px 16px; border: 1px solid var(--dd-line); border-radius: 10px; background: var(--dd-surface-2); color: var(--dd-text); cursor: pointer; }
.community-social button[aria-pressed=true] { color: var(--dd-nav-active); background: var(--dd-pink-soft); border-color: var(--dd-pink); }
.community-social button:disabled { opacity: .55; cursor: wait; }
.community-social-status:empty, .community-social-poll:empty { display: none; }
.community-social-replies { margin-top: 16px; }
.community-social-comment { padding: 12px 14px; margin-bottom: 10px; border-radius: 12px; background: var(--dd-input); }
.community-social-comment p { margin: 5px 0; }
.community-social-comment-form { display: flex; align-items: end; gap: 10px; margin-top: 14px; }
.community-social-comment-form label { flex: 1; min-width: 0; display: grid; gap: 6px; font-size: 13px; }
.community-social-comment-form textarea { width: 100%; resize: vertical; min-height: 68px; padding: 12px; box-sizing: border-box; background: var(--dd-input); color: var(--dd-text); border: 1px solid var(--dd-line); border-radius: 10px; }
.community-social-poll { display: grid; gap: 8px; margin-bottom: 16px; }
.community-social-poll h3 { margin: 0 0 6px; font-size: 16px; }
.community-social-poll button { text-align: left; }
@media(max-width:480px) { .community-social-comment-form { flex-direction: column; align-items: stretch; } }
