/* stylelint-disable scss/operator-no-unspaced */
/* stylelint-enable scss/operator-no-unspaced */
/* Breakpoint viewport sizes and media queries.

Breakpoints are defined as a map of (name: minimum width), order from small to large:
   (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)

 The map defined in the `$breakpoint` global variable is used as the `$breakpoints` argument by default.

 Name of the next breakpoint, or null for the last breakpoint.

  >> breakpoint-next(sm)
   md
  >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
   md
  >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))
   md
*/
/* Minimum breakpoint width. Null for the smallest (first) breakpoint.
    >> ecl-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    576px
*/
/* Maximum breakpoint width. Null for the largest (last) breakpoint.
   The maximum value is calculated as the minimum of the next one less 0.1.

   >> ecl-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
   767px
*/
/* Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.
    Useful for making responsive utilities.

    >> infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    ""  (Returns a blank string)
    >> infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    "-sm"
*/
/**
 * Textarea component
 * @define text-area
 */
.ecl-text-area {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  color: #404040;
  display: block;
  font: normal normal 400 1rem/1.25rem arial, sans-serif;
  margin: 0;
  max-width: 100%;
  padding: calc(0.75rem - 1px) calc(0.75rem - 1px);
}
.ecl-text-area::-moz-placeholder {
  color: #9f9f9f;
  font: normal normal 400 1rem/1.25rem arial, sans-serif;
  opacity: 1;
}
.ecl-text-area::placeholder {
  color: #9f9f9f;
  font: normal normal 400 1rem/1.25rem arial, sans-serif;
  opacity: 1;
}
.ecl-text-area:hover {
  border-color: #004494;
  box-shadow: none;
}
.ecl-text-area:focus-visible, .ecl-text-area:active {
  border-color: #004494;
  border-width: 3px;
  box-shadow: none;
  outline: none;
  padding: calc(0.75rem - 3px) calc(0.75rem - 3px);
}

.ecl-text-area--m {
  width: 100%;
}
@media (min-width: 768px) {
  .ecl-text-area--m {
    width: 50%;
  }
}
@media (min-width: 996px) {
  .ecl-text-area--m {
    width: 253px;
  }
}

.ecl-text-area--l {
  width: 100%;
}
@media (min-width: 996px) {
  .ecl-text-area--l {
    width: 443px;
  }
}

.ecl-text-area[disabled],
.ecl-text-area--disabled,
.ecl-text-area[readonly],
.ecl-text-area--readonly {
  background-color: #fff;
  border-color: rgba(112, 112, 112, 0.5);
  box-shadow: none;
  cursor: not-allowed;
}
.ecl-text-area[disabled]::-moz-placeholder, .ecl-text-area--disabled::-moz-placeholder, .ecl-text-area[readonly]::-moz-placeholder, .ecl-text-area--readonly::-moz-placeholder {
  color: rgba(159, 159, 159, 0.5);
}
.ecl-text-area[disabled]::placeholder,
.ecl-text-area--disabled::placeholder,
.ecl-text-area[readonly]::placeholder,
.ecl-text-area--readonly::placeholder {
  color: rgba(159, 159, 159, 0.5);
}
.ecl-text-area[disabled]:hover,
.ecl-text-area--disabled:hover,
.ecl-text-area[readonly]:hover,
.ecl-text-area--readonly:hover {
  border-color: rgba(112, 112, 112, 0.5);
  box-shadow: none;
}
.ecl-text-area[disabled]:focus, .ecl-text-area[disabled]:active,
.ecl-text-area--disabled:focus,
.ecl-text-area--disabled:active,
.ecl-text-area[readonly]:focus,
.ecl-text-area[readonly]:active,
.ecl-text-area--readonly:focus,
.ecl-text-area--readonly:active {
  border-color: rgba(112, 112, 112, 0.5);
  border-width: 1px;
  padding: calc(0.75rem - 1px) calc(0.75rem - 1px);
}

.ecl-text-area--invalid {
  border-color: #da2131;
}
.ecl-text-area--invalid:hover {
  border-color: #981722;
}
.ecl-text-area--invalid:active, .ecl-text-area--invalid:focus-visible {
  border-color: #004494;
}

.ecl-text-area.sc-ecl-textarea-ec {
  margin-top: 0.75rem;
}