body[data-theme="synthwave"] {
  background: linear-gradient(180deg, #0d0028 0%, #2a0040 50%, #ff2e7e 100%);
  overflow: hidden;
}
body[data-theme="synthwave"] .synth-grid {
  position: fixed; left: 0; right: 0; bottom: 0; height: 50vh;
  background-image:
    linear-gradient(rgba(255, 0, 200, 0.5) 2px, transparent 2px),
    linear-gradient(90deg, rgba(255, 0, 200, 0.5) 2px, transparent 2px);
  background-size: 60px 60px;
  transform: perspective(400px) rotateX(60deg);
  transform-origin: bottom;
  animation: synth-scroll 1.5s linear infinite;
}
@keyframes synth-scroll {
  from { background-position: 0 0; }
  to { background-position: 0 60px; }
}
body[data-theme="synthwave"] .synth-sun {
  position: fixed; left: 50%; top: 25%; transform: translateX(-50%);
  width: min(280px, 60vw); height: min(280px, 60vw); border-radius: 50%;
  background: linear-gradient(180deg, #ffe45c 0%, #ff6e3e 50%, #ff2e7e 100%);
  box-shadow: 0 0 calc(60px + 80px * var(--bass, 0)) #ff2e7e;
}
body[data-theme="synthwave"] .profile-card {
  border: 2px solid #ff2e7e;
  box-shadow: 0 0 calc(40px + 60px * var(--bass, 0)) #ff2e7e, 0 0 calc(80px * var(--bass, 0)) #5cf3ff;
  transform: scale(calc(1 + 0.04 * var(--beat, 0)));
  transition: transform .08s linear;
}
body[data-theme="synthwave"] .profile-card h1 {
  color: #fff;
  text-shadow: 0 0 8px #ff2e7e, 0 0 16px #ff2e7e, 0 0 calc(24px * var(--bass, 0)) #5cf3ff;
}
