You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2018/07/27 10:03:44 UTC

[19/53] [partial] brooklyn-ui git commit: Update Brooklyn codebase to build the newly donated UI

http://git-wip-us.apache.org/repos/asf/brooklyn-ui/blob/47b46402/src/main/license/license-inclusions-source-projects-embedding-manual.yaml
----------------------------------------------------------------------
diff --git a/src/main/license/license-inclusions-source-projects-embedding-manual.yaml b/src/main/license/license-inclusions-source-projects-embedding-manual.yaml
deleted file mode 100644
index a9fcd00..0000000
--- a/src/main/license/license-inclusions-source-projects-embedding-manual.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#  http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-# extras file for org.heneveld.license-audit-maven-plugin
-# listing projects from which *source* files are included
-
-- id: jquery-core:1.7.2
-- id: swagger-ui:2.1.4
-# we use other versions of the above in other projs
-
-- id: jquery.wiggle.min.js
-- id: require.js
-- id: require.js/r.js
-- id: backbone.js
-- id: bootstrap.js
-- id: underscore.js
-- id: async.js
-- id: handlebars.js
-- id: jquery.ba-bbq.js
-- id: jquery.ba-bbq.js-hashchange
-- id: moment.js
-- id: ZeroClipboard
-- id: jquery.dataTables
-- id: js-uri
-- id: js-yaml.js
-- id: jquery.form.js
-- id: marked.js
-- id: codemirror.js
-- id: font-awesome-fonts
-- id: font-awesome-code
-- id: jquery.easy-autocomplete.js
-

http://git-wip-us.apache.org/repos/asf/brooklyn-ui/blob/47b46402/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index c89697a..0000000
--- a/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one
-    or more contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  The ASF licenses this file
-    to you under the Apache License, Version 2.0 (the
-    "License"); you may not use this file except in compliance
-    with the License.  You may obtain a copy of the License at
-    
-     http://www.apache.org/licenses/LICENSE-2.0
-    
-    Unless required by applicable law or agreed to in writing,
-    software distributed under the License is distributed on an
-    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-    KIND, either express or implied.  See the License for the
-    specific language governing permissions and limitations
-    under the License.
--->
-<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
-         version="3.1">
-
-  <display-name>Brooklyn</display-name>
-
-  <security-constraint>
-    <web-resource-collection>
-      <web-resource-name>Logout</web-resource-name>
-      <url-pattern>/v1/logout</url-pattern>
-    </web-resource-collection>
-  </security-constraint>
-
-  <!-- Ignored programmatically if noConsoleSecurity -->
-  <security-constraint>
-    <web-resource-collection>
-      <web-resource-name>All</web-resource-name>
-      <url-pattern>/</url-pattern>
-    </web-resource-collection>
-    <auth-constraint>
-      <role-name>webconsole</role-name>
-    </auth-constraint>
-  </security-constraint>
-
-  <login-config>
-    <auth-method>BASIC</auth-method>
-    <realm-name>webconsole</realm-name>
-  </login-config>
-
-  <security-role>
-    <role-name>webconsole</role-name>
-  </security-role>
-
-</web-app>

