
.btn-file {
  position: relative;
  overflow: hidden;
  height: calc(1.8rem + 0.75rem + 2px);
}

.input-group-file.input-group .btn,
.input-group-file .btn-outline-secondary {
  color: #fff;
  background: var(--sbb-color-red);
  border-color: #ced4da;
  font-size: 14px;
  line-height: 2.35rem;
  padding-top: 0;
  vertical-align: middle;
}

.btn-file input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  font-size: 100px;
  text-align: right;
  filter: alpha(opacity=0);
  opacity: 0;
  outline: none;
  background: var(--sbb-color-red);
  cursor: inherit;
  display: block;
}

.input-group-file .upload-file-text {
  border-left-color: transparent;
}

custom-file-input:lang(de) ~ .custom-file-label::after {
  content: "Durchsuchen";
}

.custom-file-input:lang(fr) ~ .custom-file-label::after {
  content: "Parcourir";
}

.custom-file-input:lang(it) ~ .custom-file-label::after {
  content: "Sfogliare";
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
  background-color: #fafafa;
}

.form-control {
  height: calc(1.8rem + 0.75rem + 2px);
  line-height: 1.5;
  box-shadow: none;
  border-width: 2px;
}

.form-control:not(.readonly),
.form-control:not(:disabled),
.form-control:not(.disabled) {
  border-color: #b7b7b7;
}

.form-control:focus {
  box-shadow: none;
  outline: none;
}

.form-control:focus:not(.readonly),
.form-control:focus:not(.disabled),
.form-control:focus:not(:disabled) {
  border-color: #666;
}

.form-control:disabled,
.form-control[readonly] {
  background-color: #F6F5F4;
  border-color: #D2D2D2;
  color: #666666;
}

.form-control-plaintext {
  pointer-events: none;
  border: 2px solid #eee;
  padding: .375rem .75rem;
}

.form-control-plaintext:focus {
  outline: 0;
}

.form-group {
  margin-bottom: 1rem;
}

.form-group.readonly .col-form-label .text-danger {
  display: none;
}

.form-group.readonly .form-label,
.form-group.readonly .col-form-label,
.form-group.readonly .form-control,
.form-group.readonly .form-control-plaintext {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

label .global-tooltip-trigger .ms-Icon {
  font-size: 86%;
  vertical-align: bottom;
  margin-left: 5px;
}

/*.col-form-label,
.form-label,*/
.sbb-label {
  margin-bottom: .2307692308em;
  margin-top: 0.5rem;
  letter-spacing: 0;
  padding-left: 0;
  padding-bottom: 0;
  outline: 0;
  resize: none;
  background-color: transparent;
  font-family: SBBWeb Roman,Helvetica Neue,Helvetica,Arial,sans-serif;
  font-size: .8666666667rem;
  color: #686868;
  line-height: 1.0666666667rem;
  display: block;
}

.sbb-label.required:after {
  content: "*";
  font-weight: normal;
  font-size: 16px;
  margin-left: 2px;
  font-family: monospace;
  color: var(--sbb-color-red125);
}

.form-control::placeholder {
  font-weight: normal;
  font-style: italic;
  opacity: 0.75;
  color: var(--sbb-color-metal);
}
