.community-shell .lead { max-width: 880px; }
.community-nav { display:flex; flex-wrap:wrap; gap:.5rem; margin:1rem 0 1.25rem; }
.community-nav a { display:inline-block; border:1px solid rgba(0,0,0,.18); border-radius:999px; padding:.5rem .75rem; text-decoration:none; font-weight:700; }
.community-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1rem; margin:1rem 0; }
.member-card h2, .notification-row h2 { margin-top:0; }
.mini-card { text-decoration:none; color:inherit; }
.mini-card strong { display:block; font-size:1.05rem; margin-bottom:.25rem; }
.connection-row, .share-row, .notification-row { border-top:1px solid rgba(0,0,0,.12); padding:1rem 0; }
.status-pill { display:inline-block; border-radius:999px; padding:.2rem .55rem; background:#eef5ef; font-size:.85rem; font-weight:700; margin-left:.35rem; }
.message-thread { display:flex; flex-direction:column; gap:.75rem; }
.message-bubble { border:1px solid rgba(0,0,0,.12); border-radius:1rem; padding:.85rem; max-width:780px; }
.message-bubble.mine { margin-left:auto; background:#f7fbf8; }
.message-bubble.theirs { margin-right:auto; background:#fff; }
.notification-row.unread { background:#f7fbf8; border-left:4px solid #0b4b2b; padding-left:1rem; }
.chat-frame { width:100%; min-height:520px; border:1px solid rgba(0,0,0,.16); border-radius:1rem; }
.admin-table { width:100%; border-collapse:collapse; font-size:.92rem; }
.admin-table th, .admin-table td { border:1px solid rgba(0,0,0,.15); padding:.55rem; text-align:left; vertical-align:top; }
.admin-table code { white-space:normal; word-break:break-word; }
@media (max-width: 640px) { .admin-table { display:block; overflow-x:auto; } .community-nav a { flex:1 1 auto; text-align:center; } }
