@media (prefers-color-scheme: dark) {
    /* ========================================== */
    /* ROOTED VITALITY - DARK MODE COMPONENTS    */
    /* ========================================== */
    /* Dashboard UI components, messaging,       */
    /* navigation, modals, and general utilities */
    /* ========================================== */

    /* ========================================== */
    /* NAVIGATION & HEADER */
    /* ========================================== */

    /* HEADER STYLING */
    .rv-header {
        background: linear-gradient(
            180deg,
            rgba(26, 23, 20, 0.95) 0%,
            rgba(26, 23, 20, 0.92) 50%,
            rgba(26, 23, 20, 0.90) 100%
        ) !important;
        border-bottom: 1px solid #3d3934 !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important, 
            inset 0 1px 0 rgba(119, 136, 62, 0.1) !important,
            0 0 50px rgba(119, 136, 62, 0.1) !important;
    }

    .rv-header-scrolled {
        background: linear-gradient(
            180deg,
            rgba(26, 23, 20, 0.97) 0%,
            rgba(26, 23, 20, 0.95) 50%,
            rgba(26, 23, 20, 0.92) 100%
        ) !important;
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5) !important, 
            inset 0 1px 0 rgba(119, 136, 62, 0.1) !important,
            0 0 60px rgba(119, 136, 62, 0.12) !important;
    }

    /* Brand text - white on all headers */
    .rv-brand-text,
    .rv-brand-name {
        color: #ffffff !important;
    }

    .rv-brand-name {
        color: #ffffff !important;
    }

    /* Navigation links */
    .rv-nav a,
    .rv-nav-link {
        color: #e8e4d8 !important;
    }

    .rv-nav a:hover,
    .rv-nav-link:hover {
        color: #d9cc94 !important;
    }

    /* Login button (injected header) */
    .rv-login-btn,
    .rv-nav-btn {
        color: #e8e4d8 !important;
        background: transparent !important;
    }

    .rv-login-btn:hover,
    .rv-nav-btn:hover {
        color: #d9cc94 !important;
    }

    /* CTA buttons */
    .rv-nav .cta,
    a.cta {
        background: #77883e !important;
        color: #1a1714 !important;
        border-color: #77883e !important;
    }

    .rv-nav .cta:hover,
    a.cta:hover {
        background: #5f7030 !important;
        border-color: #5f7030 !important;
        color: #ffffff !important;
    }

    /* Public Header Sign Up Button */
    .rv-header-public .rv-btn-accent {
        background: #77883e !important;
        color: #1a1714 !important;
    }

    .rv-header-public .rv-btn-accent:hover {
        background: #5f7030 !important;
        color: #ffffff !important;
    }

    /* Menu toggle */
    .rv-menu-toggle {
        color: #ffffff !important;
    }
    
    .rv-header-client .rv-nav-link,
    .rv-header-practitioner .rv-nav-link {
        color: #e8e4d8 !important;
    }
    
    .rv-header-client .rv-nav-link:hover,
    .rv-header-practitioner .rv-nav-link:hover {
        color: #d9cc94 !important;
    }
    
    /* Practitioner header buttons */
    .rv-header-practitioner .rv-nav-icon-btn,
    .rv-header-practitioner .rv-notifications-btn,
    .rv-header-practitioner .rv-avatar-btn {
        color: #ffffff !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    .rv-header-practitioner .rv-nav-icon-btn:hover,
    .rv-header-practitioner .rv-notifications-btn:hover,
    .rv-header-practitioner .rv-avatar-btn:hover {
        color: #d9cc94 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    /* Aggressive notification bell removal of any boxes */
    .rv-notifications-menu {
        position: relative;
    }

    /* Override the 40x40 box from light mode - use both classes for specificity */
    .rv-notifications-btn.rv-nav-icon-btn {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
        padding: 0 !important;
        margin: 0 !important;
        width: 24px !important;
        height: 24px !important;
        min-width: auto !important;
        min-height: auto !important;
        display: inline-flex !important;
        cursor: pointer !important;
    }

    .rv-notifications-btn.rv-nav-icon-btn:hover,
    .rv-notifications-btn.rv-nav-icon-btn:focus,
    .rv-notifications-btn.rv-nav-icon-btn:active,
    .rv-notifications-btn.rv-nav-icon-btn:focus-visible {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
    }

    /* Make sure bell icon is visible and doesn't have grey background */
    .rv-bell-icon {
        stroke: #ffffff !important;
        color: #ffffff !important;
        width: 24px !important;
        height: 24px !important;
    }

    .rv-notifications-btn:hover .rv-bell-icon {
        stroke: #d9cc94 !important;
        color: #d9cc94 !important;
    }

    /* Notification dropdown styling */
    .rv-notifications-dropdown,
    .rv-notifications-menu {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
    }

    .rv-notifications-header {
        background: #2a2622 !important;
        border-bottom-color: #4a4540 !important;
    }

    .rv-notifications-header h3 {
        color: #ffffff !important;
    }

    .rv-notifications-list {
        background: #2a2622 !important;
    }

    .rv-notifications-empty {
        color: #b8b3b0 !important;
    }

    .rv-notification-item {
        background: #3d3934 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .rv-notification-item:hover {
        background: #4a4540 !important;
    }

    .rv-notification-badge {
        background: #d32f2f !important;
    }
    
    .rv-header-client .rv-practitioner-btn {
        color: #ffffff !important;
    }
    
    .rv-header-client .rv-practitioner-btn:hover {
        color: #d9cc94 !important;
    }
    
    /* AVATAR DROPDOWN */
    .rv-avatar-dropdown {
        background: #2a2622 !important;
        border-color: #3d3934 !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
    }
    
    .rv-dropdown-item {
        color: #e8e4d8 !important;
    }
    
    .rv-dropdown-item:hover {
        background: rgba(119, 136, 62, 0.2) !important;
        color: #d9cc94 !important;
    }
    
    .rv-dropdown-item:focus {
        background: rgba(119, 136, 62, 0.25) !important;
        color: #d9cc94 !important;
    }
    
    .rv-dropdown-divider {
        border-top-color: #4a4540 !important;
    }
    
    .rv-logout-item {
        color: #f87171 !important;
    }
    
    .rv-logout-item:hover {
        background: rgba(248, 113, 113, 0.1) !important;
        color: #ff9999 !important;
    }
    
    /* NOTIFICATIONS DROPDOWN */
    .rv-notifications-dropdown {
        background: #2a2622 !important;
        border-color: #3d3934 !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
    }
    
    .rv-notifications-header {
        border-bottom-color: #3d3934 !important;
    }
    
    .rv-notifications-header h3 {
        color: #e8e4d8 !important;
    }
    
    .rv-notifications-empty {
        color: #a09b97 !important;
    }
    
    /* NOTIFICATION ITEMS */
    .rv-notification-item {
        border-bottom-color: #3d3934 !important;
    }
    
    .rv-notification-item:hover {
        background: rgba(119, 136, 62, 0.1) !important;
    }
    
    .rv-notification-title {
        color: #e8e4d8 !important;
    }
    
    .rv-notification-message {
        color: #b8b3b0 !important;
    }
    
    .rv-notification-time {
        color: #8f8b87 !important;
    }
    
    /* FOOTER STYLING */
    /* Footer keeps green background but text already light - ensure visibility */
    .rv-footer {
        background: #77883e !important;
    }
    
    /* CRITICAL: Override all nav elements in footer - browser default black background fix */
    .rv-footer nav,
    .rv-footer-nav,
    .rv-footer-socials-nav {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border: none !important;
        outline: none !important;
    }
    
    /* Footer section - ensure no background or shadows */
    .rv-footer-section {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border: none !important;
    }
    
    /* Remove any backgrounds from all footer links and buttons - AGGRESSIVE */
    .rv-footer-nav,
    .rv-footer-nav a,
    .rv-footer-link-btn,
    .rv-footer-socials-nav,
    .rv-footer-socials-nav a,
    .rv-footer-social-btn,
    .rv-footer-section > nav {
        background: none !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        border: none !important;
        text-shadow: none !important;
    }
    
    /* Ensure nav doesn't get dark mode default styling */
    .rv-footer-nav {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.7rem !important;
    }
    
    .rv-footer-nav a {
        color: #fbf7ec !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .rv-footer-nav a:hover {
        color: #ffffff !important;
        background: none !important;
    }
    
    .rv-footer-nav a:visited {
        color: #fbf7ec !important;
    }
    
    .rv-footer-nav a:active {
        color: #ffffff !important;
    }
    
    .rv-footer-nav a::before {
        background: #ffffff !important;
    }
    
    .rv-footer-link-btn {
        color: #fbf7ec !important;
        padding: 0 !important;
        margin: 0 !important;
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        border-width: 0 !important;
        box-shadow: none !important;
        outline: none !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
    }
    
    .rv-footer-link-btn:hover {
        color: #ffffff !important;
        background: none !important;
        background-color: transparent !important;
        border: none !important;
        border-width: 0 !important;
        box-shadow: none !important;
    }
    
    .rv-footer-link-btn:active,
    .rv-footer-link-btn:focus {
        color: #ffffff !important;
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        border-width: 0 !important;
        box-shadow: none !important;
        outline: none !important;
    }
    
    .rv-footer-link-btn::before {
        background: #ffffff !important;
    }
    
    /* Social links in footer */
    .rv-footer-socials-nav {
        display: flex !important;
        gap: 0.8rem !important;
    }
    
    .rv-footer-socials-nav a {
        color: #fbf7ec !important;
    }
    
    .rv-social-link,
    .rv-footer-social-btn {
        background: rgba(251, 247, 236, 0.15) !important;
        color: #fbf7ec !important;
    }
    
    .rv-social-link:hover,
    .rv-footer-social-btn:hover {
        background: #d4c47c !important;
        color: #1a1714 !important;
    }
    
    /* Footer heading */
    .rv-footer-heading {
        color: #fbf7ec !important;
    }
    
    /* Footer text elements */
    .rv-footer-title,
    .rv-footer-phone,
    .rv-footer-email,
    .rv-footer-copyright {
        color: #fbf7ec !important;
    }

    /* ========================================== */
    /* MODALS & DROPDOWNS */
    /* ========================================== */

    .modal {
        background-color: rgba(26, 23, 20, 0.95) !important;
    }

    .modal-overlay {
        background-color: rgba(0, 0, 0, 0.7) !important;
    }

    .modal-content {
        background-color: #2a2622 !important;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5) !important;
    }

    .modal-header {
        border-bottom-color: #4a4540 !important;
        background-color: #2a2622 !important;
    }

    .modal-header h2 {
        color: #ffffff !important;
    }

    .modal-title {
        color: #ffffff !important;
    }

    .modal-close {
        color: #b8b3b0 !important;
    }

    .modal-close:hover {
        color: #77883e !important;
    }

    .modal-body {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
    }

    .modal-body p,
    .modal-body ul {
        color: #e8e4d8 !important;
    }

    .modal-body ul li {
        color: #b8b3b0 !important;
    }

    .modal-footer {
        border-top-color: #4a4540 !important;
        background-color: #3d3934 !important;
    }

    .modal-note {
        border-top-color: #4a4540 !important;
        color: #b8b3b0 !important;
    }

    /* Dropdown menus */
    .dropdown-menu {
        background-color: #2a2622 !important;
        border-color: #4a4540 !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
    }

    .dropdown-item {
        color: #e8e4d8 !important;
    }

    .dropdown-item:hover {
        background-color: #3d3934 !important;
        color: #ffffff !important;
    }

    .dropdown-divider {
        border-color: #4a4540 !important;
    }

    /* ========================================== */
    /* AUTH MODAL - DARK MODE */
    /* ========================================== */

    /* Auth overlay - dark semi-transparent background */
    .rv-auth-overlay {
        background-color: rgba(0, 0, 0, 0.7) !important;
    }

    /* Auth modal container */
    .rv-auth-modal {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
        border-radius: 12px !important;
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6) !important;
    }

    /* Auth modal title */
    .rv-auth-modal h2 {
        color: #ffffff !important;
    }

    /* Auth modal subtitle */
    .rv-auth-subtitle {
        color: #b8b3b0 !important;
    }

    /* Auth form labels */
    .rv-auth-modal label {
        color: #e8e4d8 !important;
    }

    /* Auth form inputs */
    .rv-auth-modal input[type="email"],
    .rv-auth-modal input[type="password"],
    .rv-auth-modal input[type="text"] {
        background-color: #3d3934 !important;
        color: #ffffff !important;
        border-color: #4a4540 !important;
    }

    .rv-auth-modal input::placeholder {
        color: #8f8b87 !important;
    }

    .rv-auth-modal input:focus {
        background-color: #3d3934 !important;
        border-color: #77883e !important;
        box-shadow: 0 0 0 3px rgba(119, 136, 62, 0.2) !important;
        outline: none !important;
    }

    /* Auth checkbox */
    .rv-auth-modal input[type="checkbox"] {
        background-color: #3d3934 !important;
        border-color: #4a4540 !important;
        accent-color: #77883e !important;
    }

    /* Auth actions (remember me, forgot password) */
    .rv-auth-actions {
        color: #e8e4d8 !important;
    }

    .rv-auth-actions a,
    .rv-forgot {
        color: #d9cc94 !important;
    }

    .rv-auth-actions a:hover,
    .rv-forgot:hover {
        color: #e8c547 !important;
    }

    /* Auth submit button */
    .rv-auth-submit {
        background-color: #77883e !important;
        color: #ffffff !important;
        border-color: #77883e !important;
    }

    .rv-auth-submit:hover {
        background-color: #5f7030 !important;
        border-color: #5f7030 !important;
    }

    .rv-auth-submit:disabled {
        background-color: #4a4540 !important;
        color: #8a8580 !important;
        border-color: #3d3934 !important;
        opacity: 0.6 !important;
    }

    /* Auth close button */
    .rv-auth-close {
        color: #b8b3b0 !important;
        background: transparent !important;
        border: none !important;
    }

    .rv-auth-close:hover {
        color: #d9cc94 !important;
    }

    /* Auth footer */
    .rv-auth-footer {
        color: #e8e4d8 !important;
        border-top-color: #4a4540 !important;
    }

    .rv-auth-footer a {
        color: #d9cc94 !important;
    }

    .rv-auth-footer a:hover {
        color: #e8c547 !important;
    }

    /* ========================================== */
    /* BEM-STYLE MODALS (modal__*) - DARK MODE */
    /* ========================================== */

    /* Modal overlay backdrop */
    .modal__overlay {
        background-color: rgba(0, 0, 0, 0.6) !important;
    }

    /* Modal content container */
    .modal__content {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5) !important;
    }

    .modal__content--large {
        background-color: #2a2622 !important;
    }

    /* Modal header */
    .modal__header {
        background: linear-gradient(135deg, #5f7030 0%, #396449 100%) !important;
        color: #ffffff !important;
        border-bottom-color: #4a4540 !important;
    }

    .modal__header h2,
    .modal__header h3,
    .modal__title {
        color: #ffffff !important;
    }

    /* Modal close button */
    .modal__close {
        color: #e8e4d8 !important;
        background: none !important;
        border: none !important;
    }

    .modal__close:hover {
        color: #ffffff !important;
    }

    /* Modal body */
    .modal__body {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
    }

    .modal__body p,
    .modal__body span,
    .modal__body label {
        color: #e8e4d8 !important;
    }

    .modal__body h3,
    .modal__body h4 {
        color: #ffffff !important;
    }

    /* Modal footer */
    .modal__footer {
        background-color: #2a2622 !important;
        border-top-color: #4a4540 !important;
    }

    /* Practitioner details in modals */
    .practitioner-details {
        color: #e8e4d8 !important;
    }

    .modal-section {
        border-color: #4a4540 !important;
    }

    .modal-section__title {
        color: #ffffff !important;
    }

    /* CRITICAL FIX: Override checkbox background-attachment globally in dark mode */
    input[type="checkbox"]:checked {
        background-attachment: scroll !important;
    }

    /* Travel type checkboxes - dark mode background */
    [data-travel-checkbox="true"] {
        background: #2a2622 !important;
    }

    /* Terms checkboxes - dark mode background */
    [data-terms-checkbox="true"] {
        background: #2a2622 !important;
    }

    /* Terms modal content - dark mode */
    .terms-section {
        background: rgba(119, 136, 62, 0.1) !important;
    }

    .terms-section h3,
    .terms-content h4,
    .terms-content h5 {
        color: #ffffff !important;
    }

    .terms-scroll {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .terms-content p,
    .terms-content ul {
        color: #d4cfc3 !important;
    }

    .terms-content a {
        color: #d9cc94 !important;
    }

    .terms-content a:hover {
        color: #e8c547 !important;
    }

    .terms-checkboxes {
        margin-top: 1.5rem;
    }

    .terms-checkbox span {
        color: #e8e4d8 !important;
    }

    /* Modal form inputs */
    .modal__body input[type="text"],
    .modal__body input[type="email"],
    .modal__body input[type="number"],
    .modal__body select,
    .modal__body textarea {
        background-color: #3d3934 !important;
        color: #ffffff !important;
        border-color: #4a4540 !important;
    }

    .modal__body input::placeholder,
    .modal__body textarea::placeholder {
        color: #8f8b87 !important;
    }

    .modal__body input:focus,
    .modal__body select:focus,
    .modal__body textarea:focus {
        background-color: #3d3934 !important;
        border-color: #77883e !important;
        box-shadow: 0 0 0 3px rgba(119, 136, 62, 0.2) !important;
    }

    /* ========================================== */
    /* NAVIGATION TABS & BUTTONS */
    /* ========================================== */

    .nav-tab {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    }

    .nav-tab:hover {
        background-color: #3d3934 !important;
        color: #ffffff !important;
        border-color: #77883e !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.15) !important;
    }

    .nav-tab.active {
        background-color: #3d3934 !important;
        color: #ffffff !important;
        border-color: #77883e !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.2) !important;
    }

    .nav-tab__title {
        color: #e8e4d8 !important;
    }

    .nav-tab.active .nav-tab__title {
        color: #d9cc94 !important;
    }

    .nav-tab__description {
        color: #b8b3b0 !important;
    }

    /* ========================================== */
    /* MESSAGING & CHAT SYSTEM */
    /* ========================================== */

    /* Chat/Message Container */
    .chat-window,
    .conversation-area,
    .message-area {
        background-color: #1a1714 !important;
    }
    
    /* Message Bubbles - Own Messages */
    .message--own,
    .message-group.own,
    .message-group--own,
    .message.own,
    [data-message-type="own"] .message__bubble {
        background-color: #77883e !important;
        color: #ffffff !important;
    }
    
    /* Message Bubbles - Other User Messages */
    .message--other,
    .message-group.other,
    .message-group--other,
    .message.other,
    [data-message-type="other"] .message__bubble {
        background-color: #e8e4d8 !important;
        color: #2a2622 !important;
    }
    
    /* Message Bubbles - Practitioner */
    .message--practitioner,
    .message-group.practitioner,
    [data-message-type="practitioner"] .message__bubble {
        background-color: #e8e4d8 !important;
        color: #000000 !important;
    }
    
    /* Message Bubbles - Client */
    .message--client,
    .message-group.client,
    [data-message-type="client"] .message__bubble {
        background-color: #77883e !important;
        color: #ffffff !important;
    }
    
    /* Generic message bubble base styles */
    .message-bubble {
        background-color: var(--message-other-bg) !important;
        color: var(--message-other-text) !important;
    }
    
    .message-group.own .message-bubble {
        background-color: var(--message-own-bg) !important;
        color: var(--message-own-text) !important;
    }
    
    .message-group.other .message-bubble {
        background-color: var(--message-other-bg) !important;
        color: var(--message-other-text) !important;
    }

    /* Unified Messaging System - Sent Messages */
    .message-group--sent .message-bubble {
        background: linear-gradient(135deg, var(--rooted-primary) 0%, var(--rooted-primary-dark) 100%) !important;
        color: var(--message-own-text) !important;
    }

    .message-group--sent .bubble-text {
        color: var(--message-own-text) !important;
    }

    /* Unified Messaging System - Received Messages */
    .message-group--received .message-bubble {
        background-color: var(--message-other-bg) !important;
        color: var(--message-other-text) !important;
    }

    .message-group--received .bubble-text {
        color: var(--message-other-text) !important;
    }
    
    /* Message Bubble Base */
    .message__bubble,
    .bubble {
        border-color: transparent !important;
    }
    
    /* Message Metadata */
    .message__time,
    .message-time,
    .message-timestamp,
    .message-metadata {
        color: #8f8b87 !important;
    }
    
    .message__sender,
    .message-sender {
        color: #d4cfc3 !important;
    }
    
    /* Conversation List */
    .conversation-list,
    .thread-list,
    .message-list {
        background-color: #1a1714 !important;
    }
    
    .conversation-item,
    .thread-item,
    .message-list-item {
        background-color: #2a2622 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }
    
    .conversation-item:hover,
    .thread-item:hover,
    .message-list-item:hover {
        background-color: #3d3934 !important;
    }
    
    .conversation-item.active,
    .thread-item.active,
    .message-list-item.active {
        background-color: #3d3934 !important;
        border-left-color: #77883e !important;
    }
    
    .conversation-preview,
    .thread-preview,
    .last-message {
        color: #d4cfc3 !important;
    }

    /* ========================================== */
    /* MESSAGING & CHAT BUBBLES */
    /* ========================================== */

    .message-bubble {
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    }

    .message-bubble--own {
        background-color: #77883e !important;
        color: #ffffff !important;
    }

    .message-bubble--other {
        background-color: #3d3934 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
    }

    .message-bubble--practitioner {
        background-color: #2a5a3a !important;
        color: #ffffff !important;
    }

    .message-bubble--client {
        background-color: #4a3a2a !important;
        color: #ffffff !important;
    }

    .message-timestamp {
        color: #8a8580 !important;
    }

    .message-sender {
        color: #b8b3b0 !important;
        font-weight: 600;
    }

    .chat-input-area {
        background-color: #2a2622 !important;
        border-top-color: #4a4540 !important;
    }

    .chat-input-field {
        background-color: #3d3934 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
    }

    .chat-input-field:focus {
        border-color: #77883e !important;
        box-shadow: 0 0 0 3px rgba(119, 136, 62, 0.2) !important;
    }

    .chat-input-button {
        background-color: #77883e !important;
        color: #ffffff !important;
    }

    .chat-input-button:hover {
        background-color: #5f7030 !important;
    }

    /* Unified messaging */
    .unified-messaging-container {
        background-color: #1a1714 !important;
    }

    .conversation-list {
        background-color: #2a2622 !important;
    }

    .conversation-item {
        border-bottom-color: #4a4540 !important;
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
    }

    .conversation-item:hover {
        background-color: #3d3934 !important;
    }

    .conversation-item.active {
        background-color: #77883e !important;
        color: #ffffff !important;
    }

    .conversation-item .participant-name {
        color: #ffffff !important;
    }

    .conversation-item .last-message {
        color: #b8b3b0 !important;
    }

    /* ========================================== */
    /* CLIENT INBOX & DASHBOARD LAYOUT */
    /* ========================================== */

    /* CLIENT INBOX LAYOUT */
    .message-thread-column {
        background: #1a1714 !important;
        border-color: #4a4540 !important;
    }

    .message-thread-panel {
        background: #1a1714 !important;
    }

    .thread-header {
        background: #1a1714 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .message-thread {
        background: #1a1714 !important;
    }

    .my-matches-container {
        background: #1a1714 !important;
    }

    .matches-sidebar {
        background: #1a1714 !important;
    }

    .sidebar-tab {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .sidebar-tab.active {
        background: #3d3934 !important;
        color: #77883e !important;
        border-color: #77883e !important;
    }

    .sidebar-tab__title {
        color: #e8e4d8 !important;
    }

    .sidebar-tab.active .sidebar-tab__title {
        color: #ffffff !important;
    }

    .sidebar-tab__badge {
        background: #77883e !important;
        color: #ffffff !important;
    }

    .sidebar-section {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
    }

    .sidebar-section__title {
        color: #ffffff !important;
    }

    .filter-label {
        color: #e8e4d8 !important;
    }

    .filter-select {
        background: #1a1714 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
    }

    /* Article Cards (TIPS section) */
    .article-card {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .article-card .article-title,
    .tips-section__title,
    .tips-section__header {
        color: #ffffff !important;
    }

    .tips-icon {
        background: #77883e !important;
        color: #ffffff !important;
    }

    .tips-list {
        color: #d4cfc3 !important;
    }

    .tips-list li {
        color: #d4cfc3 !important;
    }

    .sidebar-section {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
    }

    .sidebar-section__title {
        color: #ffffff !important;
    }

    .filter-select,
    .filter-label {
        background: #1a1714 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
    }

    /* Sidebar */
    .sidebar,
    .sidebar-nav,
    [class*="sidebar"] {
        background-color: #1a1714;
        border-color: #4a4540;
    }
    
    .sidebar-section,
    .nav-section {
        background-color: #2a2622;
        border-color: #4a4540;
    }
    
    .sidebar-section__title,
    .nav-section-title {
        color: #ffffff;
    }
    
    .sidebar-item,
    .nav-item {
        color: #e8e4d8;
    }
    
    .sidebar-item:hover,
    .nav-item:hover {
        background-color: #3d3934;
        color: #ffffff;
    }
    
    .sidebar-item.active,
    .nav-item.active {
        background-color: #3d3934;
        color: #77883e;
        border-left-color: #77883e;
    }

    /* CLIENT INBOX - All background overrides */
    .matches-grid-3col {
        background: #1a1714 !important;
    }

    /* Middle Column - Practitioners List */
    .inbox-list {
        background: #1a1714 !important;
        color: #e8e4d8 !important;
    }

    .inbox-search {
        background: #1a1714 !important;
    }

    .search-input {
        background: #2a2622 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
    }

    .inbox-threads-list {
        background: #1a1714 !important;
    }

    .thread-item,
    .conversation-item {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
        border-left-color: transparent !important;
    }

    .thread-item:hover,
    .conversation-item:hover {
        background: #3d3934 !important;
        border-left-color: #77883e !important;
    }

    .thread-item.active,
    .conversation-item.active {
        background: #3d3934 !important;
        border-color: #4a4540 !important;
        border-left-color: #77883e !important;
        color: #ffffff !important;
    }

    .thread-item--closed {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
    }

    .thread-item--closed .thread-name {
        color: #8f8b87 !important;
    }

    /* Message Thread */
    .empty-state {
        background: #1a1714 !important;
        color: #8f8b87 !important;
    }

    .empty-state p,
    .empty-state div {
        color: #8f8b87 !important;
        background: transparent !important;
    }

    .thread-header {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .thread-header__title,
    .thread-header-info {
        color: #ffffff !important;
    }

    .message-input-area {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
    }

    .message-input,
    .message-send-btn {
        background: #3d3934 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
    }

    .message-input::placeholder {
        color: #8f8b87 !important;
    }

    .message-send-btn {
        background: #77883e !important;
        color: #ffffff !important;
        border-color: #77883e !important;
    }

    .message-send-btn:hover {
        background: #5f7030 !important;
    }

    /* Filters */
    .filter-section,
    .filters-panel,
    [class*="filter"] {
        background-color: #2a2622;
        border-color: #4a4540;
    }
    
    .filter-group label,
    .filter-label {
        color: #ffffff;
    }
    
    .filter-item {
        background-color: #1a1714;
        border-color: #4a4540;
    }
    
    .filter-item:hover {
        background-color: #3d3934;
    }
    
    .filter-item input[type="checkbox"],
    .filter-item input[type="radio"] {
        border-color: #4a4540;
    }
    
    /* Tips & Help */
    .tips-section,
    .help-section,
    [class*="tips"],
    [class*="help"] {
        background-color: #2a2622;
        border-color: #4a4540;
    }
    
    .tips-section-title,
    .help-section-title {
        color: #ffffff;
    }
    
    .tips-list,
    .help-list {
        color: #d4cfc3;
    }
    
    .tips-list li,
    .help-list li {
        color: #d4cfc3;
    }

    /* ========================================== */
    /* ALERTS & NOTIFICATIONS */
    /* ========================================== */

    .alert {
        background-color: #3d3934 !important;
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .alert-success {
        background-color: rgba(76, 175, 80, 0.2) !important;
        border-color: #4caf50 !important;
        color: #81c784 !important;
    }

    .alert-danger,
    .alert-error {
        background-color: rgba(211, 47, 47, 0.2) !important;
        border-color: #d32f2f !important;
        color: #ef5350 !important;
    }

    .alert-warning {
        background-color: rgba(255, 152, 0, 0.2) !important;
        border-color: #ff9800 !important;
        color: #ffb74d !important;
    }

    .alert-info {
        background-color: rgba(33, 150, 243, 0.2) !important;
        border-color: #2196f3 !important;
        color: #64b5f6 !important;
    }

    /* Danger message */
    .danger-message {
        background-color: #3d3934 !important;
        border-left-color: #dc2626 !important;
    }

    .danger-message p {
        color: #ff9999 !important;
    }

    /* ========================================== */
    /* TOAST NOTIFICATIONS */
    /* ========================================== */

    .toast {
        background-color: #77883e !important;
        color: #ffffff !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.4) !important;
    }

    .toast.success {
        background-color: #4caf50 !important;
    }

    .toast.error {
        background-color: #d32f2f !important;
    }

    .toast.warning {
        background-color: #ff9800 !important;
        color: #ffffff !important;
    }

    .toast.info {
        background-color: #2196f3 !important;
    }

    .notification-toast {
        background-color: #77883e !important;
        color: #ffffff !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.3) !important;
    }

    .notification-toast.success {
        background-color: #4caf50 !important;
    }

    .notification-toast.error {
        background-color: #d32f2f !important;
    }

    .notification-toast.warning {
        background-color: #ff9800 !important;
    }

    /* ========================================== */
    /* DASHBOARD - INBOX & FILTERS */
    /* ========================================== */

    .inbox-main-container {
        background-color: #1a1714 !important;
    }

    .inbox-header {
        background-color: #2a2622 !important;
        border-bottom-color: #4a4540 !important;
    }

    .inbox-header h1 {
        color: #ffffff !important;
    }

    .inbox-sidebar {
        background-color: #1a1714 !important;
    }

    .inbox-tab {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    }

    .inbox-tab:hover {
        background-color: #3d3934 !important;
        color: #ffffff !important;
        border-color: #77883e !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.15) !important;
    }

    .inbox-tab.active {
        background-color: #3d3934 !important;
        color: #ffffff !important;
        border-color: #77883e !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.2) !important;
    }

    .inbox-tab__title {
        color: #e8e4d8 !important;
    }

    .inbox-tab.active .inbox-tab__title {
        color: #d9cc94 !important;
    }

    .inbox-tab__description {
        color: #b8b3b0 !important;
    }

    .inbox-content {
        background-color: #1a1714 !important;
    }

    /* Thread items */
    .thread-item {
        background-color: #2a2622 !important;
        border-color: #4a4540 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    }

    .thread-item:hover {
        background-color: #363632 !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.15) !important;
    }

    .thread-item.active {
        border-color: #77883e !important;
        box-shadow: 0 4px 12px rgba(119, 136, 62, 0.2) !important;
    }

    .thread-avatar {
        background: linear-gradient(135deg, #77883e 0%, #5f7030 100%) !important;
        color: #1a1714 !important;
    }

    .thread-participant-name {
        color: #ffffff !important;
    }

    .thread-last-message {
        color: #b8b3b0 !important;
    }

    .thread-timestamp {
        color: #8a8580 !important;
    }

    /* Message area */
    .message-area {
        background-color: #1a1714 !important;
    }

    .message-area-header {
        background-color: #2a2622 !important;
        border-bottom-color: #4a4540 !important;
    }

    .message-area-header h2 {
        color: #ffffff !important;
    }

    .message-thread {
        background-color: #1a1714 !important;
    }

    /* Message content */
    .message-item {
        margin: 0.5rem 0;
    }

    .message-content {
        color: #e8e4d8 !important;
    }

    /* Filters section */
    .filters-header {
        color: #ffffff !important;
    }

    .filter-button {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
        border-color: #4a4540 !important;
    }

    .filter-button:hover {
        background-color: #3d3934 !important;
        color: #ffffff !important;
        border-color: #77883e !important;
    }

    .filter-button.active {
        background-color: #77883e !important;
        color: #ffffff !important;
        border-color: #77883e !important;
    }

    .sidebar-filters-section {
        background: #2a2622 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    }

    /* ========================================== */
    /* TEXT UTILITIES */
    /* ========================================== */

    .text-primary {
        color: #77883e !important;
    }

    .text-secondary {
        color: #b8b3b0 !important;
    }

    .text-muted {
        color: #8a8580 !important;
    }

    .text-light {
        color: #e8e4d8 !important;
    }

    .text-white {
        color: #ffffff !important;
    }

    .text-accent {
        color: #d9cc94 !important;
    }

    /* Background utilities */
    .bg-primary {
        background-color: #77883e !important;
        color: #ffffff !important;
    }

    .bg-secondary {
        background-color: #3d3934 !important;
        color: #e8e4d8 !important;
    }

    .bg-dark {
        background-color: #1a1714 !important;
        color: #e8e4d8 !important;
    }

    .bg-card {
        background-color: #2a2622 !important;
        color: #e8e4d8 !important;
    }

    /* Border utilities */
    .border-primary {
        border-color: #77883e !important;
    }

    .border-secondary {
        border-color: #4a4540 !important;
    }

    .border-light {
        border-color: #3d3934 !important;
    }

    /* Spacing & Layout */
    .container {
        background-color: transparent;
    }

    .section {
        background-color: #1a1714 !important;
    }

    /* ========================================== */
    /* TIPS & INFO SECTIONS */
    /* ========================================== */

    .tips-container {
        background-color: #2a2622 !important;
        border-color: #4a4540 !important;
    }

    .tip-item {
        border-color: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    .tip-title {
        color: #ffffff !important;
    }

    .tip-description {
        color: #b8b3b0 !important;
    }

    .info-box {
        background-color: #3d3934 !important;
        border-color: #77883e !important;
        color: #e8e4d8 !important;
    }

    .info-box-title {
        color: #d9cc94 !important;
    }

    /* ========================================== */
    /* FUTURE FEATURE NOTES */
    /* ========================================== */

    .future-feature-note {
        background-color: #3d3934 !important;
        border-left-color: #4a4540 !important;
        color: #b8b3b0 !important;
    }

    .feature-badge {
        background: #4a4540 !important;
        color: #e8e4d8 !important;
    }

    /* ========================================== */
    /* WELLNESS PAGE INTRO */
    /* ========================================== */

    .my-wellness-intro {
        background: #2a2622 !important;
        border-color: #4a4540 !important;
    }

    .wellness-intro-title {
        color: #ffffff !important;
    }

    .wellness-intro-text {
        color: #e8e4d8 !important;
    }

    .wellness-intro-subtitle {
        color: #b8b3b0 !important;
    }

    /* ========================================== */
    /* MY WELLNESS PAGE - DARK MODE OVERRIDES */
    /* ========================================== */
    
    /* Main container */
    .my-projects-container {
        background: #1a1714 !important;
    }

    /* ========================================== */
    /* MY WELLNESS - PROJECTS SIDEBAR STYLING */
    /* ========================================== */

    .projects-sidebar__card {
        background: #2a2622 !important;
        border-color: #3d3934 !important;
    }
    
    .projects-sidebar__card:hover {
        border-color: #77883e !important;
    }
    
    .projects-sidebar__card--featured {
        background: rgba(119, 136, 62, 0.15) !important;
        border-color: #77883e !important;
    }
    
    /* Text elements in sidebar */
    .projects-sidebar__text {
        color: #e8e4d8 !important;
    }
    
    .projects-sidebar__text strong {
        color: #d9cc94 !important;
    }
    
    .projects-sidebar__note {
        color: #a09b97 !important;
    }
    
    .projects-sidebar__title {
        color: #d9cc94 !important;
    }
    
    /* Stats card styling */
    .projects-stats-card {
        background: #2a2622 !important;
        border-color: #3d3934 !important;
    }
    
    /* Stat item labels and values */
    .stat-item__label {
        color: #e8e4d8 !important;
    }
    
    .stat-item__value {
        color: #d9cc94 !important;
    }
    
    /* Filter and select elements */
    .projects-filters {
        background: transparent !important;
    }
    
    .filter-select {
        background: #2a2622 !important;
        border-color: #3d3934 !important;
        color: #e8e4d8 !important;
    }
    
    .filter-select:focus {
        border-color: #77883e !important;
        box-shadow: 0 0 0 2px rgba(119, 136, 62, 0.2) !important;
    }
    
    /* Hero section */
    .projects-hero {
        background-color: #77883e !important;
    }
    
    /* CTA buttons in sidebar */
    .projects-sidebar__cta,
    .btn-path-style {
        background: #1a1714 !important;
        border-color: #3d3934 !important;
        color: #e8e4d8 !important;
    }
    
    .btn-path-style:hover {
        background: #77883e !important;
        color: #ffffff !important;
    }
    
    /* Toggle switch styling */
    .toggle-switch .toggle-slider {
        background-color: #3d3934 !important;
    }
    
    .toggle-switch input:checked + .toggle-slider {
        background-color: #77883e !important;
    }

    /* MY WELLNESS - Empty states and descriptions */
    .projects-empty {
        background: #2a2622 !important;
        border-color: #3d3934 !important;
    }
    
    .projects-empty p {
        color: #e8e4d8 !important;
    }
    
    /* Open to Match toggle section */
    .open-to-match-section {
        background: #2a2622 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    }
    
    .toggle-text {
        color: #e8e4d8 !important;
    }
    
    .open-to-match-description {
        color: #b8b3b0 !important;
    }
    
    /* Toggle slider styling */
    .toggle-label .toggle-slider {
        background-color: #3d3934 !important;
        border-color: #4a4540 !important;
    }
    
    .toggle-checkbox:checked + .toggle-slider {
        background-color: #77883e !important;
    }
    
    .toggle-label .toggle-slider::after {
        background-color: #e8e4d8 !important;
    }

    /* ========================================== */
    /* VISIBILITY UTILITIES */
    /* ========================================== */

    .visually-hidden {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border-width: 0 !important;
    }

    /* Report Concern Widget - Remove any background boxes */
    .report-concern-footer {
        background: transparent !important;
        border-top: none !important;
    }

    .report-concern-link {
        background: none !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
        color: #fbf7ec !important;
        padding: 0 !important;
    }

    .report-concern-link:hover {
        background: none !important;
        background-color: transparent !important;
        box-shadow: none !important;
        outline: none !important;
        color: #ffffff !important;
    }

    .report-concern-link:active,
    .report-concern-link:focus {
        background: none !important;
        background-color: transparent !important;
        box-shadow: none !important;
        outline: none !important;
    }
}



