.text-with-label label {
  margin-bottom: 0.5em;
  display: flex;
  gap: 0.5em;
  width: 100%;
  align-items: center;
}

.text-with-label label span.text {
  opacity: 0.5;
  transition: .2s;
  white-space: nowrap;
}
.text-with-label label:has(input:focus) span.text {
  opacity: 1;
  transition: 0s;
}

.text-with-label input {
  font-size: 1em;
  flex-grow: 1;
  padding: 0.5em 0.2em;
  border: none;
  background: transparent;
  border-bottom: 2px solid rgb(var(--real-black-rgb),0.1);
  outline: none;
  transition: .2s;
  position: relative;
  top: 2px;
  width: 100%;
}

.text-with-label input:hover {
  border-color: rgb(var(--real-black-rgb),0.2);
}
.text-with-label input:focus {
  border-color: var(--default-button-color);
  transition: 0s;
}