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

body {
  width: 100%;
  height: 100dvh;
  background: rgb(245, 245, 245);
  display: flex;
  justify-content: center;
  align-items: center;
}

.container {
  width: min(80%, 350px);
  background: white;
  border-radius: 10px;
  border: 1px solid gray;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.container input {
  width: 90%;
  height: 35px;
  padding: 5px 20px;
  border: none;
  outline: none;
  font-size: 1rem;
}

.container button {
  width: 25px;
  height: 25px;
  margin: 5px;
  background: rgb(206, 206, 206);
  border-radius: 5px;
  border: none;
  outline: none;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.container button svg {
  width: 80%;
  height: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all .3s ease;
}

.container button .copy {
  color: rgb(83, 83, 83);
}

.container button .copied {
  color: green;
  transform: translateY(30px);
}

.container button .copied.active ~ .copy {
  opacity: 0;
}

.container button .copied.active {
  transform: translate(-10px, -10px);
}