::selection {
  background: rgba(139, 92, 246, 0.35);
  color: #ffffff;
}

.button-glow {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.button-glow::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: radial-gradient(180px circle at var(--x, 50%) var(--y, 50%), rgba(255, 255, 255, 0.24), transparent 42%);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 0;
}

.button-glow:hover::before,
.button-glow:focus-visible::before {
  opacity: 1;
}

.button-glow > * {
  position: relative;
  z-index: 1;
}

.button-glow:focus-visible {
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255, 255, 255, 0.12),
    0 0 0 7px rgba(139, 92, 246, 0.22),
    0 22px 52px rgba(99, 102, 241, 0.38);
}

.button-glow.is-pressed {
  transform: translateY(1px) scale(0.995);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .glass-card,
  .status-badge {
    background: rgba(15, 23, 42, 0.92);
  }
}

@media (max-width: 640px) {
  .status-badge {
    letter-spacing: 0.14em;
    padding: 0.72rem 0.95rem;
  }
}
