.qr-core {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  background: #fff;
}

.qr-core svg {
  display: block;
  width: 100%;
  height: auto;
}

.qr-brand-mark {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  width: clamp(42px, 18%, 50px);
  aspect-ratio: 1;
  padding: 5px;
  border: 3px solid #20223b;
  border-radius: 28%;
  background: #fff;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.qr-brand-mark img {
  display: block;
  width: 100%;
  height: 100%;
}

.qr-core--mark-orbit .qr-brand-mark {
  width: clamp(64px, 23%, 76px);
  padding: 4px;
  border-radius: 50%;
}

.qr-core-label {
  position: absolute;
  left: 50%;
  bottom: 7px;
  max-width: calc(100% - 18px);
  padding: 4px 9px;
  border: 2px solid #20223b;
  border-radius: 999px;
  background: #c8b7ff;
  color: #20223b;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  line-height: 1.15;
  text-transform: uppercase;
  transform: translateX(-50%);
  white-space: nowrap;
}

.qr-core--friend .qr-core-label { background: #ffd45c; }
.qr-core--setup .qr-core-label { background: #9fe0c3; }
.qr-core--public .qr-core-label { background: #c8b7ff; }
