.community-forum, #site-stats { max-width: 1680px; margin-inline: auto; overflow-wrap: anywhere; }
.community-forum h1 { margin: 0; }
.forum-heading {
  padding: clamp(22px, 4vw, 48px);
  margin-bottom: 22px;
  border: 1px solid #6b388a;
  border-radius: 14px;
  background: radial-gradient(ellipse at 85% -45%, #672591 0%, transparent 65%), #150c23;
}
.forum-heading h1 { font-size: clamp(1.75rem, 4vw, 2.75rem); }
.forum-heading > p:last-child { margin-bottom: 0; line-height: 1.5; }
.forum-kicker { margin: 0 0 10px; color: #df9aff; font-size: .78rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.forum-board { margin-bottom: 20px; background: #120c1f; }
.forum-board:last-child { margin-bottom: 0; }
.forum-board h2 {
  margin: 0;
  padding: 14px clamp(14px, 2vw, 24px);
  border-bottom: 1px solid #613779;
  border-radius: 12px 12px 0 0;
  background: linear-gradient(100deg, #3e1a59, #20112f 75%);
  font-size: 1.06rem;
}
.forum-board h2 span { margin-right: .45em; color: #df97ff; }
#forum-privateSection, #forum-privateSection span,
.forum-board .forum-index-link[data-category="private"]:not([data-topic]):not(.primary) { color: var(--launcher-gold); }
.forum-private-heading { color: var(--launcher-gold); }
.forum-board ul { list-style: none; margin: 0; padding: 0; }
.forum-index-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(125px, .28fr) minmax(0, .62fr);
  gap: 10px 24px;
  align-items: center;
  padding: 10px clamp(14px, 2vw, 24px) 14px;
}
.forum-index-row + .forum-index-row { border-top: 1px solid #412a50; }
.forum-index-category p, .forum-latest small { margin: 0; color: #c9b8d7; font-size: .88rem; line-height: 1.5; }
.forum-counts { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0; }
.forum-counts dt, .forum-latest > span { color: #c7a8db; font-size: .78rem; }
.forum-counts dd { margin: 2px 0 0; color: #f2e1fc; font-size: .92rem; font-weight: 700; }
.forum-latest { display: grid; justify-items: start; align-content: center; }
.forum-latest > span { margin-top: 5px; }
.forum-back { margin-bottom: 20px; }
.community-forum button:not(.primary) {
  min-height: 44px;
  padding: 8px 14px;
  background: #211331;
  border: 1px solid #785093;
  border-radius: 8px;
  color: #f4eaff;
}
.community-forum button:not(.primary):hover { background: #562477; }
.community-forum .forum-index-link:not(.primary) {
  display: block;
  max-width: 100%;
  padding: 4px 0;
  border: 0;
  background: transparent;
  color: #edd2ff;
  text-align: start;
  font-weight: 700;
}
.community-forum .forum-index-link:not(.primary):hover { color: #ffb9ff; text-decoration: underline; }
.forum-latest .forum-index-link { font-size: .88rem; }
.community-forum a:focus-visible, .forum-form textarea:focus-visible { outline: 2px solid #c56aff; outline-offset: 3px; }
.forum-list { display: grid; gap: 10px; }
.forum-topic-list { gap: 6px; }
.forum-topic-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}
.forum-topic-row .forum-status { grid-column: 1 / -1; margin: 0 14px 6px; }
.forum-post, .launcher-release, .forum-form { padding: clamp(14px, 2.6vw, 24px); }
.community-forum .forum-topic:not(.primary) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 2px;
  padding: 6px 14px;
  background: transparent;
  border: 0;
  text-align: start;
  font-size: 1rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.community-forum .forum-topic:not(.primary):hover { background: #301746; }
.community-forum .forum-topic-delete:not(.primary) { margin-inline-end: 7px; color: #ff9c9c; }
.forum-pagination { margin-block: 12px; }
.forum-reply-pages { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.forum-reply-pages button:disabled { opacity: .55; cursor: default; }
.forum-meta { color: #d4bedf; font-size: .9rem; margin: 8px 0 0; }
.forum-topic .forum-meta { margin: 0; font-size: .82rem; font-weight: 500; line-height: 1.4; letter-spacing: normal; }
.community-forum .role-badge { padding: 2px 5px; font-size: .72rem; vertical-align: baseline; }
.community-forum .forum-topic .role-badge { padding-block: 0; line-height: 1.25; }
.forum-post-body { white-space: pre-wrap; line-height: 1.6; color: #f4eaff; }
.forum-inline-image { display: block; width: fit-content; max-width: 100%; margin-block: 8px; }
.forum-inline-image img { display: block; max-width: 100%; max-height: min(540px, 70vh); object-fit: contain; border-radius: 8px; }
.forum-image-tools { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; margin-bottom: 14px; }
.forum-form .forum-image-tools input[hidden] { display: none; }
.forum-image-preview { border: 1px solid #593671; border-radius: 8px; padding: 12px; margin-bottom: 14px; }
.forum-image-preview h4 { margin: 0 0 8px; }
.forum-post-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.forum-post-actions[hidden] { display: none; }
.community-forum .forum-post-actions [data-post-action="delete"] { color: #ff9c9c; }
.forum-form { margin-block: 18px; border: 1px solid #593671; border-radius: 12px; background: #181024; }
.forum-form h3 { margin-top: 0; }
.forum-form label { display: block; margin-bottom: 14px; }
.forum-form input, .forum-form textarea {
  display: block;
  width: 100%;
  margin-top: 6px;
  padding: 10px;
  border: 1px solid #8956a4;
  border-radius: 8px;
  background: #100a1a;
  color: #fff;
  font: inherit;
}
.forum-form textarea { resize: vertical; }
.forum-status:empty { display: none; }
#site-stats {
  width: min(100% - 2 * var(--gutter), var(--layout-width));
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
  gap: 14px;
  margin-bottom: 24px;
}
.site-stats-card { min-width: 0; padding: 16px clamp(14px, 2vw, 24px); }
.site-stats-card h2 { margin: 0; font-size: 1rem; }
.site-stats-card h2 span { color: #cb78ff; margin-right: .3em; }
.site-stats-card p { margin: 6px 0 0; font-size: .8rem; line-height: 1.5; }
.site-stats-card dl { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; }
.site-stats-card dl > div {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 5px 8px;
  border: 1px solid #5c3873;
  border-radius: 7px;
  background: #1d122b;
  color: #e9d5f4;
  font-size: .82rem;
}
.site-stats-card dd { margin: 0; color: #f3d6ff; font-weight: 700; }
@media (max-width: 720px) {
  #site-stats { grid-template-columns: 1fr; }
  .forum-index-row { grid-template-columns: minmax(0, 1fr) auto; }
  .forum-index-category { grid-column: 1 / -1; }
  .forum-counts { grid-column: 2; grid-row: 2; justify-content: end; }
}
@media (max-width: 420px) {
  .forum-index-row { grid-template-columns: minmax(0, 1fr); }
  .forum-counts { grid-column: auto; grid-row: auto; justify-content: start; }
}
.launcher-release { max-width: 720px; margin-inline: auto; overflow-wrap: anywhere; }
.launcher-release h1 { margin-top: 0; }
.launcher-release a { text-decoration: none; min-height: 44px; }
.launcher-release li { margin-block: 8px; }
.license-controls {
  min-width: 0;
  margin: 14px 0 0;
  padding: 4px 12px 10px;
  border: 1px solid #785093;
  border-radius: 8px;
}
.license-controls label { display: flex; align-items: center; gap: 8px; margin-top: 8px; }
.license-controls input[type="checkbox"] { width: auto; margin: 0; accent-color: #9b55d0; }
.license-controls [role="status"] { display: block; margin-top: 8px; color: #dbc4eb; }
.license-controls [role="status"]:empty { display: none; }
