diff --git a/static/scss/base.scss b/static/scss/base.scss
index f8cff323c3006bca2ce5f360c464acaace53b4df..f6d87193b51457d21aa99042480ef79e9280dabe 100644
--- a/static/scss/base.scss
+++ b/static/scss/base.scss
@@ -7,6 +7,7 @@
 @import 'positions';
 @import 'chambers';
 @import 'groups';
+@import 'filter';
 @import 'external';
 
 body {
diff --git a/static/scss/filter.scss b/static/scss/filter.scss
new file mode 100644
index 0000000000000000000000000000000000000000..6edf3981985847e6a9c1d03585535b0ce3020afc
--- /dev/null
+++ b/static/scss/filter.scss
@@ -0,0 +1,62 @@
+@mixin bootstrap-shadow($color:#66afe9) {
+  border-color: #66afe9;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 6px $color;
+  box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 6px $color;
+}
+
+.filter-form {
+  display: flex;
+  flex-flow: row wrap;
+  justify-content: flex-start;
+  align-items: flex-end;
+
+  .form-group {
+    display: flex;
+    flex-flow: column nowrap;
+
+    margin: 0 .5em 0 0;
+
+    .help-block {
+      display: none;
+    }
+
+    .btn {
+      margin-top: .5em;
+    }
+
+    /* Override bootstrap has-success color */
+
+    .control-label {
+      color: #555;
+    }
+
+    .form-control {
+      border-color: #ccc;
+
+      &:focus {
+        @include bootstrap-shadow();
+      }
+    }
+
+    /* Override select2 */
+    .select2-container {
+      .select2-selection {
+        border-color: #ccc !important;
+        height: 34px;
+
+        .select2-selection__rendered {
+          line-height: 34px;
+        }
+
+        .select2-selection__arrow {
+          height: 32px;
+        }
+      }
+
+      &.select2-container--focus,
+      &.select2-container--open {
+        @include bootstrap-shadow();
+      }
+    }
+  }
+}
\ No newline at end of file