/* ============================================================
   SocialX - Dark Mode Overrides
   ============================================================ */

[data-bs-theme="dark"] {
  --primary: #1d9bf0;
  --primary-hover: #3087d4;
  --danger: #f4212e;
  --success: #00ba7c;
  --warning: #ffd400;
  --dark: #e7e9ea;
  --gray-50: #080808;
  --gray-100: #16181c;
  --gray-200: #2f3336;
  --gray-300: #38444d;
  --gray-400: #4a5568;
  --gray-500: #6b7b87;
  --gray-600: #8899a6;
  --gray-700: #aab8c2;
  --gray-800: #c4cfd6;
  --gray-900: #e1e8ed;
  --border-color: #2f3336;
  --bg-color: #000000;
  --bg-secondary: #16181c;
  --text-color: #e7e9ea;
  --text-secondary: #71767b;
  --text-muted: #536471;
  --shadow-sm: 0 1px 2px rgba(255, 255, 255, 0.03);
  --shadow-md: 0 4px 12px rgba(255, 255, 255, 0.05);
  --shadow-lg: 0 8px 24px rgba(255, 255, 255, 0.08);
}

[data-bs-theme="dark"] body {
  background-color: var(--bg-color);
  color: var(--text-color);
}

/* Navbar */
[data-bs-theme="dark"] .navbar-main {
  background-color: rgba(0, 0, 0, 0.85);
  border-bottom-color: var(--border-color);
}

[data-bs-theme="dark"] .navbar-main .nav-links a:hover {
  background: var(--gray-100);
}

[data-bs-theme="dark"] .navbar-main .nav-links a.active {
  color: var(--text-color);
}

/* Left sidebar */
[data-bs-theme="dark"] .sidebar-left .nav-menu a:hover {
  background: var(--gray-100);
}

[data-bs-theme="dark"] .sidebar-left .nav-menu a.active {
  color: var(--text-color);
}

[data-bs-theme="dark"] .sidebar-left .profile-card .profile-summary:hover {
  background: var(--gray-100);
}

/* Main content */
[data-bs-theme="dark"] .main-content {
  border-left-color: var(--border-color);
  border-right-color: var(--border-color);
}

/* Right sidebar */
[data-bs-theme="dark"] .sidebar-right .widget {
  background: var(--bg-secondary);
}

[data-bs-theme="dark"] .sidebar-right .widget .trend-item:hover {
  background: var(--gray-100);
}

[data-bs-theme="dark"] .sidebar-right .widget .suggested-user:hover {
  background: var(--gray-100);
}

[data-bs-theme="dark"] .sidebar-right .widget .trend-item .trend-name {
  color: var(--text-color);
}

[data-bs-theme="dark"] .sidebar-right .widget .trend-item .trend-category,
[data-bs-theme="dark"] .sidebar-right .widget .trend-item .trend-count {
  color: var(--text-secondary);
}

/* Post cards */
[data-bs-theme="dark"] .post-card {
  border-bottom-color: var(--border-color);
}

[data-bs-theme="dark"] .post-card:hover {
  background: var(--gray-50);
}

[data-bs-theme="dark"] .post-header .post-meta .post-name {
  color: var(--text-color);
}

[data-bs-theme="dark"] .post-header .post-meta .post-username,
[data-bs-theme="dark"] .post-header .post-meta .post-time {
  color: var(--text-secondary);
}

[data-bs-theme="dark"] .post-header .post-more:hover {
  background: rgba(29, 155, 240, 0.15);
}

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

[data-bs-theme="dark"] .post-actions .action-btn.comment-btn:hover {
  background: rgba(29, 155, 240, 0.15);
}

[data-bs-theme="dark"] .post-actions .action-btn.repost-btn:hover {
  background: rgba(0, 186, 124, 0.15);
}

[data-bs-theme="dark"] .post-actions .action-btn.share-btn:hover {
  background: rgba(29, 155, 240, 0.15);
}

[data-bs-theme="dark"] .post-media .media-item .document-attachment {
  background: var(--gray-100);
  border-color: var(--border-color);
}

/* Post form */
[data-bs-theme="dark"] .post-form {
  border-bottom-color: var(--border-color);
}

[data-bs-theme="dark"] .post-form .post-form-bottom {
  border-top-color: var(--border-color);
}

[data-bs-theme="dark"] .post-form .post-form-icons .icon-btn {
  color: var(--primary);
}

[data-bs-theme="dark"] .post-form .post-form-icons .icon-btn:hover {
  background: rgba(29, 155, 240, 0.15);
}

[data-bs-theme="dark"] .post-form .post-form-input textarea {
  color: var(--text-color);
}

[data-bs-theme="dark"] .post-form .post-form-input textarea::placeholder {
  color: var(--text-secondary);
}

/* Profile */
[data-bs-theme="dark"] .profile-header .profile-cover {
  background: var(--gray-300);
}

[data-bs-theme="dark"] .profile-tabs {
  background: var(--bg-color);
  border-bottom-color: var(--border-color);
}

[data-bs-theme="dark"] .profile-tabs a:hover {
  background: var(--gray-50);
}

[data-bs-theme="dark"] .profile-tabs a.active {
  color: var(--text-color);
}

