/* UNISON brand control contract: every actionable control uses the blue/mint palette. */
:root {
  --unison-button-blue: #5aa7ff;
  --unison-button-mint: #78f0d7;
  --unison-button-gradient: linear-gradient(120deg, #5aa7ff 0%, #78f0d7 100%);
  --unison-button-gradient-hover: linear-gradient(120deg, #4b98f2 0%, #68e6cc 100%);
  --unison-button-gradient-active: linear-gradient(120deg, #3f88e5 0%, #5bd8c0 100%);
}

/* Primary actions, legacy Django controls, Tailwind color utilities and marketplace actions. */
html body button:not(.ghost):not(.btn-ghost):not(.btn-secondary):not(.secondary):not([data-variant="ghost"]),
html body input[type="submit"],
html body input[type="button"],
html body a[role="button"],
html body .btn-primary,
html body .primary-btn,
html body .public-primary-btn,
html body .hero-primary-button,
html body .rm-button,
html body .rm-button--primary,
html body .music-create-release,
html body .bg-emerald-500,
html body .bg-emerald-600,
html body .bg-green-500,
html body .bg-green-600 {
  background: var(--unison-button-gradient) !important;
  background-color: var(--unison-button-blue) !important;
  border-color: rgba(90, 167, 255, .62) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(90, 167, 255, .24) !important;
}

html body button:not(.ghost):not(.btn-ghost):not(.btn-secondary):not(.secondary):not([data-variant="ghost"]):hover,
html body input[type="submit"]:hover,
html body input[type="button"]:hover,
html body a[role="button"]:hover,
html body .btn-primary:hover,
html body .primary-btn:hover,
html body .public-primary-btn:hover,
html body .hero-primary-button:hover,
html body .rm-button:hover,
html body .rm-button--primary:hover,
html body .music-create-release:hover,
html body .bg-emerald-500:hover,
html body .bg-emerald-600:hover,
html body .bg-green-500:hover,
html body .bg-green-600:hover {
  background: var(--unison-button-gradient-hover) !important;
  transform: translateY(-1px);
}

html body button:not(.ghost):not(.btn-ghost):not(.btn-secondary):not(.secondary):not([data-variant="ghost"]):active,
html body input[type="submit"]:active,
html body input[type="button"]:active,
html body a[role="button"]:active,
html body .btn-primary:active,
html body .primary-btn:active,
html body .rm-button:active,
html body .rm-button--primary:active {
  background: var(--unison-button-gradient-active) !important;
  transform: translateY(0);
}

html body button:disabled,
html body input:disabled,
html body a[aria-disabled="true"] {
  opacity: .56;
  filter: saturate(.72);
  box-shadow: none !important;
  transform: none !important;
}

/* Secondary actions remain light glass, but still carry the brand color in text and edge. */
html body button.ghost,
html body button.btn-ghost,
html body button.btn-secondary,
html body button.secondary,
html body [data-variant="ghost"],
html body a.btn-secondary {
  background: rgba(255, 255, 255, .72) !important;
  background-color: rgba(255, 255, 255, .72) !important;
  border-color: rgba(90, 167, 255, .42) !important;
  color: #2469ad !important;
}

html body button.ghost:hover,
html body button.btn-ghost:hover,
html body button.btn-secondary:hover,
html body button.secondary:hover,
html body [data-variant="ghost"]:hover,
html body a.btn-secondary:hover {
  background: rgba(120, 240, 215, .32) !important;
}
