[data-community-mobile]:empty,[data-community-desktop]:empty{display:none}
.church-app .community-preview{border-radius:18px;min-width:0;padding:20px}
.community-preview-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.community-preview-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:12px;background:var(--sel-soft);color:var(--brand)}
.community-preview-heading>div{min-width:0}
.community-preview-heading h2{margin:0;font-size:1.125rem;line-height:1.35}
.community-preview-heading p{margin:3px 0 0;color:var(--muted);font-size:.8rem;line-height:1.5}
.community-preview-list{display:grid;gap:12px;list-style:none;margin:0;padding:0}
.community-preview-list li{min-width:0;padding:16px;border:1px solid var(--rule);border-radius:12px;background:var(--surface-2)}
.community-preview-list .community-category{padding:0;border:0;border-radius:0;background:transparent;font-size:.72rem;letter-spacing:.035em;text-transform:uppercase}
.community-preview-list h3{margin:7px 0 14px;font-size:1.05rem;line-height:1.5;overflow-wrap:anywhere}
.community-preview-list h3:last-child{margin-bottom:0}
.community-preview-list h3 a{color:var(--ink);text-decoration:none}
.community-preview-list h3 a:hover{text-decoration:underline;text-underline-offset:.2em}
.church-app .community-preview-list .community-post-action{display:flex;width:100%;justify-content:space-between;gap:12px;margin:0;padding:10px 14px;background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-size:.875rem;text-align:left}
.church-app .community-preview-list .community-post-action:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.community-preview-list .community-post-action span{flex:none}
.community-preview-empty{margin:.65rem 0 .9rem}
.church-app .community-preview-actions{flex-direction:row;align-items:center;justify-content:space-between;gap:4px 16px;margin:12px 0 -6px}
.community-preview-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--brand);font-size:.85rem;font-weight:700;text-decoration:none;border-radius:4px}
.community-preview-link:hover{text-decoration:underline;text-underline-offset:.2em}
.community-preview-write{color:var(--muted);font-weight:600}
.community-category,.community-state{display:inline-block;border:1px solid var(--rule);border-radius:999px;
  padding:.18rem .65rem;font-size:.78rem;line-height:1.5;font-weight:700;color:var(--ink);background:var(--surface)}
.community-category{background:var(--sel-soft);color:var(--brand)}
.community-category[data-category=help]{color:var(--nav-people)}
.community-category[data-category=prayer]{color:var(--nav-library)}
.community-page{width:100%;min-width:0}
.community-tabs,.community-filters{display:flex;flex-wrap:wrap;gap:.35rem .55rem;margin:0 0 1rem}
.community-tabs{border-bottom:1px solid var(--rule);padding-bottom:.45rem}
.community-tabs a,.community-filters a{display:inline-flex;align-items:center;min-height:44px;padding:.35rem .65rem;
  border:1px solid transparent;border-radius:8px;color:var(--ink);font-weight:700;text-decoration:none}
.community-tabs a:hover,.community-filters a:hover{background:var(--sel-soft)}
.community-tabs a[aria-current],.community-filters a[aria-current]{background:var(--sel-soft);color:var(--brand);border-color:var(--rule)}
.community-filters a{border-color:var(--rule);border-radius:999px;padding-inline:.8rem}
.community-list{display:grid;gap:20px;min-width:0;align-items:start}
.community-list>:not(.community-post),.community-list>.community-post:only-of-type{grid-column:1/-1}
.community-list>.community-form-card{width:100%;max-width:850px}
.community-list>.community-filters{margin-bottom:0}
.church-app .community-post,.church-app .community-form-card,.church-app .community-review-row,.church-app .community-empty{min-width:0;border-radius:16px}
.community-post-header,.community-review-row,.community-review-meta{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}
.community-post-header h2,.community-review-row h2{margin:.4rem 0 0;overflow-wrap:anywhere}
.community-post-header>div,.community-review-row>div{min-width:0}
.community-post-header>time,.community-review-meta{font-size:.88rem;color:var(--muted)}
.community-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;margin:.8rem 0}
.community-end{font-size:.86rem;margin:.4rem 0}
.church-app .community-post-actions{margin:.75rem 0 0}
.church-app .community-post-actions:empty{display:none}
.community-review-row{align-items:center}
.community-review-row p{margin:.25rem 0 0}
.community-review-meta{justify-content:flex-start;align-items:center}
.community-review-meta .community-state{color:var(--ink)}
.community-feedback{overflow-wrap:anywhere}
.community-feedback p{white-space:pre-wrap;margin:.4rem 0 0}
.community-form-card form{margin-top:1rem}
.community-form-card textarea{resize:vertical}
.community-form-card .field{margin-bottom:1rem}
.community-optional{border-block:1px solid var(--rule);margin:.75rem 0;padding-inline:.25rem}
.community-optional summary{display:list-item;min-height:44px;padding:.6rem 0;font-weight:700;cursor:pointer}
.community-optional-fields{margin-top:.25rem}
.community-optional-fields .muted{font-size:.85rem}
.community-consent{display:flex;align-items:center;gap:.65rem;padding:.45rem .15rem;min-height:44px}
.community-consent input[type=checkbox]{flex:none;width:20px;height:20px;margin:0;accent-color:var(--brand)}
.church-app .community-preview-submit{margin-top:.85rem}
.church-app .community-preview a.button,.church-app .community-page :is(a.button,button){min-height:44px}
.community-review-preview .community-post{border-color:var(--brand)}
.community-page .community-back{display:inline-flex;align-items:center;min-height:44px}
@media(min-width:1100px){
  .community-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .community-list>.community-post:only-of-type:has(>.community-post-actions>a){display:grid;grid-template-columns:minmax(0,1fr) 240px;column-gap:clamp(24px,4vw,64px)}
  .community-list>.community-post:only-of-type>:not(.community-post-actions){grid-column:1;max-width:100ch}
  .church-app .community-list>.community-post:only-of-type>.community-post-actions{grid-column:2;grid-row:1/span 3;flex-direction:column;align-items:stretch;margin:0}
}
@media(max-width:520px){
  .community-tabs,.community-filters{gap:.3rem}
  .community-tabs a,.community-filters a{font-size:.87rem;padding-inline:.55rem}
}
