@font-face {
  font-family: 'Century Schoolbook Mono';
  src:  url('fonts/f6b9216d-cfb0-4907-9104-572e1d5a3d75.woff2') format('woff2'),
        url('fonts/32aea613-4557-411d-8fea-78b733d66096.woff.') format('woff');
}

*, *:before, *:after{
  box-sizing: border-box;
}

html{
  font-size: 62.5%;
}

body{
  background: #000;
  color: #fff;
  font-family: "Century Schoolbook Mono", monospace;
    font-size: 1.4rem;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  line-height: 1.25;
  margin: 0;
}

  a{
    color: inherit;
    text-decoration: none;
  }

    @media (hover: hover) {
      a:hover{
        animation: strobe 0.15s infinite;
      }
    }

  button{
    all: unset;
    /* background: rgba(0, 0, 0, 0.5);
    -webkit-backdrop-filter: blur(10px); */
    backdrop-filter: blur(4px);
    /* border: 1px solid rgba(255, 255, 255, 0.5); */
    border-radius: 999rem;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    mix-blend-mode: difference;
    line-height: 1.5;
    padding: 0.6rem 0;
    text-transform: uppercase;
    white-space: nowrap;
    z-index: 1000;
  }

    @media (hover: hover) {
      button:hover{
        animation: strobe 0.15s infinite;
      }
    }
    

    @keyframes strobe{
      0{
        opacity: 1;
      }

      50%{
        opacity: 0.5;
      }

      100%{
        opacity: 1;
      }
    }

    button svg{
      fill: currentColor;
      stroke: currentColor;
      height: 1.5em;
      margin-right: 0.5em;
      width: 1.5em;
    }

  h1, h2, h3, h4, h5, h6{
    font: inherit;
    line-height: 1.1;
  }

#viz{
  cursor: move;
}

#mainTitle{
  display: none;
}

#beforePlay, #whilePlay{
  transition: opacity 0.3s ease-out;
}

#beforePlay{}

  #caption{
    color: #fff;
    mix-blend-mode: difference;
    position: fixed;
      top: 50%;
      right: 1em;
  }

  #startBtn{
    border: 1px solid #fff;
    padding: 0.3rem 1rem 0.3rem 0.3rem;
    position: fixed;
      top: 50%;
      left: 50%;
    transform: translate(-50%, -50%);
  }

#whilePlay{
  mix-blend-mode: difference;
  position: fixed;
    bottom: 1em;
    left: 1em;
  opacity: 0;
}

  #controls{
    display: flex;
      align-items: center;
      justify-content: center;
    gap: 2em;
    text-transform: uppercase;
    width: calc(100vw - 2em);
  }

    #sound{
      display: flex;
        align-items: center;
    }

      #toggleBtn span{
        display: none;
      }

      #toggleBtn #iconPlay{
        display: none;
      }

        #toggleBtn.paused #iconPlay{
          display: block;
        }

        #toggleBtn.paused #iconPause{
          display: none;
        }

    #track span{
      animation: strobe 1s infinite;
      display: none;
    }

      @media screen and (min-width: 500px){
        #track span{
          display: inline;
        }
      }

    #presave{
      border: 1px solid #fff;
      border-radius: 999rem;
      padding: 0.3rem 1rem;
    }
