/* Dark Mode Styles */
body.dark-mode {
    background-color: #121212;
    color: #e0e0e0;
}

body.dark-mode .header {
    background-color: #1e1e1e;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

body.dark-mode .mobile-menu-toggle {
    color: #ffffff;
}

body.dark-mode .mobile-only {
    border-top-color: #333;
}

body.dark-mode .mobile-actions {
    background-color: #1a1a1a;
    border-radius: var(--radius-sm);
    padding: 10px;
}

body.dark-mode .language-switcher-mobile a {
    color: #b0b0b0;
}

body.dark-mode .language-switcher-mobile a.active {
    color: var(--color-accent);
    background-color: rgba(197, 160, 89, 0.15);
}

body.dark-mode .theme-toggle-mobile {
    border-color: #444;
    color: #e0e0e0;
}

body.dark-mode .theme-toggle-mobile:hover {
    background-color: #333;
    color: var(--color-accent);
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6 {
    color: #ffffff;
}

body.dark-mode .page-header {
    background-color: #1a1a1a;
    border-bottom: 1px solid #333;
}

body.dark-mode .page-header h1 {
    color: #ffffff;
}

body.dark-mode .page-header p {
    color: #b0b0b0;
}

body.dark-mode .value-card,
body.dark-mode .practice-card,
body.dark-mode .lawyer-card,
body.dark-mode .testimonial-card {
    background-color: #1e1e1e;
    color: #e0e0e0;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

body.dark-mode .lawyer-card {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background-color: #1e1e1e;
}

body.dark-mode .lawyer-card:hover {
    border-color: rgba(197, 160, 89, 0.5);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.4), 0 10px 10px -5px rgba(0, 0, 0, 0.2);
}

body.dark-mode .lawyer-info h3 {
    color: #ffffff;
}

body.dark-mode .lawyer-card:hover .lawyer-info h3 {
    color: var(--color-accent);
}

body.dark-mode .lawyer-title {
    border-bottom-color: rgba(197, 160, 89, 0.25);
    color: var(--color-accent);
}

body.dark-mode .lawyer-card .btn-text {
    color: #e0e0e0;
}

body.dark-mode .lawyer-card .btn-text:hover {
    color: var(--color-accent);
}

body.dark-mode .lawyer-img {
    background-color: #252525;
}

body.dark-mode .lawyer-img::after {
    background: linear-gradient(to top, rgba(30, 30, 30, 0.8) 0%, rgba(30, 30, 30, 0.1) 60%, transparent 100%);
}

body.dark-mode .value-prop,
body.dark-mode .featured-lawyers,
body.dark-mode .practice-preview {
    background-color: #0f172a;
    /* Deep blue for dark mode sections */
}

body.dark-mode .btn-outline {
    color: #e0e0e0;
    border-color: #e0e0e0;
}

body.dark-mode .btn-outline:hover {
    background-color: var(--color-primary);
    color: #ffffff;
}

body.dark-mode .footer {
    background-color: #0f0f0f;
}

body.dark-mode .main-nav a {
    color: #e0e0e0;
}

body.dark-mode .main-nav a:hover {
    color: var(--color-accent);
}

body.dark-mode .theme-toggle {
    color: #e0e0e0;
}

body.dark-mode .theme-toggle:hover {
    background-color: #2d2d2d;
}

body.dark-mode .footer-col a {
    color: rgba(255, 255, 255, 0.7);
}

body.dark-mode .footer-col a:hover {
    color: var(--color-accent);
}

body.dark-mode .contact-info p {
    opacity: 0.8;
}

body.dark-mode .practice-card p,
body.dark-mode .lawyer-expertise {
    color: #b0b0b0;
}

/* Testimonials Dark Mode */
body.dark-mode .testimonials {
    background-color: #121212;
    position: relative;
    z-index: 1;
}

body.dark-mode .testimonial-card {
    background-color: #1e1e1e;
    border: 1px solid #333;
}

body.dark-mode .testimonial-card::before {
    color: var(--color-accent);
    opacity: 0.15;
}

body.dark-mode .testimonial-author p {
    color: #b0b0b0;
}

/* About Page Styles */
body.dark-mode .stat {
    background-color: #1e1e1e;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

body.dark-mode .stat h3 {
    color: var(--color-accent);
}

body.dark-mode .stat p {
    color: #b0b0b0;
}

body.dark-mode .value-item h3 {
    color: #ffffff;
}

body.dark-mode .value-item p {
    color: #b0b0b0;
}

body.dark-mode .value-item .value-icon {
    background-color: rgba(212, 175, 55, 0.15);
    color: var(--color-accent);
}

body.dark-mode .timeline-year {
    background-color: #1e1e1e;
    color: var(--color-accent);
    border-color: var(--color-accent);
}

body.dark-mode .timeline-content {
    background-color: #1e1e1e;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
    color: #e0e0e0;
}

body.dark-mode .timeline-content h3 {
    color: #ffffff;
}

body.dark-mode .timeline-content p {
    color: #b0b0b0;
}

body.dark-mode .leader-card {
    background-color: #1e1e1e;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

body.dark-mode .leader-card p:not(.leader-bio) {
    color: var(--color-accent);
}

body.dark-mode .leader-card .leader-bio {
    color: #b0b0b0;
}

body.dark-mode .leader-card img {
    border-color: #2d2d2d;
}

/* Practice Areas Page */
body.dark-mode .practice-areas-detailed {
    background-color: #121212;
}

body.dark-mode .practice-filter {
    background-color: #1a1a1a;
    border-bottom: 1px solid #333;
}

body.dark-mode .filter-btn {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border: 1px solid #333;
}

body.dark-mode .filter-btn:hover,
body.dark-mode .filter-btn.active {
    background-color: var(--color-accent);
    color: #1a365d;
    border-color: var(--color-accent);
}

body.dark-mode .practice-area-item {
    background-color: #1e1e1e;
    border-color: #333;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4);
}

body.dark-mode .practice-item-header {
    background-color: #1e1e1e;
}

body.dark-mode .practice-item-header:hover {
    background-color: #252525;
}

body.dark-mode .practice-item-header h3 {
    color: #ffffff;
}

body.dark-mode .practice-icon {
    background-color: rgba(212, 175, 55, 0.15);
    color: var(--color-accent);
}

body.dark-mode .practice-area-item.active .practice-icon {
    background-color: var(--color-accent);
    color: #1a1a1a;
}

body.dark-mode .practice-desc {
    color: #b0b0b0;
}

body.dark-mode .practice-info-grid {
    border-top-color: #333;
}

body.dark-mode .practice-services li {
    color: #b0b0b0;
}

body.dark-mode .practice-experts {
    background-color: #252525;
    border-left-color: var(--color-accent);
}

body.dark-mode .practice-experts h4 {
    color: #888;
}

body.dark-mode .practice-experts p {
    color: #ffffff;
}


body.dark-mode .search-box input {
    background-color: #2d2d2d;
    border: 1px solid #444;
    color: #fff;
}

body.dark-mode .search-box i {
    color: #aaa;
}

/* Cases Page */
body.dark-mode .case-card {
    background-color: #1e1e1e;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

body.dark-mode .case-category .category-badge {
    background-color: rgba(212, 175, 55, 0.15);
    color: var(--color-accent);
}

body.dark-mode .case-category .case-year {
    color: #888;
}

body.dark-mode .case-card h3 {
    color: #ffffff;
}

body.dark-mode .case-card h4 {
    color: var(--color-accent);
}

body.dark-mode .case-card p {
    color: #b0b0b0;
}

body.dark-mode .case-value {
    background-color: #252525;
    border-top: 1px solid #333;
}

body.dark-mode .case-value p strong {
    color: #e0e0e0;
}

/* Career Page */
body.dark-mode .job-card {
    background-color: #1e1e1e;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
    border-left: 4px solid var(--color-accent);
}

body.dark-mode .job-header h3 {
    color: #ffffff;
}

body.dark-mode .job-location {
    color: var(--color-accent);
}

body.dark-mode .job-details p {
    color: #b0b0b0;
}

body.dark-mode .job-details p strong {
    color: #e0e0e0;
}

body.dark-mode .job-description {
    background-color: #252525;
}

body.dark-mode .form-group label {
    color: #e0e0e0;
}

body.dark-mode input[type="text"],
body.dark-mode input[type="email"],
body.dark-mode input[type="tel"],
body.dark-mode input[type="search"],
body.dark-mode input[type="date"],
body.dark-mode input[type="time"],
body.dark-mode textarea,
body.dark-mode select {
    background-color: #2d2d2d;
    border: 1px solid #444;
    color: #ffffff;
}

body.dark-mode input:focus,
body.dark-mode textarea:focus,
body.dark-mode select:focus {
    border-color: var(--color-accent);
    outline: none;
}

body.dark-mode .file-upload {
    border: 2px dashed #444;
    background-color: #252525;
}

body.dark-mode .file-label {
    color: var(--color-accent);
}

body.dark-mode .file-name {
    color: #aaa;
}

/* Contact Page */
body.dark-mode .contact-info-section,
body.dark-mode .contact-form-section,
body.dark-mode .appointment-section,
body.dark-mode .contact-faq {
    background-color: #121212 !important;
}

body.dark-mode .contact-info-card {
    background-color: #1e1e1e !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3) !important;
    border: 1px solid #333 !important;
}

body.dark-mode .contact-icon {
    background-color: rgba(212, 175, 55, 0.15) !important;
    color: var(--color-accent) !important;
}

body.dark-mode .contact-info-card h3 {
    color: #ffffff !important;
}

body.dark-mode .contact-info-card address {
    color: #b0b0b0 !important;
}

body.dark-mode .contact-details p {
    color: #b0b0b0 !important;
}

body.dark-mode .contact-details i {
    color: var(--color-accent) !important;
}

body.dark-mode .contact-hours {
    background-color: #252525 !important;
    border-top: 1px solid #333 !important;
    padding-top: 15px;
}

body.dark-mode .contact-hours h4 {
    color: #ffffff !important;
}

body.dark-mode .contact-hours p {
    color: #b0b0b0 !important;
}

body.dark-mode .contact-form-container {
    background-color: #1e1e1e !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3) !important;
    border: 1px solid #333 !important;
    padding: 30px;
    border-radius: var(--radius-lg);
}

body.dark-mode .contact-form-container h2 {
    color: #ffffff !important;
}

body.dark-mode .contact-form label {
    color: #e0e0e0 !important;
}

body.dark-mode .contact-form input,
body.dark-mode .contact-form select,
body.dark-mode .contact-form textarea {
    background-color: #2d2d2d !important;
    border: 1px solid #444 !important;
    color: #ffffff !important;
}

body.dark-mode .contact-form input:focus,
body.dark-mode .contact-form select:focus,
body.dark-mode .contact-form textarea:focus {
    border-color: var(--color-accent) !important;
}

body.dark-mode .map-container h2 {
    color: #ffffff !important;
}

body.dark-mode .map-placeholder {
    background-color: #252525 !important;
    color: #888 !important;
}

body.dark-mode .emergency-contact {
    background-color: rgba(212, 175, 55, 0.15) !important;
    border-left: 4px solid var(--color-accent) !important;
}

body.dark-mode .emergency-contact h3 {
    color: var(--color-accent) !important;
}

body.dark-mode .emergency-contact p {
    color: #e0e0e0 !important;
}

/* Appointment Section */
body.dark-mode .appointment-content h2 {
    color: #ffffff !important;
}

body.dark-mode .appointment-content>p {
    color: #b0b0b0 !important;
}

body.dark-mode .appointment-option {
    background-color: #1e1e1e !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3) !important;
    border: 1px solid #333 !important;
}

body.dark-mode .appointment-option h3 {
    color: #ffffff !important;
}

body.dark-mode .appointment-option p {
    color: #b0b0b0 !important;
}

body.dark-mode .appointment-option i {
    color: var(--color-accent) !important;
}

/* Booking Modal Dark Mode */
body.dark-mode .booking-modal .modal-content {
    background-color: #1e1e1e;
    color: #e0e0e0;
}

body.dark-mode .modal-close {
    color: #e0e0e0;
}

body.dark-mode .modal-close:hover {
    color: var(--color-accent);
}

body.dark-mode .booking-form label {
    color: #e0e0e0;
}

body.dark-mode .booking-form input,
body.dark-mode .booking-form select,
body.dark-mode .booking-form textarea {
    background-color: #2d2d2d;
    border-color: #444;
    color: #ffffff;
}

/* FAQ Section */
body.dark-mode .contact-faq h2 {
    color: #ffffff !important;
    text-align: center;
}

body.dark-mode .faq-item {
    background-color: #1e1e1e !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
    border: 1px solid #333 !important;
}

body.dark-mode .faq-item h3 {
    color: #ffffff !important;
}

body.dark-mode .faq-item p {
    color: #b0b0b0 !important;
}

/* Pagination */
body.dark-mode .pagination-btn {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border: 1px solid #444;
}

body.dark-mode .pagination-btn:hover:not(:disabled) {
    background-color: var(--color-accent);
    color: #1a365d;
}

body.dark-mode .pagination-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

body.dark-mode #insights-page-info {
    color: #b0b0b0;
}

/* Why Choose Section */
body.dark-mode .why-card {
    background-color: #1e1e1e;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

body.dark-mode .why-card h3 {
    color: #ffffff;
}

body.dark-mode .why-card h3 i {
    color: var(--color-accent);
}

body.dark-mode .why-card p {
    color: #b0b0b0;
}

/* Lawyer Listing Page */
body.dark-mode .lawyer-listing-card {
    background-color: #1e1e1e;
    border: 1px solid rgba(255, 255, 255, 0.05);
    /* Subtle border for separation */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4);
    /* Stronger shadow for dark mode */
}

body.dark-mode .lawyer-listing-card:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.5), 0 10px 10px -5px rgba(0, 0, 0, 0.2);
    border-color: rgba(255, 255, 255, 0.1);
}

body.dark-mode .lawyer-listing-card:hover .lawyer-listing-img::after {
    background: linear-gradient(to top, rgba(30, 30, 30, 0.9) 0%, transparent 100%);
    /* Match card bg */
}

body.dark-mode .lawyer-listing-name {
    color: #ffffff;
}

body.dark-mode .lawyer-listing-title {
    color: var(--color-accent);
}

body.dark-mode .expertise-tag {
    background-color: #1a1a1a;
    color: #e0e0e0;
    border-color: #333;
}

body.dark-mode .lawyer-listing-card:hover .expertise-tag {
    background-color: #2d2d2d;
    border-color: var(--color-accent);
    color: #fff;
}

body.dark-mode .lawyer-listing-bio {
    color: #a0a0a0;
}

body.dark-mode .lawyer-listing-meta {
    border-color: #333;
}

body.dark-mode .experience-badge {
    background-color: rgba(197, 160, 89, 0.1);
    /* Gold tint */
    color: var(--color-accent);
}

/* Lawyer Filter Section */
body.dark-mode .lawyers-filter {
    background-color: #1a1a1a;
    border-bottom: 1px solid #333;
}

body.dark-mode .filter-group label {
    color: #e0e0e0;
}

body.dark-mode .search-group button {
    background-color: var(--color-accent);
    color: var(--color-primary);
    border: none;
}

body.dark-mode .search-group button:hover {
    background-color: var(--color-accent-light);
}

/* Join Team Section */
body.dark-mode .join-team {
    background-color: #1a1a1a;
    border-top: 1px solid #333;
}

body.dark-mode .join-team h2 {
    color: #ffffff;
}

body.dark-mode .join-team p {
    color: #b0b0b0;
}

/* Lawyer Details Page */
body.dark-mode .lawyer-detail-header {
    background: #1a1a1a;
    border-bottom: 1px solid #333;
}

body.dark-mode .lawyer-header-image {
    background-color: #252525;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
}

body.dark-mode .lawyer-header-info h1 {
    color: #ffffff;
}

body.dark-mode .lawyer-contact-info p {
    color: #e0e0e0;
}

body.dark-mode .experience-item {
    background-color: #1e1e1e;
}

body.dark-mode .experience-item h3 {
    color: #ffffff;
}

body.dark-mode .experience-meta {
    color: var(--color-accent);
}

body.dark-mode .experience-item p {
    color: #b0b0b0;
}

body.dark-mode .publications-list li {
    border-color: #333;
}

body.dark-mode .publications-list h4 {
    color: #ffffff;
}

body.dark-mode .publication-meta {
    color: #888;
}

body.dark-mode .sidebar-section {
    background-color: #1e1e1e;
    border-color: #333;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

body.dark-mode .sidebar-section h3 {
    color: #ffffff;
}

body.dark-mode .education-item h4,
body.dark-mode .award-item h4 {
    color: #e0e0e0;
}

body.dark-mode .education-year,
body.dark-mode .award-item p,
body.dark-mode .bar-admissions li,
body.dark-mode .affiliations li {
    color: #b0b0b0;
}

body.dark-mode .contact-details p {
    color: #e0e0e0;
}

/* Related Lawyers Section */
body.dark-mode .related-lawyers {
    background-color: #1a1a1a;
    border-color: #333;
}

body.dark-mode .related-lawyers .section-header h2 {
    color: #ffffff;
}

body.dark-mode .related-lawyers .section-header p {
    color: #b0b0b0;
}

/* Case Filter */
body.dark-mode .cases-filter {
    background-color: #1a1a1a;
    border-bottom: 1px solid #333;
}

body.dark-mode .filter-btn {
    color: #e0e0e0;
    background-color: transparent;
    border: 1px solid #444;
}

body.dark-mode .filter-btn:hover,
body.dark-mode .filter-btn.active {
    background-color: var(--color-accent);
    color: var(--color-primary);
    border-color: var(--color-accent);
}

body.dark-mode .filter-info p {
    color: #888;
}

/* Insights Filter */
body.dark-mode .insights-filter {
    background-color: #1a1a1a;
    border-bottom: 1px solid #333;
}

body.dark-mode .filter-group select {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border-color: #444;
}

body.dark-mode .search-group input {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border-color: #444;
}

body.dark-mode .search-group button {
    background-color: var(--color-accent);
    color: var(--color-primary);
}

body.dark-mode .search-group button:hover {
    background-color: var(--color-accent-light);
}

/* Newsletter Section */
body.dark-mode .newsletter-section {
    background-color: #1a1a1a;
    border-top: 1px solid #333;
}

body.dark-mode .newsletter-section h2 {
    color: #ffffff;
}

body.dark-mode .newsletter-form input {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border-color: #444;
}

body.dark-mode .form-note,
body.dark-mode .form-note .fas {
    color: #888;
}

/* Insights Listing Container */
body.dark-mode .insights-listing {
    background-color: #121212 !important;
}

/* Insight Cards */
body.dark-mode .insight-card {
    background-color: #1e1e1e;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
    border-color: #333;
}

body.dark-mode .insight-card:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -2px rgba(0, 0, 0, 0.3);
    border-color: rgba(255, 255, 255, 0.1);
}

body.dark-mode .insight-card h3 {
    color: #ffffff;
}

body.dark-mode .insight-card h3 a {
    color: #ffffff;
}

body.dark-mode .insight-card h3 a:hover {
    color: var(--color-accent);
}

body.dark-mode .insight-category {
    background-color: rgba(212, 175, 55, 0.15);
    color: var(--color-accent);
}

body.dark-mode .insight-date {
    background-color: #2d2d2d;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

body.dark-mode .insight-date .day {
    color: var(--color-accent);
}

body.dark-mode .insight-date .month {
    color: #b0b0b0;
}

body.dark-mode .insight-excerpt,
body.dark-mode .read-time {
    color: #b0b0b0;
}

body.dark-mode .insight-author {
    border-color: #333;
}

body.dark-mode .author-info h4 {
    color: #e0e0e0;
}

body.dark-mode .author-info p {
    color: #888;
}

/* Insight Detail Page Structure */
body.dark-mode .article-header {
    background-color: #1a1a1a !important;
    border-bottom: 1px solid #333;
}

body.dark-mode .article-content {
    background-color: #121212 !important;
}

body.dark-mode .article-breadcrumb a {
    color: #b0b0b0;
}

body.dark-mode .article-breadcrumb a:hover {
    color: var(--color-accent);
}

body.dark-mode .article-breadcrumb i {
    color: #666;
}

body.dark-mode .article-breadcrumb span {
    color: #e0e0e0;
}

body.dark-mode .article-hero {
    background-color: #121212;
}

body.dark-mode .image-caption {
    background-color: #1e1e1e;
    color: #b0b0b0;
    border: 1px solid #333;
}

body.dark-mode .share-btn {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border: 1px solid #444;
}

body.dark-mode .share-btn:hover {
    background-color: var(--color-accent);
    color: #1a365d;
    border-color: var(--color-accent);
}

body.dark-mode .article-meta span {
    color: #b0b0b0;
}

body.dark-mode .article-meta i {
    color: var(--color-accent);
}

/* Sidebar Components */
body.dark-mode .sidebar-section,
body.dark-mode .toc-section,
body.dark-mode .author-bio,
body.dark-mode .related-articles,
body.dark-mode .download-section,
body.dark-mode .comments-list,
body.dark-mode .newsletter-sidebar,
body.dark-mode .comment-form {
    background-color: #1e1e1e !important;
    border: 1px solid #333;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

body.dark-mode .newsletter-sidebar {
    background-color: #1a1a1a !important;
    /* Slightly distinct for newsletter */
}

body.dark-mode .toc-section h3,
body.dark-mode .author-bio h4,
body.dark-mode .related-articles h3,
body.dark-mode .download-section h3,
body.dark-mode .comment-form h3,
body.dark-mode .comments-list h3,
body.dark-mode .newsletter-sidebar h3 {
    color: #ffffff !important;
}

body.dark-mode .toc-nav a {
    color: #b0b0b0 !important;
    border-color: #333;
}

body.dark-mode .toc-nav a:hover,
body.dark-mode .toc-nav a.active {
    color: var(--color-accent) !important;
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .author-bio img {
    border-color: #333;
}

body.dark-mode .related-item {
    border-bottom: 1px solid #333;
}

body.dark-mode .related-item h4 a {
    color: #ffffff !important;
}

body.dark-mode .related-item h4 a:hover {
    color: var(--color-accent) !important;
}

body.dark-mode .download-section {
    background-color: #1e1e1e !important;
}

/* Article Sections */
body.dark-mode .article-share-bottom {
    background-color: #1e1e1e !important;
    border: 1px solid #333;
}

body.dark-mode .article-share-bottom h4 {
    color: #ffffff;
}

body.dark-mode .author-cta {
    background: linear-gradient(135deg, #1a202c 0%, #000000 100%) !important;
    border-top: 1px solid #333;
}

/* Comments */
body.dark-mode .comments-section {
    background-color: #121212 !important;
    border-top: 1px solid #333;
}

body.dark-mode .comment-form label {
    color: #e0e0e0;
}

body.dark-mode .comment-form input,
body.dark-mode .comment-form textarea {
    background-color: #2d2d2d !important;
    border-color: #444;
    color: #ffffff !important;
}

body.dark-mode .comment-form input:focus,
body.dark-mode .comment-form textarea:focus {
    border-color: var(--color-accent);
}

body.dark-mode .comments-list {
    background-color: #1e1e1e !important;
}

body.dark-mode .comment {
    border-bottom: 1px solid #333;
}

body.dark-mode .comment-author h4 {
    color: #ffffff !important;
}

body.dark-mode .comment-content p {
    color: #b0b0b0;
}

/* More Articles */
body.dark-mode .more-articles {
    background-color: #121212 !important;
    border-top: 1px solid #333;
}

/* Key Takeaways & Info Boxes */
body.dark-mode .key-takeaway {
    background-color: rgba(212, 175, 55, 0.1) !important;
    border-left-color: var(--color-accent);
}

body.dark-mode .key-takeaway h4 {
    color: var(--color-accent) !important;
}

body.dark-mode .key-takeaway p {
    color: #e0e0e0 !important;
}

body.dark-mode .article-title {
    color: #ffffff !important;
}

body.dark-mode .content-section p,
body.dark-mode .content-section li {
    color: #b0b0b0 !important;
}

body.dark-mode .content-section h2,
body.dark-mode .content-section h3 {
    color: #ffffff !important;
}


/* FIX: Specific Overrides for Elements persisting in White */
body.dark-mode .stat-box,
body.dark-mode .implication-card,
body.dark-mode .timeline-year,
body.dark-mode .recommendation,
body.dark-mode .warning-box,
body.dark-mode .conclusion-box {
    background-color: #1e1e1e !important;
    border: 1px solid #333 !important;
    color: #e0e0e0 !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3) !important;
}

body.dark-mode .stat-box h4,
body.dark-mode .implication-card h4,
body.dark-mode .recommendation h3 {
    color: #ffffff !important;
    text-shadow: none !important;
}

body.dark-mode .stat-box p,
body.dark-mode .implication-card p,
body.dark-mode .timeline-content p {
    color: #b0b0b0 !important;
}

/* Fix Table Backgrounds */
body.dark-mode .disclosure-table {
    background-color: #1e1e1e !important;
    color: #b0b0b0 !important;
    border: 1px solid #333 !important;
}

body.dark-mode .disclosure-table th {
    background-color: #252525 !important;
    color: #ffffff !important;
    border-bottom: 2px solid #444 !important;
}

body.dark-mode .disclosure-table td {
    background-color: #1e1e1e !important;
    color: #b0b0b0 !important;
    border-bottom: 1px solid #333 !important;
}

body.dark-mode .disclosure-table tr:nth-child(even),
body.dark-mode .disclosure-table tr:nth-child(odd) {
    background-color: #1e1e1e !important;
}

body.dark-mode .disclosure-table tr:hover td {
    background-color: #2d2d2d !important;
}

/* Specific Timeline Item Fix */
body.dark-mode .timeline-item .timeline-year {
    background-color: #2d2d2d !important;
    color: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
}

/* Loading Skeletons & Placeholders */
body.dark-mode .loading-skeleton div {
    background: #2d2d2d !important;
}

body.dark-mode img[src=""],
body.dark-mode img[alt="Loading..."],
body.dark-mode .author-avatar img[src=""],
body.dark-mode .author-sidebar img[src=""],
body.dark-mode .hero-image img[src=""] {
    background-color: #2d2d2d !important;
}

/* Contact Page Layout Dark Mode */
body.dark-mode .contact-content h1 {
    color: #ffffff;
}

body.dark-mode .contact-text p,
body.dark-mode .contact-address {
    color: #b0b0b0;
}

body.dark-mode .contact-address strong {
    color: #e0e0e0;
}

body.dark-mode .sidebar-nav a {
    color: #b0b0b0;
}

body.dark-mode .sidebar-nav a:hover,
body.dark-mode .sidebar-nav a.active,
body.dark-mode .contact-text .text-link {
    color: var(--color-accent);
}

body.dark-mode .sidebar-nav a.active::before {
    color: var(--color-accent);
}

body.dark-mode .contact-form-wrapper {
    background-color: #1e1e1e;
}

body.dark-mode .contact-form-wrapper h2,
body.dark-mode .simple-contact-form label {
    color: #ffffff;
}