.smart-component {
  position: relative;
  width: 100%;
}

.input-group .smart-component {
  float: left;
}

.input-group .smart-component:first-child .sc-input,
.input-group .smart-component:first-child .sc-hint {
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px;
}
.input-group .smart-component:last-child .sc-input,
.input-group .smart-component:last-child .sc-hint {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
}

.smart-component .sc-input {
  position: relative;
  z-index: 2;
  background-color: transparent;
}

.smart-component .sc-hint {
  position: absolute;
  top: 0;
  left: 0;
  border-color: transparent;
  box-shadow: none;
  opacity: 1;
  background: none 0% 0% / auto repeat scroll padding-box border-box #fff;
}

.smart-component .sc-input:disabled {
  background-color: #e1e1e1;
}

.smart-component .sc-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  min-width: 160px;
  width: 100%;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  background-color: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}

.smart-component .sc-menu .sc-result {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333333;
  white-space: nowrap;
  cursor: pointer;
}

.smart-component .sc-menu .sc-result.highlighted {
  text-decoration: none;
  outline: 0;
  background-color: #f5f5f5;
  color: #262626;
  cursor: pointer;
}

.smart-component .sc-menu .sc-result.highlighted-mouse {
  text-decoration: none;
  outline: 0;
  background-color: #f5f5f5;
  color: #262626;
  cursor: pointer;
}

.smart-component .sc-menu .sc-result .sc-highlighted-match-chars {
  font-weight: 700;
  color: #F1C40F;
}

.smart-component .sc-diagnostics {
  position: fixed;
  bottom: 0;
  right: 0;
  padding: 4px;
  background: #ffffff;
  z-index: 1000;
  border: 2px solid black;
}

.smart-component .sc-diagnostics.sc-left {
  right: 512px;
}

.smart-component .sc-diagnostics > table {
  width: 500px;
  border-collapse: collapse;
}

.smart-component .sc-diagnostics > table > tbody > tr > td.sc-diagnostic-header {
  background-color: #eee;
  text-align: center;
  color: #666;
  font-weight: 700;
}

.smart-component .sc-diagnostics > table > tbody > tr > td {
  padding: 2px;
}
