/*TEXTBOX STYLES*/
input[type=text],
input[type=password],
textarea {
  margin: 0px;
  padding: 0rem .5rem 0rem .5rem;
  min-height: calc(2.1rem - 2px);
  width: 0rem;
  min-width: 15rem;
  vertical-align: middle;
  outline: none;
  border: 1px solid #BFBFBF;
  background-color: #FFFFFF;
  border-radius: 0px;
  color: inherit;
  font-size: inherit; }
  input[type=text]::-ms-clear,
  input[type=password]::-ms-clear,
  textarea::-ms-clear {
    display: none; }
  input[type=text]:focus:not(.error),
  input[type=password]:focus:not(.error),
  textarea:focus:not(.error) {
    border: 1px solid #3ba3db; }
  input[type=text]:disabled, input[type=text][disabled=disabled],
  input[type=password]:disabled,
  input[type=password][disabled=disabled],
  textarea:disabled,
  textarea[disabled=disabled] {
    background-color: #eeeeee;
    color: #555555; }
  input[type=text]::-webkit-input-placeholder,
  input[type=password]::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #AAAAAA;
    font-style: unset; }

textarea {
  min-height: 2rem;
  padding-top: .5rem;
  padding-bottom: .5rem;
  resize: none; }

/*PRE/POST-FIX STYLES*/
.textbox {
  position: relative;
  vertical-align: middle;
  min-height: calc(2.1rem - 2px);
  min-width: 5rem; }
  .textbox input[type=text], .textbox input[type=password], .textbox textarea {
    min-width: 1rem;
    min-height: inherit; }
  .textbox .prefix, .textbox .postfix {
    background-color: #fdfdfd;
    border: 1px solid #BFBFBF;
    color: inherit;
    outline: none;
    white-space: nowrap;
    min-width: calc(2.1rem - 2px);
    min-height: inherit; }
  .textbox .prefix {
    border-right: none; }
  .textbox .postfix {
    border-left: none; }
  .textbox .prefix.padding, .textbox .postfix.padding {
    padding-left: .4rem;
    padding-right: .4rem; }
  .textbox .error {
    border-color: #DE3716; }
  .textbox .textbox-counter > span {
    padding: .1rem; }
  .textbox:disabled, .textbox[disabled=disabled] {
    background-color: #eeeeee;
    color: #555555; }
    .textbox:disabled:hover, .textbox[disabled=disabled]:hover {
      background-color: #eeeeee;
      color: #555555;
      cursor: not-allowed; }
  .textbox.date {
    width: 10rem; }
  .textbox > .iconPadding {
    padding-right: 2.1rem; }
  .textbox > .textboxIcon {
    position: absolute;
    height: 100%;
    width: 1.4rem;
    top: 0rem;
    right: .2rem;
    background-repeat: no-repeat;
    background-size: 1.4rem;
    background-position: center; }
    .textbox > .textboxIcon.textboxInvalid {
      background-image: url(../../Scripts/Icons/SVG/exclamation-circle_DE3716.svg); }
    .textbox > .textboxIcon.textboxValid {
      background-image: url(../../Scripts/Icons/SVG/check-circle_58b91d.svg); }
    .textbox > .textboxIcon.textboxLoading {
      background-image: url(../../Scripts/Icons/SVG/spinner-third_1d82b9.svg);
      animation: strokeTo .5s linear infinite; }
    .textbox > .textboxIcon.lock-alt-solid {
      background-size: 1rem; }

/*TEXTBOX TRANSPARENT STYLES*/
.textbox.transparent .prefix,
.textbox.transparent .postfix,
.textbox.transparent input[type=text],
.textbox.transparent input[type=password],
.textbox.transparent textarea {
  background-color: transparent;
  color: #FFFFFF; }

.textbox.transparent:-webkit-autofill {
  -webkit-animation-name: autofill;
  -webkit-animation-fill-mode: both; }

.textbox.transparent :not(.error) {
  border-color: #FFFFFF; }

input:-internal-autofill-previewed,
input:-internal-autofill-selected,
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px #FFFFFF inset !important; }

@-webkit-keyframes autofill {
  to {
    color: #FFFFFF;
    background: transparent; } }

@keyframes textboxLoading {
  to {
    transform: rotate(360deg); } }

.textbox-border {
  box-sizing: border-box;
  border: 1px solid #BFBFBF;
  position: relative; }

.textarea-with-counter {
  box-sizing: border-box;
  border: 1px solid transparent;
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  background-color: transparent;
  overflow-y: auto;
  overflow-x: hidden;
  z-index: 1; }

.pseudo-box {
  box-sizing: border-box;
  border: 1px solid transparent;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  color: transparent;
  overflow-x: auto; }

.highlights {
  white-space: pre-wrap; }

.highlighting-chars {
  background-color: #dbebf2; }

.counter {
  box-sizing: border-box;
  padding: 2px 4px;
  color: #6bb5dd; }
