.logos-core-node {
  position: absolute;
  left: var(--module-x);
  top: var(--module-y);
  z-index: var(--logos-z-core);

  width: var(--module-width);
  aspect-ratio: 1;

  padding: 0;
  border: 0;
  border-radius: 50%;

  color: var(--logos-mint);
  background: transparent;

  transform:
    translate(-50%, -50%);

  transition:
    transform var(--logos-duration-normal)
      var(--logos-ease-spring),
    filter var(--logos-duration-normal)
      var(--logos-ease),
    opacity var(--logos-duration-normal)
      var(--logos-ease);
}

.logos-core-node::before {
  content: "";
  position: absolute;
  inset: 9%;
  z-index: -3;
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      rgba(0, 201, 133, 0.2),
      rgba(0, 201, 133, 0.06) 45%,
      transparent 72%
    );
  filter: blur(1.2rem);
}

.logos-core-node__halo {
  position: absolute;
  inset: 14%;
  z-index: -2;
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      rgba(35, 221, 160, 0.22),
      transparent 65%
    );
  filter: blur(1rem);
}

.logos-core-node__orbit {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: -1;
  border-radius: 50%;
  transform:
    translate(-50%, -50%);
  pointer-events: none;
}

.logos-core-node__orbit--outer {
  width: 108%;
  aspect-ratio: 1.65;
  border:
    1px dashed rgba(0, 201, 133, 0.28);
}

.logos-core-node__orbit--inner {
  width: 83%;
  aspect-ratio: 1.65;
  border:
    1px solid rgba(98, 223, 240, 0.18);
}

.logos-core-node__artwork {
  position: absolute;
  inset: -10%;
  pointer-events: none;
}

.logos-core-node__object {
  width: 100%;
  height: 100%;
  pointer-events: none;
  user-select: none;
  filter:
    drop-shadow(
      0 1.6rem 2.8rem rgba(0, 80, 56, 0.14)
    );
}

.logos-core-node__signal {
  position: absolute;
  left: 50%;
  bottom: 2%;
  display: inline-flex;
  gap: 0.3rem;
  transform:
    translateX(-50%);
}

.logos-core-node__signal span {
  display: block;
  width: 0.28rem;
  height: 0.28rem;
  border-radius: 50%;
  background: var(--logos-mint);
  box-shadow:
    0 0 0.75rem rgba(0, 201, 133, 0.45);
}

.logos-core-node:hover {
  transform:
    translate(-50%, -50%)
    scale(1.035);
  filter:
    brightness(1.04)
    drop-shadow(
      0 0 2rem rgba(0, 201, 133, 0.28)
    );
}

.logos-core-node:focus-visible {
  outline: none;
}

.logos-core-node:focus-visible::after {
  content: "";
  position: absolute;
  inset: 6%;
  border:
    2px solid var(--logos-mint);
  border-radius: 50%;
  box-shadow:
    0 0 0 0.35rem rgba(0, 201, 133, 0.15);
}

.logos-core-node.is-active,
.logos-core-node[aria-pressed="true"] {
  filter:
    brightness(1.07)
    saturate(1.06)
    drop-shadow(
      0 0 2.1rem rgba(0, 201, 133, 0.32)
    );
}

.logos-stage.has-active-module
.logos-core-node:not(.is-active) {
  opacity: 0.82;
}

.logos-stage.has-active-module
.logos-core-node:not(.is-active)
.logos-core-node__orbit {
  border-color:
    rgba(0, 201, 133, 0.15);
}

.logos-stage.is-synchronized
.logos-core-node {
  transform:
    translate(-50%, -50%)
    scale(1.08);
  filter:
    brightness(1.1)
    saturate(1.18)
    drop-shadow(
      0 0 3rem rgba(0, 201, 133, 0.48)
    );
}