/* Base */
body {
  font-family: 'Inter', sans-serif;
  margin: 0;
  background: #0f0f1a;
  color: #e0e0e0;
  position: relative;
  overflow-x: hidden;
}

/* Futuristic animated background */
body::before {
  content: "";
  position: fixed;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle at 30% 30%, rgba(191, 90, 255, 0.15), transparent 40%),
              radial-gradient(circle at 70% 70%, rgba(90, 200, 255, 0.1), transparent 50%);
  animation: moveBackground 20s linear infinite;
  z-index: -1;
}

@keyframes moveBackground {
  0% { transform: translate(0, 0); }
  100% { transform: translate(5%, 5%); }
}

/* Sidebar */
nav {
  background-color: #1b1c24;
  border-right: 1px solid #2c2c35;
}

.nav-link {
  color: #bbb !important;
  transition: color 0.3s ease;
}

.nav-link:hover,
.nav-link.active {
  color: #bf5aff !important;
  text-shadow: 0 0 8px #bf5aff;
}

/* Headings */
h1, h2, h3 {
  color: #bf5aff;
  text-shadow: 0 0 6px rgba(191, 90, 255, 0.5);
}

/* Code blocks */
code {
  background-color: #2a2b30;
  color: #ffccff;
  padding: 3px 6px;
  border-radius: 4px;
  font-size: 0.95rem;
}

/* Footer */
footer {
  background: transparent;
  color: #888;
}

footer a {
  color: #bf5aff;
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}