http://git-wip-us.apache.org/repos/asf/brooklyn-ui/blob/47b46402/src/main/webapp/assets/css/base.css
----------------------------------------------------------------------
diff --git a/src/main/webapp/assets/css/base.css b/src/main/webapp/assets/css/base.css
deleted file mode 100644
index 4983a87..0000000
--- a/src/main/webapp/assets/css/base.css
+++ /dev/null
@@ -1,1568 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
-*/
-/* landing page */
-.logo {
-    float: left;
-}
-
-.menubar-top {
-    display: inline-block;
-    vertical-align: bottom;
-    float: right;
-    text-align: right;
-    padding-top: 30px;
-    padding-right: 60px;
-}
-
-#main-content {
-    position: relative;
-}
-
-#application-content {
-    margin-top: 40px;
-    margin-bottom: 40px;
-}
-.add-app .modal-body {
-    padding: 0;
-}
-.add-app .modal-header{
-    border-bottom: 0;
-}
-.add-app .modal-footer {
-    min-height: 20px;
-}
-
-.add-app .tab-content-scroller {
-    overflow: auto !important;
-}
-#application-content div#details {
-    margin-left: 8px !important;
-}
-#application-content .deploy,
-#application-content .preview {
-    padding: 15px;
-}
-#application-content .tab-content {
-    /* easier to scroll in the main window; but if we wanted to prevent it, we could with this */
-    /* max-height: 720px; */
-    overflow: auto;
-}
-
-#modal-container .tab-content {
-    max-height: 300px;
-    overflow: auto;
-}
-
-#application-content .template-lozenge {
-    cursor: hand; cursor: pointer;
-}
-#application-content div.template-lozenge.frame {
-    display: inline-block;
-    border: 3px solid #EEE;
-    border-radius: 4px;
-    width: 212px;
-    overflow: auto;
-    margin: 4px;
-    padding: 3px;
-    clear: right;
-    float: left;   
-}
-#application-content div.template-lozenge div.icon {
-    margin: 2px 8px 2px 2px;
-}
-#application-content div.template-lozenge div.icon img {
-    max-width: 50px;
-    max-height: 50px;
-    margin-top: 15px;
-}
-#application-content .template-lozenge.frame:hover {
-    border: 3px solid #CCC;
-}
-#application-content .template-lozenge.frame.selected {
-    border: 3px solid #793;
-}
-#application-content .template-lozenge .icon {
-    float: left;
-}
-#application-content .template-lozenge .blurb {
-    overflow-y: auto;
-    height: 80px;
-}
-#application-content .template-lozenge .title {
-    font-weight: 700;
-    font-size: 90%;
-}
-#application-content .template-lozenge .description {
-    font-size: 85%;
-}
-#preview_step {
-    margin-left: 18px;
-}
-#application-content .sensor-value,
-#application-content .config-value {
-    font-weight: 700;
-    max-width: 500px;
-    max-height: 40px;
-    white-space: nowrap;
-    overflow-x: hidden;
-    overflow-y: auto;
-}
-div#create-step-template-entries {
-    width: 472px;
-    margin-left: auto;
-    margin-right: auto;
-    padding-top: 12px;
-    padding-bottom: 36px;
-}
-div#catalog-applications-throbber {
-    margin-top: 100px;
-    text-align: center;
-}
-div#catalog-applications-empty {
-    margin-top: 100px;
-    text-align: center;
-}
-/* menu bar */
-.navbar .nav>li {
-    display: block;
-    float: left;
-    list-style: none;
-    margin: 15px 5px 0px 5px;
-}
-
-.navbar .nav>li>a:hover {
-    background-color: #A8B8B0;
-    foreground-color: #261;
-    color: #261;
-    text-decoration: none;
-    text-shadow: 0 0px 0;
-}
-
-.navbar .nav>li>a {
-    background-color: #261;
-    color: #F0F4E8;
-    padding: 5px 7px 0px 7px;
-    -webkit-border-radius: 5px 5px 0 0;
-    -moz-border-radius: 5px 5px 0 0;
-    border-radius: 5px 5px 0 0;
-    line-height: 19px;
-    text-decoration: none;
-    text-shadow: 0 0px 0;
-}
-.navbar .nav > li > a.active {
-    background-color: #492;
-}
-
-ul.dropdown-menu {
-    text-align: left;
-}
-
-.navbar .dropdown-menu li > a:hover, .dropdown-menu .active > a, .dropdown-menu .active > a:hover {
-    background-color: #58AA33; /* that seems necessary to result in the color we want, viz ~ 77AA3E; */
-}
-
-/* tabs eg catalog page */
-.nav-tabs>li,.nav-pills>li {
-    float: left;
-    margin: 0px 1px -1px 1px;
-}
-
-.nav-tabs {
-    border-bottom: 1px solid #DDD;
-    padding-left: 8px;
-    padding-right: 8px;
-    height: 35px;
-}
-
-.nav-tabs>li>a {
-    padding-top: 5px;
-    padding-bottom: 3px;
-    line-height: 18px;
-    border: 1px solid transparent;
-    -webkit-border-radius: 5px 5px 0 0;
-    -moz-border-radius: 5px 5px 0 0;
-    border-radius: 5px 5px 0 0;
-}
-
-li.text-filter input {
-    width: 10em;
-    margin-top: 3px;
-    /* taken from datatables_filter input */    
-    background-image: url("../img/magnifying-glass-right-icon.png");
-    background-size:12px 12px;
-    background-repeat: no-repeat;
-    background-position: 8px 5px;
-    font-size: 85%;
-    padding: 1px 4px 1px 24px;
-    margin-bottom: 2px;
-    -webkit-border-radius: 1em;
-    -moz-border-radius: 1em;
-    border-radius: 1em;
-}
-
-/* bootstrap overrides */
-a {
-    color: #382;
-}
-a:hover {
-    color: #65AA34;
-}
-code {
-    color: #273;
-}
-/* buttons (override bootstrap) */
-.btn-info {
-  background-color: #90C858;
-  *background-color: #609040;
-  background-image: -ms-linear-gradient(top, #90C858, #609040);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#90C858), to(#609040));
-  background-image: -webkit-linear-gradient(top, #90C858, #609040);
-  background-image: -o-linear-gradient(top, #90C858, #609040);
-  background-image: -moz-linear-gradient(top, #90C858, #609040);
-  background-image: linear-gradient(top, #90C858, #609040);
-  background-repeat: repeat-x;
-  border-color: #609040 #609040 #609040;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#90C858', endColorstr='#609040', GradientType=0);
-  filter: progid:dximagetransform.microsoft.gradient(enabled=false);
-}
-
-.btn-info:hover,
-.btn-info:active,
-.btn-info.active,
-.btn-info.disabled,
-.btn-info[disabled] {
-  background-color: #609040;
-  *background-color: #508030;
-}
-
-.btn-info:active,
-.btn-info.active {
-  background-color: #508030 \9;
-}
-
-/* unchanged from bootstrap
-.btn-inverse {
-  background-color: #414141;
-  *background-color: #222222;
-  background-image: -ms-linear-gradient(top, #555555, #222222);
-  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#555555), to(#222222));
-  background-image: -webkit-linear-gradient(top, #555555, #222222);
-  background-image: -o-linear-gradient(top, #555555, #222222);
-  background-image: -moz-linear-gradient(top, #555555, #222222);
-  background-image: linear-gradient(top, #555555, #222222);
-  background-repeat: repeat-x;
-  border-color: #222222 #222222 #000000;
-  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
-  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#555555', endColorstr='#222222', GradientType=0);
-  filter: progid:dximagetransform.microsoft.gradient(enabled=false);
-}
-
-.btn-inverse:hover,
-.btn-inverse:active,
-.btn-inverse.active,
-.btn-inverse.disabled,
-.btn-inverse[disabled] {
-  background-color: #222222;
-  *background-color: #151515;
-}
-
-.btn-inverse:active,
-.btn-inverse.active {
-  background-color: #080808 \9;
-}
-*/
-
-textarea:focus,input[type="text"]:focus,input[type="password"]:focus,
-input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,
-input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,
-input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,
-input[type="color"]:focus,.uneditable-input:focus {
-    border-color: rgba(120, 180, 70, 0.8);
-    outline: 0;
-    outline: thin dotted 9;
-    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px
-        rgba(120, 180, 70, 0.6);
-    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px
-        rgba(120, 180, 70, 0.6);
-    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px
-        rgba(120, 180, 70, 0.6);
-}
-
-/* home page squares */
-
-/* HOME BODY */
-#application-content {
-    background-color: #e8e8e8 !important;
-    padding-top: 30px !important;
-}
-
-.home-first-row {
-    padding: 0px;
-}
-
-.home-summaries-row {
-    text-align: center;
-    margin: 0px 0px 30px 0px;
-}
-
-.roundedSummary {
-    float: left;
-    border: 1px solid #d4d4d4;
-    -webkit-border-radius: 15px;
-    -moz-border-radius: 15px;
-    border-radius: 15px;
-    background-color: #f7f6e8;
-    margin: 10px 15px 0px 0px;
-    padding: 20px 20px;
-    width: 264px;
-    height: 160px;
-    line-height: 1.2;
-    font-size: 140%;
-    display: inline-block;
-    text-align: left;
-    background: #f9f9f9 url(../images/roundedSummary-background.png) top
-        repeat-x !important;
-}
-
-.roundedSummary:last-child {
-    margin-right: 0px;
-}
-
-.roundedSummary:before { /* makes the summary vertically centered */
-    content: '';
-    display: inline-block;
-    height: 100%;
-    vertical-align: middle;
-    margin-right: 0px !important;
-    /* 
-    margin-right: -0.25em; 
-    adjusts for horiz spacing */
-}
-
-.roundedSummaryText {
-    display: inline-block;
-    vertical-align: middle;
-}
-
-.addSummary {
-    border: 1px solid #a1cb8c !important;
-    color: #505050 !important;
-    background: url(../images/addApplication-plus.png) no-repeat !important;
-    padding: 10px 0px 0px 74px !important;
-    width: 298px !important;
-    height: 201px !important;
-}
-
-.addSummary:hover {
-    border: 1px solid #58a82e !important;
-    color: #58a82e !important;
-    background: url(../images/addApplication-plus-hover.png) no-repeat
-        !important;
-}
-
-.home-summaries-row {
-    padding: 0px 0px 0px 0px !important;
-    margin: 0px !important;
-}
-
-.big {
-    font-size: 180%;
-}
-
-.home-second-row {
-    background-color: #dddddd !important;
-    padding: 24px 0px 30px 0px !important;
-    border-top: 1px solid #efefef;
-    margin: 30px 0px 0px 0px;
-}
-
-.home-widgets-row {
-    text-align: center;
-}
-
-.map-container {
-    -webkit-border-radius: 13px 13px 13px 13px;
-    -moz-border-radius: 13px 13px 13px 13px;
-    border-radius: 13px 13px 13px 13px;
-    background-color: #f7f7f7;
-    border: 1px solid #d4d4d4;
-    padding: 13px !important;
-    width: 440px;
-    margin: 10px 0px 0px 13px !important;
-    display: inline-block;
-    text-align: left;
-    vertical-align: top;
-    margin: 0px 20px;
-}
-.circles-map {
-    height: 350px;
-    border : 2px solid #909490;
-    -webkit-border-radius: 2px 2px 2px 2px;
-    -moz-border-radius: 2px 2px 2px 2px;
-    border-radius: 2px 2px 2px 2px;
-}
-.circles-map-message:before { /* makes the message vertically centered */
-    content: '';
-    display: inline-block;
-    height: 100%;
-    vertical-align: middle;
-    margin-right: -0.25em; /* adjusts for horiz spacing */
-}
-.circles-map-message {
-    display: inline-block;
-    width: 100%;
-    height: 100%;
-    color: #888;
-    text-align: center;
-    vertical-align: middle;
-}
-#applications-table-body a {
-    color: inherit;
-}
-.apps-summary-container {
-    width: 440px;
-    display: inline-block;
-    text-align: left;
-    vertical-align: top;
-    display: inline-block;
-    margin: 10px -6px 0px 24px;
-    text-align: left;
-    vertical-align: top;
-}
-#new-application-resource {
-    text-align: right;
-}
-
-#reload-brooklyn-properties-resource {
-	text-align: right;
-}
-
-#clear-ha-node-records-resource {
-    text-align: right;
-}
-
-/* general pages */
-.sidebar_at_right {
-    border-right: 4px solid #BBB;
-}
-
-.sidebar_at_left {
-    border-left: 4px solid #BBB;
-    margin-left: -4px !important;
-    padding-left: 24px;
-}
-
-.nav-tabs {
-    margin-bottom: 0px;
-}
-.tab-content-scroller {
-    height: auto;
-    overflow: auto;
-}
-.tab-content {
-    padding: 12px 18px 18px 18px;
-    border-right: 1px solid #DDD;
-    border-left: 1px solid #DDD;
-    min-height: 300px;
-}
-
-.navbar_top {
-    background-color: #D0D8D0;
-    padding: 8px 12px 12px 12px;
-    -webkit-border-radius: 4px 4px 0 0;
-    -moz-border-radius: 4px 4px 0 0;
-    border-radius: 4px 4px 0 0;
-}
-.navbar_main_wrapper {
-    background-color: #F0F4F0;
-    -webkit-border-radius: 0 0 4px 4px;
-    -moz-border-radius: 0 0 4px 4px;
-    border-radius: 0 0 4px 4px;
-}
-.navbar_main {
-    overflow-x: auto;
-    margin: 0;
-    white-space: nowrap;
-}
-
-/* traditional tree-style (clickable + icons) tree-list */
-#tree-list {
-}
-ol.tree {
-    padding: 0;
-}
-#tree-list li input + ol {
-    background: url(../img/toggle-small-expand.png) 40px 5px no-repeat;
-    margin: -1.963em 0 0 -40px; !important;
-    padding: 1.563em 0 0 62px; !important;
-}
-#tree-list li input:checked + ol {
-    background: url(../img/toggle-small.png) 40px 5px no-repeat;
-}
-#tree-list li input + ol > li {
-    padding-left: 1px;
-/*    margin: 0; */
-}
-#tree-list span.leaf {
-    margin-left: 17px !important;
-}
-#tree-list li.application {
-    margin-top: 6px !important;
-}
-#tree-list li input + ol {
-    height: auto;
-}
-.navbar_main_wrapper.treelist {
-    padding: 12px 6px 4px 6px;
-}
-.navbar_main.treelist {
-    padding: 0px 8px 6px 2px;
-}
-
-.label-message {
-    background-color: #DDD;
-    -webkit-border-radius: 2px 2px 2px 2px;
-    -moz-border-radius: 2px 2px 2px 2px;
-    border-radius: 2px 2px 2px 2px;
-    padding: 4px 0px 4px 0px;
-    margin-bottom: 4px;
-    font-weight: bold;
-} 
-.label-important {
-    display: inline;
-    padding: 4px;
-    color: #F0F0F0;
-    font-weight: bold;
-    -webkit-border-radius: 2px 2px 2px 2px;
-    -moz-border-radius: 2px 2px 2px 2px;
-    border-radius: 2px 2px 2px 2px;
-}
-.label-important.full-width {
-    display: block;
-    text-align: center;
-}
-
-/** apps / entity explorer page */
-.apps-tree-toolbar {
-    text-align: right;
-}
-.entity_tree_node, .entity_tree_node a {
-    color: #182018;
-}
-.handy {
-    cursor: hand; cursor: pointer;
-}
-.entity_tree_node:hover {
-    cursor: hand; cursor: pointer;
-}
-.entity_tree_node a:hover {
-    color: #54932b !important;
-    text-decoration: none;
-}
-.entity_tree_node_wrapper.active .entity_tree_node {
-    font-weight: bold;
-}
-.entity_tree_node_wrapper .indirection-icon {
-    opacity: 0.7;
-    margin-left: -5px;
-}
-.tree-box.indirect > .entity_tree_node_wrapper a {
-    font-style: italic !important;
-    color: #666;
-}
-
-#tree label {
-/* remove the folder, and align with + - icons */
-background: none;
-padding-left: 16px;
-line-height: 18px;
-}
-.cssninja ol.tree {
-    padding: 0;
-    width: auto;
-}
-
-/* new lozenge-style tree-list */
-.navbar_main_wrapper .treeloz {
-    padding: 12px 0px 20px 0px;
-}
-.navbar_main .treeloz {
-    padding: 0px 0px 0px 0px;
-}
-.lozenge-app-tree-wrapper {
-    min-width: 100%;
-    min-height: 240px;
-    padding-bottom: 60px; /* for popup menu */
-    margin-top: -2px;
-    position: relative; 
-    float: left;
-}
-.entity_tree_node_wrapper {
-    position: relative;
-}
-.tree-box {
-    border: 1px solid #AAA;
-    border-right: 0px;
-    margin-top: 3px;
-    padding-top: 2px;
-    background-color: #EAECEA;
-}
-.tree-box.outer {
-    margin-left: 12px;
-    margin-right: 0px;
-    margin-bottom: 14px;
-    -webkit-border-radius: 4px 0 0 4px !important;
-    -moz-border-radius: 4px 0 0 4px !important;
-    border-radius: 4px 0 0 4px  !important;
-    padding-left: 4px;
-    padding-bottom: 4px;
-}
-.tree-box.inner {
-    margin-bottom: 2px;
-    border: 1px solid #BBB;
-    border-right: 0px;
-    -webkit-border-radius: 3px 0 0 3px !important;
-    -moz-border-radius: 3px 0 0 3px !important;
-    border-radius: 3px 0 0 3px  !important;
-    padding-left: 6px;
-    padding-bottom: 2px;
-    margin-left: 3px;
-}
-.tree-box.inner.depth-first {
-    margin-left: 8px;
-}
-.tree-box.inner.depth-odd {
-    background-color: #D8DAD8;
-}
-.tree-box.inner.depth-even {
-    background-color: #EAECEA;
-}
-.tree-node {
-    position: relative;
-    padding-top: 2px;
-    padding-bottom: 1px;
-    padding-right: 8px;
-}
-.light-popup {
-    display: none;
-    position: relative;
-    top: 12px;
-    float: left;
-    z-index: 1;
-}
-.toggler-icon .light-popup {
-    padding-top: 4px;
-}
-.light-popup-body {
-    padding: 3px 0px;
-    background-color: #606060;
-    color: #CDC;
-    font-weight: 300;
-    font-size: 85%;
-    line-height: 14px;
-    border: 1px dotted #CDC;
-    -webkit-border-radius: 2px 2px 2px 2px !important;
-    -moz-border-radius: 2px 2px 2px 2px !important;
-    border-radius: 2px 2px 2px 2px !important;
-}
-.light-popup-menu-item {
-    color: #D0D4D0;
-}
-.light-popup-menu-item.tr-default {
-    color: #E0E4E0;
-}
-.light-popup-menu-item {
-    padding: 1px 8px 1px 6px;
-}
-.light-popup-menu-item:hover {
-    background-color: #58AA33;
-    color: #000;
-}
-.light-popup-menu-item.zeroclipboard-is-hover {
-    background-color: #58AA33;
-    color: #000;
-}
-
-.app-summary .inforow > div { display: inline-block; }
-.app-summary .inforow .info-name-value { white-space: nowrap; }
-.app-summary .inforow .info-name-value > div { display: inline-block; }
-.app-summary .inforow .info-name-value .name { font-weight: 700; width: 120px; padding-right: 12px; }
-.app-summary .additional-info-on-problem { color: #D01; }
-.app-summary .additional-info-on-problem a { color: #563; }
-a.open-tab { cursor: hand; cursor: pointer; }
-
-table.dataTable tbody td.row-expansion {
-    background: #D8E4D0;
-}
-table.dataTable.activity-table tbody td.row-expansion {
-    background: #FFFFFF;
-}
-
-#activities-table-group div.for-activity-textarea {
-    /* correct for textarea width oddity */
-    margin-right: 10px;
-    margin-top: 6px;
-}
-#activities-table-group div.for-activity-textarea textarea {
-    margin-bottom: 0px;
-    border-color: #BBB;
-}
-#activities-root .toolbar-row i {
-    background-image: url("../img/glyphicons-halflings.png");
-    width: 18px;
-}
-#activities-root .toolbar-row i.active {
-    background-image: url("../img/glyphicons-halflings-bright-green.png");
-}
-#activities-root .toolbar-row {
-    padding-top: 1px;
-}
-#activities-root .toolbar-row i:hover,
-#activities-root .toolbar-row i.active:hover {
-    background-image: url("../img/glyphicons-halflings-dark-green.png");
-}
-table.dataTable td.row-expansion {
-    padding-top: 0px;
-}
-.opened-row-details {
-    display: block;
-    font-size: 90%;
-    
-    border-top: dotted whiteSmoke 1px;
-    margin-top: 0px;
-    padding-top: 2px;
-    
-    margin-left: -6px;
-    margin-right: -6px;
-    padding-left: 6px;
-    padding-right: 6px;
-    
-    margin-bottom: 4px;
-    padding-bottom: 6px;
-    border-right: dotted gray 1px;
-    border-bottom: dotted gray 1px;
-    border-left: dotted gray 1px;
-    border-bottom-left-radius: 8px;
-    border-bottom-right-radius: 8px;
-    
-    background: #D8E0D4;
-}
-
-/* effector modal dialog */
-#params td {
-    vertical-align: middle;
-}
-#params input {
-    margin-bottom: 0px;
-}
-
-table.dataTable tr.odd td.sorting_1 {
-background-color: #F9F9F9;
-}
-table.dataTable tr.even td.sorting_1 {
-background-color: #FFFFFF;
-}
-table.dataTable tr.odd {
-background-color: #F9F9F9;
-}
-table.dataTable tr.even {
-background-color: #FFFFFF;
-}
-table.dataTable tbody tr.selected,
-table.dataTable tr.odd.selected td.sorting_1,
-table.dataTable tr.even.selected td.sorting_1 {
-    background: #B8C8B0;
-}
-table.nonDatatables tr:hover,
-table.nonDatatables tr.odd:hover,
-table.nonDatatables tr.even:hover,
-table.nonDatatables tr.zeroclipboard-is-hover,
-table.nonDatatables tr.even.zeroclipboard-is-hover,
-table.nonDatatables tr.odd.zeroclipboard-is-hover,
-table.dataTable tr:hover:not(.selected),
-table.dataTable tr.odd:hover:not(.selected),
-table.dataTable tr.even:hover:not(.selected),
-table.dataTable tr.zeroclipboard-is-hover:not(.selected),
-table.dataTable tr.odd.zeroclipboard-is-hover:not(.selected),
-table.dataTable tr.even.zeroclipboard-is-hover:not(.selected),
-table.nonDatatables tr:hover td,
-table.nonDatatables tr.odd:hover td,
-table.nonDatatables tr.even:hover td,
-table.dataTable tr:hover:not(.selected) td:not(.row-expansion),
-table.dataTable tr:hover:not(.selected) td.sorting_1:not(.row-expansion),
-table.dataTable tr.odd:hover:not(.selected) td:not(.row-expansion),
-table.dataTable tr.even:hover:not(.selected) td:not(.row-expansion) {
-    background-color: #E0E4E0;
-}
-table.dataTable tbody tr.selected:hover,
-table.dataTable tr.odd.selected td.sorting_1:hover,
-table.dataTable tr.even.selected td.sorting_1:hover {
-    background: #98B890;
-}
-
-table.dataTable.activity-table tbody tr.activity-row,
-table.nonDatatables#policies-table tbody tr.policy-row {
-    cursor: hand; cursor: pointer;
-}
-
-table.dataTable thead th {
-text-align: left;
-background-color: #E0E4E0;
-line-height: 24px;
-font-size: 110%;
-}
-table.dataTable {
-margin: 0;
-border-width: 2px 0px 2px 0px;
-border-style: solid;
-border-color: black;
-background-color: #fff;
-overflow: scroll;
-/* background-color: #fff;
- border-top-width: 1px; */
-}
-.bottom {
-    vertical-align: bottom;
-}
-.smallpadside {
-    margin-left: 0.25em;
-    margin-right: 0.25em;
-}
-.table-scroll-wrapper {
-    width: 100%;
-    overflow: auto;
-    background-color: #ececec;
-    border-style: solid;
-    border-color: #e8e8e8;
-    border-width: 1px 1px 1px 1px;
-    border-bottom-left-radius: 7px;
-    border-bottom-right-radius: 7px;
-}
-.table-scroll-wrapper .dataTables_filter {
-    float: left;
-    padding-left: 6px;
-}
-.table-scroll-wrapper .dataTables_filter label {
-    margin-bottom: 5px;
-    margin-top: 4px;
-}
-.dataTables_wrapper .brook-db-top-toolbar {
-    font-size: 85%;
-    float: right;
-    padding-right: 6px;
-    padding-top: 7px;
-}
-.dataTables_wrapper .brook-db-bot-toolbar {
-    font-size: 85%;
-    float: right;
-    padding-right: 6px;
-    padding-left: 5px;
-    padding-top: 5px;
-}
-
-.dataTables_info {
-    padding-top: 5px;
-    padding-left: 8px;
-    padding-bottom: 8px;
-    font-size: 85%;
-    width: auto;
-    align: center;
-    clear: none;
-}
-.dataTables_paginate {
-    font-size: 85%;
-    float: right;
-    margin-top: 6px;
-    margin-bottom: 3px;
-    padding-top: 1px;
-    padding-right: 4px;
-    height: 18px;
-    line-height: 18px;
-}
-.paging_full_numbers a.paginate_active {
-     background-color: #A8B8B0;
-}
-.dataTables_length {
-    float: left;
-    padding-left: 1em;
-    padding-top: 5px;
-}
-.dataTables_length label {
-    font-size: 85%;
-}
-.dataTables_length select {
-    height: auto;
-    font-size: 85%;
-    margin-bottom: 0px;
-    width: 45px;
-}
-.dataTables_paginate.paging_full_numbers a.paginate_button, 
-.dataTables_paginate.paging_full_numbers a.paginate_active {
--webkit-border-radius: 0px;
--moz-border-radius: 0px;
-border-radius: 0px;
-padding: 2px 5px;
-margin: 0;
-}
-.dataTables_filter input {
-    background-image: url("../img/magnifying-glass-right-icon.png");
-    /* url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ5JREFUeNpi+P//PwMQMANxERCfAeI/UBrEZwbJQ9WAFR0A4u1AbAnEbFB6O1ScGaawGoi3wHQiYyBYDZKHKbwHxLo4FOqC5GEKf4Ksw6EQ5IyfIDYTkPEUiNUZsAOQ+F9GRkYJEKcFiDficSOIcRjE4QTiY0C8DuRbqAJLKP8/FP9kQArHUiA+jySJjA8w4LAS5KZd0MAHhaccQIABALsMiBZy4YLtAAAAAElFTkSuQmCC); */
-    background-size:12px 12px;
-    background-repeat: no-repeat;
-    background-position: 8px 5px;
-    width: 12em;
-    font-size: 85%;
-    padding: 1px 4px 1px 24px;
-    margin-bottom: 1px;
-    border-color: #888C88;
-    /*
-    -webkit-border-radius: 1em;
-    -moz-border-radius: 1em;
-    border-radius: 1em;
-    */
-    -webkit-border-radius: 10px;
-    -moz-border-radius: 10px;
-    border-radius: 10px;
-}
-/* nonDatatables environments want to look a bit like our datatables environment */
-table.nonDatatables {
-    border-bottom: 1px solid gray;
-}
-table.nonDatatables thead {
-    border-bottom: 1px solid black;
-}
-table.nonDatatables thead th {
-    background: #ffffff;
-    padding: 3px 18px 3px 5px;
-}
-table.table.nonDatatables tbody > tr:first-child > td {
-    /* need both bottom of head, and top of body, to support empty table and override non-empty row top border */
-    border-top: 1px black solid;
-}
-table.table.nonDatatables tbody tr.selected,
-table.table.nonDatatables tbody tr.selected td {
-    background: #AC8;
-}
-/* we keep the thin gray line between rows for manual tables,
-   subtle difference but seems nice */
-div.for-empty-table {
-    width: 100%;
-    float: left;
-    background-color: #F9F9F9;
-    font-style: italic;
-    padding: 8px 0px;
-    text-align: center;
-    margin-top: -18px;
-    border-bottom: 1px solid gray;
-}
-
-/* add entity modal */
-.editable-entity-group {
-    margin-bottom: 2px;
-    border: 1px solid #E5E5E5;
-    -webkit-border-radius: 4px;
-    -moz-border-radius: 4px;
-    border-radius: 4px;
-}
-.editable-entity-heading {
-    padding: 2px 6px 2px 6px;
-    border-bottom: 1px solid #E5E5E5;
-    margin-bottom: -1px;
-    overflow: hidden;
-    -webkit-border-radius: 4px;
-    -moz-border-radius: 4px;
-    border-radius: 4px;
-    background-color: #F9F9F9;
-    line-height: 30px;
-}
-.editable-entity-heading:hover {
-    background-color: #F0F4F0;
-}
-.editable-entity-body {
-    border-top: 1px solid #E5E5E5;
-    margin-top: -1px;
-    padding: 7px 6px 2px 6px;
-    overflow: hidden;
-    -webkit-border-radius: 4px;
-    -moz-border-radius: 4px;
-    border-radius: 4px;
-}
-
-#app-locations select {
-    min-height: 22px;
-}
-#app-locations #selector-container {
-    margin-bottom: 4px;
-}
-div.application-name-label {
-    margin-bottom: 4px;
-}
-table.config-table {
-    margin-bottom: 6px;
-    margin-left: 2px;
-}
-.app-add-wizard-config-entry input {
-    margin: 3px 0 2px 0;    
-    height: 12px;
-    vertical-align: middle;
-}
-.app-add-wizard-config-entry input {
-    height: 14px;
-}
-tr.app-add-wizard-config-entry:nth-child(odd) {
-    background-color: #f8f8f8;
-}
-tr.app-add-wizard-config-entry:nth-child(even) {
-}
-tr.app-add-wizard-config-entry {
-    height: 20px;
-}
-.app-add-wizard-config-entry {
-    margin-bottom: 9px;
-    margin-top: 2px;
-}
-.app-add-wizard-config-entry button {
-    margin-left: 8px;
-}
-.app-add-wizard-create-entity-label-newline {
-    padding-left: 2px;
-    padding-bottom: 3px;    
-}
-.app-add-wizard-create-entity-label {
-    width: 4em;
-    float: left;
-    padding-top: 3px;
-}
-.app-add-wizard-create-entity-input {
-    width: 300px;
-}
-#add-app-entity {
-    float: right;
-}
-/* help page */
-#help-page p, #help-page ul {
-    margin-top: 8px;
-}
-.help-logo-right {
-    padding-left: 1.5em;
-    padding-top: 1.5em;
-    float: right;
-}
-.help-logo-right img {
-    border: 3px solid #6C6C6C;
-    border-radius: 2px;
-}
-.control-group {
-    margin-top: 6px;
-    margin-bottom: 9px;
-}
-.control-group .deploy-label {
-    font-weight: 700;
-}
-.deploy .control-group {
-    margin-bottom: 18px;
-}
-.deploy input#application-name {
-    /** margin supplied by control group */
-    margin-bottom: 0px;
-}
-
-#application-explorer div#summary textarea {
-    width: 100%;
-    cursor: auto;
-    margin-bottom: 2px;
-}
-
-/* catalog */
-.accordion-head {
-    -webkit-border-radius: 5px;
-    -moz-border-radius: 5px;
-    border-radius: 5px;
-    padding: 4px 10px 4px 8px;
-    font-weight: bold;
-    background-color: #F4F6F4;
-}
-.accordion-head.active {
-    background-color: #F8FAF8;
-}
-.accordion-body {
-    border-top: 1px dashed lightgray;
-    padding: 8px 8px 12px 8px;
-    overflow: auto;
-    max-height: 400px;
-    background-color: white;
-    border-bottom-left-radius: 5px;
-    border-bottom-right-radius: 5px;
-}
-.catalog-details .accordion-body {
-    padding: 0;
-}
-.accordion-head:hover {
-    background-color: #E0E4E0;
-    cursor: hand; cursor: pointer;
-}
-.catalog-accordion-wrapper {
-    margin-bottom: 6px;
-    background-color: #F0F0F0;
-    border-radius: 5px;
-}
-.catalog-accordion-wrapper .accordion-nav-row {
-    white-space: pre;
-    word-wrap: normal;
-}
-.accordion-item {
-    -webkit-border-radius: 5px;
-    -moz-border-radius: 5px;
-    border-radius: 5px;
-    margin-top: -1px;
-    border: 1px solid lightgray;
-}
-.accordion-nav-row:hover {
-    text-decoration: underline;
-    cursor: hand; cursor: pointer;
-}
-.accordion-nav-row.active {
-    font-weight: bold;
-}
-.accordion-nav-child {
-    padding-left: 15px;
-    color: lightgray;
-}
-.accordion-nav-child.active {
-    color: #505050;
-}
-.catalog-details {
-    padding-left: 16px;
-    padding-right: 25px;
-    padding-top: 8px;
-    padding-bottom: 8px;
-}
-.catalog-details h3 {
-    margin-bottom: 8px;
-}
-.catalog-details textarea {
-    width: 100%;
-    cursor: auto;
-}
-.catalog-details#details-empty {
-    padding-top: 60px;
-    padding-bottom: 180px;
-    text-align: center;
-}
-.catalog-save-error {
-    background-color: #f2dede;
-    /* margin matches bootstrap input margin-bottom. */
-    margin: 9px 0 0 0;
-    padding: 7px;
-    border-radius: 3px;
-}
-.catalog-error-message {
-    white-space: pre-wrap;
-}
-
-.float-right {
-    float: right;
-}
-
-/* swagger */
-
-.swagger-ui-container{
-    margin-bottom: 3em;
-}
-
-.swagger-ui-wrap {
-    max-width: 960px;
-    margin-left: auto;
-    margin-right: auto;
-    margin-bottom: 6em;
-}
-
-.icon-btn {
-    cursor: pointer;
-}
-
-#message-bar {
-    min-height: 30px;
-    text-align: center;
-    padding-top: 10px;
-}
-
-.message-success {
-    color: #89BF04;
-}
-
-.message-fail {
-    color: #cc0000;
-}
-
-.code-textarea {
-    width: 100%;
-    height: 8em;
-    margin-right: 4px;
-    font-family: Consolas, Lucida Console, Monaco, monospace;
-    font-size: 8.5pt;
-    line-height: 11pt;
-    white-space: pre;
-    word-wrap: normal;
-    overflow-x: scroll;
-    overflow-y: scroll;
-}
-
-/** groovy script */
-#groovy-ui-container .hide {
-    display: none !important;
-}
-#groovy-ui-container .throbber {
-    padding-top: 8px;
-}
-#groovy-ui-container .input textarea {
-    height: 16em;
-}
-#groovy-ui-container .toggler-region {
-    margin-top: 0.5em;
-    margin-bottom: 1em;
-}
-#groovy-ui-container .groovy-scripting-text {
-    margin-top: 0.5em;
-}
-#groovy-ui-container div.submit {
-   float: right;
-}
-
-#groovy-ui-container .input {
-    width: 48%;
-}
-#groovy-ui-container div.submit {
-    text-align: right;
-}
-
-#groovy-ui-container .output {
-    width: 48%;
-    float: right;
-}
-.toggler-header {
-    cursor: hand; cursor: pointer;
-    margin-bottom: 3px;
-}
-.toggler-icon {
-    float: right;
-}
-.user-hidden .toggler-icon {
-}
-
-/** trick for making textareas with width 100% line up (silly width 100% excludes padding) */
-div.for-textarea {
-    padding-left: 0.8em;
-    padding-right: 0.4em;
-}
-div.for-textarea > textarea {
-    padding-left: 0.3em;
-    padding-right: 0.3em;
-    margin-left: -0.6em;
-}
-#groovy-ui-container p {
-    margin-top: 4px;
-}
-#groovy-ui-container a {
-    color: inherit;
-}
-#groovy-ui-container a:hover {
-    text-decoration: underline;
-    cursor: hand; cursor: pointer;
-}
-
-/** input type="file" should be display:none with hand-rolled nicer looking widgets used instead
-    (the native ones can't be much modified, and are notoriously ugly; but line-height 0 at least makes them line up) */
-input[type="file"] {
-    line-height: 0;
-    width: 300px;
-}
-
-input.error {
-    border-color: #b94a48;
-}
-
-#policy-config-table {
-    table-layout: fixed;
-}
-
-#policy-config-table td.policy-config-name {
-    overflow: hidden;
-    text-overflow: ellipsis;
-}
-
-#policy-config-table td.policy-config-value {
-    overflow-wrap: break-word;
-    word-wrap: break-word;
-}
-
-#policy-config,
-.has-no-policies {
-    margin-bottom: 9px;
-}
-
-.padded-div {
-    padding: 0.5em 1.2em;
-}
-
-/* this is used in activities, for when we slide in a panel e.g. for sub-table */
-.slide-panel-group {
-    width: 569px;
-}
-.slide-panel {
-    position: relative;
-    width: 569px;
-    margin-right: -569px;
-    float: left;
-}
-.subpanel-header-row {
-    color: black;
-    background-color: #B0B8B0;
-    padding-top: 12px;
-    padding-bottom: 12px;
-    margin-bottom: 24px;
-    padding-left: 12px;
-    vertical-align: top;
-    font-weight: 700;
-    font-size: 120%;
-}
-
-.toggler-header {
-    background-color: #D8DCD8;
-    padding: 2px 6px 2px 6px;
-}
-.activity-detail-panel .subpanel-header-row {
-    margin-bottom: 12px;
-}
-.activity-detail-panel .toggler-region {
-    margin-bottom: 12px;
-}
-.activity-detail-panel .toggler-region .activity-details-section {
-    margin: 4px 6px 0px 6px;
-}
-.activity-detail-panel .activity-details-section.activity-description, 
-.activity-detail-panel .activity-details-section.activity-status {
-    margin-bottom: 12px;
-}
-.activity-detail-panel .activity-label {
-    display: inline-block;
-    width: 100px;
-}
-.activity-detail-panel .toggler-region.tasks-submitted .table-scroll-wrapper,
-.activity-detail-panel .toggler-region.tasks-children .table-scroll-wrapper {
-    margin-bottom: 18px;
-}
-
-.activity-detail-results .result-literal {
-    font-style: italic;
-}
-.activity-detail-results div.result-literal {
-    margin-top: 12px;
-}
-.activity-detail-results div.result-literal br {
-    line-height: 24px;
-}
-
-.activity-tag-giftlabel {
-    background-color: #E0E4E0;
-    padding: 2px 4px 2px 4px;
-    margin-bottom: 4px;
-    margin-right: 5px;
-    -webkit-border-radius: 3px 3px 3px 3px !important;
-    -moz-border-radius: 3px 3px 3px 3px !important;
-    border-radius: 3px 3px 3px 3px !important;
-    display: inline-block;
-    white-space: nowrap;
-    overflow: hidden;
-    text-overflow: ellipsis;
-    -o-text-overflow: ellipsis;
-    max-width: 250px;
-}
-.activity-tag-giftlabel:hover {
-    max-width: 100%;
-    white-space: normal;
-}
-
-/* hover menu at left, as used in sensors view */
-.floatGroup .floatLeft {
-	display:none;
-	width: 18px;
-	margin-left: -18px;
-	margin-top: -16px;
-	position: absolute;
-	overflow: visible;
-}
-.floatGroup .floatDown {
-	display:none;
- 	position: absolute;
- 	margin-top: -2px;
-	overflow: visible;
-}
-.floatGroup .floatDown .light-popup {
-	display: block;
-    position: absolute;
-    top: auto;
-    z-index: 1;
-}
-
-.ha-standby-overlay {
-    position: absolute;
-    top: 8px;
-    bottom: 0;
-    left: 0;
-    right: 0;
-}
-
-/* Setting opacity in ha-standby-overlay would also apply it to all of
-the element's children, who probably want to control their opacity separately. */
-.overlay-with-opacity {
-    opacity: 0.9;
-    background-color: white;
-}
-
-.overlay-content {
-    position: absolute;
-    top: 100px;
-    left: 50%;
-    width: 400px;
-    /* margin-left = width / 2 */
-    margin: 0 0 0 -200px;
-    padding: 20px;
-    background-color: #ff938c;
-    border: 7px solid #2d2d2d;
-    border-radius: 10px;
-    color: black;
-}
-
-.capitalized {
-    text-transform: capitalize;
-}
-
-.config-key-input-pair {
-    /* matches Bootstrap */
-    margin-bottom: 9px;
-}
-
-textarea.param-value {
-    height: 18px;
-    overflow: auto;
-}
-
-#catalog-details-accordion {
-    margin-top: 12px;
-}
-
-/* For secret things */
-.secret-info span.value {
-    display: none;
-}
-.secret-info.secret-revealed span.value {
-    display: inherit;
-}
-.secret-info.secret-revealed span.secret-indicator {
-    display: none;
-}
-
-.secret-indicator {
-    /* blur */
-    color: transparent;
-    text-shadow: 0 0 5px rgba(0,0,0,0.5);
-}
-
-/* Location wizard */
-.location-type-container {
-    overflow: hidden;
-}
-.help-text {
-    padding-top: 10px;
-    font-style: italic;
-}
-.location-type {
-    width: 160px;
-    height: 200px;
-    float: left;
-    text-align: center;
-    border: 3px solid #EEE;
-    position: relative;
-    margin: 4px;
-}
-.location-type:hover {
-    border-color: #CCC;
-}
-.location-type.selected {
-    border-color: #793;
-}
-.location-type div {
-    position: absolute;
-    top: 50%;
-    transform: translateY(-50%);
-    width: 150px;
-    padding: 5px;
-}
-.location-type .fa {
-    font-size: 60px;
-    margin-bottom: 20px;
-}
-.location-type .location-type-title {
-    font-size: 30px;
-}
-input.location-other {
-    margin-top: -10px;
-    margin-left: 10px;
-}
-#catalog-add-form .modal-header .close {
-    display: none;
-}
-#catalog-add-form .modal-body {
-    max-height: none;
-    overflow: visible;
-}
-#catalog-add-form .modal-body .tab-content {
-    min-height: 0;
-    background-color: transparent !important;
-    padding: 0;
-    overflow: visible;
-}
-#catalog-add-form .location-type {
-    border-color: #ddd;
-}
-
-#catalog-add-form .location-type:hover {
-    border-color: #CCC;
-}
-#catalog-add-form .location-type.selected {
-    border-color: #793;
-}
-#catalog-add-form .modal-footer {
-    background-color: transparent;
-}
-.easy-autocomplete {
-    display: inline;
-}
-.easy-autocomplete-container ul {
-    margin: 0
-}
-.easy-autocomplete-container ul .eac-category {
-    color: #fff;
-    background-color: rgba(120, 180, 70, 0.8);
-}
-button.remove-entry {
-    margin-top: -10px;
-}