/*
 * Forms
 * ==========================================================================
 */
/*
 * *
 * * 1. Change the font styles in all browsers (opinionated).
 * * 2. Remove the margin in Firefox and Safari.
 */
.form_span {
  padding: 0 1.5rem 0 0; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
    /*
   * 1 (changed)
   */
  font-size: inherit;
    /*
   * 1 (changed)
   */
  line-height: inherit;
    /*
   * 1 (changed)
   */
  margin: 0;
    /*
   * 2
   */ }

/*
 * *
 * * Show the overflow in IE.
 * * 1. Show the overflow in Edge.
 */
button,
input {
    /*
   * 1
   */
  overflow: visible; }

/*
 * *
 * * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
    /*
   * 1
   */
  text-transform: none; }

/*
 * *
 * * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 * *    controls in Android 4.
 * * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
    /*
   * 2
   */ }

/*
 * *
 * * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/*
 * *
 * * Restore the focus styles unset by the previous rule (removed).
 */
/*
 * *
 * * Change the border, margin, and padding in all browsers (opinionated) (changed).
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * *
 * * 1. Correct the text wrapping in Edge and IE.
 * * 2. Correct the color inheritance from `fieldset` elements in IE.
 * * 3. Remove the padding so developers are not caught out when they zero out
 * *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
    /*
   * 1
   */
  color: inherit;
    /*
   * 2
   */
  display: table;
    /*
   * 1
   */
  max-width: 100%;
    /*
   * 1
   */
  padding: 0;
    /*
   * 3
   */
  white-space: normal;
    /*
   * 1
   */ }

/*
 * *
 * * 1. Add the correct display in IE 9-.
 * * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
    /*
   * 1
   */
  vertical-align: baseline;
    /*
   * 2
   */ }

/*
 * *
 * * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/*
 * *
 * * 1. Add the correct box sizing in IE 10-.
 * * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
    /*
   * 1
   */
  padding: 0;
    /*
   * 2
   */ }

/*
 * *
 * * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/*
 * *
 * * 1. Correct the odd appearance in Chrome and Safari.
 * * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
    /*
   * 1
   */
  outline-offset: -2px;
    /*
   * 2
   */ }

/*
 * *
 * * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/*
 * *
 * * 1. Correct the inability to style clickable types in iOS and Safari.
 * * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
    /*
   * 1
   */
  font: inherit;
    /*
   * 2
   */ }

/*
 * Interactive
 * ==========================================================================
 */
/*
 * 
 * * Add the correct display in IE 9-.
 * * 1. Add the correct display in Edge, IE, and Firefox.
 */
/*
 * Hiermit können Safari >=1.1, Opera >=9.5, IE9 was anfangen
 */