[data-bs-theme="dark"] .profile-header .profile-stats {
  border-top-color: var(--border-color);
}

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

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

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

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

/* Buttons */
[data-bs-theme="dark"] .btn-outline {
  border-color: var(--primary);
  color: var(--primary);
}

[data-bs-theme="dark"] .btn-outline:hover {
  background: rgba(29, 155, 240, 0.15);
}

[data-bs-theme="dark"] .btn-ghost:hover {
  background: var(--gray-100);
}

[data-bs-theme="dark"] .btn-follow.following {
  border-color: var(--danger);
  color: var(--danger);
}

[data-bs-theme="dark"] .btn-follow.following:hover {
  background: rgba(244, 33, 46, 0.15);
}

/* Forms */
[data-bs-theme="dark"] .form-input,
[data-bs-theme="dark"] .form-textarea,
[data-bs-theme="dark"] .form-select {
  background: var(--bg-color);
  border-color: var(--border-color);
  color: var(--text-color);
}

[data-bs-theme="dark"] .form-input:focus,
[data-bs-theme="dark"] .form-textarea:focus,
[data-bs-theme="dark"] .form-select:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(29, 155, 240, 0.25);
}

[data-bs-theme="dark"] .form-input::placeholder,
[data-bs-theme="dark"] .form-textarea::placeholder {
  color: var(--text-secondary);
}

[data-bs-theme="dark"] .form-file .file-label {
  border-color: var(--border-color);
}

[data-bs-theme="dark"] .form-file .file-label:hover {
  background: var(--gray-100);
  border-color: var(--primary);
}

[data-bs-theme="dark"] .toggle-switch .toggle-track {
  background: var(--gray-400);
}

[data-bs-theme="dark"] .search-bar input {
  background: var(--bg-secondary);
  color: var(--text-color);
}

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

[data-bs-theme="dark"] .search-bar .search-icon {
  color: var(--text-secondary);
}

/* Search results */
[data-bs-theme="dark"] .search-bar .search-results {
  background: var(--bg-color);
  border-color: var(--border-color);
}

[data-bs-theme="dark"] .search-bar .search-results .search-result-item:hover {
  background: var(--gray-50);
}

[data-bs-theme="dark"] .search-bar .search-results .search-view-all:hover {
  background: var(--gray-50);
}

[data-bs-theme="dark"] .search-filters .filter-chip {
  background: var(--gray-100);
  color: var(--text-secondary);
}

[data-bs-theme="dark"] .search-filters .filter-chip.active {
  background: rgba(29, 155, 240, 0.2);
  color: var(--primary);
}

[data-bs-theme="dark"] .search-filters .filter-chip:hover {
  background: var(--gray-200);
}

/* Modals */
[data-bs-theme="dark"] .modal-content {
  background: var(--bg-color);
}

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

[data-bs-theme="dark"] .modal-header .modal-close:hover {
  background: var(--gray-100);
}

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

/* Dropdown */
[data-bs-theme="dark"] .user-dropdown .dropdown-menu {
  background: var(--bg-color);
  border-color: var(--border-color);
}

[data-bs-theme="dark"] .user-dropdown .dropdown-menu a:hover,
[data-bs-theme="dark"] .user-dropdown .dropdown-menu button:hover {
  background: var(--gray-50);
}

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

/* Messages / Chat */
[data-bs-theme="dark"] .conversations-list {
  border-right-color: var(--border-color);
}

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

[data-bs-theme="dark"] .conversations-list .conversation-item:hover {
  background: var(--gray-50);
}

[data-bs-theme="dark"] .conversations-list .conversation-item.active {
  background: var(--gray-100);
}

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

[data-bs-theme="dark"] .chat-area .chat-messages .message-bubble.received {
  background: var(--gray-100);
  color: var(--text-color);
}

[data-bs-theme="dark"] .chat-area .chat-messages .date-separator::before,
[data-bs-theme="dark"] .chat-area .chat-messages .date-separator::after {
  background: var(--border-color);
}

[data-bs-theme="dark"] .chat-area .chat-input {
  border-top-color: var(--border-color);
}

[data-bs-theme="dark"] .chat-area .chat-input textarea {
  background: var(--bg-color);
  border-color: var(--border-color);
  color: var(--text-color);
}

[data-bs-theme="dark"] .chat-area .chat-input textarea:focus {
  border-color: var(--primary);
}

[data-bs-theme="dark"] .chat-area .chat-input .chat-attach-btn:hover {
  background: rgba(29, 155, 240, 0.15);
}

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

[data-bs-theme="dark"] .bottom-nav a {
  color: var(--text-secondary);
}

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

/* Thread line */
[data-bs-theme="dark"] .post-content .thread-line::before {
  background: var(--gray-300);
}

/* Skeleton */
[data-bs-theme="dark"] .skeleton {
  background: linear-gradient(90deg, var(--gray-100) 25%, var(--gray-200) 50%, var(--gray-100) 75%);
}

/* Animations & transitions */
[data-bs-theme="dark"] * {
  transition-property: background-color, border-color, color, box-shadow;
  transition-duration: 0.2s;
  transition-timing-function: ease;
}
