.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> input:is([type="text"], [type="email"], [type="password"], [type="tel"])),
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> .password-input > input:is([type="text"], [type="email"], [type="password"], [type="tel"])) {
  position: relative;
}

.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> input:is([type="text"], [type="email"], [type="password"], [type="tel"])) label,
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> .password-input > input:is([type="text"], [type="email"], [type="password"], [type="tel"])) label {
  position: absolute;
  top: 50%;
  left: 0.75rem;
  z-index: 1;
  padding: 0 0.25rem;
  color: var(--bs-secondary-color);
  background-color: var(--bs-body-bg);
  line-height: 1;
  pointer-events: none;
  transform: translateY(-50%);
  transition: color 0.15s ease, font-size 0.15s ease, top 0.15s ease;
}

.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> input:is([type="text"], [type="email"], [type="password"], [type="tel"])) input:is([type="text"], [type="email"], [type="password"], [type="tel"]),
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> .password-input > input:is([type="text"], [type="email"], [type="password"], [type="tel"])) input:is([type="text"], [type="email"], [type="password"], [type="tel"]) {
  min-height: 3.5rem;
  padding: 1rem 0.75rem 0.375rem;
}

.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> .password-input > input:is([type="text"], [type="email"], [type="password"], [type="tel"])) .password-input {
  min-height: 3.5rem;
}

.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> input:is([type="text"], [type="email"], [type="password"], [type="tel"]):focus, > .password-input > input:is([type="text"], [type="email"], [type="password"], [type="tel"]):focus) label,
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, .woocommerce-MyAccount-content form) .form-row:has(> input:is([type="text"], [type="email"], [type="password"], [type="tel"]):valid, > .password-input > input:is([type="text"], [type="email"], [type="password"], [type="tel"]):valid) label {
  top: 0;
  color: var(--bs-primary);
  font-size: 0.75rem;
}