::selection {
  background: #83bb26;
  color: #ddf1bc; }

/*
 * und hiermit der Firefox >=1
 */
::-moz-selection {
  background: #83bb26;
  color: #ddf1bc; }

.form-group:not(:last-child) {
  margin-bottom: 0.4rem; }

fieldset {
  margin-bottom: 1.6rem; }

legend {
  font-size: 0.9rem;
  font-weight: 500;
  margin-bottom: 1.6rem; }

label.form-input {
  display: block;
  line-height: 1rem;
  padding: 0.4rem 0;
  background: none;
  background-image: none;
  border: none;
  border-radius: 0;
  color: #616367;
  display: block;
  font-size: 0.8rem;
  height: auto;
  line-height: 1rem;
  max-width: 100%;
  outline: none;
  position: static; }

label.form-input.label-sm {
  padding: 0.2rem 0; }

label.form-input.label-lg {
  padding: 0.5rem 0; }

.form-input {
  transition: all 0.4s ease 0s;
  appearance: none;
  background: #fafafa;
  background-image: none;
  border: 0.05rem solid #d6d6d8;
  border-radius: 0.1rem;
  color: #616367;
  display: block;
  font-size: 0.8rem;
  height: 1.8rem;
  line-height: 1rem;
  max-width: 100%;
  outline: none;
  padding: 0.35rem 0.5rem;
  position: relative;
  width: 100%; }

.form-input:focus {
  box-shadow: 0 0 0 0.1rem rgba(131, 187, 38, 0.2);
  border-color: #83bb26; }

.form-input::placeholder {
  color: #bcbcbf; }

.form-input::-ms-input-placeholder {
    /*
   * IE 10+
   */
  color: #bcbcbf; }

.form-input.input-sm {
  font-size: 0.7rem;
  height: 1.4rem;
  padding: 0.15rem 0.3rem; }

.form-input.input-lg {
  font-size: 0.9rem;
  height: 2rem;
  padding: 0.45rem 0.6rem; }

.form-input.input-inline {
  display: inline-block;
  vertical-align: middle;
  width: auto; }

.form-input[type="file"] {
  height: auto; }

textarea.form-input {
  height: auto; }

.form-input-hint {
  color: #bcbcbf;
  font-size: 0.7rem;
  margin-top: 0.2rem; }

.has-success .form-input-hint,
.is-success + .form-input-hint {
  color: #83bb26; }

.has-error .form-input-hint,
.is-error + .form-input-hint {
  color: #b40a0f; }

.form-select {
  appearance: none;
  border: 0.05rem solid #d6d6d8;
  border-radius: 0.1rem;
  color: inherit;
  font-size: 0.8rem;
  height: 1.8rem;
  line-height: 1rem;
  outline: none;
  padding: 0.35rem 0.4rem;
  vertical-align: middle;
  width: 100%; }

.form-select[size],
.form-select[multiple] {
  height: auto; }

.form-select[size] option,
.form-select[multiple] option {
  padding: 0.1rem 0.2rem; }

.form-select:not([multiple]):not([size]) {
  background: white url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3E%3Cpath%20fill='%23667189'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3E%3C/svg%3E") no-repeat right 0.35rem center/0.4rem 0.5rem;
  padding-right: 1.2rem; }

.form-select:focus {
  box-shadow: 0 0 0 0.1rem rgba(131, 187, 38, 0.2);
  border-color: #83bb26; }

.form-select::-ms-expand {
  display: none; }

.form-select.select-sm {
  font-size: 0.7rem;
  height: 1.4rem;
  padding: 0.15rem 1.1rem 0.15rem 0.3rem; }

.form-select.select-lg {
  font-size: 0.9rem;
  height: 2rem;
  padding: 0.45rem 1.4rem 0.45rem 0.6rem; }

.form-checkbox,
.form-radio,
.form-switch {
  display: inline-block;
  line-height: 1rem;
  padding: 0.2rem 1.2rem;
  position: relative; }

.form-checkbox input,
.form-radio input,
.form-switch input {
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  position: absolute;
  width: 1px; }

.form-checkbox input:focus + .form-icon,
.form-radio input:focus + .form-icon,
.form-switch input:focus + .form-icon {
  box-shadow: 0 0 0 0.1rem rgba(131, 187, 38, 0.2);
  border-color: #83bb26; }

.form-checkbox input:checked + .form-icon,
.form-radio input:checked + .form-icon,
.form-switch input:checked + .form-icon {
  background: #83bb26;
  border-color: #83bb26; }

.form-checkbox .form-icon,
.form-radio .form-icon,
.form-switch .form-icon {
  transition: all 0.4s ease 0s;
  border: 0.05rem solid #d6d6d8;
  cursor: pointer;
  display: inline-block;
  position: absolute; }

.form-checkbox .form-icon,
.form-radio .form-icon {
  background: #fafafa;
  height: 0.8rem;
  left: 0;
  top: 0.3rem;
  width: 0.8rem; }

.form-checkbox input:active + .form-icon,
.form-radio input:active + .form-icon {
  background: #f2f2f2; }

.form-checkbox .form-icon {
  border-radius: 0.1rem; }

.form-checkbox input:checked + .form-icon::before {
  background-clip: padding-box;
  border: 0.1rem solid #fafafa;
  border-left-width: 0;
  border-top-width: 0;
  content: "";
  height: 12px;
  left: 50%;
  margin-left: -4px;
  margin-top: -8px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 8px; }

.form-checkbox input:indeterminate + .form-icon {
  background: #83bb26;
  border-color: #83bb26; }

.form-checkbox input:indeterminate + .form-icon::before {
  background: #fafafa;
  content: "";
  height: 2px;
  left: 50%;
  margin-left: -5px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  width: 10px; }

.form-radio .form-icon {
  border-radius: 50%; }

.form-radio input:checked + .form-icon::before {
  background: #fafafa;
  border-radius: 50%;
  content: "";
  height: 4px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 4px; }

.form-switch {
  padding-left: 2rem; }

.form-switch .form-icon {
  background: #e3e3e5;
  background-clip: padding-box;
  border-radius: 0.45rem;
  height: 0.9rem;
  left: 0;
  top: 0.25rem;
  width: 1.6rem; }

.form-switch .form-icon::before {
  transition: all 0.4s ease 0s;
  background: #fafafa;
  border-radius: 50%;
  content: "";
  display: block;
  height: 0.8rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 0.8rem; }

.form-switch input:checked + .form-icon::before {
  left: 14px; }

.form-switch input:active + .form-icon::before {
  background: #fafafa; }

.input-group {
  display: flex; }

.input-group .input-group-addon {
  background: #fafafa;
  border: 0.05rem solid #d6d6d8;
  border-radius: 0.1rem;
  line-height: 1rem;
  padding: 0.35rem 0.4rem; }

.input-group .input-group-addon.addon-sm {
  font-size: 0.7rem;
  padding: 0.15rem 0.3rem; }

.input-group .input-group-addon.addon-lg {
  font-size: 0.9rem;
  padding: 0.45rem 0.6rem; }

.input-group .form-input,
.input-group .form-select {
  flex: 1 1 auto; }

.input-group .input-group-btn {
  z-index: 1; }

.input-group .form-input:first-child:not(:last-child),
.input-group .form-select:first-child:not(:last-child),
.input-group .input-group-addon:first-child:not(:last-child),
.input-group .input-group-btn:first-child:not(:last-child) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.input-group .form-input:not(:first-child):not(:last-child),
.input-group .form-select:not(:first-child):not(:last-child),
.input-group .input-group-addon:not(:first-child):not(:last-child),
.input-group .input-group-btn:not(:first-child):not(:last-child) {
  border-radius: 0;
  margin-left: -0.05rem; }

.input-group .form-input:last-child:not(:first-child),
.input-group .form-select:last-child:not(:first-child),
.input-group .input-group-addon:last-child:not(:first-child),
.input-group .input-group-btn:last-child:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  margin-left: -0.05rem; }

.input-group .form-input:focus,
.input-group .form-select:focus,
.input-group .input-group-addon:focus,
.input-group .input-group-btn:focus {
  z-index: 2; }

.input-group .form-select {
  width: auto; }

.input-group.input-inline {
  display: inline-flex; }

.has-success .form-input,
.form-input.is-success,
.has-success.form-select,
.form-select.is-success {
  border-color: #83bb26; }

.has-success .form-input:focus,
.form-input.is-success:focus,
.has-success  .form-select:focus,
.form-select.is-success:focus {
  box-shadow: 0 0 0 0.1rem rgba(131, 187, 38, 0.2); }

.has-error .form-input,
.form-input.is-error,
.has-error.form-select,
.form-select.is-error {
  border-color: #b40a0f; }

.has-error .form-input:focus,
.form-input.is-error:focus,
.has-error  .form-select:focus,
.form-select.is-error:focus {
  box-shadow: 0 0 0 0.1rem rgba(180, 10, 15, 0.2); }

.has-error .form-checkbox .form-icon,
.form-checkbox.is-error .form-icon,
.has-error.form-radio .form-icon,
.form-radio.is-error .form-icon,
.has-error.form-switch .form-icon,
.form-switch.is-error .form-icon {
  border-color: #b40a0f; }

.has-error .form-checkbox input:checked + .form-icon,
.form-checkbox.is-error input:checked + .form-icon,
.has-error.form-radio input:checked + .form-icon,
.form-radio.is-error input:checked + .form-icon,
.has-error.form-switch input:checked + .form-icon,
.form-switch.is-error input:checked + .form-icon {
  background: #b40a0f;
  border-color: #b40a0f; }

.has-error .form-checkbox input:focus + .form-icon,
.form-checkbox.is-error input:focus + .form-icon,
.has-error.form-radio input:focus + .form-icon,
.form-radio.is-error input:focus + .form-icon,
.has-error.form-switch input:focus + .form-icon,
.form-switch.is-error input:focus + .form-icon {
  box-shadow: 0 0 0 0.1rem rgba(180, 10, 15, 0.2);
  border-color: #b40a0f; }

.form-input:not(:placeholder-shown):invalid {
  border-color: #b40a0f; }

.form-input:not(:placeholder-shown):invalid:focus {
  box-shadow: 0 0 0 0.1rem rgba(180, 10, 15, 0.2); }

.form-input:not(:placeholder-shown):invalid + .form-input-hint {
  color: #b40a0f; }

.form-input:disabled,
.form-input.disabled,
.form-select:disabled,
.form-select.disabled {
  background-color: #f2f2f2;
  cursor: false;
  opacity: 0.5; }

.form-input[readonly] {
  background-color: #fafafa; }

input:disabled + .form-icon,
input.disabled + .form-icon {
  background: #f2f2f2;
  cursor: false;
  opacity: 0.5; }

.form-switch input:disabled + .form-icon::before,
.form-switch input.disabled + .form-icon::before {
  background: #fafafa; }

.form-horizontal {
  padding: 0.4rem; }

.form-horizontal .form-group {
  display: flex; }

.form-horizontal .form-checkbox,
.form-horizontal .form-radio,
.form-horizontal .form-switch {
  margin: 0.2rem 0; }

