/* Tema Black do chat global. A preferencia da conta vale mesmo em paginas de conteudo claro. */
html[data-vision-theme-preference="black"] {
    --vision-black-canvas: #09090a;
    --vision-black-canvas-soft: #0e0e10;
    --vision-black-surface: #151517;
    --vision-black-surface-raised: #1b1b1e;
    --vision-black-surface-muted: #222225;
    --vision-black-line: #343438;
    --vision-black-line-strong: #49494f;
    --vision-black-text: #f4efe8;
    --vision-black-muted: #aaa39a;
    --vision-black-faint: #928b83;
    --vision-black-red: #d35f68;
    --vision-black-red-strong: #b73440;
    --vision-black-red-soft: rgba(211, 95, 104, .14);
    --vision-black-accent-soft: #f09aa0;
    --vision-black-green: #64c58e;
    --vision-black-green-soft: rgba(100, 197, 142, .14);
    --vision-black-amber: #dfad59;
    --vision-black-amber-soft: rgba(223, 173, 89, .14);
    --vision-black-blue: #78a8e8;
    --vision-black-blue-soft: rgba(120, 168, 232, .14);
    --vision-black-summary: #151517;
    --vision-black-summary-card: #1b1b1e;
    --vision-black-summary-border: #343438;
    --vision-black-hover: #25171a;
    --vision-black-table-head: #202024;
    --vision-black-shadow: 0 18px 48px rgba(0, 0, 0, .34);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-chat {
    border-color: var(--vision-black-line);
    background: var(--vision-black-canvas-soft);
    color: var(--vision-black-text);
    box-shadow: 0 28px 74px rgba(0, 0, 0, .62);
    scrollbar-color: var(--vision-black-line-strong) var(--vision-black-surface);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-chat ::selection {
    color: #fff;
    background: #8f2630;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-chat :focus-visible {
    outline-color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-toggle {
    border-color: rgba(211, 95, 104, .34);
    background: var(--vision-black-red-strong);
    color: #fff;
    box-shadow: 0 8px 26px rgba(183, 52, 64, .34);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-toggle:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-toggle:focus-visible,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-toggle.is-active {
    background: var(--vision-black-red);
    color: #fff;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-header {
    border-bottom-color: var(--vision-black-line);
    background: var(--vision-black-surface);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-brand strong,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-heading strong,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-empty strong {
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-brand span:not(.vision-ai-brand-icon),
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-heading span,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-empty,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-empty p,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message-label,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-compacted,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-status,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-note {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-brand-icon {
    background: linear-gradient(145deg, var(--vision-black-red-strong), #7f2028);
    box-shadow: 0 7px 18px rgba(183, 52, 64, .28);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-header-actions button {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-header-actions button:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-header-actions button:focus-visible,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-header-actions button.is-active {
    background: var(--vision-black-red-soft);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history {
    background: var(--vision-black-canvas-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-row {
    border: 1px solid transparent;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-row:hover {
    border-color: var(--vision-black-line);
    background: var(--vision-black-surface-raised);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-row.is-active {
    border-color: rgba(211, 95, 104, .36);
    background: var(--vision-black-red-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-open strong {
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-open span,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-rename,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-delete {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-rename:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-rename:focus-visible {
    background: var(--vision-black-surface-muted);
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-delete:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-history-delete:focus-visible {
    background: var(--vision-black-red-soft);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-empty > span {
    border: 1px solid rgba(211, 95, 104, .26);
    background: var(--vision-black-red-soft);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message-content {
    border-color: var(--vision-black-line);
    background: var(--vision-black-surface-raised);
    color: var(--vision-black-text);
    box-shadow: 0 5px 18px rgba(0, 0, 0, .18);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-user .vision-ai-message-content {
    border-color: var(--vision-black-red-strong);
    background: var(--vision-black-red-strong);
    color: #fff;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content :is(h3, h4, h5, h6) {
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content a {
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content a:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content a:focus-visible {
    color: #ffc1c5;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content blockquote {
    border-left-color: var(--vision-black-red);
    background: var(--vision-black-red-soft);
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content code {
    background: var(--vision-black-surface-muted);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content pre {
    border: 1px solid var(--vision-black-line);
    background: var(--vision-black-canvas);
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-message.is-assistant .vision-ai-message-content pre code {
    background: transparent;
    color: inherit;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-table-wrap {
    border-color: var(--vision-black-line);
    background: var(--vision-black-surface);
    scrollbar-color: var(--vision-black-line-strong) var(--vision-black-surface);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-table-wrap :is(th, td) {
    border-color: var(--vision-black-line);
    color: var(--vision-black-text);
    background: var(--vision-black-surface-raised);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-table-wrap th {
    background: var(--vision-black-table-head);
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-table-wrap tbody tr:hover td {
    background: var(--vision-black-hover);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-thinking {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-thinking > i,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-status.is-loading::before {
    background: var(--vision-black-red);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-failed-label,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-status.is-error,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-error {
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-status.is-success {
    color: var(--vision-black-green);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-retry-button {
    border-color: rgba(211, 95, 104, .38);
    background: var(--vision-black-red-soft);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-retry-button:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-retry-button:focus-visible {
    border-color: var(--vision-black-red);
    background: var(--vision-black-hover);
    color: #ffc1c5;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer {
    border-color: var(--vision-black-line);
    background: var(--vision-black-surface-raised);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer:focus-within {
    border-color: var(--vision-black-red);
    box-shadow: 0 0 0 3px var(--vision-black-red-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer textarea {
    color: var(--vision-black-text);
    caret-color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer textarea::placeholder {
    color: var(--vision-black-faint);
    opacity: 1;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer .vision-ai-send {
    background: var(--vision-black-red-strong);
    color: #fff;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer .vision-ai-send:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer .vision-ai-send:focus-visible {
    background: var(--vision-black-red);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer .vision-ai-voice-input {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer .vision-ai-voice-input:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer .vision-ai-voice-input:focus-visible {
    background: var(--vision-black-red-soft);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-composer .vision-ai-voice-input.is-listening {
    background: var(--vision-black-red-strong);
    color: #fff;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-mic-spinner {
    border-color: rgba(240, 154, 160, .3);
    border-top-color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-footer {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context:focus-visible {
    background: var(--vision-black-surface-muted);
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context-ring {
    background: conic-gradient(var(--vision-black-red) calc(var(--context-percent) * 1%), var(--vision-black-line) 0);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context-ring i {
    background: var(--vision-black-canvas-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context-tooltip {
    border-color: var(--vision-black-line-strong);
    background: var(--vision-black-surface-muted);
    color: var(--vision-black-text);
    box-shadow: var(--vision-black-shadow);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context-tooltip::after {
    border-top-color: var(--vision-black-surface-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context-tooltip small,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-context-tooltip > span {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-backdrop {
    background: rgba(0, 0, 0, .64);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-card {
    border-color: var(--vision-black-line);
    background: var(--vision-black-surface-raised);
    color: var(--vision-black-text);
    box-shadow: 0 18px 42px rgba(0, 0, 0, .55);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-icon {
    border: 1px solid rgba(211, 95, 104, .26);
    background: var(--vision-black-red-soft);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-layer.is-delete .vision-ai-action-icon {
    border-color: var(--vision-black-red-strong);
    background: var(--vision-black-red-strong);
    color: #fff;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-copy strong {
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-copy p,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-field span {
    color: var(--vision-black-muted);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-field input {
    border-color: var(--vision-black-line);
    background: var(--vision-black-surface);
    color: var(--vision-black-text);
    caret-color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-field input:focus {
    border-color: var(--vision-black-red);
    box-shadow: 0 0 0 3px var(--vision-black-red-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-buttons .is-secondary {
    border-color: var(--vision-black-line-strong);
    background: var(--vision-black-surface-muted);
    color: var(--vision-black-text);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-buttons .is-secondary:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-buttons .is-secondary:focus-visible {
    border-color: var(--vision-black-red);
    background: var(--vision-black-hover);
    color: var(--vision-black-accent-soft);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-buttons .is-primary {
    background: var(--vision-black-red-strong);
    color: #fff;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-buttons .is-primary:hover,
html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-action-buttons .is-primary:focus-visible {
    background: var(--vision-black-red);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-chat :is(.vision-ai-history, .vision-ai-messages, .vision-ai-status, .vision-ai-table-wrap)::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-chat :is(.vision-ai-history, .vision-ai-messages, .vision-ai-status, .vision-ai-table-wrap)::-webkit-scrollbar-track {
    background: var(--vision-black-surface);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-chat :is(.vision-ai-history, .vision-ai-messages, .vision-ai-status, .vision-ai-table-wrap)::-webkit-scrollbar-thumb {
    border: 2px solid var(--vision-black-surface);
    border-radius: 999px;
    background: var(--vision-black-line-strong);
}

html[data-vision-theme-preference="black"] body .vision-fab-menu .vision-ai-chat :is(.vision-ai-history, .vision-ai-messages, .vision-ai-status, .vision-ai-table-wrap)::-webkit-scrollbar-thumb:hover {
    background: var(--vision-black-red);
}
