/* The two themes of the prototype, from the tokens only: the page reads --app-* and never a token directly. */
html {
  --app-bg: var(--color-bg);
  --app-surface: var(--color-surface);
  --app-raise: var(--color-bg-subtle);
  --app-ink: var(--color-text);
  --app-ink-soft: var(--color-text-soft);
  --app-muted: var(--color-text-muted);
  --app-line: var(--color-border);
  --app-line-strong: var(--color-border-strong);
  --app-badge-bg: var(--color-text);
  --app-badge-ink: var(--color-surface);
  --app-btn: var(--color-brand);
  --app-btn-ink: var(--color-on-brand);
  --app-danger: var(--color-danger);
  --app-note-bg: var(--color-note-bg);
  --app-note-line: var(--color-note-line);
  --app-note-ink: var(--color-note-ink);
  --app-note-dot: var(--color-note-dot);
}

/* Reduced motion (FR-092): a person who asked their phone for less motion gets none, whatever a screen draws. */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

html[data-theme="dark"] {
  --app-bg: var(--color-dark-bg);
  --app-surface: var(--color-dark-surface);
  --app-raise: var(--color-dark-bg-subtle);
  --app-ink: var(--color-dark-text);
  --app-ink-soft: var(--color-dark-text-soft);
  --app-muted: var(--color-dark-text-muted);
  --app-line: var(--color-dark-border);
  --app-line-strong: var(--color-dark-border-strong);
  --app-badge-bg: var(--color-dark-brand);
  --app-badge-ink: var(--color-dark-on-brand);
  --app-btn: var(--color-dark-brand);
  --app-btn-ink: var(--color-dark-on-brand);
  --app-danger: var(--color-dark-danger);
  --app-note-bg: var(--color-dark-note-bg);
  --app-note-line: var(--color-dark-note-line);
  --app-note-ink: var(--color-dark-note-ink);
  --app-note-dot: var(--color-dark-note-dot);
}
