* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
  width: 100%; height: 100%;
  overflow: hidden;
  background: #140d18;
}

#c {
  display: block;
  width: 100%;
  height: 100%;
  image-rendering: pixelated;
}

#label {
  position: fixed;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255,170,200,0.6);
  font-family: 'Georgia', serif;
  font-size: 1.1rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  pointer-events: none;
  user-select: none;
}

#phase-label {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  color: rgba(255,190,215,0.4);
  font-family: 'Georgia', serif;
  font-size: 0.7rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  pointer-events: none;
  user-select: none;
}

#hint {
  position: fixed;
  bottom: 3.1rem;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255,150,180,0.55);
  font-family: 'Georgia', serif;
  font-size: 0.72rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  pointer-events: none;
  user-select: none;
  animation: hintpulse 2.6s ease-in-out infinite;
}
@keyframes hintpulse {
  0%, 100% { opacity: 0.35; }
  50%      { opacity: 0.75; }
}

#music-toggle, #privacy-toggle {
  position: fixed;
  top: 1.25rem;
  z-index: 10;
  color: rgba(255,190,215,0.8);
  background: rgba(34,18,30,0.6);
  border: 1px solid rgba(255,150,190,0.3);
  border-radius: 999px;
  padding: 0.45rem 1.1rem;
  font-family: 'Georgia', serif;
  font-size: 0.85rem;
  letter-spacing: 0.12em;
  cursor: pointer;
  backdrop-filter: blur(6px);
  transition: background 0.2s ease, color 0.2s ease;
}
#music-toggle { left: 1.25rem; }
#privacy-toggle { right: 1.25rem; }
#music-toggle:hover, #privacy-toggle:hover {
  background: rgba(54,28,46,0.8);
  color: rgba(255,225,235,0.95);
}
#music-toggle[aria-pressed="true"], #privacy-toggle[aria-pressed="true"] {
  background: rgba(120,40,80,0.55);
  color: rgba(255,235,245,0.95);
}

#privacy-screen {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  height: 50vh;
  z-index: 50;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  cursor: pointer;
  user-select: none;
  background:
    linear-gradient(180deg, rgba(20,12,18,0) 0%, rgba(20,12,18,0.7) 8%, rgba(20,12,18,0.96) 22%, #160c12 100%),
    repeating-linear-gradient(90deg,
      #2a1620 0px, #3a2030 14px, #221019 28px, #3a2030 42px, #2a1620 56px);
  box-shadow: 0 -10px 30px rgba(0,0,0,0.5) inset;
}
#privacy-screen[hidden] { display: none; }

#privacy-sub {
  margin-top: 1.2rem;
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(220,180,200,0.6);
  font-family: 'Georgia', serif;
}
