@import "./base.css";

* {
  outline: none !important;
}

:focus {
  outline: none !important;
}

body {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background-image: url("./wavy-lines.svg");
  background-size: cover;
  user-select: none;
}

#root {
  width: 100%;
  height: 100vh;
}

.react {
  background: -webkit-linear-gradient(315deg, #087ea4 55%, #7c93ee);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
}

.header {
  height: 2.5rem;
  width: 100%;
  padding: 0 1rem;
  top: 0.5rem;
  left: 0;
  position: absolute;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1010;
}

.header-item {
  width: 30%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.header-item a {
  display: flex;
}

.footer {
  width: 100%;
  padding: 0 1rem;
  bottom: 0.5rem;
  left: 0;
  position: absolute;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1010;
}

.footer-item {
  width: 30%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.motion {
  width: calc(400px + 2rem);
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.video-player {
  width: 100%;
  z-index: 1001;
}

video {
  position: relative;
  left: 1rem;
  width: 400px;
  height: 100%;
}

.toolbar {
  position: relative;
  margin-top: 4rem;
  left: 1rem;
  width: 400px;
  z-index: 1002;
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 1rem;
  height: 2rem;
}

.toolbar-item {
  align-items: center;
  height: 1.5rem;
  max-width: 22%;
}

.toolbar-item .MuiFormControlLabel-label,
.toolbar-item .MuiTypography-root {
  font-size: 0.8rem;
}

.scene {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}

.animation,
.model,
.material,
.background {
  position: absolute;
  top: 4rem;
  color: white;
}

.skeleton {
  position: absolute;
  top: 4rem;
  width: 300px;
  color: white;
}

.debug-scene {
  position: relative;
  width: 400px;
  height: 400px;
  margin-left: 1rem;
}

a {
  color: inherit;
}

@keyframes capture-shutter {
  0%,
  100% {
    transform: scale(1) rotate(0deg);
  }
  50% {
    transform: scale(0.6) rotate(180deg);
  }
}

.screenshot-button {
  transition: transform 0.5s;
}

.screenshot-button.animate {
  animation: capture-shutter 0.5s ease-in-out;
}

@media screen and (max-width: 767px) {
  .scene {
    position: relative;
    top: auto;
    width: 100%;
    height: calc(100vh - 4rem);
  }

  .toolbar {
    position: relative;
    top: 0.4rem;
    left: auto;
    width: 100%;
    height: 2rem;
  }
  .video-player {
    position: relative;
    height: 200px;
    width: 100%;
    left: auto;
    top: 0.4rem;
  }

  .header {
    position: relative;
    height: 2.5rem;
  }
}
