/* ========== COMPREHENSIVE DARK MODE OVERRIDES ========== */
/* This file handles all hardcoded colors that need dark mode variants */

/* ========== SVG/ICON INVERSION FOR DARK MODE ========== */
/* Invert dark SVG icons to light for dark mode */
[data-theme="dark"] img[src$=".svg"],
[data-theme="dark"] .action-btn img,
[data-theme="dark"] .comment-action-btn img,
[data-theme="dark"] .nav-icon img,
[data-theme="dark"] .sidebar-link img,
[data-theme="dark"] .icon-btn img,
[data-theme="dark"] .menu-item img,
[data-theme="dark"] .dropdown-item img,
[data-theme="dark"] .settings-nav-item img,
[data-theme="dark"] .thread-actions img,
[data-theme="dark"] .vote-btn img,
[data-theme="dark"] .action-more img,
[data-theme="dark"] .widget-header img,
[data-theme="dark"] .nav-item img,
[data-theme="dark"] .bottom-nav-item img,
[data-theme="dark"] .mobile-nav-item img,
[data-theme="dark"] .search-icon,
[data-theme="dark"] .header-icon img,
[data-theme="dark"] .modal-close img,
[data-theme="dark"] .close-btn img,
[data-theme="dark"] .toggle-btn img,
[data-theme="dark"] .expand-btn img,
[data-theme="dark"] .collapse-btn img,
[data-theme="dark"] .sort-btn img,
[data-theme="dark"] .filter-btn img,
[data-theme="dark"] .back-btn img,
[data-theme="dark"] .circle-info-btn img,
[data-theme="dark"] .share-btn img,
[data-theme="dark"] .bookmark-btn img,
[data-theme="dark"] .report-btn img,
[data-theme="dark"] .edit-btn img,
[data-theme="dark"] .delete-btn img,
[data-theme="dark"] .reply-btn img,
[data-theme="dark"] .more-btn img,
[data-theme="dark"] .notification-icon img,
[data-theme="dark"] .message-icon img,
[data-theme="dark"] .user-menu-btn img,
[data-theme="dark"] .create-btn img {
    filter: invert(0.8) brightness(1.2);
}

/* Specific icons that should remain colored (like upvote/downvote when active) */
[data-theme="dark"] .action-btn.active-upvote img,
[data-theme="dark"] .action-btn img.active-upvote,
[data-theme="dark"] .comment-action-btn.active-upvote img,
[data-theme="dark"] .vote-btn.upvoted img {
    filter: none !important;
}

[data-theme="dark"] .action-btn.active-downvote img,
[data-theme="dark"] .action-btn img.active-downvote,
[data-theme="dark"] .comment-action-btn.active-downvote img,
[data-theme="dark"] .vote-btn.downvoted img {
    filter: none !important;
}

/* Circle icons and user avatars should NOT be inverted */
[data-theme="dark"] .thread-icon,
[data-theme="dark"] .circle-icon,
[data-theme="dark"] .user-avatar,
[data-theme="dark"] .avatar,
[data-theme="dark"] .profile-avatar,
[data-theme="dark"] .recent-post-icon,
[data-theme="dark"] img.avatar,
[data-theme="dark"] img.circle-avatar,
[data-theme="dark"] .circle-banner img,
[data-theme="dark"] .user-banner img,
[data-theme="dark"] .thread-media img,
[data-theme="dark"] .post-image img,
[data-theme="dark"] .media-preview img,
[data-theme="dark"] .thumbnail img,
[data-theme="dark"] .recent-post-media {
    filter: none !important;
}

/* Logo should not be inverted */
[data-theme="dark"] .logo img,
[data-theme="dark"] #desktop-logo,
[data-theme="dark"] #mobile-logo {
    filter: none !important;
}

/* ========== RIGHT SIDEBAR DARK MODE ========== */
[data-theme="dark"] .right-sidebar {
    background: var(--bg-secondary, #030303) !important;
}

[data-theme="dark"] .right-sidebar::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb, #4a4a4b);
}

