body {
      margin: 0;
      font-family: 'JetBrains Mono', 'Inconsolata', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
      background: #000;
      color: #fff;
    }
    .app-container {
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      padding: 2rem;
      position: relative;

    }
    .circle-wrapper {
      position: relative;
      width: min(90vmin, 900px);
      aspect-ratio: 1 / 1;
      height: auto;
      margin: auto;
      overflow: visible;
    }
    .circle-wrapper svg { width: 100%; height: 100%; display: block; }
  
  .sector-wedge { cursor: pointer; }
  .sector-wedge:hover { filter: drop-shadow(0 0 10px #ffd700a0); }
  
  svg text, svg textPath { pointer-events: none; }
    .header h1 {
      font-size: 2rem;
      color: #ffd700;
      text-shadow: 0 0 15px #ff0000, 0 0 20px #00ffff;
      margin-top: 1rem;
    }
    .header p {
      color: #ddd;
      margin-bottom: 1.5rem;
    }
    .btn-primary {
      margin-top: 1rem;
      padding: 0.7rem 1.2rem;
      background: #ffd700;
      border: none;
      border-radius: 8px;
      font-weight: bold;
      cursor: pointer;
      box-shadow: 0 0 10px #ffd70090;
      transition: transform 0.2s ease;
    }
    .btn-primary:hover {
      transform: scale(1.05);
    }
    .circular-text text {
      fill: #ffd700;
      filter: drop-shadow(0 0 8px #ffd700)
        drop-shadow(0 0 15px #ff0000)
        drop-shadow(0 0 20px #00ffff);
    }
   .osdc-nodes {
  position: relative;
  width: 140px;
  height: 140px;
  top: 455px;
  left: 70px;
  pointer-events: auto;
  user-select: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}

.osdc-nodes .icon-node img {
  width: 50px;    
  height: 50px;  
  object-fit: contain;
  border-radius: 50%; 
}

.partition-div.osdc:hover + .osdc-nodes, .sector-osdc:hover ~ .osdc-nodes {
  opacity: 1;
}

.icon-node {
  position: absolute;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 50%;
  left: 50%;
  transform-origin: 20px 20px; 
  transition: background 0.3s ease, transform 0.3s ease;
  cursor: pointer;
  user-select: none;
}

.icon-node.whatsapp img {
  width: 50px;
  height: 50px;
  transform: translateX(750px) translateY(410px);
}

.icon-node.instagram img {
  width: 50px;
  height: 50px;
    transform: translateX(754px) translateY(490px);}

.icon-node.discord img {
  width: 50px;
  height: 50px;
      transform: translateX(700px) translateY(560px);
}

#loadingScreen {
  color: #ffd700;
      text-align: center;
      font-size: clamp(42px, 5vw, 46px);
      line-height: 1.4;
      user-select: none;
      padding: 20px;
      transition: opacity 1s ease-in-out;
}

#loadingSpinner {
  margin-top: 20px;
  border: 4px solid #222;
  border-top: 4px solid #ffd700;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

#loadingScreen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  animation: floatUpDown 3s ease-in-out infinite;

}

@keyframes floatUpDown {
  0%, 100% {
    transform: translateY(10);
  }
  50% {
    transform: translateY(-30px);
  }
}

.loading-text {
  font-size: 1.5rem;
  margin-bottom: 20px;
}

#osdc-overlay { pointer-events: none; z-index: 2; }
#osdc-overlay .osdc-icon { pointer-events: auto; }
#osdc-overlay .osdc-icon img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 6px;
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.6);
}
