.thought-map {
  position: relative;
  width: min(640px, 100%);
  aspect-ratio: 1;
}

.connections {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.connections path {
  fill: none;
  stroke: #5dcfff55;
  stroke-width: 1.7;
  stroke-dasharray: 7 10;
}

.connections .forward {
  stroke: #9b7cff;
  stroke-width: 2.4;
  stroke-dasharray: none;
}

.thought {
  position: absolute;
  z-index: 2;
  padding: 10px 16px;
  border: 1px solid #ffffff20;
  border-radius: 999px;
  background: #0d1c3bd9;
  color: #b9c7e7;
  font-size: .75rem;
  box-shadow: 0 14px 38px #0005;
  white-space: nowrap;
}

.t1 { left: 3%; top: 16%; }
.t2 { right: 1%; top: 18%; }
.t3 { left: 0; bottom: 21%; }
.t4 { right: -1%; bottom: 22%; }
.t5 { left: 50%; top: 5%; transform: translateX(-50%); }

.organize-core,
.next-node {
  position: absolute;
  z-index: 3;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 25%, #244f9b, #0b1b42 68%);
  border: 1px solid #6ddaff7d;
  box-shadow: 0 0 70px #3b82f644;
}

.organize-core { top: 50%; width: 190px; height: 190px; }
.organize-core small,
.next-node small { font-size: .58rem; letter-spacing: .18em; color: #6edaff; font-weight: 850; }
.organize-core strong { font-size: 1.35rem; margin: 5px; }
.organize-core span { font-size: .68rem; color: #9fb0d2; }
.next-node {
  top: 88%;
  width: 128px;
  height: 128px;
  border-color: #a38bff88;
  background: radial-gradient(circle at 35% 25%, #4b3d88, #131331 70%);
  box-shadow: 0 0 55px #8b66ff38;
}
.next-node strong { font-size: .93rem; margin-top: 3px; }

@media (max-width: 560px) {
  .thought-map { width: 470px; max-width: 118%; transform: scale(.92); }
  .thought { font-size: .62rem; padding: 7px 10px; }
  .organize-core { width: 145px; height: 145px; }
  .organize-core strong { font-size: 1.08rem; }
  .next-node { width: 100px; height: 100px; }
  .t2 { right: 2%; }
  .t4 { right: 0; }
}
