/* ComputeMesh neutral theme contract shared by desktop NodeOS and Android. */
:root {
  color-scheme: dark;
  --cm-bg: #181a1c;
  --cm-surface: #202325;
  --cm-card: #272a2c;
  --cm-card-hover: #303537;
  --cm-border: #383d41;
  --cm-text: #f0f1f2;
  --cm-muted: #b6bbbf;
  --cm-accent: #c1d4cd;
  --cm-danger: #e7a3a8;
}

html body {
  background: var(--cm-bg) !important;
  background-color: var(--cm-bg) !important;
  color: var(--cm-text) !important;
  background-image: none !important;
}

body > div,
body > #svelte {
  background: var(--cm-bg) !important;
  background-color: var(--cm-bg) !important;
  background-image: none !important;
  color: var(--cm-text) !important;
}

main,
.chat-screen,
[data-slot="chat-container"],
.messages-container {
  background: var(--cm-bg) !important;
  background-color: var(--cm-bg) !important;
  background-image: none !important;
  color: var(--cm-text) !important;
}

[class*="bg-background"] {
  background: var(--cm-bg) !important;
  background-color: var(--cm-bg) !important;
  background-image: none !important;
}

[class*="bg-card"],
[class*="bg-popover"] {
  background: var(--cm-surface) !important;
  background-color: var(--cm-surface) !important;
  background-image: none !important;
}

#cm-agent-session-panel {
  background: var(--cm-surface) !important;
  border-color: var(--cm-border) !important;
  color: var(--cm-text) !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .28) !important;
}

#cm-agent-session-panel select,
#cm-agent-session-panel textarea {
  background: var(--cm-card) !important;
  border-color: var(--cm-border) !important;
  color: var(--cm-text) !important;
}

#cm-agent-session-panel button {
  background: var(--cm-card-hover) !important;
  border-color: var(--cm-border) !important;
  color: var(--cm-text) !important;
  box-shadow: none !important;
}

#cm-agent-session-panel button:first-of-type {
  background: var(--cm-accent) !important;
  border-color: var(--cm-accent) !important;
  color: #17221e !important;
}

/* Keep application surfaces readable while removing the legacy neon cards. */
[data-slot="sidebar"],
[data-slot="dialog-content"],
[data-slot="dialog-header"],
[data-slot="dialog-footer"],
[data-slot="sheet-content"],
[data-slot="sheet-header"],
[data-slot="sheet-footer"],
[data-slot="popover-content"],
[data-slot="dropdown-menu-content"],
[data-slot="command"] {
  background: var(--cm-surface) !important;
  background-image: none !important;
  border-color: var(--cm-border) !important;
  color: var(--cm-text) !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .28) !important;
}

button:not(.bg-destructive):not([class*="destructive"]),
[role="button"]:not(.bg-destructive):not([class*="destructive"]) {
  background-image: none !important;
  border-color: var(--cm-border) !important;
  color: var(--cm-text) !important;
}

[data-slot="alert-dialog-action"],
[data-slot="dialog-footer"] button:last-child,
[data-slot="sheet-footer"] button:last-child {
  background: var(--cm-accent) !important;
  border-color: var(--cm-accent) !important;
  color: #17221e !important;
  box-shadow: none !important;
}

[data-slot="alert-dialog-action"].bg-destructive,
[data-slot="alert-dialog-action"][class*="destructive"],
button.bg-destructive,
button[class*="destructive"] {
  background: var(--cm-danger) !important;
  border-color: var(--cm-danger) !important;
  color: #28171a !important;
  box-shadow: none !important;
}

input,
textarea,
select {
  background: var(--cm-card) !important;
  border-color: var(--cm-border) !important;
  color: var(--cm-text) !important;
  box-shadow: none !important;
}

a {
  color: var(--cm-accent) !important;
}

:focus-visible {
  outline: 2px solid var(--cm-accent) !important;
  outline-offset: 2px !important;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
