:root {
  color-scheme: dark;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: #121214;
  color: #f8f9fa;
  font-family: 'Inter', sans-serif;
}

.gradient-glow {
  background: radial-gradient(circle at 50% 0%, rgba(223, 22, 105, 0.15) 0%, rgba(18, 18, 20, 0) 70%);
}

.card-glass {
  background: rgba(35, 35, 42, 0.75);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.backdrop-blur-sm {
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

.backdrop-blur-md {
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.backdrop-blur-lg {
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}

.text-gradient {
  background: linear-gradient(135deg, #ffffff 20%, #df1669 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Use a lighter text-only brand tone on dark surfaces while preserving the button colour. */
.text-brand-magenta,
.hover\:text-brand-magenta:hover {
  color: #ff9fc2 !important;
}

.text-brand-muted {
  color: #b0b0bd !important;
}

.text-gray-400 {
  color: #b8b8c3 !important;
}

.audit-link {
  text-decoration-line: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

.placeholder-gray-400::placeholder {
  color: #b8b8c3 !important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible {
  outline: 2px solid #ff9fc2;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
