:root {
    --forum-primary: #3b82f6;
    --forum-primary-hover: #60a5fa;
    --forum-secondary: #94a3b8;
    --forum-success: #34d399;
    --forum-warning: #fbbf24;
    --forum-danger: #f87171;
    --forum-bg: #0f172a;
    --forum-card-bg: #1e293b;
    --forum-border: #334155;
    --forum-text: #e2e8f0;
    --forum-text-muted: #94a3b8;
    --forum-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    --forum-shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.4);
}

.modernforum {
    background-color: var(--forum-bg) !important;
    color: rgb(229, 223, 223) !important;
    font-family: var(--body-font-family) !important;
    font-size: var(--body-font-size) !important;
    font-weight: var(--body-font-weight) !important;
    line-height: var(--body-line-height) !important;
}

.modernforum * {
    color: inherit;
}

.modernforum a {
    color: var(--forum-primary) !important;
    text-decoration: none !important;
}

.modernforum a:hover {
    color: var(--forum-primary-hover) !important;
}

.modernforum .category-card,
.modernforum .subforum-card,
.modernforum .topic-card,
.modernforum .post-item,
.modernforum .auth-card,
.modernforum .profile-card,
.modernforum .search-card {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .category-header {
    background: #1a2744 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .category-header h2,
.modernforum .category-header .category-title {
    color: #ffffff !important;
}

.modernforum .category-header .description,
.modernforum .category-header .category-description {
    color: rgba(255, 255, 255, 0.8) !important;
}

.modernforum .subforum-item {
    border-color: var(--forum-border) !important;
}

.modernforum .subforum-item:hover {
    background: #263347 !important;
}

.modernforum .subforum-item .subforum-title,
.modernforum .subforum-title {
    color: var(--forum-text) !important;
}

.modernforum .subforum-title:hover {
    color: #ced2da !important;
}

.modernforum .subforum-item .subforum-description,
.modernforum .subforum-description {
    color: var(--forum-text-muted) !important;
}

.modernforum .subforum-stats {
    color: var(--forum-text-muted) !important;
}

.modernforum .subforum-stats span {
    color: var(--forum-text-muted) !important;
}

.modernforum .topic-row {
    border-color: var(--forum-border) !important;
    color: var(--forum-text) !important;
}

.modernforum .topic-row:hover {
    background: #263347 !important;
}

.modernforum .topic-title,
.modernforum .topic-content .topic-title {
    color: var(--forum-text) !important;
}

.modernforum .topic-row:hover .topic-title {
    color: #e6e8ec !important;
}

.modernforum .topic-title:hover {
    color: var(--forum-primary) !important;
}

.modernforum .topic-meta,
.modernforum .post-meta,
.modernforum .search-meta,
.modernforum .topic-content .topic-meta {
    color: var(--forum-text-muted) !important;
}

.modernforum .topic-stats,
.modernforum .topic-row .topic-stats {
    color: var(--forum-text-muted) !important;
}

.modernforum .topic-link {
    color: var(--forum-text) !important;
}

.modernforum .topic-link:hover {
    color: var(--forum-primary) !important;
}

.modernforum .post-item {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .post-author {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .post-author-name,
.modernforum .author-name {
    color: var(--forum-text) !important;
}

.modernforum a.author-name {
    color: #d4d8dd !important;
}

.modernforum a.author-name:hover {
    color: var(--forum-primary) !important;
}

.modernforum .post-author-role,
.modernforum .post-author-stats,
.modernforum .author-role,
.modernforum .author-posts {
    color: var(--forum-text-muted) !important;
}

.modernforum .post-content,
.modernforum .post-content p {
    color: var(--forum-text) !important;
}

.modernforum .post-footer {
    border-color: var(--forum-border) !important;
}

.modernforum .post-date,
.modernforum .post-number {
    color: var(--forum-text-muted) !important;
}

.modernforum .post-header {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .breadcrumb {
    color: var(--forum-text-muted) !important;
}

.modernforum .breadcrumb a {
    color: var(--forum-primary) !important;
}

.modernforum .breadcrumb a:hover {
    color: var(--forum-primary-hover) !important;
}

.modernforum .forum-breadcrumb .current,
.modernforum .forum-breadcrumb .separator {
    color: var(--forum-text-muted) !important;
}

.modernforum .forum-header {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .forum-header h1,
.modernforum .forum-header h2 {
    color: var(--forum-text) !important;
}

.modernforum .forum-header p {
    color: var(--forum-text-muted) !important;
}

.modernforum .forum-title,
.modernforum .page-title {
    color: var(--forum-text) !important;
}

.modernforum .forum-description {
    color: var(--forum-text-muted) !important;
}

.modernforum .forum-sidebar {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .stats-box {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .stats-box h3 {
    color: var(--forum-text) !important;
}

.modernforum .stats-box .stat-value,
.modernforum .profile-stats .stat-value,
.modernforum .forum-stats-bar .stat-value {
    color: var(--forum-text) !important;
}

.modernforum .stats-box .stat-label,
.modernforum .profile-stats .stat-label,
.modernforum .forum-stats-bar .stat-label {
    color: var(--forum-text-muted) !important;
}

.modernforum .btn-primary {
    background: var(--forum-primary) !important;
    color: #ffffff !important;
}

.modernforum .btn-primary:hover {
    background: var(--forum-primary-hover) !important;
}

.modernforum .btn-secondary {
    background: #334155 !important;
    color: var(--forum-text) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .btn-secondary:hover {
    background: #475569 !important;
}

.modernforum .btn-outline {
    border-color: var(--forum-border) !important;
    color: var(--forum-text-muted) !important;
}

.modernforum .btn-outline:hover {
    background: #263347 !important;
    color: var(--forum-text) !important;
}

.modernforum .btn-link {
    color: var(--forum-primary) !important;
}

.modernforum .btn-link:hover {
    color: var(--forum-primary-hover) !important;
}

.modernforum input[type="text"],
.modernforum input[type="email"],
.modernforum input[type="password"],
.modernforum input[type="search"],
.modernforum textarea,
.modernforum select,
.modernforum .form-control,
.modernforum .form-input,
.modernforum .form-textarea,
.modernforum .form-select {
    background: #162031 !important;
    color: var(--forum-text) !important;
    border-color: var(--forum-border) !important;
}

.modernforum input[type="text"]:focus,
.modernforum input[type="email"]:focus,
.modernforum input[type="password"]:focus,
.modernforum input[type="search"]:focus,
.modernforum textarea:focus,
.modernforum select:focus,
.modernforum .form-control:focus {
    border-color: var(--forum-primary) !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2) !important;
}

.modernforum input::placeholder,
.modernforum textarea::placeholder {
    color: #475569 !important;
}

.modernforum .pagination a,
.modernforum .pagination span {
    background: var(--forum-card-bg) !important;
    color: var(--forum-text-muted) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .pagination a:hover {
    background: #263347 !important;
    color: var(--forum-text) !important;
}

.modernforum .pagination .active {
    background: var(--forum-primary) !important;
    color: #ffffff !important;
    border-color: var(--forum-primary) !important;
}

.modernforum .badge,
.modernforum .role-badge {
    background: #263347 !important;
    color: var(--forum-text-muted) !important;
}

.modernforum .badge-admin {
    background: rgba(220, 38, 38, 0.2) !important;
    color: #fca5a5 !important;
}

.modernforum .badge-moderator {
    background: rgba(59, 130, 246, 0.2) !important;
    color: #93c5fd !important;
}

.modernforum .alert {
    border-color: var(--forum-border) !important;
}

.modernforum .alert-info {
    background: rgba(59, 130, 246, 0.15) !important;
    color: #93c5fd !important;
    border-color: rgba(59, 130, 246, 0.3) !important;
}

.modernforum .alert-success {
    background: rgba(16, 185, 129, 0.15) !important;
    color: #6ee7b7 !important;
    border-color: rgba(16, 185, 129, 0.3) !important;
}

.modernforum .alert-danger {
    background: rgba(239, 68, 68, 0.15) !important;
    color: #fca5a5 !important;
    border-color: rgba(239, 68, 68, 0.3) !important;
}

.modernforum .alert-warning {
    background: rgba(251, 191, 36, 0.15) !important;
    color: #fbbf24 !important;
    border-color: rgba(251, 191, 36, 0.3) !important;
}

.modernforum .topic-list-header {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
    color: var(--forum-text-muted) !important;
}

.modernforum .topic-pinned {
    background: rgba(59, 130, 246, 0.08) !important;
}

.modernforum .topic-locked .topic-title {
    color: var(--forum-text-muted) !important;
}

.modernforum .avatar-placeholder {
    background: #263347 !important;
    color: var(--forum-text-muted) !important;
}

.modernforum .quote-block {
    background: #162031 !important;
    border-left-color: var(--forum-primary) !important;
    color: var(--forum-text-muted) !important;
}

.modernforum .powered-by,
.modernforum .forum-powered-by {
    color: var(--forum-text-muted) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .powered-by a,
.modernforum .forum-powered-by a {
    color: var(--forum-text-muted) !important;
}

.modernforum .powered-by a:hover,
.modernforum .forum-powered-by a:hover {
    color: var(--forum-primary) !important;
}

.modernforum .search-input-group {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .search-results .result-item {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .search-results .result-item:hover {
    background: #263347 !important;
}

.modernforum .subscription-btn {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
    color: var(--forum-text-muted) !important;
}

.modernforum .subscription-btn:hover {
    background: #263347 !important;
}

.modernforum .subscription-btn.subscribed {
    background: rgba(59, 130, 246, 0.15) !important;
    border-color: rgba(59, 130, 246, 0.3) !important;
    color: #93c5fd !important;
}

.modernforum .captcha-group {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .captcha-problem {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
    color: var(--forum-text) !important;
}

.modernforum .captcha-input {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
    color: var(--forum-text) !important;
}

.modernforum .empty-state {
    color: var(--forum-text-muted) !important;
}

.modernforum .divider,
.modernforum hr {
    border-color: var(--forum-border) !important;
}

.modernforum .tab-nav {
    border-color: var(--forum-border) !important;
}

.modernforum .tab-nav a {
    color: var(--forum-text-muted) !important;
}

.modernforum .tab-nav a:hover {
    color: var(--forum-text) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .tab-nav a.active {
    color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
}

.modernforum ::selection {
    background: rgba(59, 130, 246, 0.3) !important;
    color: #ffffff !important;
}

.modernforum .attachment-item {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .attachment-item:hover {
    background: #263347 !important;
}

.modernforum .attachment-item a {
    color: var(--forum-text) !important;
}

.modernforum .attachment-item a:hover {
    color: var(--forum-primary) !important;
}

.modernforum .topics-list {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .topic-item {
    border-color: var(--forum-border) !important;
}

.modernforum .topic-item:hover {
    background: #263347 !important;
}

.modernforum .reply-form-container,
.modernforum .create-topic-container,
.modernforum .edit-form-container {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .reply-form-title {
    color: var(--forum-text) !important;
}

.modernforum .auth-card {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .auth-title {
    color: var(--forum-text) !important;
}

.modernforum .auth-subtitle,
.modernforum .auth-info {
    color: var(--forum-text-muted) !important;
}

.modernforum .auth-footer {
    color: var(--forum-text-muted) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .form-label {
    color: var(--forum-text) !important;
}

.modernforum .form-label svg {
    color: var(--forum-text-muted) !important;
}

.modernforum .form-group label {
    color: var(--forum-text) !important;
}

.modernforum .welcome-text,
.modernforum .user-info {
    color: var(--forum-text-muted) !important;
}

.modernforum .profile-header-card {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .profile-name {
    color: var(--forum-text) !important;
}

.modernforum .profile-username {
    color: var(--forum-text-muted) !important;
}

.modernforum .profile-meta .meta-item {
    color: var(--forum-text-muted) !important;
}

.modernforum .profile-edit-card,
.modernforum .profile-signature-card,
.modernforum .profile-activity-card,
.modernforum .profile-subscriptions-card {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .profile-edit-card h2,
.modernforum .profile-signature-card h3,
.modernforum .profile-activity-card h3,
.modernforum .profile-subscriptions-card h3 {
    color: var(--forum-text) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .signature-content {
    color: var(--forum-text-muted) !important;
}

.modernforum .activity-title {
    color: var(--forum-text) !important;
}

.modernforum .activity-link:hover .activity-title {
    color: var(--forum-primary) !important;
}

.modernforum .activity-meta {
    color: var(--forum-text-muted) !important;
}

.modernforum .activity-item {
    border-color: var(--forum-border) !important;
}

.modernforum .subscription-item {
    border-color: var(--forum-border) !important;
}

.modernforum .subscription-item-title {
    color: var(--forum-text) !important;
}

.modernforum .subscriptions-empty p {
    color: var(--forum-text) !important;
}

.modernforum .subscriptions-empty span {
    color: var(--forum-text-muted) !important;
}

.modernforum .modal-content {
    background: var(--forum-card-bg) !important;
}

.modernforum .modal-header {
    border-color: var(--forum-border) !important;
}

.modernforum .modal-header h3 {
    color: var(--forum-text) !important;
}

.modernforum .modal-close {
    color: var(--forum-text-muted) !important;
}

.modernforum .modal-close:hover {
    color: var(--forum-text) !important;
}

.modernforum .post-original .author-role {
    color: #ffffff !important;
    background: var(--forum-primary) !important;
}

.modernforum .post-reply .author-role {
    background: var(--forum-border) !important;
    color: var(--forum-text-muted) !important;
}

.modernforum .login-prompt,
.modernforum .topic-locked {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .login-prompt p,
.modernforum .topic-locked p {
    color: var(--forum-text-muted) !important;
}

.modernforum .post-modified {
    color: var(--forum-text-muted) !important;
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .post-attachments {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .subforum-header .subforum-title {
    color: var(--forum-text) !important;
}

.modernforum .replies-header {
    color: var(--forum-text) !important;
}

.modernforum .pagination-info {
    color: var(--forum-text-muted) !important;
}

.modernforum .topic-subforum {
    color: var(--forum-primary) !important;
}

.modernforum .captcha-num {
    color: var(--forum-text) !important;
}

.modernforum .captcha-op {
    color: var(--forum-primary) !important;
}

.modernforum .captcha-eq {
    color: var(--forum-text-muted) !important;
}

.modernforum .captcha-group > label {
    color: var(--forum-text) !important;
}

.modernforum .captcha-hint {
    color: var(--forum-text-muted) !important;
}

.modernforum .checkbox-label {
    color: var(--forum-text-muted) !important;
}

.modernforum .forum-stats-bar {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .subscription-bar {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .subscription-hint {
    color: var(--forum-text-muted) !important;
}

.modernforum .btn-subscribe {
    color: var(--forum-text-muted) !important;
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .btn-subscribe:hover {
    color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
}

.modernforum .btn-subscribe--active {
    color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
}

.modernforum .btn-subscribe-inline {
    color: var(--forum-text-muted) !important;
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .btn-subscribe-inline:hover {
    color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
}

.modernforum .btn-subscribe-inline--active {
    color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
}

.modernforum .thanks-btn {
    color: var(--forum-text-muted) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .thanks-btn:hover {
    color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
}

.modernforum .thanks-btn--active {
    color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
}

.modernforum .thanks-display {
    color: var(--forum-text-muted) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .thanks-users {
    color: var(--forum-text-muted) !important;
}

.modernforum .post-thanks {
    border-color: var(--forum-border) !important;
}

.modernforum .topic-actions .btn.btn-secondary {
    background: transparent !important;
    color: var(--forum-text) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .topic-actions .btn.btn-secondary:hover {
    background: #263347 !important;
    color: var(--forum-text) !important;
}

.modernforum .topic-actions .btn.btn-danger {
    background: transparent !important;
    color: var(--forum-text) !important;
    border-color: var(--forum-border) !important;
}

.modernforum .topic-actions .btn.btn-danger:hover {
    background: rgba(239, 68, 68, 0.15) !important;
    color: var(--forum-danger) !important;
    border-color: var(--forum-danger) !important;
}

.modernforum .post-reply .post-actions .btn.btn-secondary {
    background: var(--forum-primary) !important;
    color: #ffffff !important;
}

.modernforum .post-reply .post-actions .btn.btn-secondary:hover {
    background: var(--forum-primary-hover) !important;
    color: #ffffff !important;
}

.modernforum .attachment-delete-label {
    background: var(--forum-card-bg) !important;
    border-color: var(--forum-border) !important;
    color: var(--forum-text) !important;
}

.modernforum .attachment-delete-label:hover {
    background: rgba(239, 68, 68, 0.15) !important;
    border-color: var(--forum-danger) !important;
}

.modernforum .selected-files li {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .selected-files .file-name {
    color: var(--forum-text) !important;
}

.modernforum .selected-files .file-size {
    color: var(--forum-text-muted) !important;
}

.modernforum .form-hint {
    color: var(--forum-text-muted) !important;
}

.modernforum .existing-attachments > label {
    color: var(--forum-text) !important;
}

.modernforum .avatar-preview {
    background: #162031 !important;
    border-color: var(--forum-border) !important;
}

.modernforum .avatar-preview-placeholder {
    color: var(--forum-text-muted) !important;
}

.modernforum h1,
.modernforum h2,
.modernforum h3,
.modernforum h4,
.modernforum h5,
.modernforum h6 {
    color: var(--forum-text) !important;
}

.modernforum p {
    color: var(--forum-text) !important;
}

.modernforum .subforum-icon {
    background: #263347 !important;
    color: var(--forum-primary) !important;
}
