[hidden] { display: none !important; }
.forum-page .site-header { max-width: 760px; margin: 0 auto; padding: 4px 24px; }
#forum { max-width: 760px; min-height: 0; margin: 0 auto; padding: 12px 24px 40px; }
.forum-layout { display: block; }
.composer { border-bottom: 1px solid #383838; margin-bottom: 8px; }
.composer summary { cursor: pointer; font-size: 1rem; line-height: 1.5; padding: 10px 0 18px; min-height: 44px; }
.composer[open] summary { padding-bottom: 20px; }
.composer form { padding-bottom: 20px; }
.topic-card { margin: 0; border-bottom: 1px solid #383838; }
.topic-link { display: block; padding: 16px 0; text-decoration: none; }
.topic-link:hover h3 { text-decoration: underline; text-underline-offset: 4px; }
.topic-card h3 { font-size: 1.125rem; font-weight: 500; line-height: 1.4; margin: 0 0 6px; overflow-wrap: anywhere; }
.post-meta { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: .875rem; color: #b5b5b5; line-height: 1.5; }
.post-author { font-weight: 400; }
form label { display: block; font-size: .875rem; font-weight: 400; margin-bottom: 6px; }
form input, form textarea { display: block; width: 100%; max-width: 100%; resize: vertical; border: 1px solid #666; border-radius: 0; padding: 9px 10px; font: inherit; font-size: 1rem; line-height: 1.5; background: transparent; color: #fff; margin: 0 0 16px; }
form input:focus, form textarea:focus { outline: 2px solid #fff; outline-offset: 2px; }
form textarea { min-height: 88px; }
.primary-action, .secondary-action { min-height: 44px; padding: 10px 14px; font: inherit; font-size: 1rem; font-weight: 400; border: 1px solid #777; border-radius: 0; background: transparent; color: #fff; }
.primary-action:hover, .secondary-action:hover { background: #292929; }
.primary-action:disabled, .secondary-action:disabled { cursor: wait; opacity: .6; }
.secondary-action { margin-top: 16px; }
.form-feedback { font-size: .875rem; line-height: 1.5; margin: 12px 0 0; overflow-wrap: anywhere; }
.form-feedback:empty { display: none; }
.form-feedback[data-error=true] { color: #ffb5b5; }
.forum-status { font-size: 1rem; line-height: 1.6; color: #b5b5b5; margin: 20px 0; }
.retry-button { margin-left: 8px; color: #fff; border: 0; background: transparent; text-decoration: underline; text-underline-offset: 4px; padding: 10px; font-size: 1rem; }
.back-link { display: inline-flex; align-items: center; min-height: 44px; color: #b5b5b5; font-size: .875rem; text-underline-offset: 4px; margin-bottom: 12px; }
.thread-post { padding-bottom: 24px; border-bottom: 1px solid #383838; margin-bottom: 24px; }
.thread-post h2 { font-size: 1.5rem; font-weight: 500; line-height: 1.3; margin: 12px 0 16px; overflow-wrap: anywhere; }
.post-body { font-size: 1rem; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; margin: 12px 0 0; }
.section-title { font-size: 1rem; font-weight: 400; margin: 0 0 12px; }
.reply-post { padding: 16px 0; border-bottom: 1px solid #383838; }
.reply-composer { margin-top: 24px; }
@media (max-width: 760px) {
  .forum-page .site-header { padding-left: 5vw; padding-right: 5vw; }
  #forum { padding-left: 5vw; padding-right: 5vw; }
}