[data-theme="dark"] .sidebar-widget {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .widget-header {
    background: var(--bg-tertiary, #272729) !important;
    border-bottom-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .widget-header h3 {
    color: var(--text-secondary, #818384) !important;
}

[data-theme="dark"] .widget-content {
    background: var(--bg-primary, #1a1a1b);
}

[data-theme="dark"] .recent-post-item {
    border-bottom-color: var(--border-color, #343536);
}

[data-theme="dark"] .recent-post-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .recent-post-title {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .recent-post-circle {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .recent-post-time,
[data-theme="dark"] .recent-post-footer {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .loading-widget {
    color: var(--text-secondary, #818384);
}

/* ========== LEFT SIDEBAR DARK MODE ========== */
[data-theme="dark"] .left-sidebar {
    background: var(--bg-primary, #1a1a1b) !important;
    border-right-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .sidebar-section {
    border-bottom-color: var(--border-color, #343536);
}

[data-theme="dark"] .sidebar-section-title {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .sidebar-link {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .sidebar-link:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .sidebar-link.active {
    background: var(--active-bg, #343536);
    color: var(--primary-color);
}

[data-theme="dark"] .nav-item {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .nav-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .nav-item.active {
    background: var(--active-bg, #343536);
}

[data-theme="dark"] .circles-list,
[data-theme="dark"] .favorites-list {
    background: var(--bg-primary, #1a1a1b);
}

[data-theme="dark"] .circle-list-item {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .circle-list-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

/* ========== BASE ELEMENTS ========== */
[data-theme="dark"] body {
    background: var(--bg-secondary);
    color: var(--text-primary);
}

/* ========== HEADER ========== */
[data-theme="dark"] .header,
[data-theme="dark"] .desktop-header {
    background: var(--bg-primary);
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .logo a,
[data-theme="dark"] .logo a span,
[data-theme="dark"] #site-name-header {
    color: var(--text-primary, #d7dadc) !important;
}

[data-theme="dark"] .nav-link {
    color: var(--text-primary);
}

[data-theme="dark"] .nav-link:hover {
    background: var(--hover-bg);
}

/* ========== SEARCH ========== */
[data-theme="dark"] .search-container input {
    background: var(--input-bg, #272729);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .search-container input:focus {
    background: var(--bg-primary);
    border-color: var(--primary-color);
}

[data-theme="dark"] .search-container input::placeholder {
    color: var(--text-secondary);
}

[data-theme="dark"] .search-suggestions,
[data-theme="dark"] .search-dropdown {
    background: var(--bg-primary);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, 0.5));
}

[data-theme="dark"] .search-suggestion-item:hover,
[data-theme="dark"] .search-item:hover {
    background: var(--hover-bg);
}

/* ========== SIDEBAR ========== */
[data-theme="dark"] .left-sidebar,
[data-theme="dark"] .right-sidebar,
[data-theme="dark"] .sidebar {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .sidebar-section {
    border-color: var(--border-color);
}

[data-theme="dark"] .sidebar-link,
[data-theme="dark"] .nav-item {
    color: var(--text-primary);
}

[data-theme="dark"] .sidebar-link:hover,
[data-theme="dark"] .nav-item:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .sidebar-link.active,
[data-theme="dark"] .nav-item.active {
    background: var(--active-bg, #343536);
    color: var(--primary-color);
}

/* ========== CARDS ========== */
[data-theme="dark"] .thread-card,
[data-theme="dark"] .card,
[data-theme="dark"] .content-card {
    background: var(--card-bg, #1a1a1b);
    border-color: var(--border-color);
}

[data-theme="dark"] .thread-card:hover,
[data-theme="dark"] .card:hover {
    background: var(--card-hover-bg, #232325);
}

[data-theme="dark"] .thread-title {
    color: var(--text-primary);
}

[data-theme="dark"] .thread-title:hover {
    color: var(--primary-color);
}

[data-theme="dark"] .thread-text {
    color: var(--text-secondary);
}

[data-theme="dark"] .thread-meta {
    color: var(--text-secondary);
}

[data-theme="dark"] .circle-name {
    color: var(--text-primary);
}

[data-theme="dark"] .thread-author,
[data-theme="dark"] .thread-time {
    color: var(--text-secondary);
}

/* ========== BUTTONS ========== */
[data-theme="dark"] .btn {
    transition: all 0.2s;
}

[data-theme="dark"] .btn-primary {
    background: var(--primary-color);
    color: #ffffff;
}

[data-theme="dark"] .btn-primary:hover {
    background: var(--primary-hover);
}

[data-theme="dark"] .btn-secondary {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .btn-secondary:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .btn-outline {
    background: transparent;
    border: solid 1px;
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .btn-outline:hover {
    background: var(--hover-bg);
    border-color: var(--primary-color);
}

[data-theme="dark"] .btn-ghost {
    background: transparent;
    color: var(--text-secondary);
}

[data-theme="dark"] .btn-ghost:hover {
    background: var(--hover-bg);
    color: var(--text-primary);
}

[data-theme="dark"] .btn-danger {
    background: var(--error-color);
}

[data-theme="dark"] .btn-danger:hover {
    background: #ef4444;
}

/* ========== FORMS & INPUTS ========== */
[data-theme="dark"] input,
[data-theme="dark"] textarea,
[data-theme="dark"] select {
    background: var(--input-bg, #272729);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] input:focus,
[data-theme="dark"] textarea:focus,
[data-theme="dark"] select:focus {
    border-color: var(--primary-color);
    outline: none;
    box-shadow: 0 0 0 2px var(--focus-ring, rgba(96, 165, 250, 0.3));
}

[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder {
    color: var(--text-muted, #6b6d6e);
}

[data-theme="dark"] input:disabled,
[data-theme="dark"] textarea:disabled,
[data-theme="dark"] select:disabled {
    background: var(--bg-tertiary, #272729);
    color: var(--text-muted);
    opacity: 0.6;
}

[data-theme="dark"] label {
    color: var(--text-primary);
}

[data-theme="dark"] .form-group {
    color: var(--text-primary);
}

[data-theme="dark"] .form-hint,
[data-theme="dark"] .form-helper {
    color: var(--text-secondary);
}

/* ========== MODALS & DIALOGS ========== */
[data-theme="dark"] .modal,
[data-theme="dark"] .dialog,
[data-theme="dark"] .popup {
    background: var(--modal-bg, #1a1a1b);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg);
}

[data-theme="dark"] .modal-overlay,
[data-theme="dark"] .overlay {
    background: var(--overlay-bg, rgba(0, 0, 0, 0.75));
}

[data-theme="dark"] .modal-header {
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .modal-title {
    color: var(--text-primary);
}

[data-theme="dark"] .modal-footer {
    border-top-color: var(--border-color);
}

[data-theme="dark"] .modal-content {
    background: var(--modal-bg, #1a1a1b);
}

/* ========== DROPDOWNS & MENUS ========== */
[data-theme="dark"] .dropdown,
[data-theme="dark"] .dropdown-menu,
[data-theme="dark"] .context-menu,
[data-theme="dark"] .popover {
    background: var(--bg-primary);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg);
}

[data-theme="dark"] .dropdown-item,
[data-theme="dark"] .menu-item {
    color: var(--text-primary);
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .menu-item:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .dropdown-divider {
    border-color: var(--border-color);
}

/* ========== COMMENTS ========== */
[data-theme="dark"] .comment,
[data-theme="dark"] .comment-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .comment-body {
    color: var(--text-primary);
}

[data-theme="dark"] .comment-meta {
    color: var(--text-secondary);
}

[data-theme="dark"] .comment-author {
    color: var(--text-primary);
}

[data-theme="dark"] .comment-time {
    color: var(--text-secondary);
}

[data-theme="dark"] .comment-actions button,
[data-theme="dark"] .action-btn {
    color: var(--text-secondary);
}

[data-theme="dark"] .comment-actions button:hover,
[data-theme="dark"] .action-btn:hover {
    color: var(--text-primary);
    background: var(--hover-bg);
}

[data-theme="dark"] .reply-line,
[data-theme="dark"] .comment-thread-line {
    background: var(--border-color);
}

/* ========== VOTING ========== */
[data-theme="dark"] .vote-btn {
    color: var(--text-secondary);
}

[data-theme="dark"] .vote-btn:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .vote-btn.upvoted {
    color: #ff4500;
}

[data-theme="dark"] .vote-btn.downvoted {
    color: #7193ff;
}

[data-theme="dark"] .vote-count {
    color: var(--text-primary);
}

/* ========== TABS ========== */
[data-theme="dark"] .tabs {
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .tab {
    color: var(--text-secondary);
}

[data-theme="dark"] .tab:hover {
    color: var(--text-primary);
    background: var(--hover-bg);
}

[data-theme="dark"] .tab.active {
    color: var(--primary-color);
    border-bottom-color: var(--primary-color);
}

/* ========== BADGES & TAGS ========== */
[data-theme="dark"] .badge,
[data-theme="dark"] .tag {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .badge-primary {
    background: var(--primary-color);
    color: #ffffff;
}

[data-theme="dark"] .badge-success {
    background: var(--success-bg);
    color: var(--success-color);
}

[data-theme="dark"] .badge-error,
[data-theme="dark"] .badge-danger {
    background: var(--error-bg);
    color: var(--error-color);
}

[data-theme="dark"] .badge-warning {
    background: var(--warning-bg);
    color: var(--warning-color);
}

/* ========== NOTIFICATIONS & TOASTS ========== */
[data-theme="dark"] .notification,
[data-theme="dark"] .toast {
    background: var(--bg-primary);
    border-color: var(--border-color);
    color: var(--text-primary);
    box-shadow: var(--shadow-lg);
}

[data-theme="dark"] .notification-success {
    background: var(--success-bg);
    border-left-color: var(--success-color);
}

[data-theme="dark"] .notification-error {
    background: var(--error-bg);
    border-left-color: var(--error-color);
}

[data-theme="dark"] .notification-warning {
    background: var(--warning-bg);
    border-left-color: var(--warning-color);
}

[data-theme="dark"] .notification-info {
    background: var(--info-bg);
    border-left-color: var(--info-color, #60a5fa);
}

/* ========== ALERTS ========== */
[data-theme="dark"] .alert {
    border-color: var(--border-color);
}

[data-theme="dark"] .alert-success {
    background: var(--success-bg);
    color: var(--success-color);
    border-color: var(--success-color);
}

[data-theme="dark"] .alert-error,
[data-theme="dark"] .alert-danger {
    background: var(--error-bg);
    color: var(--error-color);
    border-color: var(--error-color);
}

[data-theme="dark"] .alert-warning {
    background: var(--warning-bg);
    color: var(--warning-color);
    border-color: var(--warning-color);
}

[data-theme="dark"] .alert-info {
    background: var(--info-bg);
    color: var(--info-color, #60a5fa);
    border-color: var(--info-color, #60a5fa);
}

/* ========== TABLES ========== */
[data-theme="dark"] table {
    border-color: var(--border-color);
}

[data-theme="dark"] th {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] td {
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] tr:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] tr:nth-child(even) {
    background: var(--bg-tertiary, #272729);
}

/* ========== CODE BLOCKS ========== */
[data-theme="dark"] code {
    background: var(--code-bg, #272729);
    color: var(--text-primary);
    border-color: var(--code-border, #3a3b3c);
}

[data-theme="dark"] pre {
    background: var(--code-bg, #272729);
    border-color: var(--code-border, #3a3b3c);
}

[data-theme="dark"] .code-block {
    background: var(--code-bg, #272729);
}

/* ========== BLOCKQUOTES ========== */
[data-theme="dark"] blockquote {
    background: var(--bg-tertiary, #272729);
    border-left-color: var(--border-color);
    color: var(--text-secondary);
}

/* ========== LOADING & SKELETONS ========== */
[data-theme="dark"] .skeleton,
[data-theme="dark"] .loading-skeleton {
    background: linear-gradient(90deg, 
        var(--bg-tertiary, #272729) 25%, 
        var(--hover-bg, #2a2a2b) 50%, 
        var(--bg-tertiary, #272729) 75%
    );
}

[data-theme="dark"] .spinner {
    border-color: var(--border-color);
    border-top-color: var(--primary-color);
}

/* ========== PROFILE ========== */
[data-theme="dark"] .profile-card,
[data-theme="dark"] .user-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .profile-header {
    background: var(--bg-tertiary, #272729);
}

[data-theme="dark"] .profile-name,
[data-theme="dark"] .username {
    color: var(--text-primary);
}

[data-theme="dark"] .profile-bio,
[data-theme="dark"] .user-bio {
    color: var(--text-secondary);
}

[data-theme="dark"] .profile-stats {
    color: var(--text-secondary);
}

[data-theme="dark"] .profile-stat-value {
    color: var(--text-primary);
}

/* ========== SETTINGS ========== */
[data-theme="dark"] .settings-nav,
[data-theme="dark"] .settings-sidebar {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .settings-nav-item {
    color: var(--text-primary);
}

[data-theme="dark"] .settings-nav-item:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .settings-nav-item.active {
    background: var(--active-bg, #343536);
    color: var(--primary-color);
}

[data-theme="dark"] .settings-section {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .settings-section-title {
    color: var(--text-primary);
}

[data-theme="dark"] .setting-item {
    border-color: var(--border-color);
}

[data-theme="dark"] .setting-label {
    color: var(--text-primary);
}

[data-theme="dark"] .setting-description {
    color: var(--text-secondary);
}

/* ========== CIRCLES ========== */
[data-theme="dark"] .circle-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .circle-card:hover {
    background: var(--card-hover-bg, #232325);
}

[data-theme="dark"] .circle-header {
    background: var(--bg-tertiary, #272729);
}

[data-theme="dark"] .circle-title {
    color: var(--text-primary);
}

[data-theme="dark"] .circle-description {
    color: var(--text-secondary);
}

[data-theme="dark"] .circle-stats {
    color: var(--text-secondary);
}

[data-theme="dark"] .circle-rules {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
}

/* ========== MESSAGES ========== */
[data-theme="dark"] .message-list,
[data-theme="dark"] .conversation-list {
    background: var(--bg-primary);
}

[data-theme="dark"] .message-item,
[data-theme="dark"] .conversation-item {
    border-color: var(--border-color);
}

[data-theme="dark"] .message-content {
    color: var(--text-primary);
}

[data-theme="dark"] .message-time {
    color: var(--text-secondary);
}

[data-theme="dark"] .message-bubble {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary);
}

[data-theme="dark"] .message-bubble.sent {
    background: var(--primary-color);
    color: #ffffff;
}

/* ========== EDITOR ========== */
[data-theme="dark"] .editor,
[data-theme="dark"] .rich-editor {
    background: var(--input-bg, #272729);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .editor-toolbar {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
}

[data-theme="dark"] .editor-toolbar button {
    color: var(--text-secondary);
}

[data-theme="dark"] .editor-toolbar button:hover {
    background: var(--hover-bg);
    color: var(--text-primary);
}

[data-theme="dark"] .editor-toolbar button.active {
    background: var(--active-bg, #343536);
    color: var(--primary-color);
}

/* ========== TOGGLES & SWITCHES ========== */
[data-theme="dark"] .toggle,
[data-theme="dark"] .switch {
    background: var(--bg-tertiary, #272729);
}

[data-theme="dark"] .toggle.active,
[data-theme="dark"] .switch.active {
    background: var(--primary-color);
}

[data-theme="dark"] .toggle-slider {
    background: var(--text-secondary);
}

/* ========== CHECKBOXES & RADIOS ========== */
[data-theme="dark"] input[type="checkbox"],
[data-theme="dark"] input[type="radio"] {
    accent-color: var(--primary-color);
}

[data-theme="dark"] .checkbox-label,
[data-theme="dark"] .radio-label {
    color: var(--text-primary);
}

/* ========== PAGINATION ========== */
[data-theme="dark"] .pagination {
    background: var(--bg-primary);
}

[data-theme="dark"] .pagination-item {
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .pagination-item:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .pagination-item.active {
    background: var(--primary-color);
    color: #ffffff;
}

/* ========== BREADCRUMBS ========== */
[data-theme="dark"] .breadcrumb {
    color: var(--text-secondary);
}

[data-theme="dark"] .breadcrumb a {
    color: var(--text-primary);
}

[data-theme="dark"] .breadcrumb a:hover {
    color: var(--primary-color);
}

[data-theme="dark"] .breadcrumb-separator {
    color: var(--text-muted);
}

/* ========== TOOLTIPS ========== */
[data-theme="dark"] .tooltip {
    background: var(--bg-elevated, #2d2d2f);
    color: var(--text-primary);
    border-color: var(--border-color);
    box-shadow: var(--shadow-md);
}

/* ========== PROGRESS BARS ========== */
[data-theme="dark"] .progress {
    background: var(--bg-tertiary, #272729);
}

[data-theme="dark"] .progress-bar {
    background: var(--primary-color);
}

/* ========== EMPTY STATES ========== */
[data-theme="dark"] .empty-state {
    color: var(--text-secondary);
}

[data-theme="dark"] .empty-state-icon {
    color: var(--text-muted);
}

[data-theme="dark"] .empty-state-title {
    color: var(--text-primary);
}

/* ========== SCROLLBARS (for browsers that support it) ========== */
[data-theme="dark"] ::-webkit-scrollbar {
    background: var(--scrollbar-bg, #2a2a2b);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb, #4a4a4b);
    border-radius: 4px;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #5a5a5b;
}

/* ========== SELECTION ========== */
[data-theme="dark"] ::selection {
    background: rgba(96, 165, 250, 0.3);
    color: var(--text-primary);
}

/* ========== HARDCODED COLOR OVERRIDES ========== */
/* These override specific hardcoded colors found in the codebase */

/* Gray backgrounds */
[data-theme="dark"] .bg-gray,
[data-theme="dark"] [style*="background: #f6f7f8"],
[data-theme="dark"] [style*="background-color: #f6f7f8"],
[data-theme="dark"] [style*="background: #f7fafc"],
[data-theme="dark"] [style*="background-color: #f7fafc"],
[data-theme="dark"] [style*="background: #f1f5f9"],
[data-theme="dark"] [style*="background-color: #f1f5f9"] {
    background: var(--bg-tertiary, #272729) !important;
}

/* Borders */
[data-theme="dark"] [style*="border: 1px solid #e2e8f0"],
[data-theme="dark"] [style*="border-color: #e2e8f0"] {
    border-color: var(--border-color) !important;
}

/* Gray text colors */
[data-theme="dark"] [style*="color: #64748b"],
[data-theme="dark"] [style*="color: #7c8591"],
[data-theme="dark"] [style*="color: #4a5568"] {
    color: var(--text-secondary) !important;
}

/* Dark text colors */
[data-theme="dark"] [style*="color: #0f172a"],
[data-theme="dark"] [style*="color: #1e293b"],
[data-theme="dark"] [style*="color: #1c1c1c"] {
    color: var(--text-primary) !important;
}

/* ========== SPECIFIC COMPONENT FIXES ========== */

/* Thread awards */
[data-theme="dark"] .thread-awards .thread-award-badge {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
}

/* Vote colors (keep original for brand consistency) */
[data-theme="dark"] .upvote-color,
[data-theme="dark"] .upvoted {
    color: #ff4500 !important;
}

[data-theme="dark"] .downvote-color,
[data-theme="dark"] .downvoted {
    color: #7193ff !important;
}

/* Status badges */
[data-theme="dark"] .status-open {
    background: rgba(3, 105, 161, 0.2);
    color: #38bdf8;
}

[data-theme="dark"] .status-in_progress {
    background: rgba(146, 64, 14, 0.2);
    color: #fbbf24;
}

[data-theme="dark"] .status-closed {
    background: rgba(55, 65, 81, 0.3);
    color: #9ca3af;
}

/* Image/Media containers */
[data-theme="dark"] .thread-media,
[data-theme="dark"] .media-container {
    border-radius: 15px;
    background: var(--bg-tertiary, #272729);
}

/* Lightbox/Image viewer */
[data-theme="dark"] .lightbox,
[data-theme="dark"] .image-viewer {
    background: rgba(0, 0, 0, 0.95);
}

/* Create thread/post form */
[data-theme="dark"] .create-thread-form,
[data-theme="dark"] .create-post-form,
[data-theme="dark"] .submit-form {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

/* Mod tools */
[data-theme="dark"] .mod-actions,
[data-theme="dark"] .mod-panel {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

/* Admin panel */
[data-theme="dark"] .admin-panel,
[data-theme="dark"] .admin-sidebar {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

/* Auth forms */
[data-theme="dark"] .auth-form,
[data-theme="dark"] .login-form,
[data-theme="dark"] .register-form {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .auth-container {
    background: var(--bg-secondary);
}

/* Footer */
[data-theme="dark"] .footer {
    background: var(--bg-primary);
    border-top-color: var(--border-color);
    color: var(--text-secondary);
}

/* Cookie banner */
[data-theme="dark"] .cookie-banner {
    background: var(--bg-primary);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg);
}

/* ========== ICONS & SVG ========== */
[data-theme="dark"] .icon,
[data-theme="dark"] svg:not(.brand-icon) {
    color: inherit;
}

[data-theme="dark"] .icon-muted {
    color: var(--text-muted);
}

/* ========== MOBILE SPECIFIC ========== */
[data-theme="dark"] .mobile-nav,
[data-theme="dark"] .bottom-nav {
    background: var(--bg-primary);
    border-top-color: var(--border-color);
}

[data-theme="dark"] .mobile-menu {
    background: var(--bg-primary);
}

[data-theme="dark"] .mobile-menu-overlay {
    background: var(--overlay-bg, rgba(0, 0, 0, 0.75));
}

/* ========== MOBILE SIDEBAR FOOTER ========== */
[data-theme="dark"] .mobile-footer-section {
    border-top-color: var(--border-color);
}

[data-theme="dark"] .mobile-footer-link {
    color: var(--text-secondary);
}

[data-theme="dark"] .mobile-footer-link:hover {
    color: var(--text-primary);
}

[data-theme="dark"] .mobile-footer-icon {
    stroke: var(--text-secondary);
}

[data-theme="dark"] .mobile-footer-separator {
    color: var(--text-muted);
}

[data-theme="dark"] .mobile-footer-copyright {
    border-top-color: var(--border-color);
}

[data-theme="dark"] .mobile-footer-copyright p {
    color: var(--text-muted);
}

/* ========== FOCUS STATES ========== */
[data-theme="dark"] *:focus-visible {
    outline-color: var(--primary-color);
    outline-offset: 2px;
}

[data-theme="dark"] button:focus-visible,
[data-theme="dark"] a:focus-visible {
    box-shadow: 0 0 0 2px var(--focus-ring, rgba(96, 165, 250, 0.5));
}

/* ========== HR / DIVIDERS ========== */
[data-theme="dark"] hr,
[data-theme="dark"] .divider {
    border-color: var(--border-color);
    background: var(--border-color);
}

/* ========== CONFIRM DIALOGS ========== */
[data-theme="dark"] .confirm-dialog,
[data-theme="dark"] .alert-dialog {
    background: var(--modal-bg, #1a1a1b);
    border-color: var(--border-color);
}

/* ========== FLAIR/USER FLAIR ========== */
[data-theme="dark"] .user-flair {
    background: var(--bg-tertiary, #272729);
    color: var(--text-secondary);
}

/* ========== AWARDS ========== */
[data-theme="dark"] .award-modal,
[data-theme="dark"] .awards-panel {
    background: var(--modal-bg, #1a1a1b);
}

[data-theme="dark"] .award-item {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
}

[data-theme="dark"] .award-item:hover {
    background: var(--hover-bg);
}

/* ========== MARKDOWN CONTENT ========== */
[data-theme="dark"] .markdown-content h1,
[data-theme="dark"] .markdown-content h2,
[data-theme="dark"] .markdown-content h3,
[data-theme="dark"] .markdown-content h4,
[data-theme="dark"] .markdown-content h5,
[data-theme="dark"] .markdown-content h6 {
    color: var(--text-primary);
}

[data-theme="dark"] .markdown-content p,
[data-theme="dark"] .markdown-content li {
    color: var(--text-primary);
}

[data-theme="dark"] .markdown-content a {
    color: var(--text-link, #60a5fa);
}

[data-theme="dark"] .markdown-content img {
    border-color: var(--border-color);
}

/* ========== SPOILER TAGS ========== */
[data-theme="dark"] .spoiler {
    background: var(--bg-tertiary, #272729);
    color: transparent;
}

[data-theme="dark"] .spoiler.revealed,
[data-theme="dark"] .spoiler:hover {
    color: var(--text-primary);
}

/* ========== INLINE LINKS IN TEXT ========== */
[data-theme="dark"] p a,
[data-theme="dark"] .text-content a {
    color: var(--text-link, #60a5fa);
}

[data-theme="dark"] p a:hover,
[data-theme="dark"] .text-content a:hover {
    text-decoration: underline;
}

/* ========== AI CHATBOX ========== */
[data-theme="dark"] .ai-chatbox,
[data-theme="dark"] .ai-chatbox-wrapper {
    background: var(--bg-primary);
}

[data-theme="dark"] .ai-chatbox__messages {
    background: var(--bg-secondary);
}

[data-theme="dark"] .ai-message--ai .ai-message__text {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .ai-chatbox__input-area {
    background: var(--bg-primary);
    border-top-color: var(--border-color);
}

[data-theme="dark"] .ai-chatbox__input {
    background: var(--input-bg, #272729);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .ai-chatbox__input::placeholder {
    color: var(--text-muted, #6b6d6e);
}

/* ========== ANALYTICS ========== */
[data-theme="dark"] .analytics-card,
[data-theme="dark"] .stat-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .analytics-title,
[data-theme="dark"] .stat-title {
    color: var(--text-primary);
}

[data-theme="dark"] .analytics-value,
[data-theme="dark"] .stat-value {
    color: var(--text-primary);
}

[data-theme="dark"] .analytics-label,
[data-theme="dark"] .stat-label {
    color: var(--text-secondary);
}

/* ========== AUTOMOD ========== */
[data-theme="dark"] .automod-rule,
[data-theme="dark"] .automod-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .automod-rule-header {
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .automod-rule-name {
    color: var(--text-primary);
}

/* ========== AWARDS HUB ========== */
[data-theme="dark"] .award-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .award-card:hover {
    background: var(--card-hover-bg, #232325);
}

[data-theme="dark"] .award-name {
    color: var(--text-primary);
}

[data-theme="dark"] .award-description {
    color: var(--text-secondary);
}

[data-theme="dark"] .award-cost {
    color: var(--warning-color, #fbbf24);
}

/* ========== COOKIE BANNER ========== */
[data-theme="dark"] .cookie-consent-banner {
    background: var(--bg-primary);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg);
}

[data-theme="dark"] .cookie-consent-text {
    color: var(--text-primary);
}

/* ========== CREATE THREAD ========== */
[data-theme="dark"] .create-thread-container,
[data-theme="dark"] .create-post-container {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .create-thread-header {
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .create-thread-title {
    color: var(--text-primary);
}

[data-theme="dark"] .post-type-btn {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .post-type-btn:hover,
[data-theme="dark"] .post-type-btn.active {
    background: var(--hover-bg);
    border-color: var(--primary-color);
}

/* ========== CROSSPOST ========== */
[data-theme="dark"] .crosspost-modal {
    background: var(--modal-bg, #1a1a1b);
}

[data-theme="dark"] .crosspost-preview-content {
    background: var(--bg-tertiary, #272729);
}

[data-theme="dark"] .crosspost-option {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
}

[data-theme="dark"] .crosspost-option:hover {
    background: var(--hover-bg);
}

/* ========== MARKDOWN ========== */
[data-theme="dark"] .markdown-body {
    color: var(--text-primary);
}

[data-theme="dark"] .markdown-body pre {
    background: var(--code-bg, #272729);
    border-color: var(--border-color);
}

[data-theme="dark"] .markdown-body code {
    background: var(--code-bg, #272729);
    color: var(--text-primary);
}

[data-theme="dark"] .markdown-body blockquote {
    background: var(--bg-tertiary, #272729);
    border-left-color: var(--border-color);
    color: var(--text-secondary);
}

[data-theme="dark"] .markdown-body table {
    border-color: var(--border-color);
}

[data-theme="dark"] .markdown-body th {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
}

[data-theme="dark"] .markdown-body td {
    border-color: var(--border-color);
}

/* ========== MOD TOOLS ========== */
[data-theme="dark"] .mod-tools-panel,
[data-theme="dark"] .mod-queue-item {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .mod-tools-header {
    background: var(--bg-primary);
    border: var(--border-color);
}

[data-theme="dark"] .mod-action-btn {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .mod-action-btn:hover {
    background: var(--hover-bg);
}

/* ========== NOTIFICATIONS ========== */
[data-theme="dark"] .notification-item {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .notification-item:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .notification-item.unread {
    background: var(--bg-tertiary, #272729);
}

[data-theme="dark"] .notification-text {
    color: var(--text-primary);
}

[data-theme="dark"] .notification-time {
    color: var(--text-secondary);
}

/* ========== PAYMENT ========== */
[data-theme="dark"] .payment-card,
[data-theme="dark"] .payment-method {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .payment-amount {
    color: var(--text-primary);
}

/* ========== POLICY PAGES ========== */
[data-theme="dark"] .policy-content,
[data-theme="dark"] .policy-container {
    background: var(--bg-primary);
    color: var(--text-primary);
}

[data-theme="dark"] .policy-content h1,
[data-theme="dark"] .policy-content h2,
[data-theme="dark"] .policy-content h3 {
    color: var(--text-primary);
}

/* ========== PROMOTIONS ========== */
[data-theme="dark"] .promotion-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .promoted-badge {
    background: var(--warning-bg);
    color: var(--warning-color);
}

/* ========== SAVED ITEMS ========== */
[data-theme="dark"] .saved-item {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .saved-item:hover {
    background: var(--hover-bg);
}

/* ========== SEARCH ========== */
[data-theme="dark"] .search-results-container {
    background: var(--bg-primary);
}

[data-theme="dark"] .search-result-item {
    border-color: var(--border-color);
}

[data-theme="dark"] .search-result-item:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .search-filter {
    background: var(--bg-tertiary, #272729);
    border-color: var(--border-color);
}

/* ========== THREAD DETAIL ========== */
[data-theme="dark"] .thread-detail-container,
[data-theme="dark"] .thread-detail-page {
    background: var(--bg-primary);
}

[data-theme="dark"] .thread-detail-header {
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .thread-detail-title {
    color: var(--text-primary);
}

[data-theme="dark"] .thread-detail-body {
    color: var(--text-primary);
}

/* ========== WALLET ========== */
[data-theme="dark"] .wallet-card,
[data-theme="dark"] .wallet-balance-card {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .wallet-balance {
    color: var(--text-primary);
}

[data-theme="dark"] .wallet-label {
    color: var(--text-secondary);
}

[data-theme="dark"] .transaction-item {
    border-color: var(--border-color);
}

[data-theme="dark"] .transaction-item:hover {
    background: var(--hover-bg);
}

/* ========== RESPONSIVE COMPONENTS ========== */
[data-theme="dark"] .responsive-menu,
[data-theme="dark"] .mobile-dropdown {
    background: var(--bg-primary);
    border-color: var(--border-color);
}

/* ========== SOCIAL SHARE ========== */
[data-theme="dark"] .share-modal,
[data-theme="dark"] .share-options {
    background: var(--modal-bg, #1a1a1b);
}

[data-theme="dark"] .share-option {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary);
}

[data-theme="dark"] .share-option:hover {
    background: var(--hover-bg);
}

/* ========== FLOATING ACTION BUTTONS ========== */
[data-theme="dark"] .fab,
[data-theme="dark"] .floating-btn {
    background: var(--primary-color);
    color: #ffffff;
    box-shadow: var(--shadow-md);
}

/* ========== CHIP/PILL BUTTONS ========== */
[data-theme="dark"] .chip,
[data-theme="dark"] .pill {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .chip:hover,
[data-theme="dark"] .pill:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .chip.active,
[data-theme="dark"] .pill.active {
    background: var(--primary-color);
    color: #ffffff;
}

/* ========== SNACKBARS ========== */
[data-theme="dark"] .snackbar {
    background: var(--bg-elevated, #2d2d2f);
    color: var(--text-primary);
    box-shadow: var(--shadow-lg);
}

/* ========== ACCORDIONS ========== */
[data-theme="dark"] .accordion {
    border-color: var(--border-color);
}

[data-theme="dark"] .accordion-header {
    background: var(--bg-primary);
    color: var(--text-primary);
}

[data-theme="dark"] .accordion-header:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .accordion-content {
    background: var(--bg-primary);
    border-top-color: var(--border-color);
}

/* ========== LIST ITEMS ========== */
[data-theme="dark"] .list-item {
    border-color: var(--border-color);
}

[data-theme="dark"] .list-item:hover {
    background: var(--hover-bg);
}

[data-theme="dark"] .list-item-title {
    color: var(--text-primary);
}

[data-theme="dark"] .list-item-subtitle {
    color: var(--text-secondary);
}

/* ========== AVATAR PLACEHOLDER ========== */
[data-theme="dark"] .avatar-placeholder,
[data-theme="dark"] .user-avatar-placeholder {
    background: var(--bg-tertiary, #272729);
    color: var(--text-secondary);
}

/* ========== ICON BUTTONS ========== */
[data-theme="dark"] .icon-btn {
    color: var(--text-secondary);
}

[data-theme="dark"] .icon-btn:hover {
    background: var(--hover-bg);
    color: var(--text-primary);
}

/* ========== IMAGES WITH BORDERS ========== */
[data-theme="dark"] img.bordered,
[data-theme="dark"] .img-bordered {
    border-color: var(--border-color);
}

/* ========== CAPTIONS ========== */
[data-theme="dark"] .caption,
[data-theme="dark"] figcaption {
    color: var(--text-secondary);
}

/* ========== DATA ATTRIBUTES OVERRIDES ========== */
/* Force colors for any inline styles that use light colors */
[data-theme="dark"] [style*="background-color: rgb(255"],
[data-theme="dark"] [style*="background-color: white"],
[data-theme="dark"] [style*="background: rgb(255"],
[data-theme="dark"] [style*="background: white"] {
    background-color: var(--bg-primary) !important;
}

[data-theme="dark"] [style*="color: rgb(0, 0, 0)"],
[data-theme="dark"] [style*="color: black"],
[data-theme="dark"] [style*="color: #000"] {
    color: var(--text-primary) !important;
}

/* ========== MISC UTILITY CLASSES ========== */
[data-theme="dark"] .bg-white {
    background: var(--bg-primary) !important;
}

[data-theme="dark"] .text-dark {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .text-black {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .text-gray,
[data-theme="dark"] .text-muted {
    color: var(--text-secondary) !important;
}

[data-theme="dark"] .border-gray,
[data-theme="dark"] .border-light {
    border-color: var(--border-color) !important;
}

/* ========== APP.CSS SPECIFIC OVERRIDES ========== */

/* Skeleton loading states */
[data-theme="dark"] .skeleton-box,
[data-theme="dark"] .skeleton-loading,
[data-theme="dark"] .skeleton {
    background-color: #272729 !important;
    background: linear-gradient(90deg, #272729 25%, #343536 50%, #272729 75%) !important;
}

/* Action buttons */
[data-theme="dark"] .action-btn {
    color: var(--text-secondary, #818384);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .action-btn:hover {
    background: var(--hover-bg, #2a2a2b);
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .action-btn span {
    color: inherit;
}

/* Comment actions */
[data-theme="dark"] .comment-action-btn {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .comment-action-btn:hover {
    background: var(--hover-bg, #2a2a2b);
    color: var(--text-primary, #d7dadc);
}

/* Thread card specific */
[data-theme="dark"] .thread-card {
    background: var(--bg-secondary, #030303) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .thread-card:hover {
    background: var(--card-hover-bg, #232325) !important;
}

[data-theme="dark"] .thread-title a {
    color: var(--text-primary, #d7dadc);
}

/* Flair tags */
[data-theme="dark"] .flair,
[data-theme="dark"] .thread-flair {
    background: #272729;
    color: var(--text-primary, #d7dadc);
    border-color: var(--border-color, #343536);
}

/* Sort/filter controls */
[data-theme="dark"] .sort-controls,
[data-theme="dark"] .filter-controls {
    background: var(--bg-primary, #1a1a1b);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .sort-btn,
[data-theme="dark"] .filter-btn {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .sort-btn:hover,
[data-theme="dark"] .filter-btn:hover,
[data-theme="dark"] .sort-btn.active,
[data-theme="dark"] .filter-btn.active {
    background: var(--hover-bg, #2a2a2b);
    color: var(--text-primary, #d7dadc);
}

/* Comment tree lines */
[data-theme="dark"] .comment-line,
[data-theme="dark"] .thread-line,
[data-theme="dark"] .reply-line {
    background: var(--border-color, #343536) !important;
}

/* Input fields with hardcoded backgrounds */
[data-theme="dark"] .reply-input,
[data-theme="dark"] .comment-input,
[data-theme="dark"] .search-input {
    background: var(--input-bg, #272729) !important;
    border-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc) !important;
}

/* Dropdown menus */
[data-theme="dark"] .dropdown-content,
[data-theme="dark"] .action-dropdown,
[data-theme="dark"] .context-menu {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
}

[data-theme="dark"] .dropdown-content a,
[data-theme="dark"] .dropdown-item,
[data-theme="dark"] .menu-item {
    color: var(--text-primary, #d7dadc) !important;
}

[data-theme="dark"] .dropdown-content a:hover,
[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .menu-item:hover {
    background: var(--hover-bg, #2a2a2b) !important;
}

/* Modal backgrounds */
[data-theme="dark"] .modal-content,
[data-theme="dark"] .modal-dialog,
[data-theme="dark"] .dialog-content {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .modal-header,
[data-theme="dark"] .dialog-header {
    border-bottom-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .modal-footer,
[data-theme="dark"] .dialog-footer {
    border-top-color: var(--border-color, #343536) !important;
}

/* Comments */
[data-theme="dark"] .comment {
    background: transparent;
}

[data-theme="dark"] .comment-content {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .comment-author {
    color: var(--text-primary, #d7dadc) !important;
}

[data-theme="dark"] .comment-time {
    color: var(--text-secondary, #818384) !important;
}

[data-theme="dark"] .comment-body {
    color: var(--text-primary, #d7dadc);
}

/* Form elements */
[data-theme="dark"] .form-control,
[data-theme="dark"] .input-field {
    background: var(--input-bg, #272729) !important;
    border-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc) !important;
}

[data-theme="dark"] .form-label,
[data-theme="dark"] label {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .form-text,
[data-theme="dark"] .help-text {
    color: var(--text-secondary, #818384);
}

/* Textarea */
[data-theme="dark"] textarea {
    background: var(--input-bg, #272729) !important;
    border-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc) !important;
}

/* Select */
[data-theme="dark"] select {
    background: var(--input-bg, #272729) !important;
    border-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc) !important;
}

/* Tabs */
[data-theme="dark"] .tab-bar,
[data-theme="dark"] .tabs-container {
    background: var(--bg-primary, #1a1a1b);
    border-bottom-color: var(--border-color, #343536);
}

[data-theme="dark"] .tab-item,
[data-theme="dark"] .tab-link {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .tab-item:hover,
[data-theme="dark"] .tab-link:hover {
    color: var(--text-primary, #d7dadc);
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .tab-item.active,
[data-theme="dark"] .tab-link.active {
    color: var(--primary-color, #60a5fa);
    border-bottom-color: var(--primary-color, #60a5fa);
}

/* User dropdown/menu */
[data-theme="dark"] .user-dropdown,
[data-theme="dark"] .user-menu {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .user-dropdown-item,
[data-theme="dark"] .user-menu-item {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .user-dropdown-item:hover,
[data-theme="dark"] .user-menu-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

/* Notification dropdown */
[data-theme="dark"] .notification-dropdown,
[data-theme="dark"] .notifications-popup {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .notification-item {
    border-bottom-color: var(--border-color, #343536);
}

[data-theme="dark"] .notification-text {
    color: var(--text-primary, #d7dadc);
}

/* Loading indicators */
[data-theme="dark"] .loading,
[data-theme="dark"] .loader {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .loading-spinner,
[data-theme="dark"] .spinner {
    border-color: var(--border-color, #343536);
    border-top-color: var(--primary-color, #60a5fa);
}

/* Empty state */
[data-theme="dark"] .empty-state {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .empty-state h3,
[data-theme="dark"] .empty-state-title {
    color: var(--text-primary, #d7dadc);
}

/* Tooltip */
[data-theme="dark"] .tooltip,
[data-theme="dark"] [data-tooltip]::after {
    background: #272729 !important;
    color: var(--text-primary, #d7dadc) !important;
    border-color: var(--border-color, #343536) !important;
}

/* Post form/Create thread */
[data-theme="dark"] .create-post,
[data-theme="dark"] .post-form {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .post-type-tab {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .post-type-tab:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .post-type-tab.active {
    color: var(--primary-color, #60a5fa);
    border-bottom-color: var(--primary-color, #60a5fa);
}

/* Community/Circle info box */
[data-theme="dark"] .community-info,
[data-theme="dark"] .circle-info-box {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .community-name,
[data-theme="dark"] .circle-name {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .community-stats,
[data-theme="dark"] .circle-stats {
    color: var(--text-secondary, #818384);
}

/* Profile page */
[data-theme="dark"] .profile-header {
    background: var(--bg-tertiary, #272729) !important;
}

[data-theme="dark"] .profile-username {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .profile-karma,
[data-theme="dark"] .profile-stats {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .profile-bio {
    color: var(--text-primary, #d7dadc);
}

/* Badges */
[data-theme="dark"] .badge {
    background: #272729;
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .badge-primary {
    background: var(--primary-color, #60a5fa);
    color: #ffffff;
}

/* Pagination */
[data-theme="dark"] .pagination a {
    color: var(--text-primary, #d7dadc);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .pagination a:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .pagination .active {
    background: var(--primary-color, #60a5fa);
    color: #ffffff;
}

/* Breadcrumbs */
[data-theme="dark"] .breadcrumb {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .breadcrumb a {
    color: var(--text-primary, #d7dadc);
}

/* Card generic */
[data-theme="dark"] .card {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .card-header {
    background: var(--bg-tertiary, #272729) !important;
    border-bottom-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .card-footer {
    background: var(--bg-tertiary, #272729) !important;
    border-top-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .card-title {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .card-text {
    color: var(--text-secondary, #818384);
}

/* Confirm dialog */
[data-theme="dark"] .confirm-overlay {
    background: rgba(0, 0, 0, 0.8) !important;
}

[data-theme="dark"] .confirm-dialog {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .confirm-title {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .confirm-message {
    color: var(--text-secondary, #818384);
}

/* Toast notifications */
[data-theme="dark"] .toast,
[data-theme="dark"] .notification-toast {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

/* Header icons specifically */
[data-theme="dark"] .header-icons img,
[data-theme="dark"] .header-actions img,
[data-theme="dark"] .desktop-header-right img {
    filter: invert(0.8) brightness(1.2);
}

/* Don't invert user avatar in header */
[data-theme="dark"] .user-avatar-btn img,
[data-theme="dark"] .header-avatar,
[data-theme="dark"] .desktop-header-right .avatar {
    filter: none !important;
}

/* Main content area */
[data-theme="dark"] .main-content,
[data-theme="dark"] .content-area,
[data-theme="dark"] main {
    background: var(--bg-secondary, #030303);
}

/* Horizontal rules and dividers */
[data-theme="dark"] hr {
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .divider {
    background: var(--border-color, #343536);
}

/* ========== THREAD DETAIL PAGE ========== */
[data-theme="dark"] .thread-detail {
    background: var(--bg-primary, #1a1a1b);
    border-radius: 12px;
}

[data-theme="dark"] .thread-detail-content {
    background: var(--bg-primary, #1a1a1b);
}

[data-theme="dark"] .thread-detail-title {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .thread-detail-body {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .thread-detail-meta {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .comment-sort-btn {
    background-color: var(--bg-tertiary, #272729) !important;
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .comment-sort-btn:hover {
    background-color: var(--hover-bg, #2a2a2b) !important;
}

/* ========== PROFILE PAGE ========== */
[data-theme="dark"] .profile-container {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .profile-card {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .profile-avatar-placeholder {
    background: var(--bg-tertiary, #272729) !important;
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .profile-tab {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .profile-tab:hover {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .profile-tab.active {
    color: var(--primary-color, #60a5fa);
    border-bottom-color: var(--primary-color, #60a5fa);
}

[data-theme="dark"] .user-stat {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .user-stat-value {
    color: var(--text-primary, #d7dadc);
}

/* ========== CIRCLE PAGE ========== */
[data-theme="dark"] .circle-page {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .circle-about {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .circle-rules-section {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .rule-item {
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .rule-title {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .rule-description {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .moderators-section {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .moderator-item {
    color: var(--text-primary, #d7dadc);
}

/* ========== SETTINGS PAGE ========== */
[data-theme="dark"] .settings-container {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .settings-nav {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .settings-nav-item {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .settings-nav-item:hover {
    background: var(--hover-bg, #2a2a2b);
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .settings-nav-item.active {
    background: var(--primary-color, #60a5fa);
    color: #ffffff;
}

[data-theme="dark"] .settings-section {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .settings-section-title {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .setting-item {
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .setting-label {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .setting-description {
    color: var(--text-secondary, #818384);
}

/* Settings nav icons */
[data-theme="dark"] .settings-nav-item img {
    filter: invert(0.7) brightness(1.2);
}

[data-theme="dark"] .settings-nav-item.active img {
    filter: invert(1) brightness(2);
}

/* ========== MESSAGES PAGE ========== */
[data-theme="dark"] .messages-container {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .conversations-list {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .conversation-item {
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .conversation-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .conversation-item.active {
    background: var(--active-bg, #343536);
}

[data-theme="dark"] .conversation-username {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .conversation-preview {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .message-thread {
    background: var(--bg-primary, #1a1a1b);
}

[data-theme="dark"] .message-item {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .message-item.sent {
    background: var(--primary-color, #60a5fa);
    color: #ffffff;
}

/* ========== SEARCH PAGE ========== */
[data-theme="dark"] .search-page {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .search-filters {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .search-filter-btn {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary, #d7dadc);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .search-filter-btn:hover,
[data-theme="dark"] .search-filter-btn.active {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .search-result {
    background: var(--bg-primary, #1a1a1b);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .search-result:hover {
    background: var(--card-hover-bg, #232325);
}

/* ========== NOTIFICATIONS PAGE ========== */
[data-theme="dark"] .notifications-page {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .notification-list {
    background: var(--bg-primary, #1a1a1b);
}

[data-theme="dark"] .notification-item {
    background: var(--bg-primary, #1a1a1b);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .notification-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .notification-item.unread {
    background: var(--bg-tertiary, #272729);
}

/* ========== AUTH PAGES (LOGIN/REGISTER) ========== */
[data-theme="dark"] .auth-page,
[data-theme="dark"] .auth-container {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .auth-card,
[data-theme="dark"] .auth-form {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .auth-title {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .auth-subtitle {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .auth-link {
    color: var(--primary-color, #60a5fa);
}

/* ========== CREATE THREAD PAGE ========== */
[data-theme="dark"] .create-thread-page {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .create-thread-form {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .circle-selector {
    background: var(--input-bg, #272729) !important;
    border-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .circle-selector-dropdown {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .circle-selector-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

/* Custom Circle Dropdown - Dark Mode */
[data-theme="dark"] .circle-dropdown-trigger {
    background: var(--input-bg, #272729);
    border-color: var(--border-color, #343536);
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .circle-dropdown-trigger:hover {
    border-color: var(--text-secondary);
}

[data-theme="dark"] .circle-dropdown-trigger.open {
    border-color: var(--primary-color);
}

[data-theme="dark"] .circle-dropdown-menu {
    background: var(--bg-primary, #1a1a1b);
    border-color: var(--primary-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .circle-dropdown-item:hover {
    background: var(--hover-bg, #2a2a2b);
}

[data-theme="dark"] .circle-dropdown-item.selected {
    background: rgba(96, 165, 250, 0.15);
}

[data-theme="dark"] .circle-dropdown-item-icon {
    background-color: var(--bg-tertiary, #272729);
}

[data-theme="dark"] .post-type-btn {
    background: var(--bg-tertiary, #272729) !important;
    border-color: var(--border-color, #343536) !important;
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .post-type-btn:hover,
[data-theme="dark"] .post-type-btn.active {
    background: var(--hover-bg, #2a2a2b) !important;
    border-color: var(--primary-color, #60a5fa) !important;
}

/* Post type button icons */
[data-theme="dark"] .post-type-btn img {
    filter: invert(0.8) brightness(1.2);
}

/* ========== MOD QUEUE PAGE ========== */
[data-theme="dark"] .mod-queue {
    background: var(--bg-secondary, #030303);
}

[data-theme="dark"] .mod-queue-item {
    background: var(--bg-primary, #1a1a1b) !important;
    border-color: var(--border-color, #343536) !important;
}

[data-theme="dark"] .mod-queue-item:hover {
    background: var(--card-hover-bg, #232325);
}

[data-theme="dark"] .mod-action-btn {
    background: var(--bg-tertiary, #272729);
    color: var(--text-primary, #d7dadc);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .mod-action-btn:hover {
    background: var(--hover-bg, #2a2a2b);
}

/* ========== FOOTER ========== */
[data-theme="dark"] .footer,
[data-theme="dark"] footer {
    background: var(--bg-primary, #1a1a1b) !important;
    border-top-color: var(--border-color, #343536) !important;
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .footer a,
[data-theme="dark"] footer a {
    color: var(--text-secondary, #818384) !important;
}

[data-theme="dark"] .footer a:hover,
[data-theme="dark"] footer a:hover {
    color: var(--text-primary, #d7dadc) !important;
}

/* ========== THREAD META ========== */
[data-theme="dark"] .thread-meta,
[data-theme="dark"] .thread-meta a,
[data-theme="dark"] .thread-meta span,
[data-theme="dark"] .thread-author,
[data-theme="dark"] .thread-author a,
[data-theme="dark"] .thread-time,
[data-theme="dark"] .meta-separator {
    color: var(--text-secondary, #818384) !important;
}

[data-theme="dark"] .circle-name,
[data-theme="dark"] .thread-meta .circle-name,
[data-theme="dark"] a.circle-name {
    color: var(--text-primary, #d7dadc) !important;
}

/* ========== LEFT SIDEBAR CIRCLES LIST ========== */
[data-theme="dark"] .circles-list a,
[data-theme="dark"] .favorites-list a,
[data-theme="dark"] .nav-circle-item,
[data-theme="dark"] .nav-circle-item a,
[data-theme="dark"] .circle-list-item a,
[data-theme="dark"] .sidebar-circle-link,
[data-theme="dark"] .left-sidebar .nav-item a,
[data-theme="dark"] .left-sidebar a {
    color: var(--text-primary, #d7dadc) !important;
}

[data-theme="dark"] .left-sidebar a:hover,
[data-theme="dark"] .circles-list a:hover,
[data-theme="dark"] .nav-circle-item:hover {
    color: var(--text-primary, #d7dadc) !important;
    background: var(--hover-bg, #2a2a2b);
}

/* ========== RIGHT SIDEBAR RECENT POSTS ========== */
[data-theme="dark"] .recent-post-circle,
[data-theme="dark"] .recent-post-circle a,
[data-theme="dark"] .recent-post-header a,
[data-theme="dark"] .recent-post-link,
[data-theme="dark"] .recent-post-title {
    color: var(--text-primary, #d7dadc) !important;
}

[data-theme="dark"] .recent-post-time,
[data-theme="dark"] .recent-post-footer {
    color: var(--text-secondary, #818384) !important;
}

/* ========== EXPLORE PAGE USERS CAROUSEL ========== */
[data-theme="dark"] .explore-suggested-users {
    background: var(--bg-primary, #1a1a1b);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .explore-suggested-users .section-header h2 {
    color: var(--text-primary, #d7dadc);
}

[data-theme="dark"] .carousel-btn {
    background: var(--bg-secondary, #1a1a1b);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .carousel-btn:hover {
    background: var(--hover-bg, #2d2d2e);
}

[data-theme="dark"] .carousel-btn img {
    filter: invert(0.8) brightness(1.2);
}

[data-theme="dark"] .carousel-user-card {
    background: var(--bg-secondary, #272729);
    border-color: var(--border-color, #343536);
}

[data-theme="dark"] .carousel-user-card:hover {
    border-color: var(--primary-color, #60a5fa);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .carousel-user-avatar-placeholder {
    background: var(--primary-color, #60a5fa);
}

[data-theme="dark"] .carousel-username {
    color: var(--text-primary, #d7dadc) !important;
}

[data-theme="dark"] .carousel-username:hover {
    color: var(--primary-color, #60a5fa) !important;
}

[data-theme="dark"] .carousel-user-karma {
    color: var(--text-secondary, #818384);
}

[data-theme="dark"] .explore-follow-btn.following {
    background: var(--bg-tertiary, #343536);
    color: var(--text-secondary, #818384);
}

/* ========== EXPLORE CIRCLES AVATAR PLACEHOLDER ========== */
[data-theme="dark"] .explore-circle-left .circle-avatar-placeholder {
    background: var(--primary-color, #60a5fa);
}

/* ========== GLOBAL LINK STYLES (only for actual content links) ========== */
[data-theme="dark"] .thread-text a,
[data-theme="dark"] .comment-body a,
[data-theme="dark"] .post-content a,
[data-theme="dark"] .markdown-content a,
[data-theme="dark"] p a {
    color: var(--primary-color, #60a5fa);
}

[data-theme="dark"] .thread-text a:hover,
[data-theme="dark"] .comment-body a:hover,
[data-theme="dark"] .post-content a:hover,
[data-theme="dark"] .markdown-content a:hover,
[data-theme="dark"] p a:hover {
    color: var(--primary-color, #60a5fa);
    text-decoration: underline;
}
