* { margin: 0;
    padding: 0;
    box-sizing: border-box; }

body { background: #000;
       overflow: hidden;
       font-family: 'Georgia', serif; }

#canvas-container { width: 100vw;
                      height: 100vh; }

#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  background: rgba(0,0,0,0.85);
  z-index: 100;
      cursor: pointer;
  transition: opacity 1.5s ease; }

#overlay h1 {
    font-size: clamp(2rem, 5vw, 4rem);
  color: #d4b896;
        letter-spacing: 0.3em;
  text-transform: uppercase;
  margin-bottom: 1rem;
    font-weight: 300;
  text-shadow: 0 0 40px rgba(212,184,150,0.4); }

#overlay p { color: #8a7a6a;
              font-size: 1rem;
    letter-spacing: 0.2em;
              font-style: italic; }

#overlay .seed-display {
      margin-top: 2rem;
  color: #4a3f35;
    font-size: 0.7rem;
        letter-spacing: 0.4em;
  font-family: monospace;
  font-style: normal; }

#overlay.fade-out { opacity: 0;
                     pointer-events: none; }

#hud {
  position: fixed;
      bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
    display: flex;
    gap: 1.5rem;
  z-index: 50;
        opacity: 0;
  transition: opacity 1s ease 2s; }

#hud.visible { opacity: 1; }

#hud button {
  background: rgba(0,0,0,0);
      border: 1px solid rgba(212,184,150,0.25);
  color: #a08060;
  padding: 0.5rem 1.2rem;
        font-family: Georgia, serif;
  font-size: 0.75rem;
    letter-spacing: 0.2em;
  cursor: pointer;
  text-transform: uppercase;
      backdrop-filter: blur(8px);
  transition: all 0.3s ease; }

#hud button:hover { border-color: rgba(212,184,150,0.6);
                     color: #d4b896; }

#info {
  position: fixed;
    top: 1.5rem;
  left: 50%;
      transform: translateX(-50%);
  color: rgba(212,184,150,0.35);
  font-size: 0.65rem;
      letter-spacing: 0.3em;
  z-index: 50;
  text-transform: uppercase;
    font-family: monospace;
  opacity: 0;
        transition: opacity 1s ease 2s; }

#info.visible { opacity: 1; }

#vignette {
  position: fixed;
  top: 0;
      left: 0;
  width: 100%;
  height: 100%;
    background: radial-gradient(ellipse at center, transparent 40%, rgba(0,0,0,0.75) 100%);
  pointer-events: none;
        z-index: 10; }