.basicTextfield {
  margin: 10px 0px;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-template-areas: "label" "input";
  /* Re-applies the controls on :hover and :focus */ }
  .basicTextfield .basic-textfield-container {
    display: flex;
    display: -ms-flexbox;
    min-width: 0; }
    .basicTextfield .basic-textfield-container > label {
      color: #222;
      font-size: 14px;
      padding: 0 0 2px 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      grid-column: 1;
      grid-row: 1;
      grid-area: label;
      flex: 1;
      -ms-flex: 1; }
  .basicTextfield div.error input {
    border-color: #b11644;
    background: #f8eae7; }
    .basicTextfield div.error input.mandatory {
      border-left-color: #b11644; }
  .basicTextfield div.error .imgWrapper:after {
    border-color: #b11644 !important;
    border-left-color: #bfbfbf !important; }
  .basicTextfield input::placeholder {
    font-style: italic; }
  .basicTextfield input::-webkit-outer-spin-button,
  .basicTextfield input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0;
    /* <-- Apparently some margin are still there even though it's hidden */ }
  .basicTextfield input[type="number"]:hover,
  .basicTextfield input[type="number"]:focus {
    -moz-appearance: number-input; }
  .basicTextfield input[type="number"] {
    -moz-appearance: textfield;
    /* Firefox */ }
  .basicTextfield span.inputUnit:after {
    content: ""; }
  .basicTextfield span.inputUnit.show_content {
    position: relative;
    display: inline-block; }
    .basicTextfield span.inputUnit.show_content:after {
      pointer-events: none;
      position: absolute;
      color: #777777;
      right: 0;
      top: 51%;
      font-size: 14px;
      transform: translateY(-50%);
      margin-right: 8px;
      content: attr(data-content); }
    .basicTextfield span.inputUnit.show_content input[type="text"],
    .basicTextfield span.inputUnit.show_content input[type="number"] {
      padding-right: calc(1.5em + 0.75rem); }
  .basicTextfield span.inputUnit.has_clear:after {
    content: "\f00d";
    color: inherit;
    cursor: pointer;
    pointer-events: all; }
  .basicTextfield span.inputUnit.has_clear input {
    font-family: revert; }
  .basicTextfield input[type="text"],
  .basicTextfield input[type="url"],
  .basicTextfield input[type="tel"],
  .basicTextfield input[type="email"],
  .basicTextfield input[type="number"],
  .basicTextfield select,
  .basicTextfield [type="password"] {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    grid-column: 1;
    grid-row: 2;
    background-color: #fff;
    padding: 7px;
    color: #222;
    padding-right: 0px;
    font-size: 16px;
    border-radius: 2px;
    width: 100%;
    width: -moz-available;
    width: -webkit-fill-available;
    width: fill-available;
    min-width: 32px;
    border: 1px solid #bfbfbf;
    grid-area: input;
    outline: none;
    filter: none;
    box-sizing: border-box; }
    .basicTextfield input[type="text"]:-webkit-autofill::first-line,
    .basicTextfield input[type="url"]:-webkit-autofill::first-line,
    .basicTextfield input[type="tel"]:-webkit-autofill::first-line,
    .basicTextfield input[type="email"]:-webkit-autofill::first-line,
    .basicTextfield input[type="number"]:-webkit-autofill::first-line,
    .basicTextfield select:-webkit-autofill::first-line,
    .basicTextfield [type="password"]:-webkit-autofill::first-line {
      font-family: Arial, Helvetica, sans-serif;
      font-size: 16px;
      font-style: normal; }
    .basicTextfield input[type="text"]:hover,
    .basicTextfield input[type="text"]:focus,
    .basicTextfield input[type="url"]:hover,
    .basicTextfield input[type="url"]:focus,
    .basicTextfield input[type="tel"]:hover,
    .basicTextfield input[type="tel"]:focus,
    .basicTextfield input[type="email"]:hover,
    .basicTextfield input[type="email"]:focus,
    .basicTextfield input[type="number"]:hover,
    .basicTextfield input[type="number"]:focus,
    .basicTextfield select:hover,
    .basicTextfield select:focus,
    .basicTextfield [type="password"]:hover,
    .basicTextfield [type="password"]:focus {
      border: 1px solid #4a6ead !important; }
    .basicTextfield input[type="text"].mandatory,
    .basicTextfield input[type="url"].mandatory,
    .basicTextfield input[type="tel"].mandatory,
    .basicTextfield input[type="email"].mandatory,
    .basicTextfield input[type="number"].mandatory,
    .basicTextfield select.mandatory,
    .basicTextfield [type="password"].mandatory {
      border-left-color: #4a6ead;
      border-left-style: solid !important;
      border-left-width: 4px !important; }
    .basicTextfield input[type="text"]:-webkit-autofill,
    .basicTextfield input[type="url"]:-webkit-autofill,
    .basicTextfield input[type="tel"]:-webkit-autofill,
    .basicTextfield input[type="email"]:-webkit-autofill,
    .basicTextfield input[type="number"]:-webkit-autofill,
    .basicTextfield select:-webkit-autofill,
    .basicTextfield [type="password"]:-webkit-autofill {
      -webkit-box-shadow: 0 0 0 1000px #fff inset; }
    .basicTextfield input[type="text"]:disabled,
    .basicTextfield input[type="url"]:disabled,
    .basicTextfield input[type="tel"]:disabled,
    .basicTextfield input[type="email"]:disabled,
    .basicTextfield input[type="number"]:disabled,
    .basicTextfield select:disabled,
    .basicTextfield [type="password"]:disabled {
      background: #eee;
      cursor: not-allowed; }
      .basicTextfield input[type="text"]:disabled.mandatory,
      .basicTextfield input[type="url"]:disabled.mandatory,
      .basicTextfield input[type="tel"]:disabled.mandatory,
      .basicTextfield input[type="email"]:disabled.mandatory,
      .basicTextfield input[type="number"]:disabled.mandatory,
      .basicTextfield select:disabled.mandatory,
      .basicTextfield [type="password"]:disabled.mandatory {
        border-left-color: #bfbfbf !important; }
    .basicTextfield input[type="text"]::placeholder,
    .basicTextfield input[type="url"]::placeholder,
    .basicTextfield input[type="tel"]::placeholder,
    .basicTextfield input[type="email"]::placeholder,
    .basicTextfield input[type="number"]::placeholder,
    .basicTextfield select::placeholder,
    .basicTextfield [type="password"]::placeholder {
      color: #777;
      font-style: italic; }
  .basicTextfield .errorImgTooltip {
    color: #222 !important;
    font-size: 12px !important;
    border: 1px solid #b11644 !important;
    border-radius: 0 !important;
    padding: 3px 4px !important;
    right: -8px !important;
    bottom: 34px !important; }
  .basicTextfield .errorImgContainer::before {
    top: -20px; }
  .basicTextfield .errorImgContainer:after {
    top: -21px; }

.feedback .feedbackPanel {
  margin: 0px !important;
  padding: 0px !important;
  list-style: none outside none;
  white-space: nowrap; }

.feedback li.feedbackPanelERROR {
  margin-top: 7px; }
  .feedback li.feedbackPanelERROR span,
  .feedback li.feedbackPanelERROR * {
    padding: 0px 21px !important;
    color: #b73215 !important;
    background-image: url('../img/error-ver-1666179232000.svg') !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll !important;
    background-position: 0px 0px !important;
    position: relative;
    z-index: 1;
    font-size: 12px; }
