<commit_before>.sprk-b-Label {
  display: block;
  font-family: $sprk-label-font-family;
  font-size: $sprk-label-font-size;
  font-weight: $sprk-label-font-weight;
  line-height: $sprk-label-line-height;
  padding: $sprk-label-padding;
  margin: $sprk-label-margin;
}

.sprk-b-Label--disabled {
  color: $sprk-label-disabled-color;
}

.sprk-b-Label--no-input {
  padding: 0;
  transform: none;
}

.sprk-b-Label--inline {
  display: inline-block;
}

.sprk-b-InputContainer__visibility-toggle .sprk-b-Label--inline {
  font-size: $sprk-visibility-control-label-font-size;
}

.sprk-b-InputContainer--huge,
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon {
  // Apply styles to label to create floating label effect
  // on huge inputs. Label element must follow input element
  > :first-child.sprk-b-TextInput,
  .sprk-b-TextInputIconContainer .sprk-b-TextInput {

    // Label that is directly after Text Input
    + .sprk-b-Label {
      position: absolute;
      top: $sprk-text-input-huge-label-top;
      font-size: $sprk-text-input-huge-font-size;
      padding: $sprk-text-input-huge-padding;
      transition: $sprk-text-input-huge-transition;
      transform: translateZ(0);
      pointer-events: none;
    }

    &:focus + .sprk-b-Label,
    &:not(:placeholder-shown) + .sprk-b-Label,
    &.sprk-b-TextInput--float-label + .sprk-b-Label {
      font-size: $sprk-text-input-huge-label-font-size;
      top: $sprk-text-input-huge-label-active-top;
      color: $sprk-text-input-huge-focus-label-color;
    }

    &:not(:placeholder-shown) + .sprk-b-Label {
      color: $sprk-text-input-huge-complete-label-color;
    }

    &:disabled + .sprk-b-Label {
      font-size: $sprk-text-input-huge-label-font-size;
      top: $sprk-text-input-huge-label-active-top;
      color: $sprk-text-input-disabled-color;
      cursor: not-allowed;
    }
  }

  > :first-child.sprk-b-TextInput.sprk-b-TextInput--error,
  .sprk-b-TextInputIconContainer .sprk-b-TextInput.sprk-b-TextInput--error {
    &:focus + .sprk-b-Label,
    &:not(:placeholder-shown) + .sprk-b-Label,
    &.sprk-b-TextInput--float-label + .sprk-b-Label {
      color: $sprk-text-input-huge-error-focus-label-color;
    }
  }
}

// Huge monetary inputs overrides
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon {
  > :first-child.sprk-b-TextInput + .sprk-b-Label {
    padding: $sprk-text-input-huge-has-text-icon-padding;
  }
}

//Huge text input with svg icon overwrites
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer {
  .sprk-b-TextInput,
  .sprk-b-TextInput:focus {
    + .sprk-b-Label {
      padding: $sprk-text-input-huge-has-text-icon-padding;
    }
  }
}<commit_msg>Refactor for specificity<commit_after>.sprk-b-Label {
  display: block;
  font-family: $sprk-label-font-family;
  font-size: $sprk-label-font-size;
  font-weight: $sprk-label-font-weight;
  line-height: $sprk-label-line-height;
  padding: $sprk-label-padding;
  margin: $sprk-label-margin;
}

.sprk-b-Label--disabled {
  color: $sprk-label-disabled-color;
}

.sprk-b-Label--no-input {
  padding: 0;
  transform: none;
}

.sprk-b-Label--inline {
  display: inline-block;
}

.sprk-b-InputContainer__visibility-toggle .sprk-b-Label--inline {
  font-size: $sprk-visibility-control-label-font-size;
}

.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput,
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput{
  // Apply styles to label to create floating label effect
  // on huge inputs. Label element must follow input element
    // Label that is directly after Text Input
  + .sprk-b-Label {
    position: absolute;
    top: $sprk-text-input-huge-label-top;
    font-size: $sprk-text-input-huge-font-size;
    padding: $sprk-text-input-huge-padding;
    transition: $sprk-text-input-huge-transition;
    transform: translateZ(0);
    pointer-events: none;
  }
}
.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput:focus,
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput:focus,
.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput:not(:placeholder-shown),
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput:not(:placeholder-shown),
.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput.sprk-b-TextInput--float-label,
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput.sprk-b-TextInput--float-label {
  + .sprk-b-Label {
    font-size: $sprk-text-input-huge-label-font-size;
    top: $sprk-text-input-huge-label-active-top;
    color: $sprk-text-input-huge-focus-label-color;
  }
}

.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput:not(:placeholder-shown),
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput:not(:placeholder-shown) {
  + .sprk-b-Label {
    color: $sprk-text-input-huge-complete-label-color;
  }
}
.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput:disabled,
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput:disabled {
  + .sprk-b-Label {
    font-size: $sprk-text-input-huge-label-font-size;
    top: $sprk-text-input-huge-label-active-top;
    color: $sprk-text-input-disabled-color;
    cursor: not-allowed;
  }
}

.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput.sprk-b-TextInput--error:focus,
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput.sprk-b-TextInput--error:focus,
.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput.sprk-b-TextInput--error:not(:placeholder-shown),
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput.sprk-b-TextInput--error:not(:placeholder-shown),
.sprk-b-InputContainer--huge > :first-child.sprk-b-TextInput.sprk-b-TextInput--error.sprk-b-TextInput--float-label,
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon .sprk-b-TextInputIconContainer .sprk-b-TextInput.sprk-b-TextInput--error.sprk-b-TextInput--float-label {
  + .sprk-b-Label {
    color: $sprk-text-input-huge-error-focus-label-color;
  }
}

// Huge monetary inputs overrides
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer--has-text-icon > :first-child.sprk-b-TextInput + .sprk-b-Label {
  padding: $sprk-text-input-huge-has-text-icon-padding;
}

//Huge text input with svg icon overwrites
.sprk-b-InputContainer--huge .sprk-b-TextInputIconContainer {
  .sprk-b-TextInput,
  .sprk-b-TextInput:focus {
    + .sprk-b-Label {
      padding: $sprk-text-input-huge-has-text-icon-padding;
    }
  }
}
{'fraction_non_alphanumeric': 0.16707687852902853, 'fraction_numerical': 0.0005791226292167366, 'mean_word_length': 3.350125944584383, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 16, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1353928', 'n_tokens_mistral': 2710, 'n_tokens_neox': 2685, 'n_words': 309}