:host {
  display: inline-block;
  width: 100%;
}

::slotted(input) {
  width: 100%;
  box-sizing: border-box;
  border: 0;
  border-bottom: 0.1rem solid var(--secondary-color, black);
  color: var(--font-color, black);
  font-size: 1.6rem;
  font-family: inherit;
  padding: 0.5rem;
  background-color: inherit;
  box-shadow: none;
}

::slotted(input:focus), ::slotted(input:hover) {
  outline: 0;
  box-shadow: none;
}

::slotted(input:invalid) {
  border-bottom: 0.1rem solid red;
}