.discussion-heading { display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:20px; }
.discussion-heading h1 { margin:0; font-size:28px; overflow-wrap:anywhere; }
.discussion-button { display:inline-block; background:#399a50; color:white; border:0; border-radius:5px; padding:10px 17px; text-decoration:none; cursor:pointer; font:inherit; font-weight:600; }
.discussion-filters { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin:20px 0 28px; }
.discussion-filters label { display:grid; gap:5px; }
.discussion-filters input,.discussion-filters select,.discussion-form input[type=text],.discussion-form textarea { background:#242424; color:#eee; border:1px solid #555; border-radius:4px; padding:10px 12px; font:inherit; max-width:100%; }
.discussion-table-wrap { overflow-x:auto; border:1px solid #444; border-radius:4px; }
.discussion-table { width:100%; border-collapse:collapse; }
.discussion-table th,.discussion-table td { text-align:left; padding:17px 13px; }
.discussion-table th { background:#2a2a2a; white-space:nowrap; }
.discussion-table tbody tr:nth-child(even) { background:#242424; }
.discussion-table tbody tr:nth-child(odd) { background:#1e1e1e; }
.discussion-table .topic-name { min-width:220px; width:45%; overflow-wrap:anywhere; }
.discussion-table a,.discussion-panel a,.discussion-back { color:#dceaf5; text-decoration:none; }
.discussion-table a:hover,.discussion-panel a:hover,.discussion-back:hover { color:#59c7ad; text-decoration:underline; }
.topic-kind { display:inline-flex; gap:7px; align-items:center; white-space:nowrap; }
.topic-kind::before { content:''; width:11px; height:11px; border-radius:50%; background:#21cb83; }
.topic-kind.notice::before { background:#ff4377; }
.discussion-panel,.discussion-form { border:1px solid #414141; background:#1e1e1e; border-radius:5px; padding:22px; margin:20px 0; }
.discussion-form { max-width:900px; }
.discussion-form > label { display:block; margin:18px 0 7px; font-weight:600; }
.discussion-form input[type=text],.discussion-form textarea { width:100%; box-sizing:border-box; }
.discussion-form textarea { min-height:230px; resize:vertical; }
.discussion-content { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.7; }
.discussion-meta { color:#aaa; font-size:13px; display:flex; flex-wrap:wrap; gap:8px 16px; margin-bottom:16px; }
.discussion-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:18px; }
.discussion-actions form { margin:0; }
.discussion-actions button { background:#404040; color:#eee; border:1px solid #666; padding:7px 12px; border-radius:4px; font:inherit; cursor:pointer; }
.discussion-hidden { border-color:#a25959; }
.discussion-badge { font-size:12px; border:1px solid #777; border-radius:3px; padding:2px 5px; white-space:nowrap; }
.discussion-error { padding:12px; border:1px solid #d56b6b; background:#352020; color:#ffc2c2; border-radius:4px; }
.discussion-empty { color:#aaa; padding:24px; }
.discussion-back { display:inline-block; margin-bottom:18px; }
@media(max-width:700px) {
    .discussion-table th,.discussion-table td { padding:13px 10px; font-size:14px; }
    .discussion-table .topic-name { min-width:180px; }
    .discussion-panel,.discussion-form { padding:16px; }
    .discussion-heading h1 { font-size:23px; }
    .discussion-filters label { min-width:0; max-width:100%; }
    .discussion-filters input { width:100%; }
}
