.community {padding-top:52px;padding-bottom:72px;}
.community h1 {font-size:clamp(26px,4vw,40px);color:var(--ink);letter-spacing:-.04em;margin:14px 0;line-height:1.3;}
.community .lede {max-width:660px;font-size:16px;line-height:1.8;}
.board-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:38px;}
.board-card {display:flex;flex-direction:column;border:1px solid var(--border-strong);border-radius:18px;padding:28px;background:var(--bg-alt);transition:transform .2s,border-color .2s;}
.board-card:hover {transform:translateY(-3px);border-color:var(--accent);}
.board-card-top {display:flex;align-items:center;justify-content:space-between;gap:12px;}
.board-emoji {font-size:34px;}
.board-badge,.post-kind {font-size:12px;border:1px solid var(--border-strong);border-radius:20px;padding:5px 10px;color:var(--ink-dim);}
.board-card h2 {font-size:23px;color:var(--ink);margin:24px 0 0;letter-spacing:-.03em;}
.board-card p {color:var(--ink-dim);font-size:14px;line-height:1.8;margin:12px 0 28px;max-width:430px;}
.board-enter {display:flex;justify-content:space-between;font-size:14px;font-weight:500;color:var(--accent);margin-top:auto;}
.board-note {font-size:13px;color:var(--ink-dim);line-height:1.7;}
.board-grid + .board-note {margin-top:24px;}
.board-back {display:inline-block;color:var(--accent);font-size:14px;margin-bottom:30px;}
.board-heading {display:flex;align-items:center;justify-content:space-between;gap:24px;}
.board-heading .btn {flex-shrink:0;}
.board-switch {display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--border-strong);padding:20px 0;margin:16px 0 24px;}
.board-switch a {font-size:13px;padding:8px 12px;border-radius:6px;color:var(--ink-dim);}
.board-switch a[aria-current] {color:var(--accent);background:var(--bg-alt);font-weight:600;}
.board-filters {display:flex;gap:8px;flex-wrap:wrap;}
.board-filters button {border:1px solid var(--border-strong);border-radius:24px;padding:10px 16px;background:var(--bg);color:var(--ink-dim);font:inherit;font-size:13px;cursor:pointer;}
.board-filters button[aria-pressed="true"] {background:var(--ink);color:var(--bg);border-color:var(--ink);}
.board-posts {list-style:none;padding:0;margin:16px 0 28px;}
.board-posts li {border-bottom:1px solid var(--border-strong);}
.board-posts a {display:block;padding:22px 4px;overflow-wrap:anywhere;}
.board-posts a:hover .board-post-title {color:var(--accent);}
.board-post-title {display:block;font-size:18px;font-weight:500;color:var(--ink);margin:12px 0 8px;}
.board-post-meta {font-size:12px;color:var(--ink-dim);}
.board-post-excerpt {font-size:14px;color:var(--ink-dim);margin:10px 0 0;}
.board-editor {max-width:760px;}
.board-editor form:not([hidden]) {display:flex;flex-direction:column;gap:10px;margin-top:24px;}
.board-editor label {font-size:14px;color:var(--ink);margin-top:12px;}
.board-editor input,.board-editor select,.board-editor textarea {width:100%;padding:12px;border:1px solid var(--border-strong);border-radius:6px;background:var(--bg);color:var(--ink);font:inherit;font-size:15px;}
.board-editor textarea {resize:vertical;}
.board-editor .btn-row {margin-top:18px;}
#formError {color:#cf4747;}
.community [hidden] {display:none!important;}
.community button:disabled {opacity:.6;cursor:wait;}
.community a:focus-visible,.community button:focus-visible {outline:3px solid var(--accent);outline-offset:4px;}
#postWrap {overflow-wrap:anywhere;}
@media(max-width:640px) {
  .community {padding-top:32px;}
  .board-grid {grid-template-columns:1fr;gap:14px;}
  .board-card {padding:22px;}
  .board-heading {align-items:flex-start;flex-direction:column;gap:8px;}
  .board-heading .btn {align-self:stretch;}
  .board-switch {gap:2px;}
}
@media(prefers-reduced-motion:reduce) {.board-card {transition:none;}.board-card:hover {transform:none;}}
