@font-face {
  font-family: 'icomoon';
  src: url('fonts/icomoon.eot?lpg6jd');
  src: url('fonts/icomoon.eot?lpg6jd#iefix') format('embedded-opentype'), url('fonts/icomoon.ttf?lpg6jd') format('truetype'), url('fonts/icomoon.woff?lpg6jd') format('woff'), url('fonts/icomoon.svg?lpg6jd#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.filter-fields * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  transition: all 0.2s ease;
}
.filter-fields .filter-field {
  margin-bottom: 8px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.filter-fields .filter-field .filter-field-label {
  position: relative;
  padding: 0 30px;
  height: 40px;
  line-height: 40px;
  background: #fff;
  color: #4f4f4f;
  font-size: 14px;
}
.filter-fields .filter-field .filter-field-label .filter-field-switch {
  display: block;
  position: absolute;
  right: 16px;
  top: 15px;
  width: 10px;
  height: 10px;
  line-height: 10px;
  transform: rotate(90deg);
  font-family: 'icomoon';
  font-size: 10px;
  color: #f58220;
}
.filter-fields .filter-field .filter-field-label .filter-field-switch::before {
  content: '\e900';
}
.filter-fields .filter-field .filter-field-label .filter-field-clear {
  display: none;
  position: absolute;
  right: 35px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  color: #4430e0;
}
.filter-fields .filter-field .filter-field-content {
  display: none;
  padding: 12px;
  background: #FFF;
  border-top: 1px solid rgba(108, 92, 231, 0.1);
}
.filter-fields .filter-field .filter-field-content::after {
  content: '';
  display: table;
  clear: both;
}
.filter-fields .filter-field .filter-field-content .filter-field-option,
.filter-fields .filter-field .filter-field-content .filter-field-option-single {
  float: left;
  margin: 6px;
  padding: 8px 14px;
  border: 2px solid #DFE6E9;
  border-radius: 6px;
  color: #2D3436;
  background: #FFF;
  font-size: 13px;
  cursor: pointer;
  line-height: 1.5;
}
.filter-fields .filter-field .filter-field-content .filter-field-option:hover,
.filter-fields .filter-field .filter-field-content .filter-field-option-single:hover {
  border-color: #c1ced4;
  background: #fafafa;
}
.filter-fields .filter-field .filter-field-content .filter-field-option.filter-checked,
.filter-fields .filter-field .filter-field-content .filter-field-option-single.filter-checked {
  background: rgba(108, 92, 231, 0.1);
  border-color: #f58220;
  color: #444;
  font-weight: 500;
}
.filter-fields .filter-field .filter-field-content .filter-field-option input,
.filter-fields .filter-field .filter-field-content .filter-field-option-single input {
  display: none;
}
.filter-fields .filter-field .filter-field-content .filter-field-option-single {
  border-radius: 20px;
  padding: 8px 18px;
}
.filter-fields .filter-field .filter-field-content input[type="text"],
.filter-fields .filter-field .filter-field-content input[type="number"],
.filter-fields .filter-field .filter-field-content input[type="search"],
.filter-fields .filter-field .filter-field-content input[type="email"],
.filter-fields .filter-field .filter-field-content input[type="password"] {
  display: inline-block;
  width: 100%;
  padding: 0 5px;
  height: 25px;
  line-height: 25px;
  margin: 6px 0;
  border: 2px solid #DFE6E9;
  border-radius: 6px;
  font-size: 12px;
  background: #FFF;
  color: #2D3436;
  outline: none;
  transition: border-color 0.2s ease;
}
.filter-fields .filter-field .filter-field-content input[type="text"]:focus,
.filter-fields .filter-field .filter-field-content input[type="number"]:focus,
.filter-fields .filter-field .filter-field-content input[type="search"]:focus,
.filter-fields .filter-field .filter-field-content input[type="email"]:focus,
.filter-fields .filter-field .filter-field-content input[type="password"]:focus {
  border-color: #6C5CE7;
}
.filter-fields .filter-field .filter-field-content input[type="number"] {
  width: 80px;
}
.filter-fields .filter-field .filter-field-content button {
  display: inline-block;
  padding: 0 8px;
  border: none;
  border-radius: 5px;
  height: 20px;
  text-align: center;
  line-height: 20px;
  font-size: 10px;
  background: #FFF;
  color: #333333;
  cursor: pointer;
  outline: none;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}
.filter-fields .filter-field .filter-field-content button:hover,
.filter-fields .filter-field .filter-field-content button:active {
  background: #6C5CE7;
  color: #FFF;
  box-shadow: 0 4px 12px rgba(108, 92, 231, 0.5);
}
.filter-fields .filter-field.filter-open .filter-field-label .filter-field-switch {
  transform: rotate(0deg);
}
.filter-fields .filter-field.filter-open .filter-field-content {
  display: block;
}
