/* Shared dark surfaces. Never filter content to recolour its decoration. */
html body[data-theme="dark"] {
  --ink: #f5f1fa; --ink-soft: #c9c1d5; --ink-faint: #b4a9c4;
  --muted: #c9c1d5; --shell-ink: #f5f1fa; --shell-muted: #c9c1d5;
  --glass: #15121e; --glass-soft: #15121e;
  color: #f5f1fa;
}
html body[data-theme="dark"]::after { display: none; }
html body[data-theme="dark"] .signal-origin,
html body[data-theme="dark"] .signal-workspace,
html body[data-theme="dark"] .hub-pane {
  filter: none;
  background-image: linear-gradient(rgba(20, 10, 34, .88), rgba(8, 7, 13, .92)), var(--vnc-rail-url);
  background-blend-mode: normal;
  box-shadow: 0 18px 50px #0008, 0 0 0 1px #655078;
}
html body[data-theme="dark"] .signal-origin__aperture,
html body[data-theme="dark"] .signal-workspace__aperture,
html body[data-theme="dark"] .hub-pane::before {
  background: #15121e;
  box-shadow: inset 0 0 0 1px #3f354e;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
/* Keep the artwork around the reading surface rather than across its text. */
html body[data-theme="dark"] .signal-origin__aperture::before,
html body[data-theme="dark"] .signal-origin__aperture::after,
html body[data-theme="dark"] .signal-workspace__aperture::before,
html body[data-theme="dark"] .signal-workspace__aperture::after,
html body[data-theme="dark"] .signal-header::before,
html body[data-theme="dark"] .signal-header::after,
html body[data-theme="dark"] .app-shell-head::before,
html body[data-theme="dark"] .app-shell-head::after { display: none; }
html body[data-theme="dark"] .signal-header,
html body[data-theme="dark"] .app-shell-head { background: #0b0910; }
html body[data-theme="dark"] .abp-content-stack > section,
html body[data-theme="dark"] .abp-content-stack > header,
html body[data-theme="dark"] .billing-summary,
html body[data-theme="dark"] .shell-panel,
html body[data-theme="dark"] .feature-card { background: #15121e; color: #f5f1fa; }
html body[data-theme="dark"] .abp-content-stack > section::before,
html body[data-theme="dark"] .abp-content-stack > section::after,
html body[data-theme="dark"] .abp-content-stack > header::before,
html body[data-theme="dark"] .abp-content-stack > header::after,
html body[data-theme="dark"] label::before,
html body[data-theme="dark"] label::after { display: none; }
html body[data-theme="dark"] label {
  background: transparent; border-color: transparent; color: #f5f1fa; filter: none; box-shadow: none;
}
html body[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]),
html body[data-theme="dark"] textarea,
html body[data-theme="dark"] select {
  background: #09080e; color: #f5f1fa; border: 1px solid #797087;
  box-shadow: none; text-shadow: none; filter: none;
}
html body[data-theme="dark"] input::placeholder,
html body[data-theme="dark"] textarea::placeholder { color: #b4a9c4; opacity: 1; }
html body[data-theme="dark"] .muted,
html body[data-theme="dark"] .signal-origin__description { color: #c9c1d5; }
html body[data-theme="dark"] .signal-origin__content h1,
html body[data-theme="dark"] .signal-workspace h1,
html body[data-theme="dark"] .signal-workspace h2,
html body[data-theme="dark"] .signal-workspace h3 { color: #f5f1fa; text-shadow: none; }
html body[data-theme="dark"] :is(input,textarea,select,button,a,summary):focus-visible {
  outline: 3px solid #ffc46b; outline-offset: 3px;
}
html body[data-theme="dark"] .signal-readout,
html body[data-theme="dark"] .signal-origin__eyebrow {
  background: #382244; color: #f5f1fa; border-color: #9570af;
}
html body[data-theme="dark"] .message.assistant .bubble,
html body[data-theme="dark"] .details-card { background: #21192d; color: #f5f1fa; }
html body[data-theme="dark"] .signal-origin::before,
html body[data-theme="dark"] .signal-origin::after,
html body[data-theme="dark"] .signal-workspace::before,
html body[data-theme="dark"] .signal-workspace::after { opacity: .12; }
html body[data-theme="dark"] .signal-readout::before { display: none; }
html body[data-theme="dark"] .signal-kicker {
  background: #382244; color: #f5f1fa; border-color: #9570af; box-shadow: none;
}
html body[data-theme="dark"] { color-scheme: dark; }
html body[data-theme="dark"] .signal-workspace form button[type="submit"] {
  background: #ffc46b; color: #20140b; border-color: #ffc46b;
  box-shadow: none; text-shadow: none;
}
html body[data-theme="dark"] .signal-workspace form button[type="submit"]::before { display: none; }

html body[data-theme="dark"] .empty {
  background: #21192d; color: #f5f1fa; border: 1px solid #655078;
  box-shadow: 0 16px 40px #0005; backdrop-filter: none; -webkit-backdrop-filter: none;
}
