.atlas-nav{display:flex;align-items:center;gap:.5rem;padding-bottom:1.15rem;border-bottom:1px solid var(--line);flex-wrap:wrap}.atlas-nav>button{border:0;background:none;color:var(--muted);font-weight:650;padding:.65rem 1.1rem}.atlas-nav>button[aria-pressed=true]{color:var(--text);background:#381c21;box-shadow:inset 0 -2px var(--red)}.snapshot-picker{display:flex;align-items:center;gap:.75rem;margin-left:auto;min-width:0}.snapshot-picker label{color:var(--muted);font-size:.8rem;white-space:nowrap}.snapshot-picker select{width:auto;max-width:280px;font:.8rem monospace;min-height:44px}.snapshot-note{margin:.8rem 0 1.8rem;font-size:.75rem}.intro{color:var(--muted);margin:-.5rem 0 1.5rem;font-size:.95rem}.community-toolbar{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin:1.5rem 0;padding:1.15rem 1.25rem;border:1px solid #4d2d31;background:linear-gradient(110deg,#251b1f,#18181b)}.community-toolbar>div:first-child{flex:1;min-width:220px}.eyebrow{font-size:.7rem;letter-spacing:.13em;color:var(--red);font-weight:700}.community-toolbar p{margin:.3rem 0 0;font-size:.8rem;color:var(--muted)}.identity{display:flex;align-items:center;gap:.6rem}.identity input{height:44px;max-width:140px;border:1px solid var(--line);padding:.5rem .65rem;background:var(--bg)}.primary{background:var(--accent);border-color:var(--accent);font-weight:600}.primary:hover{background:#8d222a}.community-stats{display:flex;justify-content:space-between;gap:.75rem;padding-top:.9rem;margin-top:.9rem;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}.contribution-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin:1.5rem 0 .75rem}.vote-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:1.5rem 0 .5rem}.vote-row button[aria-pressed=true]{border-color:var(--red);background:#402228}.vote-row span{font: .85rem monospace;margin-left:.4rem}.comment{border:1px solid var(--line);padding:1rem;margin:.75rem 0;background:var(--panel);overflow-wrap:anywhere}.comment strong{display:block;font-size:.9rem}.comment>span{display:block;font-size:.75rem;margin:.3rem 0}.comment p{white-space:pre-wrap;margin:.5rem 0;font-size:.95rem}.comment-list{margin-bottom:1.25rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem}.form-grid .full{grid-column:1/-1}form label{display:grid;gap:.4rem;margin-bottom:.7rem;color:var(--muted);font-size:.85rem}form input,form textarea{height:auto;width:100%;border:1px solid var(--line);padding:.6rem .75rem;background:var(--bg);color:var(--text);font:inherit;min-height:44px;outline:revert}textarea{resize:vertical;font-family:var(--font);line-height:1.5}form fieldset{border:1px solid var(--line);padding:.75rem;margin:0;min-width:0}form legend{font-size:.85rem;color:var(--muted);padding:0 .4rem}.editor-dialog{width:min(760px,calc(100vw - 2rem))}.form-feedback{font-size:.85rem;color:var(--amber);min-height:1.4rem}.form-feedback:empty{display:none}.revision-history{margin-top:1.5rem;padding:1rem;border:1px solid var(--line)}.revision-history summary{cursor:pointer}.revision-history p{overflow-wrap:anywhere}.build-lineage{overflow-wrap:anywhere}.wiki-revisions{margin:1.5rem 0}.community-toolbar[hidden]{display:none}
@media(max-width:800px){.snapshot-picker{width:100%;margin:.5rem 0 0;justify-content:space-between}.snapshot-picker select{max-width:70%}.atlas-nav>button{flex:1;padding:.65rem .5rem}.community-toolbar{gap:.8rem}.community-toolbar>div:first-child{width:100%;flex-basis:100%}.identity{flex:1;min-width:0}.identity input{max-width:130px}.community-toolbar .primary{font-size:.85rem;padding:.65rem .8rem}}
@media(max-width:480px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1}.community-toolbar{padding:.9rem}.identity{width:100%;flex-basis:100%}.identity input{flex:1;max-width:unset}.community-toolbar>.primary{width:100%}.snapshot-note{font-size:.75rem}.vote-row{gap:.35rem}.vote-row button{padding:.55rem .7rem}.community-stats{font-size:.75rem}.intro{font-size:.85rem}.atlas-nav>button{font-size:.9rem}}
.community-toolbar>button[hidden]{display:none}
#results.forum-list{display:flex;flex-direction:column;gap:1rem}
.forum-post{border:1px solid var(--line);border-left:3px solid #6d252d;background:linear-gradient(110deg,#19171a,#111315);padding:1.25rem;overflow-wrap:anywhere}
.forum-post h3{margin:.55rem 0;font-size:1.2rem}.forum-post .fineprint{margin:.25rem 0}.post-excerpt,.post-body{white-space:pre-wrap;line-height:1.65;overflow-wrap:anywhere}.post-excerpt{margin:.65rem 0 1rem;color:var(--muted)}
.post-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:.8rem;margin-top:1rem}.post-footer>button{min-width:140px}.post-references{display:flex;flex-wrap:wrap;gap:.5rem}.post-reference{padding:.4rem .65rem;color:var(--text);font-size:.75rem;text-align:left;max-width:100%;overflow-wrap:anywhere;border-color:#503138;background:#21191d}.post-reference:hover{border-color:var(--red)}
.post-editor-references{display:flex;flex-direction:column;gap:.4rem;margin:.8rem 0}.reference-editor-chip{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.8rem;background:var(--panel);padding:.3rem .75rem;border:1px solid var(--line)}.reference-editor-chip span{overflow-wrap:anywhere}.reference-editor-chip button{white-space:nowrap;font-size:.75rem}
#build-leaderboard{margin:1.75rem 0 2rem;border:1px solid #563139;border-top:3px solid var(--red);padding:1.35rem;background:linear-gradient(120deg,#23191d,#131517)}#build-leaderboard[hidden]{display:none}#build-leaderboard h2{margin:.65rem 0}.ranking-notice{font-size:.85rem;line-height:1.6;color:var(--muted);padding:.6rem .8rem;border-left:2px solid #80404a;background:#291c21}
.leaderboard-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.25rem}.leaderboard-role{min-width:0}.leaderboard-role h3{margin:0;font-size:1.15rem}.ranking-mode{color:var(--muted);font-size:.75rem;margin:.35rem 0 .8rem}.ranking-card{display:flex;gap:.8rem;border:1px solid var(--line);padding:.9rem;background:#131518;margin:.6rem 0;min-width:0}.ranking-position{font:1.25rem monospace;color:var(--red);padding-top:.35rem}.ranking-content{min-width:0;flex:1}.ranking-title{display:block;background:none;border:0;padding:.1rem 0;text-align:left;font-size:.95rem;font-weight:650;max-width:100%;overflow-wrap:anywhere}.ranking-title:hover{color:var(--red);background:none}.ranking-perks{margin:.45rem 0;line-height:1.6;color:var(--muted);font-size:.75rem;overflow-wrap:anywhere}.ranking-score{display:block;font:.75rem monospace;color:#f0cad0;margin:.4rem 0}.ranking-card .fineprint{display:block;font-size:.7rem}.ranking-source{display:inline-block;font-size:.7rem;margin-top:.35rem}
@media(max-width:700px){.leaderboard-groups{grid-template-columns:1fr}#build-leaderboard{padding:1rem}.forum-post{padding:1rem}.post-footer{gap:.5rem}.post-footer>button{min-width:unset;padding:.6rem .8rem}.post-reference{font-size:.7rem}.ranking-card{padding:.75rem;gap:.55rem}}

/* Discussion uses a readable feed, with archive context beside it. */
.forum-layout{display:block;min-width:0}.forum-feed{min-width:0}.forum-layout.is-forum{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.5rem;align-items:start;margin-top:1rem}
#forum-controls[hidden],#forum-sidebar[hidden],#auth-display-label[hidden],#auth-rules[hidden],#current-user[hidden],#login-button[hidden],#register-button[hidden],#logout-button[hidden],#wiki-admin-button[hidden],#display-name[hidden],#save-name[hidden],#reply-context[hidden]{display:none}
.forum-controls{border:1px solid var(--line);border-radius:8px;background:#12151b;overflow:hidden}.forum-sort,.forum-topics{display:flex;align-items:center;gap:.35rem;padding:.6rem .75rem;flex-wrap:wrap}.forum-topics{border-top:1px solid var(--line);padding:.5rem .75rem}.forum-sort button,.forum-topics button{min-height:40px;padding:.5rem .9rem;border:1px solid transparent;border-radius:5px;background:transparent;color:#b6bac5;font-size:.85rem}.forum-sort button[aria-pressed=true],.forum-topics button[aria-pressed=true]{background:#3c2029;border-color:#8b3a4b;color:#f3d6dc}.forum-sort-hint{margin-left:auto;color:var(--muted);font-size:.72rem;padding:.3rem}.forum-topics button{min-height:36px;padding:.35rem .65rem;font-size:.78rem}.forum-sidebar{display:grid;gap:1rem}.forum-sidebar section{border:1px solid var(--line);border-radius:8px;padding:1.15rem;background:#14161ce8}.forum-about{border-top:3px solid var(--red)!important}.forum-about h2{font-size:1.2rem;margin:.6rem 0}.forum-about>p{color:#acb0bb;font-size:.85rem;line-height:1.7;margin:.7rem 0}.forum-about>.fineprint{font-size:.73rem}.forum-about .primary{width:100%;margin-top:.35rem}.forum-about .forum-stats{color:#e8bdc6;padding:.7rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:.8rem monospace}.forum-rules h3{font-size:.95rem;margin:0 0 .75rem}.forum-rules ol{padding-left:1.15rem;margin:0;color:#aeb2bd;font-size:.78rem;line-height:1.75}.forum-rules li+li{margin-top:.7rem}
#results.forum-list{gap:.75rem}.forum-list .forum-post{display:grid;grid-template-columns:48px minmax(0,1fr);padding:0;border:1px solid #34323c;border-radius:8px;background:linear-gradient(110deg,#181a21,#121419);overflow:hidden}.forum-list .forum-post:hover{border-color:#76404d}.forum-post-content{min-width:0;padding:1rem 1.15rem}.post-vote-rail{display:flex;align-items:center;flex-direction:column;gap:.3rem;padding:.9rem .3rem;background:#0e11176e;border-right:1px solid #2c2e36}.post-vote-button{display:grid;place-items:center;min-width:36px;min-height:36px;padding:0;border:1px solid transparent;background:transparent;color:#969baa;font:1.5rem/1 var(--font)}.post-vote-button[aria-pressed=true]{color:#f06b7e;border-color:#77404c;background:#39212a}.post-vote-button[data-post-vote="-1"][aria-pressed=true]{color:#96b6e7;background:#202b3d;border-color:#415a7e}.post-vote-score{font:700 .9rem var(--font);color:#d6d8df;text-align:center;min-width:2rem}.post-meta{display:flex;gap:.45rem .7rem;align-items:center;flex-wrap:wrap;color:#969baa;font-size:.73rem}.post-topic{padding:.2rem .5rem;border:1px solid #67404b;border-radius:4px;background:#36212a;color:#d8a9b3}.post-topic.topic-question{background:#302820;border-color:#645441;color:#d2bea1}.post-topic.topic-guide{background:#1f3030;border-color:#3f6460;color:#a2cdc4}.post-topic.topic-build{background:#282639;border-color:#565074;color:#bfb3dd}.forum-post h3{margin:.6rem 0 .45rem;font-size:1.12rem;line-height:1.45}.post-title-button{display:block;width:100%;padding:0;min-height:unset;border:0;background:transparent;font-size:inherit;font-weight:650;text-align:left;line-height:inherit;color:var(--text)}.post-title-button:hover:enabled{background:transparent;color:#f2b4bf}.forum-post .post-excerpt{font-size:.88rem;line-height:1.65;margin:.45rem 0 .7rem;color:#a7adba}.forum-post .post-footer{justify-content:flex-start;gap:.8rem;margin-top:.6rem;padding-top:.5rem;border:0}.forum-post .post-footer>button{min-width:unset;min-height:36px;padding:.35rem .6rem;border-color:transparent;background:transparent;color:#adb4c1;font-size:.78rem;font-weight:600}.forum-post .post-footer>button::before{content:"◌";margin-right:.4rem;font-size:1rem;color:#be8290}.forum-post .post-footer>.fineprint{font-size:.72rem;color:#9298a6}.forum-post .post-reference{font-size:.71rem;min-height:32px;padding:.3rem .5rem;background:#211c26;border-color:#45323d}.post-detail-votes{display:flex;align-items:center;gap:.4rem;margin:.8rem 0}.post-detail-votes .post-vote-button{border:1px solid #3e3643}.post-detail-votes .post-vote-score{padding:0 .4rem}
.current-user{max-width:220px;font-size:.85rem;color:#e7c2cb;overflow-wrap:anywhere}.identity.is-authenticated{flex-wrap:wrap}.identity .auth-switch{padding-left:0}.account-dialog{max-width:480px}.account-dialog .auth-switch{display:block;margin:.7rem 0 0;padding-left:0;color:#e78294}.account-dialog form>.primary{width:100%}.account-prompt{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1rem 0;padding:1rem;border:1px solid #724050;border-radius:6px;background:#281b24}.account-prompt p{flex:1;min-width:200px;font-size:.85rem;margin:0;color:#ccb7c1}.account-prompt button{min-height:40px}.post-form-filter{display:inline-grid;width:calc(50% - .6rem);vertical-align:top}.post-form-filter+.post-form-filter{margin-left:.9rem}
.reply-tree{margin-top:1rem}.reply-branch{min-width:0}.reply-tree .forum-reply{border:0;border-left:2px solid #48333e;border-radius:0;background:transparent;padding:.6rem 0 .6rem 1rem;margin:.25rem 0}.reply-meta{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.reply-meta strong{font-size:.8rem;color:#d8bfca}.reply-meta time{font-size:.72rem;color:var(--muted)}.reply-tree .forum-reply p{font-size:.88rem;line-height:1.65;margin:.5rem 0}.reply-action{padding:.2rem 0;min-height:32px;border:0;font-size:.75rem;color:#c38a9b}.reply-children{margin-left:1.25rem}.reply-children.deep-replies{margin-left:0}.reply-context{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.6rem .75rem;margin-bottom:.75rem;border:1px solid #784051;border-radius:5px;background:#2e1e28;font-size:.8rem}.reply-context .text-button{font-size:.75rem;min-height:36px}
.review-filters,.review-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0}.review-filters button{font-size:.8rem;min-height:38px}.review-filters button[aria-pressed=true]{border-color:#934759;background:#39212c;color:#f1c8d2}.wiki-review-card{margin:1rem 0;border:1px solid #4d3b46;border-radius:6px;padding:1rem;overflow-wrap:anywhere}.wiki-review-card h3{margin:.7rem 0;font-size:1.05rem}.wiki-review-card h4{margin:.8rem 0 .35rem;font-size:.76rem;color:#d393a3}.review-summary,.review-note{white-space:pre-wrap;line-height:1.6;font-size:.85rem}.wiki-review-card label{display:grid;gap:.5rem;margin-top:1rem;font-size:.8rem;color:var(--muted)}.wiki-review-card textarea{width:100%;min-height:80px;padding:.65rem;background:#0e1015;color:var(--text);border:1px solid var(--line);border-radius:4px}.approved-wiki-summary{padding:1rem;border:1px solid #694050;border-left:3px solid var(--red);border-radius:6px;background:#241b24;margin:1rem 0}.approved-wiki-summary .fineprint{font-size:.78rem}
@media(max-width:1100px){.forum-layout.is-forum{grid-template-columns:minmax(0,1fr) 260px;gap:1rem}.forum-sort-hint{display:none}.community-toolbar .identity{flex-wrap:wrap;gap:.4rem .65rem}}
@media(max-width:850px){.forum-layout.is-forum{grid-template-columns:minmax(0,1fr)}.forum-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));order:2}.forum-post-content{padding:.9rem}.forum-about h2{font-size:1rem}.forum-sidebar section{padding:1rem}.forum-sidebar .forum-about>.primary{min-height:40px}}
@media(max-width:520px){.forum-sidebar{grid-template-columns:1fr}.forum-rules{display:none}.forum-list .forum-post{grid-template-columns:40px minmax(0,1fr)}.post-vote-rail{padding:.65rem .1rem}.post-vote-button{min-width:32px;min-height:36px}.forum-post-content{padding:.8rem}.forum-post h3{font-size:1rem}.forum-post .post-excerpt{font-size:.82rem}.post-meta{font-size:.68rem;gap:.4rem}.forum-topics{gap:.25rem;padding:.45rem}.forum-topics button{padding:.35rem .5rem;font-size:.72rem}.forum-sort{padding:.45rem}.forum-sort button{padding:.45rem .75rem;font-size:.8rem}.reply-children{margin-left:.8rem}.reply-tree .forum-reply{padding-left:.65rem}.post-form-filter{display:grid;width:100%}.post-form-filter+.post-form-filter{margin-left:0}.current-user{max-width:100%}.account-prompt{padding:.8rem}.account-prompt p{min-width:150px}.review-actions button{flex:1}}

/* Forum: familiar community reading and posting, in the Fog Atlas archive. */
.forum-community-header {
  margin: 1.25rem 0 1.5rem;
  overflow: hidden;
  border: 1px solid #473039;
  border-radius: 14px;
  background: #111318;
}
#forum-layout.is-forum > .forum-community-header { grid-column: 1 / -1; margin: 0; }
.forum-community-header .forum-banner > .eyebrow { position: absolute; z-index: 1; top: 1.1rem; left: 1.5rem; color: #ecc1cc; font-size: .68rem; letter-spacing: .17em; }
.forum-community-header .forum-banner {
  position: relative;
  min-height: 136px;
  overflow: hidden;
  background: linear-gradient(100deg, #4b1b2699, #0a0d1255 75%),
    url("./media/fog-archive-backdrop.png") center 38% / cover no-repeat;
  border-bottom: 1px solid #57323d;
}
.forum-community-header .forum-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(0deg, #111318, transparent 65%);
}
.forum-community-title {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  padding: .1rem 1.5rem 1.3rem;
}
.forum-community-avatar, .forum-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  border: 1px solid #87404e;
  border-radius: 50%;
  background: linear-gradient(145deg, #55202c, #231920);
  color: #f7dce3;
  font-size: .8rem;
  font-weight: 750;
}
.forum-community-title .forum-community-avatar {
  width: 76px;
  height: 76px;
  margin-top: -1.2rem;
  border: 4px solid #111318;
  box-shadow: 0 0 0 1px #733947;
  font: 800 1.35rem var(--display-font, var(--font));
  letter-spacing: .02em;
}
.forum-community-copy { flex: 1; min-width: 180px; }
.forum-community-copy h2 {
  margin: .2rem 0;
  color: #f4eef0;
  font: 750 clamp(1.35rem, 2.5vw, 1.85rem)/1.3 var(--display-font, var(--font));
  letter-spacing: -.02em;
}
.forum-community-copy p { margin: .35rem 0 0; color: #b7b2bd; font-size: .82rem; }
.forum-community-copy .eyebrow { color: #d88a9b; font-size: .7rem; letter-spacing: .14em; }
.forum-community-actions { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; }
.forum-community-actions button { min-height: 44px; padding: .55rem 1.1rem; border-radius: 24px; font-size: .85rem; font-weight: 650; }
.forum-community-actions .primary { border-color: #b7455a; background: #972d42; }
.forum-community-actions .primary:hover:enabled { background: #b23951; }
#forum-layout.forum-layout.is-forum {
  grid-template-columns: minmax(0, 1fr) 312px;
  gap: 1.5rem;
  margin-top: 0;
}
.forum-feed .forum-create-prompt {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-bottom: .9rem;
  padding: .85rem 1rem;
  border: 1px solid #35313c;
  border-radius: 12px;
  background: #14151b;
}
.forum-create-prompt .forum-create-input {
  flex: 1;
  min-width: 0;
  min-height: 46px;
  padding: .6rem 1rem;
  border: 1px solid #3d3742;
  border-radius: 24px;
  background: #1b1b23;
  color: #bab3c1;
  text-align: left;
  font-size: .88rem;
}
.forum-create-prompt .forum-create-input:hover:enabled { border-color: #b46678; background: #26212b; color: #f5e8ec; }
.forum-create-prompt > button:not(.forum-create-input) { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: .55rem; border-color: transparent; border-radius: 50%; background: transparent; color: #c5a3b1; }
.forum-create-prompt svg, .forum-controls svg, .post-action svg, .composer-tool svg { width: 19px; height: 19px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
#forum-controls.forum-controls { overflow: visible; border-color: #34303a; border-radius: 12px; background: #111318; }
.forum-sort-row { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .35rem; }
#forum-controls .forum-sort { gap: .25rem; padding: .3rem; }
#forum-controls .forum-sort button, #forum-controls .forum-view-controls button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 44px;
  padding: .5rem .9rem;
  border-color: transparent;
  border-radius: 24px;
  background: transparent;
  color: #b9b6c1;
  font-size: .82rem;
  font-weight: 650;
}
#forum-controls .forum-sort button[aria-pressed=true], #forum-controls .forum-view-controls button[aria-pressed=true] {
  border-color: transparent;
  background: #38212c;
  color: #f1baca;
}
#forum-controls .forum-sort button:hover:enabled, #forum-controls .forum-view-controls button:hover:enabled { background: #25212a; color: #f5e9ef; }
#forum-controls .forum-view-controls { display: flex; align-items: center; gap: .15rem; flex-shrink: 0; padding: .3rem; }
#forum-controls .forum-view-controls button { min-width: 44px; padding: .5rem .65rem; }
#forum-controls .forum-topics { gap: .4rem; padding: .7rem .85rem; border-top-color: #2e2933; }
#forum-controls .forum-topics button { min-height: 36px; padding: .35rem .8rem; border: 1px solid #38313e; border-radius: 20px; background: #18181f; color: #bdb5c2; font-size: .75rem; }
#forum-controls .forum-topics button[aria-pressed=true] { border-color: #7d3e51; background: #39212c; color: #f4c4d2; }
#forum-controls #forum-saved { min-height: 40px; margin: 0 .85rem .75rem; padding: .4rem .8rem; border-color: #4d3445; border-radius: 22px; background: #241b28; color: #dcc1d4; font-size: .76rem; }
#forum-controls #forum-saved[aria-pressed=true] { border-color: #a25973; background: #462637; color: #ffd4e4; }
#forum-controls #forum-feedback { margin: 0 .85rem .6rem; font-size: .78rem; color: #efbdd0; }
#forum-controls #post-share-url, .post-actions > input[readonly] { display: block; width: calc(100% - 1.7rem); height: auto; min-height: 46px; margin: 0 .85rem .85rem; padding: .65rem .8rem; border: 1px solid #8b556b; border-radius: 8px; background: #1d1520; color: #f4d0df; font-size: .8rem; }
.post-actions > input[readonly] { flex: 1 1 100%; width: 100%; margin: .35rem 0 0; }
.forum-feed .results-header { margin: 1rem .2rem .75rem; }
.forum-feed .results-header h2 { font-size: .85rem; color: #bfb7c5; font-weight: 650; letter-spacing: 0; }
.forum-feed .results-header > span { font-size: .75rem; }
#forum-sidebar.forum-sidebar { gap: 1rem; }
#forum-sidebar section { padding: 1.25rem; border-color: #35303b; border-radius: 12px; background: #111319; }
#forum-sidebar .forum-about { border-top: 1px solid #6a3a49 !important; }
#forum-sidebar .forum-about .eyebrow { color: #d28a9b; font-size: .66rem; }
#forum-sidebar .forum-about h2 { margin: .5rem 0; font-size: 1.12rem; letter-spacing: -.01em; }
#forum-sidebar .forum-about > p { font-size: .8rem; line-height: 1.75; color: #b8b0bd; }
#forum-sidebar .forum-about .forum-stats { color: #f0c6d2; font: 650 .8rem/1.6 var(--font); border-color: #322c37; }
#forum-sidebar .forum-about .primary { min-height: 44px; border-radius: 24px; margin-top: .75rem; font-size: .85rem; }
#forum-sidebar .forum-rules h3 { font-size: .88rem; }
#forum-sidebar .forum-rules ol { color: #bbb2c0; font-size: .78rem; padding-left: 1.2rem; }
#forum-sidebar .forum-rules li { padding-left: .25rem; }
#forum-sidebar .forum-rules li::marker { color: #d28a9b; font-weight: 650; }
#results.forum-list { gap: .8rem; }
#results.forum-list .forum-post { border-color: #36303b; border-radius: 12px; background: #13151b; }
#results.forum-list .forum-post:has(.post-menu) { overflow: visible; }
#results.forum-list .forum-post:hover { border-color: #8a4a5d; }
#results.forum-list .forum-post:focus-within { border-color: #b5657d; }
#results.forum-list .forum-post:has(.post-vote-pill) { display: block; }
#results.forum-list .forum-post:has(.post-vote-pill) > .post-vote-rail { display: none; }
#results.forum-list .forum-post-content { padding: 1.1rem 1.25rem; }
#results.forum-list .post-meta { font-size: .73rem; gap: .5rem .6rem; color: #a8a0b0; }
.post-meta .forum-avatar { width: 26px; height: 26px; font-size: .65rem; }
.post-meta .post-author { color: #ded0dc; font-weight: 650; }
.post-meta .post-community { color: #e0c1cc; font-weight: 650; }
#results.forum-list .post-topic { padding: .15rem .55rem; border-radius: 14px; font-size: .69rem; line-height: 1.6; }
#results.forum-list .forum-post h3 { margin: .6rem 0 .45rem; font-size: 1.16rem; line-height: 1.4; letter-spacing: -.015em; }
#results.forum-list .post-title-button { color: #f4eef2; font-weight: 650; }
#results.forum-list .post-title-button:hover:enabled { background: transparent; color: #f5b9cd; }
#results.forum-list .post-excerpt { color: #b7afbd; font-size: .86rem; line-height: 1.7; margin: .55rem 0 .9rem; }
.post-media { display: block; width: 100%; margin: .9rem 0; overflow: hidden; border: 1px solid #342f3a; border-radius: 10px; background: #090b0f; white-space: normal; }
.post-media > img { display: block; width: 100%; max-width: 100%; height: auto; max-height: 480px; object-fit: contain; }
.post-media > a { display: flex; align-items: center; justify-content: center; min-height: 40px; padding: .45rem .8rem; border-top: 1px solid #342f3a; color: #d8a5bc; font-size: .74rem; text-decoration: none; }
.post-media > .fineprint { margin: 0; padding: 1rem; font-size: .8rem; }
.post-link-card { display: flex; flex-direction: column; gap: .35rem; margin: .8rem 0; padding: .9rem 1rem; border: 1px solid #53404e; border-radius: 10px; background: #1b1821; overflow-wrap: anywhere; color: #e5bdca; font-size: .85rem; }
.post-link-card small { color: #b0a5b6; font-size: .74rem; }
.post-link-card > span { font-size: .75rem; color: #bfb0c4; }
.post-link-card > span:last-child { margin-top: .2rem; color: #eea8c1; font-size: .75rem; font-weight: 650; }
.post-link-card:hover { border-color: #a8627c; background: #251b29; color: #f4c9d9; }
.post-content-tag { padding: .08rem .45rem; border: 1px solid #976457; border-radius: 4px; background: #35221f; color: #e9c0a5; font-size: .65rem; line-height: 1.5; }
.post-content-gate { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: .8rem; min-height: 140px; padding: 1.5rem; border: 1px solid #513341; border-radius: 10px; background: repeating-linear-gradient(135deg, #241720 0, #241720 1px, #1c151d 1px, #1c151d 12px); color: #d9bdc9; font-size: .8rem; white-space: normal; }
.post-content-gate > button { min-height: 44px; padding: .5rem 1.1rem; border-color: #8a5066; border-radius: 24px; background: #3b2633; color: #f6d6e4; font-size: .8rem; font-weight: 650; }
.post-formatted-text { white-space: normal; line-height: 1.75; overflow-wrap: anywhere; }
.post-formatted-text p { margin: .3rem 0; color: inherit; font-size: inherit; line-height: inherit; }
.post-formatted-text > :first-child { margin-top: 0; }
.post-formatted-text > :last-child { margin-bottom: 0; }
.post-formatted-text :is(ul, ol) { margin: .55rem 0; padding-left: 1.5rem; }
.post-formatted-text li + li { margin-top: .25rem; }
.post-formatted-text blockquote { margin: .65rem 0; padding: .1rem 0 .1rem .9rem; border-left: 3px solid #a2637b; color: #c4afca; }
.post-formatted-text a { color: #eea8c1; text-decoration: underline; text-underline-offset: .15em; }
.post-formatted-text code { padding: .12rem .3rem; border: 1px solid #49344c; border-radius: 4px; background: #281d2d; color: #f1c5db; font-size: .88em; }
.post-formatted-text .inline-spoiler { display: inline; min-width: 0; min-height: 0; margin: 0 .08rem; padding: .08rem .35rem; border: 1px solid #51404e; border-radius: 4px; background: #51404e; color: transparent; font: inherit; line-height: inherit; vertical-align: baseline; text-shadow: none; }
.post-formatted-text .inline-spoiler:hover:enabled { border-color: #885f78; background: #65495e; color: transparent; }
.post-formatted-text .inline-spoiler.is-revealed { border-color: #624557; background: #392533; color: #f5d6e5; }
.post-formatted-text .inline-spoiler.is-revealed:hover:enabled { background: #492e40; color: #f5d6e5; }
#results.forum-list .post-footer, .post-actions { display: flex; align-items: center; justify-content: flex-start; gap: .5rem; flex-wrap: wrap; padding-top: .1rem; margin-top: .8rem; border: 0; }
.post-footer > .post-actions { flex: 1; margin: 0; padding: 0; }
.post-actions > .form-feedback { flex: 1 1 100%; margin: .35rem 0 0; color: #efbdd0; font-size: .74rem; }
#results.forum-list .post-footer > button, .post-actions .post-action, .post-menu > summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  min-height: 38px;
  min-width: 38px;
  padding: .45rem .8rem;
  border: 1px solid transparent;
  border-radius: 22px;
  background: #26212c;
  color: #ddd0e0;
  font-size: .75rem;
  font-weight: 650;
  line-height: 1.4;
  cursor: pointer;
}
#results.forum-list .post-footer > button::before { content: none; }
#results.forum-list .post-footer > button:hover:enabled, .post-actions .post-action:hover:enabled, .post-menu > summary:hover { border-color: #7b465c; background: #362733; color: #f3d8e5; }
.post-actions .post-action[aria-pressed=true], #results.forum-list .post-footer > button[aria-pressed=true] { border-color: #914659; background: #492636; color: #ffcadd; }
.post-vote-pill { display: inline-flex; align-items: center; gap: .15rem; padding: 0 .1rem; min-height: 38px; border-radius: 22px; background: #26212c; }
.post-vote-rail.post-vote-pill { flex-direction: row; flex: 0 0 auto; padding: 0 .1rem; border: 0; }
.post-detail-votes.post-vote-pill { margin: 0; border: 0; }
.post-vote-pill .post-vote-button { width: 38px; min-width: 38px; height: 38px; min-height: 38px; border-radius: 50%; font-size: 1.2rem; color: #d5c6da; }
.post-vote-pill .post-vote-score { min-width: 1.5rem; color: #eadde9; font-size: .8rem; }
.post-vote-pill .post-vote-button[aria-pressed=true] { border-color: transparent; color: #ff9bb5; background: #663044; }
.post-vote-pill .post-vote-button[data-post-vote="-1"][aria-pressed=true] { background: #2f435e; color: #b1cdf4; }
.post-menu { position: relative; margin-left: auto; }
.post-menu > summary { width: 38px; padding: .3rem; list-style: none; }
.post-menu > summary::-webkit-details-marker { display: none; }
.post-menu-list { position: absolute; z-index: 30; top: calc(100% + .4rem); right: 0; display: grid; width: 220px; padding: .4rem; border: 1px solid #664350; border-radius: 10px; background: #1a1720; box-shadow: 0 12px 35px #0009; }
.post-menu-list button { min-height: 44px; width: 100%; padding: .6rem .75rem; border-color: transparent; border-radius: 6px; background: transparent; color: #e0d0df; text-align: left; font-size: .8rem; }
.post-menu-list button:hover:enabled { border-color: transparent; background: #372531; }
#results.forum-list.is-compact { gap: .1rem; }
#results.forum-list.is-compact .forum-post { border-radius: 0; border-width: 0 0 1px; background: #121419; }
#results.forum-list.is-compact .forum-post:first-child { border-radius: 12px 12px 0 0; }
#results.forum-list.is-compact .forum-post:last-child { border-radius: 0 0 12px 12px; }
#results.forum-list.is-compact .forum-post-content { padding: .85rem 1rem; }
#results.forum-list.is-compact .forum-post h3 { margin: .35rem 0; font-size: 1rem; }
#results.forum-list.is-compact .post-excerpt { display: none; }
#results.forum-list.is-compact .forum-post-content:has(.post-media) { display: grid; grid-template-columns: minmax(0, 1fr) 88px; column-gap: .75rem; }
#results.forum-list.is-compact .forum-post-content:has(.post-media) > .post-meta { grid-column: 1; grid-row: 1; }
#results.forum-list.is-compact .forum-post-content:has(.post-media) > h3 { grid-column: 1; grid-row: 2; }
#results.forum-list.is-compact .post-excerpt:has(.post-media) { display: block; grid-column: 2; grid-row: 1 / span 2; align-self: center; margin: 0; }
#results.forum-list.is-compact .forum-post-content:has(.post-media) > :is(.post-references, .post-footer) { grid-column: 1 / -1; }
#results.forum-list.is-compact .post-media { width: auto; max-width: 100%; }
#results.forum-list.is-compact .post-media > img { max-height: 160px; }
#results.forum-list.is-compact .post-excerpt .post-media { width: 88px; height: 88px; margin: 0; border-radius: 8px; }
#results.forum-list.is-compact .post-excerpt .post-media > img { width: 88px; height: 88px; object-fit: cover; }
#results.forum-list.is-compact .post-excerpt :is(.post-formatted-text, .post-media > a, .post-media > .fineprint) { display: none; }
#results.forum-list.is-compact .post-footer { margin-top: .45rem; }

/* The composer keeps writing, formatting and the publish decision together. */
#post-editor.post-composer {
  width: min(940px, calc(100vw - 2rem));
  max-height: min(92dvh, 1040px);
  padding: 0;
  border: 1px solid #5f3b4a;
  border-radius: 16px;
  background: #111318;
  box-shadow: 0 28px 100px #000c;
  scroll-padding-top: 92px;
  scroll-padding-bottom: 104px;
}
#post-editor.post-composer .dialog-top { position: sticky; z-index: 4; top: 0; margin: 0; padding: .9rem 1.5rem; border-bottom: 1px solid #352d3c; background: #111318; }
#post-editor.post-composer .dialog-top h2 { margin: 0; font-size: 1.25rem; font-weight: 700; letter-spacing: -.02em; }
#post-editor.post-composer .close { border-radius: 50%; color: #c7b6cc; }
#post-editor.post-composer > .fineprint { margin: .8rem 1.5rem 0; color: #b6a8bd; font-size: .76rem; }
#post-editor.post-composer .composer-context { display: flex; align-items: center; gap: .65rem; margin: 1.05rem 0; color: #e7cad7; font-size: .83rem; font-weight: 650; }
.composer-context .forum-avatar { width: 34px; height: 34px; font-size: .7rem; }
#post-editor.post-composer form { padding: 0 1.5rem 1.35rem; }
#post-editor.post-composer .composer-tabs { display: flex; align-items: center; gap: .25rem; margin: 0 0 1.2rem; border-bottom: 1px solid #3a2e3e; }
#post-editor.post-composer .composer-tabs button { position: relative; flex: 1; min-width: 0; min-height: 50px; padding: .7rem .65rem; border: 0; border-radius: 6px 6px 0 0; background: transparent; color: #b9a9c1; font-size: .88rem; font-weight: 650; }
#post-editor.post-composer .composer-tabs button[aria-selected=true] { color: #f7cfde; background: #251b28; }
#post-editor.post-composer .composer-tabs button[aria-selected=true]::after { content: ""; position: absolute; left: .6rem; right: .6rem; bottom: -1px; height: 3px; border-radius: 3px 3px 0 0; background: #df6788; }
#post-editor.post-composer .composer-tabs button:hover:enabled { background: #211c27; }
#post-editor.post-composer label { gap: .5rem; color: #cdbbcf; font-size: .8rem; }
#post-editor.post-composer input, #post-editor.post-composer textarea { min-height: 48px; padding: .8rem 1rem; border: 1px solid #4a3a51; border-radius: 10px; background: #111218; color: #f0e5ef; font-size: .95rem; }
#post-editor.post-composer input:focus, #post-editor.post-composer textarea:focus { border-color: #ce7894; outline: 2px solid #9e476480; outline-offset: 1px; }
#post-editor.post-composer input::placeholder, #post-editor.post-composer textarea::placeholder { color: #a08fa8; }
.composer-title-field { position: relative; }
#post-editor.post-composer .composer-title-field input { padding-right: 5rem; font-size: 1.05rem; }
.composer-counter { display: block; margin-top: .25rem; color: #a99aaf; font-size: .7rem; text-align: right; }
.composer-title-field .composer-counter { margin: .15rem .2rem .1rem; }
.composer-toolbar { display: flex; gap: .15rem; flex-wrap: wrap; align-items: center; padding: .35rem .4rem; border: 1px solid #4a3a51; border-bottom: 0; border-radius: 10px 10px 0 0; background: #211a27; }
.composer-toolbar .composer-tool { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; min-height: 38px; padding: .4rem .65rem; border-color: transparent; border-radius: 6px; background: transparent; color: #d6bedc; font-size: .85rem; }
.composer-toolbar .composer-tool:hover:enabled { border-color: #73475e; background: #39263a; }
.composer-toolbar .composer-tool[aria-pressed=true] { border-color: #93526c; background: #482b40; color: #ffd7e5; }
.composer-toolbar .composer-tool:last-child { margin-left: auto; }
#post-editor.post-composer .composer-body { margin-top: .8rem; }
#post-editor.post-composer #post-content-panel > .composer-field { margin-bottom: .6rem; }
#post-editor.post-composer #post-content-panel > .composer-field + .composer-body { margin-top: 0; }
#post-editor.post-composer .composer-body textarea { display: block; min-height: 220px; border-radius: 0 0 10px 10px; font-size: .92rem; line-height: 1.75; }
#post-editor.post-composer .composer-body label { margin-bottom: .5rem; }
#post-editor.post-composer .composer-preview { min-height: 220px; padding: 1rem; margin: .65rem 0 0; border: 1px solid #624653; border-radius: 10px; background: #18131d; color: #dfd0e1; line-height: 1.75; overflow-wrap: anywhere; }
.composer-preview > :first-child { margin-top: 0; }
.composer-preview > :last-child { margin-bottom: 0; }
.composer-preview h3 { font-size: 1.12rem; }
.composer-preview a { color: #eba4bd; }
.composer-preview blockquote { margin: .8rem 0; padding-left: 1rem; border-left: 3px solid #a45c78; color: #cbbbd1; }
.composer-preview pre { max-width: 100%; overflow-x: auto; padding: .8rem; border: 1px solid #49394f; border-radius: 6px; background: #0e1014; }
.composer-preview code { padding: .1rem .3rem; border-radius: 4px; background: #302635; font-size: .85em; }
.composer-attachment { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: .6rem; min-height: 140px; padding: 1.5rem 1rem; border: 1px dashed #7b506c; border-radius: 10px; background: #1a1520; text-align: center; color: #d8c1de; }
#post-editor.post-composer #post-attachment { margin-bottom: 1.1rem; align-items: stretch; text-align: left; }
#post-editor.post-composer #post-attachment > label { width: 100%; margin: 0; }
#post-editor.post-composer .composer-upload { padding: .8rem; border: 1px dashed #725166; border-radius: 8px; background: #241924; }
.composer-attachment p { margin: 0; font-size: .83rem; color: #bca7c4; }
.composer-attachment input[type=file] { width: auto; max-width: 100%; border: 0; padding: .5rem; background: transparent; }
#post-editor.post-composer .composer-upload input[type=file] { width: 100%; min-height: 44px; padding: .25rem 0; border: 0; border-radius: 0; background: transparent; font-size: .8rem; }
.composer-attachment input[type=file]::file-selector-button { min-height: 44px; margin-right: .6rem; padding: .5rem .85rem; border: 1px solid #8c5473; border-radius: 24px; background: #382437; color: #eed6ec; font: inherit; cursor: pointer; }
.composer-attachment img { display: block; max-width: 100%; max-height: 300px; border-radius: 8px; object-fit: contain; }
#post-editor.post-composer .composer-help { margin: .55rem 0 .9rem; color: #a99aaf; font-size: .74rem; line-height: 1.65; }
#post-editor.post-composer .post-form-filter { width: calc(50% - .6rem); margin-top: .6rem; }
#post-editor.post-composer .post-form-filter + .post-form-filter { margin-left: .9rem; }
#post-editor.post-composer .post-editor-references { gap: .5rem; margin: .65rem 0 1rem; }
#post-editor.post-composer .reference-editor-chip { gap: .75rem; padding: .3rem .75rem; border-radius: 8px; border-color: #554153; background: #211824; color: #d5bdd8; font-size: .8rem; }
#post-editor.post-composer .reference-editor-chip button { min-height: 36px; padding: .3rem .6rem; border-radius: 20px; color: #eab3c8; font-size: .75rem; }
#post-editor.post-composer .composer-tags { display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; margin-top: .8rem; }
#post-editor.post-composer .composer-tags label { display: inline-flex; align-items: center; gap: .55rem; min-height: 44px; margin: 0; padding: .5rem .85rem; border: 1px solid #554050; border-radius: 24px; background: #211925; color: #d3b9d3; font-size: .8rem; cursor: pointer; }
#post-editor.post-composer .composer-tags label:has(input:checked) { border-color: #a55b76; background: #482738; color: #ffd6e7; }
#post-editor.post-composer .composer-tags input[type=checkbox] { appearance: auto; flex: 0 0 18px; width: 18px; height: 18px; min-height: 18px; margin: 0; padding: 0; border-radius: 3px; accent-color: #c45277; cursor: pointer; }
#post-editor.post-composer .composer-tags label:has(input:focus-visible) { outline: 2px solid #e895b2; outline-offset: 3px; }
#post-editor.post-composer .composer-attachment.is-dragover { border-color: #db7f9c; background: #30202a; outline: 2px dashed #db7f9c; outline-offset: 3px; }
#post-editor.post-composer .composer-bottom { position: sticky; z-index: 4; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: .75rem; flex-wrap: wrap; margin: 1.15rem -1.5rem 0; padding: .9rem 1.5rem; border-top: 1px solid #5b3c4d; background: #17121b; box-shadow: 0 -10px 24px #0005; }
.composer-draft-actions, .composer-publish-actions { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
#post-editor.post-composer .composer-bottom button { min-height: 44px; padding: .55rem 1rem; border-radius: 24px; font-size: .82rem; font-weight: 650; }
#post-editor.post-composer .composer-bottom .primary { padding: .55rem 1.35rem; border-color: #b75370; background: #963047; color: #fff3f7; }
#post-editor.post-composer .composer-bottom .primary:hover:enabled { background: #b33e59; }
#post-editor.post-composer .form-feedback { margin: .65rem 0 0; color: #efbbca; font-size: .8rem; }
.forum-community-header[hidden], .forum-create-prompt[hidden], .composer-preview[hidden], .composer-body[hidden], .composer-attachment[hidden] { display: none; }

/* The community puts its identity and first discussions within the first screen. */
body.is-community main { padding-top: 1.25rem; }
body.is-community main > #forum-community-header { margin: 0 0 1rem; }
body.is-community .forum-community-header .forum-banner { min-height: 100px; }
body.is-community .forum-community-title { min-height: 72px; gap: .85rem; padding: .3rem 1.25rem .75rem; }
body.is-community .forum-community-title .forum-community-avatar { width: 64px; height: 64px; margin-top: -1rem; font-size: 1.15rem; }
body.is-community .forum-community-copy h2 { font-size: 1.5rem; line-height: 1.3; }
body.is-community .forum-community-copy p { margin-top: .2rem; font-size: .78rem; line-height: 1.5; }
body.is-community .workspace { padding: 0; }
body.is-community .workspace > .title-row { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
body.is-community .filter-workspace { padding: .6rem .85rem; border-radius: 10px; }
body.is-community .filter-workspace .search-wrap { height: 44px; }
body.is-community .filter-workspace .control-row { display: none; }
body.is-community .filter-workspace .filter-row { gap: .7rem; margin-top: .5rem; align-items: center; }
body.is-community .filter-workspace .roles { flex-shrink: 0; padding: 2px; }
body.is-community .filter-workspace .roles button { min-height: 44px; padding: .35rem .9rem; font-size: .82rem; }
body.is-community .filter-workspace #reset { margin-left: auto; min-height: 44px; }
body.is-community .community-toolbar { min-height: 30px; margin: .35rem 0 .65rem; padding: .2rem 0; gap: .5rem 1rem; border: 0; background: transparent; }
body.is-community .community-toolbar > div:first-child { min-width: 0; flex-basis: auto; }
body.is-community .community-toolbar > div:first-child > .eyebrow { display: none; }
body.is-community .community-toolbar p { margin: 0; font-size: .72rem; line-height: 1.5; color: #a49aa9; }

@media (max-width: 1120px) {
  #forum-layout.forum-layout.is-forum { grid-template-columns: minmax(0, 1fr) 268px; gap: 1rem; }
  #forum-sidebar section { padding: 1rem; }
  #results.forum-list .forum-post-content { padding: 1rem; }
}
@media (max-width: 860px) {
  #forum-layout.forum-layout.is-forum { grid-template-columns: minmax(0, 1fr); }
  #forum-sidebar.forum-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .forum-community-title { padding: .1rem 1.1rem 1.1rem; }
  .forum-community-header .forum-banner { min-height: 108px; }
  .forum-community-actions { margin-left: auto; }
}
@media (max-width: 600px) {
  body.is-community main { padding-top: 1rem; }
  body.is-community main > #forum-community-header { margin-bottom: 1rem; }
  body.is-community .forum-community-header .forum-banner { min-height: 72px; }
  body.is-community .forum-community-title { gap: .7rem; padding: .2rem .85rem .85rem; }
  body.is-community .forum-community-title .forum-community-avatar { width: 56px; height: 56px; margin-top: -.7rem; font-size: 1rem; }
  body.is-community .forum-community-copy h2 { font-size: 1.25rem; }
  body.is-community .forum-community-copy p { font-size: .74rem; }
  body.is-community .filter-workspace { padding: .6rem .7rem; }
  body.is-community .filter-workspace .filter-row { flex-wrap: nowrap; gap: .5rem; }
  body.is-community .filter-workspace .roles { width: auto; flex: 1; flex-basis: auto; }
  body.is-community .filter-workspace .roles button { min-height: 44px; min-width: 0; padding: .35rem .5rem; font-size: .78rem; }
  body.is-community .filter-workspace #reset { flex: 0 0 44px; }
  .forum-community-header { margin: .9rem 0 1rem; border-radius: 10px; }
  .forum-community-header .forum-banner { min-height: 84px; }
  .forum-community-title { gap: .7rem; padding: 0 .85rem 1rem; }
  .forum-community-title .forum-community-avatar { width: 58px; height: 58px; margin-top: -.8rem; font-size: 1rem; }
  .forum-community-copy { min-width: 140px; }
  .forum-community-copy h2 { font-size: 1.25rem; }
  .forum-community-copy p { font-size: .75rem; }
  .forum-community-actions { width: 100%; margin-left: 0; }
  .forum-community-actions .primary { flex: 1; }
  .forum-feed .forum-create-prompt { gap: .45rem; padding: .7rem; border-radius: 10px; }
  .forum-create-prompt .forum-avatar { width: 34px; height: 34px; font-size: .7rem; }
  .forum-create-prompt .forum-create-input { font-size: .8rem; padding: .55rem .75rem; }
  .forum-create-prompt > button:not(.forum-create-input) { min-width: 44px; padding: .4rem; }
  .forum-sort-row { gap: 0; }
  #forum-controls .forum-sort { padding: .2rem; gap: 0; }
  #forum-controls .forum-sort button { padding: .45rem .6rem; font-size: .76rem; }
  #forum-controls .forum-sort button svg { width: 17px; height: 17px; }
  #forum-controls .forum-view-controls { padding: .2rem; gap: 0; }
  #forum-controls .forum-view-controls button { padding: .4rem; font-size: .72rem; }
  #forum-controls .forum-topics { padding: .55rem .6rem; gap: .35rem; }
  #forum-controls .forum-topics button { min-height: 44px; font-size: .72rem; padding: .45rem .65rem; }
  #results.forum-list .forum-post { border-radius: 10px; }
  #results.forum-list .forum-post-content { padding: .85rem; }
  #results.forum-list .post-meta { font-size: .68rem; gap: .35rem .5rem; }
  #results.forum-list .forum-post h3 { font-size: 1.04rem; }
  #results.forum-list .post-excerpt { font-size: .82rem; }
  #results.forum-list .post-footer { gap: .4rem; }
  #results.forum-list .post-footer > button, .post-actions .post-action, .post-menu > summary { min-height: 44px; padding: .45rem .65rem; font-size: .72rem; }
  .post-vote-pill { min-height: 44px; }
  .post-vote-pill .post-vote-button { min-width: 44px; width: 44px; min-height: 44px; height: 44px; }
  .post-menu > summary { min-width: 44px; width: 44px; }
  .post-action svg { width: 17px; height: 17px; }
  .post-menu-list { width: 190px; }
  #forum-sidebar.forum-sidebar { grid-template-columns: 1fr; }
  #forum-sidebar .forum-rules { display: block; }
  #post-editor.post-composer { width: calc(100vw - 1rem); max-height: 95dvh; border-radius: 12px; scroll-padding-top: 80px; scroll-padding-bottom: 168px; }
  #post-editor.post-composer .dialog-top { padding: .75rem 1rem; }
  #post-editor.post-composer .dialog-top h2 { font-size: 1.12rem; }
  #post-editor.post-composer > .fineprint { margin: .7rem 1rem 0; }
  #post-editor.post-composer .composer-context { margin: .85rem 0; }
  #post-editor.post-composer form { padding: 0 1rem 1rem; }
  #post-editor.post-composer .composer-tabs { margin-bottom: .95rem; gap: 0; }
  #post-editor.post-composer .composer-tabs button { font-size: .79rem; padding: .6rem .25rem; }
  #post-editor.post-composer input, #post-editor.post-composer textarea { font-size: 1rem; padding: .7rem .8rem; }
  #post-editor.post-composer .composer-title-field input { font-size: 1rem; padding-right: .8rem; }
  .composer-toolbar { gap: .1rem; padding: .3rem; }
  .composer-toolbar .composer-tool { min-width: 44px; min-height: 44px; padding: .5rem .55rem; }
  .composer-toolbar .composer-tool:last-child { margin-left: 0; }
  #post-editor.post-composer .composer-body textarea { min-height: 180px; font-size: 1rem; }
  #post-editor.post-composer .post-form-filter { display: grid; width: 100%; }
  #post-editor.post-composer .post-form-filter + .post-form-filter { margin-left: 0; }
  #post-editor.post-composer .composer-bottom { align-items: stretch; gap: .7rem; margin-left: -1rem; margin-right: -1rem; padding: .8rem 1rem; }
  .composer-draft-actions, .composer-publish-actions { flex: 1 1 100%; }
  .composer-draft-actions button, .composer-publish-actions button { flex: 1; }
}
@media (max-width: 400px) {
  #forum-controls .forum-sort button { gap: .3rem; padding: .45rem .5rem; }
  #forum-controls .forum-sort button svg { display: none; }
  .forum-create-prompt > button:not(.forum-create-input) { min-width: 44px; }
  .forum-create-prompt .forum-avatar { display: none; }
  #results.forum-list .post-footer { gap: .3rem; }
  #results.forum-list .post-footer > button { padding: .45rem .55rem; }
}
@media (forced-colors: active) {
  .forum-community-header, #forum-controls.forum-controls, #results.forum-list .forum-post, #post-editor.post-composer { border-color: CanvasText; }
  #forum-controls [aria-pressed=true], #post-editor.post-composer [aria-selected=true], .post-actions [aria-pressed=true] { outline: 2px solid Highlight; outline-offset: -2px; }
  .forum-community-header .forum-banner { background: Canvas; }
  .post-formatted-text .inline-spoiler:not(.is-revealed) { forced-color-adjust: none; color: transparent; background: GrayText; border-color: GrayText; }
  #post-editor.post-composer .composer-tags label:has(input:checked) { outline: 2px solid Highlight; outline-offset: -2px; }
}
