.cms-status { margin-block: 1.5rem; padding: 1rem 1.25rem; border: 1px solid #e6a768; border-radius: 12px; background: #fff5e8; color: #5c3700; }
.cms-loading,.cms-empty { list-style: none; color: var(--fg-muted); padding: 1rem 0; }
.demo-notice { padding-block: 1.25rem; font-size: .85rem; opacity: .8; }
.cms-filters { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; }
.cms-filters [aria-pressed="true"] { background: var(--fg); color: var(--bg); }
.event-state,.event-location { font-size: .85rem; color: var(--fg-muted); }
.event-location:empty { display: none; }
.form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.consent { display: flex; align-items: flex-start; gap: .75rem; font-size: .85rem; line-height: 1.6; margin-bottom: 1.25rem; }
.consent input { flex: 0 0 auto; margin-top: .3rem; width: 1.1rem; height: 1.1rem; }
.field textarea,.field select { width: 100%; font: inherit; border: 1px solid var(--line,#ddd); border-radius: 10px; padding: .8rem 1rem; background: white; }
.field textarea { resize: vertical; }
button:disabled { opacity: .6; cursor: wait; }
#contact-status { margin-top: 1rem; }
.member-heading { margin-top: 2.5rem; margin-bottom: 1rem; }
.article-content { max-width: 850px; margin-inline: auto; }
.article-content > img { border-radius: 18px; width: 100%; max-height: 550px; object-fit: cover; margin-bottom: 2rem; }
.article-body { font-size: 1.1rem; line-height: 1.8; }
.article-body p,.article-body ul { margin-bottom: 1.25rem; }
.article-body a { text-decoration: underline; }
[hidden] { display: none !important; }
