@font-face {
  font-family: 'MX Sans';
  font-weight: 400;
  src: local('SF Pro Text'), local('Helvetica Neue'), local('Segoe UI'), local('Arial')
}

@font-face {
  font-family: 'MX Sans';
  font-weight: 500;
  src: local('SF Pro Text Medium'), local('HelveticaNeue-Medium'), local('Segoe UI Semibold')
}

@font-face {
  font-family: 'MX Sans';
  font-weight: 700;
  src: local('SF Pro Text Bold'), local('HelveticaNeue-Bold'), local('Segoe UI Bold'), local('Arial Bold')
}

@font-face {
  font-family: 'MX Sans';
  font-weight: 800;
  src: local('SF Pro Display Heavy'), local('HelveticaNeue-Bold'), local('Segoe UI Black')
}

@font-face {
  font-family: 'MX Mono';
  font-weight: 500;
  src: local('SF Mono Medium'), local('Menlo'), local('Consolas')
}

* {
  box-sizing: border-box
}

html,
body {
  margin: 0;
  padding: 0;
  height: 100%
}

body {
  -webkit-font-smoothing: antialiased
}

:root {
  --mx-ink: 255, 255, 255
}

@keyframes pulse {
  0% {
    transform: scale(.85);
    opacity: .55
  }

  50% {
    transform: scale(1);
    opacity: 1
  }

  100% {
    transform: scale(.85);
    opacity: .55
  }
}

@keyframes ring {
  0% {
    transform: scale(.8);
    opacity: .6
  }

  100% {
    transform: scale(2.6);
    opacity: 0
  }
}

.page {
  min-height: 100vh;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 32px;
  background: radial-gradient(135% 85% at 50% -10%, #16161c 0%, #0c0c0f 46%, #0a0a0c 100%);
  font-family: 'MX Sans', 'Hanken Grotesk', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  color: rgba(var(--mx-ink), .92);
  position: relative;
  overflow: hidden
}

.glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(60% 45% at 50% 38%, rgba(154, 121, 207, .08) 0%, transparent 70%)
}

.content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 460px;
  width: 100%
}

.logo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 56px
}

.logo-icon {
  width: 30px;
  height: 30px;
  flex: none
}

.logo-text {
  font: 700 18px 'MX Sans', 'Hanken Grotesk';
  letter-spacing: -.01em;
  color: rgba(var(--mx-ink), .95)
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: 100px;
  background: rgba(var(--mx-ink), .06);
  border: 1px solid rgba(var(--mx-ink), .1);
  margin-bottom: 28px
}

.badge-dot {
  position: relative;
  width: 7px;
  height: 7px;
  flex: none
}

.badge-dot-core {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #9a79cf;
  animation: pulse 1.8s ease-in-out infinite
}

.badge-dot-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid #9a79cf;
  animation: ring 1.8s ease-out infinite
}

.badge-text {
  font: 600 11px 'MX Mono', 'JetBrains Mono', monospace;
  letter-spacing: .06em;
  color: rgba(var(--mx-ink), .55);
  text-transform: uppercase
}

.title {
  margin: 0 0 14px;
  font-size: 34px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -.02em;
  color: rgba(var(--mx-ink), .97)
}

.subtitle {
  margin: 0 0 40px;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(var(--mx-ink), .5);
  max-width: 380px
}

.footer {
  margin-top: 64px;
  display: flex;
  align-items: center;
  gap: 10px;
  font: 500 11px 'MX Mono', 'JetBrains Mono', monospace;
  color: rgba(var(--mx-ink), .32)
}

.footer-dot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(var(--mx-ink), .25)
}
