@import url("design/themes.css");

@media(prefers-color-scheme: dark) {
    .project-plugin--github .project-plugin__symbol { filter: invert(1); }
    .social-connected-account__logo[src$="/x.svg"] { filter: invert(1); }
    :root {
        --color-organization-strip-text: color-mix(in srgb, var(--color-text) 80%, var(--color-surface));
        --organization-strip-tint-opacity: .1;
        /* === Dark-mode base palette ("GitHub neutrals + brand teal") ===
           GitHub's battle-tested dark-default neutrals provide a polished,
           low-fatigue foundation. Surfaces step up in lightness so
           cards/inputs/dialogs read as elevated. Accent stays Nilo teal. */
        --color-bg-dark: var(--color-hex-0d1117);          /* page canvas */
        --color-nav-dark: var(--color-hex-161b22);         /* sidebar/top-bar surface */
        --color-surface-dark: var(--color-hex-161b22);     /* cards, panels, dialogs */
        --color-surface-dark-raised: var(--color-hex-21262d); /* inputs, inline controls sitting on a panel */
        --color-surface-dark-hover: var(--color-hex-262c36);  /* hover state on surface-dark */
        --color-border-dark: var(--color-hex-30363d);      /* default border */
        --color-border-dark-subtle: var(--color-hex-21262d);  /* less prominent dividers */

        /* === Dark-mode text palette (GitHub) ===
           Crisp high-contrast headings with readable secondary text (WCAG AA). */
        --color-text-dark-primary: var(--color-hex-e6edf3);   /* headings, titles */
        --color-text-dark-secondary: var(--color-hex-7d8590); /* body text, descriptions */
        --color-text-dark-muted: var(--color-hex-6e7681);     /* timestamps, metadata */
        --color-text-dark-disabled: var(--color-hex-484f58);  /* placeholders, disabled states */

        /* === Accent (brand teal, brighter for dark backgrounds) === */
        --color-ticker-age: var(--color-hex-334155);
        --color-ticker-actor: var(--color-hex-1e3a8a);
        --color-ticker-title: var(--color-hex-78350f);
        --color-accent-dark: var(--color-hex-2dd4bf);         /* vibrant brand teal */
        --color-accent-dark-tint: var(--color-hex-0e2a28);    /* subtle teal tint for active fills */
        --color-accent-dark-soft: var(--color-rgba-45-212-191-0-14);

        /* === Semantic alias overrides (used throughout common.css/templates) === */
        --color-navigation-surface: var(--color-nav-dark);
        --bg-secondary: var(--color-surface-dark-raised);
        --surface-color: var(--color-surface-dark);
        --surface-muted: var(--color-surface-dark-raised);
        --border-color: var(--color-border-dark);
        --panel-bg: var(--color-surface-dark);
        --text-primary: var(--color-text-dark-primary);
        --text-secondary: var(--color-text-dark-secondary);
        --text-tertiary: var(--color-text-dark-muted);
        --text-muted: var(--color-text-dark-secondary);
        --success-color-dark: var(--color-hex-86efac);
        --hover-bg: var(--color-surface-dark-hover);

        /* === Shadow scale (dark) ===
           On dark canvases a faint light-on-light shadow is invisible, so the
           elevation tokens use deeper, slightly larger shadows. Reserve
           --shadow-md for true floating layers (dialogs, popovers, menus). */

        /* === Status soft fills (dark) ===
           The light-mode tints are far too bright on dark canvases. Use deep,
           low-saturation fills so badges/pills read as colored without glaring. */
        --color-change-highlight: var(--color-warning-soft);
        --color-encryption-accent: var(--color-hex-a78bfa);
        --color-encryption-soft: var(--color-rgba-139-92-246-0-14);
        --color-encryption-hover: var(--color-rgba-139-92-246-0-20);

        /* Event sources retain distinct, high-contrast pills. */
        --event-source-email-background: #172554;
        --event-source-email-text: #BFDBFE;
        --event-source-direct-background: #2E1065;
        --event-source-direct-text: #DDD6FE;
        --event-source-dispatch-background: #134E4A;
        --event-source-dispatch-text: #99F6E4;
        --event-source-reminders-background: #451A03;
        --event-source-reminders-text: #FDE68A;
        --event-source-notification-background: #334155;
        --event-source-notification-text: #F1F5F9;
        --event-source-agent-task-background: #4A044E;
        --event-source-agent-task-text: #F5D0FE;
        --event-source-calendar-background: #082F49;
        --event-source-calendar-text: #BAE6FD;
        --event-source-work-background: #052E16;
        --event-source-work-text: #BBF7D0;
        --event-source-review-background: #1E1B4B;
        --event-source-review-text: #C7D2FE;
        --event-source-conversation-background: #4C0519;
        --event-source-conversation-text: #FECDD3;
        --event-source-resource-event-background: #431407;
        --event-source-resource-event-text: #FED7AA;

        --status-badge-success-background: var(--color-hex-16a34a);
        --status-badge-success-text: var(--color-surface);
        --status-badge-active-background: var(--color-hex-14532d);
        --status-badge-active-text: var(--color-hex-bbf7d0);
        --status-badge-inactive-background: var(--color-hex-450a0a);
        --status-badge-inactive-text: var(--color-hex-fecaca);
        --status-badge-default-background: var(--color-hex-78350f);
        --status-badge-default-text: var(--color-hex-fde68a);
        --status-badge-open-background: var(--color-hex-14532d);
        --status-badge-open-text: var(--color-hex-bbf7d0);
        --status-badge-closed-background: var(--color-hex-374151);
        --status-badge-closed-text: var(--color-text);
        --status-badge-unknown-background: var(--color-hex-78350f);
        --status-badge-unknown-text: var(--color-hex-fde68a);

        /* === Component-level tokens === */
        --main-color: var(--color-text-dark-primary);
        --main-panel-bg: var(--color-surface-dark);
        --main-panel-border: var(--color-border-dark);
        --nav-link-color-dark: var(--color-hex-9da7b3);
        --nav-link-hover-bg-dark: var(--color-rgba-255-255-255-0-06);
        --nav-link-hover-color-dark: var(--color-hex-e6edf3);
        --table-bg: var(--color-bg-dark);
        --table-border-color: var(--color-border-dark);
        --table-head-bg: var(--color-surface-dark);
        --table-head-color: var(--color-text-dark-muted);
        --table-cell-bg: var(--color-bg-dark);
        --table-cell-color: var(--color-text-dark-secondary);
        --table-row-hover-bg: var(--color-surface-dark);
        --table-shadow: 0 20px 40px var(--color-rgba-0-0-0-0-35);
    }

    .agent-tasks-workspace__tasks {
        --agent-tasks-list-hover-background: color-mix(in srgb, var(--color-accent-dark) 10%, transparent);
        --agent-tasks-list-selected-background: var(--color-accent-dark-tint);
    }

    body {
        background-color: var(--color-bg-dark);
        color: var(--main-color);
    }

    nav {
        background-color: var(--color-navigation-surface);
        color: var(--main-color);
    }

    a {
        color: var(--main-color);
    }

    a:hover {
        background-color: var(--color-rgba-255-255-255-0-08);
        color : var(--color-hex-f3f4f6);
    }

    /* Subscription / credit warning banners dark mode */
    .subscription-banner {
        background-color: var(--color-hex-2a2000);
        color: var(--color-hex-b89a40);
        border-bottom-color: var(--color-hex-5a4800);
    }

    .subscription-banner.subscription-banner-warning {
        background-color: var(--color-hex-2a2000);
        color: var(--color-hex-b89a40);
        border-bottom-color: var(--color-hex-5a4800);
    }

    .subscription-banner.subscription-banner-error {
        background-color: var(--color-hex-2a0000);
        color: var(--color-hex-c07070);
        border-bottom-color: var(--color-hex-5a0000);
    }

    .subscription-banner-action {
        color: inherit;
    }

    .credit-warning {
        background-color: var(--color-hex-2a2000);
        color: var(--color-hex-b89a40);
        border-bottom-color: var(--color-hex-5a4800);
    }

    .credit-warning-critical {
        background-color: var(--color-hex-2a0000);
        color: var(--color-hex-c07070);
        border-bottom-color: var(--color-hex-5a0000);
    }

    .credit-warning-banner a,
    .credit-warning-critical a {
        color: inherit;
    }

    nav#main-nav a:not([aria-current='page']),
    .nav-submenu a:not([aria-current='page']) {
        color: var(--nav-link-color-dark);
    }

    nav#main-nav .main-nav-environment-badge {
        border-color: var(--color-hex-854d0e);
        background: linear-gradient(180deg, var(--color-rgba-146-64-14-0-22) 0%, var(--color-rgba-69-26-3-0-28) 100%);
        color: var(--color-hex-fcd34d);
        box-shadow: none;
    }

    nav#main-nav a:hover:not([aria-current='page']),
    .nav-submenu a:hover:not([aria-current='page']) {
        background-color: var(--nav-link-hover-bg-dark);
        color: var(--nav-link-hover-color-dark);
    }

    /* Disabled menu item dark mode */
    nav#main-nav a.disabled,
    .nav-submenu a.disabled {
        opacity: 0.4;
    }

    nav#main-nav a.disabled::after {
        color: var(--color-hex-8a8a8a);
    }

    .nav-submenu a.disabled:hover {
        background-color: transparent;
        color: var(--nav-link-color-dark);
    }

    /* Top nav toggle button */
    nav#top-nav .nav-toggle:hover {
        background-color: var(--color-rgba-255-255-255-0-1);
    }

    .nav-profile-dropdown {
        background-color: var(--color-hex-3d3d3d);
        border-color: var(--color-hex-555);
    }

    .nav-profile-dropdown-item:hover {
        background-color: var(--color-rgba-255-255-255-0-1);
    }

    /* Reminders link with pending reminders */
    #main-nav :is(.reminders-link.has-reminders, .communication-link.has-mentions) {
        color: var(--color-hex-ef5350);
    }

    #main-nav :is(.reminders-link.has-reminders, .communication-link.has-mentions) svg {
        fill: var(--color-hex-ef5350);
    }

    #main-nav :is(.reminders-link.has-reminders, .communication-link.has-mentions):hover {
        color: var(--color-hex-f44336);
        background-color: var(--color-rgba-239-83-80-0-15);
    }

    .menu-count-badge {
        background-color: var(--color-hex-ef5350);
    }

    /* Overlay dark mode */
    .nav-overlay {
        background: var(--color-rgba-0-0-0-0-7);
    }

    input, textarea, select {
        background-color: transparent;
        color: var(--color-text);
        border-color: transparent;
        border-block-end-color: var(--color-border);
    }

    input::placeholder,
    textarea::placeholder {
        color: var(--color-hex-9ca3af);
    }

    .message.error,
    .message.alert {
        --message-accent: var(--color-hex-f87171);
        --message-text: var(--color-hex-fca5a5);
    }

    .message.success {
        --message-accent: var(--color-hex-4ade80);
        --message-text: var(--color-hex-6ee7b7);
    }

    .message.information {
        --message-accent: var(--color-hex-60a5fa);
        --message-text: var(--color-hex-7ab8c8);
    }

    .message.warning {
        --message-accent: var(--color-hex-fbbf24);
        --message-text: var(--color-hex-b89a40);
    }

    .dialog-box {
        background-color: var(--color-surface-dark);
    }

    .dialog-title {
        color: var(--color-text);
    }

    .dialog-message {
        color: var(--color-hex-9ca3af);
    }

    .dialog-close-btn {
        color: var(--color-hex-9ca3af);
    }

    .dialog-close-btn:hover,
    .dialog-close-btn:focus-visible {
        background: var(--color-rgba-255-255-255-0-08);
        color: var(--color-hex-f3f4f6);
    }

    .dialog-section-title {
        color: var(--color-text);
    }

    .dialog-input {
        background: transparent;
        border-block-end-color: var(--color-border);
        color: var(--color-text);
    }

    .dialog-input.input-error,
    .dialog-input:user-invalid {
        border-block-end-color: var(--color-danger);
    }

    .dialog-input::placeholder {
        color: var(--color-hex-6b7280);
    }

    button.danger-outline,
    a.danger-outline {
        color: var(--color-hex-fca5a5);
        border-color: var(--color-hex-f87171);
        background-color: transparent;
    }

    button.danger-outline:hover,
    a.danger-outline:hover {
        background-color: var(--color-rgba-239-68-68-0-16);
        border-color: var(--color-hex-fca5a5);
        color: var(--color-hex-fecaca);
    }

    button.danger-outline:focus-visible,
    a.danger-outline:focus-visible {
        outline: 2px solid var(--color-hex-f87171);
    }

    .neo-email-compose-row,
    .neo-email-compose-actions {
        border-color: var(--color-hex-374151);
    }

    .neo-email-compose-row-label {
        color: var(--color-hex-9ca3af);
    }

    neo-contact-lookup.neo-email-compose-recipient-lookup .meta-label {
        color: var(--color-hex-9ca3af);
    }

    neo-contact-lookup .neo-contact-lookup-selected-value {
        background: var(--color-surface-dark-raised);
        color: var(--color-text-dark-primary);
        border-color: var(--color-border-dark);
    }

    neo-contact-lookup .neo-contact-lookup-suggestions {
        border-color: var(--color-hex-374151);
        background: var(--color-hex-111827);
        box-shadow: 0 18px 36px var(--color-rgba-0-0-0-0-45);
    }

    neo-contact-lookup .neo-contact-lookup-suggestion {
        color: var(--color-hex-f9fafb);
    }

    neo-contact-lookup .neo-contact-lookup-suggestion:hover,
    neo-contact-lookup .neo-contact-lookup-suggestion.is-selected {
        background: var(--color-hex-1f2937);
    }

    neo-contact-lookup .neo-contact-lookup-name {
        color: var(--color-hex-f9fafb);
    }

    .dialog-panel {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    .dialog-form-card {
        background: var(--color-hex-0f172a);
        border-color: var(--color-hex-374151);
        box-shadow: none;
    }

    .neo-toast {
        background: var(--color-hex-22c55e);
        color: var(--color-hex-000);
    }

    /* Profile section dark mode */

    .profile-form .profile-avatar {
        border-color: var(--color-hex-4b5563);
        background: var(--color-hex-2d2d2d);
    }

    .content-panel--flat {
        background: transparent;
        border-color: var(--color-hex-374151);
        box-shadow: none;
    }

    .profile-form .avatar-editor:hover {
        border-color: var(--color-hex-4b5563);
        background: var(--color-hex-2d2d2d);
    }

    .nilo-appearance-selector__choice {
        background: var(--color-hex-242a30);
        border-color: transparent;
    }

    .file-drop-target.is-drag-active {
        border-color: var(--color-info);
        background: var(--color-rgba-59-130-246-0-16);
        color: var(--color-hex-e2e8f0);
    }

    .drop-target-field.is-drag-active {
        background: var(--color-hex-1e293b);
    }

    .avatar-crop-editor canvas {
        border-color: var(--color-hex-4b5563);
        background: var(--color-hex-2d2d2d);
    }

    /* Chat component dark mode */
    .message-composer,
    .neo-chat-box .composer {
        background: var(--color-hex-2d2d2d);
        border-color: var(--color-hex-444);
    }

    .message-composer:focus-within,
    .neo-chat-box .composer:focus-within {
        border-color: var(--color-primary, var(--color-hex-16a34a));
        box-shadow: 0 0 0 3px var(--color-rgba-22-163-74-0-22);
    }

    .neo-chat-box .working-context__track {
        stroke: var(--color-hex-4b5563);
    }

    .neo-chat-box .working-context__panel {
        border-color: var(--color-hex-4b5563);
        background: var(--color-hex-2d2d2d);
    }

    .neo-chat-box .working-context__reference-count {
        border-color: var(--color-hex-2d2d2d);
        background: var(--color-hex-94a3b8);
        color: var(--color-hex-111827);
    }

    .dispatch-composer {
        border-color: var(--color-hex-444);
        background: var(--color-hex-2d2d2d);
    }

    .dispatch-composer:focus-within {
        border-color: var(--color-primary, var(--color-hex-16a34a));
        background: var(--color-hex-2d2d2d);
        box-shadow: 0 0 0 3px var(--color-rgba-22-163-74-0-22);
    }

    .neo-chat-box .chat-context-bar {
        border-top-color: var(--color-hex-444);
    }

    .neo-chat-box .composer .voice-input-btn {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .composer .voice-input-btn:hover {
        border-color: var(--color-hex-4b5563);
        background: var(--color-rgba-148-163-184-0-08);
        color: var(--color-hex-e5e7eb);
    }

    .neo-chat-box .composer .voice-input-btn.is-recording {
        border-color: transparent;
        background: transparent;
        color: var(--color-surface);
        box-shadow: none;
    }

    .neo-chat-box .composer .voice-input-btn.is-recording:hover {
        border-color: transparent;
        background: transparent;
        color: var(--color-surface);
    }

    .neo-chat-box .composer .voice-input-btn.is-recording.is-busy,
    .neo-chat-box .composer .voice-input-btn.is-busy {
        border-color: transparent;
        background: transparent;
        color: var(--color-surface);
        box-shadow: none;
    }

    .neo-chat-box .composer .voice-status {
        color: var(--color-hex-cbd5e1);
    }

    .neo-chat-box .composer .voice-status-time {
        color: var(--color-hex-e2e8f0);
    }

    .neo-chat-box .composer .voice-status.is-recording .voice-status-label {
        color: var(--color-hex-fca5a5);
    }

    .neo-chat-box .composer .voice-status.is-busy .voice-status-label {
        color: var(--color-hex-99f6e4);
    }

    .neo-chat-box .composer .voice-wave-bar {
        background: var(--color-hex-64748b);
    }

    .neo-chat-box .composer .attachment-preview-item {
        background: var(--color-hex-3d3d3d);
        border-color: var(--color-hex-555);
    }

    .neo-chat-box .composer .attachment-preview-thumb {
        background: var(--color-hex-252526);
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .composer .attachment-name {
        color: var(--color-hex-e0e0e0);
    }

    .neo-chat-box .composer .attachment-meta {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .composer .attachment-excerpt {
        background: var(--color-hex-252526);
        color: var(--color-hex-e5e7eb);
    }

    .neo-chat-box .composer .attachment-remove {
        color: var(--color-hex-9ca3af);
        background: var(--color-rgba-17-24-39-0-9);
    }

    .neo-chat-box .composer .attachment-remove:hover {
        color: var(--color-hex-f87171);
        background: var(--color-hex-4a2c2c);
    }

    .neo-chat-box .composer-hint {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .selected-project-item-strip {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .selected-project-item-link {
        color: var(--color-hex-f3f4f6);
    }

    .neo-chat-box .selected-project-item-clear {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .active-skills-strip {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .chat-context-bar {
        border-top-color: var(--color-hex-3f3f46);
    }

    .neo-chat-box .chat-context-bar label {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .chat-context-select,
    .neo-chat-box .chat-context-project-dialog-select {
        color: var(--color-hex-f3f4f6);
    }

    .neo-chat-box .chat-context-project-trigger {
        color: var(--color-hex-f3f4f6);
    }

    .neo-chat-box .chat-helper-actions .chat-attachment-picker-trigger,
    .neo-chat-box .chat-helper-actions .chat-canvas-toggle,
    .neo-chat-box .chat-helper-actions .chat-gallery-toggle,
    .neo-chat-box .chat-helper-actions .chat-media-settings-toggle,
    .neo-chat-box .chat-helper-actions .chat-model-tier-toggle,
    .neo-chat-box .chat-helper-actions .chat-mode-toggle,
    .neo-chat-box .chat-helper-actions .share-toggle {
        background: var(--color-surface-dark-raised);
        border-color: var(--color-border-dark);
        color: var(--color-text-dark-primary);
    }

    .neo-chat-box .chat-helper-actions .chat-attachment-picker-trigger:hover,
    .neo-chat-box .chat-helper-actions .chat-canvas-toggle:hover,
    .neo-chat-box .chat-helper-actions .chat-gallery-toggle:hover,
    .neo-chat-box .chat-helper-actions .chat-media-settings-toggle:hover,
    .neo-chat-box .chat-helper-actions .chat-model-tier-toggle:hover,
    .neo-chat-box .chat-helper-actions .chat-mode-toggle:hover,
    .neo-chat-box .chat-helper-actions .share-toggle:hover {
        border-color: var(--color-text-dark-secondary);
        background: var(--color-surface-dark-hover);
        color: var(--color-text-dark-primary);
    }

    .neo-chat-box .chat-helper-actions .share-toggle.shared {
        background: var(--color-rgba-59-130-246-0-14);
        border-color: var(--color-rgba-96-165-250-0-35);
        color: var(--color-hex-93c5fd);
    }

    .neo-chat-box .chat-media-settings-toggle.is-active {
        background: var(--color-accent-dark-tint);
        border-color: var(--color-accent-dark);
        color: var(--color-accent-dark);
    }

    .neo-chat-box .chat-model-tier-toggle.is-active {
        background: var(--color-info-soft);
        border-color: var(--color-hex-60a5fa);
        color: var(--color-hex-93c5fd);
    }

    .neo-chat-box .chat-mode-toggle.is-active,
    .neo-chat-box .chat-mode-toggle.is-personal {
        background: rgba(99, 102, 241, 0.16);
        border-color: var(--color-hex-818cf8);
        color: var(--color-hex-c7d2fe);
    }

    .neo-chat-box .chat-canvas-panel {
        background: linear-gradient(180deg, var(--color-hex-17171a) 0%, var(--color-hex-111827) 100%);
        border-color: var(--color-hex-374151);
        box-shadow: none;
    }

    .neo-chat-box .chat-canvas-header {
        background: linear-gradient(180deg, var(--color-hex-1f2937) 0%, var(--color-hex-111827) 100%);
        border-bottom-color: var(--color-hex-374151);
    }

    .neo-chat-box .chat-canvas-title {
        color: var(--color-hex-f3f4f6);
    }

    .neo-chat-box .chat-canvas-subtitle,
    .neo-chat-box .chat-canvas-markdown {
        color: var(--color-hex-d1d5db);
    }

    .neo-chat-box .chat-canvas-close {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .chat-canvas-close:hover {
        background: var(--color-hex-374151);
        color: var(--color-hex-f9fafb);
    }

    .neo-chat-box .chat-canvas-markdown h1,
    .neo-chat-box .chat-canvas-markdown h2,
    .neo-chat-box .chat-canvas-markdown h3,
    .neo-chat-box .chat-canvas-markdown h4,
    .neo-chat-box .chat-canvas-markdown h5,
    .neo-chat-box .chat-canvas-markdown h6 {
        color: var(--color-hex-f9fafb);
    }

    .neo-chat-box.reduced-fresh-chat-controls .composer {
        background: var(--color-surface-dark-raised);
        border-color: var(--color-border-dark);
        box-shadow: 0 16px 38px var(--color-rgba-0-0-0-0-34);
    }

    .neo-chat-box.reduced-fresh-chat-controls .composer:focus-within {
        border-color: var(--color-accent-dark);
        box-shadow:
            0 0 0 3px var(--color-accent-dark-soft),
            0 18px 42px var(--color-rgba-0-0-0-0-38);
    }

    .neo-chat-box.encrypted-project-chat .composer,
    .neo-chat-box.encrypted-project-chat.reduced-fresh-chat-controls .composer {
        border-color: var(--color-encryption-accent);
    }

    .neo-chat-box.encrypted-project-chat .composer:focus-within,
    .neo-chat-box.encrypted-project-chat.reduced-fresh-chat-controls .composer:focus-within {
        border-color: var(--color-encryption-accent);
        background: var(--color-surface-dark-raised);
        box-shadow:
            0 0 0 3px var(--color-encryption-soft),
            0 18px 42px var(--color-rgba-0-0-0-0-38);
    }

    .neo-chat-box.reduced-fresh-chat-controls .composer textarea,
    .neo-chat-box.reduced-fresh-chat-controls .composer input[type="text"],
    .neo-chat-box.reduced-fresh-chat-controls .composer input:not([type]) {
        color: var(--text-primary);
    }

    .neo-chat-box.reduced-fresh-chat-controls .composer textarea::placeholder,
    .neo-chat-box.reduced-fresh-chat-controls .composer input[type="text"]::placeholder,
    .neo-chat-box.reduced-fresh-chat-controls .composer input:not([type])::placeholder {
        color: var(--text-secondary);
    }

    .neo-chat-box.reduced-fresh-chat-controls .chat-helper-actions .chat-attachment-picker-trigger,
    .neo-chat-box.reduced-fresh-chat-controls .composer .voice-input-btn {
        color: var(--text-secondary);
    }

    .neo-chat-box.reduced-fresh-chat-controls .chat-helper-actions .chat-attachment-picker-trigger:hover,
    .neo-chat-box.reduced-fresh-chat-controls .composer .voice-input-btn:hover {
        background: var(--color-surface-dark-hover);
        color: var(--text-primary);
    }

    .neo-chat-box.reduced-fresh-chat-controls .chat-helper-actions .chat-fresh-controls-toggle {
        border-color: var(--color-border-dark);
        background: var(--color-surface-dark);
        color: var(--text-secondary);
    }

    .neo-chat-box.reduced-fresh-chat-controls .chat-helper-actions .chat-fresh-controls-toggle:hover {
        border-color: var(--color-accent-dark);
        background: var(--color-accent-dark-tint);
        color: var(--text-primary);
    }

    .neo-chat-box .chat-canvas-markdown a {
        color: var(--color-hex-5eead4);
    }

    .neo-chat-box .chat-canvas-toggle.is-active,
    .neo-chat-box .chat-gallery-toggle.is-active {
        background: var(--color-accent-dark-tint);
        border-color: var(--color-accent-dark);
        color: var(--color-accent-dark);
    }

    .neo-cms-gallery .gallery-panel {
        background: linear-gradient(180deg, var(--color-hex-17171a) 0%, var(--color-hex-111827) 100%);
        border-color: var(--color-hex-374151);
        box-shadow: none;
    }

    .neo-cms-gallery .gallery-header {
        background: linear-gradient(180deg, var(--color-hex-1f2937) 0%, var(--color-hex-111827) 100%);
        border-bottom-color: var(--color-hex-374151);
    }

    .neo-cms-gallery .gallery-title {
        color: var(--color-hex-f3f4f6);
    }

    .neo-cms-gallery .gallery-item {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    .neo-cms-gallery .gallery-empty {
        color: var(--color-hex-9ca3af);
    }

    .media-gallery-thumb-placeholder {
        background:
            linear-gradient(180deg, var(--color-rgba-3-7-18-0-08) 0%, var(--color-rgba-3-7-18-0-82) 100%),
            linear-gradient(135deg, var(--color-hex-1e3a8a) 0%, var(--color-hex-78350f) 52%, var(--color-hex-14532d) 100%);
        color: var(--color-hex-f3f4f6);
    }

    .media-gallery-thumb-label {
        background: var(--color-rgba-15-23-42-0-62);
        color: var(--color-hex-e5e7eb);
    }

    .media-gallery-thumb-title {
        color: var(--color-hex-f8fafc);
    }

    .media-gallery-summary,
    .media-gallery-chat-link-static {
        color: var(--color-hex-9ca3af);
    }

    .cms-demo-pane {
        background:
            linear-gradient(180deg, var(--color-rgba-15-23-42-0-92), var(--color-rgba-15-23-42-0-97)),
            linear-gradient(135deg, var(--color-rgba-30-58-138-0-28), var(--color-rgba-120-53-15-0-22), var(--color-rgba-20-83-45-0-24));
        border-color: var(--color-hex-334155);
    }

    .cms-demo-pane__eyebrow {
        color: var(--color-hex-93c5fd);
    }

    .cms-demo-pane__header p,
    .cms-demo-pane__card p {
        color: var(--color-hex-94a3b8);
    }

    .cms-demo-pane__card {
        background: var(--color-rgba-15-23-42-0-58);
        border-color: var(--color-rgba-71-85-105-0-62);
    }

    .cms-demo-pane__badge.is-live {
        background: var(--color-rgba-34-197-94-0-18);
        color: var(--color-hex-bbf7d0);
    }

    .cms-demo-pane__badge.is-preview {
        background: var(--color-rgba-245-158-11-0-18);
        color: var(--color-hex-fcd34d);
    }

    .neo-chat-box .chat-github-issue-link {
        background: var(--color-hex-1f2937);
        border-color: var(--color-hex-374151);
        color: var(--color-hex-e5e7eb);
    }

    .neo-chat-box .chat-github-issue-link:hover {
        background: var(--color-rgba-59-130-246-0-22);
        color: var(--color-hex-93c5fd);
    }

    .neo-chat-box .chat-github-issue-link .issue-repo,
    .github-issue-dialog-meta {
        color: var(--color-hex-9ca3af);
    }

    .github-issue-dialog-status {
        background: var(--color-hex-1f2937);
        border-color: var(--color-hex-374151);
    }

    .github-issue-dialog-status.is-error {
        background: var(--color-rgba-239-68-68-0-16);
        border-color: var(--color-rgba-239-68-68-0-35);
    }

    .status-pill.status-info {
        background: var(--color-rgba-59-130-246-0-22);
        color: var(--color-hex-93c5fd);
    }

    .project-tag-filter[aria-pressed="true"],
    .project-tag-filter:hover {
        background: var(--color-primary-soft);
        color: var(--color-primary);
    }

    .code-display,
    .list-compact {
        color: var(--color-text);
    }

    .settings-page {
        padding-bottom: 3rem;
    }

    .marketplace-page {
        --marketplace-accent: var(--color-hex-5eead4);
        --marketplace-accent-soft: var(--color-rgba-94-234-212-0-14);
        --marketplace-glow: var(--color-rgba-45-212-191-0-18);
    }

    .marketplace-hero {
        border-color: var(--color-rgba-94-234-212-0-16);
    }

    .marketplace-value-card {
        background: var(--color-rgba-15-23-42-0-56);
        border-color: var(--color-rgba-94-234-212-0-18);
    }

    .marketplace-card::before {
        background: linear-gradient(180deg, var(--color-rgba-94-234-212-0-08), transparent 46%);
    }

    button.secondary,
    a.secondary,
    a.secondary:visited {
        background: transparent;
        color: var(--color-text);
        border-color: var(--border-color);
    }

    button.secondary:hover,
    a.secondary:hover {
        background: var(--color-rgba-255-255-255-0-08);
        border-color: var(--border-color);
    }

    button.encryption-action,
    button.encryption-action:hover {
        color: var(--color-encryption-accent);
        border-color: var(--color-encryption-accent);
    }

    button.encryption-action {
        background: var(--color-encryption-soft);
    }

    button.encryption-action:hover {
        background: var(--color-encryption-hover);
    }

    button.secondary:focus-visible,
    a.secondary:focus-visible {
        outline: 2px solid var(--color-hex-9ca3af);
        outline-offset: 2px;
    }

    button.icon-btn:hover,
    a.icon-btn:hover,
    button.icon-btn:focus-visible,
    a.icon-btn:focus-visible {
        background: var(--color-rgba-255-255-255-0-1);
    }

    .settings-page-kicker {
        color: var(--success-color-dark);
    }

    .manual-page__eyebrow {
        color: var(--success-color-dark);
    }

    .manual-page__summary {
        color: var(--text-muted);
    }

    .manual-topic__status {
        color: var(--color-hex-fcd34d);
    }

    .settings-page-summary,
    .settings-section-intro,
    .supporting-text {
        color: var(--text-muted);
    }

    .status-pill.status-muted {
        background: var(--color-rgba-148-163-184-0-18);
        color: var(--color-hex-cbd5e1);
    }

    .status-pill.status-progress {
        background: var(--color-rgba-245-158-11-0-18);
        color: var(--color-hex-fcd34d);
    }

    .status-pill.status-live {
        background: var(--color-rgba-34-197-94-0-18);
        color: var(--color-hex-86efac);
    }

    .status-pill.status-encrypted-at-rest {
        border-color: var(--color-encryption-accent);
        background: var(--color-encryption-soft);
        color: var(--color-encryption-accent);
    }

    .projects-card-list .project-card--encrypted::after,
    .projects-card-list .project-card--paused::before {
        opacity: 0.18;
    }

    .status-pill.status-warning {
        background: var(--color-rgba-239-68-68-0-18);
        color: var(--color-hex-fca5a5);
    }

    .upload-surface {
        border-color: var(--border-color);
        background: linear-gradient(135deg, var(--color-rgba-46-139-87-0-12), var(--color-rgba-255-255-255-0-03));
    }

    .upload-preview {
        background: var(--color-surface);
        border: 1px solid var(--border-color);
        border-radius: 0.5rem;
        padding: 0.35rem;
        box-sizing: border-box;
        filter: none;
    }

    .offer-card.is-active {
        border-color: var(--color-hex-3aaf6a);
    }

    .billing-page .billing-offer-card.is-active {
        border-color: var(--color-hex-3aaf6a);
        background: linear-gradient(180deg, var(--color-rgba-58-175-106-0-12) 0%, var(--bg-secondary) 100%);
        box-shadow: 0 0.35rem 1rem var(--color-rgba-0-0-0-0-25), 0 0 0 3px var(--color-rgba-58-175-106-0-18);
    }

    .offer-card.is-pending {
        border-color: var(--color-hex-e0b030);
    }

    .runner-chat-log {
        border-color: var(--border-color);
        background: var(--color-surface);
    }

    .vitals-grid dt {
        color: var(--text-secondary);
    }

    .vitals-last-seen {
        color: var(--text-secondary);
    }

    .runner-chat-target {
        color: var(--color-primary);
    }

    /* Attachment info box in sent messages - dark mode */

    /* Chat attachment previews - dark mode */
    .neo-chat-box .chat-attachment-preview {
        border-color: var(--color-hex-444);
        background: var(--color-hex-2d2d2d);
    }

    .neo-chat-box .chat-attachment-name {
        color: var(--color-hex-e0e0e0);
    }

    .neo-chat-box .chat-attachment-size,
    .neo-chat-box .chat-attachment-label {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .chat-attachment-text-preview {
        background: var(--color-hex-1e1e1e);
        color: var(--color-hex-d4d4d4);
    }

    .neo-chat-box .chat-attachment-link {
        color: var(--color-hex-e0e0e0);
    }

    .neo-chat-box .chat-attachment-info-btn {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .chat-attachment-info-btn:hover {
        color: var(--color-hex-e0e0e0);
    }

    .chat-attachment-info-filename {
        color: var(--color-hex-e0e0e0);
    }

    .chat-attachment-info-label {
        color: var(--color-hex-9ca3af);
    }

    .chat-attachment-info-summary {
        color: var(--color-hex-d4d4d4);
    }

    .chat-attachment-info-download {
        color: var(--color-hex-60a5fa);
    }

    .neo-chat-box .composer textarea,
    .neo-chat-box .composer input {
        background: transparent;
        color: var(--main-color);
    }

    .neo-chat-box .selection-action-popover {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    .neo-chat-box .selection-action-title {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .selection-action-btn {
        color: var(--color-hex-e5e7eb);
    }

    .neo-chat-box .selection-action-btn:hover {
        background: var(--color-rgba-255-255-255-0-08);
    }

    .todo-sidebar {
        border-color: var(--color-hex-4b5563);
        background: var(--color-hex-1f2937);
        box-shadow: 0 10px 24px var(--color-rgba-0-0-0-0-35);
    }

    .todo-sidebar-header {
        border-bottom-color: var(--color-hex-374151);
        background: linear-gradient(180deg, var(--color-hex-1f2937) 0%, var(--color-text) 100%);
    }

    .todo-sidebar-title,
    .todo-sidebar-list-title {
        color: var(--color-hex-fbbf24);
    }

    .todo-sidebar-list-title[data-scope]::after {
        background: var(--color-rgba-251-191-36-0-15);
        color: var(--color-hex-fcd34d);
    }

    .todo-sidebar-item:hover {
        background: var(--color-rgba-251-191-36-0-15);
    }

    .todo-sidebar-item-text {
        color: var(--color-text);
    }

    .todo-sidebar-item-meta {
        color: var(--color-hex-9ca3af);
    }

    .todo-sidebar-item-remove {
        color: var(--color-hex-fca5a5);
    }

    .todo-sidebar-item-remove:hover {
        color: var(--color-hex-f87171);
    }

    .todo-sidebar-item.is-done .todo-sidebar-item-text {
        color: var(--color-hex-9ca3af);
    }

    .neo-chat-box .todo-sidebar-restore {
        background: var(--color-text);
        border-color: var(--color-hex-4b5563);
        color: var(--color-text);
        box-shadow: 0 6px 16px var(--color-rgba-0-0-0-0-35);
    }

    .neo-chat-box .todo-sidebar-restore:hover {
        background: var(--color-hex-1f2937);
    }

    .chat-response .message,
    .chat-response.user .response-content,
    .chat-steering-content {
        background: linear-gradient(135deg, var(--color-hex-1e3a8a) 0%, var(--color-info) 100%);
        color: var(--color-text-dark-primary);
    }

    .prospecting-prompt-library__prompt {
        background: var(--color-surface);
        border-color: var(--color-border);
        color: var(--text-primary);
    }

    .prospecting-prompt-library__prompt:hover,
    .prospecting-prompt-library__prompt:focus-visible {
        background: var(--color-accent-dark-tint);
        border-color: var(--color-accent-dark);
        color: var(--color-accent-dark);
    }

    /* Chat action bar dark mode */
    .chat-action-bar {
        border-top-color: var(--color-hex-374151);
    }

    .chat-action-bar .action-btn {
        background: transparent;
        color: var(--color-hex-6b7280);
    }

    .chat-action-bar .action-btn:hover {
        background: var(--color-hex-374151);
        color: var(--color-hex-9ca3af);
    }

    .chat-action-bar .action-delete:hover {
        background: var(--color-hex-450a0a);
        color: var(--color-hex-fca5a5);
    }

    .chat-action-bar .action-show-prompt:hover {
        background: var(--color-hex-0c4a6e);
        color: var(--color-hex-7dd3fc);
    }

    /* Prompt dialog dark mode */
    .dialog-box .prompt-content {
        background: var(--color-hex-1e293b);
        color: var(--main-color);
    }

    /* Delete link dark mode */
    .delete-link {
        color: var(--color-hex-9ca3af);
    }

    .delete-link:hover {
        color: var(--color-hex-fca5a5);
    }

    .chat-response .answer,
    .chat-response.assistant .response-content {
        background: var(--color-hex-1e293b);
        color: var(--main-color);
    }

    .agent-task-trigger {
        border-color: var(--color-border-dark);
        background: color-mix(in srgb, var(--color-accent-dark) 12%, var(--color-surface-dark));
        color: var(--color-text-dark-primary);
    }

    .agent-task-trigger__label {
        color: var(--color-text-dark-secondary);
    }

    /* Error messages from image generation */
    .chat-response.error .response-content {
        background: var(--color-hex-450a0a);
        border-color: var(--color-hex-7f1d1d);
        color: var(--color-hex-fca5a5);
    }

    .chat-response .answer h1,
    .chat-response .answer h2,
    .chat-response .answer h3,
    .chat-response .answer h4,
    .chat-response .answer h5,
    .chat-response .answer h6,
    .chat-response .response-content h1,
    .chat-response .response-content h2,
    .chat-response .response-content h3,
    .chat-response .response-content h4,
    .chat-response .response-content h5,
    .chat-response .response-content h6 {
        color: var(--color-hex-93c5fd);
    }

    .chat-response .answer code,
    .chat-response .response-content code {
        background: var(--color-hex-334155);
    }

    .chat-response .answer pre,
    .chat-response .response-content pre {
        background: var(--color-hex-1a1a1a);
    }

    .pending-email-draft-block {
        background: linear-gradient(180deg, var(--color-hex-0f172a) 0%, var(--color-hex-1e293b) 100%);
        border-color: var(--color-hex-334155);
    }

    .pending-email-draft-block-header,
    .pending-email-draft-block-body-label,
    .pending-email-draft-block-hint {
        color: var(--color-hex-cbd5e1);
    }

    .pending-email-draft-block-meta dt {
        color: var(--color-hex-e2e8f0);
    }

    .pending-email-draft-block-meta dd {
        color: var(--color-hex-f8fafc);
    }

    .pending-email-draft-block-body {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-334155);
        color: var(--color-hex-f8fafc);
    }

    .neo-chat-box .mode-hint {
        color: var(--color-text-dark-secondary);
    }

    .neo-chat-box .option-group label {
        color: var(--color-text-dark-secondary);
    }

    .neo-chat-box .image-option {
        color: var(--color-text-dark-primary);
    }

    /* Toggle switch dark mode */
    .neo-chat-box .toggle-track {
        background: var(--color-hex-4b5563);
    }

    .neo-chat-box .toggle-track::after {
        background: var(--color-toggle-thumb);
    }

    .neo-chat-box .toggle-switch input:checked + .toggle-track {
        background: var(--color-toggle-accent);
    }

    .neo-chat-box .toggle-switch input:focus + .toggle-track {
        box-shadow: 0 0 0 2px var(--color-rgba-74-222-128-0-3);
    }

    /* Image generating indicator dark mode */
    .image-generating-indicator {
        background: linear-gradient(135deg, var(--color-hex-1e293b) 0%, var(--color-hex-1e3a5f) 100%);
        border-color: var(--color-hex-374151);
    }

    /* PDF download link dark mode */
    .pdf-download-link {
        background: var(--color-hex-1e293b);
        border-color: var(--color-hex-374151);
        color: var(--color-hex-4ade80);
    }

    .pdf-download-link:hover {
        background: var(--color-hex-1e3a5f);
        border-color: var(--color-hex-4ade80);
    }

    .generating-spinner {
        border-color: var(--color-hex-4b5563);
        border-top-color: var(--color-hex-4ade80);
    }

    .generating-text {
        color: var(--color-text);
    }

    .generating-timer {
        background: var(--color-hex-374151);
        color: var(--color-hex-9ca3af);
        border-color: var(--color-hex-4b5563);
    }

    /* Staged generation preview dark mode */
    .stage-preview-container {
        border-top-color: var(--color-hex-4b5563);
    }

    .stage-preview-image {
        border-color: var(--color-hex-4ade80);
    }

    .stage-preview-label {
        color: var(--color-hex-9ca3af);
    }

    /* Image generation info dark mode */
    .image-generation-info {
        background: var(--color-hex-451a03);
        border-color: var(--color-hex-92400e);
        color: var(--color-hex-fcd34d);
    }

    /* Image generation error dark mode */
    .image-generation-error {
        background: var(--color-hex-450a0a);
        border-color: var(--color-hex-7f1d1d);
        color: var(--color-hex-fca5a5);
    }

    .image-generation-error .retry-button {
        background: var(--color-hex-b91c1c);
    }

    .image-generation-error .retry-button:hover {
        background: var(--color-danger);
    }

    .orphan-retry .orphan-notice {
        color: var(--text-secondary);
    }

    /* Neon working-border reads well on dark; keep a touch more glow. */
    .neo-chat-box.chat-working .composer::after {
        filter: drop-shadow(0 0 8px var(--neon-blue));
    }

    /* Reminders dark mode */
    .reminder-entry.overdue:not([aria-current="true"]) td {
        background-color: var(--color-hex-4a1515);
    }

    .reminder-actions .reminder-action-btn:hover {
        background-color: var(--color-hex-3d3d3d);
        border-color: var(--color-hex-555);
    }

    .empty-state {
        color: var(--color-hex-888);
    }

    .completed-section summary {
        color: var(--color-hex-888);
    }

    /* Notification Bell Dark Mode */
    .notification-bell-button:hover {
        background-color: var(--color-rgba-255-255-255-0-1);
    }

    .notification-dropdown {
        background: var(--color-hex-1f2937);
        border-color: var(--color-hex-374151);
    }

    .notification-header {
        background: var(--color-text);
        border-color: var(--color-hex-374151);
    }

    .notification-header h3 {
        color: var(--color-hex-f9fafb);
    }

    .notification-item {
        border-color: var(--color-hex-374151);
    }

    .notification-item:hover {
        background-color: var(--color-surface-dark-hover);
    }

    .notification-item.unread {
        background-color: var(--color-hex-1e1b4b);
    }

    .notification-item.unread:hover {
        background-color: var(--color-hex-312e81);
    }

    .notification-icon {
        background-color: var(--color-hex-374151);
        color: var(--color-hex-9ca3af);
    }

    .notification-item.unread .notification-icon {
        background-color: var(--color-hex-6366f1);
        color: var(--color-surface);
    }

    /* Due reminders - need attention */
    .notification-item.due {
        background-color: var(--color-hex-422006);
    }

    .notification-item.due:hover {
        background-color: var(--color-hex-78350f);
    }

    .notification-item.due .notification-icon {
        background-color: var(--color-warning);
        color: var(--color-surface);
    }

    /* Overdue reminders - urgent */
    .notification-item.overdue {
        background-color: var(--color-hex-450a0a);
    }

    .notification-item.overdue:hover {
        background-color: var(--color-hex-7f1d1d);
    }

    .notification-item.overdue .notification-icon {
        background-color: var(--color-danger);
        color: var(--color-surface);
    }

    .notification-item.overdue .notification-title {
        color: var(--color-hex-fca5a5);
    }

    .notification-item.overdue .notification-time {
        color: var(--color-hex-f87171);
        font-weight: 600;
    }

    .notification-title {
        color: var(--color-hex-f9fafb);
    }

    .notification-message {
        color: var(--color-hex-9ca3af);
    }

    .notification-time {
        color: var(--color-hex-6b7280);
    }

    .notification-state--empty,
    .notification-state--loading {
        color: var(--color-hex-9ca3af);
    }

    .notification-footer {
        background: var(--color-text);
        border-color: var(--color-hex-374151);
    }

    .notification-footer a {
        color: var(--color-hex-818cf8);
    }

    /* Folder tabs dark mode */
    .folder-tabs {
        border-bottom-color: var(--color-hex-374151);
    }

    .folder-tab {
        background: var(--color-surface-dark);
        color: var(--color-text-dark-muted);
        border-color: var(--color-border-dark);
    }

    .folder-tab:hover {
        background: var(--color-surface-dark-hover);
        color: var(--color-text-dark-primary);
    }

    /* Image chats gallery dark mode */
    .chat-card {
        background: var(--color-surface-dark);
        border-color: var(--color-border-dark);
    }

    .chat-card:hover {
        box-shadow: 0 4px 12px var(--color-rgba-0-0-0-0-45);
    }

    .chat-card .thumbnail {
        background: var(--color-bg-dark);
    }

    .chat-card .thumbnail-placeholder {
        color: var(--color-text-dark-disabled);
    }

    .chat-card .card-title {
        color: var(--color-text-dark-primary);
    }

    .chat-card .card-summary {
        color: var(--color-text-dark-secondary);
    }

    .chat-card .card-meta {
        color: var(--color-text-dark-muted);
    }

    .chat-card .reason-starred {
        background: var(--color-hex-422006);
        color: var(--color-hex-fde68a);
    }

    .chat-card .reason-todos {
        background: var(--color-hex-1e3a5f);
        color: var(--color-hex-93c5fd);
    }

    .chat-card .reason-reminders {
        background: var(--color-hex-78350f);
        color: var(--color-hex-fde68a);
    }

    .chat-card .share-toggle,
    .chat-card .star-toggle {
        border-color: var(--color-border-dark);
        background: var(--color-surface-dark-raised);
        color: var(--color-text-dark-primary);
    }

    .chat-card .share-toggle:hover,
    .chat-card .star-toggle:hover {
        background: var(--color-surface-dark-hover);
    }

    .chat-card .share-toggle.shared {
        background: var(--color-hex-1e3a5f);
        border-color: var(--color-info);
        color: var(--color-hex-bfdbfe);
    }

    .chat-card.chat-card--starred,
    .chat-card .star-toggle.starred {
        border-color: var(--color-warning, var(--color-hex-f59e0b));
    }

    .chat-card .star-toggle.starred {
        background: var(--color-rgba-217-119-6-0-18);
        color: var(--color-warning, var(--color-hex-fbbf24));
    }

    .folder-tab.active {
        background: var(--color-primary);
        color: var(--color-surface);
        border-color: var(--color-primary);
        border-bottom-color: var(--color-primary);
    }

    /* Communication dark mode */
    .communication-page {
        color: var(--color-hex-e2e8f0);
    }

    .communication-page .meta-bar,
    .communication-page .table-secondary-copy,
    .communication-page .progress-meter-label,
    .communication-page .meta-label,
    .communication-page .supporting-text {
        color: var(--color-hex-94a3b8);
    }

    .communication-page .table-primary-copy,
    .communication-page .empty-state h1,
    .communication-page .dialog-message {
        color: var(--color-hex-e2e8f0);
    }

    .communication-page .toolbar-btn-compact {
        background: var(--color-rgba-255-255-255-0-05);
        border-color: var(--color-border-dark);
        color: var(--color-text-dark-secondary);
        box-shadow: none;
    }

    .communication-page .toolbar-btn-compact:hover {
        background: var(--color-rgba-255-255-255-0-09);
        color: var(--color-text-dark-primary);
    }

    .communication-page .toolbar-btn-compact .button-icon {
        color: var(--color-text-dark-primary);
        text-shadow: none;
    }

    .communication-page #open-communication-chat.toolbar-btn-compact .button-icon,
    .communication-page #refresh-mail-list-btn.toolbar-btn-compact .button-icon,
    .communication-page #toggle-summary-btn.toolbar-btn-compact .button-icon,
    .communication-page .pagination-buttons .toolbar-btn-compact .button-icon {
        color: var(--color-hex-5a9ab0);  /* muted teal-blue accent */
    }

    .communication-page .folder-tab.active.toolbar-btn-compact {
        background: var(--color-rgba-255-255-255-0-09);
        border-color: var(--color-hex-3a6070);
        color: var(--color-text-dark-primary);
        box-shadow: none;
    }

    .communication-page .folder-tab.active.toolbar-btn-compact .button-icon {
        color: var(--color-hex-5a9ab0);
    }

    .process-flow-shell {
        background: linear-gradient(180deg, var(--color-hex-111827) 0%, var(--color-hex-1f2937) 100%);
        border-color: var(--color-hex-374151);
        box-shadow: none;
    }

    .process-flow-head span,
    .process-flow-stage-meta p,
    .process-flow-mode-summary {
        color: var(--color-hex-9ca3af);
    }

    .process-flow-stage-meta h3 {
        color: var(--color-hex-93c5fd);
    }

    .process-flow-stage-branch::before,
    .process-flow-stage-branch::after,
    .process-flow-node:not(:last-child)::after {
        border-top-color: var(--color-hex-4b5563);
    }

    .process-flow-stage-branch::before {
        border-left-color: var(--color-hex-4b5563);
    }

    .process-flow-node-dot {
        box-shadow: 0 0 0 4px var(--color-rgba-125-211-252-0-12);
    }

    .process-flow-node-card {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
        box-shadow: none;
    }

    .process-flow-node-disabled .process-flow-node-dot {
        background: var(--color-hex-6b7280);
        box-shadow: 0 0 0 4px var(--color-rgba-107-114-128-0-15);
    }

    .process-flow-node-disabled:not(:last-child)::after {
        border-top-color: var(--color-hex-374151);
    }

    .process-flow-node-card-disabled {
        background: linear-gradient(180deg, var(--color-rgba-17-24-39-0-92) 0%, var(--color-rgba-31-41-55-0-76) 100%);
        border-style: dashed;
        opacity: 0.6;
    }

    button.tone-btn,
    a.tone-btn,
    .tone-btn {
        background: var(--tone-btn-bg-dark, transparent);
        color: var(--tone-btn-fg-dark, var(--color-hex-9ca3af));
        border-color: var(--tone-btn-border-dark, var(--color-hex-4b5563));
    }

    button.tone-btn:hover,
    a.tone-btn:hover,
    .tone-btn:hover {
        background: var(--color-rgba-255-255-255-0-06);
    }

    button.tone-btn.active,
    button.tone-btn[aria-pressed='true'],
    a.tone-btn.active,
    a.tone-btn[aria-pressed='true'],
    .tone-btn.active,
    .tone-btn[aria-pressed='true'] {
        background: var(--color-rgba-74-222-128-0-12);
        border-color: var(--color-hex-22c55e);
        color: var(--color-hex-86efac);
        box-shadow: inset 0 0 0 1px var(--color-hex-22c55e);
    }

    .neo-generated-image .image-container {
        background-color: var(--color-surface-secondary-dark, var(--color-hex-2a2a2a));
    }

    .neo-generated-image .loading-placeholder {
        color: var(--color-text-secondary-dark, var(--color-hex-aaa));
    }

    .neo-generated-image .loading-spinner {
        border-color: var(--color-border-dark, var(--color-hex-444));
        border-top-color: var(--color-primary-dark, var(--color-hex-4da6ff));
    }

    .neo-generated-image .retry-btn {
        border-color: var(--color-border-dark, var(--color-hex-444));
        background: var(--color-surface-secondary-dark, var(--color-hex-2a2a2a));
        color: var(--color-text-primary-dark, var(--color-hex-e0e0e0));
    }

    .neo-generated-image .retry-btn:hover {
        background: var(--color-surface-tertiary-dark, var(--color-hex-333));
    }

    .process-flow-node-card::after {
        border-color: var(--color-hex-6b7280);
        background: var(--color-hex-111827);
    }

    .process-flow-node-card-disabled::after {
        border-color: var(--color-hex-4b5563);
        background: var(--color-hex-111827);
    }

    .process-flow-stage-inactive .process-flow-stage-meta h3,
    .process-flow-stage-inactive .process-flow-stage-meta p {
        color: var(--color-hex-6b7280);
    }

    .process-flow-node-mode-inactive .process-flow-node-dot {
        background: var(--color-hex-6b7280);
        box-shadow: 0 0 0 4px var(--color-rgba-107-114-128-0-15);
    }

    .process-flow-node-mode-inactive:not(:last-child)::after {
        border-top-color: var(--color-hex-374151);
    }

    .process-flow-node-mode-inactive .process-flow-node-card {
        background: linear-gradient(180deg, var(--color-rgba-17-24-39-0-92) 0%, var(--color-rgba-31-41-55-0-76) 100%);
        border-style: dashed;
        opacity: 0.68;
    }

    .process-flow-node-mode-inactive .process-flow-node-card::after {
        border-color: var(--color-hex-4b5563);
        background: var(--color-hex-111827);
    }

    @media (max-width: 760px) {
        .process-flow-node:not(:last-child)::after {
            border-left-color: var(--color-hex-4b5563);
        }
    }

    /* Reference Subjects Component dark mode */
    .neo-reference-subjects .subject-card {
        border-color: var(--color-hex-374151);
        background: var(--color-hex-1f2937);
    }

    .neo-reference-subjects .subject-name {
        color: var(--color-hex-f3f4f6);
    }

    .neo-reference-subjects .image-count {
        color: var(--color-hex-9ca3af);
    }

    .neo-reference-subjects .empty-message {
        color: var(--color-hex-9ca3af);
    }

    .action-tile {
        background: var(--color-hex-1f2937);
        border-color: var(--color-hex-374151);
        color: var(--color-hex-f3f4f6);
    }

    .action-tile:hover {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-4b5563);
    }

    .action-tile-icon {
        background: var(--color-rgba-148-163-184-0-14);
        color: var(--color-hex-cbd5e1);
    }

    .action-tile--encrypted-output,
    .action-tile--encrypted-output:hover {
        border-color: var(--color-encryption-accent);
    }

    .action-tile--encrypted-output:hover {
        background: var(--color-encryption-hover);
    }

    .action-tile--encrypted-output .action-tile-icon {
        background: var(--color-encryption-soft);
        color: var(--color-encryption-accent);
    }

    .selection-card {
        border-color: var(--color-hex-374151);
    }

    .selection-card:hover {
        background: var(--color-text);
    }

    .selection-card:has(input[type="radio"]:checked),
    .selection-card:has(input[type="checkbox"]:checked) {
        border-color: var(--color-info);
        background: var(--color-hex-1e3a5f);
    }

    .metric-card,
    .option-item {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    .progress-meter-bar,
    .progress-meter-bar::-webkit-progress-bar {
        background: var(--color-hex-374151);
    }

    .progress-meter-label {
        color: var(--color-hex-f3f4f6);
    }

    .selection-card-copy small,
    .breadcrumb-inline,
    .timestamp-label,
    .recording-status-row {
        color: var(--color-hex-9ca3af);
    }

    .status-pill.status-danger {
        background: var(--color-hex-7f1d1d);
        color: var(--color-hex-fca5a5);
    }

    /* "not available" summary badges and other warning pills */
    .status-pill.status-warning {
        background: var(--color-hex-2a2000);
        color: var(--color-hex-8a7030);
        border-color: var(--color-hex-4a3800);
    }

    .dns-result-row > .status-warning,
    .dns-record-table .status-warning {
        background: var(--color-warning-soft);
        color: var(--color-hex-fbbf24);
        border-color: var(--color-hex-fbbf24);
    }

    .title-edit-input,
    .asset-select {
        color: var(--color-hex-f3f4f6);
    }

    .asset-card {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    .video-reference-count,
    .video-reference-selection-card {
        background: var(--color-hex-1f2937);
        border-color: var(--color-hex-374151);
    }

    .video-reference-selection-name,
    .asset-inline-toggle {
        color: var(--color-hex-f3f4f6);
    }

    .asset-preview {
        background: var(--color-hex-1f2937);
    }

    .asset-toggle-indicator {
        background: var(--color-rgba-17-24-39-0-92);
        border-color: var(--color-hex-4b5563);
    }

    .asset-meta,
    .video-reference-selection-angle,
    .video-reference-count,
    .asset-option-note,
    .danger-panel-copy p {
        color: var(--color-hex-9ca3af);
    }

    .danger-panel {
        background: var(--color-hex-111827);
        border-color: var(--color-rgba-248-113-113-0-5);
    }

    .recording-trigger.is-recording {
        background: var(--color-rgba-198-40-40-0-14);
        color: var(--color-hex-fca5a5);
        border-color: var(--color-rgba-248-113-113-0-35);
    }

    .dialog-lightbox-image {
        background: var(--color-hex-111827);
    }

    /* Landing page dark mode */

    .public-site-header {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    /* No Credits Dialog dark mode */
    .no-credits-feature-name {
        background: var(--color-hex-1f2937);
        color: var(--color-hex-9ca3af);
    }

    /* System status banner dark mode */
    .system-status-banner {
        background: var(--color-hex-3e2723);
        color: var(--color-hex-ffcc80);
        border-color: var(--color-hex-5d4037);
    }

    .system-status-header {
        color: var(--color-hex-ffb74d);
    }

    .system-status-item.down .status-label {
        background: var(--color-hex-7f1d1d);
        color: var(--color-hex-fecaca);
    }

    .system-status-item.degraded .status-label {
        background: var(--color-hex-78350f);
        color: var(--color-hex-fef3c7);
    }

    .status-message {
        color: var(--color-hex-bcaaa4);
    }

    .system-status-message {
        color: var(--color-hex-bcaaa4);
    }

    /* Sign-in / Sign-up dark mode */
    body#signin,
    body#signup,
    body#login-success {
        background: linear-gradient(135deg, var(--color-hex-1a1a1a) 0%, var(--color-hex-232323) 50%, var(--color-hex-1e1e1e) 100%);
    }

    body#signin h1,
    body#signup h1,
    body#login-success h1 {
        color: var(--color-text);
    }

    body#signin form,
    body#signup form {
        background: var(--color-hex-2a2a2a);
        border-color: var(--color-hex-3a3a3a);
    }

    body#signin form p,
    body#signup form p,
    body#signin #passkey-section p {
        color: var(--color-hex-9ca3af);
    }

    body#signin #passkey-section {
        background: var(--color-hex-2a2a2a);
        border-color: var(--color-hex-3a3a3a);
    }

    /* Signup page dark mode */

    .admin-support-ticket-list {
        background: var(--color-hex-2a2a2a);
        border-color: var(--color-hex-3a3a3a);
    }

    .support-ticket-table tr.ticket-row:hover td {
        background: var(--color-hex-1f2937);
    }

    .support-ticket-dialog-message {
        border-color: var(--color-hex-3a3a3a);
    }

    .support-ticket-dialog-message header,
    .support-ticket-dialog-empty {
        color: var(--color-hex-9ca3af);
    }

    .support-ticket-dialog-overview,
    .support-ticket-dialog-description h3,
    .support-ticket-dialog-thread h3,
    .support-ticket-dialog-body {
        color: var(--color-text);
    }

    .support-ticket-dialog-body a {
        color: var(--color-hex-93c5fd);
    }

    .support-ticket-row-action,
    .support-ticket-github-link a {
        color: var(--color-primary);
    }

    .summary-hover .summary-postit {
        background: var(--color-hex-4a4520);
        border-color: var(--color-hex-6b6320);
        color: var(--color-hex-fde68a);
        box-shadow: 2px 3px 10px var(--color-rgba-0-0-0-0-4);
    }

    /* Navigation loading bar */
    .nav-loading-bar {
        background: linear-gradient(90deg, var(--color-hex-fbbf24), var(--color-hex-4ade80));
        box-shadow: 0 1px 8px var(--color-rgba-0-0-0-0-4);
    }

    /* neo-file-upload component */
    .nfu-drop-zone {
        background: var(--color-hex-1e293b);
        border-color: var(--color-hex-475569);
        color: var(--color-hex-94a3b8);
    }
    .nfu-drop-zone:hover {
        border-color: var(--primary-color, var(--color-info));
        background: var(--color-hex-1e3a5f, var(--color-hex-1e3a5f));
    }
    .nfu-drop-title {
        color: var(--color-hex-e2e8f0);
    }
    .nfu-drop-icon {
        background: var(--color-hex-334155, var(--color-hex-334155));
    }
    .nfu-file-item {
        background: var(--color-hex-1e293b);
        border-color: var(--color-hex-475569);
    }
    .nfu-file-name {
        color: var(--color-hex-e2e8f0);
    }
    .nfu-file-meta {
        color: var(--color-hex-94a3b8);
    }
    .nfu-file-thumb-generic {
        color: var(--color-hex-94a3b8);
    }
    .nfu-file-thumb {
        background: var(--color-hex-334155, var(--color-hex-334155));
    }
    .nfu-progress {
        background: var(--color-hex-475569);
    }
    .nfu-file-remove:hover {
        background: var(--color-hex-3b1414, var(--color-hex-3b1414));
    }

    .chat-activity-panel {
        border-color: var(--color-hex-374151);
        background: var(--color-hex-111827);
    }

    .chat-activity-panel.is-completed,
    .chat-activity-panel.is-stopped {
        background: var(--color-hex-0f172a);
    }

    .chat-activity-panel.is-failed {
        background: var(--color-hex-3f1d1d);
        border-color: var(--color-danger);
    }

    .chat-activity-header,
    .chat-activity-runtime,
    .chat-activity-step-time,
    .chat-activity-step-detail {
        color: var(--color-hex-9ca3af);
    }

    .chat-activity-chevron {
        border-color: var(--color-hex-9ca3af);
    }

    .chat-activity-summary,
    .chat-activity-step-label {
        color: var(--color-hex-e5e7eb);
    }

    .chat-activity-step {
        border-color: var(--color-hex-374151);
        background: var(--color-hex-1f2937);
    }

    .tool-step {
        color: var(--color-hex-9ca3af);
    }

    .tool-step-completed {
        color: var(--color-hex-9ca3af);
    }

    .tool-step-running {
        color: var(--color-hex-c7d2fe);
    }

    .tool-step-failed {
        color: var(--color-hex-fca5a5);
    }

    .tool-step-label {
        color: var(--color-hex-e5e7eb);
    }

    .tool-step-running .tool-step-label {
        color: var(--color-hex-c7d2fe);
    }

    .tool-step-failed .tool-step-label {
        color: var(--color-hex-fca5a5);
    }

    .tool-step-result {
        color: var(--color-hex-9ca3af);
    }

    .tool-step-timestamp {
        color: var(--text-secondary);
    }

    /* Newsletter preferences */
    .newsletter-prefs-panel {
        background: var(--color-hex-1f2937);
    }

    .newsletter-prefs-section {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    .newsletter-prefs-option-btn {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
        color: var(--color-hex-e5e7eb);
    }

    .newsletter-prefs-option-btn.selected {
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        color: var(--color-surface);
    }

    .newsletter-prefs-delivery-card {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
    }

    .newsletter-prefs-delivery-card.selected {
        border-color: var(--color-primary);
    }

    .newsletter-prefs-delivery-card span {
        color: var(--color-hex-9ca3af);
    }

    .dispatch-source-avatar[data-service="github"] {
        --dispatch-service-avatar-background: var(--color-surface-alt);
        --dispatch-service-avatar-color: var(--color-hex-f0f6fc);
    }

    /* Compose tray */
    .compose-tray {
        background: var(--color-hex-111827);
        border-color: var(--color-hex-374151);
        box-shadow: 0 -4px 24px var(--color-rgba-0-0-0-0-45);
    }

    .compose-tray-header {
        background: var(--color-hex-1f2937);
        border-bottom-color: var(--color-hex-374151);
    }

    .compose-tray-title {
        color: var(--color-hex-f9fafb);
    }

    .compose-tray-btn {
        color: var(--color-hex-9ca3af);
    }

    .compose-tray-btn:hover {
        background: var(--color-hex-374151);
        color: var(--color-hex-f9fafb);
    }

    .sales-pipeline-card.is-missing-call-script {
        background: #2a2310;
        border-color: #5c4b18;
    }

    .sales-pipeline-card.is-missing-call-script .sales-pipeline-card__link:hover {
        background: #352c14;
    }

    /* Usage history grouping */

    .usage-group-inner-table td {
        border-bottom-color: var(--color-hex-2d2d35);
    }

    /* Digital Presence: not-found choice cards */
    .dk-choice-card {
        background: var(--surface-card-dark, var(--color-hex-1e1e28));
        border-color: var(--color-rgba-255-255-255-0-12);
    }

    .dk-choice-body {
        color: var(--color-hex-aaa);
    }

    /* Digital Presence selector cards */
    .presence-option-selector:hover {
        border-color: var(--color-accent-dark, var(--color-hex-4db896));
        background: var(--color-rgba-77-184-150-0-08);
    }

    .presence-option-selector.is-selected {
        border-color: var(--color-accent-dark, var(--color-hex-4db896));
        background: var(--color-rgba-77-184-150-0-12);
    }

    .presence-option-body {
        color: var(--color-hex-aaa);
    }

    .nilo-task-board__card--closed .nilo-task-board__card-title,
    .nilo-task-board__card--closed .nilo-task-board__description,
    .nilo-task-board__card--closed .nilo-task-board__changed-at {
        color: var(--color-hex-9da7b3);
    }

}
