:root{
  --bp-primary: #0d6efd;
  --bp-surface: #f6f9ff;
  --bp-card: #ffffff;
  --bp-border: rgba(13,110,253,.12);
}

.bg-surface{
  background: var(--bp-surface);
}

.brand-mark{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 0 0 6px rgba(255,255,255,.15);
  display: inline-block;
}

.hero{
  background: radial-gradient(1200px circle at 20% 20%, rgba(255,255,255,.22), transparent 55%),
              radial-gradient(1000px circle at 80% 10%, rgba(0,0,0,.12), transparent 50%),
              linear-gradient(135deg, #0d6efd 0%, #0b5ed7 45%, #0951be 100%);
  border: 1px solid rgba(255,255,255,.18);
}

.hero-bg{
  position: absolute;
  inset: -40px;
  background: radial-gradient(600px circle at 70% 60%, rgba(255,255,255,.22), transparent 60%);
  filter: blur(0px);
  pointer-events: none;
}

.glass{
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.2);
  backdrop-filter: blur(6px);
}

.icon-circle{
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.2);
}

.card{
  border: 1px solid var(--bp-border);
  border-radius: 16px;
}

.card-hover{
  transition: transform .12s ease, box-shadow .12s ease;
}

.card-hover:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(13,110,253,.12);
}

.code-block{
  background: #0b1220;
  color: #d9e3ff;
  padding: 14px;
  border-radius: 12px;
  font-size: 12px;
  overflow: auto;
}

.badge{
  font-weight: 600;
}
