html, body {
  margin: 0;
  padding: 0;
  overflow: hidden;
  height: 100%;
  width: 100%;
  background: radial-gradient(circle at center, #000018 0%, #010015 100%);
  animation: aurora-gradient 18s ease-in-out infinite alternate;
}

#aiScene {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 0;
  background: radial-gradient(circle at center, #020211 0%, #0a1c2c 100%);
}

@keyframes breathe {
    0% { background-size: 100% 100%; }
    50% { background-size: 110% 110%; }
    100% { background-size: 100% 100%; }
}

@keyframes aurora-gradient {
   0%   { filter: hue-rotate(0deg) brightness(1.2) contrast(1); background-position: 50% 50%; }
   25%  { filter: hue-rotate(120deg) brightness(1.5) contrast(1.1); background-position: 60% 40%; }
   50%  { filter: hue-rotate(240deg) brightness(1.3) contrast(1.2); background-position: 40% 60%; }
   75%  { filter: hue-rotate(320deg) brightness(1.4) contrast(1.05); background-position: 45% 55%; }
   100% { filter: hue-rotate(360deg) brightness(1.2) contrast(1); background-position: 50% 50%; }
}

.content { background: none; border: none; box-shadow: none; }

h1 {
    font-size: 4rem;
    letter-spacing: 12px;
    color: #e0e0e0;
}

#thinking-text {
    font-size: 1.25rem;
    color: #00ffff;
    height: 32px;
    margin-bottom: 35px;
}

#glow-cursor {
    position: fixed;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(0,255,255,0.5) 0%, rgba(0,0,64,0.2) 80%, transparent 90%);
    pointer-events: none;
    transform: translate(-50%, -50%) scale(1);
    mix-blend-mode: screen;
    transition: width 0.2s, height 0.2s, transform 0.4s ease-out;
    animation: glowCursorPulse 4s infinite ease-in-out;
    z-index: 10;
}

#modelCanvas {
    position: relative;
    display: block;
    margin: 0 auto;
    border-radius: 10px;
    box-shadow: 0 0 60px 10px #0ff5;
}
@keyframes glowCursorPulse {
  0%   { transform: translate(-50%, -50%) scale(1); opacity: 0.8; }
  50%  { transform: translate(-50%, -50%) scale(1.2); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(1); opacity: 0.8; }
}

:root {
  --mouse-x: 0.5;
  --mouse-y: 0.5;
}

body::after {
  content: "";
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  pointer-events: none;
  background: radial-gradient(
    circle at calc(var(--mouse-x) * 100%) calc(var(--mouse-y) * 100%),
    rgba(0, 180, 255, 0.15) 0%,
    transparent 80%
  );
  transition: background-position 0.2s linear;
  mix-blend-mode: overlay;
}