body { background-color: #1a1a2e; }
.card-dark { background: #16213e; border: 1px solid #0f3460; }

.forum-post { transition: box-shadow 0.15s ease; }
.forum-post-title { word-break: break-word; }
.forum-post-body { white-space: pre-wrap; word-break: break-word; }

.forum-image-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem;
    width: fit-content;
}
.forum-image-thumb {
    width: 140px;
    height: 140px;
    object-fit: contain;
    object-position: center;
    border-radius: 4px;
    cursor: pointer;
    border: 1px solid #0f3460;
    transition: transform 0.1s ease, border-color 0.1s ease;
    background: rgba(0, 0, 0, 0.2);
    flex-shrink: 0;
}
.forum-image-thumb:hover { transform: scale(1.02); border-color: #1f4e79; }

.forum-comments { border-top: 1px solid #0f3460; margin-top: 1rem; padding-top: 0.75rem; }
.forum-comment {
    padding: 0.5rem 0.75rem;
    margin-bottom: 0.5rem;
    background: rgba(15, 52, 96, 0.35);
    border-left: 3px solid #0f3460;
    border-radius: 0 4px 4px 0;
}
.forum-comment-body { white-space: pre-wrap; word-break: break-word; }

.forum-replies {
    margin-top: 0.5rem;
    margin-left: 1.5rem;
    padding-left: 0.75rem;
    border-left: 2px solid #0f3460;
}
.forum-reply {
    background: rgba(15, 52, 96, 0.5);
    border-left-color: #1f4e79;
}
.forum-reply-form { margin-left: 1.5rem; margin-top: 0.5rem; }
.forum-reply-toggle {
    background: none;
    border: 0;
    color: #6ea8fe;
    padding: 0;
    font-size: 0.85rem;
    cursor: pointer;
}
.forum-reply-toggle:hover { text-decoration: underline; }

.forum-edit-image-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}
.forum-edit-image-tile {
    position: relative;
    width: 140px;
}
.forum-edit-image-tile img {
    width: 140px;
    height: 140px;
    object-fit: contain;
    border-radius: 4px;
    border: 1px solid #0f3460;
    background: rgba(0, 0, 0, 0.2);
    display: block;
}
.forum-edit-image-tile .forum-edit-remove {
    position: absolute;
    top: 6px;
    right: 6px;
    background: rgba(0, 0, 0, 0.75);
    border-radius: 4px;
    padding: 2px 6px;
    color: #fff;
    font-size: 0.8rem;
    cursor: pointer;
    user-select: none;
}
.forum-edit-image-tile input[type="checkbox"] { margin-right: 4px; }
.forum-edit-image-tile.is-removing img { opacity: 0.4; outline: 2px solid #dc3545; }

.forum-error { background: rgba(220, 53, 69, 0.12); border: 1px solid #dc3545; color: #f8d7da; }
